Рис. 5. Типичная операция оборудования порта В/В. Устройство загружает новые данные в регистр вывода порта В/В, только когда декодирует его адрес, и на шине происходит операция записи.
Реальные логические схемы несколько сложнее, чем показанные в этих примерах, так как некоторые сигналы состояния могут быть активными в шине на нижнем уровне, и данные должны передаваться в регистр в конце сигнала записи В/В (а не в начале), когда данные гарантировано будут действительны для задания, и удерживаются на регистре ввода.
Чтобы минимизировать расфазировку синхронизации, вместо пропускания входа синхронизации с помощью вентиля AND, регистр с входом поддерживающим синхронизацию (или нагрузку) обеспечивает меньшую расфазировку синхронизации и минимизирует любые возможные проблемы метастабильности триггера (если возникает дополнительная проблема на выходе вентиля AND, то триггер может увидеть другой "фантомный" сигнал синхронизации в неподходящее время). При таком подходе команда записи В/В будет служить в качестве сигнала синхронизации, а выход декодера в качестве средства запуска. На шине ISAлогика должна также проверять сигнал шины AEN на 0, чтобы гарантировать, что устройство не отвечает по ошибке на циклы DMA (DMA активирует одновременно более одного сигнала состояния шины ISA).
Некоторые встроенные устройства могут требовать своих собственных специальных аппаратных устройств В/В. Существует несколько доступных вариантов. Вместо вычерчивания схем на уровне вентиля, поставщики микросхем и разработчики встроенных систем обычно проектируют оборудование В/В с помощью средств CAD, используя язык описания оборудования (HDL), такой какVHDL или Verilog. VHDL имеет синтаксис аналогичный Pascal или ADA, а Verilog похож на C. Затем синтезируется модель HDL для создания списка соединений. Список соединений является текстовым описанием схемы. Автоматизированные инструменты CAD затем могут использовать список соединений для размещения конструкции оборудования в специальном устройстве VLSI, Application Specific Integrated Circuit (ASIC), или Field Programmable Logic Array (FPGA). Стоимость начальной настройки и маски для специальных конструкций VLSI и ASIC является очень высокой, и требуются большие объемы продаж, чтобы покрыть высокие расходы разработки. FPGA являются более подходящими для производства в меньших объемах, но они также потребляют больше энергии и работают медленнее.
Do'stlaringiz bilan baham: |