5. Программируемые интерфейсные микросхемы

 

5.1.Общие сведения

5.2.Программируемый параллельный интерфейс

5.3.Программируемый таймер

 

5.1.Общие сведения

 

Под интерфейсом, строго говоря, следует понимать совокупность всех как аппаратных, так и программных средств, обеспечивающих сопряжение модулей микро–ЭВМ друг с другом, микро–ЭВМ с внешними устройствами, микро–ЭВМ с другими ЭВМ. На практике термин «интерфейс» часто используется и для обозначения каких– о отдельных элементов такого сопряжения. Интерфейсом могут называть и разъем, в который вставляется печатная плата модуля и систему шин, подходящую к этому разъему, и использованный на этом стыке протокол обмена.

Микросхемы, обеспечивающие сопряжение, и программы, поддерживающие обмен, могут также называть интерфейсом. Интерфейсы в целом, а также их отдельные элементы стандартизируются. По сути дела, как сами ЭВМ, так и их средства ввода-вывода основаны на целой иерархии стандартных интерфейсов. Так системные магистрали микро – ЭВМ часто выполняются в соответствии со стандартами MICROBUS, MULTIBUS (И–41), Q – BUS (МПИ), ISA, PCI.

При сопряжении микро–ЭВМ с периферийными устройствами, работающими с параллельными кодами, используют стандартные интерфейсы ИРПР, CENTRONICS (ИРПР–М), МЭК–625 (КОП). При передаче последовательным кодом применяют интерфейсы «петля 20мА» (ИРПС), RS232C (Cтык С2).

Иерархию интерфейсов микропроцессорных систем во многом обеспечивают программируемые интерфейсные микросхемы, входящие в состав большинства микропроцессорных комплектов. Так в микропроцессорном комплекте КР580, в состав которого входит учебный микропроцессор, имеются следующие интерфейсные микросхемы:

КР580ВВ55А – программируемый параллельный интерфейс;

КР580ВВ51А – программируемый последовательный интерфейс;

КР580ВИ53 – программируемый таймер;

КР580ВН59 – программируемый контроллер приоритетных прерываний;

КР580ВТ57 – программируемый контроллер прямого доступа к памяти;

КР580ВВ79 –программируемый контроллер матричной клавиатуры и семисегментного дисплея;

КР580ВГ75 – программируемый контроллер телевизионного дисплея.

Эти микросхемы либо обеспечивают формирование системной шины стандарта MICROBUS, либо обеспечивают подключение к ней внешних устройств. С точки зрения микропроцессора (и программиста) каждая из таких микросхем представляет собой некоторый набор портов ввода–вывода. Часть этих портов действительно поддерживает операции ввода–вывода, некоторые же выполняют специфические функции управления. Порты, используемые для целей управления периферийной микросхемой, обычно называют регистрами. Существует два вида таких регистров – регистры управляющих слов (РУС) и регистры слов состояния (РСС).

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

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

 

5.2.Программируемый параллельный интерфейс

 

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

 

Рис.5.1.Общая функциональная схема ППИ

 

ППИ связан выводами D7…D0 с шиной данных микропроцессорной системы. Схема управления получает из микро–ЭВМ следующие сигналы:

– «выбор кристалла»;

– «чтение»;

– «запись»;

RESET – «сброс»;

A1,A0 – двухразрядный адрес внутреннего порта ППИ.

Микросхема содержит четыре порта – регистр управляющего слова (РУС), порты А, В и С. Порт С разделен на две самостоятельные половины – старшую (разряды С7…С4) и младшую (разряды С3…С0). С микро-ЭВМ взаимодействует тот из портов, адрес которого выставлен на входах А1,А0 микросхемы. Адреса портов сведены в таблицу 5.1.

Таблица 5.1. Адреса внутренних портов ППИ

Другими необходимыми условиями взаимодействия являются выбор микросхемы сигналом и подача одного из сигналов или .

Режимы работы портов ППИ и направление передачи через них информации устанавливается в процессе настройки, инициализации микросхемы. При инициализации микросхемы в порт РУС выводится управляющее слово MS. Его формат представлен на рис.5.2.

Рис.5.2.Формат управляющего слова MS

 

Порты А, В, С микросхемы могут работать в следующих режимах:

порт А – режимы 0,1,2;

порт В – режимы 0,1;

порт С – режим 0.

В режиме 0 порт работает как порт безусловного ввода–вывода, в режиме 1 – как порт условного ввода–вывода или порт ввода–вывода по прерываниям. Режим 2 аналогичен режиму 1, но используется при двунаправленной шине внешнего устройства.

Для передачи и приема сигналов сопровождения кодов (известительного и квитирующего), выдачи запросов прерываний в режимах 1 и 2 используются определенные биты порта С. Биты порта С, не используемые в этих режимах, могут использоваться для безусловного ввода или вывода (в зависимости от инициализации). Конструкцией микросхемы предусмотрено так же избирательное управление битами порта С с помощью управляющего слова BSR. Формат этого показан на рис.5.3.

 

Рис.5.3.Формат управляющего слова BSR

 

Общая функциональная схема ППИ (рис.5.1) никак не отображает множество возможных аппаратных конфигураций, которое можно реализовать в этой микросхеме с помощью инициализации. Приведем для примера упрощенную функциональную схему устройства, получаемого при переводе порта А в режим 1 и настройки его на вывод (рис.5.4).

Порт вывода А и схема аппаратной поддержки протокола являются здесь основой порта вывода, работающего по прерываниям. Прерывания от данного порта могут быть разрешены или запрещены сигналом INTE, хранящегося в бите С6 порта С. Этот бит может быть установлен или сброшен программно с помощью управляющего слова BSR.

Рассматриваемая схема может использоваться и как порт условного вывода. Для этого предусмотрена возможность программного анализа запроса прерывания IRQ = RDY ^ INTE c помощью дополнительного порта ввода – бита С3 порта С. Вспомогательные порты ввода - биты С6 и С7 порта С предназначены для программного контроля известительного сигнала внешнего участка обмена и сигнала разрешения прерывания INTE.

Биты порта С, используемые для управления портами А и В, образуют слово состояния ППИ SW. Для его ввода достаточно прочитать порт С командой IN N. Формат полного слова состояния ППИ (порт А в режиме 2, порт В в режиме 1) представлен на рис.5.5.

ППИ используются практически в любой микропроцессорной системе.

 

Рис.5.4.Функциональная схема порта А ППИ, работающего в режиме 1

 

Рис.5.5.Слово состояния ППИ

 

5.3.Программируемый таймер

 

Одной из наиболее популярных интерфейсных микросхем микропроцессорного комплекта КР580 является программируемый таймер КР580ВИ53. Эта микросхема предназначена для формирования частотных сигналов, измерения и отсчета интервалов времени под программным контролем со стороны микро–ЭВМ. Общая функциональная схема таймера показана на рис.5.6.

Основой таймера являются три одинаковых канала, имеющих по два входа для внешних сигналов синхронизации (CLK) и управления (GATE) и по одному выходу (OUT). Каждый канал содержит шестнадцатиразрядный вычитающий счетчик (ST), шестнадцатиразрядные регистры предустановки счетчика (DW) и «чтения на лету» (RG). Конкретная аппаратная конфигурация в каждом из каналов и, соответственно, выполняемые им функции определяются загрузкой управляющих слов SW0…SW2 в специальный блок регистров РУС схемы управления.

Рис.5.6.Общая функциональная схема программируемого таймера

 

Таймер связан с микро-ЭВМ выводами D7…D0 двунаправленной шины данных, а также входами:

– «выбор кристалла»;

– «чтение»;

– «запись»;

А1,А0 – двухразрядный адрес внутреннего порта.

С точки зрения микропроцессорной системы таймер ассоциируется с четырьмя портами безусловного вывода и тремя портами безусловного ввода. Соответствие адресов портов и приемников или источников информации таймера приведено в таблице 5.2.

Таблица 5.2. Адреса портов, приемники и источники информации программируемого таймера

 

 

При подаче питания все каналы таймера оказываются в неопределенном состоянии. Поэтому перед использованием каналов во внешней схеме или в самой микропроцессорной системе, они должны быть инициализированы, настроены с помощью управляющих слов SW0…SW2. Формат управляющего слова SW представлен на рис.5.7.

Рис.5.7.Формат управляющего слова SW

 

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

Каждое управляющее слово обычно сопровождается одним или двумя байтами данных (в зависимости от принятого при инициализации формата обмена), загружаемых в регистр предустановки DW.

При чтении одного из портов ввода таймера микро-ЭВМ обычно получает (в заданном формате обмена) текущее содержимое соответствующего счетчика СТ.

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

Для выполнения «чтения на лету» используется некоторая модификация управляющего слова CWR. Его формат приведен на рис.5.8. Вывод этого слова по адресу блока РУС осуществляет перепись кода счетчика СТ в регистр RG. В одной или двух (в зависимости от принятого формата обмена) последующих операциях чтения этого канала будет участвовать регистр RG. Затем снова будет читаться счетчик СТ.

Каналы имеют следующие режимы работы:

0 – прерывание по окончании счета;

1 – программируемый одновибратор;

2 – генератор частоты;

3 – генератор прямоугольных импульсов;

4 – задержка строба с программным запуском;

5 – задержка строба с аппаратным запуском.

В каждом из режимов инициализации обеспечивается своя собственная функциональная схема канала. Например, для режима 0 такая схема (упрощенная) изображена на рис.5.9.

 

Рис.5.8.Формат управляющего слова SWR

 

На схеме кроме счетчика СТ и регистра предустановки DW показаны шинные формирователи, подключенные к выходам счетчика, элемент «ИЛИ» и триггер, формирующий выходной сигнал. Не указаны цепи управления чтением и записью кодов, а также регистр «чтения на лету» и относящиеся к нему цепи. Вычитающий счетчик имеет динамический вычитающий счетный вход С и два входа разрешения счета V1 и V2.

Пусть в исходном состоянии триггер находится в единице, счет импульсов синхронизации при этом запрещен по входу V2 счетчика. На вход GATE подается единичный сигнал разрешения счета. Пусть далее микро–ЭВМ загружает в регистр DW младший байт кода предустановки, и затем старший байт. Одновременно с загрузкой старшего байта идет и предустановка счетчика. По ее окончании задний фронт импульса «запись старшего байта» сбрасывает триггер в нуль, разрешая счет импульсов в счетчике. Содержимое счетчика уменьшается с частотой сигнала синхронизации CLK. Момент появления в счетчике нулевого кода регистрирует элемент «ИЛИ», который вновь устанавливает триггер в единицу, запрещая дальнейший счет. В результате временные диаграммы работы канала (при GATE=1) принимают вид, представленный на рис.5.10. Легко видеть, что в режиме 0 канал таймера формирует отрицательный импульс, отсчитываемый от момента окончания загрузки старшего байта. Длительность импульса tИ определяется частотой импульсов синхронизации fCLK и числом N0 загруженным в счетчик при предустановке в соответствии с соотношением . Нулевое значение сигнала на управляющем входе GATE позволяет внешней схеме приостановить счет импульсов в счетчике.

 

 

 

Рис.5.9.Упрощенная функциональная схема канала таймера в режиме 0

Режим 1 очень похож на режим 0, при GATE=1, отличаясь тем, что длительность отрицательного выходного импульса отсчитывается от переднего фронта управляющего сигнала GATE.

Режимы 4 и 5 отличаются от режимов 0 и 1 соответственно только формой выходного сигнала на выходе OUT. В этих режимах на выходе формируется короткий отрицательный импульс в момент обнуления счетчика.

В режимах 2 и 3 в момент обнуления счетчика обеспечивается его повторная автоматическая загрузка кодом, находящимся в регистре предустановки DW. В результате обеспечивается счет по модулю N0 импульсов, поступающих по входу CLK. Нулевой сигнал GATE запрещает счет, единичный – разрешает его, передний фронт GATE всегда инициирует цикл предустановки и счет с начального значения. Выходной сигнал режима 2 – короткий отрицательный импульс, режима 3 – меандр.

Подробные временные диаграммы всех режимов работы приведены на рис.5.11.

 

Рис.5.10.Временные диаграммы работы таймера в режиме 0 при GATE = 1

 

 

Рис.5.11. Временные диаграммы работы таймера

Рейтинг@Mail.ru