Prof.Ing.S.Cavalieri1 Universit degli Studi di Catania Facolt
di Ingegneria Architettura del Calcolatore
Slide 2
Prof.Ing.S.Cavalieri2 Indice Evoluzione del Computer Il modello
di Von Neumann Descrizione dell'Architettura da Studiare Circuiti
di Temporizzazioni (Clock) Memorie RAM, ROM, Cache Unit centrale di
processo (CPU) Direct Memory Access (DMA) Circuiti di Interrupt
Chipset BIOS Bus di comunicazione Controllore di periferiche
(Controller) Periferiche e Memorie di Massa
Slide 3
Prof.Ing.S.Cavalieri3 Evoluzione: tecnologia Sistemi Meccanici
Sistemi Meccanici/Elettrici Sistemi Elettronici basati su Valvole
Sistemi Elettronici basati su Transistor Sistemi Elettronici basati
su Circuiti Integrati Sistemi Elettronici basati su
Microprocessori
Slide 4
Prof.Ing.S.Cavalieri4 Evoluzione: tipi di calcolatori 1950
Mainframe locale: batch (prima), time sharing (dopo) 1960 Mainframe
remoto: linee di telecomunicazioni. 1970 Mini Computers: ambienti
meno restrittivi, costi accessibili, time sharing, Unix, Linguaggio
C 1980 Personal Computers: uso "domestico", applicativi per compiti
comuni (es.videoscrittura). 1990 PC connessi in Reti di
Calcolatori: PC con capacit elaborative ed interfacce ad alte
prestazioni, LAN, Internet. 2000 Internet: reti a larga banda
Futuro Prossimo - Griglie Computazionali
Slide 5
Prof.Ing.S.Cavalieri5 Il modello di Von Neumann CPU INTERFACCIA
I/O PERIFERICHE MEMORIA CENTRALE
Slide 6
Prof.Ing.S.Cavalieri6 Architettura Studiata RAM ROM CPU Bus di
controllo Bus di I/O Bus di dati Bus di indirizzi Clock Interrupt
BIOS DMA Controller dischi, CD-ROM,etc. Connettori Periferiche
I/O
Slide 7
Prof.Ing.S.Cavalieri7 Circuiti di Temporizzazione (Clock) tempo
T Il megahertz (MHz) l'unit di misura della frequenza alla quale il
processore funziona; indica quanti milioni di oscillazioni al
secondo (1 oscillazione al secondo = 1 hertz [Hz]) sono generate
dal clock. f=1/T Hz.
Slide 8
Prof.Ing.S.Cavalieri8 Circuiti di Temporizzazione (Clock) In
generale il clock prodotto da un apposito circuito integrato, la
cui oscillazione controllata da un cristallo di quarzo. Il
cristallo di quarzo garantisce una elevata stabilita nel tempo e
con il variare della temperatura ed una grande precisione nel
valore della frequenza prodotta, quanto meno possibile influenzato
dalla temperatura e dall' invecchiamento. In generale il quarzo di
partenza il 14.318 MHz Scelta legata alla diffusione e
economicit
Slide 9
Prof.Ing.S.Cavalieri9 Circuiti di Temporizzazione (Clock)
Slide 10
Prof.Ing.S.Cavalieri10 Circuiti di Temporizzazione (Clock)
Partendo dal quarzo a 14.318MHz, vengono generate frequenze pi
elevate (50, 60, 66, 100MHz). Ogni area del PC che contiene un
processore o un microcontrollore, necessita di un clock, che pu
essere generato in loco o dipendere dal clock principale. Gi a
partire dalle architetture basate sulla CPU 80486, diventato comune
avere per il processore un clock pi elevato di quello generale del
sistema.
Slide 11
Prof.Ing.S.Cavalieri11 Memorie Interne RAM, ROM e Cache Misura
della Memoria Classificazione della Memoria: Interna ed Esterna
Memoria Interna: Caratteristiche Generali RAM Statica RAM Dinamica
ROM, PROM, EPROM, EEPROM, Flash Memory Memoria Cache
Slide 12
Prof.Ing.S.Cavalieri12 Misura della Memoria Informazione di
base = bit Raggruppamenti utilizzati: 1 byte = 8 bit 1 word = N
byte Multipli (bit/byte) K (Kilo) = 2 10 (=1024) circa 10 3 M
(Mega) = 2 20 (=1024*1024=1.048.576) circa 10 6 G (Giga) = 2 30
circa 10 9 T (Tera) = 2 40 circa 10 12 P (Peta) = 2 50 circa 10
15
Slide 13
Prof.Ing.S.Cavalieri13 Alcuni Valori da Ricordare 2 4 = 16 2 8
= 256 2 16 = 65536 = 64 K (65536/1024)
Slide 14
Prof.Ing.S.Cavalieri14 Memoria Interna o Centrale memorizza
programmi e dati su cui lavora la CPU a cui collegata tramite il
bus principale: si accede al singolo bit/byte/word tempi di accesso
bassi (
Slide 15
Prof.Ing.S.Cavalieri15 Memoria Esterna o di Massa memorizza
dati e programmi sotto forma di file. Per lelaborazione, si devono
trasferire programmi e dati in memoria centrale: Si accede a
blocchi (cluster/settori) Non possible leggere/scrivere singoli
bit/byte tempi di accesso elevati (msec) capacit elevate
(decine/centinaia di Gbytes) Pu essere: Memoria di Massa on-line,
normalmente realizzata con dischi magnetici fissi Memoria di Massa
off-line, normalmente realizzata con supporti
(magnetici/ottici/elettronici) rimovibili
Slide 16
Prof.Ing.S.Cavalieri16 Memoria Interna: Caratteristiche
Generali 1 bit bus dei dati bus degli indirizzi n fili bus di
controllo read/write (strobe) 0 1 m-1 2
Slide 17
Prof.Ing.S.Cavalieri17 Indirizzi e valori: Con n bit di
indirizzo si possono selezionare 2 n caselle (m=2 n ). Strobe: sono
segnali generalmente impulsivi che vengono inviati dopo il
posizionamento dellindirizzo per discriminare tra operazione di
letture e scrittura Memoria Interna: Caratteristiche Generali
Slide 18
Prof.Ing.S.Cavalieri18 Tempi di servizio: accesso, ciclo
(misurati in clock). Accesso. E' il tempo necessario affinch la
memoria ponga in uscita il valore richiesto (o possa registrare il
valore in ingresso), dopo aver posizionato l'indirizzo e lo strobe.
Ciclo. E' il tempo minimo che deve intercorrere tra due
posizionamenti validi dellindirizzo e dello strobe. Modificabilit:
Memoria a Sola Lettura/Riscrivibile. Qualsiasi memoria deve essere
scritta almeno una volta. Le memorie che non possono essere
riscritte si dicono a sola lettura; altrimenti sono riscrivibili.
Memoria Interna: Caratteristiche Generali
Slide 19
Prof.Ing.S.Cavalieri19 Persistenza: permanenti/volatili. Sono
permanenti le memorie che mantengono i dati senza bisogno di
alimentazione elettrica; altrimenti si dicono volatili.
Accessibilit: casuale /sequenziale. Se non esiste alcun vincolo
sulla sequenza degli indirizzamenti effettuati, si parla di memoria
ad accesso casuale; quando invece il successivo indirizzo lattuale
incrementato di uno si parla di memorie ad accesso sequenziale.
Memoria Interna: Caratteristiche Generali
Slide 20
Prof.Ing.S.Cavalieri20 bus dei dati bus degli indirizzi n fili
bus di controllo read/write 1 bit Memoria Interna: Caratteristiche
Generali
Slide 21
Prof.Ing.S.Cavalieri21 Possiamo identificare diversi livelli
funzionali di memoria: Random Access Memory (RAM) Read Only Memory
(ROM) Memoria Cache Memoria Interna: Caratteristiche Generali
Slide 22
Prof.Ing.S.Cavalieri22 RAM - Random Access Memory Il termine
RAM deriva da Random Access Memory Memoria Volatile oLa mancanza di
tensione provoca la perdita di tutte le informazioni contenute. oIn
presenza di tensione, ciascuna informazione memorizzata rimane fino
alla successiva scrittura. Memoria ad accesso casuale Attualmente
assumono valori tipici di centinaia/migliaia di MBytes.
Slide 23
Prof.Ing.S.Cavalieri23 RAM - Random Access Memory La RAM
vengono utilizzate per i seguenti scopi: memorizzare il Sistema
Operativo (ad esempio Windows). memorizzare i programmi utenti
prima della loro esecuzione. memorizzare i dati utenti provenienti
dalle periferiche o quelli intermedi. La RAM pu essere realizzata
in differenti modi, ma quella pi comune : RAM dinamica (DRAM)
Slide 24
Prof.Ing.S.Cavalieri24 RAM DINAMICHE (DRAM) La DRAM usa delle
capacit (condensatore) interne per memorizzare i dati. Le capacit
perdono la loro carica dopo un certo intervallo di tempo. Queste
capacit necessitano di un costante rinfresco per mantenere
inalterata l'informazione memorizzata. Il risultato finale che tra
due accessi consecutivi alla memoria, una carica elettrica viene
mandata a rinfrescare la capacit del chip di memoria affinch il
dato venga mantenuto nello stato logico corretto. Durante il
rinfresco della memoria non possibile accedere ad essa,
rallentando, dunque, le sue prestazioni in termini di accessi in
lettura/scrittura.
Slide 25
Prof.Ing.S.Cavalieri25 Utilizzano un condensatore per
memorizzare 1 Bit Necessitano di un circuito di Refresh Consumano
poco Sono abbastanza veloci (da 10 a 70 ns) Tipi di DRAM obsolete:
FP DRAM (fast page) EDRAM (DRAM Evoluta) EDO RAM (extended data
output RAM). RAM DINAMICHE (DRAM)
Slide 26
Prof.Ing.S.Cavalieri26 SDRAM. Quando sono apparsi i Bus con
clock a 100 MHZ, si sono affermate le memorie dinamiche di tipo
sincrono SDRAM. La Intel ha definito le specifiche PC100 (PC 133).
RAM BUS (o RDRAM) hanno un canale da 16 bit a 800 Mhz Le DDR
(double data rate) sono un tipo di SDRAM che lavorano sui due
fronti del clock. Sono chiamate: DDR 300 (riferendosi al doppio del
clock effettivo, 150 MHz) PC 2400 (riferendosi alla banda 8 byte *
2 * 150 MHz) o PC 2100 (8*2*133 Mhz) RAM DINAMICHE (DRAM)
Slide 27
Prof.Ing.S.Cavalieri27 Attualmente esistono le DDR-II Sono
caratterizzate da pi elevate velocit di clock rispetto a DDR (circa
il doppio), che a sua volta raddoppi la velocit della SDRAM. La
maggiore velocit legata alla presenza di buffer di I/O con clock
doppio del bus interno rispetto quello di funzionamento di ogni
cella di memoria Si raddoppia il numero di bit letti ad ogni ciclo
ed inviati al bus interno Esempi di Chip DDR2-400: chip di memoria
con frequenza di 100 MHz, buffer di I/O con frequenza di 200 MHz.
DDR2-533: frequenza di 133 MHz, buffer di I/O a 266 MHz. DDR2-667:
frequenza di 166 MHz, buffer di I/O a 333 MHz. DDR2-800: frequenza
di 200 MHz, buffer di I/O a 400 MHz. DDR2-1066: frequenza di 266
MHz, buffer di I/O a 533 MHz. RAM DINAMICHE (DRAM)
Slide 28
Prof.Ing.S.Cavalieri28 SIMM (30 pin) single in line module;
hanno una doppia fila di contatti ma connessi a coppie, quindi come
se avessero la met dei contatti attivi; ogni modulo ha parallelismo
1 byte (un 486 usa 4 banchi) SIMM (72 PIN); i pin sono sempre
organizzati a coppie; ogni modulo supporta 4 byte (il 486 usa un
solo banco); montano le EDO RAM DIMM (168 PIN) Dual Inline Memory
Module; tutti i pin sono indipendenti; gestisce 8 byte (un P6 usa
un banco); Montano le SDRAM DIMM (184 PIN); montano le DDR; sono
uguali come geometria alle DIMM 168 PIN, ma si differenziano per il
fatto di avere una sola tacca DIMM con dissipatore per RDRAM RAM
DINAMICHE (DRAM) Sono montate su moduli (schedine):
Slide 29
Prof.Ing.S.Cavalieri29 RAM DINAMICHE (DRAM) DIMM per DDR2. I
moduli di memoria DDR2 hanno 240 Pin, e sono quindi incompatibili
con quelli DDR che hanno 184 pin. PC2-3200: modulo di memoria con
frequenza di clock di 200 MHz, transfer rate di 400 MT/s, chip
DDR2-400, e 3,200 GB/s per canale. PC2-4200: modulo di memoria con
frequenza di clock di 266 MHz, transfer rate di 533 MT/s, chip
DDR2-533, e 4,267 GB/s per canale. PC2-5300: modulo di memoria con
frequenza di clock di 333 MHz, transfer rate di 667 MT/s, chip
DDR2-667, e 5,333 GB/s per canale. PC2-6400: modulo di memoria con
frequenza di clock di 400 MHz, transfer rate di 800 MT/s, chip
DDR2-800, e 6,400 GB/s per canale. PC2-8500: modulo di memoria con
frequenza di clock di 533 MHz, transfer rate di 1066 MT/s, chip
DDR2-1066, e 8,533 GB/s per canale.
Slide 30
Prof.Ing.S.Cavalieri30 Parametri Prestazionali Esistono alcuni
parametri di funzionamento, tipicamente raccolti sotto il nome di
timings Alcune volte possibile intervenire manualmente a variare i
timings, cos da ottenere prestazioni superiori Tra i vari timings:
CAS (Column Address Strobe) Latency (CL): indica il numero di
periodi di clock richiesti dalla memoria per processare una
richiesta. A valori inferiori della latenza corrispondono
prestazioni superiori.
Slide 31
Prof.Ing.S.Cavalieri31 Soluzioni Innovative per Incrementare le
Prestazioni Velocit dei processori sempre pi elevata, crea dei
colli di bottiglia sullaccesso in memoria Da un p di anni stata
sviluppata la tecnologia dual-channel La quantit di dati
traferibile dalla CPU alla RAM viene duplicata, utilizzando due bus
di dati a 64 bits Sia Intel sia AMD la usano, con differenti
implementazioni Gli slot di memoria sulla scheda madre si
riconoscono perch colorati
Slide 32
Prof.Ing.S.Cavalieri32 ROM - Read Only Memory Il termine ROM
significa Read Only Memory. Indicava originariamente il fatto che
l'unico tipo di accesso in queste memorie la lettura (ovviamente la
prima scrittura deve essere possibile). Lattuale ROM : Memoria
Permanente oNella ROM l'informazione in essa contenuta rimane anche
quando manca la corrente. oNella ROM l'informazione rimane fino
alla successiva scrittura. Memoria ad accesso casuale
Slide 33
Prof.Ing.S.Cavalieri33 ROM - Read Only Memory Le ROM vengono in
genere utilizzate per memorizzare programmi e dati di
configurazione essenziali per il funzionamento del computer che
devono essere memorizzati anche quando il computer spento. Bios
Esistono differenti tipi di ROM: ROM non programmabili PROM. ROM
Programmabili EPROM. Erasable Programmable ROM EEPROM. Electrical
Erasable Programmable ROM Flash Memory
Slide 34
Prof.Ing.S.Cavalieri34 ROM: sono delle reti combinatorie gi
predisposte in fabbrica (tramite il processo di mascheratura).
Hanno alte capacit bassi costi. PROM: sono delle reti combinatorie
programmabili con un dispositivo da laboratorio. Molto utili per
prototipi, possono essere programmate una sola volta. EPROM: sono
programmabili con un dispositivo da laboratorio. Hanno una finestra
di quarzo tramite cui possibile esporre il chip ai raggi U.V. e
cancellare il contenuto. ROM - Read Only Memory
Slide 35
Prof.Ing.S.Cavalieri35 EEPROM: come le EPROM, ma cancellabili
con particolari cicli di segnalazione senza togliere dalla piastra
il chip. I tempi di cancellazione sono di norma molto pi lunghi di
quelli di lettura. Flash Memory: come le EPROM, ma la scrittura
avviene per blocchi e non per byte, molto velocemente. Non pu
essere usata come la RAM per via della scrittura a blocchi Si
chiama flash perch il microchip organizzato in sezioni di celle
cancellabili in un colpo solo (flash). ROM - Read Only Memory
Slide 36
Prof.Ing.S.Cavalieri36 Memoria Cache La memoria cache
generalmente gestita direttamente dalla CPU tramite bus privati. Lo
scopo della memoria cache quello di reperire informazioni
utilizzate recentemente senza doverle nuovamente prelevare dalla
RAM. L'utilizzo della memoria cache rispetto la RAM pi vantaggioso
perch: il bus di indirizzi e dati locale e non deve essere
utilizzato quello comune, che potrebbe essere occupato da altri
dispositivi (ad esempio DMA), ritardando l'accesso alla RAM il
tempo di accesso alla cache per lettura/scrittura molto pi basso di
quello della RAM (generalmente il tempo di accesso medio alla RAM
50-70ns, mentre si pu arrivare a valori inferiori a 10ns per
accedere alla memoria cache).
Slide 37
Prof.Ing.S.Cavalieri37 Memoria Cache L'uso della memoria cache
prevede, per, opportuni accorgimenti dovuti al fatto che la
dimensione di una cache notevolmente inferiore a quella di una RAM
la dimensione tipica della RAM di centinaia di MBytes, mentre la
cache ha dimensioni dell'ordine di alcune centinaia di KBytes.
impensabile poter memorizzare nella cache tutti i dati letti dalla
RAM, ma sar necessario sovrascrivere alcuni dati contenuti nella
cache, per far spazio a nuovi dati da memorizzare.
Slide 38
Prof.Ing.S.Cavalieri38 Memoria Cache In particolare, si adotta
la politica di sovrascrivere i dati pi vecchi, ossia quelli non
utilizzati da pi tempo. La gestione della cache, pu essere
formalizzata nella seguente maniera: la CPU necessita di un
particolare dato la CPU ricerca il dato nella cache se lo trova, lo
legge e lo utilizza se non lo trova, lo reperisce nella RAM e lo
trasferisce nella cache nella locazione pi "vecchia", ossia da pi
tempo non utilizzata.
Slide 39
Prof.Ing.S.Cavalieri39 Attualmente le memorie cache hanno
dimensioni medie di 256Kbyte, con picchi di 512Kbyte fino ad
arrivare a valori di alcuni Mbytes. Potrebbe sembrare che quanto pi
grande la cache, tanto pi conveniente sia per le prestazioni della
CPU. Questa affermazione vera relativamente, in quanto, aumentando
la cache oltre certi limiti, il rapporto prezzo/prestazioni diventa
non conveniente. Memoria Cache
Slide 40
Prof.Ing.S.Cavalieri40 Per aumentare ulteriormente le
prestazioni, si pu: Frammentare la cache Trasferire una parte della
cache all'interno della CPU Esistono, dunque, Cache Multi-livello:
L1, di dimensioni minori (8KB...64KB): in genere contenuta
all'interno del Core del processore e opera alla frequenza di clock
CPU; L2 (nelle CPU correnti compresa tra 128KB e 1MB): a seconda
del tipo di architettura posta o all'interno del Core del
processore oppure sulla motherboard; opera a frequenze differenti a
seconda del tipo di architettura, variabili tra la frequenza di bus
e quella di clock. L3: generalmente un'estensione della L2 (2 MB
nel Pentium IV Extreme Edition 3.2 GHz) Il processore cerca prima
nella cache interna L1 e poi in quelle esterne L2, L3. Memoria
Cache
Slide 41
Prof.Ing.S.Cavalieri41 Memorie STATICHE Generalmente le memorie
cache sono realizzate da memorie statiche La memoria statica la
memoria pi veloce disponibile attualmente Sono caratterizzate da
tempi di accesso dell'ordine delle decine di nanosecondi (da 6 ns a
25 ns). Sono costose e possono memorizzare solo 1/4 dei dati
rispetto le memorie dinamiche (DRAM). A differenza delle DRAM, non
occorre il rinfresco periodico.
Slide 42
Prof.Ing.S.Cavalieri42 Utilizzano per ogni bit un flip flop. Il
singolo bit occupa molto spazio (8 transistors). Consuma molta
energia. E molto veloce (< 10 ns). Ha un elevato costo per bit.
Memorie STATICHE
Slide 43
Prof.Ing.S.Cavalieri43 CPU Principi di Base Blocchi
Fondamentali: Memoria Cache, Registri, ALU, Istruction Decoder and
Control Esempio di Funzionamento Tecnologie di fabbricazione dei
microprocessori: la microelettronica Tecnologie di fabbricazione
dei microprocessori: la meccanica Road map dei microprocessori
Indicatori di prestazione
Slide 44
Prof.Ing.S.Cavalieri44 CPU-Principi di Base STRUTTURA DELLA
ISTRUZIONE MACCHINA: Si tratta di una stringa binaria che
identifica il codice della operazione da eseguire e le modalit per
indirizzare gli operandi Opcode o codici operativi Un programma
scritto in Opcode assai difficile, si utilizza lAssembly ESECUZIONE
DI UNA ISTRUZIONE MACCHINA: lesecuzione di unistruzione avviene con
una sequenza di microistruzioni a livello circuitale associate
all'istruzione FASI CPU: Ricerca (Fetch) e Esecuzione
(Execute)
Slide 45
Prof.Ing.S.Cavalieri45 CPU-Memoria Cache La memoria, a rigore,
non dovrebbe far parte dell'unit centrale ma attualmente una
tendenza che si va consolidando e quella di fornire CPU che
presentino al loro interno banchi di memoria allo scopo di reperire
velocemente informazioni, senza dover accedere alla memoria
centrale. Cache di Primo Livello L1 (alcune volte anche la L2)
Slide 46
Prof.Ing.S.Cavalieri46 CPU-Registri Interni Di numero e di
caratteristica molto differenziate, i registri interni di lavoro
permettono all'unit centrale lo spostamento, la manipolazione ed il
deposito temporaneo dei dati senza dover ricorrere alla memoria
esterna. I tipi di registri, le modalit di interconnessione e di
comunicazione fra i vari registi sono una caratteristica del
processore Possiamo tuttavia individuare un set di registri
essenziali per il funzionamento di un qualunque processore, e che,
dunque, possono essere ritrovati in una qualunque
architettura.
Slide 47
Prof.Ing.S.Cavalieri47 CPU-Registri Interni Memory Address
Register (MAR). E' il registro specializzato per indirizzare la
memoria. Durante l'esecuzione di un programma il MAR contiene
l'indirizzo della locazione di memoria centrale (esterna alla CPU)
alla quale si vuole accedere in quell'istante. Program Counter
(PC). E' il registro specializzato per contenere l'indirizzo
dell'istruzione che deve essere eseguita. Memory Data Register
(MDR). E' il registro da cui transitano tutti i dati scambiati con
la memoria esterna prima di venire smistati, in base al loro
significato, presso gli altri registri interni. Instruction
Register (IR). E' il registro che contiene la parte codice
operativo di un'istruzione, vale a dire quella sequenza di bit che
opportunamente decodificati determineranno le azioni che la CPU
deve eseguire.
Slide 48
Prof.Ing.S.Cavalieri48 CPU-Registri Interni Accumulatore. E' il
principale registro di calcolo dell'unit centrale: contiene sempre
uno degli operandi e il risultato dell'operazione Pointer Registers
(PRs). Sono registi specializzati per contenere indirizzi,
solitamente di quei sotto programmi ricorrenti con particolare
frequenza. Alcuni di essi possono venire specializzati a funzioni
particolari. Uno di essi lo stack pointer, che indirizza la zona di
RAM in cui stato costruito lo stack. Lo stack e' definita come una
porzione di memoria gestita secondo una politica LIFO (Last In
First Out). Risulta estremamente comodo per il salvataggio del
program counter in caso di interruzione (interrupt) o
subroutine;
Slide 49
Prof.Ing.S.Cavalieri49 CPU-Registri Interni Status Register.
Con registro di stato si intende un registro il cui contenuto
costituito da un insieme di flag aventi un significato individuale,
anche se pu essere manovrato ed elaborato in parallelo. Il
significato dei vari flags costituenti il registro pu differire a
seconda del microprocessore, ma avremo sempre alcuni flags
fondamentali: CARRY. Viene manipolato dalle operazioni aritmetiche;
viene settato o resettato nel corso di un'istruzione di somma se si
avuto o no un riporto. OVERFLOW. Risente anch'esso dell'esito delle
operazioni aritmetiche; viene settato a uno se nel corso di una
somma o sottrazione si avuto un trabocco della capacit dei
registi.
Slide 50
Prof.Ing.S.Cavalieri50 CPU-Unit Aritmetico Logica ALU
Operazioni Aritmetiche: Somma in Complemento a 2 Operazioni
Logiche: AND, OR e NOT Operazioni sui Bit: Shift e Rotazione Dati
in Ingresso: il Contenuto dell'Accumulatore (sempre) e dei registri
interni della CPU (operandi residenti in memoria centrale vengono
trasferiti su registri temporanei) Risultato dell'Operazione:
Accumulatore Uscite Collaterali: fondamentale registrare alcune
condizioni di fine esecuzione delle operazioni di ALU al fine di
determinare se procedere con la successiva istruzione in memoria o
con unaltra opportunamente specificata. risultato zero, negativo,
riporto, overflow registro di stato
Slide 51
Prof.Ing.S.Cavalieri51 CPU-Instruction Decoder and Control E'
il cuore del processore Riceve come dato in ingresso il codice
operativo dell'istruzione presente nell'instruction register (IR).
Questo codice pu essere pensato come l'indirizzo di partenza di un
microprogramma interno che agisce a livello circuitale minimo
componendo insieme, in modo opportuno, gruppi di microistruzioni.
Queste ultime consistono in definitiva nell'emissione di una serie
di segnali e stati logici di controllo che servono: a predisporre
la ALU a compiere una particolare funzione aritmetico logica a
smistare attraverso i bus interni i contenuti dei registri
interessati a svolgere i necessari test e gli eventuali scambi di
dati con l'esterno.
Slide 52
Prof.Ing.S.Cavalieri52 CPU-Instruction Decoder and Control
Esempio di Microprogramma associato all'istruzione di Somma del
contenuto dell'accumulatore con il contenuto del MDR. Questa
operazione pu essere scomposta in sette passi elementari:
1.Trasferimento del contenuto dell'accumulatore sul bus dati
interno alla CPU. 2.Trasferimento del contenuto del bus dati nella
ALU. 3.Trasferimento del contenuto del MDR sul bus dati interno
alla CPU. 4.Trasferimento del contenuto del bus dati nella ALU.
5.Attivazione della logica di somma. 6.Trasferimento del contenuto
della ALU (risultato della somma) sul bus dati. 7.Trasferimento del
contenuto della data bus nell'accumulatore (che conterr il
risultato della somma).
Slide 53
Prof.Ing.S.Cavalieri53 CPU - Fasi di Fetch e Execute In
qualunque processore l'esecuzione di una generica istruzione
avviene in due fasi differenti: la fase di ricerca (FETCH):
consiste nel prelievo dalla memoria centrale dell'istruzione la
fase di esecuzione (EXECUTE), caratterizzata dalla decodifica
dell'istruzione e dall'attivazione del microprogramma ad essa
associato.
Slide 54
Prof.Ing.S.Cavalieri54 CPU - Fasi di Fetch e Execute Esempio:
Supponiamo che l'istruzione sia di somma fra il contenuto
dell'accumulatore e il contenuto di una cella di memoria il cui
indirizzo sia dato direttamente dalla parte operando
dall'istruzione stessa. Supponiamo cio che la cella di memoria
contenente l'istruzione da eseguire sia strutturata come segue:
codice istruzione indirizzo RAM del secondo operando
Slide 55
Prof.Ing.S.Cavalieri55 CPU - Fasi di Fetch e Execute Fase di
ricerca (FETCH): 1.Il contenuto del Program Counter (PC) relativo
allindirizzo di memoria che contiene listruzione. 2.Il contenuto
del Program Counter inviato al MAR (Memory Address Register) per
operare il prelevamento dell'istruzione all'indirizzo di memoria
contenuto nel MAR. 3.Il dato prelevato dalla memoria riposto nel
MDR (Memory Data Register). 4.Il contenuto del MDR, ossia
listruzione, messa nel Instruction Register per essere
decodificata. 5.Il Program Counter viene incrementato per puntare
all'istruzione successiva.
Slide 56
Prof.Ing.S.Cavalieri56 CPU - Fasi di Fetch e Execute Ha inizio
a questo punto la fase di esecuzione (EXECUTE): 1.viene compreso
che il secondo operando risiede in memoria 2.la parte
dellistruzione relativa allindirizzo del secondo operando viene
trasferita nel MAR 3.L'effettivo operando, prelevato dalla memoria
posto nel MDR. 4.Loperando viene presentato ad un ingresso della
ALU. 5.All'altro ingresso dellALU viene presentato il contenuto
dell'accumulatore. 6.L'ALU, predisposta dall'Instruction Register
ad eseguire la somma, pone il suo risultato nell'accumulatore. La
fase di esecuzione terminata ed il processore prosegue con la fase
di ricerca dell'istruzione successiva.
Slide 57
Prof.Ing.S.Cavalieri57 Tecnologie di fabbricazione dei
microprocessori: la microelettronica Il Canale
(0,065/0,09/0,13/0,18): indica il pi piccolo spessore di silicio
nel transistor che si riesce a trattare con procedimenti
fotochimici e quindi concorre a determinare la densit di transistor
che si pu ottenere 0,065(micron)=65 nm (nanometri) LArea Chip
(140mmq-300mmq): aumentando larea del chip si aumentano le funzioni
logiche implementabili Numero Transistor/Chip > Centinaia di
Milioni - 1 Miliardo
Slide 58
Prof.Ing.S.Cavalieri58 Tecnologie di fabbricazione dei
microprocessori: la meccanica Il Packaging: il contenitore in cui
incapsulato il chip della CPU deve avere ottime caratteristiche
meccaniche e termiche; si usano ceramiche particolari. La
Piedinatura: laumento della memoria indirizzabile, del parallelismo
di trasferimento con la memoria centrale, delle funzionalit
avanzate hanno determinato un crescente numero di punti esterni di
connessione (pin). Il Socket: il socket lelemento meccanico di
interconnessione tra il chip e la scheda madre. Il Raffreddamento:
le sempre maggiori potenze impegnate richiedono ventole montate su
CPU e su chassis pi potenti e controlli automatici di
temperatura
Slide 59
Prof.Ing.S.Cavalieri59 Tabella dei socket Socket 5 Socket 7
SuperSocket 7 Socket 8 Slot 1 Slot A Socket A Socket 423/478 Socket
940 Socket T (LGA 775) Socket M (PGA478) Socket P (PGA478)
Slide 60
Prof.Ing.S.Cavalieri60 Road map dei microprocessori
SocketCanaleMilioni Transistor Cache L1 Cache L2 Clock CPU FSB AMD
K6Socket 7 0,35 64KB0KB2,33GHz66MHz K6 - IISocket 7 0,25
64KB0KB3,00GHz66MHz K6-IIISuper Socket 7 0,25
64KB256KB4,50GHz100MHz DURONSOCKET A 0,1825Mtr128KB64KB1,2GHz200Mhz
ATHLONSOCKET A 0,1837Mtr128KB256KB1,4GHz266Mhz ATHLON XP SOCKET A
0,1837,5Mtr128KB256KB1,6GHz266Mhz ATHLON MP SOCKET A
0,1837,5Mtr128KB256KB1,6GHz266Mhz
Slide 61
Prof.Ing.S.Cavalieri61 Road map dei microprocessori
SocketCanaleMilioni Transistor Cache L1 Cache L2 Clock CPU FSB
INTEL CELERON Coppermine SOCKET 370 0,1819Mtr 32KB 128KB 1,1GHz
100Mhz CELERON TUALATIN SOCKET 370 0,1328,5Mtr 32KB 256KB 1,2GHz
100Mhz PENTIUM III Coppermine SOCKET 370 0,1828Mtr 32KB 256KB
1,1GHz 133MHz PENTIUM III TUALATIN Slot1/ SOCKET 370
0,1328Mtr32KB256KB/ 512KB 1,4GHz133MHz PENTIUM IV SOCKET 423 0,18
42Mtr 8KB 256KB 2GHz PENTIUM IV SOCKET 478 0,13 42Mtr 8KB 512KB
2,8GHz Pentium IV EE Socket 4780,13 169Mtr8KB512KB+ 2MB (L3)
3,2GHz200MHz
Slide 62
Prof.Ing.S.Cavalieri62 Ultime Soluzioni per Incremento di
Prestazioni Soluzione DUAL CORE: unione di due processori
indipendenti Aumento di potenza di calcolo senza aumentare la
frequenza di clock Motivo: aumento della frequenza di clock
comporta consumi pi alti e problemi di riscaldamento Si punta al
parallelismo delle istruzioni eseguite in ogni ciclo di clock
Esempi in casa Intel: Core 2 Duo E6850 (Luglio 2007): Socket 775,
3GHz, 65nm, L1=2x64KB, L2=4MB (la L2 condivisa)
Slide 63
Prof.Ing.S.Cavalieri63 Ultime Soluzioni per Incremento di
Prestazioni Soluzione QUAD CORE: unione di 4 processori
indipendenti Esempi in casa Intel: Core 2 Quad Q6700 (Luglio 2007):
Socket 775, 2,66GHz, 65nm, L1=4x64KB, L2=2x4MB (la L2 condivisa tra
ogni coppia di processori)
Slide 64
Prof.Ing.S.Cavalieri64 Indicatori di prestazione Un Benchmark
un programma che consente di valutare comparativamente le
prestazione di due sistemi relativamente a: Tempo di risposta
(secondi) Throughput (Numero di bit /secondo) Fotogrammi / secondo
Alcuni programmi di Benchmark: Stream (misura la banda delle RAM in
Mbytes/s) Video Giochi: 3D Mark, Mercedes Benz Truck Racing (fps)
Applicativi: Sysmark 2000 (sec)
Slide 65
Prof.Ing.S.Cavalieri65 Sottosistema di I/O I Bus: Bus di I/O
Interfacce: Seriali, Parallele, USB, FireWire Controller Schede
Grafiche, Audio e di Acquisizione Video
Slide 66
Prof.Ing.S.Cavalieri66 Bus di I/O Il bus di I/O ha il compito
di connettere la CPU alle periferiche di I/O Esistono diverse
tipologie che si differenziano per: numero di bit e larghezza di
banda (bit/sec) Considerando l'architettura Intel, esistono i
seguenti tipi di bus I/O: ISA. Il termine ISA significa Industry
Standard Architecture. La prima versione del bus ISA era a 8 bit,
presente ad esempio negli IBM compatibili AT. Molto pi recente ed
utilizzato il bus ISA a 16 bit. 16 bit @ 8 MHz picco 16MByte/s
EISA. Il termine significa Extended Industry Standard Architecture.
EISA un'evoluzione del bus ISA ed teoricamente compatibile con
questo. E' caratterizzato da prestazioni superiori rispetto il bus
ISA, principalmente dovute alla doppia capacit del bus e all'uso di
un proprio dispositivo DMA (Direct Memory Access).
Slide 67
Prof.Ing.S.Cavalieri67 Bus di I/O MCA. E' un bus proprietario
IBM ed derivato dal bus ISA. Il fatto di essere proprietario
implica l'incompatibilit con altri bus di I/O. E' commercializzato
in due versioni: a 16 e 32 bit. In termini pratici capace di
trasferire circa 20 Mbit/secondo. PCI (Peripheral Component
Interconnect). I dati vengono trasferiti in blocchi di 32 bit (a
differenza dell'ISA caratterizzato da trasferimenti a 16 bit). 32
bit @ 33 MHz => 132 MByte/sec 32 bit @ 66 MHz => 264
MByte/sec (bus PCI 2.1, che lavora ad una frequenza di 66 MHz) AGP
(Accelerated Graphic Port). Viene utilizzata esclusivamente per la
connessione a particolari schede video accelerate (ossia dotate di
processore interno che elabora informazioni visive).
Slide 68
Prof.Ing.S.Cavalieri68 Interfacce Esistono differenti
connettori che permettono il collegamento con le periferiche
esterne (mouse, tastiera, stampante, etc.). Generalmente tali
connettori si collegano al bus di I/O. I pi noti e vecchi
connettori sono: COM1, COM2: RS 232, 9 e 25 poli maschio. Porta
Parallela. Sono connettori a 25 poli femmina.
Slide 69
Prof.Ing.S.Cavalieri69 Interfaccia USB E' l'acronimo di
Universal Serial Bus; Fino a 127 periferiche in catena. L'USB stato
introdotto per fornire uno standard che superasse in prestazioni le
ormai vetuste porte seriale e parallela; USB quindi la soluzione
ideale per le periferiche di media velocit quali modem esterni,
webcam, lettori CD-Rom esterni ecc. E' possibile collegare le
periferiche con PC acceso E' possibile fornire direttamente
l'alimentazione ad alcuni tipi di periferiche. Due Versioni: USB
1.0: 12 Mbit/sec USB 2.0: 480 Mbit/sec
Slide 70
Prof.Ing.S.Cavalieri70 Interfaccia FireWire IEEE1394 Molti
computer pi recenti sono dotati di una porta per il collegamento
delle periferiche FireWire. Si tratta di uno standard di
comunicazione ideato da Apple e sviluppato insieme a IEEE (e quindi
conosciuto anche come standard IEEE 1394).IEEE Bus digitale di
comunicazione che permette un transfer rate massimo di 400
Mbit/secondo e di collegare 64 periferiche in cascata; Esiste la
versione IEEE 1394b a 800 Mbps La porta FireWire consente di
collegare al computer periferiche ad alta velocit, ad esempio
videocamere digitali, riproduttori audio, unit Zip e altri
dispositivi di memorizzazione esterni.
Slide 71
Prof.Ing.S.Cavalieri71 Controller Esistono particolari
periferiche, quali dischi fissi, CD-ROM, nastri magnetici (o unit
di back-up), e scanner, che necessitano di particolari circuiti di
interfaccia chiamati controller (controllori). Il compito
principale di un controllore quello di garantire il trasferimento
dati tra il computer e la periferica, risolvendo alcuni problemi
tra cui l'adattamento di segnali elettrici, l'adattamento di
impedenza, il collegamento fisico tra il bus del computer e quello
relativo alla periferica, ecc.. Dunque il suo ruolo essenziale al
fine di massimizzare il trasferimento dati. Controller IDE e SCSI
Circuiti digitali ed analogici cavo Periferica Parte
elettromeccanica
Slide 72
Prof.Ing.S.Cavalieri72 Schede Video Acceleratrici Le schede
video permettono oggi di ottenere risoluzioni molto elevate ed
effetti grafici sofisticati. Questi miglioramenti di grafica sono
apprezzati dai giocatori di videogame e da importanti
professionisti web-designer e no. Hanno memoria video DDR (circa
128MBytes) e un processore di immagini
Slide 73
Prof.Ing.S.Cavalieri73 Schede Audio Una serie di circuiti
montati su una scheda di espansione per computer. Le schede audio
permettono di produrre e analizzare suoni stereo di alta qualit
utilizzando appositi programmi. Possono essere a 16 o a 24 bit a
seconda delle capacit di campionamento e di elaborazioni che i
circuiti utilizzati consentono. Effetti dolby sorround (Creative
Multi-Speaker Surround-CMSS) tra le pi diffuse vi la famiglia di
schede SoundBlaster.
Slide 74
Prof.Ing.S.Cavalieri74 Schede di Acquisizione Video Elabora i
dati (analogici/digitali) che arrivano da telecamere
(analogiche/digitali) e li trasforma in files in differenti formati
selezionabili dall'utente (ad esempio AVI, MPEG). Il processore
on-board permette di realizzare effetti di montaggio
real-time.
Slide 75
Prof.Ing.S.Cavalieri75 Periferiche Stampanti Scanner Web Cam
Macchine Fotografiche Digitali
Slide 76
Prof.Ing.S.Cavalieri76 Memorie di Massa Floppy Hard Disk
PenDrive CD ROM CD RW DVD ROM DVD RW
Slide 77
Prof.Ing.S.Cavalieri77 .per diventare esperti dei PC !! Metodi
di I/O: Interrupt e DMA La Scheda Madre Il ChipSet Il BIOS
Slide 78
Prof.Ing.S.Cavalieri78 Metodi di I/O: Interrupt L'attivit che
svolge la CPU non mai continua ma viene sempre interrotta da
particolari segnali provenienti principalmente da dispositivi
esterni alla CPU stessa. Tali interruzioni hanno lo scopo di
comunicare alla CPU la necessit che essa esegua particolari
programmi. Ad esempio uno dei pi comuni interrupt relativo
all'aggiornamento dell'ora e della data interna al computer. La CPU
riceve circa 18 volte al secondo un segnale di interruzione che la
obbliga ad eseguire il programma associato di aggiornamento
dell'ora e della data. In termini tecnici queste interruzioni
prendono il nome di INTERRUPT. Ogni interrupt caratterizzato da una
sua priorit al fine di poter gestire la contesa nel caso in cui pi
interrupt arrivino contemporaneamente alla CPU. Ad ogni interrupt
poi associato sempre il programma che deve essere eseguito.
Slide 79
Prof.Ing.S.Cavalieri79 All'arrivo di un interrupt, la CPU deve
eseguire le seguenti funzioni: 1.deve salvare nello stack lo stato
corrente del programma che stava eseguendo fino a quel momento (lo
stato dunque rappresentato dal contenuto di alcuni registri quali
il Program Counter) 2.deve identificare l'interrupt ed eseguire il
programma di interrupt ad esso associato 3.alla fine
dell'esecuzione del programma di interrupt, deve prelevare lo stato
dallo stack e ripristinare lo stato corrente prima che venisse
l'interrupt 4.continuare l'esecuzione dallo stato appena
ripristinato Metodi di I/O: Interrupt
Slide 80
Prof.Ing.S.Cavalieri80 Metodi di I/O: Direct Memory Access
(DMA) Il DMA una tecnica di gestione del bus che conduce i dati
nella memoria RAM, in base alla quale non necessario l'intervento
della CPU per tale trasferimento, ma un particolare dispositivo DMA
che si occupa di effettuare tale trasferimento, alleggerendo la
CPU. Il DMA viene utilizzato quando si hanno periferiche veloci che
devono accedere alla memoria. In tal caso l'accesso potrebbe essere
rallentato dalla CPU, nel caso in cui essa non sia particolarmente
veloce o sia occupata in altri lavori. CPU RAM DMA I/O bus
Slide 81
Prof.Ing.S.Cavalieri81 La Scheda Madre
Slide 82
Prof.Ing.S.Cavalieri82 Il Chip Set Viene detto "chipset" un
gruppo di circuiti integrati (in gergo elettronico, chip) che sono
direttamente saldati sulla scheda madre e si incaricano di tutte le
operazioni di normale gestione, quali: attivit sul bus: controllo e
gestione del flusso di dati tra i vari componenti il risparmio
energetico Dato che il chipset fa da intermediario tra la CPU e
tutti (o quasi) i sottosistemi, la sua architettura influenza molto
le prestazioni del sistema.
Slide 83
Prof.Ing.S.Cavalieri83 Il Chip Set Il chipset fa parte
integrante della scheda madre, e non pu essere aggiornato. In
generale, un chipset progettato per una famiglia di processori e
per una tecnologia di RAM, quindi supporta le frequenze di CPU, le
velocit di frontside bus (FSB) e le velocit del bus di memoria
corrispondenti ai processori e ai moduli di memoria che entrano in
commercio durante il periodo di vita del chipset.
Slide 84
Prof.Ing.S.Cavalieri84 Il Chip Set CPU NORTH BRIDGE LAN SOUTH
BRIDGE AGP SCSI AGP BUS SRAM Memory Bus PCI Bus BIOS ISA USB Sono
due i chip: Northbridge: scambio dati tra CPU, RAM, Comparto
Grafico SouthBridge: I/O, slot PCI, porte
Slide 85
Prof.Ing.S.Cavalieri85 BIOS Il nome BIOS significa Basic Input
Output System, ossia sistema di base per ingressi e uscite. Il BIOS
essenzialmente un "software", ossia un programma. Esso contenuto in
un chip di memoria non volatile EEPROM o le Flash Memory Le
funzioni svolte dal BIOS sono essenzialmente: 1.Funzione di Avvio
del Computer, Boot Funzione di POST (Power-On Self Test) Beep che
codificano eventuali errori o anomalie Caricamento drivers
(es.scheda video) Check memoria Caricamento S.O. (da disco di boot)
2.Funzione di Memorizzazione di Configurazione Hardware e di
Parametri del ChipSet.
Slide 86
Prof.Ing.S.Cavalieri86 BIOS Avvio del Computer Quando si
accende il PC, si inizializza l'alimentatore interno. Non appena la
tensione si stabilizza il chipset invia un comando di reset del
processore. Il comando reset richiede alla CPU di eseguire
l'istruzione posta sempre in una locazione fissa prestabilita nella
ROM del BIOS e denominata indirizzo di jump. La CPU esegue
l'istruzione, che copia in memoria i programmi del BIOS e inizia
l'esecuzione del BIOS.
Slide 87
Prof.Ing.S.Cavalieri87 La prima azione eseguita dal programma
di BIOS il POST (Power-On Self-Test): Il processo POST verifica e
controlla la configurazione hardware memorizzata nelle informazioni
di configurazione del BIOS. Nel caso in cui dovesse rilevare un
problema invia indicazioni acustiche per mezzo di uno o pi beep o
beep code, attraverso l'altoparlante del sistema, per indicare la
natura del problema o visualizzare un messaggio d'errore e il
processo di boot si arresta. Se il POST non incontra problemi, il
processo di boot continua. Il BIOS cerca il BIOS dell'adattatore
video e lo attiva. Quasi tutti i dispositivi periferici di un PC
dispongono di un proprio BIOS. Le informazioni sulla scheda video
sono visualizzate sullo schermo del monitor. informazioni della
scheda video, BIOS della scheda video, produttore e versione. BIOS
Avvio del Computer
Slide 88
Prof.Ing.S.Cavalieri88 Vengono inizializzate la routine del
BIOS delle periferiche presenti, oltre la scheda video. Il BIOS
effettua poi una serie di test nel sistema, inclusa la dimensione
della memoria rilevata. Un contatore progressivo visualizza nello
schermo la memoria rilevata e verificata. Il BIOS verifica che i
dispositivi elencati nei dati di configurazione siano presenti e
funzionanti. viene visualizzato un messaggio che comunica che il
dispositivo stato trovato, configurato e verificato. Se il BIOS
supporta la tecnologia PnP (Plug and Play), qualsiasi dispositivo
PnP rilevato sar configurato. vengono visualizzate sullo schermo
tutte le informazioni dei dispositivi, tuttavia scorrono in modo
troppo veloce per poter essere lette. BIOS Avvio del Computer
Slide 89
Prof.Ing.S.Cavalieri89 BIOS Avvio del Computer Alla fine della
sequenza di test e configurazione, il BIOS visualizzer una
schermata che riassume i dettagli del PC verificati dal BIOS, per
indicare che il sistema pronto per l'uso. Il BIOS dovr trovare il
sistema operativo ed essere in grado di accedervi, per poterlo
attivare. I dati di configurazione memorizzati nel BIOS contengono
un parametro che indica le unit disco (floppy, hard disk o CD-ROM)
e l'ordine di accesso per il caricamento del sistema operativo. Se
il programma di boot non viene trovato nel primo dispositivo
elencato, verr ricercato nel dispositivo successivo e cos via; se
non si trova alcun dispositivo di boot la relativa sequenza si
arresta e viene visualizzato un messaggio di errore: "Non
disponibile alcun dispositivo di boot".
Slide 90
Prof.Ing.S.Cavalieri90 BIOS Memorizzazione Configurazione Il
BIOS memorizza la configurazione hardware del computer (periferiche
non plug&play) e i parametri del chipset e ne permette
allutente la modifica. Programma di Configurazione: tasto DEL
all'avvio In genere ogni versione di BIOS permette di intervenire
su taluni parametri del chipset ma non su altri. Esempio: alla voce
Chipset Features Setup (o Advanced Chipset Setup) e possibile
intervenire sui tempi di accesso alla memoria e su altri parametri
del chipset, cos da migliorare anche sensibilmente le prestazioni
del computer; C' il rischio di impostare alcuni parametri troppo
performanti per l'hardware installato e il sistema si bloccher
durante il funzionamento: baster rientrare nel Setup del BIOS
(premendo, in genere, il tasto DEL all'avvio) e reimpostare i
valori precedentemente usati.
Slide 91
Prof.Ing.S.Cavalieri91 L'hardware, cio la parte elettronica del
PC, pu presentare notevoli differenza da costruttore a costruttore
o da modello a modello. Se il S.O. deve ad esempio recuperare un
file dal disco rigido, esegue tale lettura "chiedendo" al BIOS di
leggere il file, senza occuparsene direttamente. Il BIOS contiene
programmi usati dal sistema operativo e software applicativo per
interagire con l'hardware. Visto che il BIOS strettamente legato
allhardware, facile comprendere che ogni diverso computer possiede
un diverso BIOS. Non possibile cio utilizzare il BIOS del computer
modello xyz nel computer modello hkw. BIOS Interfaccia Sistema
Operativo
Slide 92
Prof.Ing.S.Cavalieri92 Produttori di BIOS Award, AMI (America
Megatrends, Inc.) e Phoenix producono i BIOS pi noti. Come la
maggior parte dei produttori, forniscono le ROM del BIOS in licenza
d'uso alle case costruttrici di schede madri, mentre il servizio di
supporto del BIOS compete generalmente a produttori delle schede.
In passato AMI era l'unico BIOS per Intel, il principale produttore
di processori e schede madri. Attualmente, oltre l'60% delle schede
madri sono Intel e adottano il BIOS Phoenix. Nel 1998 Phoenix ha
acquistato Award e, pertanto, il BIOS Award viene distribuito con
marchio Phoenix.