Esercizi su microistruzioni. 1 Esercizi con architettura a 1 bus

Documenti analoghi
1 Esercizi con architettura a 1 bus

Struttura del processore. Funzionamento del processore

L unità di elaborazione PC: MAR/MDR IR: R0 Rn: TEMP, V, Z

Data-path. ad un solo bus interno. Struttura del processore. L unità di elaborazione

Architettura degli elaboratori Tema d esame del 20/01/2016

Esercizio n. 7 - Microcodice

CPU a ciclo multiplo

Architettura di una CPU

CPU a ciclo multiplo

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Pinout PD32. Memoria di lavoro esterna. tramite l indirizzo ad esse associato. e possono essere lette o scritte: Le singole celle sono distinguibili

L unità di controllo di CPU a singolo ciclo

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

Componenti di un processore

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Il Processore: l unità di controllo

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

Corso di Laurea in Informatica Architetture degli Elaboratori

L insieme delle istruzioni (6)

Corso di Laurea in Informatica

Richiami sull architettura del processore MIPS a 32 bit

CPU pipeline hazards

Richiami sull architettura del processore MIPS a 32 bit

Capitolo 5 Elementi architetturali di base

Capitolo 5 Struttura di base del processore

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Architettura di un calcolatore: Introduzione parte 2

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1)

Lezione n.9. Introduzione al linguaggio macchina

Modi di indirizzamento

Struttura di un elaboratore

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni

che vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico-

Il processore: unità di controllo

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori

Architettura di un processore basato su registri generali.

Indirettezza. Fetch/Execute. Fetch/Execute. Introduzione della Indirettezza (indirect)

Scopo della lezione. Analizzare i tipi di macchine Indirizzamento e memorie Tipi di dato

Sistemi e reti CPU Concetti di base

Elementi di Architettura

ARCHITETTURA DI UN ELABORATORE

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

ARCHITETTURA DI UN ELABORATORE

MAC1 Simulatore di Microprocessore

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Elementi di informatica

Sottosistemi ed Architetture Memorie

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Lezione 15. L elaboratore Elettronico

Realizzazione del controllo

Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini

Architettura hw. La memoria e la cpu

Esercizio 1. Progettare la PO a partire dal microprogramma eseguibile e successivamente:

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Il processore Pentium

Il Processore: i registri

Architettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf

Lezione 3: Architettura del calcolatore

Gestione delle subroutine. Appunti di Sistemi per la cl. IV Dinf A cura del prof. Ing. Mario Catalano

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

Architettura di un calcolatore: introduzione

Assembly. Modello x86

Linguaggio macchina e linguaggio assembly

Università degli studi di Bologna Anno Accademico 2000/2001 Corso di Architettura degli elaboratori

Architettura di von Neumann

Architettura di von Neumann

FONDAMENTI DI INFORMATICA Lezione n. 11

DEC PDP8, III Generazione, '65-'75

Famiglia dei processori INTEL

Corso di Calcolatori Elettronici I A.A Il processore Lezione 18

Set di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO

Istruzioni di trasferimento dati

Pipeline Problemi 1. Pipeline Problemi 2

Architettura del microprocessore. Introduzione Architettura a bus singolo Architettura a due bus Architettura a tre bus

Sommario FONDAMENTI DI INFORMATICA. Architettura di Von Neumann. Algoritmi e programmi ESERCITAZIONE PYTHON ARCHITETTURA DEI CALCOLATORI

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

L'architettura del processore MIPS

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria:

Architettura dei computer

Il processore: unità di elaborazione

L architettura di riferimento

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Memorie a semiconduttore

Calcolatori Elettronici

I bistabili ed il register file

Realizzazione a cicli di clock multipli

Calcolatori Elettronici Prof. Gian Luca Marcialis. Capitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina

Problemi del ciclo singolo

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Architettura del Set di Istruzioni (ISA)

Architettura di un calcolatore

Corso di Fondamenti di Informatica Elementi di Architettura

ISA e linguaggio macchina

Il Microprocessore. Modello di Von Neumann

ARCHITETTURA DI UN ELABORATORE

Componenti principali

Architettura hardware

Transcript:

Esercizi su microistruzioni Ogni riga elenca i segnali che vengono attivati nello stesso ciclo di clock. Si assume che lettura e scrittura dei registri avvengano all inizio e alla fine del ciclo di clock, rispettivamente. Si assume che il ritardo della ALU sia trascurabile rispetto al periodo di clock e quindi che il risultato sia praticamente istantaneo. 1 Esercizi con architettura a 1 bus Figure 1: Architettura a 1 bus. Per lo schema della CPU fare riferimento a quello, specifico per Intel, spiegato in aula e mostrato in Figura 1. 1

1.1 Fetch dell istruzione NOTA: l istruzione Select0 mette zero come primo operando della ALU mentre l istruzione CB imposta a 1 il bit di riporto/prestito in modo da sommare/sottrarre 1. 1. PC out, MAR in, READ, Select0, CB, ADD, Z in 2. Z out, PC in, WMFC 3. MDR out, IR in 1.2 INC %eax NOTA: per ogni istruzione, mostriamo solo la parte di microprogramma che segue il prelievo dell istruzione. 4. EAX out, Select0, CB, ADD, Z in 5. Z out, EAX in, END 1.3 INC variabile codificato dentro l istruzione (IR imm field). 4. IR imm field out, MAR in, READ, WMFC 5. MDR out, Select0, CB, ADD, Z in 6. Z out, MDR in, WRITE, WMFC 7. END 1.4 JECXZ etichetta si assume che l etichetta sia costituita da un indirizzo immediato direttamente codificato dentro l istruzione (IR imm field); salvo diversamente specificato, si assume che il salto sia relativo in quanto l indirizzo di salto e specificato tramite un etichetta simbolica. 4. ECX out, Select0, ADD 5. PC out, V in, if(zf = 0)thenEND 6. IR imm field out, SelectV, ADD, Z in 7. Z out, PC in, END 2

1.5 PUSH %eax 4. ESP out, Select4, SUB, Z in 6. EAX out, MDR in, WRITE, WMFC 7. END 1.6 POP %eax 4. ESP out, Select4, ADD, Z in, MAR in, READ 5. Z out, ESP in, WMFC 6. MDR out, EAX in, END 1.7 CALL etichetta si assume che l etichetta sia costituita da un indirizzo immediato direttamente codificato dentro l istruzione (IR imm field); salvo diversamente specificato, si assume che il salto sia relativo in quanto l indirizzo di salto e specificato tramite un etichetta simbolica; si assume l utilizzo di una architettura Intel dove lo stack cresce verso 4. ESP out, Select4, SUB, Z in 6. PC out, MDR in, WRITE, V in 7. IR imm field out, SelectV, ADD, Z in, WMFC 8. Z out, PC in, END 1.8 CALL (%eax, %ebx) si assume che l indirizzo a cui saltare sia memorizzato nella locazione di memoria puntata dal valore %eax+%ebx (indirizzamento indiretto); salvo diversamente specificato, si assume che il salto sia assoluto; si assume l utilizzo di una architettura Intel dove lo stack cresce verso 3

4. ESP out, Select4, SUB, Z in 6. PC out, MDR in, WRITE 7. EAX out, V in 8. EBX out, SelectV, ADD, Z in, WMFC 9. Z out, MAR in, READ, WMFC 10. MDR out, PC in, END 1.9 RET 4. ESP out, Select4, ADD, Z in, MAR in, READ 5. Z out, ESP in, WMFC 6. MDR out, PC in, END 1.10 XCHG variabile, %eax codificato dentro l istruzione (IR imm field). 4. IR imm field out, MAR in, READ 5. EAX out, TEMP in, WMFC 6. MDR out, EAX in 7. TEMP out, MDR in, WRITE, WMFC 8. END 1.11 Considerazioni finali Come si puo notare contando il numero di righe di microprogramma, le istruzioni che fanno accesso alla memoria impiegano piu cicli di clock di quelle che fanno accesso solo ai registri della CPU; a questo bisogna aggiungere che il tempo di accesso alla memoria e maggiore di quello ai registri della CPU. Quindi sarebbe opportuno che le CPU avessero un buon numero di registri interni. 2 Esercizi con architettura a 3 bus Per lo schema della CPU fare riferimento a quello sul libro Hamacker. Il comando NOP dell ALU indica che il contenuto del bus A viene ricopiato sul bus C. Il comando ClearB mette a zero l ingresso B dell ALU. 4

2.1 Fetch dell istruzione 1. PC outa, NOP, MAR in, READ 2. PC outa, SetCarryIn, ClearB, ADD, PC in, WMFC 3. MDR outb, IR in, END 2.2 INC %eax 4. EAX outa, SetCarryIn, ClearB, ADD, EAX in, END 2.3 INC variabile codificato dentro l istruzione (IR imm f ield) e che l instruction register sia connesso in uscita al bus C. 4. IR imm field outc, MAR in, READ, WMFC 5. MDR outa, SetCarryIn, ClearB, ADD, MDR in, WRITE, WMFC 6. END 2.4 XCHG variabile, %eax codificato dentro l istruzione (IR imm f ield) e che l instruction register sia connesso in uscita al bus C. 4. IR imm field outc, MAR in, READ 5. EAX outa, NOP, Temp in, WMFC 6. MDR outa, NOP, EAX in 7. Temp outa, NOP, MDR in, WRITE, WMFC 8. END 2.5 Considerazioni finali Nell architettura a 3 bus tutti i registri devono essere realizzati con flip-flop master/slave perche devono essere letti e scritti contemporaneamente. Confrontando la lunghezza delle istruzioni nelle due architetture si vede che le uniche istruzioni che traggono giovamento dall architettura a 3 bus sono quelle che operano solo su registri interni alla CPU; l adozione di una architettura a 3 bus quindi ha senso solo in unione alla presenza di istruzioni semplici che non accedono alla memoria principale e alla disponibilita di molti registri interni alla CPU (caratteristiche delle architetture RISC come quella del PowerPC). 5