Основные функциональные элементы ЭВМ, часть 1
Триггер
Триггер – электронная схема, обладающая двумя устойчивыми состояниями. Переход из одного устойчивого состояния в другое происходит скачкообразно под воздействием управляющих сигналов. При этом также скачкообразно изменяется уровень напряжения на выходе триггера [ 7 ] .
Триггеры служат основой для построения регистров, счетчиков и других элементов, обладающих функцией хранения.
Главной частью любого триггера является запоминающая ячейка (ЗЯ). Схема запоминающей ячейки на элементах "И-НЕ" представлена на рис. 1.5.
Входной сигнал S (Set ) служит для установки ЗЯ в состояние " 1" (Q=1, Q=0). Сигнал R (Reset) устанавливает ЗЯ в состояние " 0 " (Q=0, Q=1). Активными значениями для них являются сигналы низкого уровня.
Пусть на входы ЗЯ поданы сигналы: S=0, R=1. Тогда при любом исходном состоянии ЗЯ на выходе элемента 1 установится высокий уровень напряжения. Так как на входы элемента 2 поступают значения Q и R, то на его выходе будет сигнал низкого уровня. Таким образом, ЗЯ перейдет в состояние " 1 ".
Аналогично при S=1, R=0 запоминающая ячейка перейдет в состояние Q=0, Q=1, то есть в " 0 ".
Если S=1, R=1, то состояние ЗЯ будет определяться ее предыдущим состоянием. Если ЗЯ находилась в состоянии " 1 ", то сигнал Q=0, поступая на вход элемента 1, подтвердит состояние его выхода Q=1. На входы элемента 2 поступят сигналы только высокого уровня. Поэтому его выход будет находиться в состоянии Q=0, то есть не изменится. Если ЗЯ находилась в состоянии " 0 ", то сигнал Q=0, поступая на вход элемента 2, подтвердит состояние его выхода Q=1. В свою очередь, выход элемента 1 также останется без изменения. Таким образом, эта комбинация входных сигналов соответствует режиму хранения.
Если на входы S и R поданы сигналы низкого уровня ( S = R = 0 ), то сигнал на выходах элементов 1 и 2 будет высоким ( Q = Q = 1 ). При переводе ЗЯ в режим хранения ( S = R = 1 ), выходы элементов 1 и 2 могут установиться в произвольное состояние. Поэтому комбинация сигналов S = R = 0 на управляющих входах не используется.
Работа триггерной схемы определяется не таблицей истинности, как для комбинационной логической схемы, а таблицей переходов. Таблица переходов показывает изменение состояния триггера при изменении состояния входных сигналов в зависимости от его текущего состояния. Таблица переходов запоминающей ячейки, показанной на рис. 1.5, представлена в табл. 1.3.
S | R | Q(t+1) | Функция |
---|---|---|---|
0 | 0 | х | Запрещенная комбинация |
0 | 1 | 1 | Установка в " 1 " |
1 | 0 | 0 | Установка в " 0 " |
1 | 1 | Q(t) | Хранение |
Аналогичная запоминающая ячейка может быть построена на элементах "ИЛИ-НЕ".
Такие запоминающие ячейки можно рассматривать как простейшие асинхронные триггеры, на базе которых строятся синхронные триггерные схемы.
Триггеры можно классифицировать по различным признакам, например так, как это показано на рис. 1.6.
Триггер называется синхронным, если его таблица переходов хотя бы по одному управляющему входу реализуется под воздействием синхронизирующего сигнала.
Рассмотрим организацию синхронного одноступенчатого триггера ( рис. 1.7).
Основу синхронного одноступенчатого триггера составляет рассмотренная выше запоминающая ячейка (элементы 1, 2 ). Комбинационная схема преобразует управляющие сигналы триггера, а также, для некоторых типов триггеров, сигналы Q и Q с выходов ЗЯ в сигналы S и R на входах запоминающей ячейки. Синхросигнал C разрешает передачу на входы элементов 1 и 2 таких значений сигналов S и R, которые устанавливают ЗЯ в то или иное состояние. Неактивное значение синхросигнала обеспечивает на входах запоминающей ячейки состояние управляющих сигналов S = R = 1, что соответствует для нее режиму хранения.
Схема синхронного одноступенчатого RS-триггера приведена на рис. 1.8. Его таблица переходов представлена в табл. 1.4.
R | S | Q(t+1) | Функция |
---|---|---|---|
0 | 0 | Q(t) | Хранение |
0 | 1 | 1 | Установка в " 1 " |
1 | 0 | 0 | Установка в " 0 " |
1 | 1 | х | Запрещенная комбинация |
Еще раз подчеркнем, что данная таблица переходов будет реализовываться лишь при активном уровне синхросигнала C (для данной организации это C = 1 ). При C = 0 выходы элементов 3 и 4 (см. рис. 1.8) будут в состоянии " 1 ", что соответствует режиму хранения запоминающей ячейки, реализованной на элементах 1 и 2.
Таблицы переходов JK - и D - триггеров приведены в таблицах 1.5 и 1.6 соответственно.
J | K | Q(t+1) | Функция |
---|---|---|---|
0 | 0 | Q(t) | Хранение |
0 | 1 | 0 | Установка в " 0 " |
1 | 0 | 1 | Установка в " 1 " |
1 | 1 | Q(t) | Инвертирование предыдущего состояния |
Представленный на рис. 1.8 триггер имеет статическую синхронизацию, при которой управляющие сигналы активизируют входы S и R запоминающей ячейки во время высокого уровня сигнала на входе синхронизации. Его условно-графическое обозначение приведено на рис. 1.9,а. Условно-графические обозначения триггеров, использующих другие типы синхронизации, приведены на рис. 1.9,б,в,г (на примере RS-триггера ).
На рис. 1.9,б представлено УГО триггера со статической синхронизацией в случае, если активный уровень синхросигнала низкий. Условно-графические обозначения триггеров с динамической синхронизацией показаны на рис. 1.9,в и 1.9,г. В первом случае изменение состояния триггера под воздействием поступивших управляющих сигналов происходит только в момент переключения синхронизирующего сигнала с низкого уровня на высокий, а во втором – при переключении с высокого на низкий уровень. При постоянном значении уровня синхросигнала состояние выхода триггера с динамической синхронизацией не меняется при любых изменениях управляющих сигналов на его входах.
Рис. 1.9. Условно-графические обозначения RS-триггера с различной синхронизацией: а - статическая синхронизация; б - статическая инверсная синхронизация; в - динамическая синхронизация передним фронтом синхросигнала; г - динамическая синхронизация задним фронтом синхросигнала
Идеализированная (без учета задержек) временная диаграмма работы RS-триггеров с различными типами синхронизации приведена на рис. 1.10.
Рис. 1.10. Временная диаграмма работы RS-триггера с различными типами синхронизации: Qа – статическая синхронизация; Qб– статическая инверсная синхронизация; Qв –динамическая синхронизация передним фронтом синхросигнала; Qг– динамическая синхронизация задним фронтом синхросигнала
Как отмечалось выше, синхронный триггер, помимо управляющих входов, воздействующих на его состояние при подаче сигнала синхронизации, может иметь входы, которые воздействуют на его состояние непосредственно. Обычно они используются для установки триггера в то или иное начальное состояние перед подачей последовательности синхросигналов. Схема синхронного RS-триггера с асинхронными входами установки в " 0 " и в " 1 " приведена на рис. 1.11, а его условно-графическое обозначение – на рис. 1.12.
Рис. 1.12. Условно-графическое обозначение синхронного одноступенчатого RS-триггера с асинхронными установочными входами
Сигналы, поступающие по асинхронным входам S и R, подаются непосредственно на входы запоминающей ячейки, образованной элементами 1 и 2, минуя цепь, управляемую синхросигналом (элементы 1 и 2 ), и вызывают переключение запоминающей ячейки согласно табл. 1.3.
Триггеры некоторых типов используют значения выходного сигнала для формирования управляющих сигналов на входах запоминающей ячейки (см. рис. 1.7). Это может привести к непредсказуемой последовательности его переключений. При построении отдельных схем на основе триггеров, например, регистров сдвига, необходимо, чтобы значения выходных сигналов триггера не изменялись на то время, пока производится их запись и значения его выходных сигналов в другой триггер, но сам этот триггер должен воспринимать значения с выхода некоторой другой триггерной схемы. Эти, а также некоторые другие ситуации требуют особых подходов к организации триггера, основным из которых является создание двухступенчатых триггеров.
Двухступенчатый RS-триггер ( рис. 1.13 и рис. 1.14) строится на основе двух одноступенчатых триггеров с прямой статической синхронизацией. Информация в первую ступень триггера (элемент 1 ) заносится во время действия высокого уровня синхросигнала. После того как синхросигнал на входе принимает низкое значение, элемент 1 переходит в режим хранения, а значение высокого сигнала на выходе инвертора 3 обеспечивает запись состояния триггера 1 в триггер 2. Идеализированная временная диаграмма работы двухступенчатого RS-триггера приведена на рис. 1.15.
Следует отметить, что первая ступень представляет собой одноступенчатый триггер, реализующий заданную таблицу переходов, в то время как вторая ступень – это всегда одноступенчатый синхронный RS-триггер. Например, на рис. 1.16 показана схема двухступенчатого JK-триггера.