Под шиной обмена понимают совокупность информационно-логических, электрических и конструктивных требований, выполнение которых обеспечивает работоспособное сопряжение различных устройств компьютера с заданными характеристиками.
Информационно-логические требования определяют структуру и состав линий и сигналов, способы кодирования и форматы данных, адресов и команд, протоколы обмена для различных режимов работы.
Электрические требования задают параметры сигналов на линиях интерфейса такие, например, как
уровень;
длительность;
длительность фронтов;
нагрузочная способность;
допустимый уровень помех.
Конструктивные требования определяют:
типы соединительных элементов – разъёмов;
распределение линий интерфейса по контактам разъёмов;
допустимые длины линий;
геометрические размеры плат.
Одним из первых стандартов шины обмена (системной шины) персональных компьютеров была шина XT-bus компьютеров IBM PC/XT, обеспечивающая параллельную передачу 8 бит данных. Шина включает 20 адресных линий, которые ограничивают адресное пространство пределом в 1 Мбайт. Для работы с внешними устройствами в XT-bus шине предусмотрены 4 линии аппаратных прерываний (IRQ) и 4 линии для обмена в режиме DMA. Для подключения плат расширения служат специальные 62-контактные разъемы. Системная шина и микропроцессор синхронизируются от одного тактового генератора с частотой 4,77 МГц. Таким образом, теоретическая скорость передачи данных составляет не более 4 Мбайт/с.
Шина ISA (Industry Standard Architecture) впервые стала применяться в персональных компьютерах IBM PC/AT на базе процессора i286. От XT-bus эта системная шина отличается наличием второго, 36-контактного дополнительного разъема для плат расширения стандарта AT. За счет него количество адресных линий увеличено на 4, а данных - на 8, что позволяет передавать параллельно 16 бит данных и обращаться к 16 Мбайтам оперативной памяти. Количество линий аппаратных прерываний увеличено до 15, а каналов прямого доступа - до 7. Шина ISA позволяет синхронизировать работу процессора и шины с разными тактовыми частотами. Она работает на частоте 8 МГц, что соответствует максимальной скорости передачи 16 Мбайт/с.
Шина PCI (Peripheral Component Interconnect) поддерживает 32-битовый канал передачи данных между процессором и периферийными устройствами, работает на тактовой частоте 33 Мгц и имеет максимальную пропускную способность 133 Мбайт/с.
Шина SCSI - Small Computer System Interface (Интерфейс малых вычислительных систем). Под термином SCSI обычно понимается набор стандартов, разработанных Национальным институтом стандартов США (ANSI) и определяющих механизм реализации магистрали передачи данных между системной шиной компьютера и периферийными устройствами. Первоначально SCSI предназначался для использования в небольших дешевых системах и поэтому был ориентирован на достижение хороших результатов при низкой стоимости. Характерной его чертой является простота, особенно в части обеспечения конфигурирования периферийных устройств без изменения организации основного процессора. Главной особенностью подсистемы SCSI является размещение в периферийном оборудовании интеллектуального контроллера. На сегодняшний день приняты два стандарта (SCSI-1 и SCSI-2). Стандарт SCSI-3 находится в процессе доработки.
Начальный стандарт 1986 года, известный теперь под названием SCSI-1, определял рабочие спецификации протокола шины, набор команд и электрические параметры. В 1992 году этот стандарт был пересмотрен с целью устранения недостатков первоначальной спецификации и добавления новых возможностей повышения производительности, таких как "быстрый режим" (fast mode), "широкий режим" (wide mode) и помеченные очереди. Этот пересмотренный стандарт получил название SCSI-2 и в настоящие время используется большинством поставщиков вычислительных систем.
Для подключения многих низкоскоростных устройств к компьютеру достаточно использовать простую шину с последовательной передачей данных. В середине 90-х годов группа компаний в составе Compaq, DEC, IBM, Intel, Microsoft, NEC и Nothern Telecom разработали стандарт новой последовательной шины USB – Universal Serial Bus (универсальная последовательная шина), которая в настоящее время широко используется в персональных компьютерах.
При разработке стандарта учитывались следующие требования:
Пользователи не должны устанавливать переключатели или перемычки на устройствах для адаптации их к данному компьютеру;
Для подключения устройств должны использоваться только один вид специальных разъемов и кабелей.
Питание USB-устройств должно осуществляться через разъем.
Количество USB-устройств, подключаемых к компьютеру, до 127.
Шина должна поддерживать работу устройств реального времени (микрофоны, телефон и т.п.).
Автоматическое подключение устройств к системе в процессе работы компьютера без его перезагрузки.
Общая пропускная способность шины составляет 1,5 Мбайт/с. Работа шины USB обеспечивается специальным центральным хабом (концентратором), который в составе системной логики размещается на материнской плате. Центральный хаб обеспечивает согласованную работу нескольких устройств, подключаемых к нему с помощью USB-разъемов. Для увеличения числа подключаемых устройств к разъемам центрального хаба можно подключать дополнительные хабы. При этом топология USB-шины имеет древовидную структуру.
Шина состоит из 4-х линий, из которых две используются для питания +5В и земли. Одна линия предназначена для передачи информации, одна – для передачи синхросигналов. Способ передачи данных следующий. Нули передаются изменением напряжения, а единицы – отсутствием изменения напряжения.
Когда новое устройство подсоединяется к шине, центральный хаб распознает это и операционная система запрашивает устройство для считывания его характеристик, в том числе, пропускной способности. Если пропускная способность достаточно высокая, то операционная система выделяет ему уникальный адрес (канал) в диапазоне 1 – 128, который загружается в регистр конфигурации устройства. Таким образом, подключение новых устройств к системе организуется на лету без привлечения пользователя. К неинициализированным устройствам можно обращаться по адресу 0. Прямой обмен между двумя USB-устройствами не поддерживается.
Каждое устройство может разбить свой канал на 16 подканалов, которые будут использоваться для различных типов данных (например, аудио и видео).