
Микропроцессоры Токхайм / 4.5. ФУНКЦИОНИРОВАНИЕ МИКРО-ЭВМ
.doc4.5. ФУНКЦИОНИРОВАНИЕ МИКРО-ЭВМ
Пусть требуется выполнить простую операцию сложения трех чисел, например 10+5+18 = ЗЗ10. Короткая и простая микропрограмма выполнения этой операции могла бы быть записана в следующей последовательности. Команда 1: загрузить (LOAD) первое число (10ю) в ЦП. Команда 2: сложить (ADD) второе число (510) с первым. Команда 3 сложить (ADD) третье число (1810) с двумя предыдущими.
Команда 4: поместить (STORE) сумму (ЗЗ10) в ячейку памяти 2000Н.
После загрузки в память программы эти команды могли бы извлекаться из нее как команды памяти, показанной на рис. 4.10. Заметим, что первая команда программы начинается с адреса 0000Н. Эта команда (LOAD число 0AH) использует 2 байт памяти. Первый байт памяти содержит оперативную часть команды, другой — операнд. Код операции LOAD для микропроцессора, используемого в этом примере, будет 86Н (1000 01102). Операнд 0AH (0000 10102) является первым числом, подлежащим загрузке в аккумулятор микропроцессора. Заметим, что рис. 4.10 является широко распространенным представлением содержимого памяти и адресов в шестнадцатеричной записи. В реальной действующей машине такая информация представляется в форме напряжения Н- и L-уровней.
Предположим, что программа размещена в блоке ОЗУ микро-ЭВМ (рис. 4.1), в которую входят устройства, представленные на рис. 4.7. В таком случае рис. 4.11 иллюстрирует каждую операцию программы (LOAD, ADD, ADD, STORE).
Операция загрузки (LOAD) первой команды подробно приведена на рис. 4.11, а и показывает, что содержимое ячейки памяти 0001Н загружено в аккумулятор, который содержит после этого 0000 10102 — первое слагаемое число. В результате операции загрузки стирается предыдущее и записывается новое содержимое аккумулятора. Вторая команда, операция ADD, детализирована на рис. 4.11,б.
Содержимое ячейки памяти 0003Н (0000 01012) складывается с содержимым аккумулятора 0000 10102, что дает сумму 0000 11112, помещаемую в аккумулятор, и мы можем заметить, что содержимое аккумулятора изменяется при операции ADD.
На рис. 4.11,в показана вторая операция ADD (команда 3); содержимое аккумулятора — сумма 0000 11112 сложена с содержимым ячейки памяти 0005Н, т.е. выполняется операция 0000 1111+0001 0010=0010 0001. Окончательно 0010 0001 появляется в аккумуляторе после второй операции ADD.
Операция STORE (РАЗМЕСТИТЬ) по команде 4 представлена на рис. 4.11, г. Содержимое аккумулятора (0010 00012) передано и размещено в ячейке памяти по адресу 2000Н. Заметим, так как это важно, что ячейки памяти данных были идентифицированы в памяти программы двумя раздельными байтами (0007Н и 0008Н). Ячейка памяти программы 0006Н содержит КОП В7Н прямой команды STORE (см. рис. 4.10).
Рассмотрим извлечение, декодирование и выполнение команды LOAD по адресам 0000Н и 0001Н в программе.
Этот тип команды будет выполнен, вероятно, за время около 2—6 мкс большинством микро-ЭВМ. Рисунок 4.12 иллюстрирует процедуру выполнения центральным процессором этой специальной операции.
Рассмотрим
сверху слева направо последовательность
действий на рис. 4.12: счетчик команд
прежде всего устанавливает адрес
первого этапа программы. После этого
16-разрядный адрес передается в адресный
регистр, затем на адресную шину и в
память программы. Для активизации
памяти программы ЦП выдает сигнал
считывания программы (1 на линии
), в то время как дешифратор адресов
(который не входит в состав ЦП) активизирует
выбор кристалла
нулем.
Затем счетчик команд инкрементируется
до 0001Н, ячейка памяти программы 0000Н
становится доступной и ее содержимое
считывается на шину данных. Код операции
(86Н) команды LOAD передается в регистр
ЦП. Этап извлечения КОП команды LOAD
завершен.
Затем КОП (86Н), содержащийся в регистре команды ЦП, интерпретируется дешифратором команд. В данном случае ЦП определяет, идет ли речь о команде LOAD непосредственно, что означает загрузку им содержимого памяти, адрес которой следует непосредственно за КОП, в аккумулятор. Содержимое счетчика команд (0001Н) передается в адресный регистр, на адресную шину и в память.
памяти. Импульс LOW поступает на вход
памяти,
что активизирует память. В третьей
строке (снизу) на рис. 4.12 счетчик команд
инкрементируется до 0002Н, что подготавливает
его к извлечению последующей команды.
Ячейка памяти 0001Н становится доступной,
и ее содержимое (ОАН) поступает на шину
данных, затем передается в аккумулятор.
В ходе этапа извлечения КОП всегда
помещается в регистр команд.
Упражнения
Две части команды микропроцессоров называются операцией и _____ .
См. рис. 4.10. Когда ячейка памяти 0002Н доступна, ее содержимое передается в регистр _____ ЦП через
шину ______ (адреса, данных).
См. рис. 4.10. Ячейка памяти 0003Н содержит 05Н, что рассматривается ЦП как _____ (операция, операнд) команды.
Двоичное 16-разрядное число может быть представлено шестнадцатеричным числом _____ цифрами.
Привести три последовательных этапа цикла команды микропроцессора.
См. рис. 4.12. Этап извлечения является основным
при операции ______ (считывания, записи), содержимое
памяти помещается в ______ (аккумулятор, регистр ко- манд) микропроцессора.
4.61. В ходе извлечения ______ (дешифратор команд,
счетчик команд) указывает адрес КОП извлечения из памяти.
См. рис. 4.12. Какие другие входы памяти необходимы для активизации считывания байта кроме адресного входа?
См. рис. 4.10. Какое шестнадцатеричное число должно быть помещено в ячейку памяти 2000Н после выполнения ЦП команды 4?
См. рис. 4.12. После последовательного выполнения последовательности действий счетчик команд восстанавливается ______ (дешифратором адреса, оператором).
Решения
4.55.
Операндом. 4.56. Команд; данных. 4.57. Операнд.
4.58. Четырьмя. Например, 0010 0000 0000 11112
представляется в шестнадцатеричном
коде как 200FH. 4.59. Извлечение — декодирование
— выполнение. 4.60. Считывания; регистр
команд. 4.61. Счетчик команд. 4.62. Входы
(чтение/запись) и
(выбор кристалла). 4.63. Программа выполняет
сложение 0АН+05Н+12Н, сумма будет 21Н. Эта
сумма помещена в ячейку памяти 2000Н (см.
рис. 4.11,г). 4.64. Оператором.
Дополнительные упражнения к гл. 4
4.65. Перечислить темы, которые следует изучить при знакомстве с новым микропроцессором.
Однонаправленная 16-разрядная шина на рис. 4.1 является шиной ______.
Двунаправленная 8-разрядная шина на рис. 4.1 является шиной ______.
См. рис. 4.1. Устройство постоянной памяти сокращенно называют ______, тогда как устройство переменной
памяти сокращенно называют ______.
См. рис. 4.1. Системы, называемые ______, связывают порты УВВ с периферийными устройствами системы.
См. рис. 4.1. Подключение МП на шину данных выполняется по принципу ______ (ввода, вывода, двунаправленного обмена).
См. рис. 4.1. Зная, что на шине установлен адрес 0010 0000 1000 1111, определить, какая ячейка памяти будет адресована микропроцессором (шестнадцатеричное значение)?
Когда микро-ЭВМ получает доступ к ячейке памяти 00FEH, ПЗУ ______ (выдает, получает) 8 бит ______.
См. рис. 4.3. Постоянное запоминающее устройство представляет собой память емкостью 256 X ______ бит.
См. рис. 4.3. На какой странице располагается ПЗУ?
Для формирования оперативной памяти 4096X
X _____ бит или памяти _____ К могут использоваться
8 ИС ОЗУ 4096Х1, как показано на рис. 4.4, в.
Список выполняемых процессором операций представляет собой состав ______микропроцессора.
Команды микропроцессора классифицируются на различные команды вызова подпрограмм, возврата из подпрограмм, ветвления, передачи данных, _______.
Команда ADD является арифметической, команда STORE — _______.
Команды ветвления являются командами _______.
Команды вызова подпрограмм и ______ (арифметические, возврата из подпрограмм) в подпрограмме всегда объединяются попарно.
4.81. Операция ИЛИ ИСКЛЮЧАЮЩЕЕ является ______ командой.
Системой счета в МП является ______.
Центральный микропроцессор микро-ЭВМ обычно содержит модификацию оперативной памяти, составляемой _______ (ОЗУ, регистрами).
Центральный процессор микро-ЭВМ содержит обычно устройство интерпретации команд, называемое ______.
Центральный процессор микро-ЭВМ содержит цепи упорядочивания событий. Это цепи ______.
Центральный процессор микро-ЭВМ представляет собой устройство, называемое ______.
См. рис. 4.13. Каково двоичное содержимое аккумулятора после операции ИЛИ?
См. рис. 4.13. После операции ИЛИ индикатор нуля будет ______ (установлен,
сброшен).
4.89. Индикаторы принадлежат специальному регистру — регистру кода условия или регистру _______, расположенному в АЛУ.
4.90. Счетчик
команд МП
хранит ______ (адрес, время)
следующей выполняемой команды.
В ходе извлечения ______ (КОП, операнд) читается в памяти и передается в регистр команд МП.
В ходе декодирования дешифратор команд, расположенный в ______ (памяти, ЦП) интерпретирует КОП,
расположенный в регистре ______ (команд, синхронизации).
4.93. См. рис. 4.14, а, б. Каково содержимое аккумулятора после операции И?
4.94. См. рис. 4.14, а и в. Каково содержимое аккумулятора после операции ИНКРЕМЕНТ?
4.95. См. рис. 4.14, а и г. Какой адрес (шестнадцатеричный код) ячейки памяти, приведенной на рис. 4.14, г?
См. рис. 4.14, а и г. Каково двоичное содержимое ячейки памяти данных на рис. 4.14, г после операции STORE?
Каково двоичное содержимое аккумулятора (см. рис. 4.14, г) после операции STORE?
См. рис. 4.14, а. Какие две ячейки памяти содержат адрес операции STORE?
4.99. См. рис. 4.14, а и б. Результатом операции И с
ООН (команда 1) будет: ______ (сбросить, установить)
аккумулятор, обращая все его биты в ______ (0,1).
См. рис. 4.14, а. Код операции 1 _____, а ее операнд _____.
См. рис. 4.14, а. Код операции 2, а ее операнд _____.
См. рис. 4.14, а. Код операции 3, а ее операнд ______.
Решения
4.65. Архитектура, состав команд, простейшие системы пользователя, сигналы управления и назначения выводов. 4.66. Адресный. 4.67. Данных. 4.68. ПЗУ; ОЗУ. 4.69. Интерфейсом. 4.70. Двунаправленного обмена. 4.71. 208FH. 4.72. Выдает; 0010 0000. 4.73. 8. 4.74. ООН (нулевая страница). 4.75. 8; 4. 4.76. Команд. 4.77. Арифметические и логические. 4.78. Передачи данных. 4.79. Принятия решений. 4.80. Возврата из подпрограмм. 4.81. Логической. 4.82. АЛУ. 4.83. Регистрами 4.84. Дешифратором команд. 4.85. Управления и синхронизации. 4.86. Микропроцессором. 4.87. ООП 1111. 4.88. Сброшен. 4.89. Состояния, 4.90. Адрес. 4.91, КОП. 4.92. ЦП; команд. 4.93. 0000 00002.
4.94. 0000 00012- 4.95. 2001Н. 4.96. 0000 00012. 4.97. 0000 00012. 4.98. 0004Н и 0005Н. 4.99. Сбросить; 0. 4.100. 84Н; 00Н. 4,101. 4СН; операнда нет для операции инкремента. 4.102. В7Н; сочетание двух байт операнда для формирования адреса памяти 2001Н.