Реферат: Обзор процессоров и шин ПВМ начиная с 386 машин
│ р │
└─────┘
- 8 -
3.1 Шина с тремя состояниями
Шина с тремя состояниями напоминает телефонную линию общего
пользования, к которой подключено много абонентов. Три состо-
яние на шине - это состояния высокого уровня, низкого уровня и
высокого импеданса. Состояние высокого импеданса позволяет
устройству или процессору отключиться от шины и не влиять на
уровни, устанавливаемые на шине другими устройствами или про-
цессорами. Таким образом, только одно устройство является ве-
дущим на шине. Управляющая логика активизирует в каждый конк-
ретный момент только одно устройство, которое становиться ве-
дущим. Когда устройство активизировано, оно помещает свои
данные на шину, все же остальные потенциальные ведущие перево-
дятся в пассивное состояние.
К шине может быть подключено много приемных устройств -
получателей. Обычно данные на шине предназначаются только для
одного из них. Сочетание управляющих и адресных сигналов, оп-
ределяет для кого именно. Управляющая логика возбуждает специ-
альные стробирующие сигналы, чтобы указать получателю когда
ему следует принимать данные. Получатели и отправители могут
быть однонаправленными (т.е. осуществлять только либо переда-
чу, либо прием) и двунаправленными (осуществлять и то и дру-
гое). На рис. 3 показаны двунаправленные отправители/получате-
ли , подключенные к шине.
Рисунок 3 расположен на следующей странице.
- 9 -
рис.3
┌──────────────────┐
│ Микропроцессор │
└──────────────────┘
┌──────────────────┐
┌─────────────┤ Управляющая ├────────────┐
│ ┌───┤ логика ├──┐ │
│ │ └──────────────────┘ │ │
│ └───────┐ Разрешение┌─────┘ │
│ Активизация │ │ Активизация │
выхода 1 │ │ выхода 2
┌─────┴─────────────┐ │ ~ │ ┌───────────┴──────┐
│ Строб данных │ ┌┴┐ ║ ┌┴┐ │ Строб данных │
│ Выходные├──┤ ├─┬──╢ ┌─┤ ├──┤Выходные │
│Отправи- данные │ └─┘ │ ║ │ └─┘ │ данные Отправи-│
│тель/по- Входные │ │ ║ │ │Входные тель/по-│
│лучатель 1 данные ├_─────┘ ╟──┴─────_┤ данные лучатель 2│
└───────────────────┘ ║ └──────────────────┘
║
~ Линия шины
Шинная (магистральная) организация получила широкое расп-
ространение, поскольку в этом случае все устройства используют
единый протокол сопряжения модулей центральных процессоров и
устройств ввода-вывода с помощью трех шин.
- 10 -
3.2 Типы шин
Сопряжение с центральным процессором осуществляется посредс-
твом трех шин: шины данных, шины адресов и шины управления.
Шина данных служит для пересылки данных между ЦП и памятью или
ЦП и устройствами ввода-вывода. Эти данные могут представлять
собой как команды ЦП, так и информацию, которую ЦП посылает в
порты ввода-вывода или принимает оттуда. В МП 8088 шина данных
имеет ширину 8 разрядов. В МП 8086, 80186, 80286 ширина шины
данных 16 разрядов; в МП 80386 - 32 разряда.
Шина адресов используется ЦП для выбора требуемой ячейки
памяти или устройства ввода-вывода путем установки ан шине
конкретного адреса, соответствующего одной из ячеек памяти или
одного из элементов ввода-вывода, входящих в систему. Наконец
по шине управления передаются управляющие сигналы, предназна-
ченные памяти и устройствам ввода-вывода. Эти сигналы указыва-
ют направление передачи данных (в ЦП или из ЦП), а также мо-
менты передачи.
Магистральная организация предпологает, как правило, нали-
чие управляющего модуля, который выступает в роли директора -
распорядителя при обмене данными. Основное назначение этого
модуля - организация передачи слова между двумя другими моду-
лями.
3.3 Операции на магистрали
Операция на системной магистрали начинается с того, что уп-
равляющий модуль устанавливает на шине кодовое слово модуля -
отправителя и активизирует линию строба отправителя. Это поз-
воляет модулю, кодовое слово которого установлено на шине,
- 11 -
понять, что он является отправителем. Затем управляющий модуль
устанавливает на кодовое слово модуля - получателя и активизи-
рует линию строба получателя. Это позволяет модулю, кодовое
слово которого установлено на шине, понять, что он является
получателем.
После этого управляющий модуль возбуждает линию строба дан-
ных, в результате чего содержимое регистра отправителя пересы-
лается в регистр получателя. Этот шаг может быть повторен лю-
бое число раз, если требуется передать много слов.
Данные пересылаются от отправителя получателю в ответ на
импульс, возбуждаемый управляющим модулем на соответствующей
линии строба. При этом предполагается, что к моменту появления
импульса строба в модуле - отправителе данные подготовлены к
передаче, а модуль - получатель готов принять данные. Такая
передача данных носит название синхронной (синхронизирован-
ной).
Что произойдет, если модули участвующие в обмене (один или
оба), могут передавать или принимать данные только при опреде-
ленных условиях ? Процессы на магистралях могут носить асинх-
ронный (несинхронизированный) характер. Передачу данных от
отправителя получателю можно координировать с помощью линий
состояния, сигналы на которых отражают условия работы обоих
модулей. Как только модуль назначается отправителем, он прини-
мает контроль над линией готовности отправителя, сигнализируя
с ее помощью о своей готовности принимать данные. Модуль, наз-
наченный получателем, контролирует линию готовности получате-
ля, сигнализируя с ее помощью о готовности принимать данные.
При передаче данных должны соблюдаться два условия. Во-пер-
- 12 -
вых, передача осуществляется лишь в том случае, если получа-
тель и отправитель сигнализируют о своей готовности. Во-вто-
рых, каждое слово должно передаваться один раз. Для обеспече-
ния этих условий предусматривается определенная последователь-
ность действий при передачи данных. Эта последовательность но-
сит название протокола.
В соответствии с протоколом отправитель, подготовив новое
слово, информирует об этом получателя. Получатель, приняв оче-
редное слово, информирует об этом отправителя. Состояние линий
готовности в любой момент времени определяет действия, которые
должны выполнять оба модуля.
Каждый шаг в передаче данных от одной части системы к дру-
гой называется циклом магистрали (или часто машинным циклом).
Частота этих циклов определяется тактовыми сигналами ЦП. Дли-
тельность цикла магистрали связана с частотой тактовых сигна-
лов. Типичными являются тактовые частоты 5, 8, 10 и 16 МГц.
Наиболее современные схемы работают на частоте до 24 МГц.
3.4 Порты ввода-вывода
Адресное пространство ввода-вывода организовано в виде пор-
тов. Порт представляет собой группу линий ввода-вывода, по ко-
торым происходит параллельная передача информации между ЦП и
устройством ввода-вывода, обычно по одному биту на линию. Чис-
ло линий в порте чаще всего совпадает с размером слова, харак-
терным для данного процессора. Входной порт чаще всего органи-
зуется в виде совокупности логических вентилей, через которые
входные сигналы поступают на линии системной шины данных. Вы-
ходной порт реализуется в виде совокупности триггеров, в кото-
- 13 -
рых хранятся сигналы, снятые с шины данных.
Если в передаче информации участвует процессор, то направ-
ление потока входной и выходной информации принято рассматри-
вать относительно самого процессора. Входной порт - это любой
источник данных (например, регистр), который избирательным об-
разом подключается к шине данных процессора и посылает слово
данных в процессор. Наоборот, выходной порт представляет собой
приемник данных ( например, регистр), который избирательным
образом подключается к шине данных процессора. Будучи выбран,
выходной порт принимает слово данных из микропроцессора.
Процессор должен иметь возможность координировать скорость
своей работы со скоростью работы внешнего устройства, с кото-
рым он обменивается информацией. В противном случае может по-
лучиться, что входной порт начнет пересылать данные еще до то-
го как, процессор их затребует, и процесс пересылки данных на-
ложится на какой-то другой процесс в ЦП. Как уже отмечалось,
эта координация работы двух устройств носит название "рукопо-
жатия", или квитирования.
Теперь подробнее остановимся на режимах работы портов вво-
да-вывода. Существуют три вида взаимодействия процессора с
портами ввода-вывода: программное управление, режим прерываний
и прямой доступ к памяти (ПДП).
Программно-управляемый ввод-вывод инициируется процессором,
который выполняет программу, управляющую работой внешнего уст-
ройства. Режим прерываний отличается тем, что инициатором вво-
да-вывода является внешнее устройство. Устройство, подключен-
ное к выводу прерываний процессора, повышает уровень сигнала
на этом выводе (или в зависимости от типа процессора понижает
- 14 -
его). В ответ процессор, закончив выполнение текущей команды,
сохраняет содержимое программного счетчика в соответствующем
стеке и переходит на выполнение программы, называемой програм-
мой обработки прерываний, чтобы завершить передачу данных.
ПДП тоже инициируется устройством. Передача данных между
памятью и устройством ввода-вывода осуществляется без вмеша-
тельства процессора. Как правило, для организации ПДП исполь-
зуются контроллеры ПДП, выполненные в виде интегральных схем.
3.5 Униварсальный синхронно-асинхронный
приемопередатчик
Микропроцессор взаимодействует с перифирийными устройства-
ми, принимающими и передающими данные в последовательной фор-
ме. В процессе этого взаимодействия процессор должен выполнять
преобразование параллельного кода в последовательный, а также
последовательного в параллельный.
Чаще всего пересылка данных между процессором и периферий-
ными устройствами выполняются асинхронно. Другими словами,
устройство может передавать данные в любой момент времени. Ес-
ли данные не передаются, устройство посылает просто биты мар-
кера, обычно высокий уровень сигнала, что дает возможность не-
медленно обнаружить любой разрыв цепи передачи. Если устройс-
тво готово передавать данные, передатчик посылает нулевой бит,
обозначающий начало посылки. За этим нулевым битом следуют
данные, затем бит четности и , наконец, один или два стоп-би-
та. Закончив передачу, отправитель продолжает посылать высокий
уровень сигнала в знак того, что данные отсутствуют.
Для удобства проектирования интерфейса процессора с уст-
- 15 -
ройствами последовательного ввода-вывода (как синхронными, так
и асинхронными) разработаны микросхемы универсальных синхрон-
но-асинхронных приемопередатчиков (УСАПП). В состав УСАПП вхо-
дят функционирующие независимо секции приемника-передатчика.
Типичный УСАПП изображен на рис. 4
Рисунок 4 расположен на следующей странице.
- 16 -
Разреше- От триггера
ние по- 8 7 6 5 4 3 2 1 " Буфер
лучения Данные передатчика
данных ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ свободен"
──┬─── ├─┴─┴─┴─┴─┴─┴─┤ ж е а б в г д ─────┬─────
└─────┤ Вентили И │ │ │ ‑ ‑ ‑ ‑ ‑ │
├─┬─┬─┬─┬─┬─┬─┤ │ │ ┌┴──┴──┴──┴──┴┐ │