Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Технические средства автоматизации химических производств

..pdf
Скачиваний:
4
Добавлен:
19.11.2023
Размер:
32.07 Mб
Скачать

ПЗУ первый байт команды по шине данных переносится в регистр команд. Содержимое регистра команды дешифруется устройством управления.

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

Система команд микропроцессора. Команды МП могут быть одно­ байтные, двухбайтные и трехбайтные. Двоичный код второго и третье­ го байтов содержит 16-разрядный адрес ячейки памяти или операнд (данные). Если третий байт не используется, то во втором байте нахо­ дится только операнд. Двоичное слово, помещенное в первый байт, называют кодом операции (КОП). Этот код содержит информацию о типе выполняемой команды и числе байтов в команде (формате команды). Первый байт может содержать информацию о номере мик­ ропроцессорного регистра. При трехбайтной команде код операции также определяет содержание остальных байтов: адрес или операнд.

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

При регистровой адресации команда имеет один байт, в котором находятся сведения о регистре общего назначения, содержащем нужные данные; При косвенной адресации в однобайтной команде указаны те спаренные регистры общего назначения, в которых нахо­ дится адрес ячейки памяти ОЗУ. При неявной адресации сам тип команды, помещаемый в первом байте, подразумевает, что операндом является содержимое аккумулятора.

Все команды, адреса и данные в МП представлены в двоичном коде. При составлении программы КОП записывают в символическом виде - на языке Ассемблера, а данные и адреса - в других системах счисле­ ния, что позволяет получить большую наглядность или компактность. При использовании двоичной, восьмиричной или шестнадцатиричной систем счисления после записи проставляют символы соответственно В, В (или И). В шестнадцатиричной системе число, начинающееся с буквы, дополняют слева символом „О”.

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

Язык Ассемблера. При программировании на языке Ассемблера бланки содержат следующие колонки: метка, код, операнд. Метки используют в качестве адресов в командах перехода, что дает воз­ можность программисту не оперировать с абсолютными адресами памяти. После написания программы на языке Ассемблера требуется

81

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

ШЯ Я : Я + 1 - Д

ЛЕС Я : Д - 1 - Я

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

АЛЛ Я : А + Я-+А

АЛ1Л8 : А + Я8 - А

ОЯА Я : А У Я ^А

АШ Я8 : АЛЛ8 - А

8ЛВ Я : А - Я - + А

Команда сдвига содержимого аккумулятора

ЯЬС : сдвиг влево

ЯЯС : сдвиг вправо

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

1МР АЛЯ : АЛЯ -*• СК (безусловный переход)

Ш2 АЛЯ : АЛЯ -+СК (условный переход при 2=0)

Я8Т х : СК-*- М(УС- 1)М(УС - 2), абг СК,

где абг при увеличении х от 0 до 7 имеет соответственно значения ОН, 8Н, ЮН, 12Н, 20Н, 28Н, ЗОН, 38Н

Команды вызова подпрограммы и возврата в программу

САЫ АЛЯ : СК ->М(УС- 1)М(УС-2)

ЯЕТ : М(УС)М(УС + 1)-+СК

Специальные команды

Б1: разрешение прерывания

Н 1Т : останов

При написании программы обозначения операнда заменяют на конкретные его значения. Например, конкретная команда МОУ В, А (где В, А - операнды), предусматривает передачу содержимого регист­ ра А в регистр В, а команда МУ1С, ОААН требует загрузки двоичного кода 10101010 в регистр С. Команда условного перехода Ш2 8000Я предусматривает переход к подпрограмме, начинающейся с адреса 8000Я, если флаговый регистр 2 находится в нулевом состоянии. Команда рестарта Я8Тх вводится в регистр команд не из памяти, а из

83

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

Команда в МП выполняется за несколько (от 1 до 5) машинных циклов, каждый из которых содержит от 3 до 5 тактов. Устройство управления дешифрует команду, содержащуюся в регистре команд, формирует машинные циклы и определяет последовательность эле­ ментарных действий для выполнения команды. Сигналы на линиях шины управления характеризуют работу МП в каждом такте. ^

Состав шины управления. В МП имеются следующие линии управ­ ления:

„Синхронизация” (синх.) - выходной единичный импульс на этой линии возникает в начале каждого машинного цикла;

„Прием” (ПР) - выходной единичный сигнал на этой линии указы­ вает на готовность приема информации по шине данных;

„Выдача” (ВД) - выходной нулевой сигнал на этой линии указывает на то, что на шине данных есть информация, предназначенная для выдачи из МП (линии „Прием” и „Выдача” формируют пару управле­ ния обменом информации):

„Ожидание” (ОЖ) - выходной единичный сигнал информирует периферийное или запоминающее устройство о состоянии ожидания;

„Готов” (ГТ) - входной единичный сигнал на этой линии указывает на готовность периферийного или запоминающего устройства к обмену информацией (линии „Ожидание” и „Готов” образуют пару управле­ ния ожиданием информации и используются в режиме без прерывания программы; кроме того, их используют для организации пошагового выполнения команд);

„Запрос прерывания” (ЗПР) - входной единичный сигнал на этой линии указывает на то, что периферийное устройство запрашивает прерывание программы, выполняемой МП;

„Разрешение прерывания” (РПР) - выходной единичный сигнал на этой линии указывает на принципиальную возможность прерывания программы (линии „Запрос прерывания” и „Разрешение прерывания” образуют пару управления прерывания и применяются в режиме с прерыванием программы);

„Запрос захвата” (33) - входной единичный сигнал на линии свидетельствует о том, что периферийное устройство запросило от­ ключение шин адреса и данных от МП;

„Подтверждение захвата” (ПЗ) - выходной единичный сигнал на этой линии указывает на то, что шины данных и адреса отключены от МП (линии „Запрос захвата” и „Подтверждение захвата” образует пару управления захватом и используются в режиме ПДП);

„Сброс” (СЕР) - входной единичный сигнал на этой линии устанав­ ливает нули в программном счетчике и выводит МП из состояний прерывания программы и захвата шин.

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

84

ограниченности числа выводов МП, выдается из него по шине данных в начале каждого машинного цикла по сигналу „Синхронизация”. Управляющие выходные сигналы, поступающие по шине данных, характеризуют тип машинного цикла и имеют следующее назначение:

„Подтверждение прерывания” (ППР) - сигнал представляет собой положительную оеакшпо на запрос прерывания;

„Запись - вывод” (ЗПВЫВ) - нулевой выходной сигнал указывает на то, что в текущем машинном цикле микропроцессор является источником информации;

„Стек” - сигнал свидетельствует, что на шину адреса установлен код из указателя стека;

„Подтверждение останова” (ПОСТ) - сигнал означает, что МП' прекратил выполнение программы;

„Вывод” (ВЫВ) - единичный выходной сигнал указывает на то, что на шине адреса установлен номер периферийного устройства, в кото­ рый будут переданы данные;

„Первый машинный цикл” (М1) - сигнал, означающий начало выборки из программной памяти кода операции в первом машинном цикле;

„Ввод” (ВВ) - единичный сигнал указывает на то, что на шине адреса установлен номер периферийного устройства, от которого будет приниматься информация;

„Считывание из памяти” (СЧП) - сигнал указывает на то, что шина данных будет использована для считывания из запоминающего уст­ ройства.

Совокупность сигналов управления на шине данных (слово состоя­ ния) определяет один из типов машинных циклов. Всего имеется 10 машинных циклов: выборка команды, чтение из памяти, запись в память, чтение из стека, запись в стек, чтение из подсистемы ввода - вывода, запись в подсистему ввода - вывода, разрешение прерыва­ ния, разрешение останова, разрешение прерывания во время останова.

Для формирования некоторых внутрисистемных сигналов, управ­ ляющих работой модулей памяти и ввода - вывода, необходимо с целью временного согласования одновременно использовать управ­ ляющие сигналы с шин управления и данных. К их числу относятся внутрисистемные сигналы „Чтение команды рестарта” (ЧТКР); „Чтение из запоминающего устройства” (ЧТЗУ); „Запись в запоминающее устройство” (ЗПЗУ); „Чтение из устройства ввода - вывода” (ЧТВВ); „Запись в устройства ввода - вывода” (ЗППВ). Эти сигналы формиру­ ют на основе следующих логических уравнений:

ЧТКР - ПРЛППР; ЧТЗУ = ПРЛСЧП; ЧТВВ= ПРЛ ВВ;

ЗПЗУ = ВДЛ ЗПВЫВ; ЗПВВ = ВДЛ ВЫВ.

Инверсные значения данных сигналов вырабатывают на шине управляющих сигналов (ШУС) с помощью комбинационной схемы, входящей в состав контроллера шин (КШ) КР580ВК28. Этот контроллер шин также имеет регистр, который по сигналу „синх.” запоминает

85

МП

5Р1

 

Рис. 4.4. Структурная схема микропроцессорного

 

ВК, С К ВКг

16

м одуля

 

 

 

 

 

 

 

 

 

 

 

 

 

ло_ли

=г^ г

 

 

 

 

 

 

 

шл

 

 

 

 

 

 

 

 

_БР2

слово состояния. Поскольку контрол­

 

ВК, С ? ВК^

 

 

 

лер шин содержит двухнаправленные

ДдДу

кш

 

усилители-формирователи, то он одно­

шд

временно увеличивает выходную элек­

ПР

чт

трическую мощность шины данных МП.

вд

 

зп

 

Микропроцессорный

модуль.

На

СИНХ

СИНХ

 

 

рис. 4.4 показана схема МП-модуля.

пз

ем

ШУС

 

— ►

Для

увеличения

выходной

мощ­

33

 

 

ности адресной шины МП используют

РПР

 

 

два

восьмиразрядных

 

буферных

ЗПР

 

ШУ

регистра

(БР1 и БР2) типа

К589ИР12.

ож

 

 

Буферный регистр запоминает инфор­

СБР

 

 

 

 

мацию по единичному

сигналу на

гт

 

 

 

 

входе строба С. Установка регистра в

 

гти

 

__ ъ

" 1 КР

нулевое

состояние

производит

ну­

_

 

 

левой сигнал на выходе К. Записан-

 

 

ный

код

выдается,

если

на входе

ВК] установлен логический ноль, а на входе ВК2 логическая единица. Конкретные значения сигналов на управляющих входах БР1 и БР2 обеспечивают постоянную передачу через регистры адресного сигнала.

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

В МП-модуле используют генератор тактовых импульсов (ГТИ) типа КР580ГФ24, к которому подключают кварцевый резонатор КР. Внешние сигналы „Сброс” и „Готов” поступают на МП через генератор, который содержит триггеры, обеспечивающие задержку этих сигналов до момента появления очередного тактирующего импульса. Таким образом осуществляется синхронизация сигналов.

Микропроцессорный модуль содержит внутрисистемный набор шин: адресов ША, данных ШД и управления ШУ. Для простых МП-систем используют только часть линий шин управления и адресов модуля.

4 .3 . Интерфейсные БИС

Для построения информационных контроллеров ввода - вывода в МП применяют интерфейсные микросхемы: адаптеры, таймеры, конт­ роллеры прерываний, шинные преобразователи.

Адаптер параллельного интерфейса. Структурная схема програм­ мируемого адаптера параллельного интерфейса КР580ВВ55 показана на рис. 4.5. Адаптер содержит буфер данных (БД), который через шину

86

 

 

 

п д

ПЛ0-ПД7

 

Д 0-Д 7

 

 

 

БД

 

•л___

 

< = 0

ПВ

Рис. 4.5. Структурная схема адаптера парал­

ПВ0-ПВ7

чт—г

 

 

 

ПС *—N

лельного интерфейса

зп—

РУС

 

до—

 

ПСО-ПС7

 

Д1

 

Т ж

 

 

СВР —

 

 

 

вк —

 

УУ

 

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

Единичный сигнал на входе ВК отключает шину данных от адапте­ ра. Адресные сигналы, равные 00, 01,10,11 определяют соответственно блоки ПА, ПВ, ПС, УУ, к которым производится обращение по внут­ ренней шине. Нулевой сигнал ЧТ задает направление передачи инфор­ мации от внутренней шины к шине данных, а нулевой сигнал ЗП - обратное направление.

В порте С значение каждого бита можно по отдельности изменять с помощью слова манипуляции с битами, которое по шине данных засылается в УУ адаптера. Признаком этого слова является „0” в разряде Д7. Код в разрядах ДЗ, Д2, Д1 определяет номер бита в порте С, а значение разряда ДО определяет устанавливаемое значение этого бита.

Режим работы и направление передачи информации через шины портов ПА, ПВ, и ПС по отношению к адаптеру задает управляю щее сл о в о , которое записывают в РУС через шину данных. Это слово идентифицируют единицей в старшем разряде Д7. Назначение осталь­ ных разрядов следующее. Разряды ДО, Д1, ДЗ, Д4 передают информа­ цию о направлении передачи соответственно линий ПС0-ПСЗ, ПВ0-ПВ7, ПС4-ПС7, ПА0-ПА7. При этом „1” означает ввод, а „0” - вывод информации. Разряд Д2 определяет режим работы линий ПС0ПСЗ и ПВОПВ7, а именно „0” определяет режим 0, а „1” - режим 1. Разряды Д6,.Д5 задают режим работы линий ПС4-ПС7 и ПА0-ПА7 (00 - режим 0 ,0 1 - режим 1 ,1 0 или И - режим 2 ).

При вводе управляющего слова или при единичном сигнале сброса СБР в ПА, ПВ и ПС устанавливаются нули, причем сигнал сброса вво­ дит управляющее слово, которое задает для всех линий ввод в

режиме 0 .

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

87

записи новой информации в них по сигналу ЗП-0. При выводе инфор­ мации в портах находятся текущие данные, поступающие от перифе­ рийных устройств.

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

манипуляции с битами.

используют следующие дополни­

При вводе данных в порты А и В

тельные сигналы управления: С -

строб (входной); ВХПБ - входной

буфер полон (выходной); ПР - запрос прерывания (выходной). Одним из условий формирования сигнала ПР является запись с помощью слова манипуляции с битами единицы в триггер разрешения прерыва­ ния (РПР). Роль РПР выполняет один из триггеров порта С, который отключен от соответствующей линии шины ПС. Отключенная линия служит только для ввода сигнала в логическую схему устройства управления. _

Срез сигнала С от периферийного устройства вводит данные в порт. Затем последовательно формируются единичные сигналы ВХБП и ПР после среза и фронта сигнала С соответственно. Сигнал ВХБП запреща­ ет периферийному устройству_передавать новые данные. Считывание данных из порта по сигналу ЧТ от МП вновь устанавливает сигналы ВХБП и ПР в нулевые значения. При этом сначала по срезу сигнала ЧТ исходное значение принимает сигнал ПР, а затем по фронту сигнала ЧТ - сигнал ВХБП.

При выводе данных из портов А и В используют следующие дополнительные сигналы управления: выходной буфер полон ВЫХБП (вы­ ходной), подтверждение приема ПП (входной) и запрос прерывания ПР (выходной). Сигнал ПР информирует о том, что адаптер может принять данные от МП. Далее МП срезом сигнала на входе ЗП записывает данные в порт. При этом сигнал ПР становится равен 0. Далее по фрон­ ту сигнала ЗП устанавливает нулевое значение сигнала ВЫХБП, кото­ рое информирует периферийное устройство о готовности адаптера вывести информацию. По срезу сигнала ПП от периферийного устройства данные выводятся из порта, и одновременно сигнал ВЫХБП становится равным единице. Последующий фронт сигнала ПП вызывает единичный сигнал на выходе ПР.

Распределение линий шины ПС по дополнительным сигналам уп­ равления представлено в табл. 4.3. Первая колонка этой таблицы соответствует номерам триггеров РПР.

Контроль состояния адаптера осуществляют путем чтения содержи­ мого порта С. В режиме 2 порт А формирует двунаправленный канал связи, производящий стробированную передачу данных. В этом режи­ ме используют все управляющие сигналы порта С, которые имеют место при вводе и выводе в порт А в режиме 1.

88

Таблица 4.3. Распределение линий управления в шине порта С

 

 

 

Сигнал

 

Порт

с[

ВХБП

ПР

ШВВ

 

пй

ВЫХБП

ПР

ШВВ

А

4

Д

3

 

 

6

7

3

4,5

В

2

1

0

Нет

 

2

7

тг

 

П р и м е ч а н и е . В числителе приведены сведения для ввода данных, в знаменателе—для вывода.

Адаптер последовательного интерфейса. Структура программируе­ мого адаптера последовательного интерфейса КР580ВВ5 показана на рис. 4.6. Адаптер предназначен для организации обмена информацией с периферийным устройством, работающим с последовательным кодом. Обмен информации производится в асинхронном или синхронном режимах. В асинхронном режиме один многоразрядный символ сооб­ щения передают в обрамлении нулевого стартового бита и одного или нескольких единичных стоповых бит. Перед стоповым битом передают контрольный бит, значение которого выбирают так, чтобы сумма единиц в битах передаваемого символа и контрольном бите нечетной или четной в зависимости от типа контроля. В синхронном режиме символы сообщения передают не по одному, а массивами. В начале массива формируют один или два восьмибитовых символа синхрони­ зации, которые выполняют роль адреса приемника информации. В конце массива генерируют непрерывную последовательность симво­ лов синхронизации.

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

Микропроцессор связан с внутренней шиной адаптера через шину данных Д и буфер данных БД при нулевом управляющем сигнале выбора модуля ВМ. При нулевых сигналах ЧТ и ЗПинформация пере­ дается в МП или из него соответственно. Сигнал У/Д (управление/данные) идентифицирует передачу управляющих слов или данных. Ввод синхронизации СНХР постоянно подключен ко второй фазе системного генератора тактирующих сигналов. Данные от периферийного устрой­ ства принимают через вход ВХПР в приемник ПР. Данные в перифе­ рийное устройство передают из передатчика ПД через выход ВЫХПД.

Перед обменом данных адаптер программируют путем подачи импульса на вход сброса СБР и определенной последовательности

89

вых пд

ЗПРТ

ГПРТ

кпд

0Х ПР

з п д т

гпдт

ос

Рис. 4.6. Структурная схема адаптера последовательного интерфейса

управляющих слов на шину Д: режим, первый символ синхронизации, второй символ синхронизации, инструкция. Эти управляющие слова заносят соответственно в регистры РГР, РГС1, РГС2 и РГИ. Символы синхронизации подают, только если слово режима предусматривает синхронную передачу. При текущем обмене данными работой адаптера можно управлять, вводя только новое слово инструкций.

Управляющие слова определяют один из следующих видов работы адаптера с периферийным устройством: асинхронная передача, асин­ хронный прием, синхронная передача, синхронный прием с внутрен­ ней синхронизацией, синхронный прием с внешней синхронизацией.

Слово режима для синхронного обмена информацией характеризу­ ют кодом 00 в битах Д1, ДО шины данных. В этом слове значения 1 и О бита Д6 определяют соответственно внешнюю и внутреннюю синхрони­ зации, а значения 1 и 0 бита Д7 задают один или два символа синхро­ низации. Слово режима для асинхронного обмена информацией в поле Д1, ДО могут иметь коды 01, 10, 11, которые определяют частоту пере­ дачи и приема битов информации через вводы ВЫХПД и ВХПР как 1, 1/16 или 1/64 от частоты, задаваемой импульсами на входах стробиро­ вания передачи и приема СПД и СПР. ___ ___

Импульсы стробирования на входах СПД и СПР вырабатывают периферийное устройство или МП-модуль. В любом случае частота этих импульсов в асинхронном режиме должна быть не менее чем в 4,5 раза меньше частоты, подаваемой на вход СНХР.

В случае асинхронного режима коды 01, 10, 11 в поле Д7, Д6 задают 1 или 2 стоповых бита. Остальные биты слова режима являются общи­ ми как для асинхронного, так и для синхронного обменов информа­ цией. Поле ДЗ, Д2 при записи в них кодов 00, 01,10, 11 задает 5, 6 , 7, 8 бит в символе сообщения. Поле Д5, Д4 при наличии кодов 00, 01, 11 соответственно запрещает ввод контрольного бита или вводит биты нечетного или четного паритетов.

Информацию, заключенную в слове инструкций, используют как

90

Соседние файлы в папке книги