Обзор процессоров и шин ПВМ, начиная с 386 машин

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

устройств ввода-вывода с помощью трех шин.

3.2 Типы шин

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

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

Шина данных служит для пересылки данных между ЦП и памятью или

ЦП и устройствами ввода-вывода. Эти данные могут представлять

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

порты ввода-вывода или принимает оттуда. В МП 8088 шина данных

имеет ширину 8 разрядов. В МП 8086, 80 186, 80 286 ширина шины

данных 16 разрядов; в МП 80 386 — 32 разряда.

Шина адресов используется ЦП для выбора требуемой ячейки

памяти или устройства ввода-вывода путем установки ан шине

конкретного адреса, соответствующего одной из ячеек памяти или

одного из элементов ввода-вывода, входящих в систему. Наконец

по шине управления передаются управляющие сигналы, предназна-

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

ют направление передачи данных (в ЦП или из ЦП), а также мо-

менты передачи.

Магистральная организация предпологает, как правило, нали-

чие управляющего модуля, который выступает в роли директора —

распорядителя при обмене данными. Основное назначение этого

модуля — организация передачи слова между двумя другими моду-

лями.

3.3 Операции на магистрали

Операция на системной магистрали начинается с того, что уп-

равляющий модуль устанавливает на шине кодовое слово модуля —

отправителя и активизирует линию строба отправителя. Это поз-

воляет модулю, кодовое слово которого установлено на шине,

понять, что он является отправителем. Затем управляющий модуль

устанавливает на кодовое слово модуля — получателя и активизи-

рует линию строба получателя. Это позволяет модулю, кодовое

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

получателем.

После этого управляющий модуль возбуждает линию строба дан-

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

лается в регистр получателя. Этот шаг может быть повторен лю-

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

Данные пересылаются от отправителя получателю в ответ на

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

линии строба. При этом предполагается, что к моменту появления

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

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

передача данных носит название синхронной (синхронизирован-

ной).

Что произойдет, если модули участвующие в обмене (один или

оба), могут передавать или принимать данные только при опреде-

ленных условиях? Процессы на магистралях могут носить асинх-

ронный (несинхронизированный) характер. Передачу данных от

отправителя получателю можно координировать с помощью линий

состояния, сигналы на которых отражают условия работы обоих

модулей. Как только модуль назначается отправителем, он прини-

мает контроль над линией готовности отправителя, сигнализируя

с ее помощью о своей готовности принимать данные. Модуль, наз-

наченный получателем, контролирует линию готовности получате-

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

При передаче данных должны соблюдаться два условия. Во-пер-

вых, передача осуществляется лишь в том случае, если получа-

тель и отправитель сигнализируют о своей готовности. Во-вто-

рых, каждое слово должно передаваться один раз. Для обеспече-

ния этих условий предусматривается определенная последователь-

ность действий при передачи данных. Эта последовательность но-

сит название протокола.

В соответствии с протоколом отправитель, подготовив новое