Проектирования операционного автомата

Декомпозиция электронной системы на операционный и управляющий автомат. Общие вопросы функционирования операционных атоматов. Функционирования устройств управления с жёсткой логикой. Уточненная схема алгоритма для проектирования управляющего автомата.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 16.06.2011
Размер файла 3,1 M

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

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

Размещено на http://www.allbest.ru/

ВВЕДЕНИЕ

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

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

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

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

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

1. АНАЛИЗ ЗАДАЧИ

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

Рисунок 1.1 - Декомпозиция электронной системы на операционный и управляющий автомат

Управляющий автомат определяет порядок реализации вычислительных операций и отображает граф-схему функционирования электронной системы. Входной информацией для управляющего автомата является множество осведомительных сигналов {X} и множество внешних флагов ветвления {F}, результатом функционирования - множество признаков выполняемых микроопераций {Y}.

Операционный автомат осуществляет вычислительные действия над операндами. Структурно операционный автомат состоит из элементов памяти (регистров), осуществляющих хранение значений операндов, и комбинационных схем, отвечающих за выполнение микроопераций. Входной информацией для операционного автомата являются линии данных {D} и множество выполняемых в данном такте микроопераций {Y}, выходами являются линии результата {R} и выработанные признаки результата {X}, используемые в управляющем автомате.

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

На рисунках 1.2 и 1.3 приведены ГСА действий, которые должен выполнять проектируемый процессорный модуль. Микрооперации в операционных вершинах ГСА изменены таким образом, чтобы необходимые действия выполнялись над операндами заданной разрядности (n = 8 бит).

Для выполнения поставленной задачи необходимо объединить две ГСА, т.к. проектируемый процессорный модуль должен выполнять две операции. Для выбора одной из операций в объединенную ГСА, которая изображена на рисунке 1.4 добавлена условная вершина, проверяющего состояние регистра COP (code of operation). Данные в СОР являются, как и операнды, входной информацией для проектируемого процессорного модуля.

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

Рисунок 1.4 - Объединенная ГСА

2. ПРОЕКТИРОВАНИЕ ОПЕРАЦИОННОГО АВТОМАТА

2.1 Общие вопросы функционирования операционных атоматов

Функции ОА сводятся к вводу-выводу и хранению слов информации, выполнению микроопераций и вычислению логических условий. Чтобы реализовать эти действия, необходим набор элементов, достаточный для построения структур с заданными функциями. Такой набор элементов называется структурным базисом ОА.

Основными операционными элементами, используемыми в ОА, являются:

- управляемые шины, обеспечивающие передачу информации;

- регистры;

- комбинационные схемы, используемые для выполнения преобразований и формирования логических условий.

В общем виде структура ОА представлена на рисунке 2.1, где Ф - комбинационные схемы, выполняющие преобразование, S - память, ? - комбинационные схемы, формирующие осведомительные сигналы.

Рисунок 2.1 - Общая структура ОА

2.2 Структурная организация І-автоматов

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

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

Особенностью I-автоматов является то, что каждый регистр обслуживается своей комбинационной схемой, что обуславливает структуру представленную на рисунке 2.2.

Рисунок 2.2 - Обобщенная структура ОА типа I

2.3 Проектирование I-автомата

Разработка структуры I-автомата подразумевает выполнение следующих этапов:

1. Составляем список микроопераций:

y1: COP := D3

y2: A (n+1 : 0) : = 00.D1 (n-1 : 0)

y3: B (n-1 : 0) : = D2 (n-1 : 0)

y4: C (n+1 : 0) : = 0

y5: CnT (m-1 : 0) : = k10

y6: C (n+1 : 0) : = C (n+1 : 0) + A (n+1 : 0)

y7: A (n+1 : 0) : = L1 (A (n : 0 ). 0)

y8: C (n+1 : 0) : = C (n+1 : 0) + + 1

y9: B (n-1 : 0) : = R2 (C (1 : 0). B (n-1 : 2))

y10: C (n+1 : 0) : = R2 ( C (n+1). C (n+1). C (n+1 : 2))

y11: CnT : = CnT-1

y12: R (2n-1 : 0) : = C (n-1 : 0). B (n-1 : 0)

y13: A (n-1 : 0) : = D1

y14: B (n-1 : 0) : = D2

y15: C (n-1 : 0) : = 0

y16: CnT (m-1 : 0) : = n10

y17: C (n-1 : 0) : = C (n-1 : 0) + A(n-1 : 0)

y18: TgB : = B (0)

y19: B : = R1 (C(0). B (n-1 : 1))

y20: C (n-1 : 0) : = R1 (CF. C (n-1 : 1))

y21: C (n-1 : 0) : = R1 (C (n-1). C (n-1 : 1))

y22: C (n-1 : 0) : = C (n-1 : 0) + +1

x1: COP

x2: (C(n+1)B(0))

x3: B(1) v C(n+1) B(0)

x4: B(1)(C(n+1) B(0))

x5: CnT = 0

x6: C(n+1)

x7: B(0)

x8: OF

x9: CnT=0

x10: TgB

2. Выбираем множественые регистры и их разрядность:

CnT(m-1 : 0)

A(n+1 : 0)

B(n-1 : 0)

C(n+1 : 0)

TgB, COP

3. Все множество микроопераций разбивается на подмножество соотвецтвующие регистру:

A(n+1 : 0) := { y2, y7, y13 }

B(n-1 : 0) := { y3, y9, y14, y19 }

C(n+1 : 0) := { y4, y6, y8, y10, y15, y17, y20, y21, y22 }

CnT(m-1 : 0) := { y5, y11, y16 }

TgB := { y17 }

4. На выделеных подмножествах определяем классы еквивалентности микроопераций:

КА1 = { y2 }; КА2 = { y7 }; КА3 = { y13 }

KB1 = { y3 }; KB2 = { y9 }; KB3 = { y14 }; KB4 = { y19 }

KC1 = { y4 }; KC2 = { y6, y8 }; KC3 = { y10 }; KC4 = { y15 }; KC5 = { y17, y22 }; KC6 = { y20 }; KC7 = { y21 }

KCnT1 = { y5 }; KCnT2 = { y11 }; KCnT3 = { y16 }

KTgB1 = { y18 }

5. Для каждого класса содержащего не менее двух микроопераций находим обобщеную микрооперацию:

6. Строим структурно-функциональную схему. Структурно-функциональная схема операционного автомата класса I представлена на рисунке 2.3.

Рисунок 2.3 - Структурно-функциональная схема ОА класса I

3. ПРОЕКТИРОВАНИЕ УПРАВЛЯЮЩЕГО АВТОМАТА

3.1 Общие вопросы функционирования устройств управления с жёсткой логикой

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

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

Последовательность выполнения программы:

выбор команды из ОП

декодирование операций

определение исполнительных адресов операндов

выборка операндов в кэш

выполнение операций

загрузка результатов в память

Рисунок 3.1 - Общая структура УУ

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

Для выработки синхронизирующих сигналов и согласования работы БУК и БУО используется БМУ.

При использовании «жёсткой» логики УА строятся из разрозненных комбинационных схем и элементов памяти. Закон функционирования УА определяется порядком соединения элементов между собой.

Основными элементами, с помощью которых могут быть построены УА, являются:

1. Элементы задержки (D-триггер)

2. Распределители сигналов (сдвигающие регистры)

3. Как цифровой автомат

3.2 Уточненная граф-схема алгоритма

проектирование операционный автомат

Для проектирования управляющего автомата необходимо использовать уточненную ГСА, которая учитывает тип операционного автомата. Уточненная ГСА представлена на рисунке 3.2.

Преобразование объединенной ГСА в уточненную включает следующие действия:

1. замена микроопераций их условными обозначениями yi;

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

- cостояние после «начала» и перед «концом» должно иметь метку a0;

- cостояние после каждой операторной вершины должно иметь метку ai.

Рисунок 3.2 - Уточненная (размеченная) ГСА

3.3 Проектирование управляющего автомата

Разработка структуры УА подразумевает выполнение следующих этапов:

По размеченной ГСА строится граф переходов алгоритма:

Рисунок 3.3 - Граф переходов управляющего автомата

Далее необходимо синтезировать функции переходов и выходов с помощью структурной таблицы переходов. Перед этим необходимо закодировать состояния, в зависимости от количества входов в каждое состояние. Чем больше входов тем меньше едениц должен содержать код состояния. Кодирование состояний представлено в табл. 3.1. После строим структурную таблицу переходов управляющего автомата, таблица представлена в табл. 3.2.

Таблица 3.1

Кодирование состояний

Состояние

Количество входов

Кодировка

a0

2

0001

a1

1

0111

a2

2

0010

a3

2

0100

a4

3

0000

a5

1

1010

a6

2

1000

a7

2

0011

a8

2

1100

a9

1

0101

a10

2

1001

a11

2

0110

Таблица 3.2

Структурная таблица переходов управляющего автомата

1

a0

0001

a1

0111

1

y1

D2D1D0

2

a1

0111

a2

0010

y2y3y4y5

D1

3

a1

0111

a7

0011

y13y14y15y16

D1D0

4

a2

0010

a3

0100

y7

D2

5

a2

0010

a3

0100

-

D2

6

a2

0010

a4

0000

-

-

7

a2

0010

a4

0000

y8

-

8

a3

0100

a4

0000

1

y6

-

9

a4

0000

a5

1010

1

y9y10y11

D3D1

10

a5

1010

a2

0010

-

D1

11

a5

1010

a6

1000

-

D3

12

a5

1010

a6

1000

y6

D3

13

a6

1000

a0

0001

1

y12

D0

14

a7

0011

a8

1100

-

D3D2

15

a7

0011

a8

1100

y17

D3D2

16

a8

1100

a9

0101

1

y18y19y11

D2D0

17

a9

0101

a10

1001

y20

D3D0

18

a9

0101

a10

1001

y21

D3D0

19

a10

1001

a11

0110

-

D2D1

20

a10

1001

a11

0110

y22

D2D1

21

a10

1001

a7

0011

-

D1D0

22

a11

0110

a0

0001

1

y12

D0

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

- двоичный код исходного состояния

- результирующее состояние

- двоичный код результирующего состояния

- условие перехода

- формируемый выход

- функции возбуждения

Из данной таблицы можно получить следующие зависимости:

- для дешифратора состояний:

- для функции возбуждения триггеров:

- для функций выхода:

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

- Т-триггер;

- DC - декодирующее устройство, преобразующее позиционный двоичный код;

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

На рисунке 3.4 приведена схема управляющего автомата уровня регистровых передач.

Рисунок 3.4 - Схема УА уровня регистровых передач

4. ПРОЕКТИРОВАНИЕ ПРОЦЕССОРНОГО МОДУЛЯ

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

Очевидно, что полученный процессорный модуль является соединением двух отедльных устройств - ОА и УА. На входы всего процессорного модуля подаются операнды (D1, D2), условие выбора операции (СОР или D3) и управляющие сигналы (Clk1, Clk2, Start, Stop, Reset). Внутреннее взаимодействие между ОА и УА заключается во взаимопередаче сигналов: ОА генерирует значения вычисленных логических условий {X} на каждом такте, УА формирует сигналы выполнения необходимых на данном такте микроопераций {Y}. Также операционное устройство формирует результат выполнения заданного значением регистра СОР действия, который подается на выходную шину R.

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

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

5. АНАЛИЗ РЕЗУЛЬТАТОВ СИНТЕЗА

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

5.1 Тестирование VHDL-модели операционного устройства

После разработки VHDL-модели ОА была получена временная диаграмма работы устройства, представленная на рисунке 5.1.

Рисунок 5.1 - Временная диаграмма работы VHDL-модели ОА

Моделирование работы ОА осуществлялось при подаче на входы устройства входных данных (d1, d2, d3), текущей микрокоманды и сигналов синхронизации (clk) и асинхронного сброса (rst). В результате моделирования и отладки был сделан вывод о соответствии работы устройства требованиям к ОА. (Текст VHDL-модели операционного автомата - в приложении 1).

5.2 Тестирование VHDL-модели управляющего устройства

После разработки VHDL-модели УА была получена временная диаграмма работы устройства, представленная на рисунке 5.2.

Рисунок 5.2 - Временная диаграмма работы VHDL-модели УА

Для моделирования работы управляющего устройства на входы устройства были поданы сигналы синхронизации (clk) и асинхронного сброса (rst) а также значения вычисленных операционным автоматом логических условий. (Текст VHDL-модели управляющего автомата - в приложении 2).

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

5.3 Тестирование VHDL-модели процессорного модуля

После разработки VHDL-модели УА были получены временные диаграммы выполнения двух действий, представленные на рисунке 5.3 и 5.4. Для моделирования на входы модели процессорного модуля были поданы сигналы синхронизации и асинхронного сброса, входные данные для выполняемого действия (d1,d2 - операнды; d3 - код выполняемой операции). Результат выполнения операции был получен на выходной шине r.

Рисунок 5.3 - Временная диграмма работы прцессорного модуля: выполнение операции ускоренного умножения целых двоичных беззнаковых чисел

Проверка результатов моделирования работы процессорного модуля, представленных на рисунке 5.3 (ускоренное умножение целых двоичных беззнаковых чисел):

5 * 5 = 25, или

00000101 * 00000101 = 0000000000011001.

При моделировании получен верный результат.

Проверка результатов моделирования работы процессорного модуля, представленных на рисунке 5.4 (умножение целых двоичных знаковых чисел):

(-13) * 45 = -585, или

10001101 * 00101101 = 1000001001001001.

При моделировании получен верный результат.

Рисунок 5.4 - Временная диграмма работы прцессорного модуля: выполнение операции умножения целых двоичных знаковых чисел.

ВЫВОДЫ

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

Исходными данными к проектированию были граф-схемы алгоритмов заданных действий и рзарядность операндов.

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

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

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ:

1. Кораблев Н.М. - Конспект лекций по дисциплине «Компьютерная схемотехника» - Харьков, 2010 г.

2. Кораблев Н.М., Саранча С.Н., Саранча О.Н. - Методические указания к лабораторным работам по дисциплине «Компьютерная схемотехника»: Часть 2 «Проектирование сложных систем» - Харьков: ХНУРЭ, 2006 г.

3. Кораблев Н.М., Саранча С.Н., Чиженков Ю.Я. - Методические указания к лабораторным работам по дисциплине «Цифровые ЭВМ»: Часть 1 «Проектирование отдельных функциональных узлов» - Харьков: ХНУРЭ, 2006 г.

4. Угрюмов Е.П. Цифровая схемотехника. Учебн. пособие.- СПб.: БХВ - Петербург., 2000.-528 с.

5. Организация ЭВМ и систем. Однопроцессорные ЭВМ. Часть 1.: Конспект лекций / И.В. Хмелевский, В.П. Битюцкий. 2-е изд., испр. и допол. Екатеринбург: ГОУ ВПО УГТУ-УПИ, 2005. 87 с.

6. Бибило П.Н. Синтез логических схем с использованием языка VHDL.- М.: СЛОН-Р, 2002.- 384 с.

Размещено на Allbest.ru


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

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

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

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

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

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

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

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

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

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

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

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

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

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

    методичка [258,6 K], добавлен 28.04.2009

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

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

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

    контрольная работа [49,1 K], добавлен 05.09.2010

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

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

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