Построение кодопреобразователя

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

других типов как на рис. 4. логическая единица, приложенная к T-входу триггера, меняет его состояние на обратное.

Рис. 4. Счетные триггеры

 

Триггер типа RST. Это счетный триггер с двумя установочными входами. Многовходовый триггер в цифровом автомате позволяет упростить его структуру.

Для решения нашей задачи выберем D-триггер, который имеет всего один вход (D) и на выходе он повторяет сигнал на входе D, существовавший в предыдущем такте автоматного времени.

Поскольку в пределах периода синхроимпульсов входной сигнал появляется в произвольный момент времени, то на выход входной сигнал проходит с произвольной задержкой, не превышающей длительность периода синхросигнала.

 

Представление функции возбуждения

По формуле (1) рассчитаем необходимое количество разрядов для кодирования: N = ]log223[ = 5 разрядов.

Если в каждую клетку таблицы переходов и выходов записать двоичный код, соответствующий размещённым там состояниям или выходным сигналам цифрового автомата, то таким образом получаются кодированные таблицы переходов и выходов.

Кодированная таблица выходов является табличным описанием системы булевых функций, реализуемых схемой КСвых. Кодированная таблица переходов только после переработки с использованием матрицы переходов для заданного типа триггеров будет называться кодированной таблицей возбуждений и соответствовать описанию комбинационной схемы КСВХ. Очевидно, что при кодировании переходов и выходов можно придерживаться двух принципов описания булевых функций. Если желательно получить табличное описание функций выходов с наименьшим количеством единичных значений, то для кодирования часто встречающихся в таблице выходов сигналов следует использовать коды с максимально возможным количеством нулей в коде, а для кодирования следующих по количеству ссылок в таблице выходов сигналов использовать коды с увеличивающимся количеством единиц в кодовых комбинациях. Для кодирования состояний блока памяти на D триггерах также можно использовать этот принцип кодирования, поскольку таблица возбуждений для них совпадает с таблицей переходов. Рекомендовать этот принцип для, всеобщего применения при синтезе автоматов нельзя, так как при минимизации булевых функций возможно получение более простых результирующих форм представления функций, имеющих более сложную запись в СДНФ (Нормальная дизьюктивная форма - это набор переменных без общих отрицаний и скобок. Совершенная НДФ - это когда все наборы переменных имею одинаковую длину. СДНФ - это набор конъюнкций переменных одинаковой длины). Этот принцип можно использовать только в том случае, если ФАЛ выходов и ФАЛ возбуждений для D триггеров не подлежат минимизации, поскольку реализуются на мультиплексорах, дешифраторах или постоянных запоминающих устройствах.

Второй принцип кодирования соответствует противоположному подходу и ориентирован на возможность получения значительных упрощений ФАЛ в результате минимизации. Для кодирования выходных сигналов с максимальным количеством ссылок в таблице выходов используется код с максимальным количеством единиц, а для кодирования следующих по количеству ссылок в таблице выходных сигналов использовать коды с уменьшающимся количеством единиц в кодовых комбинациях. Этот принцип также без оговорок применим для кодирования состояний блока памяти на D триггерах для случая применения элементной базы, требующей минимизации для своей реализации. Минимальный по материальным затратам вариант кодирования выбирается из конечных результатов при использовании всевозможных вариантов кодирования.

Таблица состояний и выходов нормализованного автомата

Вх/состG1G2G3G4G5G6G7G8G9G10G11G12G130G2/0G3/0G4/0G5/0G10/0G11/0G12/0G13/0G16/0G17/0G18/0G20/0G21/01G6/0G7/0G8/0G9/0-/-G14/0-/-G15/0-/--/--/-G19/0-/-Вх/состG14G15G16G17G18G19G20G21G23G24G25G260G23/0G26/0G22/0G1/0G13/0G16/0G10/1G17/1G25/1G26/1G21/0G22/11-/--/--/--/-G15/1-/--/--/-G24/1-/--/--/-

Закодируем состояния тремя разрядами:

Состояние/кодQ4Q3Q2Q1Q0G100000G200001G300010G400011G500100G600101G700110G800111G901000G1001001G1101010G1201011G1301100G1401101G1501110G1601111G1710000G1810001G1910010G2010011G2110100G2210101G2310110G2410111G2511000G2611001Q Q*D0 000 111 021 11

Таблица переходов D-триггера:

 

 

 

 

 

 

 

 

 

 

 

 

 

Для случая D-триггера кодированная таблица возбуждения блока памяти совпадает с кодированной таблицей переходов:

Состояние/кодQ4Q3Q2Q1Q001D4D3D2D1D0D4D3D2D1D0G1000000000100101G2000010001000110G3000100001100111G4000110010001000G5001000100100000G6001010101001101G7001100101100000G8001110110001110G9010000111100000G10010011000000000G11010101000100000G12010111001110010G13011001010000000G14011011011000000G15011101100100000G16011111010100000G17100000000000000G18100010110001110G19100100111100000G20100110100100000G21101001000000000G22101010000000000G23101101100010111G24101111100100000G25110001010000000G26110011010100000

Выполним конкатенацию кодов входных сигналов и кодов состояний по порядку следования переменных xQ2Q1Q0 и заполним таблицу истинности для функций выхода и возбуждений.

 

Таблица истинности функций выходов и входов:

XQ4Q3Q2Q1Q0D4D3D2D1D0Y000000000010000001000100