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

Организация однокристальных 8-разрядных мп

И МИКРОЭВМ [4, 11]

Типичная структура МП устройства (системы) [4, 11]

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

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

Представленная структура отражает наиболее распространенный магистрально – модульный принцип организации МП устройств и систем. Отдельные блоки являются функционально законченными модулями со своими встроенными схемами управления, выполненными в виде одного или нескольких кристаллов БИС, заключенных в корпусе с соответствующим количеством выводов. Обмен информацией между модулями осуществляется посредством коллективных шин (магистралей), к которым имеют доступ все основные модули системы. В каждый данный момент времени возможен обмен данными только между одним модулем. Читать информацию с ШД могут все остальные модули одновременно.

Магистральный принцип построения сопряжений модулей (интерфейс) МП системы предполагает наличие информационно-логической совместимости модулей, которая реализуется путем использования единых способов представления информации алгоритма управления обменом, форматов команд управления обменом и способа синхронизации.

Для МП характерна 3-шинная структура содержащая: ША на которую МП выставляет двоичный код адреса ячейки памяти или устройства ввода/вывода (УВВ); ШД через которую происходит обмен данными между модулями и ШУ. Типовая структура МП системы предполагает наличие общего сопряжения (интерфейса): для модулей памяти ПЗУ, предназначенного для хранения программ начальной загрузки и тестирования универсальных МП систем, а также рабочих специализированных МП систем и ОЗУ, предназначенного для хранения программ и данных, причем последние в этом случае загружаются в ОЗУ с накопителей; для модулей периферийных устройств – внешних запоминающих устройств (накопителей) и УВВ.

В качестве периферийных устройств в МП системах могут быть клавиатура, дисплей, накопитель на магнитном диске, ЦАП и АЦП, исполнительные устройства и т.п.

Периферийные устройства подключаются к шинам интерфейса через программируемые адаптеры и программируемые контроллеры. На рис. 59 изображен программируемый параллельный адаптер (ППА) и программируемый связной адаптер (ПСА). Наличие программируемых адаптеров и контроллеров делает универсальным ввод/вывод информации в МП системе. В структуре МП интерфейс является узким местом из-за ограниченного числа выводов корпуса. Узкий интерфейс МП приводит к необходимости использования двунаправленных линий передачи, что сопровождается усложнением схем буферных усилителей, и необходимости временного мультиплексирования (использования по нескольким назначениям, причем для каждого из назначений отведен свой промежуток времени) чисел. Это также усложняет схему МП, снижает скорость передачи информации через интерфейс и требует наличия специальных линий для идентификации передаваемой информации.

Интерфейс

Шина адреса (ША)

МП

Схема

синхронизации

и управления

Шина данных (ШД)

ПЗУ

ОЗУ

ПСА

Интерфейс памяти

Интерфейс периферии

Шина управления (ШУ)

ППА

параллельное

УВВ

последовательное

УВВ

Рис. 59. Типичная структура микропроцессорного устройства

Однокристальный МП К580ВМ80 [4; 11]

МП серии К580 предназначен для работы с памятью (постоянной и оперативной) емкостью до 64 Кбайт. Память имеет байтовую – структуру возможна адресация в памяти любого байта.

Организации МП серии К580 отмечена следующими основными особенностями:

  • 3-х шинной структурой с ША, ШД и ШУ;

  • магистральным принципом связей, реализованным в виде связывающей основные узлы МП двунаправленной ЩД, имеющей ширину, равную длине слов (8-двоичных разрядов), обрабатываемых МП;

  • наличием регистровой памяти, образованной программно-доступными общими и специализированными регистрами, а также регистрами временного хранения;

  • наличием средств организации стековой памяти;

  • наличием 16-разрядной шины адреса, обеспечивающей возможность адресации любого байта в памяти емкостью 64 Кбайт;

  • наличием операций над двухбайтовыми словами (16-разрядными числами, адресами):

  • использованием 3 форматов команд (1, 2, 3-байтного) и разнообразных способов адресации (прямой, регистровой, косвенной, непосредственной, стековой), позволяющих при коротком 8-разрядном слове иметь достаточно гибкую систему команд;

  • возможность реализации векторного многоуровневого приоритетного прерывания путем подключения к МП контроллера прерываний;

  • возможность реализации режима прямого доступа к памяти путем подключения к МП контроллера прямого доступа к памяти;

  • наличием эффективных средств работы с подпрограммами и обработки запросов прерываний.

МП заключен в корпус с 40 выводами (рис. 60). Для его работы необходим тактовый генератор с рекомендуемой частотой f = 2МГц и источник питания с уровнями ±5В, 12В.

Входные и выходные сигналы (за исключением сигналов синхронизации тактовым генератором) имеют стандартные ТТЛ уровни и имеют нагрузочную способность, рассчитанную на 1 ТТЛ вход.

ШД 0

ШД 1

ШД 2

ШД 3

ШД 4

ШД 5

ШД 6

ШД 7

φ1

φ2

СИНХР

СБР

ГТ

ОЖ

ЧТ

ЗП

10

9

8

7

3

4

5

6

22

15

12

23

24

ША 0

ША 1

ША 2

ША 3

ША 4

ША 5

ША 6

ША 7

ША 8

ША 9

ША 10

ША 11

ША 12

ША 13

ША 14

ША 15

ЗПР

РПР

ЗПДП

ППДП

25

26

27

29

30

31

32

33

34

35

1

40

37

38

39

36

14

16

13

21

К580

5В 20 -5В 11

12В 28 ОБЩ 2

Рис. 60. Назначение выводов корпусов МП К580

С позиции пользователя можно выделить следующие основные узлы:

  1. шина адресов (ША), на которую МП выставляет 16-разрядный двоичный код адреса ячейки памяти или 8-разрядный код устройства ввода/вывода (УВВ), с которыми МП производит обмен информацией;

  2. 8-разрядная шина данных (ШД), через которую МП осуществляет обмен информацией;

  3. Схема управления МП системой, сигналы которой используются в шине управления ШУ МП системы для организации взаимодействия МП, памяти и УВВ;

  4. Блок регистров, предназначенный для хранения оперативной информации;

  5. АЛУ, выполняющее обработку данных;

  6. шина управления (ШУ), по которой передаются управляющие сигналы, синхронизирующие работу МП с другими узлами МП системы.

Блок регистров МП содержит программно-доступные регистры, обозначаемые буквами: А, В, С, D, Е, F, Н, L, SP, PC (рис. 61).

RESET

Ф1

Ф2

SYNC

READY

WAIT

HOLD

HLDA

INT

INTA

DBIN

WR

С

Х

Е

М

А

У

П

Р

А

В

Л

Е

Н

И

Я

Сброс

Синхронизация

Готовность, ожидание

Управление ПДП

Управление прерыванием

Управление шиной

Запись

Буфер

Внутренняя шина данных

F

А

Мультиплексор

В С

D E

H L

SP

PC

АЛУ

Первичный управляющий автомат

Буфер адр.

Управляющие сигналы

ША

Рис. 61. Структура однокристального МП К580ВМ80

Регистр А является регистром-аккумулятором, находится один из операндов и фиксируется результат операции, и через который осуществляется обмен данными с портами ввода/вывода.

Регистры В, С, D, Е, Н, L являются регистрами общего назначения (РОН). Так же, как и аккумулятор А они работают с 8-разрядными словами.

Для работы с 16-разрядными словами регистры могут объединяться в пары (В и С), (D и Е), (Н и L), (A и F), обозначаемые: В, D, Н и PSW. Регистровая пара Н при занесении в нее адреса ячейки памяти может быть также использована для косвенной адресации при обмене информацией между РОН и памятью, что существенно упрощает программу и повышает быстродействие обмена.

Регистр признаков F фиксирует особенности выполнения АЛ операций, устанавливая 1 в соответствующем разряде признаки:

Z – при нулевом результате;

СY – перенос из старшей тетрады при переполнении (заеме) разрядности результата;

S – при отрицательном результате;

Р – при четном количестве единиц в результате;

АС – при наличии числа больше 15 в младшей тетраде результата (перенос).

Счетчик команд образован регистровой парой PC, в которой хранится адрес текущей ячейки памяти, хранящий код текущей команды, выводимый через буфер на ША.

Объединение регистров А и F в пару PSW используется при необходимости сохранения в стековой памяти и восстановления из нее записанной в них информации. Регистровая пара SP используется как указатель стека при организации такой памяти.

Для организации стека выделяется группа последовательно расположенных ячеек памяти, а адрес последней ячейки памяти (вершина стека) увеличивается на единицу и заносится в указатель стека SP. При операции занесения слова в стек слово помещается в следующую по порядку уменьшения адресов ячейку памяти, адрес которой автоматически устанавливается в SP.

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

Схема управления использует следующие сигналы:

RESET – системный сброс (установка счетчика команд PС на нулевой адрес; запрет прерываний и отмена режима остановки);

φ1 и φ2 – сигналы, поступающие от генератора тактовых импульсов;

SYNC – сигнал начала цикла выборки кода команды (M1);

READY – сигнал готовности внешнего устройства к обмену информацией;

WAIT – сигнал о работе МП в режиме ожидания;

INT – сигнал запроса на прерывание от внешнего устройства;

INTA – сигнал разрешения прерывания для внешнего устройства;

HОLD – сигнал запроса от внешнего устройства для прямого доступа к памяти;

НLDА – разрешение ПДП;

DBIN – сигнал направления передачи данных для управления двунаправленным буфером шины данных ( ШД → ЦП);

WP – сигнал записи данных из МП во внешнее устройство.

Управление МП системой [4; 11]

Управляющее устройство МП серии 580 состоит из двух независимых частей:

  1. Первичного автомата, управляющего процессами внутри МП;

  2. Схемы, обрабатывающей сигналы и генерирующей управляющие сигналы в МП системе.

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

Существенная особенность работы первичного автомата состоит в том, что его алгоритм содержит условный оператор ожидания готовности операнда, что позволяет использовать различные типы внешней памяти УВВ, имеющие разные времена обращения.

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

Эффективность работы управляющего автомата достигается за счет машинных циклов переменной длины (3...5 машинных тактов. Имеется 10 видов циклов:

  1. выборка кодов команды (цикл Ml);

  2. чтение из памяти;

  3. запись в память;

  4. чтение из стека;

  5. запись в стек;

  6. чтение из УВВ;

  7. запись в УВВ;

  8. разрешение прерывания;

  9. разрешение остановки;

  10. разрешение прерывания в режиме остановки.

Для идентификации вида машинного цикла в начале каждого цикла МП генерирует сигнал синхронизации SYNC, который совместно с сигналом тактового генератора используется для записи в регистр PrCC слова состояния, находящегося в системном контроллере, слова состояния процессора, используемый (СК) системным контроллером для управления ходом выполнения команды.

На рис. 62 изображена временная диаграмма основного никла работы МП в условиях, когда присутствует внешний управляющий сигнал READY, информирующий о готовности внешнего устройства к обмену информацией.

На первом такте синхронизации Tl МП выставляет на шине адресов адрес очередной команды А 15-0. Начинается цикл выборки кода команды Ml. Одновременно на линии синхронизации SYNC появляется единичный сигнал, который, во-первых, идентифицирует информацию на шине данных D 0-7 как словосостояние процессора (ССП), которое должно быть загружено во внешний регистр РгСС, а во-вторых, свидетельствует о начале машинного цикла Ml. По окончании сигнала синхронизации буферная схема шины данных приводит ЩД в режим ввода, о чем свидетельствует единичный сигнал на линии DBIN шины управления.

В такте Т2 МП осуществляет проверку готовности внешнего устройства к обмену в том случае, если это устройство генерирует сигнал READY. Первичный автомат управления переводит МП в состояние ожидания и будет находится в нем до тех пор, пока на линии управления READY не появится единичный, свидетельствующий о готовности внешнего устройства к обмену, сигнал. До появления этого сигнала первичный автомат находится в состоянии ожидания целое число машинных циклов TW и выдает на ШУ единичный сигнал WAIT. Из альтернативных состояний Т2 и TW первичный автомат всегда переходит на такт Т3, в котором происходит чтение или запись слова в память. Состояния Т4 и Т5 отводятся для реализации операции, заданной кодом команды и не всегда являются обязательными. Выполнение некоторых сложных операции требует многократного (до 3-х) прохода по циклу состоянии от Tl до Т5 (несколько машинных циклов).

На рис. 63 показана временная диаграмма прерывания. Периферийное оборудование МП системы может запросить для обмена информацией с МП прерывание текущей программы у МП и вызов подпрограммы обработки прерывания путем подачи сигнала INT на вход запроса прерывания МП. Этот сигнал может возникнуть в любой момент цикла команды. Обработка прерывания организована таким образом, что запрос прерывания фиксируется во внутреннем триггере запроса на прерывания МП только при переходе первичного автомата к циклу Ml, то есть к начальному циклу очередной команды, и только в случае, если программным путем будет разрешено прерывание (использована в программе команда ЕI). Выполнение этих условий приведет к тому, что следующий машинный цикл Ml будет циклом обработки запроса прерывания.

Машинный цикл прерывания, которой начинается на такте Tl в условиях разрешенного прерывания, в основных чертах повторяет машинный цикл выборки (на шину адресов выводится содержание счетчиков команд, а на шину данных слово состояния, которое фиксируется в РгСС). Слово состояния цикла содержит единицы в разряде D0 (разрешено прерывание), D1 (работа с внешними устройствами УВВ) и D5 (цикл Ml). Устанавливается нулевой уровень входного сигнала INTA МП (прерывание разрешено), который используется периферийным оборудованием процедур, определенных прерыванием. Кроме этого сбрасывается внутренний триггер прерываний, что приводит к запрету последующих запросов на прерывание.

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

При выполнении команды CALL МП еще дважды выдает нулевой уровень сигнала INTA по которому УBB выдает, а МП читает два байта адреса начала подпрограммы обработки прерывания.

T1

T2

TW

T3

T4

T5

φ1

φ2

A0…

A15

D 0…

D7

D0…

D7

SYNC

R EADY

WAIT

DBIN

WR

Фиксация слова состояния в PrCC

Данные

стабильны

Данные

Режим записи

Режим чтения

Неизвестно

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

состояние буфера

Не обязательные такты

Выдача

адреса и

слова

состояния

Проверка сигналов READY,

INT, HOLD

Согласование по времени доступа к данным

Чтение или запись

данных

Выполнение операции

(если нужно)

Рис. 62. Временная диаграмма цикла выполнения команды

М1

М2

М3

Т3

Т1

Т2

Т3

Т4

Т5

Т1

Т2

Т3

Т1

Т2

Т3

А15...0

D7...0

SYNC

DBIN

WR

В нутренний сигнал «Возврат к М1»

I NTA

INT

В нутренний сигнал

«Состояние триггера ЗПР»

В нутренний сигнал «Запрет инкремента счетчика РС»

Слово в РrСС

(

φ2

РС) -1

φ1

φ2

( РС)

φ1

RST

( SR) -1

(РСН)

( SR) -2

(PCL)

Рис. 63. Временная диаграмма работы МП в режиме прерывания

В машинных циклах М2 и МЗ содержание счетчика команд побайтно записывается в стек (на ША выводится содержимое указателя стека SP). Управляющее устройство МП позволяет выполнять операции с прямым доступом к памяти (ПДП). При этом обмен данными между ОП и периферийным устройством производится быстрее, чем при обмене под управлением МП. Этот режим целесообразен при обмене блоками данных. Выставляя на линии HOLD запрос ПДП УВВ, может приостанавливать нормальный вычислительный процесс в MП и кратковременно осуществлять управление по шинам МП системы. Первичный автомат при этом вырабатывает управляющие сигналы, переводящие буферные схемы шин адреса и данных системы и разрешает сигналам HLDA прямой доступ к памяти. По окончании режима ПДП УВВ снимает сигнал запроса HOLD, в результате чего МП снимает сигнал HLDA и возвращается к выполнению вычислительного процесса.

ОДНОКРИСТАЛЬНЫЙ МИКРОКОНТРОЛЛЕР К 1816 [4, 11]

Общие сведения [4, 11]

Однокристальный 8-разрядный микроконтроллер (МК) имеет в своем составе все атрибуты небольшой микроЭВМ: арифметико-логическое устройство; устройство управления; ПЗУ для записи программ; ОЗУ для хранения данных и интерфейсные схемы для УВВ. Вследствие незначительного объема памяти, простой системы команд и ограниченных возможностей ввода-вывода МК используются в качестве специализированного вычислителя, включенного в контур управления объектом или процессом. Организация, система команд и средства ввода-вывода информации в МК лучше всего приспособлены для решения задач управления и регулирования в сравнительно несложных объектах, приборах и технологических процессах.

В состав аппаратных средств МК входят: стираемое перепрограммируемое ПЗУ (СППЗУ) программ емкостью 1 Кбайт; регистровое ОЗУ данных емкостью 64 Кбайта; 8-разрядное арифметико-логическое устройство (АЛУ); устройство управления; 8-битный программируемый таймер/счетчик событий; программно-управляемые схемы ввода-вывода (27 линий).

Организация МК и его система команд допускает в случае необходимости расширение функционально-логических возможностей. С использованием внешних микросхем емкость ППЗУ программ может быть расширена до 4 Кбайт. Кроме того, архитектура МК обеспечивает возможность прямой адресации внешнего ОЗУ емкостью 256 байт. С использованием более сложных программно-реализуемых способов адресации емкость внешнего ОЗУ может быть расширена до требуемого объема страницами по 256 байт в каждой. Число линий связи с УВВ может быть расширено практически без ограничений путем подключения интерфейсных схем КР580ВВ55.

В МК реализована система векторного прерывания до 2 источников: внутреннего таймера/счетчика событий и внешнего источника. Внутренний 8-уровневый стек обеспечивает автоматическое сохранение и восстановление основных параметров вычислительного процесса при запросах на прерывание и при возврате после обслуживания прерываний.

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

МК может работать с тактовой частотой от 1 до 6 МГц. При подключении к выводам Х1 и Х2 стандартного кварцевого резонатора на 5, 994 МГц цикл однобайтной команды составляет 2,5 мкс, с двухбайтной – 5 мкс. МК требует источник питания 5 В мощностью 1,5 Вт при допустимом отклонении 10%. Диапазон рабочих температур от 0 до +70ºС

Организация микроконтроллера К 1816 [4, 11]

На рис. 64 показана структура микроконтроллера (МК), основу которой образует внутренняя двунаправленная 8-разрядная шина, которая связывает между собой все устройства МК. Обмен информацией с внешними устройствами осуществляется с использованием нижеуказанных сигналов.

ПРОГ/СТБВВ – входной сигнал программирующего СППЗУ импульса +25 В и выходной сигнал для стробирования УВВ при работе.

Х1 – входной сигнал с кварцевого резонатора или внешнего генератора.

Х2 – входной сигнал с другого вывода кварцевого резонатора.

СБРОС – входной сигнал системного сброса при запуске МК; сигнал 0 при программировании и проверке СППЗУ.

ШАГ – сигнал, который совместно с сигналом САВП позволяет выполнить программу с остановом после исполнения очередной команды; используется на этапе отладки.

РВП – выходной сигнал, разрешающий доступ к внешней памяти только тогда, когда происходит обращение к внешней памяти программ.

САВП – строб адреса внешней памяти; сигнал используется для приема и фиксации адреса внешней памяти во внешнем регистре; сигнал является идентификатором машинного цикла и выводится с частотой в 5 раз меньше тактовой.

ЧТ – выходной сигнал, стробирующий чтение из внешнего ОЗУ или УВВ.

ЗП – выходной сигнал, стробирующий запись во внешнее ОЗУ или УВВ.

ТО – входной сигнал, используемый в командах условного перехода по событию JTO и JNTO; используется при программировании СППЗУ; выходной сигнал внутреннего тактового генератора по команде ЕNTO CLC.

Т1 – входной сигнал, используемый в командах условного перехода по событию JT1 и JNT1; используется также для подсчета количества внешних событий счетчиком внешних событий по команде STRT CNT.

ЗПР – входной сигнал запроса прерывания от внешнего источника.

РВД – входной сигнал режима внешнего доступа; высокий уровень сигнала заставляет МК выполнять выборку команд только из внешнего ПЗУ.

ПОРТ Р1 – 8-разрядный квазидвунаправленный порт ввода-вывода информации; каждый разряд может быть запрограммирован на ввод или на вывод.

ПОРТ Р2 – 8-разрядный квазидвунаправленный порт ввода-вывода информации; каждый разряд может быть запрограммирован на ввод или на вывод; разряды D0...D3 во время чтения из внешнего ППЗУ содержат старшие разряды счетчика команд; во время ввода-вывода используются для схемы расширения ввода-вывода и адресуют внешние порты Р4...Р7.

ПОРТ BUS – 8-разрядный двунаправленный порт ввода-вывода информации; может быть переведен в высокоимпендансное состояние; может выполнять прием и выдачу байтов синхронно с сигналами ЧТ и ЗП; при обращении к внешнему ППЗУ выдает 8 младших разрядов счетчика команд и затем по сигналу РВП принимает байт кода команды; при обращении к внешнему ОЗУ выдает 8 разрядов адреса синхронно с сигналом САВП, а затем обменивается с ОЗУ информацией по сигналам ЧТ и ЗП.