|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jul 2011
Messaggi: 5
|
CPU milioni di componenti... xkè??
Salve a tutti,
sto cercando di capire come mai le CPU siano formate da cosi tante componenti (centinaia di milioni di transistor). Leggendo come funziona la CPU io mi sarei aspettato qualche migliaia di componenti e non di più. Da quel che ho capito, la CPU dovrebbe essere una sorta di interprete dell'assembly. Per ogni istruzione assembly vi sarà una serie di istruzioni a livello firmware corrispondenti e ognuna di queste istruzioni, per essere eseguita dovrà usare ALU, confrontatori ecc. Ammettendo anche che per ogni istruzione si usino separate ALU,confrontatori ecc, il numero delle istruzioni è molto limitato (ordine delle centinaia ? ). Come è possibile allora che un processore abbia milioni di componenti? Qual' è il rapporto tra numero di componenti e velocità della CPU? Grazie anticipatamente, Municbar |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2006
Città: tezze sul brenta(vi)
Messaggi: 1501
|
Mi sa che hai un po' travisato le cose.
Tento di spiegartela in modo assai semplicistico: per farla breve un transistor è un interrutore comandato da un impulso elettrico (ossia, a seconda dell'input in tensione che riceve, fa passare o meno corrente). Con il transistor vengono realizzate le porte logiche (a seconda di che porta logica realizzi ti serviranno uno o più transistor). Le porte logiche implementano le funzioni booleane (AND, OR, etc. mai sentite?), attraverso un'adeguata combinazione di queste porte logiche si può costruire funzioni complesse. Va da sé che più è complessa la funzione, più si alza il numero di porte logiche necessarie (e conseguentemente di transistor). Ovviamente una volta realizzato un "blocco" in grado di realizzare direttamente tutte le funzioni base di cui abbiamo bisogno, sarà sufficiente "replicarlo" per ottenere maggiori prestazioni. Più "blocchi" avrai a disposizione, più "calcoli" sarà in grado di svolgere parallelamente la tua CPU. Se pensi ai programmi che una moderna CPU fa girare, riesci facilmente a capire che una CPU moderna ha bisogno di poter eseguire miliardi di questi "calcoli" in una frazione di secondo (magari il tempo di un click del mouse), hai capito che è essenziale che di quei "blocchi di transistor" ce ne siano veramente tanti. Ovviamente se ti interessa scendere più nel dettaglio, ti consiglio di cercare un po' "architettura dei calcolatori" o simili. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 14739
|
Io ho idea che lui si riferisca proprio ad uno schema visto in un qualche testo di architettura dei calcolatori.
Quello è uno schema generico sul funzionamento di una cpu. Sebbene le cpu si siano evolute, lo schema di funzionamento è sempre lo stesso (in linea di massima), ma nonostante ciò è molto lontano dalla vera implementazione di una cpu. Le cpu moderne non solo hanno una grande quantità di unità di calcolo, ma anche una complessa logica necessaria per gestirle e ottimizzarle. All'interno delle cpu moderne abbiamo inoltre le varie cache, i controller di memoria, i gestori dei bus di comunicazione, ecc... il che fa aumentare, e non di poco, il conteggio di transistor di una cpu. |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Jul 2011
Città: Montagnana
Messaggi: 79
|
Credo che ti sia utile dare un'occhiatina a questo:
http://plpsystem.forumfree.it/?t=56155720 Un processore è uno tra gli oggetti più difficili da costruire. Ora la tecnologia sta nella grandezza dei transistor. La Intel, per ora, è arrivata a produrre transistor della grandezza di 32 nanometri. Più piccolo è il transistor, pi ce ne stanno dentro al processore e di conseguenza le prestazioni aumentano. E' una spiegazione tanto elementare....ma è così. Ultima modifica di .:|FEDE|:. : 28-07-2011 alle 18:18. |
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: Jul 2011
Messaggi: 5
|
Ciao,
@dema86: si si, ovvio che le ho sentite. ALU, addizionatori ecc sono costituite da quelle porte. In ogni caso, ipotizzando un'architettura RISC, anche le funzioni complesse non saranno composte da tantissime porte. Riguardo alla parallelizzazione, ok, hai ragione ma da quel che ho letto, oltre un certo numero di istruzioni in parallelo non si può andare (e non sono miliardi..). @calabar: si, ho letto informazioni da un testo di architettura degli elaboratori e lo schema logico di come funziona la cpu mi è chiaro. Quindi tu dici che quando si parla di milioni di componenti s'intende non solo la cpu ma tutto il chip nel quale sta la cpu? compreso cache ecc, così effettivamente avrebbe più senso.. |
|
|
|
|
|
#6 |
|
Junior Member
Iscritto dal: Jul 2011
Messaggi: 5
|
@.:|FEDE|:. thx per il link. Ero a conoscenza comunque di quel fatto
|
|
|
|
|
|
#7 |
|
Moderatore
Iscritto dal: Nov 2006
Messaggi: 21911
|
considera anche che quello che hai scritto nel primo post (decodificatore assembly cablato in hw per ogni istruzione ) è un'architettura vecchia, attualmente le istruzioni assembly vengono programmate nella cpu (http://en.wikipedia.org/wiki/Microcode)e non cablate
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 |
|
|
|
|
|
#8 |
|
Junior Member
Iscritto dal: Jul 2011
Messaggi: 5
|
@!fazz
Probabilmente mi sono espresso male.. io intendevo che la CPU esegue microistruzioni |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 14739
|
Quote:
Il punto focale della questione è che le cpu moderne sono molto molto complesse. Anche eliminando gli "extra" dal conteggio, rimangono comunque parecchi milioni di transistor. A questo aggiungi che le cpu x86 non sono propriamente risk (il layer x86 è bello corposo), e questo fa aumentare, e non di poco, la complessità. |
|
|
|
|
|
|
#10 |
|
Junior Member
Iscritto dal: Jul 2011
Messaggi: 5
|
@calabar:
uhm si. Anche CPU del 2000 comunque sono composte da milioni di componenti. Penso sia meglio che googli un pò per approfondire xkè voglio capire meglio.. |
|
|
|
|
|
#11 |
|
Member
Iscritto dal: May 2004
Messaggi: 32
|
rimango sempre affascinato dalla complessità di creazione delle moderne cpu.
|
|
|
|
|
|
#12 |
|
Moderatore
Iscritto dal: Nov 2006
Messaggi: 21911
|
ti sei espresso benissimo ma hai saltato un layer, anni fà le istruzioni assembly venivano eseguite dalla cpu con hw dedicato, attualmente no, per ragioni di test e di sviluppo le cpu sono "programmabili" in fase di progettazione della stessa
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:45.




















