Широкое распространение параллельных интерфейсов связано с состоянием развития элементной базы в последней трети XX века. Тогда большая часть изделий базировалась на микросхемах малой и средней степени
интеграции. Более простая реализация параллельного интерфейса по сравнению с последовательным выливалась в улучшение технических и экономических характеристик изделия. Кабельное соединение имело меньшую относительную стоимость. К настоящему времени получила развитие специальная элементная база.
Рисунок 2.7 Параллельный интерфейс
Особенности параллельных интерфейсов
• Высокая стоимость погонного метра магистрали обусловлена большим количеством линий.
• Высокая скорость: удвоение количества линий для передачи данных способствует удвоению скорости канала. На практике это не совсем так, потому что присутствует разница в скорости распространения сигналов по параллельным линиям, т. е. разное время прихода сигналов (битов) на приемной стороне.
• Ограниченная длина интерфейса, которая обычно составляет от нескольких метров до десятков метров и в редких случаях достигает сотни. Объясняется это перекрестными помехами, наводками в соседних линиях, возникающими при передаче данных. Такие физические эффекты уменьшают не только длину кабеля, но и скорость передачи данных по нему (для минимизации помех).
• Простота схемотехнической реализации. Параллельный интерфейс на стороне передатчика и приемника должен иметь параллельные порты (буферы-защелки) для чтения/записи данных с шины. В случае последовательного интерфейса необходимым является преобразование параллельного кода в последовательный для передачи и обратное преобразование при приеме данных, которые выполняют специализированные микросхемы (например, UART в случае интерфейса RS-232). Кабели параллельных интерфейсов обычно имеют недорогую простую конструкцию, например, ленточную.
Интерфейс Centronics. Порт параллельного интерфейса был введен в персональный компьютер для подключения принтера – отсюда и пошло его название LPT-порт (Line PrinTer – построчный принтер).
Традиционный, он же стандартный, LPT-порт (так называемый SPP-nopm) ориентирован на вывод данных, хотя с некоторыми ограничениями позволяет и вводить данные. Существуют различные модификации LPT-порта — двунаправленный, ЕРР, ЕСР и другие, расширяющие его функциональные возможности, повышающие производительность и снижающие нагрузку на процессор. Поначалу они являлись фирменными решениями отдельных производителей, позднее был принят стандарт IEEE 1284.
С внешней стороны порт имеет 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов, выведенные на разъем-розетку DB-25S. В LPT-порте используются логические уровни ТТЛ, что ограничивает допустимую длину кабеля из-за невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует — схемная земля подключаемого устройства соединяется со схемной землей компьютера. Из-за этого порт является уязвимым местом компьютера, страдающим при нарушении правил подключения и заземления устройств.
С программной стороны LPT-порт представляет собой набор регистров, расположенных в пространстве ввода-вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5. В расширенных режимах может использоваться и канал DMA.
Рисунок 2.8 Временные диаграммы цикла передачи данных в Centronics
Перед началом цикла передачи данных компьютер должен убедиться, что сняты сигналы BUSY и -ACK. После этого выставляются данные, формируется строб, снимается строб, и снимаются данные. Принтер должен успеть принять данные с выбранным темпом. При получении строба принтер формирует сигнал BUSY, а после окончания обработки данных выставляет сигнал -ACK, снимает BUSY и снимает -ACK. Затем может начинаться новый цикл.
Все сигналы интерфейса Centronics передаются в уровнях ТТЛ и рассчитаны на подключение одного стандартного входа ТТЛ. Максимальная длина соединительного кабеля по стандарту - 1,8 м.
Data Register (DR) – регистр данных, адрес=ВА5Е. Данные, записанные в этот регистр, выводятся на выходные линии Data[7:0]. Данные, считанные из
этого регистра, в зависимости от схемотехники адаптера соответствуют либо ранее записанным данным, либо сигналам на тех же линиях, что не всегда одно
и то же.
Status Register (SR) – регистр состояния (только чтение), адрес=ВА5Е+1.
Регистр отображает 5-битный порт ввода сигналов состояния принтера и флаг
прерывания: состояние готовности принтера, сигнал о конце бумаги в принтере, сигнал о включении принтера, сигнал о любой ошибке принтера и др.
Control Register (СR) – регистр управления, адрес=ВА5Е+2, допускает запись и чтение. Регистр связан с 4-битным портом вывода управляющихсигналов, для которых возможно и чтение; выходной буфер обычно имеет тип «открытый коллектор». При помощи этого регистра можно подавать такие сигналы, как сигнал аппаратного сброса принтера, сигнал на автоматический перевод строки по приему байта и возврата каретки (CR), сигнал стробирования выходных данных и др.
Шаги процедуры вывода байта по интерфейсу Centronics с указанием требуемого количества шинных операций процессора:
1. Вывод байта в регистр данных (1 цикл IOWR#).
2. Ввод из регистра состояния и проверка готовности устройства (сигнал Busy). Этот шаг зацикливается до получения готовности или до срабатывания программного тайм-аута (минимум 1 цикл IORD#).
3. По получению готовности выводом в регистр управления устанавливается строб данных, а следующим выводом строб снимается. Обычно, чтобы переключить только один бит (строб), регистр управления предварительно считывается, что к двум циклам IOWR# добавляет еще один цикл IORD#.
Видно, что для вывода одного байта требуется 4-5 операций ввода-вывода с регистрами порта (в лучшем случае, когда готовность обнаружена по первому чтению регистра состояния). Отсюда вытекает главный недостаток вывод через стандартный порт – невысокая скорость обмена при значительной
загрузке процессора. Порт удается разогнать до скоростей 100-150 Кбайт/с при полной загрузке процессора, что недостаточно для печати на лазерном
принтере. Другой недостаток функциональный – сложность использования в качестве порта ввода.
Таблица 2.2 - Сигналы интерфейса Centronics.
Сигнал | Т | Конт. | Напр. | Назначение |
Strobe | IN | Строб данных. Передаваемые данные фиксируются по низкому уровню сигнала. | ||
D0... D7 | 2-9 | IN | Линии данных (D0 - младший бит). | |
Ack | OUT | Acknowledge – сигнал подтверждения приема байта (запрос на прием следующего). Может использоваться для формирования прерывания. | ||
Busy | OUT | ПУ занято. Прием данных возможен только при низком уровне сигнала. | ||
PE | OUT | "1" сигнализирует о конце бумаги. | ||
Select | OUT | "1" сигнализирует о включении принтера. | ||
Auto LF | IN | Автоматический перевод строки Auto Feed Line. В случае если "0", то ПУ при получении символа CR (перевод каретки) выполняет функцию LF – перевод строки. | ||
Error | OUT | Ошибка ПУ (нет бумаги, нет тонера, внутренняя ошибка). | ||
Init | IN | Инициализация (переход к началу строки, сброс всœех параметров на значения по умолчанию). | ||
Slct In | IN | Выбор принтера. При "1" ПУ не воспринимает сигналы интерфейса. | ||
GND | – | Общий провод. |
В настоящее время стандарт IEEE 1284 не развивается. Окончательная стандартизация параллельного порта совпала с началом внедрения интерфейса USB, который позволяет подключать также и комбинированные аппараты (сканер-принтер-копир) и обеспечивает более высокую скорость печати и надежную работу принтера. Также, альтернативой параллельному интерфейсу
является сетевой интерфейс Ethernet.
PCI (Peripheral Component Interconnect) – мультплексированный, параллельный (разрядность 32 или 64 бита) системный интерфейс. Первая спецификация на этот интерфейс появилась в 1992 году. Первоначально интерфейс использовался в персональных компьютерах, работающих под управлением операционных/
Спецификация PCI 2.0 (Peripheral Component Interconnect Local Bus Revision 2.0) определяет процессорно-независимую шину, предусматривающую подключение до шести устройств, в том числе контроллера шины PCI и дополнительного контроллера шины расширения ISA, EISA или МСА. Тактовая частота шины РСI достигает 33 МГц, причем обмен по ней может осуществляться 32- или 64-разрядными словами.
Рисунок 2.9 Схема типичной системы PCI
Предусматривается одновременная поддержка нескольких главных устройств локальной шины, что важно для будущих мультимедиа- и других систем, обрабатывающих большие объемы графики, видео и данных других
типов. Шина РСI поддерживает блочный обмен последовательными данными при выполнении операций чтения и записи данных в память.
В архитектуре РСI предусмотрен мост, развязывающий процессор и шину расширения при сохранении 32-разрядного тракта обмена данными с периферийными устройствами. Контроллер шины позволяет организовывать очередь операций записи и чтения.
Шина РСI поддерживает интерфейсы различных типов: МСА, ISA и EISA. Некоторые платы РСI могут использоваться в системах на различных платформах.
Основой управления всеми передачами данных на PCI служат три сигнала:
• FRAME# ведётся задатчиком для отображения конца запроса.
• IRDY# ведётся задатчиком, позволяя вызывать циклы ожидания.
• TRDY# ведётся исполнителем, позволяя ему вызывать циклы ожидания.
Таблица 2.3 – Сигналы интерфейса PCI
Сигнал | Характеритика |
AD[31:0] | Address/Data — мультиплексированная шина адреса/данных. В начале транзакции передается адрес, в последующих тактах —данные |
С/ВЕ[3:0] | Command/ByteEnable — команда/разрешение обращения к байтам. Команда, определяющая тип очередного цикла шины, задается четырехбитным кодом в фазе адреса |
PAR | Parity — общий бит паритета для линий AD[31:0] и С/ВЕ[3:0]. Контроль осуществляется по четности |
FRAME | Кадр. Введением сигнала отмечается начало транзакции (фаза адреса), снятие сигнала указывает на то, что последующий цикл передачи данных является последним в транзакции. |
IRDY | InitiatorReady — готовность ведущего устройства к обмену данными |
TRDY | TargetReady — готовность ЦУ к обмену данными |
STOP | Запрос ЦУ к ведущему устройству на остановку текущей транзакции |
LOCK | Сигнал захвата шины. Используется для установки обслуживания и освобождения захвата ресурса на шине PCI |
IDSEL | InitializationDeviceSelect — выбор устройства в циклах конфигурационного считывания и записи |
DEVSEL | Select — устройство выбрано (ответ ЦУ на адресованную к нему транзакцию) |
REQ | Request — запрос от ведущего устройства на захват шины |
GNT | Grant — предоставление ведущему устройству управления шиной |
PERR | ParityError — сигнал об ошибке паритета (для всех циклов, кроме специальных). Вырабатывается любым устройством, обнаружившим ошибку |
SERR | SystemError — системная ошибка. Ошибка паритета адреса данных в специальном цикле или иная катастрофическая ошибка, обнаруженная устройством. Активизируется любым устройством PCI и вызывает NMI |
CLK | Clock — тактовая частота шины. |
RST | Reset — сброс всех регистров в начальное состояние |
INTA-INTD | Сигналы запроса прерываний, активный уровень — низкий |
Для облегчения процессов инициализации и конфигурации устройств на шине PCI, спецификация PCI поддерживает режим авто конфигурации, называемый режимом Plug and Play. Это существенно упрощает работу по подключению к компьютеру новых устройств.
Шина PCI имеет две команды конфигурации: чтения и записи из адресного пространства конфигурации, емкость которого 256 байт.
Основной механизм шинных передач на PCI это "пакет". Пакет состоит из адресной фазы и одной или более фазы данных. PCI поддерживает пакеты и в пространстве памяти и в пространстве ввода/вывода.
Можно сделать вывод, для того чтобы передавать группу битов, используются два основных подхода к организации интерфейса: параллельный интерфейс — для каждого бита передаваемой группы используется своя сигнальная линия (обычно с двоичным представлением), и все биты группы передаются одновременно за один квант времени. Примеры: параллельный порт подключения принтера (LPT-порт, 8 бит), интерфейс ATA/ATAPI (16 бит), SCSI (8 или 16 бит), шина PCI (32 или 64 бита);
§ последовательный интерфейс — используется лишь одна сигнальная линия, и биты группы передаются друг за другом по очереди; на каждый из них отводится свой квант времени (битовый интервал). Примеры: последовательный коммуникационный порт (COM-порт), последовательные шины USB и FireWire, PCI Express, интерфейсы локальных и глобальных сетей.
На первый взгляд организация параллельного интерфейса проще и нагляднее и этот интерфейс обеспечивает более быструю передачу данных, поскольку биты передаются сразу пачками. Очевидный недостаток параллельного интерфейса — большое количество проводов и контактов разъемов в соединительном кабеле (по крайней мере по одному на каждый бит). Отсюда громоздкость и дороговизна кабелей и интерфейсных цепей устройств, с которой мирятся ради вожделенной скорости. У последовательного интерфейса приемопередающие узлы функционально сложнее, зато кабели и разъемы гораздо проще и дешевле. Понятно, что на большие расстояния тянуть многопроводные кабели параллельных интерфейсов неразумно (и невозможно), здесь гораздо уместнее последовательные интерфейсы.
Заключение
В курсовой работе дана характеристика и сделан анализ аппаратных интерфейсов.
Аппаратный интерфейс: сетевое взаимодействие – соединение между ПК (ноутбуком, нетбуком и т.д.) и сетью (локальной или Интернетом). Связь через сетевой шлюз - локальная сеть подключается к более крупной сети. Компьютерная шина – то есть своего рода коммутатор внутри отдельно взятого электронного устройства.
Аппаратный интерфейс – совокупность алгоритмов обмена и технических средств, обеспечивающих обмен между устройствами. В семиуровневой сетевой модели OSI аппаратный интерфейс соответствует физическому и частично канальному уровню, которые определяют физическую и логическую организацию аппаратного интерфейса.
Одной из характеристик аппаратных интерфейсов является разрядность слова данных, которая позволяет делить интерфейсы на последовательные, последовательно-параллельные и параллельные. От этой характеристики зависит стоимость аппаратуры и кабельного соединения, а также производительность интерфейса, его помехозащищенность. Последовательный интерфейс предполагает для передачи данных в одном направлении единственную сигнальную линию, по которой информационные биты передаются друг за другом последовательно.
Примеры последовательных интерфейсов: RS-232, SPI, I 2 C.
В параллельном интерфейсе для передачи данных в одном направлении используется несколько линий (8, 16, 24, 32, 64). Примеры параллельных интерфейсов: ISA, ATA, SCSI, PCI, IEEE 1284/Centronics. С понятием параллельного интерфейса соседствуют такие понятия, как шина и магистраль.
Последовательный интерфейс является одним из наиболее ранних интерфейсов обмена данными, но, несмотря на это, он до сих пор является одним из самых распространенных. Это обусловлено его относительной простотой в реализации, надежностью, доступностью оборудования.
Широкое распространение параллельных интерфейсов связано с состоянием развития элементной базы в последней трети XX века. Тогда большая часть изделий базировалась на микросхемах малой и средней степени
интеграции. Более простая реализация параллельного интерфейса по сравнению с последовательным выливалась в улучшение технических и экономических характеристик изделия.