
Организация ЭВМ и систем
..pdf
в
S Q C T
R ⌐Q
г
Рисунок 2.4.6 – Синхронный RS – триггер: логическая схема (а); таблица истинности (б); временная диаграмма (в); графическое обозначение (г)
Аналитическое функционирование синхронного RS-триггера можно получить, используя карты Карно (рис. 2.4.9).
R
0 |
12 |
1 |
13 |
1 |
5 |
0 |
4 |
S — —
14 |
|
15 |
|
1 |
7 |
1 |
6 |
C |
0 |
10 |
0 |
11 |
1 |
3 |
0 |
2 |
|
0 |
8 |
1 |
9 |
1 |
1 |
0 |
0 |
|
|
|
Q |
|
|
|
|
|
|
Рисунок 2.4.7 – Карта Карно логической функции синхронного RS-триггера
Уравнение функционирования имеет вид: Q(t+1) = S(t) C(t) + Q(t) ⌐R(t) + Q(t) ⌐C(t),
причем S(t) R(t) = 0.
Выберем базис на элементах И-НЕ:
Q(t+1) = S(t) C(t) + Q(t) ⌐R(t) + Q(t) ⌐C(t) = =⌐⌐(S(t) C(t) + Q(t) (⌐R(t) + ⌐C(t))) =
= ⌐(⌐(S(t) C(t)) ⌐(Q(t) ⌐(R(t) C(t)))).
Графическое изображение триггера показано на рис. 2.4.8,г. Его тактовый вход обозначается стрелкой →. Это стандартное обозначение, указываю-
31

щее, что изменение состояния триггера происходит на положительном фронте тактового сигнала. Если представляется ситуация, когда изменение происходит на отрицательном фронте, на тактовом входе стрелка отображается в обратную сторону.
Двухтактный RS-триггер
Устойчивая работа однотактных RS-триггеров в произвольной схеме возможна только в случае, если занесение в триггер информации осуществляется после завершения передачи информации о прежнем его состоянии в другой триггер.
Такой принцип обмена информацией реализован в двухтактных RSтриггерах.
Простейшая схема двухтактного RS-триггера показана на рис. 2.4.8,а, состоящей из двух однотактных RS-триггеров и инвертора в цепи синхронизации. При поступлении на вход RS-триггера сигнала C=1 входная информация заносится в первый однотактный RS-триггер, а второй при этом будет хранить информацию, относящуюся при этом к предыдущему периоду представления. По окончании действия сигнала синхронизации, когда C=0, первый RSтриггер перейдет в режим хранения, а второй перепишет из него новое значение выходного сигнала. Таблица на рис. 2.4.8,б задает закон функционирования такого двухтактного триггера.
Двухтактный триггер изменяет свои состояния только после действия сигнала синхронизации C=1 (переход в режим хранения информации). Поэтому из двухтактных триггеров можно строить произвольные схемы, в том числе подавать сигналы с выхода триггера на его вход. Символ TT в основном поле условного обозначения указывает на двухтактный триггер (рис. 2.4.8,в).
S
C
R
а
& |
& |
& |
& |
& &
&
&
Q
⌐Q
R |
S |
Q(t+1) |
|
|
|
|
(режим хране- |
0 |
0 |
Q(t) |
ния) |
0 |
1 |
1 |
(установка 1) |
1 |
0 |
0 |
(установка 0) |
|
|
32 |
|

1 |
1 |
- |
(запрещено) |
б
S Q
C TT
R ⌐Q
в
Рисунок 2.4.8 – Двухступенчатый RS-триггер: логическая схема (а); таблица истинности (б); графическое обозначение (г)
Схема RS-триггеров составляет основу для построения других триггерных схем, таких как T-, D- и JK-триггеров.
D-триггер
На рис. 2.4.9 показан широко используемый D-триггер, реализующий функцию временной задержки (delay). D-триггер имеет только режимы установки 1 и установки 0. D-триггер соответствует RS-триггеру, работающему только в режимах установки, т.е. с R = 1 и S = 0 либо с R = 0 и S = 1. В связи с этим несинхронизируемый D-триггер (рис. 2.4.9,а) не применяется, т.к. его выход будет просто повторять входной сигнал. Синхронизируемый однотактный D-триггер (рис. 2.4.9,б) задерживает распространение входного сигнала на полпериода. Для задержки на период (на один такт) используется двухтактный D-триггер.
|
|
S |
Q |
|
D |
|
|
T |
|
1 |
R |
⌐Q |
||
|
||||
|
|
а
|
|
S |
Q |
|
D |
|
C |
T |
|
1 |
R |
⌐Q |
||
|
||||
|
|
б
33

|
|
S |
Q |
|
D |
|
C |
TT |
|
1 |
R |
⌐Q |
||
|
||||
|
|
в
Рисунок 2.4.9 – D-триггер: несинхронный триггер (а); синхронный однотактный D-триггер (б); двухтактный D-триггер (в)
Вариант построения двухтактного D-триггера показан на рис. 2.4.9,в. Под действием синхросигнала информация, поступающая на вход D, принимается в RS-триггер, но на выходе Q появляется с задержкой в момент времени t + 1:
Q(t + 1) = D(t).
В схеме однотактного D-триггера сигналы S и R поступают из одного входа, обозначенного как D. В ответ на поступление тактового импульса значение на выходе Q становится равным 1, если D = 1, или сбрасывается в 0, если D = 0. Это означает, что при поступлении каждого нового тактового импульса сигнал на входе D передается на выход Q D-триггера и сохраняется неизменным до прихода следующего тактового импульса.
Аналитическое функционирование синхронного D-триггера можно получить из таблицы истинности (рис. 2.4.10,а), используя карты Карно
(рис 2.4.10,б).
Уравнение функционирования имеет вид:
Q(t+1) = D(t) C(t) + ⌐C(t) Q(t).
Выберем базис на элементах И-НЕ:
Q(t+1) = D(t) C(t) + ⌐C(t) Q(t) = ⌐⌐(D(t) C(t) + ⌐C(t) Q(t)) = = ⌐(⌐(D(t) C(t)) ⌐(⌐C(t) Q(t)))
Логическая схема D-триггера показана на рис. 2.4.10,в.
|
|
Q(t+1 |
|
D |
C |
) |
|
|
|
|
(режим хране- |
x |
0 |
Q(t) |
ния) |
0 |
1 |
0 |
(установка 0) |
1 |
1 |
1 |
(установка 1) |
а
34

|
C |
|
|
|
|
|
|
|
D |
1 |
6 |
1 |
7 |
1 |
3 |
0 |
2 |
|
||||||||
|
0 |
4 |
0 |
5 |
1 |
1 |
0 |
0 |
|
|
|
Q |
|
|
|
|
|
б
D
C
в
& &
& &
Q
⌐Q
Рисунок 2.4.10 – Синхронный D-триггер: таблица истинности (а); карта Карно (б); логическая схема (в)
Т-триггеры
Триггер со счетным входом, T-триггер, в простейшем случае может быть реализован с использованием двухтактного синхронного RS-триггера. Состояние Т-триггера изменяется на каждом такте, если на его вход Т подается значение 1. Говорят, что такой триггер «переключает» свое состояние.
Схема Т-триггера, а также его таблица истинности, графическое обозначение представлены на рис. 2.4.11.
T-триггер должен реализовать функцию вида:
Q(t+1) = Q(t) ⌐T(t) + ⌐Q(t) T(t),
т.е. осуществлять операцию суммирования по модулю 2 сигнала состояния триггера Q и входного сигнала T.
В схеме T-триггера поступление сигнала Т = 1 приводит к записи в двухступенчатый RS-триггер состояния, противоположного ранее хранимому. При этом, так как триггер двухступенчатый, на его выходе сигнал изменится только по завершению действия сигнала Т = 1, что исключает возникновение генерации в схеме с обратной связью. Можно считать, что в данной схеме единичный входной сигнал представляется спадом сигнала Т = 1, т.к. при лю-
35

бой продолжительности сигнала Т = 1 изменение состояния Т-триггера происходит только один раз – при снятии сигнала Т = 1 (рис. 2.4.11,г).
& &
&
&
Т
& &
&
&
Q
⌐Q
а
T |
Q(t) |
Q(t+1) |
Примечание |
|
|
|
Постоянный |
0 |
0 |
0 |
импульс |
0 |
1 |
1 |
Меняюшийся |
1 |
0 |
1 |
импульс |
|
|
|
Постоянный |
1 |
1 |
0 |
импульс |
б
Q
Т |
TТ |
⌐Q
в
Рисунок 2.4.11 – Т-триггер: логическая схема (а); таблица истинности (б); графическое обозначение (в)
JK-триггеры
Распространенным типом триггера в системах интегральных логических элементов является универсальный двухтактный JK-триггер. JK-триггер обладает чертами триггеров SR и Т. Его схема, таблица истинности и обозначение приведены на рис. 2.4.12. Первые три строки в таблице истинности JKтриггера определяют его поведение, аналогичное поведению RS-триггера при C = 1, так что входы J и К соответствуют входам S и R соответственно. При входном сигнале J = К = 1 следующее состояние триггера определяется как
36

дополнение его текущего состояния. Это означает, что когда J = К = 1, триггер действует как переключатель, изменяя свое текущее состояние на противоположное. При С = 0 триггер находится в режиме хранения. Триггеры JK могут применяться для разных целей. В частности, их подобно D-триггерам можно использовать для хранения данных. На их основе также можно создавать счетчики, поскольку при соединении терминалов J и К они ведут себя как Т-триггеры.
J
С
K
& &
&
&
& &
&
&
Q
⌐Q
а
K |
J |
C |
Q(t+1) |
|
|
|
|
|
|
(режим |
хране- |
x |
x |
0 |
Q(t) |
ния) |
|
0 |
0 |
1 |
Q(t) |
(режим |
|
0 |
1 |
1 |
1 |
синхронного |
|
1 |
0 |
1 |
0 |
триггера) |
|
|
|
|
|
(режим |
Т- |
1 |
1 |
1 |
⌐ Q(t) |
триггера) |
|
б
J |
Q |
C |
TT |
K |
⌐Q |
|
|
|
в |
Рисунок 2.4.12 – JK-триггер: логическая схема (а); таблица истинности (б); графическое обозначение (в)
37

2.5 Логическое проектирование
Основные процедуры логического проектирования (синтеза) цифровых устройств (Рис. 2.5.1):
|
Без памяти |
|
Логические |
|
|
элементы |
С памятью |
|
|
||
Логические |
Без памяти |
|
|
||
узлы |
|
|
|
С памятью |
|
Операционные |
Операционные |
|
автоматы |
||
устройства |
||
|
||
|
Управляющие |
|
|
автоматы |
|
микропроцессоры |
|
И, ИЛИ, НЕ |
|
триггеры |
RS, D, T, JK |
|
|
Шифраторы, дешифраторы, сумма- |
|
торы, мультиплексоры, компараторы, |
|
преобразователи кодов |
|
Регистры, счетчики |
|
с жесткой |
|
|
логикой |
с программируемой |
|
|
логикой |
Рис. 2.5.1. Структура набора для логического проектирования
Логические элементы без памяти (ЛЭ без П): И, ИЛИ, НЕ, И- НЕ, ИЛИ – НЕ;
Логические элементы с памятью (ЛЭ с П): триггеры; Логические узлы без памяти (ЛУ без П): сумматор, мультиплексор,
демультиплексор, шифратор, дешифратор. Логические узлы с памятью (ЛУ с П): регистр, счётчик; МП – микропроцессор; ЖЛ – жёсткая логика;
ПЛ – программируемая логика.
Таким образом, перед тем как начать логическое проектирование, необходимо выбрать тип логики (жёсткая или программируемая).
Набор булевых функций: Nн = 2 n;
Общее количество функций: N = 2 |
2 |
n |
|
. |
|||
|
Задача синтеза:
1.Уяснить задачу.
2.Определить число аргументов и число функций.
3.Составить таблицу истинности.
4.Получить булеву функцию.
5.Произвести её минимизацию.
38

6.Выбрать логический базис.
7.Синтезировать логическую схему.
8.Выполнить её проверку.
Пример: спроектировать устройство, определяющее число, которое делится на три.
Таблица истинности такого устройства (рис. 2.5.2).
n |
a |
b |
c |
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
лампа |
|
||
1 |
0 |
0 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|||
2 |
0 |
1 |
0 |
0 |
вход |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
3 |
0 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
1 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
1 |
0 |
1 |
0 |
|
|
Управляющие элементы |
|
||||||||||
6 |
1 |
1 |
0 |
1 |
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
7 |
1 |
1 |
1 |
0 |
|
|
a |
|
b |
|
c |
|
Транзистор – элемент НЕ.
0
1
Рис. 2.5.2 – Таблица истинности и схема
Два транзистора, соединённых последовательно, – элемент И-НЕ.
0
1
1
Два транзистора, соединённых параллельно, – элемент ИЛИНЕ.
0
1 1
39

Получим булеву функцию: Y = a*b*c + a*b*c +a*b*c. Нанесем булеву функцию на карту Карно (рис. 2.5.3).
Произведем минимизацию, вариантов минимизации в данном пример нет.
|
|
|
|
|
|
|
|
|
|
|
|
|
Pi |
ai |
bi |
Si |
Pi+ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
a |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
0 |
0 |
0 |
0 |
0 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
b |
|
1 |
|
|
|
|
|
1 |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
0 |
1 |
0 |
1 |
0 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
1 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
0 |
0 |
1 |
0 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
c |
|
|
|
1 |
1 |
0 |
0 |
1 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 2.5.3 Карта Карно для булевой функции
Выберем базис на элементах И-НЕ, используя искусственный прием (двойная инверсия от аргумента равна аргументу) и теорему Де Моргана, получим.
Y = a*b*c + a*b*c +a*b*c = a*b*c * a*b*c *a*b*c
Синтезируем схему на элементах И-НЕ, рис 2.5.4.
a b c
Рис. 2.5.4 Логическая схема на элементах И-НЕ
2.6 Логические узлы
40