русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Система ввода-вывода и служба реального времени ВЕ48


Дата добавления: 2015-08-14; просмотров: 784; Нарушение авторских прав


Архитектура ВЕ48 содержит 27 резидентных линий ВВ (рис. 4.5), организованных в три 8-разрядных порта BUS, P1, P2 и три тестируемые командами условного перехода независимые линии Т0, T1, INT. Порты Р1 и Р2 имеют одинаковую структурную схему (рис. 4.6) и могут быть запрограммированы либо на ввод, либо на вывод данных. Выходные буфера портов имеют встроенные регистры, которые запоминают выводимые данные. При вводе данных информация поступает непосредственно в аккумулятор, минуя выходной буферный регистр, который должен находиться в состоянии 0FFH. В противном случае выполняется операция маскирования вводимых данных по схеме «монтажное ИЛИ» с содержимым выходного регистра. Это позволяет одни линии портов использовать для ввода, а другие—для вывода. Порт BUS отличается от Р1 и Р2 тем, что в нем применяется выходной буфер с тремя состояниями. Поэтому он не допускает одновременного смешивания ввода и вывода между своими разрядами.

Рис. 4.5. Пространство ВВ ВЕ48: а—тестируемые флажки; б—внутренние порты ВВ; в—внешние порты ВВ Рис. 4.6. Схема портов Р1, Р2

Расширенное пространство ВВ содержит еще четыре 4-разрядных порта Р4—Р7, реализуемые внешними средствами. В системе команд предусмотрен ряд операций с прямым доступом к этим портам. Для осуществления этой возможности разработан специальный расширитель ВВ—микросхема 8243.

Архитектура ВЕ48 включает достаточно простые, но эффективные средства реального времени, среди которых 8-разрядный таймер/счетчик Т и одноуровневая система прерываний с двумя источниками запросов: внешними INT и внутренними TF.

Организация 8-разрядного таймера/счетчика ВЕ48 представлена на рис. 4.7. Специальная команда пересылки

MOV A, T ;AT

MOV T, A ;TA

обеспечивает программный доступ к его содержимому.

Рис. 4.7. Организация таймера/счетчика ВЕ48



Устройство работает в двух режимах: таймера и счетчика, в которые оно переводится по командам

START T ;Пуск в режиме таймера

START CNT ;Пуск в режиме счетчика

Устройство останавливает свою работу при подаче сигнала аппаратного сброса RESET или выполнении команды

STOP TCNT ;Останов таймера/счетчика

По команде START mode таймер/счетчик ведет непрерывный счет импульсов на своем входе по mod28. При переходе через границу инициируется запрос на прерывание и устанавливается флажок переполнения TF, который может быть проверен командой условного перехода

JTF addr8 ;Если TF = 1, тогда

;PC0—7addr8, TF0

При выполнении команды перехода или при начальной установке по сигналу RESET флажок TF сбрасывается.

В режиме счетчика организуется подсчет числа переходов из 1 в 0 на внешнем входе Т1. Максимальная скорость приращения счетчика составляет единицу на три машинных цикла. При этом напряжение низкого уровня на входе Т1 должно удерживаться не менее одного, а высокого уровня не менее половины машинного цикла.

В режиме таймера устройство считает метки времени, генерируемые внутренними узлами МК. Эти метки являются результатом деления частоты следования машинных циклов ALE на 32. Во время выполнения команды START Т этот делитель устанавливается в 0.

Используя начальную загрузку Т и обнаруживая установку флажка TF, можно получить паузы от (1/32)ALE до 256(1/32)ALE. Организация пауз вне данного диапазона осуществляется с помощью программных циклов. Более короткие паузы можно также получить в режиме счетчика с Т1, равным (1/3)ALE.

Встроенная в ВЕ48 одноуровневая система прерываний с двумя источниками запросов, имеющими фиксированные векторы прерываний и приоритеты, представлена на рис. 4.8. Одноуровневость системы означает, что никакие новые запросы не воспринимаются до тех пор, пока не будет обслужен текущий.

Рис. 4.8. Система прерываний ВЕ48

В системе определены два источника: вход INT (стартовый адрес программы обслуживания 003Н) и переполнение Т (адресом программы обслуживания служит 007Н). Каждый источник может быть замаскирован независимо от других специальными флажками ЕХ и ЕТ, управляемыми командами

EN I ;Разрешение внешнего прерывания INT

DIS I ;3апрет внешнего прерывания INT

EN TCNT ;Разрешение внутреннего прерывания от Т

DIS TCNT ;3апрет внутреннего прерывания от Т

Флажки также сбрасываются при подаче сигнала RESET. В случае одновременной фиксации двух запросов приоритет отдается внешнему.

Внешнее прерывание по входу INT воспринимается, когда на нем появляется напряжение низкого уровня. Линия INT контролируется во время ALE в последнем машинном цикле каждой команды. Результат тестирования запоминается во внутреннем триггере внешнего прерывания IX, установка которого инициирует формирование аппаратного эквивалента команды CALL 003Н. При выполнении данной команды текущее содержимое PC и флажки PSW запоминаются в стеке, обеспечивая возможность возврата в точку прерывания. Программа обслуживания прерывания должна завершаться командой RETR, восстанавливающей PC и PSW. В начале второго цикла команда RETR разрешает прием новых запросов на прерывание. К этому моменту сигнал запроса INT должен быть снят внешними средствами. Обычно это делается автоматически в момент обслуживания устройства, выставившего запрос. Если такая возможность не осуществляется, то любая выходная линия ВЕ48 может быть использована для выдачи специального сигнала подтверждения прерывания.

Сигнал переполнения от Т фиксируется в триггере запроса IT. Он может быть замаскирован программно-управляемым флажком ЕТ. При возникновении разрешенного прерывания генерируется аппаратная команда CALL 007H, сбрасывающая флажок IT. Сброс IT осуществляется автоматически при любом исполнении команды CALL 007H.

Частота выходного сигнала генератора OSC делится на 3 (рис. 4.9) для получения основной тактовой частоты CLK, которая может быть выведена на внешний вывод Т0 по команде

ENT0 CLK ;Разрешение вывода CLK на Т0

Рис. 4.9. Система синхронизации ВЕ48

Режим вывода отменяется только при общем сбросе МК.



<== предыдущая лекция | следующая лекция ==>
Организация памяти ВЕ48 | Система команд ВЕ48


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.52 сек.