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

    Дисциплина: Программирование
    Тип работы: Курсовая
    Тема: Проектирование управляющего автомата

    Содержание
    Задание
    Введение
    Разработка микропрограммы выполнения операции деления
    восстановлением
    остатка со сдвигом делителя
    …………………….3
    Метод выполнения операции деления с восстановления остатка со сдвигом делителя
    в двоично-десятичном коде 8421+3…
    ………….3
    Контрольный пример…
    ……………………………………………….5
    Определение структуры операционного автомата ………………..11
    Разработка блок схемы алгоритма …
    ……………………………….12
    Описание моделирующей программы…
    ……………………………13
    Оценка времени выполнения операции и оценка аппаратурных затрат
    ………………………………………………………………….14
    Контроль выполнения операции по модулю…
    ……………………..16
    Синтез управляющего микропрограммного автомата…
    …………..17
    Кодирование микропрограммы и получение отмеченной ГСА…
    ...17
    Переход от начального языка задания автомата
    к стандартному
    Синтез
    структурного микропрограммного автомата…
    …………...20
    Формирование выходных функций и функций переключения
    элементов памяти…
    …………………………………………………..21
    Описание функциональной схемы, схема запуска…
    ………………22
    Расчет такта работы управляющего автомата…
    …………………...23
    Заключение
    …………………………………………………………………24
    Список литературы
    ………………………………………………………...25
    Приложение А
    Приложение Б
    ЗАДАНИЕ
    Код 18-Б-а-
    -а-2-
    18 —
    Деление с восстановлением остатка со сдвигом делителя
    — В форме с фиксированной запятой, формат
    {1,16}
    прямом коде
    — Двоично-десятичная система счисления (
    в коде 8421+3
    — Контроль по модулю
    — Синхронный автомат Мура
    Элементы «ИЛИ», «НЕ»
    триггер
    Задание выдал «___» ____________ 2001 г. преподаватель Дрогнова Н.Ф.
    Задание принял «___» _____________ 2001 г. студент Пожитков Д. В.
    Введение
    Поскольку дисциплина «Прикладная теория цифровых автоматов» посвящена изучению информационных, арифметических и логических основ цифровых автоматов основной целью данного курсового
    проекта является объединить все полученные знания по пройденному курсу и применить их на практике.
    Эти знания станут базой при дальнейшем обучении в КазНТУ и изучении предметов «Технические средства защиты информации», «Проектирование систем защиты безопасности»,
    «Вычислительные комплексы, системы и сети» и д.р., а также для выполнения контрольных заданий и курсовых проектов по вышеуказанным дисциплинам.
    1. Разработка микропрограммы выполнения операции деления
    восстановлением
    остатка со сдвигом делителя
    1.1 Метод выполнения операции деления с восстановления остатка со сдвигом делителя
    в двоично-десятичном коде 8421+3
    В машинах с запятой, фиксированной перед самым старшим разрядом любого слова, деление, так же как и умножение, наиболее просто производить в прямом коде. Но в отличии от умножения, при
    котором принципиально невозможно переполнение разрядной сетки, если машина оперирует с дробями, деление дробных операндов может привести к переполнению сетки машины и, следовательно, к
    грубому искажению результата. Поэтому в задачах, где есть деление, нужно тщательно следить, чтобы делимое по абсолютной величине было меньше делителя.
    Признаком переполнения является формирование единицы в знаковом разряде модуля частного, поскольку обычно операция деления производится только над модулями исходных чисел. Определение
    знака частного, таким образом, является самостоятельной операцией. Обычно деление в машинах с фиксированной запятой выполняется в 2 этапа.
    Первый этап – определяется знак частного путем сложения знаковых цифр делимого и делителя по модулю два.
    Второй этап – производится деление модулей исходных чисел, округление модуля частного, после чего к
    нему приписывается знак, определенный на первом этапе.
    Метод выполнения операции деления с восстановлением остатка со сдвигом делителя можно сформулировать так: сдвигаем делитель на 1 разряд вправо, из предыдущего остатка вычитается
    делитель, в результате чего формируется текущий остаток; цифра, взаимообратная знаковой цифре текущего остатка, записывается в соответствующий разряд частного; если текущий остаток
    положителен, то он становится предыдущим остатком для следующего шага, а данный шаг на этом заканчивается; если же текущий остаток отрицателен, то к нему прибавляется делитель для
    восстановления предыдущего, который становится предыдущим остатком для следующего шага. Операции сдвига, вычитания, а в случае необходимости и восстановления повторяются до тех пор, пока
    в частном не получится требуемое количество значащих цифр. После этого производится округление частного. Обычно в частном формируется (
    n+1) значащих цифр, после чего к (
    n+1)-ой цифре прибавляется единица для округления частного до
    n цифр.
    Понятие
    «логический сдвиг», в отличие от арифметического сдвига, означает, что
    сдвигу подвергается вся кодовая комбинация целиком без выделения знаковых и значащих цифр.
    На нулевом шаге,
    если же она оказалась
    равной 1, то это говорит о том, что произошло переполнение разрядной сетки частного.
    У данного способа деления можно выявить следующие недостатки:
    Ацикличность процесса деления, обусловленная нерегулярностью появления микрооперации восстановления остатков, что приводит к усложнению устройства управления делением;
    Относительно малая скорость деления, так как в среднем только половина шагов будет состоять из двух микроопераций (вычитания и сдвига), а в другие шаги будет входить дополнительная
    микрооперация
    сложения для восстановления остатка. Таким образом, время деления оказывается сравнительно большой величиной.
    Для
    двоично-десятичного кода 8421+3 характерны следующие особенности: при сложении двух чисел в коде 8421 с избытком 3 необходимо произвести их по тетрадное суммирование
    по правилам двоичной арифметики с передачей единиц переноса между тетрадами, после чего к тем тетрадам, на выходе которых вырабатывалась единица переноса, добавляется код поправки, равный
    3 (10)=0011(2),
    а ко всем
    остальным тетрадам добавляется код поправки, равный 13 (10)=1101(2). Возникшие вторичные межтетрадные переносы блокируются. С учетом особенности метода деления с
    восстановлением остатка
    со сдвигом остатка, а так же
    особенностей системы счисления 8421+3, можно сделать вывод, что коррекция будет производится на каждом шаге деления, а в тетраду частного предварительно будут занесены
    нули в коде 8421+3 (0011) и к ним будут прибавляться 1 в коде 8421 (0001), это позволит не производить коррекцию тетрад частного, что приведет к снижению временных и аппаратных
    затрат.
    1.2 Контрольный пример
    а) Возьмем для примера любых два десятичных числа:
    А=1286
    и В=6324
    0,6234 0000
    1 0 1 1
    0,1286 0000
    9,3676 0000
    9,4962 0000 R
    0,6324 0000
    восст.
    0,1286 0000 сдв.1
    сдвиги:
    9,9367 6000
    0,6324 0000
    пк
    =9,3676 0000
    дк
    Продолжение примера в десятичной системе исчисления:
    0,0653 6000 R
    сдв.1) 0,0632 4000
    пк
    =9,9367 6000
    дк
    9,9367 6000
    сдв.2) 0,0063
    2400
    пк
    =9,9936 7600
    дк
    0,0021 2000 R
    сдв.3) 0,0006 3240
    пк
    =9,9993 6760
    дк
    9,9367 6000
    сдв.4) 0,0000
    6324
    пк
    =9,9999 3676
    дк
    9,9388 8000 R
    0,0632 4000
    восст.
    0,0021 2000 сдв.2
    9,9936 7600
    9,9957 9600 R
    0,0063 2400
    восст.
    0,0021 2000 сдв.3
    9,9993 6...

    Забрать файл

    Похожие материалы:


ПИШЕМ УНИКАЛЬНЫЕ РАБОТЫ
Заказывайте напрямую у исполнителя!


© 2006-2016 Все права защищены