D/T/J-K/S-R триггеры
Библиотека: | Память |
Введён в: | 2.0 Beta 1 |
Внешний вид: |
Поведение
Каждый триггер хранит один бит данных, который выдаётся на выход Q на восточном крае. В нормальном состоянии значением можно управлять через входы на западном крае. В частности, значение меняется, когда значение на тактовом входе, отмеченном треугольником на каждом триггере, меняется с 0 на 1 (или наоборот, если так настроено); в момент этого перехода значение меняется в соответствии с таблицей ниже.
D триггер | T триггер | J-K триггер | S-R триггер | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
Другой способ описания поведения различных триггеров - обычный текст.
D триггер: когда тактовый вход срабатывает, значение, хранящееся в триггере, мгновенно становится значением входа D (Данные).
T триггер: когда тактовый вход срабатывает, значение, хранящееся в триггере, меняется или остаётся прежним в зависимости от того, какое значение на входе T (Переключение): 1 или 0.
J-K триггер: когда тактовый вход срабатывает, значение, хранящееся в триггере, меняется, если на входах J и K единица; остаётся прежним, если на них 0; если значения на них различны, то значение становится единицей, если на входе J (Прыжок) - 1; или нулём, если на входе K (Забой) - 1.
S-R триггер: когда тактовый вход срабатывает, значение, хранящееся в триггере, остаётся неизменным, если на входах R и S - 0; становится 0, если на входе R (Сброс) - 1, и становится 1, если на входе S (Установка) - 1. Поведение не определено, если на обоих входах 1. (В Logisim значение триггера остается неизменным.)
По умолчанию тактовый вход срабатывает при переднем фронте - то есть когда значение на тактовом входе меняется с 0 на 1. Впрочем, атрибут Срабатывание позволяет сменить это на задний фронт (когда значение на тактовом входе меняется с 1 на 0), на Высокий уровень (срабатывать непрерывно на протяжении времени, когда на тактовом входе 1), или на Низкий уровень (срабатывать непрерывно на протяжении времени 0). Варианты "... уровень" недоступны для T и J-K триггеров, так как триггер ведет себя непредсказуемо, если заставить его переключаться непрерывно на протяжении отрезка времени.
Контакты
- Западный край, отмечен треугольником (вход, разрядность равна 1)
- Тактовый вход: в момент, когда значение на этом входе меняется с 0 на 1 (передний фронт), значение триггера будет обновлено в соответствии с другими входами на западном крае. Пока значение на этом входе остаётся 0 или 1, другие входы на западном крае не имеют эффекта.
- Западный край, другой отмеченный контакт(ы) (вход(ы), разрядность равна 1)
- Эти входы управляют тем, как значение триггера меняется в момент срабатывания тактового входа. Их точное поведение зависит от триггера; приведенная выше таблица описывает его.
- Восточный край, отмечен Q, северный контакт (выход, разрядность равна 1)
- Выдаёт значение, хранящееся в данный момент в триггере.
- Восточный край, южный контакт (выход, разрядность равна 1)
- Выдаёт дополнение для значения, хранящегося в данный момент в триггере.
- Южный край, восточный контакт (вход, разрядность равна 1)
- Асинхронный сброс: если на этом входе 0 или неопределённое значение, то он не имеет эффекта. Пока на нём 1, значение триггера фиксировано на 0. Это происходит асинхронно - то есть вне зависимости от текущего значения на тактовом входе. Пока на нём 1, другие входы не имеют эффекта.
- Южный край, центральный контакт (вход, разрядность равна 1)
- Включение: когда на этом входе 0, срабатывания тактового входа игнорируются. Текущий бит по-прежнему поступает на выход. Срабатывания тактового входа включаются, когда значение этого входа 1 или не определено.
- Южный край, западный контакт (вход, разрядность равна 1)
- Асинхронная установка: если на этом входе 0 или неопределённое значение, то он не имеет эффекта. Пока на нём 1, значение триггера фиксировано на 1. Это происходит асинхронно - то есть вне зависимости от текущего значения на тактовом входе. Пока на этом входе 1, другие входы не имеют эффекта, за исключением входа Асинхронный сброс - он имеет приоритет.
Атрибуты
- Срабатывание
- Определяет, как обрабатывается тактовый вход. Значение
Передний фронт
означает, что триггер должен обновляться в момент, когда значение на тактовом входе меняется с 0 на 1. ЗначениеЗадний фронт
означает, что он должен обновляться, когда значение на тактовом входе меняется с 1 на 0. ЗначениеВысокий уровень
означает, что триггер должен обновляться непрерывно, пока на тактовом входе 1. И значениеНизкий уровень
означает, что он должен обновляться непрерывно, пока на тактовом входе 0. Обратите внимание, что два последних варианта недоступны для T и J-K триггеров. - Метка
- Текст внутри метки, привязанной к триггеру.
- Шрифт метки
- Шрифт, которым отрисовывается метка.
Поведение Инструмента Нажатие
Щелчок на триггере с помощью Инструмента Нажатие переключают бит, хранящийся в триггере, если входы Асинхронный сброс/установка не фиксируют значение в данный момент.
Поведение Инструмента Текст
Позволяет редактировать привязанную к компоненту метку.