Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Подготовка временных диаграмм.




 

При подготовке временных диаграмм для моделирования магистральных устройств, следует учитывать, что двунаправленные выводы БИС присутствуют на временной диаграмме дважды: как входы и как выходы.

Поэтому на временной диаграмме, представленной на рис 5.1.3. группа отображена и как группа входов DB[2..1] так и как группа выходов DB[2..1].

Данные, поступающие на входную шину, помещаются на входную шину и при моделировании автоматически отображаются на выходной шине DB[2..1]. Данные, снимаемые с двунаправленной шины, отображаются на выходной шине, при этом входная шина должна быть в состоянии отключено «Z».

На временной диаграмме состояние «Z» отображается жирной линией, расположенной посредине между уровнем логического «0» и уровнем логической «1».

Отметим, что если в процессе вывода данных из БИС на двунаправленную шину не перевести соответствующий ей входной сигнал в состояние «Z» возникнет конфликт сигналов между входным драйвером и выходным усилителем БИС, что приведёт при моделировании работы схемы к появлению сигналов неопределённости «X», которые отображаются на временной диаграмме в виде сетки.

 

Пример сумматора с магистральным вводом-выводом данных.

 

Рассмотрим схему сумматора с магистральным вводом-выводом данных представленную на рис 5.2.1.

 

 

       
   
Сумматор A S B
 
Регистр A
 

 

 

 
 

           
 
   
 
   
 

 


M

         
 
 
   
     
 

 

 


Арбитр
CLK

 
 

DON

       
   

 

Рис 5.2.1 Структурная схема сумматора с магистральным вводом-выводом данных.

 

Представленная схема сумматора имеет следующие входные и выходные сигналы:

M[8..1] – восьмиразрядная двунаправленная магистраль;

CLC – вход тактового сигнала;

DON – выход сигнала окончания формирования суммы;

 

Работа схемы осуществляется в три такта:

· на первом такте происходит считывание с магистрали M первого слагаемого и запись в регистр A;

· на втором такте происходит считывание с магистрали M второго слагаемого и запись в регистр B;

· на третьем такте происходит вычисление суммы и выдача результата на магистраль M.

 

Работой схемы управляет арбитр, обеспечивающий корректную работу с магистралью.

 

Рассмотрим поведенческое описание работы восьмиразрядного сумматора с магистральным вводом-выводом данных.

 

 

SUBDESIGN MSUM

(

CLK: INPUT;

M[7..0]: BIDIR;

DONE: OUTPUT;

)

VARIABLE

RA[7..0]: DFF;

RB[7..0]: DFF;

TT[7..0]: TRI;

CN[1..0]: DFF;

BEGIN

CN[].CLK=!CLK;

RA[].D=M[];

RB[].D=M[];

CASE CN[].Q IS

WHEN 2 => CN[].D=0;

WHEN OTHERS => CN[].D=CN[].Q+1;

END CASE;

RA[].CLK=CN0.Q & CLK;

RB[].CLK=CN1.Q & CLK;

TT[].OE=!CN0.Q &!CN1.Q;

TT[].IN=RA[].Q+RB[].Q;

M[7..0]=TT[].OUT;

DONE=!CN0.Q &!CN1.Q;

END;

 

В данном описании сумматора введены следующие переменные

 

RA[7..0] – регистр хранения слагаемого A;

RB[7..0] – регистр хранения слагаемого B;

TT[7..0] – восемь двунаправленных элементов ввода-вывода типа TRI;

CN[1..0] – регистр управляющего счётчика CN.

 

Управляющий счётчик считает от «0» до «2». Организуется работа счётчика в соответствующем операторе CASE, обеспечивающем переход счёта из состояния «2» в состояние «0».

При состоянии счётчика равном «1», происходит запись данных из магистрали M[] в регистр RA, а при состоянии равном «2», соответственно в регистр RB.

Управление этими процессами задаётся операторами:

RA[].CLK=CN0.Q & CLK;

RB[].CLK=CN1.Q & CLK;

RA[].D=M[];

RB[].D=M[];

При состоянии управляющего счётчика CN равном «0», происходит вычисление суммы и выдача результата на магистраль M[], что, в свою очередь, определяется операторами:

 

TT[].IN=RA[].Q+RB[].Q;

TT[].OE=!CN0.Q &!CN1.Q;

M[7..0]=TT[].OUT;

 

При состоянии управляющего счётчика CN равном «0», происходит также формирование сигнала завершения работы DONE с помощью оператора

DONE=!CN0.Q &!CN1.Q;

 

Рассмотрим пример временной диаграммы работы восьмиразрядного сумматора с магистральным вводом-выводом данных. Данная диаграмма представлена на рис 5.2.2.

 

 

 
 

Рис 5.2.2. Пример временной диаграммы работы восьмиразрядного сумматора с магистральным вводом-выводом данных. Магистраль M на диаграмме представлена и как вход и как выход.

 

На примере, представленном на рис 5.2.2. производятся три цикла работы сумматора, на которых выполняются следующие примеры:

 

50+85=135

39+1=40

127+117=244.

 

Как и положено, операция сложения выполняется три такта. На каждом третьем такте входная шина M переводится в состояние «Z». На этом же такте на выходную шину M выдает результат суммирования

 

При внимательном изучении временной диаграммы можно заметить переходные процессы при переключении входных сигналов магистрали в состояние Z и обратно. Это происходит из-за ненулевого времени переключения элемента TRI из активного состояния в состояние Z и обратного переключения. В течении короткого времени этих переключений на магистраль находится либо в состоянии «Z» (элемент TRI ещё не включился и на магистрале нет активного сигнала), либо состоянии «Х» (элемент TRI ещё не успел выключился и на магистрале находятся два активных источника сигнала).

Более подробно эти переходные процессы показаны на рис 5.2.3.

 

 
 

Рис 5.2.3. Более подробно эти переходные процессы переключения состояний магистрали.

 

Такие переходные процессы являются кратковременными и не влияют на правильную работу аппаратура.


 

Литература

 

1. Комолов Д.А., Мяльк Р.А., Зобенко А.А., Филиппов А.С. Системы автоматизированного проектирования фирмы Altera MAX+PLUS II и QUARTUS II. –Москва: ИП РадиоСофт, 2002-352с.: ил.

2. Антонов А.П., ЯЗЫК ОПИСАНИЯ ЦИФРОВЫХ УСТРОЙСТВ AlteraHDL. Москва, РадиоСофт, 2002. – 224с.

3. Стешенко В.Б. ПЛИС фирмы ALTERA: проектирование устройств обработки сигналов. – Москва: ДОДЭКА, 2002 – 128с.

 

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...