Текст
                    МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОСС И ИСКОМ ФЕДЕ РА ЦИ И
ФЕДЕРАЛЬНОЕ Al "Li ПСТВО ПО ОБРАЗОВА1 НПО
МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ
(тех и и чес кий уиивереи гет)
О.Т. МАТЮШИН
ЦИФРОВЫЕ УСТРОЙСТВА И СУБСИСТЕМЫ
Учебное пособие
по курсу
«Цифровые устройства и микропроцессоры»
для студентов. обучающихся но направлению
«Радиотехника»
MMUP.RU
Библиотека Технической Литературы
Москва
Издательский дом МЭИ
2009

УДК 621.398 М 353 Утверждено учебным управлением МЭИ в качестве у чебного пособия для студентов Подготовлено на кафедре радиотехнических приборов Рецензенты: канд. техн, наук, доценг Е.Е. Чаплыгин, канд. ф.-м. наук, доцент О.В. Чернояров Матюшин О.Т. М 353 Цифровые устройства и субсистемы: учебное пособие / О Г. Матюшин. — М.: Издательский дом МЭИ. 2009. — 144 с. ISBN 978-5-383-00435-7 Изложены способы представления. кодирования и преобразования циф- ровой информации, основы теории синтеза цифровых устройств. Рассмотрены цифровые устройства широкого применения и методы их построения ча базе современных цифровых интегральных схем различной степени интеграции. Пособие предназначено для студентов радиотехнического факультета и можС1 быть полезно специалистам, занимающимся разработкой цифровых уст- ройств радиотехническою применения. Учебное издание Матюшин Олег Тарасович ЦИФРОВЫЕ УСТРОЙСТВА И СУБСИСТЕМЫ Учебное пособие по курсу «Цифровые устрой ci ва и микропроцессоры» Ре дактор издательства Л.В. Егорова Темп tan и здания МЭИ 2009, учебн. Подписано в печаль 24.09.09 Печать офсетная Формат 60x90/16 Физ. псч. л. 9.0 Тираж 300 жз. Изд. № 26 Заказ ЗЛО «Издательский дом МЭИ», 111250. Москва. Краснокаырменная ул., д. 14 Отпечатано в тшюграфи.. ФКП НИИ «Геодезия», 141292. Московская обл., г. Красноармейск, проел. Испытателей. д. 14 ISBN 978-5-383-00435-7 © Московский ЗНСрГС! ичехкий институт (технический университет), 2009
ОГЛАВЛЕНИЕ ПРЕДИСЛОВИЕ...............................................................4 I. ЦИФРОВАЯ ИНФОРМАЦИЯ И СПОСОБЫ ЕЕ IIPI ОБРАЗОВАНИЯ......................5 1.1. Общие сведения о цифровых устройствах............................5 1.2. Способы представления и преобразования цифровой информации. Системы счисления............................................................7 1.3. Ко тирование цифре вой информации...............................15 Вопрос ы и ут ражнения...................................................20 2. ОС 11ОВЫ СИ11ТЕЗА И РЕАЛИЗАЦИЯ Ц‘ 1ФРОВЫХ УСТРОМСТ В .21 2.1. Классификация и постановка задачи синтеза цифровых устройств....21 2.2. Логические функции и логические элемеп гы.......................24 2.3. Способы задания и преобразования логических функций.............32 2.4. Минимизация логических функций..................................35 2.5. Элементная ба та и средства проектирования цифровых устройств...43 Вопросы и упражнения.....................................................47 3. КОМБ1[НАЦИОННЫЕ ЦИФРОВЫЕ УСТРОЙСТВА................................ 48 3.1. Особенности функционирования и сип геза комбинационных цифровых устройств......................................................... 48 3.2. Кодопреобразователи.............................................52 3.3. Мультиплексоры и демультиплексоры...............................56 3.4. Компараторы.....................................................59 3.5. Арифметические уст ройства......................................61 Вопросы и упражнения ... ................................64 4. ПРОСТЕЙШИЕ ПОСЛЕДОВАТЕЛЬНОС ГНЫЕ УСТРОЙСТВА. ТРИГГЕРЫ.................70 4.1. Особенности функционирования и сии теза последовательное!ных цифровых устройств....................................................... 70 4.2. Определение, классификация и основные параметры триггеров.......71 4.3. Триггер с установочными входами (RS-ipni гер)...................73 4.4. Триггер задержки (D-триггер)....................................80 4.5. Счетный триггер (Г-триггер)................................ 86 4.0. JK-тртптср.................................................... 90 4.7. Взаимозаменяемость различных триггеров..........................93 Вопросы и упражнения.....................................................95 5. СЧЕТЧИКИ..............................................................96 5.1. Определение, основные характеристики и классификация счетчиков. .. . 96 5.2. Синхронные счет чикн............................................98 5.3. Асинхронные счетчики...........................................110 5.4. Счетчики со сквозным способом переключения разрядов............118 Вопросы и упражнения.....................................................119 6. РЕГИСТРЫ И УСТРОЙСТВА НА ИХ ОСНОВЕ...................................120 6.1. Назначение и классификация penicipoB.......................... 120 6.2. Параллельные решетры.......................................... 120 6.3. Регистры сдвига................................................122 6.4. Комбинированные регистры.......................................127 6.5. Цифровые устройства на основе регистра сдвига..................129 6.6. Счетчики на основе регистра сдвига.............................130 6.7.1 ечераторы линейных рекуррентных кодовых последовательностей...135 6.8.1 операторы нелинейных рекуррентных кодовых последовательностей.139 Вопросы и упражнения....................................................142 БИБЛИОГРАФИЧЕСКИЙ СПИСОК ................................................143 3
ПРЕДИСЛОВИЕ Современные цифровые устройства формирования и обработки радио- технических сигналов имеют программируемую (определяемую разработчи- ком; или жесткую архитектуру построения. Алгоритм работы цифрового устройства с программируемой архитекту- рой определяется соответствующим соединением интегральных схем сред- ней (СИС), большой (БИС) и сверхбольшой (СБИС) степени интефации. К СБИС относятся программируемые логические интегральные схемы (ПЛИС) и заказные или иолузаказные СБИС. Основным преимуществом цифровых устройств с программируемой архитектурой является предельно высокое быстродействие, недостатком — необходимость разработки новых аппарат- ных средств для каждого конкретного алгоритма. Алгоритм работы цифрового устройства с жесткой архитектурой опре- деляется вводимой программой. Реализуется такое устройство обычно на основе микропроцессорных комплектов БИС или сигнальных процессоров. Основными достоинствами цифровых устройств с фиксированной архитек- турой можно считать универсальность аппаратных средств, недостатком — относительно ни зкое быстродействие по причине последовательной обработ- ки сигналов на одном или нескольких процессорах. Основы методов синтеза и анализа цифровых устройств радиотехниче- скою применения с программируемой архитектурой рассматриваются в дан- ном пособии, основой которого послужили изданные ранее учебные пособия 11, 2] и курсы лекций, поставленные и читаемые автором на радиотехниче- ском факультете МЭИ £ТУ). Данное пособие состоит из шести глав. В первой главе рассмотрены во- просы представления и преобразования цифровой информации. Вторая глава посвящена теоретическим основам синтеза цифровых устройств. В третьей главе представлены методы синтеза и анализа функционирования цифровых комбинационных устройств. В четвертой главе рассматриваются простейшие устройства с памятью — триггеры. Привидится классификация трип еров по различным критериям, анализируются построение и функционирование наи- более распросфаненных триггерных схем. В пятой главе рассматриваются различные методы синтеза синхронных и асинхронных счетчиков с произ- вольным модулем счета, являющихся необходимым компонентом радиотех- нических систем. Шестая глава содержит материалы по регистрам: приво- дятся варианты построения регистров памяти и регистров сдвига; описыва- ются методы синтеза цифровых устройств на основе регистров сдвига с об- ратной связью; рассматриваются примеры синтеза быстродействующих рас- пределителей импульсов, генераторов линейных и нелинейных рекуррент- ных кодовых последовательностей радиотехнического применения и других цифровых устройств. 4
1. ЦИФРОВАЯ ИНФОРМАЦИЯ И СПОСОБЫ ЕЕ ПРЕОБРАЗОВАНИЯ 1.1. Общие сведения о цифровых устройствах Цифровые устройства (точнее, конечные цифровые автоматы) служат для обработки информации, представленной цифровыми кодами. Возмож- ность обработки цифровыми устройствами, в том числе и непрерывных (ана- логовых), сигналов осуществима, так как все сигналы могут быть представ- лены в цифровом виде. Допустим, имеется некоторый непрерывный сигнал s(l), представленный на рис. 1.1, а. а) 6) л) Рис. 1.1. Аналого-цифровое преобразование сигнала: а — непрерывный сшнйл; б — сигнал. дискрс! тированный но времени; « — цифровой сигнал Прежде всего, существует возможность его замены на отсчеты, следую- щие чаре} определенные промежутки времени ДТ. называемые тактовыми интервалами (рис. 1.1, б). Если тактовые интервалы выбраны соответствую- щим образом, то потери информации при такой дискретизации сигнала по времени не происходит. Теоретически это положение обосновано теоремой В.Л. Котельникова |3|. Можно произвести квантование сигнала и по уровню, т. е. поставить в соответствие амплитуде каждого отсчета в, момент времени иДТ число X11 из некоторого возможного их набора. Естественно, при конеч- ном числе уровней квантования N по амплитуде нельзя добиться точного со- ответствия между истинным значением сигнала s(n&T) и величиной Х”, одна- ко, увеличивая число N. можно приблизиться к истинному значению сколь угодно близко. Сигнал, дискретизированный по времени и квантованный по уровню, называется цифровым (рис. 1.1, в), потому чго он может быть полностью представлен набором (массивом) чисеч каждое из которых соответствует номеру такта <п) и обозначает его величину на тюм такте работы X1 Заме- тим. изо количество этих отсчетов и число возможных значений уровней все- гда конечно, тогда как для аналогового сигнала имеется бесконечно большое множество отсчетов и уровней 5
Устройства, осуществляющие дискретизацию и квантование непрерыв- ного сигнала, называются аналого-цифровыми преобразователями (АЦП). В собственно цифровое устройство АЦП не входят, а являются лишь связую- щими звеньями между аналоговыми и цифровыми узлами системы. При необходимости цифровой сигнал может быть переведен в непре- рывную форму. Устройства, осуществляющие такой переход, называются цифроаналоговыми преобразован елями (I (АП). Обработка сигналов цифровыми методами позволяет обеспечить высо- кую точность стабильность параметров и получить характеристики, недос- тижимые аналоговыми способами Например, в тракте любого приемника ра- диосигналов используются колебательные контуры (филыры), которые в иде- альном случае должны иметь прямоугольную амплитудно-частотную характе- ристику. Реализация прямоугольной характеристики фильтра при его построении на аналоговых элементах (конденсаторах, катушках индуктивно- сти, резисторах) практически невозможна, приближение к ней вызывае г при- менение в фильтре большою числа элементов, которые необходимо подби- рать или настраивать на определенную ветчину. Кроме того, различные дестабилизирующие факторы (температура, влажность, вибрация и т. д.) изменяю! величины емкостей конденсаторов, индуктивностей катушек и других элементов, поэтому центральная частота и другие параметры фильт- ров оказываются нестабильными. Если операцию, выполняемую фильтром, осуществить цифровыми мето- дами с помощью гак называемых цифровых фильтров, то можно реализовать практически произвольную, в том числе и сколь угодно близкую к прямо- угольной, характеристику. Цифровые устройства создаются в основном на базе логических элементов, имеющих обычно два резко разграниченных устойчивых состояния, которые легко сохранить в широком диапазоне изме- нения дсст абилизнрующих факторов, в силу чего цифровые устройства име- ют принципиально высокую стабильность Цифровые устройства синтезиру- ются на базе всего нескольких или одного типа логических элементов, тогда как даже простейшие аналоговые устройства сочетаю! в себе радиоэлементы многих наименований и номинал^ требующих подбора или настройки. Это обстоятельство создает высокую степень технологичности производства цифровых устройств по сравнению с аналоговыми. По сущест ву, основными недостатками, тормозившими внедрение цифровых устройств в радиотехни- ческие системы, была их относительная сложность (при реализации цифро- вого алгоритма обработки требуется больший объем оборудования) и низкое быстродействие Однако с появлением гран люторов (1948 г.) и интегральных схем (I960 г.) положение существенно изменилось. Увеличение быстродей- ствия цифровых устройств при существенном уменьшении объема позфлйет им успешно конкурировать с аналоговыми системами. Указанные преимущества цифровых устройств создают почву ,щя их широкого внедрения в различные радио технические системы, в частности в радиолокационные. комплексы |4|. Глубина их внедрения во многом опрсдс- 6
ляется достигну! ым уровнем развития элементной оазы и совершенством структуры вычислительных устройств. На первом этапе внедрения оцифровке подлежали только некоторые операции обработки сигналов в видсотракте приемника. По мерс совершенствования методов цифровой обработки и структур цифровых устройств удалось значительно расширить область их применения [5]. В настоящее время имеется возможность выпотчягь на эле- ментах цифровой техники такие операции, которые до недавнего времени считались сугубо аналоговыми: формирование и согласованная фильтрация радиотехнических сигналов, автокомпенсапия помех, селекция движущихся целей и т. д. Решение задач вторичной обработки радиотехнической инфор- мации и управление функционированием радиотехнических комплексов в сложной обстановке вообще немыслимо без применения цифровой техники. 1.2. Способы представления и преобразования цифровой информации. Сист емы счисления Под системой счисления понимается способ представления любого числа посредством некоторого алфавита символов, называемых цифрами. Существуют различные системы счисления. От их особенностей зависят на- глядность представления числа при помощи цифр и сложность выполнения арифметических операций. Римская система счисления является примером системы с очень сложным способом записи чисел и громоздкими правилами выполнения арифметических операций. Наглядность представления чисел и сравнительная простота выполнения арифметических операций характерны для позиционных систем счисления. Система счисления называется позиционной если одна и та же цифра имеет различные значения, определяющиеся однозначно позицией цифры в последовательности цифр, изображающей число. Позиционной является десятичная система, используемая в повседнев- ной жизни. Помимо десятичной существуют другие позиционные системы. Количество R различных цифр, употребляемых в позиционной системе, на- зываемся ее основанием. 'Эти цифры обозначают R целых чисел, обычно 0. I. 2 (R-1) В десятичной системе используются десять цифр: 0, 1,2, 3.4, 5, 6, 7, 8, 9 и, следоват с. !ыю, эта сис гема имеет основанием число десять. В об- щем случае в позиционной системе счисления с основанием R любое число может быть предс гавлено в виде полинома от основания R in J Х= ^XjR' =xm_1-Rm"1+...+ xl R1+x0-Rn + x_1R’1+...+ x_k R k, (1.1) i=-k где в качестве коэффициентов х, могут стоять любые из R цифр, используе- мых в системе счисления. Принято представлять числа в виде последова- тельности соответствующих (1.1) цифр =lxin-lxm-2-xlx0- х-1- x-kb О 2) 7
В этой последовательности запятая отделяет целую часть числа от дроб- ной (коэффициенты при положительных степенях, включая ноль, от коэффи- циентов при отрицательных степенях). Запятая опускается, если нет отрица- тельных степеней. Позиции цифр, отсчитываемые от запятой, называются разрядами. В позиционной системе счисления значение каждого разряда больше значения соседнею справа разряда в число раз, равное основанию системы счисления R. С учетом сказанною в десятичной системе счисления запись 6097,108 означает число X = 6-103+0-102+9-101+7-10° +1 10 1 +0-10 2 +8 10 2. (1.3) В цифровых устройствах применяют позиционные системы счисления с недисятнчным основанием: двоичную, восьмеричную, шестнадцатеричную и др В дальнейшем для обозначения используемой системы счисления будем заключать число в скобки и в индексе указывать основание системы счисле- ния. например (6097,108)|(). Наибольшее распространение в цифровых устройствах имеет двоичная система счисления. Основанием системы является число два, о тсюда в дво- ичной системе используются только две цифры —0 и 1. В двоичной системе любое число X может быть представлено последовательностью двоичных цифр или битов (аббревиатура слов binary digit) X = Х|ХО- х-1"- х-к }• ГДС xi либо 0. либо 1. (14) Эта запись соответствует сумме т-1 х = £ Xj 2' = хт_, • 2,п 1 +... + X, . 2’ + х() 2n + x_j 2'1 +... + x_k 2 k. (1.5) i= k Например, двоичное число (10101101.101), = I-27+0-26+ 1-25+ 0-24 +1-23 +1 22+0-21 + + 1 • 2° +1 • 2’1 + 0 2“2 +1 2"3 = (173,625)10. Как слсдуе г из привс ценного разложения по степеням числа 2. оно соответ- ствует десятичному числу (173,625)ю. Двоичное изображение числа требует большего (для многоразрядного числа примерно в 3,3 раза) количества разрядов, чем его десятичное пред- ставление. Тем нс менее применение двоичной системы счисления создаст большие удобства при построении цифровых устройств, так как для пред- ставления двоичного числа может быть использован любой простой элемент, имеющий два чет ко раз) раниченных состояния — 0 и 1. Другим важным дос- тоинством двоичной системы является простота двоичной арифметики В восг мернчной системе счисления употребляется восемь цифр: 0, 1,2, 3, 4, 5, 6, 7. Например, восьмеричное число представляется в виде X = (703,04)8 = 7 - 82 + 0 8* + 3 • 8° + 0 • 8"1 + 4 8’2 = (451,0625)10. 8
В шесгнадца кричной системе счисления для изображения чисел упот- ребляется 16 цифр— от 0 до 15. При этом, чтобы не изображать цифру двумя знаками, приходится вводить специальные обозначения для цифр, больших девяти: десять — Л; одиннадцать — В: двенадцать — С; тринадцать — D: чс- ь'рнадцатъ— Е\ пятнадцать — F. Тогда, например, следующее шестнадцатеричное число вырази гея так: (B2L,4)16 = 11 1б1 + 2-16* +14-16° + 4-16"' = (2862,25)|О. Изображения некоторых чисел в десятичной, двоичной, восьмеричной и шестнадцатеричной системах счисления представлены в тйбл. 1.1 Таблица 1.1 Предс гавления чисел в различных системах счисления Десятичная Decimal Двоичная Binary Восьмеричная Octal Шестнадцатеричная Hexadecimal 0 0 0 0 1 1 1 1 2 10 2 2 3 11 3 3 4 too 4 4 5 101 5 5 6 по 6 6 7 111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 Л 11 1011 13 В 12 1100 14 С 13 1101 15 D 14 1110 16 Е 15 1111 17 F Переход от одной системы счисления к другой. Для перевода любого числа из десятичной системы в число с требуемым основанием R можно использовать несколько методов. Одним из них яв:[яется метод последовательного деления (для целых чисел) и умножения (для дробных чисел). Числа справа и слева от запятой переводятся отдельно. Число (АОю елева от занятой (целая часть) делится на основание системы R, получающая- ся дробная часть представляет цифру младшего разряда числа в системе с ос- нованием R. Целая часть снова делится на R, остаток будет представлять цифру следующего разряда и т. д. Если остаток равен нулю, то в данном раз- ряде ставится цифра ноль. Деление прекращается, когда целая часть и остаток становятся равными нулю. В двоичной системе счисления R = 2, и поэтому в остатке будет одна из двух цифр — 0 или 1. что и соответствует алфавиту этого представления. Например, необходимо перевести число (13)ю в двоичную систему. 9
, . |3 | => младший значащий разряд (МЗР) х = (l3Jio = — = ь+ э 6 , О 2 2 3 . 1 2 2 I 1 => старший значащий разряд (СЭР) 2 +2 Таким образом. (13)|0 = (1101 )_>. Дробная часть числа переводится nj тем умножения этой части на R = 2 и выделения целой части. Цифра целой части и будет цифрой первого после запятой разряда числа в системе с основанием R. Количество разрядов дроб- ной части определяется необходимой точное гыо представления числа. Например: 0,56-2 = 1,12— 0,12+3 => х_| 0,12 2 = 0,24 = 0,24 + 0 => х.2 0.24 - 2 = 0,48 - 0.48 + 0 => х_3 0,48 2 = 0,96 = 0,96 + 0 => х_4 0,96-2 = 1 92 = 0,92+1 => х_5 0.92 - 2 = 1.84 = 0.8+ +1 => х_6 и т.д. Окончательно (0,56)ю= (0,10001 1...)2. Переход от двоичной системы счисления к десятичной может быть осу- ществлен с помощью выражения (1.5), например: Х=(1011.01)2 10- Весьма прост переход от восьмеричной или шестнадцат еричной систем счисления к двоичной и обратно, поскольку основания 8 и 16 являются третьей и четвертой степенью основания 2. Э~о позволяет переводить не все число сразу, а последовательно отдельные цифры, например: (632)в =110 01101()=( 110011010)2; (С8А)16= 1100 1000 101 [)=( 11001 000 101О)2. Обратный переход так же прост. Начиная от мла тшего правого разряда, производят разбиение на группы по три (триады) или четыре цифры (тет- рады) при переходе к восьмеричной или шестнадцатеричной системе соот- ветственно. Затем двоичное число каждой группы переводят в цифры данной системы счисления, например 110110111)> = 010 110 111 = (267)к; (101l0Hl)2= 1011 0111 = (В7)16. Наибольшее распространение получила двоичная система счисления, и поэтому в дальнейшем мы будем оперировать в основном в этой системе. Правила выполнения арифметических операций с двоичны ин чис- лами. Последовательность арифметических операций, производимых с дво- ичными числами, подобна действиям с десятичными числами. Основные правила сложения и вычитания двоичных чисел представлены в табл. 1.2. 10
Таблица 1.2 Основные правила сложения и вычитания двоичных чисел Дене гвис Основные правила А = (55;|О = (110111ц; В = (26)ю= (ОПОЮЪ; Сложение Перенос 0+0=0 0 0+1=1 0 1+0=1 0 1+1=0 1 l+l+l=l I 1 1 А В ( Л+В 1 ( ) 1 НН 1110 0 10 111 10 10 0 0 0 1 1 Перенос ► 1+0+0=! 0 ► 1+1+0=0 1 ► 1ч0+1=0 1 ► 0+1+1=0 1 . ► 14-14-1 1 1 Вычитание 1а< и 0-0=0 0 0-1=1 I 1-0=1 0 1-1=0 0 i-i-tfcjf 1 А В И 10 0 0 110 111 ) 1 1 0 1 0 Заем ► 1-0-0=1 0 ► 1—Г —0=0 0 А-В ( ) 1 1 0 1 L± ► 1-0-о=.1 0 1 ♦ 0-1-0=1 1 -J [—► 1-1-1=1 1 ► 1-0-1=0 0 Числа, участвующие в арифметической операции, называются операн- дами. При осуществлении арифметических действий основной является опе- рация суммирования но модулю пза. условно обозначаемая знаком Ф и вы- полняемая по следующим правилам: 0®0 = 0; 0Ф1 = 1; 1Ф0 = I: 1Ф1 = 0; 1Ф0Ф1=0; 1Ф1Ф1 = 1. (1.6) Разрядные коэффициенты суммы (табл. 1.2) получаются сложением по модулю два разрядных коэффициентов операндов и. если они равны I, го воз- никает так называемый перенос 1, что означает передачу цифры 1 в ближай- ший старший разряд, где она складывается с имеющимися гам цифрами. Та- ким образом, при суммировании во всех разря дах за исключением младшего необходимо складывать цифры разрядов операндов и цифру переноса из младшего разряда, что указывает на возможность построения сумматора из однотипных элементов. При вычитании цифры 1 из цифры 0 из ближайшего старшего разряда берегся цифра 1. т.с. производится так называемый заем. С целью упрощения арифметических операций применяют специальные коды для представления операндов. При помощи этих кодов упрощается оп- ределение знака результата операции, операция вычитания (или алгебраиче- ского сложения) сводится к арифметическому сложению, облегчается выра- ботка признаков переполнения разрядной сетки. В результате упрощаются устройства, выполняющие арифметические операции. Операнды представ- ляются в прямом, обратном и дополнительном кодах. 11
Для представления положительного числа в прямом коде необходимо к двоичному коду числа слева приписать цифру 0. Этот дополнительный раз- ряд определяет знак числа, который для наглядности отделяется знаком « Л»: А = (17j0=( 10001 )2; А,|р = 0Л 10001. Для обозначения отрицательных чисел в прямом коде в знаковый разряд ставится цифра 1: А=- (15)ш= - (11П)2; А,|р = 1Л1111. Сложение в прямом коде чисел, имеющих одинаковые знаки, выполня- ется достаточно просто. Числа складываются, и сумме присваивается код знака слагаемых. Значительно более сложной является операция алгебраиче- скою сложения в прямом коде чисел с различными знаками. В этом случае приходится определять большее по модулю число, производить вычитание чисел и присваивать разности знак большего по модулю числа. Операция вычитания сводится к операции простого арифметического сложения при помощи обратного пли дополнительного кодов, используемых для представ- ления операндов. Обратный код положительного числа нс отличается от прямого кода. Для । [редставлснпя отрииател ьного числа в обратном коде необходимо в зна- ковый разряд поставить цифру I (отрицательное число) и заменить цифры двоичного кода на обрат ные: АФ= 1 J011: /Up= hOIOO. Дополнительный код положительного числа также не отличается от прямого. Чтобы представить отрицательное число в дополнительном коде, необходимо к числу, представленному в обратном коде, прибавить единицу А= (19)10= (10011)2; А1Р=1Д10011; Аобр= 1д01100; АДО11 = Аобр+1 = 1д01101. В табл. 1.3 представлены трсхразрядныс числа в различных кодах. I аилица 1.3 Представления чисел в прямом, обратном и дополни тельном кодах ('M1U (А)2 (А)ир (А)обр (А) юн (А) ю (Л)2 (А),|Р (AjoGp (А) доп 7 111 0,111 0,111 ОдШ -1 -001 1д001 1,110 1д111 6 ПО 0,110 0,110 Од по -2 -010 1д010 1д101 1,110 5 101 0.Л01 0л 101 0,101 -3 -011 1,011 1,100 1,101 4 100 одюи Ц 100 Од 100 —*4 -100 1д100 1,011 1,100 3 011 0,011 0,011 ОдОП -101 1,101 1,010 1,011 2 010 одно 0,010 0.010 —6 -по 1,110 1,001 1,010 1 001 0,001 0д001 0.001 -7 -111 1дН1 1.000 1,001 0 (>оо 0,000 0,000 0,000 Для перевода чисел из обратного и дополнительного кодов в прямой необходимо проделать операции, указанные выше. 11ри алгебраическом сложении двух двоичных чисел с использованием обратного кода операнды представляются в обратном коде и производится их суммирование, включая разряды знаков, которые при этом рассматриваются как старшие разряды. При возникновении переноса из разряда знака единица 12
переноса прибавляется к младшему разряду суммы кодов. Таком перенос называется круговым или циклическим |6]. В результате получается алгебраическая сумма в обратном коде (табл. 1.4). При алгебраическом сложении двух двоичных чисел с использо- ванием дополнительного кода операнды представляются в дополнительных кодах и производится арифметическое суммирование, включая разряды зна- ков, которые при пом рассматриваются как старшие разряды. При возникно- вении переноса из разряда знака единица переноса отбрасывается. В резуль- тате получается алгебраическая сумма в дополнительном коде. Правила ал- гебраического суммирования проиллюстрированы в табл. 1.4 для двух харак- терных случаев когда вычитаемое меньше или больше уменьшаемого (вторая и третья строка соответственно). Таблица 1.4 Алгебраическое сложение е использованием прямого, обратного и Дополнительного кодов операндов Условие Вычитание Операции Вычи га и не в обратном коле Вычитание в допол- ни гел ином коде А>В А =_ _ (1101)1 В =_UW)1(1 НОЮ); А-В= (3)1п (0011)2 A<,q> = 0J101 B(fp = * Ц01Ы 1 0,0010 -* TZ ► 1 (А—В)оцр = 0,0011 Aw.= 0.1101 в1в11= * 1Аопо одоон (А-В).1С,„ = 0,0011 А<В А = (7)1о (0111)г в =_п1)ю .пони А—В — —О)ю —(0100)2 Аояр = ОДНИ В416р= + 1д0100 (А-В)оГ1р= 1J011 (А-В),,,, = 1д0100 А ,О11 = Q,0111 »...= + 1й0Ю1 (A—B)W1I = 1.J100 (A—Billp = U0100 Перемножение двоичных чисел в прямом коде производится очень про- сто. Если цифра множителя 1. то произведение равно множимому; если мно- житель 0, то произведение равно 0. Умножение производится так же, как в десятичной системе счисления, и оно представлено в табл. 1.5. При обычном умножении необходимо сложить сдвинутые множимые, количество которых равно числу разрядов множителя, т. е. необходим сумматор, складывающий несколько операндов. Такое устройство оказывается достаточно сложным, и поэтому очень часто используется так называемое последовательное умно- жение, когда при каждом элементарном умножении (умножении множимого на одну из цифр множителя) производится вычисление частичных сумм с помощью накапливающего сумматора, осуществляющего сложение посту- пающего на вход операнда с накопленной в сумматоре суммой. 13
Таблица 1.5 Перемножение и деление двоичных чисел Перс А = в= х множение двоичных чисел 1011 1011 110 1 Х_1_1 0 1 I 1 т* 10 11 * 0000 Деление двоичных чисел 14 11,0 |1 1 0 - 1 1 0 1 0,1 00110 - J 10 0 0 0 ост аток А:В = (15>|<(:(6)|(, = (2,5)10 = (10,1 )2 1 * 1 и 1 1 ЛхВ= *10 11 11Х1,3)|О=(1 0001 1 1 1), При перемножении чисел знаковый разряд не участвует, а знак произве- дения определяется отдельно путем сложения цифр знаковых разрядов. Деление двоичных чисел производится гак же, как и десятичных. При- мер деления двоичных чисел представлены в табл. 1.5. Делитель вычитается из разрядов делимого, и если результат не отрицательный, то в частное запи- сывается цифра 1. К результату вычитания приписывается следующая справа цифра делимого, вычитаемый делитель сдвигается на одну позицию вправо и т. д. Если результат вычитания отрицательный, то в частное пишется цифра О, к результату приписывается следующая цифра делимого и опять произво- дится вычитание сдвинутого вправо делителя и т. д. При выполнении деле- ния операция вычитания может быть заменена сложением чисел с использо- ванием образного или дополнительного кодов. Двоичные форматы с плавающей запятой. Рассмшренные выше фор- маты с фиксированной запятой не обеспечивают относительно точного пред- ставления очень больших и очень маленьких чисел при ограниченном коли- честве разрядов Двоичные форматы с плавающей запятой позволяют пре- одолеть большинство О1раничений точности и динамического диапазона, на- кладываемых форматами с фиксированной запятой. В форматах с плавающей запятой слово данных разбивается на две части: мантиссу М и порядок Е. Используя эти части, значение двоичного числа с плавающей запятой X мож- но определить в виде X = М-2е. (1.7) Как следует из (1.7), значение числа представляет собой произведение мантиссы М на двойку, возведенною в степень, равную порядку Е. Конечно, и мантисса, и порядок могут быть либо положительными, либо отрицатель- ными числами. Предположим, что К-битовое число с плавающей запятой использует К( бигов для иорядка в формате с фиксированной запятой и со знаком, а также Kv1 бш ов для мантиссы в том же формате. Чем больше количес гво битов Kt, тем больше динамический диапазон числа Чем больше К^. гем выше разре- шение, или точность, числа Исследования форматов с плавающей запятой, пока^лй, что компромисс достигается при К( ~ К/4 и Км ~ ЗК/4. Для типо- вого 32-би гового формата с плавающей запя гой, испо.тьзу смого в настоящее время. К|.; = 8 битов и K*i= 24 би га [5]. 14
Чтобы использовать полный динамический диапазон мантиссы, боль- шинство реализаций чисел с плавающей запятой рассматривают мантиссу как дробное двоичное число с фиксированной запятой, сдвигают се вправо или влево так, чтобы целая часть равнялась нулю, а старший бит дробной части оказался равным единице и соответственно коррект ируют порядок. Это соглашение называют нормализацией. В формализованном числе мантиссу обычно называют дробной частью. Например, десятичное число (3 6875), о можно представить в виде двоичного дробного числа (11.1011 )j. Если мы ис- пользуем двухбитовый порядок (Kt = 2) и шестибитовую мантиссу (Км = 6), можно также представить число Х = (11,1011)г посредством сдвига вправо на два бита и установки порядка, равного 2. в виде Х=(1 1.1011 )2 = (1ОоО,И 1011):, (1.8) где знаком «о» цифры порядка отделены от цифр мантиссы. Это число с плавающей запятой можно преобразовать обратно в деся- тичное следующим образом: X = 22 [о 2° + I 2’1 + 1 2’2 + 1 2“3 + 0 2-4 + 1 2"5 + 1 2’6]= (3.6875),0. (1 9, Можно заметить, что хранить нулевой бит целой части и старший бит дробной части, который всегда равен единице, расточительно. Эти избыточ- ные бпты занимают позиции двух битов во всех словах данных и не приносят никакой пользы. Соответственно в практических реализациях форматов с плавающей запятой эти биты о гбрасываются, а их присутствие подразумева- ется. при этом количество полезных битов дробной части увеличивается на единицу. Вот почему в описаниях некоторых форматов с плавающей запятой используется термин скрытые биты. Одновременно с повышением точности представления мантиссы па схема использует меныпий объем памяти, пот о- му что скрытые биты просто учитываются в аппаратуре арифметического устройства. При использовании скрытых бигов дробная часть в (1.8) сдвига- ется влево и приобретает вид: Х=(11,1011)2 = ( Ю01101 Ю)2- (1-Ю) Порядок и мантисса представляю1 собой числа со знаком и с фиксиро- ванной запятой, которые имеют нескопько форматов представления, а имен- но прямой, обратный и дополнительный коды. Все три перечисленных фор- мата используются в стандартных форматах с плавающей запятой. Наиболее часто используемые форматы с плавающей занятой, использующие 32- битовые слова, — 1EF.E Р754, IBM, DEC и MIL-STD 1750А Более подробное описание названных форматов можно найти, например, в [51 1.3. Кодирование цифровой иифоочации Понятие кодирования. Обозначение различной цифровой информации соответ ствующими символами называется кодированием, а сос гав символов для данной информации — алфавитом этого кода. Описанная выше двоичная система записи произвольного числа в виде (1.5) называется его натуральным 15
двоичным кодом. Эго название применяется для того, чтобы отличить опи- санный выше код от других двоичных кодов, в которых соответствие между числом и рядом нулей и единиц может быть иным. Из множества возможных интерпретаций на практике использую гея только те, которые нужны для по- лучения специальных черт кода в каждом конкретном случае. Код выбирают таким образом, чтобы дальнейшее преобразование информации выполня .ось возможно проще, а именно — чтобы легче было реализовать арифметические операции, подсчет сигналов, расшифровку кода (декодирование), обнаруже- ние и исправление ошибок, приведение к виду, удобному для использования внешними устройствами и т. д. Известно большое количество кодов, систематизация и классификация которых из-за их многочисленных признаков является довольно затрудни- тельной- Мы рассмотрим лишь некоторые разновидности кодов [7]. Вес коды можно разделить на две самостоятельные группы. К первой относятся коды, в которых используются все возможные комбинации — нензбыточныс ко- ды В литературе их еще называют простыми или первичными. Ко второй относятся коды, в которых используется лишь часть всех возможных комби- наций. Такие колы называются избыточными. Оставшаяся часть комбина- ций нс несет информации о числах, а служит для обнаружения ошибок, воз- никающих при передаче Шш обработке сообщений. И тс и другие коды, в свою очередь, подразделяются на равномерные и неравномерные. Равномерные коды — это коды, все комбинации которых содержат постоянное количество разрядов. Неравномерные коды содержат кодовые комбинации с различным числим разрядов. Типичным представи ге- лем неравномерных кодов является используемая в телеграфии азбука Морзе, в которой каждому символу соответствует разное общее количество тире и точек. Ввиду oi раниченного применения неравномерных кодов в дальней- шем их рассматривать не будем. Все коды, служащие для представления чисел, можно разбить на две группы — взвешенные и невзвешенные коды. Взвешенные коды —такие коды, в которых каждому разряду присваивается определенный вес. Напри- мер. натуральный двоичный код является взвешенным кодом, поскольку каж- дому разряду соответствует вес равный степени числа 2. Нс взвешенные ко- ды — это коды, разрядам которых нельзя присвоить веса, а соответствие ко- да и числа устанавливается каким-либо иным способом. Двоично-десягнчные коды. Для выражения каждой десятичной цифры (О, 1. 2, .... 9) нужны четыре двоичные цифры, т.с. четыре бита, которые по- зволяют получить 21 = 16 комбинаций Так как из 16 комбинаций 6 являются избыточными, то общее число всех возможных кодов из 4 битов равно 161/61=2.9 К)1' Однако на практике используются только такие коды, кото- рые обеспечивают самую рациональную и простую обработку цифровой ин- формации Чаще всею используются взвешенные двоично- десятичные коды, позволяющие достаточно просто переводить десятичные цифры (Л)ю в дво- ичные (ЛУ по формуле 16
(х)10 = а3 х3 +а2 • х2 + а, -х, +а(, (1.11) где символы а«... а» являются постоянными весовыми коэффициеними соот- ветствующего кода, а символы х^... х« — двоичные цифры I или 0. Существуют различные взвешенные двоично-десят ичные коды ал...ас, например: 8421, 7421, 7321, 6421, 6321, 6311, 6221, 5421, 5311, 5221, 5211, 4421, 4321, 4311, 4221 и 3331. В коде 8421 весовые коэффициенты cty = 8, ц2 = 4, at = 2, «о = 1. Кодовые комбинации, соответствующие тем пли иным символам, в различных кодах легко определяются из выражения (1.6k На- пример, (7)|О=8-0 + 4|+2-1 + 1 I Д0111)м,,; (7)|(> = 5-1+2-1 + 1-0+1 0 =(1100)52|1; (7)|0 = 5-1 + 2-0+-11 + 1-1=*(1911)5,||. Очевидно, что представление числа в коде 5211 не является однознач- ным. т.е. одному и тому же числу соответствуют две кодовых комбинации. Неоднозначность имеют все взвешенные двоично-десятичные коды, за ис- ключением кода 8421. При использовании неоднозначных кодов необходимо заранее обусловливать, какая комбинация соответствует данной цифре. В табл. 1.6 приведены кодовые комбинации, соответствующие представлению десятичных цифр в различных двоично-десятичных кодах. Коды 1 — IV, VI. VII являются взвешенными, коды V и VIII — невзве- шенными. Таблица 1.6 Двоично-десятичные коды (X)io Несамо дополняющиеся коды ( амо loiio.iHHioniiiecsi ко па I II III IV V VI VII МП 8421 6421 5211 4221 Нен «ве- шенный 2421 4221 С избыт- ком 3 0 0000 0000 иооо оООО 0000 ОООо 0000 ООП 1 0001 0001 0001 0001 0001 0001 0001 0100 2 0010 0010 ООН 0010 0010 0010 0010 0101 3 ион ООП 0101 ООП ООП ООП 0101 оно 4 0100 0100 0111 оно ОНО 0100 1000 0111 5 0101 0101 1000 0111 0111 1011 0111 1000 6 оно 1000 1001 1010 1110 1100 1010 1001 7 0111 1001 1011 1011 1111 1101 1101 1010 8 1000 1010 1101 1110 1100 1110 1110 1011 9 1001 1011 1111 1111 1101 1111 1111 1100 Коды VI—VIII называются самодоцолняющимися кодами Дополняющие свойства этих кодов заключаются в том. что двум десят ичным цифрам, сумма которых равна 9, соответствуют две дополняющие комбинации. Например, числу 3 в коде 2421 соответствует комбинация 0011, а числу 6, являющемуся дополнением числа 3 до 9. — комбинация 1100. Всамодополняюшихся кодах дополнение возникает простой заменой единицы нулем и нуля единицей. 17
Самодополняющимся кодом является также невзвешенный код с избытком 3. Он получается добавлением числа (3)ю= (0011Ь к числу в коде 8421 и удобен для арифметических операций, так как при сложении довольно просто можно определить необходимость коррекции результата. А так как это самодо- полйяющийся код, го он может быть использован при вычитании, осно- ванном на сложении в обратном и дополнительном кодах. Кпд Грея. Этот код относится к циклическим кодам, характеризую- щимся гем, что комбинации двоичных цифр, отображающие числа, которые отличаются друг от друга на единицу, разнятся только в одном разряде (табл. 1.7). Это свойство кода Грея весьма ценно для преобразователей линей- ного перемещения или кругового движения какого-либо устройства в цифро- вой код, так как погрешность не превышает единицы младшего разряда. Таблица 1.7 Код 1 рея Число Натура 1Ы1ЫЙ двоичный код Код Г рея S х? «2 Х| Хп У-' У- VI Уо 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 2 0 0 1 0 0 0 1 1 3 0 0 1 1 0 0 1 0 4 0 1 0 0 0 1 1 0 5 0 1 0 1 0 1 1 1 6 0 1 1 0 0 1 0 1 7 0 I 1 1 0 1 0 0 8 1 0 0 0 1 1 0 0 9 1 0 0 1 1 1 0 1 10 1 0 1 0 1 1 1 1 11 1 0 1 1 1 I I 0 12 1 1 0 0 1 0 1 0 13 1 1 0 1 1 0 1 1 *4 1 1 0 1 0 0 1 15 1 1 1 1 0 0 0 Код Грея легко получается из натурального двоичного кода путем сум- мирования по модулю два цифр соседних разрядов. Если число {X3X2X1X0} — представление числа X в двоичной системе счисления (в натуральном двоич- ном коде), а число {у ^У?У iy<>} — представление того же числа в коде Грея, то между ними существуют следующие соотношения: Уз = хз* хз = У.Г у-) - Х-» Ф ХД Х., = у>®у< " - ‘ ' 2 (1.12) у। = х, Ф X,; X] = уч Ф у2 Ф у,; у0 = Х| ф х<(; Xq = у3 Ф у2 Ф у! Ф у(). Код Грея, полученный с помощью выражений (1.12), представлен в таб.1. I 7. Этот код является нсизбыточным кодом. Существуют также избы- 18
точные коды Грея, например двоично-десятичные. Можно сформировать коды Грея для произвольного числа разрядов ш. В этом случае существуют сле- дующие формы перехода от числа в натуральном двоичном коде хП1_|. х|П2...., Хо в ко. 11 рея: Ут-1 — хт-1’ Ут-2 — хт-1 ® хт-2’ —’ Уо — Х1 ® х0- (1-13) Переход от ^-разрядного кода I рея к натуральному двоичному коду осуществляется по формулам xm -1 = Ут-1’ хт-2 = Ут-1 ® Ут-2- -й = Ут-1 ® Ут-2 Уо- (Ы4) Код Джонсона. Последовательность чисел в этом коде моделируется односторонним последовательным заполнением его разрядов вначале едини- цами, а затем нулями (табл. 1.8). Код Джонсона легко формируется с помо- щью регистров сдвига и легко дешифруется. Таблица 1.8 Избыточные коды S Ко | 421 Код Джонсона Код «I из т» 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 2 0 1 0 0 0 1 1 0 0 0 0 0 1 0 0 3 0 1 1 0 1 I 1 0 0 0 0 1 0 0 0 4 1 0 0 1 1 1 1 0 0 0 1 0 0 0 0 5 1 0 1 1 1 1 0 0 0 1 0 0 0 0 0 6 I 1 0 1 1 0 0 0 1 0 0 0 0 0 0 7 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 Код «1 из ш». Весьма интересным кодом является код «1 из т», пред- ставленный для случая ш = 8 в табл. 1.8. Этот код характерен тем. что в лю- бой кодовой комбинации ирису тс гвует т олько одна единица, что позволяет четко находить ошибки в случае искажения кода, и не требуется его дешиф- рация. Данный код, как и код Джонсона, является избыт очным, требующим для своего изображения больше разрядов, чем соответствующие неизбыточ- ные коды. Коды, обнаруживающие и неправ тяющие ошибки. Под ошибкой в цифровом устройстве понимается искажение данных, в результате которых их правильное значение теряется. Ошибки могут возникать под возденет висм самых разнообразных причин, например вследствие взаимовлияния сигналов логических элементов или в результате внешних воздействий, таких как иони- зирующие излучения, скачки напряжений питания и т.п. Самые простые коды позволяют только обнаруживать ошибки. К числу таких кодов относится код с проверкой на четность [8]. В таком случае для проверки правильности чисел, представленных к разрядами (битами), требу- ется еще один дополнительный бит. Биты, представляющие числа, называют- ся информационными. а дополнительный бит — контрольным. Кон (рольному бигу присваивается значение 0, если число единиц в числе четно, и 1 — если нечетно. В табл. 1 9 представлены коды чисел с гремя информационными 19
Таблица I 9 Коды обнаруживающие ошибки Информа- ционные биты Код с провер- кой на чет- ность 000 000 0 001 001 1 010 010 1 011 011 0 100 100 1 101 101 0 по 1100 111 11) 1 наибольшее распространсцне символами Каждое 4-разрядное кодовое слово (правый бит — контрольный) содер- жит четное число единиц, и такой код назы- вается кодом с проверкой на четное гь Коды с одним контрольным символом не обнару- живают ошибки в двух бигах, поскольку т- менение двух битов не нарушает чет нос ги. Для обнаружения ошибок в двух и более би- тах необходимо применять ботее сложные коды с большим количеством контрольных битов. Однако вес эти коды могут только индицировать наличие ошибки. Среди кодов, исправляющих ошибки, имеют । ак называемые коды Хэммшк а с не- сколькими контрольными битами [8J. Кроме рассмотренных кодов сущеегвуюг также другие, самые разнооб- разные избыточные и неизбыточные коды [7. 8]. Вопросы и упражнения . Назовите основные достоинства и недостатки реализации обработки радиотехниче- ских сигналов цифровыми методами. 2. Сколько двоичных разрядов необходимо для точного цифрового представления сигнала s(t) = Г (0 < t < 15) в натуральном двоичном коде при периоде дискретиза- ции АТ -1. 3. Составьте таблицу цифрового ирсдсгавления сигнала Л1’, 1аданного в вопросе 2. 4. I Гочему в цифровых устройс гвах удобно применять двоичную систему счисления? 5. Переведите числа (Х)щ = 352 и = 167 в двоичную, восьмеричную и шестнадца- теричную системы счисления. 6. С какой целью операнды представляются и прямом, обратном и дополнительных кодах? 7. Представьте числа (A^io = 201 и (У)ю = - 89 в прямом, обратном и дополнительном кодах н проведи те их алгебраическое сложение. 8. 11ровсдите перемножение и деление чисел Х; ю„ = 1.110 и YIlP = 0.011. 9. Представьте числа (АЗю = 57896,1 и (¥)ц> = - 0.000456 в двоичном представлении в формате с плавающей чапяюй. 10. С какой целью производится кодирование цифровой информации? 11. Дайте определение и составьте таблицы представления чисел в двоично-десятичных колах 8421 и 5321. 12. Дайте определение и приведите примеры взвешенных и невзвешенных кодов. 13. Данте определение и представьте число (А')ш = 45 в коде Грея. Какие особенности имеет кол Грея? 14. Для чего необходимы коды, обнаруживающие и исправляющие ошибки? 20
2. ОСНОВЫ СИНТЕЗА И РЕАЛИЗАЦИЯ ЦИФРОВЫХ УСТРОЙСТВ 2.1. Классификация и постановка задачи синтеза цифровых устройств Цифровые устройства обрабат ывают информацию, представленную циф- ровыми кодами. Как уже было сказано, в современных цифровых устройствах и системах применяются двоичные представления входных и выходных сиг- налов в форматах с фиксированной или плавающей занятой. Итак, на вход цифровою устройства поступает множество комбинаций двоичных перемен- ных xk_|, xk_j.Х|, Х(), с выхода снимается множество двоичных переменных Ут-ь Ут-2..Уь Уо- В дальнейшем удобно многоразрядное чисно представить вектором, имеющим своими коор динатами двоичные переменные: Х= {xk_|, Xie-2.Х|, Хо}; Y? {у1П~|-у1П_2.Уь У()}. (2.11 Поскольку каждое цифровое устройство оперирует с величинами, кван- тованными по уровню и дискретизированными по времени, номер такта ра- боты будем обозначать в виде показателя вверху справа над переменной. На- пример, запись X означает значение числа X в n-м такте работы. В общем виде цифровое устройство реализует некоторый оператор пре- образования к входных чисел X1' в выходные V1 Yn = Y"(Xn) = Х( Xп) = Х( хк_,, хк_2 х£). (2.2) Характер связи входных и выходных чисел с учетом их изменения по тактам работы служит для деления цифровых устройств на две большие группы — комбинационные и последовательностные. Понятие о цифровых устройствах комбинационного типа. В комби- национных цифровых устройствах (рис. 2.1, а) совокупность выходных сиг- налов Yn в n-м такте работы однозначно определяется входи ыми сигналами X" в том же такте. Поэтому номер такта работы при задании функциониро- вания комбинационною цифрового устройства (КЦУ) зачастую опускается. Таким образом, КЦУ нс содержат элементов памяти и потому часто называ- ются цифровыми устройст вами без памя ти. Функционирование КЦУ представляется системой функций Уо = i'o(Xk-M xk-2. •••» Хо); у, = t‘](xk_1,xk_2.хо); (2.3) Ут-1 = G^k-b Xk_2.Хо), или в векторной форме Y=F(X). (2.4) Простейшим аналоговым эквивалентом КЦУ может служит*», например, обычный удвоитель напряжения на основе безынерционного операционного 21
усилителя DA (рис. 2.1, о). Выходное напряжение удвоителя в любой момент времени определяется напряжением на входе в этот же момент времени, и поэтому его функционирование полностью определяется приведенной зави- симостью. Рис. 2.1. Комбинацишпюе цифровое устройство (а) и его аналоговый эквива ienr (б) Может быть построено комбинационное цифровое устройство, эквива- лентное удвоителю напряжения (рис. 2.1, а). Тогда входному напряжению будет соответствовать входное число X, а выходному — число Y. Принципи- альное отличие аналоговою непрерывного эквивалента заключается в том. что входные и выходные напряжения могут принимать в заданном диапазоне произвольные значения (передалочная функция представляется непрерывной линчей). В цифровом ус тройстве входные и выходные величины принимают значение из ограниченного набора, и поэтому передаточная функция задана на конечном множестве точек (рис. 2.1, а). Однако если реализация какой-либо сложной передаточной функции, особенно нелинейной, средствами аналоговой техники затруднена, то цифро- вые устройства позволяю! легко реализовать практ ически любую передаточ- ную функцию. В этом состоит одно из важнейших преимуществ цифровых устройств перед аналоговыми. Понятие о цифровых устройствах поспедователыюсгною типа. В цифровых устройствах последовательностного типа (рис. 2.2, а) значения ,,П выходных переменных Y в данный момент времени определяются значе- ниями входных переменных в этот же момент времени и состояний элемен- тов памяти, или внутренних состояний Рп = < р" _|, р" р",р(" >. 22
Состояния элементов памяти в данный момент времени зависят, в свою очередь, от их состояния и входных чисел в предшествующие моменты вре- мени. Функционирование последовательностного цифрового устройства (ПЦУ) может быть представлено в векторной форме: Yn = F(Xn,Pn); Рп=т(хпЛРп-1). (2.5) Yn = Н (Xn.Pn) = X" - 1’п: («о) = ию(t(>): Р" = + AT)". ' f \ Rc / КС \ Kl, / Kv «) 6) Рис. 2.2 Последовательное!ное цифровое ycipofleiBo (а) и его аналоювый эквивалент (о) Простейшим аналоговым эквивалентом цифровою устройства последо- вательностного типа может служить, например, RC-пепь (рис. 2.2, б). В такой цепи выходное напряжение в момент времени to определяется входным напряжением и напряжением на конденсаторе в этот же момент времени. В свою очередь, напряжение на конденсаторе, которому можно поставить в соответствие состояние элементов памяти г , может оыть выражено через это же напряжение л входное напряжение в предшествующий момент време- ни (рис. 2.2, б). 11а данном примере можно продемонстрировать преимущест - ва цифровых устройств. Увеличение постоянной времени RC-цепи ограни- ченно. поскольку с ростом емкости уменьшается сопротивление утечки, и, кроме того, конденсат ор большой емкости имеет большие размеры. Реализация функций RC-цспи цифровыми методами позволяет реализо- вать практически любую постоянную времени без каких-либо существенных затрат. Постановка задачи синтеза цифровых устройств. Исходной информа- цией к синтезу цифровых устройств обычно является описание его функцио- нирования, определяющее характер связи входных и выхо, шых переменных. Цифровые устройства, независимо от сложности реализуемых ими опе- раторов, выполняются на основе простейших (элементарных) комбинацион- ных устройств, называемых логическими элементами. Совокупность элемен- тов и взаимосвязи между ними определяют структуру (С1рук1урную схему) ус гройс т ва. 23
Задача синтеза (логического проектирования) цифрового устройства, реализующего требуемый оператор связи входных и выходных переменных, состоит в определении оптимальной структуры устройства при заданном пе- речне логических элементов (заданной элементной базе). Наиболее общим критерием оптимальности является стоимость устройства, включая все затра- ты на его изготовление и последующую эксплуатацию. Известные в настоя- щее время методы логического проектирования обеспечивают, однако, лишь частичный учет этого критерия, а именно минимизацию числа аргументов, входящих в функцию. В ходе синтеза устройства осуществляется переход о г содержательного описания устройства к формализованному заданию его оператора в виде функций, таблиц, графов, матриц. Сущность задания опера- тора, независимо от сю формы, состоит в определении перечня входных и выходных переменных устройства и установления связей между ними. Да- лее, исходя из упоминавшихся форм задания оператора (наиболее распро- страненной является табличная форма), определяется структурная схема уст- ройства. 2.2. Логические функции и логические элементы Основным математическим аппаратом, используемым для синтеза циф- ровых устройств, является булева алгебра (алгебра логики), названная по имени Джорджа Буля, разработавшего ес в середине XIX века для изучения законов мышления. Возможность применения булевой алгебры к задачам проектирования цифровых автоматов обусловлена аналоз ней пеня тин и категорий этой ал- гебры и двоичной системы счисления. Количество символов, которые рас- сматриваю гся в алгебре логики, равно двум (один из них обозначается сим- волом 0, другой — I). Выражаясь языком формальной логики, символ О означает ложное высказывание, I — истинное высказывание. Эти простые высказывания будем обозначать строчными буквами какого-либо алфавита х,у, z. у,... Из элементарных высказываний образуются сложные высказыва- ния. которые являются функциями простых логических переменных. Эти сложные высказывания называются логическими функциями или функциями алгебры логики (ФЛЛ). Другими словами, под логической (булевой или переключательной) функцией понимается двоичная переменная г, значение которой зависит от значений других двоичных переменных у = Г(х^_|, х^,..., х«), именуем ы х аргумсн там и. Основные логические функции и тождества. Булева алгебра строится на базе трех основных операций (функций) — инверсии, дизъюнкции и конъюнкции. Инверсия (отрицание) обозначается чертой, которая ставится над пере- менной. Например, отрицание переменной х, читаемое НЕ х, записывается в виде х Дизъюнкция (логическое сложение) обозначается знаком xt v (чита- ется: Ад ИЛИ хо). 24
Конъюнкция (логическое умножение) обозначается так же, как произве- дение в обычной алгебре, т. с. х( • Ху или символом х( л (читается: Xi И х0). Постулативно полагается, что при выполнении перечисленных операций равенства имеют вид: 6=1; 0v0 = 0: 0 0-0: 1 = 0; ()vl = l; 0-1=0; (2.6) lv0 = l; 1-0=0; 1 v 1 = 1; 11=1. На основании этих постулатов можно вывести тождества алгебры Буля, представленные в табл. 2 1 Паблика 2.1 Логические тождсс гва Л= н/п Название Авали।нческая запись 1 Закон сложения с единицей XV1 =1 2 Закон сложения с ну чем X V О = X 3 Законы танго югни X V X = X 4 Х-Х = X 5 Закон у множения на единицу X 1 = X 6 Закон умножения на ну 1ь х 0 = 0 7 Законы (ополии тельное и X V X - I 8 х х = 0 9 Закон двойного оiрицинин X = X 10 Сочетательные законы (х2 V Xj )v Ху = Х2 V (Xj V Ху ) 11 (x2-xj) xy =x2 (xj х0) 12 Переместительные законы Xj V Ху = Ху V Xj 13 Х1 *0 ~ *0 ’ Х1 14 Распределительные законы (х2 V Х| }- Ху = х2 XyVXj-Xy 15 X2 -Xj V Х0 = (х, V x0)-(xj V Ху) 16 Теорема Mopiana Xj V Ху = Xj • Ху 17 Х1 • х0 = X1 v х0 Тождества 1—14 вытекают непосредственно из постулатов (2.6): пос'с- дующие могут быть выведены на основании предыдущих. Например, для дока- зательства тождества 15 к его правой части применим 14 4 и 5-й законы: (х2 vxj-lx, VX())=X2 X, vx0-x, vx2-\) vx4,-x{)= = x2 X] V Xy Xj V x2 Xy V 1 - Xy. Далее воспользуемся юждест вам и 14 и 1: х2 • Xj v Ху • Xj v х2 • Хц v 1 • х0 = х2 х, v Ху (xj v х2 v 1) = х2 • X] v Ху. (2.8) 25
Таким образом, тождество 15 доказано. Весьма важными для синтеза цифровых устройств являются тождества 16 н 17, носящие название теоремы Моргана. Теорема Моргана может быть доказана с учетом того, что количество комбинаций аргументов Х| и д-р ко- нечно, в данном случае равно четырем. Справедливость теоремы следует из табл. 2.2, в которой приведены все возможные комбинации Х| и .гр. Таблица 2.2 Доказательство теоремы Моргана Х1 х0 Х1 хо Х| • х( Х1 хо х, vx0 Х1 V х0 Xj х0 О О О I I I 1 1 I 0 1 0 1 I 0 1 0 0 1 0 0 1 0 1 1 0 0 1 1 1 0 0 0 о 0 0 Теорема верна, так как столбцы, соответствующие выражениям х, • х0 и X] v х0 . полностью идентичны. То же в отношении столбцов х, v х() и х( - х^ . Теорема Моргана обобщается на произвольное количество аргументов 4-14-2 = 4-i v xk_2 v...v к,,; xk_, v...v x„ = xk_, - ... xo . (2.9) Доказательство последнею утверждения предлагается провести в каче- стве упражнения. Число наборов (комбинаций) аргументов югических функций. По- скольку каждый аргумент может принимать лишь одно из двух значений, то общее количество комбинаций Рк из к двоичных аргумен ов составит /\ = 2к (2.10) Возможные комбинации значений двух и трех входных аргументов представлен в табл. 2.3. Чтобы упорядочить пере- числение возможных значений Таблица 2.3 Комбинации значений двух и трех api ументов S Х| х« 0 0 0 1 0 1 2 1 0 3 1 1 S Xj Х'1 1_Х|) 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 I I 0 0 5 1 и 1 6 1 1 0 7 1 1 1 аргументов, комбинации удобно обозначат ь в виде числа S, пред- ставленного в двоичной сис- теме счисления. Тогда при к = 2 число S примет четыре значения (О, I, 2, 3), а при к = 3 — восемь значений. В общем случае число S должно принимать значения S = 0, 1,2,3.2к-1. Число логических функций. Заданному числу входных аргументов к соответствует вполне определенное число Fk различных логических функ- ций. Функции считаются различными, если их значения отличаются, по край- ней мерс, для одного набора аргументов. Поскольку каждому из наборов 26
мшут соответствовать два значения у (0 или 1), то общее число различных функции к аргументов Fk = 2Рк. (2.11) Нааримср, два аргумента создают 2Ч = 16 различных логических функции. Сложные логические функции. Булева алгебра допускает возможность образования сложных функций, т. е. функций, аргумен гы которых являются функциями других двоичных аргументов. Например, если у = y(zj. /«), а /| = z.](xi, д-0) и /\) - 7<)(хз, Х2), очевидно, что у = у(.уз, лт, Х], хц). Операция заме- ны аргументов одной функции другими функциями называется суперпозици- ей функций. Эта операция позволяет с помощью функции меньшего числа аргументов получать функции большего их числа. Логические элементы. Под логическим элементом (иногда называемым вентилем) понимают устройство (обычно электронное), реализующее ка- кую-либо прос гую логическую функцию. Исходя из суперпозиции булевых функций, можно сделать вывод о том. что любую сложную булеву функцию можно представить в виде комбинации простых функций и, следовательно, любое цифровое устройство можно реализовать из прос гых логических эле- ментов. Логические функции одного аргумента и одновходовые логические элементы. Число комбинаций входных аргументов Р| = 21 = 2, число воз- можных булевых функций F( - 2 - 4. В табл 2.4 сведены возможные функ- ции и приведены наименования логических элементов, их реализующих Таблица 2.4 Логические функции одного аргумента Наименование функции Константа II \ ЗЯ Переменили Инверсия Константа единицы Аналитическая запись функции з0=0 У| = X у, = X Уз - 1 Таблица истинности S X у S X у S V у S X 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 Наименование элемента Генератор «нуля» Повторитель Инвертор 1 спора юр «единицы» 1огические функции двух аргументов и двухвходовые логические элементы. Число комбинаций входных аргументов Р2 = 2“ = 4. число воз- можных булевых функций F2 = 21 = 16. В табл 2.5 сведены все возможные функции с указанием наборов аргументов хь х<> и приведены наименования логических элементов, реализующих эти функции. 27
Логические функции двух аргументов Таблица 2.5 Значения Наименование ф\нкции Аналитическая записи функции Наименование элемента S 0 1 2 3 х() 0 1 0 1 Х1 0 0 1 1 Уо 0 0 0 0 Коно ан га ну. .я У()=0 1 енерагор <тиуля» У| 0 0 и 1 Конъюнкция (ло- I нческое умноже- ние) У| = Х1 *0 Кот.юнкюр (И) У2 0 0 1 0 Заире! но хд У2 = х1 *0 Схема запрета (НЕТ) по Хд Уз 0 0 1 1 Переменная Xj Уз = Х1 Повторитель Xj У4 0 1 0 0 3anpei по Xj у4 = X J х0 Схема запрет а (НЕТ) по Xj У5 0 1 0 1 Переменная Хд У5 = х0 Повторитель х0 Уб 0 1 1 0 Неравно мрачность (сумма ио модулю два) Уб = xl х0 V Х1 х„ Уб = Х1 © хо Исключающее И 1И. сумматор по мо- дулю два У7 0 1 1 I Дизъюнкция (ло- гическое сложение) У7 = *1 V Х„ Дизъюнкгор (ИЛИ) У« 1 0 0 0 < гре чка Пирса (функция Вебба) У« = Х1 v х0 Элемент Пирса (И.1И-ПЕ) У9 1 0 0 1 Равнозначное!ь у9 - Xj ’ Xg V Xj • Xg Схема равнознач- ное in У10 1 0 1 0 Инверсия Хд У10 = Х0 Инвертор xq (НЕ) УII 1 0 1 1 Импликация от х0 к Х1 У11 - Xl v х0 И МИЛ И Каюр ИЗ Хд У12 1 1 0 0 Инверсия Х| У12 = Х1 Инвертор X, (HF) У13 1 1 0 I Импликация o'i х, к х„ У13 = *1 v х0 Импликаюр из X, >14 1 1 1 0 Штрих Шеффера у 14 = xj х0 Элемент Шеффера (И-НЕ) У15 1 1 1 1 Константа едини- цы У15 = | 1енерагор «единицы»
Из табл. 2.5 необходимо выделить три функции, которые называются основными функциями булевой алгебры. На рис. 2.3 представлены таблицы истинности и условные графические обозначения (У! О) логических элемен- тов, выполняющих основные логические функции. Рис. 2.3. Таблицы истинности и условные графические обозначения югических элемен- тов, реализующих основные функции На схемах логические функции, выполняемые элементом в соответствии с ГОСТ 2 743—91, о тображаются условными символами: конъюнкция — знаком &, который заносится в левый верхний уюл поля элемента; дизъюнкция — цифрой единица; инверсия обозначается окружностью. Ниже отечественных обозначений на рис. 2.3 приведены УГО этих же элементов по стандарту, принятому в зарубежных системах автоматизир, (ванного проектирования. Из табл. 2.5 также следует, что любую функцию можно выразить через три основных, или. что то же самое, любое цифровое устройство можно реа- лизовать из набора, состоящего из инверторов, коиъюнк торов и дизъюнкто- ров. Например, функцию неравнозначности можно выразить следующим образом y6 = X|G)xn = xl-x0vx1-x0. (2.12) Устройство, выполняющее эту функцию, прсдс гавлено на рис. 2.4. Рис. 2.4. Схема сумматора по моду но два 29
Таким образом, существует система логических функций (набор логиче- ских элементов), позволяющая представить любую сколь угодно сложную функцию (построить сколь угодно сложное цифровое устройство). Такая сис- тема функций называется функционально полной системой логических функций, а набор элементов ей ссотвстс гвующий, — функционально пол- ным набором (ФПН). Таким образом, ФПН является набор, состоящий из инверторов, конъ- юнкторов и дизъюнкторов. Существуют ФПН, состоящие из двух типов и даже из одного типа элементов: например, ФПН является набор, состоящий из инвертора и конъюнктора. Для того чтобы доказать это. покажем, что из этих элементов можно построить дизьюнкгор у=Х| vXfl, и тогда мы полу- чим уже известный ФПН Воспользуемся теоремой Моргана и тождествами алгебры логики: У — V — X] V — Х| ’ Xq. В полученное выражение входят лишь операции инвертирования (НЕ) и коньюнкции (И), выполняемые имеющимися в наборе элементами. Недо- стающий в наборе дизъюнктор реализуется по схеме рис 2.5. Инвертор Днзыонкгор, пос троенный на основе Рис. 2.5. Функционально полный набор, состоящий из двух типов элементов Аналогичным образом можно доказать функциональную полноту набо- ра, состоящего из инверторов и дизъюнкторов. Примерами ФПН. состоящими из одного типа элементов, могут служить наборы из элементов Шеффера (И-НЕ) или из элементов Пирса (ИЛИ-НЕ). Докажем функциональную полноту набора из элементов Шеффера. Для доказательства надо продемонстрировать, что из элементов Шеффера можно построить инвертор, конъюнктур и днзыонкгор. На рис. 2.6 представлены УГО элемента Шеффера и реализации на его основе других элементов. Рис. 2.6. Элемент Шеффера И-НЕ и реализация на его основе элементов НЕ, И и ИЛИ 30
Аналогично можно доказать функциональную полноту набора из эле- ментов Пирса. В огличие от одноступенчатых элементов элементы Шеффера и Пирса выполняют каждый две простые ло! ические функции и поэтому на- зываются двухступенчатыми логическими элементами. Существуют также ФПН, состоящие из других типов элементов. Таким образом, любое цифровое устройство может быть построено из ограниченного числа типов логических элементов, что является их большим преимуществом перед аналоговыми схемами, требующими радиоэлементы самой широкой номенклатуры. Минтермы и макстермы. В булевой алгебре большую роль играют оп- ределенные логические функции, называемые минтермами и макстермами. Минтерном (конституснтом единицы) называется логическая функция, которая принимает значение «единица» при одном из всех наборов ару- ментов и «ноль» при всех остальных. Количество минтермов заданного чис- ла apt умен гов к. как следует из определения, равно числу Р> возможных ком- бинаций их значений. В табл. 2.6 представлены таблицы истинности минтер- мов и макстсрмов (рассматриваемых ниже) двух аргументов. Таблица 2.6 Минтермы и макстермы функций двух аргументов S Api у мен I ы Мншсрмы Макс термы Х1 Хо Мп, Мп2 Mnt Мпу Мх, Мх2 Мм Мх0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 0 0 1 0 1 1 0 1 2 1 0 в 1 0 0 1 0 1 1 3 1 1 1 0 0 0 0 1 1 1 Аналитически миитерм может быть выражен в виде конъюнкции (произ- ведения) всех apt умен гов. причем в прямой форме в него войдут аргументы, имеющие в рассматриваемом наборе значение «единица», а в инверсной — имеющие значения «ноль». Для минтермов (табл. 2.6) аналитические выра- жения имеют вид Мп, = Х|-х0; Mn2 = x1-x0; Mii| = X! - \j; Мп0 = х,-х0. (2.13) В общем виде образование мин герма с номером S осуществляется путем перевода S в двоичную систему счисления и записи конъюнкции с аргумён- тами в прямой и инверсной форме. Например, запись Мп« имеет следующий вид: (35)1О=(| ООО I I), ф ф ф ф ф ф (2.14) МП35 = Х5 Х4 • • х2 • X, • Хд Макстермом (конституснтом нуля) называется логическая функция, равная нулю на одном из возможных наборов аргументов и единице на всех остальных. Количество макстсрмов, так же как и минтермов, определяется 31
числом входных аргументов. В табл. 2.6 представлены таблицы истинности макстермов двух api ументов. Аналитически макстерм выражается в виде дизъюнкции всех аргумен- тов, поичсм в прямой форме в него войдут аргументы, имеющие в рассмат- риваемом наборе значение «ноль», а в инверсной — «единица» Для мак- стермов (табл. 2 6) аналитические выражения имеют вид Мх. = X| v х0; Мх2 - Х| v х0; Mxj = х( v Xq; Mxn = Х| v Xq. (2.15) Образование макстсрма с номером 35 осуществляется так, что аргумен- ты логически складываются, и единице в двоичном представлении соответ- ствует переменная в инверсной, а нулю — переменная в прямой форме. (35)„,=(1 ООО II), 4^ 4 4 4 £4 (2.16) Мп35 = Х5 -V х4 V х3 V х2 v X] V х0 Как будет । (оказано ниже, произвольная логическая функция может быть представлена в виде комбинации минтермов или макстермов 2.3. Способы задания и преобразования логических функций Словесный способ. При этом способе задания функция определяется словами, причем описание должно однозначно определять все случаи, в ко- торых она принимает значение 0 или 1. Например: «Функция равна единице, если любые два или более аргумента равны единице, и нулю во всех осталь- ных случаях». Таблица 2.7 Таблица истинности S х2 Х1 хо У 0 0 0 0 0 1 0 0 1 0 2 0 1 0 0 3 0 1 1 1 4 1 0 0 0 5 1 0 1 1 6 1 1 0 1 7 1 1 1 I Табличный способ. Способ задания булевых функций с помощью таблиц истинности позволяет достаточно легко перейти к любому другому спо- собу. Таблица истинности предезавляез собой некоторую таблицу, в которой отмечены наборы (комбинации) входных переменных и значения функции на каждом наборе. Например для функ- ции, заданной выше словесным описанием, это таблица 2.7. Аналитический способ. Под аналитическим способом задания логических функций подразумевается запись в ви зс алгеб- раического выражения, которая для заданной выше функции может иметь вид у - х2 • Х| v х2 • Xj v х2 • X, v х<). (2.17) Аналитический способ задания логических функций имеет несколько форм, рассматриваемых далее. Днзыонк1ивно-нор альная форма (ДНФ) задания логической функ- ции состоит из .дизъюнкции простых конъюнкций (импликант) аргументов. 32
Конъюнкция называется простой, если она является логическим произведе- нием переменных в прямой или инверсной форме. ДПФ функции (2.17) имеет вид у = х, Х| v х2 X, х0 v х2 • Х| • \j. (2.18) Д11Ф имеет свой завершенный вид. называемый совершенной дизъюнк- тивной нормальной формой (СДНФ), когда в конъюнкции входят все аргу- менты, т. с. они являются минтермамн. Так, функция (2.18) в СДНФ описы- вается выражением У = Х2 х, х0 V х2 • X] • \) V х2 • X] • х0 V х2 X] х(). (2.19) Функция в СД1 1Ф может быть условно записана в виде у = гМгц v Mns v Мпб v Мп7 = ^2(3. 5, 6. 7). (2.20) В мой условной записи под знак суммы вводятся номера S минтермов (см. табл. 2.7), присутствующих в СДНФ функции. Конъюнктивно-нормальная форма (КНФ) представления функций содержит конъюнкцию простых дизъюнкций. Для функции (2.17) КНФ пред- ставляется выражением У = (х2 V Х]) (х2 V Х| vxoj-|x2 V Х| V Xfj). (2.21) Если каждая из простых конъюнкций является полной, т. е. макстермом, то говорят, что функция задана в совершенной конъюнктивной нормальной форме (СКИФ) у = (х2 V Х| V Хо)-(х2 V Х| V Хи) (х, V Х| V V X] vXjJ . (2.22) Аналогично, функция (2.22) в СКНФ условно записывается в виде про- изведения макстсрмов у = Мх0 МХ| Мх, Мх4 = П (0,1,2,4) (2.23) Задание логических функций на диаграммах Вейча или каргах Карно. Очень часто удобным оказывается представление функции в специаль- ных матрицах или диаграммах, называемых диаграммами Вейча или картами К«рно. Диаграмма Вейча (карта Карно) — прямоугольная таблица, число ячеек которой равно числу возможных комбинаций аргументов 2к. Подробно об этом методе будет рассказано ниже в § 2.4 о минимизации булевых функций. Задание функций в виде временных диаграмм. Такая форма часто бывает удобной при задании функционирования какого-либо цифрового уст- ройства. В этой форме строятся временные диаграммы, представляющие воз- можные комбинации на входе устройства, и временная диаграмма, представ- ляющая значения выходной переменной. Методы перехо га от одног о способа задания логических функций к другому. Каждая логическая функция може г быть задана любым из перечис- ленных способов, однако в конкретных случаях оказывается удобным один из способов и поэтому необходимо уметь переходить от одного способа задания функции к другому. 33
Переход от табличного способа задания к аналитическому ба шруется на основной теореме булевой алгебры, утверждающей, что любая булева функция может быть представлена в виде логической суммы конъюнкций значений функции ys с минтсрмами Mns, coo гвстствующими этим наборам, или в виде логически! о произведения дизъюнкций значений функции ys и макет ермов Mx.s: 2^-1 2k 1 У = V Mns ys = Л [Mxs V ys]. (2.24) s-o s. о Основная теорема может быть доказана. В соответствии с теоремой раз- ложения Шеннона [9] любую логическую функцию в общем виде можно раз- ложить ио одной из переменных на два слагаемых или на два сомножителя f(xk-i...хи*о)= f(xk-i.....xbOxov f(xk-i—’ xi’O)‘xo- 5) f(xk-i...xbxo) = f f(xk-i..xbQ)VxoMf (xk-i......x,,l)vx0]. Справедливость этой теоремы легко установить, подставляя в обе части соотношений возможные значения переменной х<, (0 или 1). Подобным обра- зом можно разложить по другой переменной каждое из полученных cnaiae- мых. например. f(xk 1.....хьхо) = f(xk-i....O.OJ-^ Xov f(xk._j...(XQ-vxoV vl (xk-l...l.Oj-Xj -XoV f(xk_,...1. O-x, -^. Если тту операцию проделать для всех переменных Xj, то результатом будет f(xk-i..хьхо) = r(0’ .,O,O)xk_l-...x1x(1v f(0.....O,l)xk_l-...-xlxov... _ 2k-l vf(l....l,O)-xk_1-...-x1-.xQv f(l.I, l)xk_,-...-xl-x0 = vMns-ys- <2-26) s=o Для доказательства соотношения для конъюнктивного представления функ- ции воспользуемся доказанным выше дизъюнктивным представлением и следующими тождественными преобразованиями. Прежде всего, представим (2 26) для инвертированной функции: _ 2k-i 2к-1 ___ У = V Mns = V Mns -yv s-o S=() Затем преобразуем правую часть по теореме Моргана: _ 2k-l 2к-1--------- 2к-1.------------ У = vMnsys = л[Мпь'Ух]= Л Mnsvys . (2.27) S-O S=0 S-O Поскольку инвертированный минтерм тождественно равен макстерму, из (2.27) । юлучаем У = Л I Mns v Ул 1= л Г Mxs v ysl; или у = Л [Mxs vys], S-o so so 34
Таким образом, справедливость основной теоремы доказана. Использование основной теоремы для перехода от табличного задания к аналитическому покажем на следующем примере (рис. 2.7). S Хт *1 Х<1 у 0 0 0 0 и 1 (I 0 1 0 2 0 1 0 1 3 и 1 1 0 4 1 0 0 1 5 1 0 1 1 6 1 1 0 0 7 1 1 1 1 2к-1 у - v Мпя ’ >'s 3 S«4) = 0 • Mn^ v 0 • МП| v I - Мп. v (1 Мп, v 1 Mn4 v I Mns v 0 • Mn6 ✓ I Mi. = = Мп, v Мп( v Мп, v Мпт = = х, х, «о v х, X, v х2 Х| v х2 х( = У ( 2 4.5,7); 2к-1 у= л [Mxs v ys] = (OvMxo)-(()vMX|)-(l vMx,j- s«o (0 v Mx-) (1 v Mxj) • (I v Mx5 ) • (0 v М\,) • (I v Мх7) = = Мхо МХ] Мх3 М.\ - - (х2 V X, V \,)• ( х2 V Х| V )• ( х2 V Х| V .\() (х2 V X, V X,,) П (0. 1. 3. 6). Рис. 2.7. Пример перехода от табличного задания функции к aiia.iiini'iecKoxn Из рассмо1ренно1 о примера видно, что функция из табличною способа задания преобразуется в СДНФ или СКИФ. Переход от аналитического задания к табличному может быть осу- ществзен путем подстановки в выражение функции поочередно всех воз- можных комбинаций входных аргументов и определения с использованием логических тождеств значения функции на >тих наборах. Проводим эту опе- рацию для всех наборов и получаем функцию, заданную таблично. 2.4. Минимизация логических функции Необходимость минимизации продемонстрируем на примере синтеза комбинационного цифрового устройства в базисе, состоящем из элементов И, ИЛИ, НЕ. функционирование которого задастся функцией Г = £(0, 2, 3) = Xj Хо v Х| • Х{) v х, - хо. (2.28) Поданному выражению изображаем схему устройства (рис. 2.8, а). Рис 2.8 Реализация цифрового устройства по СДНФ (а) и пи минимизированной функ- ции (б) 35
Как видим, нам потребовалось 6 логических элементов. ПбпЫтаемся упростить (2.28), используя тождества алгебры логики: у = Х| Xfl V X] • х0 V Х| Xf) = Х() [ Х| V xj V Х| • х,( = = <\) V Х1 - Ху = {Хо V x(J) (х0 V xt) = Xi V Х(). (2.29) Схема устройства (рис. 2.8, б), построенного по упрощенному выраже- нию, реализует ту же функцию существенно меньшим числом логических элементов (всего необходимо 2 элемента). Такое устройство будет экономичней и дешевле, чем устройство по схе- ме рис. 2.8, а. Следовательно, перед реализацией цифрового устройства логи- ческую функцию необходимо упростить или минимизировать. Строгое ре- шение задачи минимизации должно учитывать конкретные особенности ло- гических схем применяемой элементной базы (в частности, значения коэф- фициента объединения, нагрузочной способности логических элементов, число элементов в корпусах, стоимость каждого корпуса и т. п ). Однако применяемые в настоящее время математические методы упрощения нс ре- шают задачу в таком объеме. Наиболее детально разработаны методы реше- ния канонической задачи минимизации функций, которая заключается в отыскании ДНФ функции, содержащей минимальное число вхождений аргу- ментов (минимальное число букв). Такие формы принято называть опти- мальными или минимальными ДНФ. Дальнейшее изложение оз раничивается рассмотрением задачи упрощения функций в такой постановке. Исходной формой функции при решении задачи минимизации является ее СДНФ (если функция задана в другой форме, ее переводят в СДНФ). Систематические методы минимизации (в настоящее время известно несколько таких методов) предполагают применение формализованного порядка упрощения формул. Эти методы описываются строгими алгорит мами и поддаю гея программиро- ванию; их применение дает возможность использовать ЭВМ. что является неизбежным при минимизации формул функций большого числа аргументов. Me год Квайна. Логическая функция перед минимизацией должна быть представлена в СД11Ф Если функция определена в другой форме, ее необхо- димо преобразовать в СДНФ указанными выше методами. Минимизация по методу Квайна производится в два этапа: а) получение сокращенной ДНФ и б) отыскание и исключение избыточных импликант. Основным понятием при получении сокращенной ДНФ является поня- тие соседних минтермов. Два мин герма называются соседними, если они отличаются только одной переменной (в один минтерм переменная входит в прямой форме, в другой - в инверсной), например, соседними будут мин- термы х2 Х| х0 и х2 • X] Xq . К соседним мин’ермам может быть применено правило склеивания х2 • х( • v х-2 • х( • х^ = х2 X] • (х<) v Xq )= х2 • Х|. Полу- чаемая в результате склеиваний конъюнкция называется импликантой g. 36
Простой импликантой называется такая имчликанта, которая при уменьшении ее выражения на одну букву перестает быть импликантой. Из перечисленных импликант минтермы нс являются простыми импликантами. поскольку они могут быть склеены друг с другом, и функция может быть представлена в виде дизъюнкции прост ых импликант Например: У = X, • X, V Х2 X, • Х() V X, X, • Xf) = Х2 • X, V Х| \). Таким образом, сокращенная ДНФ функции, получаемая на первом этапе минимизации,— это ничто иное как дизъюнкция простых импликант. т. с. импликант, которые нс могут быть дополнительно склеены друг с другом. Каждая из простых импликант представляет, или покрывает в сокращенной ДНФ, один или несколько мин термов исходной СДНФ. При этом часто слу- чается. что некоторые из простых импликант покрывают минтермы, покры- ваемые другими импликантами. Такие импликанты называются избыточны- ми, и их исключение из аналитического выражения функции ее не изменит. Поэтому на втором этапе минимизации производится отыскание и исключе- ние избыточных импликант. Рассмотрим минимизацию функции у = Mn0 v Мп2 v Мп- v Мпд v Мп5 v Мп7 = х2 х, - х0 v vx2 • Х| • Xf, v х2 • Xi • Хо v х2 - Х( Хо v х2 • Х| • Хо v х2 • X] • (2.30) На первом этапе производим склсшанис первого минтерма со всеми соседними, затем второго минтерма и т. д._ и получаем сокращенную ДНФ у - х2 • х^ v Х| Х() v х2 - Xi v Х| • v х2 • X] v х2 • х^ = = S<)2 v "(И v &23 V S37 v £45 v £57- (2-3 1) В этом выражении импликанты go2, gj7 и gs7 покрывают минтермы A/n(>, Wn2, А/пу, Л/п4, Wn5 и A/n„ т. е. всю функцию (2.30), и. следовательно, импли- канты g(Jw, g23 и gs? явля ются избыточными и могут быть удалены из выраже- ния для функции (2.31). Полученная функция y = g{)2 ёз? 'ёдя = х7 • x<) v Х| Х() v х7 • X] нс содержит избы точных импликант и называется тупиковой ДНФ функции (ТДНФ). Как правило, для сложной функции существует несколько способов удаления избыточных импликан г, в резуль- тате получается несколько ТДНФ Минимальной ДНФ (МДНФ) называется ТДНФ с наименьшим числом букв. Поиск вариантов ТДНФ соответствую- щих минимизируемой функции, производится обычно с помощью так назы- ваемых таблиц импликант или таблиц покрытий, которые указывают, какие простые импликанты поглощают отдельные члены исходного выражения. Для выяснения возможностей исключения избыточных простых импли- кант по выражениям (2.30) и (2.31) составляется табл. 2.8, столбцам которой соответствуют минтермы исходного выражения функции, а строкам — все члены сокращенной Д11Ф. 37
Таблица импликант Таблица 2.8 Простые имплнкан- ты Мшпермы исходной СДНФ _ Mn„ V2 * Xl ‘ XU Mn, Хд ’^1 Mn.A Xj * Xg Мщ Xj • Xj Xo Mn? Xi * ^1 ^0 Mn? XzXi-Xu g02 x2 • x0 + + g<M *1 x1( + 4* g23 X, X, + + g'7 Xi-4 + + g45 х2 - Xj + + Й57 X. • x0 + + Если в некоторый член канонической суммы входит какая-либо из про- стых импликант, то на пересечении соответствующего столбца и строки ста- вится знак «плюс». После заполнения таблицы выбирается минимальное число тех простых импликант, которым соо гвстствуют знаки «плюс» во всех столбцах. Из таблицы следуют две такие возможности, которым соответствуют две 1 ДНФ > = g()2 v §37 v S45 = х2 ' Х0 v xl ’ х0 v х2 ' ХГ ? У = g(J4 V g23 V gS7 = Xj - V X2 - X, V X2 X(j. Обе эти функции представлены минимальными ДНФ. Выполнение процедур по методу Квайна возможно и при большом чис- ле переменных, однако для этого необходимо кропотливо выписывать очень длинные формулы (после операций склеивания), в которых легко допустить ошибку. Поэтому распространение при большом числе аргументов получил усовершенствованный метод Квайна, предложенный Мак-Класки |1]. На ос- нове метода Мак-Класки возможно построение алгоритмов автоматизирован- ной минимизации логических функций на ЭВМ. Необходимо отметить, что применение ЭВМ для минимизации особенно эффективно при числе пере- менных больше шести. При меньшем числе аргументов логические функции moi ут быть легко минимизированы по предс тавленному ниже методу Вейча- Ктрно. Метод Вейча—Карно. Метод минимизации функций, предложенный Вейчем и усовершенствованный Карно, основан на упомянутом выше пред- ставлении функции в специальных матрицах, именуемых диаграммами Вейча или картами Карно. Метод Вейча—Карно облегчает процедуру склеивания соседних минтермов благодаря тому, что члены СДНФ и С КНФ (мшпермы или макс гермы) размещаются на плоскости таким образом, что соседние члены, для которых возможно склеивание, оказываются в геометрической близости друг от друга. 38
Диаграммы Вейча (карты Карно) представляют собой прямоугольные таблицы, разделенные горизонтальными и вертикальными линиями на ячей- ки, общее число которых совпадает с числом минтермов или возможных комбинаций аргументов. Каждая ячейка соответствует своему минтерму, причем размещение последних осуществляется таким образом, чтобы два со- седних минтерма находились в смежных ячейках. Такой порядок размещения минтермов (макстермов) обеспечивается принятым способом образования наборов аргументов, соответствующих различным ячейкам диаграммы. На рис. 2.9 приведены примеры диаграмм Вейча для двух, трех и четырех пере- менных, а также показано соогвстст вне ячеек и минтермов. Для облегчения процесса нахождения нужной ячейки по краям диа- граммы ставятся значения переменных (рис. 2.9). Например, в верхнюю строку в диаграмме Вейча для функции грех переменных, обозначенную символом А|, вносятся все минтермы, в которые входит в прямой форме, в нижнюю— минтермы. куда х( входит в инверсной форме. В дальнейшем условно будем обозначать строки и столбцы, соответст- вующие переменным в прямой форме, линиями (рис 2.9, «). Мп Х|Х„ Мп- х1 *0 Мп Мп„ —- *1*<1 *1 Хо Мп, *2*i*o Мп *2*1*0 Мпй_ *2*1 *0 Мп2 *2*1 *0 Мп, Мп Мп, Мп„ *2*1*0 *2*1 Х« *2*1 *0 *2 *1 Х<1 Mni Мп- Мп(> Мп? *3*2*1 *0 XjXjXjXj, *3*2*1*О *3 *2*1*0 Мп п Мпи Мпы Мп1(, *3*2*1 *з*2*1*о *3*2*1 *< *3*2*1 *0 Мп9 Мп( । Мпп M'lfc *3*2*1 *о *3*2*1*( *3*2 *1*0 *3*2*1 *0 Mni Мп Мп., Мп,-, *1*2*1Х« *3*2*1 *3*2*1 *0 и? lz" lz’ |х' б) Х2 в} Рис. 2.9. Диаграммы Вейча для функций двух (u), трех (о) и четырех (в) переменных Представление функций на диаграмме Вейча. Для представления функции на диаграмме Вейча ее необходимо перевести в СДНФ или задать таблично. Затем на диаграмме отметить единицами те ячейки, которые соот- ветствуют имеющимся в СДНФ функции минтермам. Остальные ячейки либо остаются незаполненными, либо отмечаются нулями. В качест ве примера представим функцию, заданную таблично на диа- грамме Вейча (рис. 2.10). 39
Таблица истинности S х2 Х| х0 у 0 0 0 0 0 1 0 0 1 0 2 0 1 0 1 3 0 1 1 1 4 1 0 0 0 5 1 0 1 0 6 I 1 0 0 7 1 1 1 0 Функция в СДНФ У — Х2 ' Х1 ' ХО V Х2 ' Х1 ' ХО Диаграмма Вейча с занесенной функцией Рис. 2.10. Предоявление логической функции па дилрамме Вейча Считывание минимизированной функции с диаграммы. После зане- сения функции в диаграмму Вейча обычно сразу видна минимальная форма функции. Так, если функция содержит единицы в соседних ячейках, то они могут быть объединены в контур, и в конечном выражении функции пред- станут в виде импликанты. в которой будет отсутствовать переменная, меня- ющая знак для заданного объединения. Контур образуют также ячейки, на- ходящиеся на противоположных краях диаграммы Вейча. Для рассмотренного примера могут быть объединены в контур две еди- ницы, отображающие соседние минтермы, как )то показано на рис. 2.10: У - Mil, V Mil; = g23 = X, • Х|. Па рис. 2.11 представлены некоторые возможные варианты объединения единиц в контуры и минимальные функции, которые при этом получаю гея. Рис. 2.11. Возможные варианты объединения етиииц в контуры и результаты склеи- вания В общем виде можно сформулировать следующие правила считывания минимизированной функции с диаграмм Вейча: • минимизированная функция равна j (изъюнкции импликант, соответ - ствующих объединенным в контуры единицам; • в контуры можно объединять 1, 2. 4, 8. 16. .... 2к единиц, причем они должны составлять строку, столбец (или их часть) — прямоугольник или квадрат. В эти контуры объединяют и единицы, расположенные на краях диаграммы Вейча, 40
• контурами должны охва гываться вес осз исключения единицы, и ни в один контур нс должен быть включен нуль; • одна и та же единица может быть включена в несколько контуров; • в импликанту. приставляющую данный контур, входят только те пере- менные, кот орые для этого контура не меняют своих значений. На рис. 2.12 показаны возможные варианты объединения единиц и полу- чающиеся функции для четырех аргументов. Рис. 2.12 Примеры считывания мииими тированных функций Минимизация частично определенных функций. Лот ическая функция может быть определена на части возможных комбинаций значений аргумен- тов. Комбинации, на которых функция не определена, натыкаются запрещен- ными или избыточными. Частичное определение функций создает возможность факультативного доопределения функций на избыточных комбинациях, что используется для получения по возможности минимальной ДНФ. Рассмотрим пример исполь- зования факультативного доопределения частично определенной функции. На рис. 2.13 исходная функция задана в виде таблицы, где звездочкой обозначены значения функций, которые соотвс гст вуют запрещенным комби- нациям аргументов. Данные комбина- ции отражаем на диа- 1 раммс Вейча звездоч- кой. При минимизации доопределяем функцию таким образом, чтобы вся функция покрыва- лась минимальным чис- лом наибольших по Рис. 2.13. Пример минимнтаиин частично определенной функции S Xi Х| хе у у,> 0 0 0 0 * 1 1 0 0 1 1 1 2 0 1 0 1 1 3 0 1 1 1 1 4 1 0 0 * 0 5 1 0 1 0 0 6 1 1 0 * 1 7 1 1 1 1 1 размерам контуров (в данном случае двумя контурами по чет ыре единицы). Вариант доопределения функции на запрещенных комбинациях позволяет получить минимальную ДНФ. Необходимо заметить, что получен- 41
ная функция определена уже на всех комбинациях так, как это представлено в правом столбце таблицы на рис. 2.13. Совместная минимизация функций. В ряде случаев необходимо син- тезировать цифровое устройст во, имеющее несколько входов и несколько выходов. Эго обстоятельство можно использовать для совместной миними- зации булевых функций, поскольку вс все функции .могут входить одинако- вые минтермы и импликанты. Эту общую часть функций можно использо- вать многократно при реализации Bcei о цифрового устройства с несколькими выходами. С пособ совместной минимизации рассмотрим на примере. На рис. 2.14, а представлены на диаграммах Вейча три функции Vj, Vi, уо одних и тех же ар- гументов ад- Х|, го- Если подходить к минимизации этих функций раздельно, то три минимизированные функции вместе будут иметь 16 вхождений аргу- ментов (рис. 2.14, б). При совместной минимизации целесообразно отметить общие для всех функций минтермы (на диаграммах Вейча они отмечены штриховкой), а все логические функции представить в виде логической суммы общей части р и необходимых импликант, как по показано на рис. 2 14, в. Общая час гь p=x2-Xj vx2 x„ (4 вхождения) Уо = Р (nei вхождений) Уо = х2 • X, V х2 • х„ (4 вхождения) У1 = х2 ' х0 V Х1 ’ х0 х2 ' х0 (еще 6 вхождений) У2 = X, X, V X, х( V X, • х0 (еще 6 вхождении) Итого 16 вхождений У1 = pv х2 • х0 (еще 2 вхождения) у, = pv X, • Xj (еще 2 вхождения) И того 8 вхождений <>) Рис. 2.14. Диаграммы Вейча с занесенными функциями (а), минимизация без испо.'п Jo- вання общей части (6) и совместная минимизация (б) Как видим, используя совместную минимизацию, удалось уменьшить суммарное число вхож тений аргументов в функции для данного конкретного простого примера в два раза. 42
Минимизация функции «ио нулям». Выше был рассмотрен способ считывания минимизированных функций, заключающийся в объединении в контуры тех ячеек диаграммы Вейча. где функция определена единицей. Од- нако возможно объединение по тем же правилам ячеек, где функция опреде- лена нулем. В этом случае получается минимальная ДНФ инвертированно.! функции (рис. 2.15, а, б). Рис 2.15. Считывание функции «по нулям»: а — диаграмма Вейча; г5 — результаты считывания; в — диаграмма Вейча для инвертирован- ной функции Такой вариант считывания функций возможен, поскольку для инвертиро- ванной функции нули на диаграмме Вейча заменятся единицами (рис. 2.15, в). С помощью теоремы Моргана можно показать, что функции, полученные двумя способами, тождественно равны. Кар гы Карно. Разновидностью таблиц, на которых представляются ло- гические функции, являются карты Карно. Карты Карно отличаются от диа- грамм Вейча лишь способом размещения переменных. В картах Карно пере- менные перечисляются в циклическом коде или коде Грея (см. табл. 1.7). Ва- рианты карт Карно можно найти, например, в [1 I, 12]. Занесение функций на карты Карно и считывание минимизированных форм ведется гак же, как при использовании диа- рамм Вейча. 2.5. Элементная база и средства проектирования цифровых устройств Элементную базу цифровых устройств (ЦУ) составляют цифровые инте- гральные схемы (ЦИС). Со времени их изобретения (США. 1959 г.) ЦИС по- стоянно совершенствуются и усложняются. Характеристикой сложности ЦИС является уровень интет рации, оцениваемый либо числом базовых логи- ческих элементов, либо числом транзисторов, которые размешены на кри- с галле. Различия в уровне интеграции делят ЦИС на несколько категорий [II] МИС. СИС, БИС, СБИС (соответственно малые, среднее, большие и сверх- большие ЦИС ). Практическое использование находят все категории, однако с течением времени все большую долю используемых микросхем составляют схемы высокого уровня интеграции (БИС и СБИС). 43
МИС реализуют простейшие логические функции и обладают универ- сальностью — даже с помощью одного типа логического элемента (напри- мер, И-НЕ) можно построить любое ЦУ. В виде СМС выпускаются в готовом виде такие схемы, как регистры, счетчики. дешифраторы, сумматоры и г. п. Номенклатура СИС должна быть более широкой и разнообразной, -ак как их универсальность снижается В развитых сериях стандартных ИС насчитываются сотни типов СИС. ЦИС изготовляются по схемотехнологиям. ТТЛШ (транзисторно- транзисторная логика на транзисторах Шоттки), ЭСЛ (эмигтерно-связанная логика), КМОП (логика на комплементарных парах металл — окисел — полу- проводник) и др. Схсмотсхнологии КМОП и ТТЛШ стали основными. Со- временные элементы КМОП обладают рядом уникальных параметров (малая потребляемая мощность, особенно при невысоких частотах переключения, высокая помехоустойчивость, широкие допуски на величину питающих напряжений, высокие быстродействие, особенно при небольших емкостных нагрузках). Справочные данные по указанным ЦИС можно найти в [13—18]. Для проектирования цифровых устройств на основе ЦИС средней с тепени ин- теграции целесообразно привлекать системы автоматизированного проектиро- вания (САПР), такие как Mi до-Сар. O-CAD, System Mew 119| и др. В упомяну- тых САПР, как правило, входят библиотеки стандартных ЦИС, определяемых зарубежными сериями SN74. Соответствие между ЦПС отечсс г венных серий и зарубежными аналогами приведены, в частности, в [13. 17, 18]. С появлением ЬИС и СВИС схемы с тысячами и миллионами логических элементов стали размещаться на одном кристалле. При этом проблема сни- жения универсальности для ИС с жесткой структурой могла обостриться чрезвычайно: пришлось бы производить огромное число типов ИС при сни- жении объема производства каждого из типов, что непомерно увеличило бы их стоимость, так как высокие затраты на проектирование БИС.С БИС отно- сились бы к небольшому объему их выпуска. Выход и: возникшею противоречия был найден за счет переноса спе- циализации микросхем в область npoi раммирования. Появились микропро- цессоры и БИС/СБИС с программируемой структурой, или программируе- мые логические интегральные схемы (ПЛИС). Микропроцессор способен выполнять команды, входящие в ею систему команд. Меняя последовательность и состав команд (программу), можно ре- шать различные задачи на одном и том же микропроцессоре. Иначе говоря, в этом случае структура аппаратных средств нс связана с характером решаемой задачи. Эго обеспечивает микропроцессорам массовое производство с соот- ветствующим снижением стоимости. ПЛИС представляет собрй кристалл, содержащий множество лсъических бликов, межсоединения для которых назначает сам разработчик. Промыш- ленность получает возможность производить кристаллы массовым тиражом, нс адресуясь к отдельным потребителям. Разработчик сам программирует структуру ПЛИС соответственно своему проекту. 44
Два указанных метола имеют большие различия. Микропроцессоры реа- лизуют последовательную обработку информации, выполняя большое число отдельных действий, coni ветствуюших командам, что может нс обеспечить требуемого быстродействия. В ПЛИС обработка информации возможна без разбиения 'лого процесса на последовательно выполняемые элементарные действия. Преобразование данных происходит одновременно во многих час- тях устройства. Сложность устройства зависит от сложности решаемой зада- чи, чего нет в микропроцессорных системах, где сложность задачи влияет лишь на программу, а нс на аппаратные средства ее выполнения. Таким образом, ПЛИС могут быстрее решать задачи, сложность кото- рых ограничена уровнем интеграции микросхем, а микропроцессорные сред- ства— задачи неограниченной сложности, но с меньшим быстродействием. Современные ПЛИС выпускаются рядом производителей, среди кото- рых можно назвать следующие: ALTERA (hitp:/www aliera.com), XILINX (http:/www.xilinx.com), Actel (http:/www.actel.com). Описание выпускаемых семейств ПЛИС можно найти, например, в [20-24] или на указанных интер- нет-страницах производи гелей. Практическая реализация устройств на основе ПЛИС невозможна без применения САПР. Как правило, фирмы-производители ПЛИС предлагают разработчикам свои пакеты САПР, позволяющие создавать проекты, наибо- лее эффективно использующие ресурсы производимых ПЛИС. Остановимся подробнее на САПР фирмы ALTERA Это пакеты Vfta+Plus II и Quartus II, описание которых можно найти в [25]. Необходимо отметить, что в настоящее время производитель поддерживает и развивает САПР Quartus II и поэтому ознакомиться с возможностями последних версий оперативно можно на интсрнет-странице. Сис.ема автоматизированного про- ектирования Quartus II — интерактивный пакет, позволяющий провести все процедуры проектирования цифровою устройства на ПЛИС. Это ввод про- екта, анализ и синтез, размещение и развоока проекта в кристалле, врсиен- ной и злектрический анализ, моделирование, программирование и конфигури- рование ПЛИС. Ввод проекта может быть в двух видах — графическом и текстовом. Дтя графического ввода используется специальный редактор (Quartus II Block Editor). Данный ввод наиболее прост и поэтому может быть рекомен- дован для начального освоения технологии проектирования цифровых уст- ройств на ПЛИС. В частности, все схемы цифровых устройств, рассматри- ваемые в данном пособии, могут быть легко введены в САПР с помощью графического редактора, естественно, в условных графических обозначениях, принятых в стране-прои шоди теле. Текстовый ввод осуществляется с помощью текстового редактора (Quartus II Text Editor). В этом варианте ввода проектируемое устройство описывается в виде текста (кода), coci авленного на одном из языков описа- ния цифровых устройств. Фирмой ALTERA разработан язык, называемый A11DL (Altera Hardware Description Language). В отличие от других языков, AHDL более прост в изучении и оптимизирован по своим возможностям для 45
проектирования на конкретных ПЛИС. Однако, несмотря на свою относи- тельную простоту, он содержит типичный для современных языков описания аппаратуры набор высокоуровневых конструкций. Достаточно полное описа- ние языка AHDL представлено в [26]. Необходимо отметить, что приводимые в данном пособии текстовые описания различных устройств (таблицы истин- ности, логические функции и т.п.) практически в том же виде могут быть представлены в проекте на языке AHDL. Креме того, возможен текстовый ввод проекта на стандартных языках описания более высокого уровня: Verilog HDL (Verilog Hardware Description Language) и VHDL (The Very Hardware Description Language). Описание язы- ка VHDL можно найт и, например, в [271 Языки высокою уровня меньше свя- заны с аппаратными средствами и поэтому более универсальны, однако по этой же причине, как правило, требуют больших ресурсов ПЛИС. При графическом и текстовом вводе проекта используются различные библиотеки. В поставляемый пакет Quartus 11 (версия 8.1) входят следующие библиотеки. Библиотека примитивов (primitives), содержащая логические элементы НЕ (NOT). И (AND), ИЛИ (OR). ИЛИ-HE (NOR), И НЕ (NAND). ИСКЛЮ- ЧАЮЩЕЕ ИЛИ (XOR), триггеры, буферные элементы, входные и выходные выводы и т.д. Библиотека макрофункций (maxplus2), представляющая ЦИС средней степени интеграции серий SN74. Библиотека мегафункции/паряиегризуемых функций (mcgafunc- tions/LPM — Library of Pa ramcieri/ed Modules), в которую входят различные цифровые устройст ва, такие как дешифраторы, мультиплексоры, счет чики, регистры, сумматоры, перем ножи гели и т.п., параметры которых (например, разрядность счетчиков) могут задаваться разработчиком. Библиотека пользователя (user libraries) создается разработчиком и может включать в себя вес возможные оригинальные цифровые устройства, в том числе и мегафункции. Осуществив в том или ином виде ввод проекта (проектируемого цифро- вого устройства), средствами САПР проводятся его анализ, синтез, размеще- ние и разводка проекта в выбранной ПЛИС, временной и электрический ана- лиз. моделирование, программирование и конфигурирование ПЛИС. Моделирование (simulation) в САПР возможно в двух вариантах - функциональном (functional) и временном (timing). Функциональное модели- рование позволяет оценить правильность алгоритма функционирования уст- ройства. а временное моделирование проводится с учетом задержек в блоках ПЛИС и позволяет определить параметры быстродействия устройства. Разработанный и верифицированный проект с помощью программатора (programmer) САПР загружается в ПЛИС. Помимо этого, существует воз- можность перенесения разработанного проекта в специализированную СБИС, называемую ASIC (Application Specific Integrated Circuit), Реализация устройств на таких заказных или полузаказных БИС^СБИС целесообразна при больших объемах производства данных устройств и систем. 46
Вопросы и упражнения 1. Дай гс определения цифровых устройств комбинационного и последовательное! ного типов. 2. Докажите справедливость логического тождества (х2 v \ ) (х_ v xt) = = х( VX2--\,VX|-X<J. 3. Считая теорему Моргана для двух аргументов дока >анной. обобщите ее для произ- вольного числа аргументов. 4. Определите общее число логических функций одного аргумента, перечислите их и назовите соответствующие логические элементы. 5. Определите общее число логических функций восьми аргументов. 6. Датй'е определение минтерма и макс герма. Запишите аналитические выражения для Л/п;з и Мхлц- 7. Функцию у = хт х^' х0 v х, - Х| v х^ v х7 - X] представьте таблично, в СДНФ. СКИФ и в ьиде временных диаграмм. 8. Дайте определение функциональной полноты набора логических элементов Иссле- дуйте функциональную полноту набора логических элементов. реализующих функ- цию у = X] v Xj). 9. Определи те взаимосвязь функций у( = £(0.1.3.7) и у0 = £(2,4. 5,6). 10. С какой целью проводится минимизация логических функций? Дайте определение канонической задачи минимизации. 11. Дайте определения сокращенной, тупиковой и минимальной ДНФ 12. Минимизируйте функцию у = £( 1.3.4.5.9.11.12.13). 13. Мини лизируйте функцию у = х5 - х-> • Xj v х, х, Х| v х> • Х] при условии, что импли- кангы Х| • xag х-, - х, • , х3 х, - xt х() соответствуютзапрещенным комбинациям. 14. Минимизируйте функцию, заданную временными диаграммами 15. Минимизируйте совместно следующие логические функции у2 = £(0. 2, 6. 7), у, = 0. 2, 5.6, 7) и у0 = £(0. 1. 2.6. 7). 47
3. КОМБИНАЦИОННЫЕ ЦИФРОВЫЕ УСТРОЙСТВА 3.1. Особенности функционирования и синтеза комбинационных цифровых устройств У комбинационных цифровых устройств (КЦУ) состояние выхода зави- сит только от состояний их входов в данный тактовый момент времени. Син- тез (логическое проектирование) комбинационных устройств осуществляется на основе математического аппарата, изложенного в предыдущей главе. Для построения рассматриваемых устройств используется какой-либо функцио- нально полный набор логических элементов для простейших КЦУ, например, серия цифровых интегральных схем (ЦИС) или программируемые логические интегральные схемы (ПЛИС). При проектировании схем комбинационных цифровых устройств на ЦИС средней степени интеграции целесообразно придерживаться следующей последовательности этапов: • кодирование входных и выходных переменных и переход от словес- ного задания функции к табличному: • минимизация функции или получение ее минимальной ДНФ; • переход от минимальной ДНФ к минимальной форме в исполь зусмом базисе (функционально полном наборе) или перевод функции из ДНФ в структурный вил в используемом базисе; • составление схемы устройства; • проверка правильности функционирования устройства. При синтезе цифровых устройств на основе ПЛИС некоторые этапы могут выполняться с помощью САПР. В качестве примера рассмотрим синтез решающего устройства, задавае- мого следующим описанием. Имеется три датчика, которые одновременно формируют на своих выходах сообщение «да» или «нет». Необходимо синте- зировать на элементах Шеффера цифровое устройство, обеспечивающее принятие решения по следующему алгоритму. Принимается решение «да», если сообщение «да» имеется или только на выходе первого датчика, или на выходах первого и третьего, второю и третьего, или на выходах всех грех датчиков. Число входов решающего устройства (комбинационного цифрового уст- ройства). очевидно, равно 'рем (хт, Х|. х«): выход один (г). Условимся, что сообщению «да» соответствует си шал «логическая единица» сообщению «нет» — «логический ноль» (х,. у = 0). Исходя из описания функционирования устройства и принятою кодиро- вания входных и выходных переменных, заполняем таблицу истинности (табл. 3.1). Переходим к СДНФ функции, реализованной устройством, по изложен- ному во второй главе правилу: 48
У = Х2 Х| • v Xn ' Х| • Х() V Х2 Х| V Х2 xf Х|). (3.1) Минимизируем данную функцию по методу Вейча — Карно (рис. 3.1. а) Из диаграммы Вейча находим минимальную ДНФ функции у= х2 Xj v Х| - (3.2) Для перевода полученною выражения в струк- турный вид в базисе элементов Шеффера необходимо произвести двукратное инвертирование функции и преобразование по теореме Моргана: Таблица 3.1 Таблица истинное hi S Хт Х1 Х<| у и 0 0 0 0 1 0 0 1 1 2 0 I 0 0 3 0 1 1 0 4 1 0 0 0 5 1 0 1 1 6 1 1 0 1 7 1 1 1 1 У = Xj • Xj V X, Х<) = Х2 Х| V Х| • х0. (3.3) По выражению (3.3) на рис. 3,1 б изображена схема синтезированного решающего устройства. Рис. 3.1. Синтез комбинационного цифрового устройства: а— диаграмма Вейча; б — схема;«— временные шкнраммы Влияние задержек в логических злемсигах на функционирование цифровых устройств. При синтезе цифровых устройств на интегральных схемах одной из основных проблем является обеспечение их функциональ- ной надежное ги Под функциональной надежностью комбинационной схемы понимается ее свойство точно выполнять алгоритм функционирования, ины- ми словами, сигнал на выхо те каждого логического элемента схемы должен соответствовать значению логической функции, реализуемой данным )ле- ментом. 49
В булевой алгебре. используемой для построения математических моде- лей физических элементов схем, не отражаются процессы перехода из одного состояния в другое, так как булева алгебра не имеет в качестве аргумента параметра времени, т. е. ее аппарат нс является временным. Однако наличие задержек в реальных логических элементах приводит к нарушению соответ- ствия сигналов логической функции в моменты переходных процессов. За- держки порождают так называемые состязания сигналов, или гонки сигналов и, как следст вие этого, вызывают неустойчивую работу цифровых устройств. В зависимост и от условий перехода устройства от одного состояния к ipy- гому состязания подразделяются на статические и динамические |Ю|. Если для двух последовательных соседних состояний входов состояние выхода должно остаться неизменным, то состязания называются статическими. В качестве примера обратимся к устройству на рис. 3.1. Проанализируем работу устройства с учетом задержек логических элементов, для чего усло- вимся, что все элементы имеют одинаковую задержку 7\ср. Возникающую задержку на каждом из выходов логических элементов но отношению к моменту появления ст нала на входе устройства н| схеме будем условно обозначат ь знаком «~» («тилаьда») над конкретным значением данной пере- менной (0 или 1) Так, запись 1 означает, что сигнал 1 на данном выходе появится через Гзср после подачи входного возмущения на вход. Двойную, тройную задержку будем обозначать соответственно в виде -2, -3 и т. д. Допустим, в исходном состоянии на всех входах устройства были напряжения, соогве гст вующие логической единице, что обозначено на схеме и на временных диаграммах. В этом случае на выходах всех логиче- ских элемен гов будут сш налы, отображенные на схеме и временных диа- граммах. Пусть в момент Т\ изменяется состояние на входе л'ь Как видно из логической функции (табл. 3.1), состояние на выходе измениться не должно, однако в реальной схеме за счет задержек логических элемен гов происходит неодновременное изменение состояний на выходах элементов DD^ и HDi. В результате этого на выходе устройства формируется импульс длительностью Г3.ср, который может, воздействуя на последующие устройства, например элементы памяти (триггеры), изменить их состояние, т. е. нарушить нор- мальное функционирование устройства. Заметим, что причиной появления таких незапланированных импульсов явилось разветвление сигнала со входа Xi по двум цепям (DDb DD2) и (DD,), имеющим разные задержки, а затем объединение этих сигналов на элементе DDi. Из рассмотренного ясно, что сигнал на выходе комбинационного уст- ройства. в котором возникает эффект состязаний, через некоторое время принимает правильное значение, т. е. функционирование не нарушайся. Од- нако если эго устройство подключено к элементу памяти, то появление неза- планированных импульсов может привес in к сбоям в работе всего комп- лекса. Поэтому в ряде случаев с эффектом состязаний необходимо бороться. Можно назвать следующие основные способы устранения эффекта состязаний: 50
• введение логической избыточное! и; • подбор задержек логических элементов; • введение дополнительной синхронизации (тактирования). Рассмотрим способы устранения эффекта состязаний на примере уст- ройства, синте шрованного выше. Введение логической избыточности. Для получения КЦУ, свободного от состязаний, необходимо и достаточно для каждой пары смежных состоя- ний входов, для которых функция имеет одноименное (нулевое или единич- ное) состояние, найти по крайней мере одну импликанту, покрывающую оба входных состояния [1]. Для функции, представленной на диаграмме Вейча (рис. 3.1, а и 3.2), необходимо иметь контур, объединяющий две единицы столбца хзхо, что приведет к следующей функции: у= х2 -X] V Х| V х? Хп- (3.4) Рис. 3.2. Сишез КЦУ, свободною oi сосиваний введением логической избы i очное] и Функция ().4) содержит избыточную импликанту х2-\), но при этом ус гранен эффект состязаний. Схема устройства, реализованного по выраже- нию (3.4) в базисе элементов Шеффера, представлена на рис. 3.2. При переключении сигнала на входе ду в данной схеме состязания не возникают, поскольку дополнительно введенный элемент DDs нс изменяет своего состояния (0), что блокирует элемент DDj. Таким образом, узд.тось построить схему, свободную от состязаний, путем введения избыточности (дополнительно введен элемент DD5). Подбор задержек элементов. Для устранения эффекта состязаний в схе- ме (рис. 3.1. б) по данному методу необходимо уравнять задержки в ветвях распрос гранения сигнала с входа х,. Для этого в одну вегвь вводим повтори- тель, имеющий такую же задержку, как и остальные элементы (рис. 3 3, а). При переключении сигнала на входе Х| за счет введения повторителя DD5 сигналы на выходах элементов DD? и DD изменяются одновременно, и, сле- довательно, на выходе устройства незапланированный импульс нс появится. 51
DD$ «) б) Рис. 3.3. Синтез КЦУ, свободного oi сосвианнн подбором задержек элементов (д) и вве- дением ।актирования (0) Применение данного способа устранения состязаний нс всегда возмож- но, поскольку элементы имеют разброс задержек и требуется их подбор для каждо! о экземпляра устройства. Введение тактирования. Этот метод базируется на том, что сигнал на выходе устройства, в котором возникает эффект состязаний, через опреде- ленное время принимает правильное значение. Следовательно, если переда- вать информацию потребителю после завершения переходных процессов, то можно избежать неприятных последствий эффекта состязаний. Для этого в устройство (рис. 3.3, б) вводят дополнительный элемент памяти (D-триггер), который передаст сигнал с выхода устройства у, если тактирующий сигнал С = 1. и сохраняет предыдущее состояние, если С = 0. Из приведенного анализа схемы рис. 3.1. б следует, что через ЗТ1ср на се выходе сигнал принимает правильное значение (переходные процессы за- вершились). Таким образом, необходимо, чтобы ст нал синхронизации (С=1) появлялся не ранее, чем через 37^ср после изменения входных сш налов. Дополнительно введенный триггер DD; (рис. 3.3, б) обеспечивает связь между цифровым устройством, в котором возникает эффект состязаний, и потреби елем информации Выходом устройства в этом случае является выход г,, сигнал с которого снимается после переключения [риггера. Устранение состязаний сигналов в цифровых устройствах требует вне- сения избыточности в схему, т. е. введение дополнительных элементов, и по- этому оно может быть рекомендовано только в том случае, когда состязания приводят к нежелательным последствиям. 3.2. Кодопреобразователи Кодопреобразователи осуществляют преобразование какого-либо кода входного числа в другой (в общем случае произвольный) код на выходе. За- дача преобразования кодов возникает в результате тою. что отдельные узлы и устройства цифровых систем могут работать в различных кодах, и нужно иметь связующее их звено (преобразователь кода). Кодопреобразователи мо- гут быть как последовательностного, так и комбинационного типов. В дан- ном разделе рассматриваются комбинационные (параллельные) колопреобра- 52
зователи. которые легко синтезируются методами логического проектирова- ния комбинационных устройств. Кодопреобразователи общего вида. В качестве примера рассмотрим синтез кодопреобразователя числа из прямого натурального кода 8421 в дво- ично-десятичный код 2421. Составим таблицу истинности такого кодопреоб- разователя (табл. 3.2). 1 аблица 3.2 Таблица ист и пост и кодопреобразователя S Код 8421 Код 2421 Х1 х2 Х| Хо Уз У'- У1 Уо 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 э 0 0 1 0 0 0 1 0 3 0 0 1 1 0 0 1 1 4 0 1 0 0 0 1 0 0 5 0 1 0 1 0 1 0 1 6 0 1 1 0 0 1 1 0 7 0 1 1 1 0 1 1 1 8 1 0 0 0 1 1 1 0 9 1 0 0 1 1 1 1 1 Из табл. 3 2 видно, что уо = .гц и vj = Г3, и поэтому для этих функций изо- бражать диаграммы Вейча не надо. Для нахождения минимальной ДНФ функций У| и уз занесем их на диаграммы Вейча фис. 3.4. а). Свободные клетки отображают избыточные комбинации. Кодопреобразователь может быть реализован на пяти двухвходовых элементах Шеффера, три из них рабо- тают в режиме инверторов (рис. 3.4, б). Рис. 3.4. Преобразователь кода 8421 в код 2421: « — диш раммы Вейча. б — схема; в — условное i рафическос обозначение 53
Преобразовагель прямого кода в обратный функционирует в соответ- ствии с табл. 1.3 (см. с. 12). Ул, = *3i,; Yi =*,@4,; i=0,1,-, k-1, (3.5) 1дс хЯ1, yJH — знаковые разряды чисел Хи Y. Из (3 5) следует, что для построения преобразователя прямого кода в обратный необходимо произвести поразрядное суммирование по модулю два всех разрядов со знаковым разрядом. Схема, реализующая выражение (3 5), может быть легко построена из имеющихся в сериях ЦИС наборов элсмен гов «ИСКЛЮЧАЮЩЕЕ ИЛИ» и поэтому в данном пособии нс приводится. Преобразователь прямого кода в дополнительный реализует более сложный алгоритм, заключающийся (£ 1.2) в переводе прямого кода в обрат- ный и прибавлении единицы. На основе >того алгоритма преобразователь может быть построен последовательным соединением преобразователя пря- мого кода в обратный и сумматора, на второй вход которого подастся код числа I. Однако возможен и другой вариант его построения 1111. Сопостав- ляя прямой и дополни тельный коды (см. табл. 1.3), заметим, что для положи- тельных чисел (.г3|| = О) они совпадают друг с другом, а для о грицатсльных чисел (.r31l = 1) дополнительный код отличается от прямого инвертированием старших разрядов от к-1 до i +1 включительно (1 — номер младшего разряда, содержащего единицу). Остальные разряды остаются неизменными. Анали- тически перечисленные правила записываются выражением У,„=*„,- Yi = х, @[*я,(\-| v х;_2 V...VX, vxo)]; i = 0. 1.k-1 (3.6) Ila рис. 3.5 представлена синтезированная по (3.6» схема преобразователя пятиразрядного (включая знаковый разряд) прямого кода в дополнительный. Рис 3 5. Схема преобразователя при мою ко та в дополнительный Шифраторы. Шифраторов называется преобразователь входных ча- се ?. представленных в коде «1 из пт», в выходные числа в патура. омом двоич- ном коде. В условном трафическом обозначении шифратора (рис. 3.6, б) ис- пользуются буквы CD от слова coder Если требуется, например, перевести 54
код «I из 4» в натуральный двоичный код 21, то работу такого шифратора можно описать с помощью таблицы истинности (рис. 3.6, а). Рис. 3.6. Шифратор: а — таблиц! нс тинное; и; б — условное |рафнчсскос обозначение; « — диаграммы Вейча: г — пог ические функции; б — схема шифратора на тлементах Пирс;. Синтез шифратора проводится по методу логического проектирования комбинационных цифровых устройств. Необходимо заметить, что пустые ячейки на диаграммах соответствуют нерабочим комбинациям на входе (их всего двенадцать), т.е. являются запрещенными, и поэтому в этих ячейках функции можно доопределят ь таким образом, чтобы ДНФ были минимальны. При синтезе шифратора на элементах Шеффера целесообразно объеди- нять в контуры единицы: а при синтезе шифратора на элементах Пирса ока- зывается наилучшим объединение в контуры нулей, как это показано на рис. 3.6. в. Получаемые при этом минимальные ДНФ функций и схема шиф- ратора изображены на рис. 3.6. г и д. Шифраторы входят в выпускаемые серии НИС. Например, в сериях име- ется интегральная схема типа ИВ; (SN148)— шифратор, преобразующий код «I из 8» в код 421. Дешифраторы. Дешифраторы выполняют функции, обратные функ- циям шифраторов, т.е. осуществляют преобразование входного числа, пред- ставленного в натура 1ьном двоичном коде, в код «1 из ш» Иными словами, дешифратор при наличии определенной комбинации на входах обеспечивает появление логической единицы на одном из его выходов. В общем виде для к переменных на входе можно организовать 2 комбинаций или записать 2 различных чисел. В условном графическом обозначении (рис. 3.7. 6) дешиф- ратор отображается буквами ОС от слова decoder. Дешифратор, осуществляющий индикацию каждой из возможных ком- бинаций на входе, называется полным. Таблица истинности дешифратора, преобразующего двухразряднос число X из кода 21 в код «I из 4», представ- лена на рис. 3.7. а. 55
a) Рис. 3.7. Дрцц|фр:нпр: а — таблица истинности; б — У ГО: в — схема Из таблицы видно, что логические функции, выполняемые дешифрато- ром, являются минтермами (конституситами единицы) входных аргументов Уо = хг\ь У| = Х]-х0; у2 = х,х0; у3 = х,-х0. Исходя из этих выражений, строится схема дешифратора, которая пред- ставлена на рис. 3.7, в. В дешифраторах часто предусматривается операция стробирования, разрешающая выработку выходных сигналов только в при- сутствии разрешающего сигнала С = 1 на входе стробирования С (на рис. 3.7, в показан пунктиром). Замет им. что в отсутствии разрешающего сиг- нала (С = О) на всех выходах дешифратора устанавливается сш нал «логиче- ский ноль» независимо от сигнала на информационных входах. Аналогичным образом строятся дешифраторы на большее число входов. Дешифраторы входят в серии ЦИС. Например, имеются чстырехвходовые дешифраторы ИДЗ (SNI54): сдвоенные двухвходовые дешифраторы ИД4 (SN155); грсхв.ходовыс дешифраторы ИД7 (SN138); двоично десятичные чсты- рсхвходовые дешифраторы ИДК) (SN145); сдвоенные двухвходовые дешиф- раторы с индивидуальными входами выборе! и разрешения ИДИ (SN139). Наличие входов стробирования у перечисленных ЦИС позволяет наращивать число информационных входов (размерность) дешифраторов 3.3. Мультиплексоры и демультиплексоры Мультиплексором называется КЦУ, осуществляющее передачу юги- ческоао сигнала с одного из информационных входов на выход в зависи мости от комбинации сигналов на управляющих входах. Мультиплексоры исполь- зуются как многопозиционные переключатели для выборки цифровых кана- лов (рис. 3.8. а) или как логические схемы, реализующие любые функции трех (чстырсхвходовой мультиплексор), четырех (восьмивходоьой мультип- лексор) и более переменных. 56
Рис. 3-8- Мультиплексор: а — модель; б — У ГО: « — таблица истин i гости В условных графических обозначениях (рис. 3.8, о) функция мультип- лексирования именуется MUX (от слова multiplexor). Функционирование чс- т ырехвходового мультиплексора (мультиплексора 4-=> 1) можно представить таблицей истинности (рис. 3.8, в), в которой информационные входы обозна- чены буквами хз, хл, Х|, х<). а управляющие — й|. ац. Из таблицы истинности можно получить логическую функцию, выполняемую мультиплексором в ДНФ у = х^) Ц| • atj v Х| • 3| • Ujj v х2 • 3| а0 v Х3 а, а^. (3.7) Данное устройство может быть построено на любом ФПН. по представ- ленному методу синтеза КЦУ. С целью расширения функциональных воз- можностей в мультиплексор может быть введен дополнительный управляю- щий вход стробирования, работающий аналогично соотвстст вуюшему входу дешифратора. Мультиплексоры входят в библиотеки САПР ПЛИС и в серии ЦИС с числом информационных входов до 16 [13—181. Так, например, в сериях ЦИС имеется микросхема КП7 (аналог SN151), представляющая собой вось- мивходовой мультиплексор (мультиплексор 8=>1) со стробированием и двумя комплементарными выходами г и у (рис 3.9. а). Мультиплексор имеет также инвертированный вход стробирования С, при подаче на который высокого уровня на выходах г и у устанавливается соответственно низкий и высокий уровни напряжений независимо от сигналов на других входах. Из схемы мультиплексора можно определить логическую функцию, выполняемую данным устройством: у = С • х7 • а2 • Д| afl v С • х^, • а2 а( • а0 v С х5^й а( а0 v С • х4 • а2 • а, а0 v vC-X3-a2-al -а(1 vC’X2a2aj -a(1vC Xj -a2 aj -a() vC • x0 a2-aj-at). (3.8) На основании схемы мультиплексора и выражения (3.8) его функциони- рование можно задать также таблицей истинности. 57
Рис. 3-9. Мультиплексор КП7 и — схема: б — схема мульппысксора с (>4 входами Методы увеличения числа входов мультиплексоров продемонстрируем на примере ЦИС вида КП7. Вариант построения мультиплексора с числом входов, равным 64, из восьмивходовых мультиплексоров представлен на рис. 3.9. б. Мультиплексор, помимо своей основной функции — передачи сигнала с того или иного входа на выход, может быть использован как универсальный логический модуль (УЛМ), г. е. как устройство, на основе которого можно реализовать проц [вольную логическую функцию Методы синтеза КЦУ на основе мультип тексоров рассмотрены, например, в [ 11. Демультиплексор. Деиучыттлексором называется КЦУ, осуществ- ляющее передачу сигнала с информационного входа на один из информацион- ных выходов в зависимости от комбинации сигналов на управляющих входах. Демультиплексоры используются как многопозиционныс переключатели для распределения цифровых сигналов или как дешифраторы со стробированием. Рассмотрим демультиплексор с четырьмя выходами (демультиплексор 1 =х> 4), основные данные по которому приведены на рис. 3.10. В условном графическом обозначении (рис. 3.10, б) демультиплексор отмечается бук- вами DX. S8
Рис. 3.10. Демультиплексор: а — модель: б — У ГО: в — таблица истинности Логические функции, выполняемые демультиплексором, могут быть лс1 ко получены из его таблицы истинности (рис. 3.10, в) у, = х-ага0; у? = х-а,-а0; У|=х-ага0; у0 = хага0. Сравнивая таблицы истинности демультиплексора (рис. 3.10, а) и дешиф- ратора (см. рис. 3.7), можно заметить что при х(С) = I демультиплексор вы- полняет функции дешифратора. При произвольном сигнале С демульти- плексор выполняет также функции дешифратора со стробированием. В этом случае в качестве информационных входов дешифратора используются управляющие входы демультиплексора (аь а(1), а в качсстое стробирующего входа С — информационный (х). Демультиплексоры входят в серии ЦИС. Например, в сериях имеется ЦИС вида ИДЗ (SNI54). представляющая собой дешифратор-демуль- типлексор с шестнадцатью инвертированными выходами (демультиплексор 1=516) и двумя конъюнктивно-связанными информационными входами. Демультиплексоры входят также в библиотеки САПР ПЛИС 3.4. Компараторы Компараторы (устройства сравнения чисел} выполняют операцию опре- деления отношения между ов\ ия чш нами А и В. Основными отношениями можно считать «равно» и «больше». Другие отношения могут быть опреде- лены через основные. Так, признак неравенства чисел можно получить как инверсию признака равенства y,VB = у.^в ’ отношение «меньше» — путем перемены местами аргументов в функции ул,.в (y.v.B = Ув<л)- Компараторы находят широкое применение в системах цифровой обра- ботки радиотехнических сигналов, например, для сравнения выходного сиг- нала приемного устройства PJIC с пороговым сигналом в устройствах изме- рения задержки и т. д. Устройства сравнения на равенство строятся на основе поразрядных операций над одноименными разрядами обоих чисел. Признак равенства чи- сел имеет единичное значение ( уЛ=в = । )» eCJHI в0 исех одноименных разря- 59
ш-1 . ni-1 . дах чисел А= £2‘ а, и В - £2‘ -Ц содержатся либо единицы, либо нули. i=0 i=0 В лом случае логическая функция, реализуемая ус тройством сравнения на равенство, имеет вид Ул=в = a,„_| ® bm_! v аП1_2 фbm_2 v... v а, Фb, v а(, ФЬо. (3.9) На основании выражения (3.9> устройство сравнения легко строится, на- пример, на ЦИС вида JHIS (SN86) и ЛЛЗ (SN00). Обычно оказывается удобным иметь на входе и выходе компаратора все три возможных признака сравнения — Ул В’Уа в» Ул^в- )том случае функционирование компаратора двухразрядных двоичных чисел (операндов) определяется табл. 3.3. Таблица 3.3 Таблица истинности компаратора Входы сравниваемых чисел Входы наращивания Выходы сравнения а?, bi а2,Ь2 а,.Ь| ач.Ь хд<н хл=в хл>в У \<в Уд=в У \>н аз>Ь,1 * * * * * * 0 0 1 Яз<1»з ♦ * * * ♦ * 1 0 0 Яз=1и а,>Ь, * * * * * 0 0 1 ад=Ьд а2<Ь2 * * * * * 1 0 0 ад=Ьд а2=Ь2 а,>Ь| * * * * 0 0 1 •Д=ЬД а2=Ь- а|<Ь| * * * * 1 0 0 яд=Ь» Я2=Ь2 а,=Ь, я<|>Ь(| * * 0 0 1 ад=Ьд а2=Ьг Я|=Ь| ао<Ьо * * * 1 0 0 ад=Ьд я2=Ь2 я|=Ь| a()=l\, 0 0 0 1 0 1 яд=Ьд а2=Ь2 ai=b! я», =bu 0 0 1 0 0 1 ад=Ьд а2=Ь2 a.=b| яо=Ьп 1 0 0 1 0 0 ад=Ьд «2=1'2 а,=Ь| а<|=1>) 1 0 1 0 0 0 ад=Ьз а2=Ь2 а|=Ь] ас=Ьо * 1 * 0 1 0 По шданной таблице истинности компаратор может быть синтезирован рассмотренными методами. Существуют компараторы в интегральном ис- полнении. Так, в серии входит ЦИС вида СП1 (SN85). представляющая собой четырехразрядный компаратор [181. Компаратор СП1 функционирует в соот- ветствии с табл. 3.3 и имеет 11 входов. Четыре пары входов (ajby, а^Ьэ, ajbj, ацбр) принимают для анализа два четырехразрядных числа 4 и В. Три входа Х/VB’хл=в, хд<в необходимы для наращивания разрядности компаратора Компаратор имеет три выхода результатов сравнения уЛ.в. уч в, Уд<в- Так, например, если старшие разряды находятся в отношении йз>Ь^ (табл. 3.3', то при любых сигналах на остальных входах на выходе y/VB будет присутство- вать сигнал единица, а на остальных выходах — нули. Пять последних строк табл. 3.3 отображают режим наращивания разрядности (каскадирование) компараторов. При последовательном наращивании выходы Уд>В’ У\-в>Уа<в компаратора, сравнивающего младшие четыре разряда опсран- 60
дов, следует присоединить к одноименным входам последующего каскада (рис. 3.11). Для правильной работы многокаскадного компаратора на входы первой ЦИС хЛ..в и хЛ<в следует подать сигналы, соответствующие нулю, а на вход хЛ. в — единице. о 1 2 3 I? О 1 2 3 Рис. 3.U. Увеличение разрядноеiи комнараюров ____ ' ' _____Ул-н _____Ул<в Этим способом при трех компараторах СП.1 можно сравнивать два две- надцатнразрядных числа. Аналогично можно строить последовательный компаратор для сравнения чисел большей разрядности. Однако каждый по- следовательный каскад добавит время задержки компаратора. Для уменьше- ния общей задержки целесообразно использовать параллельное включение компараторов 11 ]. Его время задержки равно удвоенной задержке каждого парциального компаратора. 3.5. Арифметические устройства К арифметическим устройствам относятся сумматоры, арифметико- логические устройства (АЛУ) и перемножитсли многоразрядных двоичных чисел (операндов). Сумматоры. Сумматор—узел. обеспечивающий суммирование двух чи- сел Сложение в двоичной системе счисления яьлястся самой важной ариф- метической операцией, гак как оно лежит в основе других арифметических операций: вычитания, умножения, деления Основными устройствами, обес- печивающими племен гарные операции являются одноразрядные суммат оры. Все сумматоры подразделяются на две основные группы: комбинацион- ные — не обладающие функцией хранения, и накопительные — обладающие функцией хранения информации. Каждый из указанных типов сумматоров подразделяется на сумматоры параллельного действия, обеспечивающие суммирование m-разрядных кодов во всех разрядах одновременно, и одно- разрядные суммирующие схемы «одноразрядные сумматоры). Последние явля-ются основой построения сумматоров — как последовательною, так и параллельного действия. В данном параграфе рассматриваются комбинаци- онные параллельные сумматоры — как одноразрядные, так и многоразряд- 61
ные. В связи с тем что сумматоры широко используются в цифровой аппара- туре они выпускаются также в виде интегральных схем. Полусумматор реализует операцию сложения r)«v.v двоичных оонораз- рядных чисел и формирует на своих выходах сигналы суммы и переноса в старший разряд. В условном обозначении (рис. 3.12, а) полусумматор обо- значается буквами HSot слова halfsuminator а) Рис 3.12 Полусумматор: а — УГО; б — таблица истинности; в — схема Исходя из правил сложения двоичных чисел, можно заполнить таблицу истинности полусумматора (рис. 3.12, б). Из таблицы видно, что полусумма- тор выполняет лог ические функции s - а ® Ь, сто = а b, и поз тому его схема может быть реали зована на двух логических элементах (рис. 3.12, в). Задерж- ки распространения сигналов со входа на выход полусумматора определятся задержками соответствующих логических элементов. Одноразрядные полные сумматоры. Одноразрядный полный сумма- тор в отличие от полусумматора обеспечивает сложение трех двоичных цифр —слагаемых а, b и сигнала переноса cri из предыдущего младшего раз- ряда, а на выходе формирует сумме трех цифр s, и сигнал переноса в сле- дующий разряд сто. В условном графическом обозначении одноразрядного полного сумма- тора (рис. 3.13, а) присутствуют буквы SM от слова summator. Данные его синтеза в базисе элементов И-НЕ приведены на рис. 3.13. Считая задержки логических элементов сумматора одинаковыми (рис. 3.13, г)), можно опреде- лить задержки распространении сигналов от входов a, b, cri до выходов s и сто. В наихудшем случае они будут составлять величины Однора (рядный полный сумматор входит в серии интегральных схем [13—18]. Например, в серии ЦИС входит одноразрядный полный сумматор ИМ1 (SN80) с дополнительной логикой на входе Параметры быстродействия таких сумматоров прив<эдятся в справочниках, и обычно они определяют за- держки, возникающие при распространении сигнала с какого-либо входа на выход. 62
s = a b- cri • a • b• cri a • b cri -a - b- cri cro= a - b-a cri b-cri Рис 3.13. Синтез однора грядною полного сумма гора а — УГО; о — гайанца исшиисили. « — диаграммы Вейча; г — югичсскнс функции в ещук- 1 урной форме: д — схема сумматора на элементах Шеффера Арифметические сумматоры многоразрядных двоичных чисел. Многоразрядные сумматоры должны обеспечивать сложение двоичных мно- горазрядных операндов А и В. Допустим, необходимо сложить два четырех- 3 3' разрядных операнда А=£2‘-а, и В = ^2| Ь|. Исходя из правил сложе- i=0 i=o ния двоичных чисел, мы должны последовательно, начиная с младшего раз- ряда, суммировать три цифры — цифры данного разряда слагаемых a,, bj и сигнал переноса из предыдущего младшего разряда спц. Следовательно, сумматор многоразрядных операндов может быть построен по схеме, изо- браженной на рис. 3.14. На входы aj и bj каждого из сумматоров подаются разрядные коэффици- енты (цифры 1 или 0) слагаемых, на вход cij, подается сигнал с выхода пере- носа сгоц предыдущего сумматора (на вход переноса сумматора младшего разряда постоянно подастся сигнал О). Сумма двух чисел формируется на выходах Si одноразрядных сумматоров, причем сигнал старшего разряда сум- мы формируется на выходе переноса одноразрядного сумматора старшего разряда. 63
Рис. 3.15. Меменные диаграммы cm налов арифме! и ческою сумматора Такие сумматоры четырехра грядных двоичных операндов входят в серии ЦИС под шифром ИМЗ (SN83), ИМ6 (SN283). Пусть при t < Т| сумматор осуществлял сложение чисел А = (ОООО)? и В = (11 11)?. Оценим быстродействие сумматора, для чего в момент Т| подадим на его вход число А= (0001)2, а число В оставим без изменения. После подачи указанных чи- сел на входы спустя время Tj.a.s получим сигнал суммы s« = 0 (рис. 3.15) и через Т<.:ц.го — сш нал переноса сгоу = 1 (Т,a_s — задержка распространения сигнала со входа а на выход s; Тга.сго — задержка распространения сигнала со входа а на выход его). Следующий, второй разряд начнет суммирование после того, как на него пост упит сигнал переноса с первого разряда. На выходе s( сигнал появится, таким образом, через Т3 ,t.tIO + Т5 crj.s. Рас- сматривая процессы переключения сумматора далее, легко установить, что последними появятся сигналы на выходах одноразрядного сумматора по- следнего ра гряда, причем основным процессом, определяющим задержку суммирования, является сигнал переноса, который в данном случае распро- страняется вдоль всей разрядной сетки сумматора. Время завершения пере- ходных процессов в таком, самом худшем, случае и определяет основной па- раметр быстродействия сумматора Т =Т s.cyu J.dfj-Sj 4Т ссп-сго В общем виде, для k-разрядного сумматора этот параметр находится из выражения Т, Сум = кТ,СГ1 _сго. Следовательно, чем больше разрядность чисел, которые необходимо сложить, тем большее время затрачивает сумматор на эту операцию. В ряде случаев такое быстродействие оказывается недостаточным, и необходимо 64
принимать меры к его повышению. Основные направления повышения быст- родействия: а) уменьшение времени распространения сигнала переноса по тракту вну три сумматора; б) уменьшение или исключение последовательного распространения сигнала переноса вдоль разрядной сетки сумматора. Уменьшение времени перепост! внутри сумматора приводит к проблеме создания схемы, содержащей минимум оборудования и обладающей мини- мальными временными задержками. В настоящее время это реализуется в ПЛИС, в которых сумматор может быть размещен в соседних макроячейках, а сигнал переноса распространяется с малыми задержками по отдельному проводнику между этими макроячейкамп [211. Возможность такого конфигу- рирования ПЛИС заложена в библиотеке мсгафункций САПР ПЛИС. Уменьшение или исключение последовательного распространения сиг- нала переноса вдоль разрядной сетки осуществляется несколькими способами. При построении сумматора с групповым переносом все разряды устрой- ства разбиваются на группы, в каждой из которых дополнительными логиче- скими элементами создается гак называемый ускоренный перенос. В сумматорах с одновременным переносом истец точение последователь- ного распространения сигнала переноса осуществляется организацией отдель- ного от суммирования сигнала переноса дополнительно введенной логиче- ской схемой ускоренного переноса, на входы которой поступают сигналы всех разрядов слагаемых, а на выходах формируются сигналы переноса во все разряды. Более подробно вопросы построения быстродействующих сум- маторов изложены, например, в [11 ] Арифметико-логические ус тройства. Многие серии ЦИС имеют в сво- ем составе арифметико-логические устройства (АЛУ, английский термин — arithmetic logic unit), выполняющие нал операндами ряд логических и ариф- метических действий. Примером АЛУ может служить ЦИС вида НПЗ (SNI8I), У ГО которого представлено на рис. 3 16, а. Схема АЛУ довольно громоздка, и поскольку она приведена, например, в [29], ю в данном пособии нс приводится. Эго АЛУ предназначено для об- работки четырехра трядных операндов и имеет, кроме входов этих операндов 3 з А = £2' а, и В = £2‘ -Ц , входы выбора режима Е = fej, с2, е(, е0 j и вход i=0 isO М (mode control), сигнал на котором задаст характер выполняемых операций. Если М - 0, то в устройстве выполняются арифметические операции. Если А/ = 1, то в устройстве блокируются межразрядные переносы, и в зависимо- сти от комбинаций сигналов с, может выполняться любая из 16 логических операций АЛУ. АЛУ имеет инвертированный вход переноса cri от младших разрядов, з что позволяет наращивать разрядность операндов. На выходах F = £2‘ f i=4) вырабатывается выходной операнд, выход сто даст выходной перенос, кото- рый можно использовать как входной для следующего АЛУ, выходы g и h 65
дают функции генерации передачи переноса, необходимые для использова- ния АЛУ со схемой ускоренного переноса. м — м ALU 11 и О — k С(| — F 0 1 Сч — 2 3 F л 0 Го Иц - - 0 1 1 fo »| Я’ 2 2 Го аз 3 Го ТГ 0 Я| I g — g Я* 2 3 h h а? СП )cri сго( СП» а) Выбор функции Лог и че- скис опера- ции Арифметические операции М-0 С.1 С; Cl co М-1 СП = 1 cri = 0 0 0 0 0 л л A + I 0 0 0 1 Av В Av В (Av 11)+ I 0 0 1 0 А-В Av В (.Av В |+ 1 0 0 1 1 0 -1 0 0 1 0 0 А-В А+АВ Al А В+1 0 1 0 1 В (л+ В)+ А- В (л+в)+ Л-В+1 0 1 1 0 лев А-В-1 А-В 0 1 1 1 А-В Л- В -1 А В 1 0 0 (1 Av В А+ А- В А+ VB+1 1 0 0 1 лев А+В А+ В +1 1 0 1 0 в (Av в)+ А- В (avI1)+A В+1 1 0 1 1 А-В A-В —I Л В 1 1 0 0 1 А+ А А+ Л+ 1 1 1 0 1 А+В ( \v в)+ А (AvB) + А+1 1 1 I 0 (Av В) (AvB)+A (Av в)+ А+ 1 1 1 1 1 А Л-1 А б) Рис. 3.16. Арифметико-логическое устройство: а —У1 О; б — таблица нс: и иное m Выход к есть выход компаратора, осуществляющего сравнение на ра- венство. Данным выход компаратора выполняется по схеме с открытым кол- лектором, что допускает реализацию монтажной логики путем параллельного соединения аналогичных выходов нескольких АЛУ. Полный перечень операций, выполняемых АЛУ, приведен на рис. 3.16, б. Логические операции выполняются независимо в каждом разряде (поразряд- но). Арифметические операции выполняются с учетом переносов и заемов. Оба типа операции могут встречаться одновременно. Например, запись (Av в)+ А- В означает, что вначале поразрядно выполняются операции ин- вертирования ( В ), логического сложения t Av В » и логического умножения (АВ), а затем полученные указанным образом два чстырсхразрядных опе- ранда складываются арифметически (с учетом переносов). При обработке операндов большей разрядности АЛУ соединяются 1 юслсдовагельно. В лом случае большое влияние на быстродействие устрой- ства оказывает задержка распросгранения сигнала переноса, который может проходить от младшего разряда операнда по всей разрядной сетке. В схемах АЛУ стре-мятся обеспечить малое время шдержки переноса (в одну—две элементарные задержки), однако при суммировании операндов с большой 66
разрядности^) время сложения может оказаться неприемлемо большим. В по- добных случаях совместно с АЛУ применяют специальную ЦИС, называе- мую блоком ускоренного переноса, в которой перенос вырабатывается с по- мощью функций генерации и передачи переноса g и 1т. Схема включения AJ1V ИП? (SN181) совместно с блоком ускоренного переноса ИП4 (SN182) представлена, например, в [1] Широкие функциональные возможности АЛУ, предназначенных прежде всего тля построения процессоров, обеспечивают также их применение в устройствах цифровой обработки радиотехнических сигналов. Перемножители. При цифровой обработке сигналов одной из самых распрос граненных операций яв. 1ястся перемножение многоразрядных двоич- ных чисел. Традиционным является способ перемножения чисел на основе последовательных сдвигов частичных произведений с их последующим сум- мированием. Однако процесс перемножения операндов в таких устройствах длится в течение ряда тактов (определяется разрядностью), т.е. с относитель- но невысокой скоростью. В 1980-х юдах появились матричные перемножители высокого быстро- действия. но более сложные аппарагурно. Структура матричных перемножи- гслей тесно связана со структурой математических выражений, описываю- щих операцию умножения. з Пусть имеются два двоичных числа без знаков — А=^2‘ а, и i=() з В = £2’ Ц . Перемножение этих чисел выполняется по известной схеме: i=0 Яд я2 а( а0 х th Ь; b| Ln + ajbu a2bu a|bu auhu j a.xh a2b| a|bj anb| । a_>b2 ;i ,b2 a-b2 a3bt а2Ь,л Я|Ьд яДъ P7 Pr. Ps Pt P? Pi Pi (X) CoTiacuo схеме произведение выражается восьмиразрядным числом 7 Р = £2J • р, . Произведения вида a b вырабатываются параллельно во време- i=0 ни с помощью конъюнкторов. Сложение в столбцах (суммирование многих слагаемых) можно выполнять различными способами, а время суммирования будет практически определять и время перемножения. Множительный блок для перемножения чстырсхразрядиых операндов (рис. 3.17, б) содержит 16 конъюнкторов (на рис. 3.17, б не показаны) и 12 одноразрядных полных сумматоров. 67
Рис. 3.17. Условное изображение одноразрядного полною сумматора (о) н С1рук~прнан схема матричного неремножнтели (о) Максимальное время перемножения определяется наиболее длинной цепью передачи сигнала (правая диагональ плюс нижний ряд матрицы). Пои перемножении двух k-разрядных двоичных чисел задержка определяется выражением T-jji = Т, к+ 2(k—1) T4 a-cri > где Т( к — время задержки коныонк гора: T(a.CI.j — время задержки сумматора. Быстродействие персмножи-тсля существенно ухудшается, а аппаратур- ные затраты существенно увеличиваются с ростом разрядности операндов Для улучшения параметров перемножителей применяется гак называемый алгоритм Бута (Е. Boot) 111 ]. заключающийся в умножении сразу на два раз- ряда Применение данного алгоритма позволяет сократить число суммирова- ний примерно в два раза и особенно эффективно для большой разрядности операндов. Время перемножения можно также уменьшить, применив сумма- торы с ускоренным (параллельным) переносом или конвееризацню выпол- няемых операций. Матричные перемножит ел и большой разрядности можно строить из мо- дулей меньшей разрядности. Матричные перемножители входят в выпускае- мые серии ЦИС Эго ЦИС вида BPi, ВРЗ, ВР4, ВР5 [II, 13]. В библиотеки мегафункций САПР входят перемножители с задаваемой разрядностью операндов в формате с фиксированной или плавающей запя- той. Кроме того, в современные ПЛИС введены так называемые блоки циф- ровой обработки сигналов (DSP), в которых имеются матричные перемножп- тсли фиксированной разрядности. 6S
Вопросы и упражнения I. Перечислите этапы синтеза комбинационных цифровых устройств. 2. В чем проявляется эффект состязаний в цифровых устройствах? Какие существуют методы борьбы с ним? 3. Синтезируйте цифровое устройство, реализующее функцию у = £(0.1. 3,5, 15) на 5. 6. 7. элементах И-НЕ и ИЛИ-HI . 4, Проведите анализ приведенной схемы. Опре- делите выполняемую функцию и представьте ес в СДНФ. CKI1Ф и в виде временных диа- грамм. Определите задержку распространения сигнала. Данте определение и заполните таблицу истинности полусумматора. Проведите его синтез на элементах ИЛИ-HI . Данге определение и заполните тоблнцу hcihiihociii с .поразрядного полного сумма- тора. Проведите его синтез на элементах ИЛИ-НЕ. Изобразите схему арифметического сумматора многоразрядных двоичных операндов. Укажите, чем определяется время суммирования. Каким образом можно ускорит ь процесс суммирования? 8. Выведите логическую функцию, представляющую ускоренный перенос в четвертый разряд арифметического сумматора. 9 Определите количество одноразрядных полных сумматоров, необходимых для пост- роения сумматора 32-разрядных двоичных чисел. 10. Как проводить суммирование твоичных чисел, представленных в формате с плаваю- щей запятой? II. Составьте таблицу истин пост мультиплексора 16=> 1 н выведите логическую функ- ции. выполняемую данным мультиплексором. 12. Составьте таблицу hcihiihociii чоырсхвходового шифратора и выведите логические функции, им выполняемые. 13. Определите, какие функции будет выполнять цифровое устройство, состоящее из последовательно соединенных шифратора и дешифратора. 14. Составьте таблицу истинности демультиплексора 1=>8 и выведите логические функ- ции. выполняемые данным демультиплексором. 15. Синтезируйте компаратор двухразрядных двоичных чисел 16. Синтезируйте компаратор, имеющий три выхода у1<д. у ,=e. на основе компара- тора с двумя выходами у,<д и у1=д. 17. Определите, подачей каких сигналов на входы АЛУ ИНЗ обеспечивается режим вычитания операндов. 18. Синтезируйте компаратор четыре? разрядных двоичных чисел на основе АЛУ ИЛЗ. 19. Поясните принцип построения, оцените достоинсгва и недостатки матричного псрс- множитсля. Опре юлите, какое количество кон мониторов и одноразрядных полных сумматоров потребуется для построения матричного перемножите.тя восьмиразрядных операндов. 20. Как осуществить перемножение двоичных чисел, представленных в формате с ила ваюшей запятой*1 21. Как реализуются перемножители в программируемых логических интегральных схемах? 64
4. ПРОСТЕЙШИЕ последовательностные УСТРОЙСТВА. ТРИГГЕРЫ 4.1. Особенности функционирования и синтеза последовательностных цифровых устройств Ранее рассматривались комбинационные цифровые устройства. выход- ной сигнал которых в данный момент времени однозначно определен состо- янием входов и нс зависит от предыдущих состояний. Однако большинство радиотехнических цифровых устройств и систем — последовательное!ные, в которых состояния выходов определяются не только входными сигналами, но и последовательностью их прихода. Последовательностное цифровое уст- ройство можно представить в виде комбинационного цифрового устройства (КЦУ) с обратной связью, замкнутой через запоминающее устройство (ЗУ), как )то изображено на рис. 4.1. Рис 4.1. Каноническая схема по- следовательное! jioi о устройства На внешние входы КЦУ подастся сигнал в виде к разрядного двоичного числа Хп=|х£ |, х£„э...х<"|, а на внут- ренние входы поступает т-раврядный выходной сигнал ЗУ Рр"|Х = = {р"ыхг ьРвыхг-2....Рньно} (напомним, что индекс п обозначает номер такта ра- боты цифрового устройства). В результате формируется выходной внешний сигнал Y” = y"t_2,....y»} и внутренний Рв" ={р"хг-1’Рвхг-2—pSxo}’ поступающий на вход ЗУ. Запоминающее j игрой ст во может сигнал Рвх или только задержать на определенное время ДТ , или записать (или сохранить), пока не поступит новый сигнал. На выходе ЗУ формируется сигнал РН"1Х, ко- торый используется в качестве выходного в ботьшинстве рассматриваемых ниже устройств, а выход Y в них может отсутствовать. Сигнал Рв“ых является реакцией на сигнал Рв" , и в зависимости от его изменения последовательно- стные устройства деля гея на синхронные и асинхронные. В синхронных устройствах цепи обратной связи содержат запоминаю- щие устройства, управляемые внешними тактовыми импульсами, и выпол- няют функцию запоминания сигналов внутренних переменных на один такт. В отсутствие тактовых импульсов передача сигналов по цепям обратной связи запрещена. Благодаря этому равенство P’jJ = Рвх выполняется в син- хронных автоматах на протяжении всей длительности каждого такта работы. В асинхронных цифровых устройствах задержка сигналов внутренних переменных обусловлена инерционностью логических элементов. Различие сигналов Р" и Р„?.. имеет место в течение динамической части такта 15 А 151м А 70
Р"^1 * В>'х • В статической части значения РВ"|Х’ и Р х совпадают, и этому равенству соответствуют устойчивые состояния устройства. Асинхронные последовательноегныс устройства (к простейшим из кото- рых относятся и триггеры) включают в свой состав лишь комбинационные элементы. Синхронные устройства (например, счетчики, регистры и т. и.) предполагаю! применение тактируемых запоминающих элементов (элемен- тарных устройств памяти) Меньшая стоимость комбинационных элементов, по сравнению с запоминающими устройствами на начальном этапе внедре- ния цифровых устройств, определила преимущества асинхронных устройств перед синхронными (несмотря на возможность появления критических пере- ходов). Внедрение микроэлектронной элементной базы привело к тому, что стоимости комбинационных элементов и тактируемых элементов задержки стали близкими. Соответственно в настоящее время появляется тенденция применять главным образом синхронные последовательностные устройства В канонической структурной схеме синхронных последовательностных устройств комбинационные и запоминающие элементы структурно относятся к разным частям устройства (рис, 4 I). Общую структуру устройства можно изменить отступлением от основной модели, а именно произвольным сочета- нием комбинационных и запоминающих элементов («распределением» запо- минающих устройств между' комбинационными). В этом случае можно рас- ширить функции элементов памяти: кроме задержки сигналов на один такт на них может быть возложена задача некоторого логического преобразования сигналов. Объем памяти (количество запоминающих э. (ементов) сохраняется таким же. как в общей схеме, но комбинационная часть существенно упро- щается. Синтез последовательностных устройств с неканонической структу- рой основывается на учете функций, которые могут выполнять элементарные устройства памяти. Соответственно методы синтеза таких устройств рас- сматриваются далее, после изложения основных сведений о запоминающих ус тройствах (трип ерах). 4.2. Определение, классификации и основные параметры триггеров Триггерами принято называть цифровые последовательностные уст- ройства, которые характера гуются следующими свойствами'. • число независимых входных переменных — не более пяти (входные переменные принято обозначать специальными символами в соот- ветствии с функциями, выполняемыми триггерами); в это число не входит тактовый вход С; • число вну гренчих переменных — не более двух; • чисто выходных переменных — одна, причем принято обо значение выходной переменной символом Q, обычно имеется возможность, наряду со значением Q получать инверсную переменную Q; • функции переходов, называемые характеристическими уравнениями 71
(4.1) являются полными. Триггер обычно состоит из устройства управления (УУ) и запоминаю- щего (устройства (ЗУ), соединенных между собой по схеме, изображенной на рис. 4.2. Устройство управления передает с L-* s h q информационных входов X, необходимую Рис. 4-2. Обобщенная схема триггера информацию на входы S и R запоминаю- щего устройства. Сигналы поступающие на эти входы, устанавливают ЗУ в соот- ветствующее сос гояние. Выходы ЗУ явля- ются выходами трип ера. Триггер может быть тактируемым (синхронным) и асинхронным. В синхронном триггере УУ имеет вход синхронизации С, куда поступает тактойый сигнал (сигнал синхронизации), разрешающий устройству управления передачу информа- ции в ЗУ. В асинхронном триггере вход С отсутствует. В настоящее время разработано и используется большг »е число различных типов триггеров, построенных как на основе отдельных логических элементов, так и в интегральном исполнении. Трит горы отличаются друг от друга выпол- няемыми функциями, схемой построения, способом управления и т.д. Реше- ние задачи выбора типа триггера в некоторой степени облегчается наличием системы, классифицирующей триггеры по различным признакам В качестве основных классификационных признаков можно использовать функциональ- ный признак, способ записи информации з триггер и способ управления триггером. Классификация гримеров по виду выполняемой логической функ- ции является наиболее важной, поскольку она позволяет определить пригод- ность данного триггера для выполнения тех или иных операций. В настоящее время широко используются лишь некоторые триггеры из числа возможных. Это RS-, D-, Т-, и JK-трип еры. Именно такие триггеры рассматриваются в данном пособии. Заметим, что символы S. R Г D, J. К определяют функцио- нальные свойства триггера и являются обозначениями его информационных входов. Особенности функционирования каждого типа триггера будут рас- смотрены ниже. Классификация по способу записи информации в триггер. По дан- ному признаку гримеры разделяцпия на асинхронные, синхронные и уни- версальные Асинхронные триггеры отличает то. что информация в них записывается непосредственно с поступлением сигнала на информационный вход (тактовый вход отсутствует). Синхронные триггеры обеспечивают запись информации только при наличии разрешающего сигнала на входе синхронизации С (тактовом входе). Универсальные триггеры могут работать в качест вс как синхронных, гак и асинхронных триггеров. Классификация по способу управления триггером определяет вид сигнала, который вызывает его переключение. По данной классификации вес 72
триггеры можно разбить на две группы: триггеры с потенциальным (стати- ческим) и динамический управлением Сигнал на информационном или тактовом входах у триггеров со статическим управлением воспринимается в течение всего времени его действия на входе. Такне триггеры часто называ- ются защелками (ан'л. — latch) [8] Триггеры с динамическим способом управления воспринимают сиг нал только при определенном изменении напряжения на входах и не восприни- мают. когда напряжение постоянно. Существуют триггеры, срабатывающие по положительному или отрицательному перепадам. Основные параметры быстродействия триггеров. Кроме перечислен- ных признаков при проектировании радиоэлектронных устройств с примене- нием триггеров необходимо знать их основные параметры: задержку пере- ключения триггера Тз гр и разрешающее время триггера Тгр Задержка переключения триггера представляет собой временной интервал между моментами поступлений входного сигнала и появлением но- вого выходного сигнала в результате переключения триггера. Разрешающее время триггера Т1Р определяет минимальный интервал времени между приходом входных сигналов, при котором не нарушается функционирование триггера. Величина, <1бра гная Tip, F,p = Fnlax - 1/Т|П опре- деляет максимальную частоту' переключения триггера. Совокупность параметров Тэ гр и Т|р определяет быстродействие тригге- ров и в конечном счете быстродействие устройств, построенных на их основе. Для триггеров в интегральном исполнении указанные параметры задаются в паспортных данных. 4.3. Триггер с установочными входами (RS-триггер) Триггером RS-типа называют триггер, имеющий два информационных входа R и S, таких, что при R = 1, S = 0 триггер принимает состояние «О» (Q = 0), при R = 0. S = 1 триггер принимает состояние «1» (Q = 1), а при R = = 0, S = 0, триггер сохраняет предыдущее состояние. Название RS- триггера произошло от английских слов reset — восстанав- ливать и set — устанавливать RS- триггер может быть как синхронным, так и асинхронным, как со ста гическим управлением записью информации, так и с динамическим Рассмотрим самый простои асинхронный RS-триггер, кото- рый обычно используется в качестве элементарной ячейки в более сложных синхронных и асинхронных триггерах. Асинхронный RS-триггер со статическим способом управления. Асинхронный триггер не имеет входа синхронизации, отсюда следует, что асинхронный RS-триггер должен иметь только два входа. На основании опре- деления можно составить таблицу функционирования триггера (рис. 4J, а\ в которой отображены сингалы ца входах в данный момент времени (R1 . Sn), состояние триг г ера Q в этот же момент времени и то состояние, в кот орое он 73
переключится, — Qn4 . В правой колонке отображена операция, которая вы- пожняется триггером. Поскольку в функции, выполняемой триггером, факти- чески три аргумента (F ,S",Qn). то и число возможных комбинаций будет 23 =8. R” О о о о 1 1 1 1 S1 О о 1 1 о о 1 I о I о 1 о 1 о 1 Qn+_____Операция О Хранение О 1 Хранение 1 I У с гановка 1 О О * * Поцтверж генне 1 Ilo.n вержденне О Сброс Не опреде ieiio Нс определено R" sn Qn+1 Операция 0 0 Q" Хранение информ. 0 1 i Ус 1ановка, подтв. 1 1 0 0 Сброс, ПОДТВ. (1 1 1 * Не оноелелено «) Q" -> Q"’1 R" S” 0->0 0 0-> 1 0 1 1 ->о 1 0 1 -> 1 0 * г) Рис. 4.3. Асинхронный RS- ipin rep: а — таблица функционирования; б — диаграмма Вейча; е — сокращенная таблица функцио- нирования: г — характеристическая таблица При R = S = 0 триггер не изменяет своего состояния, г е. сохраняет гу информацию, которая была в него записана в предыдущих тактах работы. Это отображено двумя верхними строчками таблицы на рис. 4.3. а. При S = I и R = 0 триггер должен перек тючиться б состояние 1. однако эту операцию он может проделать двумя способами, либо изменить свое со- стояние. если до этого он находился в состоянии 0 (третья строка таблицы на рис. 4.3, а), либо нс изменить своего состояния, если до это< о он находился в состоянии 1 (Q11 = 1). Таким образом, вход S— вхо т установки триггера в 1 и. [и просто вход установки триггера. Аналогичным образом RS-триггер функционирует при подаче сигналов S = 0 и R= 1. При этом триггер принимает состояние 0. Следовательно, вход R— вход сброса (восстановления — reset) триггера в 0 или просто сброса триггера. Нижние две строчки таблицы на рис. 4.3, а отображают комбина- цию сигналов на информационных входах триггера R = S= 1. Для таких сиг- налов функционирование RS-триггера не определено, и поэтому их появле- ние на входах запрещено, т.е. для обеспечения нормальной работы триггера необходимо выполнение равенства R • S - О Из таблицы функционирования триггера можно определи гь его характеристическое уравнение. Для того чт о- бы получить это уравнение в минимизированном виде, целесообразно его представить на диаграмме Вейча т. е. от табличного задания этой функции перейти к ее представлению на диаграмме Вейча (рис. 4.3. б). Кроме комби- 74
наций аргументов, на которых функция определена, отобразим неопределен- ные состояния символом «*». Пустые ячейки обозначают нули. При считы- вании с диаграммы Вейча минимизированного характеристического уравне- ния в этих ячейках функцию можно доопределить, как нам удобно, посколь- ку эти две ячейки соответствуют запрещенным комбинациям на входе. Итак, из диаграммы Вейча (рис. 4.3, г5) получаем характеристическое уравнение асинхронного RS-триггера Qn+I = S" vQ"-R", (4.2) которое справедливо при выполнении условия R -Sn =0. В дальнейшем, с целью сокращения записи, при табличном представле- нии функционирования триггеров будем ноль юваться сокращенной таблицей функционирования (рис. 4.3, в), в которой в качестве явной переменной будет отсутс гвоват ь сигнал на выходе Q в такте номер п. Видно, что одной строчке сокращенной таблицы соответствуют две строчки полной таблицы функционирования. При проектировании устройств с использованием трип еров. весьма по- лезной является еще одна форма представления функционирования тригге- ров — характеристическая щблица (рис. 4.3, г), в которой исходными дан- ными (аргументами) будут переключения (переходы), совершаемые тригге- ром, а функцией — сигналы, которые необходимо подать на входы тритгер? для осуществления данного перехода. Например, если нужно, чтобы триггер, находящийся в состоянии 0 (Q =0). переключился в состояние 1, т е. совер- шил переход 0—>1, на вход R нужно подать сигнал 0, а на вход S — I. Все возможные ситуации (а их всего четыре) вводятся в характеристическую таб- лицу триггера (рис. 4.3, г). При переходе трип ера из состояния 0 в это же со- стояние необходимо подать сигнал 0 па вход S. а на вход R можно подавать любой сш нал (символ «*»). поскольку и в одном и в другом случае (R1 - 0, Rn= 1) триггер либо хранит информацию (Q11 '= Q1’ = О), либо подтверждает ноль. Аналогичным образом на основании таблицы функционирования триг- гера (рис. 4.3, а) заполняются ос гальные строки характеристической таблицы (рис 4 3, г). Асинхронный RS-триггер может быть реализован на элементах Пирса и (Пеффера. Поскольку широко применяются и те и другие устройства, рас- смотрим триггеры на двух тинах элементов. Асинхронный RS-ipurrep на э клиентах Пирса состоит из двух логи- ческих элементов DD] и DD? (рис. 4.4, б). Для уяснения работы триггера и для определения параметров его быстродействия проведем анализ его функ- ционирования. для чего построим временные диаграммы для различных сиг- налов на его входах (рис. 4.4. г) и соответствующие сигналы отобразим на схеме, где знаком «~» — «тильда», отобразим задержку появления сигналов. 75
Рис. 4.4. Асинхронный RS-ipin iep: а — УГО: б — схема на элементах Пирса; л — схема на элементах [Пеффера; г — временные диаграммы Пусть до момента Tj на входах действуют сигналы, равные нулю IR = S = 0). В этим случае триггер может находиться в любом из двух состоя- ний, определяемых предыдущими сигналами на его входах. Допустим, Q = I, тогда Q - 0 (в этом можно убеди гься по схеме рис. 4.4, б). Далее, в некоторый момент Т|. на вход R пос lyinui сигнал 1, а на входе S по-прежнему действует 0. В триггере начнутся переходные процессы, и через Т1Ср (Т,.ср — среднее время задержки элементов DD| и DDj) на выходе Q появится сигнал 0. Этот сигнал, поступив на вход элемента DD2, вы ювет его переключенье, и через следующие Т,ср на его выходе появится сигнал I. На этом процесс переключения триггера (сброс) завершится. Аналогично происходит переключение триггера в 1, когда в момент времени Т? на его информационные входы йоданы сигналы R = 0 и S = 1. В момент Т3 на входы триггера подаются два высоких уровня, в резуль- тате чего DD| и DO? перейдут в состояние 0 и нарушится нормальная работа Триггера (Q = 0 и Q= 0). Если после этого перевести триггер в режим хране- ния информации (R - S = 0), то с равной вероятностью он может принять одно из двух устойчивых состояний (Q = 0, I). В силу этих обстоятельств комбинация R = S = I запрещена, т. е. она не должна имет ь место на входах грип ера. Из проведенного Аалива легко установить параметры быстродействия асинхронного RS- триггера (см. рис. 4.4, б, г) на элементах Пирса: Т,1Р=2Т3.СР; 1^=2 7,^. (4.3) 76
Рассмотренный триггер является элементарной ячейкой памяти имеет два устойчивых соОтояни» в силу чего часто называется дизъюнктивной бистабильной ячейкой (ДЬЯ). Асинхронный RS-триггер на элементах Шеффепа (рис. 4.4. в) содер- жит четыре элемента (вдвое больше, чем триггер на элементах Пирса). Пода- вая на входы различные сигналы, как это показано на рис. 4.4, в можно про- анализировать работу устройства и оценить его быстродействие. Из этого анализа следует Т-гтр = 3 Tj L.p; ТТр = 3 Т3 ор. (4.4) Такой триггер имеет более сложную схему и обладает меньшим быстро- действием, чем соответствующий триггер, собранный на элементах Пирса, и поэтому ею реже использую! в качестве элементарной ячейки памяти. В ка- честве такой ячейки — конъюнктивной бистабильной ячейки (КБЯ) — обыч- но используется часть этого устройства, а именно схема на элементах DD3 и DD4 (рис. 4.4, «г) Рассмотрим КБЯ подробнее (рис. 4.5). Rn sn Qn+I Операция 0 0 ♦ Hr определено 0 1 0 Сброс, подтв. 0 1 0 1 Установка, подтв. 1 1 1 Q" Хранение информ. «) Q"- >QnM Rn S" 0->0 * 1 0 -> 1 1 0 1 - ->О 0 1 1 - -> 1 1 г) Рис 4.5 Асинхронный RS-триггер с инвертированными входами: а — УГО; б — схема;« — таблица функционирования; < — характеристическая таблица По существу это устройство является триггером с установочными вхо- дами, но его работа отличается от функционирования RS-триггера. Посколь- ку работа КЬЯ совпадает с функционированием RS-триггера при дополни- тельном инвертировании входных сигналов R и S, то КБЯ называется RS-триггером с инвертированными входами. Асинхронный RS-ipurrep с инвертированными входами имеет следую- щую таблицу функционирования (рис. 4.5, в). Здесь запрещенной является комбинация сигналов на входах R = S = 0 и установка в соответствующее состояние производится нс сигналом 1. как это было в RS триггере, а сигна- лом 0. Например, для сброса триггера необходимо на вход R подать сигнал 0, а на вход S — сигнал I. Своеобразие работы RS-триггера с инвертирован- ными входами о сражается и в его характеристической таблице (рис. 4.5, г). 77
Параметры быстродействия этого триггера (КБЯ) такие же, как и у RS-триггера на элементах Пирса. Синхронный RS-триггер. Синхронный RS-триггер отличается от асин- хронного тем, что информация в нею записывается только тогда, когда есть разрешающий сигнал на тактовом входе С (С = i). При С = 0 триггер осуще- ствляет хранение информации (рис. 4.6). С" R" S" 0„тт- Операция 0 0 0 Qn Хранение информации 0 0 1 Qn Хранение информации 0 1 0 Q" Хранение информации 0 1 1 Q" Хранение информации 1 0 0 Q" Хранение информации 1 0 1 1 Установка;подтверждение 1 1 1 0 0 Сброс подтверждение 0 1 1 1 Не определено Qn—>Q"*' R" S" 0->0 * * 1-Н . * * R" S" 0 -> 0 * 0 0 -> 1 0 1 1 ->0 1 0 1 -> 1 0 * С- 1 «) «) Рис 4.6. Синхронный RS-трнт тер: а — таблица функционирования; и — характеристические таблицы при С = 0: в— то же при С=1 Для синхронного RS-триггера запрещенной является комбинация С = S = R = 1 т. е. должно выполняться условие С R S = 0. Характеристиче- ское уравнение триггера может быть получено представлением на диатрамме Вейча функции заданной таблицей функционирования (рис. 4.6. а} и после- дующим се считыванием в минимизированной фирме Qn+1 =Cn Sn vCn Q'‘vRn Qn =Cn Sn vC" R" Qn. (4.5) Характеристическое уравнение синхронного RS-триггера при С = 1 пере- ходит, как зго видно из (4.5), в характеристическое уравнение асинхронного RS-триггера (4.2). Характеристических таблиц синхронного триггера может быть две (рис. 4.6, «5, <?). Если нет разрешающего сигнала по входу С (С = 0), то триггер может совершить только два перехода — 0 —> 0 и 1 —> 1, т. е. сохраняет ин- формаций» причем сигналы на информационных входах могут быть любыми. Когда С =1, трит т ер может совершить все четыре возможных перехода, и характеристическая таблица будет такой же, как и для асинхронного три - гера. Поэтому достаточно приводить лишь характеристическую таблицу асинхронного триггера. Синтез синхронного RS-триггера на элементах Шеффера. Синтез будем проводить, опираясь на обобщенную схему триггера (рис. 4.2), которая для данного конкретного случая примет вид. представленный на рис. 4.7, а. 7S
сп R" S" Q" Qn*' Ккья \тя 0 0 0 0 0 ♦ 1 0 0 0 1 1 1 * 0 0 1 О 0 1 0 0 1 1 1 1 * 0 1 0 0 0 * 1 0 1 0 1 1 1 ♦ 0 1 1 » 0 4 1 0 1 1 1 1 1 * 1 0 0 0 0 4 1 1 0 0 1 1 1 * 1 0 I 0 1 1 0 1 0 1 1 1 1 я 1 1 0 0 0 * 1 1 1 0 1 0 0 1 1 1 1 0 * * * 1 1 1 1 * ж * DD2 DD4 a) Рис- 4 7. Синтез синхронного RS-ipiirrepa: « — модель для синтеза: б — таблица; в — диаграммы Вейча; <г — УГО; д — схема Здесь в качестве запоминающего устройства (ЗУ) используется КБЯ. Та- ким образом, синтез трип ера сводится к синтезу комбинационного цифро- вого ус гройс гва (КЦУ). В свою очередь, для синтеза КЦУ необходимо опре- делить две логические функции, им выполняемые: кКБЯ = f|(Cn,Sn,Rn,Qn); SJJ-БЯ = f2(cn,S",Rl$"). (4.6) Для определения этих функций составим таблицу (рис. 4.7, (7), в левой части которой отобразим входные сигналы КПУ (Cn,Sn,Rn,Q") и состояния проектируемого синхронного RS-триггера после его переключения (Q *'). В правой части таблицы с использованием характеристической таблицы КБЯ (см. рис. 4 5, г) определим сигналы R{jBJI и , которые необходимо по- дать на ее входы для обеспечения заданных в левой част и таблицы персклю- 79
чений триггера Q —> Q . Таким образом, в таблице (рис. 4.7, б) определены искомые логически^ функции (4.6) синтезируемого КПУ. Далее представля- ем эти функции на диаграммах Вейча (рис. 4.7, в) и считываем функции в минимизированной форме R^ = C^R”; S^=C<Sn. (4.7) По данным выражениям изображаем схему триггера (рис.4.7, <Э). Прове- дем анализ работы триггера, для чего поочередно подадим на входы сигналы, оз меченные на рис 4.7, д. Видно, что при С - 0 никакие сигналы на инфор- мационных входах не изменяют состояние триггера, поскольку на входах КБЯ действуют сигналы R,’-bJI = S£bJI = I, реализующие в КБЯ режим хране- ния информации. Бели подать разрешающий сигнал по входу С (С = I). то триггер получает возможность переключаться, и направление этого пере- ключения определится сигналами на его информационных входах R и S. За- метим, что при С = I элементы Шеффера DD| и DD? вырождаются в инвер- торы сигналов S и R, а весь триггер — в асинхронный RS-трип ер, представ- ленный на рис. 4.4, в. Из проведенного анализа следует, что длительность переходных процессов в триггере составляет ЗТ|С|>. отсюда задержка пере- ключения и разрешающее время грш юра ЗТзлр = 3 Ггг = ЗТ1ср. Нами рассмотрена схема синхронною триггера, реализованная на тлс- ментах Шеффера. Аналогично можно сингезирева'ь устройство на других логических элементах. Кроме гою, рассмотренный метод пригоден и для синтеза произвольных триггеров с потенциальным управлением. RS-триггеры входят в состав серий цифровых литоральных схем (ЦИС). Это ЦИС вида ТР2 (SN279), содержащая четыре асинхронных RS-триггера с инвертированными входами 117]. В библиотеку пгымитивов САПР Quartus II входит синхронный RS-триггер с динамическим управлением. 4.4. Триггер задержки (D-триггер) Триггером задержки (ГУ-триггером) называется триггер, состояние которого в последующий момент времени тождественно равно сигнала, действующему в настоящий момент на информационном входе D Название ipiirrepa обусловлено английским словом delay — задержка. Асинхронным D-триггер. Исходя из определения, асинхронный D- ,О1+ 1 ,.л триггер имеет весьма простое характеристическое уравнение у = Q , т.е. трип ер является повторителем. Асинхронный D-триггер не обладает способ- ностью хранить информацию и поэтому для построения цифровых ус тройств не используется. Синхронный D-триггер. Данный триггер обладает существенно боль- шими функциональными возможностями и широко используется при пост- роении различных цифровых устройств, например регистров, счетчиков и т.д. Кроме того, П-тршгеры применяются в операционных блоках (макроячейках) КО
современных ПЛИС. Исходя из определения D-триггера, заполняются таблица функционирования и характеристическая таблица (рис. 4.8, б и в). Т С" D" Qn+I Операция О”*1 Р" D— 1) -Q 0 0 Q" Хранение информации 0- э-о 0 0 1 Q” Хранение информации 0- > 1 1 С— С Г Q 1 0 0 Сброс, подтверждение О 1 - э-о 0 1 1 1 5 становка; подтверждение 1 1 - 3- 1 1 «) б) в) Рис 4.8. С инхронный D -триггер: а — У1 О; о — таблица функционирования, в — характеристическая таблица Характеристическое уравнение синхронного D-трип ера получается из табл и f 1ы фун кино н и рован ия • Q'1'1 =Cn-Dn vCn-Q". (4.8) Синтез синхронного D-триггера с потенциальным управлением про- водится по методике, рассмотренной в § 4.3. Основные этапы синтеза и схема триггера представлены на рис. 4.9 а — модель: б — таблице: л — диаграммы Вейча: г— уравнения входов: д — схема грш гера С интез сводится к проектированию КПУ (рис. 4 9, а), для чего на основе таблицы функционирования D-триггера (см. рис. 4,8, б) и характеристической таблицы КБЯ (см. рис. 4.5, г) заполняется таблица (рис. 4.9 б). Заданные в таблице логические функции КЦУ представляются на диаграммах Вейча (рис. 4.9. в), из которых они считываются в минимизированной форме (рис. 4.9. г). 81
По данным выражениям изображается схема Синхронного D-триггера на элементах Шеффера (рис. 4.9. d). Проведем анализ работы триггера, для чего построим временные диаграммы (рис. 4.10). Д,я наглядности здесь и далее дл итсльностн фронтов и срезов сигналов будем считать равными нулю. I Синхронным режим Асинхронным режим <--1 г—1 г—। i И Г~--------------1 :___________ I I о 4 21' : .-------1-ч зт..=т' ------------t ;Устаноикя ' Сброс ; ! Установка ! Сброс 1 * . I 1 Риг. 4.10. Временные диаТрам.мы сигналов синхронного I)- триггера При С = 0 триггер хранит то состояние, к которому он пришел в преды- дущих тактах работы (в нашем случае Q = 0). Изменение сигнала на входе D. как и еле ювало ожидать, нс приводит к изменению состояния гршгера. При подаче разрешающею сигнала на тактовый вход (С = I) происходит установ- ка триггера, т.е. через 2Tscpna выходе Q появляется сигнал 1. Аналогичным образом при подаче соответствующих фи налов (рис. 4.10), происходит сброс трип ера. Наибольшее время переходного процесса ^Tjcp. Отсюда параметры быст родейс твия Tj.rp = ^Tj.cp’ Г[р=ЗТ,ср. (4.8) Рассмотренные переключения триггера соответствуют его функциони- рованию в синхронном режиме, когда процессом записи информации в триггер управляет тактовый вход С (рпс. 4.10). Данный режим является ос- новным для синхронного триггера. При работе в асинхронном режиме на вход С подастся сигнал I. Если затем произойдет изменение сигнала на входе D, то, как видно из рис. 4.10, триггер изменит свое состояние, т.е переключится, как асинхронный D- триггер. Это говорит о том. что данный триггер со статическим способом за- писи информации является универсальным, т. е. он может работать как син- хронный и как асинхронный (при С= 1) триггер. Как уже было сказано, асинхронный режим работы D-триггсра практи- ческого интереса не представляет. Поэтому такой универсальный D-триггер обычно используется в синхронном режиме, когда управление записью осу- ществляет тактовый вход С, т.е. сш нал на информационном входе меняется только при С - 0. как это показано на рис. 4 10. По схеме, аналогичной рассмотренной (см. рис. 4.9, <)), собраны триг- геры ТМ5 (SN77) и ТМ7 (SN’75), входящие в серии цифровых интегральных схем 1171. В библиотеку примитивов САПР входит элемент latch, выпол- няющий функции синхронного D-трш I ера с потенциальным управлением. «2
Особенности схемного исподнения и функционирования I)-грин ери с динамическим способом управления. Как было определено ранее, D-триггер со статическим управлением при С = 1 переходит в режим асин- хронной работы, что часто весьма нежелательно. Для устранения такой воз- можности синтезируются трип еры с динамическим управлением, г. е. триг- геры. реагирующие на синхронизирующий сигнал только при его изменении определенным образом (например, на положительный перепад напряжения). Синтез таких триггеров нельзя провести с использованием общей схемы с одной петлей обратной связи (см. рис. 4.1) или одним элементом памяти, а необходимо иметь как минимум два элемента памяти, определенным образом связанных друг с другом. Данное обстоятельство сущеегвенно усложняет синтез триггера. В настоящем пособии синтез нс приводится, читатель может ознакомиться с ним по литературным источникам [29]. Мы же ограничимся лишь анализом работы D- триггера с динамическим управлением записью гга примере так называемой двухступенчатой схемы синхронного D-григгера (рис 4 11). Рис 4.11. Синхронный D- григ г ер с динамическим управлением: а — схема; о. в —У ГО: г — временные диаграммы В триггер входят два элемента памяти, в качестве которых применены два синхронных D-триггера с потенциальным управлением (DD? и DD*), и инвертор (DD|). Триггер DD2 называется основным (master), a DD j— вспо- могательным (slave) Выход основного триггера Р обычно из всего триггера не выводится (эго внутренний выход), но для уяснения особенностей функ- ционирования отобразим его на временных диаграммах (рис. 4.11, г). КЗ
В двухступенчатом триггере в зависимости от сигнала С происходит один из двух процессов: при С = 0 запись в основной триггер (30), а при С = I за- пись во вспомогательный триггер (ЗВ). Рассмотрим процесс переключения детальнее. Пусть при 1 < t| тактовый сигнал С = 0 (рис. 4.11, г). При игом так- товый сшнал основного триггера Со = 1 и поэтому в него будет записан сиг- нал, тождественный сигналу на его входе Do = D, т.с. произойдет 30 (в на- шем случае запишется I). Однако на входе Св = С вспомогательного триггера DD., действует сигнал 0. и поэтому его состояние нс изменится (ЗВ — запре- щена). Для переключения всего двухступенчатого триггера необходимо но- вую информацию из основного триггера переписать во вспомогательный (осуществить процесс ЗВ), что произойдет при подаче сигнала С - 1 (рис 4 II, г при I > tj). Заметим, чго при лом запись сшнала в основной триггер запрещена, поскольку на его входе Со = С действует сигнал 0. Итак, переключение вспомогательною триггера (установка) и. следова- тельно, всею двухступенчатого триггера произошло при С = 1. Аналогично происходит и сброс триггера (рис. 4.11, г при to < I < Ц). И, наконец, замеча- ем, что при постоянном сигнале С = 1 (рис. 4.11, г, I > 1?) переключение триг- гера, несмотря на изменение сш нала на входе D, нс происходит. На основании проведенною анализа можно сделать вывод: сигнал на входа С воспринимается как разрешающий переключение, только при его изменении из нуля в единицу, т.е. сигнал в виде положительного перепада напряжения. При наличии такого сигнала на тактовом входе триггер переключается в состояние, тождественное сигналу на входе D в этот же момент времени. В условных графических обозначениях динамическое управление положитель- ным перепадом обозначается стрелкой (рис. 4.1!, б) или линией с соответст- вующим наклоном (рис. 4.11, «). Возникает вопрос: как пользоваться таблицами функционирования и ха- рактеристическим уравнением для триггеров с динамическим управлением ? Ведь простая подстановка С = 1 в характеристическое уравнение (4.8) приво- дит к уравнению асинхронного триггера, а реально триггер с динамическим управлением такого режима нс осуществляет. Выход из этого противоречия простой: необходимо булеву переменную, представляющую динамический вход (в нашем случае вход С), кодировать по-иному, т. с. под С = 1 подразу- мевать не постоянное высокое напряжение, а соответствующий перепад (в данном случае положительный) и под С = 0 подразумевал ь любое постоянное напряжение (высокое или низкое) или другой перепад. Такая кодировка поз- воляет пользоваться всеми способами задания функционирования триггеров с потенциальным способом управления. Возможно также в таблицах функ- ционирования отмечать разрешающий сигнал символом «|» для положи- тельного перепада или «|» для отрицательного перепада. Из приведенных диаграмм (рис. 4.1 1, г) можно определить параметры быстродействия гршгера. Задержка переключения трин ера находшея про- «4
сто: Тэ ip = Тзц (Тзи — время записи во вспомогательный триггер DD, или его задержка переключения). Дня нахождения ра {решающего времени триггера (Ттр), т. е. минимального периода поступления сигналов на вход, при котором не наблюдается сбоев, необходимо организовать режим повторяющегося пе- реключения трипера, например, представленный на рис. 4.11, г. Очевидно, чго период поступления сигналов на вход синхронизации складывается из двух частей: То (когда на тактовом входе низкий потенциал) и Т|. когда — высокий). Для нахождения Т|р необходимо найти минимально возможные длительности То и Т|, и тогда ^тр = Tomin + Timin- Х4.9) Минимальные длительности TOmjn и T|niin в свою очередь определяются переходными процессами в грш гсрс. Так, при низком напряжении на входе С в триггере происходит процесс записи в основной триггер (30). время которо- го TJ0 складывается из времени задержки переключения основного триггера и инвертора DD|. Отсюда T()mill -Т?о. При высоком напряжении на входе С в триггере происходи! процесс перезаписи сигнала из основного триггера во вспомогательный (ЗВ), который занимает интервал времени равный задержке переключения вспомогательного триггера. Отсюда T]miil =ТЗВ. Окончательно разрешающее время триггера Ттр = TOniin +Т]Inin = Тю +ТЗВ; FT = Fniax = 1/Trp. (4.10) Необходимо отмстить, что такое разрешающее время обеспечивается нс для любого сигнала на входе С, а только для сигнала со скважностью, близ- кой к двум (меандру), поскольку T()riljn =T]inin. В серии ЦИС входят D-триггеры с динамическим управлением, напри- мер ГМ2 (SN74), представленный на рис. 4.12. Рис. 4.12. Синхронным D-ipurrep с динамическим способом управления и входами асин- хронной установки н сброса: а — схема; о — таблица функционирования: « — У ГО Триггер состоит из шести элементов И-НЕ, которые попарно образуют КБЯ. Это устройство еще называют схемой трех триггеров или триггером 85
Вебба |?|. По существу это DRS-тцймрр т.е. D-триггер, имеющий инверти- рованные входы асинхронной установки S и сброса R. Анализ функционирования триггера, приведенный, например, в (2]. пре- доставляется читателю сделать самостоятельно в качестве упражнения. Можно установить, что данный триггер имеет динамическое управление по положи- тельному перепаду, что отражено в таблице функционирования (рис. 4.12, с5) и У ГО (рис. 4.12, в). Несколько слов о входах R и S. У рассматриваемого триггера .тайные входы являются инвертированными. Инвертированными входы называются потому, что управляющим сигналом будет сигнал 0 (низкое напряжение). Так, для установки трииера в состояние 1 необходимо подать 0 на вход S, что отражено в таблице функционирования (рис. 4.12, б). Одновременная по- дача сигнала 0 на оба входа запрещена, г. е. необходимо соблюдать равен- ство R v S = 1. Установка три! гера в соответствующее состояние сигналами на входах R и S осуществляется асинхронно, т. е. независимо от того, есть или нет разрешающий сигнал на входе С и независимо от сигнала на входе D, что в таблице отображено символом «*». Так. если подать сигнал R= 0, то никакие комбинации сигналов на входах С и D не изменят состояние триг- гера Q = 0. Поэтому входы установки обычно используются для предвари- тельной записи информации в rpin гер. в то время как при штатной его работе необходимо иметь R = S = 1. На условном 1рафическом изображении (рис. 4.12, в) независимость этих входов от остальных отображается чертой в поле входных сигналов. Синхронный D-триггер с динамическим управлением и входами асин- хронной установки и сброса входит в библиотеку примитивов САПР ПЛИС. 4.5. Счетный триггер (7-триггер) Счетны й триггере и. или 'И'-триггеро и (от слова topple —кувыркаться), называется триггер, имеющий один информационный вход Т, при подаче сиг- нала на который триггер меняет свое состояние на противоположное. Счетный триггер находит широкое применение в цифровых устройствах, служащих для счеп. различных сигналов. Асинхронный 7-триггер. Полученное из таблицы функционирования (рис. 4.13, а) характеристическое уравнение (рис. 4.13, 6) напоминает.ioiиче- скую функцию сумматора по модулю два. Рис 4.(3. Асинхронный T-ipiiriep со ciaiH'iecKiiM способом у правлении: и — таблица функционирования; б — характеристическое уравнение; в — У1 О; г — схема Кб
Действительно, Г-триггер обеспечивает суммирование по модулю два сигнала своего данного состояния Q11 с сигналом на входе 7" и на выходе в следующий момент времени формирует сумму по модулю два Q' ' *. Харак- теристическую таблицу Г-i риггерс предлагается читателю заполнить само- стоятельно. Асинхронный Г-триггер с потенциальным управлением может быть син- тезирован на основе КБЯ по методике, изложенной в § 4.3 и 4 4. В результате получается схема, изображенная на рис. 4.13, г. Анализ функционирования этой схемы триггера показывает, что при сигнале Т = 1 по завершении пере- ключения (спустя время 7\1Р = 27\ср), триггер опять изменит свое состояние на противоположное и т. д. Таким образом, длительность сигнала на входе Т должна быть не более Тзлп. 1квозможность работы с произвольной длитель- ностью сигнала на входе является большим её недостатком, и поэтому по- добная схема используется очень редко. Наиболее широко используется другое схемное построение /-три пена, основанное на использовании двух элементов памяти (двух триггеров) по двухступенчатой схеме На рис. 4.14, а изображена схема двухступенчатого Т- триггера, реализованная на двух КБЯ (RS-триггсрах с инвертированными входами). Рис. 4.14. Асинхронный Т-цшпер: а — двухступенчатая схема: 6 — УГО; « — временные mai раммы Основной триггер (КБЯ) собран на элементах DDt, и DDu вспомогатель- ный — DD7 и DDj<; выходы вспомогательного триггера являются выходами всего Т- триггера. В целом функционирование данного трипера аналогично рассмотрен- ному для синхронного D-триггера (см. рис. 4.11). Сигналы на выходах Кле- ментов триггера представлены в виде кодов на схеме (.рис. 4 14, а) и виде вре- менных inai рамм (рис. 4.14, в). 87
При Т = О осуществляется запись во вспомогагельный триггер (ЗВ), по- скольку сигналы R,, =SP =1. В этом случае элементы DDj, DI )<> превраща- ются в инверторы выходных сигналов основной памяти Р и Р. что обеспечи- вает перезапись содержимого основной памяти во вспомогательную, по за- вершении которой выполняется равенство Q = Р Запись в основной триггер запрещена, поскольку па его инвертированных входах Rp и Sp действует высокий уровень напряжения ( Rp = SP = I). При Т = 1 в двухступенчатом Т-грип-ерс происходит запись в основной триггер (30), поскольку один из сигналов — RP или SP — равен нулю, что обеспечивает запись сигнала инверсного выходному (Q) в основной триггер (Р = Q). Запись во вспомогательным триггер запрещена, поскольку на его инвертированных входах R<) и Sq дейст вует высокий уровень ( Rq = Sy — 1). Таким образом, при Т = 1 происходит подготовка триггера к переключению (предустановка). Для переключения триггера, т.е. переключения основной памяти, требуется подать на вход триггера Т низкий уровень и тем самым обеспечить перезапись информации из основной памяти во вспомогательную (рис. 4.14. в). Подводя итог, можно сказать, что переключение двухступенчатого триг- гера происходит в два этапа: сначала (при Т = 1) происходит запись в основ- ной триггер, а затем (при Т = 0) новая информация переписывается во вспо- могательный триггер и появляется на выходе устройства. Сигналом, вызы- вающим переключение i риг гера в соо гветствии с его таблицей функциони- рования. является составной сигнал (высокое напряжение на первом этапе и низкое на втором), т. с. это триггер с динамическим способом управления по отрицательному перепаду. Параметры быстродействия триггера определим по методике, приме- ненной при анализе двухступенчатого D-триггера. Под задержкой переклю- чения данного двухступенчатого триггера понимается интервал времени между моментом подачи отрицательного перепада на вход и моментом появ- ления сигнала на выходе (рис. 4.14, в). Для двухступенчатого триггера за- держка переключения вызвана длительностью процесса перезаписи инфор- мации из основного триггера во вспомогагельный: T,rp=TJB=3T,cp. (4.11) Разрешающее время определится из выражения "*тр =^0min + ^1 min = *30 + **ЗВ = ^*т.ср’ *'rp = *"тах = */*тр- (4.12) Из временных диаграмм (рис. 4.14, д) видно, что Г-трипер умножает период Твх или делит частоту следования FBX входных сигналов на два- Тя.у = 2Т F„,,. =F„./2, т.е. он является элементарным делителем частоты следования импульсов. 8S
Синхронный Т-григгер. Синхронный Г-триггер имеет тактовый вход С и функционирует в соответствии с таблицей функционирования (рис. 4.15. б). т с т С" Г" Q"+r Операция Qn-^Q,,+1 Г* 0 0 Q" Хранение информации 0->0 0 0 1 Q" Хранение информации (1^ 1 1 I 0 0 Хранение информации 1 ->0 1 1 1 Q" Инверсии 1 -> 1 0 Рис. 4 15. Синхронный T-ipin тер: « — У ГО: б — таблица функционирования; в— характеристическая таблица С помощью диаграмм Вейча из таблицы функционирования можно получить характеристическое уравнение синхронного Г-триггсра в миними- зированной форме Одна из возможных схем двухступенчатого синхронного Т-триггера представлена на рис. 4.16, а. Рис. 4.16. Синхронный Г-триггер: а — двухступенчатая схема; б — УГО; в — временные диаграммы; г — таблицы функциони- рования в синхронном и асинхронном режимах Схема синхронного триггера легко получается из схемы асинхронного Т-триггсра (см. рис. 4.14. а) заменой Т =>С-Т. Следовательно, функциони- рование схемы синхронного Г-триггера полностью аналогично рассмотрен- ному выше. 89
Как видно из схемы на рис. 4.16, а, данный триггер является универ- сальным, т. е. при С = I триггер превращается в асинхронный двухступенча- тый /'-триггер. Ла рис. 4.16, в представлены временные диаграммы работы синхронно! о триггера в синхронном и асинхронном режимах. Можно замет ить, что в синхронном режиме трин ер управляется отрица- тельным перепадом по входу С, а сигнал на информационном входе Т вос- принимается как статический. В асинхронном режиме (С = 1) триггер управ- ляется отрицательным перепадом по информационному входу Г, что отра- жено в таблицах функционирования (рис. 4.16, г). Параметры быстродействия данной схемы триггера определяются ранее полученными соотношениями (4.11) и (4.12). Необходимо отметить, что Т- триггеры в качестве отдельных элементов в серии ЦИС обычно нс входят, по- скольку они могут быть легко построены на основе рассматриваемых ниже JК-триггеров. В библиотеку примитивов САПР Quarius II входит синхронный неуниверсальный Г-триггер со входами асинхронной установки и сброса. 4.6. J К-триггер Триггером ]К-трпа наяявается триггер с двумя информационными вхо- дами J и К, который при J — К = 1 осуществляет инверсию предыдущего со- стояния, а в остальных случаях функционирует как RS-триггер, причем вхо- ду J соответствует вход S, «лет). К—вход R. Название триггера произошло от слов jark — внезапное включение и kill — внезапное отключение. JK-тригтер обладает самыми большими функ- циональными возможностями по сравнению с рассмотренными триггерами, в силу чего он часто называется универсальным триггером. Асинхронным JK-ipnriL“p. По определению триггера составлены таб- лица функционирования (табл. 4.1) и характеристическая таблица (табл. 4.2). Таблица 4.1 Таблица функционирования асин'ронното J К-т риггера J" к" Q" Операция 0 0 Q" Хранение информации 0 I 0 Сброс, подтверждение 0 1 о 1 Установка, но и верждевне 1 1 1 Q" Инверсия Таблица 4.2 Характеристи веская таблица JK-триггсра Q" ► о,,и г К" 0->0 0 * 0- -> 1 1 * 1 ->0 1 1 -> I * 0 Из табл. 4.1 можно получить характеристическое уравнение асинхрон- ного J К-триггера Qn+1 =Jn..Q" vKn Qn. (4.14) JK-триггср, как и Т-триггер, осуществляет при одной из комбинаций входных аргументов инверсию своего предыдущего состояния, и поэтому его реализация со статическим способом управления записью затруднена. Обыч- но JK-трипсры c i роятся по двухступенчатой схеме. Схема одного из воз- 90
можных вариантов JK-триггера (рис. 4.17. а) сходна со схемой синхронного Т-триггера (рис. 4.16, а), отличие лишь в том, что у 7-триггерл входы элемен- тов DD| и DD_ попарно соединены, а у JK-триггера они разделены и явля- ются информационными входами. Рис. 4.17. Асинхронный двухс1упенчакын JK-ipurrep: а — схема: б — УГО Анали 1 функционирования и построение временных диаграмм асин- хронного J К-триггера предлагается читателю провести самостоятельно. Данный триггер управляется отрицательным перепадом (1—*0). Так, на- пример. чтобы установить триггер в состояние 1, необходимо на вход J подать единицу (J = I) (при этом происходит запись 1 в основной триггер) и затем — сигнал 0 (сигнал 1 переписывается из основное трипера во вспо- могательный). Таким образом, под сигналом 1 на входах J и Кдвухетупенча- гого трип ера (рис. 4.17, а) необходимо понимать сигнал вида 1—*0 или отри- цательный перепад напряжения Параметры быстродействия асинхронного двухступенчатого триггера совпадают с соответствующими параметрами Г-триггера <4.11) и (4 12). Синхронный JK-триггер. Синхронный JK-триггер функционирует в соответ ствии с табл. 4.3. Таблица 4.3 Таблица функционирования синхронного J К-триггера С" J" к* <Г‘ Операция 0 0 0 Q" Хранение информации 0 0 1 Qn Хранение информации 0 1 0 Q" Хранение информации 0 1 1 Qn Хранение информации 1 0 0 Q" Хранение информации 1 0 1 0 Сброс, подтверждение 0 1 1 0 1 Установка, подтверждение 1 I 1 1 Q" Инверсия 11о таблице функ- ционирования заполня- ется диаграмма Вейча, которая позволяет полу- ч ить хара кт ер и стичес кое уравнение в минимизи- рованной форме Qn+1 =CnJ' Qn v vCnKnQ" (4.15) Одна из возможных схем синхронного триггера получается добавлением входа С (на рис. 4.17. а пока- зан пунктиром) в схему асинхронного JК-триггсра. Временные диаграммы, поясняющие работу JК-триггсра, приведены на рис. 4.18. 91
с J к р Q зв зо зв зо зв :зв зо зв :зо зв С" лп К" Qn+I 0 0 0 Q" 0 0 1 Qh 0 1 0 Qn 0 1 1 Q" 1 0 (1 Qn 4 0 1 0 4 1 0 1 4 1 1 Q" «) б) Риг 4.18. Синхронный двухступенчатый JK-ipinгер: а — временные диаграммы сигналов: б — габ.чица функционирования При низком напряжении на тактовом входе в JK-триггерс независимо от сигналов на информационных входах происходи! перезапись информации из основного триггера во вспомогательный (Q — Р). При высоком напряжении на тактовом входе процессы в триггере определяются ст налами на входах J и К, как в асинхронном двухступенчатом триггере. Следовательно, данный син- хронный триггер является универсальным, т. с. он может работать как в син- хронном, так и в асинхронном режиме (при высоком напряжении на входе С). Заметим, что при работе в синхронном режиме, когда процессами записи информации в основной и вспомогательный триггеры управляет вход С (рис. 4.18), разрешающим сигналом на входе С является составной сигнал 1—>0 с отрицательным перепадом, а сигналы на информационных входах .1 и К воспринимаются как статические, т. е. в течение всего времени их действия. При работе в асинхронном режиме триггер реагирует только на состав- ные сигналы 1—4) на информационных входах. Таким образом, при работе в синхронном режиме в таблице функционирования (табл. 4.3) под I на входе С необходимо понимать составной сигнал 1—>0. а под 1 на информационных входах понимать высокое напряжение, соответствующее логической 1 или пользоваться таблицей функционирования, изображенной на рис. 4.18. г5. Прч работе в асинхронном режиме под 1 на информационных входах необходимо понимать составной сигнал 1—>0. Параметры быстродействия синхронного J К-триггера. реализованного по схеме рис, 4.17. а определяются точно так же, как и в предыдущих случаях. Синхронные JK-триггеры широко представлены в сериях |13|, напри- мер. ЦИС вида TBI, представляющая собой синхронный J К-триггер с уста- новочными входами. Существуют различные модификации схемного по- строения данного триггера [13—18], одна из которых представлена на рис. 4.19. 92
Рис. 4.19. Триггер ТВ1: а — схема: б — УГО По существу это J KRS-триггер или JK-триггер со входами асинхрон- ной установки Функционирование данного синхронного двухступенчатого триггер, аналогично рассмотренному выше (см. рис. 4.18). Триггер TBI (рис. 4.19) имеет по три конъюнктивно связанных входа J |, Jo, J3 и Kj. К2, Кч, что существенно расширяет его функциональные возможности. Характери- стическое уравнение такого триггера получается из (4.15) заменой J =>J, J,-J3 и K^^ Kj Kj Q,I,'=C •J1n-jrjJ"-QnvCn-Kr-K2' K"Qn. (4.16) Инвертированные входы асинхронной установки Sh R позволяют про- изводить установку триггера в состояние 1 и 0 независимо от наличия разре- шающею сигнала на тактовом входе С (рис. 4.19). Кроме рассмотренного триггера ТВ1 в серии ЦИС входят и другие JK-триггеры: ТВ6 (SNID7). ТВ9 (SN112), ТВ 10 (SN1 13), TBI 1 (SN114), ТВ 15 (SN109) и гр Особенности по- строения и функционирования этих триггеров читатель может найти, напри- мер. в [13—15]. В библиотеке примитивов САПР ПЛИС имеется синхронный JK-триггер с динамическим управлением и входами асинхронной установки и сброса. 4.7. Взаимозаменяемость различных триггеров В ря. гс случаев может возникнуть необходимость иметь 1 рггггер. выпол- няющий определенные логические операции, тогда как имеющиеся в исполь- зуемой серии ЦИС триггеры не подходят в силу своих функциональных свойств. Выходом из этой ситуации может быть использование имеющегося триггера с небольшими изменениями, т.е. соединениями, выполненными таким образом, чтобы все устройство в комплексе удовлетворяло поставлен- ным требованиям. На примере практической реализации этого способа рас- смотрим общий метод нахождения вносимых изменений. Реализация счетного триггера на базе триггера задержки. Допустим, возникает задача: из имеющегося синхронного триггера задержки (D-триг- 93
гера) построить синхронный счетный триггер (Г-триггер). В общем виде за- дача сводится к синтезу комбинационного цифрового устройства (КЦУ), подключаемого к входам имеющеюся триггера (рис. 4.20, а), чтобы устрой- ство в целом выполняло функции Г-т риггера. DJJ = Т" Q" vTf Ц" = if е Q" Ci* Т," Q" Q,T,_ С» О» 0 0 и 0 0 * 0 0 1 1 0 * 0 1 0 0 0 * 0 1 1 1 0 * 1 0 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 0 Рис 4.20. Синтез синхронного Г-г риггера и а базе синхронного D-грш гера: а — исходная схема; б — таблица; в — диаграмма Вейча; г — уравнения входов; Э — схема Синтез КЦУ сводится к нахождению логических функций, им выпол- няемых: Ср = f].(Cp,Tf Qn): Dp = f2(C".Tf Q"). Для их определения запол- ним таблицу (рис. 4.20, б), первые четыре столбца которой определяют функ- ционирование сип тезируемого триггера (в нашем случае синхронного Г-триггера), а оставшиеся столбцы — сигналы (уравнения входов), которые необходимо подать на входы Ср и I?d триггера, чтобы на выходе появился сигнал Q1 * . Необходимо отметить, что в большинстве случаев бывает удоб- но тактовый сигнал исходного и синтезируемого триггеров иметь одинако- вый. В этом случае в таблице (рис. 4.20, б) можно опустить столбцы с такто- выми сигналами С" и С,,. В представленном примере столбцы оставлены для сохранения общности рассмотрения. С помощью этой таблицы можно найти искомые фун кипи в минималь- ной форме (рис. 4.20. к. г). По этим уравнениям реализуется схема /’-триггера (рис. 4.20. <•)). В результате получился асинхронный Г-триггер с динамиче- ским способом записи информации, в котором ра (решающим перепадом будет перепад, являющийся разрешающим для базового триггера. Параметры быстродействия этого триггера определяются базовым триггером и введен- ным логическим элементом. В заключение необходимо заметить, чго рассмотренная методика позво- ляет реализовать произвольный задайньцг триггер на базе произвольного ба- зовою триггера. Данная возможность реализуется в ПЛИС, в операционный 94
блок (макроячейку) которых обычно входит синхронный D-триггер, а все остальные трит геры (RS Ти JK) реализуются по приведенной методике. Вопросы и упражнения 1. Назовите основное отличие триггеров от комбинационных цифровых устройств. 2. Проведите классификацию триггеров по функциональному признаку. Па основании определений заполните таблицы функционирования RS-, D-. Т- и J К-триггеров. L В чем заключается основное отличие синхронных и асинхронных трип еров? 4. Назовите основные отличия в функционировании и построении тршгерое со стати- ческим (потенциальным) и динамическим способами управления. 5. Дайте определения основным параметрам быстродействия триггеров. В чем разли- чие МСЖДУ ними? 6. Синтезируйте па элементах И-НЕ синхронный S-ipurrep с потенциальным управле- нием (по определению S-грипср отличается от RS-трш гера гем. что на комбинации R = S = 1 принимает значение 1). Определите параметры быстродействия сип тезиро- ванного грип ера. 7. Как изменится временная диаграмма выходного сиi нала D-гритгера (см. рис. 4.10). если она будет построена для триггера с динамическим управлением по положитель- ному перепаду? 8. (. какой целью в триггер ГМ 2 (рис. 4.12, а) введены входы асинхронной установки К и S ? Как триггер реагирует на сигналы, подаваемые на данные входы? 9. Определите, какие сит палы необходимо подать на входы С и D триггера T.V12 (рис. 4.12. а), ч гобы он перешел из состояния 0 в состояние 1 ? 10. На основании определения заполните характеристическую таблицу D-григгера. По- ясните. в чем се практическое значение. 11. Для синхронного D-триггсра с f потенциальным управлением (исход- I I |__________________________| | ( ное состояние триггера Q - I) постройте временную диаграмму I I I I I [ I > ( выходного сигнала при входных сигналах. представленных па рисунке. Как изменится временная диаграмма выходного сигнала, если тритгер имеет динамическое управление по положит елытому перепаду ? 12. Почему Т- и JK-триггеры обычно строятся по двухступенчатой схеме? Поясните от- личия построения и функционирования двухступенчатых схем от одноступенчатых. 13. Для триггера TBI (рис. 4.19) составьте таблицы функционирования для трех воз- можных режимов: асинронното. синхронного и в режиме управления установочными входами. 14. Определите, какие сигналы необходимо подать на входы J и К триггера (рис. 4.17; при ( = 1 для его переключения из состояния 1 в состояние 0. 11риведитс временные диаграммы этих сигналов. 15. Синтезируйте синхронный D-триггер на базе синхронного J К-триггера. 16. Синтезируй гс синхронный J К-триггер на базе синхронного D-триггсра. 95
5. СЧЕТЧИКИ 5.1. Определение, основные характеристики и классификация счетчиков Счетчиком называется цифровое устройство последиватсльностного тина. (яхществляющее счет и хранение числа подсчитанных сигналов. С нет- чики находят весьма широкое применение в радиотехнических системах для построения устройств синхронизации, усреднения. накопления и г. д. Кроме того, счет«ики используются в качестве умножит елей периода или делителей частоты следования импульсных последовательностей. Рис 5.1. УГО счет чика 11а счетный вход С счетчика (рис. 5.1) посту- пают сигналы Сеч (обычно в виде импульсов), об- щее количество которых необходимо подсчитать. Как правило, счетчики строятся на трип ерах. Вы- ходы Qj триггеров всех m разрядов являются вы- ходом А счетчика, на котором индицируется код числа А, записанного в счетчике. При поступлении на вход С счетчика счетного сигнала Ссч происхо- дит изменение состояния счетчика, т. е. совокуп- ности значений Л= {Qm-i, •••> Qi> Qn)- Если счетный сигнал нс поступает, счетчик сохраняет предыдущее состояние. Кроме названных входов и выхо- дов счетчики зачастую имеют еще один — установочный вход R, при подаче сигнала на который все разряды счетчика устанавливаются в состояние 0. Одним из основных параметров счетчика является модуль счета Кс,,. Модуль с чета — это число, характеризующее количество различных состо- янии счетчика. После прихода Кс,, счетных сигналов счетчик возвращается в исходное состояние. Быстродействие счетчиков характеризуется дв>мя основными парамет- рами: Тсч и Разрешающее время счетчика Тсч — это минимальный пе- риод посту пления счетных сигналов, при котором не происходит ошибок в счете. Разрешающее время определяет максимальную рабочую частоту счет- чика = ,;inax = 17%ч • Время установления кода счетчика ТуС1 — это интервал времени меж- ду поступлением счетного сигнала на вход счетчика и установлением соот- ветствующей кодовой комбинации на выходах счетчика. Поскольку при ра- боте счетчика этот интервал зависит от конкретной кодовой комбинации (от того, какие триггеры переключаются), за Гусг принимается максимальный интервал времени, который имеет место при работе счетчика на всех воз- можных кодовых комбинациях. 96
Существуют различные схемы счетчиков, отличающихся назначением, типом и количеством используемых триггеров, организацией связей между ними, порядком смены состояний и другими особенностями структуры и ре- жимов работы. В соответствии с этим можно произвести классификацию счетчиков по нижеприведенным признакам. Классификация счетчиков но модулю счета делит счетчики на три группы — двоичные, недвоичные и двоично-десятичные. Счетчик двоичный (Ксч = 2*") считает всевозможные числа, которые могут быть представлены поразрядным двоичным кодом. Недвоичные счетчики (К^,, < 2'”) используют несколько меньшее число кодовых комбинаций. Особую группу нсдвОичных счетчиков составляют двоично-десятичные счетчики (Кеч = 1.0,п), позволяю- щие легко перегни от двоичной к десятичной системе счисления. Классификация счетчиков по направлению изменения состояний. Каждой кодовой комбинации на выходах счетчика ставится в соответствие некоторое число, отражающее количество подсчитанных счетных сигналов При поступлении на вход счетчика очередного счетного сигнала меняется его состояние, т. е. кодовая комбинация (число, записанное в счетчике). Это число может быть меньше или больше i ipe. (идущего. Данное обстоятс. (ьство позволяет разделить счетчики на с г ммирующие, вычитающие и реверсивные. В суммирующих счетчиках показания увеличиваются при поступлении счетных сигналов, т. е. осуществляется их суммирование. В вычитающих счетчиках показания уменьшаются, т. е. происходит вычитание из числа, за- писанного в счетчике, каждого поступающего счетного сигнала Реверсивные счетчики являются устройствами, сочетающими в себе свойства двух преды- дущих счетчиков. Эти счетчики могут работать как в режиме суммирования, так и в режиме вычитания. Классификация счетчиков по способу переключения разрядов. В за- висимости от соединений триггеров между собой и со входом счетчика его функционирование будет различным. Если при поступлении счетного сигна- ла триггеры всех разрядов счетчика переключаются одновременно (или па- раллельно), го такой счетчик является счетчиком с синхронным (параллель- ным) способом переключения разрядов. Счетчики у которых фиггеры пере- ключаются не одновременно, называются асинхронными. Асинхронные счетчики, в свою очередь, могут быть последовательными, т.с. такими, у которых триггер последующего разряда переключается сигна- лом с прсдыдущс! о. В асинхронных счетчиках со сквозным способом пере- ключения счетный сигнал поступает на фиггеры через некотор}Ю цепочку логических элементов. Счетчики с комбинированным способом переключе- ния разрядов сочетают в себе какие-либо перечисленные способы: например, группы разрядов переключаются синхронно, а между собой связаны после- довательно и т. д. Показания счетчика (комбинации Qhl_|. Qin_2,.... Qo) могут быть пред- ставлены различными кодами, т. е. соответствием комбинации на выходах и числа, записанного в счетчике. Могут быть синтезированы счетчики, рабо- 97
тающие в двоичном коде, коде Грея, двоично-десятичном коде и т п. Рас- сматриваемые ниже методы синтеза счетчиков позволяют проектировать синхронные и асинхронные счетчики, работающие в любом коде. 5.2. Синхронные счетчики Изучение метода синтеза счетчиков начнем со способа логического про- ектирования наиболее быстродействующих (с минимальным Т><п) синхрон- ных счетчиков на примере синтеза синхронного суммирующего двоичною счетчика с модулем счета, равным вое ьми. Отправной информацией при синтезе условимся считать таблицу функ- ционирования счетчика (рис. 5.2. а), в которой отражены сост ояния всех раз- рядов счетчика при последовательном поступлении на его счетный вход сиг- налов в каждом n-м такте работы. Заметим, что такая таблица может быть со- ставлена. если известны модуль счета счетчика,, код, в котором работает счет- чик, и количество разрядов счетчика. Количество разрядов счетчика ш в об- щем случае зависит от кода. Минимальное значение числа m может быть оп- ределено формулой m - )og>(KC4)[ Квадратные скобки означают, что значе- ние лшарифма округляется до ближайшего большего целого числа. В нашем случае m = Jog 'Кс„)[ = 3. Таблица функционирования заполняется с учетом кода, в котором работ ает счетчик, таким образом, чтобы при подаче счетных сигналов в счетчике последовательно фиксировались все числа ,4 от 0 до 7. Так комбинации Q2 = Qi = Q<> = 0 в коде 421 соответствует число А = 0-4+0-2+0-1 = 0 Заполняя таблицу для всех значений А. получаем таблицу функционирования счетчика (рис. 5.2, о). После того как счетчик исчерпает все IQ, сос гоянип. он возвращается в исходное положение. п А" Ц" о;' 0 0 0 0 0 1 1 0 0 1 2 2 0 1 0 3 3 0 1 1 4 4 1 0 0 5 5 1 0 1 6 6 1 1 0 7 7 1 1 1 8 0 0 0 0 Qi КП s Рис. 5.2. Исходные данные к ciniresv синхронного счетчика: а — таблица функционирования; б — схема Счетчики обычно строятся на базе синхронных триггеров. Для реализа- ции синхронного (параллельного или одновременного) способа переключе- ния разрядов необходимо счетный сигнал подать на входы синхронизации С триггеров всех трех разрядов. Тип триггеров, с помощью которых синтсзиру- 98
ется счетчик, выбирается исходя из имеющегося их набора в используемой серии ЦИС или П-ll ИС, быстродействия, простоты схемы и т. д. Таким обра- зом. фактически до начала собственно синтеза синхронного счетчика мы имеем таблицу его функционирования и незавершенную схему (рис. 5.2. б). Схема счеччика (рис. 5.2, б) содержит 3 синхронных триггера, тактовые входы С которых соединены со счетным входом счетчика, а выходы тригге- ров являются выходами счетчика. Чтобы не нарушать общности рассужде- ний. на схеме изображен произвольный триггер с информационными вхо- дами (или входом) X, в качестве которого может быть вход D (у триггера задержки), входы IК или Т и т. д. Основная часть проектирования счетчика (или собственно синтез) со- стоит в определении сигналов, которые необходимо подать на информацион- ные входы триггеров всех разрядов XL Х(" с тем. чтобы каждый из них переключался в соответствии с задаваемой таблицей функционирования счётчика (рис. 5.2, «), г. е. в определении логических функций вида Хэ = G(Q">Q-n>Qo); X,n= fjQV.Qr.Qj); xon= ft)(Q2n,Q;",Q(?), (5.1) называемых уравнениями вхооов триггеров. По этим выражениям строится комбинационные схемы, т. е. завершается синтез счетчика. Воспользуемся табличным методом нахождения уравнений входов, который позволяет достаточно просто их определять в табличном, а затем и в минимизированном виде. Для определения уравнений входов добавим к таб- лице функционирования столбцы (рис. 5.3, а), в которых и определим иско- мые уравнения входов (будем применять /'-триггеры). 11 А" Q? иг О» г," ТГ т" и 0 0 0 0 0 0 0 1 1 1 0 0 1 0 1 1 2 2 0 1 0 0 0 1 3 3 0 1 1 1 1 1 4 4 1 0 0 0 0 1 S 5 1 0 1 0 1 1 ь 6 1 1 0 0 0 1 7 7 1 1 1 1 1 1 8 0 0 0 0 «) Q- ► <Г‘ •pH 0- ->о 0 0-> 1 1 1 - ->0 1 1 - -> 1 0 о) tn=l Т1п=е,т V-or-Q? 6J Q" Q." ОГ Z 1 1' 0 0 1 1 z 0 0 L'_ _Ll 0 0 0 0 0 0 Рис. 5.?. Синтез синхронного счетчика: а — 1а6лица функционирования с уравнениями входов: б — .характ ернсчическая таблица:« — уравнения входов;? — диаграммы Вейча Заполнение столбцов, определяющих уравнения входов Т2П ,Т,П,Т(" . про- изводится на основании следующих рассуждений. Определим, например, ка- кой сигнал надо подать на информационный вход Т триггера младшего разря- да в нулевом такте работы T(j (верхний правый угол таблицы на рис. 5.3, а). 99
В соответ tTBiiii с таблицей функционирования счетчика, данный триггер при прихоте счетного сигнала должен совершить переход 0—♦ !. Чтобы исполь- зуемый /'-триггер совершил данный переход, необходимо на его информаци- онный вход подать сигнал I, что определено его функционированием и от- ражено в характеристической таблице (рис. 5.3, б). Таким образом, в соответ- ствующую строку записываем символ 1 (1^=1). Проделав аналогичные операции для всех разрядов на всех тактах рабо- ты, определяем таблично все три искомых уравнения входов (5.1). Да нее представляем ли функции на диаграммах Вейча ( рис. 5.3, г) и минимизируем (рис. 5.3, е). Из таблицы видно, что уравнение входа младшего разряда имеет одну из самых прос гых МДНФ (Tu“ = 1). Для двоичных суммирующих счетчиков полученные уравнения входов можно обобщить на произвольное число разрядов: Т?-1: Tf-qJ; T?=Q," QJ;... = Q".2 Om-j-Qi” •.«. <5.2) Данные уравнения входов полностью определяют схему синтезирован- ного грсхразрядного счетчика (рис. 5.4, а). Рис 5.4. Синхронный суммирующий двоичный счетчик: а — схема; б — временные диаграммы Уравнение входа младшего разряда имеет максимально простой вид (TfJ1 = 1), и по >тому д. 1я его реализации достаточно подключить вход триггера к генератору единицы. Вход Т\ триггера первого разряда подключаются к 1(К)
выходу Qo младшего разряда. Для реал изации уравнения входа старшего раз- ряда То требуется конъюяктор DD3. Проведем анадиз функционирования синтезированного счетчика и оце- ним его быстродействие, для чего построим временные диаграммы сигналов на его счетном входе и всех выходах (рис. 5.4, б). Пусть на вход Се, постоян- но поступают счетные сигналы в виде колебаний с периодом Тп. Будем счи- тать, что счетчик нос троен на двухступенчатых Т-триггерах, рассмотрению*: в § 4.5. При сигнале на входе Ссч - 1 (Ц < I < Ь), в основной триггер двухсту- пенчатою триггера младшего разряда будет произведена запись информации (Со = Ссч = I, То = 1), в данном случае будет записана 1. При Сеч = 0 (ц < I) произойдет перезапись этой информации из основного трш гера во вспомога- тельный, и она появится на выходе триггера младшего разряда через время за- писи информации во вспомога тельный триггер Titi или через время задержки переключения триггера Т(1р. Состояния основных триггеров первого и второго разрядов в л ом такте не и вменятся, поскольку на их информационных входах действует сигнал 0 (Тз = Т| = 0), а Т-трипер при этих сигналах сохраняет пре- дыдущее состояние Таким образом, в момент времени Ь на счетном входе Ссч появился разрешающий перепад (счет ный сигнал), и через время Т1Лр = Tt(i в счетчике будет зафиксирован код нового числа 001 (рис. 5.4, б). При подаче сигнала Ссч = 1 в следующем такте в основной триггер млад- шего разряда запишется О (То= 1, Qo= 1), в триггер первого разряда — 1 (Т| = = Qo = 1). В момент I = Ц сигнал на счетном входе становится равным нулю, происходит перезапись этой новой информации из основных триггеров во вспомогательные и через Т-щ = Т1т[> на выходах счетчика установится код 010. Аналогично можно провести анализ работы счетчика при дальнейшем счете входных сигналов и убедиться, что счетчик функционирует в соответ- ствии с заданной таблицей функционирования <рис. 5.3, а), Из проведенного анализа видно, что новый код устанавливается в счетчике через время, рав- ное задержке переключения триггера или перезаписи информации из основ- ного триггера во вспомогательный И так как все триггеры начинают пере- ключаться одновременно (синхронно), поскольку разрешающий перепад на входы С поступает параллельно, то и новый код появтяется одновременно на выходах переключающихся триггеров. Отсюда время установления кода синхронного счетчика нс зависит от числа его разрядов и полностью опреде- ляется задержкой переключения триггера: ТуС1 = Т} |Р = Тзц. (5.3) Это минимальное время установления кода счетчика, которое может быть реализовано на триггерах с задержкой переключения Tirp. Для определения разрешающего времени счетчика Гсч необходимо най- ти минимально возможные части периода входного колебания Тппйп и T|mjn, как это мы делали при анализе быстродействия триггеров (§ 4.4): 101
7сч ~ Ibmin + Tjmin- (5.4) Минимально возможное время действия сигнала Ссч — 0 (То,,,™) опреде- ляется длительное! ЫО переходных процессов, происходящих В СЧС1 ЧИКС. Ппи Ссч = I в каждом триггере происходит перезапись информации из основного во вспомогательный триггер. Таким образом, T[)inin = Тзв = Ti-tp- (5.5) При Ссч = I происходит запись информации в основные триггеры двух- ступенчагых триггеров всех разрядов (предустановка триггеров). Однако сиг- нал на информационном входе старшего разряда Tj появится несколько поз- же (см. рис. 5.4. (7), поскольку лш йческий элемент DD3 вносит задержку Tijn. Чтобы этот процесс завершился, необходимо иметь сигнал 1 на входах С триггеров, не менее +Т31Ю, т.е. Т|пмп= Тзо + Тз.ло- (5.6) Выражения (5.4) — (5.6) определяют разрешающее время счетчика, т. е. минимально возможный период поступления входных сигналов и макси- мальную рабочую частоту счетчика 7?ч = Tomin + Т"lin.ii = Т5тр + 7зо + Tj.n = Г.р + Т)jn; Fсч — 1/Тсч. (5.7) Как следует из (5.7), разрешающее время счетчика, собранного по схеме рис. 5.4. а несколько больше ра ^решающего времени грш гера. Заметим, что данный счетчик может быть синтезирован по изложенной методике на любом типе трип еров, для чего необходимо исполыовать характеристическую таблицу (см. рис. 5.3. б) выбранного триггера. Синхронным вычитающий двоичный счетчик. Показания вычитаю- щего счетчика по определению должны уменьшаться с приходом очередного счетного сигнала. Таблица функционирования вычитающего счетчика с моду- лем счета, равным 8, и работающего в коде 421 (табл. 5.1) получается из таблш [ы суммирующего счетчика (см. рис. 5 2. а) 1 ipn ее считывании в ооратном порядке. Синтез вычитающего счетчика полностью аналоги- чен синтезу суммирующего счетчика и поэтому предла- гается читателю в качестве упражнения Уравнения вхо- дов триггеров вычитающего счетчика имеют вид T(? = l; T^Qo"; T2"=QfQon. (5.8) Как видно из (5.8) схема вычитающего счетчика будет отличаться от схемы суммирующего счетчика (рис. 5.4, а) только тем. что сигналы на информационные входы трип еров поступают с их инверсных выхо, (ов. Полученные уравнения входов могут быть обобщены и на случай двоичного счетчика, имеющего ш разрядов: т„ =1; T,"=QS-. T2"=of Т^, = qT?q£. • ..Q,'' Q£. (5.9) I аолица 5.1 Таблица функ- ционирования вычитающего счетчика А" ог о; 7 1 1 1 6 1 1 0 5 1 0 1 4 1 0 0 3 0 1 1 0 1 0 1 0 0 1 0 0 0 0 7 1 1 1 102
Синхронный двоичный ре верен вн ый счетчик. Реверсивный счетчик сочетает в себе свойства суммирующего и вычитающего счетчиков. Ревер сивныс счетчики строятся двумя способами. В первом случае счетчик имеет один счетный и один управляющий входы, причем в зависимое! и от сигнала на управляющем входе счетчик работает либо в режиме суммирования, либо в режиме вычитания. Во втором случае счетчик имеет два счетных входа, при подаче сче - ных сигналов на один из входов они суммируются, при подаче на другой — вычитаются. Рассмотрим синтез счетчика первого типа, причем oi раничимся тремя разрядами в целях сокращения объема изложения. Таким образом, проведем синтез синхронного реверсивного двоичного счетчика, работающего в коде 421 с модулем счета, равным восьми. Условимся, что при подаче на управ- ляющий вход счетчика Р сигнала 0 счетчик работает в режиме суммирова- ния, а при Р= 1 — в режиме вычитания (рис. 5.5, а). Заметим, что случаю Р = = 0 соответствует- таблица функционирования суммирующею счетчика (см. тис. 5.3, а), а при Р— 1 — вычит ающего счетчика (табл. 5 1). Р" QV Qr - q; IT Т," V о 0 0 0 и 0 1 О 0 0 0 1 0 1 1 0 0 1 0 0 0 1 е о 0 0 1 1 1 1 1 Q. 0 1 0 0 0 0 1 с и I 0 1 0 1 1 >» в 1 1 0 0 0 1 и 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 о 1 1 0 1 0 0 1 I 1 0 0 1 1 1 I 0 1 1 0 0 1 ыч 1 0 1 0 0 1 1 во 1 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 б) в) Т," = Р" Q" v Р" -Qu" = Р" ©Q" Т,п = Рп -ОГ QI? v Р" Q," -QJ = = (р" € ОГ) (р" ® Q")= (р " ® ОГ).Т Рис. 5.5. Синтез реверсивного счетчика: а — таблица функционирования с уравнениями входов; д — диаграммы Вейча; в — уравне- ния входов: г — схема 103
Исходная схема для синтеза реверсивного счетчика будет аналогична схеме произвольного синхронного счетчика (см рис. 5.2, б) с единственным отличием —добавится управляющий вход Р и, следовательно, комбинацион- ные цифровые устройства КЦУ(1, КЦУ| КЦУ2 станут четырехвходовыми. Та- ким образом, синтез реверсивного счетчика сводится к нахождению уравне- ний входов, которые являются ЛО1 чческими функциями четырех аргументов X?n = f2(Pll.Q;,.Qr,Q0n); Xf = ti(p\Q?,Qr,Qon); Xon = fn(pn,Q?.Qf.Q"). Синтез реверсивного синхронного счетчика, аналотичный синтезу произ- вольного синхронною счетчика, представлен на рис. 5.5. Уравнения входов двоичного реверсивного счетчика (рис. 5.5. в) можно обобщить. Так, для разряда с номером m уравнения входов будут иметь вид т: = Рг QLi -Qnn,_2 •...Qi1’ Q(? vp".qT; q:_> ... Q1”Qo" • (5.10) Для моделирования уравнений входов (рис. 5.5,в) в схему реверсивною счетчика необходимо ввес ги. кроме триггеров, логические элементы. Для по- с троения комбинационного цифрового устройства, представляемого функ- цией Т|П, используем элемент ИСКЛЮЧАЮЩЕЕ ИЛИ. Уравнение входа Т2П предварительно представим в виде логического произведения уравнений входов второго разряда (Т]П) и сомножителя Pn(DQ]n. Справедливость подобного преобразования можно доказать с помощью логических тождеств. Определим параметры быстродействия синтезированного счетчика. Вре- мя установления кода реверсивного счетчика, так же как суммирующего и вычитающего счетчиков, определяется процессом перезаписи информации и з основного триггера во вспомогательный, происходящим параллельно в триг- герах всех разрядов, и поэтому fvcr = Titi. Для нахождения разрешающего времени счетчика воспользуемся мето- дикой, изложенной ранее: 7'., = То,™,, + Ti„,in. Минимально возможная дли- тельность T()min определяется процессом перезаписи информации из основ- ного во вспомогательный триггер Т5В= Г, |р. Длительность T|mjn определяется временем задержки распространения сигнала через дополнительно введен- ные логические элементы ГВ11у1М, Т, д» и временем записи информации в ос- новной триггер каждого из разрядов: T|ltli„ = 7 ,лл>+ + Т, ш>5 + tjjo'- Отсюда раз- решающее время и максимальная рабочая частота счетчика Гсч = 7”'В + Л.ПГ)4 + T, DD5 + Гщ = Лр + Г3 PD4 + Т} DD5‘, Fc<i = 1/Тсч- Проведенный анализ быстродействия показал, что введение логических элементов в схему счетчика нс изменило время установления кода, по увели- чило разрешающее время счетчика, что говорит о нежелательности введения дополнительных логических элементов в счетчик. Особенности построения и функционирования счетчиков в инте- гральном исполнении. Выпускаемые промышленностью счетчики, как пра- вило. обла зают дополнительными функциональными возможностями. В дан- 104
ном пособии не представляется возможным привести анализ функциониро- вания всех вариантов счетчиков в интегральном исполнении, поэтому огра- ничимся рассмотрением двоичного синхронного счетчика ИЕН) (SN161), представленного, например, в [2J. Логическая структура этого счетчика изо- бражена на рис. 5.6. На примере этого счетчика рассмотрим, кроме методов собственно анализа функционирования, также методы реализации дополни- тельных возможностей (режимов работы). Данный счетчик построен на основе четырех синхронных D триггерах DD|6...DD|9, управляемых отрицательным перепадом. Поскольку счетный сигнал от входа С поступает на тактовые входы через инвертор DDio, весь счетчик управляется положительным перепадом на входе С. Данный счетчик может работать в одном из четырех режимов (табл. 5.2) при подаче соответ - ствующих сигналов на его входы. Таблица 5.2 Режимы работы счетчика НЕЮ 1» R с ст. ст. ц ОГ' Режим * 0 * * * я» 0 Асинхронный сброс 0 1 т ♦ ♦ Bi I), Параллельная загру 1ка 1 1 t 1 1 * +1 Счет 1 1 * * 0 * Q" Хранение числа 1 1 * 0 * * Q," Хранение числа Установка счетчика в состояние 0 (асинхронный сброс) осуществляется асинхронно подачей сигнала 0 на вход R. Для анализа остальных режимов работы и способов их задания целесо- образно определить уравнения информационных входов Dyg, ..., Dji тригге- ров счетчика. Из рис. 5.6 определяем уравнения входов: D П) - Р -D,} v Р - (О' - CI • CI । v Оо СЬ-С!,); Dp = Р D, v Р (Qt Qo Cl2 -CI, vQ, Qp -Cb CI,); _ __ (5.11) DT2 - Р - D2 v Р (Q2 Q, -Q() Cl2 Ci, vQ2 Q, Qo CI2 -CIj); Dr3 = P• D3 v P (Оз Q2 -Q) Q() CI2 CI, vQ^ QT -Qi On Cb CI,). Из (5 11) следует, что при сигнале на управляющем входе Р равном ну- лю, выполняются равенства Dn,= Di, т. е. при подаче положительного пере- пада на вход С счетчика произойдет запись че гырехразрядного двоичного числа, подаваемого на входы D ro...D] 3 счетчика, г. е произойдет параллель- ная загрузка. При этом значения сигналов на остальных входах могут быть произвольными (табл. 5.2). Счет и хранение информации осуществляется при Р - 1. Если логиче- ское произведение сигналов переноса CI, -С12 =1, в устройстве реализуются уравнения входов синхронного суммирующего счетчика на D триггерах, что легко получается из уравнений входов (5.11): 105
Рис. 5.6- Ло1 ичсчкаи cipxki vpa счетчика ИЕ10 106
Е*ТО - Ql)’ вц -Qi QovQi Q{); £>T2 = Q; Q| ’Q.jvQ2 Q| Qo; ^гз = 0з Q2 'Qi "QovQ» Q2 ’Qi Qo- (5.12) Гели же хотя бы на один из входов — С1| или СЬ будет подан сигнал, соответствующий 0, из (5.11) получается, что 1>п = Qi, т. е. при подаче такто- вого сигнала С каждый триггер подтверждает предыдущее состояние или престо не переключается. При этом счетчик работает в режиме хранения ин- формации (табл. 5 2). Помимо выходов Qi... Qo счетчик ИЕ10 имеет выход переноса СО. по- зволяющий соединять несколько ЦИС НЕЮ для увеличения разрядности счетчика. На рис. 5.7 приведена схема двенадцатиразрядного двоичного счетчика, построенного путем соединения трех счетчиков ИЕ 10. Q11Q QAb Рис. 5.7. Каскадирование сче>чиков HF 10 Синхронные нереверсивные и реверсивные счетчики входят в выпус- каемые серии цифровых интегральных схем Эю, например, ИЕК) (SN161), ИЕ17 (SN169), ИЕ20 (SN390) и другие. Данные счетчики дополнительно обычно имеют входы параллельной записи информации и выводы для нара- щивания разрядности 113| Библиотека мегафункций САПР Quarlus II содер- жит синхронные счетчики, у которых можно задавать модуль и направление счета. Синхронные недвоичные счетчики имеют модуль счета меньше, чем число возможных комбинаций. Рассмотрим синтез недвоичного счетчика с модулем счета, равным десяти (двоично-десятичного счетчика), работаю- щего в коде 5211. Такой сче гчик должен со держать четыре разряда (пт = 4). 107
Че гырехразрядный счетчик может иметь максимальный модуль счета, равный шестнадцати (Ксч 111;1Х = 16). однако в двоично-десятичном счетчике используются только десять состояний, оставшиеся шесть состояний должны быть исключены. Рабочие комбинации определяются кодим, в котором рабо- тает данный двоично-десятичный счетчик, причем однозначно эти комбина- ции определены для кода 8421, остальные коды неоднозначны, т. е. одному и тому же числу может соответствовать более одной комбинации сигналов на выходах счетчика. Так, например, число 3 в коде 5211 может быть представ- лено двумя комбинациями А=3 = 50+21 + 10+11 (0101) или А=3 = 5-0 + 2-1+ 1-1 + 1-0(0110). Остановимся на одной из возможных таблиц функционирования двоич- но-десятичного счетчика, работающего в коде 5211 трис. 5.8. а). В качестве элементов памяти будем использовать синхронные двухступенчатые JK- триггеры с конъюнкгивно связанными входами, рассмотренные в главе 5. Синтез производится в рассмотренной ранее последовательности. С по- мощью таблицы функционирования и характеристической таблицы JK- триггера (рис. 5.8, б) заполняются столбцы, определяющие уравнения входов, заполняются диаграммы Вейча для уравнений входов (рис. 5.8. к). В приведенных диаграммах Вейча в отличие от диаграмм Вейча для дво- ичных счетчиков часть ячеек осталась незаполненной (в нашем случае их 16 - К) = 6). Возникает вопрос, как к ним относи ться при минимизации? Дан- ные ячейки соответствуют исключаемым комбинациям, и, следовательно, при минимизации уравнений входов их можно доопределить удобным образом, по- скольку для данного счетчика они являются нерабочими или запрещенными. В результате получаем уравнения входов в минимальной ДНФ трис. 5.8, г). Заметим, что появление нерабочих (запрещенных) комбинаций в недвоичных счетчиках позволяет упростить уравнения входов. Но найденным уравнения входов изображаем схему счетчика (рис. 5.8, d). Наличие конъюнкгивно свя- занных входов у используемых триггеров позволяет укроет ить схему: син те- зированный счетчик не содержит дополни тельных логических элементов. Оценим быстродействие счетчика. Очевидно, что параметры опреде- лятся формулами ?~уст — = Т3 гр; = 7()nijn +7|jnin = "Тзв+ T’jo = ГГр. Разрешающее время счетчика, собранного по схеме рис. 5.8. т). равно разрешающему времени триггера. Это самое высокое быстродействие, кото- рое может быть достигнуто (быстродействие полностью определяется триг- гером, независимо от числа разрядов счетчика). В заключение подчеркнем, что изложенным способом можно синтези- ровать синхронные счетчики с произвольной таблицей функционирования пюбым модулем счета и на любом типе триггеров. 108
Л" Q? Q" ОТ q: J.? KJ J г K" J г КГ J«" 4‘ 0 0 0 0 0 0 ' * 1 0 * 0 * 1 * 1 0 0 0 1 0 * 0 * i * * 0 2 0 0 1 1 0 * 1 * * 1 ♦ 0 3 0 1 0 1 0 * * 0 1 * * 0 4 0 1 1 1 1 * jjc 1 * 1 * 1 5 I 0 0 0 ♦ 0 0 * 0 ♦ 1 * 6 1 0 0 1 * 0 0 * 1 * * 0 7 1 0 1 1 * 0 1 * 1 * 0 8 1 1 0 1 * 0 * fl 1 * * 0 9 1 I 1 1 * 1 * 1 * 1 * 1 0 0 0 0 0 г к1 0->0 0 * o i i *r 1 ->o * 1 1 —> 1 * 0 hn = Q?Qr J"=Q" Ji" = Qn J0" = i K". = Q2nQ,n K? = Qr КГ = 1 Ki' = Q" Qf Рис. 5.8. Синхронный двоично- wen i ичныи счетчик: a — таблица функционирования; б — характеристическая таблица: в — дна^а.ммы Вейча: г — уравнения входов; <) — схема 109
5.3. Асинхронные счетчики В ряде случаев от счетчиков не требуется высокое быстродействие, в частности, время установления кода ГУС1 может быть достаточно большим, например, в делителях частоты, тогда как схема счетчика должна быть по возможности простой, т. е. иметь меньшее число элементов и потреблять меньшую мощность. В этом случае целесообразно использовать асинхрон- ные счетчики. Упрощение схемы асинхронною счетчика досчитается тем, ч.о разрешающий сшнгт поступает на тактовые входы С ipm 1 еров не в каж- дом такте, как в синхронных счетчиках, а но возможности только в те такты, когда тршгер должен изменить свое состояние. В остальные такты работы разрешающий сигнал стремятся не подавать, и это позволяет иметь произ- вольные сигналы на информационных входах триг геров. В результате упро- щаются уравнения входов триггеров, и, как следствие, упрощается схема счетчика. Метод синтеза асинхронных счетчиков в основном базируется на методе синтеза синхронных счетчиков с добавлением одного этапа (определение тактирующих сигналов триггеров) и небольших изменениях в остальных. Рассмотрим метод синтеза на примере некоторых асинхронных счетчиков и сравним их с соответствующими синхронными счетчиками. Асинхронный суммирующий двоичный счетчик, работающий в коде 421. Проведем синтез счетчика, имеющего такую же таблицу функцио- нирования, что и синхронный счетчик (см. рис. 5.2, а) на тех же синхронных /’-триггерах с динамическим управлением по отрицательному перепаду. Исходными данными для синтеза асинхронного счетчика являются таб- лица функционирования и схема (рис. 5.9). п Ап QJ L Q." 1 q: О о 0 0 и 1 1 0 0 1 2 2 0 1 0 3 3 0 1 1 4 4 1 0 0 5 5 1 0 1 6 6 1 1 0 7 7 1 1 1 8 0 0 0 0 «) КЦУ* Рис. 5.9. Исходные данные к синтезу асинхронного счетчика: а — таблица функциош.роъання; б — схема Процесс синтеза асинхронного счетчика сводится дополнительно к оп- ределению сигналов, подаваемых на тактирующие входы триггеров CS, С|, G) и. как и ранее при синтезе синхронных счетчиков, к нахождению уравне- ний информационных входов триггеров Т?, Т\, То. 110
Сигналы Сг.СьСо могут определяться двумя способами: выбором наибо- лее подходящих сигналов из числа имеющихся в счетчике (Ссч. Qi, Q_>, Q|. Q|- Qo, Qo ) либо синтезом специальных КЦУ. формирую- щих необходимые тактовые сигналы. При синтезе счетчика по второму мето- ду получаются счетчики со сквозным способом переключения разрядов. Та- кие счетчики в настоящее время не находят широкого применения, и поэтому в данном пособии их синтез не приводится. Читатель может ознакомиться с мето дикой синтеза, например, в [2J. Рассмотрим синтез асинхронных счетчиков по первому варианту. После заполнения таблицы функционирования необходимо выбрать тактовые сиг- налы С?, С|, Со- Для облачения их выбора добавим к таблице функциониро- вания счетчика столбцы, в которых будем отображать сигналы (функции) на тактирующих входах Стршгеров всех разрядов (рис. 5.10, а). Рис. 5.10. Синтез асинхронною счетчика: а. б — таблицы функционирования с уравнениями входов; а — схема; г — временные диа- граммы Условимся отображать наличие разрешающего сигнала на входе С сим- волом «|»(положительный перепад) или символом «J,» (отрицательный пере- 111
пал), а его отсутствие — символом «О». Замегим, что для синхронного счет- чика сто. (бцы для сигна тов С заполнились бы соответствующими стрелками в каждом такте, поскольку в нем каждый триггер в каждом такте (или при каждом появлении счетного сигнала) получает разрешающий сш нал. На рис, 5 10, а при заполнении в таблице столбцов для сигналов С стро- ки (такты), в которых на входах С имеет место разрешающий сигнал. отме- чаются символом «|». Ра {решающий сигнал «X» на входе С должен быть, очевидно, тогда, когда триггер меняет свое состояние, т. е. совершает пере- ход 1—>0 или 0—-1, Младший разряд, как эго видно из таблицы функциони- рования (столбец Q()), меняет свое состояние при каждом приходе счетного сигнала (в каждом такте), и поэтому в каждом такте он должен получать раз- решающий сигнал. Такой сигнал имеет место только на счетном входе счет- чика. Следовательно, тактирующий вход G. триггера младшего разряда необ- ходимо соединить со счетным входом счетчика, как эго было сделано в син- хронном счетчике, и никаких отличий в нахождении уравнений входов младшего разряда, по сравнению с синхронным вариантом счетчика, нет. Первый разряд (Q|) на первом такте (при изменении состояния счетчика из ООО в и01) состояние не меняет, т.е. триггер совершает переход 0—>0. и по- этому разрешающий сигнал на вход С желательно не подавать (С = 0). Одна- ко пока неизвестно, удастся ли подобрать сигнал не дающий разрешение в этом такте работы, и поэтому в данной строчке пока ничего нс записываем. На втором такте (рис. 5.10, а) происходит изменение состояния триггера, и для этого на вход С необходимо подать разрешающий сигнал (отрицательный перепад для вЫбйЙиных грш геров), что отражаем в таблице символом «|». Аналогично анализируются остальные такты работы и дру1 ис разряды После заполнения таблицы (рис 5.10, я) производится подбор сш налов, по- даваемых на входы С. Обычно в качестве таких сигналов используются сиг- налы со счетного входа или с прямых или инверсных выходов триггеров -Qi Q.’Qi-’Qo )• При этом обязательно следует учесть специфику работ® триггера «запуск положительным или отрицательным перепадом). Так. при использовании двухступенчатых триггеров, рассмотренных в главе 5, разрешающим сигналом на тактирующем входе будет отрицательный перепад (I—*0). Именно при таком сигнале триггер получает возможность переключаться, именно такой сигнал у нас закодирован символом «|» в пра- вой части таблицы. Так, младший разряд, тактирующий вход которого под- ключен к счетному входу счетчика, будет переключаться при каждом отри- цательном перепаде счетного сигнала. Произведем подбор сигнала на тактирующем входе первого разряда. Общие требования к сигналу, подаваемому на тактирующие входы, следую- щие: • сигнал обязательно должен быть ра {решающим, когда триггер меняет свое состояние (гам. где С = 1 на рис. 5.10, а); 1 12
• в ост адьных тактах (строках) желательно, чтобы данный сигнал не был разрешающим для триггера (пустые строки таблицы рис. 5.10, «), и ес- ли это не удается, то лучшим будет сигнал, который создаст большее количество нулей {С = 0) в пустых строках столбцов сигналов С. В качестве сигнала на тактирующем входе первого разряда (Qi), в об- щем случае могу® выступать (CC4,Q2,Q2,Q|,Q1.Qh,Qn). Проанализируем возможность их использования. Счетный сигнал создает разрешающий пере- ход I—>0 или J) во всех тактах, в том числе в тех четырех тактах, где он не- обходим (рис. 5.10, а), следовательно, сигнал Ссч вполне может быть исполь- зован для управления записью информации в триггер первого разряда. Одна- ко этот сигнал имеет разрешающий перепад и в других тактах, где желатель- но его не иметь поскольку при этом триггер будет функционировать, как в синхронном счетчике, и никакого упрощения уравнении входов не полу- чите?. Попытаемся использовать другие сигналы. Сигнал с выхода старшего разряда Q> использовать нельзя потому, что он создаёт за весь цикл работы только один разрешающий перепад 1—-0) при переключении счетчика из комбинации 111 в 000, тогда как триггер первого разряда должен переклю- чаться четыре раза. Сиг нал с выхода первого разря за Q । использовать нельзя, так как триггер не может синхронизировать сам себя. Наиболее подходящим сигналом, подаваемым на тактирующий вход первого разряда, является сигнал с выхода младшего разряда Q(t, поскольку он. с одной стороны- обеспечивает, когда это необходимо, разрешающий пе- репад I—>0 и нс имеет такового во всех остальных случаях. Такой сигнал, со здающий максимально возможное число неразрешающих переходов, явля- ется лучшим, именно при нем максимально упрощаются уравнения входов. Итак, вход С| подключаем к выходу Qo. это условно будем в дальней- шем обозначать С" —> Q,". Знак равенства ставить ис корректно, поскольку сигналы С и Q в таблице имеют разную кодировку (иод Q = 1 понимается по- стоянно действующее напряжение, соответствующее логической единице, а под С = | понимается разрешающий сигнал триггера, в нашем случае пере- ход 1—♦()). Затем при выбранном сигнале на тактовом входе полностью за- полняем столбец, отображающий сигнал на входе С|, т.е. ставим символ «|» или «0» в пуегых строках, как это сделано в таблице (рис. 5.10, б). Совершенно аналогично находим сигнал, подаваемый на вход триг- гера старшего разряда. В качестве этого сигнала по названным правилам лучше всего использовать сигнал с выхода первого разряда, поскольку он создает большее количес гво нулей в пустых строках столбца С2. Итак, опре- делим уравнения входов С триггеров: С^С",; C,n^Q"; C^Qf. (5.13.) Далее переходим к нахождению уравнений информационных входов фиггеров, для чего к таблице функционирования добавляем столбцы, ото- I 1.3
Сражающие сигналы T2n, Т/1, Т()п (рис. 5.10, б). При заполнении этих столбцов учитываем, что если в данной строке (данном такте работы п) триггер нс по- лучает разрешение на переключение (С" =0), то, очевидно, на информаци- онный вход триггера можно подавать любой сигнал (отображаем симво- лом «*»). При наличии разрешения на переключение (С,п =1) сигнал Т/1 оп- ределяется, как и в синхронном счетчике, характеристической таблицей триг- гера Сравним уравнения информационным входов асинхронного (рис. 5.10, б) и синхронного счетчиков (см. рис. 5.3, а). В столбцах ТГ и Т'" (рис. 5.10, б) для первого и старшего ра >рядов появились строки, где сигналы могут бы гь определены факультативно (т.е. любым образом), и, следовательно, уравне- ния входов асинхронного счетчика получаются Существенно проще. В нашем примере для получения уравнений входов даже не требуется представлять их на диаграммах Вейча, поскольку очевидно доопределение уравнений входов на всех факультативных значениях единицами. Таким об- разом, получаем уравнения входов асинхронного счетчика: Топ=1; Т1П = 1; Т2П=1. (5.14) Заметим, что уравнения входов этого счетчика настолько просты, что вместо синхронных Г-триггеров для его построения можно использовать асинхронные Т-триггеры. По найденным сигналам на тактирующих входах (уравнениях» тактирующих входов) и по уравнениям информационных вхо- дов (5.14) изображаем схему счетчика (рис. 5.10, в). Проведем анализ работы синтезированного счетчика, для чего построим временные диаграммы сигналов при подаче на счетный вход периодической последовательности счетных сигналов (рис. 5.10, а). При Ссч =1 происходит запись информации в основной три» гер двухсту- пенчатого григ гера младшего разряда Так как сигнал на его информацион- ном входе То всегда равен единице, го в него записывается двоичный сигнал, противоположный сигналу на выходе триггера Q(). Как только сигнал на счет - ном входе становится равным нулю, начинается процесс перс гаписн инфор- мации из основного триггера во вспомогательный, и через время TiK= 7\лр на выходах счетчика зафиксируются сигналы Qu= I. Q| = Qz = 0 (рис. 5.10, г). Видно, что при этом переключении новый код (ООН счетчика установился через время Г5лр. Однако это нс будет временем установления счетчика в це- лом. Для его определения необходимо рассмотреть все возможные переклю- чения и выбрать наибольшее. При этом можно легко убедиться, что младший разряд будет переключаться с частотой в два раза меньшей, чем частота по- ступления счетных сигналов. Анализ переключения первого разряда Q. про- изводится так же, как и младшего, с единственным отличием: тактирующим сигналом является выходной сш нал Q(> младшего разряда. Заметим, что при переключении счетчика из состояния 001 в 010, когда меняет состояние триг- 114
гер первого разряда, установление кода происходит через вдвое больший промежуток времени (27\|р). поскольку здесь последовательно (друг за дру- гом) переключаются младшие разряды. При переключении старшего разряда, для которого тактирующим сигналом является выходной сигнал первого раз- ряда Q|, время установления кода утраивается (37",1Р), это время — наиболь- шее время переключения, оно и является временем установления кода счет- чика Гус, = 3 Л>г* = 3 ,р. (5.15) Время установления кода асинхронного счетчика превышает время уста- новления синхронного счетчика = Гзтр). Это является недостатком всех асинхронных счетчиков. Что касается разрешающего времени асинхронного счетчика, то, как видно из временных диаграмм рис. 5.10, г, в наихудших ус- ловиях находится триггер первого разряда, поскольку период поступления сигналов на его вход наименьший. Для его нормальной работы необходимо иметь ^сч= Л)пмп + Пплп~ Т(в+ 7зо= Гц>- С Разрешающее время и максимальная рабочая частота асинхронного счетчика определяются (так же как и в соответствующем синхронном счет- чике) параметрами используемых триггеров и не зависят от числа разрядов; однако легко заметить, что при работе на предел гной частоте показание асинхронного счетчика индицировать затруднительно, так как его младшие разряды успеют переключиться несколько раз за время распространения сиг- нала до старших разрядов. Для снятия показаний такого счетчика необходи- мо прекрати гь поступление счетных сигналов и дождат ься завершения пере- ходных процессов в счетчике. Полученные результаты синтеза асинхронного .дволчного счетчика легко обобщить на большее число разрядов. Уравнения входов асинхронного сум- мирующего двоичного счетчика, имеющего пт разрядов, имеют вид C(,?->Ct..I:C‘,->Q1n_l; Т(" = l;T(n = 1; г = 0,..., rn-1. (5.17) Уравнения входов (5.17) максимально просты, и поэтому весьма простой оказывается схема счетчика, имеющего сколь угодно большое число разря- дов (на каждый разряд требуется триггер без каких-либо дополнительных логических элементов, что недостижимо при построении счетчика в синхрон- ном варианте ». Время установления кода асинхронного счетчика будет расти в прямой пропорциональност и от числа разрядов, поскольку триггеры соединены по- следовательно Густ = шГ5 гр. Разрешающее время такого последовательного счетчика нс зависит от числа разрядов Тсч = Г1р. Недвоичные асинхронные счетчики. Рассмотрим синтез нсдвоичного асинхронного счетчика, имеющего модуль счета, равный десяти, и работаго- 115
щего в коде 5211. Такой счетчик был синтезирован в синхронном варианте (см. рис. 5.8). Заполним таблицу функционирования счетчика и определим сигналы, подаваемые на тактирующие входы триггеров (рис. 5.11, а). Для двух млад- ших разрядов не удается подобрать тактирующих сигналов, следующих с пе- риодом большим, чем счетный сигнал Ссч, и поэтому оба триггера младших разрядов синхронизируются счетным сигналом. Для синхронизации второго и третьего ра тря юв наилучшими оказываются выходные сигналы первого и второго ра 1рядов соответственно. Промежуточные результаты синтеза и схема счетчика представлены на рис. 5.11 Синтезированный счетчик работает с комбинированным (парал- лельно-последовательным) способом переключения разрядов: два младших разряда работают синхронно, остальные — последовательно. Время установления кода данного счетчика определяют три задержки переключения григгероз, поскольку в цепи три последовательно соединен- ных трип ера: 7’уст=ЗЛ..гр = 37-ш. (5.18) Время установления кода счетчика с комбинированным способом пере- ключения разрядов, как видно из (5.18), несколько меньше, чем последова- тельного счетчика (7да = тТЗАр), но больше, чем синхронного счетчика, для которого ТуС1 = Г, тр. При определении разрешающею времени синтезированного счетчика необходимо учесть, что на один из информационных входов триггера млад- шего разряда Ко поступает сигнал с выхода Qj триггера второю разряда, ко- торый ооявЛвется через время, равное 2Г| гр, после подачи счетною сигнала на вход счетчика. Отсюда разрешающее время Кч = Tbinin + ГI min = Ъв + Ъв + 7 ю ~ 1,5 7 р. (5.19) Таким образом, разрешающее время данного асинхронного счетчика несколько больше, чем синхронного. Рассмотренный метод синтеза позволяет синтезировать асинхронные счетчики с произвольной таблицей функционирования, с любым модулем счета и на любом типе триггеров, причем в результате синтеза могут быть получены схемы как с последовательным, так и с комбинированным спосо- бом переключения разрядов, а в некоторых случаях даже и синхронные счет- чики. Например, в счетчике, работающем в коде Грея, нельзя подобрать дру- гие, кроме счетного, тактирующие сигналы на входе С триггеров, и поэтому данный счетчик реализуется только в синхронном варианте, т.е. упростить его схему не удается 116
Л" 1 с 1 Q? Q." Q" с? с? J" K" Jj K? J Г k;1 .1,7 к; 0 0 0 0 О О О * * * * 0 i * 1 0 0 0 1 О О I 1 * * * * 1 * * О 2 0 0 1 1 О 1 1 * 1 1 * 0 3 0 1 0 1 О О 1 * ж * * 1 * О 4 0 1 1 1 1 1 i j 1 * 1 * 1 ж 1 5 1 0 0 О О О 1 * * * 0 * 1 * 6 1 0 0 1 О О 1 I «! * * * 1 * * О 7 1 0 1 1 О 1 i i * * 1 * * 1 О 8 1 1 0 1 О О ; * * * * 1 * * О 9 1 1 1 1 1 1 «! 1 Л 1 * 1 * 1 0 0 0 0 0 лг Q.7 0,7 J" X '<7 1,7 0,7 rt) Рис. 5.11. Асинхронным тиоично-десягичный счетчик: а — таблица функционирования: б — дна: раммы Вейча; в — уравнения входов: г — схема 117
Асинхронные недвоичные счетчики входят в серии ЦИС, например ин- тегральные схемы ИЕ2 (SN9U) и ИЕ4 (SN92). Микросхема ИЕ2 состоит из че- тырех JK-триггеров [13J, первый из которых образует счетчик с модулем сче- та К^, = 2, а оставшиеся три — счет чик с К^,, = 5. Для организации двоично- десятичного счетчика необходимо выход первого триггера соединить со вхо- дом оставшихся разрядов счетчика. Помимо двоично-десятичных, в серии ЦИС входит нсдвоичный счетчик ИЕ4. содержащий 2 счетчика с модулями счета 2 и 6. В библиотеки САПР асинхронные счетчики нс входят, поскольку в операционных блоках ПЛИС приняты все меры для эффективной реализа- ции уравнений входов синхронных счетчиков с большим числом разрядов. Однако при необходимости по представленной методике могут быть реали- зованы на основе ПЛИС и асинхронные счетчики. 5.4. Счегчики со сквозным способом переключения разрядов Такие счетчики отличаются от рассмотренных тем. ч го для их построе- ния используются, как правило, триггеры с малыми функциональными воз- можностями (обычно асинхронные Т-триггеры), применение которых воз- можно благодаря специально сформированным переключающим сигналам. Схема ipe.xpa [рядного двоичною счетчика со сквозным способом переклю- чения разрядов и временные диаграммы, поясняющие его функционирова- ние, приведены на рис. 5.12. Рис. 5.12. Двоичный счетчик со сквозным способом нереь мочения разрядов: а — схема: б — временные дна: раммы 1 18
В данном счетчике в качестве импульсов, переключающих последую- щие разряды, используются сигналы с выходов конъюнкгоров DD>, DD<, осуществляющих логическое перемножение входного и выходного сигналов пре, (идущих триггеров. Это позволяет уменьшить задержку счетного сигнала ио сравнению с последовательным счетчиком, поскольку задержка сигнала в конъюнкторе обычно сущес твенно меньше задержки триггера (Г3 п < Т^тр)- Отсюда и меньшее время установления кода счетчика со сквозным способом переключения разрядов Туст = Т11Г1 + 2Tiin. Разрешающее время такого счет- чика определяет быстродействие триггере! Гсч= 7omjn +7'imin= Т<в+ 7jo = Г1р. Разрядность двоичного счетчика со сквозным способом переключения может быть лет ко увеличена. В общем виде уравнения входов имеют вид Ton=Cv4;Tin=Qin_1.T,n,; i=l,2....m-l. Счетчики со сквозным способом переключения разрядов, как правило, / tz С” л 111“ 1 л 111-*— I являются двоичными (К^ = 2 ) и раоотают в двоичном коде 2 2 ...421. Счетчик, изображенный на рис. 5 12, является суммирующим, для построе- ния вычитающего счетчика необходимо на конъюнкторы подавать сигналы с инверсных выхо, юв т риг геров. В серии цифровых интегральных схем входят реверсивные чегырехраз- рядныс счетчики ИЕ6 (SN192) с К,ч = 10 и IIE7 (SN193) с КсЧ = 16 со сквоз- ным способом переключения разрядов [13]. Вопросы и упражнения 1. 1 (риведите примеры использования счетчиков в радиотехнических системах. 2. Проведите классификацию счетчиков ио модулю счета, ио направлению изменения состояний, по способу переключения ра (рядов. Поясните практическую ценность классификации счетчиков. 3 Какими параметрами характеризуется быстродействие счсшиков? В чем отличие разрешающего времени счетчика от времени установления кода? 4. Назовите основные достоинства и недостатки синхронных и асинхронных счетчи- ков. 5. Синтезирунж- синхронный суммирующий счетчик К^., = 8. работающий в коде 421, на синхронных /-триггерах. Определи тс параметры его быс содействия. 6. Синтезируйте синхронный реверсивный счетчик с К<.ч = 3. работающий в коде 21 на синхронных Т-триггсрах. 7. Определите параметры быстродействия счетчика НЕЮ (рис. 5.6) через соответст- вующие параметры входящих в него элементов. 8. В каких режимах работает счет чик ИЕ10? Как организовать тот или иной режим? 9. Как построить недвоичные счетчики на основе НЕЮ? В каком коде будут работать эти счетчики? 10. В чем отличие в синтезе и схемах асинхронных счетчиков от синхронных счетчи- ков? II. В каких случаях целесообразно применение асинхронных счетчиков? 12. Синтезируйте асинхронный вычитающий счетчик с К*ч = 6. работающий в коде 421 на триггерах ГМ2 Определите параметры быстродействия. 119
6. РЕГИСТРЫ И УСТРОЙСТВА на их основе 6.1. Назначение и классификация pei петров Регистрами называются цифровые устройства, осуществляющие хра- нение и преобра сование многоразрядных двоичных чисел. В отличие от посто- янных и долговременных запоминающих устройств, в регистрах осуществля- ется кратковременное запоминание информации, например, на период вы- полнения одного или нескольких циклов работы всего устройства, т. с. они являются оперативными запоминающими устройствами ЮЗУ). Регистры являются очень важным узлом всех цифровых радиотехниче- ских систем. Они обеспечиваю! создание управляющих, контролирующих и запоминающих схем, счетчиков, генераторов кодов, последовательно- параллельных и параллельно-после. ювательных. кодопреобразователей, арифметических устройств и т. д. В качестве запоминающих элементов в pci истрах используются тригге- ры. Число триггеров, предназначенных для хранения многоразрядного числа, равно количеству разрядов в этом числе. Вспомогательные элементы исполь- зуются для осуществления следующих операций, ввода и вывода из регистра хранимого числа: сдвига числа в сторону старших или младших разрядов на определенное число разрядов; преобразования последовательного кода числа в парал. 1ельный и наоборот и др. Вспомогательные элементы обычно строят- ся на основе комбинационных схем. Регистры можно классифицировать по различным критериям, основным из которых является способ ввода информации в регистр и ее вывод. По этому критерию регистры делятся на параллельные (регистры памяти), последовательные (регистры сдвига) и комбинированные (параллельно- последовательные и последовательно-параллельные). Ввод и вывод информации (двоичных чисел) в параллельных регистрах (регистрах памяти) осуществляется одновременно во всех разрядах (я па- раллельном коде). При этом время ввода (вывода) информации равно времени ввода (вывода) одного разряда. Ввод и вывод информации в последовательных регистрах (регистрах сдвига) осуществляется последовательно разряд за ра,рядом (т> последова- тельном коде). Время ввода (вывода/ пт-разрядного двоичного числа в реги- страх сдвига равно тТсл, где Тся — период следования тактирующих сигна- лов, осуществляющих ввод (вывод) информации. В комбинированных реги- страх ввод числа может осуществляться в параллельном коде, а вывод — в последовательном коде или наоборот. 6.2. Паралле .ьные регистры Параллельные регистры (регистры памяти) используются для кратко- временного хранения чисел, представленных в двоичном коде, и выполнения с ними поразрядных операций (рис. 6 I). 120
Рис. 6.1. Параллельный pei iicip а — УГО: б — исходная схема; в — таблица функционирования: г — схема Хранение информации в регистре заключается в следующем. Пусть Ал = D"l_I,...,D1n,...,D("} — вводимое в регистр (рис. 6.1, а) число, где D,1 — i-й двоичный разряд. I ели в n-м такте до подачи сигнала ввода ин- формации (Свв= 0) на вход С триггеры регистра находились в нулевом со- стоянии Q," = ... = Q" =... = Q(" = 0f т.с. регистр обнулен, то после подачи сиг- нала ввода (Спп = Г) триггеры перейду! в состояния, соответствующие значе- ниям рахрядов числа: Q'„ 1 = = Din;...:Q(j'11 = D(". Число А1 оказывается введенным в pci истр. Продолжительность его хранения равна интервалу времени между сигналами ввода числа и установ- ки регистра в нулевое состояние или ввода новою числа. Количество запо- минающих элементов в регистре определяет объем ею памяти и равно числу триггеров in + 1. Из анализа функционирования параллельного регистр^ мож- но сделать вывод о том, что все его разряды функционируют совершенно одинаково и выполняют функцию, представляемую операционными уравне- ниями ОГ"-с£ОС1 1>“; i=0,l..........m (6.1) Как видно из операционных уравнений, регистр при Свв = 0 хранит ра- нее записанное число, а при Свв = 1 загружается новым, поданным на его входы числом А Кроме входа для сигнала ввода информации, регистры па- мяти Moiyi иметь входы для подачи сигналов сброса регистра и другие. 121
Синтез регистра. Исходная схема для синтеза регистра (рис. 6.1, б) на- поминает соответствующую схему синхронного счетчика (см. рис. 5.2, б) с единственным отличием: в регистре памяти уравнения входа Х1р[ триггера зависят от входного сигнала D, и выходного Qr т.е. КЦУ является двухвхо- довым. Таким образом, метод синтеза регистра аналогичен рассмотренному ме- тоду синтеза синхронных счетчиков (см. главу 5) и сводится к нахождению уравнений входов триггеров (синтезу КЦУ). Поскольку разряды регистра па- мяти функционируют идентично, то нет необходимости производить синтез каждого КЦУ отдельно, достаточно провести проектирование одного i-ro разряда. На рис. 6.1, в представлена таблица функционирования i-ro разряда и искомое уравнение входа, которые используются для построении регистра на синхронных D-григгерах Напомним, что столбец для уравнения входа за- полняется, как и при синтезе синхронных счетчиков, с помощью характери- стической таблицы используемого триггера. Из таблицы (рис. 6.1, а) получа- ем искомое уравнение входа D^=D". (6 2) По данному уравнению для i = 0. 1.in строится схема параллельного регистра, изображенная на рис 6.1, г. Подобным образом можно синтезировать параллельные регистры на июбых триггерах, что предоставляется сделать читателю в качестве упраж- нения. 6.3. Рек не гры сдвига Классификация регистров сдвига. Регистры сдвига (последовательные регистры), помимо запоминания многоразрядных двоичных чисел, обеспечи- вают сдвиг хранимого числа на любое число разрядов. Сдвиг кода числа осуществляется с помощью сдвигающих сигналов Ссд, которые перемещают все разряды кода числа от младших разрядов к стар- шим (влево) или наоборот (вправо), последовательно переводя каждый триг- гер регистра в состояние, соответствующее разряду кода на входе данного триггера в момент поступления очередного сигнала Ссд. Регистры сдвига мо- гут быть классифицированы по критерию направления сдвига кодов много- ра {рядных чисел на регистры, сдвигающие информацию в с торону старших или младших разрядов, и реверсивные регистры сдвига, которые могут осу- ществлять сдвиг в любую сторону в зависимости от специального управ- ляющего сигнала, задающего это направление. Рсгйстр сдвига в сторону старших разрядов Данный регистр обычно имеет один информационный вход DL «ог английского слова left — левый) и выход Qm.. । старшего разряда. Кроме того, он имеет тактирующий вход С, на который поступают сдвигающие сигналы С<д. Проведем анализ функциони- рования трехразрядного регистра сдвига (рис. 6.2). 122
DI — DL 4— RG Q 0 Qj qv or Qo IM" n 0 0 0 0 0 «2 Я| 0 1 0 «2 «1 «0 2 1 Qi ai H| «0 b2 3 »i «11 bi b. 4 Cc, —7 'c 2 — Q- «*0 bi b( bo 5 bi bi bo 6 а) б) Рис 6,2. Pci негр сдвига в сторону старших разрядов: а — У ГО: б — таблица функционирования Трехразрядный регистр должен содержать три элемента памяти (тригге- ра). Заметим, что регистры сдвига могут не иметь выходов триггеров Qj, Qu- однако для наглядное! и функционирования на рис. 6.2 они представлены. Запишем грехразрядное число А = {«?, «ь «о1 в регистр, для чего на вход DL предварительно обнуленного регистра (Q11 =Qi° = Q)' = 0), в нулевом так- те (и = 0), подадим сигнал (ноль или единицу), соответствующий старшему разряду вводимого числа сь. При подаче сигнала сдвига (Cci = 1) цифра «з запишется (введется) в младший ра»ряд pei истра (Q,1 =а2), в остальных ос- танутся цифры нуль (см. таблицу функционирования на рис. 6.2, б). Затем необходимо на вход DL регистра подать следующую цифру а\ вводимого числа и снова осуществить сдвиг информации. Тогда сигнал гъ окажется в первом разряде (Qf=an), а сигнал а| — в нулевом (Q(>=a|). Произведя подобные манипуляции еще раз, мы введем все число в регистр, т.е. Q2=a2; Qj Qo flb Введение m-разрядного числа в in-разрядный ре- гистр займет m тактов. Для вывода числа из регистра сдвига также необхо- димо подать три сдвигающих сигнала, и то1да на выходе старшего разряда Q? (Qn> 1) будут последовательно появляться разрядные коэффициенты л2, «ь (!о записанного в регистр числа. В эти же такты работы в регистр записывает- ся новое число, подаваемое в последовательном коле на вход DL (число В = = {be b|, bo} в представленном на рис. 6.2. б примере). Из анализа функционирования регистра сдвига можно заметить, что по- сле подачи сдвигающего сигнала код числа сдвигается из разряда в разряд — из младших разрядов в старшие. Аналитически сдвиг отображается равенст- вами Q"+1 =Q]n; Q]n+I =Q(IJ; Q("+l = DLn. Для m-разрядно! о регистра можно записаiь Q^1 = DLn; Q"V = Q"; i = 0,1, 2,..., m-2. (6.3) Кроме полученных выражений можно вывести следующие равенства: Qi"i2 =Qi",i=0,l, 2,.......n—3; Q*? =Q"V = Q”, i = 2, 3,4,..., in-1.(6.4) 123
Обобщая (6 4), можно получить весьма важные соотношения: Qi7ij =Q"> i=0,l,2..m-j-l; 0^=0", i = j,j + l......m-1. (6.5) Эти соотношения позволяют легко синтезировать схемы регистров на различных типах триггеров. Для реализации пт-разрядного pci негра необхо- димо, очевидно, иметь пт грш герои, причем все их так тирующие входы С должны быть соединены друг с другом и с входом, на который подаются сдвигающие сигналы. В процессе синтеза необходимо определить лишь меж- триггерные связи, т.е. уравнения входов каждого разряда, с тем чтобы уст - ройство работало в соответствии с выражением (6.5). Исходная схема для синтеза изображена на рис 6 3, «. Рис 6.3 Син гез pci ncipa сдвига: а — исходная схема: б — таблица функционирования; в — схема:.? — временные диграммы Нахождение уравнений входов может быть проведено по методике их поиска в синхронных счетчиках. Однако поскольку при подаче на iактирую- щие входы С тримеров сдвигающего сигнала происходи1 переход каждого последующего триггере в состояние, соответствующее состоянию предыду- 124
щего, то при синтезе регистра достаточно рассмотреть процесс передачи ин- формации i-м и (i + 1,1-м разрядами регистра, т. е. найти уравнения входов (i + 1)-го разряда (рис. 6.3, а). Уравнение входов всех разрядов определяется из полученною уравнения при различных i. По выражению (6.5) может быть заполнена таблица функционирования (i 4- 1)-го разряда (рис. 6.3, о). В даль- нейшем необходимо условиться о типе триггеров, из которых будет с тро- иться регистр. Провезем синтез регистров сдвига на триггерах задержки (синхронных D-триггерах). В этом случае с помощью характеристической таблицы функционирования используемого триггера заполняем столбец, отображающий уравнение входа (i + 1) го разряда (рис. 6.3, 6), из которого получается уравнение входа (логическая функция выполняемая КЦУ) D,"i=Q" (6.6) Уравнение входа весьма простое, для его реализации достаточно соеди- нить вход триггера с выходом предыдущего. В результате получаем схему регистра сдвига в сторону старших разрядов (рис. 6 3, <?). Рассмотрим работу регистра для случая введения в него трсхразрядного числа А = (110)2 (а? = 1. а| = I, ао = О). Подадим на вход DL = DTpo цифру «2 = 1- (рис. 6.3). При Ссд = О цифра (i2 в триггер DD| нс записывается, по- скольку нет разрешающего сигнала на его тактирующем входе С (для тригге- ра с динамическим управлением происходит предустановка или запись в ос- новной триггер). По той же причине нс изменяют своего состояния осталь- ные триггеры. Для введения цифры тп в младший разряд pemcipa необхо- димо подать сиг нал сдвига Ссд на вход С регистра. При Ссд = I происходит переключение триггера DD|. и через время задержки (7\лр) он примет со- стояние Qo= аэ= 1. Необходимо подчеркнуть, что при использовании триггеров с потенци- альным способом управления длительность сигнала Ссд = 1 (Т|) должна быть строго фиксированной Г] = Г(лр, поскольку при меньшей длительности Т| < Те тр Цифра может быть не записана, а при 7) > Гздр цифра а2 может ус- петь за писал ься в следующий разряд DD2 регистра. Эту особенность имеют все регистры, построенные на любом типе триггеров с потенциальным (ста- тическим) способом записи информации. Обычно используются триггеры с динамическим управлением (на рис. 6.3, в изображены триггеры с динамиче- ским управлением по положительному перепаду, представленные, например, на рис. 4.11, а). Итак, через время Т,лр в младший разряд будет записана цифра а2 = I, остальные разряды своего состояния не изменят, поскольку в их основные триггеры при С = Ссл = 0 были записаны нули с выходов предыдущих разря- дов. После этого сигнал сдвига становится равным нулю (ССЛ - 0), на входы регистра подается следующая цифра а, вводимого числа ,4, и провесе повто- ряется. Последовательная подача ipex сдвигающих импульсов позволяет вве- сти (записать) в регистр всё iрехразрядное число, для чего потребуется время 125
Тяк= ЗТ„, где Г„ — период поступления сигналов сдвига. Нетрудно заметить, что минимально возможный период поступления сигналов сдвига определя- ется быстродействием триггеров и не зависит от числа разрядов (Tn ,nin= Т,р). Схема регистра на D-триггерах оказывается самой простой, и поэтому в подавляющем большинстве случаев для пост роения регистров сдвига исполь- зуются D-триггеры, хотя по изложенной мед одике можно син тезировать ре- гистры на триггерах, имеющих различные функциональные возможности. Особенности регистров, осуществляющих сдвиг в сторону младших разрядов. Функционирование регистров, осуществляющих сдвиг кода числа в сторону младших разрядов, отличается лишь тем, что входом регистра является вход старшего разряда, а выходом — выход младшего разряда, и, следовательно, запись числа и его вывод начинается с младшего разряда Нетрудно показать, что для такого регистра справедливо следующее соотно- шение: Q$=Qn+2» i = 0,1 ..., ш-З. (6.7) Выражениям (6.7) соответствуют уравнения входов регистра на D- григгерах i = 0,1 m —3 (6.8) По уравнениям входов (6.8) реализована схема регистра, представленная на рис. 6.4. Рис. 6.4. Регистр сдвига в сторону младших рафидов: а — схема: б — УГО Реверсивный регистр сдвига. Рассмотренные per негры сдвига осущест- вляли сдвиг информации (кодов чисел) в каком-либо одном направлении в сторону младших или старших разрядов. Реверсивные регистры сдвига могут выполнять сдвиг информации в обе стороны, в зависимости от информацион- ного значения некоторого управляющего сигнала Р„. Условимся, что при Pti = = I реверсивный регистр ос) щсствляет сдвиг информации в сторону старших разрядов, для чего в регистре должны быть реализованы уравнения входов D"| =Q". При Рн = 0 регистр должен осуществлять сдвиг информации в сто- рону младших разрядов, который реализуется при D"| = ()"? Из вышеизло- женного легко получаю гея уравнения входов реверсивного pci негра сдвига 126
Dill = P„ Q^vP. -Q^- (6.9) По выражению (6.9) построена схема трехразрядного реверсивного ре- гистра сдвига (рис. 6.5), в которой уравнения входов для наглядности реали- зованы логическими элементами 2-2И-ИЛИ. Рис. 6.5. Схема реверсивного pei iicipa сдвига По схеме видно, что при Ри = 1 логические элементы 2-2И-ИЛИ начи- нают работ ать в режиме повторителей соо гветствующих сигналов. В целом получается, что вход D последующего три. гора соединен с выходом преды- дущего; последнее обеспечивает сдвиг информации в сторону старших раз- рядов. Вводимая в регистр информация поступает на вход DL. При Рп - 0 вход D каждого триггера соединяется с выходом последую- щего триггера, что обеспечивает сдвиг кодов числа в сторону младших раз- рядов. При этом вводимая информация должна поступать на вход DR в по- следовательном коде в обратном порядке. 6.4. Комбинированные регистры Регистры входят в библиотеки компонентов САПР и в выпускаемые промышленностью серии ЦИС в достаточно широком наборе. Все они раз- личаются функциональными свойствами, динамикой управления записью и т.п. В подавляющем большинстве регистры в библиотеках САПР и в инте- гральном исполнении являются комбинированными и программируемыми, т.е. они обладают свойством изменения функциональных возможное гей, на- пример способа ввода информации, при тех или иных сигналах на управ- ляющих входах. В данном пособии рассматривается функционирование ре- гистра ИР1 (SN95), представляющего собой четыоехразрядный универсаль- ный регистр. ЦИС вида ПР 1 может работать в одном из двух режимов: а) ввод числа в пара, тельном коде (параллельная загрузка); б) ввод числа в последовательном коде (последовательная загрузка). В интегральной схеме ИР1 (рис. 6.6) разряды образованы синхронными двухступенчатыми RS-грш герами DD9...DDp, которые посредством со- 127
единений с инверторами RD5. DDS работают в режиме D-триггеров с ин вертированным входом D. Д. 1я определения режимов работы целесообразно определить уравнения входов триггеров. Из ло1 ической структуры регистра (рис 6.6) получаем Dpn = P-D(1vP-DL; D р1 = Р - D, v Р Qo; _ (6.10) D 1р2 = Р D2 v Р • Q.; DTp3 = Р • D3 v Р Q2. Как следует из (6.10). режимы работы определяются сигналом на управ- ляющем входе Р. При подаче на этот вход высокого уровня напряжения Р = 1 из (6 10) получаем ^тро = D(); D,pl = Dj; D^> = D2; Dip3 = D3. (6.11) Как следует из выражений (6.1 1), при Р = 1 в устройстве реализуются уравнения входов параллельного регистра (6.1). г. е. при подаче отрицатель- ного перепада напряжения на вход Сэ число, поданное на входы D;,.... Do, будет записано в регистр. При этом уровень напряжении на входах DL и С] может быть произвольным. 128
При подаче на управляющий вход напряжения низкого уровня (Р= 0) пз (6.10) получаются уравнения входов последовательного регистра (регистра сдвига в сторону старших разрядов) О,Г»-ОЦ q,pi=Q0; nir,-Qi; o:p! = Q,. (6.12) В этом можно убедиться, сравнивая (6.12) с (6.6). Сигнал сдвига при этом подается на вход G, а информационным входом регистра является вход DL. Какие сигналы можно подавать в данном режиме на входы D.i..О,, и С2, читателю предлагается определить самостоятельно. 6.5. Цифровые устройства на основе регистра сдвш а На базе устройств, главной задачей которых был только сдвш двоичных символов, постепенно возникло много устройств с разнообразными функ- циональными возможностями. При введении соответствующих обратных связей сдвиговые регистры могут работать как счетчики, генераторы радио- технических кодовых последовательностей; соответствующая логика позво- ляет использовать их для преобразования кодов, для умножения и деления двоичных чисел и т.п. Общая схема регистра сдвига с обратной связью (PC ОС) представлена на рис 6.7. Рис. 6.7. Общая схема регистра сдвига с обратной связью (а), общая диаграмма переходов для PC ОС’ с m = 3 (о) и m = 4 (в) 129
Обратим внимание, что обратная связь замыкается с выхода комбинаци- онного цифрового устройства (КЦУ) только на младший разряд регистра сдвига. Ото упрощает схему, так как для любого устройства необходимо определить лишь одну булеву функцию (уравнение входа DL), описываю- щую КЦУ. Исходя из заданной таблицы функционирования такого устройства, можно определить уравнение входа регистра сдвига DL" = f(Qn",,,Q’_2.Q.”.Q,?). (6.13) Естественно, что регистр сдвига с обратной свя идо. являющийся но су- ществу своеобразным счетчиком, не может переключаться из какого-либо состояния в произвольное. Например, трехрарядный регистр сдвига, нахо- дящийся в состоянии ООО (Q? =Qin =Qo =0) может переключаться при DL" = I в состояние 001 (QF‘ =Q(n 1 = 0,Q(f = I) или ври DLn =0 остаться в исходном состоянии ООО. Никакие другие переходы регистр сдвига совер- шит ь нс может. Другими словами, из любого состояния регистр сдвига с обратной свя- зью может перейти только в два определенных состояния Отсюда следует, что таблица функционирования такого счетчика не может быть врой воль- ной. В общем виде возможности регистра сдвига с обратной связью удобно представлять в виде диаграммы (или графа) переходов, вершины которой обозначают состояния регистра (значения Qm |,- Q|,Q0), а ветви со стрел- ками — направления переходов. Сипзазг DL, который необходимо иметь на входе регистра для осуществления данного перехода, изображается рядом с соответ ствующей ветвью. Для трехразрядного регггстра с обратной связью (ш = 3) общая диаграм- ма переходов должна иметь 2’ = 8 вершин (рис. 6.7, б), обозначенных номе- рами всех возможных комбинаций Из этой общей .диаграммы для каждого конкретного устройства может быть выделен свой цикл. С ростом числа раз- рядов ш общие диаграммы состояний становятся все сложней. 11а рис. 6.7, в представлена общая диаграмма состояний чстьгрсхразрялного РСОС. 6.6. Счетчики на основе pei истра сдвига Счетчик, работающий в коде «1 из т».Такой счетчик характеризуется тем, что в каждом такте работы в нем присутствует только одна кодовая еди- ница. последовательно перемещающаяся из разряда в разряд (см. табл. 1.8) Рассмотрим функционирование и синтез трехразрядного счетчика. Из таблицы функционирования (рис. 6.8, а), а также из диаграммы пере- ходов (рис. 6.7, б) можно сделать вывод, что данный счетчик может быть реа- лизован в виде регистра сдвига с обратной связью, поэтому его синтез сво- дится к нахождению уравнения входа регистра сдвига. 'Это уравнение может быть найдено по методике, применяемой при синтезе синхронных счетчиков, или непосредственно по общей диаграмме РСОС. 130
Рис. 6.8. C'iei'iiiK. paooiaioiiuiit в коде «I m 3»: а — таблица функционирования; б — диаграмма переходов: в — диаграмма Вейча; <• — вре- менные диаграмм! i Таблицу функционирования счетчика (рис. 6.8, а) дополняем столбцом DL , в котором с помощью диаграммы переходов (рис. 6.7, б или 6.8, б) определяем таблично искомое уравнение входа регистра сдвига. Далее заполняем диаграмму Вейча, из которой ечч гывасм уравнение входа в мини- мизированной форме DLn=Q". (6.14) Следовательно, для реализации счетчика работающего в коде «1 из 3», необходимо взять регистр сдвига и соединить выход старшего его разряда с входом DL регистра. Схема счетчика и временные диаграммы сигналов при- ведены на рис. 6 8 «, <). Поскольку синтезированный счетчик представляет собой совокупность триггеров, соединенных в кольцо, сг о называют кольце- вой схемой. Уравнение входа m-разрядного кольцевого счетчика, работаю- щего в коде «1 из т», также оказывается очень простым: DLn=Q£.,. (6.15) Быстродействие кольцевых счетчиков, являющихся синхронными, пол- ностью определяется инерционностью триггеров и нс зависит от числа раз- рядов 7\.С| = Тчлр; Тсч = Т1р. Ошибочная работа кольцевого счетчика и метод ее устранения. Ес- ли в результате действия помехи какого-либо характера в кольцевой счетчик будет записана лишняя кодовая едицйца или исчезнет необходимая единица, то правильная работа устройства будет нарушена. Пусть в результате воздей- 131
ствия помехи кольцевой счетчик, изображенный на рис. 6.8, гу перешел в со- стояние ООО (Q" = Q" = Q',' = 0). Проследим его дальнейшее функционирова- ние. При подаче счетного сигнала счетчик должен будет перейти в то же со- стояние ООО (Q" =-Q|n =Q(J =0), поскольку сигнал на информационном входе регистра равен нулю: DLn=Q" = 0. Как видим, кольцевой счетчик, попав- ший в запрошенную комбинацию ООО, функционирует неправильно (не в оо- отвсгствии с заданной таблицей функционирования). Эго явление назовем ошибочной работой счетчика, а комбинации (состояния), которые не должны иметь место при работе счетчика. — запрещенными. Кольцевой счетчик, по- пав в одну из запрещенных комбинаций, нс выходит из них автоматически, т. с. его правильное функционирование нс восстанавливается после подачи сколь угодно большого числа счетных сш налов. Естественно, '‘то сущест- венный недостаток кольцевых счетчиков, и при его эксплуатации в условиях действия помех с эг им недостатком необходимо бороться. Для определения тактики борьбы с ошибочной работой необходимо выявить причины ее появления. При синтезе счетчика мы определили на диаграммах Вейча (рис 6.8, в) уравнение входа только на грех рабочих (штатных) комбинациях, на запре- щенных комбинациях произвели доопределение таким образом, чтобы урав- нение входа имело наиболее простой вид (6.1J), не заботясь о том, как счет- чик будет выходить из запрещенных комбинаций. При этом получилась наи- более простая реализация счетчика, но появилась возможность его ошибоч- ной работы. По уравнению (6.14) можно построить диаграмму переходов кольцевого сметчика (рис. 6.9, а). Рис. 6 9 Диаграммы переходов кольцевою счетчика (а), счетчика, аИтомапически уст- раняющего ошибочную рабону (о) Из диаграммы видно, что в кольцевом счетчике кроме штатною цикла (1)—>(2)—> (4)—>(!)—> ., обозначенного жирными линиями, имеется ряд нештатных циклов, из которых нет выхода (линии со стрелкой) в штатный В2
цикл. Отсюда следует, что для автоматического устранения ошибочной рабо- ты счетчика с циркулирующей единицей необходимо доопределить уравне- ние входа на запрещенных комбинациях нс произвольным образом, а так, чтобы счетчик самостоятельно выходил из запрещенных состояний. Технически такое доопределение может быть выполнено, например, с помощью обшей диаграммы переходов РСОС, изображенной на рис. 6.7, <5, для чего на этой диаграмме нужно оставить все возможные вершины, соот- ветствующие состояниям счетчика, и помимо ветвей штатного цикла оста- вить ветви, определяющие выход устройства на штатный комбинации. В частности, из общей диаграммы переходов (см. рис. 6.7, б) видно, что из запрещенного состояния (А = 6) (НО) РСОС может перейти при DL = 1 в состояние (А= 5) (101), являющееся также запрещенным, или при DL =0 — в штатное состояние (А = 4) (100). Следовательно; для выхода и з запрещенного состояния (А= 6) необходимо при комбинации 110 подавать на вход DL. сиг- нал 0. Лна.то1 ичным обра мм определяется уравнение входа на остальных за- прещенных комбинациях. Диаграмма переходов счетчика с циркулирующей единицей, автомати- чески устраняющего ошибочную работу, представлена на рис. 6.9, б. По диа- грамме состояний (рис. 6.9. б) легко задать уравнение входа таблично и на диаграмме Вейча, найти уравнение входа в минимизированном виде DL" =Q| -Q(, =Q]" v Q(, и изобразить схему счетчика, как это представлено на рис. 6.10. Рис. 6.10. Счетчик с автоматическим устранением ошибочной работы: а — таблица функционирования: 6 — диаграмма Вейча; в — схема Нетрудно заметить, что при штатной работе счетчика сигнал на выходе элемента ИЛИ-НЕ DDj идентичен выходному сигналу старшего разряда DLr = Qj’ vQ/J =Qt . и поэтому в используемых на практике схемах счетчика 133
триггер старшего разряда в устройство можно не вводить, а вместо его выхо- да использовать сигнал DL!1 = Q" vQ/j = Q'. Уравнение входа m-разрядного счетчика с циркулирующей единицей, автомагически устраняющего ошибочную работу, имеет вид DL" = Q:S 0^7 • - ’ Qi" Qo = Q"t-3V~VqFI1$ (6-16) Для построения счетчиков целесообразно использовать регистры сдвига, входящие в серии ЦИС [ 131 или в библиотеки САПР ПЛИС. Счетчик, работающий в коде Джонсона. Такой счетчик характеризу- ется тем. что в нем циркулирует группа единиц (см. табл. 1.8). Модуль счет in-разрядного счетчика равен 2m. Из забчицы функциони- рования и диаграммы переходов трехразридного счетчика Джонсона (рис. 6.11) видно, что он реализуется в виде РСОС Рис. 6.11. Счег чнк Джонсона: а — таблица функционирования; б. « — диаграй мы Вейча; г — диаг рамма переходов; г) — схема Уравнение входа младшего разряда может быть найдено либо по табли- це функционирования, либо из диаграммы состояний. Счетчик Джонсона имеет 2,п- 2m запрещенных состояний; в нашем примере 2' -2-т = 2. Это комбинации А = 2 (010) и А = 5 (101). Если на запрещенных комбинациях функцию DL доопределить из соображений ее минимальности (рис. 6.11, б), то получаем наиболее простое уравнение входа DLn = Q" . Данному уравне- нию входа cool встсIвует самая простая схема. Однако в ©том счетчике име- ется возможность ошибочной работы. Попав в запрещенное состояние (2) 134
(010), счетчик будет совершать переход в состояние (5j (101) и обратно, т.е. совершать запрещенный цикл, обозначенный на диаграмме состояний пунк- тиром. Для устранения ошибочной работы необходимо доопределить уравнение входа на запрещенных комбинациях, как ио показано на диаграмме состоя- ний (тонкие линии) (рис. 6.11, г) и на диаграмме Вейча (рис. 6 11, «)• При этом получаем уравнение входа DL" = Q? • Q" v Q? Q," = Q" v Q“ • q‘" . (6.17) В результате уравнение входа усложнится, но зато данный счет чик авто- матически выходит in запрещенных состояний (рис. 6.11, г). Выше был рассмотрен синтез счетчиков с модулем счета in, 2гп. На основе РСОС можно строить счетчики с произвольным модулем счета Для тою, чтобы синтезировать счетчик, имеющий какой-либо заданный модуль счета (К^ч), необходимо на общей диаграмме переходов РСОС определить контур (штатный цикл), в который должны войти Kv4 состояний, и, если не- обходимо автоматическое ус гранение ошибочной работы, определить пул и выхода устройства из запрещенных комбинаций. Получив уравнение входа регистра сдвша, легко сое гавить схему счетчика. 6.7. Генераторы линейных рекуррентных кодовых носледоваге юностей Линейной рекуррентной последовательностью (JIPII) на мелется после- довательное ть символов {Q } = Q . Q Q...Q', ... удовлетворяющая ли- нейному рекуррентному алгоритму 1301 • , । ,’1-1 Q^'zzro-Q^r, Qn-1 Ж...®!;,,., Qn-"-'= ф rrQ'-J. (6.18) j=0 Знак ф означает, что суммирование ведется по модулю два; ко гффици- енты г, — постоянные, принимающие значения ноль или единица; пт — глу- бина последовательности. Кроме того, задаются значения Q1, Q", ... , Q"1 на- зываемые начальным блоком помедовательности, Последующи# значения Q", начиная cn = m + 1, определяются выражением (6.18). 1 1 3 Допуст им, задано: m = 3; гц = n= 1; Г| = 0; Q = 1; Q = Q = 0. Опреде- лим значения Q": q4 =ib.QI$rl О2Фг2 Q1 =1-()Ф10Ф1 l=l:Q5=Q4®Q =1; Q6=Q5®Q3 = 1; Q7 = Q6®Q4 =0;Qs =Q7 ®Q5 =1; Q9 =QS ®Q" =0. На рис. 6.12 ЛРП представлена в виде таблицы и временной диаграммы. 135
п 1 3 4 5 6 7 8 9 10 11 12 В 14 _Q". 1 0 0 1 1 1 0 1 0 0 1 1 1 0 Начальный блок Q' Длина последока таииное i и Рис 6.12. Линейная рекуррентная кодовая последовательное! - Линейные кодовые Поспелова ге.’ьнос ги — периодические. Число сим- волов в периоде называется длиной последовательности L. Для рассмотрен- ной последовательности длина L= 2 - 1 =7. Если длина последовательности равна L= 2П- 1, ю последовательность называется ЛРП максимальной длины или ^-последовательностью. Сигналы на основе кодовых И-послс- довательностей обладают весьма хорошими корреляционными свойствами, приближающимися к свойствам белого шума, в силу чего они находят широ- кое применение в радиолокации, радиосвязи и т. д. |3()J. Заметим, что '^-последовательность формируется по правил} (6.18) не при любом наборе коэффициентов го....гП1 э. i’m-l Правила нахождения этих наборов изложены, например, в 130]. Там же найдено общее количество Alin) наборов коэффициентов Гр, Г), ..., Гщ-ь соответствующих ^/-последователь- ности. Некоторые из этих наборов для различных значений m представлены в табл. 6.1. Таблица 6.1 Наборы коэффициентов .^-последовательностей \т 3 4 5 6 7 8 9 10 11 12 13 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2 1 0 1 0 0 0 0 0 0 0 0 3 — 1 0 0 1 1 0 0 0 0 0 4 — — 1 1 0 1 1 0 0 0 0 5 — — — I 0 1 0 0 0 1 0 6 — — — — 1 0 0 1 0 0 0 7 — — — — — 1 0 О 0 1 0 8 — — — — — — 1 0 1 0 1 9 — — — — — — — 1 0 0 1 10 — 1 1 0 11 — 1 1 12 — 1 Начальный блок ^-последовательности может быть произвольным за исключением одного: Q = Q“= .. . = Q 11 = 0. Синтез генератора линейных рекуррентных последовательностей. Из правила кодообразовгния (6.18) следует, что устройство, вырабатываю- 136
шее линейную последовательность, должно в каждый тактовый момент вре- ,,П г ,11-1 П-111+1 меня п запоминать ш последних символов Q , Q ....Q и суммировать их по модулю два с весами го, г |, тп1_], задаваемыми правилами кодообра- зования. Нетрудно видеть, что -»ти операции выполняются регистром сдвига с обратной связью. Таким образом, задача синтеза генератора сводится к на- хождению уравнения входа разряда DL регистра сдвига. Для нахождения уравнения входа необходимо преобразовать правило кодообразивання (6 1Ю в прикладное уравнение младшего разряда «" = г (q."-,........e?.os). Условимся, что кодовая последовательность формируется на выходе млад- шего разряда регистра сдвига, тогда т-1 Qo =©rjQo’J- (6.19) j-o Для произвольных разрядов регистра сдвига в сторону старших разрядов имеем ранее полученное соотношение (6.5): Qi"7=Qin. (6 20) Подставив (6.20) в (6.19), получаем прикладное уравнение младшего разряда регистра сдвига: ш-1 . . т-1 Qrl = ^frQ^,J = ©i-j-Q;- (6.21) j=0 j =0 Из выражения (6 21), используя характеристическое уравнение D-триггера, получаем уравнение входа (младшего разряда) регистра сдвш а т-1 DLn = Don=Qj+l = ©rjQ*1. (6.22) j=<) По выражению (6.22) можно изобразить обобщенную схему генератора линейных кодовых последовательностей (рис. 6.13). Рис. 6.13 Обобщенная схема генератора линейных рекуррентных пос leioiiaie.ii.iiocTeH 137
Схема генератора включает в себя регистр сдвига и комбинационную схему, состоящую из конъюнкторов и m-входового сумматора по модулю два. Многовходовый сумматор реализован последовательным соединением двухвходовых сумматоров по модулю два. в качестве которых использованы логические элементы ИСКЛЮЧАЮЩЕЕ ИЛИ. Задавая набор коэффициентов гц, и,г1П_[ и записывая начальный блок в регистр, можно, подавая сигнал, получить произвольную линейную рекур- рентную последовательность на выходах Qo, .... QM_|. В частном случае, при определенном выборе коэффициентов iq, Г|....гт-ь например, из табл. 6 1, это устройство формирует последовательность максимальной длины (или М- послсдоватсльиость), имеющую длину L= 2"-1. Для рассмотренного приме- ра с пт = 3 схема генератора упрощается (рис. 6.14. а). DI 'c RG Q 0 1 2 лп Q" |Qi" of DI" 4 1 0 0 1 1 0 0 1 1 3 0 I 1 1 7 1 1 1 0 6 1 1 0 1 5 1 0 1 0 2 0 1 0 0 4 1 0 0 Рис. 6.14. Генератор И-иоследочагельност: й — схема;« — таблица функционирования; в — временные ди;н раммы Из рис. 6.14. б, в видно, что JIPil формируется на всех выходах регистра сдвига, причем на выходе каждого последующего разряда она сдвинута на один такт по отношению к предыдущему. Генератор кодовой .W-послсдоватслыюстн по существу является счетчи- ком с модулем счета Ксч = 2п-1, имеющим лишь одно запрещенное состоя- ние Qm । = Qin-2 = ... = Q(, = 0, из которого он самостоятельно выйти нс мо- жет, поскольку при этом на входе pci истра сдвш а также действует ноль: ш-1 т-1 DLn = @rrQ; = e fj-OxzO. j=() >0 138
Для автоматического устранения ошибочной работы необходимо дооп- ределить уравнение входа первого разряда таким образом, чтобы при Qni_| = = Qm-2 = - Qo = б входе OL действовал сигнал 1. Аналитически такое доопределение легко получается путем логического сложения правой части (6 22) с мин термом запрещенного набора: и । ---------- ----- — — DL” = е fj q; V Q"_, .q"_2 •...Qf -Q“. (6.23) j=() I ёнсратор .'^-последовательности. реализованной по выражению (6.23). автоматически выходит из единственною запрещенного состояния, в которое он может попасть в результате деист вия помех. Необходимо отмстить, что при небольшой глубине in < 5 для поиска ко- довой последовательности и синтеза генератора может быть использована общая диаграмма переходов РСОС (см. рис. 6.7). Линейная кодовая последо- вательность. максимальной длины получается при обходе всех вершин диа- граммы за исключением запрещенного состояния Qm_| = Q,1be = — = Qo = О- 6.8. Генераторы нелинейных рек} ррентных кодовых пос.ледова ге. тьностей Нелинейной рекуррентной кодовой последовательностью называется последовательность символов, удовлетворяющих рекуррентному правилу Qn+I = f (Qn, Q"-1,..., Qn’m+I ), (6.24) /-у f"। /”X^ IIW- I v «•- i где i(Q , Q .. Q ) — произвольная оулева функция за исключением функции, представляющей линейную последовательноегь С использованием (6.20) выражение (6.24) можно преобразовать в при- кладное уравнение и в уравнение входа регистра сдвига информации в сто- рону старших разрядов: Qo+I = DLn = f(Q," „Q^.,...Qr-Q^). (6 25) Наибольший интерес по корреляционным свойствам представляют не- линейные последовательности длиной L= 2m |30]. иначе называемые полным кодовым кольцом. Для формирования полного кодового кольца необходимо обойти все вершины общей диаграммы переходов РСОС. Однако для боль- ших ш><' построение общей диаграммы состояний затруднено, и поэтому для определения алгоритма кодообразования и синтеза генератора целесообразно воспользоваться материалами по синтезу генераторов линейных рекуррент- ных последовательное гей, рассмотренными выше. Как известно, линейная А/-последовательность получается путем обхода всех вершин общей диаграммы переходов РСОС за исключением запрещен- ного состояния Qin_| = Qm-2 — = Qo = 0- При >том уравнение входа (правило кодообразования) определяется логической функцией (6.22): I то
m—I DL^^Orj-Q;. j=0 В соответствии с данным выражением pei негр сдвш а генератора М- последовательности осуществляет переход не состояния Q,1¥_| = 1. Qin_2 = --= = Q( = Qp = 0 (10 ... 00} в состояние (00 ... 01), поскольку DLnpn( 10 ... 00) = I. При формировании нелинейной последовательности необходимо вклю- чить в платный цикл комбинацию 00...00 (Q.,,.। = Qin.7 = ••• = Qo - 0). На дан- ную комбинацию можно перейти только из состояния 10 ... 00 при подаче сигнала DL = 0. Выход из комбинации 00 .00 также возможен только в со- стояние 00 ... 01 при сигнале на информационном входе регистра DL= 1. Таким обраюм. уравнение входа DL генератора нелинейной кодовой последовательности максимальной длины (L= 2 ) должно иметь вид 1 При От l=Qm ,=...=Q£=0; DLn=<0 при Q;.,^!; Q^.2 = ... = Q''=0: (6.26) tn-1 DL (>[ । = @r Q на остальных комбинациях. Для реализации генератора представление уравнения входа в виде (6.26) неудобно. Представим уравнение входа выражением DL’ = DLn1P1I Ф ya0II(Q". ,.Qn, .......Q^1), (6.27) где УдО|/0|П-1 • Qm-2.Q",Qp) — некоторая дополнительная функция, ко- торую необходимо определить таким образом, чтобы уравнения входов (6.26) и (6 27)совпадали. Определим функцию у (иц. Из сопоставления (6.26) и (6.27) можно сделать вывод, что на всех комбинациях сигналов Q кроме 10 ... 00 и 00 ... 00 функция Удои Должна равняться нулю, чтобы не нарушать последовательность смены П1-1 состояний, задаваемой уравнением входа DL|]pn = @r Q". Определение j=0 функции удои на оставшихся комбинациях представлено в табл. 6.2. Таблица 6.2 Определение дополнительной функции о" > ••• О' 1)111 |/ь.|рп DL" = DL"IPI1® у,,,,, ) юн 0 0 ... 0 0 0 1 1 1* 0 ... 0 0 1 0 1 Из табл. 6.2 следует, что функция у;1011 на комбинациях 00 ... 00 (номер набора S = 0) и 10...00 (S = 2П> ') должна равняться единице. Обобщая сказан- ное, можно сделать вывод, что функция должна равняться логической сумме минтермов: 140
U.(Qm-hQm-2....Qp’ Qo) = Mn{) v Mnyn_, = __________________________ 2____________________(6.28) = Qn^i Q.n-2 ... Qi" Qo vQLi QL2--Q? Q(? = Q„",-2 -Qi" Qo- Подставив (6.28) в (6.27), получаем уравнение входа генератора нели- нейной кодовой последовательности = e Fj q; ©q,"_2 ••q" -Q(> = ® Fj -QJ ©Q,t2 v...vQ(n vq;;. (6.29; По данному выражению составляем обобщенную схему генератора не- линейной кодовой последовательности (рис. 6.15). Дополнительная функция у>011 реализуется элементом ИЛИ-ПЕ, для сло- жения по модулю два использованы элементы ИСКЛЮЧАЮЩЕЕ ИЛИ. Ге- нератор, собранный по схеме на рис. 6.15, формирует произвольную нели- нейную рекуррентную последовательность максимальной длины L = Q,n при задании соответствующих коэффициентов г(), п....г1П_|. Ошибочной работы в данном устройстве не возникает, поскольку в штатный цикл входят все воз- можные состояния m-разрядного регистра сдвига. В практических схемах генераторов кодовых последовательностей построение многовходового сумматора по модулю два в виде последователь- ного соединения двухвходовых элементов (см. рис. 6.13, 6.15), в силу боль- ших задержек распространения сигналов, не оправдано. На практике воз- можна минимизация по изложенным правилам уравнений входов (6.23), (6.29) и реализация полученного выражения с помощью элементов И-ИЛИ- НЕ или использование многовходовых логических элементов контроля чет- ности, например, ИП2, ИП5. При реализации генератора на ПЛИС многовхо- довой сумматор по модулю два может быть реализован на одном программи- руемом комбинационном устройстве, входящем в логический блок. 141
1. Вопросы и упражнения Дайте определение. назовите назначение регистров. Поясните различия между по- 2. 3. 4. 5. 7. Синтезируйте регистр памяти на синхронных '/'-триггерах. Синтезируйте пятиразрядный регистр сдвига на JК-трштерах. Изобразите временные диаграммы сигналов регистра сдвига (рис. 6.3, «) в случае ис- мендации по условиям использования таких триггеров в регистрах сдвига. Допустим, имеется пятиразрядный регистр сдвига информации в сторону старших разрядов. На информационном входе установлен сигнал 0. Состояние регистра 11001 (Q4 = Qj = 1; Q? = Q, = 0; Q1( = 1). В какое состояние перейдет регистр после подачи одного, двух, трех и четырех тактовых импульсов? По схеме (рис. 6.5) определите сигналы на входах регистра для осуществления сдви- га в сторону младших разрядов. По схеме (рис. 6.5) определите максимальную частоту сдвига информации регистра через задержки распространения сигналов входящих в него элементов. По схеме регистра (рис. 6.6) определите сигналы на служебных входах для обеспече- 9. ния того или иного режима работы. Изобразите схему шестнадцатиразрядного регистра сдвига, построенного на основе ИР1. 10. Постройте реверсивный регистр сдвига на основе ИР1. С какой целью и как составляется общая диаграмма состояний регистра сдвига с обратной связью? Составьте общую диаграмму состояний двухразрядного регистра сдвига с обратной 13. 14. Синтезируйте счетчик с 3 на основе двухразрядного регистра с образной связью. Определите, можно ли для построения счетчиков использовать регистры сдвига ин- формации в сторону младших разрядов? 15. Изобразите общую диаграмму состояний двухразрядного регистра сдвига в сторону мдадших разрядов с обратной связью. 16. Определите, к синхронным или асинхронным счетчикам относятся рассмотренные субсистемы на основе РСОС. 17. 18. Поясни те, что такое ошибочная работа счетчика на РСОС. Почему она возникает? Синтезируйте трехразрядный счетчик с циркулирующим нулем, автоматически уст- раняющий ошибочную работу. 19. Чем характерен код Джонсона? Составьте таблицу функционироддння шест разряд- 20. ного счетчика Джонсона н определите его модуль счета. Синтезируйте генератор линейной кодовой последовательности длины L = 15 на основе регистра I4P1. Определите минимально возможную длительность ДТ дискрета А/-после- доватслыюсзи, формируемую генератором (рис. 6.14). если известны параметры быстродействия входящих в него элементов. 22. 23. Чем отличаются нелинейные кодовые последовательности от линейных? Синтезируйте генератор нелинейной кодовой последовательности клины L = 8. Изо- бразите временную диа1рамму формируемой последовательности. 142
БИБЛИОГРАФИЧЕСКИЙ СПИСОК I. Матюшин О.Т. Цифровые радиотехнические устройства. — М.: Нзлатсльство МЭН, 1990. —96 с. 2. Матюшин О.Т. Цифровые радиотехнические субсистемы. — М.: Издательство 3. Котельников В.А. О пропускной способности «эфира» и проволоки в электросвязи. Материалы к 1-му Всесоюзному съезду но вопросам технической реконструкции де- ла связи и развития слаботочной промышленности. — Издание ред. упр. связи РККА. 1933, —24 с. 4. Рабииер .Я., Гоулд К. Теория и применение цифровой обработки сигналов: нср. с англ, /под ред. IO. И. Александрова. —М : Мир. 1978. —848 с. 5. Лайонс Р. Цифровая обработка сигналов. 2-е издание: пер. с англ. — М.: ООО «Биком-Прссс». 2006. — 656 с. — М.: Издательство МЭМ. 1981. — 108 с. 7. Кодирование информации (двоичные коды) / Н.Т. Березюк. А.Г. Андрущенко. GC. Мощицкий и др. — Харьков: Высш, шк., 1978. — 252 с. 8. Уэйксрли Д.Ф. Проектирование цифровых устройств: пер с англ. Т.1. — М: По- стмаркет. 2002. — 544 с. 9. Фридман А., Менон П. Теория и проектирование псрсключительных схем: пер. с агл. / под ред. В.А. Тафта. — М.: Мир. 1978. — 580 с. 16. ЭВМ. — М.: Высш. шк.. 1987. — 272 с. 11. У трюмов Е.П. Цифровая схемотехника. — СПб.: БХВ-Пстсрбург, 2007. — 800 с. 12. Бойт К. Цифровая электроника. — М.: Техносфера, 2007. —472 с. 13. Нефедов А.В. Ннте1раиьныс микросхемы и их зарубежные аналоги. Т. 1—12. — М.: РадноСофт. 2000—2008. 14. Логические ИС КР 153.3,1554: справочник. Часть I. — М.: БИНОМ. 1993. — 256 с. 15. Логические ИС КР1533.1554: справочник. Часть 2. — М.: БИНОМ. 1993. — 500 с. " Перельман БЛ-, Шевелев В.В. Отечественные микросхемы и зарубежные аналоги: справочник. — М.: НТЦ Микротех. 2000. — 375 с. 18. 19. Пухальский Г.И.. Новосельцева Т.Я. Цифровые устройства. — СПб.: Политехника, 1996. —885 с. Разевиг В.Д. Схемотехническое моделирование с помощью Micro-Cap 7. — М.: Го- рячая лнния-Телском. 2003. — 368 с. языки описания аппаратуры. 3-е издание. — М.: Издательский дом «Додэка-ХХ1». 2002.—576 с. Матюшин О.Т. Архитектура и функционирование ПЛИС: учебное пособие. — М.: Издательство МЭИ, 2003. — 32 с. Стгчпенко В.Б. ПЛИС фирмы ALTERA: элементная база, система проектирования и языки описания аппаратуры. — 3-е издание. (CD). М.: Издательство: Додэка-XXI. 2007. Кузелии М.О., Кнышев Д.А., Зотов В.Ю. Современные семейства ПЛ КС фирмы XILINX. — М.: Горячая линия - Телеком. 2004. — 440 с. Зотов В.Ю. Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы XILINX.— М-: Горячая линия - Телеком, 2006. — 520 с. 143
/ Д.Л. Комолов. Р.А. Мяльк. Л.Л. Зобенко. А.С. Филиппов. — М.: РадпоСофт. 2002. 26. Антонов А.II- Язык описания цифровых устройст AlleraHDL — М.: ИП Радио- Софт. 2001. —224 с. 27. Бнбнло II.И. Основы языка VHDL. — 3-е над.. доп. -- М.: Издательство ЯКИ. 2007. —328 с. 28. Схемотехника ЭВМ / под рсд. I ll. Соловьева. — М.: Высш, шк., 1985. — 391 с. 29. Алексенко А.Г., Шагурнн И.И. Мнкросхсмогсхника. — М.: Радио и связь, 1982. — 416с. 1985. —384 с.