ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 25.12.2021

Просмотров: 5283

Скачиваний: 8

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

166 Глава 4. Организация шин

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

В асинхронных шинах проблема должна быть решена либо в самом драйвере,

либо за счет введения искусственной приостановки, компенсирующей излишнее
быстродействие драйвера. Еще одна возможность — замедление цепей приемника.

Чтобы сделать приемники нечувствительными к отражениям и высокочастот-

ному шуму, в них встраивают фильтры нижних частот. В шине NITS Altair, напри-
мер, используются драйверы большой мощности и маломощные приемники. По
причине быстрых драйверов и неудачного дизайна монтажной шины сигналы в этой
шине сильно искажаются, но маломощные приемники достаточно медлительны
и позволяют нивелировать большинство из дефектов сигнала.

Применяющиеся в настоящее время драйверы и приемники на базе транзис-

торно-транзисторной логики (ТТЛ) уже не в полной мере отвечают растущим тре-
бованиям. В новых шинах наметилась тенденция перехода к трансиверам на
основе эмиттерно-связанной логики (ЭСЛ), как, например, в шине Fastbus. Заме-
чательно, что одновременно с уменьшением емкости линий, уровней и крутизны
фронтов сигналов, подавлением шумов в приемнике, в подобных трансиверах со-
храняется преемственность со старыми устройствами: они допускают использова-
ние со стороны дочерних плат источников питания и сигналов, характерных для

ТТЛ-технологии.

Обычно перед установкой или извлечением дочерней платы требуется отклю-

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

тающего напряжения. В них обеспечивается сохранение состояния остальных плат,

но работа шины временно приостанавливается. Естественно, что плата, которая

была удалена и заменена на другую, уже не находится в исходном состоянии и долж-
на быть инициализирована. Чаще всего реализация подобного режима оказывает-
ся чересчур дорогостоящей.

Распределение линий шины

Любая транзакция на шине начинается с выставления ведущим устройством ад-
ресной информации. Адрес позволяет выбрать ведомое устройство и установить
соединение между ним и ведущим. Для передачи адреса используется часть сиг-
нальных линий шины, совокупность которых часто называют

 шиной адреса (Ш

К).

На ША могут выдаваться адреса ячеек памяти, номера регистров ЦП, адреса

портов ввода/вывода и т. п. Многообразие видов адресов предполагает наличие

дополнительной информации, уточняющей вид, используемый в данной транзак-

ции. Такая информация может косвенно содержаться в самом адресе, но чаще пе-

редается по специальным управляющим линиям шины.

Разнообразной может быть и структура адреса. Так, в адресе может конкрети-

зироваться лишь определенная часть ведомого, например, старшие биты адреса


background image

Распределение линий шины 167

могут указывать на один из модулей основной памяти, в то время как младшие
биты определяют ячейку внутри этого модуля.

В некоторых шинах предусмотрены адреса специального вида, обеспечиваю-

щие одновременный выбор определенной группы ведомых либо всех ведомых сразу
(broadcast). Такая возможность обычно практикуется в транзакциях записи (от
ведущего к ведомым), однако существует также специальный вид транзакции чте-
ния (одновременно от нескольких ведомых общему ведущему). Английское назва-
ние такой транзакции чтения

 broadcall

 можно перевести как

 «широковещательный

 Информация, возвращаемая ведущему, представляет собой результат поби-

тового логического сложения данных, поступивших от всех адресуемых ведомых.

Число сигнальных линий, выделенных для передачи адреса

 {ширина шины ад-

реса),

 определяет максимально возможный размер адресного пространства. Это

одна из базовых характеристик шины, поскольку от нее зависит потенциальная
емкость адресуемой памяти и число обслуживаемых портов ввода/вывода.

Совокупность линий, служащих для пересылки данных между модулями сис-

темы, называют

 шиной данных

 (ШД). Важнейшие характеристики шины данных —

ширина и пропускная способность.

Ширина шины данных

 определяется количеством битов информации, которое

может быть передано по шине за одну транзакцию

 {цикл шины).

 Цикл шины сле-

дует отличать от периода тактовых импульсов — одна транзакция на шине может
занимать несколько тактовых периодов. В середине 1970-х годов типовая ширина

шины данных составляла 8 бит. В наше время это обычно 32,64 или 128 бит. В лю-
бом случае ширину шины данных выбирают кратной целому числу байтов, при-

чем это число, как правило, представляет собой целую степень числа 2.

Элемент данных, задействующий всю ширину ШД, принято называть

 словом,

хотя в архитектуре некоторых ВМ понятие «слово» трактуется по-другому, то есть
слово может иметь разрядность, не совпадающую с шириной ШД.

В большинстве шин используются адреса, позволяющие указать отдельный байт

слова. Это свойство оказывается полезным, когда желательно изменить в памяти

лишь часть полного слова.

При передаче по ШД части слова пересылка обычно производится по тем же

сигнальным линиям, что и в случае пересылки полного слова, однако в ряде шин

«урезанное» слово передается по младшим линиям ШД. Последний вариант мо-

жет оказаться более удобным при последующем расширении шины данных, по-
скольку в этом случае сохраняется преемственность со «старой» шиной.

Ширина шины данных существенно влияет на производительность ВМ. Так,

если шина данных имеет ширину вдвое меньшую чем длина команды, ЦП в тече-
ние каждого цикла команды вынужден осуществлять доступ к памяти дважды.

Пропускная способность

 шины характеризуется количеством единиц инфор-

мации (байтов), которые допускается передать по шине за единицу времени (се-
кунду), а определяется физическим построением шины и природой подключае-
мых к ней устройств. Очевидно, что чем шире шина, тем выше ее пропускная

способность.

Последовательность событий, происходящих на шине данных в процессе од-

ной транзакции, иллюстрирует рис. 4.9. Пусть устройство А на одном конце шины
передает данные устройству В на другом ее конце.


background image

168 Глава 4. Организация шин

Рис. 4.9. Временная диаграмма пересылки данных

Сначала устройство А выставляет данные на шину. Здесь

 —

 это задержка

между моментом выставления данных устройством А и моментом их появления на
шине. Этот интервал времени может составлять от 1 до 4 нс. Как уже отмечалось,
скорость распространения данных по шине реально не в состоянии превысить 70%
от скорости света. Единственный способ уменьшения задержки распространения

 —

 сокращение длины шины. Когда сигнал достигает устройства, он должен быть

«захвачен». Захват данных устройством В может быть произведен только по про-
шествии некоторого времени стабилизации. Время стабилизации

 —

 это время,

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

 —

 интервал, в течение которого информация должна оставаться

на шине данных после того, как они были зафиксированы устройством В.

Общее время передачи данных по шине  определяется выражением

 t

п

 =t

зд

 +

 t

ре

+ t

СТ

 + t

УД

.

 Если подставить типовые значения этих параметров, получим 4 + 1,5 +

+ 2 + 0 = 7,5 нс, что соответствует частоте шины 109/7,5 = 133,3 МГц.

На практике передача данных осуществляется с задержкой на инициализацию

транзакции

 Учитывая эту задержку, максимальную скорость передачи можно

определить как 1/(

 t

П

 +t

И

)

Некоторые шины содержат дополнительные линии, используемые для обнару-

жения ошибок, возникших в процессе передачи. Выделение по одной дополни-
тельной линии на каждый отдельный байт данных позволяет контролировать лю-
бой байт по паритету, причем и в случае пересылки по ШД лишь части слова.
Возможен и иной вариант контроля ошибок. В этом случае упомянутые дополни-
тельные линии используются совместно. По ним передается корректирующий код,

благодаря которому ошибка может быть не только обнаружена, но и откорректи-
рована. Такой метод удобен лишь при пересылке по шине полных слов.

Если адрес и данные в шине передаются по независимым (выделенным) сиг-

нальным линиям, то ширина ШАи ШД обычно выбирается независимо. Наибо-

лее частые комбинации: 16-8,16-16, 20-8, 20-16, 24-32 и 32-32. Во многих ши-

нах адрес и данные пересылаются по одним и тем же линиям, но в разных тактах
цикла шины. Этот прием называется

 временным мультиплексированием и

 будет


background image

Распределение линий шины 169

рассмотрен позже. Здесь же отметим, что в случае мультиплексирования ширина

ША и ширина ШД должны быть взаимоувязаны.

Применение раздельных шин адреса и данных позволяет повысить эффектив-

ность использования шины, особенно в транзакциях записи, поскольку адрес ячейки
памяти и записываемые данные

 могут

 передаваться одновременно.

Помимо трактов пересылки адреса и данных, неотъемлемым атрибутом любой

шины являются линии, по которым передается управляющая информации и ин-
формация о состоянии участвующих в транзакции устройств. Совокупность та-
ких линий принято называть

 шиной управления

 (ШУ), хотя такое название пред-

ставляется не совсем точным. Сигнальные линии, входящие в ШУ, можно условно
разделить на несколько групп.

Первую группу образуют линии, по которым пересылаются

 сигналы управле-

ния транзакциями,

 то есть сигналы, определяющие:

• тип выполняемой транзакции (чтение или запись);
• количество байтов, передаваемых по шине данных, и, если пересылается часть

слова, то какие байты;

• какой тип адреса выдан на шину адреса;
• какой протокол передачи должен быть применен.

На перечисленные цели обычно отводится от двух до восьми сигнальных ли-

ний.

Ко второй группе отнесем линии передачи

 информации состояния (статуса).

В эту группу входят от одной до четырех линий, по которым ведомое устройство

может информировать ведущего о своем состоянии или передать код возникшей
ошибки.

Третья группа —

 линии арбитража.

 Вопросы арбитража рассматриваются не-

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

Четвертую группу образуют

 линии прерывания.По

 этим линиям передаются

запросы на обслуживание, посылаемые от ведомых устройств к ведущему. Под
собственно запросы обычно отводятся одна или две линии, однако при одновре-
менном возникновении запросов от нескольких ведомых возникает проблема ар-
битража, для чего могут понадобиться дополнительные линии, если только с этой
целью не используются линии третьей группы.

Пятая группа — линии для организации

 последовательных локальных сетей.

Наличие от 1 до 4 таких линий стало общепринятой практикой в современных
шинах. Обусловлено это тем, что последовательная передача данных протекает

значительно медленнее, чем параллельная, и сети значительно выгоднее строить,
не загружая быстрые линии основных шин адреса и данных. Кроме того, шины
этой группы могут быть использованы как полноценный, хотя и медленный, из-
быточный тракт для замены ША и ШД в случае их отказа. Иногда шины пятой
группы назначаются для реализации специальных функций, таких, например, как
обработка прерываний или сортировка приоритетов задач.

В некоторых ШУ имеется шестая группа сигнальных линий — от 4 до 5

 линий

позиционного кода,

 подсоединяемых к специальным выводам разъема. С помощью


background image

170 Глава 4. Организация шин

перемычек на этих выводах можно задать уникальный позиционный код разъема
на материнской плате или вставленной в этот разъем дочерней платы. Такой код
может быть использован для индивидуальной инициализации каждой отдельной
платы при включении или перезапуске системы.

Наконец, в каждой шине обязательно присутствуют линии, которые в нашей

классификации входят в

 седьмую группу,

 которая по сути является одной из важ-

нейших. Это группа линий

 тактирования и синхронизации.

 При проектировании

шины таким линиям уделяется особое внимание. В состав группы, в зависимости
от протокола шины (синхронный или асинхронный), входят от двух до шести линий.

В довершение необходимо упомянуть линии для подвода питающего напряже-

ния и линии заземления.

Большое количество линий в шине предполагает использование разъемов со

значительным числом контактов. В некоторых шинах разъемы имеют сотни кон-
тактов, где предусмотрены подключение вспомогательных шин специального на-
значения, свободные линии для локального обмена между дочерними платами,
множественные параллельно расположенные контакты для «размножения» пи-
тания и «земли». Значительно чаще число контактов разъема ограничивают.

В табл. 4.1 показано возможное распределение линий 32-разрядной шины в 64-кон-

тактном разъеме.

Таблица 4.1

. Распределение линий 32-разрядной шины в 64-контактном разъеме

Линии

Адрес

Данные
Арбитраж

Управление
Состояние

Тактирование
и синхронизация
Локальная сеть
Позиционный код
Питание

Типовое число выводов

16-32

8-32
3-11

2-8

1-4

2-6

1-4

4-5

2-20
2-20

Комментарии

Могут быть объединены
в мультиплексируемую шину

Выделенные и мультиплексируемые линии

В некоторых ВМ линии адреса и данных объединены в единую

 мультиплексируемую

шину адреса/данных.

 Такая шина функционирует в режиме разделения времени, по-

скольку цикл шины разбит на временной интервал для передачи адреса и временной
интервал для передачи данных. Структура такой шины показана на рис. 4.10.

Мультиплексирование адресов и данных предполагает наличие мультиплексора

на одном конце тракта пересылки информации и демультиплексора на его дру-


Смотрите также файлы