Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 110
Текст из файла (страница 110)
Схемы проверки на четность, аналогичные 74х280, применяются как для формирования нужного значения бита четности при хранении или передаче кодового слова, так и для проверки на четность при считывании кодового слова из памяти или при его приеме. На рис. 5.76 показано, как можно применять схему проверки на четность для обнаружения ошибок в памяти микропроцессорной системы. Память хранит 8- разрядные байты плюс бит четности для кажлого байта.
Для передачи данных в память и для извлечения данных из нее микропроцессор использует двунаправленную шину Р[0:7]. Кроме того, имеются две линии управления й0 и ггЛ лля задания желаемой операции — чтения или записи — и вырабатывается сигнал ЕВ НОВ, указывающий на наличие ошибки при проверке на четность при чтении. Другие детали, касающиеся микросхем памяти (адресные входы и др.), на рисунке опушены; подробнее микросхемы памяти описаны в главе 10. При рассмотрении проверки на четность нас интересуют только линии передачи данных в память н из иее. Для сохранения байта в микросхеме памяти мы задаем адрес (не показанный на рисунке), размещаем на шине гэ[0-?[ запоминаемый байт и подаем сигнал записи йя3: на вход Р1Н при этом поступает сформированный бит четности. Вентиль И, предшествующий входу 1 микросхемы 74х280, обеспечивает постоянное присутствие на этом входе О, кроме интервалов времени, в течение которых выполняется операция чтения; благодаря этому во время записи сигнал иа выходе микросхемы '280 зависит только от четности данных на шине О.
Со входом Р1Н соединен выход 0130 микросхемы '280, поэтому общее число запоминаемых единиц оказывается четным. 484 Глава 8. Практическая разработка схем комбинационной логики 7МОВ 5 в ЕРРОН ш О10.71 742504 2 НО!. ВВ ОЗ Мияю!вена хви616 746 541 74х255 е! Е2 аа в а! 6 А в с О ЕУЕН е а ООО О н 1 НЕАО УИВПЕ О!На ОИИ ИВЕ О!из ШН4 О!Н5 О!Не ОИ7 ин 1В аа 17 О1 16 аз !5 аз ч 16 25 12 ав 1! О7 !я 16 аз 1! 64 !2 ав !з 66 1 а7 2 Ва ОООта ООО71 ООО72 ООО72 Ооат4 ООО75 аоста ООО77 аоот А! У1 А2 У2 АЗ УЗ А4 У4 А5 У5 Ав УВ А7 У7 АВ УВ ОО! з О1 О02 мхав 1 з 2 ОО5 7 ОСЕ 6 О4 ао Рис. 5.78. Формирование бита четности и проверка на четность для 8-разряд- ной системы памяти Чтобы извлечь байт, мы задаем адрес (не показанный на рисунке) и подаем сигнал чтения й0; значение байта появляется иа выходах 000710-7], а бит четности — на выходе РО1)Т. Микросхема 74х54! выполняет роль буфера при передаче байта на шину О, а микросхема '280 осуществляет проверку на четность.
Если при чтении проверка на четность 9-разрядного слова 0011710-?), РООТ.дает нечетное число единиц, то вырабатывается сигнал ошибки Ей йОй. Схемы проверки на четность применяются также при работе с кодами, исправляющими ошибки, такими как коды Хэмми ига, описанные в разделе 2. 15.3. На рис. 2.13 была приведена матрица проверки на четность для 7-разрядного кода Хэмминга. Ошибки, возникающие в этом коде, можно исправлять так, как показано на рис. 5.77. На шине 0011-71 присутствует 7-разрядное слово, возможно содержащее ошибки.
С помощью трех микросхем 74х280 проверяется четность в трех 4- битовых группах, указываемых проверочной матрицей. На выходах микросхем '280 формируется синдром, которым определяется номер ошибочного входного бита, если таковой имеется. Микросхема 74х138 используется для декодирования синдрома. Если синдром равен нулю, то вырабатывается сигнал ЙОЕййОй Е(этот сигнал можно было бы назвать также ЕййОй).
В противном случае ошибочный бит исправляется путем его инвертирования. исправленное кодовое слово появля- етсянашине0С 1.. Заметим, что из-за низкого активного уровня сигналов иа выходах микросхемы '138 сигналы на шине 0С Е также имеют низкий активный уровень. Если необходима шина 0С с высоким активным уровнем сигналов, то на входе или выходе каждой из схем ИСКЛЮЧАЮЩЕЕ ИЛИ можно поместить отдельный инвертор, либо воспользоваться дешифратором с высоким активным уровнем сигналов на выходах, либо использовать схемы ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ.
5.8. Логические епеменпн ИСКЛЮЧАЮЩЕЕ ИЛИ и проверка нечетность 488 ООН1П ос ц!.г, Оиз $1 1 3 З $$14 оо 12 $ Э Оз 74ЭМ ое е М$9 1$ н 1Э 12 а 4 $$1 19 М $12 11$$ ы ВЭНО Вяз! 2 е ооэ 1 $$1„2 Оз 74266 оца 4 Май Оа 7426$ Е77 Е Е7„$ Э Ь ЗС$7 Рис. 5.77. Схема, исправляющая ошибки в?-разрядном коде Хаммннга 5.В.5. Описание схем ИСКЛЮЧАЮЩЕЕ ИЛИ и схем проверки на четность на языке АВЕ~. и их реализация вПЛУ В языке АВЕЬ функцию ИСКЛЮЧАЮЩЕЕ ИЛИ реализует оператор 3, а дополнение этой функции — ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ- обозначается 13. В принципе, употребление этих операторов в выражениях на языке АВЕЬ ничем не ограничено. Вы можете, например, задать сигнал на выходе ПЛУ, эквивалентный сигналу ЕУЕгч на выходе ИС 74х280, следующим выражением на языке АВЕЬ: ЕУЕ11 = ! (АЗВЗСЕВЕЕЗГЗСЗВ$1Ь Однако в большинстве ПЛУ выражения реализуются посредством двухуровневой логики И-ИЛИ н лишь в малой степени могут напрямую реализовать функцию ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ, если такая возможность вообще имеется.
К сожалению, карта Карно и-входо вой схемы ИСКЛЮЧАЮЩЕЕ ИЛИ выглядит как шахматная доска с 2 ' простыми имплнкантами. Поэтому лля реализации приведенного выше 2177 а ооэ а ООЭ 1О $$1 11 1$ ОШ $ $$$ э Ооэ 1О $1Е 11 12 1З 2$7 $ $2$9 зав 1$ $$$ н 12 1$ А в с О Взея е Г ООО в н 1 А в с О В9ЕН е Е ООО в н 1 А в с О В9ЕН е Г ООО е н 1 е! т! $ЕА ЭЗ ть тз с Т7 466 Глава б. Практическая разработка схем комбинационной логики простого соотношения средствами, рассчитанными на выражения вида «сумма произведений», потребовалось бы 256 термов-произведений, что находится за пределами возможностей любого ПЛУ.
В ПЛУ твк называемой серии Х двухвходовую схему ИСКЛЮЧАЮЩЕЕ ИЛИ можно реализовать непосредственно трехуровневой структурой, в которой с помощью одного вентиля ИСКЛЮЧАЮЩЕЕ ИЛИ объединяются два независимых выражения вида «сумма произведений». Такая структура оказывается полезной при построении счетчиков. Однако для создания больших схем ИСКЛЮЧАЮЩЕЕ ИЛИ при проектировании на уровне платы обычно бывает необходимо воспользоваться специализированным узлом формирования проверочного символа н проверки на четность типа 74х280, а разработчик специализированных ИС должен составлять из отдельных схем ИСКЛЮЧАЮЩЕЕ ИЛИ многоуровневое дерево проверки на четность, подобное тому, которое показано на рис.
5.74(Ь). 5.8.6. Описание схем ИСКЛЮЧАЮЩЕЕ ИЛИ и схем проверки на четность на языке ЧИОДА Подобно языку АВЕ1., в языке ЧНРЬ имеются примитивы х о г и хпо г, реализующиее функции ИСКЛЮЧАЮЩЕЕ ИЛИ и ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ (оператор хпо г имеется толью в версии языка ЧНРЬ-93). В табл. 5.46 в качестве примера приведена программа в потоковом стиле для 3-входового устройства ИСКЛЮЧАЮЩЕЕ ИЛИ, где использован примитив хо г. Можно также создавать схемы ИСКЛЮЧАЮЩЕЕ ИЛИ и схемы проверки на четность, описывая их поведение, как это сделано в табл. 5.47 для 9-входовой схемы проверки на четность, аналогичной ИС 74х280. Табл. 6.46.
Потоковая ЧНРЬ-програм- мадля 3-входовой схемы ИСКЛЮЧАЮ- ЩЕЕИЛИ 1зЬгагу 1ЕЕЕ; иве 1ЕЕЕ,вел 1ойзс 1164.а11; еиегсу тхогЗ зв ротс ( А, В, С: зи ЗТВ Ь001С; т: оие ЗТВ Ь001С ); еиц тхогЗ; агсцзеесеиге тхогЗ ой тхогЗ зв Ьейзи т < А хог В хог С; еип тхогЗ; Когда синтезируется схема ИСКЛЮЧАЮЩЕЕ ИЛИ с большим числом входов, описанная на языке ЧНРЬ, программные средства наилучшим образом используют технологию, по которой выполнено ПЛУ, лля реализации этой функции. И нет ничего удивительного в том, что при попытке указать ЧНР1:программе, приведенной в табл.
5.47, в качестве ПЛУ ИС 16Ч8 средства синтеза признают ее непригодной! 6.8. Логические елементыИСКЛЮЧАЮЩЕЕ ИЛИ и проверка ивчетиость 487 Табл. 8.47. Поведенческая ЧНРЬ-программа для 9-входовой схемы проверки начетность 1зЬтату 1ЕЕЕ; пве 1ЕЕЕ.вел 1ойас 1164,а11; епсзеу рат1су9 зв ротс ( 1: ьп ЯТР„Ь0010 ЧЕСТОЕ (1 Ео 9); ЕУЕН, 000: опт БТО„Ь001С ); еп6 рагксу9; агсвьгесспге раттку9р от раггеу9 зв Ъебтп ртосеев (1) татзаьье р: ЯТО Ь001С; Ьебзп р := 1(1); тот 3 ап 2 Со 9 1оор 11 1(3) = '1' Сцеп р : пот р„ епй зт; епц 1оор; 000 <= р; ЕЧЕН < пот р; епц ргосевв; епп ратзсуер; Библиотеки типичных специализированных ИС и ИС типа КРОА содержат в качестве примитивов двух- и трехвходовые схемы ИСКЛЮЧАЮЩЕЕ ИЛИ н ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ.
В специализированных интегральных КМОП-схемах эти примитивы обычно очень эффективно реализуются на уровне транзисторов с помощью логических ключей ~ем. задачи 5. 56 и 5,73). Применяя эти примитивы, можно сформировать быстрые и компактные древовидные схемы ИСКЛЮЧАЮЩЕЕ ИЛИ. Однако типичные ЧНРЬ-средства синтеза недостаточно развиты, чтобы создать эффективную древовидную структуру на основе поведенческой программы типа той, какая приведена в табл. 5.47. Чтобы получить точно то, что мы хотим, следует написать струкгурную программу. В табл.
5.48 представлена структурная программа на языке ЧНРЬ для 9-входовой схемы ИСКЛЮЧАЮЩЕЕ ИЛИ, являющейся эквивалентом ИС 74х280, изображенной на рис. 5.75(а), как по структуре, так и по реализуемой функции. В качестве основного блока древовидной схемы ИСКЛЮЧАЮЩЕЕ ИЛИ в этом примере использован предварительно определенный компонент чхот 3. В случае специализированной ИС мы бы заменили этот компонент 3-входовым примитивом ИСКЛЮЧАЮЩЕЕ ИЛИ из библиотеки специализированных ИС. Кроме того, если доступна 3-входовая схема ИСКЛЮЧАЮЩЕЕ ИЛИ-НЕ, то можно было бы исключить явную инверсию сигнала У 3, а вместо этого формировать сигнал 05 с помощью функции ХИОСЕ, используя неинвертированный сигнал УЗ в качестве третьей из ее переменных. 488 Глава б.
Практическая разработка схем комбинационной логики Табл. б 48. Структурная ЧНОЬ-программа для устройства проверки на четность, аналогичного ИС 74х280 11Ьтагу 1ЕЕЕ; аве 1ЕЕЕ.веа 1ойьс 1164.а11; еве1еу Ч74х280 1в ротС ( 1: Аа ЗТО„У.Р01С ЧЕСТОК (1 Со 9); ЕЧЕК„ ООО: оае ЗТО„10010 ); еац Ч74х280; агсЬ1еесепте Ч74х280в о1 Ч74х280 1в сошропеас тхогЗ ротс (А, В, С: 1а ЗТО 1.001С; Т: оае ЗТО Ь001С); епц сошроаевс; в18па1 71, У2, УЗ, УЗМ: ЗТО Ь001С; Ьейза 01: »хотЗ роге шар (1(1), 1(2), 1(З). 71); 02: тхотЗ ротс шар (1(4), 1(6), 1(6), У2); ОЗ; чхогЗ рог» шар (1(7), 1(8), 1(9), УЗ); УЗИ <= аое УЗ; 04: тхотЗ рагс шар (71, 72, УЗ, ООО); 06: тхогЗ роге шар (71, 72, УЗЕ, ВЧЕМ); еац Ч74х280в; Наш заключительный пример, приведенный в табл.