Perché le CPU non sono più grandi? [chiuso]


21

Le CPU sono relativamente piccole e gli ingegneri cercano costantemente di ridurle e ottenere più transistor sulla stessa superficie.

Perché le CPU non sono più grandi? Se un dado di circa 260 mm 2 può contenere 758 milioni di transistor (AMD Phenom II x4 955). Quindi un 520mm 2 dovrebbe essere in grado di contenere il doppio della quantità di transistor e raddoppiare tecnicamente la velocità o i core del clock. Perché questo non è fatto?


4
Non conosco tutti i dettagli, ma sostanzialmente più vicini sono i transistor, ecc. Sul chip, più è efficiente. Quindi quadruplicare l'area renderebbe il chip più lento.
ChrisF,

1
Inoltre, soprattutto considerando lo stato attuale delle applicazioni, le moderne CPU impiegano molto tempo a non fare nulla. Scuotono i pollici mentre noi, gli utenti, capiamo cosa vogliamo fare.
surfasb,

1
@ChrisF Si confonde l'impatto del restringimento della matrice (guadagno di velocità dovuto a capacità ridotte) con numeri di transistor ridotti. Chiediti: il singolo core su un dual core funzionerà più velocemente di quello su un quad core?
artistoex,

2
Questo è fatto: guarda la nuova piattaforma Intel LGA2011.
Breakthrough

3
Non sono d'accordo con i voti chiusi. Vi sono chiare ragioni per cui non è sensato creare chip più grandi, come dimostrato dalle risposte migliori. Quindi non è una domanda supponente (come "Android è meglio di iOS"). Anche questa domanda mi interessava!
David Miani,

Risposte:


18

In genere hai ragione: a breve termine, aumentare la parallelizzazione non è solo praticabile, ma è l' unica strada da percorrere. In effetti, multi-core, nonché cache, pipeline e hyper-threading sono esattamente ciò che proponi: guadagno di velocità attraverso un maggiore utilizzo dell'area del chip. Naturalmente, la riduzione delle geometrie non si scontra con il crescente utilizzo dell'area della matrice. Tuttavia, la resa degli stampi è un grande fattore limitante.

La resa delle matrici cresce in proporzione inversa rispetto alle dimensioni delle matrici: le matrici di grandi dimensioni hanno semplicemente maggiori probabilità di "catturare" errori del wafer. Se un errore del wafer colpisce un dado, puoi buttarlo via. Il rendimento della matrice ovviamente influenza il costo della matrice. Quindi esiste una dimensione ottimale del dado in termini di costi rispetto ai profitti per die.

L'unico modo per produrre stampi significativamente più grandi è integrare strutture ridondanti e tolleranti ai guasti. Questo è ciò che Intel cerca di fare nel loro progetto Terra-Scale (AGGIORNAMENTO: e ciò che è già praticato nei prodotti di tutti i giorni come sottolinea Dan).


8
Nelle moderne complesse CPU / GPU, i difetti muoiono spesso solo nel binning. Le GPU di livello medio / superiore in genere hanno una parte die completa e una o due con alcuni sottocomponenti disabilitati per ottenere più punti prezzo / capacità da un numero minore di chip. Lo stesso viene fatto con le CPU. I chip tricore di AMD sono quadricipiti con un die disabilitato e i chip LGA2011 di Intel sono tutte e 8 le parti principali. I dadi completi vengono usati solo come Xeon. Gli i7-2011 core 4/6 sono 8 filiere con parti disabilitate. Se gli errori degli stampi cadono nei punti giusti, vengono individuati come parti più economiche. Per tassi di errore più modulari per le GPU, impostare il cestino basso.
Dan Neely,

@DanN Grazie, ho aggiunto questo alla mia risposta
artistoex,

23

Ci sono molte preoccupazioni tecniche (la lunghezza del percorso diventa troppo lunga e si perde efficienza, l'interferenza elettrica causa rumore), ma la ragione principale è semplicemente che molti transistor sarebbero troppo caldi per raffreddarsi adeguatamente . Questo è il motivo per cui sono così desiderosi di ridurre le dimensioni dello stampo - consente aumenti delle prestazioni agli stessi livelli termici.


Dovrei aggiungere che intendo nel contesto di una macchina desktop / laptop standard, ovviamente.
Shinrai,

1
Le lunghezze dei percorsi non aumentano necessariamente, sono una cosa locale: mettere due core su un chip non aumenterà la lunghezza del percorso all'interno di un core, vero? La dissipazione del calore si distribuirà anche su un'area più ampia, quindi non è un grosso problema.
artistoex,

1
Bene, c'è molta sfumatura, ma non mi sentivo giustificato. (Inoltre, non intendo necessariamente nel contesto di PIÙ core, poiché la domanda non era così esplicita al riguardo.)
Shinrai,

Il punto è: i processori multi-core sono esattamente ciò che l'OP ha proposto: aumento di velocità attraverso un maggiore utilizzo dell'area del chip.
artistoex,

3
Come pensi che l'hyper-threading sia "core più grandi e veloci"? L'hyperthreading è tutto basato sulla logica e non ha nulla a che fare con le dimensioni ... Significa che se c'è un eccesso disponibile sul core corrente lo usa. IE: se l'unità MMX e la FPU sono in uso su un dato core, è ancora possibile eseguire calcoli basati su numeri interi.
Supercereal

15

Molte delle risposte fornite qui sono buone risposte. Ci sono problemi tecnici nell'aumentare le dimensioni della CPU e porterà a molto più calore da affrontare. Tuttavia, tutti sono superabili dato incentivi abbastanza forti.

Vorrei aggiungere quello che credo sia un problema centrale: l' economia . Le CPU sono realizzate in wafer come questo , con un gran numero di CPU per wafer. Il costo di produzione reale è per wafer, quindi se raddoppi l'area di una CPU puoi adattarne solo la metà su un wafer, quindi il prezzo per CPU raddoppia. Inoltre, non tutti i wafer risultano sempre perfetti, possono esserci errori. Quindi raddoppiare l'area raddoppia la possibilità di un difetto in una specifica CPU.

Pertanto, dal punto di vista economico, la ragione per cui le cose sono sempre più piccole è quella di ottenere prestazioni / mm ^ 2 migliori, che è il fattore determinante nel rapporto prezzo / prestazioni.

TL; DR: oltre agli altri motivi citati, il raddoppio dell'area di una CPU raddoppia il costo.


Questa è la ragione principale. Il capitolo 1 del libro di testo di Hennessy and Pattersons sull'architettura del computer descrive il processo di fabbricazione e le considerazioni che vanno alla guida della CPU sono le più piccole possibili.
Steve Blackwell,

3

L'aggiunta di più transistor a un processore non lo rende automaticamente più veloce.

Lunghezza del percorso aumentata == frequenza di clock più lenta.
L'aggiunta di più transistor aumenterà la lunghezza del percorso. Qualsiasi aumento deve essere utilizzato prezioso o causerà un aumento di costi, calore, energia, ma una riduzione delle prestazioni.

Ovviamente puoi sempre aggiungere più core. Perché non lo fanno? Bene, lo fanno.


Non lo considero davvero off-topic qui (anche se lo sarebbe anche su questo argomento).
Shinrai,

Sì sono d'accordo. Penso solo che sarebbe meglio rispondere lì. Ho rimosso la linea.
user606723

2

Il tuo presupposto generale è sbagliato. Una CPU con un dado di dimensioni doppie non significa che può funzionare a doppia velocità. Ciò aggiungerebbe solo più spazio per l'aggiunta di più core (vedere alcuni chip Intel Manycore con 32 o 64 core) o cache più grandi. Ma la maggior parte del software attuale non può utilizzare più di 2 core.

Pertanto la maggiore dimensione dello stampo aumenta il prezzo in modo massiccio senza un guadagno della stessa altezza. Questo è uno dei motivi (semplificati) delle CPU così come sono.


Questo non è del tutto vero - con più transistor, è possibile ridurre la profondità di propagazione in modo che le istruzioni richiedano meno cicli di clock per il completamento. Hai ragione, tuttavia, non ha nulla a che fare con la velocità di clock .
BlueRaja - Danny Pflughoeft,

1

In elettronica SMALLER = FASTER 3GHz deve essere molto più piccolo di 20MHz Più sono grandi le interconnessioni, maggiore è l'ESR e minore è la velocità.

Raddoppiare la quantità di transistor non raddoppia la velocità di clock.


L'aumento della velocità di clock è solo un approccio al guadagno di velocità. Raddoppiare i transistor è un altro. A parte questo, la riduzione delle interconnessioni non è in conflitto aumentando l'area della matrice.
artistoex,

3
@artistoex, ma il semplice raddoppio dei transistor non lo rende neanche più veloce. Deve essere progettato in modo tale da sfruttare questi transistor. Più transistor (con lo stesso mm) indicano in genere un clock inferiore.
user606723

1

Il costo di produzione dei wafer grezzi è un fattore. Il silicio monocristallino non è gratuito e il processo di raffinazione è piuttosto costoso. Quindi l'utilizzo di più della materia prima aumenta i costi.


0

I grandi esseri viventi , artificiali o meno, come i dinosauri, sono perdenti. L' area / volume del rapporto non è giusto per la loro sopravvivenza: troppi vincoli sull'energia - ogni forma - dentro e fuori.


0

Pensa a una CPU come a una rete di nodi collegati (transistor). Al fine di fornire maggiori capacità, il numero di nodi e i percorsi tra loro aumentano fino a un certo punto, ma tale aumento è lineare. Quindi una generazione di una CPU potrebbe avere un milione di nodi, la prossima potrebbe avere 1,5 milioni. Con la miniaturizzazione del circuito, il numero di nodi e percorsi viene condensato in un ingombro ridotto. Gli attuali processi di fabbricazione sono fino a 30 nanometri.

Supponiamo che siano necessarie cinque unità per nodo e cinque unità di distanza tra due nodi. End to end, in linea retta è possibile creare un bus di 22222 nodi in 1 CM di spazio. È possibile creare una matrice di 493 milioni di nodi in un CM quadrato. Il design del circuito è ciò che contiene la logica della CPU. Raddoppiare lo spazio non è ciò che aumenta la velocità, ma consentirebbe al circuito di avere più operatori logici. O nel caso di CPU multi-core per consentire al circuito di gestire più lavoro in parallelo. L'aumento dell'impronta ridurrebbe effettivamente la velocità di clock perché gli elettroni dovrebbero percorrere lunghe distanze attraverso il circuito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.