2.2. Задания. Проектирование комбинационной логики 250 упражнения упражнение 1
Скачать 0.8 Mb.
|
Глава 2 Проектирование комбинационной логики 250 УПРАЖНЕНИЯ Упражнение 2.1 Запишите логическое выражение в совершенной дизъюнктивной нормальной форме для всех таблиц истинности, приведенных на Рис. 2.80 Рис. 2.80 Таблицы истинности для упражнений 2.1 и 2.3 Упражнение 2.2 Запишите логическое выражение в совершенной дизъюнктивной нормальной форме для всех таблиц истинности, приведенных на Рис. 2.81 Глава 2 Проектирование комбинационной логики 251 Рис. 2.81 Таблицы истинности для упражнений 2.2 и 2.4 Упражнение 2.3 Запишите логическое выражение в совершенной конъюнктивной нормальной форме для всех таблиц истинности, приведенных на Рис. 2.80 Упражнение 2.4 Запишите логическое выражение в совершенной конъюнктивной нормальной форме для всех таблиц истинности, приведенных на Рис. 2.81 Глава 2 Проектирование комбинационной логики 252 Упражнение 2.5 Минимизируйте все логические выражения, полученные в упражнении 2.1 Упражнение 2.6 Минимизируйте все логические выражения, полученные в упражнении 2.2 Упражнение 2.7 Нарисуйте достаточно простые комбинационные схемы, реализующие выражения, полученные в упражнении 2.5 . Под достаточно простой схемой подразумевается такая, которая состоит из небольшого количества элементов, но при этом ее разработчик не тратит много времени на проверку каждой из возможных реализаций схемы. Упражнение 2.8 Нарисуйте достаточно простые комбинационные схемы, реализующие выражения, полученные в упражнении 2.6 Упражнение 2.9 Повторите упражнение 2.7 , используя только элементы НЕ, И и ИЛИ. Упражнение 2.10 Повторите упражнение 2.8 , используя только элементы НЕ, И и ИЛИ. Упражнение 2.11 Повторите упражнение 2.7 , используя только элементы НЕ, И-НЕ и ИЛИ. Глава 2 Проектирование комбинационной логики 253 Упражнение 2.12 Повторите упражнение 2.8 , используя только элементы НЕ, И-НЕ и ИЛИ. Упражнение 2.13 Упростите следующие логические выражения, используя булевы теоремы. Проверьте правильность результатов, используя таблицы истинности или карты Карно. Упражнение 2.14 Упростите следующие логические выражения, используя булевы теоремы. Проверьте правильность результатов, используя таблицы истинности или карты Карно. Упражнение 2.15 Нарисуйте достаточно простые комбинационные схемы, реализующие выражения, полученные в упражнении 2.13 Глава 2 Проектирование комбинационной логики 254 Упражнение 2.16 Нарисуйте достаточно простые комбинационные схемы, реализующие выражения, полученные в упражнении 2.14 Упражнение 2.17 Упростите каждое из следующих логических выражений. Нарисуйте достаточно простые комбинационные схемы, реализующие полученные выражения. Упражнение 2.18 Упростите каждое из следующих логических выражений. Нарисуйте достаточно простые комбинационные схемы, реализующие полученные выражения. Глава 2 Проектирование комбинационной логики 255 Упражнение 2.19 Приведите пример таблицы истинности, содержащей от 3 до 5 миллиардов строк, которая может быть реализована схемой, использующей менее 40 двухвходовых логических элементов (но не менее одного). Упражнение 2.20 Приведите пример схемы с циклическим путем, которая, тем не менее, является комбинационной. Упражнение 2.21 Алиса Хакер утверждает, что любое логическое выражение может быть записано в виде минимальной дизъюнктивной нормальной формы, то есть в виде булевой суммы простых импликант. Бен Битдидл утверждает, что существуют такие выражения, минимальные формы которых не содержат все простые импликанты. Объясните, почему Алиса права, или приведите контрпример, подтверждающий точку зрения Бена. Упражнение 2.22 Докажите следующие теоремы, используя совершенную индукцию. Вам не надо доказывать двойственные им теоремы. a) Теорема об идемпотентности (T3) b) Теорема дистрибутивности (T8) c) Теорема склеивания (T10) Упражнение 2.23 Докажите теорему де Моргана (T12) для трех переменных, используя совершенную индукцию. Глава 2 Проектирование комбинационной логики 256 Упражнение 2.24 Напишите логические выражения для схемы, показанной на Рис. 2.82 . Вы не должны минимизировать эти выражения. Рис. 2.82 Принципиальная схема Упражнение 2.25 Минимизируйте логические выражения, полученные в упражнении 2.24 , и нарисуйте усовершенствованную схему, реализующую эти функции. Глава 2 Проектирование комбинационной логики 257 Упражнение 2.26 Используя элементы, эквивалентные по де Моргану, и метод перемещения инверсии, перерисуйте схему, приведенную на Рис. 2.83 , чтобы вы могли найти ее логическое выражение «на глаз». Запишите это логическое выражение. Рис. 2.83 Принципиальная схема Упражнение 2.27 Повторите упражнение 2.26 для схемы на Рис. 2.84 Рис. 2.84 Принципиальная схема Упражнение 2.28 Найдите минимальное логическое выражение для функции, заданной на Рис. 2.85 . Не забудьте при этом воспользоваться наличием безразличных значений в таблице истинности. Глава 2 Проектирование комбинационной логики 258 Упражнение 2.29 Нарисуйте схему, реализующую функцию, полученную в упражнении 2.28 Рис. 2.85 Таблица истинности Упражнение 2.30 Могут ли в схеме из упражнения 2.29 появиться потенциальные паразитные импульсы при изменении состояния одного из входов? Если нет, объясните почему. Если да, покажите, как надо изменить схему, чтобы устранить паразитные импульсы. Глава 2 Проектирование комбинационной логики 259 Упражнение 2.31 Найдите минимальное логическое выражение для функции, заданной на Рис. 2.86 . Не забудьте при этом воспользоваться наличием безразличных значений в таблице истинности. Рис. 2.86 Таблица истинности Упражнение 2.32 Нарисуйте схему, реализующую функцию, полученную в упражнении 2.31 Упражнение 2.33 Бен Битдидл будет наслаждаться пикником в солнечный день, если не будет муравьев. Он также будет наслаждаться пикником в любой день, если увидит колибри, а также в те дни, когда есть муравьи и божьи коровки. Глава 2 Проектирование комбинационной логики 260 Запишите логическое выражение для его радости (E) в терминах наличия солнца (S), муравьев (A), колибри (H) и божьих коровок (L). Упражнение 2.34 Завершите проектирование дешифратора семисегментного индикатора для сегментов от S c до S g (см. пример 2.10 ): a) Выведите логическое выражение для выходов от S c до S g при условии, что при подаче на вход значения более 9 выход должен быть нулем. b) Выведите логическое выражение для выходов от S c до S g при условии, что при подаче на вход значения более 9 состояние выхода безразлично. c) Нарисуйте достаточно простую реализацию на уровне логических элементов для случая (b). При необходимости используйте общие логические элементы для нескольких выходов. Упражнение 2.35 Схема имеет четыре входа и два выхода. На входы A 3:0 подается число от 0 до 15. Выход P должен быть равен ИСТИНЕ, если число на входе простое (0 и 1 не являются простыми, а 2, 3, 5 и так далее – являются). Выход D должен быть равен ИСТИНЕ, если число делится на 3. Запишите упрощенное логическое выражение для каждого из выходов и нарисуйте схему. Упражнение 2.36 Приоритетный шифратор имеет 2 N входов. Он формирует на N-разрядном выходе номер самого старшего входного бита, который принимает значение ИСТИНА. Он также формирует на выходе NONE значение ИСТИНА, если ни один из входов не принимает значение ИСТИНА. Спроектируйте Глава 2 Проектирование комбинационной логики 261 восьмивходовой приоритетный шифратор с входом A 7:0 и выходами Y 2:0 и NONE. Например, если вход A принимает значение 00100000, то выход Y должен быть 101, а NONE – 0. Запишите упрощенное логическое выражение для каждого из выходов и нарисуйте схему. Упражнение 2.37 Спроектируйте модифицированный приоритетный шифратор (см. упражнение 2.36 ), который имеет 8-разрядный вход A7:0, а также 3-разрядные выходы Y 2:0 и Z 2:0 . На выходе Y формируется номер самого старшего входного бита, который принимает значение ИСТИНА. На выходе Z формируется номер второго по старшинству входного бита, который принимает значение ИСТИНА. Y принимает значение 0, если все биты входа – ЛОЖЬ. Z принимает значение 0, если только один бит входа – ИСТИНА. Запишите упрощенное логическое выражение для каждого из выходов и нарисуйте схему. Упражнение 2.38 M-битный унарный код числа k содержит k единиц в младших разрядах и M–k нулей во всех старших разрядах. Преобразователь бинарного кода в унарный имеет N входов и 2 N –1 выходов. Он формирует (2 N –1)-битный унарный код для числа, установленного на входе. Например, если на входе 110, то на выходе должно быть 0111111. Спроектируйте преобразователь трехбитного бинарного кода в семибитный унарный. Запишите логическое выражение для каждого из выходов и нарисуйте схему. Упражнение 2.39 Запишите минимизированное логическое выражение для функции, выполняемой схемой, показанной на Рис. 2.87 Глава 2 Проектирование комбинационной логики 262 Рис. 2.87 Схема на мультиплексорах Упражнение 2.40 Запишите минимизированное логическое выражение для функции, выполняемой схемой, показанной на Рис. 2.88 Рис. 2.88 Схема на мультиплексорах Упражнение 2.41 Спроектируйте схему, реализующую функцию, описанную на Рис. 2.80 (b) , используя: a) Восьмивходовой мультиплексор (8:1) b) Четырехвходовой мультиплексор (4:1) и один инвертор c) Двухвходовой мультиплексор (2:1) и два любых других логических элемента Глава 2 Проектирование комбинационной логики 263 Упражнение 2.42 Спроектируйте схему, реализующую функцию из упражнения 2.17 (a) , используя: a) Восьмивходовой мультиплексор (8:1) b) Четырехвходовой мультиплексор (4:1) без других логических элементов c) Двухвходовой мультиплексор (2:1), один элемент ИЛИ и один инвертор Упражнение 2.43 Рассчитайте задержку распространения t pd и задержку реакции t cd для схемы на Рис. 2.83 . Значения задержек элементов даны в Табл. 2.8 Упражнение 2.44 Рассчитайте задержку распространения и задержку реакции для схемы на Рис. 2.84 . Значения задержек элементов даны в Табл. 2.8 Упражнение 2.45 Нарисуйте схему для быстродействующего дешифратора 3:8. Значения задержек элементов даны в Табл. 2.8 (используйте только указанные в таблице элементы). Спроектируйте ваш дешифратор таким образом, чтобы он имел минимальный возможный критический путь, и найдите этот путь. Каковы задержки распространения и реакции? Глава 2 Проектирование комбинационной логики 264 Табл. 2.8 Значения задержек элементов для Упражнений 2.43 – 2.47 Элемент t pd (пс) t cd (пс) НЕ 15 10 Двухвходовой И-НЕ 20 15 Трехвходовой И-НЕ 30 25 Двухвходовой ИЛИ-НЕ 30 25 Трехвходовой ИЛИ-НЕ 45 35 Двухвходовой И 30 25 Трехвходовой И 40 30 Двухвходовой ИЛИ 40 30 Трехвходовой ИЛИ 55 45 Двухвходовой Исключающее ИЛИ 60 40 Упражнение 2.46 Измените схему из упражнения 2.35 , чтобы она была максимально быстродействующей. Используйте только элементы из Табл. 2.8 Нарисуйте новую схему и определите критический путь. Каковы задержки распространения и реакции? Упражнение 2.47 Измените приоритетный дешифратор из упражнения 2.36 , чтобы он работал максимально быстро. Используйте только элементы из Табл. 2.8 . Нарисуйте новую схему и определите критический путь. Каковы задержки распространения и реакции? Глава 2 Проектирование комбинационной логики 265 Упражнение 2.48 Спроектируйте восьмивходовой мультиплексор так, чтобы задержка от входов до выходов была минимальной. Используйте только элементы из Табл. 2.7 . Нарисуйте схему. Используя значения задержек элементов из таблицы, определите задержку от входов до выходов. Глава 2 Проектирование комбинационной логики 266 ВОПРОСЫ ДЛЯ СОБЕСЕДОВАНИЯ Здесь представлены примеры вопросов, которые могут быть заданы соискателям при поиске работы в области проектирования цифровых устройств. Вопрос 2.1 Нарисуйте схему, реализующую функцию «исключающее ИЛИ», используя логические элементы И-НЕ. Какое минимальное количество элементов И-НЕ для этого требуется? Вопрос 2.2 Спроектируйте схему, которая показывает, содержит ли заданный месяц 31 день. Месяц задается 4-разрядным входом A3:0. Например, значению 0001 на входе соответствует месяц январь, а значению 1100 – декабрь. Выход схемы Y должен принимать значение ИСТИНА только тогда, когда на вход подан номер месяца, в котором 31 день. Напишите упрощенное выражение и нарисуйте схему, используя минимальное количество элементов (подсказка: не забудьте воспользоваться безразличными состояниями). Вопрос 2.3 Что такое буфер с тремя состояниями? Как и для чего он используется? Вопрос 2.4 Элемент или набор элементов является универсальным, если он может быть использован для реализации любой логической функции. Например, набор {И, ИЛИ, НЕ} является универсальным. Глава 2 Проектирование комбинационной логики 267 a) Является ли элемент И универсальным? Почему? b) Является ли набор элементов {ИЛИ, НЕ} универсальным? Почему? c) Является ли элемент И-НЕ универсальным? Почему? Вопрос 2.5 Объясните, почему задержка реакции схемы может быть меньше или равна задержке распространения. |