L'architettura del processore MIPS
|
|
- Claudio Ruggeri
- 6 anni fa
- Visualizzazioni
Transcript
1 L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento (load) Istruzioni di memorizzazione (store) Istruzioni di salto condizionato (beq) Costruzione del processore Unità funzionali per ciascun passo di esecuzione Processore completo a ciclo singolo Unità di controllo Considerazioni di efficienza e implementazione multi-ciclo (cenni) Patterson e Hennessy, sezioni 5., 5.3, 5.4 [+5.5 cenni] 2
2 Insieme ridotto delle istruzioni MIPS Implementazione semplificata dal processore MIPS. Insieme ridotto di istruzioni classificate nelle seguenti tre categorie: Istruzioni aritmetico-logiche: add $s, $s2, $s3 Istruzioni di trasferimento da/verso la memoria (load/store): lw $s, offset ($s2) sw $s, offset ($s2) Istruzioni di salto condizionato e di salto incondizionato: beq $s, $s2, L j L2 3 Formati delle istruzioni del processore MIPS 4 2
3 Convenzione per l utilizzo dei registri MIPS $zero => (costante zero) $at => (registro riservato) $v, $v => 2, 3 (valutazione di un espressione e risultati di una funzione) $a - $a3 => 4 7 (registri argomento) $t -- $t7 => 8 5 (registri temporanei non salvati) $s -- $s7 => 6 23 (registri temporanei salvati) $t8, $t9 => 24, 25 (registri temporanei non salvati) $k, $k => 26, 27 (registri riservati) $gp => 28 (global pointer) $sp => 29 (stack pointer) $fp => 3 (frame pointer) $ra => 3 (return address) 5 Insieme semplificato delle istruzioni MIPS 6 3
4 Istruzioni aritmetico-logiche (formato R) op $x,$y,$z 6 bit 6 bit Op [3-26] Rs [25-2] Rt [2-6] Rd [5-] Shamt [-6] Funct [5-] viene eseguita in 4 passi: Prelievo istruzione dalla memoria istruzioni e incremento del PC. Lettura dei 2 registri sorgente ($y e $z) Operazione dell ALU sui dati utilizza il campo funct per realizzare la funzione Scrittura del risultato dell ALU nel registro destinazione ($x). utilizza i bit [5-] dell istruzione per selezionare $x. Prelievo istr. & Increm. PC Lettura Registri Sorgente $y e $z Op. ALU sui dati letti ($y op $z) Scrittura nel reg. dest. $x 7 Istruzioni di load (formato I) lw $x,offset($y) 6 bit 6 bit Op [3-26] Rs [25-2] Rt [2-6] Offset [5-] viene eseguita in 5 passi: Prelievo istruzione dalla memoria istruzioni e incremento del PC. Lettura del registro base ($y). Operazione dell ALU per calcolare indirizzo somma del valore del registro base e offset. Prelievo del dato nella memoria dati utilizza come indirizzo di lettura il risultato dell ALU. Scrittura del dato di memoria nel banco dei registri Prelievo istr. & Increm. PC Lettura reg. base $y Op. ALU ($y + offset) Prelievo dato M[$y + offset] Scrittura nel reg. dest. $x 8 4
5 sw $x,offset($y) Istruzioni di store (formato I) 6 bit 6 bit Op [3-26] Rs [25-2] Rt [2-6] Offset [5-] viene eseguita in 4 passi: Prelievo istruzione dalla memoria istruzioni e incremento del PC. Lettura del registro base ($y) e del registro sorgente ($x) Operazione dell ALU per calcolare indirizzo somma del valore letto dal registro base e offset. Scrittura del dato proveniente da $x nella memoria dati utilizza come indirizzo di scrittura il risultato dell ALU. Prelievo istr. & Increm. PC Lettura reg. base $y & sorg $x Op. ALU ($y + offset) Scrittura dato M[$y + offset] 9 Istruzioni di salto condizionato (formato I) beq $x, $y,offset 6 bit 6 bit Op [3-26] Rs [25-2] Rt [2-6] Offset [5-] viene eseguita in 4 passi: Prelievo istruzione dalla memoria istruzioni e incremento del PC. Lettura dei 2 registri sorgente ($x e $y) Operazione dell ALU sottrazione dei valori letti dal banco dei registri. Il valore (PC+4) viene sommato all offset; il risultato è l indirizzo destinazione del salto. L uscita Zero dell ALU è utilizzata per decidere valore del PC Prelievo istr. & Increm. PC Lettura Registri Sorgente $x e $y Op. ALU ($x - $y) & (PC+4+offset) Scrittura nel PC 5
6 Passi svolti durante l esecuzione delle istruzioni istruzioni aritmetico-logiche op $x,$y,$z Prelievo istr. & Increm. PC Lettura Registri Sorgente $y e $z Op. ALU sui dati letti ($y op $z) Scrittura nel reg. dest. $x istruzioni di load lw $x,offset($y) Prelievo istr. & Increm. PC Lettura reg. base $y Op. ALU ($y + offset) Prelievo dato M[$y + offset] Scrittura nel reg. dest. $x istruzioni di store sw $x,offset($y) Prelievo istr. & Increm. PC Lettura reg. base $y & sorg $x Op. ALU ($y + offset) Scrittura dato M[$y + offset] istruzioni di salto condizionato Prelievo istr. & Increm. PC Lettura Registri Sorgente $x e $y beq $x, $y,offset Op. ALU ($x - $y) & Scrittura nel PC (PC+4+offset) Passi svolti durante l esecuzione delle istruzioni I primi 2 passi sono identici per tutte le istruzioni: Inviare il contenuto del PC ad una Memoria Istruzioni che contiene l istruzione da eseguire Leggere uno o due registri dal Register File utilizzando i campi dell istruzione per selezionare i registri Azioni successive dipendono dall istruzione (codice operativo) tutte le istruzioni utilizzano l ALU dopo lettura registri Ulteriore differenziazione dopo l ALU: Aritmetico-logiche: scrittura risultato in registro destinazione Load: accesso in lettura a Memoria Dati e caricamento nel RF Store: accesso in scrittura a Memoria Dati e memorizzazione Salto condizionato: possibile modifica dell indirizzo dell istruzione successiva in base al risultato del confronto. 2 6
7 Tempo di esecuzione delle istruzioni Accesso in memoria e operazioni ALU sono più lente (ad esempio 2 ns) di accesso ai registri (ad esempio ns) Se il processore effettua una istruzione per ciclo di clock, il clock deve tenere conto dell istruzione più lenta. 3 Struttura del processore PC fornisce indirizzo dell istruzione nella Memoria Istruzioni I campi dell istruzione indicano i registri utilizzati come operandi Uscite del Register File portano contenuto dei registri alla ALU Il risultato dell ALU è utilizzato come: Risultato da scrivere in un registro destinazione Indirizzo di lettura/scrittura della Memoria Dati Indirizzo della prossima istruzione PC Memoria istruzioni Indirizzo Istruzione Registri Dato N registro N registro N registro A L U Memoria dati Indirizzo Dato 4 7
8 Somma Fase di caricamento delle istruzioni Elementi della CPU utilizzati: Memoria Istruzioni, per mantenere e fornire le istruzioni di un programma una volta noto un indirizzo; Program Counter (PC) per memorizzare indirizzo dell istruzione corrente; Sommatore per incrementare il PC in modo da indirizzare l istruzione successiva (PC + 4). PC Memoria delle istruzioni Indirizzo di lettura Istruzione 4 5 Istruzioni aritmetico-logiche Elementi della CPU utilizzati: Register File ALU a 32 bit Scritture su Register File controllate da segnale di controllo WR Serve segnale di controllo per specificare all ALU il tipo di operazione 6 8
9 Istruzioni di caricamento (load) Elementi della CPU utilizzati: Register File; ALU a 32 bit; Memoria Dati da cui leggere; Un unità per estendere con il segno corretto il valore dell offset da 6 bit a 32 bit. 7 Istruzioni di memorizzazione (store) Elementi della CPU utilizzati: Register File; ALU a 32 bit; Memoria Dati nella quale scrivere il dato; Un unità per estendere con il segno corretto il valore dell offset da 6 bit a 32 bit. 8 9
10 Istruzioni di load/store In comune: offset con estensione di segno è utilizzato come secondo operando dell ALU; In comune: lettura del RF, calcolo nell ALU di un indirizzo di lettura/scrittura per accedere alla Memoria Dati Solo load: lettura della Memoria Dati e scrittura del RF. Solo store: scrittura nella Memoria Dati da registro sorgente 9 Istruzioni di salto condizionato Elementi della CPU utilizzati: Register File ALU a 32 bit Sommatore per calcolare l indirizzo di destinazione del salto Unità per l estensione del segno e shifter a sinistra di 2 bit; Logica di controllo per decidere il valore del PC in base al valore dell uscita Zero dell ALU. 2
11 Realizzazione di un processore completo Esaminati gli elementi richiesti da ogni tipo di operazione, è possibile combinarli in un unica unità di elaborazione. Implementazione a ciclo singolo Si assume che le istruzioni siano eseguite in un ciclo di clock Occorre una Memoria Istruzioni distinta dalla Memoria Dati Per condividere un elemento tra due diversi tipi di istruzione si introduce un multiplexer Permette connessioni multiple all ingresso di un elemento E di selezionare uno tra i vari ingressi in base al controllo 2 Differenze tra istruzioni di formato R ed I Il numero del registro in cui scrivere il risultato è indicato da: bit [5-] per istruzioni di formato R bit [2-6] per istruzioni di formato I MU all ingresso del Registro Scrittura del RF Il secondo ingresso dell ALU è: un registro per istruzioni di formato R Bit [5-] dell istruzione per istruzioni di formato I MU al secondo ingresso dell ALU Il valore scritto nel registro destinazione proviene da: risultato dell ALU per istruzioni di formato R Memoria Dati per istruzione di load MU all ingresso dei Dati per Scrittura del RF 22
12 Processore per istruzioni di formato R e I () Aggiungendo i tre multiplexer in ingresso ad ogni componente si ottiene la seguente struttura 23 Processore per istruzioni di formato R e I (2) Aggiungendo la parte di CPU dedicata al prelievo dell istruzione si ottiene la seguente struttura: 24 2
13 Processore completo Aggiungendo anche gli elementi richiesti dai salti condizionati, si ottiene la struttura completa della CPU a ciclo singolo MU aggiuntivo per scegliere il valore di PC In rosso tutti gli ingressi di controllo necessari Branch RegWrite ALUContr MemWrite MemRead MemtoReg RegDst ALUSrc 25 Unità di controllo per la ALU Si definisce segnale ALUOp di 2 bit, in funzione del campo Op (codice operativo) dell istruzione. ALUOp indica se eseguire Somma per load e store (ALUOp=) Sottrazione per beq (ALUOp=) Operazione aritmetico-logica specificata dal campo funct della istruzione (ALUOp=) ALUOp ALUOp ALUOp2 Funct F5 F4 F3 F2 F F Operazione ALU 26 3
14 Unità di controllo principale Bisogna definire i segnali di controllo per 4 multiplexer a 2 vie (RegDst, ALUSrc, MemtoReg, Branch) Abilitazione alla scrittura nel Register File (RegWrite) Accesso in lettura alla memoria dati (MemRead) Accesso in scrittura alla memoria dati (MemWrite) In totale 7 bit di controllo (oltre ai 2 bit di ALUOp) Anche in questo caso qualche condizione don t care Op (6 bit) Tipo R Reg Dst ALU Src Memt o Reg Reg Write Mem Read Mem Write Branch ALUop ALUOp 2 Lw Sw Beq 27 Struttura della CPU con unità di controllo 28 4
15 Istruzioni di salto incondizionato (jump) 29 CPU con unità di controllo per istruzioni di jump 3 5
16 Ciclo singolo: considerazioni di efficienza Ogni istruzione viene iniziata e completata in un ciclo di clock Il ciclo di clock deve avere la stessa lunghezza per ogni istruzione (CPI = ); La lunghezza del ciclo di clock è determinata dal percorso più lungo (percorso critico o critical path) load utilizza 5 unità funzionali in serie (nell esempio precedente richiede T=8 ns) le altre istruzioni potrebbero essere implementate con un ciclo di clock più breve L implementazione a singolo ciclo non è efficiente! Nell esempio precedente: istruzioni formato R richiedono T = 6 ns istruzioni di store richiedono T = 7 ns istruzioni di salto condizionato richiedono T = 5 ns istruzioni di salto incondizionato richiedono T = 2 ns; 3 Implementazione di CPU a ciclo variabile Ipotesi: 24% load; 2% store; 44% formato R; 8% branch; 2% jump; Implementazione a ciclo variabile: il clock ha periodo diverso a seconda dell istruzione Il tempo medio per istruzione sarebbe pari a:.24*8 ns +.2*7 ns +.44*6 ns +.8*5 ns +.2*2 ns = 6.3 ns L implementazione a ciclo variabile sarebbe: (8 ns / 6.3 ns) =.27 volte più veloce dell implementazione a singolo ciclo. Svantaggi dell implementazione a ciclo variabile: Difficile da realizzare Richiede alto overhead 32 6
17 Possibile soluzione: implementazione multi-ciclo Idea: ogni fase d esecuzione di un istruzione (e non una istruzione intera) richiede un ciclo di clock Vantaggi principali: Si può usare un ciclo di clock più piccolo Il vincolo sul clock è dato dalla fase più lunga e non dall istruzione più lunga Aumento della velocità di esecuzione Non in termini di velocità della singola istruzione, ma in termini di throughput (numero di istruzioni per unità di tempo) Costo aggiuntivo: Necessario introdurre dei registri interni addizionali per memorizzare i valori da usare nei cicli di clock successivi. Progettazione mediante PIPELINE 33 Parole chiave Formati istruzione: R, I, J Componenti della CPU: PC, Register File, ALU, memoria istruzioni e memoria dati Tipologie di progetto di CPU A ciclo singolo A ciclo variabile multi-ciclo Unità di controllo Principale Per la ALU 34 7
Richiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
DettagliRichiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
DettagliArchitettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H
Architettura dei calcolatori e sistemi operativi Il processore Capitolo 4 P&H 4. 11. 2015 Sommario Instruction Set di riferimento per il processore Esecuzione delle istruzioni Struttura del processore
DettagliArchitettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini sterbini@di.uniroma1.it Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
DettagliCPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L /9 Sommario! I problemi
DettagliCPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 1/8 Sommario! I problemi
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Parte di Controllo La Parte Controllo (Control) della CPU è un circuito sequenziale istruzioni eseguite in più cicli di clock
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliProgettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore
Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero
DettagliIl processore: unità di elaborazione
Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero
DettagliElementi base per la realizzazione dell unità di calcolo
Elementi base per la realizzazione dell unità di calcolo Memoria istruzioni elemento di stato dove le istruzioni vengono memorizzate e recuperate tramite un indirizzo. ind. istruzione Memoria istruzioni
DettagliIl set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliRealizzazione a cicli di clock multipli
Realizzazione a cicli di clock multipli Riprendiamo in esame la realizzazione dell'unità di calcolo per individuare, per ciascuna classe di istruzioni, le componenti utilizzate e suddividere le azioni
DettagliCPU a singolo ciclo: l unità di controllo, istruzioni tipo J
Architettura degli Elaboratori e delle Reti Lezione 9 CPU a singolo ciclo: l unità di controllo, istruzioni tipo J Pro. A. Borghese, F. Pedersini Dipartimento di Scienze dell Inormazione Università degli
DettagliImplementazione semplificata
Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento
DettagliProgetto CPU (ciclo singolo) Salvatore Orlando
Progetto CPU (ciclo singolo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Semplificato in modo
DettagliArchitettura di tipo registro-registro (load/store)
Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche
DettagliProcessore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite
Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Progetto CPU (ciclo singolo) Semplificato in modo tale da eseguire solo: istruzioni di memory-reference:
DettagliCPU pipeline hazards
Architettura degli Elaboratori e delle Reti Lezione 23 CPU pipeline hazards Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 23 /24 Sommario!
DettagliLinguaggio Assembly e linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliArchitettura degli Elaboratori B Introduzione al corso
Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Componenti di un calcolatore convenzionale Studieremo il progetto e le prestazioni delle varie componenti
DettagliLe etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j
L insieme delle istruzioni (2) Architetture dei Calcolatori (lettere A-I) Istruzioni per operazioni logiche: shift Shift (traslazione) dei bit di una parola a destra o sinistra sll (shift left logical):
DettagliIl processore: unità di controllo
Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune
DettagliLinguaggio Assembly e linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliL'architettura del processore MIPS
L'architettura del processore IPS Prof. Cristina Silvano niversità degli Studi di ilano Corso di Architettura degli Elaboratori e delle Reti A. A. 2001/2002 Insieme ridotto delle istruzioni del processore
DettagliIl pipelining: tecniche di base
Il pipelining: tecniche di base Il pipelining E una tecnica per migliorare le prestazioni del processore basata sulla sovrapposizione dell esecuzione di più istruzioni appartenenti ad un flusso di esecuzione
DettagliUn altro tipo di indirizzamento. L insieme delle istruzioni (3) Istruz. di somma e scelta con operando (2) Istruzioni di somma e scelta con operando
Un altro tipo di indirizzamento L insieme delle istruzioni (3) Architetture dei Calcolatori (lettere A-I) Tipi di indirizzamento visti finora Indirizzamento di un registro Indirizzamento con registro base
DettagliISA (Instruction Set Architecture) della CPU MIPS
Architettura degli Elaboratori Lezione 20 ISA (Instruction Set Architecture) della CPU MIPS Prof. Federico Pedersini Dipartimento di Informatica Uniersità degli Studi di Milano L16-20 1 Linguaggio macchina
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello Architettura degli Elaboratori 1 1 Istruzioni
DettagliUniversità degli Studi di Cassino
Corso di Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 2007/2008 Francesco Tortorella Istruzioni di confronto Istruzione Significato slt $t1,$t2,$t3 if
DettagliIl linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 16 Il linguaggio macchina Proff. A. Borghese, F. Pedeini Dipaimento di Scienze dell Informazione Univeità degli Studi di Milano L 16 1/33 Linguaggio
DettagliCorso di Calcolatori Elettronici MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M.
di Cassino e del Lazio Meridionale Corso di MIPS: Istruzioni di confronto Istruzioni di controllo Formato delle istruzioni in L.M. Anno Accademico 201/201 Francesco Tortorella Istruzioni di confronto Istruzione
DettagliCapitolo 5 Struttura di base del processore
Capitolo 5 Struttura di base del processore 5.1. Il periodo di clock deve ospitare tutti i ritardi di propagazione più il tempo di impostazione per i registri. a. Minimo periodo di clock = 70 + 600 + 50
DettagliLezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly
Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliIl processore: unità di elaborazione e unità di controllo (3)
Il processore: nità di elaborazione e nità di lo () rchitettre dei Calcolatori (lettere -I) Limitazione del ciclo singolo I tempi di accesso per le diverse istrzioni variano, ad esempio ccesso in memoria:
DettagliLinguaggio assembler e linguaggio macchina (caso di studio: processore MIPS)
Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS) Salvatore Orlando Arch. Elab. - S. Orlando 1 Livelli di astrazione Scendendo di livello, diventiamo più concreti e scopriamo
DettagliArchitettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
DettagliAstrazione dell implementazione. Il processore: unità di elaborazione e unità di controllo (2) Il controllo della ALU.
Astrazione dell implementazione Il processore: nità di elaborazione e nità di lo (2) Architettre dei Calcolatori (lettere A-I) Ideal emory ress Net ress Rd Rs Rt 5 5 5 Rw Ra Rb -bit Registers A B als Conditions
DettagliLinguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche
3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni
DettagliCapitolo 5 Elementi architetturali di base
Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo
DettagliUniversità degli Studi di Milano - Corso Architettura II Prof. Borghese Appello del
Università degli Studi di Milano - Corso Architettura II Prof. Borghese Appello del 24.02.2016 Cognome e nome: Matricola: 1. [7] Data la CPU N. 1, specificare il contenuto di tutte le linee (dati e controllo).
DettagliMacchina di Riferimento: argomenti
Macchina di Riferimento: argomenti L'architettura di una macchina MIPS Organizzazione della memoria I registri della CPU L'esecuzione dei programmi Il ciclo fetch-execute Il simulatore SPIM 1 Architettura
DettagliLezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly
Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliCALCOLATORI ELETTRONICI 15 aprile 2014
CALCOLATORI ELETTRONICI 15 aprile 2014 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1 Di seguito è riportato lo schema di una ALU a 32 bit in grado
DettagliArchitettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 19 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 19 Febbraio 2016 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
DettagliArchitettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione
Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina
DettagliCALCOLATORI ELETTRONICI 29 giugno 2010
CALCOLATORI ELETTRONICI 29 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita e
DettagliHARDWARE 1.4a: (Processore)
HARDWARE 1.4a: (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Sciuto, Buonanno, Mari, Introduzione ai sistemi informatici, Mc Graw Hill Questi lucidi
DettagliAssembly. Linguaggio di programmazione corrispondente al linguaggio macchina P.H. Cap. 2.1, 2.2 e App. A. Linguaggio assembly (App.
Assembly Linguaggio di programmazione corrispondente al linguaggio macchina P.H. Cap. 2.1, 2.2 e App. A 1 Linguaggio assembly (App. A) Rappresentazione simbolica del linguaggio macchina Più comprensibile
DettagliARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!
ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore
DettagliRiassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div
MIPS load/store word, con indirizzamento al byte aritmetica solo su registri Istruzioni Significato add $t1, $t2, $t3 $t1 = $t2 + $t3 sub $t1, $t2, $t3 $t1 = $t2 - $t3 mult $t1, $t2 Hi,Lo = $t1*$t2 div
DettagliCorso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino
Corso di Alfabetizzazione Informatica / La CPU CPU (Central Processing Unit) Funzione: eseguire i programmi immagazzinati in memoria principale prelevando le istruzioni (e i relativi), interpretandole
DettagliIstruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni
Istruzioni macchina Linguaggio macchina Insieme delle istruzioni (instruction set) che la CPU puo eseguire Capitolo 10 1 2 Elementi di un istruzione macchina Codice operativo Specifica l operazione da
DettagliCPU. Maurizio Palesi
CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore
DettagliIl calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica
Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione
DettagliMicroelettronica Corso introduttivo di progettazione di sistemi embedded
Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2014/2015 Eccetto dove diversamente specificato, i contenuti
DettagliArchitettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliCALCOLATORI ELETTRONICI 31 marzo 2015
CALCOLATORI ELETTRONICI 31 marzo 2015 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1. Tradurre in linguaggio assembly MIPS il seguente frammento di
DettagliCALCOLATORI ELETTRONICI 29 giugno 2011
CALCOLATORI ELETTRONICI 29 giugno 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di una PLA la funzione combinatoria (a 3 ingressi e due uscite)
DettagliIl linguaggio assembly
Il linguaggio assembly PH 2.3 (continua) 1 Argomenti Organizzazione della memoria Istruzioni di trasferimento dei dati Array Istruzioni logiche 2 1 La memoria del MIPS I contenuti delle locazioni di memoria
DettagliArchitettura di una CPU
Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1
DettagliComponenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni
Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria
DettagliProblemi con progetto a singolo ciclo. Progetto CPU (multiciclo) Esempio di riduzione del ciclo di clock. Datapath multiciclo
Problemi con progetto a singolo ciclo Progetto CPU (multiciclo) Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate impiegano lo stesso tempo dell istruzione
DettagliProgetto CPU (multiciclo) Salvatore Orlando
Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate
DettagliCalcolatori Elettronici
Calcolatori Elettronici CPU a singolo ciclo assimiliano Giacomin Schema del processore (e memoria) Unità di controllo Condizioni SEGNALI DI CONTROLLO PC emoria indirizzo IR dato letto UNITA DI ELABORAZIONE
DettagliElaborazione dell informazione
Elaborazione dell informazione Primo esempio Ricominciamo dai numeri (45 + 25) è definita rigorosamente Un primo calcolatore (a) Figura 1.1 Configurazione del pallottoliere (a) prima e (b) dopo l esecuzione
DettagliComponenti principali
Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria
DettagliESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET:
Università degli Studi di Milano Corso Architettura degli elaboratori e delle reti Prof. Cristina Silvano A.A. 2004/2005 Esame scritto del 15 luglio 2005 Cognome: Matricola: Nome: Istruzioni Scrivere solo
DettagliCalcolatori Elettronici
Calcolatori Elettronici ISA di riferimento: MIPS Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello funzionale Livello logico Livello circuitale Livello del layout istruzioni macchina, ISA Reti logiche:
DettagliL unità di controllo. Il processore: unità di controllo. Le macchine a stati finiti. Struttura della macchina a stati finiti
Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune
DettagliARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining
ARCHITETTURE AVANZATE DEI CALCOLATORI, A.A. 2007/08 Soluzione esercizi sul pipelining Esercizio 1) N.B. Nei diagrammi a cicli multipli non sono indicati i registri di pipeline (per semplicità) a) Si tratta
DettagliLaboratorio di Architettura degli Elaboratori
Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni
DettagliStruttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:
Struttura e Funzione del Processore Capitolo 12 Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati 1 CPU con bus di sistema
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 28/29 CPU multiciclo Massimiliano Giacomin Esempi di processori che usano controllo a singolo ciclo: NESSUNO! Perché? Periodo di clock: abbastanza lungo per garantire la
DettagliControllo a ciclo singolo
Controllo a ciclo singolo Il controllo della CPU a singolo ciclo è combinatorio Il datapath è invece un circuito sequenziale i suoi output dipendono anche dal valore dei registri es. Zero, oppure l indirizzo
Dettagli21 March : ESERCITAZIONE 01 GESTIONE DELLA MEMORIA VETTORI CONTROLLOO O DI FLUSSO DI UN PROGRAMMA. I. Frosio
02: ESERCITAZIONE 01 21 March 2011 GESTIONE DELLA MEMORIA VETTORI CONTROLLOO O DI FLUSSO DI UN PROGRAMMA I. Frosio 1 SOMMARIO Organizzazione della memoria Istruzioni di accesso alla memoria Vettori Istruzioni
DettagliL unità di controllo di CPU multi-ciclo
L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano A.A. 23-24 /2 Sommario I segnali di controllo
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliESERCIZIO 1. Sia dato il seguente ciclo di un programma in linguaggio ad alto livello:
ESERIZIO 1 Sia dato il seguente ciclo di un programma in linguaggio ad alto livello: do { BASE[i] = BASEA[i] + BASEB[i] + IN1 + IN2; i++; } while (i!= N) Il programma sia stato compilato nel seguente codice
DettagliProgetto CPU (multiciclo)
Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate
DettagliArchitettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori
Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it Progetto
DettagliEsame di Architetture Canale MZ Prof. Sterbini 8/6/15
Esame di Architetture Canale MZ Prof. Sterbini 8/6/15 Cognome e Nome: Matricola: Parte 1 (per chi non ha superato l'esonero 1 ora) Esercizio 1 (14 punti). In una partita di CPU a ciclo di clock singolo
DettagliArchitettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliFasi (MIPS) Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer)
Fasi (MIPS) Fasi senza pipeline: IF (istruction fetch): IR Mem[PC] ; NPC PC + 4 ; Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer) Lezione Architettura degli
DettagliTutorato Architettura degli elaboratori
Tutorato Architettura degli elaboratori Dott. Damiano Braga Before we start.. Orario 12 Aprile h. 14.00-16.00 aula F6 20 Aprile h. 11.30-13.30 aula F6 10 Maggio h. 14.00-16.00 aula F4 18 Maggio h. 11.30-13.30
DettagliCalcolo durata ciclo. Prestazioni Singolo Ciclo. Prestazioni singolo ciclo. Durata Ciclo Variabile
Prestazioni Singolo Ciclo Assumiamo i seguenti ritardi: Unita di memoria: 2 nanosecondi e adders: 2 nanosecondi Banco di istri: 1 nanosecondo per gli altri: insignificante Quale e la durata del ciclo?
DettagliCicli di clock e istruzioni
Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni
DettagliEsame di Architetture Canale AL Prof. Sterbini 8/7/13 Compito A
Esame di Architetture Canale AL Prof. Sterbini 8/7/13 Compito A Esercizio 1A. Si ha il dubbio che in una partita di CPU a ciclo di clock singolo (vedi sul retro) la Control Unit sia rotta, producendo il
DettagliEsercitazione sulle CPU pipeline
Esercitazione sulle CPU pipeline Una CPU a ciclo singolo come pure una CPU multi ciclo eseguono una sola istruzione alla volta. Durante l esecuzione parte dell hardware della CPU rimane inutilizzato perché
DettagliSOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004
SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si
DettagliIl Linguaggio Assembly: Gestione della memoria e controllo
Il Linguaggio Assembly: Gestione della memoria e controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/42 Sommario L organizzazione
DettagliConcetti di base delle Moderne architetture. Due concetti fondamentali. Due concetti fondamentali
Concetti di base delle Moderne architetture una semplice architettura RISC esecuzione delle istruzioni in un unico ciclo di clock esecuzione delle istruzioni in più cicli di clock introduzione del pipelining
DettagliCapitolo 6 Le infrastrutture HardWare
Capitolo 6 Le infrastrutture HardWare L architettura di riferimento Architettura dei calcolatori - Un calcolatore è un sistema composto da un numero elevato di componenti. - Il suo funzionamento può essere
DettagliLa CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2
La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri
DettagliIntroduzione alle gerarchie di memoria
Introduzione alle gerarchie di memoria 1 Un ripasso Circuito sequenziale Segnale di clock Circuito sincrono Temporizzazione sensibile ai fronti Latch tipo S-R Latch tipo D Flip-flop tipo D Register file
DettagliLecture 2: Prime Istruzioni
[http://www.di.univaq.it/muccini/labarch] Modulo di Laboratorio di Architettura degli Elaboratori Corso di Architettura degli Elaboratori con Laboratorio Docente: H. Muccini Lecture 2: Prime Istruzioni
DettagliCorso di Fondamenti di Informatica Elementi di Architettura
di Cassino e del Lazio Meridionale Corso di Informatica Elementi di Architettura Anno Accademico 2016/2017 Francesco Tortorella Modello di von Neumann Bus di sistema CPU Memoria Centrale Interfaccia Periferica
DettagliLezione 15. L elaboratore Elettronico
Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente
DettagliAccesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.
< < } } Lezione 5 e 6 Accesso a memoria A questo livello di astrazione, la memoria viene vista come un array di byte Per ogni richiesta di un dato ad un certo indirizzo, la CPU ottiene un numero di byte
Dettagli