Проектирование управляющего автомата с жёсткой логикой

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 21.12.2008
Размер файла 163,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

18

Проектирование управляющего автомата с жёсткой логикой.

Выбор фрагмента микропрограммы.

Для синтеза управляющего автомата выбирается фрагмент обобщенной микропрограммы процессора

.

Управляющий автомат с жесткой логикой - последовательностная схема, состоящая из комбинационной части (КЧ и дешифратор) и запоминающей части (триггеры).

Абстрактный синтез автомата.

Абстрактный синтез автомата заключается в следующем:

1. Определение числа состояний УА путем отметки схемы алгоритма микропрограммы;

2. Построение таблицы переходов абстрактного автомата.

Произведем синтез автомата типа Мили. Отметим состояния на схеме алгоритма микропрограммы.

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

Структура УА с "жесткой логикой"

Рис.2. Структура УА с "жесткой логикой"

Построение структурной таблицы переходов.

Для описания закона функционирования УА построим прямую таблицу переходов для автомата Мили. Поскольку общее число состояний равно 28, то необходимо пять разрядов для кодирования каждого состояния. В качестве элементов памяти выберем RS-триггеры, тогда прямая таблица переходов примет вид:

Таблица 4. Прямая структурная таблица

Исходное состояние

Состояние перехода

Входной сигнал

Выходной сигнал

1

a0

a1

y1

2

a1

a2

y2

3

a2

a3

y3

4

a3

a4

y4

5

a4

a5

x1

y6

6

a4

a6

y5

7

a5

a6

y7

8

a6

a7

y8

9

a7

a8

x2

y10

10

a7

a9

y9

11

a8

a9

y7

12

a9

a10

y11

13

a10

a11

y12

14

a11

a12

y7

15

a12

a13

x3

16

a12

a13

y13

17

a13

a13

x3x4

y7, y14

18

a13

a13

x4

y15, y16

19

a13

a14

x1

y18

20

a13

a16

y17

21

a14

a15

y19

22

a15

a16

y20

23

a16

a17

y21

24

a17

a18

x2

y23

25

a17

a20

y22

26

a18

a19

y19

27

a19

a20

y20

28

a20

a0

y24

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

Минимизация полученного абстрактного автомата не представляется возможной, т.к. не выполняется условие теоремы эквивалентности.

Структурный синтез.

На этапе структурного синтеза осуществляется переход к разработке функциональных и принципиальных схем управляющего автомата.

Структурный (интерпретационный) метод синтеза основан на представлении отдельных выражений структурной таблицы, ее строк и столбцов в элементах булева базиса. Основной информацией для структурного синтеза УА является обратная структурная таблица переходов.

Обратная структурная таблица переходов строится на основе прямой структурной таблицы переходов. Разница заключается лишь в построении состояний перехода. В прямой структурной таблице переходов исходные состояния выстроены по порядку, а в обратной структурной таблице переходов состояния переходов выстроены по порядку.

Так как состояний автомата ai=28, то состояния могут быть закодированы 5 битами. Это связано с тем, что длина кода равна int log2 N, где N-число состояний, отмеченных по микропрограмме. Т.о. получаем int log2 28 = 5. Сигналы возбуждения RS триггера определяются следующим образом при переходе ai в ai - ak разряда в единицу на триггер подаем сигнал Sk иначе Rk.

Таблица 5. Обратная структурная таблица

Исходное состояние

Код исходного состояния

Состояние перехода

Код состояния перехода

Входной сигнал

Выходной сигнал

Сигнал возбуждения

RS-триггера

1

a20

10100

a0

00000

y24

R1R3

2

a0

00000

a1

00001

y1

S5

3

a1

00001

a2

00010

y2

S4R5

4

a2

00010

a3

00011

y3

S5

5

a3

00011

a4

00100

y4

S3R4R5

6

a4

00100

a5

00101

x1

y6

S5

7

a4

00100

a6

00110

y5

S4

8

a5

00101

a6

00110

y7

S4R5

9

a6

00110

a7

00111

y8

S5

10

a7

00111

a8

01000

x2

y10

S2R3R4R5

11

a7

00111

a9

01001

y9

S2R3R4

12

a8

01000

a9

01001

y7

S5

13

a9

01001

a10

01010

y11

S4R5

14

a10

01010

a11

01011

y12

S5

15

a11

01011

a12

01100

y7

S3R4R5

16

a12

01100

a13

01101

x3

S5

17

a12

01100

a13

01101

y13

S5

18

a13

01101

a13

01101

x3x4

y7, y14

19

a13

01101

a13

01101

x4

y15, y16

20

a13

01101

a14

01110

x1

y18

S4R5

21

a14

01110

a15

01111

y19

S5

22

a13

01101

a16

10000

y17

S1R2R3R5

23

a15

01111

a16

10000

y20

S1R2R3R4R5

24

a16

10000

a17

10001

y21

S5

25

a17

10001

a18

10010

x2

y23

S4R5

26

a18

10010

a19

10011

y19

S5

27

a17

10001

a20

10100

y22

S3R5

28

a19

10011

a20

10100

y20

S3R4R5

Термы - это логическое выражение, используемое для формирования сигналов возбуждения (R S) и выходных сигналов yi. Количество термов равно количеству строк в обратной структурной таблице. Терму Т1 соответствует строка 1, терму Т2 соответствует строка 2 и т.д.. Терм выделяет переход ai > aj. Значение терма определяется

Термы:

T1= a20

T11= a7

T21 = a14

T2= a0

T12= a8

T22 = a13

T3= a1

T13= a9

T23 = a15

T4= a2

T14= a10

T24= a16

T5= a3

T15= a11

T25 = a17 x2

T6= a4 x1

T16= a12 x3

T26 = a18

T7= a4

T17= a12

T27 = a17

T8= a5

T18= a13 x3 x4

T28 = a19

Т9= a6

Т19=a13 x4

T10= a7x2

Т20=a13 x1

Используя полученные наборы термов, выражаем сигналы возбуждения RS-триггера и выходные сигналы через термы.

Значения выходных сигналов определяются по формуле

Т.о. выходной сигнал может быть представлен набором значений соответствующих ему термов.

Выходные сигналы :

y1=T2

y13=T17

y2=T3

y14=T18

y3=T4

y15, y16=T19

y4=T5

y17=T22

y5=T7

y18=T20

y6=T6

y19=T21

y7=T8+ Т12+T15+T18

y20=T23

y8=T9

y21=T24

y9=T11

y22=T27

y10=T10

y23=T25

y11=T13

y24=T1

y12=T14

Для записи сигналов возбуждения триггера R и S используется правило: если в строке обратной структурной таблицы бит кода исходного состояния и бит кода состояния перехода изменяется с `0' в коде исходного состояния на `1' в коде перехода, то на триггер следует подать сигнал S1, если наоборот то - R1. Эту же операцию нужно произвести для всех битов строки. После этого анализируется, в каких строках встречаются Ri и Si. Каждому Ri и Si приписывается терм соответствующий этой строке.
Сигналы возбуждения RS-триггеров:

R1=

T1

R2=

T22+T23

R3=

T1+T10+T11+T22+T23

R4=

T5+T10+T11+T15+T23+T28

R5=

T3+T5+T8+T10+T13+T15+T20+T22+T23+T25+T27+T28

S1=

T22+T23

S2=

T10+T11

S3=

T5+T15+T27+T28

S4=

T3+T7+T8+T13+T20+T25

S5=

T2+T4+T6+T9+T12+T14+T16+T17+T21+T24+T26

Минимизация функций возбуждения путем выделения общих частей:

S1

S1

S2

S2

S3

S3

S4

S4

S5

S5

R1

R1

R2

T22+T23

R2

R3

T22+T23

T10+T11

T22+T23

R3

R4

T10+T11

T5+T15+T28

T10+T11

R4

R5

T22+T23

T5+T15+T27+T28

T3+T8+T13+T20+T25

T22+T23

T10+T22+T23

T5+T10+T15+

T23+T28

Z1= T22+T23 (S1, R2) (S1, R3) (S1, R5) (R2, R3) (R2, R5) (R3, R5)

Z2= T10+T11 (S2, R3) (S2, R4) (R3,R4)

Z3= T5+T15+T28 (S3, R4) (S3, R5) (R4, R5)

Z4= T3+T8+T13+T20+T25 (S4, R5)

Полученные обозначения общих частей подставляются в выражения для S и R.

R1=

T1

R2=

Z1

R3=

Z1+Z2+T1

R4=

Z2+Z3+T23

R5=

Z1+Z3+Z4+T10

S1=

Z1

S2=

Z2

S3=

Z3+T27

S4=

Z4+T7

S5=

T2+T4+T6+T9+T12+T14+T16+T17+T21+T24+T26

Представление общих частей функций возбуждения в базисе И - НЕ:

Z3=T5+T15+T28=

Z4=T3+T8+T13+T20+T25=

Представление функций возбуждения в базисе И - НЕ:

R3=

R4=

R5=

S3=

S3=

Состояния автомата кодируются n-разрядным кодом, где n - число элементов памяти УА. Затраты оборудования на дешифрацию минимальны при использовании многоступенчатого дешифратора. При 4 n 6 используется двухступенчатый дешифратор.

На выходе дешифратора формируются сигналы ai, которые могут использоваться в одном или нескольких двоичных выражениях для формирования термов. Если сигнал ai используется не более чем в двух выражениях, целесообразно элемент И последней ступени дешифратора объединить с элементом И, вычисляющим значение Ti. В этом случае значение терма будет вычисляться как

,

где qi - значения старших разрядов кода состояния, ri - значения младших разрядов. Значения qi и ri формируются предпоследней ступенью дешифратора - преддешифратором.

Для определения qi и ri в зависимости от сигналов на выходах триггеров составляется карта Карно:

P3P4P5

000

001

011

010

110

111

101

100

00

a0

a1

a3

a2

a6

a7

a5

a4

01

a8

a9

a11

a10

a14

a15

a13

a12

11

10

a16

a17

a19

a18

a20

P1P2

a0=

a11=

P2

P4

P5

a1=

P5

a12=

P2

P3

A2=

P4

a13=

P2

P3

P5

A3=

P4

P5

a14=

P2

P3

P4

A4=

P3

a15=

P2

P3

P4

P5

A5=

P3

P5

a16=

P1

A6=

P3

P4

a17=

P1

P5

A7=

P3

P4

P5

a18=

P1

P4

A8=

P2

a19=

P1

P4

P5

A9=

P2

P5

a20=

P1

P3

a10=

P2

P4

Вводятся следующие обозначения:

= r1

= q1

P3 = r2

P5 = q2

P2 = r3

P4 = q3

P2P3 = r4

P4 P5 = q4

P1 = r5

P1P3 = r6

Используя принятые обозначения, значения ai равны:

a0=

r1 * q1

a11=

r3 * q4

a1=

r1 * q2

a12=

r4 * q1

A2=

r1 * q3

a13=

r4 * q2

A3=

r1 * q4

a14=

r4 * q3

A4=

r2 * q1

a15=

r4 * q4

A5=

r2 * q2

a16=

r5 * q1

A6=

r2 * q3

a17=

r5 * q2

A7=

r2 * q4

a18=

r5 * q3

A8=

r3 * q1

a19=

r5 * q4

A9=

r3 * q2

a20=

r6 * q1

a10=

r3 * q3

Т.о. в полученном автомате при вычислении термов Т6, Т7, Т10, Т11, Т16, Т17, Т25, Т27 вместо сигналов ai можно использовать соответствующие сигналы qi и ri .

V. Синтез управляющего автомата с программируемой логикой

Составление карты прошивки ПЗУ.

Автомат с программируемой логикой осуществляет управление устройствами по хранимой в ПЗУ микропрограмме.

Микропрограмма записывается в ПЗУ и содержит в закодированном виде указания о последовательности микроопераций, которые должны быть выполнены в ОА при реализации операции.

КОП представляет собой некоторый адрес ПЗУ - адрес первой ячейки, с которой начинается выполнение микропрограммы данной операции. П-автомат строится на основе принципа программного управления, использующего операционную структуру управляющих слов. Структура управляющих слов зависит от способа адресации в микрокомандах - принудительная или естественная.

Принудительная адресация заключается в том, что в каждой микрокоманде указывается адрес следующей МК. Этот адрес может задаваться безусловно, т.е. независимо от значений осведомительных сигналов, или зависеть от осведомительных сигналов.

В управляющем слове выделяются операционная и адресная части. Операционная часть содержит поля, определяющие номера микроопераций, возбуждаемых в данном такте. Адресная часть содержит код осведомительного сигнала, который анализируется в данной микрокоманде. Если Х=0, то осведомительные сигналы не анализируются и адрес следующей микрокоманды определяется полем А0. Если в команде анализируются осведомительные сигналы, то адрес следующей микрокоманды зависит от значения сигнала ХХ:

если ХХ=0, адрес определяется полем А0;

если ХХ=1, адрес определяется полем А1.

Разрядность полей адреса А0 и А1 зависит от количества микрокоманд, составляющих программу.

Формат микрокоманды в автомате с принудительной адресацией:

В выбранном фрагменте алгоритма только в двух переходах содержится по две микрооперации. Следовательно, для сокращения длины операционной части микрокоманды целесообразно выполнить эти микрооперации последовательно. Вследствие этого время выполнения соответствующей микропрограммы увеличится на два такта, но более практично будет использовано ПЗУ.

Т. о. длина ОЧ равна log228=5, т.е.m1=4.

В адресной части (АЧ) содержится три поля: Х, А0 и А1.

Поле X -определяет номер осведомительного сигнала. Длина поля Х: log24=3.

Длина полей А0, А1 равна 6 разрядам (p=5).

Таким образом ,длина кода микрокоманды -20 разрядов.

Коды микроопераций:

Y

Код

Y

Код

Нет МО

00000

y13

01101

y1

00001

y14

01110

y2

00010

y15

01111

y3

00011

y16

10000

y4

00100

y17

10001

y5

00101

y18

10010

y6

00110

y19

10011

y7

00111

y20

10100

y8

01000

y21

10101

y9

01001

y22

10110

y10

01010

y23

10111

y11

01011

y24

11000

y12

01100

СТОП

11111

Коды микроопераций:

X

Код

Нет ЛУ

000

x1

001

x2

010

x3

011

x4

100

Карта прошивки ПЗУ будет иметь следующий вид:

Адрес

Y

X

A0

A1

000000

00000

000

000001

000000

000001

00001

000

000010

000000

000010

00010

000

000011

000000

000011

00011

000

000100

000000

000100

00100

001

000101

000110

000101

00101

000

001000

000000

000110

00110

000

000111

000000

000111

00111

000

001000

000000

001000

01000

010

001001

001010

001001

01001

000

001100

000000

001010

01010

000

001011

000000

001011

00111

000

001100

000000

001100

01011

000

001101

000000

001101

01100

000

001110

000000

001110

00111

011

010000

001111

001111

01101

000

010000

000000

010000

00000

100

010110

010001

010001

00000

011

010010

010100

010010

01111

000

010011

000000

010011

10000

000

010000

000000

010100

00111

000

010101

000000

010101

01110

000

010000

000000

010110

00000

001

011010

010111

010111

10010

000

011000

000000

011000

10011

000

011001

000000

011001

10100

000

011010

000000

011010

10001

000

011010

000000

011011

10101

010

011111

011100

011100

10111

000

011101

000000

011101

10011

000

011110

000000

011110

10100

000

100000

000000

011111

10110

000

100000

000000

100000

11000

000

100001

000000

100001

11111

000

000000

000000

Синтез структурной схемы формирования адреса следующей микрооперации

Для формирования адреса следующей микрокоманды необходима схема сравнения номера проверяемого логического условия (дешефрированный код логического условия) с поступившим от операционной части логическим условием. При совпадении вырабатывается сигнал XХ, который означает переход по адресу А. В зависимости от сигнала XХ выбирается адрес следующей микрокоманды.

VI. Заключение.

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

Курсовую работу можно условно разделить на 3 этапа:

1. Написание микропрограмм для каждой команды.

2. Синтез на основе микропрограммы структурной схемы процессора.

3. Создание управляющего устройства.

Общая микропрограмма процессора представляет собой соединение микропрограмм каждой из команд плюс выборку команд из ОП.

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

Результирующее устройство можно представить как часть чего-то большего - процессора похожего на современные универсальные системы.

Литература.

1. Болибок Г.Н. Синтез процессора и управляющих автоматов. Методические указания по курсовому проектированию.

2. Д. Стелби "Логическое программирование в системе /360" Перевод с английского А.П. Гагарина, В.Г. Меркулова и О.Ф. Мясина под ред. Л.Д. Райкова издание второе стереотипное Москва "МИР" 1979

3. К.Джермейн "Программирование на IBM/360" перевод с английского под ред. В.С. Штаркмана Москва "МИР" 1978


Подобные документы

  • Принцип микропрограммного управления. Управляющие автоматы с жесткой и программируемой логикой. Граф-схемы алгоритмов. Синтез управляющего автомата по граф-схеме алгоритма. Построение управляющего автомата с программируемой логикой на основе ПЗУ.

    курсовая работа [263,8 K], добавлен 25.01.2011

  • Разработка управляющего автомата процессора с жесткой логикой в САПР Quartus II. Построение схемы функциональной микропрограммы команды "Исключающее ИЛИ" в размеченном виде. Унитарное кодирование состояний автомата. Запись функций переходов и выходов.

    курсовая работа [671,3 K], добавлен 04.11.2014

  • Определение функций выходных сигналов и сигналов возбуждения. Построение функциональной схемы управляющего автомата. Способы выполнения операции умножения с фиксированной и с плавающей запятой. Получение функциональной ГСА. Кодирование состояния автомата.

    курсовая работа [60,9 K], добавлен 15.02.2011

  • Разработка управляющего автомата, ориентированного на выполнение заданной микрооперации. Разработка алгоритма работы управляющего автомата. Листинг программы. Выбор оптимального варианта кодирования состояний автомата. Синтез функции возбуждения.

    курсовая работа [506,9 K], добавлен 26.12.2012

  • Функциональная и структурная организация ЭВМ. Разработка функциональных микропрограмм заданных команд. Их объединение и привязка к структуре операционного автомата процессора. Разработка управляющего автомата процессора с программируемой логикой.

    дипломная работа [4,0 M], добавлен 25.03.2012

  • Разработка функциональной схемы управляющего микропрограммного автомата. Построение графов автомата для модели Мили и Мура. Кодирование состояний для модели Мура на D-триггерах. Алгоритм умножения чисел в дополнительном коде с простой коррекцией.

    курсовая работа [764,0 K], добавлен 27.08.2012

  • Общая структура и принцип функционирования синхронного управляющего автомата. Анализ граф схемы алгоритма управляющего автомата и детализация блока памяти. Структурный синтез логического преобразователя и разработка электрической функциональной схемы.

    курсовая работа [222,6 K], добавлен 19.02.2013

  • Разработка модели процессора, выполняющего набор машинных команд. Структурная схема процессора (операционного и управляющего автоматов), анализ принципа работы. Содержательный алгоритм микропрограммы, синтез управляющего автомата на основе жесткой логики.

    курсовая работа [871,9 K], добавлен 16.09.2010

  • Методика минимизации абстрактного автомата. Порядок построения графа полученного минимизированного автомата. Синтез на элементах ИЛИ-НЕ и Т-тригерах. Составление таблицы переходов. Разработка микропрограммного автомата, реализующего микропрограмму.

    курсовая работа [997,7 K], добавлен 28.03.2011

  • Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.

    учебное пособие [1,1 M], добавлен 09.04.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.