Существуют три базовых логических элемента, выполняющих логические операции сложения, умножения и отрицания: элемент И, элемент ИЛИ и элемент НЕ (инвертор), которые обозначаются на принципиальных электрических схемах как показано на рис.1
Рис. 1. Базовые логические элементы.
Работа логического элемента может быть представлена таблицей истинности, в которой указаны состояния входов (A,B и т.д.) и выходов (F):
Элемент И F=A.B Элемент ИЛИ F=A+B Элемент НЕ F=A
Вх A | Вх B | Выход F | Вх A | Вх B | Выход F | Вход | Выход | ||
Знак отрицания (инверсии) обычно обозначается чертой над буквой , а на принципиальной схеме - кружком у соответствующего вывода. Практическая реализация инвертора на биполярном и МОП транзисторах показана на рис.2. Количество входов у логического элемента может быть больше двух, в этом случае тоже можно легко построить таблицу истинности. В практических схемах иногда существуют незадействованные входы, которые нужно соединить, в соответствии с логикой схемы, с общим проводом (землей) или через резистор с проводом питания (для ТТЛ-схем Uпит=+5В).
Рис. 2. Инвертор на основе биполярного и МОП транзисторов
Комбинируя базовые логические элементы, можно получить достаточно сложную схему. Для схемы ИЛИ различают обычное ИЛИ (включающее) и исключающее ИЛИ.
Исключающее ИЛИ | Элемент ИЛИ-НЕ | |||||
Вх A | Вх B | Выход F | Вх A | Вх B | Выход F | |
Триггеры
Триггер - электронное устройство, которое может находиться в двух устойчивых состояниях, поэтому они применяются в статических оперативных запоминающих устройствах (СОЗУ) как элемент памяти на один бит информации. Триггеры подразделяются на тактируемые (синхронные) и нетактируемые (асинхронные). Синхронный триггер меняет свое только при подаче определенного сигнала на тактируемый вход, причем тактирование может, осуществляется как по уровню ("1" или "0"), так и по фронту сигнала (переход "1" -> "0" или наоборот). Различают RS, D, T и JK триггеры. На рис.3 показана реализация асинхронного RS-триггера на ИЛИ-НЕ элементах (подумайте: как реализовать RS-триггер на И-НЕ элементах). Входы триггера обозначены буквами R (reset-сброс) и S (set-установка). Таблица истинности RS-триггера на элементах ИЛИ-НЕ приведена ниже.
S | R | Q | Qinv |
Qinv | |||
x | x |
Здесь состояние S=1 и R=1 является неопределенным (проанализируйте работу схемы и скажите почему?).
Рис.3 RS-триггер
D-триггер (delay-задержка) имеет два входа: D - информационный и C - тактовый (рис,4 А) и работает с нижеприведенной таблицей),тактирование осуществляется передним фронтом):
C | D | Q | Qinv |
0->1 1->0 |
Более сложную функциональную нагрузку может нести JK-триггер (рис. 4 B). J и K - входы такого устройства - управляющие, а C - тактовый. Подавая на входы J и K логические "1" и "0" можно установить необходимое состояние выхода Q, т.е. JK-триггер работает как RS-триггер. Когда J=K=1 данное устройство перебрасывается в противоположное состояние (по приходу тактового импульса) т.е. работает как двоичный счетчик (или Т -триггер). состояние J=K=0 - хранение информации. Кроме J и K входов схема может иметь и нетактируемые R и S входы. Работу JK-триггера можно представить таблицей:
J | K | Q | Qinv |
Здесь Q и Q* - состояние выхода до и после прихода синхроимпульса на вход С.
Рис. 4 D-триггер (A) и JK-триггер (B).