Implementazione semplificata
|
|
|
- Modesto Piccinini
- 9 anni fa
- Просмотров:
Транскрипт
1 Il processore 168
2 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 di controllo: beq, j Ogni ciclo di clock viene eseguita una istruzione completa il ciclo di clock è sufficientemente lungo da permettere l'esecuzione dell'istruzione con latenza più alta più avanti introdurremo una implementazione basata su pipeline Assumiamo che la memoria che tiene le istruzioni (read-only) e la memoria che tiene i dati (read/write) siano separate possiamo leggere e scrivere nello stesso ciclo di clock 169
3 Cosa fa un processore Per ogni istruzione: legge (fetch) dalla memoria l'istruzione il cui indirizzo è nel PC legge dei registri in base a quanto specificato nell'istruzione A seconda dell'istruzione: usa la ALU per calcolare un risultato aritmetico/logico un indirizzo di memoria (registro + offset) l'indirizzo di un branch target accede alla memoria per load/store aggiorna il PC con PC + 4 o con un indirizzo target 170
4 Risultato finale 171
5 Componenti necessari Fetch dell'istruzione a partire dal Program Counter PC è un registro a 32 bit (indirizzo in memoria) nella fase di fetch è utile anche calcolare PC
6 Datapath della fetch NB: non è detto che PC + 4 sia il valore definitivo con cui aggiornare il PC 173
7 Componenti necessari Istruzioni di tipo R lettura di due registri operazioni usando l'alu scrittura di un registro 174
8 Componenti necessari Istruzioni di load/store Lettura di uno (lettura) o due (scrittura) registri Calcolo dell'indirizzo usando l'offset di 16 bit (signextended a 32 bit) usando l'alu Load: lettura dalla memoria e scrittura di un registro Store: scrittura in memoria del valore di un registro 175
9 Datapath combinato per istruzioni R e load/store 0: usa valore registro rt (istruzione R) 1: usa offset nell'istruzione (load/store) 0: usa output dell'alu (istruzione R) 1: usa dati letti da memoria (load) I segnali di controllo (in blu) vengono settati dalla logica di controllo (vedi oltre) 176
10 Componenti necessari Istruzioni di branch Lettura degli operandi dai registri Confronto usando l'alu (sottrazione e controllo dello Zero) Calcolo dell'indirizzo di destinazione sign-extend e shift left di due bit dell'etichetta addizione con PC + 4 (già calcolato nella fase di fetch) 177
11 Datapath per confronti e branch L'ALU viene usata per il confronto Sign-extend, Shift left 2 e Add vengono usati per il calcolo dell'indirizzo I segnali di controllo (in blu) vengono settati dalla logica di controllo (vedi oltre) 178
12 Datapath combinato: istruzioni R, load/store e branch 0: usa PC+4 1: usa indirizzo calcolato (branch) I segnali di controllo (in blu) vengono settati dalla logica di controllo (vedi oltre) 179
13 Controllo Il datapath che abbiamo costruito ha 7 segnali di controllo RegWrite, ALUSrc, PCSrc, MemWrite, MemtoReg, MemRead a 1 bit ALU Operation a 4 bit L'unità di controllo del processore ha il compito di generare, direttamente o indirettamente, quei segnali Logica combinatoria l'input è dato dall'istruzione in output genera i segnali di controllo Implementata in modo gerarchico una unità di controllo specifica per la ALU una unità di controllo principale 180
14 Controllo della ALU L'unità di controllo della ALU deve generare in output i segnali di controllo per la ALU Per le istruzioni R la funzione è data dal codice funct nell'istruzione Per le istruzioni load/store la funzione è sempre add Per la funzione beq la funzione è sempre subtract 181
15 Controllo della ALU L'input al circuito che costituisce l'unità di controllo della ALU è quindi dato da: due bit che indicano a che categoria appartiene l'istruzione il codice funct dell'istruzione per le istruzioni R I primi due bit (chiamati ALUOp) sono settati dall'unità di controllo principale XXXXXX nella tabella significa don't care 182
16 Simplicity favors regularity opcode sempre in lettura in lettura, tranne che per la read in scrittura per istruzioni R e per la read sign-extend e somma 183
17 Datapath combinato con campi delle istruzioni 0: usa rt per scrivere (load) 1: usa rd per scrivere (istruzione R) 184
18 Significato dei segnali 185
19 Unità di controllo principale L'input è costituito esclusivamente dall'opcode dell'istruzione X significa don't care 186
20 Datapath con unità di controllo Il segnale PCSrc dipende sia da un segnale di controllo che dall'output dell'alu 187
21 Datapath con unità di controllo Istruzioni R 188
22 Datapath con unità di controllo 189
23 Datapath con unità di controllo Load 190
24 Datapath con unità di controllo 191
25 Datapath con unità di controllo Branch-on-equal 192
Il Processore: l Unità di Controllo Principale Barbara Masucci
Architettura degli Elaboratori Il Processore: l Unità di Controllo Principale Barbara Masucci Punto della situazione Ø Abbiamo visto come costruire l Unità di Controllo della ALU per il processore MIPS
Architettura 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 [email protected] Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
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
Processore. 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
Processore. 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
Richiami 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
L'architettura del processore MIPS
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
L unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica [email protected] Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,
Architettura 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
Elementi 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
CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti
Architettura degli Elaboratori e delle Reti Lezione 18 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 18 1/2 Sommario!
La Microarchitettura. Davide Bertozzi
La Microarchitettura Davide Bertozzi Piano di Studio Dove Siamo Architettura del Set di Istruzioni (come «si parla» con un microprocessore, ovvero l interfaccia HW/SW) Microarchitettura di un processore:
Progetto 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
CPU 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
Il 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
Il 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
Architettura 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
Il linguaggio macchina
Il linguaggio macchina Istruzioni macchina (PH 2.4) Indirizzamento (PH 2.9) Costanti a 32-bit (PH 2.9) 1 Linguaggio macchina Le istruzioni in linguaggio assembly devono essere tradotte in linguaggio macchina
Introduzione all'architettura dei Calcolatori. Maurizio Palesi
Introduzione all'architettura dei Calcolatori Maurizio Palesi 1 Agenda Architettura generale di un Sistema di Elaborazione La memoria principale Il sottosistema di comunicazione La CPU Miglioramento delle
Esercitazione 06 Progettazione di una CPU RISC-V
Esercitazione 06 Progettazione di una CPU RISC-V Gianluca Brilli [email protected] 04/06/19 ARCHITETTURA DEI CALCOLATORI 1 Overview In questa esercitazione andremo a progettare una semplice architettura
Le 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):
Linguaggio 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
Architettura 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
1. L istruzione li $a0, è un istruzione standard del processore MIPS? Se no, a quali istruzioni corrisponde e come viene eseguita?
1. L istruzione li $a0, 12345678 è un istruzione standard del processore MIPS? Se no, a quali istruzioni corrisponde e come viene eseguita? 2. Si descriva il formato IEEE 754 per la rappresentazione in
CALCOLATORI 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
