[ЭВМ] Курсовой - 14 вариант (1074595), страница 2
Текст из файла (страница 2)
Вычисление условий В1 - В7 осуществляется по следующим формулам:
где D(0:2) - поле кода операции в команде (D(0), D(1), D(2) - разряды кода операций)
При выполнении микропрограммы «Деление» вводится третий операнд С (делитель). В слове А формируется остаток, а в слове В формируется частное (сначала выводится В, затем А)
При выполнении остальных микроопераций формируется слово С = опер[A,B]
Примечание: для формирования осведомительных сигналов, определяющих выполнение той или иной микропрограммы, используется дешифратор. Анализ КОП с помощью дешифратора позволяет существенно упростить логику работы устройства
Следует заметить так же, что в силу идентичности выдачи результата выполнения операций сложения, вычитания, вычитания модулей, ,
,
, выдача результатов этих операций на внешнюю шину реализуется одним и тем же блоком микроопераций
При выполнении операций B1-B6 – выводится слово результата С
При выполнении операции В7 – выводится частное В и остаток А
4. Обобщённый список слов, полей, логических условий и управляющих сигналов
Обобщённый список слов, полей, логических условий и управляющих сигналов составляется на основании обобщённой микропрограммы
Построение таблицы микроопераций, осуществляется следующим образом. Выписываются все использованные виды микроопераций, каждому виду микроопераций ставится в соответствие «уникальный» индекс – yi, который является обозначением управляющего сигнала, закреплённого за данным видом микроопераций. Вид микроопераций объединяет все одинаковые микрооперации, встречающиеся в обобщённой микропрограмме
Список управляющих сигналов приведён в Приложении №3 (Таблица №1).
Составление списка логических условий осуществляется следующим образом. Выписываются все виды логических условий, использованных при составлении обобщённой микропрограммы и ставится каждому из них в соответствие индекс хi, который является, обозначением соответствующего осведомительного сигнала, закреплённого за данным видом логических условий. Вид логических условий объединяет все одинаковые логические условия, встречающиеся в обобщённой микропрограмме.
Список используемых в микропрограмме осведомительных сигналов приведён в Приложении №3 (Таблица №2)
Список используемых в микропрограмме слов и полей составляется следующим образом. Выписываются все слова, а также самостоятельно использующиеся при выполнении микроопераций поля слов. Затем каждому слову ставится в соответствие регистр. В результате получается таблица, в которой перечислены все используемые в микропрограмме слова, самостоятельно используемые поля этих слов, а также названия регистров, поставленных в соответствие каждому из этих слов
Список используемых в микропрограмме слово и полей приведён в Приложении №3 (Таблица №3)
5. Закодированный граф микропрограммы
Закодированный граф микропрограммы составляется на основе обобщённой микропрограммы и обобщённого списка слов, полей, логических условий и управляющих сигналов
Закодированный граф микропрограммы составляется путём подстановки нужных управляющих сигналов yi в соответствии с текущей микрооперацией в каждый узел графа и замены логических условий соответствующими им индексами xj. После этого каждому узлу (состоянию) полученного графа присваивается уникальный порядковый номер - номер состояния – аi (в произвольном порядке)
Полученный закодированный граф представлен на соответствующем листе
6. Каноническая структура операционного автомата
Выполняется на основании обобщённой микропрограммы, обобщённого списка слов, полей, логических условий и управляющих сигналов
Структура операционного автомата разрабатывается следующим образом. Каждому слову поставить в соответствие регистр, каждому полю - подрегистр. Каждой микрооперации вида S=(S1,S2,…,Sl) нужно поставить в соответствие комбинационную схему, на входы которой подать сигналы соответствующих операндов. Каждому логическому условию вида Хi=( S1,S2,…,Sk) ставится в соответствие комбинационная схема
Каноническая структура операционного автомата (на которой отражены все получившиеся операционные элементы) изображена в Приложении №6
Примечание: комбинационные схемы изображены в виде окружностей с вписанными в них символами микроопераций, которым поставлена в соответствие данная комбинационная схема. В ряде случаев операции выполняются однотипными схемами (они имеют одинаковое обозначение), при реализации ОА они могут быть заменены одной схемой, но при этом операнды, поступающие на её входы должны выбираться с помощью мультиплексоров в соответствии с подаваемыми на них управляющими сигналами yi. Мультиплексоры установлены перед теми регистрами, которые «обслуживают» несколько комбинационных схем
7. Синтез операционных элементов
Синтез операционных элементов производится на основе канонической структуры операционного автомата и обобщённого списка слов, полей и микроопераций
В результате построения канонической структуры операционного автомата каждому слову был сопоставлен регистр, каждому регистру – набор микроопераций, каждой микрооперации – своя комбинационная схема. На этапе синтеза операционного элемента производится разбиение множества комбинационных схем на подмножества: S=(S1,S2,…,Sк) – множество слов, =i, где i=(1,к). Таким образом комбинационные схемы одного и того же подмножества обслуживают один и тот же регистр. Это подмножество в совокупности с регистром и представляет собой операционный элемент.
Разработка комбинационных схем осуществляется с помощью таблиц истинности и булевых функций с применением методов сокращённых таблиц
Операционный элемент А (на основе регистра А, мультиплексора регистра А, АЛУ, мультиплексоров первого и второго операндов АЛУ)
Таблица истинности операционного элемента А приведена в Приложении №4 (Таблица №1). На основании таблиц истинности напишем и минимизируем булевы функции, на основании которых работает данный операционный элемент. Логические элементы, обеспечивающие работу ALU, были реализованы для всей схемы, а не для отдельного операционного элемента. В Приложении №7 указаны только вымышленные элементы, которые реализованы следующими элементами схемы.
Управление регистром А:
S0.A=y1 y2y4 (сделан на элементах ИЛИ-НЕ (D28.2б), НЕ(D43.2))
S1.A=y1 y2 y3 y4 S1.A=S0.Ay3 (сделан на элементе ИЛИ (D49.2))
Управление мультиплексорами А.1 и A.2:
SE.A=y4 (сигнал подаётся напрямую на адресный вход мультиплексора А)
Управление АЛУ (1 и 2 – соединённые через выход переноса):
SE3=y14у16 (выполнен на элементах ИЛИ-НЕ (D28.3), НЕ (D46.4))
SE2=y11 (подаётся сразу на АЛУ)
SE1=y2 y5 y7 y8 y13 y14 (элементы ИЛИ-НЕ (D40.3 и D41.1), элемент И-НЕ (D44.2)
SE0=y1 y10 y11 y12 y14 (элементы ИЛИ-НЕ (D40.1 и D40.2), элемент И-НЕ (D44.3)
MO= y7 y8 y14y15 y16 (элементы ИЛИ-НЕ (D41.2 и D41.3), элемент И-НЕ (D44.1)
CRn=y2 y11 y13 (элемент ИЛИ-НЕ (D42.1), элемент НЕ (D43.1)
Управление мультиплексорами первого (МХОП1.1, МХОП1.2) и второго операндов (МХОП2.1, МХОП2.2) АЛУ:
SE_OП1= y5 y12 (элемент ИЛИ (D47.1))
_______
NOT_ОП= SE_OП1 (элемент НЕ (D46.3))
SE_ОП2= y1 y2 y11 y12 (элемент ИЛИ-НЕ (D48.1), элемент НЕ (D46.6)
Данный операционный элемент представлен в Приложении №7
Список реализуемых микроопераций:
А:=Швх
А:=L1(А).В(0)
А:=А+С
А:=А+С+1.
Операционный элемент В (на основе регистра В, мультиплексоров регистра В, АЛУ, мультиплексоров первого и второго операндов АЛУ)
Данный операционный элемент представлен в Приложении №8
Таблица истинности операционного элемента В приведена в Приложении №4 (Таблица №2). На основании таблиц истинности напишем и минимизируем булевы функции, на основании которых работает данный операционный элемент. Логические элементы, обеспечивающие работу ALU, были реализованы для всей схемы, а не для отдельного операционного элемента
Управление регистром В:
S0.В=y5 y7y8y9 (сделан на элементе ИЛИ-НЕ (D48.2), НЕ(D46.5))
S1.В= y5 y6y7y8 y9 S1.В=S0.Вy6 ( сделан на элементе ИЛИ (D49.1))
Управление мультиплексорами В.1 и В.2 :
SE.В=y9 (сигнал подаётся напрямую на адресный вход мультиплексора B)
Управление АЛУ (1 и 2 – соединённые через выход переноса):
SE3=y14у16 (выполнен на элементах ИЛИ-НЕ (D28.3), НЕ (D46.4))
SE2=y11 (подаётся сразу на АЛУ)
SE1=y2 y5 y7 y8 y13 y14 (элементы ИЛИ-НЕ (D40.3 и D41.1), элемент И-НЕ (D44.2)
SE0=y1 y10 y11 y12 y14 (элементы ИЛИ-НЕ (D40.1 и D40.2), элемент И-НЕ (D44.3)
MO= y7 y8 y14y15 y16 (элементы ИЛИ-НЕ (D41.2 и D41.3), элемент И-НЕ (D44.1)
CRn=y2 y11 y13 (элемент ИЛИ-НЕ (D42.1), элемент НЕ (D43.1)
Управление мультиплексорами первого (МХОП1.1, МХОП1.2) и второго операндов (МХОП2.1, МХОП2.2) АЛУ:
SE_OП1= y5 y12 (элемент ИЛИ (D47.1))
_______
NOT_ОП= SE_OП1 (элемент НЕ (D46.3))
SE_ОП2= y1 y2 y11 y12 (элемент ИЛИ-НЕ (D48.1), элемент НЕ (D46.6)
Схема формирования последнего разряда реализована функцией:
__
В_7= Y7 (ALU(7) y8) , которая стоит в разрыве между АЛУ и мультиплексорами В.1, В.2 и в случае управляющего сигнала у7 устанавливает последний разряд подаваемого на мультиплексор слова в 0, при сигнале у8 в 1, при других сигналах оставляет его неизменным (для получения первоначального слова В на входе мультиплексоров В.1 и В.2 у7 и у8 реализуют на АЛУ функцию Fвых = В)
Используются элементы ИЛИ (D47.2), И-НЕ (D.44.4), НЕ (D46.1,D.46.2)
Список реализуемых микроопераций:
В:=шВх;
В:=В;
В:=В + 1;
В(7):=0;
В(7):=1;
В:= L1(В).0 – логический сдвиг влево;
Операционный элемент C (на основе регистра C, мультиплексоров регистра C, АЛУ, мультиплексоров первого и второго операндов АЛУ)
Данный операционный элемент представлен в Приложении №9
Таблица истинности операционного элемента C приведена в Приложении №4 (Таблица №3). На основании таблиц истинности напишем и минимизируем булевы функции, на основании которых работает данный операционный элемент. Логические элементы, обеспечивающие работу ALU, были реализованы для всей схемы, а не для отдельного операционного элемента. В Приложении №9 указаны только вымышленные элементы, которые реализованы следующими элементами схемы
Управление регистром C:
S0.C=y11 y12y13y14y15y16
S1.C=S0.C=SC (сделан на элементе ИЛИ-НЕ (D45.1, D45.2, D45.3), И_НЕ (D39.2))
Управление мультиплексорами C.1 и C.2 :
SE.В=y17 (сигнал подаётся напрямую на адресный вход мультиплексора C)
Управление АЛУ (1 и 2 – соединённые через выход переноса):
SE3=y14у16 (выполнен на элементах ИЛИ-НЕ (D28.3), НЕ (D46.4))
SE2=y11 (подаётся сразу на АЛУ)
SE1=y2 y5 y7 y8 y13 y14 (элементы ИЛИ-НЕ (D40.3 и D41.1), элемент И-НЕ (D44.2)