Синтез автомата модели Мили
Проектирование конечного автомата, заданного оператором соответствия, с использованием канонического метода структурного синтеза автоматов. Тактирование от генератора синхронизирующих импульсов для устранения гонок в функциональной схеме автомата Мили.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 22.10.2012 |
Размер файла | 1,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
ВВЕДЕНИЕ
Согласно заданию необходимо провести синтез автомата модели Мили. На вход автомата поступает 16 различных входных последовательностей длины 4, составленных из букв алфавита 0, 1. На выходе вырабатывается 16 выходных последовательностей, составленных из букв того же алфавита. Для задания работы автомата используется оператор соответствия, представляющий собой таблицу, в которой каждому входному набору сигналов ставится в соответствие выходной набор. Заполнение оператора соответствия ведется на основе заданного числа W по определенному правилу.
После заполнения оператора соответствия необходимо привести его к автоматному виду с помощью введения пустых символов во входной и выходной алфавит (? и ? соответственно). Затем строится граф переходов автомата Мили. По построенному графу строится совмещенная таблица переходов-выходов. Минимизация числа состояний выполняется в два этапа. На первом этапе необходимо найти и объединить в одно все состояния, имеющие одинаковые выходные символы и при переходе вырабатывающие одинаковые состояния. Второй этап минимизации проводится с помощью треугольной таблицы.
После минимизации необходимо провести структурный синтез автомата. На данном этапе осуществляется
1) выбор метода устранения критических состязаний (гонок) элементов памяти в автомате;
2) кодирование состояний автомата, входных и выходных символов;
3) составление таблицы функций возбуждения для JK-триггера;
4) формирование логических выражений для функций возбуждения и их минимизация с помощью карт Вейча;
5) построение кодированной таблицы выходов;
6) формирование логических выражений для выходов и их минимизация с помощью карт Вейча.
На основе минимизированных выражений строится схема электрическая функциональная в базисе "стрелка Пирса". Проверка работоспособности схемы осуществляется с помощью симулятора MAX+PLUS.
1. АБСТРАКТНЫЙ СИНТЕЗ КОНЕЧНОГО АВТОМАТА
1.1 ФОРМИРОВАНИЕ ОПЕРАТОРА СООТВЕТСТВИЯ
Формирование оператора соответствия ведется следующим образом:
I. заданное число W нормализуется, и мантисса переводится в двоичную систему счисления; переведенное 16-разрядное число записывается в столбец W1;
По заданию W = 0.104041. Осуществим его перевод в двоичную систему счисления. Для этого исходная дробь умножается на основание системы счисления, в которую переводится; в полученном произведении целая часть преобразуется в соответствии с таблицей в цифру нужной системы счисления и отбрасывается - она является старшей цифрой получаемой дроби; оставшаяся дробная часть вновь умножается на нужное основание системы счисления с последующей обработкой полученного произведения в соответствии с шагами. Произведем эти действия.
1) 0.104041•2 = 0.208082
2) 0.208082•2 = 0.416164
3) 0.416164•2 = 0.832328
4) 0.832328•2 = 1.664656
5) 0.664656•2 = 1.329312
6) 0.329312•2 = 0.658624
7) 0.658624•2 = 1.317248
8) 0.317248•2 = 0.634496
9) 0.634496•2 = 1.268992
10) 0.268992•2 = 0.537984
11) 0.537984•2 = 1.075968
12) 0.075968•2 = 0.151936
13) 0.151936•2 = 0.303872
14) 0.303872•2 = 0.607744
15) 0.607744•2 = 1.215488
16) 0.215488•2 = 0.430976
Таблица 1.1.1 - Перевод в двоичную систему счисления числа W
0 |
104041 |
||
0 |
0 |
208082 |
|
1 |
0 |
416164 |
|
2 |
0 |
832328 |
|
3 |
1 |
664655 |
|
4 |
1 |
329312 |
|
5 |
0 |
658624 |
|
6 |
1 |
317248 |
|
7 |
0 |
634496 |
|
8 |
1 |
268992 |
|
9 |
0 |
537984 |
|
10 |
1 |
075968 |
|
11 |
0 |
151936 |
|
12 |
0 |
303872 |
|
13 |
0 |
607744 |
|
14 |
1 |
215488 |
|
15 |
0 |
430976 |
II. нормализованная мантисса числа W возводится в квадрат, нормализуется и переводится в двоичную систему, переведенное 16-разрядное число записывается в столбец W2;
W2 = (0.104041)2 = 0.0108245. В результате нормализации получаем 0.108245
1) 0.108245•2 = 0.216490
2) 0.216490•2 = 0.432980
3) 0.432980•2 = 0.865960
4) 0.865960•2 = 1.731920
5) 0.731920•2 = 1.463840
6) 0.463840•2 = 0.927680
7) 0.927680•2 = 1.855360
8) 0.855360•2 = 1.710720
9) 0.710720•2 = 1.421440
10) 0.421440•2 = 0.842880
11) 0.842880•2 = 1.685760
12) 0.685760•2 = 1.371520
13) 0.371520•2 = 0.743040
14) 0.743040•2 = 1.486080
15) 0.486080•2 = 0.972160
16) 0.972160•2 = 1.944320
Таблица 1.1.2 - Перевод в двоичную систему счисления числа W2
0 |
108245 |
||
0 |
0 |
216490 |
|
1 |
0 |
865960 |
|
2 |
1 |
731920 |
|
3 |
1 |
463840 |
|
4 |
0 |
927680 |
|
5 |
1 |
855360 |
|
6 |
1 |
710720 |
|
7 |
1 |
421440 |
|
8 |
0 |
842880 |
|
9 |
1 |
685760 |
|
10 |
1 |
371520 |
|
11 |
0 |
743040 |
|
12 |
1 |
486080 |
|
13 |
0 |
972160 |
|
14 |
0 |
972160 |
|
15 |
1 |
944320 |
III. нормализованная мантисса числа W возводится в куб, нормализуется и переводится в двоичную систему, переведенное 16-разрядное число записывается в столбец W3;
W3 = (0.104041)3 = 0.001126194. В результате нормализации получаем 0.1126194
1) 0.1126194•2 = 0.225238
2) 0.225238•2 = 0.450476
3) 0.450476•2 = 0.900952
4) 0.900952•2 = 1.801904
5) 0.801904•2 = 1.603808
6) 0.603808•2 = 1.207616
7) 0.207616•2 = 0.415232
8) 0.415232•2 = 0.830464
9) 0.830464•2 = 1.660928
10) 0.660928•2 = 1.321856
11) 0.321856•2 = 0.643712
12) 0.643712•2 = 1.287424
13) 0.287424•2 = 0.574848
14) 0.574848•2 = 1.149696
15) 0.149696•2 = 0.299392
16) 0.299392•2 = 0.598784
Таблица 1.1.3 - Перевод в двоичную систему счисления числа W3
0 |
1126194 |
||
0 |
0 |
225238 |
|
1 |
0 |
450476 |
|
2 |
0 |
900952 |
|
3 |
1 |
801904 |
|
4 |
1 |
603808 |
|
5 |
1 |
207616 |
|
6 |
0 |
415232 |
|
7 |
0 |
830464 |
|
8 |
1 |
660928 |
|
9 |
1 |
321856 |
|
10 |
0 |
643712 |
|
11 |
1 |
287424 |
|
12 |
0 |
574848 |
|
13 |
1 |
149696 |
|
14 |
0 |
299392 |
|
15 |
0 |
598784 |
IV. нормализованная мантисса числа W возводится в четвертую степень, нормализуется и переводится в двоичную систему, переведенное 16-разрядное число записывается в столбец W4;
W4 = (0.104041)4 = 0.00011717. В результате нормализации получаем 0.11717
1) 0.11717•2 = 0.23434
2) 0.46868•2 = 0.93736
3) 0.93736•2 = 1.87472
4) 0.87472•2 = 1.74944
5) 0.74944•2 = 1.49888
6) 0.49888•2 = 0.99776
7) 0.99776•2 = 1.99552
8) 0.99552•2 = 1.99104
9) 0.99104•2 = 1.98208
10) 0.98208•2 = 1.96416
11) 0.96416•2 = 1.92832
12) 0.92832•2 = 1.85664
13) 0.85664•2 = 1.71328
14) 0.71328•2 = 1.42656
15) 0.42656•2 = 0.85312
16) 0.85312•2 = 1.70624
Таблица 1.1.4 - Перевод в двоичную систему счисления числа W3
0 |
11717 |
||
0 |
0 |
23434 |
|
1 |
1 |
93736 |
|
2 |
1 |
87472 |
|
3 |
1 |
74944 |
|
4 |
0 |
49888 |
|
5 |
1 |
99776 |
|
6 |
1 |
99552 |
|
7 |
1 |
99104 |
|
8 |
1 |
98208 |
|
9 |
1 |
96416 |
|
10 |
1 |
92832 |
|
11 |
1 |
85664 |
|
12 |
1 |
71328 |
|
13 |
1 |
42656 |
|
14 |
0 |
85312 |
|
15 |
1 |
70624 |
Полученный в результате вычислений оператор сооответствия представлени в таблице 1.1.5.
Таблица 1.1.5 - Оператор соответствия
Входные сигналы |
Выходные сигналы |
||||||||
Z1 |
Z2 |
Z3 |
Z4 |
W1 |
W2 |
W3 |
W4 |
||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
|
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
3 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
|
4 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
|
5 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
|
6 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
|
7 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
|
8 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
|
9 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
|
10 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
|
11 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
|
12 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
|
13 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
|
14 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
|
15 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1.2 ПРИВЕДЕНИЕ ОПЕРАТОРА СООТВЕТСТВИЯ К АВТОМАТНОМУ ВИДУ
Приведем оператор соответствия к автоматному виду в соответствии со следующими правилами:
1) длины входной последовательности и соответствующей ей выходной должны быть одинаковыми
2) на одинаковые начальные участки входной последовательности автомат должен отвечать формированием одинаковых начальных участков выходных последовательностей
Приведение оператора соответствия к автоматному виду осуществляется путем использования пустых символов ? и ?.
Результат приведения представлен в таблице 1.2.1.
Таблица 1.2.1 - Автоматный оператор соответствия
Входные сигналы |
Выходные сигналы |
||||||||||||||
Z1 |
Z2 |
Z3 |
Z4 |
W1 |
W2 |
W3 |
W4 |
||||||||
0 |
0 |
0 |
0 |
0 |
? |
? |
? |
? |
0 |
0 |
0 |
0 |
|||
1 |
0 |
0 |
0 |
1 |
? |
? |
? |
? |
0 |
0 |
0 |
0 |
|||
2 |
0 |
0 |
1 |
0 |
? |
? |
? |
? |
? |
? |
0 |
0 |
0 |
1 |
|
3 |
0 |
0 |
1 |
1 |
? |
? |
? |
? |
? |
? |
1 |
1 |
1 |
1 |
|
4 |
0 |
1 |
0 |
0 |
? |
? |
? |
? |
? |
? |
1 |
1 |
1 |
1 |
|
5 |
0 |
1 |
0 |
1 |
? |
? |
? |
? |
? |
? |
0 |
0 |
1 |
0 |
|
6 |
0 |
1 |
1 |
0 |
? |
? |
? |
? |
? |
? |
1 |
1 |
0 |
1 |
|
7 |
0 |
1 |
1 |
1 |
? |
? |
? |
? |
? |
? |
0 |
1 |
0 |
1 |
|
8 |
1 |
0 |
0 |
0 |
? |
? |
? |
? |
? |
? |
1 |
1 |
1 |
1 |
|
9 |
1 |
0 |
0 |
1 |
? |
? |
? |
? |
? |
? |
0 |
0 |
1 |
1 |
|
10 |
1 |
0 |
1 |
0 |
? |
? |
? |
? |
? |
? |
1 |
1 |
0 |
1 |
|
11 |
1 |
0 |
1 |
1 |
? |
? |
? |
? |
? |
? |
0 |
1 |
1 |
1 |
|
12 |
1 |
1 |
0 |
0 |
? |
? |
? |
? |
0 |
0 |
0 |
1 |
|||
13 |
1 |
1 |
0 |
1 |
? |
? |
? |
? |
0 |
1 |
1 |
1 |
|||
14 |
1 |
1 |
1 |
0 |
? |
? |
? |
? |
? |
? |
1 |
0 |
0 |
0 |
|
15 |
1 |
1 |
1 |
1 |
? |
? |
? |
? |
? |
? |
0 |
1 |
0 |
1 |
1.3 ПОСТРОЕНИЕ ГРАФА ПЕРЕХОДОВ АБСТРАКТНОГО АВТОМАТА И ТАБЛИЦЫ ПЕРЕХОДОВ-ВЫХОДОВ
Граф переходов автомата Мили строится на основе таблицы 1.2.1. При этом предполагается, что последний символ каждого входного слова должен переводит автомат в начальное состояние.
В момент времени t = 0 автомат находится в состоянии а0. При подаче в последующие моменты времени каждого входного сигнала z(t) автомат вырабатывает выходной сигнал w(t) и переходит в новое состояние. Порядок нумерации состояний, отличных от начального, для абстрактного автомата безразличен.
Рассмотрим для примера первую строчку в таблице 1.2.1. Под воздействием нуля автомат переходит из а0 в а1 и вырабатывает сигнал ?. Под воздействием второго нуля автомат из а1 переходит в а3 и вырабатывает сигнал ?. Под воздействием третьего нуля автомат из а3 переходит в а7 и вырабатывает сигнал 0. Под воздействием четвертого нуля автомат из а7 переходит в а15 и вырабатывает сигнал 0. Далее под воздействием первого ? автомат из а15 переходит в а31 и вырабатывает сигнал 0. Под воздействием второго ? автомат из а31 переходит снова в а0 и вырабатывает сигнал 0. Рассуждая аналогичным образом можно построить остальные ветки графа.
Граф переходов заданного автомата представлен на рисунке 1.3.1.
Рисунок 1.3.1 - Граф переходов автомата Мили
На основе полученного графа построим таблицу переходов-выходов.
Таблица 1.3.1 - Таблица переходов-выходов
0 |
1 |
? |
||
a0 |
a1/? |
a2/ ? |
- |
|
a1 |
a3/? |
a4/? |
- |
|
a2 |
a5/? |
a6/? |
- |
|
a3 |
a7/0 |
a8/? |
- |
|
a4 |
a9/? |
a10/? |
- |
|
a5 |
a11/? |
a12/? |
- |
|
a6 |
a13/0 |
a14/? |
- |
|
a7 |
a15/0 |
a16/0 |
- |
|
a8 |
a17/0 |
a18/1 |
- |
|
a9 |
a19/1 |
a20/0 |
- |
|
a10 |
a21/1 |
a22/0 |
- |
|
a11 |
a23/1 |
a24/0 |
- |
|
a12 |
a25/1 |
a26/0 |
- |
|
a13 |
a27/0 |
a282/1 |
- |
|
a14 |
a29/1 |
a30/0 |
- |
|
a15 |
- |
- |
a31/0 |
|
a16 |
- |
- |
a32/0 |
|
a17 |
- |
- |
a33/0 |
|
a18 |
- |
- |
a34/1 |
|
a19 |
- |
- |
a35/1 |
|
a20 |
- |
- |
a36/0 |
|
a21 |
- |
- |
a37/1 |
|
a22 |
- |
- |
a38/1 |
|
a23 |
- |
- |
a39/1 |
|
a24 |
- |
- |
a40/0 |
|
a25 |
- |
- |
a41/1 |
|
a26 |
- |
- |
a42/1 |
|
a27 |
- |
- |
a43/0 |
|
a28 |
- |
- |
a44/1 |
|
a29 |
- |
- |
a45/0 |
|
a30 |
- |
- |
a46/1 |
|
a31 |
- |
- |
a0/0 |
|
a32 |
- |
- |
a0/0 |
|
a33 |
- |
- |
a47/0 |
|
a34 |
- |
- |
a48/1 |
|
a35 |
- |
- |
a49/1 |
|
a36 |
- |
- |
a50/1 |
|
a37 |
- |
- |
a51/0 |
|
a38 |
- |
- |
a52/0 |
|
a39 |
- |
- |
a53/1 |
|
a40 |
- |
- |
a54/1 |
|
a41 |
- |
- |
a55/0 |
|
a42 |
- |
- |
a56/1 |
|
a43 |
- |
- |
a0/1 |
|
a44 |
- |
- |
a0/1 |
|
a45 |
- |
- |
a57/0 |
|
a46 |
- |
- |
a58/0 |
|
a47 |
- |
- |
a0/1 |
|
a48 |
- |
- |
a0/1 |
|
a49 |
- |
- |
a0/1 |
|
a50 |
- |
- |
a0/0 |
|
a51 |
- |
- |
a0/1 |
|
a52 |
- |
- |
a0/1 |
|
a53 |
- |
- |
a0/1 |
|
a54 |
- |
- |
a0/1 |
|
a55 |
- |
- |
a0/1 |
|
a56 |
- |
- |
a0/1 |
|
a57 |
- |
- |
a0/0 |
|
a58 |
- |
- |
a0/1 |
1.4 МИНИМИЗАЦИЯ СОСТОЯНИЙ АВТОМАТА
Минимизация числа состояний выполняется в два этапа. На этапе первичной минимизации необходимо найти и объединить в одно все состояния, имеющие одинаковые выходные символы и при переходе вырабатывающие одинаковые состояния. Второй этап минимизации проводится с помощью треугольной таблицы.
1.4.1 ПЕРВИЧНАЯ МИНИМИЗАЦИЯ
Как видно из таблицы 1.3.1 состояния а31, а32, а50, а57 под воздействием ? переходят в а0 и вырабатывают 0, следовательно, их можно объединить в одну группу. Рассуждения аналогичны и для остальных состояний.
Обозначим получившиеся состояния буквой "в" и перепишем таблицу переходов-выходов.
в0 = а0 |
в12 = а12 |
в24 = а24 |
в36 = а37 |
|
в1 = а1 |
в13 = а13 |
в25 = а25 |
в37 = а38 |
|
в2 = а2 |
в14 = а14 |
в26 = а26 |
в38 = а39 |
|
в3 = а3 |
в15 = а15 |
в27 = а27 |
в39 = а40 |
|
в4 = а4 |
в16 = а16 |
в28 = а28 |
в40 = а41 |
|
в5 = а5 |
в17 = а17 |
в29 = а29 |
в41 = а42 |
|
в6 = а6 |
в18 = а18 |
в30 = а30 |
в42 = (а43, а44, а47 - а49, а51 - а56, а58) |
|
в7 = а7 |
в19 = а19 |
в31 = (а31, а32, а50, а57) |
в43 = а45 |
|
в8 = а8 |
в20 = а20 |
в32 = а33 |
в44 = а46 |
|
в9 = а9 |
в21 = а21 |
в33 = а34 |
||
в10 = а10 |
в22 = а22 |
в34 = а35 |
||
в11 = а11 |
в23 = а23 |
в35 = а36 |
Таблица 1.4.1 - Таблица переходов-выходов
0 |
1 |
? |
||
в0 |
в1/? |
в2/? |
- |
|
в1 |
в3/? |
в4/? |
- |
|
в2 |
в5/? |
в6/? |
- |
|
в3 |
в7/0 |
в8/? |
- |
|
в4 |
в9/? |
в10/? |
- |
|
в5 |
в11/? |
в12/? |
- |
|
в6 |
в13/0 |
в14/? |
- |
|
в7 |
в15/0 |
в16/0 |
- |
|
в8 |
в17/0 |
в18/1 |
- |
|
в9 |
в19/1 |
в20/0 |
- |
|
в10 |
в21/1 |
в22/0 |
- |
|
в11 |
в23/1 |
в24/0 |
- |
|
в12 |
в25/1 |
в26/0 |
- |
|
в13 |
в27/0 |
в282/1 |
- |
|
в14 |
в29/1 |
в30/0 |
- |
|
в15 |
- |
- |
в31/0 |
|
в16 |
- |
- |
в31/0 |
|
в17 |
- |
- |
в32/0 |
|
в18 |
- |
- |
в33/1 |
|
в19 |
- |
- |
в34/1 |
|
в20 |
- |
- |
в35/0 |
|
в21 |
- |
- |
в36/1 |
|
в22 |
- |
- |
в37/1 |
|
в23 |
- |
- |
в38/1 |
|
в24 |
- |
- |
в39/0 |
|
в25 |
- |
- |
в40/1 |
|
в26 |
- |
- |
в41/1 |
|
в27 |
- |
- |
в42/0 |
|
в28 |
- |
- |
в42/1 |
|
в29 |
- |
- |
в43/0 |
|
в30 |
- |
- |
в44/1 |
|
в31 |
- |
- |
в0/0 |
|
в32 |
- |
- |
в42/0 |
|
в33 |
- |
- |
в42/1 |
|
в34 |
- |
- |
в42/1 |
|
в35 |
- |
- |
в31/1 |
|
в36 |
- |
- |
в42/1 |
|
в37 |
- |
- |
в42/0 |
|
в38 |
- |
- |
в42/1 |
|
в39 |
- |
- |
в42/1 |
|
в40 |
- |
- |
в42/0 |
|
в41 |
- |
- |
в42/1 |
|
в42 |
- |
- |
в0/1 |
|
в43 |
- |
- |
в31/0 |
|
в44 |
- |
- |
в42/0 |
Как видно таблица 1.4.1 не является окончательной, и минимизацию можно продолжить. Обозначим получившиеся состояния буквой "с" и перепишем таблицу переходов-выходов.
с0 = в0 |
с12 = в12 |
с24 = в25 |
|
с1 = в1 |
с13 = в13 |
с25 = в26 |
|
с2 = в2 |
с14 = в14 |
с26 = (в27, в32, в36, в37, в40, в44) |
|
с3 = в3 |
с15 = в15, в16, в43 |
с27 = (в28, в33, в34, в38, в39, в41) |
|
с4 = в4 |
с16 = в17 |
с28 = в29 |
|
с5 = в5 |
с17 = в18 |
с29 = в30 |
|
с6 = в6 |
с18 = в19 |
с30 = в31 |
|
с7 = в7 |
с19 = в20 |
с31 = в35 |
|
с8 = в8 |
с20 = в21 |
с32 = в42 |
|
с9 = в9 |
с21 = в22 |
||
с10 = в10 |
с22 = в23 |
||
с11 = в11 |
с23 = в24 |
Таблица 1.4.2 - Таблица переходов-выходов
0 |
1 |
? |
||
с0 |
с1/? |
с2/? |
- |
|
с1 |
с3/? |
с4/? |
- |
|
с2 |
с5/? |
с6/? |
- |
|
с3 |
с7/0 |
с8/? |
- |
|
с4 |
с9/? |
с10/? |
- |
|
с5 |
с11/? |
с12/? |
- |
|
с6 |
с13/0 |
с14/? |
- |
|
с7 |
с15/0 |
с15/0 |
- |
|
с8 |
с16/0 |
с17/1 |
- |
|
с9 |
с18/1 |
с19/0 |
- |
|
с10 |
с20/1 |
с21/0 |
- |
|
с11 |
с22/1 |
с23/0 |
- |
|
с12 |
с24/1 |
с25/0 |
- |
|
с13 |
с26/0 |
с27/1 |
- |
|
с14 |
с28/1 |
с29/0 |
- |
|
с15 |
- |
- |
с30/0 |
|
с16 |
- |
- |
с26/0 |
|
с17 |
- |
- |
с27/1 |
|
с18 |
- |
- |
с27/1 |
|
с19 |
- |
- |
с31/0 |
|
с20 |
- |
- |
с26/1 |
|
с21 |
- |
- |
с26/1 |
|
с22 |
- |
- |
с27/1 |
|
с23 |
- |
- |
с27/0 |
|
с24 |
- |
- |
с26/1 |
|
с25 |
- |
- |
с27/1 |
|
с26 |
- |
- |
с32/0 |
|
с27 |
- |
- |
с32/1 |
|
с28 |
- |
- |
с15/0 |
|
с29 |
- |
- |
с26/1 |
|
с30 |
- |
- |
с0/0 |
|
с31 |
- |
- |
с30/1 |
|
с32 |
- |
- |
с0/1 |
Как видно таблица 1.4.2 не является окончательной, и минимизацию можно продолжить. Обозначим получившиеся состояния буквой "d" и перепишем таблицу переходов-выходов.
d0 = с0 |
d12 = с12 |
d24 = с30 |
|
d1 = с1 |
d13 = с13 |
d25 = с31 |
|
d2 = с2 |
d14 = с14 |
d26 = с32 |
|
d3 = с3 |
d15 = с15 |
||
d4 = с4 |
d16 = с16 |
||
d5 = с5 |
d17 = с17, с18, с22, с25 |
||
d6 = с6 |
d18 = с19 |
||
d7 = с7 |
d19 = с20, с21, с24, с29 |
||
d8 = с8 |
d20 = с23 |
||
d9 = с9 |
d21 = с26 |
||
d10 = с10 |
d22 = с27 |
||
d11 = с11 |
d23 = с28 |
Таблица 1.4.3 - Таблица переходов-выходов
0 |
1 |
? |
||
d0 |
d1/? |
d2/? |
- |
|
d1 |
d3/? |
d4/? |
- |
|
d2 |
d5/? |
d6/? |
- |
|
d3 |
d7/0 |
d8/? |
- |
|
d4 |
d9/? |
d10/? |
- |
|
d5 |
d11/? |
d12/? |
- |
|
d6 |
d13/0 |
d14/? |
- |
|
d7 |
d15/0 |
d15/0 |
- |
|
d8 |
d16/0 |
d17/1 |
- |
|
d9 |
d17/1 |
d18/0 |
- |
|
d10 |
d19/1 |
d19/0 |
- |
|
d11 |
d17/1 |
d20/0 |
- |
|
d12 |
d19/1 |
d17/0 |
- |
|
d13 |
d21/0 |
d22/1 |
- |
|
d14 |
d23/1 |
d19/0 |
- |
|
d15 |
- |
- |
d24/0 |
|
d16 |
- |
- |
d21/0 |
|
d17 |
- |
- |
d22/1 |
|
d18 |
- |
- |
d25/0 |
|
d19 |
- |
- |
d21/1 |
|
d20 |
- |
- |
d22/0 |
|
d21 |
- |
- |
d26/0 |
|
d22 |
- |
- |
d26/1 |
|
d23 |
- |
- |
d15/0 |
|
d24 |
- |
- |
d0/0 |
|
d25 |
- |
- |
d24/1 |
|
d26 |
- |
- |
d0/1 |
Как видно таблица 1.4.3 является окончательной на данном этапе минимизации. Теперь можно перйти к следующему этапу - минимизации с помощью треугольной таблицы.
1.4.2 МИНИМИЗАЦИЯ С ПОМОЩЬЮ ТРЕУГОЛЬНОЙ ТАБЛИЦЫ
Составим треугольную таблицу (рисунок 1.4.2), руководствуясь следующими правилами:
1) строки таблицы обзначаются состояниями d1, d2, …, dn-1, а столбцы d0, d1, …, dn-2, где n - число состояний абстрактного автомата;
2) на пересечении i-той строки и j-того столбца записываются условия, при которых возможно объединение состояний di и dj; если состояния нельзя объединить ни при каких условиях, ставится знак "х"; если они объединяются безусловно, то ставится знак "v"; окончательное объединение состояний определяется на основе непротиворечивости условий.
Выпишем из таблицы пары эквивалентных состояний:
(0, 15) |
(1, 15) |
(2, 15) |
(3, 15) |
(4, 15) |
(5, 15) |
(6, 15) |
(7, 15) |
(8, 15) |
(9, 15) |
|
(0, 16) |
(1, 16) |
(2, 16) |
(3, 16) |
(4, 16) |
(5, 16) |
(6, 16) |
(7, 16) |
(8, 16) |
(9, 16) |
|
(0, 17) |
(1, 17) |
(2, 17) |
(3, 17) |
(4, 17) |
(5, 17) |
(6, 17) |
(7, 17) |
(8, 17) |
(9, 17) |
|
(0, 18) |
(1, 18) |
(2, 18) |
(3, 18) |
(4, 18) |
(5, 18) |
(6, 18) |
(7, 18) |
(8, 18) |
(9, 18) |
|
(0, 19) |
(1, 19) |
(2, 19) |
(3, 19) |
(4, 19) |
(5, 19) |
(6, 19) |
(7, 19) |
(8, 19) |
(9, 19) |
|
(0, 20) |
(1, 20) |
(2, 20) |
(3, 20) |
(4, 20) |
(5, 20) |
(6, 20) |
(7, 20) |
(8, 20) |
(9, 20) |
|
(0, 21) |
(1, 21) |
(2, 21) |
(3, 21) |
(4, 21) |
(5, 21) |
(6, 21) |
(7, 21) |
(8, 21) |
(9, 21) |
|
(0, 22) |
(1, 22) |
(2, 22) |
(3, 22) |
(4, 22) |
(5, 22) |
(6, 22) |
(7, 22) |
(8, 22) |
(9, 22) |
|
(0, 23) |
(1, 23) |
(2, 23) |
(3, 23) |
(4, 23) |
(5, 23) |
(6, 23) |
(7, 23) |
(8, 23) |
(9, 23) |
|
(0, 24) |
(1, 24) |
(2, 24) |
(3, 24) |
(4, 24) |
(5, 24) |
(6, 24) |
(7, 24) |
(8, 24) |
(9, 24) |
|
(0, 25) |
(1, 25) |
(2, 25) |
(3, 25) |
(4, 25) |
(5, 25) |
(6, 25) |
(7, 25) |
(8, 25) |
(9, 25) |
|
(0, 26) |
(1, 26) |
(2, 26) |
(3, 26) |
(4, 26) |
(5, 26) |
(6, 26) |
(7, 26) |
(8, 26) |
(9, 26) |
|
(10, 15) |
(11, 15) |
(12, 15) |
(13, 15) |
(14, 15) |
(15, 16) |
(16, 24) |
(17, 22) |
(18, 21) |
(19, 25) |
|
(10, 16) |
(11, 16) |
(12, 16) |
(13, 16) |
(14, 16) |
(15, 23) |
(17, 26) |
(18, 24) |
(19, 26) |
||
(10, 17) |
(11, 17) |
(12, 17) |
(13, 17) |
(14, 17) |
(15, 24) |
|||||
(10, 18) |
(11, 18) |
(12, 18) |
(13, 18) |
(14, 18) |
||||||
(10, 19) |
(11, 19) |
(12, 19) |
(13, 19) |
(14, 19) |
||||||
(10, 20) |
(11, 20) |
(12, 20) |
(13, 20) |
(14 20) |
||||||
(10, 21) |
(11, 21) |
(12, 21) |
(13, 21) |
(14, 21) |
||||||
(10, 22) |
(11, 22) |
(12, 22) |
(13, 22) |
(14, 22) |
||||||
(10, 23) |
(11, 23) |
(12, 23) |
(13, 23) |
(14, 23) |
||||||
(10, 24) |
(11, 24) |
(12, 24) |
(13, 24) |
(14, 24) |
||||||
(10, 25) |
(11, 25) |
(12, 25) |
(13, 25) |
(14, 25) |
||||||
(10, 26) |
(11, 26) |
(12, 26) |
(13, 26) |
(14, 26) |
||||||
(20, 21) |
(21, 24) |
(22, 26) |
(23, 24) |
(25, 26) |
||||||
(20, 24) |
Так как любое di состояние из промежутка от d0 до d14 нельзя объединить ни с каким состоянием dj из этого промежутка (в треугольной таблице на пересечении di и dj стоит знак "x" ), то при любом варианте укрупнения получим число состояний не менее 15. Исходя из этого получим следующие пары эквивалентных состояний, обозначенные буквой "е":
е0 = (0, 15)
е1 = (1, 16)
е2 = (2, 17)
е3 = (3, 18)
е4 = (4, 19)
е5 = (5, 20)
е6 = (6, 21)
е7 = (7, 22)
е8 = (8, 23)
е9 = (9, 24)
е10 = (10, 25)
е11 = (11, 26)
е12 = (12, 15)
е13 = (13, 16)
е14 = (14, 17)
Полученные пары полностью удовлетворяют условиям замкнутости и полноты.
На основе полученных пар получаем таблицу переходов-выходов минимального автомата (таблица 1.4.2.1).
Таблица 1.4.2.1 - Таблица переходов-выходов минимального автомата
0 |
1 |
? |
||
e0 |
e1/? |
e2/? |
e9/0 |
|
e1 |
e3/? |
e4/? |
e6/0 |
|
e2 |
e5/? |
e6/? |
e7/1 |
|
e3 |
e7/0 |
e8/? |
e10/0 |
|
e4 |
e9/? |
e10/? |
e6/1 |
|
e5 |
e11/? |
e12/? |
e7/0 |
|
e6 |
e13/0 |
e14/? |
e11/0 |
|
e7 |
e0/0 |
e0/0 |
e11/1 |
|
e8 |
e1/0 |
e2/1 |
e0/0 |
|
e9 |
e2/1 |
e3/0 |
e0/0 |
|
e10 |
e4/1 |
e4/0 |
e9/1 |
|
e11 |
e2/1 |
e5/0 |
e0/1 |
|
e12 |
e4/1 |
e2/0 |
e9/0 |
|
e13 |
e6/0 |
e7/1 |
e6/0 |
|
e14 |
e8/1 |
e4/0 |
e7/1 |
2. СТРУКТУРНЫЙ СИНТЕЗ КОНЕЧНОГО АВТОМАТА
2.1 УСТРАНЕНИЕ КРИТИЧЕСКИХ СОСТЯЗАНИЙ В СХЕМЕ
Для устранения критических состязаний в схеме применяют:
1) Генератор тактовых импульсов.
Недостатки: жесткие требования к стабильности длительности импульсов генератора, относительно низкое быстродействие. Достоинства: небольшие аппаратурные затраты.
2) Вспомогательную память.
Недостатки: большие аппаратурные затраты, низкое быстродействие. Достоинства: высокая стабильность работы автомата.
3) Специальное кодирование состояний.
Недостатки: большие аппаратурные затраты, низкое быстродействие. Достоинства: высокая стабильность работы автомата.
Наиболее оптимальным в данном случае является первый способ.
2.2 КОДИРОВАНИЕ СОСТОЯНИЙ, ВХОДНЫХ И ВЫХОДНЫХ СИГНАЛОВ
Закодируем состояния (таблица 2.2.1), входные (таблица 2.2.2) и выходные (таблица 2.2.3) сигналы.
Таблица 2.2.1 - Кодированные состояния
Q4 |
Q3 |
Q2 |
Q1 |
||
e0 |
0 |
0 |
0 |
0 |
|
e1 |
0 |
0 |
0 |
1 |
|
e2 |
0 |
0 |
1 |
0 |
|
e3 |
0 |
0 |
1 |
1 |
|
e4 |
0 |
1 |
0 |
0 |
|
e5 |
0 |
1 |
0 |
1 |
|
e6 |
0 |
1 |
1 |
0 |
|
e7 |
0 |
1 |
1 |
1 |
|
e8 |
1 |
0 |
0 |
0 |
|
e9 |
1 |
0 |
0 |
1 |
|
e10 |
1 |
0 |
1 |
0 |
|
e11 |
1 |
0 |
1 |
1 |
|
e12 |
1 |
1 |
0 |
0 |
|
e13 |
1 |
1 |
0 |
1 |
|
e14 |
1 |
1 |
1 |
0 |
Таблица 2.2.2 - Кодированные входные сигналы
X2 |
X1 |
||
0 |
0 |
0 |
|
1 |
0 |
1 |
|
? |
1 |
0 |
Таблица 2.2.3- Кодированные выходные сигналы
Y2 |
Y1 |
||
0 |
0 |
0 |
|
1 |
0 |
1 |
|
? |
1 |
0 |
2.3 СОСТАВЛЕНИЕ КОДИРОВАННОЙ ТАБЛИЦЫ ПЕРЕХОДОВ
На основе таблиц 2.2.1, 2.2.2 и 1.4.2.1 построим кодированную таблицу переходов (таблица 2.3.1).
Таблица 2.3.1 - Кодированная таблица переходов
Входные сигналы |
Состояние в момент времени t |
Состояние в момент времени t+1 |
||||||||
X2 |
X1 |
Q4 |
Q3 |
Q2 |
Q1 |
Q4 |
Q3 |
Q2 |
Q1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
|
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
|
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
|
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
|
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
|
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
|
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
|
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
|
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
|
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
|
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
|
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
|
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
|
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
|
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
|
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
|
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
|
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
|
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
|
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
|
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
|
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
|
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
|
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
|
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
|
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
|
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
|
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
2.4 ФОРМИРОВАНИЕ ФУНКЦИЙ ВОЗБУЖДЕНИЯ
Из таблицы 2.3.1 видно, что для хранения состояния необходимо четыре JK-триггера. Функционирование JK-триггера задано таблицей 2.4.1. Исходя из этого построим следующую таблицу функций возбуждения.
Таблица 2.4.1 - Таблица функционирования JK-триггера
Q(t) |
Q(t+1) |
J |
K |
|
0 |
0 |
0 |
- |
|
0 |
1 |
1 |
- |
|
1 |
0 |
- |
1 |
|
1 |
1 |
- |
0 |
Таблица 2.4.2 - Таблица функций возбуждения
Входные сигналы |
Состояние в момент времени t |
Функции возбуждения |
||||||||||||
X2 |
X1 |
Q4 |
Q3 |
Q2 |
Q1 |
J4 |
K4 |
J3 |
K3 |
J2 |
K2 |
J1 |
K1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
- |
0 |
- |
0 |
- |
1 |
- |
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
- |
0 |
- |
1 |
- |
- |
0 |
|
0 |
0 |
0 |
0 |
1 |
0 |
0 |
- |
1 |
- |
- |
1 |
1 |
- |
|
0 |
0 |
0 |
0 |
1 |
1 |
0 |
- |
1 |
- |
- |
0 |
- |
0 |
|
0 |
0 |
0 |
1 |
0 |
0 |
1 |
- |
- |
1 |
0 |
- |
1 |
- |
|
0 |
0 |
0 |
1 |
0 |
1 |
1 |
- |
- |
1 |
1 |
- |
- |
0 |
|
0 |
0 |
0 |
1 |
1 |
0 |
1 |
- |
- |
0 |
- |
1 |
1 |
- |
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
- |
- |
1 |
- |
1 |
- |
1 |
|
0 |
0 |
1 |
0 |
0 |
0 |
- |
1 |
0 |
- |
0 |
- |
1 |
- |
|
0 |
0 |
1 |
0 |
0 |
1 |
- |
1 |
0 |
- |
1 |
- |
- |
1 |
|
0 |
0 |
1 |
0 |
1 |
0 |
- |
1 |
1 |
- |
- |
1 |
0 |
- |
|
0 |
0 |
1 |
0 |
1 |
1 |
- |
1 |
0 |
- |
- |
0 |
- |
1 |
|
0 |
0 |
1 |
1 |
0 |
0 |
- |
1 |
- |
0 |
0 |
- |
0 |
- |
|
0 |
0 |
1 |
1 |
0 |
1 |
- |
1 |
- |
0 |
1 |
- |
- |
1 |
|
0 |
0 |
1 |
1 |
1 |
0 |
0 |
- |
- |
1 |
- |
1 |
0 |
- |
|
0 |
1 |
0 |
0 |
0 |
0 |
0 |
- |
0 |
- |
1 |
- |
0 |
- |
|
0 |
1 |
0 |
0 |
0 |
1 |
0 |
- |
1 |
- |
0 |
- |
- |
1 |
|
0 |
1 |
0 |
0 |
1 |
0 |
0 |
- |
1 |
- |
- |
0 |
0 |
- |
|
0 |
1 |
0 |
0 |
1 |
1 |
1 |
- |
0 |
- |
- |
1 |
- |
1 |
|
0 |
1 |
0 |
1 |
0 |
0 |
1 |
- |
- |
1 |
1 |
- |
0 |
- |
|
0 |
1 |
0 |
1 |
0 |
1 |
1 |
- |
- |
0 |
0 |
- |
- |
1 |
|
0 |
1 |
0 |
1 |
1 |
0 |
1 |
- |
- |
0 |
- |
0 |
0 |
- |
|
0 |
1 |
0 |
1 |
1 |
1 |
0 |
- |
- |
1 |
- |
1 |
- |
1 |
|
0 |
1 |
1 |
0 |
0 |
0 |
- |
1 |
0 |
- |
1 |
- |
0 |
- |
|
0 |
1 |
1 |
0 |
0 |
1 |
- |
1 |
0 |
- |
1 |
- |
- |
0 |
|
0 |
1 |
1 |
0 |
1 |
0 |
- |
1 |
1 |
- |
- |
1 |
0 |
- |
|
0 |
1 |
1 |
0 |
1 |
1 |
- |
1 |
1 |
- |
- |
1 |
- |
0 |
|
0 |
1 |
1 |
1 |
0 |
0 |
- |
1 |
- |
1 |
1 |
- |
0 |
- |
|
0 |
1 |
1 |
1 |
0 |
1 |
- |
1 |
- |
0 |
1 |
- |
- |
0 |
|
0 |
1 |
1 |
1 |
1 |
0 |
- |
1 |
- |
0 |
- |
1 |
0 |
- |
|
1 |
0 |
0 |
0 |
0 |
0 |
1 |
- |
0 |
- |
0 |
- |
1 |
- |
|
1 |
0 |
0 |
0 |
0 |
1 |
0 |
- |
1 |
- |
1 |
- |
- |
1 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
- |
1 |
- |
- |
0 |
1 |
- |
|
1 |
0 |
0 |
0 |
1 |
1 |
1 |
- |
0 |
- |
- |
0 |
- |
1 |
|
1 |
0 |
0 |
1 |
0 |
0 |
0 |
- |
- |
0 |
1 |
- |
0 |
- |
|
1 |
0 |
0 |
1 |
0 |
1 |
0 |
- |
- |
0 |
1 |
- |
- |
0 |
|
1 |
0 |
0 |
1 |
1 |
0 |
1 |
- |
- |
1 |
- |
0 |
1 |
- |
|
1 |
0 |
0 |
1 |
1 |
1 |
1 |
- |
- |
1 |
- |
0 |
- |
0 |
|
1 |
0 |
1 |
0 |
0 |
0 |
- |
1 |
0 |
- |
0 |
- |
0 |
- |
|
1 |
0 |
1 |
0 |
0 |
1 |
- |
1 |
0 |
- |
0 |
- |
- |
1 |
|
1 |
0 |
1 |
0 |
1 |
0 |
- |
0 |
0 |
- |
- |
1 |
1 |
- |
|
1 |
0 |
1 |
0 |
1 |
1 |
- |
1 |
0 |
- |
- |
1 |
- |
1 |
|
1 |
0 |
1 |
1 |
0 |
0 |
- |
0 |
- |
1 |
0 |
- |
1 |
- |
|
1 |
0 |
1 |
1 |
0 |
1 |
- |
1 |
- |
0 |
1 |
- |
- |
1 |
|
1 |
0 |
1 |
1 |
1 |
0 |
- |
1 |
- |
0 |
- |
0 |
1 |
- |
На основе таблицы 2.4.2 заполним диаграмму Вейча для J4 (рисунок 2.4.1), K4 (рисунок 2.4.2), J3 (рисунок 2.4.3), K3 (рисунок 2.4.4), J2 (рисунок 2.4.5), K2 (рисунок 2.4.6), J1(рисунок 2.4.7), K1 (рисунок 2.4.8).
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
- |
- |
- |
- |
- |
- |
- |
- |
|||||
Q4 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
|||||
X2 |
Рисунок 2.4.1 - Диаграмма Вейча для J4
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
1 |
1 |
1 |
1 |
0 |
- |
1 |
1 |
||||||
1 |
1 |
1 |
1 |
1 |
- |
1 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
1 |
1 |
1 |
0 |
1 |
- |
1 |
0 |
|||||
Q4 |
- |
- |
- |
- |
- |
- |
- |
- |
|||||
X2 |
Рисунок 2.4.2 - Диаграмма Вейча для K4
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
0 |
0 |
1 |
1 |
- |
- |
- |
- |
||||||
0 |
0 |
0 |
1 |
- |
- |
- |
- |
||||||
0 |
0 |
1 |
1 |
- |
- |
- |
- |
||||||
0 |
1 |
0 |
1 |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
0 |
0 |
0 |
0 |
- |
- |
- |
- |
|||||
Q4 |
0 |
1 |
0 |
1 |
- |
- |
- |
- |
|||||
X2 |
Рисунок 2.4.3 - Диаграмма Вейча для J3
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
- |
- |
- |
- |
0 |
1 |
1 |
1 |
||||||
- |
- |
- |
- |
1 |
- |
0 |
0 |
||||||
- |
- |
- |
- |
0 |
- |
0 |
1 |
||||||
- |
- |
- |
- |
0 |
1 |
0 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
- |
- |
- |
- |
0 |
- |
0 |
1 |
|||||
Q4 |
- |
- |
- |
- |
1 |
1 |
0 |
0 |
|||||
X2 |
Рисунок 2.4.4 - Диаграмма Вейча для K3
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
0 |
1 |
- |
- |
- |
- |
1 |
0 |
||||||
0 |
1 |
- |
- |
- |
- |
1 |
0 |
||||||
1 |
1 |
- |
- |
- |
- |
1 |
1 |
||||||
1 |
0 |
- |
- |
- |
- |
0 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
0 |
0 |
- |
- |
- |
- |
1 |
0 |
|||||
Q4 |
0 |
1 |
- |
- |
- |
- |
1 |
1 |
|||||
X2 |
Рисунок 2.4.5 - Диаграмма Вейча для J2
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
- |
- |
0 |
1 |
1 |
1 |
- |
- |
||||||
- |
- |
0 |
1 |
1 |
- |
- |
- |
||||||
- |
- |
1 |
1 |
1 |
- |
- |
- |
||||||
- |
- |
1 |
0 |
0 |
1 |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
- |
- |
1 |
1 |
0 |
- |
- |
- |
|||||
Q4 |
- |
- |
0 |
0 |
0 |
0 |
- |
- |
|||||
X2 |
Рисунок 2.4.6 - Диаграмма Вейча для K2
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
1 |
- |
- |
1 |
1 |
- |
- |
1 |
||||||
1 |
- |
- |
0 |
0 |
- |
- |
0 |
||||||
0 |
- |
- |
0 |
0 |
- |
- |
0 |
||||||
0 |
- |
- |
0 |
0 |
- |
- |
0 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
0 |
- |
- |
1 |
1 |
- |
- |
1 |
|||||
Q4 |
1 |
- |
- |
1 |
1 |
- |
- |
0 |
|||||
X2 |
.Рисунок 2.4.7 - Диаграмма Вейча для J1
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
- |
0 |
0 |
- |
- |
1 |
0 |
- |
||||||
- |
1 |
1 |
- |
- |
- |
1 |
- |
||||||
- |
0 |
0 |
- |
- |
- |
0 |
- |
||||||
- |
1 |
1 |
- |
- |
1 |
1 |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
- |
1 |
1 |
- |
- |
- |
1 |
- |
|||||
Q4 |
- |
1 |
1 |
- |
- |
0 |
0 |
- |
|||||
X2 |
Рисунок 2.4.8 - Диаграмма Вейча для K1
2.5 СОСТАВЛЕНИЕ КОДИРОВАННОЙ ТАБЛИЦЫ ВЫХОДОВ
На основе таблиц 2.2.1, 2.2.2, 2.2.3 и 1.4.2.1 построим кодированную таблицу выходов (таблица 2.5.1).
Таблица 2.5.1 - Кодированная таблица выходов
Входные сигналы |
Состояние в момент времени t |
Выходные сигналы |
||||||
X2 |
X1 |
Q4 |
Q3 |
Q2 |
Q1 |
Y2 |
Y1 |
|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
|
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
|
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
|
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
|
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
|
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
|
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
|
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
|
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
|
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
|
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
|
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
|
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
|
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
|
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
|
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
|
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
|
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
|
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
|
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
|
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
|
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
|
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
|
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
|
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
|
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
|
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
|
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
|
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
|
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
|
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
2.6 ФОРМИРОВАНИЕ ФУНКЦИЙ ВЫХОДОВ
На основе таблицы 2.4.1 заполним диаграмму Вейча для Y2 (рисунок 2.6.1), Y1 (рисунок 2.6.2).
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
||||||
0 |
0 |
0 |
0 |
0 |
- |
0 |
0 |
||||||
0 |
0 |
0 |
0 |
0 |
- |
0 |
0 |
||||||
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
0 |
0 |
0 |
0 |
0 |
- |
0 |
0 |
|||||
Q4 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|||||
X2 |
Рисунок 2.6.1 - Диаграмма Вейча для Y2
Q1 |
|||||||||||||
Q2 |
|||||||||||||
Q3 |
|||||||||||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
||||||
0 |
1 |
1 |
1 |
1 |
- |
0 |
1 |
||||||
1 |
0 |
0 |
0 |
0 |
- |
1 |
0 |
||||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
- |
- |
- |
- |
- |
- |
- |
- |
||||||
X1 |
0 |
0 |
1 |
1 |
1 |
- |
0 |
0 |
|||||
Q4 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
|||||
X2 |
Рисунок 2.6.1 - Диаграмма Вейча для Y1
2.7 РАЗРАБОТКА ФУНКЦИОНАЛЬНОЙ СХЕМЫ
На основе функций возбуждения и функций выходов была разработана схема электрическая функциональная, приведенная в приложении А.
С целью лучшего понимания схемы она не была упрощена за счет повторяющихся членов в логических выражениях. Данное упрощение необходимо произвести на схеме электрической принципиальной.
3. ПРОВЕРКА РАБОТОСПОСОБНОСТИ АВТОМАТА
Проверка работоспособности автомата была осуществляна в симуляторе MAX+PLUS путем подачи входных последовательностей.
1) 0000??
Вход |
0 |
0 |
0 |
0 |
? |
? |
||
Состояние |
e0 |
e1 |
e3 |
e7 |
e0 |
e9 |
e0 |
|
Выход |
? |
? |
0 |
0 |
0 |
0 |
2) 0001??
Вход |
0 |
0 |
0 |
1 |
? |
? |
||
Состояние |
e0 |
e1 |
e3 |
e7 |
e0 |
e9 |
e0 |
|
Выход |
? |
? |
0 |
0 |
0 |
0 |
3) 0010???
Вход |
0 |
0 |
1 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e3 |
e8 |
e1 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
? |
0 |
0 |
0 |
1 |
4) 0011???
Вход |
0 |
0 |
1 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e3 |
e8 |
e2 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
? |
1 |
1 |
1 |
1 |
5) 0100???
Вход |
0 |
1 |
0 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e4 |
e9 |
e2 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
? |
1 |
1 |
1 |
1 |
6) 0101???
Вход |
0 |
1 |
0 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e4 |
e9 |
e3 |
e10 |
e9 |
e0 |
|
Выход |
? |
? |
? |
0 |
0 |
1 |
0 |
7) 0110???
Вход |
0 |
1 |
1 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e4 |
e10 |
e4 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
? |
1 |
1 |
0 |
1 |
8) 0111???
Вход |
0 |
1 |
1 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e1 |
e4 |
e10 |
e4 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
? |
0 |
1 |
0 |
1 |
9) 1000???
Вход |
1 |
0 |
0 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e5 |
e11 |
e2 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
? |
1 |
1 |
1 |
1 |
10) 1001???
Вход |
1 |
0 |
0 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e5 |
e11 |
e5 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
? |
0 |
0 |
1 |
1 |
11) 1010???
Вход |
1 |
0 |
1 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e5 |
e12 |
e4 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
? |
1 |
1 |
0 |
1 |
12) 1011???
Вход |
1 |
0 |
1 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e5 |
e12 |
e2 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
? |
0 |
1 |
1 |
1 |
автомат оператор соответствие синтез синхронизация импульс
13) 1100??
Вход |
1 |
1 |
0 |
0 |
? |
? |
||
Состояние |
e0 |
e2 |
e6 |
e13 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
0 |
0 |
0 |
1 |
14) 1101??
Вход |
1 |
1 |
0 |
1 |
? |
? |
||
Состояние |
e0 |
e2 |
e6 |
e13 |
e7 |
e11 |
e0 |
|
Выход |
? |
? |
0 |
1 |
1 |
1 |
15) 1110???
Вход |
1 |
1 |
1 |
0 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e6 |
e14 |
e8 |
e0 |
e9 |
e0 |
|
Выход |
? |
? |
? |
1 |
0 |
0 |
0 |
16) 1111???
Вход |
1 |
1 |
1 |
1 |
? |
? |
? |
||
Состояние |
e0 |
e2 |
e6 |
e14 |
e4 |
e6 |
e11 |
e0 |
|
Выход |
? |
? |
? |
0 |
1 |
0 |
1 |
ЗАКЛЮЧЕНИЕ
В данной работе мной было выполнено проектирование конечного автомата, заданного оператором соответствия, с использованием канонического метода структурного синтеза автоматов.
Для устранения гонок в функциональной схеме использовано тактирование от генератора синхронизирующих импульсов.
В процессе выполнения работы мной были закреплены знания о синтезе конечных автоматов и получена практика в построении комбинационных схем.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Ерош И.Л., Михайлов В.В. Проектирование цифровых автоматов. Часть 1. Учебное пособие/СПбГУАП. - СПб., 2009.
2. Ерош И.Л., Иванов Н.М., Михайлов В.В. Проектирование цифровых автоматов. Часть 2. Учебное пособие/СПбГУАП. - СПб., 2010.
3. Баранов С.И. Синтез микропрограммных автоматов. Л. Энергия, 1979.
4. Карпов Ю.Г. Теория автоматов. СПб Питер, 2002.
Размещено на Allbest.ru
Подобные документы
Алгоритм работы автомата Мили в табличном виде. Графический способ задания автомата. Синтез автомата Мили на Т-триггерах. Кодирование состояний автомата. Таблицы кодирования входных и выходных сигналов. Таблица переходов и выходов абстрактного автомата.
курсовая работа [24,7 K], добавлен 01.04.2010Синтез цифровых схем, выбор элементной базы и анализ принципов построения управляющих автоматов с жесткой логикой. Граф-схемы алгоритмов умножения и деления чисел. Создание управляющего автомата типа Мили; выбор триггера, кодирование сигналов автомата.
курсовая работа [1,8 M], добавлен 18.09.2012Построение графа синтезируемого автомата. Определение количества элементов памяти. Составление таблицы переходов, выходов и возбуждения конечного автомата. Переход от исходного автомата Мили к эквивалентному автомату Мура. Алгоритмы вычисления функций.
курсовая работа [714,7 K], добавлен 21.05.2013Проектирование цифровых автоматов Мили и Мура с памятью в булевом базисе по заданной ГСА. Составление частично структурированной таблицы переходов-выходов. Построение функций выходов, логической схемы автомата. Особенности его экспериментальной проверки.
курсовая работа [628,7 K], добавлен 14.07.2012Выполнение синтеза цифрового автомата Мура, осуществляющего отображение информации, приведение алфавитного отображения к автоматному. Построение формализованного описания автомата, минимизация числа внутренних состояний. Функциональная схема автомата.
курсовая работа [2,8 M], добавлен 04.02.2013Составление структурной схемы автомата. Выбор элементной базы. Функциональная схема автомата. Задающий генератор и делитель частоты. Преобразователь параллельного кода в последовательный. Формирователь стартовых импульсов. Кодирование и минимизация.
курсовая работа [3,0 M], добавлен 07.02.2013Проектирование цифрового устройства для передачи сообщения через канал связи. Разработка задающего генератора, делителя частоты, преобразователя кода, согласующего устройства с каналом связи, схемы синхронизации и сброса, блока питания конечного автомата.
курсовая работа [1,6 M], добавлен 28.01.2013Синтез дискретного устройства, его структурная схема. Расчет дешифратора и индикаторов, их проектирование. Карты Карно. Синтез счетной схемы. Делитель частоты. Проектирование конечного автомата и его описание. Анализ сигналов и минимизация автомата.
курсовая работа [217,8 K], добавлен 21.02.2009Принципы организации управляющих автоматов. Разработка и проектирование автомата с жесткой и программируемой логикой. Разработка таблицы прошивки ПЗУ для УА с естественной адресацией микрокоманд. Структурный и абстрактный синтез управляющего автомата.
курсовая работа [508,5 K], добавлен 16.03.2011Формирование алфавитного оператора. Приведение оператора к автоматному виду. Построение графа переходов абстрактного автомата. Кодирование состояний, входных и выходных сигналов. Формирование функций возбуждения и выходных сигналов структурного автомата.
курсовая работа [66,3 K], добавлен 10.11.2010