ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6723
Скачиваний: 8
1 7 8 Глава 3. Цифровой логический уровень
операцию. Следовательно, микросхема с 32 информационными выводами работа-
ет гораздо быстрее, но и стоит гораздо дороже.
Кроме адресных и информационных выводов каждый процессор содержит вы-
воды управления. Выводы управления регулируют и синхронизируют поток дан-
ных к процессору и от него, а также выполняют другие разнообразные функции.
Все процессоры содержат выводы для питания (обычно +3,3 В или +5 В), «земли»
и синхронизирующего сигнала (меандра). Остальные выводы разнятся от процес-
сора к процессору. Тем не менее выводы управления можно разделить на несколь-
ко основных категорий:
1. Управление шиной.
2. Прерывание.
3. Арбитраж шины.
4. Состояние.
5. Разное.
Ниже мы кратко опишем каждую из этих категорий. Когда мы будем рассмат-
ривать микросхемы Pentium II, UltraSPARC II и picojava II, мы дадим более по-
дробную информацию. Схема типичного центрального процессора, в котором ис-
пользуются эти типы сигналов, изображена на рис. 3.31.
Адресация
-*-¥—
Данные -»-/-»-
Управление *
шиной *-
Прерывания _ . .
£_
Типичный
микропроцессор
^ * Арбитраж
шины
•*
Сопроцессор
* Состояние
^ Прочие сигналы
•
\
Символ
F +5v заземления
Символ
/
т
синхронизирующего Напряжение 5 В
сигнала
Рис. 3 . 3 1
. Цоколевка типичного центрального процессора. Стрелочки указывают входные
и
выходные сигналы. Короткие диагональные линии указывают на наличие нескольких
выводов. Для конкретных процессоров будет дано число этих выводов
Выводы управления шиной по большей части представляют собой выходы из
центрального процессора в шину (и следовательно, входы в микросхемы памяти и
микросхемы устройств ввода-вывода). Они сообщают, что процессор хочет счи-
тать информацию из памяти, или записать информацию в память, или сделать что-
нибудь еще.
Выводы прерывания — это входы из устройств ввода-вывода в процессор. В боль-
шинстве систем процессор может дать сигнал устройству ввода-вывода начать опе-
рацию, а затем приступить к какому-нибудь другому действию, пока устройство
Микросхемы процессоров и шины 179
ввода-вывода выполняет свою работу. Когда устройство ввода-вывода заканчива-
ет свою работу, контроллер ввода-вывода посылает сигнал на один из выводов
прерывания, чтобы прервать работу процессора и заставить его обслуживать
устройство ввода-вывода (например, проверять ошибки ввода-вывода). Некото-
рые процессоры содержат выходной вывод, чтобы подтверждать получение сигна-
ла прерывания.
Выводы разрешения конфликтов в шине нужны для того, чтобы регулировать
поток информации в шине, то есть не допускать таких ситуаций, когда два устрой-
ства пытаются воспользоваться шиной одновременно. В целях разрешения конф-
ликтов центральный процессор считается устройством.
Некоторые центральные процессоры могут работать с различными сопроцес-
сорами (например, с графическими процессорами, процессорами с плавающей точ-
кой и т. п.). Чтобы обеспечить обмен информации между процессором и сопроцес-
сором, нужны специальные выводы для передачи сигналов.
Кроме этих выводов у некоторых процессоров есть различные дополнитель-
ные выводы. Одни из них выдают или принимают информацию о состоянии, дру-
гие нужны для перезагрузки компьютера, а третьи — для обеспечения совмести-
мости со старыми микросхемами устройств ввода-вывода,
Шины
Шина
— это группа проводников, соединяющих различные устройства. Шины
можно разделить на группы в соответствии с выполняемыми функциями. Они
могут быть внутренними по отношению к процессору и служить для передачи дан-
ных в АЛУ и из АЛУ, а могут быть внешними по отношению к процессору и свя-
зывать процессор с памятью или устройствами ввода-вывода. Каждый тип шины
обладает определенными свойствами, и к каждому из них предъявляются опреде-
ленные требования. В этом и следующих разделах мы сосредоточимся на шинах,
которые связывают центральный процессор с памятью и устройствами ввода-вы-
вода. В следующей главе мы подробно рассмотрим внутренние шины процессора.
Первые персональные компьютеры имели одну внешнюю шину, которая назы-
валась системной
шиной.
Она состояла из нескольких медных проводов (от 50 до
100), которые встраивались в материнскую плату. На материнской плате находи-
лись разъемы на одинаковых расстояниях друг от друга для микросхем памяти и
устройств ввода-вывода. Современные персональные компьютеры обычно содер-
жат специальную шину между центральным процессором и памятью и по крайней
мере еще одну шину для устройств ввода-вывода. На рис. 3.32 изображена система
с одной шиной памяти и одной шиной ввода-вывода.
В литературе шины обычно изображаются в виде жирных стрелок, как показа-
но на этом рисунке. Разница между жирной и нежирной стрелкой небольшая. Ко-
гда все биты одного типа, например адресные или информационные, рисуется
обычная стрелка. Когда включаются адресные линии, линии данных и управле-
ния, используется жирная стрелка.
Хотя разработчики процессоров могут использовать любой тип шины для мик-
росхемы, должны быть введены четкие правила о том, как работает шина, и все
180
Глава 3. Цифровой логический уровень
устройства, связанные с шиной, должны подчиняться этим правилам, чтобы пла-
ты, которые выпускаются третьими лицами, подходили к системной шине. Эти
правила называются протоколом
шины.
Кроме того, должны существовать опре-
деленные технические требования, чтобы платы от третьих производителей под-
ходили к каркасу для печатных плат и имели разъемы, соответствующие материн-
ской плате механически и с точки зрения мощностей, синхронизации и т. д.
Микросхема процессора
Регистры
г.
Г
Шины
1 D
\
А Л У
/
1
7
Встроенная в микросхему шина
Контроллер
шины
Шина памяти
Память
Шина ввода-вывода
Диск
Модем
Принтер
Рис. 3.32.
Компьютерная система с несколькими шинами
Существует ряд широко используемых в компьютерном мире шин. Приведем
несколько примеров: Omnibus (PDP-8), Unibus (PDP-11), IBM PC (PC/XT), ISA
(PC/AT), EISA (80386), MicroChannel (PC/2), PCI (различные персональные ком-
пьютеры), SCSI (различные персональные компьютеры и рабочие станции), Nubus
(Macintosh), Universal Serial Bus (современные персональные компьютеры), FireWire
(бытовая электроника), VME (оборудование в кабинетах физики) и Сагаас (фи-
зика высоких энергий). Может быть, все стало бы намного проще, если бы все шины,
кроме одной, исчезли с поверхности Земли (или кроме двух). К сожалению, стан-
дартизация в этой области кажется маловероятной, и уже вложено слишком много
средств во все эти несовместимые системы.
Давайте начнем с того, как работают шины. Некоторые устройства, связанные
с шиной, являются активными и могут инициировать передачу информации по
шине, тогда как другие являются пассивными и ждут запросов. Активное устрой-
ство называется
задающим устройством,
пассивное —
подчиненным устройством.
Когда центральный процессор требует от контроллера диска считать или записать
блок информации, центральный процессор действует как задающее устройство,
а контроллер диска — как подчиненное устройство. Контроллер диска может дей-
ствовать как задающее устройство, когда он командует памяти принять слова, ко-
торые считал с диска. Несколько типичных комбинаций задающего и подчинен-
ного устройств указаны в табл. 3.3. Память ни при каких обстоятельствах не может
быть задающим устройством.
Микросхемы процессоров и шины
181
Таблица 3.3.
Примеры задающих и подчиненных устройств
Задающее устройство Подчиненное устройство Пример
Центральный процессор Память Вызов команд и данных
Центральный процессор Устройство ввода-вывода Инициализация передачи данных
Центральный процессор Сопроцессор Передача команды от процессора
к сопроцессору
Устройство ввода-вывода Память ПДП (прямой доступ к памяти)
Сопроцессор Центральный процессор Вызов сопроцессором операндов из
центрального процессора
Двоичные сигналы, которые выдают устройства компьютера, часто недоста-
точно интенсивны, чтобы активизировать шину, особенно если она достаточно
длинная и если к ней подсоединено много устройств. По этой причине большин-
ство задающих устройств шины обычно связаны с ней через микросхему, которая
называется
драйвером шины,
по существу являющуюся двоичным усилителем.
Сходным образом большинство подчиненных устройств связаны с шиной
прием-
ником шины.
Для устройств, которые могут быть и задающим, и подчиненным
устройством, используется
приемопередатчик шины.
Эти микросхемы взаимо-
действия с шиной часто являются устройствами с тремя состояниями, что дает
им возможность отсоединяться, когда они не нужны. Иногда они подключаются
через
открытый коллектор,
что дает сходный эффект. Когда одно
или
несколько
устройств на открытом коллекторе требуют доступа к шине в одно и то же время,
результатом является булева операция ИЛИ над всеми этими сигналами. Такое
соглашение называется монтажным
ИЛИ.
В большинстве шин одни линии явля-
ются устройствами с тремя состояниями, а другие, которым требуется свойство
монтажного ИЛИ, — открытым коллектором.
Как и процессор, шина имеет адресные
линии,
информационные линии и ли-
нии управления. Тем не менее между выводами процессора и сигналами шины
может и не быть взаимно однозначного соответствия. Например, некоторые про-
цессоры содержат три вывода, которые выдают сигнал чтения из памяти или запи-
си в память, или чтения устройства ввода-вывода, или записи на устройство вво-
да-вывода, или какой-либо другой операции. Обычная шина может содержать одну
линию для чтения из памяти, вторую линию для записи в память, третью — для
чтения устройства ввода-вывода, четвертую — для записи на устройство ввода-вы-
вода и т. д. Микросхема-декодер должна тогда связывать данный процессор с та-
кой шиной, чтобы преобразовывать 3-битный кодированный сигнал в отдельные
сигналы, которые могут управлять линиями шины.
Разработка шин и принципы действия шин — это достаточно сложные вопро-
сы^ и по этому поводу написан ряд книг [128, 135,136]. Принципиальными вопро-
сами в разработке являются ширина шины, синхронизация шины, арбитраж шины
и функционирование шины. Все эти параметры существенно влияют на скорость
и пропускную способность шины. В следующих четырех разделах мы рассмотрим
каждый из них.
1 8 2
Глава 3 Цифровой логический уровень
Ширина шины
Ширина шины — самый очевидный параметр при разработке. Чем больше адрес-
ных линий содержит шина, тем к большему объему памяти может обращаться про-
цессор. Если шина содержит п адресных линий, тогда процессор может использо-
вать ее для обращения к 2" различным ячейкам памяти. Для памяти большой
емкости необходимо много адресных линий. Это звучит достаточно просто.
Проблема заключается в том, что для широких шин требуется больше прово-
дов, чем для узких. Они занимают больше физического пространства (например,
на материнской плате), и для них нужны разъемы большего размера. Все эти фак-
торы делают шину дорогостоящей. Следовательно, необходим компромисс между
максимальным размером памяти и стоимостью системы. Система с шиной, содер-
жащей 64 адресные линии, и памятью в 2
32
байт будет стоить дороже, чем система
с шиной, содержащей 32 адресные линии, и такой же памятью в 2
32
байт. Дальней-
шее расширение не бесплатное.
Многие разработчики систем недальновидны, что приводит к неприятным
последствиям. Первая модель IBM PC содержала процессор 8088 и 20-битную
адресную шину (рас. 3.33,
а).
Шина позволяла обращаться к 1 Мбайт памяти.
20-битный адрес
20-битный адрес
20-битный адрес
Управление
4-битный адрес
Управление
80386
Управление
4-битный адрес
Управление
8-битный адрес
Управление
в б в
Рис. 3,33.
Расширение адресной шины с течением времени
Когда появился следующий процессор (80286), Intel решил увеличить адрес-
ное пространство до 16 Мбайт, поэтому пришлось добавить еще 4 линии (не нару-
шая изначальные 20 по причинам совместимости с более старыми версиями), как
показано на рис. 3.33,
б.
К сожалению, пришлось также добавить линии управле-
ния для новых адресных линий. Когда появился процессор 80386, было добавлено
еще 8 адресных линий и, естественно, несколько линий управления, как показано
на рис. 3.33,
в.
В результате получилась шина EISA. Однако было бы лучше, если
бы с самого начала имелось 32 линии.
С течением времени увеличивается не только число адресных линий, но и чис-
ло информационных линий. Хотя это происходит по несколько другой причине.
Можно увеличить пропускную способность шины двумя способами: сократить
время цикла шины (сделать большее количество передач в секунду) или увели-