Все мы привыкли делегировать важные планы, мысли, встречи и расписание своим календарям, заметкам, будильникам и прочим приложениям, которые стали для нас обыденностью, даже не задумываясь над тем, где и как эта информация хранится. Сегодня попробуем разобраться что же такое триггеры, и причём тут хранение информации.
Trigger в переводе с английского — переключатель. Это может сразу сказать о его назначении: переключаться из одного положения в другое. Собственно, так и есть, обычно (если не всегда) у триггера 10 состояний:
1) 1
2) 0
(Напишите в комментариях, если поняли шутку).
Раз он имеет столько состояний, то может он хранить всего лишь 1 бит информации.
На данном этапе стоит задаться вопросом: "А какие триггеры существуют?". Что ж, мои дорогие читатели, я вам отвечу цитатой из одного методического пособия по архитектуре ЭВМ: "По виду выходных сигналов триггеры разделяются на динамические и статические (потенциальные). Динамические триггеры, у которых выходные сигналы в устойчивом состоянии изменяются, из-за своей сложности применяются редко." — и это правда так. На самом деле, чем проще базовые элементы сложной системы, тем проще её изготавливать. Но иногда бывают моменты, когда нужно что-то специфичное. В рамках данной статьи будем рассматривать только статические триггеры, у которых выходной сигнал не меняется в устойчивом состоянии.
"По функциональному назначению различают RS-, T-, JK- и D-триггеры, а также их различные комбинации.".
RS-триггеры
Данный вид триггеров является самым простым как в плане понимания, так и в плане реализации его на элементах. Ниже представлены УГО (условно-графическое обозначение) и пример реализации на транзисторах:
На входы "R" и "S" могут подаваться сигналы, "Q" и "Q со шляпкой"(Обозначим как Q)— это выходы сигнала. Если мы будем подавать логическую единицу на S вход, то получим комбинацию Q=1 и Q=0.
Обратную комбинацию на выходе (Q=0 и Q=1) получим при подаче сигнала на R вход. Недостатком данного триггера является невозможность подать на оба входа единицу (транзисторы просто не переживут такого).
T-триггеры
В виду технической сложности его исполнения ограничимся его УГО и принципом работы:
Работа схемы асинхронного двухступенчатого T-триггера с парафазным входом на двух парафазных D-триггерах на восьми логических вентилях 2И-НЕ. Слева — входы, справа — выходы. Синий цвет соответствует 0, красный — 1
Название триггера происходит от слова toggle — релаксатор. Принцип работы очень прост: при подаче сигнала на T вход триггер изменяет своё состояние на противоположное. Недостатком данного триггера явлется его невозможность обратиться в "0" в любой момент.
JK-триггеры
УГО представлено ниже:
Данный триггер является своеобразной комбинацией RS- и T-триггеров.
Данный триггер работает как и RS, но при подаче на оба входа логической единицы триггер меняет своё состояние на противоположное.
D-триггеры
В данном триггере появляется такое понятие как "синхросигнал" или "синхроимпульс". данном случае он позволяет изменять состояние триггера или "записывать" информациию, когда у на входе синхронизации есть импульс (логическая единица). Пример реализаци приведён ниже:
Данная комбинация из RS-триггера и инвертора носит название "парафазной установки". Её достоинства в том, что можно записывать информацию без предварительного обнуления (сигнал и его инверсия подействуют на оба входа). С вход называется так от английского Clock — часы или счётчик.
Комбинированные триггеры
Двухтактный триггер
Данный тип "хранителей" памяти нужен, чтобы избежать сбоев при записи и считывании информации. Конструктивно данный триггер из двух синхронизируемых однотактных триггеров. Принцип работы у этой штуки следующий: В первый момент времени t1 записывается информация в первый триггер, а в момент времени t2(следующий такт) переписывается информация в триггер "второго уровня". Аналог можно привести с кэш-памятью у процессора: у неё тоже есть несколько уровней.
Также к к комбинированным можно отнести и d триггер, в зависимости от того на чём он построен
Возможные варианты построения
Лучше википедии в этом плане ничего в интернете не было нагляднее:
Под каждую задачу могут понадобиться свои конструкции.
Надеюсь, что после прочтения данной статьи вам стало понятнее, как и что происходит в мире компьютера, в частности, как может быть организована память и почему именно на таких элементах. До новых встреч!