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

Билет 17

  1. Структура ЦП. Работа машины при выполнении различных команд.

Модуль ЦП – это ядро системы, к которой подключена память и внешнее устройство.

В состав модуля входят:

  1. Микропроцессор (МП) – выполняет обработку информации

  2. Генератор СИ – задает синхроимпульс для МП

  3. Три шинных формирователя (ШФ) – для умощнения выходов МП.

Сигнал сброса RESET, по нему МП начинает выполнять программу. Считаем, что режим ожидания не используется и на выход READY подается 1. Не используется режим прерывания и прямого доступа к памяти. На выходы INT, HOLD подается логический 0.

ШФ1 – для умощнения выходов адреса. Разрядность 16. Если на CS 1, выходы в 3м составе (высокоомный выход).

ШФ3 – такой же, как и ШФ1, только имеет разрядность 5. Используется для умощнения управленческих сигналов МП.

5 Управляющих сигналов:

  1. MEMR

  2. MEMW

  3. I/OR

  4. I/OW

  5. INTA

ШФ2 – имеет разрядность 8 – двунаправленный шинный формирователь. Служит для умощнения линии D МП, возможность передачи информации в двух направлениях.

Если CS «0» и D “0”, то информация передается справа на лево от DO к DI. Режим используется, когда данные вводятся в МП. При этом формируется либо MEMR=0 или I/OR=0, INTA=0.

Если CS “0” и D”1”, то данные передаются от DI к DO. Режим используется при записи данных в память или во внешнее устройство из МП, то есть ШФ2 всегда настроен на выдачу данных из МП. Исключение составляет те моменты времени, когда формируется сигнал MEMR или I/OR или INTA, то есть когда данные принимает МП.

  1. Микроконтроллеры

Микроконтроллер – вычислительная машина (компьютер) в виде большой интегральной схемы.

Состав:

- МП;

- ОЗУ;

- ПЗУ;

- порты ввода/вывода.

В некоторых случаях для повышения эффективности работы можно использовать дополнительное внешнее ОЗУ, ПЗУ и порты.

Рассмотрим МП-семейство MCS-51 – в него входит порядка 10 микросхем. Каждая микросхема – микроконтроллер (МК). МК имеют одну и ту же систему команд, одно и то же АЛУ. Отличаются только объёмом ОЗУ и ПЗУ на кристалле. Рассмотрим микросхему Intel 8051:

ПЗУ – 4Kx8. Пользователь имеет возможность записать свою программу в ПЗУ. В случае необходимости программу можно перезаписать. Помимо внутреннего можно использовать дополнительное внешнее ПЗУ объёмом 60Kx8. ОЗУ – 128Kx8. Можно использовать дополнительное внешнее ОЗУ – 64Kx8. A и B – регистры: аккумулятор и B-регистр. Используются для хранения данных и для выполнения арифметических операций. PC – программный счётчик, его разрядность 16 бит; адресует очередную команду программы. Общий объём адресной памяти – 216 = 64K. SP – указатель стека – он располагается во внутреннем ОЗУ. T0 и T1 – два 16-разрядных таймера (счётчика времени). Флажки – используются 8-разрядный регистр для хранения определённых признаков выполненной операции, в т.ч. есть флажок переноса и есть флажок переполнения разрядной сетки и др. флажки. АЛУ – 8-разрядное – для выполнения арифметических и логических операций. 4 порта ввода/вывода. Каждый порт двунаправленный или для вывода или для ввода данных. При выводе данные запоминаются в порту. При вводе порт работает, как шинный формирователь (ШФ). Кроме этого, порты 0, 2 и 3 могут выполнять дополнительный функции: порт 2 – для выдачи старшего байта адреса при обращении к внешнему ОЗУ и ПЗУ. Порт 0 – выдаёт младший байт адреса внешней памяти, кроме того выдаёт данные для внешнего ОЗУ. Он же может принимать команду из внешнего ПЗУ.

Первые 2 лини – сигналы «чтение» и «запись» – для подключения внешнего ОЗУ. INT0 и INT1 – 2 внешних запроса прерывания; – по желанию программиста можно, чтобы прерывание было уровнем, т.е. логическим 0, или по перепаду импульса (фронтом ). Сигналы T0 и T1 – сигналы, которые подаются на 2 таймера – сигналы тактирования таймеров. Таймеры T0 и T1 можно запрограммировать либо для работы в режиме таймера, либо для работы в режиме счётчика. В режиме таймера оба счётчика работают от внутреннего генератора синхроимпульса. Программно можно запустить таймер, остановить, задать начальное значение. В случае переполнения таймера возникает внутренний запрос прерывания на МК. Переполнение – из состояния «Все единицы» в состояние «Все нули». Режим счётчика – всё то же самое, только для тактирования таймера используется внешний вход. RxD и TxD – для обмена последовательным кодом. TxD – выход передатчика, а RxD – вход приёмника. Информация передаётся последовательным кодом в следующем формате:

Контроллер питается от одного источника (+5В). В составе контроллера – генератор синхроимпульсов. Требуется только внешний дополнительный кварцевый резонатор. RESET – сброс МК. После сброса начинает выполняться с 0го адреса. PSEN – чтение из внешнего ПЗУ. ALE – строб фиксации адреса. EA – разрешение внутреннего ПЗУ – если EA = 0, следовательно внутреннее ПЗУ разрешается. При этом первые 4K адресов относятся к внутреннему ПЗУ, последние 60K адресов – внешние ПЗУ. Если EA = 1, то внутреннее ПЗУ запрещается и вся программа считывается из внешнего ПЗУ. Данный режим – при отладке программы.

Подключение внешнего ОЗУ.

Внешний регистр – для временного хранения младшего байта адреса внешнего ОЗУ. Запоминание файла в регистре по сигналу ALE.

В режиме чтения из ОЗУ:

Адрес ОЗУ выдаётся с помощью портов 0 и 2. Младшая часть адреса запоминается в регистры по сигналу ALE. Чтение данных из ОЗУ в порт 0 выполняется по сигналу RD.

В режиме записи в ОЗУ:

Адрес выдаётся с помощью портов 0 и 2. Запоминание адреса в регистре – по ALE. Данные для ОЗУ выдаются через порт 0. Запись в ОЗУ – по сигналу WR.

Подключение внешнего ПЗУ.

Режим чтения за ПЗУ:

Адрес выдаётся с помощью портов 0 и 2. Адрес запоминается в регистре по ALE. Чтение команды из ПЗУ в порт 0 – по PSEN.

Система команд МК.

Включает следующую группу команд:

  1. Группа команд пересылки информации.

  2. Арифметические команды, в т.ч. есть «*» и «/».

  3. Логические операции.

  4. Переходы (условные, безусловные).

  5. Команды бытовых операций:

- можно установить в «0», в «1», или проинвертировать заданный бит в заданном байте;

- можно сделать условный переход по значению заданного бита в заданном байте;

Система прерывания МК.

Есть 5 источников прерывания, в т.ч. 2 внешних прерывания – INT0 и INT1 – по уровню или по фронту. 2 внутренних запроса прерывания от 2х таймеров; и ещё 1 внутренний запрос от последовательного порта ввода/вывода. Либо данные выданы последовательным кодом, либо данные приняты последовательным кодом.