Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3 семестр / ЛР / лаб№1конв / Вар 23 / Лаб. раб. 5 (1)

.doc
Скачиваний:
23
Добавлен:
30.04.2013
Размер:
115.2 Кб
Скачать

МИНИСТЕРСТВО оБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Московский Государственный институт электроники и математики

(Технический университет)

Кафедра вычислительных систем и сетей

Отчет о лабораторной работе №1

«Моделирование работы многоконвейерного процессора»

по дисциплине «Организация ЭВМ, комплексов и систем»

Выполнил:

студент группы С-31

Преподаватель:

канд. техн. наук, доцент

Иванова Елена Михайловна

20 октября 2004 года

Вариант №23

Вариант кода 7

Количество конвейеров 3

Фрагмент кода на Ассемблере:

MOV DX, [const1]

MOV CX, [const2]

TEST DX, CX

JME FUCK

XOR AX, AX

XOR AX, BX

JMP +6

FUCK: MOV AX, DX

ADC AX, CX

JZ -5

NEG BX

Таблица последовательности выполнения процессором микроопераций для одного конвейера:

Группа 1 простоев конвейера вызвана более долгим выполнением второй фазы (выборки операндов) нежели третьей (исполнения команд).

Группы простоев 2, 3, 4 вызваны командами безусловного перехода JME, J***, JMP, в результате выполнения которых уже выполненные фазы последующих команд оказываются невостребованными и отбрасываются, после чего необходимо начинать выполнение команды с первой фазы.

1 конвейер: простой модуля исполнения с 8 по 15 такты вызван ожиданием завершения выполнения команды TEST в третьем конвейере.

простой модуля выборки команды с 6 по 18 такты вызван ожиданием завершения выполнения команды безусловного перехода JME, которая, в свою очередь, ожидала завершения выполнения команды TEST в третьем конвейере.

простой всех модулей с 20-27 по 34 такты вызван ожиданием завершения выполнения команды безусловного перехода J*** в третьем конвейере.

2 конвейер: простой всех модулей с 6-10 по 18 такты вызван ожиданием завершения выполнения команды безусловного перехода JME.

простой всех модулей с 20-31 по 34 такты вызван ожиданием завершения выполнения команды безусловного перехода J*** в третьем конвейере.

3 конвейер: простой модуля исполнения с 3 по 10 такты вызван ожиданием завершения выполнения команд MOV над регистрами DX и CX.

простой модулей выборки команды, операндов и модуля исполнения со 2-12 по 18 такты вызван ожиданием завершения выполнения команды безусловного перехода JME

простой модуля исполнения с 20 по 30 такты вызвано ожиданием завершения выполнения команды ADC во втором конвейере.

Вывод:

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

В данном случае, на выполнение последовательности команд в одном конвейере потребовалось 54 такта конвейера. При этом основной причиной простоев были команды безусловного перехода. А при исполнении этой же последовательности команд в трех конвейерах, время выполнения сократилось до 45 тактов. Такой незначительный прирост в быстродействии обусловлен большим количеством простоев из-за ожидания окончания выполнения предыдущих команд.

Соседние файлы в папке Вар 23