Э. Таненбаум - Архитектура компьютера (1127755), страница 62
Текст из файла (страница 62)
Исчерпав ранее выданные разрешения, отправитель должен приостановить передачу и дождаться новых разрешений. Такая схема, распространенная во всех сетях, предотвращает потерю данных вследствие несовпадения скоростей отправителя и получателя. На уровне транзакций выполняются все операции шины. К примеру, для считывания слова из памяти нужно выполнить две транзакции, из которых одну инициирует процессор или канал ПМА, запрашивающий данные, другую — целевой объект (поставщик данных).
Впрочем, чтение и запись — не единственные операции, которые выполняются на уровне транзакций. Этот уровень, в частности, расширяет возможности передачи пакетов, предоставляемые канальным уровнем. Каждая полоса на уровне каналов подразделяется на несколько (до восьми) виртуальных каналов, по каждому из которых передаются данные того или иного типа.
На уровне транзакций пакеты маркируются согласно классу трафика, определяющему ряд свойств, таких как «высокий приоритет», «низкий приоритет», «запрет слежения», «допускается доставка вне последовательности» и т, д, Выстраивая порядок обработки пакетов, коммутатор, помимо прочего, основывается на информации из маркеров. Любая транзакция проходит в одном из четырех адресных пространств: + пространство памяти (при выполнении стандартных операций чтения и записи); + пространство ввода-вывода (для адресации регистров устройств); + конфигурационное пространство (для инициализации системы и т.
д.); + пространство сообщений (для отправки сигналов, прерываний и т. д.). Пространства памяти и ввода-вывода аналогичны традиционным — тем, что реализованы в современных системах. В конфигурационном пространстве возможна реализация разного рода механизмов, например автоматического конфигурирования (РпР). Пространство сообщений принимает на себя функции многочисленных ныне управляющих сигналов. Обойтись без этого пространства нельзя, ведь в РС1 Ехргезз отсутствуют предусмотренные в шине РС1 линии управления.
Программный уровень выступает посредником между РС1 Ехргеэз и операционной системой. Помимо прочего, на нем предусмотрен режим эмуляции шины РС1, позволяющий устанавливать в компьютерах, оснащенных РС1 Ехргезз, старые операционные системы без каких-либо изменений. Естественно, при работе в таких условиях реализация всех возможностей РС! Ехргезз невозможна, однако обеспечение обратной совместимости является необходимой мерой — по крайней мере, до того момента, пока во всех операционных системах не будет полностью реализована поддержка РС1 Ехргезз. Опыт показывает, что этот процесс займет немало времени. Информационный поток, характерный для РС! Ехргезз, иллюстрирует рис. 3.54, б.
Команда, поступающая на программный уровень, передается на уро- 248 Глава 3. Цифровой логический уровень вень транзакций, где из нее формируются заголовок и полезная нагрузка. Затем эти компоненты отправляются на канальный уровень, на котором в заголовке пакета устанавливается порядковый номер, а в хвостовике — СКС-код. Далее этот расширенный пакет передается на физический уровень, где с обоих концов к нему добавляются параметры кадра, и получившийся в результате физический пакет передается от отправителя получателю. На стороне получателя происходит обратный процесс — заголовок и хвостовик кадра канального уровня удаляются, а результат передается на уровень транзакций.
Схема, согласно которой на каждом последующем уровне стека протоколов к исходному набору прибавляются дополнительные данные, применяется в компьютерных сетях уже очень долго и успешно. Основное различие между сетевыми технологиями и РС1 Ехргезз заключается в том, что в первом случае код, действующий на различных уровнях стека, почти всегда является программным и управляется операционной системой.
В РС1 Ехргезз, напротив, операции на всех уровнях реализуются аппаратно. Структура РС1 Ехргезз довольно сложна. Ее подробное описание имеется в работах [138, 1921. Шина ЦВВ Шины РС1 и РС1 Ехргезз очень хорошо подходят для соединения высокоскоростных периферийных устройств, но использовать интерфейс РС1 для низкоскоростных устройств ввода-вывода (например, мыши и клавиатуры) было бы слишком дорого. Изначально каждое стандартное устройство ввода-вывода соединялось с компьютером особым образом, при этом для добавления новых устройств использовались свободные 1ЯА- и РС1-слоты.
К сожалению, такая схема имеет некоторые недостатки. Например, каждое новое устройство ввода-вывода часто оснащается собственной платой 1ЯА или РС1. Пользователь при этом должен сам установить переключатели и перемычки на плате и удостовериться, что настроенная плата не конфликтует с другими платами. Затем пользователь должен открыть системный блок, аккуратно вставить плату, закрыть системный блок и включить компьютер. Для многих этот процесс очень сложен и часто приводит к ошибкам. Кроме того, количество 1ЯА- и РС1-слотов очень мало (обычно два или три). Автоматически конфигурируемые (РпР) платы исключают необходимость установки переключателей, но пользователь все равно должен открывать компьютер и вставлять туда плату.
К тому же количество слотов шины ограничено. В 1993 году представители семи компаний (Сошрац, НЕС, 1ВМ, 1пге!, М1сгозо1т, НЕС и Хог11егп Те!есош) собрались вместе, чтобы разработать шину, оптимально подходящую для подсоединения низкоскоростных устройств. Потом к нгви примкнули сотни других компаний. Результатом их работы стала шина 1)БВ (Бшчегза1 Бейа1 Вцз — универсальная последовательная шина), которая сейчас широко используется в персональных компьютерах 110, 2011 Некоторые требования, изначально составившие основу проекта: + пользователи не должны устанавливать переключатели и перемычки на платах и устройствах; Примеры шин 249 + пользователи не должны открывать компьютер, чтобы установить новые устройства ввода-вывода; + должен существовать только один тип кабеля, подходящий для соединения всех устройств; + устройства ввода-вывода должны получать питание через кабель; + должна быть возможность подсоединения к одному компьютеру до 127 устройств; + система должна поддерживать устройства реального времени (например, звуковые устройства, телефон); + должна быть возможность устанавливать устройства во время работы компьютера; + должна отсутствовать необходимость перезагружать компьютер после установки нового устройства; + производство новой шины и устройств ввода-вывода для нее не должно требовать больших затрат.
Шина (15В удовлетворяет всем этим условиям. Она разработана для низкоскоростных устройств (клавиатур, мышей, фотоаппаратов, сканеров, цифровых телефонов и т. д.), Общая пропускная способность первой версии шины (11ЯВ 1.0) составляет 1,5 Мбайт/с. Версия 1.1 работает на скорости 12 Мбайт/с, что вполне достаточно для принтеров, цифровых камер и многих других устройств. Предел был выбран для того, чтобы снизить стоимость шины. Шина (ЛВ состоит из корневого хаба (гоог 1шЬ), который вставляется в разъем главной шины (см.
рис. 3.49). Этот корневой хаб (часто называемый корневым концентратором) содержит разъемы для кабелей, которые могут подсоединяться к устройствам ввода-вывода или к дополнительным хабам, чтобы увеличить количество разъемов. Таким образом, топология шины (1ЯВ представляет собой дерево с корнем в корневом хабе, который находится внутри компьютера. Коннекторы кабеля со стороны устройства отличаются от коннекторов со стороны хаба, чтобы пользователь случайно не подсоединил кабель другой стороной.
Кабель состоит из четырех проводов; два из них предназначены для передачи данных, один — для питания (+5 В) и один — для земли. Система передает 0 изменением напряжения, а 1 — отсутствием изменения напряжения, поэтому длинная последовательность нулевых битов порождает поток регулярных импульсов. Когда соединяется новое устройство ввода-вывода, корневой хаб обнаруживает этот факт и прерывает работу операционной системы. Затем операционная система запрашивает новое устройство, выясняя, что оно собой представляет и какая пропускная способность шины для него требуется. Если операционная система решает, что для этого устройства пропускной способности достаточно, она приписывает ему уникальный адрес (1 — 127) и загружает этот адрес и другую информацию в конфигурационные регистры внутри устройства.
Таким образом, новые устройства могут подсоединяться «на лету», при этом пользователю не нужно устанавливать новые платы 1ЯА или РС1. Неинициализированные платы начинаются с адреса О, поэтому к ним можно обращаться. Многие устройства 250 Глава 3. Цифровой логический уровень снабжены встроенными сетевыми концентраторами для дополнительных устройств. Например, монитор может содержать два хаба для правой и левой колонок.
Шина НЯВ представляет собой ряд каналов между корневым хабом и устройствами ввода-вывода. Каждое устройство может разбить свой канал максимум на 16 подканалов для различных типов данных (например, аудио и видео). В каждом канале или подканале данные перемещаются от корневого хаба к устройству и обратно. Между двумя устройствами ввода-вывода обмена информацией не происходит. Ровно через каждую миллисекунду (ч.0,05 мс) корневой хаб передает новый кадр, чтобы синхронизировать все устройства во времени. Кадр состоит из пакетов, первый из которых передается от хаба к устройству.