Pipelining: Unità di Elaborazione e di Controllo Barbara Masucci
|
|
- Dorotea Morelli
- 5 anni fa
- Visualizzazioni
Transcript
1 Architettura degli Elaboratori Pipelining: Unità di Elaborazione e di Controllo Barbara Masucci
2 Punto della situazione Ø Abbiamo studiato Ø Una prima implementazione hardware (a ciclo singolo) di un sottoinsieme dell IS del MIPS e visto che è inefficiente Ø Obiettivo di oggi e della prossima lezione Ø Ø Studiare una seconda implementazione, più efficiente, basata su pipeline In particolare, vedremo la realizzazione dell Unità di Elaborazione con pipeline e dell Unità di Controllo ad essa associata
3 Implementazione a Ciclo Singolo Ø L implementazione a ciclo singolo non viene utilizzata perché è inefficiente Ø Motivo: la lunghezza del ciclo di clock (uguale per tutte le istruzioni) è determinata dal cammino di elaborazione più lungo all interno del processore Ø L istruzione più lenta è la lw Ø Utilizza 5 unità funzionali in sequenza: memoria istruzioni, register file, ALU, memoria dati, register file Ø Questo comporta un ciclo di clock molto lungo, mentre molte istruzioni possono essere eseguite in tempo minore Ø Se si aggiungono istruzioni più complesse di quelle considerate finora (ad esempio quelle in virgola mobile), le cose peggiorano Ø Come risolvere il problema?
4 La Pipeline Ø E una tecnica di implementazione hardware di un set di istruzioni, utilizzata da quasi tutti gli elaboratori Ø Prevede la sovrapposizione temporale dell esecuzione delle varie istruzioni Ø L idea su cui si basa è la stessa utilizzata nelle catene di montaggio (assembly line) Ø Introdotte da Henry Ford ai primi del 900 Ø Consentono di ridurre i tempi necessari per la realizzazione di un manufatto complesso, dividendo il lavoro degli operai in compiti
5 Esempio: il bucato Ø Supponiamo di dover fare il bucato e che questo consista nelle seguenti attività Ø Mettere la biancheria nella lavatrice Ø Terminato il lavaggio, mettere la biancheria bagnata nell asciugatrice Ø Terminata l asciugatura, procedere alla stiratura Ø Terminata la stiratura, riporre la biancheria nell armadio Ø L approccio non basato su pipeline procede ad un nuovo ciclo per il bucato solo quando il precedente è terminato Ø L approccio basato su pipeline consente di risparmiare tempo, effettuando più cicli di bucato contemporaneamente
6 Il bucato con pipeline Ø Nell approccio basato su pipeline Ø Quando la lavatrice termina il lavaggio del primo carico, viene subito caricata per il secondo ciclo, mentre l asciugatrice asciuga il primo carico Ø Quando l asciugatrice termina il primo carico, viene subito caricata per il secondo ciclo, mentre viene stirato il primo carico e la lavatrice procede al terzo carico Ø Quando la stiratura del primo carico viene terminata e i panni vengono riposti nell armadio, si passa a stirare il secondo carico, mentre l asciugatrice viene caricata per il terzo ciclo e la lavatrice per il quarto ciclo
7 Tempo di esecuzione per il bucato Ø Supponendo che ciascuna attività duri 30 minuti, l intero ciclo per il bucato dura due ore Ø Con il primo metodo, tra le 18:00 e le 20:00 viene eseguito un solo ciclo per il bucato e sono richieste 8 ore per completare 4 cicli Ø Con il secondo metodo tra le 18:00 e le 21:30 vengono eseguiti 4 cicli per il bucato (3,5 ore) Ø La pipeline Ø Non riduce il tempo totale richiesto per un ciclo di bucato (consiste sempre in 2 ore) Ø Migliora il throughput (numero di cicli completati nell unità di tempo)
8 Rappresentazione grafica
9 Il bucato con pipeline Ø Nell approccio basato su pipeline sono utilizzati 4 stadi diversi Ø Lavaggio Ø Asciugatura Ø Stiratura Ø Sistemazione della biancheria Ø Se i cicli di bucato da fare sono molti, l incremento di velocità diventa pari al numero degli stadi della pipeline (4 in questo caso)
10 Il MIPS con pipeline Ø Possiamo usare l approccio con pipeline per eseguire le istruzioni del processore MIPS Ø Saranno necessari tanti stadi quante sono le fasi richieste per l esecuzione delle istruzioni Ø Prelievo (fetch) dell istruzione dalla memoria istruzioni Ø Lettura dei registri e decodifica dell istruzione Ø Esecuzione di un operazione o calcolo di un indirizzo Ø Accesso a un operando nella memoria dati Ø Scrittura del risultato in un registro Ø Quindi avremo bisogno di una pipeline con 5 stadi
11 Confronto di prestazioni Ø Consideriamo una pipeline che sia in grado di eseguire le istruzioni seguenti: Ø lw, sw Ø AND, OR Ø slt Ø beq Ø Confrontiamo il tempo medio necessario per l esecuzione di queste istruzioni nelle due implementazioni Ø A ciclo singolo Ø Con pipeline
12 Confronto di prestazioni Ø Supponiamo che i tempi richiesti per le varie fasi siano rappresentati in tabella Ø Non si considerano i ritardi introdotti dai multiplexer, dall unità di controllo, dall accesso al registro PC e dall estensione del segno Ø Nell implementazione a ciclo singolo bisogna adeguarsi all istruzione più lenta (lw) per stabilire la durata del ciclo di clock: quindi 800 ps
13 Confronto di prestazioni Ø Consideriamo una sequenza di tre istruzioni lw Ø L implementazione a ciclo singolo richiede 800 X 3 = 2400 ps Ø Nell implementazione con pipeline Ø Ciascuno dei 5 stadi impiega un ciclo di clock Ø La durata del ciclo di clock va tarata in base alla durata dello stadio più lento (200 ps), anche se alcuni stadi impiegano meno tempo Ø Ad esempio, la lettura dai registri richiede 100 ps, per cui viene eseguita nella seconda metà del ciclo di clock Ø Quindi i 5 stadi della pipeline in sequenza richiedono 5 cicli di clock, per un totale di 200 x 5 = 1000 ps Ø Il tempo tra la fine della prima istruzione e la fine della terza è 1400 ps Ø Ogni istruzione successiva alla prima fa aumentare il tempo di esecuzione di 200 ps, per cui il tempo richiesto dalle tre istruzioni è 200 X = 1400 ps
14 Confronto di prestazioni Implementazione a ciclo singolo Implementazione con pipeline La lettura dal register file avviene nella seconda metà del ciclo di clock
15 Confronto di prestazioni Implementazione a ciclo singolo Implementazione con pipeline La scrittura dal register file avviene nella prima metà del ciclo di clock
16 Confronto di prestazioni Ø Se la pipeline opera in condizioni ideali, con un numero molto grande di istruzioni, il tempo di esecuzione viene calcolato con la formula seguente: Tempo tra due istruzioni con pipeline Tempo tra due istruzioni senza pipeline # stadi della pipeline Ø Quindi una pipeline a 5 stadi può consentire un incremento di velocità pari a 5 Ø Considerando l esempio precedente, si può passare da 2400 ps a 480 ps (480 = 2400/5) Ø Perché noi abbiamo ottenuto 1400 ps invece di 480 ps? Ø Abbiamo considerato solo poche istruzioni
17 Confronto di prestazioni Ø Vediamo che accade se aumentiamo il numero di istruzioni Ø Aggiungiamo altre istruzioni di tipo lw alle 3 precedenti, per un totale di istruzioni Ø In assenza di pipeline, il tempo di esecuzione è x 800 ps, cioè ps Ø Con pipeline, ogni istruzione in più fa aumentare il tempo di esecuzione di 200 ps, per un totale di x ps, cioè ps Ø Quindi il rapporto tra i tempi di esecuzione nelle due implementazioni è = 4
18 Osservazioni Ø L implementazione con pipeline aumenta il numero di istruzioni contemporaneamente in esecuzione Ø Quindi, la pipeline Ø Aumenta il throughput (numero di istruzioni eseguite nell unità di tempo) Ø Non diminuisce il tempo di esecuzione (latenza) della singola istruzione, che resta sempre lo stesso
19 Pipeline nel MIPS Ø Abbiamo già detto che per implementare la pipeline nel MIPS abbiamo bisogno di 5 stadi Ø Primo stadio: Prelievo dell istruzione dalla memoria istruzioni Ø Secondo stadio: Lettura dei registri e decodifica dell istruzione Ø Terzo stadio: Esecuzione di un operazione o calcolo di un indirizzo Ø Quarto stadio: Accesso a un operando nella memoria dati Ø Quinto stadio: Scrittura del risultato in un registro
20 Pipeline nel MIPS Ø Vediamo come realizzare l Unità di Elaborazione con pipeline e l Unità di Controllo ad essa associata Ø Ripartiamo dall Unità di Elaborazione a ciclo singolo e identifichiamo i 5 stadi della pipeline Ø IF (Instruction Fetch): prelievo istruzione ed incremento PC Ø ID (Instruction Decode): Decodifica istruzione e lettura registri Ø EX (EXecution): Esecuzione operazione / calcolo indirizzo Ø MEM (MEMory): Accesso in memoria Ø WB (Write Back): Scrittura banco registri
21 L unità di Elaborazione a Ciclo Singolo
22 L unità di Elaborazione con pipeline Ø Per consentire la condivisione delle varie unità funzionali tra i vari stadi della pipeline, aggiungiamo dei registri per salvare i dati (registri di pipeline o registri interstadio) Ø Ad ogni ciclo di clock le informazioni procedono da un registro di pipeline al successivo Ø I registri devono avere ampiezza sufficiente a memorizzare tutti i dati necessari Ø Il nome del registro è dato dai nomi dei due stadi che esso separa Ø Registro IF/ID (Instruction Fetch / Instruction Decode) Ø Registro ID/EX (Instruction Decode / Execute) Ø Registro EX/MEM (Execute / MEMory Access) Ø Registro MEM/WB (MEMory Access / Write Back)
23 L unità di Elaborazione con pipeline IF/ID deve contenere sia istruzione prelevata che valore PC+4 IF/ID deve essere ampio 64 bit
24 L unità di Elaborazione con pipeline Ø Vediamo come viene eseguita l istruzione lw nei vari stadi della pipeline Ø IF (Instruction Fetch): prelievo istruzione ed incremento PC Ø ID (Instruction Decode): Decodifica istruzione e lettura registri Ø EX (EXecution): Esecuzione operazione / calcolo indirizzo Ø MEM (MEMory): Accesso in memoria Ø WB (Write Back): Scrittura banco registri
25 Esecuzione di lw: primo stadio Ø L istruzione viene prelevata (letta) dalla memoria istruzioni, usando il contenuto del PC, e scritta nel registro IF/ID Ø Il PC viene aggiornato e il suo valore viene scritto in IF/ID La colorazione nella metà di destra indica lettura La colorazione nella metà di sinistra indica scrittura
26 Esecuzione di lw: secondo stadio Ø Il campo offset e i numeri dei due registri da leggere vengono letti dal registro IF/ID, contenente l istruzione prelevata Ø I due dati letti dai registri e l offset esteso a 32 bit vengono scritti nel registro ID/EX
27 Esecuzione di lw: terzo stadio Ø I due dati provenienti dai registri e l offset esteso a 32 bit vengono letti dal registro ID/EX Ø Viene effettuata la somma tramite l ALU del contenuto del primo registro e dell offset esteso a 32 bit Ø Il risultato viene scritto nel registro EX/MEM
28 Esecuzione di lw: quarto stadio Ø L indirizzo a cui accedere nella memoria dati viene letto dal registro EX/MEM Ø Il dato letto in memoria viene scritto nel registro MEM/WB
29 Esecuzione di lw: quinto stadio Ø Il dato viene letto dal registro MEM/WB e scritto nel register file
30 Caccia all errore Ø Quale registro di destinazione viene scritto? Ø Il numero del registro da scrivere è contenuto nel registro IF/ID Ø Ma tale registro contiene un istruzione successiva alla lw Ø Soluzione: preservare il numero del registro di destinazione di lw
31 Soluzione Ø Il numero del registro di destinazione viene scritto/ trasportato nei registri di pipeline Ø Prima in ID/EX, poi in EX/MEM, infine in MEM/WB
32 Schema corretto per lw Ø Mettendo insieme i 5 stadi della pipeline per l istruzione lw si ha
33 Esempio con più istruzioni Ø Consideriamo la seguente sequenza di istruzioni assembler MIPS: lw $t0, sw $t3, add $t5, sub $t8, 10($t1) 20($t4) $t6, $t7 $t9, $t10 Ø Vediamo cosa accade nei vari cicli di clock
34 Primo ciclo di clock
35 Secondo ciclo di clock
36 Terzo ciclo di clock
37 Quarto ciclo di clock
38 Quinto ciclo di clock
39 Sesto ciclo di clock
40 Settimo ciclo di clock
41 Ottavo ciclo di clock
42 L Unità di controllo con pipeline Ø Aggiungiamo l unità di controllo all unità di elaborazione con pipeline Ø Cerchiamo di riutilizzare il più possibile l Unità di Controllo dell implementazione a ciclo singolo Ø In particolare, l Unità di Controllo della ALU, i multiplexer e la logica di controllo per i salti saranno gli stessi Ø Innanzitutto notiamo che Ø I registri di pipeline IF/ID, ID/EX, EX/MEM, MEM/WB, così come il registro PC, sono scritti ad ogni ciclo di clock Ø Non sono quindi necessari segnali di controllo per la scrittura di tali registri
43 L Unità di controllo con pipeline
44 Ø Raggruppiamo i segnali di controllo in base agli stadi della pipeline e vediamo quali devono essere impostati Ø Prelievo dell istruzione Ø I segnali di controllo per leggere la memoria istruzioni e scrivere il PC sono sempre asseriti: non c è niente da controllare in questo stadio Ø Decodifica dell istruzione/lettura del register file Ø Anche in questo stadio i segnali di controllo sono sempre asseriti e non c è niente da controllare Ø Esecuzione/calcolo dell indirizzo Ø I segnali da impostare sono RegDst, ALUOp, ALUSrc Ø Accesso alla memoria Ø I segnali da impostare sono Branch, MemRead, MemWrite Ø Scrittura del risultato Ø L Unità di controllo con pipeline I segnali da impostare sono MemtoReg, RegWrite
45 L Unità di controllo con pipeline Ø Implementare l unità di controllo significa impostare il valore dei segnali per ciascuno stadio della pipeline e per ciascuna istruzione Ø Ciò può essere fatto salvando i segnali all interno dei registri di pipeline Ø I valori necessari allo stadio successivo sono propagati dal registro di pipeline corrente a quello successivo Sono gli stessi segnali di controllo dell implementazione a ciclo singolo, ma divisi in tre gruppi, ciascuno attivo in uno degli ultimi tre stadi della pipeline
46 L Unità di controllo con pipeline Ø I registri di pipeline contengono anche i valori dei segnali di controllo (9 bit) Ø Di questi, 4 sono utilizzati nello stadio EX, mentre i rimanenti sono trasportati al registro di pipeline EX/MEM Ø Dei segnali presenti nel registro EX/MEM, 3 sono utilizzati nello stadio MEM, mentre i rimanenti sono trasportati al registro MEM/WB e poi usati nello stadio WB 9 bit 5 bit 2 bit
47 Unità di elaborazione con pipeline e controllo
48 Riepilogo e riferimenti Ø Abbiamo visto una seconda implementazione per il MIPS, basata su pipeline Ø Ø Introduzione alla pipeline: [PH] par. 4.5 (esclusi gli hazard nelle pipeline) L unità di Elaborazione con pipeline e l Unità di Controllo associata: [PH] par. 4.6 Ø Nella prossima lezione Ø Ø Studieremo le criticità (hazard) che sorgono in una pipeline quando non è possibile eseguire l istruzione successiva nel ciclo di clock successivo Analizzeremo alcune soluzioni per risolvere tali criticità
ESERCIZIO 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
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
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
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é
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)
DettagliArchitettura di tipo registro-registro (load/store)
Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche
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
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
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
di Cassino e del Lazio Meridionale Corso di Pipeline Anno Accademico Francesco Tortorella Progettazione del datapath Prima soluzione: d.p. a ciclo singolo Semplice da realizzare Condizionato dal worst
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
DettagliIspirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).
RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria
DettagliCalcolatori Elettronici B a.a. 2008/2009
Calcolatori Elettronici B a.a. 2008/2009 Tecniche Pipeline: Gestione delle criticità Massimiliano Giacomin 1 Pipeline: i problemi Idealmente, il throughput è di una istruzione per ciclo di clock! Purtroppo,
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
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
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
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 La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con
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
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
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
DettagliCalcolatori Elettronici
Calcolatori Elettronici La memoria gerarchica La cache: come migliorare le prestazioni Ricapitolando (1) La memoria principale e la cache sono scomposte in blocchi di uguale dimensione L indirizzo del
DettagliFondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Seconda v2.0
Fondamenti Teorici Antonio Pescapè e Marcello Esposito Parte Seconda v2.0 Agenda Modello di Von Neumann Algoritmo del Processore Linguaggio Macchina e Linguaggio Assembler Hardware e Software Compilatori
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
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
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
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
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliCalcolatori Elettronici B a.a. 2006/2007
Calcolatori Elettronici B a.a. 2006/2007 RETI LOGICHE: RICHIAMI Massimiliano Giacomin 1 Due tipi di unità funzionali Elementi di tipo combinatorio: - valori di uscita dipendono solo da valori in ingresso
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
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
DettagliEsercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it
Esercitazioni di Reti Logiche Lezione 1 Rappresentazione dell'informazione Zeynep KIZILTAN zkiziltan@deis.unibo.it Introduzione Zeynep KIZILTAN Si pronuncia Z come la S di Rose altrimenti, si legge come
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
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
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
DettagliInformatica Teorica. Macchine a registri
Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire
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:
DettagliCalcolatori Elettronici
Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di Von Neumann Sistemi basati sull architettura Harward Architettura dei calcolatori: definizioni Evoluzione
DettagliCalcolatori Elettronici
Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di von Neumann rchitettura dei calcolatori: definizioni Evoluzione dell architettura rchitettura della
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 degli elaboratori (A)
Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma
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
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
DettagliCaratteristiche di un PC
Caratteristiche di un PC 1 Principali porte presenti sui personal computer PC Una porta è il tramite con la quale i dispositivi (periferiche o Device ) vengono collegati e interagiscono con il personal
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
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
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:
DettagliCALCOLATORI ELETTRONICI
CALCOLATORI ELETTRONICI Giuseppe Coldani Tel. 0382 985678 e-mail: giuseppe.coldani@unipv.it giuseppe.coldani@tin.it orario delle lezioni: Mercoledì 14.00-18.00 orario di ricevimento: su appuntamento 1
DettagliAumentare il parallelismo a livello di istruzione (1)
Aumentare il parallelismo a livello di istruzione (1) Architetture Avanzate dei Calcolatori Valeria Cardellini Parallelismo Il parallelismo consente di migliorare le prestazioni grazie all esecuzione simultanea
DettagliAumentare il parallelismo a livello di istruzione (2)
Processori multiple-issue issue Aumentare il parallelismo a livello di istruzione (2) Architetture Avanzate dei Calcolatori Valeria Cardellini Nei processori multiple-issue vengono lanciate più istruzioni
DettagliIl file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.
Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti
DettagliOpenDataLazio Formia 9 aprile 2015 Laboratorio. Roberto Angeletti
OpenDataLazio Formia 9 aprile 2015 Laboratorio Roberto Angeletti OpenDataLazio dati.lazio.it Quali dati aperti del Lazio sono subito visualizzabili su una mappa? Troviamo i dati vettoriali catalogati
DettagliCOMPILAZIONE. Tarsformazione di linguaggi
COMPILAZIONE Tarsformazione di linguaggi Le fasi della compilazione File sorgente Compilazione File sorgente File sorgente File sorgente Compilazione Compilazione Compilazione Libreria di run-time File
DettagliArchitetture CISC e RISC
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.
DettagliIntroduzione. Un calcolatore digitale è costituito da un sistema interconnesso dei seguenti dispositivi:
Appunti di Calcolatori Elettronici Organizzazione dei sistemi di elaborazione Introduzione... 1 La CPU... 2 Ciclo di esecuzione delle istruzioni... 3 Insieme delle istruzioni... 4 Organizzazione della
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
DettagliINCREMENTO DELLE PRESTAZIONI DI UN PROCESSORE
1 INCREMENTO DELLE PRESTAZIONI DI UN PROCESSORE TIPI DI PARALLELISMO E CLASSIFICAZIONE DI FLYNN PIPELINING DELLE ISTRUZIONI I PROCESSORI SUPERSCALARI I PROCESSORI VLIW MULTITHREADING, CHIP MULTI PROCESSOR
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
Dettagli4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
DettagliParte II.2 Elaboratore
Parte II.2 Elaboratore Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 1, 2015 Elisabetta Elisabetta Ronchieri II Software Argomenti
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/17
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
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
DettagliARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI
PROGETTO DELLA CPU MEMORIZZAZIONE DEGLI OPERANDI DOVE SONO MEMORIZZATI GLI OPERANDI NELLA CPU? ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI SCELTE PROGETTUALI: 1. DOVE SONO MEMORIZZATI
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
DettagliFondamenti di informatica: un po di storia
Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi
DettagliCorso di Informatica Applicata. Lezione 3. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 3 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39
DettagliAggiornato il 18 giugno 2015. 1 Questa affermazione richiede una precisazione. A parità di altre condizioni, l eliminazione dello stadio ME allunga la
8 Questo documento contiene le soluzioni ad un numero selezionato di esercizi del Capitolo 8 del libro Calcolatori Elettronici - Architettura e organizzazione, Mc-Graw Hill 2009. Sarò grato a coloro che
DettagliUniversità degli Studi G. d'annunzio C.L. Economia e Informatica per l'impresa. Sistemi Operativi e Reti A.A. 2014/2015 prof.
Università degli Studi G. d'annunzio C.L. Economia e Informatica per l'impresa Sistemi Operativi e Reti A.A. 2014/2015 prof. Gianluca Amato Architettura degli elaboratori Architettura Hardware Architettura
DettagliIn realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad
Principi di architetture dei calcolatori: l architettura ARM. Mariagiovanna Sami Che cosa è ARM In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline
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
DettagliPARTE III MACCHINE A REGISTRI
PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson
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
DettagliVBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
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.
DettagliQuinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.
Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere
DettagliUN PO DI STORIA, CONCETTI BASE e DEFINIZIONI GENERALI
1 RICHIAMI SUL MIPS UN PO DI STORIA, CONCETTI BASE e DEFINIZIONI GENERALI L ARCHITETTURA DI RIFERIMENTO: LA MACCHINA MIPS INSTRUCTION SET MIPS R2000 ISTRUCTION SET SEMPLIFICATO: emips ESEMPI DI PROGRAMMAZIONE
DettagliUN PO DI STORIA, CONCETTI BASE e DEFINIZIONI GENERALI
1 RICHIAMI SUL MIPS UN PO DI STORIA, CONCETTI BASE e DEFINIZIONI GENERALI L ARCHITETTURA DI RIFERIMENTO: LA MACCHINA MIPS INSTRUCTION SET MIPS R2000 ISTRUCTION SET SEMPLIFICATO: emips ESEMPI DI PROGRAMMAZIONE
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 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
DettagliEsempio: aggiungere j
Esempio: aggiungere j Eccezioni e interruzioni Il progetto del controllo del processore si complica a causa della necessità di considerare, durante l esecuzione delle istruzioni, il verificarsi di eventi
DettagliLa gestione dell I/O (Cap. 5, Tanenbaum)
La gestione dell I/O (Cap. 5, Tanenbaum) Prestazioni e generalità Gestione software Supporti su disco Orologi Lezione Architettura degli Elaboratori - 1 - A. Sperduti Pagina 1 Prestazioni e generalità
DettagliDI GESTIONE E CONSERVAZIONE DEI DOCUMENTI
COMUNE DI PINEROLO MANUALE DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI ALLEGATO N. 6 PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI Articolo 1 Sicurezza fisica
DettagliArchitettura degli Elaboratori (modulo II e B) (Compito 24 Giugno 2009)
Architettura degli Elaboratori (modulo II e B) (Compito 24 Giugno 2009) Usare un foglio separato per rispondere a due delle domande seguenti, specificando nell intestazione: Titolo del corso (Architettura
DettagliARCHITETTURA DI UN PERSONAL COMPUTER
ARCHITETTURA DI UN PERSONAL COMPUTER Processore Tastiera Mouse CD-ROM Bus Memoria FD HD Stampante La struttura logica Fisicamente l unità centrale è costituita da:... la gabbia per le schede (rack)...
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 7 Sommatori e Moltiplicatori
Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 1/36 Sommario!
DettagliIl calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi
Il calcolatore elettronico Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Introduzione Un calcolatore elettronico è un sistema elettronico digitale programmabile Sistema: composto da
DettagliArchitettura degli Elaboratori e delle Reti
Architettura degli Elaboratori e delle Reti CORSO DI LAUREA TRIENNALE IN INFORMATICA PER LE TELECOMUNICAZIONI A. A. 2006-2007 Cristina Silvano Università degli Studi di Milano Dipartimento di Informatica
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. Indice:
Architettura Indice: Architettura 1 Architettura degli elaboratori (3 / 10 / 2006)...4 Livelli di astrazione...4 Architettura di Von Neumann...4 La CPU...5 La memoria...5 Rappresentare gli interi...6 Rappresentazione
DettagliLaboratorio di Progettazione di Sistemi Software Progetto: modellazione di un dominio e sue attività
Laboratorio di Progettazione di Sistemi Software Progetto: modellazione di un dominio e sue attività Valentina Presutti (A-L) Riccardo Solmi (M-Z) Definizione del problema Modello di un dominio Si vuole
DettagliUniamo VM e CACHE. Physically addressed. Physically Addressed. Prestazioni. Ci sono varie alternative architetturali. Sono quelle piu semplici
Uniamo VM e CACHE Physically addressed Ci sono varie alternative architetturali physically addressed virtually addressed virtually indexed Sono quelle piu semplici un dato puo essere in cache solo se e
DettagliArchitetture CISC e RISC. Misura della potenza di calcolo. Cos'è la potenza di calcolo. Prestazioni della CPU. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.
DettagliLa memoria virtuale. La gerarchia di memorie. Indirizzo fisico. Memoria virtuale. Architetture Avanzate dei Calcolatori. Valeria Cardellini
La memoria Architetture Avanzate dei Calcolatori Valeria Cardellini Nelle lezioni precedenti { Memoria La gerarchia di memorie Registri Istruzioni, operandi L Cache Blocchi L2 Cache Blocchi Memoria Pagine
DettagliTecniche di parallelismo, processori RISC
Testo di riferimento: [Congiu] 9.1-9.3 (pg. 253 264) Tecniche di parallelismo, processori RISC 09.a Pipelining Altre tecniche di parallelismo Processori superscalari Caratteristiche dei processori RISC
DettagliSistemi Web per il turismo - lezione 3 -
Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa
DettagliMetodi Software per ottenere ILP
Metodi Software per ottenere ILP Calcolatori Elettronici 2 http://www.dii.unisi.it/~giorgi/didattica/calel2 Scaletta Tecnologie nel compilatore BRANCH PREDICTION A SOFTWARE (nel compilatore) - Gia vista
DettagliInteger Java Virtual Machine (IJVM)
Integer Java Virtual Machine (IJVM) Calcolatori Elettronici II Prof. Antonino Mazzeo mazzeo@unina.it Ing. Luigi Romano Ing. Alessandro Cilardo Ing. Luigi Coppolino lrom@unina.it acilardo@unina.it lcoppoli@unina.it
DettagliESERCIZI DEL CORSO DI INFORMATICA
ESERCIZI DEL CORSO DI INFORMTIC Questa breve raccolta di esercizi vuole mettere in luce alcuni aspetti della prima parte del corso e fornire qualche spunto di riflessione. Il contenuto del materiale seguente
Dettagli