Principale Note Utili Note utili / Memoria ad accesso casuale

Note utili / Memoria ad accesso casuale

  • Note Utili Memoria Ad Accesso Casuale

img/usefulnotes/09/utili-note-random-access-memory.jpg Annuncio:

Da non confondere con l'album dei Daft Punk.

Sebbene la CPU sia il cuore di un sistema informatico, sposta i dati da e verso e li elabora come richiesto, questi dati devono comunque essere conservati in qualche luogo . È qui che entra in gioco la RAM. RAM sta per R andom UN accedi M emory — qualsiasi punto della memoria può essere scritto in qualsiasi momento senza dover aspettare. Questo contrasta con memoria ad accesso sequenziale , dove è necessario riavvolgere o far avanzare rapidamente un nastro o attendere un certo tempo per accedere ai dati.

La maggior parte delle persone ora chiama semplicemente 'memoria' della RAM. Comprende la parte operativa principale della gerarchia di archiviazione del computer. Proprio come la velocità di clock è fraintesa come l'unica misura della potenza dell'unità di elaborazione centrale, si ritiene che la capacità sia l'unica misura importante quando si tratta di memoria ad accesso casuale.

La memoria non riguarda solo la capacità. A meno che un sistema o un gioco non sia inattivo, la memoria non rimarrà con gli stessi dati a tempo indeterminato. Sposta costantemente i dati dentro e fuori i chip di memoria per gestire i dati in continua evoluzione. In altre parole, la capacità è importante, ma lo è anche la velocità con cui può spostare i dati dentro e fuori dal chip. In situazioni in cui la macchina deve eseguire il multitasking (come PC, PlayStation 3 e Xbox 360 ), la capacità può aumentare le prestazioni, ma i rendimenti diminuiscono rapidamente (ad esempio, se raddoppi la RAM, potrebbe davvero aumentare le prestazioni, ma se raddoppi di nuovo, non farà molto). Una maggiore quantità di RAM disponibile è utile per archiviare più dati che desideri utilizzare immediatamente. Impedisce l'accesso più frequente al disco rigido/DVD/Blu-Ray più lento, che per un processore richiede un'eternità.

Annuncio:

Come una CPU, la velocità della memoria viene misurata in velocità di clock tra la latenza. E la latenza tende a influenzare la memoria più dei processori. Questo perché bisogna tenere conto anche della velocità del bus, il percorso elettrico condiviso tra i componenti. Con la RAM incorporata nel die della CPU, c'è una distanza molto breve e un percorso dedicato attraverso il quale i bit possono viaggiare, mentre la RAM posizionata in altre aree richiede che i bit viaggino sul bus condiviso, che potrebbe essere utilizzato da altri dispositivi. Ciò significa che fattori come la velocità del bus e il numero di altri dispositivi che richiedono il bus possono contribuire alla latenza del trasferimento dei dati. Anche la lunghezza fisica del bus può diventare un fattore non banale nella velocità con cui i dati possono essere spostati dentro e fuori dalla RAM.

Oltre alla velocità di clock, alla latenza e alla capacità, la memoria viene misurata anche in larghezza di banda. La larghezza di banda è la quantità di dati che scorre tra i processori e la memoria. La larghezza di banda tende ad avere una capacità massima molto più elevata rispetto alla capacità di memoria, in genere da 500 a 1000 volte maggiore. È improbabile che questo venga mai esaurito (perché la dimensione della larghezza di banda è chiamata 'massimo teorico'; in teoria potrebbe raggiungere quel massimo). È solo per garantire il funzionamento più fluido tra la memoria e i processori. Il confronto tra queste misurazioni dipende dal tipo o dalla memoria.

Annuncio:

Uno dei problemi con la memoria e la CPU durante lo sviluppo dei computer è qualcosa chiamato il . Mentre le prestazioni della CPU dal 1986 al 2000 sono migliorate ogni anno di circa il 56%, le prestazioni della RAM sono migliorate solo di circa il 10% all'anno. Quindi è solo questione di tempo prima che la RAM diventi troppo lenta per la CPU, ovvero la CPU farà il suo compito e rimarrà inattiva in attesa di più dati da o verso la RAM. Tuttavia, mentre i miglioramenti nell'efficienza della CPU (ad esempio, i processori Intel Core 2 rispetto ai processori Pentium D) hanno bloccato questo problema, la fisica essenzialmente detta a meno che le prestazioni della memoria non inizino a migliorare, le prestazioni della CPU inizieranno a soffrire.

Un aspetto frainteso della memoria è che più memoria equivale automaticamente a prestazioni migliori. Questo probabilmente iniziò negli anni '90 quando furono venduti computer 'abbastanza buoni'. La tecnologia stava migliorando a un ritmo così rapido che la quantità di RAM in un computer acquistato di recente potrebbe non essere sufficiente per eseguire un programma nel giro di sei mesi. La quantità di RAM disponibile per un computer è un enorme YMMV in termini di prestazioni. Ma il test è in realtà semplice per determinare se un sistema trarrebbe vantaggio da maggiori benefici. Se la RAM è costantemente piena e si utilizza il file di scambio del disco rigidoNotaQuesta è una sorta di trucco per ingannare i programmi facendogli pensare che il computer abbia più memoria di quanta ne abbia in realtà. Quando il sistema operativo crede che qualcosa nella RAM non sia accessibile o utilizzato così tanto, memorizzerà quei dati in un file di scambio per fare spazio a dati più utili, il sistema potrebbe sicuramente beneficiare di più RAM. Se la RAM viene utilizzata a malapena, il sistema non la sta realmente utilizzando, quindi aggiungerne dell'altra non aiuterà. Questo sta cambiando sui moderni sistemi operativi, tuttavia, dove la memoria extra viene utilizzata passivamente per contenere file di dati aggiuntivi per un rapido accesso da parte dei programmi, riempiendosi più a lungo il sistema è acceso. Se la memoria è necessaria per l'uso attivo, la cache viene espulsa per fare spazio.

Come esempio tangibile, immagina di fare la spesa. All'inizio opti per il cestino più piccolo. Più tardi nella vita o ad un certo punto, inizi a richiedere più beni. Se continui ad utilizzare il carrello, questo trabocca e devi completare il giro di shopping e scaricare quello che hai a casa e tornare un'altra volta. Tuttavia, se usi il carrello molto più grande, puoi metterne più in una volta e fare tutto in un viaggio. Ma solo perché l'aggiunta di un carrello della spesa ti ha reso la vita più facile non significa aggiungere un'altra volontà. (Anche se puoi 'mettere in cache' i generi alimentari di cui potresti aver bisogno per un uso futuro nel carrello aggiuntivo e metterli da parte, proprio come fa un sistema operativo per pre-recuperare i dati che potrebbero essere necessari in seguito.)

Esistono diversi modi per classificare i tipi di RAM, ma i due più utilizzati sono la classificazione tecnologica (ovvero dalla tecnologia che sottolinea ogni tipo) e la classificazione di utilizzo, suddividendo i tipi in base al loro scopo. Eccoli:

Modelli di memoria del PC di base:

Come il Commodore Amiga, la memoria del PC è segmentata in diversi sottotipi.

  • Memoria convenzionale : Il tipo di memoria di base del computer, definito fino ai primi 640 kilobyte di RAM. Questa è la memoria di base del computer ed è indirizzabile da tutti i programmi per PC.
  • Area di memoria superiore (UMA) : Su molti sistemi, è possibile popolare la scheda madre con più RAM oltre 640k, fino a 1MB. Questa area di RAM in eccesso è nota come Area di memoria superiore e coesiste con 'buchi di memoria' destinati alla comunicazione con schede EMS e altre periferiche. Sui sistemi in cui è necessaria più memoria, sono installati più di 640.000 DIP-chip RAM e i driver del sistema operativo e dei dispositivi funzionano in tandem contrassegnando quali sono buchi di memoria e quali sono memoria UMA aggiuntiva. Queste posizioni UMA possono quindi essere 'riempite' da programmi compatibili con UMA, in blocchi.
  • Specifiche della memoria espansa (EMS) : Risultato di una joint venture tra Lotus, Intel e Microsoft, la specifica è stata progettata per aggirare il limite di 1 MB imposto dal processore 8086. La tecnica della memoria suddivide la memoria su una scheda di espansione in pagine di 64k e apre una 'finestra di memoria' insieme a uno speciale registro di pagina, entrambi situati in parti specifiche dell'area di memoria superiore ma al di sotto del limite di 1 MB. I programmi compatibili con EMS potrebbero scrivere la pagina desiderata nella memoria del registro di pagina, che detterà al mappatore di memoria sulla scheda quale pagina da 64k sarebbe resa disponibile al programma tramite la finestra di memoria (funziona in modo simile a alcune cartucce di giochi NES ). Nonostante l'introduzione della memoria XMS, EMS è rimasto lo standard per molti anni, e gli emulatori EMS sono apparsi quando XMS è diventato la norma esclusivamente perché lo standard è così diffuso nel mondo degli affari.
  • Specifica memoria estesa (XMS) : Con l'arrivo della CPU 286 e del loro limite di indirizzi di memoria molto più grande, i produttori si rendono conto che possono smettere di usare il paging per migliorare le velocità di lettura e scrittura. A differenza di EMS, XMS è semplice da usare e manca del complicato meccanismo di scambio di pagina utilizzato da EMS, poiché risiede immediatamente al di sopra della posizione di memoria di 1 MB (la posizione di memoria compresa tra 640k e 1023k è in genere riservata per la comunicazione con le schede di espansione o per la memoria riempita utilizzando il Schema 'Upper Memory Area')- e di conseguenza è esponenzialmente più veloce rispetto alle schede EMS. Tuttavia, a causa dell'uso diffuso di vecchi programmi che utilizzano la memoria EMS, gli emulatori EMS come QEMM sono diventati un must. MS-DOS 5.0 in poi viene fornito con l'emulatore EMS EMM386 incluso nella confezione. Lo standard XMS rimane in uso fino ad oggi. In MS-DOS, la memoria XMS deve essere abilitata tramite un driver, in genere HIMEM.SYS, a causa del codice legacy a 16 bit di MS-DOS che è rimasto sostanzialmente invariato per tutta la sua durata. Un programma deve quindi utilizzare un extender (o, nel caso di Windows 9x, utilizzare il proprio gestore di memoria) per accedere alla modalità a 32 bit per accedere alla memoria XMS. Windows NT e le sue varie progenie, nonché varie versioni di Unix, si avvia a 32 bit (e successivamente a 64 bit) dall'inizio, non ha bisogno di driver ed extender e i programmi possono accedere direttamente a tutta la memoria XMS.

Per tecnologia:

Storico

Ben prima che i moderni tipi di memoria diventassero disponibili, le prime macchine avevano ancora bisogno di archiviare i propri dati - anche l'ENIAC, che non aveva nemmeno un programma memorizzabile (era controllato collegando in sequenza tutti i moduli insieme) aveva un po' di spazio di archiviazione per i dati. Inizialmente questa era la soluzione molto semplice e ovvia: la memoria statica, ovvero mantenere i dati nei circuiti elettronici chiamati trigger, o flip-flop, che potevano rimanere in uno dei due stati stabili. Ma poiché la dimensione delle parole in quelle prime macchine era compresa tra 20 e 40 bit e un flip-flop può contenere al massimo due bit di informazioni, pur richiedendo almeno quattro valvole elettroniche nel momento in cui l'unico tipo di valvola disponibile era un enorme e fragile tubo a vuoto, avere più di un paio di dozzine di tali 'registri' era semplicemente impraticabile.

È lì che tutto è diventato interessante. Per contenere quantità maggiori di dati sono state utilizzate diverse tecnologie, alcune delle quali decisamente strane. Come memorizzare i dati come onde acustiche (sì, esplosioni di suoni) in tubi pieni di mercurio o impulsi magnetici su un tamburo rotante. Tecnicamente, questi tipi di memoria non erano nemmeno ad accesso casuale, erano sequenziali, ma simulavano la RAM relativamente bene. Poi c'era una tecnologia in cui i bit venivano memorizzati come punti sulla superficie di fosforo di un CRT, che aveva il vantaggio che il programmatore poteva letteralmente vedere i bit memorizzati, che spesso hanno aiutato nel debug del software.

Ma la maggior parte di queste tecnologie non erano terribilmente pratiche; erano costosi, lenti e (soprattutto nel caso delle linee di ritardo a mercurio) pericolosi per l'ambiente. Il dottor An Wang (allora di IBM) ha proposto una soluzione che ha preso d'assalto il settore: memoria a nucleo magnetico .

La memoria principale consisteva in migliaia di minuscoli nuclei magnetici (1-2 mm di larghezza) a forma di ciambella, posti su una griglia di fili metallici. Manipolando le tensioni poste su questi fili, è possibile leggere o scrivere lo stato di ogni singolo nucleo. Poiché non c'erano parti mobili, come con una linea di ritardo o un tamburo, il tempo di accesso era molto più rapido. La memoria principale era anche sostanzialmente più densa della memoria a linea di ritardo o CRT e consumava anche meno energia. Manteneva il suo contenuto anche quando l'alimentazione era spenta, cosa ampiamente utilizzata all'epoca.

Oltre alle loro dimensioni compatte (ad esempio, un'unità con 1K, una quantità piuttosto generosa del tempo, era una cornice piatta di soli 20x20x1 cm quadrati), erano anche piuttosto economici. I nuclei dovevano essere assemblati a mano, anche nei loro ultimi giorni (i primi tentativi di meccanizzare il processo fallirono e furono abbandonati una volta apparsa la RAM a semiconduttore), quindi la maggior parte dei produttori utilizzava la manodopera a basso costo di sarte e ricamatrici dell'Asia orientale (che erano state licenziate da l'adozione diffusa delle macchine da cucire) rendendola così accessibile. La maggior parte dei mainframe e dei minicomputer utilizzava la memoria di base, ed era radicata nella mente delle persone che ci lavoravano a tal punto che anche ora puoi incontrare una situazione in cui la parola 'core' è usata come sinonimo di RAM, anche se i computer in genere non lo usavo dagli anni '70.

RAM a stato solido

La RAM a stato solido è stata la tecnologia che ha finalmente posto fine all'era dei core. Era una conseguenza dei tentativi di miniaturizzare i circuiti elettronici. I transistor avevano sostituito le valvole a vuoto nei primi computer in tempi relativamente brevi, a causa delle loro dimensioni ridotte, affidabilità (non avevano involucri di vetro da rompere o filamenti da bruciare) e un consumo energetico molto inferiore. Tuttavia, anche i transistor più piccoli dell'epoca avevano all'incirca le dimensioni di una piccola gomma da matita e ne servivano centinaia per realizzare un computer funzionante, quindi i computer rimanevano comunque ingombranti e costosi. Negli anni '50 due ingegneri immaginarono indipendentemente come mettere più transistor e altri componenti elettronici sullo stesso pezzo di semiconduttore, e quindi il circuito integrato sono nato. Le dimensioni dei circuiti elettronici hanno iniziato a ridursi quasi dall'oggi al domani e una delle prime applicazioni nell'industria dei computer è stata per la RAM.

  • RAM statica , come accennato in precedenza, è un tipo di memoria in cui ogni bit è rappresentato da uno stato di un certo tipo di circuito chiamato a ciabatte infradito . Con un circuito integrato che sostituisce diversi transistor e i relativi circuiti, la memoria statica è diventata molto più conveniente e ha iniziato ad apparire in quantità sempre maggiori. Il vantaggio principale della memoria statica è che è molto veloce: in pratica, la sua velocità è limitata solo dalla velocità dei processi fisici all'interno del transistor, e questi sono estremamente rapido. Richiede anche energia solo per scrivere qualcosa e richiede solo una quantità simbolica durante la lettura o la memorizzazione, quindi non dissipa quasi il calore. Tuttavia, ogni bit di memoria statica richiede da due a quattro transistor per essere archiviato, quindi rimane relativamente ingombrante e costoso.
  • RAM dinamica , d'altra parte, utilizza condensatori per memorizzare i bit (richiede generalmente un condensatore e, forse, un diodo per memorizzare un bit, il che richiede molto meno spazio sul silicio), quindi è molto più compatto e quindi economico. Sfortunatamente, i condensatori tendono a perdere carica nel tempo, quindi devono essere periodicamente ricaricati, di solito leggendo la memoria e scrivendo di nuovo gli stessi dati, chiamato 'rinfresco della memoria'. Questo processo richiede l'attenzione della CPU o dei circuiti di supporto aggiuntivi sul chip di memoria stesso e, per aggiungere la beffa al danno, la necessità di aggiornare costantemente il contenuto della memoria significa che quando l'alimentazione viene interrotta, tutta la memoria viene completamente cancellato: il nucleo, essendo magnetico, era completamente non volatile e la RAM statica richiedeva così poca energia da poter essere mantenuta in vita con una semplice batteria da orologio al litio. Tuttavia, l'enorme densità offerta dalla DRAM la rende il tipo di memoria più conveniente e utilizzato di sempre.
  • RAM magnetica è fondamentalmente un ritorno al nucleo a un nuovo livello, in cui ogni anello di ferrite del nucleo vecchio stile è sostituito da un grano di ferrite in un circuito integrato. Ha il vantaggio di densità di una DRAM (c'è qualche penalità, ma non è così grande), la sua velocità è più vicina alla RAM statica, è completamente non volatile e può essere scritta tanto velocemente quanto viene letta (per non parlare di molti volte se necessario), annullando la maggior parte degli inconvenienti della memoria flash. Sfortunatamente, a causa della vendita di Flash come un gelato in una giornata calda, pochi produttori potrebbero risparmiare le loro fabbriche per produrlo e richiede una significativa riprogettazione della scheda madre per l'avvio. Questo e diversi colli di bottiglia tecnologici sembrano bloccarlo nell'inferno dello sviluppo per il momento.
    • In una nota a margine, c'è anche un problema con la sicurezza con la memoria non volatile. Ad esempio, se un computer che esegue la crittografia dispone di memoria non volatile, un hacker intelligente potrebbe spegnere la macchina, estrarre la memoria ed eseguire un dump senza timore di perdere il contenuto. Affinché la stessa cosa avvenga con la DRAM (in realtà perde memoria nel tempo, non istantaneamente), la persona dovrebbe scaricare il chip RAM nell'azoto liquido per rallentare il processo di scarica. Tuttavia, con l'avvento dei coprocessori di crittografia al volo che crittografano i dati sull'unità di gestione della memoria stessa prima ancora che qualcosa venga scritto nella memoria, la memoria non volatile sta tornando in una forma altamente aggiornata.
  • C'è un nuovo tipo di memoria all'orizzonte basato sui memristori. Sebbene teorizzato nel 1971 come il quarto componente elettrico passivo a due terminali, non è stato effettivamente fabbricato fino al 2008. I memristori hanno la proprietà che la resistenza aumenta quando la corrente scorre in un modo e diminuisce quando la corrente passa nell'altro. Questo cambia la tensione attraverso la parte, che può essere utilizzata per leggere uno 0 o 1. Poiché è una parte passiva, è molto veloce e non richiede alimentazione per mantenere il suo stato. Attualmente questa tecnologia viene commercializzata su hardware di classe server come NV-DIMM ( Modulo di memoria dual-inline non volatile ). Con le informazioni che vanno e vengono dalla CPU ora vengono crittografate prima ancora che vengano scritte in memoria da un coprocessore dedicato, se utilizzato con l'hardware corretto, questo tipo di memoria è relativamente sicuro.

Tipi di RAM obsoleti moderni

  • RAM veloce della pagina - un'evoluzione della normale DRAM, dall'era 286 fino all'inizio dell'era Pentium. Aveva una frequenza di aggiornamento fino a 70 ns. Un modulo tipico dell'epoca conterrebbe fino a 8 MB di Fast Page RAM. Funzionano a una velocità di 66 MHz. Vale anche la pena notare che a metà della durata della RAM, c'è stata una modifica del design dello slot e la quantità di pin per il connettore è passata da 30 a 72. Il primo è spesso noto come SIMM o Single Inline Memory Module, mentre il secondo è noto come DIMM o Dual Inline Memory Module.
  • Uscita dati estesa (EDO) RAM - A partire dalla metà dell'era Pentium, questo tipo di RAM è emerso per sostituire Fast Page RAM. È elettronicamente compatibile con Fast Page RAM e utilizza gli stessi slot per moduli di memoria in linea a 72 pin e funziona anche alla stessa velocità di 66 MHz del suo predecessore. Tuttavia la frequenza di aggiornamento è stata aumentata a 60 ns. Una versione migliorata che supporta le operazioni Burst (BEDO RAM) è stata introdotta tardi nella vita del tipo RAM, ma a quel punto il mercato ha già scelto SDRAM come successore poiché SDRAM è la più economica delle tre (la RAM è stata anche messa in concorrenza con Rambus DRAM). Un modulo EDO può avere una dimensione massima di 128 MBNotaanche se notoriamente, le schede madri con chipset Intel VX e FX non potevano utilizzare il modulo di dimensioni maggiori, poiché DIMM e SIMM RAM devono essere installate in coppia e Intel aveva fissato un limite di memoria di 128 MB sull'unità di gestione della memoria del chipset.
  • RAM a velocità dati singola (SDR). - Inizialmente commercializzata come Synchronous Dynamic RAM (SDRAM), la tecnologia è stata successivamente ribattezzata Single Data Rate RAM per implicare che è il precursore della Double Data Rate RAM. Introdotto alla velocità di 66 MHz alla fine della vita del Pentium e confrontato alla concorrenza sia della RAM BEDO che della Rambus DRAM, questo tipo di RAM alla fine è emerso come la scelta del consumatore grazie alla sua convenienza ed è il diretto predecessore della RAM DDR. È stato costantemente lavorato e quando è stato finalmente usurpato dalla RAM DDR nell'era del Pentium 4, aveva guadagnato velocità fino a 133 MHz e un modulo può avere dimensioni fino a 512 MB.

RAM DDR

La DDR sta per 'Double Data Rate'. In genere, la RAM elabora i dati una volta per ciclo di clock, mentre questo tipo di memoria lo fa due volte. Ha il costo di una latenza leggermente inferiore, ma raddoppiare la velocità di clock è un enorme vantaggio per i giochi. La DDR è diventata disponibile in commercio e la Xbox è stata la prima console a utilizzare la memoria DDR, mentre la concorrente Playstation 2 e successivamente 3 hanno utilizzato la concorrente Rambus DRAM (vedi sotto). Ogni generazione di DDR ha ridotto la tensione operativa, il che significa che utilizza meno energia per ogni trasferimento di memoria. Tuttavia, l'aumento delle velocità significa che il consumo complessivo di energia potrebbe essere ancora maggiore.

Attualmente, siamo nella quarta generazione di RAM DDR. Le generazioni sono le seguenti:

  • L'originale RAM DDR (a volte chiamato retroattivamente DDR1 ): 266 MHz-400 MHz, la dimensione del modulo varia da 128 MB a 2 GB
  • RAM DDR2 : 533 MHz-1066 MHz, le dimensioni dei moduli vanno da 512 MB a 4 GB. Poche schede madri e processori supportano il pilotaggio della RAM a una velocità di 1066 MHz senza overclock, la maggior parte raggiunge un massimo di 800 MHz.
  • RAM DDR3 : 800 MHz-2,8 GHz, gamma di dimensioni del modulo da 1 GB a 16 GB, con moduli da 32 GB sulla tabella di marcia. È ancora in fase di sviluppo in tandem con la RAM DDR4 (presumibilmente a causa di applicazioni integrate o a basso costo) e dal 2015 raggiunge velocità fino a 2,8 GHz. Tuttavia, la maggior parte delle CPU consumer supportava solo fino a 2133 MHz, dopodiché i produttori sono passati a utilizzare la RAM DDR4. Gli ultimi chip consumer a utilizzare la RAM DDR3 sono le CPU AMD Kaveri e Intel Broadwell.
  • RAM DDR4 : 1,6 GHz-4,3 GHz. La dimensione del modulo di memoria parte da 4 GB. La RAM ha raggiunto il suo pieno potenziale di 4,3 GHz entro la fine del 2016. Alla fine del 2019, le CPU supportano ancora ufficialmente solo una velocità massima della RAM di 3,2 GHz. Tuttavia, le CPU più recenti supportano ufficiosamente velocità molto più elevate, con oltre 5 GHz possibili con l'overclocking. Gli ultimi chip consumer a utilizzare la RAM DDR4 sono le CPU AMD Zen 3 e Intel Rocket Lake.
  • RAM DDR5 : 4,8 GHz-6,4 GHz. Lanciato a metà 2020 e i primi moduli in arrivo a metà 2021 con le CPU Intel Alder Lake le prime a supportare lo standard. Anche le prossime CPU Zen 4 di AMD utilizzeranno la memoria DDR5.

La RAM GDDR è una variante della DDR progettata specificamente per l'uso con le GPU. Consente una maggiore larghezza di banda della memoria oltre ad aggiungere alcune funzioni extra, come la possibilità di riempire interi blocchi di memoria con un solo colore. Sebbene sia basato sulla RAM DDR, si è evoluto in qualche modo separatamente e quindi non corrisponde del tutto in termini di generazioni. GDDR4 e 5 erano entrambi basati su DDR3. Questo è stato seguito da GDDR5X, che è tecnicamente quad data rate e non proprio DDR. GDDR6 è un'evoluzione di questo, divergendo ulteriormente dal DDR standard. Le prime GPU commerciali che utilizzano GDDR6 sono state rilasciate nel 2018 e, a partire dalla metà del 2019, è utilizzata da tutte le nuove GPU sia di Nvidia che di AMD.

Rambus DRAM

'Rambus Dynamic RAM' si concentra su una larghezza di banda leggermente superiore e una velocità di clock molto più elevata. Viene a scapito di un maggiore consumo energetico, una maggiore capacità e una latenza più lenta. L'ultimo è stato ridotto nelle versioni successive, al punto che la variante XDR su PS3 ha una latenza non più lenta della memoria DDR.

Ciò significava che le versioni precedenti non erano così buone per la grafica. Non ha danneggiato la PlayStation 2 , che l'ha utilizzata per la memoria normale, non per la memoria video, ma il Nintendo 64 l'ha utilizzata per la memoria video. Questo era uno dei tanti colli di bottiglia che impedivano al sistema di funzionare così come la sua grafica.

La Rambus DRAM è evidentemente buona per la riproduzione video, ecco perché PS2 e PS3 sono considerati lettori di film così buoni per i loro tempi. La PlayStation Portable non utilizza quel tipo di memoria, dato che l'aumento del consumo energetico consumerebbe la batteria. Ciò ha significato che la riproduzione di film UMD sui televisori è notevolmente sbiadita. È stato utilizzato brevemente all'inizio degli anni 2000 per i PC domestici; tuttavia, sebbene fosse davvero velocissimo, l'aggiornamento era troppo costoso a causa delle elevate tariffe di licenza che i produttori di moduli finivano per trasferire ai consumatori, e molti produttori di schede madri ritenevano che le tariffe di licenza addebitate da Rambus fossero troppo alte (e ancora, coloro che hanno sopportato gli alti costi di licenza hanno trasferito la tariffa ai consumatori: ciò ha fatto apparire sia i moduli RAM che le schede madri più costosi dell'altra opzione, che è la SDRAM).

Sebbene Rambus abbia prodotto una specifica per XDR2, l'idea era già stata effettivamente superata da GDDR e non è mai stata utilizzata. La Playstation 3 è stato l'ultimo prodotto significativo a utilizzare questo tipo di memoria.

EDRAM

In genere, un'unità di elaborazione grafica non dispone di cache. La memoria video ricopre quel ruolo. Ma 'Embedded Dynamic RAM' è dannatamente vicino. È bloccato proprio accanto al processore invece che al suo interno. Il guadagno è di dimensioni maggiori (ma ancora molto più piccolo della memoria standard) e la sua velocità di clock corrisponde ancora al processore. I compromessi sono una larghezza di banda ridotta (ma comunque da 10 a 100 volte superiore rispetto alla memoria standard) e una latenza più lenta (ma ancora molto, molto più veloce della memoria standard) e un aumento dei costi di produzione.

La velocità notevolmente aumentata significa che la memoria video può gestire all'incirca la stessa quantità di dati rispetto alla memoria standard di dimensioni molto maggiori. PS2, GameCube, Wii e 360 ​​utilizzano tutti questo tipo di memoria, mentre Xbox One utilizza questo tipo di memoria esclusivamente per la grafica. La gente pensava che le dimensioni fossero troppo piccole, ma una volta che hanno preso piede, i sistemi hanno funzionato bene con quella memoria. I sistemi futuri con il processore cellulare prevedono di utilizzare questo tipo di memoria, poiché è praticamente abbastanza veloce da tenere il passo con quel processore.

IT-SRAM

Probabilmente una buona via di mezzo tra la memoria standard e la memoria incorporata. Ha velocità di clock e larghezza di banda medie, ma anche una capacità media, combinata con una latenza solo leggermente più lenta dell'EDRAM. Il Game Cube e la Wii utilizzano questo tipo di memoria (sì, la Wii usa questa memoria, EDRAM e GDDR3 contemporaneamente).

Memoria ad alta larghezza di banda (HBM)

HBM è il risultato di un muro colpito dalla memoria di tipo GDDR. Cioè, anche se GDDR5 ha raggiunto un impressionante 7,0 GHz, ci vuole Un sacco di potenza per eseguirlo. Per ridurre il consumo energetico e aumentare la larghezza di banda della memoria allo stesso tempo, AMD ha collaborato con il produttore di memorie Hynix per creare HBM. L'idea è semplicemente impilare i die RAM uno sopra l'altro, utilizzare passaggi di silicio ad alta densità come canali di comunicazione e utilizzare uno strato di interposizione come base su cui si trova anche la GPU per parlare con la memoria. Il risultato è un'incredibile interfaccia bus a 4096 bit nella sua prima implementazione e decine di watt di risparmio energetico per la stessa quantità di memoria. Il concetto è simile alla produzione pacchetto su pacchetto utilizzata nelle aziende system-on-chip, in cui il processore è impilato sopra la RAM nello stesso pacchetto. La HBM è attualmente alla sua seconda generazione, con l'unica differenza rispetto alla prima generazione che è una velocità di segnalazione più elevata, il bus di memoria è ancora largo 4096 bit.

A partire dal 2021, l'utilizzo della HBM è stato per lo più relegato ai design delle GPU di fascia alta. È probabile che per la produzione in serie, la HBM possa presentare problemi di resa. Se l'assemblaggio finale presenta problemi, è molto più difficile risolvere e isolare qual è il problema per risolverlo. I design VRAM discreti sono modulari e più facili da isolare un componente problematico per sostituirlo.

Per utilizzo:

Registri

Questo è il tipo di memoria più veloce disponibile. Tutti i processori hanno in genere dei registri, che normalmente è una RAM statica molto veloce. Questi memorizzano su una parola di dati, il numero di bit che il processore può gestire contemporaneamente. Il più importante è il contatore di istruzioni, poiché contiene dove si trova l'istruzione successiva. Un'altra che viene sempre trovata è la parola di stato. Altri possono essere presenti e alcuni possono essere utilizzati dall'utente o meno. È interessante notare che i processori di set di istruzioni complessi hanno relativamente pochi registri. I processori con set di istruzioni ridotto ne hanno facilmente più di 100. Ad esempio, la maggior parte delle moderne CPU x86, essendo internamente macchine RISC molto avanzate, utilizzano la ridenominazione automatica dei loro ~128 registri interni per simulare diversi set dei 14 registri x86 tradizionali, consentendo così diverse istruzioni CISC da eseguire subito.

cache

Nel caso ve lo stiate chiedendo, si pronuncia 'cash', non 'ca-shay'. Questa è la memoria bloccata direttamente nella CPU. Come mai? Molto spesso la CPU ha bisogno di memorizzare i dati per determinate elaborazioni. Non ha bisogno di archiviare molto, ma ha bisogno di archiviarlo in memoria il più velocemente possibile. La cache riempie quello scopo. Attaccandolo direttamente all'interno del processore, la latenza non è inferiore a quella del processore e la velocità di clock corrisponde. Significa che la cache può essere solo così grande. Il 360 ha la maggior parte della cache di qualsiasi console domestica e ha una dimensione di appena 1 megabyte. Ma è la velocità che conta, poiché è progettata per stare al passo con la CPU. Molti PC e console moderni hanno più livelli di cache di dimensioni variabili, ad esempio un PC moderno del 2010 ha almeno tre livelli. Di solito, il livello 1 è il più veloce, ma ha la minor quantità di spazio di archiviazione e, man mano che il livello aumenta, la velocità viene ridotta ma la quantità di spazio di archiviazione aumenta.


Articoli Interessanti