Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 115
Текст из файла (страница 115)
Входы Функция 83 82 81 80 аг = О (арифметическая) аГ = ! (логическая) Е = А пппы 1 р)ы СПЧ Е=А Впнпы ! р!азСПЧ 0 0 0 0 0 0 0 0 0 1 0 0 О 1 Е=А ° В'папы! рйазСПЧ Е=! 1!! р1ы СПЧ Е = А р!пз (А в В') р!иь С1(Ч Е = А В р! пь (А+ В') р)оь СПЧ Е = А папы В е!пы ! р!оь СПЧ 0 1 0 0 0 1 0 1 0 1 ! 0 0 1 1 ! Е = А + В' р! ы СПЧ Е=Ар! (А+В)рйиСПЧ ! О 0 0 ! 0 0 1 Е = А ршь В р!пь СПЧ Е = А В' рйы (А+ В) р1аз СПЧ 1 О 1 0 1 0 ! Е = А+ Вр!ы СПЧ Е = А р!ы А р!иь СПЧ Е=А В р1ы А р1пь СПЧ Е=А В'ррыАр!иьСПЧ Е= Ар!из СПЧ 1 1 0 0 1 ! 0 1 1 ! ! 0 1 ! ! 1 Когда М = О, выполняются арифметические операции, от разряда к разрялу распространяется перенос, а СПЧ используется как вход переноса младшего разряла. Для операций с числом разрядов больше четырех, можно включить последовательно несколько АЛУ '! 81, подобно сумматору с групповым сквозным переносом иа рис.
5,92. Выход переноса (СОСТ) каждого АЛУ в этом случае соединяется с входом переноса (СПЧ) следующего, более старшего каскада. На входы выбора функции (М, 83-80) всех ИС '181, входящих в составное АЛУ, подаются одззи.и те жс снгнальь Табл. 5.52. Функции, выполняемые 4-разрядным АЛУ 74х181 Е = А' Е= А'+ В' Е=А'+В Е=!1!1 Е= А' В' Е = В' Е = А 8) В' Е= А+ В' Е=А' В Е=АЮВ Е=В Е=А+В Е = 0000 Е=А В' Е=А В Е= А 5.10.Сумматоры,вычитающиеустройстваиАЛХ 511 Рис. 5.93. Условное обозначение 4-разрядного АЛУ 74х181 74х181 Чтобы выполнить сложение в дополнительном коде, сигналами на входах 83- 80 выбирается операция "А р1вз В р!пз СОЧ". На время выполнения операций сложения на входе С1!4 младшего АЛУ обычно устанавливается О.
Для вычитания в дополнительном коде сигналами на входах 83-80 выбирается операция "А ш !паз В пйшз 1 р1пз СОЧ". В данном случае на входе СОЧ младшего АЛУ обычно устанавливаетсяя 1, так как при вычитании сигнал на этом входе воспринимается как инвертированное значение заема. ИС '181 выполняет и другие арифметические действия; например, в некоторых приложениях (например, при уменьшении значения на 1) полезна операция "А пи паз 1 р!оз С! й".
Данное АЛУ реализует также группу экзотических арифметических операций, типа "А В' р1вз (А+ В) р1цз СОЧ", которые почти никогда не используются на практике, но предоставляются схемой бесплатно. Обратите внимание чтовходы операндовАЗ 1.-АО 1„ВЗ ~-ВО ~ивыходы фун- кций гЗ ь-гО микросхемы '181 имеют низкий активный уровень. ИС '18 ! можно также применять при высоких активных уровнях сигналов на входах операндов и на выходах функции. Однако в этом случае должна быть составлена другая таблица функционирования. Если М = 1, то по-прежнему выполняются логические функции, но при заданной комбинации сигналов на входах 83 — 80 реализуемая функция строго обратна приведенной в табл.
5 52. Когда М = О, выпал ияотся арифметические операции, нотаблицареализуемых функций вновь другая. За большими подробностями следует обратиться к справочным данным микросхемы '18 1. У двух других АЛУ, выпускаемых в виде ИС средней степени интеграции, 74х381 и 74х382 (рис. 5 94) код выбора операции более компактен: они вы полняют только восемь разных, но полезных функций, перечисленных в табл. 5.53. Единственное различие между микросхемами '381 и '382 состоит в том, что у первой ИС имеются выходы ускоренного группового переноса (который мы рассмотрим ниже), в то время как другая ИС обладает выходами сквозного переноса и переполнения.
512 Глава 5. Практическая разработка схем комбинационной логики 1Ы 74хззг !3) 74х331 Рис. 5.94.Условныеобозначения4-разрядныхАЛЧ 1а) 74х381, Оэ)74х382 Табл. 5.53. Функции, выполняемые 4-разрядными АЛУ 74х381 и 74х382 Входы 82 51 ВО Функция "5.10.7. Ускоренный групповой перенос Микросхемы '181 и '381 снабжены выходами ускоренного группового переноса (йгоир-саггу!сока!5еаЩ, которые позволяют соединять последовательно несколько таких АЛУ без сквозного переноса между 4-разряднымн группами. Внутри этих АЛУ, подобно микросхеме 74х283, применяется ускоренный перенос.
Однако у них, кроме того, имеются выходы О ~ и Р 1„на которых появляются сигналы ускоренного переноса всей 4-разрядной группы. Сигнал на выходе О ! принимает активный уровень, если АЛУ генерирует перенос, то есть в том случае, когда сигнал на выходе переноса (СООТ =1) вырабатывается независимо от наличия илн отсутствия сигнала на входе переноса (С)Н=1): 1Оз Рз Ог Рз Рг 05 Рз Рг Р1 Оо) 0 0 0 0 0 1 0 ! 0 0 ! ! ! 0 0 0 ! 1 1 О 1 1 ! г = 0000 Р= Вш!пньА пшшз ! р!сз С!!ч Р=АшшпьВ вишь ! р1пзСИЧ Р = А р!пз Вр!нз С!й РыАЮВ Е=А+В Р=А В Р =! 1!! 5.10.Сумматоры, вычитающие устройства и АЛУ 513 На выходе Р 1. сигнал принимает активный уровень, если АЛУ передает перенос, то есть в случае, когда сигнал на выходе переноса вырабатывается только при нали- чии сигнала на входе переноса: Рис.
5.95. Условное обозначение схемы ускоренно- го переноса 74х182 74х182 Соотношения, которыми определяются выходные сигналы микросхемы '182, получаются путем «разнесения слагаемого по сомножителям» в основном равенстве для ускоренного переноса из раздела 5.! 0.4: с,„, = й,е р,. с, =(О +Р).(О +с). В развернутом виде для трех первых значений !получаем следующие выражения для сигналов переноса: С1 = (60+РО) (60+СО) С2 = (61+Р1) (61+60+РО) (61+60+СО) СЗ = (62+Р2) (62+61+Р1) (62+61+60+РО) . (62+61+60+СО). В микросхеме '182 реализация каждого из этих выражений сопровождается задер- жкой, вносимой только одноуровневой схемой НЕ-ИЛИ-И.
(рз рз р~ ро) Когда АЛУ включаются последовательно одно за другим, для формирования сигнала переноса на входе каждо~о АЛУ достаточно всего лишь двухуровневой логики, чтобы надлежащим образом объединить сигналы, возникающие на выходах ускоренного группового переноса. Эту операцию выполняет схема ускоренного переноса (1оо(гайеаг( саггу с(гсий) 74х182, показанная на рис. 5.95.
У этой схемы имеются следующие входы: СΠ— вход переноса младшего АЛУ ("АЫ3 0"), 60 — 63 и РО-РЗ вЂ” входы для подключения выходов генерации н передачи переноса АЛУ с 0-го по 3-е. По сигналам на этих входах микросхема '182 вырабатывает на выходах С1-СЗ сигналы для подачи на входы переноса АЛУ с 1-го по 3-е. На рис. 5.96 показаны связи в ! б-разрядном АЛУ, построенном на четырех микросхемах '381 и микросхеме '182, 514 Глава 5. Практическаа разработка схем комбинационной логики гнгм Св 9 сгг !а йчг г Рюг ио !з ЭО. м РО!.
9 й2!. 19 92 !. 99 !Б 9 в н 9! МО 1! 99 БМ 1В вм М1 !г ю !г ги !в ви и! огио 7ЗБЗВ1 твои! !З й1г !з мг м РБ!. м Рзж % и з М 919 э в и 9 РМ вв нз В!9 г БМ 19 в нз М 19 7» вв !в ВМ 19 97 17 ЗМ 17 вм !в !г н !2 919 27 19 иг ив ош! зшз Рис. 5.95.
16-разряднсе Аг БУ с ускоренным групповым переносом Когда последовательно включается больше четырех АЛУ, их можно разбить на «группы групп» (мзирегйгопрв"), каждая со своей собственной микросхемой '182. Например, 64-разрядный сумматор имел бы четыре группы групп, состоящие каждая нз четырех АЛУ и одной микросхемы '182. Сигналы с выходов 6 С и р 1. каждой из микросхем '182 можно подать на входы микросхемы '182 следующего уровня, так как они показывают, генерирует или передает переносы данная группа групп: ВО 61 62 й СИ Р РО 60 З! Р, Вг 62 92 РЗ гз 60 21 62 й ск ЗО РО 71 в! 92 ОЗ ьз 63 СО ЗО РО С1 й! И Сг О2 Р2 СЗ ОО й РЗ 70!И! 60 З1 й " си НБ РО 61 ' и Вг 19 92 19 Р2 11 !в РЗ ЗО 21 Ы й сн РО ЗО 61 ВБ 72 Рз ВЗ 5.10.Сумматоры,вычитающиеустройстваиАЛУ 515 6 1 = ((63+ РЗ) (63+ 62+ Р2) .
(63 + 62+ 61 + Р1) . (63 + 62+ 61 + 60))' Р Е=(РО Р1 Р2 РЗ)'. *5.10.8. Описание сумматоров на языке АВЕ~. и их реализация в ПЛУ Язык АВЕЬ поддерживает операторы сложения (+) и вычитания (-), которые могут применяться к наборам. Наборы интерпретируются как целые числа без знака; например, набор, состоящий из и битов, представляет собой целое число из интервала от О до 2" — 1. Вычитание выполняется путем взятия вычитаемого с обратным знаком и сложения.
Для изменения знака числа берется его точное до пол пение; то есть операнд поразрядно инвертируется, а затем добавляется 1. В табл. 5.54 приведен пример сложения на языке АВЕЕ, В определении набора БОМ предусмотрено на единицу большее число разрядов, чем у слагаемых, для переноса из старшего разряда; в противном случае этот перенос нельзя будет учесть.
При определении наборов для слагаемых, они расширены добавлением слева О-го бита, чтобы соответствовать размеру набора Б ОМ. воап1в аса сШв 'Ааовт Ехвгс1ве' " 1прпс апа оппрпс рзпв А7..АО, 87..80 ряп; 81)МЯ.,ЯОМО р1п 1ввурв 'соп'; " Яес йе11п1с1опв А = (О, А7. АО); В (О, 87..ВО); ЯОМ (ЯОМ8..ЯОИ01; вспасзопв ЯОМ = А + В; вш1 асй Табл. 5. 54. Программа на языке АВЕЕ для 8-разрядного сумматора Хотя программа, описывающая сумматор, очень мала, ее трансляция требует большого времени и при этом возникает огромное число термов в минимальных двухуровневых суммах произведений. В то время как БОМО содержит только два терма-произведения, выражения последующих БОМА состоят из 5 2'-4термов; в частности, БОМО состоит из 636 термов, а выражение для переноса из старшего разряда(БОМ8) состоит из 2 — ! = 255 термов-произведений! Очевидно, что сумматоры с ббльшим числом разрядов практически нельзя реализовать на основе двухуровневойлогики.
516 Глава б. Практическая разработка схем комбинационной логики О ПЕРЕНОСЕ В нашем примере сумматора выражение для сигнала на выходе переноса (ВВМ8) имеет то же самое число термов-произведений (255), что и выражения для выходных сигналов «меньше» или «больше» у 8-разрядного компаратора. Это и не удивительно, коль скоро вы понимаете, что возникновение переноса при сложении А+ В функционально эквивалентно выполнению неравенства А>В. В связи с тем, что время от времени сумматоры и компараторы с большим числом разрядов по-прежнему необходимы в ПЛУ, в языке АВЕЬ предусмотрена дирекглива 6 САКК у (6 САКК у гйгесгве), которая указывает компилятору на необходимость синтезировать сумматор с групповым сквозным переносом с и разрядами в группе. Например, если в программу, приведенную в табл.