Perché l'8085A Ha un Decodificatore a 8 Bit: Architettura Spiegata
Abbinamento Larghezza Decodificatore all'Architettura del Set di Istruzioni
Il decodificatore di istruzioni dell'Intel 8085A è largo 8 bit perché il processore è un microprocessore a 8 bit con un formato di istruzione a 8 bit. Questo allineamento è fondamentale alla sua filosofia di progettazione.
Coerenza Architettonica
- Bus dati: 8 bit (D0-D7)
- Registri (A, B, C, D, E, H, L): 8 bit ciascuno
- Operazioni ALU: aritmetica/logica a 8 bit
- Lunghezza istruzione: 1, 2 o 3 byte — ma l'opcode è sempre 1 byte (8 bit)
Funzione del Decodificatore
Il decodificatore di istruzioni è un circuito logico combinazionale che prende l'opcode a 8 bit (prelevato in T1-T2) e genera ~200 segnali di controllo interni che governano:
- Selezione operazione ALU (ADD, SUB, ANA, XRA, ecc.)
- Percorsi di trasferimento registri (sorgente → destinazione)
- Tipo di ciclo memoria/I/O (READ/WRITE)
- Aggiornamento flag (S, Z, AC, P, CY)
- Manipolazione puntatore pila / PC
Perché Non Più Ampio?
- Costo/complessità: Un decodificatore a 16 bit richiederebbe fetch opcode a 16 bit (2 cicli), raddoppiando il tempo di fetch istruzione senza alcun vantaggio—l'8085 non ha opcode a 16 bit.
- Numero pin: L'8085 multiplexa indirizzo/dati su 8 pin (AD0-AD7); un decodificatore più ampio richiederebbe più pin o cicli.
- Densità set di istruzioni: 256 opcode (2⁸) bastano per 74 istruzioni con spazio per espansione (esistono opcode non documentati).
Contesto Storico
L'8085 (1976) si è evoluto dall'8080 (1974), entrambi a 8 bit. L'8086 (1978) introdusse architettura a 16 bit con coda di prefetch a 6 byte e opcode a lunghezza variabile—richiedendo un'unità di decodifica più complessa. Il decodificatore a 8 bit dell'8085 è una scelta deliberata e ottimale per la sua ISA a 8 bit.