logo search
КП_2007

4 Разработка алу микропроцессора

4.1 Разработка ОА для отдельных операций АЛУ

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

C

АЛУ должно содержать команды сложения операндов (ADD), целочисленного умножения операндов по алгоритму А (IMUL), инкрементирование операнда на 1 (INC).

Рисунок 4.1.1 – Схема ОА сложения

Состав:

ОП1 – операнд 2

НСМ - накапливающий сумматор

ТП – триггер переполнения

Набор МО:

y1: НСМ:=НСМ+ОП[1].ОП

y2: НСМ:=НСМ+ОП1[1]ОП1[1].ОП1[2:n]

y3: НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

y4: ТП:=1

Осведомительные сигналы:

x1: ОП1[1] знак 2 операнда

x2: НСМ[1] знак 1 операнда

x3: НСМ[П] переполнение

Структурная схема ОА выполнения операции знакового умножения приведена на рисунке 4.1.2.

Рисунок 4.1.2 – Структурная схема ОА выполнения операции знакового умножения

Состав:

НСМ – накапливающий сумматор;

ОП1 – операнд 1;

ОП2 – операнд 2;

СТ – счетчик тактов;

Осведомляющие сигналы:

х1 : ОП2[N]

х2 :СТ=0

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

у1: НСМ:=НСМ+ОП1

у2: ОП2:=НСМ[n].R1(ОП2)

у4 : СТ:=СТ-1

у5: СТ:=n;

у6 : НСМ:= 0.R1(НСМ)

Структурная схема ОА выполнения операции инкремент приведена на рисунке 4.1.3.

у4

Рисунок 4.1.3 – Структурная схема ОА выполнения операции инкремент

Состав:

ОП1 – операнд 2

НСМ - накапливающий сумматор

ТП – триггер переполнения

Набор МО:

y1: НСМ:=НСМ+ОП[1].ОП

y2: НСМ:=НСМ+ОП1[1]ОП1[1].ОП1[2:n]

y3: НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

y4: ТП:=1

Осведомительные сигналы:

x1: ОП1[1] знак 2 операнда

x2: НСМ[1] знак 1 операнда

x3:НСМ[П]переполнение

х4

ОП2

у5

D

С

X3

А

X2

х5

СТ

у7

Y3

Y1

Y2

X1

у6

В

ТП

у4

Рисунок 4.1.4 – Структурная схема ОА АЛУ

Состав:

ОП1 – операнд 1

ОП2 – операнд 2

НСМ - накапливающий сумматор

ТП – триггер переполнения

РКО – регистр кода операции;

Набор МО:

y1: НСМ:=НСМ+ОП[1].ОП

y2: НСМ:=НСМ+ОП1[1]ОП1[1].ОП1[2:n]

y3: НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

y4: ТП:=1

у5:ОП2:=НСМ[n].R1(ОП2)

у6:СТ:=n

у7:СТ:=СТ-1

yРКО : PКО:=КОП;

Осведомительные сигналы:

x1: ОП1[1] знак 1 операнда

x2: НСМ[1] знак результата

x3: НСМ[П] переполнение

х4:ОП2[n]

х5:СТ=0

x6: РКО=#INC;

x7: РКО=#MOV;

x8: РКО=#JMP;

4.2 Разработка микропрограмм выполнения операций в АЛУ

НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

Рисунок 4.2.1 – Микропрограмма сложения

Микропрограмма выполнения операции знакового умножения приведена на рисунке 4.2.2

Рисунок 4.2.2 – Микропрограмма выполнения операции

знакового умножения

Микропрограмма выполнения операции инкремент приведена на рисунке 4.2.3

НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

Рисунок 4.2.3 - Микропрограмма выполнения операции инкремент

4.4 Разработка объединенной микропрограммы АЛУ

НСМ:=НСМ[1]НСМ[П].НСМ[2:n]

Рисунок 4.4.1 – Микропрограмма АЛУ