- •Электронный конспект лекций по курсу «Системы ввода - вывода и интерфейсы»
- •Глава 1. Основные принципы построения систем ввода-вывода и интерфейсов
- •1.1. Роль и место систем ввода-вывода и интерфейсов в компьютере
- •1.2. Основные принципы организации передачи информации в вычислительных системах
- •1.3. Компьютерные коммуникации и интерфейсы
- •1.4. Системные интерфейсы и шины расширения
- •1.5. Интерфейсы периферийных устройств
- •1.6. Структура систем ввода-вывода
- •1.7. Основные функции и принципы построения интерфейсов
- •1.8. Протоколы передачи данных в компьютерных интерфейсах
- •1.8.1. Алгоритмы протоколов передачи данных
- •1.8.2. Протокол параллельных интерфейсов
- •1.8.3. Протоколы последовательных интерфейсов
- •1.8.4. Принципы взаимодействия шин расширения и интерфейсов периферийных устройств
- •Глава 2. Шины расширения
- •2.1. Шина isa
- •2.1.1. Введение
- •2.1.1.1. Виды устройств, работающие на шине isa
- •2.1.1.1. Виды устройств, работающие на шине isa
- •2.1.2. Характеристики задатчиков на шине
- •2.1.2.2. Контроллер пдп
- •2.1.2.3. Внешняя плата
- •2.1.2.4. Режимы прямого доступа к памяти или к устройствам ввода/вывода
- •2.1.2.5. Режим сброса
- •2.1.2.6. Контроллер регенерации памяти
- •2.1.3. Общее описание шины isa
- •2.1.3.2. Адресное пространство для устройств ввода/вывода
- •2.1.3.3. Структура прерываний
- •2.1.3.4. Перестановщик байтов
- •2.1.4. Описание сигналов на шине isa
- •2.1.4.2. Командные сигналы
- •2.1.4.3. Центральные сигналы управления
- •2.1.4.4. Сигналы прерывания
- •2.1.4.5. Сигналы режима пдп
- •2.1.4.6. Питание
- •2.1.5. Циклы шины
- •2.1.5.1. Цикл Доступа к Ресурсу
- •2.1.5.1.1. Цикл Доступа к Ресурсу - 0 тактов ожидания
- •2.1.5.1.2. Цикл Доступа к Ресурсу - Нормальный цикл
- •2.1.5.1.3. Цикл Доступа к Ресурсу - Удлиненный цикл
- •2.1.5.2. Цикл Регенерации - Введение
- •2.1.5.2.1. Цикл Регенерации - Нормальный цикл
- •2.1.5.2.2. Цикл Регенерации - Удлиненный цикл
- •2.1.5.3. Цикл пдп
- •2.1.5.3.1. Цикл пдп - Нормальный цикл
- •2.1.5.3.2. Цикл пдп - Удлиненный цикл
- •2.1.5.4. Цикл Захвата Шины
- •2.2. Шина pci
- •2.2.1. Архитектура шины pci
- •2.2.2. Описание сигналов шины
- •2.2.3. Команды шины
- •2.2.4. Разновидности операций на шине
- •2.2.4.1. Начало и продолжение транзакции
- •2.2.4.2. Окончание транзакции
- •2.2.4.3. Способы завершения транзакций
- •2.2.4.4. Цикл чтения
- •2.2.4.5. Цикл записи
- •2.2.4.6. Арбитрация
- •2.2.4.7. Цикл конфигурации
- •2.3. Шина 3gio и Hyper Transport
- •2.3.1.1. Архитектура 3gio
- •2.3.2.1. Топологии
- •2.3.2.2. Совместимость с шиной pci
- •Глава 3. Интерфейсы периферийных устройств
- •3.1. Параллельный интерфейс: lpt-порт
- •3.1.1. Интерфейс Centronics
- •3.1.2. Традиционный lpt-порт
- •3.1.3. Функции bios для lpt-порта
- •3.1.4. Стандарт ieee 1284-1994
- •3.1.5. Физический и электрический интерфейс
- •3.1.6. Режим ерр
- •3.1.7. Режим еср
- •3.1.8. Конфигурирование lpt-портов
- •3.1.9. Использование параллельных портов
- •3.1.10. Параллельный порт и РпР
- •3.2. Последовательные интерфейсы: com-порт
- •3.2.1. Интерфейс rs-232с
- •3.2.2. Электрический интерфейс
- •3.2.3. Управление потоком передачи
- •3.2.4. Микросхемы асинхронных приемопередатчиков
- •3.3. Интерфейс scsi
- •3.3.1.2.1. Краткий обзор многочисленных разновидностей scsi.
- •3.3.1.2.2. Основные отличия scsi-2 от scsi-1
- •3.3.1.2.3. Быстрее, выше, сильнее
- •3.3.1.4. Совместимость устройств scsi
- •3.3.2. Описание сигналов
- •3.3.2.1. Физический интерфейс
- •3.3.2.2. Фазы шины
- •3.3.2.1. Физический интерфейс
- •3.3.2.2. Фазы шины
- •3.3.3. Описание сообщений и управление интерфейсом
- •3.3.4. Описание команд
- •3.3.4.1. Адресация и система команд
- •3.3.4.2. Выполнение команд
- •3.3.4.1. Адресация и система команд
- •3.3.4.2. Выполнение команд
- •3.3.5. Типы пу
- •3.3.5.1. Устройства прямого доступа (0)
- •3.3.5.2. Устройства последовательного доступа (1)
- •3.3.5.3. Принтеры (2)
- •3.3.5.4. Процессорными устройствами (3)
- •3.3.5.5. Устройства однократной записи (4)
- •3.3.5.6. Приводы cd-rom (5)
- •3.3.5.7. Сканеры (6)
- •3.3.5.8. Устройства оптической памяти (7)
- •3.3.5.9. Устройства смены носителей (8)
- •3.3.5.10. Коммуникационные устройства (9)
- •3.3.6. Конфигурирование устройств scsi
- •3.3.6.1. Хост-адаптер scsi
- •3.3.6.1. Хост-адаптер scsi
- •3.4. Интерфейс usb
- •3.4.1. Общая информация
- •3.4.2. Обзор архитектурыch2
- •3.4.2.1. Структура системы usb
- •3.4.2.1.1. Топология шины
- •3.4.2.2. Устройства usb
- •3.4.2.2.2. Функция
- •3.4.2.3. Физический интерфейс
- •3.4.2.3.1. Электрические характеристики
- •3.4.2.3.2. Механические характеристики
- •3.4.3. Модель передачи данныхch3
- •3.4.3.1. Конечные точки устройств usb
- •3.4.3.2. Каналы
- •3.4.3.2.1. Потоки
- •3.4.3.2.2. Сообщения
- •3.4.3.3. Типы передачи данных
- •3.4.4. Протоколch4
- •3.4.4.1. Форматы полей пакетов
- •3.4.4.1.1. Поле синхронизации
- •3.4.4.1.2. Поле идентификатора пакета
- •3.4.4.2.2. Маркер начала кадра (sof)
- •3.4.4.2.3. Пакет данных
- •3.4.4.2.4. Пакет подтверждения
- •3.4.4.3. Типы транзакций
- •3.4.4.3.1. Сплошные передачи
- •3.4.4.3.2. Управляющие посылки
- •3.4.4.3.3. Прерывания
- •3.4.4.3.4. Изохронные передачи
- •4.1.1.1.Структурная схема таймера
- •4.1.1.2. Назначение входов и выходов бис
- •4.1.1.3. Назначение блоков и сокращения, используемые в окне иммитационной модели таймера
- •4.1.2. Программирование таймера
- •4.1.3. Режимы работы таймера
- •4.1.3.1. Режим 0 - прерывание терминального счета
- •4.1.3.2. Режим 1 - программируемый ждущий мультивибратор
- •4.1.3.3. Режим 2 - импульсный генератор частоты
- •4.10. Функционирование таймера в режиме 2
- •4.1.3.4. Режим 3- генератор меандра
- •4.11. Функционирование таймера в режиме 3
- •4.1.3.5. Режим 4 - программно-формируемый строб
- •4.1.3.6. Режим 5 - аппаратно-формируемый строб
2.2.3. Команды шины
в начало
Команды шины передаются в фазе адреса по линиям С/ВЕ[3::0]#. Они дешифрируются исполнителем и выполняются в соответствии с таблицей.
Все устройства должны (в качестве исполнителя) отвечать на команды конфигурации. Другие команды являются для них дополнительными и применяются по мере необходимости. Если используются команды работы с памятью, должны поддерживаться все их типы.
Все передачи данных осуществляются с использованием трех сигналов: FRAME#, TRDY#, IRDY#. Фаза адреса инициируется по фронту синхросигнала при возбуждении сигнала FRAME#, затем по следующим фронтам синхросигнала выполняются одна, две или несколько фаз передачи данных. Данные передаются при одновременном действии сигналов IRDY# и TRDY#, Если хотя бы один из них находится в пассивном состоянии, вставляются такты ожидания.
Шина поддерживает два способа декодирования адресов: позитивный (каждое устройство имеет свой дешифратор адреса) и вычитающий (может применяться только одним устройством). В последнем случае устройство участвует во всех операциях обмена, "не опознанных" остальными устройствами. Это более медленный способ декодирования, но в некоторых случаях он может быть полезен. Он используется при построении стандартных шин расширения (например, ISA), которые должны "откликаться" на обращения к сильно фрагментированному адресному пространству.
В спецификации РСI определено три адресных пространства: памяти, устройств ввода-вывода и регистров конфигурации (последнее применяется для настройки устройств РСI).
Основным режимом передачи данных по шине РСI является монопольный, поддерживаемый для памяти и устройств ввода-вывода. При необходимости главный мост, расположенный между процессором и шиной, может объединять циклы записи в память в одну блочную последовательность.
Инициируемые процессором циклы обращения к устройствам ввода-вывода, как правило, выполняются в виде одиночных фаз передачи данных. Все сигналы запоминаются по срезу синхроимпульса.
C/BE[3::0]# |
Команда |
0000 |
Подтверждение прерывания |
Обеспечивает чтение вектора прерывания из неявно адресуемого контроллера прерываний | |
0001 |
Специальный цикл |
Обеспечивает простой механизм передачи сообщений всем устройствам шины. | |
0010 |
Чтение из порта ввода-вывода |
Чтение из пространства адресов ввода/вывода шины PCI. | |
0011 |
Запись в порт ввода-вывода |
Запись в пространство адресов ввода/вывода шины PCI. | |
0100 |
Резервная |
Исполнитель не должен отвечать на коды резервных команд. При выдаче резервных команд текущая операция аварийно завершается задатчиком. | |
0101 |
Резервная |
Исполнитель не должен отвечать на коды резервных команд. При выдаче резервных команд текущая операция аварийно завершается задатчиком. | |
0110 |
Чтение из памяти |
Чтение из пространства адресов памяти шины PCI. | |
0111 |
Запись в память |
Запись в пространство адресов памяти шины PCI. | |
1000 |
Резервная |
Исполнитель не должен отвечать на коды резервных команд. При выдаче резервных команд текущая операция аварийно завершается задатчиком. | |
1001 |
Резервная |
Исполнитель не должен отвечать на коды резервных команд. При выдаче резервных команд текущая операция аварийно завершается задатчиком. | |
1010 |
Чтение конфигурации (каждого агента) |
Чтение из конфигурационного пространства адресов шины PCI для каждого объекта. | |
1011 |
Запись конфигурации (в область конфигурации каждого агента) |
Запись в конфигурационное пространство адресов шины PCI в область конфигурации каждого объекта. | |
1100 |
Множественное чтение из памяти |
Выполняется аналогично чтению из памяти, но указывает, что задатчик может считывать более одной строки данных из кэш-памяти, прежде чем завершит блочную передачу данных. | |
1101 |
Двойной адресный цикл |
Используется для передачи 64-разрядного адреса в устройство, поддерживающие 64-разрядную адресацию. | |
1110 |
Линейное чтение из памяти |
Выполняется аналогично чтению из памяти, но указывает, что задатчик намеревается выполнить более двух фаз 32-разрядной передачи данных по шине. | |
1111 |
Запись в память и прекращение операции |
Выполняется аналогично записи в память, но указывает, что задатчик намеревается записать все байты в пределах адресуемой строки кэш-памяти посредством одной блочной передачи. |