Учебное пособие: Методические указания Пенза 1997 удк 681 06
Название: Методические указания Пенза 1997 удк 681 06 Раздел: Остальные рефераты Тип: учебное пособие | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
УДК 681.3.06 П 79 Рассмотрены методы проектирования цифровых устройств, выполняющихоперации с плавающей точкой, а также проектирование и моделирование микропрограммных устройств управления с жесткой и программируемой логикой. Моделирование выполняется с использованием пакета PCAD на ПЭВМ типа IBM PC. Методические указания подготовлены на кафедре ”Вычислительная техника” Пензенского государственного технического университета и предназначены для студентов специальности 2201 и ряда смежных специальностей, занимающихся вопросами проектирования устройств вычислительной техники. Материалы указаний могут быть использованы в курсовом проектировании по дисциплинам ”Прикладная теория цифровых автоматов”, ”Схемотехника”, а также при выполнении лабораторных работ по курсам ”Моделирование” и ”Основы комплексной автоматизации проектирования”. Рецензент Р.А.Бикташев, канд. техн. наук, зав. кафедрой ”Вычислительные машины и системы” Пензенского. технологического ин-та. Содержание Введение........................................................................................................... 1. Операционные автоматы.......................................................................... 1.1. Операционный автомат с непосредственными связями..................... 1.2. Микрооперации, реализуемые в операционном автомате с непосредственными связями......................................................................... 1.3 Операционный автомат с магистральной структурой....................... 2. Разработка алгоритма работы операционного устройства............... 3. Микропрограммный управляющий автомат с программируемой логикой 3.1. Моделирование микропрограммного устройства с программируемой логикой.......................................................................................................... 4. Микропрограммный управляющий автомат с жесткой логикой.......... 4.1. Абстрактный синтез управляющего автомата.................................. 4.2. Структурный синтез управляющего автомата.................................. 4.3. Моделирование управляющего автомата с жесткой логикой.......... 5. Создание БИС управляющего автомата................................................. Библиографический список........................................................................... Постоянно расширяющаяся сфера применения микропроцессорной техники требует разработки новых, более производительных средств обработки данных. Развитие данного направления связано как с разработкой сопроцессоров, использующих плавающую арифметику, так и с совершенствованием устройств управления, обеспечивающих более эффективное использование систем обработки. Данные методические указания закладывают основу для создания высокопроизводительных вычислительных систем использующих опе-рации с плавающей точкой, а также определяют методику проекти-рования микропрограммных устройств управления с жесткой и про-граммируемой логикой. Излагаемая методика поддерживается разра-ботанной на базе пакета PCAD системой моделирования, позволяющей оценить работоспособность и эффективность устройств управления, реализованных как на основе микропрограммы записанной в ПЗУ, так и реализованных аппаратно на элементах цифровой логики. На рис. 1 приведена классификация операционных автоматов. Рис. 1 Классификация операционных автоматов В данных методических указаниях изложена методика проектирования операционного автомата с плавающей точкой, а также методика проектирования и моделирования на ПЭВМ микропрограммных управляющих автоматов с магистральной организацией построенных с использованием программируемой и жесткой логики. 1.1. Операционный автомат с непосредственными связями Для иллюстрации принципов выполнения основных микроопераций (МО), необходимых для реализации арифметических операций над двоичными числами, представленными в различных кодах с фиксированной и плавающей точкой, в работе используется упрощенная структура операционного автомата (ОА), имеющая минимальное число функциональных узлов. Для подобной структуры ОА рассматриваются условия выполнения микроопераций, их представление в операторах присваивания и состав осведомительных сигналов (признаков), которые могут возникнуть при выполнении конкретных микроопераций. Такая информация о микрооперациях и их реализации позволит значительно упростить разработку алгоритмов выполнения заданного набора макроопераций для конкретной заданной структуры операционного автомата. В состав ОА (рис. 2) входит основной сумматор СМ комбинационного действия с регистром сумматора РСМ, входной регистр Р1, вспомогательный регистр Р2 и счетчик тактов СчТ. Регистр РСМ предназначен для хранения результатов сложения (вычитания) в сумматоре. Сумматор СМ имеет как прямые, так и инверсные информационные входы от входного регистра Р1 и от собственных выходов. В связи с последним обстоятельством регистр РСМ, как и другие регистры, реализован на двухступенчатых триггерах с соответствующей системой синхронизации. Управление входами сумматора СМ осуществляется управляющими сигналами, реализующими микрооперации сложения и вычитания. Регистр РСМ связан двоичной передачей при сдвиге влево и вправо с одноразрядным регистром РС и вспомогательным регистром Р2, участвующим в реализации операций умножения и деления. Рис. 2 Cтруктура операционного автомата с непосредственными связями для операций над мантиссами чисел Одноразрядный регистр РС предназначен для хранения переноса из старшего разряда СМ. Под действием управляющих сигналов в регистрах ОА могут выполняться операции записи и сдвига информации, а также приведение регистров в нулевое состояние. Предполагается, что записываемая в регистры ОА информация поступает из ОЗУ через соответствующую магистраль. На рис. ב введены следующие сокращенные обозначения для исходных чисел, записываемых в регистры ОА перед выполнением арифметических операций: · Хcл.1, Усл.2 - первое и второе слагаемые; · Хмн-е, Умн-ль , Уд-ль - множимое, множитель и делитель; · Xд.ст., Xд.мл. - старшая и младшая часть делимого. Для выполнения операции умножения и деления в ОА используется счетчик тактов СчТ, в который перед соответствующими операциями заносится число тактов, равное числу разрядов в множителе или частном. Так как структура ОА для выполнения арифметических операций над числами с фиксированной точкой и структура ОА для операций над мантиссами чисел с плавающей точкой ничем не отличаются друг от друга, за исключением необходимости сдвига информации в регистре Р1 для чисел с плавающей точкой, то в дальнейшем все записи микроопераций для чисел с плавающей точкой, представленные в операторах присваивания, будут иметь индекс ”м” для мантисс и индекс ”p” для порядков. Структура ОА для операций с порядками двоичных чисел с плавающей точкой представлена на рис. 3. Эта структура является упрощенной копией структуры ОА, представленной на рис. ב. Обозначениям отдельных составляющих структуры ОА для действий над порядками чисел присвоен индекс ”p”. Максимальное и минимальное значения допустимых порядков для чисел с плавающей точкой имеют вид: · для ”классического” формата чисел с плавающей точкой Pmax.доп.=+(2m - 1), Pmin.доп.=-(2m - 1); · для формата в стандарте ”короткий вещественный” (КВ) Pmax.доп.=127, Pmin.доп.= -126. В структуры ОА (см. рис. 2, 3) входят также узлы формирования признаков осведомительных сигналов с соответствующими регистрами признаков РП. Рис. 3 Структура операционного автомата с непосредственными связями для операций с порядками чисел 1.1.1. Перечень используемых осведомительных сигналов и сокращенных обозначенийС - сигнал переноса из старшего разряда основного сумматора. C=1, при единичном значении переноса, иначе C=0. П - сигнал переноса в старший разряд основного сумматора. П=1 при единичном значении переноса, иначе П=0. V - сигнал переполнения в основном сумматоре. V=1, если в результате операции происходит переполнение разрядной сетки основного сумматора, иначе V=0. S - признак знака числа в РСМ. S=1, если старший разряд результата операции равен 1, иначе S=0. Z - сигнал нуля. Z=1 при нулевом значении результата операции, иначе Z=0. ОV- cигнал переполнения порядка числа. OV=1, если в результате операции происходит переполнение разрядной сетки сумматора порядков, иначе OV=0. Un - сигнал антипереполнения порядка числа. Un=1, если порядок результата операции над порядками стал меньше минимально допустимой величины, иначе Vn=0. HR - сигнал нарушения нормализации вправо. HR=1, если значения кодов цифр в знаковом разряде и в старшем разряде после запятой совпадают, иначе HR=0. x0 - код знака делимого (множимого, уменьшаемого). y0 - код знака делителя (множителя, вычитаемого). z0 - код знака результата арифметических операций. z1 - код цифры первого разряда результата операции в сумматоре. РСМ(0)1 - значение нулевого разряда РСМ после первого пробного вычитания(сложения). 1.2. Микрооперации, реализуемые в операционном автомате с непосредственными связями Сведения о микрооперациях и принципах их выполнения (в операционном автомате) при реализации отдельных арифметических операций, представлены в виде таблиц (1-6). Таблица 1 Сложение и вычитание чисел с фиксированной точкой
Продолжение табл.1
Таблица 2 Сложение и вычитание чисел с плавающей точкой
Продолжение табл.2
Продолжение табл. 2
Продолжение табл. 2
Продолжение табл. 2
Таблица 3Умножение чисел с фиксированной точкой
Продолжение табл. 3
Продолжение табл. 3
Продолжение табл. 3
Таблица 4 Умножение чисел с плавающей точкой
Продолжение табл. 4
Таблица 5Деление чисел с фиксированной точкой
Продолжение табл. 5
Продолжение табл. 5
Продолжение табл. 5
Продолжение табл. 5
Продолжение табл. 5
Таблица 6Деление чисел c плавающей точкой
Продолжение табл. 6
Продолжение табл. 6
Продолжение табл. 6
Продолжение табл. 6
На рис. 4 для примера представлен фрагмент ГСА операции сложения двоичных чисел с плавающей точкой - сложение мантисс после выравнивания порядков слагаемых и нормализация результата сложения. Для этого фрагмента ГСА в целях его завершенности предполагается, что начальному оператору соответствует размещение результатов выполненных микроопераций выравнивания порядков слагаемых в регистрах РСМм и Р1м, а конечному оператору - микрооперации записи результатов сложения в ОЗУ. Во фрагменте ГСА использованы два возможных способа записи логических условий: в первом случае значение сигнала переполнения разрядной сетки мантисс V, равное единице, свидетельствует о нарушении нормализации результата сложения мантисс влево; во втором случае условие нарушения нормализации результата сложения мантисс вправо записано в виде отношения HR = 0, при его ложности производится нормализация мантиссы результата влево. Рис. 4 Фрагмент ГСА операции сложения чисел с плавающей точкой 1.3 Операционный автомат с магистральной структурой На рис. 5 приведена структура операционого автомата c магистральной структурой. Рис. 5 Структура операционного автомата с магистральной структурой Операционный автомат включает: – блок из 8-ми регистров общего назначения Р0 - Р7, предназначенных для хранения промежуточных результатов; – регистр адреса РА, определяющий адрес оперативной памяти при чтении и записи данных; – регистр аккумулятор АС, хранящий один из операндов или результат выполнения микрооперации; – арифметико-логическое устройство АЛУ, в котором выполняются заданные микрооперации; – регистр признаков РП, хранящий признаки выполненной микрооперации. Все регистры операционного автомата 8-ми разрядные. В табл 7 приведен состав микроопераций Мj их 8-ми разрядная кодировка, а также описаны действия выполняемые каждой из них. Таблица 7 Состав микроопераций
Продолжение табл.7
Примечание: Операция сдвига в операционном автомате может выполняться только в регистрах АС и Р7 и всегда осуществляется на 1 разряд. При выполнении микроопераций в регистре РФ формируются следующие признаки: N, C, V, Z, T. Ниже приведены правила формирования отдельных признаков. Признак N - знак результата микрооперации; Признак Z - признак нулевого результата; Признак V - переполнение; Признак С - выдвигаемый разряд, при операциях сдвига и арифметических микрооперациях. В операционном автомате выполняется 2 вида сдвигов: арифметмческий и циклический. В операциях циклического сдвига признак С формируется в соответствии с рис. 6. а) б) Рис. 6 Циклический сдвиг влево (a) и вправо (б) При операциях арифметического сдвига признак С формируется в соответствии с рис. 7. а) б) Рис. 7 Арифметический сдвиг влево (а) и вправо (б) При необходимости арифметического сдвига 16-ти разрядного числа в операциях умножения и деления (рис. 8), необходимо число располагать в регистре АС (старшие 8 разрядов) и в регистре Р7 (младшие 8 разрядов). В регистре АС необходимо выполнить арифметический сдвиг (при этом нулевой разряд выдвинется в С), а в регистре Р7 выполнить циклический сдвиг (при этом разряд из С вдвигается в 7 разряд Р7). Рис. 8 Сдвиг 2n разрядного числа Признак T - разряд переноса из 3-го разряда аккумулятора в 4-й разряд. Используется при работе с двоично-десятичными числами. Для ускорения выполнения микроопераций операционный автомат использует 8 дополнительных бинарных управляющих сигналов Yi =(y1 , у2 , у3 , у4 , у5 , у6 , у7 , у8 ). Данные сигналы формируются управляющим автоматом и подаются в операционный автомат совместно с микрокомандой в одном такте. Одновременно может формироваться несколько сигналов Уi , при условии, что совместное действие микрокоманды и дополнительных сигналов не приводит к противоречиям. В табл. 8 приведен состав дополнительных сигналов Yi . Таблица 8 Состав дополнительных сигналов
Продолжение табл.8
2. Разработка алгоритма работы операционного устройства. Алгоритм работы операционного устройства строится на основе использования СА. На рис. 9 приведена СА вычисления выражения У = 2(В+0,625А). Целые числа А и В, заданные в дополнительном коде, хранятся в оперативной памяти по адресам 0 и 1, результат У записывается в память по адресу 2. Каждая из вершин СА включает одну микрокоманду и, если это необходимо, дополнительные сигналы Yi . Если в данном такте в операционный автомат подаются только дополнительные сигналы Yi , то необходимо использовать пустую микрооперацию NOP (см. вершину 1 на СА). При вычислении значений 0.5А, 0.25А, 0.125А используется арифметический сдвиг вправо AR(AC). При вычислении значения 2(В+0.625А) используется арифметический сдвиг влево AL(AC), после которого осуществляется проверка на переполнение (V). 3. Микропрограммный управляющий автомат с программируемой логикой На рис. 10 показана структура микропрограммного управляющего автомата с принудительной адресацией микрокоманд [2,7]. Рис. 9 Схема алгоритма Автомат включает: – ПЗУ, постоянное запоминающее устройство. В нем хранится микропрограмма управления цифровым устройством; – РАМ, регистр адреса выполняемой микрокоманды. Перед пуском микропрограммы в РАМ задается адрес первой микрокоманды Ан микропрограммы; – ФАМ, блок формирования микрокоманды. Формирует разряды микрооперации Мi , дополнительные управляющие сигналы Уi , и адрес следующей микрокоманды А. Запуск в работу управляющего автомата производится сигналом ПУСК, завершение работы фиксируется появлением сигнала СТОП. Рис. 10 Структура управляющего автомата Формат микрокоманды записанной в ПЗУ приведен на рис. 11. Рис. 11 Формат микрокоманды Микрокоманда включает следующие поля [2]: – М, 8-ми разрядное поле кода микрооперации выполняемой микрокоманды. Коды микроопераций приведены в табл. 9; – Y, 8-ми разрядное поле дополнительных управляющих сигналов. Кодировка дополнительных сигналов приведена в табл. ח; – ЛУ, 4-х разрядное поле логических условий, в котором представлен код проверяемого в данной микрокоманде признака, поступающего из операционного автомата. В табл. 10 представлена кодировка проверяемых признаков. Проверка значения признака (0 или 1) позволяет реализовать ветвление в микропрограмме. Таблица 9 Кодировка признаков
– А, 8-ми разрядное поле адреса следующей микрокоманды. Данный формат в общем случае может описывать, либо одну операторную вершину схемы алгоритма, либо операторную и условную вершину схемы алгоритма, если условная вершина непосредственно следует за операторной вершиной. Подобная ситуация представлена на рис. 12. Рис. 12 Фрагмент схемы алгоритма В поле М микрокоманды, описывающей данный фрагмент, записывается код
В поле А микрокоманды записывается адрес следующей выполняемой микрокоманды. В общем случае он может быть любым в диапазоне 0 - 255, но для экономичного заполнения ПЗУ целесообразно использовать естественный порядок следования микрокоманд. Для организации ветвления при описании фрагмента схемы алгоритма представленного на рис. 12, значение проверяемого в микрокоманде признака (0 или 1) принудительно записывается в младший разряд поля А микрокоманды. Пользователь должен быть достаточно аккуратным при записи подобного адреса. Ниже показан пример ошибочной записи, когда по четному адресу ХХ...Х10 в ПЗУ записана микрокоманда с полем А ХХ...Х11. Если проверяемый в поле ЛУ признак имеет значение 0, то осуществится переход на адрес ПЗУ ХХ...Х0 и микрокоманда выполнится повторно. Для избежания подобных ситуаций, целесообразно в поле А микрокоманды использовать адрес ХХ...100. Следствием подобной ситуации может явиться появление в микропрограмме адресов (“дыр”), в которых отсутствуют микрокоманды (рис. 13). Рис. 13 Фрагмент заполнения ПЗУ Подобная ситуация является исправимой, ибо использование принудительной адресации позволяет вставить в “дыру” любую используемую далее микрокоманду. В табл. 10 приведена карта прошивки ПЗУ микропрограммного управляющего автомата для СА, показанной на рис. ט. По адресу ПЗУ 0000 1011 образовалась “дыра” в микропрограмме. “Дыру” можно устранить, если в поле А микрокоманды по адресу 0000 1100 записать адрес следующей микрокоманды в виде 0000 1011 и перенести последнюю микрокоманду по адресу 0000 1011. Содержимое ПЗУ
3.1. Моделирование микропрограммного устройства с программируемой логикой На рис. 14 показана общая структура микропрограммного цифрового устройства. Исходные данные и результаты вычислений хранятся в ОЗУ. Запись данных DO в ОЗУ проводится по сигналу WR, а чтение данных DI по сигналу RD. Разрядность данных - 8 бит. Моделирование цифрового устройства с программируемой логикой связано с разработкой на основе СА микропрограммы управления операционным автоматом. Разработанная микропрограмма записывается в ПЗУ управляющего автомата. Рис. 14 Структура микропрограммного цифрового устройства Модели операционного и управляющего автоматов реализованы на языке PML системы PCAD [4,5]. Моделирование проводится с использованием языка PC LOGS. Документирование результатов моделирования производится с использованием программы POSTSIM. На рис. 15 приведен шаблон программы моделирования, в которой пользователю необходимо определить лишь содержимое ОЗУ и ПЗУ. Содержимое ОЗУ и ПЗУ определяется аналогично директивой MEMLOAD языка PC LOGS. Общий формат записи содержимого ОЗУ(ПЗУ) на языке PC LOGS имеет следующий вид: MEMLOAD <имя ОЗУ(ПЗУ)> HEX/Ан Sн Sн+1 ... /Аi Si Si+1 ... /Aj Sj Sj+1 Допускается использование непрерывного или фрагменти-рованного адресного пространства. В первом случае задается в 16-ричной форме начальный адрес ОЗУ(ПЗУ) - Ан , вслед за которым записывается содержимое ОЗУ(ПЗУ) Sн Sн+1 ..., начиная с адреса Ан. Во втором случае описание каждого фрагмента ОЗУ(ПЗУ) следует за символом / -адрес начала фрагмента Аi и содержимое ОЗУ(ПЗУ), Si Si+1 ..., начиная с этого адреса. Содержимое ОЗУ(ПЗУ), соот-ветствующее неописанным адресам, принимает значение нео-пределенности Х. На рис. טו показана программа моделирования ци-фрового устройства, СА которого приведена на рис. ט. Исходные данные А=25h и В=14h загружены в ОЗУ, начиная с адреса 0. Микропрограмма управления цифровым устройством загружена в ПЗУ также начиная с адреса 0. Содержимое ПЗУ в программе моделирования взято из табл. י. В частности по адресу 0 в соответствии с рис. יא записана микрооперация NOP (0A), упра-вляющие сигналы y1 и у3 (05), отсутствие проверяемых признаков (0) и адрес следующей микрокоманды 01. lo poss.net cy 3 ge [0 0] pus d0/1 d1/1 d0/50 ge [0 0] bk d0/3 (d1/1 d0/1) memload el2 hex /00 25 14 memload pzu1 hex /00 0A05001 0d00002 0200003 4600004 0200005 0200006 1620007 4600008 0D00009 162000A 060040C /0C 0C0000D 0B0000D mo hex(RA7 RA6 RA5 RA4) hex(RA3 RA2 RA1 RA0) % hex(m7 m6 m5 m4) > hex(m3 m2 m1 m0) % hex(y8 y7 y6 y5) hex(y4 y3 y2 y1) > % hex(ac7 ac6 ac5 ac4) hex (ac3 ac2 ac1 ac0) % hex (r77 r76 r75 r74) > hex (r73 r72 r71 r70) % hex (r67 r66 r65 r64) hex (r63 r62 r61 r60) > % hex (r57 r56 r55 r54) hex (r53 r52 r51 r50) % hex (r47 r46 r45 r44) > hex (r43 r42 r41 r40) % hex (r37 r36 r35 r34) hex (r33 r32 r31 r30) > % hex (r27 r26 r25 r24) hex (r23 r22 r21 r20) % hex (r17 r16 r15 r14) > hex (r13 r12 r11 r10) % hex (r07 r06 r05 r04) hex (r03 r02 r01 r00) %% > n % c % z % v % t %% st %%%%el1/ko spool on ty 6 Рис. 15 Шаблон программы моделирования Для удобства восприятия результаты моделирования представляются в табличной форме, при этом содержимое всех 8-ми разрядных регистров операционного автомата и служебных регистров отображаются в виде двух 16-тиричных цифр. На рис. 16 показаны результаты моделирования по отдельным тактам модельного времени. Рис. 16 Результаты моделирования В 1-м такте (cycle step 1:2) устанавливается регистр адреса ПЗУ в нуль (RAH=0 - старшая часть регистра RA и RAL=0 - младшая часть регистра RA). В такте 3 выполняется первая микрокоманда (y1, y3, NOP), что отражается строкой 3:2 c микрокомандой MH=0, ML=5. Результатом ее выполнения является обнуление АС (ACH=0, ACL=0) и формирование значений признаков N, Z, V, T. В 27-м такте моделирование заканчивается, в АС формируется результат (5Eh) и сигнал окончания ST. 4. Микропрограммный управляющий автомат с жесткой логикой 4.1. Абстрактный синтез управляющего автомата Абстрактный синтез включает следующие этапы: – построение кодированной СА, описывающей алгоритм работы управляющего автомата; – построение формальной модели управляющего автомата в виде прямой таблицы переходов; – минимизация числа состояний управляющего автомата. В качестве начального языка для описания алгоритма функционирования управляющего автомата с жесткой логикой используется язык СА. Размерность и вычислительная сложность задачи проектирования микропрограммного устройства управления с жесткой логикой намного превышает размерность и сложность аналогичной задачи для устройства с программируемой логикой. В силу этого дальнейшая методика проектирования и последующего моделирования будет изложена для фрагмента схемы алгоритма рис. ט, включающего вершины 9, 10, 11. Для большей общности во фрагмент добавлены вершины Начало и Конец. Выделенный фрагмент показан на рис. 17. По кодированной СА может быть построен граф переходов управляющего автомата, соответствующий автомату Мура или Мили. Автомат Мили имеет, как правило, число состояний меньшее, чем эквивалентный ему автомат Мура. Однако применение автомата Мили в качестве управляющего не всегда возможно. Рис. 17 Фрагмент схемы алгоритма В автомате Мили переход в новое состояние осуществляется одновременно с формированием выходных сигналов. Поэтому, если операционный автомат вырабатывает осведомительные сигналы сразу при поступлении управляющих сигналов возможна ситуация, когда автомат Мили еще не сменил состояние, а на его входы уже пришли новые осведомительные сигналы, требующие выполнения иного перехода. В силу вышеназванного замечания чаще управляющий автомат реализуется, как комбинированный автомат, у которого функции переходов реализуются как в автомате Мили, а функции выходов, как в автомате Мура. На рис. יח показан граф переходов управляющего автомата Мура для СА приведенной на рис. 18. Автомат первоначально находится в неизвестном состоянии SX, и на его выходах формируется неопределенный сигнал Х. По сигналу Сброс автомат переходит в начальное состояние S0. Слева от состояний SX, S0, S1, S2, S3 показаны выходные сигналы управляющего автомата Mi и Yi . Следует обратить внимание на то обстоятельство, что при переходе автомата в начальное состояние S0 на его выходе необходимо формировать пустую микрокоманду М11, по которой в операционном автомате не выполняется никаких действий до появления сигнала Пуск. Рис. 18 Графическая модель автомата На основе СА или графа переходов строится таблица переходов управляющего автомата Мура, представляющая закон функционирования управляющего автомата. [2,6,7]. Для ее построения необходимо по исходной СА выполнить сквозную нумерацию всех вершин, каждой из которых поставить в соответствие состояние автомата. Если в СА имеются петли из логических условий, то ввести пустой оператор, который размещается при выходе из условной вершины, определяющей начало пути [2]. При построении таблицы переходов управляющего автомата Мура анализируются все пути между операторными вершинами, начиная с начальной вершины. По таблице переходов управляющего автомата Мура нетрудно построить таблицу переходов и выходов управляющего автомата Мили, объединяя состояния (события), переходы из которых полностью совпадают [1, 2]. В табл. 11 приведена таблица переходов для графа переходов показанного на рис. יח. Таблица переходов
4.2. Структурный синтез управляющего автомата. Структурный синтез управляющего автомата включает следующие этапы: – кодирование состояний управляющего автомата ; – выбор элементов памяти; – составление системы канонических уравнений (СКУ), на основе которой строятся функции возбуждения элементов памяти; – составление системы выходных функций (СВФ), на основе которой строятся выходные сигналы управляющего автомата; – реализация принципиальной схемы управляющего автомата. Основой для структурного синтеза УА с жесткой логикой является таблица переходов управляющего автомата, полученная на этапе абстрактного синтеза. На ее основе строится кодированная таблица переходов, в которой каждому состоянию и выходному сигналу назначен его код. Табл. 12 является кодированной таблицей переходов автомата Мура, построенной на основе табл. 11 с произвольной кодировкой состояний управляющего автомата. Реализация управляющего автомата может выполняться с использованием различных элементов памяти [1], но наиболее просто она выполняется с использованием D-триггеров. Кодированная таблица переходов
Ниже на основе данных табл. יב строятся функции возбуждения в - триггеров D1 и D2, на которых реализуется управляющий автомат Мура. Для лучшего восприятия записей функций в них используется символ логического умножения (*). __ __ __ __ __ D1 = S1*V U S1* V U S2*1 U S3*1 = Q1*Q2*V U Q1*Q2*V U Q1*Q2 U Q1*Q2 = Q1 U Q2; __ __ __ D2 = S0*Пуск U S1*V U S2*1 U S3*1 = Q1*Q2*Пуск U Q1*Q2*V U ___ ___ Q1*Q2 U Q1*Q2 = Q1 U Q2*Пуск U Q2*V. Ниже приведены выходные функции для отдельных разрядов микрооперации Мi (функции для дополнительных управляющих сигналов Yi не приведены, так как они строятся аналогично). М8 = M7=M6=M5=0; М4 = S0 U S2 U S3; М3 = S1 U S2; М2 = S0 U S1 U S3; М1 = S3; На рис. 19 приведена схема реализующая управляющий автомат с жесткой логикой, формирующая вышеописанные выходные сигналы M1-M8. Рис. 19 Схема управляющего автомата Так как выходные сигналы М8, М7, М6, М5 тождественно равны 0, то на схеме они показаны единым сигналом М8765. В схеме в качестве элементов памяти используется D-триггер с динамическим управлением, а смена состояний происходит по переднему фронту синхросигнала S. 4.3. Моделирование управляющего автомата с жесткой логикой Моделирование управляющего автомата с жесткой логикой проводится на базе пакета PCAD и включает выполнение следующих этапов [4,5]: – графическое представление принципиальной схемы управляющего автомата. Прорисовка принципиальной схемы выполняется программой PCCAPS с использованием библиотеки элементов серии К155. Библиотека включает графические изображения и программы моделирования микросхем серии К155, К1533 и К1534 [5]; – трансляция графического представления в формат данных программы моделирования. Трансляция выполняется программами PCNODES, PCLINK, PRESIM [4,5]; – описание входных воздействий и моделирование работы принципиальной схемы управляющего автомата. Описание и моделирование выполняются программой PCLOGS [4,5]. На рис. 20 приведено описание входных воздействий для схемы изображенной на рис. 19, подготовленное с использованием программы PCLOGS. lo avt3.net cy 10 ge [0 0] reset d0/1 d1/1 d0/29 d1/1 d0/17 ge [0 0] s d0/4 (d1/2 d0/4) ge [0 0] v d0/30 d1/20 ge [0 0] pusk d0/9 d1/5 d0/23 d1/5 d0/23 pr reset pusk s v q1 q2 m4 m3 m2 m1 di 3 si 40 Рис. 20 Программа моделирования Активный уровень (d0) сигнала СБРОС (reset), осуществляет перевод управляющего автомата в начальное состояние S0. Для проверки обеих ветвей СА управляющий автомат переводится в начальное состояние дважды в 1-ом и 32-ом тактах моделирования. В 10-м такте и 38-м тактах моделирования подается сигнал ПУСК (pusk). Выбор ветви СА осуществляется значением осведомительного сигнала V. Результаты моделирования в форме временных диаграмм приведены на рис. 21. Первые 4 синхросигнала S обеспечивают переключение состояний автомата SX, S0, S1, S2, S3 при значении признака V=0 и формировании микрокоманд М11, М7, М13 и М12. В 32-том такте автомат переводится сигналом RESET опять в начальное состояние S0, имитируется высокий уровень признака V и следующие три синхросигнала S обеспечивают переключение состояний автомата S0, S1, S3 и формирование микрокоманд М11, М7, и М12. Так как значения разрядов М8, М7, М6, М5 всегда нулевые, то на временной диаграмме они не показаны. 5. Создание БИС управляющего автомата Успешное завершение моделирования и получение требуемых функциональных и временных характеристик проектируемого цифрового устройства создает условия для создания БИС устройства управления с жесткой логикой. Для создания БИС используется программа PC CAPS пакета PCAD [5]. Сначала в режиме DETL необходимо создать принципиальную схему с обязательным именованием его входных и выходных цепей. После этого, не очищая экрана, перейти в режим SYMB и создать графический символ БИС. При этом входные и выходные контакты должны иметь те же имена, что и соответствующие цепи принципиальной схемы БИС, а идентификатор типа компонента ID необходимо установить равным 256. На рис. 22 показано графическое изображение БИС управляющего автомата с жесткой логикой. Рис. 22 Создание БИС управляющего автомата 1. Вашкевич Н.П. Синтез микропрограммных управляющих автоматов. Учеб. пособие. - Пенза: Пенз. политехн. ин-т, 1990. - 115 с. 2. Сергеев Н.П., Вашкевич Н.П. Основы вычислительной техники: Учеб. пособие. 2-е изд. перераб. и доп. - М.: Высш. шк., 1988. - 311 c. 3. Вашкевич Н.П., Вашкевич С.Н. Недетерминированные автоматы и их использование для синтеза систем управления. Часть 1. Эквивалентные преобразования НДА: Учеб. пособие. - Пенза: Изд-во Пенз. гос. техн. ун-та, 1996. - 88с. 4. Захаров А.П., Чулков В.А., Аксенов М.П. Моделирование цифровых и аналоговых схем на ПЭВМ. Учеб. пособие. - Пенза: Изд-во Пенз. гос. техн. ун-та, 1997. - 81с. 5. Разевиг В.Д. Применение программ Р-CAD и Pspice для схемотехнического моделирования на ПЭВМ. Вып. 1,2,3,4. М.: Радио и связь, 1992. 6. Баранов С.И. Синтез микропрограммных автоматов. - 2-е изд. перераб. и доп. - Л.: Энергия, Ленингр. отд-ние, 1979. - 232 с. 7. Майоров С.А., Новиков Г.И. Структура электронных вычислительных машин. - Л.: Машиностроение. Ленингр. отд-ние, 1979. - 384 с. |