![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Локальный интерфейс МП является шиной, линии которой непосредственно соединяются с выводами корпуса процессора. Основным назначением локального интерфейса является организация передачи информации (связи) между процессором, сопроцессором, оперативной памятью, кэш-памятью и, при помощи конвертора и интерфейса расширения, другими функциональными узлами РС. Локальная шина работает в синхронном режиме.
Основными компонентами интерфейса являются:
· адресная шина A,
· шина данных D,
· сигналы идентификации цикла,
· строб адреса,
· строб данных.
Можно выделить пять особенностей в конструкции и функционировании локального интерфейса МП i80386. Это:
· задание адреса,
· автоконфигурация шины данных,
· использование 16-байтового буфера кодовой строки,
· сигналы идентификации цикла,
· конвейеризация циклов (конвейеризация адреса).
Конвейеризация циклов является основной (этапной) новацией, c точки зрения развития технологии передачи информации в интерфейсах МП Intel.
Задание адреса
Тридцатидвухразрядный МП i80386 может обращаться к сегментам памяти в диапазоне 4 Гбайта и портам ввода/вывода (включая компоненты сопроцессора) – в диапазоне 64 Кбайта. При этом периферийные устройства в системе могут быть отнесены либо к пространству памяти, либо к пространству вода/вывода, либо к обоим пространствам.
Интерфейс допускает передачу шестнадцати- и тридцатидвухразрядных операндов, не выровненных по границам слова или двойного слова. При этом возможна параллельная передача по шине данных от одного до четырех байт. Соответственно, для указания размера передаваемых данных и секций шины данных, по которым они передаются, требуются дополнительные линии интерфейса.
В МП i80386 эта проблема решена следующим образом. Шина данных содержит 34 линии. Из них 30 используются для задания адреса операнда (младшего байта операнда) с точностью до адреса двойного слова. Это разрядные линии адреса от А31 до А2. Адрес операнда с точностью до байта и секции шины данных, по которым передаются байты операнда, задаются четырьмя дополнительными сигналами выбора байтов: BE3#, BE2#, BE1#, BEO# (4 линии). При этом сигнал
· BEO # определяет передачу байта данных по младшим разрядам шины данных (секция – "А", разряды 0 – 7),
· BE1 # определяет передачу байта данных по разрядам шины данных секции "B", разряды 8 – 15,
· BE2 # определяет передачу байта данных по разрядам шины данных секции "С", разряды 16 – 23,
· BE3 # определяет передачу байта данных по разрядам шины данных секции "D", разряды 24 – 31.
Здесь и далее по тексту символ # в названии сигналов означает активность соответствующих сигналов при нулевых значениях.
Количество параллельно передаваемых байтов определяется числом активных сигналов выбора байтов, а адрес данных (с точностью до байта) – комбинацией этих сигналов.
Автоконфигурация шины данных. Под автоконфигурацией шины данных здесь понимается механизм динамического изменения ширины шины данных и выравнивание операндов.
Возможность динамического изменения ширины шины данных обеспечивает непосредственное взаимодействие как с 32-разрядными, так и с 16-разрядными внешними устройствами. МП i80386 в серии МП i80Х86 был первым 32-разрядным процессором, и для него проблема совместимости со "старыми" 16-разрядными периферийными устройствами являлась актуальной.
Для решения проблемы автоконфигурации в МП используется сигнал от исполнителя (внешнего устройства) к процессору BS16# (bus size 16 bits). Активный сигнал BS16# означает, что исполнитель – 16-разрядное устройство по шине данных.
При активном уровне сигнала BS16# и необходимости передачи данных разрядностью больше 16 (или 16-разрядных данных, не выровненных по границе слова) МП автоматически вместо одного цикла выполняет два или три цикла передачи. При этом данные передаются только по линиям D0 – D15.
При этом возможно дублирование передаваемых байтов.
Комбинации сигналов выбора байта, при которых возможно дублирование байтов представлены в табл. 8. Дублирование байтов позволяет устройствам с 16-разрядными шинами данных принимать байты, передаваемые по старшим секциям шины данных.
Таблица 8. | |||||||||
Сигналы выбора байта | Использование секций шины данных | Дублирование | |||||||
BE3# | BE2# | BE1# | BE0# | D | C | B | A | ||
– | – | – | A | нет | |||||
– | – | B | – | нет | |||||
– | C | – | C | да | |||||
D | – | D | – | да | |||||
– | – | B | A | нет | |||||
– | C | B | – | нет | |||||
D | C | D | C | да | |||||
– | C | B | A | нет | |||||
D | C | B | – | нет | |||||
D | C | B | A | нет |
Активный сигнал BS16# влияет на действия МП в следующих ситуациях:
1. Передаваемые данные содержатся только в старшей половине двойного слова, т.е. ВЕО# и BE1# неактивны. Для передачи информации устройство просто использует младшие секции шины данных. Для чтения процессор при активном сигнале BS16# снимает данные не со старших, а с младших секций шины данных. При записи устройство снимает данные не со старших, а с младших секций шины данных. Так как при пассивных сигналах ВЕО# и BE1# процессор дублирует на младших секциях содержимое старших секций, то повторной пересылки и выставления сигнала BS16# не требуется.
2. При передаче данных используются старшая и младшая половины двойного слова, т.е. ВЕ1# и ВЕ2# активны (могут быть активны и другие сигналы выбора данных, но эти – обязательно). По сигналу BS16# процессор повторяет запрос на передачу. В повторной передаче процессор и устройство, как и в первом случае, используют только младшие секции шины данных.
3. Передача данных, содержащихся в обеих половинах двойного слова. Это частный случай ситуации 2. При активном сигнале повторяется цикл передачи с использованием младших секций шины данных.
4. Передача 32-разрядного операнда, не выровненного по границе двойного слова. При передаче даже без активного сигнала BS16# (т.е. по 32-разрядной шине) требуется два цикла передачи. В первом цикле передаются байты, расположенные в целочисленном слове с меньшим адресом (выровненным по границе двойного слова), во втором – с большим адресом.
При активизации сигнала BS16# МП может инициализировать дополнительный 16-разрядный цикл (всего будет три цикла). Три цикла получаются тогда, когда одно двойное целочисленное слово содержит три байта (два 16-разрядных цикла передачи), а второе – один байт (один 16-разрядный цикл передачи).
Дата публикования: 2014-11-03; Прочитано: 359 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!