выполнение курсача новая
.pdf
|
|
|
|
41 |
|
|
|
|
|
|
|
b0 |
AH |
a0 |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
0 |
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
b1 |
Y1(y1) |
|
|
||
|
b2 |
|
|
|
|
a1 |
|
|
|
|
|
0 |
X1 |
|
|
||
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
||
|
|
|
|
|
|
1 |
|
|
|
|
|
b3 |
Y2(y2) |
|
|
||
|
|
|
0 |
|
|
a2 |
|
|
|
|
|
X |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
b4 Y3(y3,y5) |
|
|
|
|
1 |
X3 |
0 |
|
|
|
|
|
|
|
|||
1 |
a4 |
0 |
|
Y4(y3,y4,y5, |
b6 |
Y5(y3,y5,y7, |
||
X4 |
|
|||||||
|
|
|
b5 |
|
y8,y9) |
y8,y10) |
||
|
0 |
|
1 |
|
|
|
||
|
X3 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
a3 1 |
|
|
|
b7 |
Y6(y3,y6,y11) |
X4 |
|
|||
|
|
|
|
|||||
|
|
|
|
|
|
|
b8 |
Y7(y3,y6, |
|
|
|
|
|
|
|
y7,y8) |
|
|
|
|
|
|
|
|
|
|
|
|
b9 |
|
|
|
a5 |
|
|
|
|
|
|
0 |
|
|
|
|
Y9(y13) |
b11 |
|
|
|
X5 |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
1 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
b10 |
Y8(y12) |
|
|
|
|
|
|
|
b0 |
|
a0 |
|
|
|
|
|
|
|
AK |
|
|
|
|
Рис.21 Отмеченная граф-схема алгоритма |
|
Замечание. В двух вершинах ожидания(3 и 6) при разметке по Муру
введены фиктивные состояния автомата b2 и b9.
42
Явно большее число состояний для модели Мура по сравнению с моделью Мили не дает достаточных оснований для выбора модели Мили как более предпочтительной. Сравнение вариантов можно будет выполнить лишь па этапе построения функциональных схем УА, сравнив схемы по сложности
и быстродействию. Поэтому далее будем вести проектирование УА параллельно для модели Мили и для модели Мура.
2.4. Построение графа автомата и структурной таблицы переходов и
выходов
На основе отмеченной ГСА построены граф автомата Мура (рис.22) и
граф автомата Мили (рис.23).
Граф автомата Мура имеет 12 вершин, соответствующих состояниям автомата b0,b1,...,b11, каждое из которых определяет наборы выходных сигналов у1,..,у9 управляющего автомата, а дуги графа отмечены входными сигналами, действующими на данном переходе.
|
|
|
|
|
|
|
|
|
|
x2 |
|
|
|
3 |
|
|
|
|
b6 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
b2 |
x1 |
|
|
x |
|
|
|
|
x4 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
b3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
x2 |
|
|
|
|
|
|
|
|
b5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x1 |
x2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
b1 |
|
|
x4 x5 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
b4 |
x4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 x5 |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
x1 |
|
x4 |
|
|
|
|
x3 |
|
|
b8 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
b0 |
1 |
b11 |
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 x5 |
|||||||||||
|
|
|
|
|
|
|
x4 x3 |
|
x |
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x3 |
|
x5 |
||||||||||||||||||
x1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 x5 |
|||||||||||
|
|
|
|
|
|
|
1 |
|
|
b7 |
x5 |
|
b9 |
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
|
|
Рис.22.Граф автомата Мура.
43
x2
|
|
|
|
|
|
|
a1 |
x1 |
|
|
|
||||||
|
|
|
|
x1 |
|
|
|
|
y2 |
|
|
a2 |
|||||
|
|
|
|
y1 |
x4 a4 |
|
x2 |
||||||||||
x1 |
a0 |
|
y3 |
|
|
|
|||||||||||
|
|
y9 |
|
|
|
|
|
|
x2x3 /y4 |
||||||||
|
|
|
|
|
|
|
x4x3 /y6 |
|
v |
||||||||
|
|
|
|
|
|
|
|
|
v |
|
|
|
|
x2 |
|||
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
x4x3 /- |
|
|
|
|
x3 |
|||||||
|
|
|
|
|
|
|
x4 /y7 v |
|
|
|
5 /- |
|
|
|
|||
|
|
|
|
a5 |
x |
4x |
a3 |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4x5 /y8 |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
Рис.22. Граф автомата Мили
Таблица 5. Прямая структурная таблица переходов и выходов автомата
Мили.
Исходное |
|
Состояние |
|
Входной |
Выходные |
Функции |
|
состояни |
Код am |
перехода |
Код |
сигнал |
сигналы |
возбуждения |
|
е |
|
as |
as |
X(am,as) |
Y(am,as) |
D-триггеров |
|
a0 |
0 0 0 |
a0 |
0 0 0 |
~X1 |
- |
|
|
|
|
a1 |
1 0 0 |
X1 |
y1 |
|
D1 |
a1 |
1 0 0 |
a1 |
1 0 0 |
~X1 |
- |
|
D1 |
|
|
a2 |
1 0 1 |
X1 |
y2 |
|
D1D3 |
a2 |
1 0 1 |
a3 |
0 0 1 |
X2X3 |
y3y4y5y8y |
D3 |
|
|
|
a3 |
0 0 1 |
X2~X3 |
9 |
|
D3 |
|
|
a4 |
0 1 1 |
~X2 |
y3y5y7y8y |
D2D3 |
|
|
|
|
|
|
10 |
y3y5 |
|
a3 |
0 0 1 |
a0 |
0 0 0 |
~X4X5 |
y12 |
|
|
|
|
a5 |
0 1 0 |
X4 |
y3y6y7y8 |
D2 |
|
|
|
a5 |
0 1 0 |
~X4~X5 |
- |
|
D2 |
a4 |
0 1 1 |
a0 |
0 0 0 |
X4 |
y13 |
|
|
|
|
a5 |
0 1 0 |
~X4X3 |
y3y6y11 |
D2 |
|
|
|
a5 |
0 1 0 |
~X4~X3 |
- |
|
D2 |
a5 |
0 1 0 |
a0 |
0 0 0 |
X5~X5 |
y12 |
|
|
|
|
a5 |
0 1 0 |
|
- |
|
D2 |
44
Граф автомата Мили имеет шесть вершин, соответствующих состояниям автомата a0, a1,...,a5. Дуги его отмечены входными сигналами,
действующими на каждом переходе(числитель), и набором выходных сигналов, вырабатываемых УА на данном переходе(знаменатель). Из
приведенных рисунков видно, что с увеличением количества состояний автомата наглядность графа теряется и больше удобств представля табличный способ задания автомата.
Логические выражения для каждой функции возбуждения D-триггера получают по таблице как конъюнкции соответствующих исходных состояний
Am и входных сигналов, которые объединены знаками дизъюнкции для всех строк, содержащих данную функцию возбуждения.
D1 = a0x1 v a1,
D2 = a2~x2 v a3x4 va3~x4~x5 v a4~x4 v a5~x5,
D3 = a1x1 v a2.
Аналогично |
составляются |
логические |
выражения |
для |
функц |
||||
выходов. |
|
|
|
|
|
|
|
|
|
у1 |
= а0х1 |
|
y5 |
= a2, |
|
y9 = a2x2x3 |
|
|
|
y2 |
= a1x1 |
|
y6 |
= a3x4 v a4x3~x4, |
y10 |
= a2x2~x3 |
|
||
y3 |
= a2 v a3x4 v a4x3~x4 |
y7 |
= a2x2~x3 v a3x4, |
y11 |
= a4x3~x4 |
|
|||
y4 |
= a2x2x3 |
|
у8 = a2x2 v a3x4, |
|
y12 |
= a5x5, |
|
|
|
y13 = a4x4, |
|
|
|
|
|
|
После выделения общих частей в логических выражениях и некоторого |
|
||||
их |
упрощения |
получаем |
логические |
уравнения |
для |
пос |
функциональной схемы управляющего автомата. |
|
|
|
|||
|
y1 = a0x1 |
|
D1 = y1 v a1 |
|
|
|
|
|
45 |
y2 |
= a1x1 |
D2 = a2~x2 v m v a3~x4~x5 v n v a5~x5 |
y3 |
= a2 v m v y11 |
D3 = y2 v a2 |
y4 |
= y9 = kx3 |
|
y5 |
= a2 |
m = a3x4 |
y6 |
= m v y11 |
n = a4~x4 |
y7 |
= m v y10 |
k = a2x2 |
y8 |
= m v k |
y11 = nx3 |
y9 |
= y4 |
y12 = a5x5 |
y10 = k~x3 |
y13 = a4x4 |
Цена комбинационной схемы по Квайну для автомата МилиС = 44,
причем в схеме предполагается использовать 3-входовой дешифратор.
В табл.6 представлена прямая структурная таблица переходов и выходов для автомата Мура. Так как каждому состоянию автомата Мура соответствует свой набор выходных сигналов, то столбец выходных сигналов
втабл.6 помещен следом за столбцом исходных состояний автомата.
Проанализируем вариант синтеза автомата Мура на D-триггерах,
причем выберем структуру управляющего автомата на основе использования набора элементов памяти и дешифратора на 4 входа.
При кодировании состояний автомата, в качестве элементов памяти
которого выбраны D-триггеры, следует стремиться использовать коды с меньшим числом "1" в кодовом слове. Для кодирования 12 состояний (b0,
b1, ... , b11) необходимо 4 элемента памяти и из множества4-разрядных
двоичных слов надо выбрать код каждого состояния, ориентируясь на граф и таблицу переходов: чем чаще в какое-либо состояние происходят переходы
из других состояний, то |
есть |
чем чаще оно встре-чается в столбцеbs |
таблицы, тем меньше в |
коде |
этого состояния следует иметь"1". Для этого |
46
построим таблицу, в первой строке которой перечислены состояния, в
которые есть более одного перехода, а во второйсостояния, из которых осуществляются эти переходы.
Таблица 6. Прямая структурная таблица переходов и выходов автомата
Мура.
Исходно |
Выходные |
Код |
Состояни |
Код |
Входной |
Функции |
е |
сигналы |
bm |
е |
bs |
сигнал |
возбуждения |
состояни |
|
|
перехода |
|
|
триггеров |
е bm |
|
|
bs |
|
|
|
b0 |
- |
1 0 0 0 |
b0 |
1 0 0 0 |
~X1 |
D1 |
|
|
|
b1 |
1 1 0 1 |
X1 |
D1D2D4 |
b1 |
y1 |
1 1 0 1 |
b2 |
1 1 0 0 |
~X1 |
D1D2 |
|
|
|
b3 |
0 1 0 0 |
X1 |
D2 |
b2 |
- |
1 1 0 0 |
b3 |
0 1 0 0 |
X1 |
D2 |
b3 |
y2 |
0 1 0 0 |
b4 |
0 1 0 1 |
~X2 |
D2D4 |
|
|
|
b5 |
1 0 1 0 |
X2X3 |
D1D3 |
|
|
|
b6 |
0 1 1 0 |
X2~X3 |
D2D3 |
b4 |
y3y5 |
0 1 0 1 |
b7 |
0 0 1 1 |
~X4X3 |
D3D4 |
|
|
|
b9 |
0 0 0 1 |
~X4~X3~X |
D4 |
|
|
|
b10 |
0 0 0 0 |
5 |
- |
|
|
|
b11 |
1 0 0 1 |
~X4~X3X5 |
D1D4 |
|
|
|
|
|
X4 |
|
b5 |
y3y4y5y8y9 |
1 0 1 0 |
b8 |
0 0 1 0 |
X4 |
D3 |
|
|
|
b9 |
0 0 0 1 |
~X4~X5 |
D4 |
|
|
|
b10 |
0 0 0 0 |
~X4X5 |
- |
b6 |
y3y5y7y8y1 |
0 1 1 0 |
b8 |
0 0 1 0 |
X4 |
D3 |
|
0 |
|
b9 |
0 0 0 1 |
~X4~X5 |
D4 |
|
|
|
b10 |
0 0 0 0 |
~X4X5 |
- |
b7 |
y3y6y11 |
0 0 1 1 |
b9 |
0 0 0 1 |
~X5 |
D4 |
|
|
|
b10 |
0 0 0 0 |
X5 |
- |
b8 |
y3y6y7y8 |
0 0 1 0 |
b9 |
0 0 0 1 |
~X5 |
D4 |
|
|
|
b10 |
0 0 0 0 |
X5 |
- |
b9 |
- |
0 0 0 1 |
b10 |
0 0 0 0 |
X5 |
- |
b10 |
y12 |
0 0 0 0 |
b0 |
1 0 0 0 |
1 |
D1 |
b11 |
y13 |
1 0 0 1 |
b0 |
1 0 0 0 |
1 |
D1 |
47
Таблица 7.
bs |
b0 |
b3 |
b8 |
b9 |
b10 |
|
|
|
|
|
|
{bm} |
b0, b10, b11 |
b1, b2 |
b5, b6 |
b4, b5, b6, b7, |
b4, b5, b6, b7, b8, |
|
|
|
|
b8 |
b9 |
|
|
|
|
|
|
Наибольшее количество переходов в состояниеb10 - закодируем его кодом К(b10)=0000. Для остальных состояний первой строкитабл.7
назначим коды с одной"1": K(b9) = 0001, К(b8) = 0010, К(b0) = 1000. Для кодирования других состояний будем использовать слова с двумя"1" в
кодовом слове, стараясь, насколько возможно, использовать соседние с bs
коды для состояний, находящихся в одном столбце табл.7. Код одного из состоянии имеет три "1": К(b1) = 1101. Таким образом, таблица кодирования для D-триггеров такова.
Таблица 8.
b |
b0 |
|
b1 |
|
b2 |
|
b3 |
|
b4 |
|
b5 |
|
b6 |
|
b7 |
|
b8 |
|
b9 |
|
b10 |
b11 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K(b |
1 0 |
0 |
1 1 |
0 |
1 1 |
0 |
0 1 |
0 |
0 1 |
0 |
1 0 |
1 |
0 1 |
1 |
0 0 |
1 |
0 0 |
1 |
0 0 |
0 |
0 0 |
0 |
1 0 |
0 |
) |
0 |
|
1 |
|
1 |
|
0 |
|
1 |
|
0 |
|
0 |
|
1 |
|
0 |
|
1 |
|
0 |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Далее коды состояний заносят в соответствующие столбцы прямой таблицы переходов (табл.6) и по известному правилу формируют логические выражения для функции возбуждения.
D1 = b0 v b1~x1 v b3x2x3 v b4x4 v b10 v b11
D2 = b0x1 v b1 v b2x1 v b3~x2 v b3x2~x3
D3 = b3x2 v b4x3~x4 v b5x4 v b6x4
D4 = b0x1 v b3~x2 v b4x3~x4 v b4~x3~x4~x5 v b4x4 v b5~x4~x5 v b6~x4~x5 v b7~x5 v b8~x5
48
Так как для автомата Мура функции выходов не зависят от входных сигналов, то в соответствии со вторым столбцомтабл.6 записываем логические выражения для управляющих сигналов.
y1 |
= b1 |
y7 |
= b8 v b6 |
y2 |
= b3 |
y8 |
= b5 v b6 v b8 |
y3 |
= b4 v b5 v b6 v b7 v b8 |
y10 = b6 |
|
y4 |
= y9 = b5 |
y11 = b7 |
|
y5 |
= b5 v b6 v b4 |
y12 = b10 |
|
y6 |
= b7 v b8 |
y13 = b11 |
После выделения общих частей в логических уравнениях и упрощений получаем окончательные выражения для построения функциональной схемы управляющего автомата.
n = b4x3~x4 |
D1 = b0 v b1~x1 v px3 v k v b10 v b11 |
|||
p = b3x2 |
D2 = b1 v b2x1 v q v p~x3 |
|||
q = b3~x2 |
D3 = p v n v rx4 |
|
||
k = b4x4 |
D4 = f v q v n v b4~x3s v k v sr v y6 |
|||
f = b0x1 |
|
|
|
|
s = ~x4~x5 |
|
|
|
|
r = b5 v b6 |
|
|
|
|
y1 |
= b1 |
y5 |
= b4 v r |
y10= b6 |
y2 |
= b3 |
y6 |
= b7 v b8 |
y11= b7 |
y3 |
= y5 v y6 |
y7 = b6 v b8 |
y12= b10 |
|
y4 |
= y9 = b5 |
y8 |
= b5 v y7 |
y13= b11 |
|
|
49 |
|
|
|
|
|
|
Цена |
комбинационной |
схемы |
по |
Квайну |
для |
автомата, |
М |
|
построенного на D-триг-герах, С = 60. |
|
|
|
|
|
|
||
Сравнение вариантов построения управляющего автомата по модели |
|
|||||||
Мили и модели Мура показывает, что модель Мура дает комбинационную |
|
|||||||
схему несколько большей сложности и требует включения дополнительного |
|
|||||||
элемента |
памяти. Однако |
следует |
обратить |
внимание |
,начто то |
|
комбинационная схема, реализующая функции выходов автомата Мура,
чрезвычайно проста (ее цена С = 11).
2.5. Построение функциональной схемы управляющего МПА
На рис.24 приведена функциональная схема проектируемого микропрограммного автомата, управляющего операцией сложения двоичных
чисел с ФЗ.
Функциональная схема построена в основном логическом базисе, И
ИЛИ, НЕ |
в полном соответствии с приведенной для модели Мили системой |
||
логических уравнений для функций возбужденияD-триггеров и функций |
|||
выходов. |
В |
схему поступают сигналы синхронизацииc и |
начальной |
установки |
b. |
Появление на одной выходной линии двух |
управляющих |
сигналов (y4 и y9) говорит о том, что эти сигналы идентичны и введение сигнала y9 для ОА было излишне !
3. Тематика курсовых работ. Варианты заданий
Тематика курсовых работ должна соответствовать учебным задачам курса и основным разделам рабочей программы дисциплины"Дискретная математика и цифровые автоматы" для специальности 22.01. Задания на курсовую работу должны быть индивидуальными. В отдельных случаях возможны темы исследовательского характера.
Каждому студенту предлагается синтезировать микропрограммный
|
50 |
|
|
|
|
автомат, управляющий |
выполнением |
одной |
из |
арифметических |
ил |
логических операций.
Исходные данные к курсовой работе выдаются руководителем на специальных бланках заданий, которые включают:
-название выполняемой операции,
-систему счисления и форматы данных,
-особенности алгоритма выполнения операции,
-логический базис для синтеза комбинационной схемы. Ниже в табл.9
приведены варианты типовых заданий для курсовых работ. При записи вариантов введены следующие сокращения: СС - система счисления, ПК -
прямой код, ДК - дополнительный код, ОК - обратный код, ФЗ - формат с фиксированной запятой, ПЗ - формат с плавающей запятой, ВО -
восстановление остатков. Способы умножения и деления пронумерованы в соответствии с нумерацией, приведенной в методических указаниях [ 7 ].