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

Что же это за волшебные элементы. Если вы хоть немного сталкивались с цифровыми схемами, вы наверняка знакомы с логическими элементами. Вы знаете, что на схеме они обозначаются небольшим прямоугольничком, имеющим несколько входов и один выход. В настоящее время цифровые микросхемы получили такое большое распространение, что логические элементы можно встретить в схемах очень далеких от микропроцессоров и вычислительной техники. Кроме того многие втречались и с другими, более сложными элементами цифровой техники: триггерами, дешифраторами, мультиплексорами, счетчиками, регистрами и т. д. Кто то знает и понимает, как это все работает и для чего предназначено. А кто то еще нет. Я считаю необходимым остановиться на этом подробнее. Те, кто знаком с данной темой, могут пропустить несколько глав.

Для остальных я расскажу, что из всего разнообразия цифровых элементов большинство - это составные элементы. Составные в том смысле, что их можно составить из других, более простых. А в основе лежит всего три простейших логических элемента. Вот эти три кита цифровой техники:

Рис. 4.

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

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

Теперь рассмотрим логику работы каждого элемента.

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

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

Элемент «НЕ».Или инвертор. У этого элемента всегда один вход и один выход. И работает он просто. Когда на входе у инвертора сигнал логического нуля, на выходе логическая единица. И наоборот, когда на входе логическая единица, на выходе логический ноль.

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

Для отображения логики работы того или иного элемента принято составлять так называемые таблицы истинности. Таблица истинности – это такая таблица, которая имеет столбцы для всех входов и выходов конкретного элемента. В таблице отображаются все возможные состояния элемента. Каждая строка соответствует одному из возможных состояний. На рис. 5 я привожу таблицы истинности для трех основных логических элементов. Для наглядности я привожу трехвходовые варианты элемента «И» и элемента «ИЛИ».

  Входы Вых     Входы Вых     Вход Вых  
  X1 X2 X3 Y     X1 X2 X3 Y     X1 Y  
           
           
               
               
               
               
            Рис. 5.  
               

Теперь попробуем составить более сложный элемент. Для примера соединим элемент «И» с инвертором так, как это показано на схеме рис. 6. В результате к нас получится новый элемент. Он так же имеет свое название и схемное обозначение. Называется такой элемент «И-НЕ», а его схемное обозначение приведено на рис. 7. Подчеркиваю: на рис. 6 и на рис. 7 изображен по сути дела один и тот же логический элемент.

Рис. 6. Рис. 7.

В реальной схеме могут применяться оба варианта. Дело в том, что одна микросхема обычно содержит несколько аналогичных логических элементов. Стандартный корпус микросхемы имеет 14 либо 16 выводов. Поэтому в одном корпусе обычно размещают четыре двухвходовых элемента или три трехвходовых. Для рационального использования всех элементов (что бы не оставалось неиспользованных) одну и ту же схему могут собрать по разному.

Логика работы элемента «И-НЕ» очевидна. Сигнал на выходе будет равен нулю в том и только в том случае, когда на всех его входах присутствует логическая единица.

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

Рассмотрим теперь более сложный производный логический элемент «ИСКЛЮЧАЮЩЕЕ ИЛИ». Его тоже можно встретить в различных электронных схемах.

  Входы Вых  
  X1 X2 Y  
   
   
   
   
      Рис. 8.   Рис. 9.

Схемное обозначение элемента «ИСКЛЮЧАЮЩЕЕ ИЛИ» и таблица истинности приведены на рис. 8. Как видно из таблицы, логика работы элемента соответствует его названию. Это тот же элемент «ИЛИ», за исключением того случая, когда на обоих входах присутствует логическая единица. В отличии от «ИЛИ», элемент «ИСКЛЮЧАЮЩЕЕ ИЛИ» дает в этом случае на выходе логический ноль.

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

  Входы Выходы  
  X1 X2 XP Y P  
   
   
   
   
   
   
   
   
Рис. 10.

Эсли внимательно посмотреть на таблицу истинности элемента “ИСКЛЮЧАЮЩЕЕ ИЛИ», то легко заметить, что логика работы элемента очень похожа на таблицу сложения двух разрядов двоичных чисел. И действительно: ноль плюс ноль равняется ноль. Один плюс ноль и ноль плюс один, равняется один. А Сумма двух единиц дает ноль в этом разряде и единицу переноса в следующий разряд. Таким образом, не хватает только переноса. Элемент, который выполняет суммирование входных сигналов, называется сумматором. Его так же собирают из элементарных логических элементов. Схемное изображение и логика работы сумматора приводятся на рис. 10. Здесь X1 и X2 – это входы складываемых разрядов. Y – выход суммы. P – выход переноса в более старший разряд. XP – вход переноса с младшего разряда. Для суммирования много разрядных цифровых сигналов сумматоры соединяют каскадом. При этом сигнал с выхода P сумматора одного разряда подается на вход XP сумматора следующего разряда.

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