- •Пояснительная записка к курсовому проекту
- •1.1 Понятие «центральный процессор».
- •1.2 Процессор amd Hammer.
- •1.3 Микроархитектура к7.
- •1.4 Внешние интерфейсы и другие характеристики к7.
- •1.5 Наборы микросхем и материнские платы
- •1.6 Процессорное ядро Hammer.
- •1.7 От «небольшого отличия» к «великим переменным»
- •1.8 Интегрированный контроллер памяти и северный мост.
- •1.9 Усовершенствованное устройство предсказания ветвлений
- •1.10 Буфер быстрого преобразования адреса для больших нагрузок
- •2. Практическая часть
- •Задание на проектирование алу
- •Формат входных, выходных и внутренних переменных, с которыми оперирует алу.
- •2.2.2 Объединенная гса сложения/вычитания и неравнозначности
- •2.2.3 Разработка структуры операционного автомата
- •2.2.4. Список микрооперации, реализуемых в оа.
- •2.2.5 Микропрограмма выполняемых в алу операций
- •2.3 Проектирование управляющего автомата алу
- •2.3.1 Определение формата микрокоманд
- •2.3.2 Кодирование микроопераций и логических условий
- •2.3.3. Кодирование микроопераций и логических условий
- •2.3.4. Содержимое пзу микропрограмм
- •Заключение
2.2.4. Список микрооперации, реализуемых в оа.
Таблица 2.1. Список микроопераций и логических условий
y1 |
OV:=0 |
y2 |
OV:=1 |
y3 |
Cf:=0 |
y4 |
Cf:=1 |
y5 |
C:=A+B |
y6 |
C:=C+1 |
y7 |
B`:=|B` |
y8 |
A`:=|A` |
y9 |
A:=L1(A) |
y10 |
B:=L1(B) |
y11 |
C`:=|C` |
y12 |
Сч I:=0 |
y13 |
Сч I:=I+1 |
y14 |
C:=0 |
y15 |
C:=1 |
y16 |
B[0]:=| B[0] |
Таблица 2.2. Список логических условий
x1 |
I=16 |
x2 |
F=1 |
x3 |
F`=1 |
x4 |
a0=1 |
x5 |
b0=1 |
x6 |
a0=b0 |
x7 |
b0=c0 |
x8 |
c0=1 |
x9 |
c[-1]=1 |
x10 |
cf`=1 |
2.2.5 Микропрограмма выполняемых в алу операций
Рис 3. Микропрограмма выполняемых в АЛУ операций в терминах микроопераций и логических условий с разметкой состояний для проектирования управляющего автомата.
2.3 Проектирование управляющего автомата алу
2.3.1 Определение формата микрокоманд
При проектировании данного УА будем использовать смешанный способ кодирования.
Разобьем множество микроопераций Y на 3 непересекающихся подмножеств Y1, Y2, Y3.
Y1={y13, y14, y8, y16, y4, y11, yk}
Y2={y9, y15, y7, y6, y1}
Y3={y10, y12, y5, y3, y2}
Множество логических условий X состоит из 10 элементов:
X={x1, x2, x3, x4, x5, x6, x7, x8, x9, x10}
Определим размеры полей микрокоманд. Поле операторной микрокоманды будет состоять из 5 подполей - Y1, Y2, Y3 размером 3, 3 и 3 двоичных разряда соответственно.
Поле микрокоманды переадресации должно содержать номер одного из восьми логических условий - x1…x10. Для повышения гибкости процесса микропрограммирования удобно иметь возможность выбирать тождественно истинное и тождественно ложное условия. Поэтому поле Х будет занимать 4 разряда.
Поле адреса определяется объёмом памяти микропрограмм. Учитывая, что количество вершин в микропрограмме 17, а логических условий 10, то для поля адреса в микрокоманде стоит отвести 5 разрядов.
Тогда формат микрокоманды будет иметь вид:
Y1 |
Y2 |
Y3 |
x |
A1 |
3 |
3 |
3 |
4 |
5 |
2.3.2 Кодирование микроопераций и логических условий
Таблица кодирования микроопераций и логических условий
Код |
Y1 |
Y2 |
Y3 |
Код |
X |
000 |
Ø |
Ø |
Ø |
0000 |
Константа 0 |
001 |
y13 |
y9 |
y10 |
0001 |
x1 |
010 |
y14 |
y15 |
y12 |
0010 |
x2 |
011 |
y8 |
y7 |
y5 |
0011 |
x3 |
100 |
y16 |
y6 |
y3 |
0100 |
x4 |
101 |
y4 |
y1 |
y2 |
0101 |
x5 |
110 |
y11 |
yk |
|
0110 |
x6 |
111 |
|
|
|
0111 |
x7 |
|
|
|
|
1000 |
x8 |
|
|
|
|
1001 |
x9 |
|
|
|
|
1010 |
x10 |
|
|
|
|
1111 |
Константа 1 |