2.1. Лекция. Проектирование комбинационной логики 1Введени 2Булевы уравнения
Скачать 2.3 Mb.
|
Глава 2 Проектирование комбинационной логики 239 наихудшую задержку. Задержка от D до Y на Рис. 2.73 (b) – всего 50 пс по сравнению с задержкой от S до Y в 125 пс. На Рис. 2.74 показана иерархическая реализация мультиплексора 4:1, использующая два каскада мультиплексоров 2:1. Критический путь в ней от любого входа данных D до выхода. Эта схема критическая по данным, поскольку критический путь идет от входа данных до выхода: t pd = t pd_dy Если данные приходят на входы задолго до управляющих сигналов, мы должны предпочесть схему с кратчайшей задержкой от управления до выхода (иерархическая схема на Рис. 2.74 ). Аналогично, если управляющие сигналы приходят намного раньше входных данных, мы должны предпочесть схему с кратчайшей задержкой от данных до выхода (реализация на буферах с третьим состоянием на Рис. 2.73 (b) Наилучший выбор будет зависеть не только от цепи с наибольшей задержкой, но и от потребляемой электроэнергии, стоимости и наличия компонентов. Глава 2 Проектирование комбинационной логики 240 Рис. 2.73 Задержки распространения в четырехвходовом мультиплексоре: двухуровневая логика (a), буфера с тремя состояниями (b) Глава 2 Проектирование комбинационной логики 241 Рис. 2.74 Задержки распространения в четырехвходовом мультиплексоре, построенном из двухвходовых Табл. 2.7 Временные характеристики элементов в схемах мультиплексоров Элемент t pd (пс) НЕ 30 Двухвходовой И 60 Трехвходовой И 80 Четырехвходовой ИЛИ 90 Буфер с тремя состояниями (от A до Y) 50 Буфер с тремя состояниями (от E до Y) 35 Глава 2 Проектирование комбинационной логики 242 2.9.2 Импульсные помехи До сих по мы обсуждали случай, когда одиночное изменение входного сигнала вызывает одиночное изменение выхода. Однако может оказаться, что одиночное изменение на входе вызывает несколько выходных изменений. Это называется импульсной помехой или паразитным импульсом. Хотя паразитный импульс обычно не вызывает проблем, важно понимать, что он есть, и уметь распознавать его на временных диаграммах. На Рис. 2.75 показана схема, подверженная паразитным импульсам, и карта Карно для нее. Логическое уравнение минимизировано корректно, однако посмотрите, что происходит, когда A = 0, C = 1 и B меняется из 1 в 0. Рис. 2.76 иллюстрирует этот сценарий. Короткий путь (показан серым) проходит через два элемента: И и ИЛИ. Критический путь (показан синим) проходит через инвертор и два элемента: И и ИЛИ. Как только B переключится из 1 в 0, n2 (в коротком пути) опустится в 0 до того, как n1 (в критическом пути) сможет установиться в 1. До подъема n1 оба входа элемента ИЛИ будут принимать значение 0, и его выход сбросится в 0. Когда n1 в конце концов поднимется, Y вернется в 1. Как показано на временных диаграммах на Рис. 2.76 , Y начинается с 1 и заканчивается 1, но на короткое время переключается в 0. Глава 2 Проектирование комбинационной логики 243 Рис. 2.75 Схема, подверженная импульсным помехам Рис. 2.76 Временная диаграмма импульсной помехи До тех пор, пока мы выдерживаем интервал равный времени задержки распространения, прежде чем использовать значение с выхода, импульсная помеха не представляет проблемы, потому что выход в конце концов установится в правильное значение. Глава 2 Проектирование комбинационной логики 244 При желании мы можем избежать этого импульса добавлением дополнительного элемента в схему. Это проще понять в термах карты Карно. На Рис. 2.77 показано, как изменение входа B при переходе из ABC = 001 в ABC = 011 приводит к переходу от одной первичной импликанты к другой. Переход через границу двух первичных импликант в карте Карно свидетельствует о возможном появлении импульсной помехи. Как мы видели на временных диаграммах на Рис. 2.76 , если схема реализации одной первичной импликанты выключается до того, как может включиться схема другой первичной импликанты, возникнет импульсная помеха. Чтобы исправить это, мы добавили другую цепь, которая охватывает границу первичных импликант, как показано на Рис. 2.78 . Вы могли бы узнать в этом теорему согласованности, где добавленный терм A¯ C — это согласованный или избыточный терм. На Рис. 2.79 показана схема, устойчивая к паразитным импульсам. Добавленный элемент И выделен синим. Сейчас переключение B, когда A = 0 и C = 1, не вызывает паразитного импульса на выходе, поскольку синий элемент И формирует на выходе 1 во время этого перехода. Глава 2 Проектирование комбинационной логики 245 Рис. 2.77 Переход от одной импликанты к другой Рис. 2.78 Карта Карно без импульсных помех Рис. 2.79 Схема без импульсных помех В общем случае, паразитный импульс может возникать, когда одна переменная пересекает границу между двумя первичными импликантами в карте Карно. Мы можем устранить эти импульсы добавлением избыточных импликант в карту Карно, чтобы покрыть эти границы. Естественно, это будет сделано ценой дополнительных аппаратных затрат. Однако одновременное переключение нескольких входов также может стать причиной паразитных импульсов. Эти импульсы не могут быть исправлены дополнительными элементами в схеме. Поскольку подавляющее большинство интересующих нас систем имеют одновременные (или почти одновременные) переключения множества входов, возникновение паразитных импульсов в них неизбежно. Хотя Глава 2 Проектирование комбинационной логики 246 мы показали, как устранить один вид импульсных помех, смысл дискуссии о паразитных импульсах не в том, чтобы устранять их, а в том чтобы знать, что они есть. Это особенно важно, при анализе временных диаграмм в симуляторе или на экране осциллографа. 2.10 РЕЗЮМЕ Цифровая схема – это модуль с дискретными значениями входов и выходов и спецификацией, описывающей его функциональные и временные характеристики. Эта глава была посвящена комбинационным схемам, выходы которых зависят только от текущих значений на их входах. Функциональное описание комбинационной схемы может быть задано таблицей истинности или логическим выражением. Логическое выражение для любой таблицы истинности может быть получено в виде совершенной дизъюнктивной нормальной формы или совершенной конъюнктивной нормальной формы. В первом случае функция записывается как дизъюнкция конъюнкций, то есть булева сумма (логическое «ИЛИ») одной или более импликант. Импликанта есть произведение (логическое «И») литералов. Литералы же – это прямая или комплементарная форма входных переменных. Логические выражения могут быть упрощены, используя правила булевой алгебры. В частности, их можно упростить, объединяя Глава 2 Проектирование комбинационной логики 247 импликанты, которые отличаются только прямой и комплементарной формами одного из литералов: PA + PA¯ = P. Карты Карно – визуальный инструмент для минимизации функций двух–четырех переменных. На практике разработчики обычно могут упростить функции нескольких переменных «в уме», исходя только из своего опыта. Системы автоматизированного проектирования используются для более сложных функций; такие методы и инструменты обсуждаются в главе 4 Логические элементы соединяют для того, чтобы создать комбинационную схему, которая выполняет желаемую функцию. Любая функция в дизъюнктивной нормальной форме может быть построена, используя двухуровневую логику: элемент НЕ образует комплементарную форму входов, элемент И формирует произведения и элемент ИЛИ формирует сумму. В зависимости от функции и доступности базовых элементов, многоуровневая логическая реализация с элементами разных типов может оказаться более эффективной. Например, для КМОП-схем больше подходят элементы И-НЕ и ИЛИ-НЕ, потому что эти элементы могут быть построены напрямую на КМОП-транзисторах без использования дополнительного инвертора. Когда используются элементы И-НЕ и ИЛИ-НЕ, для сокращения числа инверторов полезно применять перемещение инверсии. Глава 2 Проектирование комбинационной логики 248 Логические элементы комбинируются, чтобы создать более сложные схемы, такие как мультиплексоры, дешифраторы и схемы приоритета. Мультиплексор выбирает один из входов данных, основываясь на входе управления. Дешифратор устанавливает один из выходов в ВЫСОКОЕ значение в соответствии со входами. Приоритетная схема выдает 1 на выход, указывающий на вход с самым высоким приоритетом. Все эти схемы – примеры комбинационных «строительных блоков». В главе 5 вы познакомитесь с еще большим количеством «строительных блоков», включая различные арифметические схемы. Эти блоки будут широко использованы при создании микропроцессора в главе 7 Временные характеристики комбинационной схемы включают в себя задержки распространения и отклика. Они указывают на наибольшие и наименьшие времена между изменением входа и соответствующим изменением выходов. Вычисление задержки распространения заключается в определении критического пути в схеме и затем в сложении вместе задержек распространения всех элементов на этом пути. Существует множество различных способов реализации сложной комбинационной схемы; эти способы предполагают компромисс между ее скоростью работы и ценой. В следующей главе будут рассмотрены последовательностные схемы, чьи выходы зависят как от текущих значений входов, так и от всей Глава 2 Проектирование комбинационной логики 249 предыстории (последовательности) изменений на них. Другими словами, мы рассмотрим схемы, обладающие свойством памяти. |