Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 209
Текст из файла (страница 209)
Как и в большинстве других наших примеров, в табл, 9.23 не указано какое-либо определенное кодирование состояний, и, подобно многим другим примерам, этот конечный автомат хорошо работает при записи состояний в форме выходного кода. Многие состояния можно отождествить с единственной комбинацией значений выходных сигналов, зажигающих огни светофора. Но существуют также три пары неразличимых состояний, если иметь в виду только световые сигналы: (няндт т, ыяндтт2), (кихдт т, киыдттг) и (н явкьду, киж~лу). это затруднение можно преодолеть, добавив еще одну переменную состояния "ехтРХ' с различными значениями в состояниях, образующих каждую пару. Эта идея реализована в видоизмененной программе, приведенной в табл.
9.24. 9.9. у!римеры проектирования на языке 3/НРь 955 Пвгаху ХЗЯИ« «ач !вяз,вы 1ояхс Мяа.ан; еп!<гу 3'ача1в !» ротс ( П Оск, Вкякт, ьзсак, в«свк, тияноят, 3ИХОМС« 1п Бта„' Ос1с« ОЧЕВК10Е, УХАБ!!С!К« !и Вто ХООХС; МБКЕО, ИБТН ССЧ, ИЯСИЕЕИ; С ЯтосСССХС3 мкяо, ячтеи.сч, еиакеем, тикязет: опх ято СОСХС 3; ехя« агсьххосс«хе 7ачаХв ах<Ь о! Ъача1о Хв гуро Ятоя супе ха !МЯСО, МВЧА1Т, МБЧА1Т2„ МЗОБЬАТ, емаа, БММАТТ, ес31172. Иеялп; сХЗ«в1 Ягвя« Ятея,аура; Ьоя1« р.оома ХСХССТ3 Ьвя!» х! С1 ОСЕ'ечепг впс СОСОК ''' сЬег.
и Бузят - .3: мое згоя <= ияуе.АТ« вмо свае Ягея Хв <Мп Изаа -> 11 тияеаят-'с' хьеп яхев <.= мясо; еХм«тяяапа ': сЬвп ягея с Кяямт; е3<М ЕМСАВ '!' апс ИЯСАК 'О' ХЬеп Зтвя вув!ч БЧСАВ '1' мЯ ИЯСАЕ '1' сям Ягея Мвм ЕИСАК '0' авв ЯВСАК '3' гьеп Згея еХво Зуев «пя М; ЧМП ИЗМА!3' > ЗГЕВ < ВЗЧАП23 чьвп ИБЧАПХ .=> Зхев < ИБОН.А73 чьоп ИБОРЬАЧ > Ягов < ХИОС« чЬеп ЕЧСО > ТИЯЕСВТ-'0 Своп Вгоя <- РЧОО; аыы ТИХ.ОИС-.:!' сЬев Згов <. ЕИ31!Т« и ! Ияськ 1 апп ямсАм с ьеп яхоя е1вх! иБСАк='1' апп ЕМСАК='!' аьвп Бтая е1вы ЬБСАК 'С' вы я<С!В=' 1' "Ьеп всея в1ае Згея опс ЧЬ ЕИИАХЧ > Вгея <-. Ыа!Т23 чпеп ЯМЧАХТ2 "> Вгея с ЕЕО.М; ЧЬвп ИИОЕХАУ > всея <- ИЗСС; сьев осьехв -.> Згея < изоехвт« епс саве; сап 11; епп *'3 есв ргчсесв; "- И<всЬ-аопсЬ Бгееп. -" И!в!апх В весе«Се. "- Ивхпам Я аы«хев.
— Ив!<о БЧ сот чах!. — ТЬтааь 3! сже ьось чауа, — Мев Из саго Иаы П втор' — Ио опе соа1пя. по <Ьапяе. < МЗСО; < МЗМАХТ: с МИМТ; <= МЯСО; — томов '!ЯМ, Счо Ххсьа !ог выеху. — Кея ЬохЬ чаув !ог во«му, — Ехвг-чева Вссов. — Яаве ЬеЬач!ог аа аЬоче. < ЕМСО« ( ВЮАХТ« <= БИМА!73 с Е>СО« — 'Весов" вхасо.
ахов ИЯ31172 ог З я-ЕЧМАХТ2 Мве О ; «Ьеп ОЧЕКВХОЯ '1' вХвв ахея/-ЧЗСС зла Я вя/-ИЯМАХТ аы Вгея/-ИЯЧАПг е!ве С', ОЧЕВКХОЕ '1' в1ве Вхея=ИЯЧА1Т ог Ятея ИЗМАХТ2 е1ве 'О'; 07ЕКВХОЕ '1' е1вв '1' вЬев Зхея ИЗСО о1ае 'О'; «Ьеп ОЧЕВЗХХОЕ '1' в1ве Бгвв/ Бчсс апв Бгея/ еьчАХт впя яхве/ НЗВ31172 в1ве '0'; ОЧЕРК10Е '1' в1ве всея ЕИИА1Т ог Бгея ЯЧЧА132 е1ве 'О'; ОЧЯЯКХОБ '1' е1ае '!' чЬ«п Бгея ЯЧСО еХвв 'О'; ТИВКЗЕТ МЯВ333 ИБТЕ1Л.ОЧ ВЯСВЕЕИ йчяяо ЕЧТИОХОМ Е<аяйхи < '1' >Ьав < РХАЯ33С333 '1' чЬеп < '0' >Ьоп '1' ЧЬег.
<= '0' чЬеп < РХМЕСХЕ '1' >Ьоп < 'О' >Ьег. '\' вЬел < 'О' вЬеп епя Чвча1е аг«Ь« Табо. 9.23. Х/Нх/х.-программа /хля контроллера светофора в г. Саннияейл 956 Глава 9. Примеры проектирования последовательностных схем Табл. 9.24. Определения для автомата, управляющего светофором в г. Сан- нивейл, при записи состояний в форме выходного кода 11ьгагу 1кек! ове 1ЕЕЕ.в«4 1ок1< 11б4.а11; еа«!«у Увча)е !в рог«( СЬОСК, ВКВКт, ИЗСАЯ, кчсаа, тнвКОВт, тиьОЯШ а бтс Ь0010; ОУКВВТОЕ, РЬАВВСЬК: «а ВТО Ь0010; Ва(ро, укткыля, язсакея; оа«ВТО„10010; вако, ечткысч, кчсаекя, тл>еккт: оы Втв ЬОС(С ) ! ааб; агсЬА«ес«сге Чача)еос агсЬ от Увва1е гв в!Яаа1 Вгек: В70„10010 уестск (1 «о 7); — Ьтс Ро«1«1оаа о! оа«Р««-собес авв!Вва«а«: (1) ВВВКО, (2) ЯВУКЫ.ОЧ, (В) ЯКСВЕЕВ, (4) ЕЧВЕО, (В) В(УКЬЬОЧ, (б) ЕЫСВЕЕВ, (7) ЕХТВА соов«ао« явсс: ВТО 10010 укстоа и «о л « ЯВЧАТТ: Вто 10010.)ксток (! го 7) :- О!О!000 ; соов«аа« ЯВЧА1Т2: ВТО 100!С„УЕСП>В (1 «о 7) : «010100!"; соса«аа« ВБ)Г).АЧ: ВТО 1001С ЧЕСТОВ (1 «о 7) ; "!001000"; соав«аа« КУСО: ВТО 100!С Укоток П «о 7) :- !0000!О"; соав«аа« ЕЧЧА17: ВТО 10010 УЕСТОВ (1 «о 7) : " 1000100"; сове««с« КУЧАХТ2: ВТО 1001С УЕСГОВ (1 «о 7) : "1000101"; в«еа« ЕУОКЬАЧ: Ктв (ЛСТС УЕСтак (! «о 7) :- -!ОО!ОО»', ргасевв (С!.ОСК) (ао сьмке «о ргосевв) «ад ргосевв; еоа Чво«1«ос вгсЬ; Задачи 9.1.
Напишите программу на языке АВЕ) для конечного автомата, описанного в задаче 7.30. 9.2. Видоизмените программу на языке АВЕЬ, приведенную в табл. 9.2, добавив выход Н)МТ согласно первоначальному описанию этого конечного автомата в параграфе 7.4. 9.3. Постройте заново автомат для управления задними огнями автомобиля марки рог(1 Т()нп()ег)>!гд, у которого, в отличие от автомата из раздела 9.1.3, было бы предусмотрено включение стоп-сигнала и габаритных огней. Когда подан входной сигнал ВВАКЕ («тормоз»), все фонари должны загореть- ТВВКВКТ КВВКО ЯВУЕЫ,ОЧ ЯВСВЕЕЯ КЧВЕЛ кччкььоч КВСВККВ < '1' УЬеа Кгек ЯВЧА1Т2 ог Вг«К КВЧА172 е1ве 'О'; < Вг«К(1); < Згак(2); < Втек(З); < Втек(4); < Втек(Ы; < Втек(б); Задачи 957 9.10.
Покажите, как следует изменить программу в табл. 9.13, чтобы у устройства 9.4. 9.5. 9.6. 9,7. 9.8. 9.9. ся немедленно и оставаться включенными до тех пор, пока сигнал ВВАКЕ не будет снят, независимо от каких-либо условий. При возникновении сигнала на входе РАВК1«парковка») каждый фонарь горит в половину яркости в течение всего времени, пока система не перейдет в другой режим. Это достигается подачей на фонари сигнала 01МС~К с частотой 100 Гц и 50- процентным коэффициентом заполнения. Начертите принципиальную схему автомата на одном или двух ПЛУ, напишите программу на языке АВЕ1. и представьте краткое описание того, как работает ваша система.
Найдите такое 3-разрядное кодирование состояний автомата для игры на угадывание из табл. 9.5, при котором максимальное число термов-произведений, приходящихся на один выход, сокращается до 7. Можно ли сделать еще лучше? Работа автомата для игры на угадывание из раздела 9.1.4 полностью предсказуема; игроку нетрудно подстроиться под темп, с которым переключаются лампочки, и всегда нажимать на кнопку в нужный момент. Игра становится более забавной, если темп переключения сделать меняющимся. Видоизмените программу на языке АВЕ1., приведенную в табл. 9 5, так, чтобы выход конечного автомата из состояний Б1 — Б4 происходил только тогда, когда подан новый входной сигнал БЕЕ.
(Предполагается, что сигнал ЯЕ1Ч поступает с выхода генератора псевдослучайного потока битов.) Правильное и ошибочное нажатие кнопки должно распознаваться независимо от того, подан сигнал Яеп или нет. Посмотрите, помещается ли по-прежнему ваше устройство в одной ИС 16Ч8? Напишите программу на языке АВЕ1. для 8-разрядного регистра с линейной обратной связью в расчете на реализацию в одной ИС! 6Ч8, которым можно было бы воспользоваться в качестве генератора псевдослучайного двоичного сигнала в условиях предыдущей задачи. Чему равен период двоичной последовательности, выраженный числом тактов? Каково максимальное число нулей, следующих подряд? А число единиц? Добавьте конечному автомату, представленному на рис. 9.7, вход ОЧЕйй10Е, не выходя за пределы одной ИС 16Ч8.
Когда на этот вход подан сигнал, красные фонари светофоров должны мигать, включаясь и выключаясь раз в секунду. Напишите полную программу на языке АВЕ1. для вашего автомата. Видоизмените программу из табл. 9.9 для автомата, управляющего с ветофором, заставив светофор переключаться так, как вам хотелось бы, чтобы это происходило в вашем собственном городе. Напишите ЧНИ.-программу для конечного автомата, описанного в задаче 7.30. бьи асинхронный вход РЕЯЕТ, возникновение сигнала на котором заставляло бы конечный автомат переходить в состояние 1пт т. Повторите эту задачу для синхронного вхола сброса так, чтобы конечный автомат переводился в состояние 1111т в случае, когда сигнал йеяет принимает активное значение по нарастающему фронту тактового сигнала.
958 Глава 9. Примеры проектирования последовательностных схем 9.11.Напишите и испытайте ЧНР1.-программу для устройства, изображенного парис. 9.8(Ь). Посмотрите с помощью имеющихся средств синтеза, отличается ли схема, показанная парис. 9.8(Ь), от схемы, показанной на рис. 9.8(а), и в чем состоит это отличие. 9Л 2.Напишите ЧНРЬ-программу для конечного автомата, считающего число единиц, с таблицей состояний, приведенной в табл. 7. 12. 9.1З.Напишите ЧНРЬ-программу для конечного автомата, управляющего кодовым замком, с таблицей состояний, приведенной в табл.
7.14. 9.14. Видоизмените ЧНРЬ-программу из таблицы 9.19, добавив выход Н!МТ согласно первоначальному описанию этого конечного автомата в параграфе 7,4. 9.15. Повторите задачу 9.3 на языке ЧНРЬ, предполагая, что ваше устройство будет реализовано в одной ИС типа СРЬР или РРОА. 9.16.Видоизменнте ЧНРЬ-программу для игры на угадывание из табл. 9.2) согласно идее, изложенной в задаче 92Ь Добавьте в программу еще один процесс для генератора псевдослучайной двоичной последовательности, о котором говорится в задаче 9.6. 9.17.