- •Содержание
- •Введение
- •1 Цель курсового проектирования
- •2 Задание на курсовое проектирование
- •3 Разработка структурной схемы вычислительного устройства
- •4 Выбор системы команд и определение форматов команд вычислительного устройства
- •5 Разработка алгоритма командного цикла вычислительного устройства
- •5.1 Алгоритм выборки команды
- •5.2 Алгоритм перехода к подпрограмме прерывания
- •5.3 Алгоритм формирования операндов для арифметико-логического устройства
- •5.4 Алгоритм выполнения команд передачи управления
- •5.5 Алгоритм вызова подпрограммы
- •5.6 Алгоритм возврата из подпрограммы
- •5.7 Алгоритмы операций со стеком
- •5.8 Алгоритмы выполнения операций с ву
- •5.9 Алгоритмы системных операций
- •5.10 Алгоритм выполнения операции записи в озу
- •5.11 Алгоритм выполнения операции чтения из озу
- •6 Разработка алгоритмов выполнения арифметических и логических операций
- •6.1 Алгоритм выполнения операций сложения и вычитания
- •6.2 Алгоритм выполнения логических операций
- •6.3 Алгоритм выполнения операции умножения
- •6.4 Алгоритм выполнения операции деления
- •7 Проектирование операционного автомата устройства выполнения команд
- •8 Проектирование операционного автомата арифметико-логического устройства
- •9 Проектирование устройств управления процессора и алу двухступенчатой организации процесса управления
- •9.1. Проектирование управляющего автомата устройства управления процессора
- •9.2. Проектирование управляющего автомата устройства управления алу
- •10 Пример кодирования пзу мк мпа алу для реализации микропрограммы операций сложения и вычитания
- •11 Разработка функциональной схемы процессора
- •Заключение
- •Список использованной литературы
- •Приложение
6.2 Алгоритм выполнения логических операций
Операции конъюнкции, дизъюнкции и «исключающее или» (рисунок приложения 12.1) над операндами РА и РВ выполняются соответствующими комбинационными схемами АЛУ.
6.3 Алгоритм выполнения операции умножения
Операция умножения реализуется путем умножения старшими разрядами множителя со сдвигом суммы частичных произведений влево. Множимое находится в регистрах РА, множитель – в РВ
При умножении (рисунок приложения 13.1) проход по разрядам множителя будет осуществляться, начиная со старшего разряда его модуля, т.е. с 14-го разряда регистра.
Если i-й разряд множителя равен единице, то к сумме частичных произведений, хранящихся в А или в Р , прибавляется модуль множимого, хранящегося в РА. Содержимое A или Р суммируется с разрядами множимого без знакового разряда.
После суммирования производится сдвиг суммы частичных произведений влево. Если все разряды В пройдены, то это значит, что сумма частичных произведений полностью сформирована. Её знак определяется как сумма по модулю 2 знаковых разрядов множимого и множителя. Установка флагов производится как в алгоритме сложения/вычитания, но с учётом расположения результата.
6.4 Алгоритм выполнения операции деления
Деление производится с восстановлением остатка. Делимое находится в регистрах РА, делитель – в РВ, модуль делителя со знаком «–» – в PD. В процессе выполнения деления остаток находится в PE, а результат формируется в A или Р.
При выполнении операции деления (рисунок приложения 14.1) вначале нужно поместить модуль делителя со знаком «–» в РD. Для этого необходимо скопировать делитель, инвертировать знак и перевести в дополнительный код. Теперь необходимо сформировать остаток (РE) как разность модулей делимого и делителя. Если остаток оказался положительным, то деление невозможно, т.к. делимое больше делителя. В этом случае алгоритм будет завершён с установкой флага OF.
Если же остаток отрицательный, то к нему прибавляется модуль делителя. Затем происходит сдвиг остатка на один разряд влево. Из остатка вновь вычитается модуль делителя. Далее проверяется, пройдены ли все разряды результата.
Затем следует установка i-го бита результата инвертированным знаком остатка. Если остаток отрицательный, то производится переход к суммированию с модулем делителя, иначе – к сдвигу влево.
После определения всех разрядов результата производится установка знакового разряда как суммы по модулю 2 знаковых разрядов делимого и делителя.
7 Проектирование операционного автомата устройства выполнения команд
Совокупность недетализованных основных блоков процессора, детально проработанных регистров и счетчиков, а также коммуникаций между ними является операционным автоматом процессора (иногда называемым устройством или автоматом выполнения команд). Входными сигналами операционного автомата процессора являются выходные (управляющие) сигналы У = {у1, у2, …, у3} ведущего УУ процессора (УУ верхнего уровня), а выходными сигналами – входные сигналы (логические условия) Х = {х1, х2, …, х3} ведущего УУ процессора. Операционный автомат может быть разработан на основании алгоритма командного цикла.
Построим обобщенный алгоритм командного цикла (схема схеме КП 230101.010.017.071.002 ТЧ). Осуществим разметку этого алгоритма. Список микроопераций и логических условий для алгоритма выполнения команд УУ верхнего уровня представлен в приложении 15.
На основании множества присваиваний алгоритма командного цикла и его разметки можно разработать функциональную схему операционного автомата процессора (представлена в приложении 16).