Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Переименование регистров

Основная идея переименования регистров состоит в том, что каждый новый результат записывается в один из свободных дополнительных регистров. Во всех последующих командах ссылки на заменяемый регистр соответствующим образом корректируются. Это необходимо сделать для того, чтобы устранить зависимость команд по данным. Обычно аппаратный регистровый файл (АРФ) содержит дополнительные регистры, недоступные программисту. Эти дополнительные регистры и используются для временного хранения результатов до момента разрешения конфликтов по данным. После разрешения конфликта результаты переписываются в те регистры, которые указаны в командах программы.

Переименование регистров с использованием АРФ происходит следующим образом:

Пусть выполняется команда, предусматривающая запись результата в регистр R i. Тогда для временного хранения результата выделяется свободный физический регистр R j, входящий в состав АРФ. Во всех последующих командах, в которых упоминается операнд, находящийся в регистре R i, имя регистра R i заменяется на имя R j. Для того, чтобы процессор знал, где находится тот или иной операнд, используется таблица подстановки, в которой номера логических регистров динамически отображаются на номера физических регистров. Таким образом, при записи очередного результата в физический регистр R j, имя логического регистра R i, которое используется в команде, запоминается в таблице подстановки, где находится и имя физического регистра. Каждый регистр в АРФ имеет дополнительный разряд “ Значение достоверно ” (ЗD). Единичное значение ЗD свидетельствует о том, что в регистре содержится правильное значение операнда, которое может использоваться в последующих вычислениях.

В некоторых ЭВМ вместо дополнительных разрядов, входящих в АРФ,

Используется дополнительная память, которая называется буфер переименования (БУП). БУП представляет собой ассоциативную память объемом в N слов. Каждая ячейка БУП идентифицируется своим порядковым номером от 0 до N-1.

Информация, хранящаяся в каждой ячейке БУП, представляется пятью полями:

1. Однобитовое поле “ Вход занят ” (ВЗ). Единичное значение этого поля говорит о том, что ячейка занята и недоступна для новых записей.

2. В поле RGr содержится номер логического регистра АРФ, для временной замены которого используется данная ячейка БУП. Это поле называется “ Номер переименованного регистра ”.

3. В поле “ Значение ” хранится текущее содержимое регистра, номер которого указан в поле RGr.

4. Однобитовое поле “ Значение достоверно ” (ЗD). Единичное значение этого поля подтверждает достоверность операнда, который находится в поле “ Значение ”. Если ЗD =0, то операнд еще не вычислен.

5. Однобитовое поле “ Последнее переименование ” (ПП). Если в БУП несколько ячеек в поле RGr имеют один и тот же номер, т.е. ссылаются на один и тот же регистр в АРФ, то ПП=1 только у той ячейки, где находится последняя ссылка на данный регистр. Поле ПП введено из-за того, что регистры могут переименовываться многократно и необходимо знать, где находится последнее значение операнда.

 

<== предыдущая лекция | следующая лекция ==>
Аппаратная поддержка суперскалярных операций | Переупорядочивание команд
Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 1316; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.031 сек.