# POWER4

Il POWER4 è un microprocessore a 64 bit compatibili con il set di istruzioni PowerPC con tutte le istruzioni opzionali (definite al tempo del processore). Presentato nel 2001 il progetto del processore era basato sul progetto del precedente POWER3. Il POWER4 è un chip multicore che include due core PowerPC.

## Progetto interno

Il POWER4 è formato da due implementazioni a 64 bit dell'architettura PowerPC AS. Il POWER4 ha una cache di secondo livello unificata divisa in tre parti uguali. Ogni parte ha un proprio controller indipendente in grado di erogare 32 byte per ciclo di clock. La Core Interface Unit (CIU) collega ogni controller alla cache istruzioni o alla cache dati di uno dei due processori. La Non-Cacheable (NC) Unit gestisce la serializzazione e la gestione di tutte le istruzioni che non possono essere messe nella cache. Il processore ha un controller per la cache di terzo livello ma la memoria non è inserita nell'integrato del processore. Il controller del bus GX gestisce le operazioni di I/O e gestisce un canale formato di due bus GX di 4 byte, uno per l'ingresso e uno per l'uscita. Il Fabric Controller è il gestore principale della rete di bus, della comunicazione tra le cache e della comunicazione tra il processore POWER4 e il POWER4 MCM (comunicazione a 4, 8, 16 o 32 vie). Trace-and-Debug per la gestione del primo accesso errato ai dati è incluso nel processore. Il processore include anche un'unità di autodiagnosi (Buid In Self Test BIST) e di controllo delle prostazioni (Performance Monitoring Unit). Power-On Reset (POR) è gestito dal processore.

## Unità di esecuzione

Il POWER4 implementa una microarchitettura superscalare con esecuzione fuori ordine speculativa ad alta frequenza grazie alle otto unità indipendenti. Il processore ha 2 unità in virgola mobile (FP1-2), due unità load/store (LD1-2), due unità per i numeri interi (FX1-2), un'unità di predizione per i salti (BR) e una unità di gestione dei registri condizionati (CR). Le unità possono eseguire fino a otto istruzioni per ciclo di clock (escludendo le unità BR e CR).
* Ogni unità in virgola mobile può eseguire una moltiplicazione e un'addizione per ciclo di clock (due operazioni)
* Ogni unità load/store può completare un'operazione per ciclo di clock
* Ogni unita per i numeri interi può eseguire un'operazione per ciclo di clock
La pipeline ha i seguenti stadi:
* Predizione dei salti
* Caricamento istruzioni
* Decodifica e smistamento delle istruzioni
* Unità load/store
** Load Hit Store
** Store Hit Load
** Load Hit Load
* Esecuzione dell'istruzione

## Configurazione Multi-Chip

Non solo il POWER4 fu il primo processore a incorporare due core in un singolo die ma fu anche il primo processore a incorporare più chip in un unico package. Nello specifico esisteva una versione con quattro POWER4 in un unico package.

## Caratteristiche

POWER4 180 nm@CMOS 8S3 SOI :
| Clock GHz | >1.3 | |
| Power | 115 W | 1.5 V @ 1.1 GHz |
| Transistor | 174 milioni |
| Gate L | 90 nm | |
| Gate oxide | 2.3 nm |
| Metal-layer | pitch | thickness |
| M1 | 500 nm | 310 nm |
| M2 | 630 nm | 310 nm |
| M3-M5 | 630 nm | 420 nm |
| M6(MQ) | 1260 nm | 920 nm |
| M7(LM) | 1260 nm | 920 nm |
| Dielectric | ~4.2 | |
| Vdd | 1.6 V | |