Обзор процессоров и шин ПВМ, начиная с 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, однако решение об их производстве будет определяться прежде всего складываю- щейся конъюнктурой. Поделитесь этой записью или добавьте в закладки | Полезные публикации |