Микропроцессоры и микроконтроллеры
Основные типы больших интегральных схем для микропроцессорных комплектов. Типовая архитектура суперскалярного микропроцессора. Мультискалярная модель выполнения программы. Доступ к памяти. Организация интерфейса МП устройств с внешними устройствами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курс лекций |
Язык | русский |
Дата добавления | 01.07.2016 |
Размер файла | 8,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
64
160
Лекция 1
Введение. Основные типы больших интегральных схем для микропроцессорных комплектов.
Особая роль в совершенствовании систем автоматического управления в настоящее время принадлежит микроэлектронике и микропроцессорной технике, использование которых в САУ обеспечивает не только улучшение точностных характеристик, повышение отказоустойчивости, обеспечение стабильности функционирования, но и придает САУ принципиально новых свойств, таких, как гибкость и перестраиваемость структуры, адаптивность, способность решать вычислительные и логические задачи, самоконтроль и т.д.
Использование микропроцессоров в САУ требует решения целого ряда задач, специфика которых обусловлена как распределенным управлением в реальном масштабе времени, так и цифровым характером обрабатываемой информации. В связи с этим требуется подготовка специалистов обладающими знаниями и опытом по разработке и эксплуатации микропроцессорных систем различного назначения: информационных, связанных, вычислительных, управляющих и т.д.
Изучение такой интенсивно развивающейся и наукоемкой предметной области, как микроэлектроника, и микропроцессорная техника в частности - задача весьма интересная и сложная, требующая постоянного совершенствования и пополнения получаемых знаний и знакомства со смежными научно-техническими областями. Для эффективного решения прикладных задач любой современный специалист, профессионально связанный с вычислительной техникой, должен иметь адекватное представление о состоянии и перспективах развития ее элементной базы.
Создание фирмой Intel первого микропроцессора в 1971 году положило начало эпохе компьютеризации. "Благодаря микропроцессорам компьютеры стали массовым, общедоступным продуктом", - заявил Тед Хофф (Ted Поп), один из изобретателей первого микропроцессора. Его имя, вместе с именами его коллег - Федерико Феджина (Federico Faggin) и Стена Мейзора (Stan Mazor), внесено в список лауреатов Национального зала славы изобретателей США, а само изобретение признано одним из величайших достижений XX века.
За чуть более чем четверть вековую историю микропроцессоры прошли поистине гигантский путь. Первый чип Intel 4004 работал на частоте 750 КГц, содержал 2300 транзисторов и стоил около $200. Производительность его оценивалась в 60 тыс. операций в секунду. На сегодняшний день рекордные показатели принадлежат микропроцессорам Pentium 4 и составляют: 3,46 ГГц, 55 млн. транзисторов, и около $650 соответственно.
Такое интенсивное развитие технологий в обществе, где основным предметом труда становится информация, является следствием растущего спроса на новые орудия труда - компьютеры. На сегодняшний день компьютеризация является одним из главных направлений научно-технического прогресса и концентрированным его выражением. Количество и качество производимых в стране компьютеров, степень насыщенности вычислительной техникой самых разных отраслей становится одним из основных критериев ее экономического и военного потенциала.
В формируемом ежегодно в США группой экспертов перечне "критических технологий", охватывающем практически все направления производства, исследований и разработок, оказывающих влияние на военный и экономический статус страны, микроэлектронные технологии традиционно занимают первое место.
В микропроцессорах - наиболее сложных микроэлектронных устройствах - воплощены самые передовые достижения инженерной мысли. В условиях свойственной данной отрасли производства жесткой конкуренции и огромных капиталовложений, выпуск каждой новой модели микропроцессора - так или иначе связан с очередным научным, конструкторским, технологическим прорывом.
Современная элементная база - сверхбольшие интегральные схемы (СБИС), характеризуется большим числом транзисторов на кристалле и относительно малым числом выводов у корпуса. Поэтому БИС адекватны построению логически законченных устройств.
Различные выполняемые функции и сферы применения обусловили специализацию СБИС. Достаточно условно их можно разделить на следующие классы:
1) СБИС с аппаратной реализацией алгоритмов обработки данных:
микропроцессоры универсальные и сигнальные, а также микроконтроллеры, включая интерфейсные схемы для образования мультипроцессорных систем;
2) микросхемы памяти: статические и динамические;
3) программируемые логические интегральные схемы (ПЛИС).
Микропроцессоры и микроконтроллеры
Универсальные микропроцессоры предназначаются для применения в вычислительных системах: персональных ЭВМ, рабочих станциях, а в последнее время и в массово-параллельных супер-ЭВМ. Основной их характеристикой является наличие развитых устройств для эффективной реализации операций с плавающей точкой над 64 разрядными и более длинными операндами. Предназначаются в основном для проведения научно-технических расчетов.
Цифровые сигнальные процессоры рассчитаны на обработку в реальном времени цифровых потоков, образованных путем оцифровывания аналоговых сигналов. Это обусловливает их сравнительно малую разрядность и преимущественно целочисленную обработку. Однако современные сигнальные процессоры способны проводить вычисления с плавающей точкой над 32 -- 40-разрядными операндами. Кроме того, появился класс медийных процессоров, представляющих собой законченные системы для обработки аудио- и видеоинформации.
Наибольшей специализацией и разнообразием функций обладают микроконтроллеры, используемые во встроенных системах управления, в том числе в бытовых приборах. Общее число типов кристаллов с различными системами команд превышает 500, и все они, в силу существования изделий с их использованием, имеют свою устойчивую долю рынка.
По прогнозам компаний-производителей дальнейшее развитие технологии производства микропроцессоров будет идти в направлении увеличения плотности транзисторов на кристалле, роста числа слоев металлизации и повышения тактовой частоты, наряду с уменьшением напряжения питания и удельной (на один транзистор) потребляемой электрической и выделяемой тепловой энергии.
Технологический предел линейных размеров транзисторов на кристалле, обусловленный физическими ограничениями, составляет около 0,05 мкм. На пути дальнейшей миниатюризации кроме физических ограничений имеются и экономические. Для каждого следующего поколения микросхем стоимость технологии удваивается ( в 1986 г. Intel 80386 имел 250 тыс. транзисторов и выпускался на заводе стоимостью 200 млн. долларов. Завод, производящий микросхемы по технологии 0,25 мкм, стоил 10 млрд. долларов ). Возрастают сроки изготовления микропроцессоров, так процессор Pentium производился за шесть месяцев, а более новый Pentium Pro - за девять. Во многом уже сейчас уровень технологии, используемой в массовом производстве, определяется экономическими соображениями. Увеличение числа слоев металлизации экспоненциально повышает процент брака при производстве, увеличение площади кристалла также приводит к снижению выхода годных кристаллов. Современный уровень технологии СБИС позволяет уверенно производить схемы с проектными нормами 0,13-0,09 мкм, 5-6 слоями металлизации, площадью кристалла менее 150 кв.мм и числом транзисторов порядка 55 млн. Смена поколений микропроцессоров происходит каждые 2 года. С каждым поколением линейные размеры элементов уменьшаются в 0,7 раза. В настоящее время ширина проводников составляет 0,13 мкм, а к 2004 г. достигнет 0,09 мкм. Тактовая частота будет составлять более 4 ГГц, что существенно усложнит проблему внутрикристальных, а еще более межкристальных соединений.
Основной технологической проблемой будет, по-видимому, отвод тепла от процессоров. Уже сейчас рассеиваемая мощность некоторых процессоров составляет до 70 Вт. И в дальнейшем, с увеличением тактовой частоты и числа транзисторов, ее рост будет продолжаться. Для снижения потребляемой энергии применяются разные технологические способы - уменьшение проектных норм и снижение питающего напряжения. Если мощность и впрямь будет расти, отвод тепла действительно станет непреодолимой преградой.
Микросхемы памяти
Как известно, производительность системы определяется скоростью работы наиболее «медленного» её компонента. Поэтому для достижения оптимального быстродействия необходимо использовать сбалансированные конфигурации. Это означает, что наиболее важные узлы микропроцессорного устройства, к которым относится процессор, набор системной логики и подсистема памяти, должны обладать приблизительно равной производительностью.
Упрощённо работу микропроцессорного устройства можно представить как последовательность операций, совершаемых над различными данными. Задача процессора заключается в выполнении этих операций, а подсистемы памяти - в доставке данных и сохранении результатов. Взаимодействие процессора и памяти управляется чипсетом либо осуществляется напрямую.
Естественно, что для создания быстрого микропроцессорного устройства необходимо прежде всего обеспечить высокую скорость выполнения операций. Но даже самый совершенный процессор, работая в связке с памятью обладающей недостаточной пропускной способностью, окажется бесполезен, т.к. попросту будет простаивать в ожидании очередных порций информации. Поэтому для современных приложений большое значение имеет пропускная способность памяти, объём и сколько задержки в выдаче данных при каждом обращении (латентность).
Любой подсистеме памяти соответствует набор характеристик, которые более-менее полно будут описывать её возможности. К ним, в первую очередь относится частота работы памяти (частота передачи данных) и разрядность шины. Эти два показателя определяют теоретическую пропускную способность шины памяти, которая равна произведению разрядности и частоты. В действительности теоретическая пропускная способность не достижима из-за присутствия латентности (в среднем 60-80%).
В спецификациях модулей часто указывается время доступа (численно оно равно обратной величине рабочей частоты) и представляет собой длительность одного такта. Т.о., чем меньше время доступа, тем на большей частоте сможет работать модуль памяти.
В настоящее время в микропроцессорных устройствах широко применяется многоуровневая иерархическая архитектура памяти, где на верхнем уровне иерархии расположена более быстродействующая кэш-память, в которую в процессе вычислений помещаются интенсивно используемые фрагменты программного кода и обрабатываемых данных. В реальных системах используется до 3 уровней кэш-памяти. Разработчики используют более быстродействующую и, соответственно, более дорогую память в наиболее "ответственных" узлах системы.
Оперативная память (энергозависимая, т.е. теряющая запомненную информацию при снятии питания) случайного доступа RAM развивается уже довольно долгое время, и к настоящему моменту сформировались две основные её разновидности - статическая (SRAM) и динамическая (DRAM). Их отличие заключается в способе хранения данных. Динамическая память (память использует для запоминания бита информации состояния конденсатора "заряжен - не заряжен") требует постоянного обновления записанной информации с периодом порядка десятков мсек, что сказывается на увеличении латентности. При этом она проста и дёшева в производстве. Статическая память, наоборот, достаточна дорога за счёт более сложного устройства ячеек (статические микросхемы памяти запоминают биты данных в триггерах, что требует 4-6 транзисторов для хранения бита), но обладает очень низкой латентностью. Тем не менее именно стоимость во многом определяет популярность продукции. Поэтому SRAM не получила большого распространения в модулях ОЗУ, зато активно применяется в процессорах в качестве кеша 2-го уровня.
В одной из первых разновидностей DRAM под названием EDO RAM применялся асинхронный режим доступа (процессор при считывании данных приостанавливает свою работу), что приводило к существенной потере производительности системы. Но несколько лет назад рынок стал заполняться новым типом DRAM - SDRAM с синхронным режимом работы.
Память SDRAM представляет собой набор элементарных ячеек, в каждой из которых может быть записан 1 бит информации. Они объединяются в матрицы, по номерам строк и столбцов которых производится адресация. Физически каждая ячейка DRAM состоит из конденсатора и транзистора. И в этом кроется основной недостаток DRAM. Дело в том, что конденсатор не может самостоятельно поддерживать электрический заряд, поэтому для функционирования ячейку необходимо периодически подзаряжать. Эта процедура должна повторяться и после каждой операции чтения, что в определенных случаях существенно увеличивает латентность.
Поиск ячейки в матрице осуществляется с помощью двух сигналов - RAS и CAS. Первый несёт информацию о номере строки, второй - о номере столбца.
Операцию считывания данных из ячейки можно разбить на несколько элементарных стадий:
пересылка запроса процессора набору системной логики (1 такт системной шины);
перенаправление запроса на банк памяти, соответствующий запрашиваемому адресу (1 цикл работы ОЗУ);
поиск необходимой строки в матрице (2-3 цикла) - “RAS-to-CAS delay” или “RAS-to-CAS latency”;
поиск необходимого столбца в найденной строке, т.е. ячейке, располагающейся на их пересечении (2-3 цикла) - CAS-латентность;
непосредственно считывание и помещение информации в выходной буфер (1 цикл);
передача считанной информации набору системной логики (1 цикл);
перенаправление её процессору (1 такт системной шины).
Т.о., простая на первый взгляд операция растягивается на 9-11 тактов системной шины и соответственно 45--55 тактов процессора при множителе 5. Но столь большая задержка имеет место лишь при считывании первых 8 байтов. Тогда как другие ячейки из той же строки будут доступны уже по истечении лишь времени CAS-латентности. Если же происходит последовательное чтение ячеек, то задержки будут отсутствовать вовсе. С другой стороны, возможен вариант, когда первая и вторая считываемые ячейки располагаются в одном банке, но на разных строках. В этом случае к выше перечисленным задержкам добавится ещё одна - “Precharge delay”, необходимая на подзарядку первой ячейки после операции считывания (2-3 цикла).
Три выше упомянутых параметра - CAS-латентность, RAS-to-CAS-латентность и “Precharge delay” - образуют набор таймингов модуля памяти.
Общая латентность системы складывается не только из задержек выдачи данных ОЗУ, но и времени их пересылки процессору.
Наименьшие потери при пересылке данных будут иметь место при синхронном обмене информацией, т.е. когда частоты системной шины и шины памяти совпадают. При использовании асинхронного режима появляется дополнительная латентность, вызванная необходимостью согласования двух шин.
DDR SDRAM является эволюционным шагом в развитии обычной памяти SDRAM. Основное отличие между ними заключается в способе передачи данных. В DDR SDRAM используется так называемая DDR (Double Data Rate) технология, при которой для кодирования информации используются как передний, так и задний фронт тактового импульса. В результате при той же частоте FSB эффективная частота шины памяти удваивается. При этом на удвоенной частоте передаются только данные, а пересылка адресов осуществляется на основной частоте. В остальном модули SDRAM и DDR SDRAM мало отличаются друг от друга.
Подобная схема передачи данных весьма чувствительна даже к самой незначительной задержке тактового сигнала, поэтому, в отличие от SDRAM, для синхронизации передачи данных помимо сигнала тактового генератора применяется дополнительный сигнал DQS. Этот сигнал передается параллельно с тактовым сигналом и корректирует процесс передачи данных для каждой линии шины данных. Для выдачи сигнала DQS, означающего доступность данных на выходе, используется специальный цикл с фиксированной задержкой DLL (Delay Locked Loop).
Для точной синхронизации сигналов DQS и передачи данных (DQ) соответствующие проводники имеют одинаковую длину и емкость. Таким образом, колебания напряжения и температуры одинаково отражаются на обоих сигналах, что обеспечивает отсутствие нарушения синхронизации между контроллером памяти и микросхемами модулей памяти. Дополнительный контроль синхронизации передачи данных обеспечивает более надежную и высокую скорость передачи данных, чем при использовании только сигнала тактового генератора. Чтение и запись данных производится не в соответствии с тактовым сигналом, а синхронизируется сигнал DQS (рис. 1).
Рис. 1. Временная диаграмма DDR SDRAM
Архитектура микросхемы состоит из четырех независимых банков (рис. 2).
При тактовой частоте 100 и 133 МГц пропускная способность шины памяти DDR SDRAM составляет соответственно 1,6 и 2,1 Гбайт/с.
В настоящее время тактовая частота шины памяти с поддержкой DDR SDRAM составляет 100, 133, 166, 200 МГц, соответствующие микросхемы памяти называются соответственно DDR200, DDR266, DDR333 и DDR400, а модули памяти РС1600, РС2100, PC2700 и PC3200 (в названии модулей указана фактическая пропускная способности шины памяти в Гб/сек).
Дальнейшим развитием технологии DDR SDRAM является технология DDR II. Появление этого типа памяти ожидается в 2003 году. В отличие от DDR SDRAM в DDR П за один такт по каждой линии будет перерваться не 2, а 4 бита информации (при 64-разрядной шине -- 32 байта), что вдвое увеличит пропускную способность шины памяти. Естественно, данный подход требует более совершенной системы синхронизации. Рабочие напряжения DDR П уменьшены с 2,5 до 1,8 В. Микросхемы выполнены в корпусе микро-BGA.
Первоначально модули DDR-II будут работать на эффективных частотах 400, 533 и 667 Мгц, что позволит говорить о теоретической пропускной способности 3,2, 4,2 и 5,3 Гб/сек.
Для уменьшения времени доступа к данным планируется использовать технологию Virtual Channel (разработанную компанией NEC), а также кэширование информации.
Рис. 2. Структурная схема DDR SDRAM
Следующий большой шаг в развитии DDR SDRAM должен будет произойти лишь 2007 году, когда планируется появление памяти следующего стандарта DDR-III. По предварительным данным, стартовая эффективная частота модулей составит 800 Мгц, которая впоследствии вырастет до 1,5 Ггц. Планируется дальнейшее понижение напряжения питания до 1,2 В. Будут приняты специальные меры по борьбе с возникающими на высоких частотах помехами.
В ближайшее время может появиться ещё один тип ОЗУ - QBM SDRAM. QBM (Quad Band Memory) фактически представляет собой слегка усовершенствованную память DDR, но с увеличенной вдвое теоретической пропускной способностью. При производстве модулей QBM используются те же самые чипы DDR SDRAM. Однако циклы работы половины из них смещены на четверть такта. В результате ширина шины как бы увеличивается до 128 бит, а модуль как бы превращается в двухканальный (для PC2100 пропускная способность составит 4,2 Гб/сек).
Повышение пропускной способности шины памяти может осуществляться либо за счёт увеличения тактовой частоты шины, либо её разрядности. К сожалению, внутреннее устройство SDRAM не позволяет существенно продвинуться в этой области. Дело в том, что каждая разрядная линия шины памяти при распространении по ней переменного сигнала неизбежно излучает электромагнитные волны. Чем выше частота сигнала и плотность расположения линий, тем сильнее влияние излучаемых помех на сигнал. Поэтому у памяти SDRAM существует предел пропускной способности. Чтобы как можно ближе к нему подобраться, можно увеличивать частоту шины при неизменном количестве разрядов. Но есть и альтернативное решение - заметно сократить количество линий в шине, что позволит существенно увеличить частоты. Именно эта идея и была реализована в памяти Rambus DRAM.
Разрядность шины большинства модулей RDRAM составляет 16 бит, а рабочая частота 400 МГц. К тому же в памяти RDRAM используется DDR-технология. Поэтому эффективная частота шины равняется 800 Мгц. Модули RDRAM должны устанавливаться парами, т.к. предназначены для работы в двухканальной конфигурации. Т.о., суммарная теоретическая пропускная способность - 3,2 Гб/сек.
Несмотря на принципиально иной подход к организации памяти, ячейки RDRAM не отличаются от ячеек SDRAM - это та же совокупность транзистора и конденсатора. Тем не менее для реализации RDRAM потребовалось перестроить инфраструктуру модулей. Если у SDRAM один банк состоит из 8 чипов, то у RDRAM, наоборот, каждый чип является независимым и сам может состоять из нескольких десятков банков. В результате такого «распараллеливания» RDRAM способна производить гораздо больше, чем SDRAM, операций чтения за один и тот же промежуток времени. Причём латентность при считывании окажется незначительной как раз из-за того, что многие банки памяти могут постоянно держаться открытыми. С помощью подобных технических решений достигается высокая эффективность использования шины памяти - более 90%.
Обратная сторона медали заключается в усложнении модулей. В отличии от SDRAM чипы RDRAM необходимо оснащать управляющей логикой, что увеличивает их площадь, а высокая частота функционирования приводит к значительному тепловыделению. Более того, сложность в проектировании и производстве определила высокую конечную стоимость, что и сказалось в итоге на отсутствии популярности данного типа памяти среди массового потребителя.
Но у RDRAM есть ещё один серьёзный недостаток - высокая латентность при выдаче первых байтов информации, которая может в 2-3 раза превышать соответствующую латентность памяти SDRAM. В результате RDRAM показывает рекордную пропускную способность при считывании потоковых данных, располагающихся друг за другом. Но в задачах с хаотическим характером обращения к памяти эффективность использования шины памяти резко снижается.
Вся подсистема памяти Rambus состоит их следующих компонентов (рис. 3):
* контроллера памяти (RMC -- Rambus Memory Controller);
* Rambus-канала (RC -- Rambus Channel);
* генератора тактовых импульсов (DRCG -- Direct Rambus Clock Generator);
* микросхемы памяти RDRAM (Rambus DRAM), которая установлена на модулях памяти RIMM (Rambus In-line Memory Module).
Рис.3 Подсистема памяти RambusDRAM.
Rambus-канал
Rambus-канал (рис. 4) предназначен для осуществления электрической связи между контроллером памяти и микросхемами RDRAM. Физически он представляет собой шину, которая состоит из 30 проводников, разведенных строго параллельно на материнской плате.
Рис.4 Схема Rambus-канала
Сигналы в Rambus-канале передаются в соответствии с высокоскоростным протоколом сигналов RSL (Rambus Signal Levels). Согласно данному протоколу осуществляется низковольтовый перенос номинальных напряжений логического «0» и логической «1» с разностью 800 мВ (рис. 5).
Рис.5
Генератор тактовых импульсов
Rambus-канал является синхронным. Команды и данные передаются параллельно по переднему и заднему фронту синхроимпульсов, создаваемых генератором тактовых импульсов (рис.6).
Рис.6 Схема генератора тактовых импульсов
Конструктивно генератор тактовых импульсов может быть интегрирован в контроллер памяти или установлен в виде отдельной микросхемы (в 24-контактном корпусе типа SSOP).
Передача данных
Данные и служебные биты передаются по каждому фронту тактового сигнала с частотой 800 МГц (1,25 нс), что соответствует скорости передачи 800 Мбит/с на линию. Таким образом, пропускная способность шины составляет 1,6 Гбайт/с. Передача данных осуществляется только между контроллером и микросхемами памяти, обмен только между микросхемами невозможен.
Вся информация передается по Rambus-каналу пакетами (пакеты строк, столбцов и данных). Каждый пакет передается за четы ре такта (10 нс).
Конвейеризация
Операция чтения/записи в Rambus-канале могут быть конвейеризированы. В этом случае время задержки первого пакета составляет 50 нс, далее операции чтения/записи осуществляются практически непрерывно.
При последовательном чередовании двух операций записи и двух операций чтения, адресованных к одной микросхеме, пропускная способность канала составляет 86% от предельной, а при адресации к разным микросхемам -- 95%.
Контроллер памяти
Контроллер памяти Rambus осуществляет управление системой памяти RDRAM и основные функции мультиплексирования/демультиплексирования при преобразовании данных, передающихся по 16-разрядной последовательной шине Rambus-канала в 64-разрядную системную шину. Контроллер принадлежит к семейству специализированных интегрированных микросхем ASIC (Application Specific Integrated Circuits). Данные микросхемы способны объединить в себе функции, обычно реализуемые целым набором микросхем, но при этом оказываются существенно быстрее, компактнее и дешевле.
Основным элементом контроллера памяти Rambus (RMC -- Rambus Memory Controller) является специализированная микросхема библиотеки макроядра (RAC -- Rambus ASIC Cell). Здесь происходит преобразование высокоскоростных сигналов RSL канала Rambus в низкоскоростные сигналы CMOS-уровня.
Контроллер памяти осуществляет взаимодействие подсистемы памяти Rambus с другими компонентами персонального компьютера, взаимодействующими с памятью (центральным процессором, жестким диском, видеосистемой и др.).
Структурная схема микросхемы RDRAM представлена на рис. 7.
Внутреннее ядро RDRAM имеет 128/144-разрядную шину, работающую на частоте 100 МГц - 1/8 тактовой частоты Rambus-канала. Таким образом, каждые 10 нс в ядро (или из ядра) может быть передано 16 байт данных.
Компания Rambus планирует эволюционное развитие существующей линейки модулей RDRAM. В 2003-2004 годах ожидается выпуск как 32-, так и 64-битных чипов, работающих на эффективных частотах 1,2 и 1,33 Ггц (10,6 Гб/сек).
Параллельно Rambus представила новый сигнальный интерфейс памяти Yellowstone. Для реализации данного интерфейса планируется использовать три разработки: дифференциальный протокол передачи запросов, технологию ODR (Octal Data Rate), позволяющую за один такт передавать 8 бит данных, и технологию упрощающую привязку данных к тактовой частоте. По заявлению компании Rambus, технология Yellowstone позволит достичь тактовых частот 6,4 Ггц и пропускной способности до 100 Гб/сек.
Рис.7 Структурная схема RDRAM
Лекция 2
Программируемые логические интегральные схемы
ПЛИС - это матричные большие интегральные схемы, позволяющие программно скомпоновать в одном корпусе электронную схему, эквивалентную схеме, включающей от нескольких десятков до нескольких сотен ИС стандартной логики. По сравнению с другими микроэлектронными технологиями, в том числе базовыми матричными кристаллами (БМК), технология ПЛИС обеспечивает рекордно короткий проектно-технологический цикл (от нескольких часов до нескольких дней), минимальные затраты на проектирование, максимальную гибкость при необходимости модификации аппаратуры.
ПЛИС содержат программируемую матрицу элементов логического И, программируемую или фиксируемую матрицу элементов логического ИЛИ и так называемые макро ячейки. Макро ячейки как правило включают в себя триггер, тристабильный буфер и вентиль исключающее ИЛИ, управляющий уровнем активности сигнала. Размерность матриц и конфигурация макро ячеек определяют степень интеграции и логическую мощность ПЛИС. В сочетании с разнообразными обратными связями перечисленные элементы формируют завершённую автоматную структуру, ориентированную на реализацию как комбинационных (дешифраторов, мультиплексоров, сумматоров), так и последовательных схем (управляющих автоматов, контроллеров, счётчиков).
В ПЛИС заложены возможности, которые позволяют превратить её в ИС с любой функцией цифровой логики. Проектирование сводится к выявлению программируемых элементов (перемычек или запоминающих ячеек), после удаления которых в структуре схемы остаются только связи, которые необходимы для выполнения требуемых функций. На практике эта задача весьма не простая, т.к. современные ПЛИС содержат в среднем несколько десятков тысяч перемычек. Поэтому для проектирования применяют САПР ПЛИС. Каждая компания - производитель ПЛИС разрабатывает и выпускает свою САПР, обеспечивающую реализацию всех этапов проектирования для каждого типа программируемой логики. Благодаря различным САПР, а также структурным и технологическим особенностям, ПЛИС представляют технологию рекордно-короткого цикла разработки РЭА.
Если за рубежом ПЛИС уже заняли заметное место в арсенале разработчика РЭА, то в России эта технология только начинает по-настоящему развиваться.
В каких случаях целесообразно применять ПЛИС?
При разработке оригинальной аппаратуры, а также для замены обычных ИС. При этом значительно уменьшаются размеры устройства, снижается потребляемая мощность и повышается надёжность. ( Наиболее эффективно использование ПЛИС в изделиях, требующих нестандартных схемотехнических решений. В этих случаях ПЛИС даже средней степени интеграции (24 вывода) заменяет, как правило, до 10-15 обычных ИС.)
При необходимости резко сократить сроки и затраты на проектирование, а также повысить возможность модификации и отладки аппаратуры. Поэтому ПЛИС широко применяется в стендовом оборудовании, на этапах разработки и производства опытной партии новых изделий, а также для эмуляции схем, подлежащих последующей реализации на другой элементной базе.
Отдельная область применения ПЛИС - проектирование на их основе устройств для защиты программного обеспечения и аппаратуры от несанкционированного доступа и копирования. ПЛИС обладают такой технологической особенностью, как «бит секретности», после программирования которого схема становится недоступной для чтения. Обычно применение 1-2 ПЛИС средней степени интеграции оказывается вполне достаточной для надёжной защиты информации.
Наиболее широко ПЛИС используются в микропроцессорной технике. На их основе разрабатываются контроллеры, адресные дешифраторы, логика обрамления микропроцессоров, формирователи управляющих сигналов и др. На ПЛИС часто изготавливают микропрограммные автоматы и другие специализированные устройства (цифровые фильтры, схемы обработки сигналов и изображений, процессоры быстрого преобразования Фурье, аппаратура уплотнения телефонных сигналов и т.д.).
Применение ПЛИС становится актуальным ещё и потому, что у разработчика зачастую нет необходимых стандартных микросхем.
Рис. 8. Логический блок ПЛИС
В настоящее время на мировом рынке можно отметить несколько основных компаний-производителей -- ПЛИС-XILINX, ALTERA, LATTICE, AT&T, INTEL, выпускающих микросхемы с архитектурой EPLD (EPROM technology bazed complex Programmable Logic Device) - многократно программируемые, и FPGA (Field Programmable Gate Array) - многократно реконфигурируемые.
В качестве памяти для хранения конфигурации в ПЛИС EPLD используется ППЗУ с ультрафиолетовым стиранием, а у ПЛИС FPGA - статическое ОЗУ.
Микросхема FPGA представляет собой матрицу логических ячеек, соединенных между собой логическими ключами. Содержащаяся в микросхемах FPGA статическая память, будучи заполненной определенной битовой последовательностью, воздействует на логические ячейки и соединяющие их ключи, позволяя получить требуемые электрические схемы (регистры, счетчики, логические схемы и т.д., соединенные друг с другом в требуемом порядке). Каждая микросхема FPGA имеет также вход для записи битовой последовательности, заполняющей статическую память, а также элементы "вход/выход" для связи с другими микросхемами.
Рис. 9. Блок ввода/вывода ПЛИС
Существует крайняя точка зрения, что со временем ПЛИС вытеснят серийные микропроцессоры, так как пользователь сможет реализовать требуемую ему систему программными средствами, учитывая всю специфику своего приложения.
Таким образом, на основе одной или нескольких микросхем FPGA можно создать реконфигурируемый процессор, обладающий преимуществами спецпроцессора на "жесткой" логике, но способного путем изменения содержимого статической памяти решать любые задачи, подобно универсальному процессору.
Логический блок - один из базовых элементов архитектуры ПЛИС FPGA, может выполнять любую логическую функцию в соответствии с заданной битовой последовательностью (рис.8). Изменять выполняемую функцию можно неограниченное количество раз путем загрузки другой битовой последовательности.
Блок ввода/вывода (рис.9), так же как и логический блок, может быть настроен на выполнение любого электрического соединения реализованной внутри ПЛИС схемы с внешним миром через соответствующий контакт микросхемы.
Направление развития микроэлектронных компонентов вычислительных систем
Для создания высокоэффективных вычислительных систем важно интегрировать на кристалле как можно больше функций по обработке и хранению данных, а также интерфейс с пользователем и другими вычислительными системами.
Стремление к интеграции совокупности функций обусловлено рядом факторов. Во-первых, при однокристальной реализации пропускная способность интерфейсов между подсистемами обработки и хранения данных не ограничивается количеством выводов корпуса кристалла и может достигать требуемого значения. Во-вторых, упрощается системная плата, на которую монтируется кристалл, уменьшается объем монтажных работ, повышаются показатели надежности и производительности вычислительной системы и уменьшается ее стоимость. В-третьих, снижаются требования к количеству выводов корпуса кристалла, так как минимизируется интерфейс с другими компонентами вычислительной системы, например с устройствами отображения информации. И, наконец, в четвертых, реализуются возможности миллионов транзисторов, которые могут быть размещены на кристалле. Эти транзисторы можно использовать как для построения специализированной системы, состоящей из совокупности проблемно-ориентированных блоков, так и для создания параллельных систем из нескольких процессоров.
Наряду с созданием однокристальных систем существует проблема организации быстрых интерфейсов между микросхемами в многокристальных системах, например между микросхемами процессора и памяти. В Pentium Pro эта проблема решается путем размещения в одном корпусе двух кристаллов: собственно микропроцессора и кэш-памяти второго уровня. Другое возможное решение этой проблемы заключается в создании многокристальных микросборок, в которых бескорпусные СБИС монтируются на кремниевой подложке с нанесенными, возможно несколькими, слоями межкристальных соединений.
Лекция 3
Архитектура и структура микропроцессоров. Цикл работы микропроцессора: типы адресации и система команд.
Типы команд микропроцессоров.
В ходе эволюционного развития архитектур процессоров в состав системы команд вводились и, в силу преемственности программного обеспечения, закреплялись сложные команды, которые по мнению разработчиков соответствовали решаемым задачам. Мерой этого соответствия чаще всего был объем двоичного кода программы, так как минимизация длины программы была равнозначна минимизации времени исполнения. Команды бывают разных типов: "регистр, регистр -> регистр", "память, память -> память", "регистр -> память" и др. Сложные команды модифицируют содержимое групп регистров и ячеек памяти, и для их реализации при приемлемых затратах оборудования, как правило, применяется микропрограммирование.
Команды называются скалярными, если входные операнды и результат являются числами (скалярами).
Команды называются векторными, если входные операнды и, возможно, результат являются вектором (массивом) чисел, а для преобразования данных массива (вектора) используется одна векторная команда. Примером векторной команды служит команда, при выполнении которой умножаются два очередных элемента двух массивов, далее произведение суммируется с содержимым некоторого заданного регистра, после чего модифицируются адреса памяти для доступа к двум очередным элементам массивов. Указанная последовательность действий повторяется заданное число раз по счетчику, определенному в теле команды.
Само появление векторных команд обусловлено стремлением ускорить обработку массивов данных за счет исключения затрат времени на выборку и дешифрацию команд обработки, одинаковых для всех компонент входных массивов.
Однако использование векторных команд требует подготовки программистом векторизованного кода программ, что, вообще говоря, эквивалентно разработке параллельных программ.
При сохранении последовательных программ для ускорения обработки применяются суперскалярные процессоры, в которых за счет параллельной работы функциональных устройств процессора в одном такте вырабатывается несколько скалярных результатов.
Структурный параллелизм микропроцессоров
Повышение производительности микропроцессоров достигается за счет увеличения тактовой частоты, совершенствования параллельной и конвейерной обработки данных, а также уменьшения времени доступа к памяти. Современные микропроцессоры содержат десять и более обрабатывающих устройств, каждое из которых представляет собой конвейер. Эффективная загрузка параллельно функционирующих конвейеров обеспечивается либо аппаратурой процессора, либо компилятором, на вход которого поступают программы на традиционном последовательном языке программирования, либо совместно аппаратурой и компилятором.
В компиляторах используется изощренная техника извлечения параллелизма из последовательных программ. Аппаратура микропроцессоров ориентирована на выделение более простых форм параллелизма, в том числе естественного. Стремление использовать присущий большинству программ естественный параллелизм вычисления целочисленных адресных выражений и собственно обработки данных в формате с плавающей точкой привело к появлению разнесенных архитектур (decoupled architecture).
В первом приближении, микропроцессор с разнесенной архитектурой, как показано на рис.10, состоит из двух связанных подпроцессоров, каждый из которых управляется собственным потоком команд.
Условно эти подпроцессоры называются адресным А-процессором и исполнительным Е-процессором. А- и Е-процессоры имеют собственные наборы регистров АО,А1,... и ХО,Х1,..., соответственно и наборы команд. А-процессор выполняет все адресные вычисления и формирует обращения к памяти по чтению и записи. А-процессор является обыкновенным целочисленным процессором, поэтому он способен выполнять произвольные целочисленные преобразования, не связанные с вычислением адресов. Е-процессор реализует вычисления с плавающей точкой.
Данные, извлекаемые из памяти, используются либо в А-процессоре, будучи помещенными в FIFO очередь АА, либо помещаются в FIFO очередь, называемую АЕ очередью, для отсылки в Е-процессор. Когда Е-процессору требуются данные из памяти, он берет их из очереди АЕ. Если очередь пуста, то Е-процессор задерживается до поступления данных, что решает вопросы синхронизации работы А и Е-процессоров. Если Е-процессор выработал данное, которое должно быть отправлено в память, то он помещает его в FIFO очередь ЕА.
При записи данных в память после вычисления адреса А-процессор сразу отправляет адрес в FIFO очередь AW адресов записи в память, не дожидаясь, пока данные поступят в очередь ЕА. А-процессор группирует пары, выбирая первые элементы очередей ЕА и AW и отправляя эти пары в память. Естественно, если одна из очередей или обе пусты, то отсылка в память приостанавливается.
При чтении данных А-процессор отправляет адреса в память с указанием очередей АА или АЕ, в которые должны быть считаны данные из памяти.
Рис.10. Микропроцессор с разнесенной архитектурой
Разнесенная архитектура позволяет достигать при скалярной обработке производительности, характерной для векторных процессоров, за счет предвыборки данных из памяти и автоматической развертки нескольких последовательных витков цикла в А-процессоре. Проблемы расщепления программы на программы для А- и Е-процессоров решаются на уровне компилятора или специальным блоком-расщепителем.
Важным системным аспектом разнесенной архитектуры служит интерфейс между процессором и памятью посредством транзакций чтения и записи. Это позволяет расположить между процессором и памятью произвольную коммутационную среду, что подводит логический базис под концепцию построения многопроцессорных систем.
Лекция 4
Структурные методы уменьшения времени доступа к памяти
Совершенствование архитектуры микропроцессоров и механизмов доступа к памяти не может происходить без принятия совокупности соглашений о структуре программ и обрабатываемых данных. Это обусловлено, например, тем, что время доступа в основную память десять и более раз больше, чем время выполнения преобразований данных в регистрах процессора. Потому необходимо находить решения по уменьшению времени доступа, учитывающие этот факт.
Иерархическая структура памяти. Идеальная память должна обеспечивать процессор командами и данными так, чтобы не вызывать простоев процессора. При этом память должна иметь большую емкость. В современных условиях уменьшение времени доступа достигается введением многоуровневой иерархии памяти. Время доступа зависит от объема и типа используемой памяти.
Типовая современная иерархия памяти имеет следующую структуру:
* регистры 64 - 256 слов с временем доступа 1 такт процессора;
* кэш 1 уровня - 8к слов с временем доступа 1-2 такта;
* кэш 2 уровня - 256к слов с временем доступа 3-5 тактов;
* основная память - до 4 Гигаслов с временем доступа 12-55 тактов.
Используя помимо основной памяти небольшую и более быструю буферную память, можно значительно сократить количество обращений к основной памяти, за счет аккумуляции текущего фрагмента программного кода в буферной памяти. Создание иерархической многоуровневой памяти, пересылающей блоки программ и данных между уровнями памяти за время, пока предшествующие блоки обрабатываются процессором, позволяет существенно сократить простои процессора в ожидании данных. При этом эффект уменьшения времени доступа в память будет тем больше, чем больше время обработки данных в буферной памяти по сравнению с временем пересылки между буферной и основной памятью. Это достигается при локальности обрабатываемых данных, когда процессор многократно использует одни и те же данные для выработки некоторого результата. Например, такая ситуация имеет место при решении систем уравнений в научных и инженерных расчетах, когда короткие участки программного кода с большим количеством вложенных и зацепленных друг с другом циклов обрабатывают поочередно, переходя от точки к точке, небольшие порции данных, многократно используя одни и те же данные и внутренние результаты.
В связи с тем, что локально обрабатываемые данные могут возникать в динамике вычислений и не обязательно сконцентрированы в одной области при статическом размещении в основной памяти, буферную память организуют как ассоциативную, в которой данные содержатся в совокупности с их адресом в основной памяти. Такая буферная память получила название кэш-памяти. Кэш-память позволяет гибко согласовывать структуры данных, требуемые в динамике вычислений, со статическими структурами данных основной памяти.
Кэш имеет совокупность строк (cache-lines), каждая из которых состоит из фиксированного количества адресуемых единиц памяти (байтов, слов) с последовательными адресами. Типичный размер строки: 16, 64, 128, 256 байтов.
Наиболее часто используются три способа организации кэш-памяти, отличающиеся объемом аппаратуры, требуемой для их реализации. Это так называемые кэш-память с прямым отображением (direct-mapped cache), частично ассоциативная кэш-память (set-associative cache) и ассоциативная кэш-память (fully associative cache).
При использовании кэш-памяти с прямым отображением адрес представляется как набор трех компонент, составляющих группы старших, средних и младших разрядов адреса, соответственно тега, номера строки, смещения. Например, при 16-разрядном адресе старшие 5 разрядов могут представлять тег, следующие 7 разрядов - номер строки и последние 4 разряда - смещение в строке. В этом случае строка состоит из 6 адресуемых единиц памяти, всего строк в кэше 128. Кэш-память с прямым отображением представляет собой набор строк, каждая из которых содержит компоненту тег и элементы памяти строки, адрес которых идентифицируется смещением относительно начала строки.
При этом устанавливается однозначное соответствие между адресом элемента памяти и возможным расположением этого элемента памяти в кэше, а именно: элемент памяти всегда располагается в строке, задаваемой компонентой "номер строки" адреса, и находится на позиции строки, задаваемой компонентой "смещение" адреса,
Наличие элемента данных по запрашиваемому адресу в кэше определяется значением тега. Если тег строки кэш-памяти равен компоненте "тег" адреса, то элемент данных содержится в кэш-памяти.
Иначе необходима подкачка в кэш-память строки, с заданным в адресе тегом.
Так как для определения наличия нужной строки данных в кэш-памяти требуется только одно сравнение тегов заданной строки и адреса, а само замещение строк выполняется по фиксированному местоположению, то объем оборудования, необходимый для реализации этого типа кэш-памяти, достаточно мал.
Недостатки этой организации - очевидны. Если программа использует поочередно элементы памяти из одной строки, но с различными значениями тегов, то это вызывает при каждом обращении замену строки с обращением к данным основной памяти.
Ассоциативная кэш-память использует двухкомпонентное представление адреса: группа старших разрядов трактуется как тег, а группа младших разрядов - как смещение в строке.
Нахождение строки в кэше определяется совпадением тега-строки со значением тега адреса. Количество строк в кэше может быть произвольным (естественное ограничение - количество возможных значений тегов). Поэтому при определении нахождения требуемой строки в кэш-памяти необходимо сравнение тега адреса с тегами всех строк кэша. Если выполнять это последовательно, строка за строкой, то время выполнения сравнений будет непозволительно большим. Поэтому сравнение выполняется параллельно во всех строках с использованием принципов построения ассоциативной памяти, что и дало название этому способу организации кэш-памяти.
При отсутствии необходимой строки в кэш-памяти одна из его строк должна быть заменена на требуемую. Используются разнообразные алгоритмы определения заменяемой строки, например циклический, замена наиболее редко используемой строки, замена строки, к которой дольше всего не было обращений, и другие.
Частично-ассоциативная кэш-память комбинирует оба вышеописанных подхода: кэш-память состоит из набора ассоциативных блоков кэш-памяти. Средняя компонента адреса задает в отличие от прямо адресуемой кэш-памяти не номер строки, а номер одного из ассоциативных блоков. При поиске данных ассоциативное сравнение тегов выполняется только для набора блоков (возможна организация кэша, когда таких наборов несколько), номер которого совпадает со средней компонентой адреса. По количеству n строк в наборе кэш-память называется n-входовой.
Соответствие между данными в оперативной памяти и кэш-памяти обеспечивается внесением изменений в те области оперативной памяти, для которых данные в кэш-памяти подверглись модификации. Соответствие данных обеспечивается параллельно с основными вычислениями. Существует несколько способов его реализации (и, соответственно, несколько режимов работы кэш-памяти).
Один способ предполагает внесение изменений в оперативную память сразу после изменения данных в кэше. При этом процессор простаивает в ожидании завершения записи в основную память. В основной памяти поддерживается правильная копия данных кэша, и при замене строк не требуется никаких дополнительных действий. Кэш-память, работающая в таком режиме, называется памятью со сквозной записью (write- through).
Другой способ предполагает отображение изменений в основной памяти только в момент вытеснения строки данных из кэша. Если данные по адресу памяти, в который необходимо произвести запись, находятся в кэш-памяти, то идет запись только в кэш-память. При отсутствии данных в кэш-памяти производится запись в основную память. Такой режим работы кэша получил название обратной записи (write-back).
Существуют также промежуточные варианты (buffed write though), при которых запросы на изменение в основной памяти буферизуются и не задерживают процессор на время операции записи в память. Эта запись выполняется по мере возможности доступа контроллера кэш-памяти к основной памяти.
В процессорах, предусматривающих возможность использования в мультипроцессорных конфигурациях, применяется более сложный протокол MESI (Modified, Exclusive, Shared, Invalid) организации кэш-памяти с обратной записью, который предотвращает лишние передачи данных между кэш-памятью и основной памятью.
Для мультипроцессорных систем, в которых память физически распределена между процессорными модулями, идентичность данных в кэшах (когерентность кэшей) различных модулей поддерживается с помощью межмодульных пересылок. Существует несколько основных подходов.
Прямолинейный подход к поддержанию когерентности кэшей в мультипроцессорной системе заключается в том, что при каждом непопадании в кэш в любом процессоре инициируется запрос требуемой строки из того блока памяти, в котором эта строка размешена. В дальнейшем этот блок памяти будет по отношению к этой строке называться резидентным. Запрос передается через коммутатор в модуль с резидентным для строки блоком памяти, из которого затем необходимая строка через коммутатор присылается в модуль, в котором произошло непопадание. Таким образом, в частности, обеспечивается начальное заполнение кэшей. При этом в каждом модуле для каждой резидентной строки ведется список модулей, в кэшах которых эта строка размещается. Строка, размещенная в кэше более чем одного модуля, в дальнейшем будет называться разделяемой.
Собственно когерентность кэшей обеспечивается следующим. При обращении к кэш-памяти в ходе операции записи данных, после самой записи, процессор приостанавливается до тех пор, пока не выполнится последовательность действий: измененная строка кэша пересылается в резидентную память модуля, затем, если строка была разделяемой, она пересылается из резидентной памяти во все модули, указанные в списке модулей, разделяющих эту строку. После получения подтверждений, что все копии изменены, резидентный модуль пересылает в процессор, приостановленный после записи, разрешение продолжать вычисления.
Изложенный алгоритм обеспечения когерентности хотя и является логически работоспособным, однако практически редко применяется из-за больших простоев процессоров при операциях записи в кэш строки. На практике применяют более сложные алгоритмы, обеспечивающие меньшие простои процессоров.
...Подобные документы
Функционально законченное программное управляемое устройство обработки информации, в виде одной или нескольких больших или сверхбольших интегральных схем. Функции микропроцессора Pentium, основные параметры. Технология гиперконвейерной обработки.
учебное пособие [1,1 M], добавлен 09.02.2009Характеристика сущности микропроцессора - программного устройства обработки данных, выполняемого средствами микроэлектронных технологий в корпусе одной или же нескольких больших интегральных схем. Изучение общей структуры микропроцессоров и их видов.
контрольная работа [113,5 K], добавлен 05.09.2010Подключение периферийных устройств к ЭВМ. Синхронизация выполнения программы с внешними процессами. Прерывания. Реализация механизма прерывания в х86. Прямой доступ к памяти. Шины, магистраль PCI. Процесс загрузки компьютера. Клавиатура, системный таймер.
презентация [7,1 M], добавлен 14.12.2013Общее устройство микропроцессора. Структура 64-битной подсистемы памяти. Селекция портов ввода/вывода. Особенности интерфейса микропроцессорных систем. Проектирование подсистемы памяти на базе Itanium 2. Расчёт информативности и необходимых объёмов.
курсовая работа [3,7 M], добавлен 05.12.2012Ассемблер как символический аналог машинного языка. Архитектура микропроцессора: организация памяти, способы адресации операндов, правила использования регистров. Текст программы. Этапы программирования на ассемблере, алгоритмы выполнения задач.
контрольная работа [515,1 K], добавлен 20.01.2016Архитектура микроконтроллеров семейства Mega. Организация памяти. Способы адресации памяти данных. Энергонезависимая память данных. Таблица векторов прерываний. Счетчик команд и выполнение программы. Абсолютный вызов подпрограммы. Сторожевой таймер.
дипломная работа [213,9 K], добавлен 02.04.2009Архитектура ЭВМ и ее основные свойства. Классификационные признаки ЭВМ. Принципы цифрового представления информации, адресности, программного управления. Структура ЭВМ по Джону фон Нейману. Программная модель микропроцессора, классификация процессоров.
презентация [1,0 M], добавлен 09.11.2013Классификация микропроцессоров по числу больших интегральных схем, по назначению и виду обрабатываемых входных сигналов. Устройства, входящие в состав микропроцессора. Составление электронной таблицы "Ведомость расчета амортизационных отчислений".
курсовая работа [27,8 K], добавлен 04.03.2011Основа современной компьютерной техники - микропроцессоры. Увеличение их быстродействия позволяет ставить перед техникой такие задачи, как моделирование сложных процессов, обработка больших объемов информации, обеспечение автономной работы устройств.
курсовая работа [2,6 M], добавлен 08.11.2010Методы расчета, схемотехнического проектирования и конструирования элементов и блоков ЦВМ. Разработка регистра, схемы записи и считывания из оперативной памяти. Применение макроопределений при моделировании устройств и построении принципиальных схем.
курсовая работа [1,1 M], добавлен 12.02.2013Понятия и принцип работы процессора. Устройство центрального процессора. Типы архитектур микропроцессоров. Однокристальные микроконтроллеры. Секционные микропроцессоры. Процессоры цифровой обработки сигналов. Эволюция развития микропроцессоров Intel.
реферат [158,8 K], добавлен 25.06.2015Объем двухпортовой памяти, расположенной на кристалле, для хранения программ и данных в процессорах ADSP-2106x. Метод двойного доступа к памяти. Кэш-команды и конфликты при обращении к данным по шине памяти. Пространство памяти многопроцессорной системы.
реферат [28,1 K], добавлен 13.11.2009Внутренняя архитектура микропроцессора Intel 486. Формат данных и команд. Регистры общего назначения. Программная модель устройства FPU, регистр флагов. Разработка структуры и микропрограммы микропроцессора, управляющего автомата с жесткой логикой.
курсовая работа [1,6 M], добавлен 27.05.2013Функциональная схема микропроцессора Intel 8086 (i8086). Формирование физического адреса памяти, выборка команд из памяти и запись их в очередь команд. Система команд процессора. Суть защищенного режима, переход из защищенного режима в реальный режим.
практическая работа [93,3 K], добавлен 24.03.2013Микропроцессор как универсальное устройство для выполнения программной обработки информации. Функциональные возможности и архитектурные решения. Микроконтроллеры в системах управления и обработки информации. Классификация электронно-вычислительных машин.
курсовая работа [189,6 K], добавлен 12.10.2015Стёковая организация памяти как главная идея языка Форт. Вычислительная модель, лежащая в его основе. Особенности работы со стёком памяти. Константы, переменные и работа с памятью. Организация диалога в Форте. Организация памяти и организация подпрограмм.
курсовая работа [29,9 K], добавлен 29.01.2010Назначение программы, ее пользователи, основные функции и цели, которые преследуются при разработке. Теоретические основы разработки, выбор инструментальных средств. Разработка пользовательского интерфейса. Архитектура программы, основные функции.
курсовая работа [1,1 M], добавлен 04.04.2012Назначение и разновидности постоянных запоминающих устройств (ПЗУ). Конструкция и виды полупроводниковых ПЗУ. История разработки и типы Flash-памяти, ее программирование и структурная организация. Характеристика современных стандартов карт памяти.
презентация [933,6 K], добавлен 11.12.2013Обеспечение непосредственной связи контроллера прямого доступа к памяти (ПДП) и памяти микроЭВМ. Совместное использование шин системного интерфейса процессором и контроллером. Последовательность и алгоритм программирования контроллера прямого доступа.
реферат [122,6 K], добавлен 13.11.2009Внутренний кэш. Смешанная и разделенная кэш-память. Статическая и динамическая память. TLB как разновидность кэш-памяти. Организация кэш-памяти. Отображение секторов ОП в кэш-памяти. Иерархическая модель кэш-памяти. Ассоциативность кэш-памяти.
курсовая работа [229,1 K], добавлен 04.11.2006