Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
8.27. Последовательностные ПМЛКомбинационные (только на вентилях) ПМЛ, которые мы рассматривали выше в разд. 8.15, входят в большое семейство, которое включает устройства с различным числом регистров Карты перемычек, создаваемые вручную.Простые проекты могут конструироваться в ПМЛ посредством изображения логики, затем соответствующий образ преобразуется в массив перемычек для программатора ПМЛ. Так, например, предположим, что мы хотим получить![]() ![]()
где входы 50 и Регистровые ПМЛ легко реализуют это с фиксацией результата. Заметим, что мы использовали ИЛИ PALASM.Для схем какой-либо разумной сложности необходимы некоторые методы логического проектирования ПМЛ. Например, ПМЛ![]() PALASM (PAL Assembler, торговый знак фирмы Monolithic Memories
Рис. 8.74. Регистровая ПМЛ 16R8 имеет 8 внешних входов, 8 выходов, линии синхронизации и управления 3-м состоянием. Выходы регистра можно также использовать как входы матрицы И (с разрешения фирмы Advanced Micro Devices, Калифорния.).
Рис. 8.75. 4-входной мультиплексор с фиксацией, выполненный на ПМЛ. Таким образом вы можете отлаживать ваши уравнения перед изготовителем ПМЛ. PALASM широко используется. Существуют листинги исходных текстов (кодов) на языке Фортран, которые могут затем послать карты перемычек для ПМЛ-программаторов (в стандартном Языки ABEL и CUPL.PALASM-помощник, но серьезному пользователю ПМЛ необходимо большее. Языки логического программирования высокого уровня подобно языкам ABEL (фирмы Data![]() Эти языки достаточно «умны» для преобразования таблиц истинности в логические выражения с последующей минимизацией их (также, как и логических булевых выражений) в логически идентичные, окончательный результат получается в форме, которая соответствует логическим ограничениям устройства (т. е. сумма произведений для ПМЛ). Вместо записи сверху вниз явнозаданных логических выражений для ряда значений вам достаточно записать что-то вроде ADDR: С целью конкретизации этих идей, давайте рассмотрим оба примера проектирования как последовательностных, так и комбинационных схем, используя язык CUPL. Пример использования языка
Рис. 8.76. Коды Давайте спроектируем кристалл-шифратор, который преобразует Входы представляют отдельные сегментные сигналы, которые всегда помечаются символами Рис. 8.77 представляет входное описание на языке CUPL.
Рис. 8.77. Спецификация преобразователя Здесь сигналы запуска сегментов а — д обозначают входы (положительная логика), а шестнадцатеричные разряды Упражнение 8.29. Проверьте для себя правильность нашей работы, записав некоторые из отображаемых символов, через заданные нами промежуточные переменные zero-next. Язык CUPL сначала использует определение промежуточных переменных для записи выражений Эта обычно рассматриваемая форма плоха, так как она удваивает задержки распространения, хотя это не так важно в медленных устройствах, подобных этому. Лучшее решение - произвести логическую минимизацию, используя логическую эквивалентность по формуле Моргана, например.
Рис. 8.78. Преобразователь Мы запускаем минимизатор CUPL, который выдает термы произведений (рис. 8.78). Взгляните, все удовлетворяет ограничению «7 произведений». CUPL также рисует для вас карту перемычек (рис. 8.79). Конечно, вы не программируете ПМЛ так, а используете вместо этого прямую загрузку универсального JEDEC программирующего формата. В этом примере язык CUPL, очевидно, делает трудную задачу простой. Пример использования языка CUPL для программирования автомата-продавца (последовательная схема).
Рис. 8.79. Карта перемычек преобразователя Произвольная машина состояний (разд. 8.18) имеет набор состояний и правил перехода для движения между этими состояниями по каждому фронту синхроимпульса. Правила перехода зависят от текущего состояния и от частной комбинации входных уровней, существующих на следующем фронте. Вы можете соорудить машину состояний на программируемой логике, содержащей регистры, если а) существует достаточное число битов в регистре для представления всех возможных состояний (например, с
Рис. 8.80. Диаграмма состояний торгового автомата. Как пример, давайте спроектируем регистровую ПМЛ для диаграммы состояний на рис. 8.80. Это - торговый автомат, предназначенный для выдачи бутылки сладкой шипучей жидкости, когда опущено 25 цент или более. Существует некоторый вид монетного интерфейса, который «заглатывает», распознает монету и посылает на наш ПМЛ Рис. 8.81 показывает спецификацию, выполненную в синтаксисе машины состояний языка CUPL. Как и прежде, мы начнем с определения входных - выходных контактов. Заметим, что мы добавили вход reset (сброс) так, чтобы вы могли перейти к начальному состоянию Рис. 8.81. Спецификация торгового автомата на языке CUPL. (см. оригинал)
Рис. 8.82. Выход CUPL для торгового автомата. В этом примере выход «бутылка» специфицируется как раздельный выходной регистр, т. е. выходные состояния дешифрировать не нужно. Фактически нужен только выход, а биты Заметим, что вы должны определить точно переход из некоторого состояния в себя, также, как мы делали для входа «нет монеты». Неопределенное условие безусловно сбрасывает состояние во все нули. Это происходит потому, что эти условия собираются в комбинационную логику для выставления на В этом случае этот пример легко укладывается в ограничениях ПМЛ Упражнение 8.30. Проконтролируйте правильность конечных логических выражений, посредством проверки нескольких правил перехода. Вы должны испытать все переходы от 00, или от «5 центов», или «10 центов» к какому-либо другому состоянию. Упражнение 8.31. Хорошие торговые автоматы имеют размен. Перерисуйте диаграмму состояний (рис. 8.80) так, чтобы были состояния (сколько?) для каждого возможного числа разменов. Модифицируйте правила перехода соответственно. Гарантируйте, чтобы ваш усовершенствованный автомат выполнял свою основную работу - выдачу бутылок. Упражнение 8.32. Нарисуйте диаграмму состояний и правил перехода для электронного комбинационного замка. Он должен открываться только тогда, когда четыре цифры набраны в правильном порядке. Какая-либо ошибка должна сбрасывать его.
|
1 |
Оглавление
|