Дискретные логические и цифров ые микросхемы Электрический сигнал может явиться носителем дискретной двоичной информации, когда необходимо знать лишь о состоянии какого-либо объекта или устройства. К такого рода информации можно отнести: "включено-отключено", "больше-меньше", "открыто-закрыто", "выше-ниже" и т.п. Далее на основании этой информации, поступающей со многих объектов, необходимо принять решение, например, "включить" или "отключить" какое-либо сигнальное устройство или исполнительный механизм. В этих случаях все физические сигналы можно формализовать в виде констант булевой алгебры, придавая им значение 0 или 1. В качестве примера можно привести схему управления температурой в реакторе, изображённой на рис. 9.21. Имеется датчик температуры (ВТ), который вырабатывает сигнал "температура в реакторе больше заданной" (1) или "температура в реакторе меньше заданной" (0). Датчик уровня (ВН) вырабатывает сигнал "уровень жидкости выше минимально допустимого"(1) или "уровень жидкости ниже минимально допустимого" (0). Логическое устройство (U1) при различных комбинациях сигналов от датчиков должно выработать решение (у), когда "включить нагреватель" (х1=1) и когда "отключить нагреватель" (х1=0). Очевидно, включить нагрев можно лишь в том случае, когда уровень жидкости будет выше минимально допустимого (х2=1), а температура в реакторе – меньше заданной (х1=0) При понижении уровня жидкости ниже минимально допустимого (х2=0) нагрев в любом случае должен быть отключен (х1=0). Все возможные состояния датчиков (х1 и х2) и соответствующее решение (у) о включении или отключении нагревателя представлены таблицей рис. 9.21 где в последних трех столбцах формально с помощью констант булевой алгебры описано состояние датчиков и решение (у), принимаемое на их основе. Для разработки логического устройства, выполняющего функции, описанные таблицей необходимо знать операции и законы булевой алгебры, а также электрические схемы (микросхемы), реализующие данные операции. 116 Реактор ВТ больше (х1=1) меньше (х1=0) ВН U1 выше (х2=1) ниже (х2=0) включить (у=1) отключить (у=0) ≈U а Датчик температуры (ВТ) больше меньше больше меньше Датчик уровня (ВН) выше выше ниже ниже х1 х2 у=f(х1ּ·х2) 1 0 1 0 1 1 0 0 0 1 0 0 Нагреватель отключить включить отключить отключить б Рис. 9.21. Схема управления температурой реактора (а) и таблица состояний датчиков логического устройства (ЛУ) (б) Булева алгебра В булевой алгебре имеются только две константы: 0 и 1. Переменные х, у, z, … могут также принимать значения только 0 или 1. К основным операциям булевой алгебры относятся: "И" (&) – логическое умножение, "ИЛИ" (+) – логическое сложение и "НЕ" (–) – логическое отрицание. Эти операции задаются с помощью таблиц истинности. х1 0 1 0 1 х2 0 0 1 1 "И" 0 0 0 1 "ИЛИ" 0 1 1 1 "НЕ" (х1) 1 0 1 0 117 9.4.1. Логические микросхемы Для реализации операций булевой алгебры средствами электроники прежде всего необходимо выбрать величину потенциала (напряжения), которая будет соответствовать 0 и 1. Наибольшее распространение получили следующие сигналы: "0" – соответствует потенциалу 0 ÷ 0,4 В ("низкий уровень"), а "1" – потенциалу ≥ 2,0 В ("высокий уровень"). Реализовать логические функции "И" и "ИЛИ" можно на пассивных элементах (резисторах и диодах), а схему "НЕ" – с использованием транзистора. На рис 9.22 изображены электронные схемы (диод-транзисторной логики ДТЛ), реализующие эти логические функции. Схема "И" (у=х1&х2). Потенциал на выходе равен 0,2 В (0), если на любом входе (или одновременно на вх1 и вх2) потенциал равен 0 В (0). Потенциал на выходе равен 2,4 В (1), только в том случае, если потенциалы на входах одновременно равны 2,0 В (1). Схема "ИЛИ" (у= х1+х2). Потенциал на выходе равен 2,4 В (1), если на любом входе (или одновременно на вх1 и вх2) потенциал равен 2.4В (1). Потенциал на выходе равен 0 В (0) только в том случае, если потенциалы на входах одновременно равны 0 В (0). +U +U вх1 вх2 вых VD2 вх1 вых VD1 VD2 VТ1 вых Б вх VD1 К Э вх2 “И” “ИЛИ” Рис. 9.22. Электрические схемы И, ИЛИ, НЕ 118 “НЕ” Схема "НЕ" (у= –х1). Если потенциал на базе (Б) транзистора VT1 будет равен 0 В (0), то транзистор будет "закрыт" и потенциал на его коллекторе (К) будет > 2,5 В (1). Если потенциал на базе транзистора будет 2,4 В, то транзистор VT1 будет "открыт" и потенциал на его коллекторе будет < 0,2 В (0). Микросхемы диод-транзисторной логики (ДТЛ) получили дальнейшее развитие в виде транзисторно-транзисторной логики (ТТЛ) с использованием многоэмиттерных транзисторов, которые объединяют свойства диодных схем и транзисторов. На рис. 9.23 приведены изображения микросхем, реализующих базовые функции булевой алгебры "И", "ИЛИ", "НЕ" и их таблицы состояния, где х – вход, у – выход, н(0) – низкий потенциал (логический 0), в(1) – высокий потенциал (логическая 1). С помощью таблиц истинности можно задать и другие логические операции, часто реализуемые микросхемами: "И-НЕ" у= –(х&у); "ИЛИ-НЕ" у= –(х+у); "Исключающее ИЛИ" ("сложение по mod2") у= х&–у + +–х&у; "Исключающее ИЛИ-НЕ" ("эквивалентность ≡ ") у = х&у+ +–х&–у. х1 н(0) в(1) н(0) в(1) х2 н(0) н(0) в(1) в(1) “И” н(0) н(0) н(0) в(1) “ИЛИ” н(0) в(1) в(1) в(1) x1 1 x1 & 1 y y “НЕ” в(1) н(0) в(1) н(0) x1 y x2 x2 “И” х1 х2 н(0) в(1) н(0) в(1) н(0) н(0) в(1) в(1) x1 & “НЕ” “ИЛИ” y x2 “ИНЕ” в(1) в(1) в(1) н(0) “ИЛИНЕ” в(1) н(0) н(0) н(0) x1 1 x2 “И-НЕ” Датчик температуры (ВТ) х1 –х1 в(1) н(0) н(0) в(1) в(1) н(0) “ИЛИ-НЕ” Датчик уровня (ВН) х2 в(1) в(1) н(0) y “Исключающее ИЛИ” н(0) в(1) в(1) н(0) x1 =1 “Исключающее ИЛИ-НЕ” в(1) н(0) н(0) в(1) 119 x1 =1 y x2 y x2 “Исключающее ИЛИ” ”Исключающее ИЛИ-НЕ” (сложение по mode2) (эквивалентность) Логическое устройство (U1) у н(0) в(1) н(0) x1 ВТ 1 –x1 & y U1 Рис. 9.23. Таблица состояний логических функций и изображения микросхем И, ИЛИ, НЕ: Кружок о на выходе или входе микросхемы обозначает инвертирование (отрицание) сигнала Рис. 9.24. Таблица состояний логических функций и изображение микросхем “И-НЕ”, “ИЛИ-НЕ”, “Исключающее ИЛИ”, ”Исключающее ИЛИНЕ”, “эквивалентность” Рис. 9.25. Таблица состояний и структура логического устройства управления температурой реактора На рис. 9.24 приведены таблицы состояний и обозначения микросхем, реализующие эти функции. Схему управления температурой реактора (рис. 9.21) можно реализовать в виде схемы, изображённой на рис. 9.25, выполняющей логическую функцию у= (–х1)&х2, с соответствующей таблицей состояний. Ниже изображены микросхемы, отражающие некоторые правила (законы) булевой алгебры. а –0 = 1 1 0 1 х+0 = х x 1 –1 = 0 1 1 0 б х 0 х+1 = 1 x 1 120 в 1 0 1 х+–х = 1 x 1 1 х д г х х 0 х&–х = 0 x & 0 х х х&х = х x & х х –(–х1) = х 1 е –х ж х1+х1&х2 = х1 x1 х 1 х+х = х x 1 х&0 = 0 x & х&1 = х x & х1&(х1+х2) = х1 x1 1 х Микросхемы, изображенные ниже, являются эквивалентными, т.е. их таблицы истинности совпадают. –(х1+x2) x1 1 и = y x2 –х1&–x2 x1 & y x2 –(х1&x2) x1 & к = y x2 –х1+–x2 x1 1 y x2 л х1+х2&х3 x1 х2 х3 1 & у = (х1+х2)&(х1+х3) 1= х1 & у x1 х2 1 х3 121 х1&х2+x3 x1 х2 х3 & 1 у м = (х1+х2)&(х1+х3) = х1 & 1 у x1 х2 & х3 Для многовходовых микросхем, реализующих функции "И" и "ИЛИ", состояние на выходе определяется следующим образом. а) Функция "И" у=f(х1&х2&х3...&хn): Если один из сигналов х1...хn низкого уровня н(0), то и вход у низкого уровня н(0). Если все сигналы х1...хn высокого уровня в(1), то и выход у высокого уровня в(1). б) Функция "ИЛИ" у=f(х1+х2+х3+…+хn): Если один из сигналов х1...хn высокого уровня в(1), то и выход у высокого уровня в(1). Если все сигналы х1…хn низкого уровня н(0), то и выход у низкого уровня н(0). Двоичная система представления чисел Двоичная система представления чисел, так же как и десятичная система относится к позиционной системе записи чисел, в которой числа читаются слева направо. Положение цифры в записи указывает на то, в какую степень необходимо возвести основание счисления, а сама цифра – на сколько полученный результат следует умножить. Крайне правая позиция соответствует степени 0 (младший разряд), следующая левее – степени 1, следующая левее – степени 2 и т.д. Значение числа получают как сумму всех результатов возведения основания в степень и умножения их на соответствующую цифру. Так запись числа 512 означает 102∙5+101∙1+100∙2=512. По аналогии, запись двоичного числа 10101 означает 24∙1+23∙0+22∙1+21∙0+20∙1=16+0+4+0+1=21. В табл.9.1 представлена запись чисел от 0 до 15 в десятичной, двоичной, восьмеричной и шестнадцатеричной системах 122 счисления. Для представления двоичного числа в электронных устройствах используются многоразрядные регистры. Каждый разряд регистра жестко привязан к позиции двоичного числа, Таблица 9.1. Запись чисел в десятичной, двоичной, восьмеричной и шестнадцатеричной системах исчисления Десятичная 00 (10∙0+1∙0) 01 (10∙0+1∙1) 02 (10∙0+1∙2) 03 (10∙0+1∙3) 04 (10∙0+1∙4) 05 (10∙0+1∙5) 06 (10∙0+1∙6) 07 (10∙0+1∙7) 08 (10∙0+1∙8) 09 (10∙0+1∙9) 10 (10∙1+1∙0) 11 (10∙1+1∙1) 12 (10∙1+1∙2) 13 (10∙1+1∙3) Двоичная 0000 (8∙0+4∙0+2∙0+1∙0) 0001 (8∙0+4∙0+2∙0+1∙1) 0010 (8∙0+4∙0+2∙1+1∙0) 0011 (8∙0+4∙0+2∙1+1∙1) 0100 (8∙0+4∙1+2∙0+1∙0) 0101 (8∙0+4∙1+2∙0+1∙1) 0110 (8∙0+4∙1+2∙1+1∙0) 0111 (8∙0+4∙1+2∙1+1∙1) 1000 (8∙1+4∙0+2∙0+1∙0) 1001 (8∙1+4∙0+2∙0+1∙1) 1010 (8∙1+4∙0+2∙1+1∙0) 1011 (8∙1+4∙0+2∙1+1∙1) 1100 (8∙1+4∙1+2∙0+1∙0) 1101 (8∙1+4∙1+2∙0+1∙1) Восьмеричная 00 01 02 03 04 05 06 07 10 11 12 13 14 15 Шестнадцатеричная 0 1 2 3 4 5 6 7 8 9 A B C D 123 поэтому, зная состояние (0 или 1) каждого разряда регистра, можно узнать число, которое там записано. Таким образом, регистры в отличие от других логических схем выполняют функцию представления двоичного числа. В электронных устройствах часто выходы двоичных разрядов какого-либо функционального регистра (например, "адресный регистр", "регистр данных" и т.п.) выделяют в виде проводов или перемычек на электронной плате, которым присваивают название "общая шина", подчеркивая то, что к этим шинам можно присоединить множество входов других микросхем. Комбинации регистров, общих шин и логических схем позволяют осуществить дальнейшие расширения функций микросхем. 9.4.2. Дешифратор Дешифраторы применяются для преобразования двоичного кода в развёрнутый код. На рис. 9.26 представлена схема дешифратора двоичного двухразрядного кода в сигнал низкого уровня на одном из четырёх раздельных выходов. Дешифратор состоит из двух схем "НЕ" (d1 и d2) и четырёх схем "И-НЕ" (d3, d4, d5 и d6). Общей шиной являются выходы прямого (А1, А0) и инвертированного (–А1, –А0) сигнала с двухразрядного двоичного регистра (R). Выходной сигнал низкого уровня н(0) получают на выходе схемы "И-НЕ", если на её входы с общей шины одновременно поступают два сигнала высокого уровня в(1). Например, если в регистре R записать двоичное число 01, то сигнал на шине А0 = в(1), на шине –А0 = –н(0), на шине А1 = н(0), и на шине –А1 = в(1). Для того чтобы на выходе d4 был сигнал н(0), входы этой схемы должны быть подсоединены к шине А0 и – А1, так как в данный момент только на этих шинах будет сигнал в(1). Если в дешифраторе схемы "И-НЕ" (d3, d4, d5 и d6) заменить на схемы "И", то при появлении в регистре R кода 01 на выходе схемы d4 "И" сигнал будет в(1), а на выходах остальных схем – н(0). 124 А1 А0 в(1) Вход А0 1 d3 н(0) в(1) d1 н(0) 1 d4 пример Выход «2» в(1) & d5 в(1) d2 R Выход «1» н(0) & в(1) вход А1 Выход «0» в(1) & Выход «3» в(1) & d6 А1 А0 н(0) в(1) Регистр –А1 –А0 а •← Общая шина А1 А0 –А1 н(0) н(0) в(1) н(0) н(0) в(1) н(0) в(1) в(1) в(1) н(0) н(0) в(1) в(1) н(0) →•← –А0 0 в(1) н(0) в(1) н(0) н(0) в(1) в(1) в(1) н(0) в(1) б Выход 1 2 в(1) в(1) в(1) в(1) н(0) в(1) в(1) н(0) в(1) в(1) →• 3 в(1) в(1) в(1) в(1) н(0) Рис. 9.26. Схема (а) и таблица состояний дешифратора (б) 9.4.3. Шифратор Шифраторы применяются для преобразования информационного сигнала на одном из входов устройства в двоичный код, иначе – для преобразования развёрнутого кода в двоичный. Информационным сигналом может быть, например, появление низкого уровня н(0) на одном из входов шифратора, в то время как на остальные входы подаётся высокий уровень в(1). В шифраторе не допускается одновременное появление информационных сигналов на нескольких входах. На рис. 9.27, а представлена схема шифратора информа125 ционного сигнала с одного из четырёх входов в двухразрядный двоичный код. Шифратор состоит из четырёх схем "НЕ" (d1, d2, d3 и d4) и трёх схем "ИЛИ" (d5, d6 и d7). При поступлении сигнала н(0) на вход, например схемы d2 ("НЕ"), на выходе он приобретает значение в(1) и через общую шину (–А1) поступает на вход схемы; d5 ("ИЛИ"). На вход этой же схемы с общей шины (–А3) поступает сигнал н(0). В результате на выходе d5 ("ИЛИ") сигнал будет равен в(1). На вход схемы d6 ("ИЛИ") с общей шины поступают сигналы н(0) с (–А2) и н(0) с (–А3), следовательно, сигнал на выходе d6 ("ИЛИ") равен н(0). В –А0 Вход в(1) А0 Вход А1 н(0) Вход А3 Выход «0» в(1) в(1) 1 1 d5 d1 н(0) 1 d2 Вход А2 в(1) регистр В1 В0 н(0) в(1) –А2 Выход «1» н(0) 1 d6 н(0) 1 d3 Выход «сигнал» в(1) 1 d7 в(1) 1 d4 –А1 пример •← Общая шина А0 А1 А2 в(1) н(0) в(1) н(0) в(1) в(1) в(1) в(1) н(0) в(1) в(1) в(1) –А3 а →•← А3 у1 в(1) н(0) в(1) н(0) в(1) в(1) н(0) в(1) Выход у0 код в(1) 01 н(0) 00 н(0) 10 в(1) 11 б Рис. 9.27. Схема (а) и таблица состояний шифратора (б) 126 →• I в(1) в(1) в(1) в(1) этом случае, рассматривая d5 и d6 как регистр двоичного числа (В1, В0), получим двоичный код 01. Аналогичным образом производится кодирование и других информационных сигналов. Шифратор должен содержать схему, подтверждающую то, что на один из информационных входов подан активный сигнал низкого уровня н(0). Для этого используется схема d7 ("ИЛИ") с четырьмя входами. Если на какой-либо вход d7 с общей шины поступает сигнал в(1), то на выходе этой схемы появляется сигнал в(1), указывающий, что можно использовать код шифрации. Это позволяет различить ситуацию с кодом 00, который появляется как при подаче активного сигнала н(0) на вход ''0'', так и при подаче сигнала в(1) на все информационные входы. Наличие сигнала в(1) на выходе d7 указывает на то, что на вход ''0'' подан активный информационный сигнал н(0). 9.4.4. Мультиплексор Мультиплексоры применяются для переключения электрических линий (каналов). Мультиплексор содержит несколько входов, которые в зависимости от адреса (кода) канала подключаются к одному выходу. Таким образом, сигнал на выходе мультиплексора зависит от адреса входа и его состояния. На рис. 9.28 изображена схема четырёхканального мультиплексора. Мультиплексор состоит из двух схем "НЕ" (d1 и d2), четырех схем "И" (dЗ, d4, d5 и d6) и одной схемы "ИЛИ" (d7). Схема имеет четыре информационных входа (канала) I0, I1, I2, I3, два адресных входа S0 и S1 и один выход Y. Сигналы S0 и S1 поступают с регистра адреса канала RА. Выходы d1 и d2 подсоединены к общей шине S1, S0, – S1, – S0. На вход каждой схемы d3 – d6 ("И") подается сигнал от информационного канала входа (I0 – I3) и сигналы с общей шины (S) в соответствии с кодом адреса. Так, например, на вход схемы d4 ("И") поступает сигнал с входа I1 и адресной шины – S1 и S0, образуя логическую функцию Y= I1 & (–S1 & S0). Если регистр адреса канала содержит код 01, то значение (–S1 & S0) равно 1 и сигнал на вы127 S1 S0 & I0 I1 I2 I3 Канал d3 н(0) & 1 в(1) в(1) н(0) d4 d5 1 S1 S0 н(0) в(1) Регистр адреса RA канала в(1) Выход D7 & d1 1 Y н(0) & d2 d6 н(0) –S1 –S0 а пример •← I0 н/в(0/1) – – – Вход I1 – н/в(0/1) – – I2 – – н/в(0/1) – →• ← I3 – – – н/в(0/1) Выбор Выход• →• S0 S1 Y н(0) н(0) н/в(0/1) в(1) н(0) н/в(0/1) н(0) в(1) н/в(0/1) в(1) в(1) н/в(0/1) б Рис. 9.28. Схема (а) и таблица состояний мультиплексора (б) ходе d4 ("И") будет зависеть только от значения сигнала I1. Если регистр адреса канала содержит какой-либо другой код (например, 10), то значение (–S1 & S0) равно 0 и сигнал на выходе d4 ("И") всегда будет равен 0 независимо от сигнала на входе I1. Сигналы со всех выходов d3 – d6 поступают на вход d7 ("ИЛИ"). Состояние выхода схемы d7 ("ИЛИ'') будет зависеть от состояния выбранного входа, так как значение выходов остальных схем ("И") будут равны 0. 128 9.4.5. Триггеры Все рассмотренные выше схемы обладают одним свойством – при возникновении или исчезновении сигнала на каком-либо входе изменяется состояние и на выходе. В ряде случаев требуются схемы, состояние которых не изменялось бы при исчезновении сигнала, приводящего устройство в заданное состояние. На рис. 9.29 изображена схема управления уровнем жидкости в реакторе. Датчик нижнего уровня (ВН2) выдает сигнал "Уровень жидкости ниже минимально допустимого" (х1=0) и "уровень жидкости выше минимально допустимого" (х1=1). Датчик верхнего уровня (ВН1) выдает сигнал "уровень жидкости ВН1 выше (х1=1) ниже (х1=0) ВН2 Реактор Датчик нижнего уровня (ВН2) выше ниже выше ниже Датчик верхнего уровня (ВН1) выше выше ниже ниже U1 выше (х2=1) ниже (х2=0) включить (у=1) отключить (у=0) а Логическое устройство (U1) отключить * * включить х1 х2 У=f(х1ּ·х2) 1 0 1 0 1 1 0 0 0 * * 0 б Рис. 9.29. Схема управления уровнем жидкости в реакторе (а) и таблица состояний (б) 129 ниже максимально допустимого", (х2=0) и "уровень жидкости выше максимально допустимого" (х2=1). Логическое устройство U1 должно выдавать сигнал "насос включить" (у=1) или сигнал "насос отключить" (у=0). Из логики управления следует, что насос должен быть включен, если уровень опуститься ниже минимального, и оставаться включенным до тех пор, пока уровень не достигнет максимально допустимого значения. При достижении максимального уровня насос должен быть отключен, и оставаться отключенным до тех пор, пока уровень не достигнет минимально допустимого значения. В табл. 9.29, б представлено состояние логического устройства U1 в зависимости от состояния датчиков ВН1 и ВН2. Символом * ("без изменения") отмечены случаи, когда состояние U1 не должно зависеть от состояния ВН1 и ВН2. Состояния ВН2 – "ниже" (0) и ВН1 "выше" (1) в данной схеме невозможно, однако его следует также учесть при разработке логического устройства U1. Для реализации данной схемы требуется устройство с двумя устойчивыми состояниями, в одно состояние его бы переводил сигнал (х1=0 & х2=0) и оставлял его после исчезновения, а в другое состояние его переводил бы сигнал (х1=1 & х2=1) и оставлял бы его в этом состоянии после исчезновения. Электронное устройство с двумя устойчивыми состояниями называется триггером. На рис. 9.30 показана схема триггера, собранная на двух схемах "И-НЕ" и таблица состояния триггера с двумя входами и двумя устойчивыми состояниями. Активным сигналом, переводящим триггер из одного состояния в другое, является сигнал н(0). Из таблицы также следует, что если на входы R и S триггера одновременно подать сигнал в(1), то состояние триггера не изменится, а при одновременной подаче на входы R и S триггера сигнала н(0) состояние триггера неопределенно. На рис.9.31 показана схема логического устройства управления уровнем жидкости в реакторе и таблица состояний. На выходе схемы "ИЛИ" (R) сигнал равный 0 будет в том случае, если одновременно х1=0 и х2=0. Сигнал на выходе схемы "ИНЕ" (S) будет равен 0 в случае, если одновременно х1=1 и х2=1. Соответственно эти сигналы подаются на вход S и R триггера, изменяя его состояние на 1 или 0. 130 & R Q1 R T Q1 –Q S & –Q S а Вход •← Выход →• Состояние →•← S Q1 –Q T н(0) ? ? в(1) в(1) н(0) 1 н(0) н(0) в(1) 0 в(1) * * в R н(0) н(0) в(1) в(1) ВН2 1 ВН1 & & U1 & а ВН2 х1 0 1 0 1 ВН1 х2 0 0 1 1 R х1х2 0 1 1 1 S х1х2 1 1 1 0 Q U1 1 * * 0 включить без изменения без изменения отключить б Рис. 9.30. Схема (а), обозначение (б) и таблица состояний (в) триггера: ? – состояние не определено; * – состояние не изменяется Рис. 9.31. Схема логического устройства управления уровнем в реакторе (а) и таблица состояний (б) 131 9.4.6. Импульсные микросхемы В набор цифровых микросхем входят микросхемы, которые реагируют на изменение сигнала от 0 до 1 или от 1 до 0. На рис. 9.32. представлен информационный сигнал в виде прямоугольного импульса с амплитудой в(1) и длительностью Т, с. Принято называть начальное изменение амплитуды сигнала «передним фронтом» сигнала, а конечное изменение – «задним фронтом» сигнала. Для прямоугольного импульса, представленного на рис. 9.32, передний фронт будет положительным, так как в этот момент сигнал изменяется от н(0) до в(1), а задний фронт будет отрицательным, так как сигнал изменяется от в(1) до н(0). Для того, чтобы подсчитать количество импульсов за определенный промежуток времени, достаточно подсчитать количество положительных (или отрицательных) фронтов, возникших за этот период. При этом длительность каждого импульса может быть произвольной. D-триггер Микросхемой, реагирующей на передний положительный фронт импульса, является D-триггер. D-триггер имеет информационный вход D, импульсный вход С и два установочных входа S и R. Схема D-триггера и таблица его состояния приведены на рис. 9.33. За нулевое состояние D-триггера (Т=0) принимают состояние, при котором на выходе Q установлен низкий уровень н(0), а на выходе –Q – высокий уровень в(1).В единичном состоянии D-триггера (Т=1) на выходе Q установлен высокий уровень в(1), а на выходе –Q – низкий н(0). Сигнал высокого уровня в(1), поданный на входы S или R D-триггера, устанавливает D-триггер соответственно в состояние "1" или "0". передний фронт в(1) задний фронт 0 Т Рис. 9.32. Прямоугольный импульс 132 t Вход установочный “0” R Вход информационный Вход импульсный Вход установочный “1” T Q D –Q C S Выход Выход инвертированный а •← S н(0) н(0) в(1) н(0) Вход R н(0) н(0) н(0) в(1) C * * →•← Выход D Q1 в(1) в(1) н(0) н(0) * в(1) * н(0) б →• Состояние –Q T н(0) 1 в(1) 0 н(0) 1 в(1) 0 Рис. 9.33. Схема (а) и таблица состояний (б) D-триггера: символ * – «без изменения» Из таблицы состояний следует, что при низких уровнях н(0) на входах S и R и при наличии положительного фронта импульса, поданного на вход С, на выходе Q устанавливается такой же уровень, как и на входе D. 9.4.7. Счётчик импульсов Последовательное соединение нескольких D-триггеров используется для организации счётчиков импульсов. На рис. 9.34 изображена схема из двух D-триггеров и таблица их состояний, образующих «счётчик на 4». В «счётчике на 4» выходы Q1 и Q0 D-триггеров Т1 и Т0 образуют регистр двоичного числа (b1 b0). Вход D0-триггера Т0 соединён с выходом –Q0, а вход D1 – с выходом –Q1 триггера Т1. Выход –Q0 триггера Т0 соединен с импульсным входом С1 триггера Т1. Триггер Т0 изменит своё состояние при поступлении положительного фронта импульса на вход С0. Триггер Т1 изменит свое состояние по положительному переднему фронту сигнала на входе С1, который возникает при изменении уровня выхода –Q0 триггера Т0 от н(0) до в(1). В исходном состоянии уровни Q0 и Q1 равны н(0). Двоичный код числа равён "00". 133 b1 b0 T1 T0 •← C0 1 2 3 4 5 ↑ ↑ ↑ ↑ … R0 T D0 C0 S0 Q0 R1 T D1 Q1 –Q0 C1 S1 –Q1 а D-триггер 0 →•← D0 Q0 –Q0 C1 1 0 1 1→ 0→1 1→0 ↑ 0→ 1→0 0→1 1→ 0→1 1→0 ↑ 0→ 1→0 0→1 … … … … D-триггер 1 D1 Q1 1 0 1 0 1→0 0→1 0 1 0→1 1→0 … … →•← –Q1 1 1 1→0 0 0→1 … Код →• b1 b0 0 0 0 1 1 0 1 1 0 0 .. .. б Рис. 9.34. Схема (а) и таблица состояния (б) «счётчика импульсов на 4» При поступлении первого импульса (1) на вход С0 на выходе Q0 установится уровень в(1), существующий до этого на входе D0. Триггер Т0 перейдёт в состояние "1". Выход Q0 изменит свой уровень с н(0) на в(1), а выход –Q0 – с в(1) на н(0). Состояние триггера Т1 остается без изменений, так как на входе С1 уровень сигнала изменится с в(1) до н(0). Код числа равен «01». При поступлении второго импульса (2) на вход С0 на выходе Q0 установится уровень н(0), существующий до этого на входе D0. Триггер Т0 перейдёт в состояние "0".Выход –Q0 изменит свой уровень с н(0) на в(1), что повлечёт за собой изменение состояния триггера Т1. Триггер Т1 перейдет в состояние "1". Код числа равен «10». При поступлении третьего импульса (3) на вход С0 на выходе Q0 установится уровень в(1), существующий до этого на входе D0. Триггер Т0 перейдёт в состояние "1". Состояние триггера Т1 остается без изменений, так как уровень на выходе –Q0 изменится с в(1) до н(0). Код числа равен «11». При поступлении четвёртого импульса (4) на вход С0 на 134 выходе Q0 установится уровень н(0), существующий до этого на входе D0. Триггер Т0 перейдёт в состояние "0". Триггер Т1 также изменит своё состояние на "0", так как уровень на выходе –Q0 изменится с н(0) до в(1). Счётчик вновь возвращается в исходное состояние. Код числа равен «00». Объединение в микросхеме нескольких D-триггеров представляет собой счётчик импульсов 2n (п – количество Dтриггеров). Так, для подсчёта 1000 импульсов требуется не менее 10 триггеров (210=1024). 135