Все своими руками

Построение логических элементов

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

В основе метода построения и анализа логических схем лежит аппарат алгебры логики.

Основные, или базовые, логические элементы производят по планарной технологии с использованием резисторов, диодов и транзисторов.

При этом различают элементы: резисторно-транзисторной логики (РТЛ); диодно-транзисторной логики (ДТЛ); транзисторно-транзисторной логики (ТТЛ); транзисторной логики (ТЛ).

ЛОГИЧЕСКИЕ ЭЛЕМЕНТЫ

 
Элементарные логические операции над двоичными переменными реализуются схемами, которые называются логическими элементами. Число входов логического элемента соответствует числу аргументов воспроизводимой им булевой функции.  
 
  
Логическая функция реализуется логическим элементом ИЛИ (дизъюнктором) и изображается на схемах в следующем виде:
 
 
Логическая функция f(x1, x2, …, xn) = x1 x2 … xn реализуется логическим элементом И (конъюнктором):
 
 
Логическая функция реализуется логическим элементом НЕ (инвертором):
 
 
Cхему, показывающую связи между различными логическими элементами, где сами элементы представлены условными обозначениями, называют логической (более корректно — функциональной) схемой.  
 
 
Набор элементов для построения логической схемы является функционально полным, если реализуемые этими элементами булевы функции образуют функционально полную систему функций, т.е. с их помощью можно выразить любые другие логические функции. Дизъюнктор, конъюнктор и инвертор образуют функционально полный набор.  
 
 
Сформулируем основные требования к логическим элементам вычислительных устройств. Высокое быстродействие. Суть этого требования вполне ясна, так как именно быстродействие элементов определяет в конечном счете быстродействие вычислительной машины. Для логических элементов существенную роль в этом отношении играет время переключения. Достаточно большая нагрузочная способность. Нагрузочная способность определяет число других элементов, которые можно подключать к выходу данного элемента, сохраняя нормальные условия его работы. Высокая помехоустойчивость. Логические элементы должны быть устойчивы к помехам, которые всегда присутствуют в электрических цепях, — ложные сигналы, вызванные наводками от параллельных цепей, шумы вследствие случайных флуктуаций зарядов в физических элементах и т.п. Малая потребляемая мощность. Потребляемая элементами мощность рассеивается, главным образом, в виде тепла. Большое тепловыделение нарушает режимы работы схем и ограничивает <плотность упаковки> элементов, что ведет к увеличению размеров элементов, а значит, и машины в целом. Как можно меньшее количество физических элементов. Схемы, требующие меньшего количества физических элементов, оказываются эффективнее как с экономической точки зрения, так и с точки зрения надежности и долговечности.
 

ЭЛЕКТРИЧЕСКИЕ СИГНАЛЫ — ФИЗИЧЕСКИЕ АНАЛОГИ ДВОИЧНЫХ ЦИФР


 
Физическими аналогами двоичных цифр в вычислительных устройствах служат электрические сигналы в соответствующих точках схем, способные принимать два хорошо различимых значения. Напрмер, можно использовать: высокий уровень напряжения схемы (5 В) как логическую единицу — 1, низкий (0 В) — как логический нуль — 0; ферромагнитное колечко намагничено в одном направлении — 1, в другом — 0; наличие импульса тока — 1, отсутствие — 0.  
 
 
 
В схемах цифровых устройств эти сигналы изменяются и воспринимаются не непрерывно, а в некоторые дискретные моменты времени. Временной интервал между этими моментами называется тактом. Цифровые устройства обычно содержат специальный блок — блок синхронизации, вырабатывающий синхронизирующие сигналы, следующие через равные интервалы времени и отмечающие указанные моменты.  
 
 
 
Понятие такта позволяет разграничить два способа представления информации в цифровой вычислительной машине: потенциальный и импульсный. При потенциальном способе цифрам 0 и 1 соответствуют высокий и низкий уровень напряжения в данной точке; потенциальным называется сигнал, меняющий свою величину один раз за такт. При импульсном способе цифрам 0 и 1 соответствует, например, отсутствие и наличие импульса; импульсом называется сигнал, изменяющий свою величину дважды в течение такта. На рис.2.1 показано изменение напряжения при потенциальном и импульсном изображениях одного и того же слова 100010111.

Рис.2.1. Изменение напряжения при потенциальном (а)
и импульсном (б) изображениях слова 100010111  

 

ЭЛЕКТРИЧЕСКИЕ ЛОГИЧЕСКИЕ ЭЛЕМЕНТЫ

  
Используя представление двоичных цифр электрическими сигналами, мы можем на простейших электронных схемах получить реализацию трех базовых логических операций.  
 
 
Самым простым электрическим логическим элементом с двумя устойчивыми состояниями является переключатель, который может быть замкнут или разомкнут. В первых цифровых вычислительных машинах в качестве переключателей использовались электромеханические реле (рис.2.2).  
 
  
На рис.2.2,а изображен электрический логический элемент И. Наличие напряжений Ux1 или Ux2, равных 5В, приводит к замыканию контактов реле. Логическая единица на выходе устройства (Uy = 5В) возникает в случае Ux1 = Ux2 = 5B , в других случаях Uy = 0 .  
 
 
Электрический логический элемент ИЛИ на двух реле представлен на рис.2.2,б. Наличие хотя бы одного из сигналов Ux1 или Ux2, равного 5В, приводит к замыканию контактов одного из реле и Uy = 5В (логическая 1).  
 
 
Элемент НЕ состоит из одного реле (рис.2.2,в). Наличие Ux = 5В приводит к замыканию контактов реле и Uy = 0В.

Рис.2.2. Логические элементы на переключателях (а — И, б — ИЛИ, в — НЕ)
 
 
Быстродействие переключателей на электромеханических реле невелико, так как подвижные механические части весьма инерционны. Кроме того, реле имеют ограниченное число надежных срабатываний и для обеспечения правильной работы должны часто заменяться.  
 
 

 
На смену электромеханическим переключателям пришли более быстрые и надежные электронные переключатели, построенные на основе вакуумных электронных ламп.  
 

 
Простейшая электронная лампа — вакуумный диод — имеет два электрода — анод и катод. Диод проводит ток лишь в одном направлении и его можно рассматривать как переключатель: если к аноду приложен плюс, а к катоду минус, то он замкнут, если наоборот — разомкнут.  
 
 
Трехэлектродная лампа — триод — также может быть использован в качестве переключательного элемента благодаря наличию двух режимов его работы: режима насыщения, соответствующего состоянию замыкания переключателя, и режима отсечки (размыкание).  
 
 
Электронные переключатели на лампах обладали по сравнению с электромеханическими более высоким быстродействием и могли обеспечить большую скорость переключений. Их недостатки: большое потребление энергии и невысокая надежность.  
 
 
В вычислительных машинах второго поколения стали использовать полупроводниковые диоды и триоды (транзисторы). Аналогично вакуумным, полупроводниковые диоды и транзисторы имеют режимы насыщения и отсечки и также могут быть использованы в качестве переключателей (рис.2.3).  
 
 

 
Элемент ИЛИ представлен диодной схемой (рис.2.3,а). Если на любой из входов схемы поступит единичный сигнал (5В), то через соответствующий диод (D1 или D2) и резистор (R) потечет ток, при этом положительное падение напряжения на резисторе передается на выход, это эквивалентно появлению логической единицы на выходе схемы.  
 

 
Элемент И представлен на рис.2.3,б. Если хотя бы на одном из входов отсутствует единичный сигнал, то есть на данном входе сигнал равен 0 (Ux1 = 0 или Ux2 = 0), то на выходе схемы будет сигнал, соответствующий логическому 0. Только в том случае, если на все входы подается 5В (логическая 1), цепи протекания тока от источника через резистор и диоды будут заперты и на выходе схемы будет высокий потенциал источника, эквивалентный сигналу логической 1.  
 
 
Схема инвертора на транзисторе изображена на рис.2.3,в. Если на вход инвертора подан положительный сигнал, то транзистор будет открыт и находится в режиме насыщения. На выход элемента поступает сигнал логического 0, близкий к потенциалу эмиттера транзистора. Если на вход подается нулевой сигнал, то транзистор закрыт отрицательным смещением от источника Eсм, и на выходе элемента будет сигнал 1, близкий к потенциалу коллекторного источника питания Ek.

Рис.2.3. Полупроводниковые логические элементы (а — И, б — ИЛИ, в — НЕ)
 
 
Быстродействие и надежность транзисторных переключателей значительно превосходило ламповые. Кроме этого, практически в сто раз была снижена потребляемая элементом мощность.  
 
 

 
Транзисторные переключатели в вычислительных машинах последующих поколений стали выпускаться в интегральном исполнении, появились интегральные схемы. Интегральные схемы невысокой степени интеграции (несколько логических элементов, до 30 транзисторов на кристале) сейчас заменяются большими (БИС) и сверхбольшими (СБИС) интегральными схемами, содержащими сотни и тысячи логических элементов. Типичное время переключения (время перехода из 0 в 1 или из 1 в 0) современных логических элементов — единицы наносекунд (1 нс = 10 — 9 с).  
 

ЛОГИЧЕСКИЕ ЭЛЕМЕНТЫ

 

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

 
Например, булева функция образована суперпозицией элементарных функций f1 , f2 , f3 , f4 , где
 
 

 
Анализ логических схем. Анализ логических схем ведется с помощью аппарата алгебры логики. Задача формулируется следующим образом: «Найти булеву функцию, которая описывает функционирование данной схемы». Для этого каждому функциональному элементу схемы ставится в соответствие логический оператор. Таким образом, через логические опе-раторы выражают все элементы. Получают логическое уравнение — модель функции, выполняемой схемой. Далее проводят анализ модели, например, для поиска неисправностей, удаления несущественных частей и т.п.
 
 

 
Пример 1. Дана функциональная схема (рис.2.4). Определить булеву функцию, которой описывается функционирование этой схемы.

Рис. 2.4. Функциональная схема

Решение. Схема состоит из четырех логических элементов. Пометим их выходы символами f1 , f2 , f3 , f4 . Символом y пометим выход функциональной схемы — выход элемента. Запишем элементарные функции, реализуемые каждым элементом. Итак:
Или:
Это выражение может быть преобразовано: а раз так, то схема может быть упрощена.
 

 
Синтез логических схем. Типичная задача синтеза логической схемы: «Даны входные переменные x1, …, xn, выходная функция y. Необходимо спроектировать (синтезировать) функциональную схему устройства, которое реализует эту функцию».  
 
 
 
 
Пример 2. Булева функция f(x1 , x2 , x3 ) задана таблицей истинности. Построить функциональную схему, реализующую искомую функцию.
Номер набора
x1 x2 x3 f(x1 x2 x3) 00 0 00 10 0 10 20 1 01 30 1 10 41 0 00 51 0 11 61 1 01 71 1 10

Решение. Запишем СДНФ этой функции:
Минимизируем с помощью карты Карно:

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

Построение логических элементов

Подобным образом можно строить и более сложные логические элементы. Если соединить четыре транзистора способом, изображенным на рисунке, получится логический элемент «И-НЕ».

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

Похожая схема реализует логическую функцию «ИЛИ-НЕ».

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

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

Кстати, эта мысленная аналогия имеет под собой вполне реальную основу. В 60-е годы 20-го века, совершенно серьезно разрабатывались логические схемы, и даже компьютеры, построенные исключительно на пневматических вентилях. В отличие от электроники, такие схемы могут работать в условиях, в которых электроника работать не может. Например, в условиях сильного радиоактивного излучения или в химически агрессивной среде.