Registerfilens åtkomsttid är en av de kritiska förseningarna i nuvarande superskalarprocessorer. Dess inverkan på processorns prestanda kommer sannolikt att öka i framtida generationer av processorer, eftersom de förväntas öka emissionsbredden (vilket innebär fler registerportar) och storleken på instruktionsfönstret (vilket innebär fler register) och använda någon form av multitrådning. Enligt detta scenario skulle tillgången till registerfilen kunna vara en dominerande fördröjning och ett påskyndat genomförande skulle vara önskvärt för att möjliggöra höga klockfrekvenser. En flerstegsregisterfil har dock allvarliga konsekvenser för processorns prestanda (t.ex. högre felpreskription på filialen) och komplexitet (mer nivåer av bypasslogik). För att ta itu med dessa två problem föreslår vi i detta dokument en registerfilarkitektur som består av flera banker. I synnerhet fokuserar vi på en multi-level organisation av registret file, som ger låg latency och enkel bypass logik. Vi föreslår flera caching policys och prefetching strategier och visa potentialen i denna flera-banked organisation. Till exempel visar vi att en två-nivå organisation försämrar IPC med 10% och 2% med avseende på en icke-pipelined enbanked register file, för SpecInt95 respektive SpecFP95, men det ökar prestanda med 87% och 92% när registret filåtkomst tid är faktor i. Nyckelord: Registrera filarkitektur, dynamiskt schemalagd processor, bypasslogik, registerfilcache. De flesta aktuella dynamiskt schemalagda mikroprocessorer har en RISC-liknande instruktionsuppsättningsarkitektur, och därför finns majoriteten av instruktionsoperorna i registerfilen. Tidpunkten för tillträde till registret beror i princip på både antalet register och antalet hamnar [8]. För att uppnå hög prestanda strävar mikroprocessordesigners efter att öka emissionsbredden. Mer omfattande problemmaskiner kräver dock fler portar i registerfilen, vilket avsevärt kan öka dess åtkomsttid [2]. Dessutom är en bred nummermaskin endast effektiv om den åtföljs av ett stort instruktionsfönster [14] eller någon typ av multitrådning [13]. Stora instruktionsfönster och multitrådning innebär ett stort antal instruktioner under flygning, som direkt bestämmer antalet föreskrivna register [2]. Att öka antalet register ökar dock också registerfilens åtkomsttid. Å andra sidan leder teknikutvecklingen till successiva minskningar av minimala funktionsstorlekar, vilket resulterar i högre kretsdensitet, men det förvärrar också effekten av fördröjningar av tråd [7]. Eftersom en betydande del av registrets filåtkomsttid beror på fördröjningar i tråden, förväntas framtida generationer av processorer påverkas ännu mer av problemet med åtkomsttid. Nuvarande trender i mikroprocessor design och teknik leder till prognoser att åtkomsttiden för en monolitisk registerfil kommer att vara betydligt högre än den för andra gemensamma operationer, såsom heltal tillägg. Enligt detta scenario, en rörledning registerfil är avgörande för hög prestanda; annars, processorn cykeltid skulle bestämmas av registret filåtkomsttid. Men det är inte trivialt att flytta en registerfil. Dessutom orsakar en multi-cycle piped register fil fortfarande en prestandanedbrytning i jämförelse med en encykel registerfil, eftersom en multi-cycle register fil ökar filialen felprediction straff. Dessutom kräver en flercykelregisterfil antingen flera nivåer av förbikoppling, som är en av de mest tidskritiska komponenterna i nuvarande mikroprocessorer, eller processorns prestanda kommer att påverkas avsevärt om endast en enda nivå av förbikoppling ingår. I detta dokument föreslår vi en registerfil arkitektur som kan uppnå en IPC-frekvens (instruktioner per cykel) mycket högre än en flercykel fil och nära en encykel fil, men samtidigt kräver det bara en enda nivå av bypass. Den viktigaste idén är att ha flera registerbanker med en heterogen struktur, så att bankerna skiljer sig i antal register, antal hamnar och därmed tillträdestid. Vi föreslår en run-time-mekanism för att fördela värden till register som syftar till att behålla de mest kritiska värdena i snabbbankerna, medan de återstående värdena hålls i långsammare banker. Vi visar att den föreslagna organisationen försämrar IPC med 10% och 2% när det gäller en en-cykel en-banked registerfil för SpecInt95 respektive SpecFP95, antar ett oändligt antal portar. När registrets filcykeltid räknas in och den bästa konfigurationen i fråga om instruction throughput (instruction per time unit) väljs för varje registerfilarkitektur, överträffar den föreslagna arkitekturen den enbanksbaserade registerfilen med 87 % respektive 92 %. Vid jämförelse
På samma sätt har Ref undersökt fördelarna med registerfilorganisationer på flera nivåer för att försöka minska registerfilernas komplexitet.
Multiple-banked register file architectures
{'venue': "ISCA '00", 'journal': None, 'mag_field_of_study': ['Computer Science']}