Architettura di tipo registro-registro (load/store)
|
|
- Silvio Adamo
- 8 anni fa
- Visualizzazioni
Transcript
1 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 attività elementari, con l obiettivo di migliorare le prestazioni fornite dalle architetture CICS le istruzioni più comuni vengono eseguite nel modo più veloce possibile si riduce la flessibilità di indirizzamento della memoria (p.e. non si prevedono accessi in memoria di tipo indiretto) Architettura di tipo registro-registro (load/store) Gli operandi dell ALU possono provenire solo dai registri di uso generale interni al processore e non possono provenire direttamente dalla memoria (cache) operazioni di load: caricamento dei dati dalla memoria ai registri del processore operazioni di store: memorizzazione dei dati contenuti nei registri del processore in memoria 1
2 Richiami riguardanti Sottoinsieme di istruzioni sufficiente però a far vedere l architettura del processore Esecuzione delle istruzioni cicli istruzioni semplici Struttura del processore tre possibili soluzioni, SCA-SCO: uniciclo, multiciclo, pipeline 2
3 Insieme di istruzioni semplificato del MIPS Consideriamo un implementazione semplificata del processore MIPS In particolare, no istruzioni di I/O Tre classi di istruzioni Istruzioni logico-aritmetiche Istruzioni di trasferimento da/verso la memoria (load/store) Istruzioni di salto (condizionato e incondizionato) per il controllo del flusso di programma 3
4 Esempi di istruzioni Istruzioni logico-aritmetiche (tra registri) add $s0, $s0, $s1 # $s0 = $s0 + $s1 and $s1, $s2, $s3 # $s1 = $s2 && $s3 Istruzioni logico-aritmetiche (con immediato) addi $t0, $t0, 1 # $t0 = $t0 + 1 (non la implementeremo) Istruzioni di trasferimento dati (da/verso la memoria) lw $s1, 8($s2) # $s1 = Mem[$s2+8] sw $s1, 8($s2) # Mem[$s2+8] = $s1 4
5 Esempi di istruzioni (2) Istruzioni di salto condizionato beq $s0, $s1, L1 # salta all indirizzo L1 se ($s0 == $s1) bne $s0, $s1, L1 # salta all indirizzo L1 se ($s0!= $s1) Istruzioni di salto incondizionato j L1 # salta a L1 jr $s1 # salta all indirizzo memorizzato in $s1 ( non la implementeremo) jal L1 # salta a L1 e salva l indirizzo della prossima istruzione in $ra ( dove $ra = $31, vedere lucido successivo) ( non la implementeremo) 5
6 Registri del processore MIPS a 32 bit 32 registri di uso generale Per convenzione si usano nomi simbolici preceduti da $ $s0, $s1,, $s7 (detti registri saved) per contenere variabili $t0, $t1,, $t9 (detti registri temporanei) per contenere variabili temporanee I registri possono anche essere indicati solo dal loro numero preceduto da $: $0,, $31 dei 32 registri alcuni sono special-purpose, ossia dedicati per l esecuzione di alcune istruzioni Es.: $ra (= $31) è il registro di ritorno 32 registri in virgola mobile (che non vedremo negli esempi) $f0,, $f31 6
7 Formato delle istruzioni MIPS Tutte le istruzioni MIPS hanno la stessa lunghezza (32 bit) Le istruzioni MIPS che vedremo sono di 3 formati Formato R (registro) Istruzioni logico-aritmetiche (con operandi solo nei registri) Formato I (immediato/indirizzo) Istruzioni con operandi immediati (non le implementeremo) Istruzioni di accesso in memoria (load/store) Istruzioni di salto condizionato Formato J (jump) Istruzioni di salto incondizionato I diversi formati sono riconosciuti tramite il valore dei 6 bit del primo campo, detto codice operativo (opcode), che indica anche come trattare i rimanenti 26 bit dell istruzione 7
8 Formato delle istruzioni MIPS (2) Formato R Formato I Formato J op rs rt rd shamt funct 6 bit 5 bit 5 bit 16 bit 26 op 26 6 bit 26 bit indirizzo di destinazione I campi delle istruzioni op (opcode): identifica il formato di istruzione rs, rt, rd: Caso R: registri sorgente (rs e rt) e registro destinazione (rd) Caso load: registro sorgente (rs) e registro destinazione (rt) Caso altre I: registri sorgente (rs e rt) shamt (shift amount): necessario per le operazioni di scorrimento funct: indica la variante specifica dell operazione nel campo op indirizzo/immediato: offset dell indirizzo o valore immediato indirizzo di destinazione: una parte dell indirizzo di destinazione bit 5 bit 5 bit 5 bit 5 bit 6 bit op rs rt indirizzo/immediato
9 Modalità di indirizzamento Le modalità di indirizzamento indicano i diversi modi con i quali fare riferimento agli operandi nelle istruzioni MIPS ha solo 5 modalità di indirizzamento: tramite registro immediato tramite base o spiazzamento relativo al Program Counter pseudo-diretto Una singola istruzione può usare più modalità di indirizzamento es.: addi $t0, $t0, 4, immediato e tramite registro Istruzione che non implementeremo, 9
10 Modalità di indirizzamento (2) Indirizzamento tramite registro L operando è il contenuto di un registro del processore Esempio: add $s0, $s1, $s2 (formato tipo R) Indirizzamento immediato (che non implementeremo) Uno degli operandi è una costante, il cui valore è specificato nell istruzione Esempio: addi $s0, $s1, 1 (formato tipo I) Indirizzamento con base o spiazzamento L operando è in una locazione di memoria, il cui indirizzo si ottiene sommando il contenuto di un registro base ad un valore costante (offset o spiazzamento) specificato nell istruzione Esempio: lw $t1, 4($s0) (formato tipo I) 10
11 Modalità di indirizzamento (3) Indirizzamento relativo al Program Counter L operando è in una locazione di memoria, il cui indirizzo si ottiene sommando il contenuto del Program Counter (PC) ad un valore costante (offset o spiazzamento) specificato nell istruzione Esempio: beq $s0, $s1, L1 (formato tipo I)» Indirizzo= PC+4+L1 Indirizzamento pseudo-diretto Una parte dell indirizzo è presente come valore costante (offset) nell istruzione, ma deve essere completato L indirizzo di destinazione del salto si ottiene traslando a sinistra di 2 bit i 26 bit di offset specificati nell istruzione e concatenando i 28 bit così ottenuti con i 4 bit più significativi del PC Esempio: j L2 (formato tipo J)» Indirizzo = 4 bit più sign.di (PC+4)*L2*00 11
12 Il processore (1) Distinguiamo unità di elaborazione (SCA) e unità di controllo (SCO) Unità di elaborazione dati Hardware per compiere le operazioni necessarie all esecuzione delle istruzioni Unità di controllo Riceve dei segnali di ingresso e genera in uscita segnali per la lettura/scrittura degli elementi di memoria, segnali di selezione per i multiplexer, segnali per il controllo della ALU 12
13 Il processore (2) Implementazione dell unità di elaborazione a ciclo singolo tutte le istruzioni vengono eseguite in un solo ciclo di clock, la cui durata è determinata dal percorso critico Implementazione dell unità di elaborazione a ciclo multiplo (daremo solo cenni perchè simile al PD32) l esecuzione di un istruzione richiede più cicli di clock Implementazione dell unità di elaborazione a pipeline l esecuzione di un istruzione richiede più cicli di clock nel SCA ci sono tante istruzioni per quanti sono gli stadi della pipeline 13
14 I cinque passi delle istruzioni Ogni istruzione può al più essere eseguita in cinque passi (i primi tre vengono sempre eseguiti): prelievo dell istruzione (Instruction fetch: IF) decodifica dell istruzione/prelievo dei dati dai registri (Instruction decode: ID) Esecuzione e/o calcolo dell indirizzo di memoria (Execute: EX) accesso alla memoria in lettura o scrittura (Memory access: MEM) scrittura del risultato nel registro destinazione (Write-back: WB) IF Instruction Fetch ID Instruction Decode EX EXecute MEM MEMory access WB Write-Back 14
15 Esecuzione delle istruzioni logico-aritmetiche Esempio: op $x, $y, $z Un istruzione logico-aritmetica viene eseguita in 4 passi 1. Prelievo dell istruzione dalla memoria istruzioni e incremento del PC 2. Lettura dei due registri sorgente ($y e $z) dal banco dei registri 3. Esecuzione dell operazione (op) da parte dell ALU sui valori letti dal banco dei registri 4. Scrittura del risultato dell ALU nel registro destinazione ($x) del banco dei registri 15
16 Esecuzione delle istruzioni di load Esempio: lw $x, offset($y) Un istruzione di load viene eseguita in 5 passi 1. Prelievo dell istruzione dalla memoria istruzioni e incremento del PC 2. Lettura del registro base ($y) dal banco dei registri 3. Esecuzione dell operazione (somma) da parte dell ALU per calcolare l indirizzo di memoria ($y + offset), notare che i registri sono a 32 bit mentre l offset è di 16 bit (estensione del segno) 4. Lettura del dato dalla memoria dati (Mem[$y + offset]) utilizzando come indirizzo il risultato della ALU 5. Scrittura del dato proveniente dalla memoria nel registro destinazione ($x) del banco dei registri 16
17 Esecuzione delle istruzioni di store Esempio: sw $x, offset($y) Un istruzione di store viene eseguita in 4 passi 1. Prelievo dell istruzione dalla memoria istruzioni e incremento del PC 2. Lettura del registro base ($y) e del valore da memorizzare in memoria ($x) dal banco dei registri 3. Esecuzione dell operazione (somma) da parte dell ALU per calcolare l indirizzo di memoria ($y + offset), notare che i registri sono a 32 bit mentre l offset è di 16 bit (estensione del segno) 4. Scrittura del dato proveniente dal banco dei registri ($x) nella memoria dati (Mem[$y + offset]) utilizzando come indirizzo il risultato della ALU 17
18 Esecuzione delle istruzioni di salto condizionato Esempio: beq $x, $y, offset Un istruzione di salto condizionato viene eseguita in 4 passi 1. Prelievo dell istruzione dalla memoria istruzioni e incremento del PC 2. Lettura dei due registri sorgente ($x e $y) dal banco dei registri 3. Esecuzione dell operazione (sottrazione) da parte dell ALU per confrontare i valori letti dal banco dei registri ($x - $y) e calcolo dell indirizzo di destinazione del salto 4. L uscita Zero della ALU viene utilizzata per decidere quale valore deve essere memorizzato nel PC: (PC+4) oppure (PC +4+offset), notare che il registro PC è a 32 bit mentre l offset è di 16 bit (estensione del segno) 18
19 Esecuzione delle istruzioni Per ogni tipo di istruzione, i primi due passi da eseguire sono uguali Prelievo dell istruzione dalla memoria istruzioni e incremento del PC Lettura di uno o due registri dal banco dei registri, selezionando i registri a cui accedere tramite i campi dell istruzione Le azioni successive dipendono dal tipo di istruzione (codice operativo), sebbene tutte le istruzioni utilizzino l ALU dopo il secondo passo Le istruzioni logico-aritmetiche per eseguire l operazione Le istruzioni di load e store per calcolare l indirizzo di memoria Le istruzioni di salto condizionato per effettuare il confronto 19
20 Esecuzione delle istruzioni (2) Dopo aver utilizzato l ALU, le azioni richieste per completare le varie istruzioni si differenziano ulteriormente Le istruzioni logico-aritmetiche devono scrivere il risultato della ALU nel registro destinazione Le istruzioni di load richiedono l accesso in lettura alla memoria dati ed eseguono il caricamento del dato letto nel registro di destinazione Le istruzioni di store richiedono l accesso in scrittura alla memoria dati ed eseguono la memorizzazione del dato proveniente dal registro sorgente Le istruzioni di salto condizionato devono scrivere il valore del PC in base al risultato del confronto 20
21 SCO-SCA uniciclo 21
22 Struttura di base del processore MIPS Per eseguire tutte le istruzioni in un solo ciclo di clock Ogni risorsa/unità funzionale può essere utilizzata una sola volta per istruzione Occorre duplicare le risorse/unità funzionali di cui si ha bisogno più di una volta nello stesso ciclo di clock memoria dati distinta dalla memoria istruzioni ALU e sommatori Alcune risorse/unità funzionali possono essere condivise da differenti flussi di esecuzione tramite l introduzione di multiplexer 22
23 Componenti di base (1) Load (nel seguito non lo evidenzieremo... Ck) PC address Instruction Memory Instruction ALU control ALU zero < Adder sum result
24 Componenti di base (2) Registers Mem Write 5 5 Reg-sorg 1 Reg-sorg 2 32 (Reg-sorg 1) address Read data 5 32 Reg-dest Data-to-write 32 (Reg-sorg 2) Write data Data Memory Reg Write Mem Read I registri commutano 16 Sign 32 sul fronte positivo extend dei segnali di abilitazione Flip/flop positive/negative edge triggered
25 Banco dei registri (scrittura) Decoder Reg dest Reg write R 0 R 1 R 31 w 0 w 1 w 31 Data to write
26 Banco dei registri (scrittura)
27 Banco dei registri (lettura) con decoder Reg source 1 Reg source 2 Decoder Decoder R 0 R 1 R 31 B 0-1 B 1-2 B 31-1 B 31-2 (Reg source 2) (Reg source 1)
28 Banco dei registri (lettura) con MUX
29 HW per eseguire istruzioni CLASSE R ALU operation
30 HW per eseguire istruzioni LOAD e STORE Manca la parte relativa al fetch, che è identica a quella delle istruzione di classe R
31 HW per eseguire istruzioni BE e BNE Manca la parte relativa al fetch, che è identica a quella delle istruzione di classe R Lo shift left di 2 bit serve ad avere gli ultimi due bit uguali a 00
32 L unità di elaborazione a ciclo singolo con i segnali di controllo 32
33 Il significato dei segnali di controllo Segnale Effetto quando vale 0 Effetto quando vale 1 RegDst Registro destinazione = rt Registro destinazione = rd RegWrite Nessuno Nel registro indicato sull ingresso Write register viene scritto il valore Write data ALUSrc PCSrc = Branch AND zero Il secondo operando di ALU viene da Read data 2 Scrittura di PC con PC+4 Il secondo operando di ALU viene dall estensione di segno Scrittura di PC con l output del sommatore per il branch MemRead Nessuno Lettura della locazione di memoria indicata da Address MemWrite Nessuno Scrittura della locazione di memoria indicata da Address MemtoReg L ingresso Write data (banco registri) viene dalla ALU L ingresso Write data (banco registri) viene dalla memoria dati 33
34 L unità di elaborazione a ciclo singolo con l unità di controllo 34
35 Il valore dei segnali di controllo Istruzione RegDst ALUSrc Memto Reg Reg Write Mem Read Mem Write Branch ALUOp tipo-r lw sw X 1 X beq X 0 X
36 Controllo ALU L istruzione set on less than non la implementeremo
37 Estensione a salto incondizionato L indirizzo di destinazione del salto si ottiene traslando a sinistra di 2 bit i 26 bit di offset specificati nell istruzione e concatenando i 28 bit così ottenuti con i 4 bit più significativi del PC Esempio: j L2 (formato tipo J) Indirizzo = 4 bit più significativi di (PC+4)*L2*00
38 SCO-SCA con salto incondizionato
39 SCO-SCA multiciclo (cenni) 39
40 L unità di elaborazione a ciclo multiplo (tecnica utilizzata anche per il PD32) L esecuzione di un istruzione è distribuita su più cicli Si utilizza un ciclo di clock di durata inferiore rispetto a quello dell implementazione a ciclo singolo Implementazione dell unità di elaborazione a ciclo multiplo Più complessa del ciclo singolo Ogni fase di esecuzione di un istruzione richiede un ciclo di clock Un unità funzionale può essere usata più di una volta per istruzione in cicli differenti (condivisione di unità funzionali ed eliminazione di ridondanze hardware) Singola unità di memoria per istruzioni e dati anziché due memorie distinte Una sola ALU anziché una ALU e due sommatori Occorre introdurre dei registri interni addizionali per memorizzare i valori da usare nei cicli di clock successivi 40
41
42 SCO per soluzione multiciclo
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
DettagliRichiami 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
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
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
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)
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
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
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é
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
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
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
DettagliArchitettura del calcolatore
Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale
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
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:
DettagliArchitettura (10/9/2003) Pag. 1/6. Cognome e Nome (in stampatello):
Architettura (10/9003) Pag. 1/6 Esame di Architettura (matr.0-1) del 10/9003 Per Fondamenti di Architettura NON rispondere Per le domande a risposta multipla cerchiare la risposta scelta. Non alle domande
DettagliL architettura di riferimento
Architetture degli elaboratori e delle reti Lezione 10 L architettura di riferimento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 10 1/27
DettagliHazard sul controllo. Sommario
Hazard sul controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento al Patterson: 4.7, 4.8 1/28 Sommario Riorganizzazione
DettagliIl processore. Il processore. Il processore. Il processore. Architettura dell elaboratore
Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni
DettagliESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
ESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per
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
DettagliARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4
ARCHITETTURE MICROPROGRAMMATE. 1 Necessità di un architettura microprogrammata 1 Cos è un architettura microprogrammata? 4 Struttura di una microistruzione. 5 Esempi di microprogrammi 9 Esempio 1 9 Esempio
DettagliESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
ESERCIZIO Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per
DettagliL'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
DettagliLa macchina programmata Instruction Set Architecture (1)
Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un
DettagliLezione n.19 Processori RISC e CISC
Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni
DettagliCALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU
Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi
DettagliCalcolatori Elettronici
Calcolatori Elettronici La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con
DettagliCalcolatori Elettronici. La Pipeline Criticità sui dati Criticità sul controllo Cenni sull unità di controllo
Calcolatori Elettronici La Pipeline Criticità sui dati Criticità sul controllo Cenni sull unità di controllo La pipeline CRITICITÀ SUI DATI Calcolatori Elettronici - Pipeline (2) - Slide 2 L. Tarantino
DettagliArchitettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro
Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica prof. ing. Corrado Santoro Schema a blocchi di una CPU Arithmetic Logic Unit Control Unit Register File BUS Control
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
DettagliStruttura del calcolatore
Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione
DettagliControllo con macchina a stati finiti
Controllo con macchina a stati finiti Durante l esecuzione di un programma applicativo i circuiti interpretano le istruzioni: del programma costituito dal< programma applicativo i servizi OS> Logica di
DettagliMODELLO DLX IN UNISIM
Architettura e descrizione del modello MODELLO DLX IN UNISIM RINGRAZIAMENTI : I materiali per questa presentazione sono tratti dal tutorial ufficiale di UNISIM - https://unisim.org/site/tutorials/start
DettagliCalcolatori Elettronici
Calcolatori Elettronici Tecniche Pipeline: Elementi di base Massimiliano Giacomin 1 Esecuzione delle istruzioni MIPS con multiciclo: rivisitazione - esame dell istruzione lw (la più complessa) - in rosso
DettagliSommario Introduzione al linguaggio Assembly. Calcolatori Elettronici Prof. Gian Luca Marcialis. Le operazioni fondamentali
Prof. Gian Luca Marcialis Corso di Laurea di Ingegneria Elettronica Capitolo 5 Linguaggio Assembly Fonti principali: Patterson, A.D., Hennessy, J., "Struttura, organizzazione e progetto dei calcolatori
DettagliArchitettura hw. La memoria e la cpu
Architettura hw La memoria e la cpu La memoria centrale e la CPU Bus controllo Bus indirizzi Bus dati Bus di collegamento con la cpu indirizzi controllo dati Bus Indirizzi 11 Bus controllo Leggi/scrivi
DettagliL unità di elaborazione pipeline L unità Pipelining
Struttura del processore L unità di elaborazione pipeline Corso ACSO prof. Cristina SILVANO Politecnico di Milano Incremento delle Per migliorare ulteriormente le si può: ridurre il periodo di clock aumentare
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à
DettagliCorso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18
Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Calcolatore: sottosistemi Processore o CPU (Central Processing
DettagliArchitettura di un calcolatore: introduzione
Corso di Calcolatori Elettronici I Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie
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
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
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
DettagliTesti di Esercizi e Quesiti 1
Architettura degli Elaboratori, 2009-2010 Testi di Esercizi e Quesiti 1 1. Una rete logica ha quattro variabili booleane di ingresso a 0, a 1, b 0, b 1 e due variabili booleane di uscita z 0, z 1. La specifica
DettagliLezione 3: Architettura del calcolatore
Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile
DettagliCiclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6
Ciclo di Istruzione Può essere suddiviso in 4 tipi di sequenze di microoperazioni (cioè attività di calcolo aritmetico/logico, trasferimento e memorizzazione dei dati), non tutte necessariamente da realizzare
DettagliIl 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
DettagliL unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D,
DettagliArchitettura del Set di Istruzioni (ISA)
Architettura del Set di Istruzioni (ISA) Maurizio Palesi Maurizio Palesi 1 Instruction Set Architecture (ISA) Software instruction set Hardware Maurizio Palesi 2 1 Instruction Set Architecture (ISA) Applicazioni
DettagliLezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014
Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS
DettagliC. P. U. MEMORIA CENTRALE
C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato
DettagliUNITÀ DI ELABORAZIONE (CPU) UNITÀ DI ELABORAZIONE (CPU) Opcode OpCode Operazione
RCHITETTUR DI UN ELORTORE MCCHIN DI VON NEUMNN Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). UNITÀ FUNZIONLI fondamentali Processore (CPU) Centrale
DettagliCALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata
Lezione n.6 Unità di controllo microprogrammata 1 Sommario Unità di controllo microprogrammata Ottimizzazione, per ottimizzare lo spazio di memoria occupato Il moltiplicatore binario Esempio di architettura
DettagliL unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Realizzazione del Data path a ciclo singolo Anno Accademico 22/23 Alessandra Scotto di Freca Si ringrazia il prof.francesco
DettagliUniversità degli Studi di Cassino
Corso di Realizzazione del Data path Data path a ciclo singolo Anno Accademico 27/28 Francesco Tortorella (si ringrazia il prof. M. De Santo per parte del materiale presente in queste slides) Realizzazione
DettagliLaboratorio di Informatica
per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti:
DettagliValutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput
Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare
DettagliElementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann
Elementi di Informatica e Programmazione Architettura del calcolatore (prima parte) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Problema:
DettagliSISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1
DettagliProgetto CPU (ciclo singolo)
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
DettagliUn circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati
Il Livello LogicoDigitale i Blocchi funzionali combinatori Circuiti integrati Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati
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
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
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
DettagliARCHITETTURA DELL ELABORATORE
1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY ARCHITETTURA DELL ELABORATORE Prof. G. Ciaschetti 1. Tipi di computer Nella vita di tutti giorni, abbiamo a che fare con tanti tipi di computer, da piccoli o piccolissimi
DettagliIl Processore: i registri
Il Processore: i registri Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) Le dimensioni di un registro sono di pochi byte (4, 8) I registri contengono
DettagliIntroduzione all'architettura dei Calcolatori
Introduzione all'architettura dei Calcolatori Introduzione Che cos è un calcolatore? Come funziona un calcolatore? è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso
Dettagli1.4a: Hardware (Processore)
1.4a: Hardware (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.8, 3.9 IV ediz.: cap. 2.6, 2.7 Questi lucidi 23 nov 2011
DettagliProgrammazione dello Z80
Il microprocessore si incarica di: gestire il programma e i suoi dati di eseguire i calcoli richiesti. Le azioni appena elencate rendono necessario che il microprocessore abbia da qualche parte, al suo
DettagliCPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Lezione 8 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 8 /33 Sommario! La
DettagliValutazione delle Prestazioni
Valutazione delle Prestazioni Sia data una macchina X, definiamo: 1 PrestazioneX = --------------------------- Tempo di esecuzione X La prestazione aumenta con il diminuire del tempo di esecuzione (e diminuisce
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
DettagliEsame di INFORMATICA
Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello
DettagliCPU pipeline 4: le CPU moderne
Architettura degli Elaboratori e delle Reti Lezione 25 CPU pipeline 4: le CPU moderne Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 25 1/16
DettagliUniversità degli Studi di Cassino
Corso di Realizzazione del path path a ciclo singolo Anno Accademico 24/25 Francesco Tortorella Realizzazione del data path. Analizzare l instruction set => Specifiche sul datapath il significato di ciascuna
DettagliMacchina di von Neumann
Il processore PD32 Macchina di von Neumann Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo Suddivisione SCA-SCO Unità di Ingresso Memoria di lavoro Unità di Uscita
DettagliSchedulazione dinamica. Elettronica dei Calcolatori 1
Schedulazione dinamica Elettronica dei Calcolatori 1 Schedulazione dinamica delle operazioni Impossibile risolvere tutti i conflitti staticamente I possibile predire tutti i salti condizionati HW fa durante
DettagliArchitettura dei calcolatori I parte Introduzione, CPU
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica C.I. 1 Informatica ed Elementi di Statistica 2 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore Sorce Architettura dei calcolatori
DettagliIntroduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6
Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...
DettagliL architettura del calcolatore (Prima parte)
L architettura del calcolatore (Prima parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Calcolatore astratto e reale Concetto astratto
DettagliLa microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1
La microarchitettura. anno accademico 2006 2007 pagina 1 Integer Java virtual machine Ogni microprocessore può avere una microarchitettura diversa, ma la modalità di funzionamento per certi aspetti è generale.
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
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:
DettagliLaboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008
Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 11/01/08 Nota Questi lucidi sono
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliCPU 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!
DettagliLezione n.9. Introduzione al linguaggio macchina
Lezione n.9 Autore:Luca Orrù 1 Sommario Esecuzione delle istruzioni Architettura interna ed esterna Linguaggio assembler e modi d indirizzamento Consideriamo ora la singola istruzione e la scomponiamo
DettagliIng. Paolo Domenici PREFAZIONE
Ing. Paolo Domenici SISTEMI A MICROPROCESSORE PREFAZIONE Il corso ha lo scopo di fornire i concetti fondamentali dei sistemi a microprocessore in modo semplice e interattivo. È costituito da una parte
DettagliCalcolo numerico e programmazione Architettura dei calcolatori
Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:
DettagliAXO Architettura dei Calcolatori e Sistema Operativo. processo di assemblaggio
AXO Architettura dei Calcolatori e Sistema Operativo processo di assemblaggio linguaggio assembly è il linguaggio simbolico che consente di programmare un calcolatore utilizzando le istruzioni del linguaggio
DettagliArchitettura di un calcolatore
2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von
Dettagliintroduzione I MICROCONTROLLORI
introduzione I MICROCONTROLLORI Definizione Un microcontrollore è un dispositivo elettronico programmabile Può svolgere autonomamente diverse funzioni in base al programma in esso implementato Non è la
DettagliVon Neumann. John Von Neumann (1903-1957)
Linguaggio macchina Von Neumann John Von Neumann (1903-1957) Inventore dell EDVAC (Electronic Discrete Variables AutomaFc Computer), la prima macchina digitale programmabile tramite un soiware basata su
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include
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
DettagliProgetto CPU a singolo ciclo
Architettura degli Elaboratori e delle Reti Progetto CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1/50 Sommario! La CPU! Sintesi di
DettagliUnità di controllo della pipeline
Unità di controllo della pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento al Patterson: 6.3 /5 Sommario La CPU
DettagliLa Macchina Virtuale
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore
Dettagli