- •1 Предсталвение процессора 8051 на цифровом логическом уровне.
- •2. Представление процессора 8051 на уровне микроархитектуры.
- •3. Внутренняя память данных микроконтроллера 8051.
- •4. Подключение к процессору 8051 внешней памяти.
- •5. Представление процессора 8051 на уровне архитектуры набора команд. Типы данных. Форматы команд.
- •6. Преставление процессора 8051 на уровне архитектуры набора команд. Режимы адресации. Характеристика системы команд.
- •7. Базовая структура процессора UltraSparc III
- •8. Структура процессора UltraSparc III на уровне микроархитектуры.
- •9. Конвейер UltraSparc III.
- •11. Параллелизм на уровне команд: суперскалярная архитектура.
- •12. Параллелизм на уровне процессоров: матричные компьютеры
- •13. Классификация параллельных компьютерных систем
- •14. Uма-мультипроцессоры с перекрестной коммутацией
- •15. Uma-мультипроцессоры с многоступенчатой коммутацией
- •16. Сома-мультипроцессоры
- •17. Мультикомпьютеры
Вопросы ТК2-2012
Представление микроконтроллера 8051 на цифровом логическом уровне.
Представление микроконтроллера 8051 на уровне микроархитектуры.
Внутренняя память данных микроконтроллера 8051.
Подключение к микроконтроллеру 8051 внешней памяти.
Представление процессора 8051 на уровне архитектуры набора команд.Типы данных. Форматы команд.
Представление процессора 8051 на уровне архитектуры набора команд. Режимы адресации. Характеристика системы команд.
Базовая структура системы UltraSPARC III.
Структура процессора UltraSPARC III на уровне микроархитектуры.
Конвейер UltraSPARC III.
Параллелизм на уровне команд: конвейеризация.
Параллелизм на уровне команд: суперскалярная архитектура.
Параллелизм на уровне процессоров: матричные компьютеры.
Классификация параллельных компьютерных архитектур.
UMA-Мультипроцессоры с перекрестной коммутацией.
UMA-Мультипроцессоры с многоступенчатой коммутацией.
СОМА-мультипроцессоры.
Мультикомпьютеры.
1 Предсталвение процессора 8051 на цифровом логическом уровне.
Наиболее распространенным микроконтроллером является 8051. Такая популярность, в первую очередь, обусловлена его низкой стоимостью. 8051 — небольшая микросхема, к которой очень легко подключать другие устройства. Ее физическая компоновка показана на рис. 3.46.
Как видно на этой схеме, 8051 обычно поставляется в стандартном корпусе с 40 выводами. В микросхеме 16 адресных линий, лимит адресации памяти составляет 64 Кбайт. Ширина шины данных — 8 бит. Самым очевидным отличием от Pentium 4 и UltraSPARC, является присутствие 32 линий ввода-вывода в четырех группах (по 8 бит в каждой). Каждую из линий ввода-вывода можно соединить с кнопкой, переключателем, светодиодом или любым другим элементом управления, применяемым в электронных устройствах, за счет чего организуются входные и выходные потоки данных.
Цоколевка микросхемы 8051 показана на рис. 3.47. Объем внутренней памяти составляет по умолчанию 4 Кбайт. Если этот объем оказывается недостаточным, память можно расширить путем подключения через шину дополнительного модуля емкостью до 64 Кбайт. Первые семь сигналов, показанные в левой части рис. 3.47, служат для соединения с внешней памятью, если таковая предусмотрена. Первый сигнал, А, содержит 16 адресных линий, обеспечивающих адресацию байта внешней памяти для чтения или записи. Восемь линий D используются для передачи данных.
Восемь адресных линий нижнего порядка совмещаются с теми же выводами, что и информационные линии, за счет чего уменьшается общее количество выводов. При выполнении транзакции шины через эти выводы передаются адрес (во время первого цикла) и данные (во время последующих циклов).
При использовании внешней памяти процессор 8051 обозначает операции чтения из памяти и записи в нее установкой сигналов RD и WR соответственно. Наличие внешней памяти требует сигнала ALE (Address Latch Enable — установка защелки адреса). Устанавливая этот сигнал, ЦП удостоверяет правильность адреса.
Сигнал PSEN (Program Store ENable — доступ к памяти программ) устанавливается в том случае, если процессор 8051 намеревается считать данные из памяти программ.
Сигнал ЕА# (External Access — доступ к внешней памяти) либо в виде нуля, либо в виде единицы. В случае единицы для обработки адресов в заданном диапазоне используется внутренняя память объемом 4 Кбайт, а для остальных адресов — внешняя память. В случае нуля все адреса обрабатываются во внешней памяти, а встроенная память остается незадействованной.
Две линии таймеров обеспечивают передачу данных от внешних таймеров процессору. Две линии прерываний позволяют двум внешним устройствам запрашивать прерывания процессора. Линии TXD и RXD обеспечивают последовательный ввод-вывод с терминалом или модемом. Наконец, линия RST позволяет пользователям и внешним устройствам перезапускать 8051.
2. Представление процессора 8051 на уровне микроархитектуры.
Микроархитектура процессора 8051 (рис. 4.35) значительно проще двух предыдущих — Pentium и UltraSPARC. Размер этой микросхемы очень мал (она состоит из 60 ООО транзисторов), а разрабатывалась она задолго до того, как конвейерная технология стала популярной.
Центральное положение в микроархитектуре 8051 занимает основная шина. С ней связаны немногочисленные регистры, причем для большинства из них операции чтения и записи выполняются программно. Регистр АСС представляет собой основной арифметический регистр, в котором сохраняется большая часть результатов вычислений. Регистр В применяется для умножения и деления; кроме того, при хранении результатов он выполняет роль временного регистра. Регистр SP является указателем стека. В регистре команд IR содержатся команды, выполняемые в данный момент.
Регистры ТМР1 и ТМР2 — это защелки, обслуживающие АЛУ. Перед выполнением операций в АЛУ соответствующие операнды копируются в эти защелки. Результаты вычислений в АЛУ записываются в любой регистр записи, доступ к которому обеспечивает основная шина. Коды состояний, обозначающие нулевые, отрицательные и тому подобные результаты, записываются в регистр PSW (Program Status Word — слово состояния программы).
В 8051 предусмотрены независимые модули памяти для размещения данных и кода. Емкость ОЗУ для размещения данных составляет 128 байт; соответственно, 8-разрядного регистра RAM ADDR вполне достаточно для полной адресации этой памяти. В процессе адресации ОЗУ адрес целевого байта размещается в регистре RAM ADDR, после чего производится обращение к памяти. Емкость памяти кода может достигать 64 Кбайт, поэтому разрядность регистра ROM ADDR составляет 16 бит. Схема адресации к программному коду в ПЗУ с помощью регистра ROM ADDR аналогична схеме для памяти данных.
Регистр DPTR (Double PoinTeR — двойной указатель) — это 16-разрядный временный регистр, предназначенный для управления и сборки 16-разрядных адресов. Регистр PC - 16-разрядный счетчик команд; он определяет адрес следующей команды, которую требуется вызвать и выполнить. Регистр PC incrementer — это специальный аппаратный модуль, выполняющий роль псевдорегистра. Когда в него копируется, а затем считывается содержимое регистра PC, его значение увеличивается на единицу. Ни к PC, ни к PC incrementer нельзя обратиться через основную шину. BUFFER — это еще один 16-разрядный временный регистр. Каждый16-разрядный регистр процессора 8051 состоит из пары 8-разрядных регистров.
На микросхеме 8051 устанавливаются три 16-разрядных таймера, необходимых для выполнения приложений в реальном времени. Также предусмотрено четыре 8-разрядных порта ввода-вывода, через которые процессор 8051 может управлять 32 внешними кнопками, световыми индикаторами, датчиками, выключателями и т. д.
Процессор 8051 относится к категории синхронных — большинство команд, которые он обрабатывает, завершаются за один цикл. Каждый цикл делится на шесть частей, называемых состояниями. В первом состоянии следующая команда вызывается из ПЗУ, и по основной шине отправляется в регистр IR. Во втором состоянии проводится декодирование этой команды, а значение в регистре PC увеличивается на единицу. В третьем состоянии подготавливаются операнды; в четвертом один из них передается основной шине, после чего, как правило, размещается в регистре ТМР1 и выполняет роль операнда АЛУ. В этом же состоянии возможно копирование содержимого АСС в регистр ТМР2, после чего оба АЛУ становятся готовы к дальнейшей обработке. В пятом состоянии происходит выполнение команд АЛУ. В шестом состоянии результаты выполнения команд АЛУ передаются обратно основной шине. Одновременно в регистре ROM ADDR проводится подготовка к вызову следующей команды.