Синхронизация шины
Шины можно разделить на две категории в зависимости от способа синхронизации:
1. Синхронная шина содержит линию которая запускается кварцевым генератором* Сигнал на этой линии представляет собой меандр с частотой обычно от 5 до 100 МГц. Любое действие шины занимает целое число так называемых циклов шины.
2. Асинхронная шина не содержит задающего генератора. Циклы шины могут быть произвольными и не обязательно одинаковыми для всех пар устройств.
Синхронные шины
В качестве примера того, как работает асинхронная шина, рассмотрим временную диаграмму на рис. 3.35.
В этом примере мы будем использовать задающий генератор на 100 МГц, который дает цикл шины в 10 нс.
В нашем примере мы предполагаем, что считывание информации из памяти занимает 15нс с момента установки адреса.
Первый цикл начинается на фронте отрезка Т1, а третий заканчивается на фронте отрезка Т4, как показано на рис. (Ни один из фронтов и спадов не нарисован вертикальным, потому что ни один электрический сигнал не может изменять свое значение за нулевое время.)
Предположим, что для изменения сигнала требуется 1нс. Генератор и линии адреса и данных, а также линии MREQ, RD, WAIT показаны в том же масштабе времени.
Начало Т1, определяется фронтом генератора. За время Т1 центральный процессор помещает адрес нужного слова на адресные линии.
Поскольку адрес представляет собой не один сигнал (в отличие от генератора), он отображается его в виде двух линий с пересечениями там, где этот адрес меняется.
Штриховка на схеме показывает, что в этот момент не важно, какое значение принял сигнал.
Используя то же соглашение, мы видим, что содержание линий данных не имеет значения до отрезка Т3,
После того как у адресных линий появляется возможность принять новое значение, устанавливаются сигналы MREQ и RD.
Первый указывает, что осуществляется доступ к памяти, а не к устройству ввода-вывода, а второй — что осуществляется чтение, а не запись.
Поскольку после установки адреса считывание информации из памяти занимает 15 нс (часть первого цикла), память не может передать требуемые данные за период Т2. Чтобы центральный процессор не ожидал поступления данных, память устанавливает сигнал WAIT в начале отрезка Т2. Это означает ввод периодов ожидания (дополнительных циклов шины) до тех пор, пока память не сбросит сигнал WAIT.
В нашем примере вводится один период ожидания (Т2), поскольку память работает слишком медленно.
В начале отрезка Т3, когда есть уверенность и том, что память получит данные в течение текущего цикла, сигнал WAIT сбрасывается.
Во время первой половины отрезка Т3 память помещает данные на информационные линии.
На спаде отрезка Т3 центральный процессор считывает информационные линии данных, сохраняя их значения но внутреннем регистре.
Считав данные» центральный процессор сбрасывает сигналы MREQ и RD. В случае необходимости на следующем фронте может начаться еще один цикл памяти. Эта последовательность может повторяться бесконечно.
Далее проясняется значение восьми символов на временной диаграмме (см. рис. 3.35) — они перечислены в табл. 3,4, TAD, например, ТAD — это временной интервал между фронтом T1 и установкой адресных линий.
В соответствии с требованиями синхронизации TAD ≤ 4 не. Это значит, что производитель процессора гарантирует, что во время любого цикла считывания центральный процессор сможет выдать требуемый адрес в пределах 11 нс от середины фронта Т1.
Таблица 3.4- Некоторые временные характеристики процесса считывания на синхронной шине
Обозначение | Значение | Маx | Ед.изм |
ТAD | Задержка выдачи адреса | нс | |
ТML | Промежуток между стабилизацией адреса и установкой сигнала MREQ | нс | |
ТM | Промежуток между спадом синхронизирующего сигнала в цикле Т1, и установкой сигнала MREQ | нс | |
TRL | Промежуток между спадом синхронизирующего сигнала в цикле T1 и установкой сигнала RD | нс | |
TDS | Период передачи данных до спада синхронизирующего сигнала | нс | |
Tмн | Промежуток между спадом синхронизирующего сигнала в цикле Т3 и сбросом сигнала MREQ | нс | |
ТRH | Промежуток между спадом синхронизирующего сигнала в цикле Т3 и сбросом сигнала RD | нс | |
ТDH | Период продолжения передачи данных с момента сброса сигнала RD | нс |
Условия синхронизации также требуют, чтобы данные поступали на информационные линии по крайней мере за 2 не (TDS) до спада Т3, чтобы дать данным время установиться до того, как процессор начнет их считывать.
Сочетание ограничений на ТAD и TDS означает, что в худшем случае в распоряжении памяти будет только 25 - 4 - 2 = 19 нс с момента появления адреса и до момента, когда нужно выдавать данные.
Поскольку достаточно 10 не, память даже в самом худшем случае может всегда ответить за период Т1. Если памяти для считывания требуется 20 не, то необходимо ввести второй период ожидания, и тогда память ответит в течение Т4.
Требования синхронизации гарантируют, что адрес будет установлен по крайней мере за 2 не до того, как появится сигнал MREQ.
Это время может быть важно в том случае, если MREQ инициирует выбор элемента памяти, поскольку некоторые типы памяти требуют определенного времени на установку адреса до выбора элемента памяти.
Ясно, что разработчику системы не следует выбирать микросхему памяти, которой нужно 3 нс на установку.
Ограничения на Тм и ТRL означают, что сигналы МREQ и RD будут установлены в пределах 3 нс от спада T1. В худшем случае у микросхемы памяти после установки сигналов MREQ и RD останется всего 10 + 10 - 3 - 2 = 15 нс на передачу данных по шине. Это ограничение вводится дополнительно по отношению к интервалу в 15 нс и не зависит от него.
Интервалы ТМH и TRH определяют, сколько времени требуется на отмену сигналов MREQ и RD после того, как данные считаны.
Наконец, интервал TDH определяет, сколько времени память должна держать данные на шипе после снятия сигнала RD.
В нашем примере при данном процессоре память может удалить данные с шины, как только сбрасывается сигнал RD; в случае других процессоров данные могут сохраняться еще некоторое время.
Необходимо подчеркнуть, что наш пример представляет собой весьма упрощенную версию реальных временных ограничений, В действительности таких ограничений гораздо больше. Тем не менее этот пример наглядно демонстрирует, как работает синхронная шина.
Отметим, что сигналы управления могут задаваться низким или высоким напряжением. Что является более удобным в каждом конкретном случае, должен решать разработчик, хотя, по существу, выбор произволен.
Такую свободу выбора можно назвать «аппаратным» аналогом ситуации, при которой программист может представить свободные дисковые блоки в битовом отображении как в виде нулей, так и в виде единиц.
Дата добавления: 2015-07-24; просмотров: 3042;