Работа устройств на общей шине. Исследование трехстабильных буферов и шинных формирователей. Схема двунаправленного шинного формирователя разрядности 9, страница 2

Такие назначения делаются для следующих целей. Z-состояние, это плавающее остояние, если шина долго находиться в таком состоянии то могут возникать различные неприятности. Т.к. к высокоимпедансному входу ничего не подключено, то на нем из-за помех или наводок может возникнуть напряжение, величина которого даже может быть близкой к порогу переключения КМОП-схем, в результате возникают большие токи в выходных цепях этих схем.

Для решения подобной проблемы используют следуюущие решения. Подтягивание шины резисторами к источнику питания или  Weak Pull-Up Resistor. При переходе в плавающее состояние на шине устанавливается сигнал высокого уровня.

Еще один способ — шинный фиксатор уровня или EnableBus-HoldCircuitry. В этом случае когда шина переходит в Z-состояние то шинный фиксатор уровня удерживает ее в предыдущем состоянии.


рис. 1.7. Применение к BUS3 шинного фиксатора уровня.

2. Исследование обмена с внешней статической памятью имеющей трехстабильнуюу шину данных.

Необходимо организовать управление памятью для записи данных в память и считывания из памяти. Запись в память осуществляется с помощью In-SystemSourcesandProbesEditor (ISSPE), задающего адреса, данные и сигналы управления памятью.

Устройство для исследования обмена с внешней памятью.


рис. 2.1. Устройство для исследования обмена с внешней памятью.

RAM_DQ[15..0] – двунаправленная трехстабильная шина данных;

RAM_Addr[17..0] — шина адреса;

Сигналы для управления шиной данных - RAM_WE и RAM_OE;

RAM_WE — разрешение записи (активный уровень – 0);

RAM_OE — разрешение вывода данных из памяти на трехстабильную шину данных;

Режимы работы памяти в соответствии с управляющими сигналами:

RAM_OE

RAM_WE

RAM_DQ[15..0]

Режим

0

1

DATA out

Чтение слова

x

0

DATA in

Запись слова

1

1

High Z

Выходы памяти в Z-состоянии

Когда происходит чтение слова, то трехстабильный буфер должен находиться в выключенном состоянии, сигнал управления  буфером имеет низкий уровень. При записи в память, буфер должен быть открыт, и сигнал управления имеет высокий уровень. 

Таким образом, для управления трехстабильным буфером шины данных используется сигнал nRAM_WE.

Так же нужно сделать задержку сигнала с помощью D-триггера, так как необходимо  какое-то время,чтобы на установмлся адрес страницы памяти, а потом уже производилось чтение или запись.

Запись в память осуществляется с помошью ISSPE, при записи необходимо что бы RAM_WE = 0.

Во внешнюю память записаны мое имя и фамилия, начиная с адреса 36. Для удобства управления памятью сигналы  P[33..0] и S[17..0], можно сгруппировать и задать отображение данных в ASCII-кодах, а адреса в десятичных числах.

Отображение содержимого памяти в окне Signal Tap II. RAM_OE = 0, RAM_WE = 1 – режим чтения слова памяти.


рис. 2.2. Чтение данных из памяти. Окно данных Signal Tap II.

Содержимое памяти можно так же посмотреть с помощью ISSPE.


рис. 2.3. Чтение данных из памяти. Окно данных ISSPE.

Режим высокоимпедансного состояния шины RAM_OE = 1, RAM_WE = 1, иллюстрирует следующая диаграмма.


рис. 2.4. Шина данных в Z-состоянии.

Выводы по работе.

При работе на шине нескольких устройств, необходимо, чтобы в каждый момент времени на шине работал только один источник сигнала. Это нужно для того чтобы не возникали конфликты, как это получается когда несколько устройств выдают сигналы на шину одновременно.

Для обеспечения очередности устройств к шине, необходимо специальное устройство — арбитр.

Для подключения нескольких источников сигнала к общей шине используются трехстабильные буферы или мультиплексоры. Ими в свою очередь управляет устройство арбитража, определяя очередность доступа устройств к шине.