- •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
1.2.3 Процессор ввода-вывода
В вычислительной технике под процессором понимается устройство обработки информации. Несмотря на то, что в основе современных процессоров могут лежать различные модели вычислений исторически сложилось так, что чаще всего используется модель на базе машины Фон- Неймана.
Рис. 3. Структура процессора ввода-вывода Intel 80333
В отличии от обычного процессора, процессор ввода-вывода предназначен для работы в рамках системы ввода-вывода с целью увеличения производительности системы. Увеличение производительности происходит за счет разгрузки центрального процессора и организации параллельной работы СВВ и основного процессора.
20
В качестве примеров процессоров ввода-вывода можно представить: Сетевой контроллер.
Контроллер жесткого диска.
В качестве примера процессора ввода-вывода можно рассмотреть Intel
80333. В состав этого процессора входит:
Ядро Intel XScale. Контроллер памяти. Контроллер UART. Контроллер I2C. Контроллер DMA. Таймеры.
Мосты PCIe – PCI-X.
Контроллер и арбитр периферийной шины. Контроллер прерываний.
Порты ввода-вывода (GPIO).
Для сравнения, в большинстве современных микроконтроллеров (таких например, как Freescale Coldfire V2 или NXP LPC1700) выделенного процессора ввода-вывода нет, а есть только контроллеры ввода-вывода.
8. Общая характеристика интерфейсов Wishbone и AMBA.
Шина Wishbone-параллельная компьютерная шина для объединения модулей в системе на кристалле. Шина широко используется в проектах цифровых систем с открытым исходным кодом.
ширина шин адреса и данных: 8, 16, 32, 64 бит
тип шины: параллельная
внутренняя шина, используется только для соединения модулей на кристалле
нет возможности «горячего» подключения
Гранулярность: 8,16 бит
Есть коррекция ошибок
Поддерживает handshake-протокол,для регулировки скорости обмена данными каждым IP-блоком
Возможность работы в режиме мультимастера
Синхронный дизайн
Независима от способа описания аппаратуры:Verilog,VHDL или графический
CLK_I(Сигнал синхронизации)
RST_I(Синхронный сброс).
ADR_O(Шина адреса).
DAT_I, DAT_O(Шины данных)
WE_O(Управляющий сигнал ведущего модуля)
SEL_O(Управляющая шина)
STB_O(Строб операции).
ACK_I, ACK_O(Оповестительный сигнал).
CYC_O(Оповестительный сигнал).
TAGN_O, TAG_I(вспомогательные шины)
Топологии
point-to-point(точка-точка);
shared bus(общая шина);
crossbar;
data flow interconnection (pipeline);
off-chip interconnection.
Плюсы
wishbone ялвяется Opensource(общедоступные коды и тд) поэтому может использоваться с FPGA или ASIC
Есть большое кол-во IP с открытм кодом совместимых с интерфейсами wishbone
Простое, но гибкое определение позволяет разработчикам менять сложность на производительность, в прирост последней.
Минусы
Соединение wishbone представляет собой синхронную схему. Поэтому не может поддерживать обрабатывающее ядро (ядро процессора) с отличающейся частотой.
Wishbone орпделеяет два типа взаимодействующих, главный и зависимый. Интерфейс ДОЛЖЕН быть или главным или зависимым. Главный всегда начинает операции, такие как запросы для чтения или записи. Зависимый всегда отвечает на запросы. Связь может быть осуществлена только между главным и зависимым, но не может быть осуществлена между одинаковыми взаимодействующими.
2 СЛАЙД.
Wishbone проектировалась для обеспечения как можно более гибкого объединения различных IP-блоков между собой. Wishbone является интерфейсом общего назначения, что означает, что она предназначена просто для передачи данных между модулями и неважно, что это за данные и как они будут дальше обрабатываться внутри модуля.
В спецификации на шину присутствуют специальные требования к документации на модули, которые используют Wishbone. Каждый подобный модуль должен иметь специальный datasheet, в котором описаны параметры шины, все дополнительные сигналы и способы обмена данными. Это упрощает использование готового модуля другим разработчиком.
4 СЛАЙД.
CLK_I Сигнал синхронизации. Все операции считывания данных происходят по переднему фронту этого сигнала.
RST_I Синхронный сброс. По высокому уровню этого сигнала элементы памяти интерфейсов сбрасываются в начальное состояние.
ADR_O Шина адреса. Может быть 8, 16, 32 или 64 бит. Разрядность определяется объемом адресуемой памяти.
DAT_I, DAT_O Шины данных. Могут быть 8, 16, 32 или 64 бит.
WE_O Управляющий сигнал ведущего модуля, который определяет тип операции с ведомым модулем: чтение (низкий уровень) или запись (высокий).
SEL_O Управляющая шина, которая определяет, какой из байт должен быть считан в шине данных.
STB_O Строб операции. Ведомый интерфейс выполняет операции только если этот сигнал установлен в высокий уровень.
ACK_I, ACK_O Оповестительный сигнал. Установив этот сигнал в высокий уровень, ведомое устройство подтверждает, что данные были успешно прочитаны или записаны. Ведущее устройство может снять строб операции и завершить цикл или приступить к следующей операции записи/чтения.
CYC_O Оповестительный сигнал. Установив этот сигнал в высокий уровень, ведущее устройство сообщает, что начат цикл записи или чтения с ведомым устройством.
TAGN_O, TAG_I Вспомогательные шины, которые могут использоваться, например, для передачи знаков четности, или других управляющих команд между ведущим и ведомым устройствами. Необязательные сигналы.
5 СЛАЙД.
Способы соединения IP-блоков. Wishbone поддерживает следующие топологии, схемы которых приведены на рисунках.(слайды 6,7,8)
9 СЛАЙД.
Все виды циклов передачи данных используют протокол handshaking (протокол рукопожатие), который в свою очередь делится на 2 вида
• Стандартный протокол Wishbone;
• Pipelined протокол.
В стандартном протоколе, мастер выставляет сигнал STB_O, когда он готов передавать данные. Этот сигнал должен быть выставлен вместе с сигналом CYC_O и он должен держаться до тех пор, пока не придет один из сигналов завершения цикла передачи от slave’а.
Причем, сигнал завершения от slave’а может прийти как асинхронно, так и синхронно.
10. СЛАЙД.
Pipelined протокол
Данный протокол используется вместе с data flow interconnection топологией. Здесь, помимо уже рассмотренных сигналов, используется сигнал STALL, выдаваемый на шину slave’ом.
Мастер, в отличие от стандартного протокола, не ждет выставления сигнала ACK, чтобы завершить одну передачу данных и начать следующую. Он просто выдает сигналы друг за другом, до тех пор, пока сигнал STALL находится в нулевом состоянии. Как только данный сигнал становится активным, значит slave не успевает и мастер должен его подождать.
