Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие Кольцевая шина QPI+Sandi bridge.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.3 Mб
Скачать
    1. Последовательные линии

В 16-ти разрядных архитектурах компьютеров существовала шина внешних устройств EISA, которая перешла и архитектуру компьютеров на базе процессоров Pentium. Параллельные магистрали обладают высоким быстродействием, но они дороги и требуют большого объема аппаратных затрат. В последовательных шинах данные передаются по одной или двум линиям (+ синхросигнал). Последовательные шины по своей тактовой частоте превосходят параллельные, тем более, что сигналы в них все более аналоговые, двуполярные. Однако необходимость передачи служебной «шапки» (это может быть и сотня бит) не дает выигрыша по быстродействию. Для снижения влияния служебной информации на скорость обмена стремятся к пакетной передачи данных.

На замену шин EISA и в некотором роде PCI пришли шины USB 1.0 и Fire Wire (стандарт IEEE 1394). Ориентация 1394 - первоначально жесткий диск и видео периферийные устройства, которые могут потребовать ширину полосы частот шины сверх 100 Mbs (резерв спецификации до 800 Mbs.). Протокол поддерживает как синхронный, так и асинхронные передачи тем же комплектом четырех сигнальных проводов (две дифференциальных пары сигналов - синхронизации и данных).

По своей структуре они схожи. Обе передают питание, частоты разнятся на несколько десятков. У последней, как указано, два сигнала, синхросигнал переключается лишь тогда, когда передаваемый бит данных не меняются. Но во многом они схожи.

Шина USB (USB1.1., USB2.0.., USB3.0.) является примером «короткой» линии и пришла, в определенной степени, на смену шине EISA.

Универсальная последовательная шина USB - внешний интерфейс ввода/вывода - это несомненное достижение в архитектуре ПК. Последовательные порты типа RS-232 обеспечивают скорость от 9.6Kbps до 115.2Kbps в зависимости от микросхемой логики асинхронного приемопередатчика UART (Universal Asynchronous Recive/Transmitter). Максимальная пропускная способность USB 1.1. составляет 12Mbps, хотя фактически скорость передачи данных ближе к 8Mbps, включая 1Mbps-подканал для медленных устройств типа мышь и клавиатура. Этого вполне достаточно, чтобы обслужить потребности всех устройств от мыши до видеомагнитофонов, ISDN-адаптеров и сжатого видео MPEG. Использование низкоскоростных устройств позволяет перераспределить полосы частот и выделить больше пропускной способности тем устройствам, которые в этом нуждаются. Достоинством USB являются как асинхронные, так и изосинхронные порты. Изосинхронные передачи видео и аудио данных имеют приоритет, гарантируя непрерывность потоков данных для приложений реального времени. USB позволяет включать до 127 устройств, связанных в звездообразную технологию: каждое устройство может содержать в себе USB-концентратор, к которому можно подсоединить дополнительные устройства. Индустриальным стандартом контроллеров USB считается комплект Intel One-Stop-Shopping серий i8X930Ax/i8Х930Hx/i8X931Ax/i8X931Hx монтажа 64pin PQFP (Plastic Quad Flat Package), предназначенные для построения USB-концентраторов, USB-оконечных устройств и для изготовления USB-контроллеров для монитора. Хотя USB медленнее, имея пропускную способность 12Mbps (1.5MBps), чем SCSI (замена последней последовательная шина ATA 3 – 600 Мбайт/с), она предлагает высокоскоростные и Plug-and-Play возможности для такой периферии, в которой традиционно используются последовательный, параллельный или специальный порт, например, клавиатура, мышь или монитор. USB также подходит для небольших периферийных устройств типа сканеров, в которых ранее применялись специализированные адаптеры или SCSI-контроллеры. Для периферии, не использующей SCSI-контроллеры, USB предлагает оборудование примерно в сто раз более быстрое, чем, например, традиционные последовательные порты с максимальной скоростью передачи 115Kbps. Параллельные порты со скоростью обмена 2Mbps работают примерно в шесть раз медленнее, чем USB. Вдобавок, один USB-порт может обслуживать до 126 периферийных устройств без каких-либо дополнительных компьютерных ресурсов, таких как IRQ. Сегодняшние последовательные или параллельные, порты для клавиатуры или монитора обычно могут обслужить только одно устройство. Более того, мало потребляющий USB-контроллер обеспечивает электропитание всех устройств, подключенных к его шине, уменьшив тем самым количество розеток на стене либо распределительных щитков (однако устройства, потребляющие относительно много энергии, такие как сканеры, нуждаются в дополнительных розетках). USB также предоставляет так называемый режим hot swapping - возможность подсоединять и переключать внешние устройства без выключения компьютера. Такие устройства, как клавиатура или мышь с двухсторонним обменом, не могут сегодня переключаться в режиме hot swapping. USB-контроллер имеет один стандартный кабель для любых периферийных устройств, что обеспечивает легкость подключения и снижение стоимости систем. Если устройства поддерживают PnP, то необходимые драйверы устройств могут автоматически загружаться и выгружаться. Топология шины USB представляет собой управляющий блок USB, концентраторы, кабели и функциональные устройства. Существует только один управляющий блок в любой системе USB. Интерфейсом для связи с ПК является управляющий контроллер, который может быть реализован в комбинации с аппаратными или аппаратно-программными средствами. Встроенный в управляющий блок корневой концентратор обеспечивает одну или несколько точек подключения.

Концентраторы - ключевой элемент в архитектуре PnP USB. Они представляют собой устройства, которые обеспечивают многочисленные подключения к USB. Точки подключения именуются портами. Каждый концентратор превращает одну точку подключения в несколько. Данная архитектура поддерживает сочленение нескольких концентраторов.

Рис.4.6. Пирамида концентраторов шины, вид 1

Рис.4.6. Пирамида концентраторов шины, вид 2

Входной порт концентратора подсоединяет его к управляющему блоку. Каждый из выходных портов концентратора позволяет подключение к другому концентратору или функциональному блоку. Концентраторы могут определять подсоединение или отключение на каждом выходном порте и позволяют распределить энергию по выходным устройствам, а так же устанавливать оптимальную скорость для устройства, подключенного к выходному порту. Здесь показано, как можно объединить функциональные устройства и повысить возможность системы. Устройство, содержащее концентратор и одно или несколько функциональных устройств, именуется комбинированным устройством.

Рис.4.6. Пирамида концентраторов компьютера

USB передает сигналы и электропитание по 4-х-жильному кабелю, который состоит из сегментов длиною не более 5 метров. Длина кабельного сегмента USB меняется в зависимости от сопротивления проводника, мощности устройства и гибкости кабеля. Сигналы передаются по двум проводам кабеля D+ и D- (DATA+ и DATA-), которые имеют волновое сопротивление Z=90. Провода Vbas (+5VDC) и GND предназначены для электропитания устройств (питание и земля соответственно). Номинальное напряжение для Vbas составляет +5V. Чтобы гарантировать оптимальную величину сигнала на входе и необходимое сопротивление, на каждом конце кабеля применяются оконечные устройства. Оконечные устройства также позволяют фиксировать подсоединение и отсоединение на каждом порту и различать высоко- и низкоскоростные устройства.

Рис.4.6. Кабель USB

В USB 1 существует 2 режима передачи сигнала. Высокоскоростная передача сигнала составляет 12Mbps. Низкоскоростной режим обеспечивает скорость 1.5Mbps и более сильную защиту от электромагнитных помех. Оба режима могут поддерживаться одновременно, в одной и той же системе USB в режиме переключения между передачами данных. Высокоскоростной режим необходим для работы с быстрыми устройствами IHVs (Independent Hardware Vendors), DVPDs (Digital Video Peripheral Devices), VCRs (Video Cassette Recorders), ISDN-периферией, принтерами, сканерами и т.д. Режим низкой скорости необходим для поддержки ограниченного числа устройств с узкой полосой пропускания, такими, как joystick, mouse, keyboard. Все транзакции в шине могут включать в себя до 3 пакетов. Каждая транзакция начинается, когда управляющий контроллер посылает маркерный пакет (Token Packet) USB, описывающий тип и направление транзакции, адрес устройства и номер конечной точки. В данной транзакции данные передаются либо от управляющего блока к устройству, либо наоборот. Источник транзакции затем посылает пакет данных, или сигнализирует об отсутствии данных для передачи. Получатель, в общем случае, отвечает пакетом квитирования (HandShake Packet), который подтверждает передачу данных. Данные в USB передаются по каналам. Существует 2 типа каналов: поток и сообщение. Потоковые данные не имеют определенной USB-структуры, в то время как у сообщений она есть. Кроме того, каналы связаны с полосой пропускания данных, типом передачи данных и характеристиками конечной точки, такими, как направленность и размер буфера. Каналы начинают свое существование, когда конфигурируется USB-структура. Только канал управления 0 существует всегда, как только устройство включено, для того, чтобы установить доступ к конфигурации устройства, статусу и управляющей информации. Использование транзакций позволяет управлять потоками в каналах. На аппаратном уровне это предохраняет буферы от ситуации неполного завершения или перезагрузки с помощью NACK-квитирования, которое управляет скоростью данных. Механизм управления потоками позволяет создавать гибкие расписания, которые адаптируют параллельную обработку к смеси потоков данных разных типов. Так, многочисленные каналы с разнотипными данными обслуживаются за разные интервалы времени и с пакетами разных размеров. Сама же архитектура USB поддерживает 4 основные типа передачи данных:

Передачи управления. Они используются программным обеспечением USB для конфигурирования устройств, когда они впервые подсоединены. Отдельный драйвер может выбрать специфическое управление для обеспечения передачи данных без потерь. Групповая пересылка. Обычно состоит из больших объемов данных, которые используются принтерами, сканерами или цифровыми камерами. Групповые данные - это последовательные данные, надежный обмен которых обеспечивается на уровне аппаратуры путем обнаружения ошибок в технических средствах и дополнительно активизирует перезагрузку ПК. Полоса пропускания, которую занимают групповые данные, должна быть доступна в любой момент времени и не занимается другими типами данных. Передача прерываний. Небольшая порция данных, переданных в произвольный момент времени от периферийного устройства, называется прерыванием. Такие данные могут быть посланы устройством в любое время и передаются USB со скоростью, не меньшей, чем определено устройством. Прерывания обычно состоят из уведомления о событии, символов и адреса, которые организованы как 1 байт или более. Прерывания используются для поддержки низкоскоростных устройств протокола USB 1.5Mbps. Изохронные передачи. Изохронные данные (непрерывные данные) создаются, передаются и используются в реальном времени. Согласованная по времени информация подразумевает устойчивую скорость, при которой изохронные данные принимаются и передаются. Изохронные данные должны доставляться с необходимой скоростью, чтобы сохранить согласование по времени, так как изохронные данные могут быть чувствительны к задержкам доставки. Изосинхронная порция представляет собой непрерывный поток и используется для передачи звука или видео. К передаче изосинхронных данных предъявляются очень высокие требования.

Типичный пример изохронных данных - аудио- или видеосигналы. Если скорость передачи этих потоков данных не сохраняется, то происходит нарушение синхронизации и получается искаженное восприятие. Даже если данные переданы с соответствующей скоростью, задержки в работе буферов могут вызвать искажения в протоколах типа Т.120 (аудиоконференции). Потоки изохронных данных USB сосредоточены в определенной части полосы пропускания, чтобы обеспечить доставку данных с необходимой скоростью. USB сконструирована таким образом, чтобы максимально уменьшить задержку передачи изохронных данных. USB выделяет полосу пропускания каналам в том случае, когда соединение произошло. Полоса пропускания распределяется среди каналов в соответствии со спецификой работы. Устройствам USB требуется буфер, и предполагается, что чем большую полосу пропускания занимает устройство, тем большего размера ему требуется буфер. Целью архитектуры USB является обеспечение времени обращения к буферу в пределах нескольких миллисекунд. Полоса пропускания может распределяться по потокам данных, в результате чего достаточно широкий диапазон устройств может подключиться к шине USB. Распределение полосы пропускания в USB - блокирующее, то есть если размещение дополнительного канала ограничивает работу уже существующей полосы пропускания, дальнейшее назначение каналов будет отменено или блокировано. Когда канал закрыт, выделенная для него полоса пропускания освобождается и может быть переназначена на другой канал. Процесс USB превращает физическую топологию в индивидуальные отношения между ПО клиента (находящимся в функциональном блоке) и функциональными устройствами. Этот процесс включает в себя операции согласования и конфигурации, и находится под контролем ПО управляющего блока USB, спрятанного в верхнем слое (ПО клиента). ПО клиента запрашивает службы USB о передаче данных в систему программного обеспечения (ПО USB). Настройка вновь подсоединенных устройств не требует участия пользователя. В тоже время, поддержка USB изохронных передач превращает ПК в мощное средство коммуникации. Для периферийных устройств серийно выпускается USB-контроллер 82930A, выполненный на базе микроконтроллера архитектуры MCS-251, который поддерживает как скоростные каналы со скоростью передачи 12Mbps, так и каналы со скоростью 1.5Mbps, синхронную, изосинхронную передачу данных и режимы управления мощностью, необходимые для устройств USB. Эти контроллеры разработаны для периферийных устройств, подключаемых к компьютеру.

Рис.4.7. Соединение модулей с I2C

Последовательные шины передачи данных присутствуют и в микроконтроллерных структурах. Их число составляет несколько десятков. Отдельные из них получили боьшое распространение и стали стандартом, поддерживаемым многими производителями микросхем.

Одина из них - промышленная шина I2C. Длина ее может быть близка к километру. Частота могут достигать 5 МГц.Подключение модулей без учета обязательных резисторов подброса показана на рис. 4.7.