Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002), страница 11
Описание файла
DJVU-файл из архива "Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002)", который расположен в категории "". Всё это находится в предмете "микропроцессорные системы (мпс)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "микропроцессорные системы" в общих файлах.
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 11 - страница
Чтобы составить предварительное представление об уровнях проектирования цифровых устройств, которые встретятся на нашем пути, рассмотрим простой пример. Предположим, что нужно построить «мультиплексор» с двумя входами двоичных данных А и В, с двои <нь<м управляющим входом В и двоичным выходом 2. В зависимости от того, какое значение имеет  — 0 или 1, — схема передает на выход Е значения А илн В.
Принцип действия такого устройства иллюстрирует «молель в виде переключателя» на рис. 1.7. Давайте разберем процесс проектирования такого устройства на нескольких различных уровнях. Рис. 1.7. Модель мультиплексора в виде переключателя Е в — — ' 3 Хотя логическое проектирование выполняется, как правило, на более высоком уровне, в отношении некоторых устройств полезно оптимизировать их, спустившись до уровня транзисторов. Мультиплексор как раз является таким устройством. На рис. 1.8 показано, как может выглядеть схема мультиплексора„созданная на основе КМОП-технологии с использованием специальных транзисторных структур, называемых «логическими ключами», которые будут рассмотрены в разделе 3.7.1.
При таком подходе мультиплексор можно построить всего лишь на шести транзисторах, тогда как при любых других подходах, о которых пойдет речь, для этого требуется, по меньшей мере, 14 транзисторов. По традиционной теории логического проектирования нам следовало бы воспользоваться «таблицей истинности» для описания логической функции, реализуемойй мультиплексором. В таблице истинности перечисляются все возможные комбинации значений на входах и соответствующие ланной функции значения выходного сигнала. Поскольку у мультиплексора три входа, имеется 2', то есть 8 возможных комбинаций входных величин, как показано в табл. 1.1.
1.10.Уровнипроектированияцифровыхустройств 43 Рис. 1.8. Схемамультиплексораналогических ключах, выполненных по КМОП~ехнологии Табл. 1.1. Таблица истинности для мультиплексора 0 0 0 0 О О 1 0 0 1 О 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 После того как таблица истинности составлена, согласно традиционным методам логического проектирования, которые будут рассмотрены в параграфе 4.3, мы должны воспользоваться булевой алгеброй и хорошо освоенными алгоритмами минимизации, в результате чего из таблицы истинности получим «оптимальное» двухуровневое соотношение в терминах И вЂ” ИЛИ. В случае мультиплексора у нас получилось бы следующее выражение: 2=8' А+ 8 В. Это соотношение читается так: «Е равно не 8 и А или 8 и В».
Пролвигвясь еще на олин шаг вперед, можно превратить наше соотношение в схему, состоящую из соответствующих вентилей, иэторая реализует заданную логическую функцию, как показано парис, 1.9. Если иметь в виду КМОП-технологию, то лля четырех вентилей в этой схеме потребуется 14 транзисторов. Рис. 1.9. Логическая схема мультиплексора на уровне вентилей 44 Глава 1. Введение Мультиплексоры применяются очень широко, поэтому в большинстве систем логических элементов имеются готовые структурные блоки, реализующие функцию мультиплексора.
Примером может служить микросхема средней степени интеграции 74х157, которая осуществляет переключение входных сигналов, поступающих по двум 4-разрядным шинам. Барнс. 1ЛО приведено условное обозначение такого устройства; как видим, достаточно изменения одного управляющего бита, чтобы решить проблему одновременного переключения всех сигнальных линий 4-разрядных шин.
Рядом с выводами указаны их номера для корпуса ИР с 1б выводами, в котором находится мультиплексор. 74х167 Рис. 1.10. Условное обозначение мультиплексора, выполненного в виде ИС средней степени интеграции 8 А В Можно реализовать функцию мультиплексора на части программируемого логического устройства. Языки типа АВЕН позволяют с помощью булевых соотношений, подобных приведенному выше, определять выходные сигналы, однако, как правило, лля этого удобнее воспользоваться элементами языка более высокого уровня. В табл. Е2 в качестве примера приведена программа для мультиплексора на языке АВЕН. Первыми тремя строками задается имя программного модуля и тип ПЛУ на котором должна быть реализована данная функция.
В следующих двух строках входам н выходу присваиваются определенные номера выводов ИС. Оператор "ИНЕИ" служит выражением фактически реализуемой логической функции, которое совсем нетрудно понять, несмотря на то, что язык АВЕН вам еще не знаком. Табл. 1.2. Программадля мультиплексора на языке АВЕН шодп1е сЬар1шах САС1е 'Тво-зпрпе ши1езр1ехет ехашр1е' СНАР1ННХ печзсе 'Р16Ч8' А, 8, Б рзп 1, 2, 3; Е рзп 13 закуре 'сош'; ецпае1опв ННЕН 8 О ТНЕН Е = А; ЕьБЕ 2 - "Н; епд спар1шох 1.10. Уровни проектирования цифровых устройств 45 Табл. 1.3. Программадля мультиплексора на языке ЧНРЬ 1зЬгагу 1ЕЕЕ; изе 1ЕЕЕ.ясб 1оЕ1с 11б4.а11; епсзгу ЧсЬар1шах зз роге ( А, В, Я: 1п ЯТО ЬО61С; Е: опс ЯТО 1001С ); елб ЧсЬар1шпх; агсизгессиге ЧсЬар1шях агсЬ оХ Чсиар1ких зя ЬеИАп Е <= А яЬел Б = '0' е1яе В; епб ЧсЬар1ших агсЬ; Принудительное разделение определений входов/выходов ("ел Игу") и в нутре инейй реализации ("агсЫесцпе") в языке ЧН Р(, позволяет разработчику легко задавать альтернативные реализации функций, не внося изменений нигде более в иерархии проекта.
Например, в качестве альтернативы можно было бы задать структурную архитектуру мультиплексора, как это сделано в табл.! .4. Эта архитектура фактически представляет собой текстовый эквивалент логической схемы, приведенной на рис. 1.9. Табл. 1.4. «Струк- турная» ЧН 00-прог- рамма дляя мульти- плексора агсЬзяесспгя ЧсЬар1шпх Яаяе егсЬ о1 ЧсЬар1шпх 1з язяпа1 ЯИ, АЯИ, ЯВ: ЯТО 1ОСХС„ Ьвбзп О1: 1ИЧ (Я, ЯМ); О2: АМВ2 (А, БИ, АЯИ); ОЗ: АМОг (Я, В, ЯВ); О4: Овг (АЯИ, ЯВ, 2); епг( ЧсЬар1шах Яаяе агсЬ; Заглядывая чуть дальше, мы могли бы убедиться в том, что язык ЧНРР является довольно мощным средством, фактически позволяющим так описать работу про- На языке ЧН 01., который является языком более высокого уровня, функцию мультиплексора можно задать более гибко и по иерархическому принципу.
Пример программы для мультиплексора на языке ЧНР(. приведен в табл. 1.3, В первых двух строках указаны стандартная библиотека и набор определений, которые используются в проекте. В следующих четырех строках только определяются входы и выходы проектируемого устройства, и здесь намеренно ничего не говорится о каких-либо деталях того, как именно требуемая функция будет реализована внутри ПЛУ. Фун кциональное поведение устройства конкретизируется в <асти программы, начинающейся с заголовка "агсб Ьгее гоге". Синтаксис языка ЧНРЬ требует небольшого навыка, но оператор "ийеп" в данной программе выражает собой, по существу, то же самое, что и в варианте программы на языке АВЕ(.. Средства, ответственные за синтез схем, в программном пакете языка ЧНР(, могут начинать с этого функционального описания, и результатом нх работы будет нужная схема, сформированная в ПЛУ, выполненном по заданной технологии.
Фб Глава 1. Введение ектируемого устройства, что его функциональное поведение окажется смодел иро ванным на уровне транзисторов (правда, мы не будем заниматься этим в нашей книге). Таким образом, принципиально возможно написать программу на языке УНР(., реал нзуюшую на уровне транзисторов мультиплексор, эквивалентный схеме парис, 1.8. 1.11. Самое главное Когда функциональное поведение цифровой системы и требования к ее характеристикам заданы, цель практического цифрового проектирования состоит в минимизации ее стоимости.
При проектировании вауроввв печагпной платы (ЬоаЫ- (вгв1 Ывл1дп), то есть в случае, когда проектируемая система будет занимать одну печатную плату, это условие обычно означает, что должно быть минимальным число корпусов ИС. Если число ИС слишком велико, они не поместятся на печатной плате. Вы скажете: «Ну, воспользуемся тогда большей платой». К сожалению, размеры платы, как правило, ограничены такими факторами, как уже существующие стандарты (например, на платы, вставляемые в персональные компьютеры), требованиями к конструктивному оформлению (например, предназначенная для тостера плата должна в него входить) или указаниями сверху (напрнмер, при утверждении проекта три месяца назад вы неосторожно сказали руководству, что вся система разместится на печатной плате размером Зх5 дюймов, и теперь должны оправдать ожидания). В каждом из этих случаев использование большей по размерам платы нли нескольких плат может оказаться неприемлемым по стоимости.