 
        
        - •Пояснительная записка к курсовому проекту
- •Теоретическая часть
- •Введение
- •Внутренний кэш процессора
- •Внешний кэш процессора
- •Стратегия размещения.
- •Отображение секторов оп в кэш-памяти.
- •Смешанная и разделенная кэш-память.
- •Сводная информация по объемам, принципам организации и тактовым частотам кэш-памяти у процессоров от Intel и amd.
- •Зачем увеличивать кэш ?
- •Выводы.
- •2. Практическая часть
- •2.1 Задание на проектирование алу
- •Вариант 2-1
- •2.2 Проектирование операционного автомата алу. Определение форматов данных
- •Разработка алгоритма операции ускоренного умножения
- •Структурная схема операционного автомата алу
- •2.3 Проектирование управляющего автомата алу Определение формата микрокоманд
- •Структурная схема управляющего автомата
- •Содержимое пзу микропрограмм
- •Список литературы
Разработка алгоритма операции ускоренного умножения
В прямых кодах удобно умножать модули чисел. Знак результата не зависит от соотношения модулей операндов и определяется соотношением:
                                              
 
Смысл операции ускоренного умножения состоит в анализе пар разрядов множителя. При этом действуют следующие правила:
- При 00 просто произвести сдвиг суммы частичных произведений на два разряда вправо; 
- При 01 прибавить к сумме частичных произведений множимое и произвести сдвиг на два разряда вправо; 
- При 10 прибавить к сумме частичных произведений удвоенное множимое и произвести сдвиг на два разряда вправо (или произвести сдвиг суммы частичных произведений вправо на один разряд, прибавить множимое и снова произвести сдвиг); 
- При 11 вычесть из суммы частичных произведений множимое (или добавить дополнительный код множимого), произвести сдвиг на два разряда и добавить 1 к следующей (старшей) паре цифр множителя (или добавить к сумме частичных произведений множимое, сдвинуть сумму на один разряд вправо и снова повторить операцию). 
Структурная схема операционного автомата алу
Анализ алгоритмов умножения и дизъюнкции позволяет разработать структуру ОА. Учитывая действия, которые требуется выполнить для реализации алгоритма, включим в состав ОА следующие элементы:
- Два 16-разрядных регистра Рг А и Рг В для хранения входных операндов, причём регистры должны обеспечивать возможность сдвига своего содержимого вправо; 
- 16-разрядный регистр S для размещения результата операции с возможностью сдвига своего содержимого вправо; 
- 32-разрядный двоичный параллельный сумматор/вычитатель; 
- 32-разрядный двоичный параллельный сумматор; 
- 4-разрядный счётчик Сч i по модулю 16; 
- Схема сравнения на «равно» знаковых разрядов исходных операндов; 
- Cхема сравнения, для определения вида совершаемой операции; 
- Триггер переполнения Тг OV для хранения признака переполнения разрядной сетки; 
- Триггер Тг R для хранения знака произведения при операции ускоренного умножения; 
- Триггер Тг Р для хранения признака заёма из старшего разряда. 
 
	Рис 1. граф-схема алгоритма ускоренного
	умножения и неравнозначности 
	
	 
 
 
 
	Микропрограмма
	операции ускоренного умножения и
	неравнозначности 
	
	 
 
 
 
 
 
 
 
	1 
 
	0 
 
 
	1 
	0 
 
 
 
 
 
 
 
 
 
	0 
 
 
	1 
 
Рис 1. граф-схема алгоритма ускоренного умножения и неравнозначности
 
 
 
 
	1 
 
	0
 
	1 
	0 
 
 
 
 
	0
 
 
	1
 
 
2.3 Проектирование управляющего автомата алу Определение формата микрокоманд
Разобьем множество микроопераций Y на 6 непересекающихся подмножеств Y1, Y2, Y3, Y4, Y5, Y6:
Y1={y3, y7, y9, y15, y20, yk}
Y2={y4, y10, y18}
Y3={y1, y12, y16}
Y4={y2,y5, y8,y13, y19}
Y5={ y6,y11, y14}
Y6={ y17,y21, y22}
Множество логических условий X состоит из 9 элементов:
X={x1, x2, x3, x4, x5, x6, x7, x8, x9}
Определим размеры полей микрокоманд. Поле операторной микрокоманды будет состоять из 6 подполей - Y1, Y2, Y3, Y4 , Y5, Y6 размером 3, 2, 2, 3, 2, 2 двоичных разряда соответственно. Поле микрокоманды переадресации должно содержать номер одного из девяти логических условий - x1…x9. Для повышения гибкости процесса микропрограммирования удобно иметь возможность выбирать тождественно истинное и тождественно ложное условия. Поэтому поле Х будет занимать 4 разряда. Формат операторной микрокоманды и микрокоманды переадресации. Таблица 2.1. Список микроопераций и логических условий
| 
 | y1 | I:=16 | 
 | 
 | y17 S:=S+A | 
 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 
 | y2 | A:=R1(A) | 
 | 
 | Y18 S:=S-A | x1 | F | ||||||||||
| 
 | y3 | B:=R1(B) | 
 | 
 | Y19 B:=B+1 | x2 | A15=B15 | ||||||||||
| 
 | y4 | I:=i-1 | 
 | 
 | Y20 I:=i-2 | x3 | I=0 | ||||||||||
| 
 | y5 | S:=0 | 
 | 
 | Y21 S0:=r | x4 | A0=B0 | ||||||||||
| 
 | y6 | S:=1 | 
 | 
 | Y22 P:=1 | x5 | B15=1 | ||||||||||
| 
 | y7 | R:=0 | 
 | 
 | 
 | x6 | B14=1 | ||||||||||
| 
 | y8 | R:=1 | 
 | 
 | 
 | x7 | S0=1 | ||||||||||
| 
 | y9 | a0=0 | 
 | 
 | 
 | x8 | S15=1 | ||||||||||
| 
 | y10 | b0=0 | 
 | 
 | 
 | x9 | P=1 | ||||||||||
| 
 | y11 | P:=0 | 
 | 
 | 
 | 
 | 
 | ||||||||||
| 
 | y12 | S:=S+2*A | 
 | 
 | 
 | 
 | |||||||||||
| 
 | y13 | OV:=1 | 
 | 
 | 
 | 
 | |||||||||||
| 
 | y14 | OV:=0 | 
 | 
 | 
 | 
 | |||||||||||
| 
 | y15 | S:=R2(S) | 
 | 
 | 
 | 
 | |||||||||||
| 
 | y16 | B:=R2(B) | 
 | 
 | 
 | 
 | |||||||||||
| 0 | Y1 | Y2 | Y3 | Y4 | Y5 | Y6 | X | A1 | 
 | ||||||||
| 1 | 3 | 2 | 2 | 3 | 2 | 2 | 4 | 6 | 
 | ||||||||
Таблица кодирования микроопераций и логических условий
Таблица 2. Кодирование микроопераций и логических условий
| Код | Y1 | Y2 | Y3 | Y4 | Y5 | Y6 | Код | X | 
| 000 | Ø | Ø | Ø | Ø | Ø | Ø | 0000 | Константа 0 | 
| 001 | y3 | y4 | y1 | y2 | y6 | y17 | 0001 | X1 | 
| 010 | y7 | y10 | y12 | y5 | y11 | y21 | 0010 | X2 | 
| 011 | y9 | y18 | y16 | y8 | y14 | y22 | 0011 | X3 | 
| 100 | y15 | 
 | 
 | y13 | 
 | 
 | 0100 | X4 | 
| 101 | y20 | 
 | 
 | y19 | 
 | 
 | 0101 | X5 | 
| 110 | yk | 
 | 
 | 
 | 
 | 
 | 0110 | X6 | 
| 111 | 
 | 
 | 
 | 
 | 
 | 
 | 0111 | X7 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 1000 | X8 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 1001 | X9 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 1111 | Константа 1 | 
