cerca
CU Cablata e CU Microprogrammata
modifica cronologia stampa login logout

Wiki

UniCrema


Materie per semestre

Materie per anno

Materie per laurea


Help

CU Cablata e CU Microprogrammata

Torna alla pagina di Architettura degli elaboratori


Questa pagina è stata aggiornata GRAZIE agli appunti che AVETE INVIATO nel periodo di chiusura della sezione UniCrema!! È SERVITA A QUALCOSA, NO?! ;)

 :: CU Cablata e CU Microprogrammata ::

CU Cablata

Una possibile struttura generica di una unita di controllo cablata può essere la seguente:

  • per capire il tipo di istruzione da processare possiamo prendere i due bit più significativi dell’IR ed inserirli come ingressi in un decoder 2 a 4 che attivi 1 delle 4 linee L/S/A/B a seconda che l’istruzione presente nell’IR sia load/store/add/branch. In questo modo la decodifica dell’istruzione viene fatta da un decoder hardware;
  • per quanto riguarda il CC è sufficiente prelevare il valore presente nel bistabile Z e renderlo disponibile alla CU;
  • per definire il passo di avanzamento possiamo immaginare di realizzare un contatore che viene incrementato dal Clock della CU, e ancora una volta un decoder che trasforma il valore del conteggio nell'accensione successiva di una delle 10 linee (S0-S9) che ci dicono a quale step siamo arrivati nell'avanzamento della nostra sequenza di comandi.

Caratteristiche della CU cablata

La CU cablata è una struttura particolarmente efficiente perché la rete combinatoria Logic array e il modo più rapido per generare le uscite a partire dagli ingressi, assicurando quindi la massima velocità di esecuzione. Inoltre è particolarmente adatta a CPU RISC con poche istruzioni, perché la complessità del Logic array della rete combinatoria è dominabile e questo e il motivo per cui inizialmente le macchine RISC hanno avuto un grosso successo a livello hardware (riuscivano ad avere una notevole velocità proprio grazie alla realizzazione della CU cablata).

Riportiamo ora un elenco di svantaggi della CU cablata:

  • non è di facile modifica, evoluzioni del architettura che portino a modifica della struttura CPU richiedono la riprogettazione completa della CU cablata;
  • non è particolarmente facile usare una CU cablata per macchine CISC (macchine con set di istruzioni complesso) perché il Logic array che realizza l’espressioni combinatorie tende a esplodere esponenzialmente col crescere dei ingressi e delle uscite;
  • solo recentemente, grazie all'evoluzione tecnologica dell'integrazione sul silicio, è diventata applicabile a CU complesse come CU di unita centrali (CISC). Negli anni precedenti la cosa era poco proponibile per l'eccessiva complessità hardware di una CU cablata in presenza di un set di istruzioni complesso.

CU Microprogrammata

La struttura della CU microprogrammata si basa su una memoria di microprogramma, solitamente di una memoria a sola lettura ROM nella quale ogni parola contiene quello che viene definita una microistruzione. La microistruzione è composta da una parte di microcomandi che sono di fatto gli output CU (comandi a registri, ALU, Control Bus) e l’alta parte della microistruzione e ciò che serve per decidere quale prossima microistruzione all'interno del microprogramma dovremo prelevare ed eseguire. Traducendo il comportamento della CU in un comportamento sequenziale di passi o microistruzioni in cui e possibile mediante i bit del CC e mediante i bit che ci dicono il codice operativo acquisito durante la fase di fetch come muoverci al interno di questo microprogramma (micro perché e contenuto all'interno del CU; programma perché ha la tipica struttura di esecuzione sequenziale di passi). Esiste anche un microprogram counter' che è un registro interno alla CU che serve a scandire in sequenza le microistruzioni salvo momenti nei quali abbiamo dei microsalti delle modifiche del percorso di analisi di scansioni delle microistruzioni all'interno della memoria del microprogramma.

Caratteristiche della CU Microprogrammata

Le principali caratteristiche della CU microprogrammata sono:

  • è una struttura particolarmente regolare, la ROM cambia le sue dimensioni al variare della complessità del microprogramma ma rimane essenzialmente una struttura molto regolare dal punto di vista circuitale e così si può dire anche dei supporti esterni come microprogram counter e la logica di gestione dei microsalti;
  • è particolarmente adatta a CU complesse come quelle necessarie per CPU(CISC) quando la tecnologia hardware non è cosi evoluta da consentire il progetto di CU cablate estremamente sofisticate e comunque facilitando il progetto della CU perché le tecniche di progettazione del software si possono di fatto riapplicare anche al progetto del microcodice della CU. Questo è il motivo per cui l’approccio microprogrammato era particolarmente usato negli anni ’80 per consentire alla realizzazione hardware di CPU complesse quindi di CU che richiedevano di gestire molti segnali di I/0;
  • ha problemi di velocità di esecuzione dovuti alla presenza della memoria di microprogramma è sempre necessario il ciclo di lettura del prossimo passo della prossima microistruzione prima di poter emettere i comandi che la CU deve emettere a partire dagli ingressi alla CU stessa e questo fa si che gli step della CU microprogrammata siano decisamente più lenti degli step della CU cablata;
  • l'approccio cablato tende a soppiantare l’approccio microprogrammato appena la tecnologia di integrazione lo consente.

Torna alla pagina di Architettura degli elaboratori