Внутренние шины ПК
Внутренние шины или шины расширения служат мостом между шиной процессора и входами различных устройств, расширяющих возможности компьютера - плат расширения. Связь между процессором и ШР обеспечивается посредством чипсета - набора микросхем.
В настоящее время сложилась довольно сложная иерархия шин. Поэтому, мы рассмотрим наиболее раннюю и новейшую организацию
|
ЖД ГД Дж Мышь Принтер Монитор
7.2.1. Шина ISA.
ISA (Industry Standard Architecture). Шина - асинхронная, но длительность операций в шине кратна периоду с/с.
D(0:15) - 8/16-разрядная шина данных
A(0:23) - 24/10(16)-разрядная шина адреса памяти/порта
SBHE - признак передачи байта в старших разрядах
SMWR - строб записи в 1-ый Мб
SMRD - строб чтения в 1-ый Мб
MWR - строб записи в 16 Мб
MRD - строб чтения в 16 Мб
Refr - признак регенерации памяти
MCS16 - признак 16-разрядного обращения к памяти
BALE - строб адреса
IOWR - строб записи в порт (в ВУ)
IORD - строб чтения из порта (из ВУ)
AEN - признак адресации к портам
IOCS16 - признак 16-разрядного обращения к портам
IRQ(0:15) - запросы прерываний
DRQ(0:7) - запросы каналов ПДП
DACK(0:7) - подтверждения каналов ПДП
TC - переполнение счётчика слов ПДП
MASTER - запрос на захват шины
IOCHK - признак нарушения чётности в/в
BClock - с/с шины - 8мггц
IOCHRDY - признак удлинения цикла потактно менее 15мкс
OWS - признак исключения ожиданий.
OSC - частота которая использовалась в часах
Reset - сброс
Пространство ввода -вывода.
Из анализа структуры шины следует, что всю совокупность адресов можно быть использовать следующим образом:
а) для адресации ячеек памяти (поговорим позже) и
б) для адресации внешних регистров, абонентов - портов
Забегая вперёд, заметим, что в системе команд 80Х86 имеется всего 4-е команды ввод в регистр, вывод из регистра, ввод элемента в строку памяти, и вывод элемента из строки памяти. Обмен с использованием строковых команд получил название РIО (программный ввод-вывод). Обмен может выполняться байтам, словами и двойными словами. Дешифрируется не более 16 разрядов.
Стандартно распределёнными считаются адреса с 000 до 3FF.
При программном вводе для пересылки массива N данных выполняются следующие действия:
а) данные пересылаются из порта во внутренний регистр
б) данные из регистра записываются в память
в) индекс адреса памяти модифицируется
г) шаги а,б,в повторяются N раз
Прямой доступ в память
В режиме прямого доступа к памяти процессор должен только инициализировать КПДП: записать в него начальный адрес памяти, число слов и режим. после чего освобождается. Собственно обмен производит контроллер. который имеет 7 каналов (4-байтных и 3 пословных).
Для управления отводится три 40 8р-ных порта.
В каждом канале независимо могут происходить следующие действия:
а) ВУ выдаёт запрос ...
б) КПДП отвечает и ВУ открывает шину
в) КПДП производит обмен с памятью
г) КПДП модифицирует адрес
д) шаги а) - г) повторяются пока ВУ не прекратит выдачу запросов или пока не исчерпается счётчик слов в КПДП.
Максимальная производительность ПДП в два раза ниже, чем у РIО.
Функции канала ПДП может быть реализованы и в самом ВУ. Для это-
го после подтверждения КПДП оно должно выставить запрос главного.
В этом случае оно само формирует адрес памяти и сигналы записи-чтения.
Аппаратные прерывания
Предусмотрено 15 сигналов запроса прерываний: одно немаскируемое (ошибка чётности ввода-вывода), остальные маскируемые (0 - таймер, 1 -
клавиатура, 2 - каскадирование 3,4 - СОМ,6 - КГМД, 5,7 - КПП, 8 - часы ?, 14 - КЖМД. Приоритеты убывают в следующем порядке 0,1, 8-15, 3-7.
Прерывания обслуживают два контроллера (0-7 и 8-15), каждый контроллер обслуживается двумя байтными портами: 020,021 и 0А0,0А1.
Контроллер имеет два режима работы: инициализации и операционный.
Режим инициализации включается после сброса и заключается в посылке командных слов: одного ICW1 по адресу 020(0А0) и трёх ICW(2-4) по адресу 021(0А1). В том числе засылается вектор прерываний.
В операционном режиме контроллер воспринимает команды управления:
OCW1 и OCW(2-3)-аналогично. В числе прочих операций имеется возможность управлять маскированием запросов.
7.1.2. Интерфейс АТА (Advanced Technology Attachment).
Он возник в 80 годах в качестве IDE (Integrated Drive Electronics) и применяется до сих пор.
Для подключения устройств IDE могут применяться различные интерфейсы. но наиболее распространённым является АТА (АТ Attachment) - интерфейс РС АТ.
Интерфейс АТА появился в результате переноса контроллера жёстко-
го диска непосредственно в накопитель и т.о. появления устройств IDE (Integrated Device Electronics).
Такое решение позволило повысить быстродействие и унифицировать интерфейсы различных по физической сущности накопителей.
Первоначальный интерфейс позволял подключать два ЖД (ведущий и ведомый). Сначала скорость передачи составляла 3,3Мб/сек, но потом с использованием режимов PIO и DMA была увеличена до 8,3Мб/сек. Но емкость дисков до 512Мб.
В 1993 году появился новый интерфейс EIDE (E - enhanced) или Fast ATA-2 с расширенными возможностями ( 2 канала по 2 устройства в каждом, скорость до 16.6Мб/сек, емкость дисков до 8,4Мб).
Далее последовали Ultra DMA/33 (Ultra ATA) - 33Мб/сек, Ultra DMA/66.
Для связи с контроллером из шины ISA выбрали минимальный набор
сигналов: шина данных, шина адреса и несколько сигналов управления,
часть из которых буферизуется на специальной плате - адаптере (или
входит в чипсет), старшие разряды адреса дешифрируются.
Совокупность средств сопряжения называют хост - адаптером. Компьютер - просто хост. Непременный атрибут контроллера - буферная память, позволяющая согласовать скорости: процессор - адаптер и адаптер - накопитель.
Каждый адаптер может быть подключён к двум устройствам, но обмен
может вести только с одним (поэтому устройства, между которыми должен
вестись обмен должны подключаться к разным адаптерам).
Каждое устройство имеет набор регистров:
- регистр данных
- регистр управления
- регистр состояния
- регистр команд
- регистр ошибок
- регистр номера устройства и головки
- регистр счётчика секторов
- регистр номера сектора
- регистры старшего и младшего байта номера цилиндра
///Стандарт АТА определяет и систему команд - 43 команды.
Интерфейс АТА поддерживает следующие режимы обмена
Режим PIO |
Мб/сек |
Режим DMA |
Мб/сек |
|
0 |
3,3 |
SW DMA M0 |
2,08 |
|
1 |
5,2 |
SW DMA M1 |
4,16 |
|
2 |
8,3 |
SW DMA M2 |
8,33 |
|
3 |
11.1 |
MW DMA M0 |
4,12 |
|
4 |
16 |
SW DMA M1 |
13,3 |
|
5 |
22,2 |
Ultra DMA/33* |
33 |
Режим PIO рекомендуется для однозадачных ОС, а DMA - для многозадачных.
Не рекомендуется подключать к одному адаптеру устройства с разны-
ми режимами.
Имеется несколько электрически совместимых разновидностей использования интерфейсов АТА:
- САМ АТА - обеспечивает совместимость сигналов и команд (2 уст).
- АТА-2 - с расширенными возможностями (2 канала, 4 устройства.). Режимы обмена с хостом: РIO M3, MWDMA M1 объём диска до 8Мгб.)
- Fast ATA-2 - c повышенным быстродействием ( PIO M4, MVDMA M2).
- АТА-3 с повышенной надёжностью.
- ATAPI- поддерживает минимальный набор команд АТА, а для его
расширения использует пакет команд, посылаемых хостом в устройство. Применяется для подключения накопителей компакт-дисков, стримеров и других устройств, которым недостаточно системы команд АТА.
-ATASPI- программно управляемый (Windows)
- E-IDE - расширение для шины PCI (PIO M3, MW DMA M1).
Ограничения - длина шлейфа до 45см, и его объем (31 сигнальный
провод).
Новый интерфейс Sserial ATA обеспечивает теоретическую пропускную способность 1,5Гбит/сек (150Мбайт/сек) с перспективой до 6Гбит/сек.
Топология подключения "звезда"
Он заменит параллельный АТА и позволит передавать данные со скоростью 1,5ГБ/с (затем 3 и 6) и совместим с существующими драйверами.
Необходимость SATA.
1. Малая длина кабеля IDE-ATA (до 45см), что ограничивает создание RAID массивов.
2. Высокий уровень (5в) сигнала, что создаёт проблемы с помехозащищенностью.
3. Ограничения по скорости передачи.
4. Не позволяет замены на ходу.
Сравнение быстродействия интерфейсов АТА.
Тип |
МБ/сек |
IDE - ATAPI |
3,3 – 8,3 |
EIDE ( ATA-2) |
11,1 – 16,7 |
Ultra ATA (Ultra DMA/33) |
33,3 |
Ultra ATA/66 |
66,6 |
Ultra ATA/100 |
100 |
SATA/1500 |
150 |
SATA/3000 |
200 |
SATA/6000 |
400 |
1. Сохранён протокол (заменены только приёмо-передатчики). И более того разработаны дешёвые переходники.
2. Последовательная передача на частоте 1,5ГГц. (до 150Мб/с). У АТА 100МБ/с на частоте 25МГц (с удвоением).
3. Уровни сигнала – 0,5В.
4. Пропускная способность
7.1.3. Шина PCI.
PCI (Peripheral Component Interconnect) - шина подсоединения периферийных компонентов. Частота 20-66мггц, скорость до 528Мб/с. Шина -синхронная (по фронту с/с). Адрес и данные мультиплексированы, тип операции представлен в кодированном виде.
Шина предусматривает пакетный режим обмена: в каждой транзакции за фазой адреса следуют фазы данных. В каждой транзакции участвует ведущий (Master - Initiator) и ведомый (Slave-Target).
Сигналы шины.
CLK - тактовая частота - до 133мггц
AD(63:0) - мультиплексированная шина (данные следом за адресом); адресация с точностью двойного слова АД(1:0) - 00 линейное наращивание адреса, 01 - кратно длине строки кэш
PAR - признак чётности (общий для линий АД и команд).
PERR - ошибка чётности (формирует приёмник)
SERR - системная ошибка (формируется любым устройством на шине и вызывает немаскируемое прерывание)
FRAME - кадр; начало адрес; конец предпоследний цикл данных
DEVSEL - ответ ведомого
IRDI - готовность
TRDI - готовность ведомого
* Обмен возможен при наличии обоих сигналов, любой может делать пропуски.
REQ64 - запрос обмена двойным словом
ACK64 - подтверждение ведомым обмена двойным словом
STOP - требование останова ведомым
линии арбитража
REQ(3:0) - требования на захват шины от 4-х разъёмов (слотов)
GNT(3:0) - предоставление шины одному из разъёмов
INTR(A,B,C,D) - линии запросов прерывания; линии в слотах циклически сдвигаются и независимо коммутируются на доступные IRQn с помощью конфигурационных регистров чипсет.
C/BE(3:0) - операция (в фазе адреса); номер байта (в фазе данных):
операции
- подтверждение прерывания (на шине - вектор прерывания),
- чтение памяти,
- запись в память,
- чтение порта в/в,
- запись в порт,
- множественное чтение памяти (основной памяти без кэширования),
- признак двухсловного адреса,
- чтение строки памяти,
- запись строк в основную память и освобождение кэш,
- признак останова.
- чтение и запись конфигурации,
IDSEL - сигнала выбора устройства в операциях конфигурирования.
Авто конфигурирование устройств ( выбор адресов, запросов прерываний ориентированно на технологию Plug & Play (P&P).
Стандарт PCI определяет для каждого слота конфигурационное пространство размером до 256 байтных регистров, не приписанных ни к пространству памяти, ни к пространству ввода-вывода. Доступ к ним осуществляется по конфигурационным операциям после включения или аппаратного сброса. В этих операциях устройства выбираются по индивидуальным сигналам выбора устройства для конфигурирования, они сообщают о потребностях в ресурсах. После распределения ресурсов, выполняемых программой конфигурирования, в устройства записываются параметры конфигурирования и становится возможным выполнение остальных операций.
Пять сигналов обслуживания встроенного тестового контроля.
7.1.4. Магистральный интерфейс AGP.
Наибольшие требования к быстродействию шины является графический адаптер. Рост функциональных возможностей графических ускорителей приводит к необходимости реализации графических построений, что в свою
очередь повышает требования к быстродействию шины.
Для этой цели фирма Интел на базе шины РС1 разработала новый стандарт подключения графических адаптеров АGР - ускоренный графический порт (32 разряда, 66,66мггц). Ускорение достигнуто за счёт:
- конвейера операций с памятью
- сдвоенными передачами данных
- разделением шин адреса и данных
Особенностью конвейера является то, что ещё до выполнения предыдущего запроса принимаются последующие (и так до 256), а затем они
удовлетворяются в потоке.
За один такт передаётся не 32р-да, а 64 (по фронту и по спаду синхросигнала).
Хотя под шину адреса отведено 8 линий, по которым за 3 такта синхронизации передаётся - 4 байта адреса, байт длины запроса и байт команды (по фронту и по спаду синхросигнала).
Т. о. пропускная способность AGР до 532Мб/сек, но уже сегодня потребность при обмене акселератора с видеопамятью может достигать 1,6Гб/сек.