Современные высокопроизводительные компьютеры
LF F6,34(R2) 2. LF F2,45(R3) 3. MULTD F0,F2,F4 4. SUBD F8,F6,F2 5. DIVD F10,F0,F6 6. ADDD F6,F8,F2 Рис. 6.6 описывает станции резервирования, буфера загрузки и записи и регистровые теги. К именам add, mult и load добавлены номера, стоящие за тегами для этой станции резервирования - Add1 является тегом для результата из первого устройства сложения. Состояние каждой операции, которая выдана для выполнения, хранится в станции резервирования. Состояние команд
Команда Выдача Выполнение Запись результата
LD F6,34(R2) ( ( (+
LD F2,45(R3) ( (
MULTD F0,F2,F4 (
SUBD F8,F6,F2 (
DIVD F10,F0,F6 (
ADDD F6,F8,F2 (
Станции резервирования
Имя Занятость Op Vj Vk Qj Qk
Add1 Да SUB Mem[34+Regs[R2]] Load2
Add2 Да ADD Add1 Load2
Add3 Нет
Mult1 Да MULT Regs[F4] Load2
Mult2 Да DIV Mem[34+Regs[R2]] Mult1
Состояние регистров
Поле F0 F2 F4 F6 F8 F10 F12 . . . F30
Qi Mult1 Load2 Add2 Add1 Mult2
Рис. 6.6. Теги станций резервирования и регистров Имеются два важных отличия от централизованной схемы управления, которые заметны в этих таблицах. Во-первых, значение операнда хранится в станции резервирования в одном из полей V как только оно становится доступным; оно не считывается из регистрового файла во время выдачи команды. Во-вторых, команда ADDD выдана для выполнения. Ее выдача была заблокирована в централизованной схеме управления из-за наличия структурного конфликта. Большие преимущества схемы Томасуло заключаются в (1) распределении логики обнаружения конфликтов, и (2) устранение приостановок, связанных с конфликтами типа WAW и WAR.
|