# Silverthorne (processore)

Silverthorne è un processore Intel per il segmento dei sistemi ultra portatili UMPC e i MID, ed è stato presentato il 2 aprile 2008 come successore della CPU Stealey utilizzando il nuovo nome commerciale Atom.

## Nuova piattaforma per Silverthorne: nasce un Centrino anche per gli UMPC

Silverthorne è il primo processore Intel ad essere stato sviluppato espressamente per l'impiego nei sistemi UMPC e, insieme al chipset Poulsbo, è alla base della piattaforma Menlow. Nel corso del 2007 Intel aveva dichiarato più volte che il settore degli UMPC in futuro sarà sempre più importante e da queste considerazioni è nata l'idea di creare un nome commerciale per queste CPU, che si chiamano appunto Atom. Per lo stesso motivo, e sulla scia del successo del marchio Centrino (originariamente introdotto nel 2003 per i sistemi Notebook) Intel ha deciso di introdurre una variante di Centrino anche per questo tipo di sistemi, che si chiama Centrino Atom.
Il marchio Atom viene utilizzato anche per indicare il progetto Diamondville, ovvero una variante di Silverthorne che viene impiegata nei sistemi mobile e desktop di fascia più bassa (addirittura sotto quella basata sul processore Celeron, in particolare le sue diverse varianti Celeron D, Celeron (serie xxx), Celeron Dual Core e Celeron M) a partire da giugno 2008 in abbinamento, però, ad un chipset derivato dal settore desktop.

## Lo sviluppo di Silverthorne è partito da lontano

Lo sviluppo di Silverthorne, o meglio della sua architettura, era iniziato già nel lontano 2004, quando Intel affidò ad un team di progettisti della propria sede di Austin nel Texas, il compito di studiare un nuovo tipo di core da utilizzare per i processori futuri; l'idea era quella di realizzare un mini-core dal consumo ridotto e dalle prestazioni medie ma che potesse poi venire integrato nelle future CPU (si parla addirittura del 2015) unendolo ad altri mini-core identici in modo da realizzare processori formati da tanti core "semplici" e in grado, complessivamente, di fornire ottime prestazioni.
Apparve subito chiaro che l'architettura di tale mini-core, che venne poi chiamato Bonnell, sarebbe dovuta essere sviluppata da zero, e non poteva riprendere (se non in parte) le caratteristiche delle architetture già sviluppate da Intel per gli altri settori del mercato. Il primo sviluppo del mini-core Bonnell al fine di renderlo una CPU completa, portò poi alla realizzazione di Silverthorne che è in sostanza l'unione di Bonnell con una cache L2 e un bus I/O.

## Caratteristiche tecniche

A maggio 2007 Intel aveva mostrato un wafer da 300 mm contenente 2500 processori Silverthorne costruiti con il processo produttivo a 45 nm (identico a quello utilizzato per gli altri progetti Intel a 45 nm, quindi basato sulla nuova tecnologia "High-K metal-gate CMOS") ma l'azienda non si era sbilanciata a dire di quanti core era composto ciascun die. Considerando l'anno di uscita, si era ipotizzato che Silverthorne avrebbe potuto essere un processore dual core costruito mediante un approccio a Die Monolitico.
Silverthorne è andato a rimpiazzare le CPU "A100" e "A110" dei precedenti UMPC, che erano basate sul processore Stealey a 90 nm e figuravano frequenze di 600 MHz e 800 MHz. Il nuovo processore è in grado di offrire prestazioni paragonabili alla seconda generazione dei processori Pentium M (vale a dire il core Dothan), ma al tempo stesso avere un consumo tra 0,65 W e 2,4 W, contro i 5,5 W del processore Dothan ULV (Ultra Low Voltage).
A differenza del predecessore Stealey che era in pratica una variante del processore mobile, Yonah, Silverthorne è stato progettato da zero con l'intenzione di rimuovere ogni possibile fonte di spreco d'energia; secondo gli ingegneri di Intel infatti, questo era l'unico modo per raggiungere l'obiettivo dei 2 watt di consumo.

### Un processore ancora single core

A fine 2007 era stato annunciato che Silverthorne sarebbe stato composto da 47 milioni di transistor (per la precisione sono 47.212.207) su una superficie di 25 mm², assemblato in package µFCBGA di 13x14x1,6 mm e alloggiato in un socket chiamato Socket 441. Intel ha dichiarato poi che il core elaborativo è composto dal 28% dei transistor, mentre la cache L2 ne occupa il 22%. La restante parte è distribuita come segue: 9% per il BIU, 35% per il FSB IO e 6% per PCL e Fuse.
Se si confrontano il numero di transistor e la dimensione del die di Silverthorne con quella del Core 2 Duo Penryn, ovvero la CPU a 45 nm che Intel propone per il segmento mobile, ci si accorge che si tratta di valori estremamente limitati; nel settore notebook infatti Intel offre una CPU da ben 410 milioni di transistor su una superficie di 107 mm².
Silverthorne è caratterizzato da un'architettura superscalare a 2 pipeline da 16 stadi; l'architettura a 2 pipeline consente l'esecuzione simultanea di due istruzioni per ciclo di clock, rendendo quindi Silverthorne concettualmente molto simile al primo processore superscalare con 2 pipeline progettato da Intel, il Pentium. Tale caratteristica aveva fatto immediatamente ipotizzare che, sebbene dotato di 2 pipeline distinte, Silverthorne sarebbe stato ancora una CPU single core, caratteristica che è stata poi confermata da Intel agli inizi di febbraio 2008; in occasione di quest'ultimo annuncio però, era emerso che in questo nuovo progetto sarebbe risorta la tecnologia Hyper-Threading, originariamente introdotta da Intel nel settore desktop grazie alle CPU Pentium 4 e Pentium D, ma poi abbandonata con il passaggio all'architettura "Core" dei Core 2 Duo in quanto ritenuta poco efficiente se abbinata a tale architettura. Dal punto di vista del sistema operativo, un processore dotato di tecnologia Hyper-Threading viene visto come se fosse un processore dotato del doppio dei core di cui è effettivamente dotato; nel caso di Silverthorne che è un processore single core, vengono visti 2 core. Nello specifico si tratta di 2 core "logici" e non di 2 core "fisici", tipici di un processore effettivamente dual core, e ovviamente non possono offrire le stesse prestazioni, ma sotto il profilo del miglioramento del multitasking, ovvero dell'esecuzione simultanea di più applicazioni, la presenza della tecnologia Hyper-Threading mostra comunque i propri punti di forza.
Inizialmente non era chiaro se la tecnologia Hyper-Threading e la presenza delle 2 pipeline distinte fossero in realtà un modo diverso di indicare la stessa caratteristica oppure si trattasse di 2 peculiarità distinte. Se così fosse stato, un processore Silverthorne avrebbe potuto essere in grado di eseguire 4 istruzioni contemporaneamente, ma successivamente si è saputo che tale numero è limitato a 2, e di conseguenza è molto probabile che l'ipotesi che le 2 caratteristiche fossero in realtà frutto della medesima scelta progettuale, sia quella corretta. Intel ha dichiarato di aver inserito la tecnologia Hyper-Threading in Silverthorne in quanto essa è un metodo molto economico per incrementare le "prestazioni per watt". Dal punto di vista delle pure prestazioni, il produttore ha assicurato un'ottima scalabilità del processore (che dovrebbe avere una vita di almeno 6 anni) senza però specificare il massimo clock raggiungibile. Per il momento si sa che un modello da 1,2 GHz è in grado di funzionare a pieno regime senza dissipatore rimanendo ad una temperatura di circa 42°, ma sembra che esso potrebbe sopportare temperature d'esercizio fino a 90°.
Nelle versioni iniziali, il clock varia tra gli 800 MHz (consumo di 0,65 W) e 1,86 GHz (consumo di 2,4 W) mentre, per quanto riguarda la cache, si tratta di 56 KB per quella L1 (divisa in 2 blocchi da 32 KB e 24 KB, rispettivamente per le istruzioni e per i dati) e di 512 KB per quella L2. Infine per quanto riguarda il bus, Intel ha fornito un'indicazione leggermente diversa dal solito, indicandolo come un BUS da 533MT/s (Mega Transfer al secondo).

### Cache L1 asimmetrica

La cache L1 di Silverthorne è, come detto, formata da 2 blocchi da 32 KB (per le istruzioni) e 24 KB (per i dati). È evidente come si tratti di una cache L1 di tipo "asimmetrico" che è giustificato dalla struttura stessa di tale cache; a differenza dei tradizionali 6 transistor per ogni bit utilizzati per le comuni cache dei processori, quella integrata in Silverthorne è costituita da 8 transistor per ogni bit. Intel ha deciso di utilizzare questo particolare approccio in quanto consente di ridurre la tensione applicata alla cache, e di conseguenza ridurre ulteriormente i consumi; sembra però che tale scelta progettuale sia stata presa in un momento in cui il processo di sviluppo della nuova CPU era già in fase piuttosto avanzata, ed è stato quindi necessario ridurre la dimensione di tale cache per evitare di dover riprogettare anche l'intera organizzazione interna del chip, per non incontrare problemi con il package. È chiaro infatti, che se cambia la dimensione del die possono nascere problemi di collegamento tra tale die e il package stesso del processore, che rischierebbero di richiedere ulteriori riproggettazioni.

### Altre caratteristiche dell'architettura

Silverthorne integra al suo interno 2 ALU (unità capaci di effettuare calcoli interi), che vengono utilizzate rispettivamente per gestire i salti nella pipeline e il passaggio tra le applicazioni in situazioni di multitasking, e 2 FPU (unità dedicate al calcolo in virgola mobile, molto importanti soprattutto in ambito videoludico); le 2 FPU non sono identiche tra loro, infatti la prima FPU si limita a operazioni di addizione, mentre la seconda gestisce le operazioni SIMD e quelle di moltiplicazione e divisione.

### Tecnologie implementate

A parte la già citata tecnologia Hyper-Threading, sono state integrate anche tutte le altre tecnologie già presenti da tempo nei progetti Intel, tra cui le istruzioni MMX, SSE, SSE2, SSE3 e le altre tecnologie accessorie utili in progetti come questo come XD-bit e soprattutto SpeedStep per la riduzione del consumo, grazie anche all'introduzione anche in questo processore dell'ultima evoluzione di questa tecnologia, introdotta nelle CPU Core 2 Duo di seconda generazione, che hanno aggiunto lo stato a bassissimo consumo (denominato C6). Il consumo massimo si attesta sui 2 W circa, grazie anche all'adozione di una cache L2 dinamica, unità specializzate ed efficienti e un sistema di gestione energetica molto calibrato. Gli altri 5 stadi energetici prevedono diversi interventi per contenere il consumo, a partire dalla riduzione del voltaggio allo spegnimento del core, PLL e cache L1 e L2. Nello stato C6, a più basso consumo, in cui il processore passa quando è inattivo, il modello Z500 consuma solo 80 milliwatt (mentre tutte le altre versioni si attestano sui 100 milliwatt), ma siccome in genere i dispositivi nei quali viene integrato Silverthorne rimangono inattivi per la maggior parte del tempo, in uno scenario d'uso comune, Intel ha stimato un consumo medio per tutti i processori attorno ai 160 milliwatt (Z500) o 220 milliwatt (per gli altri modelli).
Sebbene la sua utilità non sembri particolarmente utile in sistemi UMPC, è stata integrata anche la tecnologia di virtualizzazione Vanderpool. Le estensioni EM64T per l'esecuzione di codice a 64 bit invece non sono state integrate dato che la loro reale utilità in un sistema ultra portatile è praticamente nulla, ma esse verranno integrate nel core Diamondville pensato per i portatili ultra economici e commercializzato anch'esso con il nome di Atom.
Con il rinnovo della gamma avvenuto ad aprile 2009 è stato presentato anche un modello (Atom Z515) dotato della nuova tecnologia "Intel Burst Performance Technology" (Intel BPT) che permette al processore, che nativamente funzionerebbe a 800 MHz di alzare il suo clock fino a 1,2 GHz; sembra che tale tecnologia agisca sulla frequenza del BUS invece che sul moltiplicatore.

## Considerazioni sull'efficienza

Secondo Intel, Silverthorne è il processore più efficiente rispetto al suo costo dai tempi del 286, ma rivelarsi ben 100 volte più veloce; inoltre il suo costo produttivo si aggira sui 6/8 $ a esemplare. Si stima che le richieste energetiche siano 10 volte inferiori rispetto al suo predecessore (Intel dichiara un consumo massimo di circa 2,4 W e uno medio inferiore a 1 W) in uno spazio pari a circa 1/5 di quello occupato da una CPU convenzionale. L'importanza di questo progetto sarebbe paragonabile (a detta di Intel) solamente all'8088 o allo stesso Pentium, grazie anche al costo produttivo che, a detta dell'azienda, è il più basso degli ultimi 20 anni.

### Il "giallo" dell'architettura In-Order

Ha destato una certa sorpresa apprendere che l'architettura di Silverthorne sarebbe stata del tipo In-order, e non la ormai tradizionale Out-of-order che consente invece di eseguire le singole istruzioni senza rispettare necessariamente l'ordine imposto dal programmatore; un processore Out-of-order in sostanza analizza il codice che dovrà eseguire, individua le istruzioni che non sono vincolate da altre istruzioni e le esegue in parallelo con il codice principale. L'ultimo processore In-Order prodotto da Intel era stato il Pentium nell'ormai lontano 1993, mentre è dalla presentazione del Pentium Pro nel 1995 che tutti i processori Intel sono del tipo Out-of-order. La scelta di un'architettura che sembra ormai superata non è stata certamente casuale, ma confrontando l'architettura di Silverthorne con quella del suo diretto concorrente sviluppato da VIA, il VIA Nano (che è dotato della tradizionale architettura Out-of-order), non si può che rimanere scettici verso una scelta che, almeno sulla carta, penalizza non poco le possibili prestazioni. Secondo Intel l'utilizzo di un'architettura Out-of-order avrebbe richiesto un elevato numero di transistor con il conseguente aumento dei consumi. Il fatto di essere In-order, costringe il processore ad elaborare le istruzioni in maniera sequenziale andando di conseguenza a influenzare negativamente il numero Instructions per clock (IPC), ovvero il numero di "istruzioni per ciclo" che è in grado di eseguire.

### Silverthorne è ottimizzato soprattutto per i calcoli "base"

Il numero di cicli necessari per eseguire istruzioni è molto variabile: alcune istruzioni sono eseguite in maniera molto veloce, mentre altre sono molto lente. Le operazioni di "mov" (spostamento di un dato da un registro all'altro) e di "add" (somma di 2 dati), per esempio, sono eseguite in un solo ciclo macchina, al pari di quanto avviene nei più potenti processori Core 2 Duo, mentre per quanto riguarda l'operazione "imul" (moltiplicazione di 2 dati) Silverthorne impiega 5 cicli, contro i 3 richiesti da un Core 2 Duo. Infine un'operazione di divisione in virgola mobile a 32 bit viene realizzata in bene 31 cicli rispetto ai 17 di un Core 2 Duo. Tali risultati hanno quindi evidenziato che l'architettura di Silverthorne è ottimizzata per eseguire calcoli "base" molto velocemente, mentre con calcoli più complessi le prestazioni calano rapidamente.

### 2 modalità di funzionamento per il BUS

Il BUS utilizzato da Silverthorne è l'ormai classico quad pumped introdotto ai tempi del primo Pentium 4 Willamette e utilizzato poi da Intel per tutti i successivi processori, fino a quelli basati sull'imminente architettura Nehalem che abbandoneranno il tradizionale BUS parallelo per passare al nuovo BUS seriale Intel QuickPath Interconnect, analogo all'HyperTransport di AMD.
Tale tipo di BUS ha comunque subito una revisione in Silverthorne, potendo funzionare sia nella classica modalità "GTL", sia nella nuova "CMOS" che è quella normalmente utilizzata. La modalità GTL consentirebbe al processore di arrivare fino a 1600 MHz di BUS, ma farebbe anche aumentare notevolmente i consumi, mentre la modalità CMOS (comunemente utilizzata in tale CPU) permette di ridurre la tensione del BUS. Tecnicamente, GTL usa resistori per migliorare la qualità del segnale, che sono in realtà necessari solo alle alte frequenze. Dato che Silverthorne adotta un BUS limitato a 533 MHz, tali resistori diventano superflui e di conseguenza il processore utilizza il BUS in modalità CMOS, disattivando i resistori e dimezzando la tensione operativa. Al momento, il chipset Poulsbo abbinato ai processori Silverthorne nella piattaforma Menlow è l'unico chipset Intel a offrire supporto per il BUS in modalità CMOS.

## Benchmark presentati da Intel

Al momento della presentazione di Silverthorne Intel ha reso pubblici alcuni benchmark per mostrare le prestazioni dei vari modelli a confronto con altre CPU "più conosciute". Il test Spec int2000 (un benchmark matematico) ha prodotto i seguenti risultati:
* Atom Z500 - 319 punti
* Atom Z510 - 439 punti
* Atom Z530 - 635 punti
* Core 2 Duo E6300 (1,86 GHz) - 1900 punti
I punteggi sopracitati non comprendono l'utilizzo della tecnologia Hyper-Threading che secondo Intel consentirebbe prestazioni maggiorate del 50%.
Con il test di calcoli in floating point, i risultati sono stati i seguenti:
* Atom Z500 - 294 punti
* Atom Z510 - 402 punti
* Atom Z530 - 582 punti
* Pentium 4 630 (3 GHz) - 1800 punti
Le prestazioni complessive non sono maggiori del predecessore Stealey, ma Silverthorne è in grado di raggiungere le stesse con un consumo decisamente più contenuto, circa 8 volte. Secondo Intel nel confronto tra lo Z500 e un A110 (basato su core Stealey), il modello Silverthorne raggiunge il 90% delle prestazioni in 3D Mark 2005, il 70% in ambito Office e il 98% in ambito videoludico.

## Prezzi delle varie versioni di Silverthorne

Al momento della presentazione questi erano i prezzi delle 5 versioni arrivate sul mercato il 2 aprile 2008:
* Atom Z500 - 45 $
* Atom Z510 - 45 $
* Atom Z520 - 65 $
* Atom Z530 - 95 $
* Atom Z540 - 160 $
Nei primi giorni di novembre 2008 sono apparse in rete alcune informazioni che annunciavano l'intenzione da parte di Intel di aggiornare nei primi mesi del 2009 la piattaforma Menlow, grazie ad alcune nuove versioni del processore Atom Silverthorne. La nuova piattaforma, che non è una vera e propria nuova generazione ma solo un aggiornamento, ha preso il nome di "Menlow Refresh", riprendendo una nomenclatura che Intel ha già utilizzato diverse volte nel corso degli anni in riferimento agli aggiornamenti minori delle piattaforme Centrino.
Di seguito vengono riportati i modelli già presentati:
* Atom Z550
* Atom Z515
Lo Z550 viene abbinato al modello UP15W del chipset Poulsbo, in grado di supportare fino a 2 GB di RAM, mentre lo Z515 al UL11L che è una versione a voltaggio ridotto e supporta fino a 512 MB di RAM.

### Modelli ancora attesi sul mercato

Dovrebbe arrivare anche il seguente modello sempre nell'ottica del rinnovamento della piattaforma e abbinato allo stesso modello di chipset pensato per lo Z550:
* Atom Z534

## Modelli arrivati sul mercato

La tabella seguente mostra i modelli di Atom, basati su core Silverthorne, arrivati sul mercato. Molti di questi condividono caratteristiche comuni pur essendo basati su diversi core; per questo motivo, allo scopo di rendere maggiormente evidente tali affinità e "alleggerire" la visualizzazione alcune colonne mostrano un valore comune a più righe. Di seguito anche una legenda dei termini (alcuni abbreviati) usati per l'intestazione delle colonne:
* Nome Commerciale: si intende il nome con cui è stato immesso in commercio quel particolare esemplare.
* Data: si intende la data di immissione sul mercato di quel particolare esemplare
* Socket: lo zoccolo della scheda madre in cui viene inserito il processore. In questo caso il numero rappresenta oltre al nome anche il numero dei pin di contatto.
* N°C.: sta per "N°Core" e si intende il numero di core montati sul package: 1 se "single core" o 2 se "dual core".
* Clock: la frequenza di funzionamento del processore.
* Molt.: sta per "Moltiplicatore" ovvero il fattore di moltiplicazione per il quale bisogna moltiplicare la frequenza di bus per ottenere la frequenza del processore.
* Pr.Prod.: sta per "Processo produttivo" e indica tipicamente la dimensione dei gate dei transistor (180 nm, 130 nm, 90 nm) e il numero di transistor integrati nel processore espresso in milioni.
* Voltag.: sta per "voltaggio" e indica la tensione di alimentazione del processore.
* Watt: si intende il consumo massimo di quel particolare esemplare.
* Bus: frequenza del bus di sistema.
* cache: dimensione delle cache di 1º, 2º e 3º livello.
* XD: sta per "XD-bit" e indica l'implementazione della tecnologia di sicurezza che evita l'esecuzione di codice malevolo sul computer.
* 64: sta per "EM64T" ovvero l'implementazione della tecnologia a 64 bit di Intel.
* HT: sta per "Hyper-Threading" e indica l'implementazione della esclusiva tecnologia Intel che consente al sistema operativo di vedere 2 core logici.
* ST: sta per "SpeedStep Technology" ovvero la tecnologia di risparmio energetico sviluppata da Intel e inserita negli ultimi Pentium 4 Prescott serie 6xx per contenere il consumo massimo.
* VT: sta per "Vanderpool Technology", la tecnologia di virtualizzazione che rende possibile l'esecuzione simultanea di più sistemi operativi differenti contemporaneamente.
| Nome Commerciale | Data | Socket | N°C. | Clock | Molt. | Pr.Prod. | Voltag. | Watt | Bus | cache | XD | 64 | HT | ST | VT |
| Atom Z500 | 2/apr/2008 | 441 | 1 | 800 MHz | 8x | 45 nm 47 mil. | 1,2 V | 0,65 W | 400 MHz | L1=56KB L2=512 KB | Sì | No | No | Sì | Sì |
| Atom Z510 | 2/apr/2008 | 441 | 1 | 1,1 GHz | 11x | 45 nm 47 mil. | 1,2 V | 2 W | 400 MHz | L1=56KB L2=512 KB | Sì | No | No | Sì | Sì |
| Atom Z520 | 2/apr/2008 | 441 | 1 | 1,33 GHz | 10x | 45 nm 47 mil. | 1,2 V | 2 W | 533 MHz | L1=56KB L2=512 KB | Sì | No | Sì | Sì | Sì |
| Atom Z530 | 2/apr/2008 | 441 | 1 | 1,6 GHz | 12x | 45 nm 47 mil. | 1,2 V | 2 W | 533 MHz | L1=56KB L2=512 KB | Sì | No | Sì | Sì | Sì |
| Atom Z540 | 2/apr/2008 | 441 | 1 | 1,86 GHz | 14x | 45 nm 47 mil. | 1,2 V | 2,4 W | 533 MHz | L1=56KB L2=512 KB | Sì | No | Sì | Sì | Sì |
| Atom Z550 | 8/apr/2009 | 441 | 1 | 2 GHz | 15x | 45 nm 47 mil. | 1,2 V | 3 W | 533 MHz | L1=56KB L2=512 KB | Sì | No | Sì | Sì | Sì |
| Atom Z515 | 8/apr/2009 | 441 | 1 | 800 MHz 1,2 GHz | 8x | 45 nm 47 mil. | 1,2 V | 0,65 W 1,4 W | 400 MHz | L1=56KB L2=512 KB | Sì | No | No | Sì | Sì |
Nota: la tabella soprastante è un estratto di quella completa contenuta nella pagina dell'Intel Atom.

## Il successore

Intel non ha ancora rilasciato notizie ufficiali riguardo al successore di Silverthorne tuttavia, dato che è stata comunque annunciata la piattaforma Moorestown che andrà a sostituire Menlow (che sarà basata, come detto sopra, proprio su Silverthorne), è probabile che il suo successore sia proprio la CPU alla base di Moorestown. A questo proposito non esistono ancora certezze, ma è possibile che tale CPU possa essere quella conosciuta come Lincroft.