Regisztrálás átnevezése

A regiszter átnevezése a processzorokban használt utasítások kölcsönös függőségének gyengítésének módszere az utasítások nem  megfelelő végrehajtásával . A számítási folyamatokban használt egyik módszer az utasításszintű párhuzamosság megvalósítására .

Abban az esetben, ha két vagy több utasításnak megfelelően egy regiszterbe adatot kell írni, akkor azok helyes , soron kívüli végrehajtása lehetetlenné válik (későbbi utasítás egy korábbi befejezése előtt nem dolgozható fel), akár ha nincs adatfüggőség. Az ilyen interdependenciákat gyakran hamisnak nevezik ( igazi függőség esetén az adatoktól való függés is fennáll).

Mivel az architekturális regiszterek száma általában korlátozott (például az x86 architektúra alapértelmezés szerint csak nyolc általános célú regiszterrel rendelkezik), elég nagy a hamis függőségek lehetősége, ami a processzor teljesítményének romlásához vezethet.

A regiszterek átnevezése az architekturális regiszterekre mutató szoftverhivatkozások fizikai regiszterekre való hivatkozásokká történő átalakítása, és lehetővé teszi a hamis kölcsönös függőségek hatásának csökkentését azáltal, hogy korlátozott számú architekturális regiszter helyett nagyszámú fizikai regisztert használ (például x86-kompatibilis processzorok). Az Intel P6 architektúrája 40 fizikai regisztert tartalmaz [1 ] ). Ebben az esetben a processzor figyeli, hogy mely fizikai regiszterek állapota felel meg az architekturálisak állapotának, és az eredmények kiadása a program által megadott sorrendben történik.

A módszert az IBM System/360 Model 91 (1964), POWER1 (1990), MIPS R10000 és újabb processzorokban használták.

Lásd még

Jegyzetek

  1. Az Unadbridged Pentium 4: IA32 processzor genealógia

Irodalom

Linkek