Главная » Просмотр файлов » Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002)

Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 206

Файл №1095889 Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002)) 206 страницаДжон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889) страница 2062018-12-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 206)

В параграфе 7.12 мы уже объяснили, что основные правила языка Ъ'НРЬ, введенные налзи еще в параграфе 4.7, в том числе, процессы — это почти все, что нужно для описания работы последовательностных схем. В отличие от языка АВЕЬ в языке Ъ'НРЬ нет никаких специальных языковых средств для создания конечных автоматов. Вместо этого большинство программистов описывает конечные автоматы комбинацией имеющихся «обычных» средств, чаше всего с помощью перечислимых типов и операторов саяе.

Мы воспользуемся этим методом в примерах данного параграфа. 9.2. Примеры проектирования нв языке ЧНОЬ 941 В среде проектирования на основе того илн иного языка описания схем можно многими способами написать программу, удовлетворяюшую сформулированным требованиям. Мы рассмотрим несколько таких возможностей. Первый подход заключается в том, чтобы составить от руки таблицу состояний и значений выходного сигнала, а затем вручную преобразовать ее в программу.

Поскольку в разделе 7 4.1 нами уже была составлена такая таблица состояний, то почему бы нам не воспользоваться ею7 В табл. 9.12 эта таблица воспроизведена заново, а в табл. 9.13 приведена соответствующая ЧНОЬ-программа. Табл. 9.12. Таблица состояний н значений выходного сигнала 2 в рассматриваемом примере 01 11 10 АО А1 ОКО А1 АО ОК1 ОКО ОК1 ОКО ОК1 А1 А1 ОК1 А1 ОК1 091Т АО АО ОКО А1 АО ОКО ОКО ОК1 АО Как обычно, объявление объекта в языке ЧНРЬ содержит только указания на входы и выходы; в нашем примере это — СЪОСК, А, В и 2. Определением архитектуры задается внутреннее функционирование конечного автомата. Первое, что делается в архитектуре, — это образование перечислимого типа Вгед Гуре, значениями которого являются идентификаторы, соответствующие именам состояний.

Затем объявляется сигнал Всей, который будет применен для хранения текущего состояния автомата. С учетом последующего использования этого сигнала, он будет при синтезе отображен в переключающийся по фронту регистр. В части архитектуры, содержащей операторы, имеется два параллельных оператора: процесс и оператор избирательного присваивания. Процесс чувствителен только к сигналу СЪОСК и им осуществляются все переходы из одного состояния в другое, которые происходят по нарастающему фронту сигнала СВОСК. Оператором "з Х'* в пределах процесса обнаруживается нарастающий фронт, а в операторе сазе для каждого состояния перебираются все возможные переходы. В операторе сазе имеется шесть альтернатив, соответствующих пяти состояниям, определенным явно, и случаю, в котором собраны все другие состояния.

Ради надежности, в случае "ог1тегз" автомат отсылается назад в состояние ТИП. В каждой из альтернатив используется вложенный оператор "1 й", чтобы непосредственно перечислить все комбинации входных сигналов А и в. Однако, строго говоря, нет необходимости включать те комбинации, при которых автомат остается в текущем состоянии; сигнал Яге9 сохраняет текущее состояние до тех пор, пока в каком-то из возобновлений процесса ему не будет присвоено новое значение. Оператор избирательного присваивания в конце табл.

9.13 вырабатывает единственный выходной сигнал данного автомата — сигнал е типа Мура, значение которого зависит от текущего состояния. Возможно, легче было определить также в пределах этого оператора выходные сигналы типа Мили. другими словами, значе- 942 Глава 9. Г(римеры проектирования последовательностных схем иие Е могло бы быть функцией не только текущего состояния, но и входных сигна- лов. Поскольку оператор "н?Г)з" является параллельным оператором, любые из.

мененна входных сигналов сразу же отражаются на значении выходного сигнала Е Табл. 9.13. тНР(=программа для рассматриваемого конечного автомата 11ьгагу ?ЕЕЕ; пве ?ЕЕЕ.зей 1оЯ!с 11Бе.а11; епсгсу зпехввр 1з рогг ( С1.0СК, А, В: 1п БТО„ЬООХС,' Е; опг БТР 100?С ); епс; агсп?сестпге вкехвпр агсь от заехавр 1з сУРе ЯгеБ ГУРе гз (?11?Т, АО, А1, ОКО, ОК1); з1Бпа1 ЯгеБ: БгеБ гуре; ЬеБАп ргосезв (СЬОСК) — всвое-пасЬ!ве згагез ап<( сгапв?г1опз ЬеБ1п АБ 010СК'етепг апа С1.0СК = '1' Гпеп саве ЯгеБ 1е хьеп ?И?Т > 11 А 'О' ГЬеп Бг<Б <= АО; е?в11 А='1' ГЬеп ЯгеБ <= А1; епн 1?; ввеп АО "> 11 А 'О' гпеп ЯгеЯ <= ОКО; е1з11 А='1' СЬел БгвБ < А1; епй 11; внес А1 => гг А='О' гпеп БгеБ < АО; е?з11 А ' 1" Гкап БгеБ <= ОК1; еп<( >1; Ь ОКО => 11 А- О СЬ Б К <= ОКО; е1з11 А='1' апо В 'О' ГЬео Бгек < 11; е?вг? А='!' апа В '1' ГЬеп ЯгеБ < ОК1; вкеп ОК1 > 11 А='О' апо В '0' сьев БгеБ <= АО; в1в11 А='0' апа В '1' слеп БгеБ <= ОКО; е1в11 А 1 Ъеп ЯгеБ <= ОК1; вьеп огпегз > ЗгеБ < ?И?Т, епа саве; епд зт; епа ргосезз; епн 1?; о!1Ь БгеБ зе1есг -- оперев та1иез ьазес оп всаге Е <= 'О' влеп ?М?Т ! АО ~ А1, '1' елец ОКО ~ ОК1, '0' внвп огнегз; епд зпекавр агсЬ; На самом деле, нам следовало предусмотреть в табл.

9.13 вход сброса (см заключенное рамку замечание в конце раздела 9.1.4). Сигнал ееяет легко включит!в видоизменив объЯвление объекта и добавив еще одно пРедложение в опеРатор "1 т" в определении архитектуры. если сигнал ееяет принимает активное значение, то автомат должен перейти в состояние ?М ? Т; в противном случае сле- 9.2. Примеры проектирования иа языке ЧН!Зь 943 Табл. 9.14. Использование признака для того, чтобы заставить средства синтеза кодировать состояния по правилу перечисления 1зЬтату ХЕЕЕ; аве 1ЕЕЕ.»Фп 1ойзс 1164.а11; 11Ьтвту БУНОРБУБ; иве БуйОряуя,аФФтзЬаеев,а11; втсЬЕФесевте вшехвшре атсЬ а1 вшехашр 1а гуре Бтей Фуре зв дИ1т, кО, я1, ОК0, ОК1); аФФФЕЬ»Фе ввшк епсоаз»Е о1 Бт»Е Фуре: Фуре 1в "0000 0001 0010 0100 1000"; в1Епа1 Бтвб: Бтвй Фуре; Другой способ навязать то или иное кодирование состояний без обращения к внешним пакетам и без учета признаков при синтезе заключается в более явном задании регистра состояний с помощью обычных логических типов данных.

Этот подход представлен в табл. 9. ! 5. Злесь сигнал Б тад определен как 4-разрядный дует исполнять оператор сазе. В зависимости оттого, когда проверяется сигнал ЕЕБЕТ, — до проверки поступления фронта тактового сигнала или после,.-реализуется асинхронный или синхронный сброс(см. задачу 9. ! О). Так как же насчет кодирования состояний? Табл.

9. ! 3 не содержит никакой информации о том, как должны присваиваться комбинации переменных состояния состояниям с теми или иными именами. Ничего не известно даже о толд сколько необходимо двоичных переменных состояния. Средства синтеза вольны связывать с идентификаторами перечислимого типа любые целые числа или двоичные комбинации, какие им только понравятся, но в типичном случае состояниям булут поставлены в соответствие целые числа, нач иная с О, в том порядке, в каком перечислены их имена. Затем для представления этих чисел будет использовано наименьшее возможное число битов, равное ~!ой з ) при наличии з состояний, Таким образом, синтез по программе из табл.

9. ! 3 будет происходить с тем же самым «простейшим» кодированием состояний, которое было выбрано нами в исходном примере (см. табл. 7.7). Однако средствами языка ЧНР!. можно заставить компилятор принять какой-то другой способ кодирования. Один из способов навязать определенное кодирование состояний заключается в употреблении оператора "ахгт1Ьоге'*, как это сделано в табл.

9. ! 4. Здесь "епцш еооос!1од"-определяемый пользователем признак, значением которого является строка, указывающая, какое именно кодирование путем перечисления должно быть использовано средствами синтеза. Процессор языка ЧНРЕ игнорирует это значение, но передает имя признака и его значение средствам синтеза.

Признак "епош епоос!1пд" определен в большинстве средств синтеза и известен им, в том числе средствам синтеза фирмы Зупорзуз, !пс. Заметьте, что программой должен «использоваться» пакет "аФФтйьцсез" фирмы Яупорзуз; это необходимо для того, чтобы ЧНРЬ-компилятор распознал "епцш епоос!1од" как законный определяемый пользователем признак. Между прочим, кодирование состояний, указанное в последней программе, эквивалентно «почти прямому» кодированию из табл. 7.7. 944 Глава 9. Примеры проектирования последовательностнык схем элемент типа ЯТО ЬООТО чеОтОК и введены константы, позволяющие повсюду в программе ссылаться на состояния по их именам.

Никаких других изменений в программе не требуется. Табл. 9.15. Использование обычной логики н констант для задания способа коднроввннясостояннй 11пгвгу 1ЕЕЕ; иве 1ЕЕЕ.вий Хсбзс 1164.а11; агсЫФвсиите вввхаврс втсп ст ввехввр зе випиуре Бтеб гуре 1в БТ0 Ь0010 ЧЕСТОЕ (1 ио 4); сспвтапи 1ЛТТ: Бтвй суре : "0000"; сопвтвпи АО : Бтее туре := "0001"; сопвиапи А1 : Бтей суре := "0010"; сопвхипи 0К0 : Бгеб гура : "0100"; сопвиапи ОК1 : БгеЕ суре ;я "1000"; в18па1 Бгеб: Бгеб суре; Возвращаясь к нашей исходной ЧНРЬ-программе в табл. 9,13, отметим, что возможна еще одна интересная модификация. Исходной программой определяется обычный конечный автомат Мура со структурой, показанной на рнс. 9.8(а). Что произойдет, если мы преобразуем оператор избирательного присваивания выходной логики в оператор саяе и переместим его в процесс, осуществляющий переходы из одного состояния в другое? Поступив так, мы создадим автомат, который в результате синтеза, вероятнее всего, будет иметь структуру, показанную на рис, 9 8(Ь).

По существу, это автомат Мили с конвейерными выходами, и его поведение неотличимо от поведения исходного автомата, за исключением временных характеристик. Мы сократили задержку распространения от входа СЬОСК до выхода Е, вырабатывая сигнал Е непосредственно на регистровом выходе, но одновременно с этим увеличилось требуемое время установления сигналов А и В по отношению к сигналу СЬОСК из-за дополнительной задержки на прохождение сигнала через выходную логику ко входу Р выходного регистра, Все решения задачи построения рассматриваемою конечного автомата, о которых шла речь до сих пор, основывались на таблице состояний, которую мы первоначально составили вручную в разделе 7зй1.

Можно, однако, написать ЧНРЬ- программу непосредственно, без составления таблицы состояний вручную. Основная идея упрощения следует из исходной формулировки задачи, приведенной в начале данного раздела, и состоит в исключении последнего значения входного сигнала А из определения состояний. Вместо этого предусматривается наличие отлельного регистра ЕАБтА для отслеживания упомянутой величины. В этом случае необходимо определить только два состояния, помимо исходною состояния ты 1 т: состояние ЬООк1н6 («смотреть дальше в ожидании совпадения») и состояние ОК («имеет место совпадение двух последовательных значений А нли сигнал Б остается равным 1 с момента последнего совпадения»). ЧНРЬ-архитектура, реализующая этот подход приведена в табл.

Характеристики

Тип файла
DJVU-файл
Размер
11,16 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6455
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее