Проектирование устройств сопряжения (1083567), страница 12
Текст из файла (страница 12)
2.1.9. Универсальный контроллер параллельного обмена
Предыдущие разделы были посвящены методам построения наиболее типичных узлов УС. Теперь мы переходим к рассмотрению примеров УС распространенных типов. Из-за ограниченного объема книги этих примеров будет немного, и описание УС будет довольно кратким.
Адрес ППЗУ | Данные ППЗУ | Комментарий | |||||||||
Вх | Адрес | С | Р | След. адрес | |||||||
0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | Задержка и ожидание положительного фронта входного сигнала |
0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | |
0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | |
0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | Снятие Р и ожидание входного сигнала |
1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | Выставление RxC и переход на обработку положительного фронта входного сигнала |
1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | |
1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | |
1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | |
1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | |
0 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | Снятие RхС и задержка с отключением входа |
0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | |
0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | |
0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | |
0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | Переход на ожидание положительного фронта |
1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | Снятие RxС и задержка с отключением входа |
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | |
1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | |
1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | |
1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | Переход на ожидание отрицательного фронта |
1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 1 | Задержка и ожидание отрицательного фронта входного сигнала |
1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | |
1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | |
1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | |
1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | Снятие Р и ожидание входного сигнала |
0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | Выставление RxС и переход на обработку отрицательного фронта входного сигнала |
0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | |
0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | |
0 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | |
0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | Переход на ожидание положительного фронта |
Табл. 2.4. Микропрограмма дешифратора манчестерского кода (сигнал RxC обозначен в таблице С).
Первой рассмотренной нами схемой будет простейшее, но, тем не менее, очень полезное УС — универсальный многоразрядный контроллер параллельного обмена информацией. С его помощью компьютер может общаться с любыми цифровыми устройствами в статическом режиме (то есть в темпе, не превышающем быстродействие компьютера). Также его можно использовать для статической отладки УС (о методе статической отладки и его реализации на базе персонального компьютера будет рассказано в разделе 2.3).
Необходимость данного УС становится понятной тогда, когда требуется подключать к компьютеру большое количество внешних устройств (по очереди или одновременно), особенно, нестандартных. Если для этого использовать индивидуальные, специализированные УС, то их потребуется очень много, из-за чего стоимость системы в целом будет чрезмерно высокой, к тому же будет требоваться изменение ее конфигурации для подключения каждого нового внешнего устройства. Все используемые УС в этом случае будут включать в себя интерфейсную часть стандартного вида, что приведет к аппаратурной избыточности системы. Надежность системы в целом также будет невысока.
Совсем другое дело — использование многоразрядного контроллера параллельного обмена с двунаправленными внешними линиями, который путем простого изменения программного обеспечения может быть приспособлен для сопряжения с самыми разнообразными внешними устройствами или с несколькими внешними устройствами одновременно. Такое УС легко может эмулировать любые стандартные интерфейсы, его можно также применять в контрольно-диагностических системах, словом, спектр его применений очень широк.
Сформулируем требования к разрабатываемому контроллеру. Во-первых, он должен иметь большое количество линий связи с внешними устройствами (естественно, чем больше, тем лучше, но ограничением сверху здесь выступает количество контактов и размер используемого внешнего разъема, а также размер платы ISA). Во-вторых, для большей универсальности контроллера должна быть предусмотрена возможность простого изменения количества входных и выходных линий (в идеале все линии — двунаправленные, и направление передачи задается для каждой из них отдельно, но здесь также есть ограничение — это допустимое количество микросхем и размер печатной платы).