Скачиваний:
309
Добавлен:
19.06.2015
Размер:
5.46 Mб
Скачать

D-триггеры

D-триггеры также называют триггерами задержки(от англ. Delay).

D-триггер синхронный

Пример условного графического обозначения (УГО) D-триггера с динамическим синхронным входом С и с дополнительными асинхронными инверсными входами SиR

D

Q(t)

Q(t+1)

0

0

0

0

1

0

1

0

1

1

1

1

D-триггер(Dотангл.delay— задержка[13][14][15]либо отdata[16]- данные) — запоминает состояние входа и выдаёт его на выход. D-триггеры имеют, как минимум, два входа: информационныйDи синхронизацииС. После прихода активногофронтаимпульса синхронизации на вход С D-триггер открывается. Сохранение информации в D-триггерах происходит после спада импульса синхронизации С. Так как информация на выходе остаётся неизменной до прихода очередного импульса синхронизации, D-триггер называют также триггером с запоминанием информации или триггером-защёлкой. Рассуждая чисто теоретически, парафазный (двухфазный) D-триггер можно образовать из любых RS- или JK-триггеров, если на их входы одновременно подавать взаимноинверсныесигналы.

D-триггер в основном используется для реализации защёлки. Так, например, для снятия 32 бит информации с параллельной шины, берут 32 D-триггера и объединяют их входы синхронизации для управления записью информации в защёлку, а 32 Dвхода подсоединяют к шине.

В одноступенчатых D-триггерах во время прозрачности все изменения информации на входе D передаются на выход Q. Там, где это нежелательно, нужно применять двухступенчатые (двухтактные, Master-Slave, MS) D-триггеры.

6. Схемы с элементами памяти.

Различные схемы на основе триггеров(делители частоты, счетчики)

7. Синхронные и асинхронные входы триггеров.

11. Описание логических выражений. Реализация в виде схем и текстового описания.

1.3.9 Булевы выражения

Булевы выражения состоят из операндов, разделенных логическими и арифметическими операторами и компараторами и дополнительно сгруппированы с помощью круглых скобок. Выражения используются в булевых уравнениях также как и в других операторах таких как Case и If Then.

 

Булево выражение может быть одним из следующих:

 

1.   Операнд

Например, a, b[5..1], 7, VCC

 

2.   Подставляемая ссылка на логическую функцию

Например, out[15..0] = 16dmux(q[3..0]);

 

3.   Префиксный оператор (! или -), применяемый к булеву выражению

Например, !c

 

4.   Два булевых выражения, разделенных бинарным оператором

Например, d1 $ d3

 

5.   Булево выражение, заключенное в круглые скобки

Например, (!foo & bar)

 

Вы можете именовать булевы операторы и компараторы в файлах AHDL для облегчения ввода присваиваний ресурсов и для интерпретации раздела Equations в файле отчета. За дополнительной информацией обратитесь к 1.2.5.2

1.3.9.1 Логические операторы

В булевых выражениях можно использовать следующие логические операторы:

 

Оператор:

Пример:

Описание:

!

!tob

дополнение до 1

NOT

NOT tob

 

&

bread & butter

И

AND

bread AND butter

 

!&

a[3..1] !& b[5..3]

И-НЕ

NAND

a[3..1] NAND b[5..3]

 

#

trick # treat

ИЛИ

OR

trick OR treat

 

!#

c[8..5] !# d[7..4]

ИЛИ-НЕ

NOR

c[8..5] NOR d[7..4]

 

$

foo $ bar

Исключающее ИЛИ

XOR

foo XOR bar

 

!$

x2 !$ x4

Исключающее ИЛИ-НЕ

XNOR

x2 XNOR x4

 

 

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

Выражения, которые используют эти операторы, интерпретируются различно в зависимости от того, являются ли операнды одиночными узлами, шинами или числами.

Вы можете позволить компилятору заменить И операторы и все компараторы в булевых выражениях на lpm_add_sub и lpm_compare функции, включая логическую опцию Use LPM for AHDL Operators.