Circuiti Sequenziali

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Circuiti Sequenziali"

Transcript

1 Circuiti Sequenziali I circuiti combinatori sono in grado di calcolare funzioni che dipendono solo dai dati in input I circuiti sequenziali sono invece in grado di calcolare funzioni che dipendono anche da uno stato, cioè che dipendono anche da informazioni memorizzate in elementi di memoria interni In generale, la funzione calcolata dal circuito sequenziale ad un dato istante dipende dalla sequenza temporale dei valori in input al circuito La sequenza temporale determina infatti il valore memorizzato nello stato

2 SR Latch L SR Latch è un circuito, composto da 2 porte NOR concatenate, che costituisce l elemento base per costruire elementi di memoria più complessi Anche se (S,R)=(0,0), gli output del latch possono comunque essere diversi L output è il valore memorizzato nel latch Verificare infatti che il latch a sinistra memorizza il valore 0, mentre quello a destra memorizza il valore 1 Non c è clock

3 SR Latch Poniamo (S,R)=(1,0) per effettuare il setting del latch a sinistra il valore memorizzato passa da 0 a 1 (e viene poi mantenuto riportando S=0) Poniamo (S,R)=(0,1) per effettuare il resetting del latch a destra il valore memorizzato passa da 1 a 0 (e viene poi mantenuto riportando R=0) La combinazione (S,R) = (0,0) viene detta combinazione di riposo, perché semplicemente mantiene il valore memorizzato in precedenza La combinazione di valori (S,R)=(1,1) non deve mai esser presentata al latch

4 SR Latch L SR Latch è un circuito, composto da 2 porte NOR concatenate, che costituisce l elemento base per costruire elementi di memoria più complessi Anche se (S,R)=(0,0), gli output del latch possono comunque essere diversi L output è il valore memorizzato nel latch Verificare infatti che il latch a sinistra memorizza il valore 0, mentre quello a destra memorizza il valore 1 Non c è clock

5 Clock Il clock serve per decidere quando un elemento che contiene uno stato deve essere aggiornato Ci occuperemo di clock edge-triggered: tutti i cambiamenti di stato avvengono sui fronti di salita o discesa del segnale di clock Fronte in discesa Periodo di clock Fronte in salita I segnali in input devono essere validi (stabili) quando si incontra il fronte Il periodo di clock deve essere lungo a sufficienza per permettere ai segnali elettrici dei circuiti di andare a regime

6 Clock Se il periodo di clock T è espresso in sec Frequenza di clock: F = 1/T Hz (numero di cicli al secondo) Se T = 10 nsec, qual è la frequenza del clock? 1 nsec = 10-9 sec 1 µsec = 10-6 sec 1 msec = 10-3 sec Freq = 1/T = 1 / ( 10 x 10-9 ) = 10 8 Hz = 10 2 x 10 6 Hz = 100 MHz Se T = 1 nsec, qual è la frequenza del clock? 1 nsec = 10-9 sec Freq = 1/T = 1/10-9 = 10 9 Hz = 1 GHz

7 D Latch D =1 corrisponde al setting: S=1 e R=0 D = 0 corrisponde al resetting: S=0 e R=1 La combinazione S=1 e R=1 non può mai verificarsi A causa delle 2 porte AND, quando il clock è deasserted abbiamo che nel latch non viene memorizzato alcun valore: S=0 e R=0 (viene mantenuto il valore precedentemente memorizzato) Viene memorizzato un valore (in dipendenza del valore di D) solo quando il clock è asserted Se il segnale C fosse invertito (porta NOT aggiuntiva), il latch memorizzerebbe sul valore basso del clock (cioè quando il clock è deasserted) Quando il clock è asserted, qualsiasi cambiamento di D viene propagato in uscita (trasparenza) Un elemento di memoria edge-triggered è chiamato flip-flop. Come realizzarlo?

8 D Flip-Flop D C Q Q Q Serie 2 D-latch: il primo viene detto master e il secondo slave Falling triggered: per semplicità, possiamo pensare che la memorizzazione avvenga in maniera istantanea su fronte di discesa del clock C D setup time C ritardo hold time Q Q

9 Circuito con memoria Durante ogni periodo di clock il circuito combinatorio dovrebbe calcolare una funzione sulla base dell attuale valore dell elemento di memoria (stato del circuito) l output calcolato dovrebbe diventare il nuovo valore da memorizzare nell elemento di memoria (nuovo stato del circuito) il nuovo valore memorizzato dovrebbe essere usato come input del circuito durante il ciclo di clock successivo l elemento di memoria deve essere usato sia come input che come output durante lo stesso ciclo di clock elemento di memoria circuito combinatorio

10 Registri Ogni registro è costituito da n flipflop, dove n è il numero bit che costituiscono una word D 32 D C Q 32 Q Più registri sono organizzati in una componente nota come register file Il clock non entra direttamente nei vari flip-flop, ma viene messo in AND D 0 D C Q Q 0 con un segnale di controllo: write Il segnale determina se, in D 2 D C Q Q 1 corrispondenza del fronte di discesa del clock, il valore di D debba (o meno) essere memorizzato nel registro D n-1 D C Q Q n-1

11 Register File

12 Lettura dal Register File Il Register file fornisce sempre in output una coppia di registri Non significativi, se i controlli non lo sono In tal caso, i circuiti che potenzialmente potrebbero usarli, devono ignorali

13 Scrittura nel Register File Decoder 5 a 32 per il segnale di scelta del registro Il segnale Write (in AND con il clock) abilita solo uno dei 32 registri Se il segnale di Write è non affermato, i possibili valori spuri in input non verranno memorizzati nel Register file

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

15 Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo per memorizzare dati strutturati e codice di programma, sono tipicamente necessari diversi KB o MB Memoria principale (RAM - Random Access Memory) meno veloce della memoria dei registri, ma molto più capiente è detta Random Access Memory perché i tempi di accesso sono indipendenti dal valore dell indirizzo della cella di memoria acceduta Static RAM per la sua realizzazione vengono usati dei latch è usata per realizzare memorie veloci, come le memorie cache tempi di accesso (2008) intorno a 0,5 2,5 ns Dynamic RAM non è realizzata tramite latch è usata per realizzare memorie capienti come quella principale tempi di accesso (2008) intorno a ns è necessario rinfrescare il contenuto delle DRAM a intervalli di tempo prefissati

16 Static RAM Una SRAM è realizzata come matrice di latch H x W larghezza W = numero di latch per ogni cella altezza H = numero di celle indirizzabili Singolo indirizzo per lettura o scrittura H SRAM H W Non è possibile scrivere e leggere contemporaneamente Numero di bit dell indirizzo: log2 H h-2 h-1 W

17 Static RAM Chip select: da affermare per poter leggere o scrivere Output enable: da affermare per poter abilitare l uscita del chip su un bus condiviso serve a poter collegare molti chip di memoria ad un singolo bus Write enable: impulso che, quando attivato, registra nella linea di latch individuati da Address il valore presentato in Din

18 Dynamic RAM La DRAM è meno costosa, perché è realizzata con un solo transistor per bit, e un condensatore I condensatori mantengono i valori memorizzati solo per alcuni ms Necessario il refresh dinamico delle DRAM, effettuato leggendo, e subito riscrivendo i valori appena letti

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

20 Parte di Controllo La Parte Controllo (Control) della CPU è un circuito sequenziale istruzioni eseguite in più cicli di clock ad ogni ciclo, si esegue uno micropasso (microistruzione) dell istruzione Lo stato interno al circuito sequenziale determina lo specifico micropasso da eseguire Gli output della Parte Controllo sono inviati alla Parte Operativa, che li interpreta come comandi controlli dei multiplexer, controlli per le ALU, segnali per abilitare la scrittura in registri, ecc. Gli input della Parte Controllo giungono dalla Parte Operativa campi del registro che contiene l istruzione corrente (IR), risultati di operazioni di confronto, ecc.

21 Parte di Controllo Esistono diverse ISA (MIPS, x86, ARM) Abbiamo visto vari componenti di base comuni alla realizzazione dei processori Un progettista deve implementare una ISA usando blocchi funzionali e logiche di controllo Vedremo come implementare una versione molto semplice dell ISA MIPS. Collegamenti della parte operativa (datapath) Identificazione dei segnali della parte di controllo (control)

22 Istruzioni di memory-reference: lw, sw Istruzioni Istruzioni arithmetic-logic: add, sub, and, or, slt Istruzioni di control-flow: beq, j Tutte le istruzioni sono lunghe 32 bit R-Type op rs rt rd shamt funct 6 bit 5 bit 5 bit 5 bit 5 bit 6 bit I-Type op rs rt immediate 6 bit 5 bit 5 bit 16 bit J-Type op op: codice operativo dell istruzione target address 6 bit 26 bit rs, rt, rd: dei registri sorgente (rs, rt) e destinazione (rd) shamt: shift amount (è diverso da 0 solo per istruz. di shift) funct: seleziona le varianti dell operazione specificata in op immediate: offset dell indirizzo (load/store) o valore immediato (op. aritmetiche) target address: indirizzo target di un istruzione di jump

23 Progetto 1. Analizzare il set di istruzioni verificare i requisiti del datapath il datapath deve includere gli elementi di memoria corrispondenti ai registri dell ISA tipicamente sono necessari altri registri, usati internamente o non referenziabili direttamente attraverso l ISA es.: PC (Program counter) analizzare la semantica di ogni istruzione, data in termini di trasferimenti tra registri, ed eventuali operazioni tra i registri ll datapath deve fornire i cammini per permettere tutti i register transfer necessari, e gli accessi alla memoria 2. Selezionare i vari componenti del datapath (es. ALU) e stabilisci la metodologia di clocking 3. Assemblare il datapath in accordo ai requisiti, aggiungendo i segnali di controllo 4. Analizzare l implementazione di ogni istruzione per determinare il setting dei segnali di controllo che provocano i vari register transfer 5. Assemblare la logica di controllo in accordo al punto 4 Proviamo a progettare una CPU in cui ogni istruzione viene eseguita all interno di un singolo ciclo di clock

24 Analisi dell ISA L implementazione delle istruzioni è abbastanza simile: 1. Prelevare l istruzione dalla memoria usando il contenuto del registro PC 2. Leggere l istruzione da eseguire dalla memoria (fetch) 3. Interpretare i campi dell istruzione per decidere esattamente cosa fare (decode) 4. Eseguire l istruzione (execute) a. Leggere uno o due registri b. Usare l ALU c. Scrivere in memoria o in un registro 5. Aggiornare il contenuto del registro PC e ricominciare Quindi ALU, Register File e PC devono essere inclusi nella Parte Operativa Per comodità rappresenteremo la memoria assieme agli altri elementi della Parte Operativa, ma essa non fa logicamente parte della CPU

25 Analisi dell ISA Per tutte le istruzioni, dobbiamo come prima cosa effettuare il fetch op rs rt rd shamt funct = M[ PC ] op rs rt imm16 = M[ PC ] op 26bit address = M[ PC ] istruzioni trasferimenti tra registri ADD SUB R[rd] R[rs] + R[rt]; PC PC + 4; R[rd] R[rs] R[rt]; PC PC + 4; LOAD R[rt] M[ R[rs] + sign_ext(imm16) ]; STORE BEQ PC PC + 4; M[ R[rs] + sign_ext(imm16) ] R[rt]; PC PC + 4; if ( R[rs] == R[rt] ) then else PC PC (sign_ext(imm16) << 2); PC PC + 4; BEQ adotta un indirizzamento di tipo PC-relative Al momento dell aggiornamento il PC contiene già l indirizzo dell istruzione successiva a quella corrente

26 Possibile implementazione Gestione PC Dati da scrivere in un registro Dati letti (LOAD) Fetch Campi rs, rt, rd dell istruzione Campo immediate dell istruzione Dati da memorizzare (STORE)

27 Gestione Program Counter Necessario realizzare, all interno dello stesso ciclo di clock, il fetch dell istruzione e l incremento del PC Non possiamo usare l ALU principale, perché questa è già utilizzata per eseguire le istruzioni Stiamo implementando una CPU a singolo ciclo risorse replicate Nota che dalla memoria istruzioni viene letta una nuova istruzione ad ogni ciclo di clock

28 Estensione di segno I 16 bit del campo immediato dell istruzione (es. istruzioni di LOAD/STORE) sono estesi di segno (16 bit 32 bit) prima di essere sommati con il registro R[rs] L indirizzo così calcolato (R[rs] + sign_ext(imm16)) viene usato per accedere alla Memoria Dati in lettura/scrittura M[R[rs] + sign_ext(imm16)]

29 Calcolo del branch Necessario per realizzare il calcolo dell indirizzo di salto dei branch PC PC (sign_ext(imm16) << 2) Non possiamo usare l ALU, perché viene già utilizzata per eseguire l operazione di confronto (sottrazione)

30 Linee di controllo e multiplexer Registro da scrivere in istruzioni R-Type o I-Type Brach o incremento Scrittura registro da ALU o LOAD Secondo ingresso ALU R-Type o I-Type

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

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

Dettagli

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

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

Dettagli

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

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

Dettagli

Arithmetic Logic Unit

Arithmetic Logic Unit Arithmetic Logic Unit Circuito combinatorio all interno del processore per l esecuzione di istruzioni macchina di tipo aritmetico/ logiche (e di confronto) Quindi l ALU deve essere in grado di eseguire:

Dettagli

Multiplexer. Multiplexer 2 a 1 (a 1 bit) e sua implementazione. Multiplexer 2 a 1 (a 32 bit) e sua implementazione

Multiplexer. Multiplexer 2 a 1 (a 1 bit) e sua implementazione. Multiplexer 2 a 1 (a 32 bit) e sua implementazione Decoder Circuito combinatorio con n input e 2 n output Traduce gli n bit di input nell equivalente valore binario, e abilita a 1 l uscita corrispondente, mentre le altre uscite sono disabilitate a 0 Esiste

Dettagli

Progetto CPU (ciclo singolo) Salvatore Orlando

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

Dettagli

Progettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore

Progettazione 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

Dettagli

Il processore: unità di elaborazione

Il 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

Dettagli

Architettura degli Elaboratori B. Introduzione al corso. Componenti di un calcolatore convenzionale. (ciclo singolo) Progetto CPU. Contenuti del corso

Architettura degli Elaboratori B. Introduzione al corso. Componenti di un calcolatore convenzionale. (ciclo singolo) Progetto CPU. Contenuti del corso Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Contenuti del corso Progetto della CPU CPU in grado di eseguire un sottoinsieme di istruzioni MIPS in

Dettagli

Processore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite

Processore: 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:

Dettagli

Architettura degli Elaboratori B Introduzione al corso

Architettura 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

Dettagli

Memorie e circuiti sequenziali

Memorie e circuiti sequenziali Memorie e circuiti sequenziali Salvatore Orlando Arch. Elab. - S. Orlando 1 Elementi di memoria I circuiti combinatori sono in grado di calcolare funzioni che dipendono solo dai dati in input I circuiti

Dettagli

Memorie e circuiti sequenziali. Elementi di memoria

Memorie e circuiti sequenziali. Elementi di memoria Memorie e circuiti sequenziali Salvatore Orlando Arch. Elab. - S. Orlando 1 Elementi di memoria I circuiti combinatori sono in grado di calcolare funzioni che dipendono solo dai dati in input I circuiti

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Cenni sulle memorie Francesco Lo Presti Rielaborate da Salvatore Tucci Clocking q Il segnale di Clock definisce quando i segnali possono essere letti e quando possono essere scritti

Dettagli

Arch. Elab. - S. Orlando 2. Possiamo organizzare le porte logiche in modo da realizzare un elemento di

Arch. Elab. - S. Orlando 2. Possiamo organizzare le porte logiche in modo da realizzare un elemento di Memorie e circuiti sequenziali Salvatore Orlando Arch. Elab. - S. Orlando Latch L S-R Latch è un circuito, composto da 2 porte NOR concatenate, che costituisce l elemento base per costruire elementi di

Dettagli

Reti logiche (2) Circuiti sequenziali

Reti logiche (2) Circuiti sequenziali Reti logiche (2) Circuiti sequenziali 1 Un ripasso Algebra booleana: operatori, postulati, identità, operatori funzionalmente completi Circuiti combinatori: tabelle di verità, porte logiche Decodificatore

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

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

Dettagli

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 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à

Dettagli

Reti logiche (2) Circuiti sequenziali

Reti logiche (2) Circuiti sequenziali Reti logiche (2) Circuiti sequenziali 1 Un ripasso Algebra booleana: operatori, postulati, identità, operatori funzionalmente completi Circuiti combinatori: tabelle di verità, porte logiche Decodificatore

Dettagli

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti

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!

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

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

Dettagli

L'architettura del processore MIPS

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

Dettagli

Architettura degli Elaboratori

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

Dettagli

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini

CPU 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

Dettagli

Rappresentazione dell informazione

Rappresentazione dell informazione Rappresentazione dell informazione Codifica dei numeri Rappresentazioni in base 2, 8, 10 e 16 Rappresentazioni M+S, C1 e C2 Algoritmi di conversione di base Algoritmi di somma, moltiplicazione e divisione

Dettagli

Architettura degli elaboratori CPU a ciclo singolo

Architettura degli elaboratori CPU a ciclo singolo Architettura degli elaboratori CPU a ciclo singolo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo

Dettagli

Elementi di memoria. Memorie e circuiti sequenziali. Latch. Set / Reset del latch

Elementi di memoria. Memorie e circuiti sequenziali. Latch. Set / Reset del latch Elementi di memoria I circuiti combinatori sono in grado di calcolare funzioni che dipendono solo dai dati in input Memorie e circuiti sequenziali Salvatore Orlando I circuiti sequenziali sono invece in

Dettagli

Istruzioni e linguaggio macchina

Istruzioni e linguaggio macchina Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare

Dettagli

Linguaggio assembler e linguaggio macchina (caso di studio: processore MIPS)

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

Dettagli

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

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

Dettagli

Architettura degli Elaboratori A Modulo 2

Architettura degli Elaboratori A Modulo 2 Architettura degli Elaboratori A Modulo 2 Memorie e circuiti sequenziali slides a cura di Andrea Torsello e Salvatore Orlando ircuiti combinatori vs sequenziali I circuiti combinatori sono in grado di

Dettagli

Architettura degli elaboratori CPU a ciclo singolo

Architettura degli elaboratori CPU a ciclo singolo Architettura degli elaboratori CPU a ciclo singolo Prof. Alberto Borghese Dipartimento di Informatica borghese@di.unimi.it Università degli Studi di Milano iferimento sul Patterson: capitolo 4.2, 4.4,

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Memorie e circuiti sequenziali slide a cura di Salvatore Orlando, Andrea Torsello, Marta Simeoni 1 Circuiti combinatori vs sequenziali! I circuiti combinatori sono in grado di calcolare funzioni che dipendono

Dettagli

Linguaggio macchina e register file

Linguaggio macchina e register file Linguaggio macchina e register file Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4,

Dettagli

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

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

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale la memoria secondaria i dispositivi di input/output 1 Fornisce la capacità di

Dettagli

Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella

Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Tipi di memorie Possono essere classificate in base a varie caratteristiche:

Dettagli

Clock. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Circuiti combinatori e sequenziali.

Clock. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Circuiti combinatori e sequenziali. Corso di Architettura degli Elaboratori Il livello logico digitale: Memoria Clock: un circuito che emette una serie di impulsi con una specifica larghezza e intermittenza Tempo di ciclo di clock: intervallo

Dettagli

Elementi base per la realizzazione dell unità di calcolo

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

Dettagli

Università degli Studi di Cassino

Università 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

Dettagli

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H

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

Dettagli

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j

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):

Dettagli

Architettura del calcolatore (Seconda parte)

Architettura del calcolatore (Seconda parte) Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly

Dettagli

Fetch Decode Execute Program Counter controllare esegue prossima

Fetch Decode Execute Program Counter controllare esegue prossima Stored Program Istruzioni sono stringhe di bit Programmi: sequenze di istruzioni Programmi (come i dati) memorizzati in memoria La CPU legge le istruzioni dalla memoria (come i dati) Ciclo macchina (ciclo

Dettagli

Università degli Studi di Cassino

Università 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

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Dettagli

Clock. Corso di Architettura degli Elaboratori. Latch di tipo SR. Circuiti combinatori e sequenziali. Il livello logico digitale: Memoria

Clock. Corso di Architettura degli Elaboratori. Latch di tipo SR. Circuiti combinatori e sequenziali. Il livello logico digitale: Memoria Corso di Architettura degli Elaboratori Il livello logico digitale: Memoria Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 85 I-49 Torino baldoni@di.unito.it

Dettagli

static dynamic random access memory

static dynamic random access memory LA MEMORIA SRAM e D R A M static dynamic random access memory SRAM: unità che memorizza un gran numero di parole in un insieme di flip-flop, opportunamente connessi, mediante un sistema di indirizzamento

Dettagli

L unità di controllo di CPU a singolo ciclo

L 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,

Dettagli

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

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

Dettagli

Progetto CPU a singolo ciclo

Progetto 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

Dettagli

Implementazione semplificata

Implementazione 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

Dettagli

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann Architettura Corso di Laurea in Ingegneria Biomedica aa 2003/2004 Ing. Antonio Coronato 1 Argomenti Modello di Von Neumann, Bus, Memoria centrale e dispositivi Data Path delle architetture di Von Neumann

Dettagli

CPU a ciclo multiplo

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 1/8 Sommario! I problemi

Dettagli

La CPU a singolo ciclo

La CPU a singolo ciclo La CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 5 (fino a 5.4) 1/44 Sommario

Dettagli

Riassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div

Riassunto. 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

Dettagli

ESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI

ESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI ESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI Progettare una unità centrale di elaborazione microprogrammata, dotata di registri ad uso generale di bit, che sia in grado di indirizzare una memoria di 64k

Dettagli

Architetture dei Calcolatori (Lettere

Architetture dei Calcolatori (Lettere Architetture dei Calcolatori (Lettere J-K) Tecnologie per la Memoria e Gerarchie di Memoria Ing.. Davide D AmicoD Clocking Il segnale di Clock definisce quando i segnali possono essere letti e quando possono

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La

Dettagli

Architettura degli elaboratori

Architettura degli elaboratori Architettura degli elaboratori - CPU (ciclo singolo) A.A. 26/7 Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori CPU a ciclo singolo Marco

Dettagli

Esercitazione del 05/05/ Soluzioni

Esercitazione del 05/05/ Soluzioni Esercitazione del 05/05/2005 - Soluzioni Una CPU a ciclo singolo richiede un ciclo di clock di durata sufficiente a permettere la stabilizzazione del circuito nel caso dell istruzione più complicata (con

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici LIVELLO ORGANIZZAZIONE: SCHEMI DI BASE ALU e REGISTER FILE Massimiliano Giacomin 1 DOVE CI TROVIAMO LIVELLO SIST. OP. Application Binary Interface (ABI) ISA Instruction Set Architecture

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 1 8 / 1 9 Architettura di Von Neumann Architettura di Von Neumann: l Unità di Elaborazione L Unità di Elaborazione L unità di elaborazione (CPU) contiene

Dettagli

CPU a ciclo multiplo

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

Dettagli

Le memorie Cache n-associative

Le memorie Cache n-associative Le memorie Cache n-associative Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento Patterson: 5.2, 5.3 1/30 Sommario

Dettagli

Progetto CPU a singolo ciclo

Progetto 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/60 Sommario v La CPU v Sintesi di

Dettagli

Architettura hardware

Architettura 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

Dettagli

Clock. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Latch di tipo SR sincronizzato. Latch di tipo SR

Clock. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Latch di tipo SR sincronizzato. Latch di tipo SR Corso di Architettura degli Elaboratori Il livello logico digitale: Memoria Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/

Dettagli

Istruzioni di trasferimento dati

Istruzioni di trasferimento dati Istruzioni di trasferimento dati Leggere dalla memoria su registro: lw (load word) Scrivere da registro alla memoria: sw (store word) Esempio: Codice C: A[8] += h A è un array di numeri interi Codice Assembler:

Dettagli

Il Processore: l Unità di Controllo Principale Barbara Masucci

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

Dettagli

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

Dettagli

Architettura dell elaboratore

Architettura dell elaboratore Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati

Dettagli

CPU pipeline hazards

CPU 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!

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale di Cassino e del Lazio Meridionale Corso di Tecnologie per le Memorie Anno Accademico Francesco Tortorella Gerarchia di memoria: vista complessiva Gerarchia di memoria: tecnologie Accesso casuale (random):

Dettagli

ARCHITETTURA 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).! 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

Dettagli

Clocking. Architetture dei Calcolatori (Lettere. di Memoria. Elemento. scritti. Tecnologie per la Memoria e Gerarchie di Memoria

Clocking. Architetture dei Calcolatori (Lettere. di Memoria. Elemento. scritti. Tecnologie per la Memoria e Gerarchie di Memoria Clocking Architetture dei Calcolatori (Lettere A-I) Tecnologie per la Memoria e Gerarchie di Memoria Ing.. Francesco Lo Presti Il segnale di Clock definisce quando i segnali possono essere letti e quando

Dettagli

Circuiti sincroni circuiti sequenziali:bistabili e latch

Circuiti sincroni circuiti sequenziali:bistabili e latch Architettura degli Elaboratori e delle Reti Lezione 8 Circuiti sincroni circuiti sequenziali:bistabili e latch Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli

Dettagli

La memoria - tecnologie

La memoria - tecnologie Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/24 Indirizzi

Dettagli

Una CPU multi-ciclo. Sommario

Una CPU multi-ciclo. Sommario Una CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/3 http:\\homes.dsi.unimi.it\ borghese Sommario I problemi della

Dettagli

Un 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) 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

Dettagli

Il 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 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

Dettagli

L architettura del calcolatore (Seconda parte)

L architettura del calcolatore (Seconda parte) L architettura del calcolatore (Seconda parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin ORGANIZZAZIONE DEL CALCOLATORE: RICHIAMI

Dettagli

La memoria - tecnologie

La memoria - tecnologie Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/25 Struttura

Dettagli

Linguaggio macchina. Architettura degli Elaboratori e delle Reti. Il linguaggio macchina. Lezione 16. Proff. A. Borghese, F.

Linguaggio macchina. Architettura degli Elaboratori e delle Reti. Il linguaggio macchina. Lezione 16. Proff. A. Borghese, F. 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/32 Linguaggio

Dettagli

Calcolatori Elettronici B a.a. 2004/2005

Calcolatori Elettronici B a.a. 2004/2005 Calcolatori Elettronici B a.a. 2004/2005 RETI LOGICHE: RICHIAMI Massimiliano Giacomin 1 Unità funzionali Unità funzionali: Elementi di tipo combinatorio: - valori di uscita dipendono solo da valori in

Dettagli

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

Corso 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

Dettagli

CALCOLATORI ELETTRONICI. I dispositivi di memoria

CALCOLATORI ELETTRONICI. I dispositivi di memoria CALCOLATORI ELETTRONICI I dispositivi di memoria I dispositivi di memoria Linguaggi ad alto livello/ Applicazioni SW Informatica Sistema operativo Assembler ISA Architettura di un calcolatore Memoria I/O

Dettagli

CALCOLATORI ELETTRONICI 15 luglio 2014

CALCOLATORI ELETTRONICI 15 luglio 2014 CALCOLATORI ELETTRONICI 15 luglio 2014 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave sensibile ai fronti di salita e se

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università 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

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

Problemi del ciclo singolo

Problemi del ciclo singolo Problemi del ciclo singolo Ciclo di clock lungo Istruzioni potenzialmente veloci sono rallentate Impiegano sempre lo stesso tempo dell istruzione più lenta Unità funzionale e collegamenti della parte operativa

Dettagli

La memoria - tecnologie

La memoria - tecnologie Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/24 Indirizzi

Dettagli