RAM
Tipo di memoria in cui è possibile scrivere e leggere in modo casuale, ovvero senza rispettare una sequenza ordinata di accesso. Le RAM (Random access memory) appartengono alla famiglia delle memorie RWM (Read/write memory), registri di memoria in cui è possibile memorizzare e richiamare informazione in ogni istante. In altri termini, il tempo necessario per leggere o scrivere un bit di memoria risulta indipendente dalla sua locazione di memoria. In una RAM statica (SRAM, Static random access memory), una volta che una parola (insieme di più bit, variabile a secondo dell’architettura) è scritta in una locazione di memoria, vi resta memorizzata fintantoché il chip resta alimentato. In una RAM dinamica (DRAM, Dynamic random access memory) i dati memorizzati in ogni locazione di memoria devono essere periodicamente aggiornati (refresh) con operazioni di lettura e riscrittura. Le RAM sono tipicamente volatili, ovvero perdono il contenuto memorizzato a seguito della rimozione dell’alimentazione. Vi sono tuttavia delle RAM, dette non volatili, in grado di mantenere la loro memoria anche senza alimentazione. Esempi di RAM non volatili sono le vecchie memorie a nucleo magnetico e le moderne memorie statiche CMOS (Complementary metal oxide semiconductor), fornite di batteria al litio a lunga durata. Più recentemente sono state introdotte RAM ferroelettriche (FeRAM), che combinano elementi elettronici e magnetici su un singolo chip. Le RAM hanno ormai soppiantato le cosiddette memorie ad accesso seriale, nelle quali alcune locazioni di memoria sono sempre accessibili ma altre richiedono una serie di passi per essere raggiunte, fintantoché non viene fisicamente raggiunta la posizione richiesta. Dopo le prime di tipo elettromeccanico, sono state sviluppate memorie ad accesso seriale di tipo elettronico, come quelle di tipo CCD (Charge-coupled device). In questi dispositivi la lettura di una particolare locazione avviene inviando una sequenza temporizzata di impulsi. Tuttavia le prestazioni di questi dispositivi risultano inferiori rispetto a quelle delle RAM. La RAM è la memoria principale di tutte le architetture hardware, sia a singolo processore sia multiprocessore. Il processore tipicamente carica dalla RAM tutte le istruzioni e i dati non presenti sulla sua cache. La velocità di accesso del processore alla RAM rappresenta pertanto un parametro fondamentale per valutare le prestazioni di un calcolatore.