Разработка структуры операционной части автомата

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

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык русский
Дата добавления 07.04.2012
Размер файла 868,4 K

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

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

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

Аннотация

автомат мур деление кодировка

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

1. Основные понятия, используемые при построение автоматов

1.1 Назначение автоматов

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

По способу формирования функции выходов автоматы делятся на автоматы Мили (Mealy) и Мура (Moore).

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

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

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

Управляющий автомат генерирует последовательность управляющих сигналов, предписанную микропрограммой и соответствующую значениям логическим условий. Иначе говоря, управляющий автомат задает порядок выполнения действий в ОА, вытекающий из алгоритма выполнения операций. Управляющий автомат может быть представлен в двух видах: автомат с жёсткой логикой (со схемной логикой) и автомат с гибкой логикой (с программируемой логикой). Различие между автоматом с жёсткой логикой и автоматом с гибкой логикой в затратах оборудования, необходимого для реализации одних и тех же функций, т. е. в стоимости автоматов. Количество оборудования в автомате с жёсткой логикой возрастает почти пропорционально сложности микропрограммы. Для автоматов с гибкой логикой типичны большие удельные затраты оборудования при реализации относительно несложных микропрограмм. Автоматы с жёсткой логикой имеют более высокое быстродействие, чем автоматы с гибкой логикой.

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

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

1.2 Деление восстановлением остатка

При деление числе без восстановления остатка делитель вычитается из делимого и определяется знак нулевого (по порядку) остатка. Если остаток положительный, т.е. , то в псевдознаковом разряде частного проставляется 1, при появлении которой формируется признак переполнения разрядной сетки и операция прекращается. Если остаток отрицательный, то в псевдознаковом разряде частного записывается 0, а затем выполняется сдвиг текущего остатка на один разряд влево и прибавление к нему делителя. Знак получаемого таким образом остатка определяет первую значащую цифру частного: если остаток положителен, то в первом разряде частного записывается 1, если отрицательный, то записывается 0. Далее, если остаток положителен, то он сдвигается влево на 1 разряд и из него вычитается делитель для определения следующей цифры частного. Если остаток отрицателен, то к нему прибавляется делитель и определяется следующий остаток, знак которого определяет следующую цифру частного. Операция сдвигов и алгебраических сложений повторяется до тех пор, пока в частном не получается требуемое количество цифр.

1.3 Прямой код

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

Простейшим машинным кодом является прямой код, который получается при кодировании в числе только знаковой информации.

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

Данное определение позволяет дать прямому коду такую интерпретацию:

Аналитическое выражение показывает, что прямой код дробного числа (J=0) формируется как сумма абсолютной величины исходного числа и единицы. Прямой код целого числа (J=n-1, причем знаковым является крайний левый разряд) формируется как сумма 10n-1+|X|/

Прямой код получил широкое распространение в ЭЦВМ вследствие своей простоты. В нем удобно хранить числа в памяти, перемножать числа. Но, как оказалось, он плохо приспособлен для сложения чисел. Действительно, при алгебраическом сложении чисел в прямом коде требуется выполнить четыре действия.:

1. сравнить знаки слагаемых;

2. сравнить слагаемые по модулю при неравенстве их знаков;

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

4. присвоить алгебраической сумме знак большего по модулю слагаемого.

Так как операция сложения значительно проще вычитания, то возникает вопрос: нельзя ли каким-либо образом алгебраическое сложение свести к арифметическому? Оказывается, это возможно за счет более сложного кодирования.

2. Синтез управляющего автомата с жесткой (схемной) логикой

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

При деление числе без восстановления остатка делитель вычитается из делимого и определяется знак нулевого (по порядку) остатка. Если остаток положительный, т.е. , то в псевдознаковом разряде частного проставляется 1, при появлении которой формируется признак переполнения разрядной сетки и операция прекращается. Если остаток отрицательный, то в псевдознаковом разряде частного записывается 0, а затем выполняется сдвиг текущего остатка на один разряд влево и прибавление к нему делителя. Знак получаемого таким образом остатка определяет первую значащую цифру частного: если остаток положителен, то в первом разряде частного записывается 1, если отрицательный, то записывается 0. Далее, если остаток положителен, то он сдвигается влево на 1 разряд и из него вычитается делитель для определения следующей цифры частного. Если остаток отрицателен, то к нему прибавляется делитель и определяется следующий остаток, знак которого определяет следующую цифру частного. Операция сдвигов и алгебраических сложений повторяется до тех пор, пока в частном не получается требуемое количество цифр.

2.1 Разработка структуры операционной части автомата

Структура операционной части автомата, предназначенная для реализации операции деление без восстановления остатка.

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

* два шестнадцатиразрядных регистра Рг А и Рг В для хранения входных операндов и промежуточных результатов, причем регистр Рг А должен обеспечить возможность сдвига своего содержимого влево;

* шестнадцатиразрядный регистр Рг С для размещения результата арифметической операции сложения или вычитания (в нашем случае в этом регистре формируется остаток): в конце операции в нем будет размещен результат - частное;

* шестнадцатиразрядный регистр Pг D с возможностью левого сдвига кода для размещения частного в процессе его формирования;

* шестнадцатиразрядный двоичный параллельный сумматор/вычитатель Сум/Выч;

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

* схема сравнения на "равно" знаковых разрядов исходных операндов;

*дешифратор DC "0" нулевой комбинации в разрядах C[1: 15], формирующий признак нулевого результата Z.

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

Рис. 1. Структура операционного автомата

Микрооперация

Действие

Микрооперация

Действие

Логическое условие

Действие

у1

x:=0

у10

A:=L1(A)

x1

an:= bn

у2

x:=1

у11

D[15]:=1

x2

c0

у3

an:=0

у12

D[15]:=0

x3

Сч n:=0

у4

bn:=0

у13

C:=A+B

у5

C:=A-B

у14

D:=L1(D)

у6

OV:=0

у15

Сч n:=Cч-1

у7

OV:=1

у16

C:=D

у8

n:=16

у17

c0:=s

у9

A:=C

Рис. 2. Таблица микроопераций и логических условий

2.2 Построение содержательной ГСА

Содержательная граф-схема алгоритма операции деление без восстановления остатка приведена на рис. 3.

Алгоритм предусматривает формирование знака результата и сохранение его временно в переменной s. После этого производится деление модулей чисел (знаки операндов обнуляются).

Сначала производится пробное вычитание делителя из делимого. Поскольку знаки операндов - 0, то появление 1 в знаковом разряде разности означает, что А < В, и можно продолжать деление (целая часть частного равна 0). При с0 = 0 деление невозможно - формируется признак переполнения.

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

Рис. 3. Содержательная ГСА операций деление без восстановления остатка

2.3 Получение функциональной ГСА

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

Y1 = y1; Y2 = y2; Y3 = y3, y4; Y4 = y5; Y5 = y6,y8; Y6 = y9;

Y7 = y10; Y8 = y11,y5; Y9 = y12,y13; Y10 = y14,y15; Y11 = y16;

Y12 = y17.

Рис. 4. Функциональная ГСА

2.4 Получение отмеченной ГСА

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

Рис. 5. Получение отмеченной ГСА

2.5 Построение графа автомата

Рис. 6. Граф автомат Мур

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

Кодирование состояния автомата заключается в установлении взаимно-однозначного соответствия между множеством состояний автомата и множеством элемента памяти. Для простоты ограничимся использованием в качестве элементов памяти RS - триггеров, которые будет обозначать Т1,…,Тn. Переход автомата из одного состояния в другое осуществляется за счет изменения состояний элементов памяти. Так, если автомат переходит из состояния с кодом 0101 в состояние с кодом 1001, то это означает, что триггер Т1 переходит из состояния «0» в состояние «1» триггер Т2 - из состояния «1» в состояние «0», а состояние триггеров Т3 и Т4 не изменяются.

Состояние автомата

Код Т1, Т2, Т3, Т4

Состояние автомата

Код Т1, Т2, Т3, Т4

a1

0001

a8

1000

a2

0010

a9

1001

a3

0011

a10

1010

a4

0100

a11

1011

a5

0101

a12

1100

a6

0110

a13

1101

a7

0111

a14

1110

Рис. 7. Кодирование состояний автомата

2.7 Составление структурных таблиц переходов

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

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

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

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

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

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

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

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

a7

a14

0111

1110

a1

0001

0001

1

R2R3

R1R2R3S4

a1

0001

a2(Y1)

0010

x1

S3R4

a1

0001

a3(Y2)

0011

S3

a2

a3

0010

0011

a4(Y3)

0100

0100

1

S2R3

S2R3R4

a4

0100

a5(Y4)

0101

1

S4

a5

0101

a6(Y5)

0110

x2

S3R4

a5

0101

a7(Y12)

0111

S3

a6

a12

0110

1100

a8(Y6)

1000

1000

1

S1R2R3

R2

a8

1000

a9(Y7)

1001

1

S4

a9

1001

a10(Y8)

1010

S3R4

a9

1001

a11(Y9)

1011

x2

S3

a10

a11

1010

1011

a12(Y10)

1100

1100

1

S2R3

S2R3R4

a12

1100

a13(Y11)

1101

x3

S4

a13

1101

a14(Y12)

1110

1

S3R4

Рис. 8. Автоматная таблица переходов

2.8 Определение систем логических функций для выходных сигналов и сигналов возбуждения и их совместная минимизация

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

В результате минимизации данных систем логических функций получим:

2.9 Построение функциональной схемы управляющего автомата

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

Рис. 9. Функциональная схема автомата Мура

Заключение

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

- разработка структуры операционной части автомата

- построение содержательной, функциональной и отмеченной ГСА

- построение граф автомата и кодирование его состояние

- составление структурных таблиц переходов автомата Мура

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

- построение функциональной схемы управляющего автомата.

Список литературы

1. Методические указания для выполнения курсовой работы по дисциплине «Информационные основы вычислительных систем»

2. А.П. Жмакин. Архитектура ЭВМ. Уч. пособие. Санкт Петербург, БХВ-Петербург, 2006.

3. Б.Я. Цилькер, С.А., Орлов. Организация ЭВМ и систем: Учебник для вузов. - СПб: Питер, 2004.

4. А.Я. Савельев. Основы информатики. Учеб. для ВУЗов- М.: Изд-во МГТУ им. А.Э. Баумана, 2001.

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


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

  • Алгоритм работы автомата Мили в табличном виде. Графический способ задания автомата. Синтез автомата Мили на Т-триггерах. Кодирование состояний автомата. Таблицы кодирования входных и выходных сигналов. Таблица переходов и выходов абстрактного автомата.

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

  • Установление соответствия абстрактных и структурных сигналов. Система канонических уравнений для выходных сигналов. Закодированная таблица переходов и возбуждения. Функция входов Т-триггера. Построение функциональной схемы синтезированного автомата.

    курсовая работа [360,1 K], добавлен 07.05.2013

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

    курсовая работа [2,8 M], добавлен 04.02.2013

  • Формирование алфавитного оператора. Приведение оператора к автоматному виду. Построение графа переходов абстрактного автомата. Кодирование состояний, входных и выходных сигналов. Формирование функций возбуждения и выходных сигналов структурного автомата.

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

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

    курсовая работа [1,5 M], добавлен 23.01.2011

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

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

  • Структурно–функциональное описание счетчика. Построение функциональной схемы синхронного автомата для 4-разрядного счетчика. Кодирование состояний автомата по критерию надежности функционирования. Логическое моделирование схемы функционального теста.

    контрольная работа [105,8 K], добавлен 14.07.2012

  • Исследование структурной схемы цифрового автомата и операционного устройства. Алгоритм функционирования цифрового автомата в микрооперациях. Кодирование его состояний. Характеристика функций возбуждения триггеров и формирования управляющих сигналов.

    курсовая работа [3,6 M], добавлен 06.12.2013

  • Циклограмма работы механизма, таблица включений. Минимизация логических функций с помощью программы MINWIN-Professional. Построение функциональной схемы дискретного автомата. Выбор элементной базы из интегральных микросхем средней степени интеграции.

    курсовая работа [7,2 M], добавлен 24.04.2014

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

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

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