"parallelismo" non significa nulla (in realtà), o meglio ha tanti significati dipendenti dal contesto.
nell'ambito della didattica elementare il bus dati accede con un certo grado di "parallelismo" (che poi significa bus width) alla memoria, e non è detto che ciò corrisponda all'architettura interna.
di nuovo la storia ha provato (processore Intel 8088, quello del primo PC IBM per capirci) che non necessariamente c'è un'identità "esterna" e "interna" (8/16 bit nel caso della CPU Intel).
In sostanza una CPU (* anche qui ci sarebbe molto da dire su cosa sia una "CPU", perchè in realtà c'è il memory controller, che può essere integrato o meno eccetera) con databus a 8 bit legge e scrive 8 bit alla volta (verso la RAM).
Quindi se può indirizzare tot celle, ognuna delle quali "larga" 8 bit, avrà una memoria indirizzabile di (tot celle)*8 bit.
Se invece è in grado di leggere-scrivere, poniamo, 16 bit alla volta, allora la memoria sarà doppia, perchè saranno (tot celle)*16 bit, poi 32 e oggi 64 bit (128 e 256 per certe CPU da scheda video).
Accade inoltre (oggi sempre meno frequentemente, restano delle vestigie in poche applicazioni micro-embedded), come accennato, che una CPU che funziona internamente con registri a 16 bit (poniamo), legga-scriva in "blocchi" (cioè con parallelismo) databus di 8 bit.
Per leggere un singolo registro (16 bit nel nostro caso) dovrà quindi "magicamente" avvenire una duplice lettura: 8 bit alla prima "mandata", più altri 8 la seconda (questo avveniva mediante logica esterna alla CPU, cioè con un altro integrato/i)
Anzi, per risparmiare ancora complessità si sono multiplexati parte del bus indirizzi con quello dati
Essenzialmente la CPU ha un bus indirizzi, cioè per capirci 20 piedini (quindi 2^20 = 1.048.576 parole) fisici per generare gli indirizzi.
Ma di questi alcuni possono fungere sia da databus che addirittura come bus di I/O.
Se ti stai chiedendo il perchè di questa strategia, la risposta è banale: costi e riduzione della complessità.
Cioè "paghi" con rallentamenti avere meno pin, meno linee, meno tutto.
Ai "tempi" (cioè inizio anni '80) la memoria a 8 bit era molto meno costosa di quella a 16 bit, quindi IBM ebbe la pensata-genialata di usare una CPU a 16 bit interni (quello che oggi è diventata la linea pentium/core/sticazzi, insomma i3, i5, i7 eccetera, anche se ci sarebbe lo spiegno del merge delle estensioni a 64bit AMD) con un databus a 8 bit, proprio per interfacciare chip di memoria meno costosi.
Ovviamente questo rallenta l'accesso alla memoria (parallelismo a 8 bit anzichè 16), ma a quei tempi ciò fu ritenuto vantaggioso.
Altrettanto ovviamente, poco dopo, usarono la versione con bus dati a 16 bit (8086, poi 80186) e memorie a 16 bit.
-------------
Riassunto dello spiegone:
- per la versione didattica-elementare il bus dati è composto da tante linee ognuna delle quali "porta" un bit. Quindi 8 linee=8bit; 32 linee=32bit=4byte e la CPU può indirizzare, leggere-scrivere (nell'esempio) 1 byte o 4 alla volta.
- per la versione reale: è successo e succede di tutto, dove si ebbero CPU che internamente funzionavano a 16 bit, ed esternamente a 8, perchè qui "comanda" la RAM. Cioè se hai una RAM con un bus a 8 bit dovrai progettare un sistema che lavora a 8 bit.
E' successo di tutto e di più anche con vari tentativi negli ultimi 30 anni che non ti enumero
- corollario magari vagamente più utile (anche se superbanalizzato). Hai mai sentito di CPU con controller di memoria dual-channel (triple/quadruple) e utilizzo di banchi RAM in coppia (terzetti/quadripletti) ?
Essenzialmente dato un modulo di memoria che trasferisce, ad esempio, 32 bit alla volta, mentre hai una CPU che sarebbe in grado di lavorare con 64 bit, cosa si fa?
Si mettono due banchi DIMM, e poi la CPU leggerà "una mezza parola" (cioè 32 bit) dal banco1, e contemporaneamente l'altra mezza parola (cioè gli altri 32 bit) dal banco2.
In teoria quindi hai raddoppiato la banda di trasmissione della RAM (* nel caso DDR-Intel sono 64 bit per banco RAM, 128 in totale per dual).
Ovviamente qui ci andrebbe un superspiegone su come funziona in realtà, cosa succede all'interno della CPU con i vari livelli cache, i TLB e gli (per semplificare) sticazzi.
Spero che dal superspiegone avrai una (sia pur vaga idea) del perchè si consigli per le CPU casarecce di montare le DIMM in coppia, per avere un "dual channel" verso la RAM