MICRO- PROGRAMMAZIONE CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Un diagramma dell’operazione totale non descrive il comportamento di un sistema Microistruzione: la descrizione delle funzioni che devono essere eseguite dal sistema PO-PC in un singolo passo elementare Microprogramma: la descrizione del comportamento del sistema durante l’esecuzione passo passo di un’operazione Microprogramma Totale: il microprogramma che descrive il comportamento del sistema nell’esecuzione di ogni suo passo, e quindi dell’operazione totale Diagramma a Blocchi: descrive un’operazione Microprogramma: il modo in cui l’operazione è eseguita dal sistema CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II La Microprogrammazione dell’operazione è la conversione in un microprogramma del diagramma a blocchi che descrive l’operazione. Il termine Microprogrammazione è stato coniato, anche se in un’accezione un po’ diversa, dall’inglese Wilkes nel 1951 Tale tecnica si è affermata con la serie 360 delle macchine IBM. CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microprogramma Microordine esegui OJ → OJ Trasferimento vai a μx → μx Espressione condizionale se Cr è vero allora → (Cr ) con Cr=f(x1,…, xs) <OJ, μK> frase condizionata: < (Cr ) OJ, μK> trasferimento condizionato: < (Cr ) μK> frase: (a) (b) (c) CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microlinguaggi a struttura di frase “PS” contengono istruzioni di tipo (b) Microlinguaggi a struttura di trasferimento “TS” contengono istruzioni di tipo (c) Esempio di microlinguaggio TS, detto M h | Ov , h 1 h | Oo , k (1a) h | Oo (Cr ) h 1;(Cr ) k (1c) (1b) Analogia fra struttura di microistruzioni e istruzioni di un calcolatore CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microistruzioni PS a struttura generale h |(C1 )O1J , k1 ;(C2 )OJ2 , k2 ; ;(Cq )OJq kq Una ed una sola microoperazione dell’istruzione μh viene attivata dalla verità di una ed una sola delle condizioni. Tale struttura è rappresentata mediante istruzioni con guardia h : La verità di una sola guardia fa le q deve essere garantita strutturalmente nell’implementazione del sistema Alt (C1 ) O1J k1 (C2 ) OJ2 k2 (2) (Cq ) OJq kq CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microistruzioni TS a struttura generale h | OJ (C1 )k1 ;(C2 )k2 ; ;(Cq )kq h : OJ Alt k1 (C2 ) k2 (C1 ) (3) (Cq ) kq CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II La microistruzione generale ts può essere usata come un caso particolare della ps quando gli OJi OJ i 1 q nella ts si ha ki k , i 1 q, questa assume la forma contratta Se k : OJ k (4) PS e TS sono i capostipiti delle famiglie di linguaggi ps e ts, da essi derivabili imponendo dei vincoli alle rispettive espressioni. I vincoli si traducono in limitazioni nel numero delle frasi condizionate (trasferimenti condizionati) diverse che possono essere contenute in una microistruzione e/o nelle microoperazioni e/o nei trasferimenti che una microistruzione può eseguire. CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Esempio 6 L’esempio del microlinguaggio ts presentato, ha le seguenti limitazioni: (1a) ed (1b) non possono contenere trasferimenti condizionati (1c) ammette la possibilità di solo 2 trasferimenti condizionati (1a) non può eseguire la microoperazione nella O0 (1b) ed (1c) possono solo eseguire la O0 In (1a) il trasferimento è relativo alla microistruzione che segue la corrente μh. Analoga cosa accade alla prima parte di (1c) |O , (1a) h v h 1 h | Oo , k (1b) h | Oo (Cr ) h 1;(Cr ) k (1c) CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microprogrammi e automi a stati finiti Un microlinguaggio è generale se consente di descrivere il comportamento di un qualsiasi sistema PS e TS sono generali La macroistruzione PS o TS PO definisce la riga di una tabella di flusso. Il xr Ojr microprogramma chiuso, scritto in PS o TS, definisce PC l’intera tabella di flusso di PC. i CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Corrispondenza microprogrammi-automi q=2s righe μistruzioni di programma h h Microprogramma PS e tabella PC di tipo Mealy Microprogramma TS e tabella PC di tipo Moore CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Con riferimento al modello generale, le q condizioni logiche (Ci) possono essere associate alle s variabili di condizione, tramite un’opportuna codifica: q=2s In tal caso le (2) e (3) possono essere scritte usando il costrutto case: h | case x1 , x2 , , xs of 00 0: _________ 00 1: _________ 11 1: _________ PO x1 x2 x3 23=8 PC (C1) (C8) i (000) (111) x1x2x CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Definito l’insieme degli stati di ingresso xr l’insieme degli stati di uscita Oj l’insieme delle microistruzioni (stati interni) h Che formino un qualsiasi microprogramma chiuso PS o TS, è possibile da questo, ottenere una tabella di flusso di Mealy o Moore, che impiega i suddetti stati. Un qualsiasi microprogramma chiuso descrive il completamento di un automa corrispondente Microprogrammi chiusi PS e TS e tabelle di flusso di Mealy e di Moore sono metodi diversi ma equivalenti per descrivere uno stesso automa. CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Descrizione dell’operazione totale di un sistema che esegue la moltiplicazione (k1=0) e la conversione da modulo e segno a complemento a 2 (k1=1) CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microprogramma MA definito mediante istruzioni di tipo M CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microprogramma MB definito mediante il microlinguaggio TS CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Microprogramma MC definito mediante il microlinguaggio PS CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Mealy: Controllo microprogrammato a memorizzazione di frase O1J k1 OJ2 OJ3 OJ h |(C1 )O1J , k1 ;(C2 )OJ2 , k2 ; k3 k2 RL R xi CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II Moore: Controllo microprogrammato a memorizzazione di microistruzione OJ OJ C1 ROM h | OJ (C1 ) k1 ;(C2 ) k2 ;(C3 ) k3 1 k C2 k2 C3 k3 k R RL xi CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II CDL Spec. Ing. Informatica - Prof. Antonino Mazzeo - Corso di Calcolatori Elettronici II