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

 

1. Введение в МП 80386 фирмы Intel

МП вышел на рынок с уникальным преимуществом. Он является

первым 32 - разрядным МП, для которого пригодно существующее

прикладное программное обеспечение стоимостью 6,5 млрд. долл.,

написанное для МП предыдущих моделей от 8086/88 до 80286 (клон

IBM PC). Говорят, что системы совместимы, если программы напи-

санные на одной системе, успешно выполняются на другой. Если

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

старой системы к новой, то говорят о совместимости снизу

вверх. Совместимость снизу вверх на обьектном уровне поддержи-

вает капиталовложения конечного пользователя в программное

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

медленную старую. Микропроцессор 80386 совместим снизу вверх с

предыдущими поколениями МП фирмы Intel. Это означает что прог-

раммы написанные специально для МП 80386 и использующие его

специфические особенности, обычно не работают на более старых

моделях. Однако, так как набор команд МП 80386 и его модули

обработки являются расширениями набора команд предшествующих

моделей, программное обеспечение последних совместимо снизу

вверх с МП 80386.

Специфическими особенностями МП 80386 являются многозадач-

ность, встроенное управление памятью, виртуальная память с

разделением на страницы, защита программ и большое адресное

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

сохранена посредством динамического изменения разрядности ма-

гистрали. МП 80386 выполнен на основе технологии CHMOS III

фирмы Intel, которая вобрала с себя быстродействие технологии

HMOS (МДП высокой плотности) и малое потребление мощности тех-

нологии CMOS (КМДП). МП 80386 предусматривает переключение

программ, выполняемых под управлением различных операционных

систем, такие как MS-DOS и UNIX. Это свойство позволяет разра-

ботчикам программ включать стандартное прикладное программное

обеспечение для 16 -разрядных МП непосредственно в 32 -разряд-

ную систему. Процессор определяет адресное пространство как

один или несколько сегментов памяти любого размера в диапазоне

от 1 байт до 4 Гбайт (4*2 530 0 байт). Эти сегменты могут быть ин-

дивидуально защищены уровнями привилегий и таким образом изби-

рательно разделяться различными задачами. Механизм защиты ос-

нован на понятии иерархии привилегий или ранжированного ряда.

Это означает, что разным задачам или программам могут быть

присвоены определенные уровни, которые используются для дан-

ной задачи.

2. Режимы процессора

Для более полного понятия системы команд МП 80386 необхо-

димо предварительно описать общую схему его работы и архитек-

туру.

В данном реферате не раскрывается более подробно значения

некоторых специфических слов и понятий, считая, что читатель

предварительно ознакомился с МП 8086 и МП 80286 и имеет

представление о их работе и архитектуре. Описываются только те

функции МП 80386, которые отсутствуют или изменены в предыду-

щих моделях МП.

МП 80386 имеет два режима работы: режим реальных адресов,

называемый реальным режимом, и защищенный режим.

2.1. Реальный режим

При подаче сигнала сброса или при включении питания уста-

навливается реальный режим, причем МП 80386 работает как очень

быстрый МП 8086, но, по желанию программиста, с 32-разрядным

расширением. В реальном режиме МП 80386 имеет такую же базовую

архитектуру, что и МП 8086, но обеспечивает доступ к 32-раз-

рядным регистрам. Механизм адресации, размеры памяти и обра-

ботка прерываний МП 8086 полностью совпадают с аналогичными

функциями МП 80386 в реальном режиме.

Единственным способом выхода из реального режима является

явное переключение в защищенный режим. В защищенный режим МП

80386 входит при установке бита включения защиты (РЕ) в нуле-

вом регистре управления (CR0) с помощью команды пересылки (MOV

to CR0). Для совместимости с МП 80286 с целью установки бита

РЕ может быть также использована команда загрузки слова состо-

яния машины LMSW. Процессор повторно входит в реальный режим в

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

РЕ регистра CR0.

2.2. Защищенный режим

Полные возможности МП 80386 раскрываются в защищенном режи-

ме. Программы могут исполнять переключение между процессами с

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

МП 8086. Каждая такая задача проявляет себя в семантике МП

8086 (т.е. в отношениях между символами и приписываемыми им

значениями независимо от интерпретирующего их оборудования).

Это позволяет выполнять на МП 80386 программное обеспечение

для МП 8086 - прикладную программу или целую операционную сис-

тему. В то же время задачи для виртуального МП 8086 изолирова-

ны и защищены как друг от друга, так и от главной операционной

системы МП 80386. Далее перейдем непосредственно к рассмотре-

нию шины данных МП 80386.

3. Шины

Прежде всего дадим определение шины. Шина - это канал пере-

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

мы. Шина может представлять собой набор проводящих линий, выт-

равленных в печатной плате, провода припаянные к выводам разь-

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

бель. Компоненты компьютерной системы физически расположены

на одной или нескольких печатных платах, причем их число и фу-

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

то и от поколения микропроцессора.

Информация передается по шине в виде групп битов. В состав

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

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

тельно во времени использовать одну линию (последовательная

шина).

3.1 Шина с тремя состояниями

Шина с тремя состояниями напоминает телефонную линию общего

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

яние на шине - это состояния высокого уровня, низкого уровня и

высокого импеданса. Состояние высокого импеданса позволяет

устройству или процессору отключиться от шины и не влиять на

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

цессорами. Таким образом, только одно устройство является ве-

дущим на шине. Управляющая логика активизирует в каждый конк-

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

дущим. Когда устройство активизировано, оно помещает свои

данные на шину, все же остальные потенциальные ведущие перево-

дятся в пассивное состояние.

К шине может быть подключено много приемных устройств -

получателей. Обычно данные на шине предназначаются только для

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

ределяет для кого именно. Управляющая логика возбуждает специ-

альные стробирующие сигналы, чтобы указать получателю когда

ему следует принимать данные. Получатели и отправители могут

быть однонаправленными (т.е. осуществлять только либо переда-

чу, либо прием) и двунаправленными (осуществлять и то и дру-

гое).

Шинная (магистральная) организация получила широкое расп-

ространение, поскольку в этом случае все устройства используют

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

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

3.2 Типы шин

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

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

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

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

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

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

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

данных 16 разрядов; в МП 80386 - 32 разряда.

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

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

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

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

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

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

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

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

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

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

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

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

лями.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ной).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

слово, информирует об этом получателя. Получатель, приняв оче-

редное слово, информирует об этом отправителя. Состояние линий

готовности в любой момент времени определяет действия, которые

должны выполнять оба модуля.

Каждый шаг в передаче данных от одной части системы к дру-

гой называется циклом магистрали (или часто машинным циклом).

Частота этих циклов определяется тактовыми сигналами ЦП. Дли-

тельность цикла магистрали связана с частотой тактовых сигна-

лов. Типичными являются тактовые частоты 5, 8, 10 и 16 МГц.

Наиболее современные схемы работают на частоте до 24 МГц.

3.4 Порты ввода-вывода

Адресное пространство ввода-вывода организовано в виде пор-

тов. Порт представляет собой группу линий ввода-вывода, по ко-

торым происходит параллельная передача информации между ЦП и

устройством ввода-вывода, обычно по одному биту на линию. Чис-

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

терным для данного процессора. Входной порт чаще всего органи-

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

входные сигналы поступают на линии системной шины данных. Вы-

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

рых хранятся сигналы, снятые с шины данных.

Если в передаче информации участвует процессор, то направ-

ление потока входной и выходной информации принято рассматри-

вать относительно самого процессора. Входной порт - это любой

источник данных (например, регистр), который избирательным об-

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

данных в процессор. Наоборот, выходной порт представляет собой

приемник данных ( например, регистр), который избирательным

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

выходной порт принимает слово данных из микропроцессора.

Процессор должен иметь возможность координировать скорость

своей работы со скоростью работы внешнего устройства, с кото-

рым он обменивается информацией. В противном случае может по-

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

го как, процессор их затребует, и процесс пересылки данных на-

ложится на какой-то другой процесс в ЦП. Как уже отмечалось,

эта координация работы двух устройств носит название "рукопо-

жатия", или квитирования.

Теперь подробнее остановимся на режимах работы портов вво-

да-вывода. Существуют три вида взаимодействия процессора с

портами ввода-вывода: программное управление, режим прерываний

и прямой доступ к памяти (ПДП).

Программно-управляемый ввод-вывод инициируется процессором,

который выполняет программу, управляющую работой внешнего уст-

ройства. Режим прерываний отличается тем, что инициатором вво-

да-вывода является внешнее устройство. Устройство, подключен-

ное к выводу прерываний процессора, повышает уровень сигнала

на этом выводе (или в зависимости от типа процессора понижает

его). В ответ процессор, закончив выполнение текущей команды,

сохраняет содержимое программного счетчика в соответствующем

стеке и переходит на выполнение программы, называемой програм-

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

ПДП тоже инициируется устройством. Передача данных между

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

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

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

3.5 Униварсальный синхронно-асинхронный

приемопередатчик

Микропроцессор взаимодействует с перифирийными устройства-

ми, принимающими и передающими данные в последовательной фор-

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

преобразование параллельного кода в последовательный, а также

последовательного в параллельный.

Чаще всего пересылка данных между процессором и периферий-

ными устройствами выполняются асинхронно. Другими словами,

устройство может передавать данные в любой момент времени. Ес-

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

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

медленно обнаружить любой разрыв цепи передачи. Если устройс-

тво готово передавать данные, передатчик посылает нулевой бит,

обозначающий начало посылки. За этим нулевым битом следуют

данные, затем бит четности и , наконец, один или два стоп-би-

та. Закончив передачу, отправитель продолжает посылать высокий

уровень сигнала в знак того, что данные отсутствуют.

Для удобства проектирования интерфейса процессора с уст-

ройствами последовательного ввода-вывода (как синхронными, так

и асинхронными) разработаны микросхемы универсальных синхрон-

но-асинхронных приемопередатчиков (УСАПП). В состав УСАПП вхо-

дят функционирующие независимо секции приемника-передатчика.

УСАПП заключен в корпус с 40 выводами и является дуплексным

устройством (т. е. может передавать и принимать одновременно).

Он выполняет логическое форматирование посылок. Для подключе-

ния УСАПП могут потребоваться дополнительные схемы, однако нет

необходимости в общем тактовом генераторе, синхронизирующем

УСАПП и то устройство, с которым установлена связь. В передат-

чике УСАПП предусмотрена двойная буферизация, поэтому следую-

щий байт данных может приниматься из процессора, как только

текущий байт подготовлен для передачи.

Выпускаются микросхемы УСАПП со скоростями передачи до 200

Кбод. Скорость работы передатчика и приемника (не обязательно

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

частота которых должна в 16 раз превышать требуемую скорость

передачи. Сигналы от внешних генераторов поступают на раздель-

ные тактовые входы приемника и передатчика.

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

чаются к своим УСАПП параллельно. Между УСАПП действует после-

довательная связь (например по стандарту RS-232C).

4. MULTIBUS

Структура магистрали, обеспечивающей сопряжение всех аппа-

ратных средств, является важнейшим элементом вычислительной

системы. Магистраль позволяет многочисленным компонентам сис-

темы взаимодействовать друг с другом. Кроме того, в структуру

магистрали заложены возможности возбуждения прерываний, ПДП,

обмена данными с памятью и устройствами ввода-вывода и т. д.

Магистраль общего назначения MULTIBUS фирмы Intel представ-

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

работу самых разнообразных вычислительных модулей. Основой ко-

ординации служит назначение модуля системы MULTIBUS атрибутов

ведущего и ведомого.

4.1 Магистрали MULTIBUS I/II.

Одним из наиболее важных элементов вычислительной системы

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

жение всех аппаратных средств. Системная магистраль обеспечи-

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

мы и совместное использование системных ресурсов. Последнее

обстоятельство играет важную роль в существенном увеличении

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

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

ройств ввода-вывода, прямой доступ к памяти и возбуждение пре-

рываний.

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

сбои проходящие в других частях системы, не влияют на их функ-

ционирование. Это увеличивает общую надежность системы. Приме-

рами магистралей общего назначения являются предложенные фир-

мой Intel архитектуры MULTIBUS I и II, обеспечивающие коммуни-

кационный канал для координации работы самых разнообразных вы-

числительных модулей.

MULTIBUS I и MULTIBUS II используют концепцию "ведущий-ве-

домый". Ведущим является любой модуль, обладающий средствами

управления магистралью. Ведущий с помощью логики доступа к ма-

гистрали захватывает магистраль, затем генерирует сигналы уп-

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

да-вывода. Для выполнения этих действий ведущий оборудуется

либо блоком центрального процессора, либо логикой, предназна-

ченной для передачи данных по магистрали к местам назначения и

от них. Ведомый - это модуль, декодирующий состояние адресных

линий и действующий на основании сигналов, полученных от веду-

щих; ведомый не может управлять магистралью. Процедура обмена

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

быстродействия взаимодействовать через магистраль. Ведущий ма-

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

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

ние циклов магистрали. Такая операция носит название "блокиро-

вания" магистрали; она временно предотвращает использование

магистрали другими ведущими.

Другой важной особенностью магистрали является возможность

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

роцессорных систем.

MULTIBUS I позволяет передать 8- и 16 разрядные данные и

оперировать с адресами длиной до 24 разрядов.

MULTIBUS II воспринимает 8-, 16- и 32-разрядные данные, а

адреса длиной до 32 разрядов. Протоколы магистралей MULTIBUS I

и II подробно описаны в документации фирмы Intel, которую сле-

дует тщательно изучить перед использованием этих магистралей в

какой - либо системе.

4.2 MULTIBUS I

MULTIBUS I фирмы Intel представляет собой 16-разрядную мно-

гопроцессорную систему, согласующуюся со стандартом IEEE 796.

На рис. 5 приведена структурная схема сопряжения с магистралью

MULTIBUS I. На рисунке не показана локальная шина и локальные

ресурсы МП 80386.

4.3 Пример интерфейса магистрали MULTIBUS I

Один из способов организации взаимодействия между МП 80386

и магистралью MULTIBUS I заключается в генерации всех сигналов

MULTIBUS I c помощью программируемых логических матриц (ПЛМ) и

схем ТТЛ. Проще использовать интерфейс, совместимый с МП

80286. Основные черты этого интерфейса описаны ниже.

Интерфейс магистрали MULTIBUS I состоит из совместимого с

МП 80286 арбитра магистрали 82288. Контроллер может работать

как в режиме локальной магистрали, так и в режиме MULTIBUS I;

резистор на входе МВ схемы 82288, подключенный к источнику пи-

тания, активизирует режим MULTIBUS I. Выходной сигнал MBEN де-

шифратора адреса на ПЛМ служит сигналом выбора обеих микросхем

82288 и 828289. Сигнал AEN # с выхода 82289 открывает выходы

контроллера 82288.

Взаимодействие между процессором 80386 и этими двумя уст-

ройствами осуществляется с помощью ПЛМ, в которые записаны

программы генерации и преобразования необходимых сигналов. Ар-

битр 82289 вместе с арбитрами магистрали других вычислительных

подсистем координирует управление магистралью MULTIBUS I,

обеспечивая управляющие сигналы, необходимые для получения

доступа к ней.

В системе MULTIBUS I каждая вычислительная подсистема пре-

тендует на использование общих ресурсов. Если подсистема зап-

рашивает доступ к магистрали, когда другая система уже исполь-

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

дения. Логика арбитража магистрали управляет доступом к ма-

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

ет собственный арбитр магистрали 82289. Арбитр подключает свой

процессор к магистрали и разрешает доступ к ней ведущим с бо-

лее высоким или более низким приоритетом в соответствии с за-

ранее установленной схемой приоритетов.

Возможны два варианта процедуры управления занятием магист-

рали: с последовательным и параллельным приоритетом. Схема

последовательного приоритета реализуется путем соединения це-

почкой входов приоритета магистрали (BPRN #) и выходов приори-

тета магистрали (BPRO #) всех арбитров магистрали в системе.

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

подключаемых арбитров. Схема параллельного приоритета требует

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

BPRN # от всех арбитров магистрали и возвращает активный сиг-

нал BPRО # запрашивающему арбитру с максимальным приоритетом.

Максимальное число арбитров , участвующих в схеме с параллель-

ным приоритетом, определяется сложностью схемы дешифрации.

После завершения цикла MULTIBUS I арбитр, занимающий ма-

гистраль, либо продолжает ее удерживать, либо освобождает с

передачей другому арбитру. Процедура освобождения магистрали

может быть различной. Арбитр может освобождать магистраль в

конце каждого цикла, удерживать магистраль до тех пор пока не

будет затребована ведущим с более высоким приоритетом, или

освобождать магистраль при поступлении запроса от ведущего с

любым приоритетом.

Система MULTIBUS I с 24 линиями адреса и 16 линиями данных.

Адреса системы расположены в диапазоне 256 кбайт (между

F00000H и F3FFFFH), причем используются все 24 линии. 16 линий

данных представляют младшую половину (младшие 16 разрядов) 32-

разрядной шины данных МП 80386. Адресные разряды MULTIBUS I

нумеруются в шеснадцатеричной системе; А23-А0 В МП 80386 ста-

новятся ADR17# - ADR0# в системе MULTIBUS I. Инвертирующие ад-

ресные фиксаторы поразрядно преобразуют выходные сигналы адре-

са МП 80386 в адресные сигналы с низким активным уровнем для

магистрали MULTIBUS I.

Дешифратор адреса. Система MULTIBUS I обычно включает и об-

щую, и локальную память. Устройства ввода-вывода (УВВ) также

могут быть расположены как на локальной магистрали, так и на

MULTIBUS I. Отсюда следует, что: 1) пространство адресов МП

80386 должно быть разделено между MULTIBUS I и локальной ма-

гистралью и 2) должен использоваться дешифратор адресов для

выбора одной из двух магистралей. Для выбора магистрали MULTI-

BUS I требуются два сигнала:

1. Сигнал разрешения MULTIBUS I (MBEN) служит сигналом вы-

бора контроллера магистрали 82288 и арбитра магистрали 82289 в

схеме сопряжения с MULTIBUS I. Другие выходы ПЛМ дешифратора

служат для выбора памяти и УВВ на локальной магистрали.

2. Для обеспечения 16-разрядного цикла магистрали процессо-

ру 80386 должен быть возвращен активный сигнал размера шины

BS16#. К уравнению ПЛМ, описывающему условия возбуждения сиг-

нала BS16#, могут быть добавлены дополнительные члены для дру-

гих устройств, требующих 16-разрядной шины.

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

могут быть отображены на отдельное пространство адресов вво-

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

на магистрали I, либо отображены на пространство адресов памя-

ти МП 80386. Адреса УВВ, отображенных на пространство памяти,

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

да-вывода. Это декодирование должно осуществляться для всех

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

ввода-вывода.

Адресные фиксаторы и приемопередатчики данных. Адрес во

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

протоколу MULTIBUS I на адресных входах должен удерживаться

достоверный адрес по крайней мере 50 нс после того, как коман-

да MULTIBUS I становится пассивной. Сигнал разрешения адреса

(AEN#) на выходе арбитра магистрали 82289 становится активным,

как только арбитр получает управление магистралью MULTIBUS I.

Сигнал AEN# действует как разрешающий для фиксаторов MULTIBUS

Разряды данных MULTIBUS I нумеруются в шестнадцатеричной

системе, так что D15-D0 превращается в DATF#-DAT0#. Инвертиру-

ющие факторы и приемопередатчики вырабатывают низкий активный

уровень для магистрали MULTIBUS I. Данные фиксируются только в

циклах записи. Во время цикла записи адресными фиксаторами и

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

сигналы ALE#, DEN и DT/R# от контроллера 82288. В циклах чте-

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

ной магистрали RD#. Если при использовании сигнала DEN за ло-

кальным циклом записи немедленно последует цикл чтения MULTI-

BUS I, на локальной магистрали МП 80386 возникнет конфликтная

ситуация.

 

4.4 Магистраль расширения ввода-вывода iSBX

Магистраль iSBX независима от типа процессора или платы.

Каждый интерфейс расширения непосредственно поддерживает до

8-разрядных портов ввода-вывода. Посредством ведомых процессо-

ров или процессоров с плавающей точкой обеспечивается расшире-

ние адресных возможностей. Кроме того, каждый интерфейс расши-

рения может при необходимости поддерживать канал ПДП со ско-

ростью передачи до 2 Мслов/с

Магистраль iSBX включает два основных элемента: базовую

плату и модуль расширения. Базовая плата - это любая плата с

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

(коннекторами), удовлетворяющими электрическим и механическим

требованиям спецификации Intel. Естественно, базовая плата

всегда является ведущим устройством, она генерирует все адре-

са, сигналы выбора и команды.

Модуль расширения магистрали iSBX представляет собой не-

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

базовой плате. Модуль может иметь одинарную или двойную шири-

ну. Назначение модуля расширения - преобразование протокола

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

да-вывода.

Расширение функций,реализуемых каждой системной платой,

подключенной к магистрали MULTIBUS I, повышает производитель-

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

функциям не требуется арбитраж магистрали.

4.5 Многоканальная магистраль

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

ванный электрический и механический протокол, действующий как

составная часть системы MULTIBUS I. Эта магистраль предназна-

чена для скоростной блочной пересылки данных между системой

MULTIBUS I и взаимосвязанными перефирийными устройствами. В

тех случаях, когда требуется пересылать группу байтов или

слов, расположенных (или распологаемых) по последовательным

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

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

жиме с использованием протокола подтверждений и с проверкой

четности, обеспечивающей правильность передачи данных.

Улучшению характеристик системы MULTIBUS I способствует

уменьшение влияния на ее производительность оборудования па-

кетного типа. Потоки данных от пакетных устройств могут ис-

пользовать интерфейс общего назначения. Протокол многоканаль-

ной магистрали специально приспособлен для пакетных пересылок

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

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

ны многоканальной магистрали, так и со стороны интерфейса MUL-

TIBUS I.

4.6 Магистраль локального расширения iLBX

Магистраль iLBX предназначена для непосредственных скорост-

ных передач данных между ведущими и ведомыми и обеспечивает:

1) максимум два ведущих на магистрали, что упрощает процедуру

арбитража; 2) асинхронный по отношению к передаче данных ар-

битраж магистрали; 3) минимум два и максимум пять устройств,

связанных с магистралью; 4) ведомые устройства, определяемые

как ресурсы памяти с байтовой адресацией, и 5) ведомые уст-

ройства, функции которых непосредственно контролируются сигна-

лами линий магистрали iLBX.

Увеличение локальных (на плате) ресурсов памяти высокопро-

изводительного процессора улучшает характеристики всей систе-

мы. Что касается других специальных функций, то наличие на

процессорной плате памяти повышает производительность, пос-

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

результатов арбитража магистрали. С другой стороны, в силу

пространственных ограничений на процессорной плате удается

разместить память лишь небольшого обьема. Магистраль iLBX поз-

воляет снизить эти пространственные ограничения. При использо-

вании магистрали iLBX нет необходимости в размещении дополни-

тельной памяти на процессорной плате. Вся память (обьемом до

нескольких десятков Мбайт), адресуемая процессором, доступна

через магистраль iLBX и представляется процессору размещенной

на процессорной плате. Наличие в системе памяти двух портов -

одного для обмена с магистралью iLBX, а другого для обмена с

магистралью MULTIBUS I - делает доступной эту память другим

компонентам системы. К магистрали iLBX можно подключить до пя-

ти устройств. В число устройств должны входить первичный веду-

щий и один ведомый. Остальные три устройства не являются обя-

зательными. Первичный ведущий управляет магистралью iLBX и ор-

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

Вторичный ведущий, если он есть, предоставляет дополнительные

возможности доступа к ведомым ресурсам по магистрали iLBX.

4.7 MULTIBUS II

Архитектура системы MULTIBUS II является процесорно-незави-

симой. Она отличается наличием 32-разрядной параллельной сис-

темной магистралью с максимальной скоростью передачи 40

Мбайт/с, недорогой последовательной системной магистрали и

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

платам памяти. MULTIBUS II включает пять магистралей Intel: 1)

локального расширения (iLBX II), 2) многоканального доступа к

памяти, 3) параллельную системную (iPSB), 4) последовательную

системную (iSSB) и 5) параллельную расширения ввода-вывода

(iSBX).

Структура с несколькими магистралями имеет преимущества пе-

ред одномагистральной системой. В частности каждая магистраль

оптимизирована для выполнения определенных функций, а опера-

ции на них выполняются параллельно. Кроме того, магистрали, не

используемые в конкретной системе, могут быть исключены из ее

архитектуры, что избавляет от неоправданных затрат. Три ма-

гистрали из перечисленных кратко описаны ниже.

4.7.1 Параллельная системная магистраль iPSB.

Параллельная системная магистраль iPSB используется для

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

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

тоянной скоростью 40 Мбайт/с.

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

функциональную подсистему. Каждый связной магистрали должен

иметь средства передачи данных между МП 80386, его регистрами

межсоединений и магистралью iPSB. Магистраль iPSB представляет

каждому связному магистрали четыре пространства адресов: 1)

обычного ввода-вывода, 2) обычной памяти 3) пространство памя-

ти объемом до 255 адресов для передачи сообщений и 4) прост-

ранство межсоединений. Последнее обеспечивает графическую ад-

ресацию, при которой идентификация связного магистрали (платы)

осуществляется по номеру позиции, на которой установлена пла-

та. Поскольку МП 80386 имеет доступ только к пространствам па-

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

следует отображать на первые два пространства.

Операции на магистрали iPSB осуществляются посредством трех

циклов магистрали. Цикл арбитража определяет следующего вла-

дельца магистрали. Этот цикл состоит из двух фаз: фазы приня-

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

магистралью, и фазы захвата, когда связной с наивысшим приори-

тетом начинает цикл пересылки.

Второй цикл магистрали iPSB - цикл пересылки, реализует пе-

ресылку данных между владельцем и другим связным. Третий цикл

iPSB - цикл исключения, указывает на возбуждение исключения в

течении цикла пересылки.

4.7.2 Магистраль локального расширения iLBX II

Магистраль локального расширения iLBX II является быстро-

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

к памяти, расположенной на отдельных платах. Одна магистраль

iLBX II поддерживает либо две процессорные подсистемы плюс че-

тыре подсистемы памяти, либо одну процессорную подсистему плюс

пять подсистем памяти. При необходимости иметь большой объем

памяти система MULTIBUS II может включать более одной магист-

рали iLBX II. В системе на базе МП 80386 с тактовой частотой

16 МГц типичный цикл доступа iLBX требует 6 циклов ожидания.

Для магистрали iLBX характерны 32-разрядная шина данных и

26-разрядная шина адресов. Поскольку эти шины разделены, воз-

никает возможность конвейерных операций в цикле пересылки. К

дополнительным особенностям магистрали iLBX относятся: 1) од-

нонаправленное подтверждение при быстрой пересылке данных, 2)

пространство межсоединений (для каждого связного магистрали),

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

настраивает всех остальных связных магистрали, и 3) средство

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

мятью.

4.7.3 Последовательная магистраль iSSB

Относительно дешевая последовательная системная магистраль

iSSB может использоваться вместо параллельной системной ма-

гистрали iPSB в тех случаях, когда не требуется высокая произ-

водительность последней. Магистраль iSSB может содержать до 32

связных магистрали, распределенных на длине максимум 10 м. Уп-

равление магистралью ведется с помощью стандартного протокола

множественного доступа с опросом несущей и разрешением конф-

ликтов (CSMA/CD). Связные магистрали используют этот протокол

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

ременного инициирования передачи двумя или несколькими связны-

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

чивающий справедливое предоставление доступа всем запрашиваю-

щим связным.

5.1 Ведущие

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

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

мощью логических схем обмена и инициирует передачу данных по

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

либо специальные логические схемы. Ведущие генерируют сигналы

сигналы управления, адресные сигналы, а также адреса памяти

или устройств ввода-вывода.

Ведущий может работать в одном из двух режимов: режиме 1

или режиме 2. В режиме 1 ведущий ограничен одной передачей по

магистрали через каждое подключение к шине. Если все ведущие в

системе используют режим 1, скорость работы системы ограничи-

вается максимальной величиной цикла занятости магистрали. Это

позволяет разработчикам прогнозировать общую производитель-

ность конкретной системы.

В режиме 2 у ведущих больше возможностей захвата магистра-

ли, они могут инициировать обмен с наложением на текущую опе-

рацию. В этом режиме разрешены тайм-ауты магистрали, и опера-

ции ведущих не ограничены максимальной величиной цикла заня-

тости магистрали. Режим 2 обеспечивает широкий класс операций,

что придает системе гибкость при удовлетворении запросов поль-

зователей.

5.2 Ведомые

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

лизации запросов на передачу данных. Ведомые декодируют состо-

яние адресных линий и действуют в соответствии с сигналами уп-

равления от ведущих. На рис. 7 изображены примеры ведущих и

ведомых на магистрали MULTIBUS.

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

Система MULTIBUS допускает наличие нескольких ведущих на

магистрали, каждый из которых захватывает магистраль по мере

возникновения необходимости в передаче данных. Ведущие осу-

ществляют захват магистрали с помощью специальной последова-

тельности обмена. В эту последовательность входят шесть сигна-

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

и нет ли запросов на ее захват от других ведущих с более высо-

ким приоритетом, а также захватывать и освобождать магистраль.

Арбитраж приоритетов. Система предусматривает две схемы ар-

битража приоритетов: последовательную и параллельную. В после-

довательной схеме приоритет ведущего определяется с помощью

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

го модуля соединяется с входом разрешения модуля с более низ-

ким приоритетом. На одном конце цепочки оказывается модуль с

наивысшим приоритетом, на другом конце - с наинизшим.

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

запросе магистрали. Если магистраль не захвачена ведущим с бо-

лее высоким или равным приоритетом, запрос данного ведущего

удовлетворяется. Число ведущих, обьединенных последовательной

цепочкой, ограничено временем прохождения по цепочке сигнала

приоритета, которое не должно превышать длительности цикла ма-

гистрали. Если используется частота 10 МГц, в цепочке может

быть не более трех ведущих.

В параллельной схеме доступом к магистрали ведает специаль-

ный арбитр. При этом определение очередного ведущего на ма-

гистрали производится на основе списка фиксированных приорите-

тов или каким-то другим способом, заданны в системе. На рис. 6

показана одна из схем параллельного арбитража.

5.4 Архитектура магистрали

В магистраль MULTIBUS входят 16 линий данных, 20 адресных

линий, 8 линий многоуровневых прерываний, а также линии управ-

ления и арбитража. Такое большое количество линий позволяет

одновременно использовать в системе и 8- и 16-разрядные веду-

щие модули.

Система MULTIBUS использует собственный тактовый генератор,

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

личие независимого генератора позволяет использовать магист-

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

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

гу.

Принципы арбитража в системе MULTIBUS позволяют медленным ве-

дущим равноправно конкурировать за захват магистрали. Однако

после того, как модуль захватил магистраль, скорость передачи

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

Основное назначение магистрали MULTIBUS в обеспечении кана-

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

Система позволяет использовать платы с различными возможностя-

ми, изменять ширину шин данных и адресов ввода-вывода, уста-

навливать атрибуты прерываний.

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

построенной на основе МП 80386, и для увеличения ее производи-

тельности разработана магистраль MULTIBUS II. В новую архитек-

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

производительности мультипроцессорной системы. При использова-

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

с максимально возможной скоростью пакетами 32-разрядных дан-

ных.

В дополнение к передаче сообщений модули платы MULTIBUS II

обеспечивают виртуальные прерывания, географическую адресацию

и распределенный арбитраж. При наличии виртуальных прерываний

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

мяти другого процессора, что почти неограничено увеличивает

гибкость механизма прерываний.

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

ванных на плате регистров межкомпонентных соединений, обеспе-

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

конфигураций законченных комплексных систем. Распределенный

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

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

В этом случае все платы в системе имеют одинаковый приоритет

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

блокирование плат с низким приоритетом ведущими платами высо-

кой производительности.

Ключевым вопросом при построении систем на основе магистра-

ли MULTIBUS является нахождение оптимального соотношения между

требуемыми и фактическими характеристиками. Для каждого эле-

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

теристик. Взаимодействие двух таких элементов ограничивается

множеством характеристик, которое определяется как пересечение

множеств характеристик обоих элементов. В некоторых случаях

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

неработоспособности системы.

6.1 Процессоры выше 80386.

Основными процессорами, на которых собиратеся подавляю-

щее большинство современных компьютеров, являются 2 процессоры

 2фирмы Intel типа 486 (SX, DX, DX2, OverDrive) и Pentium. 0 Сис-

темные платы на процессорах 386SX и 386 DX применяются в

очень небольшом количестве в самых недорогих системах, а на

286 процессоре не выпускаются вообще. Фирма Intel в настоящее

время производит следующие типы процессоров семейства 486 и

Pentium:

- 486SX-25, 486SX-33, 486SX2-50;

- 486DX-33, 486DX2-50, 486DX-50, 486DX2-66;

- 486DX4-75, 486DX4-100;

- Pentium 60, Pentium 90, Pentium 100.

Все процессоры семейства 486 имеют 32-разрядную архитекту-

ру, внутреннюю кэш-память 8 КВ со сквозной записью (у DX4 -

16 КВ). Модели SX не имеют встроенного сопроцессора. Модели

DX2 реализуют механизм внутреннего удвоения частоты (напри-

мер, процессор 486DX2-66 устанавливается на 33-мегагерцовую

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

тически в два раза, так как эффективность кэширования внут-

ренней кэш-памяти составляет почти 90 процентов. Процессоры

семейства DX4 - 486DX4-75 и 486DX4-100 предназначены для ус-

тановки на 25-ти и 33-мегагерцовые платы. По производитель-

ности они занимают нишу между DX2-66 и Pentium-60/66, причем

быстродействие компьютеров на 486DX4-100 вплотную приближает-

ся к показателям Pentium 60. Напряжение питания составляет

3,3 вольта, то есть их нельзя устанавливать на обычные сис-

темные платы. Процессор 486DX4-75 предназначен прежде всего

для использования к компьютерам типа Notebook, а 486DX4-100 -

в настольных системах. К сожалению, Intel ограничивает пос-

тавки процессоров 486DX4-100, а цены на них установил на су-

щественно более высоком уровне, чем на Pentium 60, чтобы из-

бежать конкуренции между собственными продуктами. По мнению

Intel, когда начнутся массовые поставки этих процессоров

(первый квартал 1995 года), их стандартным применением станут

уже только системы самого начального уровня.

 2Процессор Pentium 0 является одним из самых мощных в настоя-

щее время. Он относится к процессорам с полным набором ко-

манд, хотя его ядро имеет риск-архитектуру. Это 64-разрядный

суперскалярный процессор (то есть выполняет более одной ко-

манды за цикл), имеет 16 КВ внутренней кэш-памяти - по 8 КВ

отдельно для данных и команд, встроенный сопроцессор. В нас-

тоящее время наиболее широко выпускается процессор на 60 MHz

_уд по всему, именно этот процессор выбран фирмой Intel в ка-

честве основного на конец текущего и начало 1995 годка, кото-

рый должен прийти на смену семейству 486. Процессор на 66 MHz

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

лей на 90 и 100 MHz.

 2Несколько слов о процессорах семейства OverDrive. 0 В основ-

ном это процессоры с внутренним удвоением частоты, предназна-

ченные для замены процессоров SX. Что касается широко разрек-

ламированного в свое время процессора OverDrive на основе

Pentium (так называемый P24T или Pentium SX), то сроки его

выпуска неоднократно срывались. Сейчас начало выпуска перене-

сено на последнюю четверть текущего года. Хотя на рынке

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

установки кроме 486 процессоров и процессора Р24Т, использо-

вать его на этих платах скорее всего будет нельзя, так как

никакого тестирования плат с этим процессором изготовители не

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

нии только на опубликованную фирмой Intel спецификацию.

Представители фирмы Intel заявили недавно, что существуют

серьезные сомнения в работоспособности большинства этих плат

в связи с недостаточной проработкой вопрсово, связанных с пе-

регревом процессоров.

Поскольку при работе с существующим программным обеспече-

нием процессоры Pentium не достигают максимального быстро-

действия, фирма Intel для оценки производительности своих

процессоров предложила специальный индекс - iCOMP (Intel COm-

parative Microprocessor Performance), который, по ее мнению,

более точно отражает возрастание производительности при пере-

ходе к новому поколению процессоров (некоторые из выпущенных

уже моделей компьютеров на основе Pentium при выполнении оп-

ределенных программ демонстрируют даже меньшее быстродейс-

твие, чем компьютеры на основе 486DX2-66, это связано как с

недостатками конкретных системных плат, так и с неоптимизиро-

ванностью программных кодов). Производительность процессора

486SX-25 принимается за 100.

Более того, именно величина производительности с использо-

ванием индекса iCOMP используется фирмой Intel в новой систе-

ме маркировки процессоров Pentium. например, 735\90 и 815\100

для тактовой частоты 90 и 100 MHz.

Кроме фирмы Intel, на рынке широко представлены другие

фирмы, выпускающие клоны семейств 486 и Pentium. 2 Фирма AMD

 2производит 486DX-40, 486DX2-50, 486DX2-66. Готовятся к выпус-

 2ку процессоры 486DX@-80 и 486DX4-120. 0 Они обеспечивают полную

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

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

аналогичные изделия фирмы Intel (при одинаковой тактовой час-

тоте). Кроме того, они предлагаются по более низким ценам, а

процессор на 40 MHz6 отсутствующий в производственной прог-

рамме Intel, конкурирует с 486DX-33, превосходя его по произ-

водительности на 20 процентов при меньшей стоимости.

 2Фирма Cyrix разработала процессоры М6 и  0М7 2 (аналоги 486SX

 2и 486 0DX 2) на тактовые частоты 33 м 40 MHz, а также с удвоением

 2частоты DX2-50 и DX2-66. 0 Они имеют более быстродействующую

внутреннюю кэш-память 8 КВ с обратной запписью и более быст-

рый встроенный сопроцессор. По некоторым операциям производи-

тельность выше, чем у процессоров фирмы Intel, по некоторым -

несколько ниже. Соответственно, существенно различаются и ре-

зультаты на разных тестирующих программах. Цены на 486 про-

цессоры Cyrix значительно ниже, чем на Intel и AMD. Подготов-

лен к выпуску совместимый с Pentium 2 процессор М1 0, который мо-

жет составить ему серьезную конкуренцию, так как будет пре-

восходить его при работе с рассчитанными на 486 процессоры,

то есть не оптимизированным под Pentium, программным обеспе-

чением. По оценкам Intel, эффективность Pentium при работе с

такми программным обеспечением составляет около 70 процентов,

Cyrix же обещает 90, так как архитектура М1 более "рисковая":

он имеет 32 регистра вместо 8 и систему их динамической пере-

адресации для обеспечения совместимости. В то же время М1 по

операциям с плавающей точкой уступает процессору фирмы Intel.

 2Cобственные варианты процессоров семейства 486 - 486SX-33,

 2486SX-40, 486SX-80, 486DX-40 предлагает фирма UMC. 0 Они пол-

ностью совместимы с процессорами Intel. Из-за патентных огра-

ничений они не поставляются в США.

Первый клон процессора Pentium - изделие под названием 586

- выпустила фирма NexGen. Этот 64-разрядный процессор рассчи-

тан на работу на тактовых частотах 60 и 66 MNz, построен на

основе запатентованной суперскалярной архитектуры RISC86 и

полностью совместим с семейством 80х86. Напряжение питания -

3,3 вольта. Стоимость его существенно ниже, чем у Pentium.

Для самых простых систем фирмой Texas Instruments продол-

жается выпуск дешевых, но эффективных процессоров 486DLC, ко-

торые, занимая промежуточное положение между 386 и 486 се-

мейством (они выполнены в конструктиве 386 процессора0, обес-

печивают производительность на уровне 486 процессора при цене

386. Новая версия - 486SXL с увеличенной до 8 КВ внутренней

кэш-памятью еще ближе приближается к характеристикам 486 се-

мейства.

Все большую популярность завоевывают 2 риск-процессоры се-

 2мейства Power PC 601 (IBM, Apple, Motorola) 0, которые имеют

отличную от Intel архитектуру (в основе - архитектура Power

фирмы IBM с внутренней кэш-памятью 32 КВ). Полагают, что

именно конкуренция между Power PC и Pentium является самым

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

нальных компьютеров. Power PC 601 примерно в два раза дешев-

ле, чем Pentium, потребляет в два раза меньшую мощность и

превосходит Pentium по производительности, особенно по опера-

циям с плавающей точкой. Сначала на процессоре 601 была реа-

лизована только система 6000 фирмы IBM и PowerMac фирмы App-

le. В настоящее время большинство производителей компьютеров

имеют свои варианты систем на базе Power PC, однако решение

об их производстве будет определяться прежде всего складываю-

щейся конъюнктурой.