Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект лекций.doc
Скачиваний:
79
Добавлен:
21.05.2017
Размер:
3.74 Mб
Скачать

1.1.1. Блок управления

Блок управления предназначен для выработки синхронизирующих и управляющих сигналов. В состав БУ входят:

  1. Устройство выработки временных интервалов;

  2. Логика ввода/вывода;

  3. Регистр команд;

  4. Регистр управления энергопотреблением;

  5. Дешифратор команд;

  6. ПЛМ и логика управления микро-ЭВМ.

Устройство выработки временных интерваловпредназначено для формирования внутренних синхросигналов, которые определяют продолжительность выполнения команд. Практически все команды выполняются за 1 или 2 машинных цикла, кроме команд умножения и деления (время выполнения последних составляет 4 машинных цикла). Машинный цикл включает в себя шесть состояний S1…S6, каждый из которых состоит из двух фаз Р1 и Р2. Длительность каждой фазы равна периоду следования синхроимпульсов, который задается частотой кварцевого резонатора, подключаемого к выводам XTAL1 и XTAL2 МК51, или резонансной частотой LC контура, или внешним генератором. Схема подключения элементов к МК51 показаны на рис. 1.3.

Cв=10 пФ

Рис. 1.3. Схема подключения цепей синхронизации к МК51

Все машинные циклы МК51 одинаковые и состоят из 12 периодов сигнала XTAL. Машинный цикл состоит из шести состояний S1…S6, каждый из которых включает в себя две фазы P1 и P2 (рис. 1.4). Длительность фазы равна периоду следования внешнего тактового сигнала.

Рис. 1.4. Диаграмма формирования машинных циклов МК51

Дважды за машинный цикл формируется сигнал ALE, который используется в качестве стробирующего импульса, для записи младшей части адреса внешней памяти.

Логика ввода/вывода предназначенадля приема и выдачи сигналов, обеспечивающих обмен информацией МК51 с внешними устройствами через порты ввода/вывода Р0…Р3.

Регистр командпредназначен для записи и хранения кода текущей команды. Команда с помощью дешифратора команд преобразовывается в 24-разрядный код управления ПЛМ. Последняя вырабатывает набор микроопераций в соответствии с микропрограммой выполняемой команды.

Регистр команд программно недоступен.

Регистр управления энергопотреблением (PCON)предназначен для управления последовательным портом и режимами энергопотребления МК51. В табл. 1.1 приведено обозначение разрядов PCON.

Таблица 1.1

Разряды

7

6

5

4

3

2

1

0

Обозначение

SMOD

-

-

-

GF1*

GF0*

PD*

IDL*

Примечание: биты отмеченные звездочкой присутствуют только в МК51 серии 1830.

Все биты регистра PCON доступны по записи и чтению.

Бит SMOD управляет скоростью передачи через последовательный порт (при установке его в «1» скорость передачи удваивается).

Бит PD при установке его в «1» переводит МК51 в режим микропотребления.

Бит IDL равный «1» устанавливает режим холостого хода.

Биты GF0 и GF1 – флаги общего назначения.

1.1.2. Арифметико-логический блок

Восьмиразрядный АЛБ предназначен для выполнения арифметических операций: сложение, вычитание, умножение и деление; логических операций: И, ИЛИ, исключающие ИЛИ, циклического сдвига, сброса, инвертирования и т.д. АЛБ включает в себя следующие функциональные узлы:

  1. Восьмиразрядное ALU, которое позволяет выполнять арифметические и логические операции над 4 типами данных: булевскими (1 бит), цифровыми (4 бита), байтовыми (8 бит) и адресными (16 бит);

  2. Аккумулятор – восьмиразрядный параллельный регистр, предназначенный для хранения одного из операндов АЛУ, приема результата арифметико-логической операции, ряда операций передачи данных. Кроме этого, операции сдвигов, проверка их на ноль, формирование флага паритета, выполняются только над содержимым Аккумулятора;

  3. Регистр В – восьмиразрядный параллельный регистр, предназначенный для хранения второго операнда при выполнении операции умножения и деления. В остальных случаях может использоваться как любой другой программно доступный регистр;

  4. Два восьмиразрядных, программно-недоступных, регистра временного хранения операндов Т1 и Т2;

  5. Схема десятичной коррекции DCU;

  6. Регистр признаков (PSW) – предназначен для хранения признаков (флагов), вырабатываемых АЛУ при выполнении многих операций. В табл.1.2 приведено мнемоническое имя, назначение и способ установки разрядов регистра PSW.

Таблица 1.2

Разряд

Имя

Назначение битов

Доступ к битам

PSW.7

C

Флаг переноса. Изменяется во время выполнения некоторых арифметических и логических команд

аппаратный или программный

PSW.6

AC

Флаг промежуточного переноса устанавливается/сбрасывается при возникновении/отсутствии переноса или заема в бите 3 при образовании младшего полубайта результата

аппаратный или программный

PSW.5

F0

Флаг 0. Флаг состояния определенный пользователем.

программный

PSW.4

RS1

Указатель банка рабочих регистров.

программный

PSW.3

RS0

Указатель банка рабочих регистров.

программный

RS1

RS0

0

0

Банк 0 с адресами (00Н-07Н)

0

1

Банк 1 с адресами (08Н-0FН)

1

0

Банк 2 с адресами (10Н-17Н)

1

1

Банк 3 с адресами (18Н-1FН)

PSW.2

OV

Флаг переполнения.

аппаратный или программный

PSW.1

-

Резервный. Содержит триггер, который можно использовать.

программный

PSW.0

P

Бит четности

аппаратный или программный

Флаг переполнения OV устанавливается, если возник перенос в знаковый разряд, а из знакового разряда перенос отсутствует (индикатор переполнения разрядной сетки) при выполнении операций сложение/вычитание. При выполнении операции деления флаг OV аппаратно сбрасывается, а в случае деления на ноль устанавливается. При выполнении операции умножения флаг OV аппаратно устанавливается, если результат больше 255.

Флаг Р является дополнением содержимого Аккумулятора до четности в девятиразрядном слове состоящем из восьми разрядов Аккумулятора и бита P, число один всегда четное. Если в Аккумуляторе все разряды установлены в ноль, то Р=0. Этот бит программно доступен только по чтению.