Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 185
Текст из файла (страница 185)
В большинстве случаев «псевдослучайная» последовательность комбинаций, выдаваемых ЕГЗК- счетчиком, предпочтительнее с точки зрения обнаружения ошибок, нежели последовательность комбинаций, перебираемых в порядке двоичного счета. Кроме того, 1.ГЯК-схемы используются для кодирования и декодирования применительно к кодам определенного вида, обнаруживающим и исправляющим ошибки, в том числе — к циклическим кодам, рассмотренным в разделе 2.! 5.4.
При передаче данных ЕГЕК-счетчик часто является одним из узлов высокоскоростных модемов и сетевых интерфейсов, с помощью которых осуществляется «скремблирование» и «дескремблирование» данных. Достигается это путем пропускания выходного сигнала ЫВК-схемы и потока данных пользователя через элемент ИСКЛЮЧАЮЩЕЕ ИЛИ. Даже в том случае, когда в потоке данных пол ьзователя имеются длинные последовательности нулей и единип, смешивание их с псевдослучайным выходным сигналом 1.ГЕК-схемы улучшает баланс передаваемого сигнала по постоянному току и создает достаточно большое число переходов, облегчающих извлечение приемником информации о тактовом сигнале.
8.8. Регистры сдвига 849 ВАЬ16уай СЬВ 1. Табл. 8.23. Программа на языке АВЕЬ для 4-разрядного универсального ре- гистра сдвига шоапХЕ 274х194 схо1е '4-ьхс Опхчегва1 Ба[ус нееавсег' 274Х194 Нечхсе 'Р1678Н'; Хпрпо ап1 оосрпс рхпе С1.К, НХИ, А, В, С, О, ЬХИ 61, 60. СЬН 1.
ОА, ЦВ, ОС, 00 р1п1,2, 9,4,6, 6,7; рхп 8, 9, 12; р1п 19, 18, 17, 16 хехуре 'хе6'; " Ассхче-Хече1 сгапе1асхоп С1,Н !СЬН Хс ' Яес ае(хпхххопв ХИРОТ = [ А, В, С, 0 3; ЬЕРТХИ [ ЦВ, ОС, 00, 1 193 ' Р1СНТ1И [Н1И, ЦА„ ЯВ. ОС 3; 007 [ ОА, ОВ, ОС, 00 ); [31,90); (СТНЬ = [0,0) ); (СТН1. [О, 1) ); (СТИХ. [1, 03 ); (СТЕЬ ~ [1,1) ); СТВЬ НОЬО НХОНТ ЬЕРТ ЬОАО еопаххопа СОТ.СЬЕ С1.Х; ООТ :" 'СЬН Ф ( ноьс а ООт В НХОНТ В 610НТ1И Е 1.ЕРТ В 1,ЕГТХИ а 1.0АО Ф 1ИРОТ); епз 274х194 С(.К В)М А В С 0 Ь)й 61 ВО Рис. 8.70. Реализация в ПЛУ функций универсального регистра сдвига 74х194 с синхронным входом сброса ОА СВ С)С 00 850 Глава 8. Практическая разработка схем последовательной логики Реализация в ИС 16Ч8 функций регистра '194 отличается от прототипа только тем, как действует входной сигнал С(я 1, У настоящей ИС '! 94 входной сигнал СЬЙ Ь является асинхронным, тогда как ИС ! 6Ч8 чувствительна к значению этого сигнала — так же, как и к значению всех других входных сигналов, — только на нарастающем фронте тактового сигнала СЬК.
Табл. 8.24. Программа на языке АВЕЬ для регистра сдвига со многими функциональными возможностями аобц1е вп1геу г1т1е '8-ь1е вп11г геезяеег я1еа бесоаеа 1оаб' 1приеа ела Оперпев СЬК, ОРЗ..ОРС 07..00 1э1п; Рап 1всуре 'геЕ'; " Ветга111опв Я = (07..003; ОР - !ОРЗ..ОРО); НОЬР (ОР = О); 01.ЕАН = (ОР =" 1); 1.ЕРТ = (ОР == 2); НТЦНТ (ОР 3)„ ИОР = (ОР >= 4) а (ОР < 8); ЬОАВЯО (ОР 8); ЬОАРЦ1 ЬОР 3); ЬОАВЦ2 (ОР =" 10); 1.0АВЦЗ = (ОР == 11); ЬОЮЦ4 (ОР == 12); ЬОАВЯЗ = (ОР == 13); ЬОАРЯЗ (ОР -""- 14); 1,0АРЯ7 (ОР 18); Еяпас1опв Ц.СЬК СЬК; епб еа11ту МНЕМ НОЬВ ЕЬЯЕ МНЕМ Е(.ЗЕ ННЕИ Е1.ЗЕ ИНЕИ ЕЬЯЕ МНЕМ Е1.ЯЕ ИНЕИ Е1.ЗЕ ИНЕИ .Е1.ЯЕ МНЕМ Е1.ЯЕ МНЕМ ЕЬЗЕ МНЕМ Е1.ЯЕ ИНЕИ Е1.ЯЕ ИНЕИ Е1.ЗЕ Я ТНЕМ Ц := Ц; 01.ЕАН ТНЕИ Ц ;= 0; 1еут гнем ц : (Цб..цо, я7); Н10НТ ТнЕИ Ц : (Цс, Ц7. 01) ' ЬОАРЦО ТНЕМ Я : 11 ЬОАВЦ1 ТНЕМ Ц:= 2; ЬОАВЦ2 ТНЕИ Я : 4; 1.0ЮЦЗ ТНЕИ Ц: 8; ЬОЮЦ4 ТНЕМ Ц : 18; ЬОАВЦЗ ТНЕИ Я: 32; ЬОЮЦб ТНЕИ Ц : б4; ЬОАРЦ7 ТНЕИ Ц := 128; Ц' 8.5.
Регистры сдвига 551 Если вам, на самом деле, нужно осуществлять сброс асинхронно, то можно воспользоваться ИС 221!10, где имеется отдельная линия объединения входных сигналов по И для вырабатывання сигнала на входах сброса всех триггеров 1см. задачу 8.б9).
Гибкость языка АВВЕ позволяет создавать регистры сдвига с ббльшими или отличив!ми от уже рассмотренных функциональными возможностями. В табл. 8 24, например, описан 8-разрядный регистр сдвига с входом сброса, с возможностью загрузки одной 1 в любой разряд и с функциями сдвига влево, сдвига вправо и хранения. Операция, выполняемая на каждом такте, определяется 4-разрядным кодом операции ОР[3;О). Несмотря на большое разнообразие условий, выражаемых операторами "ИНЕИ", оказывается возможным синтезировать схему, у которой на каждый выход приходится всего лишь пять термов-произведений. С помощью языка АВВЕ легко создавать различного типа счетчики на регистрах сдвига, о которых говорилось в предыдущих разделах.
В табш 8.25, например, приведена программа для 8-разрядного кольцевою счетчика. Мы воспользовались здесь предоставляемой ПЛУ дополнительной возможностью и добавили еще две функции, которых не было в рассмотренном выше случае применения ИС средней степени интеграции; счет происходит тол ьло тогда, когда подан сигнал разрешения СО!ТЕ!и' и схема принудительно переводится в состояние 50 сигналом ВЕВТАВТ. Табл. 5.25.
Программа для 8-разрядного кольцевого счетчика зоиизе й1иБВ 11и1« '6-Ь11 Кйьк Соииеиг' 1гриии иий Оиириии НСЬК СЫТЕЧ, НЕЯТАВТ ЗО..Я7 рьи; р1и 1«иуре 'г«К'; ениаи1оии 1БО.,673 ° С1К НС1.К; ЯО := СИТЕК й !БО й !Б1 й !Б2 й !БЗ й « !СКТЕК й БО Я КЕБТАКТ; ГЯ!..Я71 := !КЕЯТАНТ й ( !СЯТЕК й ГЯ1 « сктен й 1БО !Я4 й !ББ й ! ББ " Б«11-еуио " Но14 " Яииг1 изий оие 1 .Я71 " Яыге .Я61 ) ! " но14 Кольцевые счетчики часто применяются в цифровых системах для генерирования мноюфазных тактовых сигналов и сигналов разрешения, потребность в которых велика н требования к которым в разл ич ных системах весьма разнообразны. Особым достоинством проектирования на языках описания схем является возможность легко изменять поведение счетчика посредством перепрограммирования.
На рис. 8.71 показана совокупность так ювых сигналов или сигналов разрешения:, такие сигналы могут понадобиться цифровой системе, работу которой можно разбить на шесть различных фаз. Система остается в каждой фазе в течение двух тактов основного тактового сигнала МСЕК: на протяжении этого интер- 852 Глава 8. практическая разработка схем последовательной логики ! ! ! ~ ! ~ ! ! ! ! 1 мсгк т? ?ч ь Р? ь Р4 ь Р5 ь Рис. 8.71. Временные диаграммы совокупности управляющих сигналов с шестью фазами, которые могут понадобиться в той или иной цифровой системе Табл.
8.28. Программа для генератора шестифазных колебаний иоспХе ТХИЕОЕМЯ еье1е 'Бзх-р)гаке Иавеек Т1взпЕ Оепетаесг' " 1прпе апб Оперпе рзпв НСЬК, ВЕЗЕТ, ВОМ, ВЕЯТАВТ Т1, Р1 Ь, Р2 Ь, РЗ Ь, Р4 Ь, РЯ Ь, РЯ 1. РАп; рзп 1веуре 'кеЗ'; " Яеаее се11пзезспв РНАЯЕЯ ~Р1 Ь, Р2„Ь, РЯ„Ь, Р4 Ь, РЯ Ь, РЯ Ь); МЕХТРН ~Р6 Ь, Р1 Ь, Р2 Ь, РЯ Ь, Р4 Ь, РЯ Ч; ЯВЕЗЕТ= И, 1„1, 1 1 11' Р1 ~О, 1, 1, 1, 1, 11; е?)паеьспв Т1.С1.К НСЬК; РНАЗЕЯ.СЬК ИС1.К; МНЕМ ВЕЯЕТ ТНЕМ 1Т1 := 1; РНАБЕБ := ЯЙЕЯЕТ;) ЕЬЯЕ МНЕМ (РНАЯЕЗ~ ЯВЕЯЕТ) В ВЕЯТАВТ ТНЕМ (Т1 ;~ 1; РНАБЕЯ ?~ Р1;) еьзе мнем ВОИ а т1 тнем ~т1 : О; РМАБЯБ : РнАяея') ЕЬЯЕ МНЕМ ВОМ А 'Т1 ТНЕМ (Т1 := 1; РНАЗЕЗ :~ МЕКТРН;1 ЕЬЯЕ 1Т1 : Т1; РНАЗЕЯ :" РНАЯЕЯ;) епп Т1ИЕОЕМ6 вала времени вырабатывается соответствующий сигнал Р~ Ь с низким активным уровнем, указывающий на пребывание в данной фазе, Такого рода временные диаграммы можно получить с помощью кольцевого счетчика, добавив еще один триггер, для отсчета двух тактов в каждой фазе так, чтобы сдвиг происходил нс втором такте в пределах каждой фазы, 8.8.
Регистры сдвига 883 Генератор таких многофазных сигналов можно создать в ПЛУ, предусмотрев наличие нескольких входов и выходов Тремя управляющими входными сигналами задается следующее поведение устройства. Когда подан этот сигнал, все выходные сигналы имеют неактивный уровень.
После того, как сигнал ВЕЯЕТ снимается, счетчик всегда переходит к первому такгу фазы 1. Наличие сигнала на этом входе позволят счетчику перейти ко второму такту в текущей фазе или к первому такту следующей фазы, в противном случае на данном такте продолжится пребывание в текущей фазе. НЕВТАсТ Подача этого сигнала вызывает возвРат счетчика к пеРвомУ тактУ фазы! даже в том случае, когда действует сигнал ВОН.
Табл. 8.26 представляет собой программу, посредством которой обеспечивается требуемое поведение. Заметьте, что для задания требуемой реакции на сигналы ВЕЯЕТ, НЕЯТАВТ и Н0Н в любой фазе работы счетчика весьма эффективно использованы наборы. ['енератор, вырабатывающий точно такие же сигналы, какие указаны на рис.
8 71, можно представить в виде конечного автомата, как это сделано в табл. 8.27. Эта программа на языке АВЕ1. длиннее предыдущей, но поведение синтезируемых по этим программам устройств одинаково, тогда как последнюю программу — с определенной точки зрения — легче понять. Все же реазизация данной программы требует от 8 до 20 термов И на выход при необходимости только 3-5 тсрмов-произведений на выход в исходном варианте кольцевого счетчика. Это хороший пример того, как можно повысить эффективность расходования схемных ресурсов и получить лучшие характеристики, приспосабливая к «требованиям заказчика» простую стандартную структуру, а не вымучивать из себя решение задачи «в лоб» путем построения конечного автомата. Давайте рассмотрим теперь другой вариант многофазных колебаний, которые также могут понадобиться в той или иной системе.