- •1. Общие принципы организации системы ввода-вывода.
- •1.3.1 Организация свв универсальных эвм
- •1.3.2 Организация свв управляющих эвм
- •1.3.2.1 Порты ввода-вывода
- •1.3.2.2 Дискретные порты ввода-вывода
- •1.3.2.3 Однонаправленные порты
- •1.3.2.4 Двунаправленные порты и порты с альтернативной функцией
- •1.3.2.5 Аналого-цифровой преобразователь
- •1.3.2.6 Цифро-аналоговый преобразователь
- •1.3.2.7 Устройства сопряжения с объектом (усо) управляющих эвм
- •3 Аппаратные интерфейсы вычислительных систем
- •3.1 Характеристики аппаратных интерфейсов
- •3.2 Функции аппаратных интерфейсов
- •3.3 Классификация аппаратных интерфейсов
- •1.2.1 Процессор и память
- •1.2.2 Контроллер ввода-вывода
- •1.2.3 Процессор ввода-вывода
- •3.6 Внутрисистемный интерфейс amba
- •3.6.1 Внутрисистемный интерфейс amba ahb
- •3.6.2 Системный интерфейс amba asb
- •3.6.3 Периферийный интерфейс amba apb
- •3.3 Классификация аппаратных интерфейсов
- •3.7 Системные интерфейсы
- •3.7.1 Интерфейс pci
- •3.7.2 Интерфейс pci Express
- •3.9 Малые периферийные интерфейсы
- •3.9.1 Интерфейс rs-232
- •3.9.1.1 Сигнальные линии последовательного интерфейса
- •3.9.1.2 Управление потоком
- •3.9.1.3 Разъемы и кабели
- •3.9.1.4 Формат последовательной передачи данных
- •3.9.1.5 Работа с последовательным каналом
- •3.9.2 Интерфейс spi
- •3.9.2.1 Типы подключения к шине spi
- •3.9.2.2 Режимы работы шины spi
- •3.9.2.3 Достоинства шины spi
- •3.9.2.4 Недостатки шины spi
- •3.9.3 Интерфейс Centronics
- •3.9.4 Интерфейс sata
- •3.9.4.1 Физический интерфейс Serial ata
- •3.5.7 Приемопередатчик последовательного интерфейса
- •3.5.8 Особенности параллельных интерфейсов
- •1.3.2.7 Устройства сопряжения с объектом (усо) управляющих эвм
- •1.3.2.1 Порты ввода-вывода
- •1.3.2.2 Дискретные порты ввода-вывода
- •1.3.2.3 Однонаправленные порты
- •1.3.2.4 Двунаправленные порты и порты с альтернативной функцией
- •3.10.3.6 Синхронизация
- •3.9.2 Интерфейс spi
- •3.9.2.1 Типы подключения к шине spi
- •3.9.2.2 Режимы работы шины spi
- •3.9.2.3 Достоинства шины spi
- •3.9.2.4 Недостатки шины spi
- •3.10.3Интерфейс i2c
- •3.10.3.1 Концепция шины i2c
- •3.10.3.2 Реализация монтажного и и монтажного или
- •3.10.3.3 Принцип работы шины i2c
- •3.10.3.4 Сигналы старт и стоп
- •3.10.3.5 Подтверждение
- •3.10.3.6 Синхронизация
- •3.10.3.7 Форматы обмена данными по шине i2c (7-битный адрес)
- •3.10.3.8 Арбитраж
- •3.10.3.9 Достоинства шины i2c
- •3.10.4Интерфейс usb
- •3.10.4.1 Модель передачи данных
- •3.10.4.2 Протокол
- •1.3.2.5 Аналого-цифровой преобразователь
- •1.3.2.6 Цифро-аналоговый преобразователь
- •3.5.10Устройства гальванической изоляции в аппаратных интерфейсах
- •3.5.10.1 Dc/dc преобразователи
- •3.5.10.2 Реализация гальванической изоляции дискретного выхода модуля ввода-вывода sdx-09
- •3.5.10.3 Реализация гальванической изоляции дискретного входа модуля ввода-вывода sdx-09
- •3.5.10.4 Реализация гальванической изоляции rs-232 в контроллере
- •3.5.10.5 Технология iCoupler фирмы Analog Devices
3 Аппаратные интерфейсы вычислительных систем
3.1 Характеристики аппаратных интерфейсов
Аппаратные интерфейсы определяются двумя уровнями описания: логическая и физическая организация. Логическая организация: группы взаимодействующих объектов, характер взаимодействия, адресное пространство, система команд, информация о состоянии объектов, фазы в работе интерфейса, форматы данных, набор процедур по реализации взаимодействия и последовательность их выполнения для различных режимов функционирования. Физическая организация интерфейса определяется электрической и конструктивной совместимостью сопрягаемых устройств.
Под электрической совместимостью понимается согласованность статических и динамических параметров электрических сигналов в системе соединительных линий интерфейса с учетом ограничений на пространственное размещение частей интерфейса и техническую реализацию приемопередающих блоков интерфейса. Условия электрической совместимости определяют [63]:
Тип приемопередающих элементов.
Состав линий и схема их согласования.
Соотношения между логическими и электрическими состояниями сигналов и пределы их изменения.
Коэффициенты нагрузочной способности приемопередающих элементов и значения допустимой емкостной и резистивной нагрузки линии в устройстве.
Допустимую длину линии и порядок подключения линий к соединительным элементам (разъемам).
Требования к источникам и цепям электрического питания. Требования по помехоустойчивости и заземлению.
Конструктивная совместимость – согласованность конструктивных элементов интерфейса, предназначенных для обеспечения механического контакта электрических соединений и механической замены схемных элементов, блоков и устройств [63].
Условия совместимости определяют:
Типы соединительных элементов (разъем, штекер, распределение соединительных линий внутри соединительного элемента).
Конструкцию платы, каркаса, стойки.
Конструкцию кабельного соединения.
68
К основным характеристикам аппаратных интерфейсов относятся:
1. Скорость передачи (пропускная способность, производительность).
2. Протяжѐнность.
3. Тип сопрягаемых устройств вычислительной системы (см. следующий раздел).
4. Топология.
5. Разрядность слова данных (последовательный или параллельный интерфейс).
6. Синхронный или асинхронный интерфейс.
7. Симплексный, полудуплексный, дуплексный обмен.
Производительность оценивается количеством информации (полезной), передаваемой в секунду. Избыточная информация может достигать 90%. Производительность связана с понятием тактовой частоты. Также на неѐ влияет разрядность шины данных.
Протяжѐнность связана и влияет на производительность интерфейса,
определяется типом сопрягаемых устройств вычислительной системы.
По топологии выделяют: Радиальные интерфейсы. Шинные интерфейсы (моноканал). Цепочечные интерфейсы. Кольцо.
Интерфейсы со сложной топологией (каждый с каждым, произвольная топология, гиперкуб и т.д.).
При радиальной топологии происходит соединение двух устройств (соединение типа «точка-точка») и более (топология «звезда»). При этом способе соединения устройств вычислительной системы имеется главный модуль, с которым связаны все остальные, и они могут взаимодействовать между собой только через главный модуль, что также снижает производительность, но меньше, чем при магистральном способе. Такой способ соединения эффективен для соединения модулей, которые в основном работают только с главным. Достоинство – простота каналов и протоколов связи каждого модуля (RS-232, Centronics), что позволяет увеличивать их длину намного больше, чем у магистральных. Радиальный способ позволяет к одному разъему подключать всего одно ПУ или, при соответствующей организации канала, несколько ПУ. Этот способ также нашел широкое применение в компьютерах.
Топология моноканал (общая шина) используется при соединении двух и более устройств. В такой топологии требуется система адресации и синхронизации (арбитраж, система доступа). Достоинства: возможность расширения (простая) теоретически до бесконечности, практически
69
ограничивается системой адресации и характеристиками электрических элементов, экономия ресурсов технических средств, в первую очередь, линий связи. Недостатки: невысокая производительность, так как все модули делят магистраль между собой, а высокоскоростные магистрали все же дороги и могут быть реализованы только при их ограниченной длине.
Цепочечное соединение обладает рядом полезных свойств: можно использовать узлы как усилители и тем самым увеличивать суммарную протяжѐнность интерфейса; можно обеспечить параллельную работу не перекрывающихся сегментов. Часто используются комбинации моноканала и цепочки. К недостаткам цепочечных интерфейсов можно отнести замедление передачи сигнала по мере увеличения количества узлов.
Кольцевой интерфейс является гибридом шинной топологии и цепочечной. Совмещает в себе достоинства шины и цепочки. За счет дополнительного пути обхода обладает более высокой надежностью, чем шина.
Интерфейсы со сложной топологией используются тогда, когда есть необходимость в дополнительных (резервных) каналах связи с целью увеличения надежности или производительности. Интерфейсы со сложной топологией можно встретить в глобальных сетях (Интернет), в многопроцессорных вычислительных системах (суперЭВМ) и в беспроводных сенсорных сетях. В интерфейсах со сложной топологией на первое место выходит проблема маршрутизации сообщений и организация системы приоритетов.
Одной из характеристик аппаратных интерфейсов является разрядность слова данных, которая позволяет делить интерфейсы на последовательные, последовательно-параллельные и параллельные. От этой характеристики зависит стоимость аппаратуры и кабельного соединения, а также производительность интерфейса, его помехозащищенность. Последовательный интерфейс предполагает для передачи данных в одном направлении единственную сигнальную линию, по которой информационные биты передаются друг за другом последовательно. При этом скорость изменения передатчиком состояния линии должна равняться скорости распознавания состояний приемником. Эта скорость измеряется в бодах (baud) – количестве изменений состояния линии за одну секунду. В простейшем случае в линии имеется всего два состояния сигнала, т.е. одним состоянием кодируется один бит, и тогда скорость изменения состояния в бодах совпадает со скоростью передачи двоичной информации, определяемой количеством передаваемых за секунду бит информации, bps (bits per second, бит/с). Однако, при использовании других методов модуляции возможны несколько состояний сигнала, что позволяет одним состоянием кодировать сразу несколько передаваемых бит, и здесь скорость передачи данных bps превышает скорость изменения сигнала baud. Примеры последовательных интерфейсов: RS-232, SPI,
I2C.
70
В параллельном интерфейсе для передачи данных в одном направлении используется несколько линий (8, 16, 24, 32, 64). Примеры параллельных интерфейсов: ISA, ATA, SCSI, PCI, IEEE 1284/Centronics. С понятием параллельного интерфейса соседствуют такие понятия, как шина и магистраль.
Шина – совокупность линий, сгруппированных по функциональному назначению (например, шина адреса, шина данных и т.д.).
Магистраль – совокупность всех линий аппаратного интерфейса. Выделяются две магистрали: информационного канала и управления информационным каналом. По информационной магистрали передаются коды адресов, команд, данных, состояния. Аналогичные наименования имеют соответствующие шины интерфейса.
Шины адреса предназначены для выборки в магистрали узлов устройства, ячеек памяти. Для логической адресации в основном используется двоичный код. В некоторых интерфейсах применяется позиционное или географическое кодирование, при котором каждой позиции (месту) выделяется отдельная линия выборки. В этом случае используется термин «географическая адресация».
Шины данных используются для передачи в основном двоичных кодов. Как правило, в параллельных интерфейсах шины данных кратны байту (8, 16,
24, 32 разряда).
Шины состояния используются для передачи сообщений, описывающих результат операции на интерфейсе или состояния устройств сопряжения. Коды формируются в ответ на действие команд или отображают состояние функционирования устройств, таких как готовность, занятость, наличие ошибки и т. д. В наиболее стандартизованных интерфейсах разряды состояния унифицированы для любых типов устройств, в других – носят рекомендательный характер или отсутствуют.
В большинстве параллельных интерфейсов коды адресов, данных, команд, состояний передаются по шинам интерфейса в режиме временного мультиплексирования сигнала по одним и тем же линиям с использованием дополнительных линий идентификации типа передаваемой информации. В таком случае их называют последовательно-параллельными интерфейсами. При этом существенно сокращается число линий информационной магистрали, однако происходит снижение быстродействия передачи информации.
Магистраль управления информационным каналом по функциональному назначению делится на следующие шины: управления обменом, передачи управления, прерывания, управления режимом работы, специальных сигналов.
Шина управления включает в себя линии синхронизации передачи информации. В зависимости от используемого принципа обмена (синхронного, асинхронного) число линий может меняться. Кроме того, данная шина используется для управления операциями на магистрали. По функциональному назначению различают следующие команды: адресации, управления обменом информацией, изменения состояния и режимов работы. Адресные команды
71
используются для задания режимов адресации: вторичной, широковещательной, групповой и т.п. Наиболее распространенными командами являются: чтение, запись, конец передачи, запуск.
Шины передачи управления используется для реализации операций приоритетного занятия магистрали информационного канала (арбитража ресурсов шины).
Шина прерывания применяется в основном в системных интерфейсах. Устройство идентифицируется либо адресом источника прерывания, либо адресом программы обслуживания прерывания, так называемым вектором прерывания.
Шины управления режимом работы и специальных управляющих сигналов содержат линии, обеспечивающие работоспособность интерфейса, в том числе приведение устройств в исходное состояние, контроль источников питания, контроль и службу времени и т. п.
Важнейшим моментом в работе аппаратных интерфейсов является
синхронизация передачи информации.
Синхронизация – это согласование процессов взаимодействия между устройствами, заключающееся в передаче информации источником и ее приема приемником (одним или несколькими).
Существуют два основных режима синхронизации: синхронный и асинхронный.
В синхронном режиме для синхронизации используют специальную линию для передачи тактовых импульсов. Информация в канале данных считывается приемником только в те моменты, когда на линии синхронизации сигнал активный. Таким образом, смена состояний источника и приемника взаимонезависимы и выполняются через одинаковые фиксированные интервалы времени. В этом случае приемник должен успеть принять данные до момента времени, когда источник выставит новые данные. Величина фиксированного интервала времени синхронизации (τ) определяется суммой времен (Т): распространения сигнала в линии связи, распознавания его приемником и временем фиксации данных в приемнике. Если источник взаимодействует с разными приемниками, то его частота работы определяется частотой работы самого медленного устройства, включая сам источник, что естественно замедляет общий процесс передачи данных. Для надежной передачи данных необходимо выполнение условия τ > Тmax, где τ – это период следования импульсов синхронизации, задающих моменты переключения сигналов в приемнике и источнике. Реализация контроллеров синхронного аппаратного интерфейса упрощается по сравнению с другими. Второе преимущество состоит в том, что удаѐтся максимально использовать скорость передачи аппаратуры. Повышение производительности происходит из-за
72
отсутствия необходимости обратной связи (подтверждения). Недостаток –
отсутствие гибкости, необходимость использования дополнительных сигналов.
При асинхронном режиме смена состояний источника и приемника взаимозависимы, момент времени изменения состояния источника зависит от момента времени, когда приемник зафиксирует данные. Асинхронный режим реализуется с помощью обратной связи от приемника к источнику (рукопожатие, сигналы квитирования, подтверждения). В асинхронном последовательном интерфейсе RS-232 посылке очередного байта информации предшествует специальный старт-бит, сигнализирующий о начале передачи (обычно логический «0»). Затем следуют биты данных (их обычно 8), за которыми может следовать дополнительный бит (его наличие зависит от режима передачи, обычно этот бит выполняет функцию контроля четности). Завершается посылка стоп-битом (логическая «1»), длина которого (длительность единичного состояния линии) может соответствовать длительности передачи 1, 1.5 («полтора стоп-бита») или 2 бита. Стоп-бит гарантирует некоторую выдержку между соседними посылками, при этом пауза между ними может быть сколь угодно долгой (без учета понятия «тайм-аута»). Оптимальная загрузка сопрягающихся устройств.
Асинхронный режим при работе источника со многими приемниками, имеющими широкий диапазон скоростей передачи информации, обеспечивает большую общую пропускную способность, чем синхронный. Асинхронный режим не означает, что синхронизация отсутствует, при асинхронном принципе период синхронизации является переменным, а при синхронном этот период постоянен и определяется частотой работы самого медленного устройства. В асинхронных интерфейсах переключение сигналов на линиях шины не привязана к фронтам импульсов синхронизации. Эта шина позволяет гораздо проще приспособить широкое разнообразие устройств и удлинить шину без беспокойства о перекосе сигналов синхронизации и о системе синхронизации. Асинхронная шина легче масштабируется.
Если шина синхронная, то переключение всех сигналов на линиях шины производится по фронту импульсов синхронизации. Эти шины могут быть быстрыми и дешевыми. Но частота работы параллельных интерфейсов ограничивается из-за проблем перекоса сигналов на разных линиях шины, что накладывает серьезные ограничения на длину этих шин. Обычно внутрисистемные шины синхронные, системные шины (расширения) могут быть синхронные (PCI) или асинхронные (ISA). В последовательных интерфейсах такие ограничения существенно меньше.
Изохронные интерфейсы – компромиссный вариант. Работают по принципу асинхронной передачи, но все переключения привязаны к тактовой сетке (т.е. варьируются дискретно). Пример: I2C.
Следует отметить, что в синхронных и асинхронных аппаратных интерфейсах могут быть как синхронные, так и асинхронные способы передачи данных (программно управляемые, ПДП).
73
Обмен данными может быть:
Дуплексным: одновременный прием и передача данных.
Полудуплексным: данные передаются в одном направлении с возможностью смены направления.
Симплексным: данные передаются только в одном направлении.
