Главная Случайная страница


Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Глава 3. Основные элементы микропроцессорной техники

Логические элементы

В цифровых компьютерах информация представляется и обрабатывается с помощью электронных логических схем. Логические схемы оперируют двоичными переменными, принимающими одно из двух значений (обычно таковыми являются нуль и единица). Используемые для обработки цифровых сигналов устройства называются логическими элементами, и для их идентификации используют логические символы.

Рассказ о двоичной логике проще всего начать с простого примера, знакомого многим из вас. Представьте себе обычную электрическую лампочку, состояние которой (включена/выключена) управляется двумя выключателями, х1 и х2. Каждый из выключателей может находиться в одном из двух возможных положений, 0 или 1 (рис. 3.1, а).

Это означает, что его можно представить как двоичную переменную. Поэтому пусть имена переключателей служат и именами соответствующих им двоичных переменных. На рисунке показаны источник питания и сама лампочка. То, как выключатели будут управлять включением и выключением лампочки, зависит от соединения их проводов. Свет горит лишь в том случае, если образуется замкнутый контур, соединяющий лампочку с источником питания. Пусть условие включения лампочки представляет двоичная переменная f.

Если лампочка включена, значит, f = 1, а если она выключена, то f = 0. Таким образом, условие f = 1 указывает, что в цепи существует как минимум один замкнутый контур, а условие f = 0 означает, что замкнутого контура нет. Очевидно, что f является функцией двух переменных, х1 и х2.

Теперь давайте рассмотрим существующие способы управления лампочкой. Для начала, предположим, что она будет гореть при условии, что хотя бы один из переключателей находится в положении 1, то есть f = 1, если х1 = 1 и х2 = 0 или х1 = 0 и х2 = 1 или х1 = 1 и х2 = 1.

Соединения, реализующие этот тип управления, показаны на рис. 3.1,б. Рядом со схемой приведена представляющая эту ситуацию логическая таблица истинности. В таблице перечислены все возможные пары установок переключателей и соответствующие им значения функции f. В терминах математической логики эта таблица представляет функцию ИЛИ (OR) переменных х1 и х2.

Операцию ИЛИ обычно представляют алгебраическим знаком <+» или «Ú» так что f = х1 + х2 = х1 Ú х2

Мы говорим, что х1 и х2 являются входными переменными, а f — это выходная функция.

Следует указать некоторые важнейшие свойства операции ИЛИ. Прежде всего, она коммутативна, то есть х1 + х2 = х2 + х1.

Данная операция может распространятся на n переменных, так что функция f = х1 + х2 + ...+ xn принимает значение 1, если это же значение имеет хотя бы одна переменная xn. Проанализировав таблицу истинности, вы увидите, что 1 + х = 1 и 0 + х = х.

Рис. 3.1. Схемы включения электрической лампочки: лампочка, управляемая двумя выключателями (а); параллельное соединение выключателей — схема ИЛИ (б); последовательное соединение выключателей — схема И (в); соединение выключателей по схеме исключающее ИЛИ (г)

А теперь предположим, что лампочка должна загораться только в том случае, если оба выключателя находятся в положении 1. Такая схема соединения выключателей с соответствующей ей таблицей истинности показана на рис. 3.1, в. Эта схема соответствует функции И (AND), для обозначения которой используется символ <•> или «Ù»:

f = х1•х2 = х1 Ù х2

Вот важнейшие свойства операции И:

х1•х2 = х2• х1

1•х = х

0•х = 0

Функцию И тоже можно распространить на n переменных:

f = х1•х2 • ... • хn

Эта функция имеет значение 1 только в том случае, если все переменные х имеют значение 1. Она представляет такую же схему, как на рис. 3.1, в, в которой правда, последовательно соединено большее количество выключателей.

Последний вариант соединения выключателей также достаточно распространен. Здесь выключатели подсоединены с двух концов ступенчатого контура, так что лампочку можно включать и выключать с помощью любого из них. Это означает, что если свет включен, изменением положения любого из выключателей его можно выключить, а если свет выключен, изменением положения любого из выключателей его можно включить.

Предположим, что лампочка не горит, когда оба выключателя находятся в положении 0. Переключение же любого из них в положение 1 включает лампочку. Теперь предположим, что лампочка горит, если х1 = 1, х2 = 0. Переключение х1 в положение 0 выключает лампочку. Более того, для ее выключения можно также установить х2 в положение 1, то есть f = 0, если x1 = х2 =1. Соединение, которое реализует этот способ управления лампочкой, показано на рис. 3.1, г. Соответствующая логическая операция, представляемая символом «Å», называется Исключающее ИЛИ (EXCLUSIVE-OR или XOR). Приведем ее важнейшие свойства:

x1 Å х2 = х2 Å x1

1 Å х =

0 Å х = х

где обозначает функцию НЕ (NOT) от переменной х. Эта функция переменной f = имеет значение 1, если х = 0, и значение 0, если х = 1. В подобном случае мы говорим, что входное значение х инвертируется или дополняется.

Электронные логические вентили

Наш пример с выключателями, замкнутыми и разомкнутыми электрическими цепями и лампочками, иллюстрирующий идею логических переменных и функций, удобен тем, что он очень прост и каждому знаком. При этом представленные логические концепции применимы к электрическим цепям, используемым в обработки информации в цифровых компьютерах.

Физическими переменными в данном случае являются не положения выключателей и замкнутые или разомкнутые цепи, а электрическое напряжение и ток. Для примера рассмотрим схему, предназначенную для работы со входным напряжением +5 В или 0 В. Возможные значения выходного напряжения в ней тоже составляют +5 или 0 В. Если мы договоримся, что значение +5 В представляет логическую единицу, а знание 0 В — логический нуль, тогда функционирование этой схемы можно будет описать с помощью таблицы истинности той логической операции, которую она реализует.

С применением транзисторов можно сконструировать простые электронные схемы, которые будут выполнять логические операции И, ИЛИ, Исключающее ИЛИ и НЕ. Эти базовые схемы традиционно называют вентилями (gates).

Стандартные обозначения вентилей всех четырех типов приведены на рис. 3.2.

Рис. 3.2. Стандартные обозначения логических вентилей.

Если операция НЕ применяется ко входному или выходному значению логического вентиля, для нее используется упрощенное обозначение — просто маленький кружок.

Пока решим вопрос о том, как с помощью базовых вентилей конструируются логические схемы, реализующие более сложные логические функции.

В табл. 3.1 приведены семь основных логических элементов цифровых систем. В таблице истинности 0 означает низкий уровень напряжения (LOW), a 1 — высокий (HIGH).

В правой колонке приведены булевы функции[5], выполняемые каждым из логических элементов.

Приведенный на рис. 3.3 пример несколько поясняет способ преобразования информации логическими элементами.

Рис. 3.3. Пример инверсии

Определим вид сигнала на выходе инвертора (часто называется элементом отрицания НЕ) на рис. 3.3, когда на его вход поступает импульс а.

Согласно второй строке таблицы истинности (табл. 3.1) на выходе должен быть 0, т.е. значение, противоположное входному сигналу. Когда на вход инвертора подается импульс b (О или LOW), выход перейдет в состояние 1 (Н-состояние).

Таблица 3.1

Логические функции Обозначения логических элементов Таблицы истинности Булева функция
Инвертор НЕ (NOT) Вход Выход А 0 1 1 0   А=
  И (AND)   НЕ-И (NAND) Входы Выходы А В И НЕ-И 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0   A×B=Y     =Y
  ИЛИ (OR)   НЕ-ИЛИ (NOR) Входы Выходы В А ИЛИ НЕ-ИЛИ 0 0 0 1 0 1 1 0 1 0 1 .0 1 1 1 0   A+B=Y     =Y
ИЛИ ИСКЛЮЧАЮЩЕЕ (XOR)   НЕ-ИЛИ ИСКЛЮЧАЮЩЕЕ (XNOT-OR) Входы Выходы В A XOR HE-XOR 0 0 0 1 0 1 1 0 1 0 1 0 1 1 0 1   A B=Y     =Y

Импульс с вызовет LOW (L-состояние) на выходе, тогда как импульс d вызовет на выходе Н-состояние. Процесс инверсии называется также дополнением или отрицанием.

Булевой функцией дополнения является А= (говорят НЕ— А). Черта сверху А читается как НЕ и означает, что надо инвертировать или дополнить (до 1) переменную, над которой она стоит.

На рис. 3.4, а приведен другой пример — элемент И с двумя входами. Импульсами а на его входах являются 0 и 1. Согласно таблице истинности (табл. 3.2) это должно; вызвать 0 (LOW) на выходе. Импульсы а, б и с вызовут на выходе L-уровень. Когда же оба входа элемента И станут HIGH (см. импульсы d на рис. 3.4,а), выход становится равным 1 или HJGH.

Рассмотрим задачу, приведенную на рис. 3.4, б. В этом случае тетрады 1010 (на входе А) и 1001 (на входе В) совместно поступают на вход логического элемента ИЛИ. Тетрада на выходе может быть определена по таблице истинности (табл.3.1).

В результате логической операции ИЛИ над 1010 и 1001 получим на выходе 1011. Отметим, что функция ИЛИ сначала выполняется с импульсами а, затем б и т.д.

Рис. 3.4. Выполнение логических операций: а - И; б - ИЛИ; в - ИЛИ ИСКЛЮЧАЮЩЕЕ.

Какой будет тетрада на выходе, если 1010 и 1001 будут подвергнуты операции ИЛИ ИСКЛЮЧАЮЩЕЕ (XOR), как показано на рис. 3.4, в Согласно таблице истинности XOR видим, что результатом операции XOR с тетрадами 1010 и 1001 будет 0011.

Таким образом, микропроцессор может выполнять логические операции. Обычно микропроцессоры наделены способностью выполнять команды логических операций НЕ (дополнение или отрицание), И, ИЛИ и ИЛИ ИСКЛЮЧАЮЩЕЕ. Эти команды выполняются побитно аналогично приведенным в табл. 3.1 и на рис. 3.3, 3.4.

Последнее изменение этой страницы: 2017-07-07

lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда...