home>hardware<softwaremobilehi-figamesnetworkphotoforum

OpenSPARC: il primo processore open source

di Antonio Trapanese
28 Giugno 2006


Pochi giorni fa Sun ha completato il lancio dell'iniziativa OpenSPARC, rilasciando pubblicamente l'intero progetto di un processore SPARC derivato dal recente UltraSPARC T1. Per la prima volta l'open source è anche hardware, ma fino a che punto?

Categorie Articoli
> Prove
> Attualità
> Approfondimenti
> Interviste
Altro su HIRC
> Segnalaci una notizia
> Advertising
> Forum
Ultime dal forum
Visualizza HIRC del
//
Cos'è il progetto di un processore?
Attraverso il sito www.opensparc.net, Sun ha messo a disposizione, oltre a strumenti per la collaborazione e la comunicazione tra sviluppatori, l'intero progetto del processore OpenSPARC... Già, ma cos'è e come è fatto il progetto di un processore?

Il logo del progetto OpenSPARC

Dal punto di vista fisico, un processore può essere visto come un vero e proprio disegno, dove anzichè utilizzare varie tonalità di colore, si utilizzano varie intensità di drogaggio del silicio per realizzare i transistor. Una volta ottenuto lo "strato" di transistor, si procede in modo analogo per realizzare le interconnessioni in metallo. Chiaramente dal punto di vista dell'astrazione di progetto, per realizzare un circuito integrato basterà disegnare "quadratini" in un certo modo (se vogliamo anche molto più semplice rispetto a quello di una automobile).

Vista la complessità dei moderni processori (costituiti da centinaia di milioni di transistor) non è pensabile che essi vengano"disegnati" a mano transistor per transistor (anche se teoricamente possibile); piuttosto essi vengono progettati assemblando vari moduli "descritti" (o meglio, il cui comportamento viene descritto) attraverso un linguaggio formale.

Questo linguaggio è, nel caso di OpenSPARC, il Verilog, del tutto simile ad un normale linguaggio di programmazione, con alcune istruzioni aggiuntive necessarie a specificare "come" il "programma" deve essere implementato in hardware.

In Verilog vengono scritti i singoli moduli (ad esempio addizionatori, registri, decoder, etc.) modellandone il comportamento attraverso espressioni logiche booleane, specificando anche come questi interagiscono con gli altri moduli che costituiscono il processore.

A differenza di un normale linguaggio di programmazione, compilando un codice scritto in Verilog non si ottiene un file eseguibile, ma un file in grafica vettoriale modificabile attraverso appositi tool CAD.

Progetto di una porta logica XOR in tecnologia CMOS; le porte XOR sono i mattoni fondamentali per realizzare gli addizionatori

In genere questi programmi includono già al loro interno i componenti per la compilazione (o meglio per il placement e routing automatico), una volta ottenuto il progetto, è possibile inviarlo alla fabbrica che lo utilizzerà per definire il processo produttivo e soprattutto per incidere le maschere che verranno utilizzate nei vari processi fotolitografici.

Nel corso degli ultimi anni sono stati sviluppati algoritmi estremamente validi per ottimizzare il placement & routing automatico (ad esempio transistor vicini e con contatti in comune possono essere "fusi" insieme venendo realizzati su un'unica striscia di silicio drogato, con enormi vantaggi in termini di spazio e di performance elettriche), tuttavia laddove fosse necessario, il progettista può comunque intervenire per migliorare il design, o risolvere problemi rivelatisi solo dopo la produzione dei primi esemplari in fabbrica.

Simulazione della vista tridimensionale del processo produttivo di una porta XOR, arrestatosi al primo livello di metallizzazione. Nella realtà l'ossido di campo consentirebbe di vedere solo l'ultimo livello di metallizzazione.

I software di CAD oltre a poter compilare le espressioni logiche, includono anche avanzati tool di simulazione e validazione, che permettono di farsi un'idea delle reali prestazioni del circuito prima che questo venga prodotto.

Ovviamente per poter ottenere una simulazione accurata è necessario avere un modello quanto più fedele possibile del processo produttivo; non a caso le principali aziende del settore dei semiconduttori impiegano tantissimi ingegneri e scienziati allo scopo di determinare e gestire le informazioni sul processo produttivo: risolvere i problemi già in fase di simulazione permette di risparmiare enormi quantità di denaro.

< Pagine precedentiPagina correntePagine successive >
Introduzione
Cos'è il progetto di un processore?Avere il progetto è davvero così importante?
Possibili scenari del progetto OpenSPARC
Conclusioni

Vuoi segnalarci una tua notizia? Clicca qui!
Comments
Google
Annunci
Attualità
Fujitsu presenta la soluzione e roadmap Mobile WiMAX System-on-chip
Nuovo masterizzatore DVD esterno Sony DRX-820UL
Nokia 770 Internet Tablet e Google Talk insieme
Core 2 Duo, gioco di parole per i nuovi processori Intel
Recensione Crucial Gizmo! Overdrive 1GB online
LCD con tempo di risposta di 2ms da Acer
ATi ha acquisito la finlandese BitBoys
AMD ritira 3000 CPU Opteron difettose
Intel punta decisa verso i 32 nanometri
Intel vPro: nuova piattaforma per PC aziendali
Prove
Crucial Gizmo! Overdrive 1GB: capacità e prestazioni
Crucial Gizmo!: 1GB per foto, musica e pinguini
Raffreddamento a liquido: quando il gioco si fa duro
Sapphire Radeon X1300: alta definizione per tutti
Enermax Liberty 500W: la libertà fatta alimentatore
Genius Ergo 300: mouse piccolo ma non troppo
Royaltek GPS RBT 2001
Crucial Ballistix Tracer DDR500: semplicemente estreme
HP Business Desktop dx5150: potenza per ufficio
Dal Radeon X600 all'X800: generazioni a confronto in casa Sapphire
Banca dati tutelata ai sensi della legge sul diritto d'autore,vietata la riproduzione anche parziale dei contenuti di questo sitosenza esplicita autorizzazione del webmaster. I contenuti di questo sito non hanno carattere di periodicità e non rappresentano 'prodotto editoriale'. Copyright © 1999-2006 Antonio Trapanese.Tutti i diritti riservati.Tutti i marchi citati in queste pagine sono dei rispettivi proprietari.
Design by Sauro Spagnol.