Асинхронный триггер
2017-06-27 21:30![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Обычно под асинхронным триггером понимают так называемую RS-защёлку, состоящую из пары соединённых крест-накрест элементов И-НЕ:

Работа такого триггера описывается таблицей:
Между тем, гораздо более удобным оказывается схема, состоящая из элементов И + ИЛИ:

Функционирует эта схема похожим образом, но без неопределённого состояния:

Работа такого триггера описывается таблицей:
/Set /Reset Действие --------------------------- 0 0 Запрещено 1 0 Q = 0 0 1 Q = 1 1 1 Без измененияНедостаток этой схемы состоит в наличии запрещенного состояния: когда на вход поступают нули, выход оказывается в неопределённом, или хуже того, в метастабильном состоянии.
Между тем, гораздо более удобным оказывается схема, состоящая из элементов И + ИЛИ:

Функционирует эта схема похожим образом, но без неопределённого состояния:
Set Enable Действие --------------------------- x 0 Q = 0 1 1 Q = 1 0 1 Без измененияКак можно заметить, защёлка И+ИЛИ работает в "положительной" логике: передний фронт на входе превращается в передний фронт на выходе и наоборот, отрицательный фронт превращается в отрицательный. Комбинируя с другой положительной логикой, можно получить все нужные примитивы для асинхронного дизайна. К примеру, добавив на входах пару элементов И и ИЛИ, получаем известный С-элемент Мюллера.
no subject
Date: 2017-06-28 05:19 (UTC)no subject
Date: 2017-06-28 05:27 (UTC)no subject
Date: 2017-07-03 05:37 (UTC)no subject
Date: 2017-07-05 17:28 (UTC)no subject
Date: 2017-06-28 08:10 (UTC)no subject
Date: 2017-06-28 08:50 (UTC)no subject
Date: 2017-07-03 05:41 (UTC)А вот безусловное преимущество одного направления - да, может быть полезным.