Главная страница

Конспекты лекций. Конспект лекций. Микропроцессорные устройства систем управления


Скачать 0.73 Mb.
НазваниеМикропроцессорные устройства систем управления
АнкорКонспекты лекций
Дата25.01.2023
Размер0.73 Mb.
Формат файлаdoc
Имя файлаКонспект лекций.doc
ТипЗадача
#904197
страница12 из 18
1   ...   8   9   10   11   12   13   14   15   ...   18

4. Типовые микропроцессоры и их применение.

4.1. Структура и характеристика типовых МП.


Структурная схема типового МП с фиксированной разрядностью и набором команд представлена на рис.4.1.

Устройство обработки данных в данной структуре представлено арифметико-логическим устройством (АЛУ), аккумулятором, двумя временными регистрами АЛУ, регистром признаков, регистрами общего назначения (РОН). Блок интерфейса содержит счетчик команд, адресные регистры (в частности указатель стека), буферные регистры данных и адреса, регистр команд (очередь команд). Устройство управления включает в себя дешифратор команд, схему синхронизации и управления, регистры временного хранения и мультиплексор регистров.

В МП использован магистральный принцип организации связи между узлами, заключающийся в том, что все узлы МП работают поочередно на общую внутреннюю шину данных. Обмен информацией между внутренней шиной данных и внешней шиной данных МП осуществляется через трехстабильный двунаправленный буферный регистр данных. Трехстабильный буферный регистр адреса осуществляет выдачу адресов на шину адреса и кроме того позволяет отключить МП от этой шины.

Арифметико-логическое устройство (АЛУ), выполняет арифметические и логические операции, а также операции сдвига. К входам АЛУ подключены два временных регистра АЛУ, необходимых для хранения участвующих в операции операндов на время выполнения всей команды. Эти операнды могут поступать с внутренней шины данных или из специального регистра, называемого аккумулятором. Аккумулятор служит для хранения результата операции, поступающего с выхода АЛУ или слова данных поступающего через внутреннюю шину данных из памяти, портов ввода или других регистров. К АЛУ подключен регистр признаков. Регистр признаков (регистр флагов) предназначен для хранения признаков результата операции. Регистр признаков может также



Рис. 4.1. Структура типового однокристального МП.

содержать информацию о состоянии МП на определенном этапе выполнения программы. Обычно минимальная конфигурация регистра признаков содержит следующие разряды (обозначения разрядов введены условно):

  • С - разряд признака переноса. Указанный разряд устанавливается в 1, если в результате сложения двух двоичных чисел длиной в одно слово возникает перенос в старший разряд или в результате вычитания возникает заем из старшего разряда. В противном случае разряд признака переноса устанавливается в 0. Этот признак используется, например, для организации выполнения арифметических операций с повышенной точностью, т.е. с числами длиной более одного слова.

  • Р - разряд признака четности. Разряд этого признака устанавливается в 1, если в полученном результате общее число единиц является четным. В противном случае устанавливается в 0. Этот признак используется при контроле данных на четность.

  • Z - признак нуля. При нулевом значении результата разряд этого признака устанавливается в 1, при ненулевом - в 0. Этот признак используется, например, для получения временных задержек программным путем.

  • S - признак знака. Разряд этого признака дублирует содержимое старшего разряда результата. При выполнении арифметических операций в дополнительных кодах ноль в старшем знаковом разряде результата соответствует положительному числу, а единица - отрицательному.

Регистры общего назначения (РОН) предназначены для хранения поступающих данных и промежуточных результатов. Все РОН доступны программисту, который рассматривает их как сверхоперативное запоминающее устройство. Для некоторых МП в зависимости от типавыполняемой команды РОН могут использоваться или как самостоятельные регистры, или как регистровые пары удвоенной разрядности, или наоборот быть разбитыми на части по группам разрядов. Регистры временного хранения предназначены для кратковременного хранения данных во время выполнения команды и являются программно недоступными. Адресные регистры используются для хранения адресов при косвенной регистровой и других многокомпонентных видах адресации. В некоторых МП функции адресных регистров могут выполнять РОН.

Указатель стека - регистр, содержащий адрес области памяти ОЗУ, называемой стеком.

Счетчик команд - регистр, содержащий адрес ячейки памяти, в которой хранится подлежащая выполнению команда. Выбор и подключение к внутренней шине данных нужного РОH, адресного регистра, указателя стека, счётчика команд или регистров временного хранения осуществляется через мультиплексор регистров. Код операции из памяти через буферный регистр данных и внутреннюю шину данных поступает в регистр команд. Дешифрация кода операции производится в дешифраторе команд, благодаря чему устройством синхронизации и управления вырабатывается нужная последовательность сигналов управления.
4.2. Система команд однокристального микропроцессора.

При рассмотрении системы команд типового однокристального МП будем стремиться к обобщенному изложению материала, не привязывая команды к конкретному типу МП. Все приведенные в параграфе группы команд и сами команды присущи как правило всем МП. Конкретизация команды под определенный тип МП заключается в ее мнемоническом обозначении, используемых регистрах, формате команды, способе адресации данных и ряде других особенностей. Кроме того, описанные в разделе команды в минимальном объеме представляют основные функциональные группы команд большинства МП. В конкретных МП указанные группы представляются более полным набором, являющимся индивидуальными для каждого типа МП. При разборе примеров использования команд будем пользоваться все теми же условными аккумулятором А и регистрами общего назначения В и С, а также внешним регистром M, организованным в ячейке памяти.

Следует отметить, что передача данных как между внутренними регистрами МП, так и между МП и периферийными модулями всегда осуществляется с сохранением содержимого источника информации. Для удобства сведем все рассматриваемые команды в табл. 4.1.

При описании команд будем использовать следующие условные обозначения:

  • r - один из регистров А, В или С, или внешний регистр М, организованный в ячейке памяти, адрес которой хранится в регистровой паре или специальном адресном регистре;

  • rp - регистровая пара ВС, указатель стека SP или специальный адресный регистр;

  • data - операнд или данные, обрабатываемые соответствующей командой;

  • addr - адрес ячейки памяти, указываемый в команде;

  • port - адрес порта ввода-вывода, указываемого в команде;

  • SP - указатель стека;

  • PC - счетчик команд;

  • ( ) - содержимое регистра (регистровой пары), указанного внутри скобок;

  • [ ] - содержимое ячейки памяти (порта), адрес которой указан внутри скобок;

  •  - направление передачи;

  • , ,  - логическии операции “ИЛИ”, “И”, “ИСКЛЮЧАЮЩЕЕ ИЛИ” соответственно;

  • - CON - обобщенное обозначение, заменяемое на мнемонику условия перехода, вызова и возврата из подпрограммы. Договоримся использовать следующие мномонические обозначения этих условий: NZ - ненулевой результат (разряд регистра признаков Z=0), Z - нулевой результат (разряд регистра признаков Z=1), NC - отсутствие переноса (разряд регистра признаков C=0), C - наличие переноса (разряд регистра признаков С=1), P0 - нечетное число (разряд регистра признаков P=0), PE - четное число (разряд регистра признаков P=1), P - неотрицательный результат (разряд регистра признаков S=0), M - отрицательный результат (разряд регистра признаков S=1).


Таблица 4.1. Типичный обобщенный набор команд однокристального МП.

Группа команд

Условное обозначение

Описание команды


Команды пересылки

Кодов

1. MOV r1, r2

(r1)  (r2)

2. MVI r, data

(r)  ОПЕРАНД

3. LXI rp, data

(rp)  ОПЕРАНД

4. STA addr

[АДРЕС]  (A)

5. LDA addr

(A)  [АДРЕС]

6. STAX rp

[rp]  (A)

7. LDAX rp

(A)  [rp]

8. PUSH r

[SP]  (r)

9. POP r

(r)  [SP]

Команды выполнения арифметических операций

1. ADD r

(A)  (A) + (r)

2. SUB r

(A)  (A) - (r)

3. ADI data

(A)  (A) + ОПЕРАНД

4. SUI data

(A)  (A) – ОПЕРАНД

5. ADC r

(A)  (A) + (r) + (С)

6. SBB r

(A)  (A) - (r) - (С)

7. ACI data

(A)  (A) + ОПЕРАНД +(С)

8. SBI data

(A)  (A) – ОПЕРАНД - (С)

9. DAA

Десятичная коррекция

10. INR r

(r)  (r) + 1

11. DCR r

(r)  (r) – 1

12. INX rp

(rp)  (rp) + 1

13. DCX rp

(rp)  (rp) – 1

Команды выполнения логических операций

1. ANA r

(A)  (A)  (r)

2. ANI data

(A)  (A)  ОПЕРАНД

3. ORA r

(A)  (A)  (r)

4. ORI data

(A)  (A)  ОПЕРАНД

5. XRA r

(A)  (A)  (r)

6. XRI data

(A)  (A)  ОПЕРАНД

7. CMA

(A)  ( )

8. CMP r

(A) – (r)

9. CPI data

(A) – ОПЕРАНД

10. RLC

(ai+1)  (ai)

(a0)  (aN)

(C)  (aN)

11. RRC

(ai)  (ai+1)

(aN)  (a0)

(C)  (a0)

12. RAL

(ai+1)  (ai)

(a0)  (C)

(C)  (aN)

13. RAR

(ai)  (ai+1)

(aN)  (C)

(C)  (a0)

Команды передачи управления

1. JMP addr

(PC)  АДРЕС

2. J-CON addr

(PC)  АДРЕС

3. CALL addr

[SP]  (PC)

(PC)  АДРЕС

4. C-CON addr

[SP]  (PC)

(PC)  АДРЕС

5. RET

(PC)  [SP]

6. R-CON

(PC)  [SP]

Команды ввода-вывода и специальные

1. IN port

(A)  [АДРЕС]

2. OUT port

[АДРЕС]  (A)

3. EI

Разрешить прерывание

4. DI

Запретить прерывание

5. NOP

(PC)  (PC) + 1

6. HLT

Останов
1   ...   8   9   10   11   12   13   14   15   ...   18


написать администратору сайта