Описание лабораторной установки

Лабораторная работа выполняется на ПЭВМ типа IBM, работающей в среде Windows 2000/XP и выше. Программа имитационного моделирования составлена на языке Delphi 7.0. В ней представлена упрощенная модель архитектуры микропроцессора типа Pentium Pro, содержащая следующие основные блоки:

· кэш-память первого уровня;

· блок выборки;

· блок дешифрации;

· станцию – резервуар;

· функциональные блоки;

· буфер восстановления последовательности.

Эта модель позволяет изучить работу микропроцессора с различными типами команд, и особенности выполнения последовательности этих команд в типичной суперскалярной архитектуре.

Программа позволяет выполнить следующее:

1. Варьировать количество команд в последовательности от 100 до 500 (по умолчанию их 100).

2. Задавать процентное соотношение команд разных типов в моделируемой последовательности;

3. Варьировать размер станции-резервуара от 40 до 100 микрокоманд;

4. Задавать размер буфера восстановления последовательности в пределах от 40 до 100 команд;

5. Варьировать вероятность правильного предсказания переходов от 80 до 100 процентов.

Исполняемый модуль программы моделирования имеет имя Superscalarи находится в папке Lab 5. Его запуск осуществляется традиционным способом. После запуска на экране появляется основное окно, которое позволяет задать параметры модели и один из трех режимов моделирования: íåïðåðûâíûé, ïîòàêòîâûé è ïî òàéìåðó. Èõ âûáîð, êàê è â ïðåäûäóùèõ ðàáîòàõ, îñóùåñòâëÿåòñÿ ñ ïîìîùüþ ìåíþ Режим моделирования.

 íà÷àëå íåîáõîäèìî çàäàòü èñõîäíûå äàííûå (âûïîëíèòü íàñòðîéêó ìîäåëè). Ýòà ïðîöåäóðà, êàê è â ïðåäûäóùèõ ðàáîòàõ, âûïîëíÿåòñÿ ñ ïîìîùüþ ìåíþ Файл –> Настройка.Ïðè âûáîðå óêàçàííîãî ïóíêòà ïîÿâëÿåòñÿ îêíî, ñîäåðæàùåå íåñêîëüêî çàêëàäîê. Ñ ïîìîùüþ çàêëàäêè Командыóñòàíàâëèâàåòñÿ êîëè÷åñòâî êîìàíä â ìîäåëèðóåìîé ïîñëåäîâàòåëüíîñòè (îò 100 äî 500). Çäåñü æå íàõîäÿòñÿ êíîïêè, ïîçâîëÿþùèå çàäàòü процентное соотношение команд разных типов в моделируемой последовательности.  ðàáîòå èìååòñÿ âîçìîæíîñòü âêëþ÷èòü â èññëåäóåìóþ ïðîãðàììó êîìàíäû ÷åòûðåõ òèïîâ:

1) Целочисленные;

2)С плавающей точкой;

3)Условного перехода;

4)Работы с памятью.

Максимальное количество операций первых двух типов равно 40%, условного перехода – 20%, а число операций с памятью определяется после задания первых трех и равно дополнению их суммы до 100%.

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

Èìèòàöèÿ âûïîëíåíèÿ çàäàííîé ïîñëåäîâàòåëüíîñòè êîìàíä â ìîäåëè, êàê è â ïðåäûäóùèõ ðàáîòàõ, íà÷èíàåòñÿ ïîñëå íàñòðîéêè è âûáîðà ïóíêòà ìåíþ Файл –> Пуск. Ïðè ýòîì ïðîèñõîäèò ïåðåìåùåíèå íîìåðîâ êîìàíä èç èõ êýøà ÷åðåç âñå óñòðîéñòâà ìèêðîïðîöåññîðà â áóôåð âîññòàíîâëåíèÿ ïîñëåäîâàòåëüíîñòè. Ìîäåëèðîâàíèå çàêàí÷èâàåòñÿ, êîãäà âñå êîìàíäû îêàçûâàþòñÿ â ýòîì áóôåðå. Ðåçóëüòàòû ïðåäñòàâëÿþòñÿ â âèäå îáùåãî êîëè÷åñòâà âûïîëíåííûõ òàêòîâ, ñðåäíåãî ÷èñëà òàêòîâ íà êîìàíäó è êîëè÷åñòâà íåïðàâèëüíî ïðåäñêàçàííûõ ïåðåõîäîâ.

Программа, реализация которой имитируется моделью, как отмечалось выше, может представлять собой смесь команд четырех типов. Их последовательность формируется случайным образом, причем заданное процентное соотношение выдерживается. Команды целочисленной арифметики, с плавающей точкой и работы с памятью выполняются на соответствующих конвейерах. При прохождении через другие устройства они представляются цветом этих конвейеров. Номера микроопераций, входящих в состав команд, которые обходятся при выполнении условного перехода, подчеркиваются. Микрокоманды, образующие восстановленную последовательность операций программы и готовые к удалению из соответствующего буфера, помечаются в этом буфере стрелками.