Схема управления модемом служит для ввода-вывода сигналов общего назначения.
Микросхема УСАП может работать как совместно с МП, так и под управлением другого активного устройства с синхронной и асинхронной дисциплиной обмена. Микросхема может работать в синхронном и асинхронном режимах. Кроме того, по запросу от активного устройства УСАПП может выдавать слово-состояние, позволяющее определить наличие и вид ошибок обмена, а также ряд других ситуаций требующих вмешательства процессора.
RESET – сброс. После действия этого сигнала адаптер переводится в «холостой» режим и остается в нем до загрузки управляющих слов.
CLK – синхронизация.
C/D – управление / данные. Сигнал идентификации данных или управляющих слов.
CS - выборка кристалла. Разрешает связь между адаптером и шиной данных.
DSR – готовность модема. Входной сигнал от модема, означающий его готовность к работе.
DTR – готовность терминала.
CTS – передача. Входной сигнал, разрешающий адаптеру передавать данные.
RTS – запрос передачи.
TxD – выходная линия, по которой действуют передаваемые данные.
TxRDY – готовность передатчика. Используется для прерывания процессора или проверяется при считывании состояния адаптера.
TxE – пустой передатчик. Обозначает отсутствие в адаптере символа для передачи.
TxC – синхронизация. Передатчика. Входной сигнал, управляющий скоростью передачи данных.
RxD – вход приемника. Входная линия, по которой передаются сигналы принимаемых последовательных данных.
RxRDY – готовность приемника. Свидетельствует о наличии в адаптере принятого символа.
RxC – синхронизация приемника. Определяет скорость приема символов.
SYND – обнаружение синхронизации. Сигнал синхронного режима.
Для программирования адаптера необходимо загрузить несколько управляющих слов. Управляющие слова имеют два формата: слово режима и слово приказа.
Слово режима задает общие рабочие характеристики адаптера:
скорость передачи;
длину символа;
число стоповых бит;
режим работы;
условия контроля (четный или нечетный паритет).
Формат слова режима.
D7 D6 D5 D4 D3 D2 D1 D0
ST1
ST2
P1
P0
L1
L0
DR1
DR0
Ч
1 бит 0 1
1,5 бита 1 0
2 бита 1 1
0 0 синхронный
0 1 1
1 0 16
1 1 64
исло
стоп-бит Скорость
передачи
П
0 0 5 бит
0 1 6 бит
1 0 7бит
1 1 8 бит
аритет
Нечетный 0 1
Четный 1 1
длина символа
Формат слова приказа.
EH
IR
RTS
ER
SBRK
RxE
DTR
TxEN
D7 D6 D5 D4 D3 D2 D1 D0EH – поиск синхросимволов при значении 1.
IR – внутренний сброс, при 1 происходит сброс всех внутренних регистров.
RTS – сброс УСАПП в исходное состояние.
ER – сброс ошибок.
SBRK – конец передачи при 1.
RxE – разрешение приема, при 1 – прием разрешен, при 0 – прием запрещен.
DTR – при 1 – запрос о готовности передатчика передать данные.
TxEN – разрешение передачи; при 1 – передача разрешена, при 0 – запрещена.
Слово приказа передается после слова режима.
Подготовка УСАПП к работе осуществляется в определенном порядке.
Подается сигнал RESET, который переводит УСАПП в исходное состояние. Затем осуществляется программирование УСАПП. На первом этапе программирования по шине данных в УСАПП заносится слово режима. Это слово определяет режим работы УСАПП в данном цикле передачи (синхронный или асинхронный). При реализации синхронного режима за словом режима следуют служебные слова – индентификаторы информации ( синхросимволы ). Число синхросимволов определено двумя старшими разрядами слова режима. Кроме этого слово режима залает вид синхронизации, определяет вид контроля передачи и длину передаваемого слова. Направление передачи задается внешними сигналами RD и WR. Сигнал RD настраивает УСАПП на передачу информации из УСАПП в шину данных, сигнал WR задает обратное направление.
Вид информации (управляющие слова или данные) определяется сигналом C/D.
В синхронном режиме работы после синхросимволов следует слово приказа. Оно программно определяет возможность приема и передачи информации, выдачу запросов о готовности провести обмен и другие действия УСАПП.
Слово режима и слово приказа определяют один из пяти режимов работы УСАПП:
асинхронная передача,
асинхронный прием,
синхронная передача,
синхронный прием,
чтение состояния.
В режиме «Асинхронная передача» принятые в УСАПП из МП данные выдаются в последовательном коде на выход TxD. Перед посылкой выводится старт-бит. После передачи байта данных может быть передан бит контроля, а затем стоп-бит. Наличие и вид контроля определяется словом режима.
В режиме «асинхронный прием» Подается старт-бит последовательной посылки на вход RxD. После этого запускается внутренний счетчик битов, позволяющий определить конец посылки. Принятые данные передаются в буфер данных и вырабатывается сигнал RxRDY (готовность приемника).
В режиме «Синхронная передача» перед битами данных вводятся синхросимволы, которые выделяют собственно данные из потока информации. Синхросимволы следуют за словом режима. После записи слова режима, синхросимволов, слова приказа и данных происходит анализ сигнала CTS (готовность приемника терминала) и разряда D0 слова приказа. При наличии разрешающих сигналов УСАПП транслирует принятую информацию на выход TxD (выход передатчика).
Режим «Синхронный прием» может быть реализован как с внешней, так и с внутренней синхронизацией. Вначале происходит поиск синхросимволов, затем подается слово режима, затем слово приказа. Контролируются ошибки четности и переполнения.
Режим «Чтение состояния» используется для определения состояния УСАПП в процессе выполнения операций.
Программируемый контроллер прерываний (ПКП) позволяет без дополнительных аппаратурных затрат обрабатывать до 8 векторов прерывания. Число запросов можно увеличить до 64 с помощью каскадно соединенных нескольких БИС. Каскадирование контроллеров приведено на рис.
ПКП позволяет:
программно задавать различные режимы задания приоритетов;
задавать адреса размещения в памяти подпрограмм обработки прерываний;
разрешать и запрещать отдельные запросы.
Устройство может вырабатывать команду CALL для вызова подпрограммы обработки прерывания и выдавать ее в шину данных.
Ниже на рис.13 приведена функциональная схема ПКП.
D
Буфер данных
Схема управления
Схема управления Чт / Зп
Схема управления каскадиро-ванием
7-D0
INTR
INTA
A0
С
S
R
Рг С
А
Рг
ЗП
D IRO-IR7W
R
CAS0
CAS1
CAS2
SP
Рис.13. Функциональная схема ПКП
РгС – регистр обслуживаемых прерываний; 8- разрядный регистр, единица в соответствующем разряде показывает, прерывания каких уровней обрабатываются в данный момент в МП.
А – арбитр приоритета, функцией данного блока является разрешение конфликта при одновременном поступлении запросов на входы IR0 – IR7.
Рг ЗП – регистр запросов прерываний; 8-разрядный регистр, который фиксирует поступление сигнала на одном их входов IR0 –IR7.
А0 – адрес; начальный адрес области памяти для хранения процедур обработки прерываний.
CAS0 - CAS2 – каналы каскадирования;
SP – выбор ведомого контроллера;
INTR – запрос прерывания;
INTA – подтверждение запроса прерывания;
IR0 –IR7 – входы запросов прерывания (вектора прерываний).
Регистр маски – 8-разрядный регистр, с помощью которого можно запретить обработку запросов прерывания. Для запрещения (маскирования) определенных уровней прерывания необходимо установить маску прерывания, т.е. занести 1 в соответствующие разряды регистра.
Во время работы ПКП может работать в одном из 4 режимов:
1. Режим вложенных прерываний. В этом режиме каждому вектору прерывания присваивается фиксированное значение приоритета. Вектор прерывания с наивысшим приоритетом имеет право прерывать обработку менее приоритетного прерывания.
2. Режим циклической обработки прерываний. В этом режиме значения приоритетов уровней векторов прерываний также линейно упорядочены, но уже не фиксированным образом, а изменяются после обработки по следующему принципу: последнему обслуженному прерыванию присваивается наименьший приоритет. Следующий по порядку вектор получает наивысший приоритет, поэтому будет обслужен в первую очередь.
3. Режим адресуемых приоритетов. В этом режиме программист или система самостоятельно могут назначить вектор прерывания с наивысшим приоритетом.
4. Режим опроса. Этот режим запрещает контроллеру автоматически прерывать работу МП при появлении запроса от внешнего устройства. Процессор должен сам обратиться к контроллеру в регистр запросов, проанализировать содержимое регистра и далее действовать по своему алгоритму. Данный режим моделирует опросную дисциплину обработки прерываний. Инициатором обработки прерывания становится не сам вектор прерывания, как при векторной дисциплине, а МП, причем в определяемые им самим моменты времени.
Программирование ПКП осуществляется через адресное пространство ввода-вывода с помощью двух 8-битовых портов с адресами 20H и 21H. Для управления ПКП в эти порты в определенной последовательности посылаются слова-приказы двух типов – управляющее слово инициализации (УСИ), которое определяет режим работы контроллера, и операционное слово (ОС). УСИ – четыре (столько, сколько режимов), ОС – три.
Форматы их следующие.
Формат УСИ 1. Определить особенности последовательности приказов.
D7
D6
D5
D4
D3
D2
D1
D0
D0 = 1 – УСИ 4 будет присутствовать в данной последовательности приказов.
D1 = 0 – каскадное подключение контроллеров; УСИ 3 будет в последовательности приказов.
D1 = 1 – одиночное подключение контроллера; УСИ3 не будет.
D2,D5,D6,D7 – не используются ( постоянный 0).
D4 = 1 признак УСИ 1.
Формат УСИ 2. Определение базового адреса.
D7 D6 D5 D4 D3 D2 D1 D0
D0-D2 – не используются (постоянный 0)
D3 – D7 – биты для задания номера базового вектора.
Ф
D7 D6 D5 D4 D3 D2 D1 D0
ормат УСИ 3. Связь контроллеров.Di = 1, если ко входу i подключен ведомый контроллер;
Di = 0, если ко входу i подключено внешнее устройство.
Формат УСИ 4. Дополнительные особенности обработки прерываний.
D7 D6 D5 D4 D3 D2 D1 D0
D0 (определяет тип микропроцессора); 0 – i8080; 1 – i8086 (PENTIUM).