Controllo a ciclo singolo
|
|
- Clemente Corsi
- 6 anni fa
- Visualizzazioni
Transcript
1 Controllo a ciclo singolo Il controllo della CPU a singolo ciclo è combinatorio Il datapath è invece un circuito sequenziale i suoi output dipendono anche dal valore dei registri es. Zero, oppure l indirizzo della memoria dati, oppure il valore da immagazzinare in memoria in conseguenza di una store, dipendono dai valori dello stato interno del datapath (ovvero dal contenuto dei registri) Dobbiamo attendere che tutti i circuiti siano stabili, sia quelli del datapath che quelli del controllo, prima di attivare il fronte di salita/discesa del clock Clock in AND con i segnali di controllo di scrittura (registri/memoria) i valori vengono scritti in corrispondenza del fronte di salita/discesa del clock solo se i segnali relativi sono affermati Ciclo di clock determinato sulla base del cammino più lungo che i segnali elettrici devono attraversare es.: l istruzione lw è quella più costosa: mem. istr. - Reg. File (Read) - ALU e Adders - Mem. Dati - Reg. File (Write) i circuiti del controllo agiscono in parallelo alla lettura dei registri
2 Valutazione delle prestazioni Come si descrivono e misurano le prestazioni di un processore? Dovremo considerare il software, e le operazioni richiesta da questo sull hardware istruzioni del programma riferimenti alla memoria operazioni di I/O Misurare oggettivamente le prestazioni è molto difficile A cosa serve studiare le metriche per valutare le prestazioni? Fare buone scelte di progetto, e.g., capire per un programma va male Fare buone scelte di acquisto di nuovo hardware
3 Valutazione delle prestazioni Perché può succedere che un sistema sia migliore di un altro per il programma A, e risulti invece peggiore per il programma B? I fattori che influenzano le prestazioni sono relative all hardware o al software? E meglio installare un nuovo OS, o comprare una nuova macchina? Come può un certo set di istruzioni influenzare le prestazioni di una CPU? Come può l uso di un nuovo compilatore influenzare le prestazioni di una CPU rispetto ad un certo insiemi di programmi?
4 Il problema delle metriche Aereo Posti Autonomia (km) Velocità (km/h) Portata(*) Boeing Boeing BAC/Sud Concorde Douglas DC (*) (Pass. x km/h) Metriche diverse! BAC/Sud Concorde è il più veloce (di quanto rispetto al DC-8?)! Boeing 747 è più capiente (di quanto rispetto al 777?)! Douglas DC-8-50 ha maggiore autonomia (di quanto rispetto al 747?) Nota la colonna Portata:! è una misura che tiene conto sia della Capienza e sia della Velocità! metrica utile usata se non siamo interessati a valutate la velocità di spostamento di un singolo passeggero, ma a valutare quanti passeggeri siamo in grado di spostare contemporaneamente a quella data velocità
5 Prestazione di un calcolatore Tempo di esecuzione (Latenza) Quanto impiega il mio programma ad essere eseguito a sistema scarico? Quanto devo attendere per una query di un database? Throughput (Banda di elaborazione) Quanti programmi possono essere eseguiti assieme su una macchina? Qual è il tempo di esecuzione medio? Quanto lavoro viene completato in un certo tempo?
6 Prestazione di un calcolatore Quali delle due misure (tempo di esecuzione, throughput) viene influenzata: Se compriamo una nuova CPU? Diminuiamo tempo di esecuzione dei job e aumentiamo throughput Se aggiungiamo un altra workstation ad un laboratorio? Aumentiamo il throughput, ma non il tempo di esecuzione Diminuiamo comunque tempo di risposta se ci sono molti job, e questi sono costretti a rimanere in coda riduciamo le attese in coda tempo di risposta = tempo attesa in coda + tempo di esecuzione
7 Tempo di esecuzione Elapsed Time o Response Time (wall clock time) tiene conto di ogni cosa (accessi al disco (I/O), multiprogrammazione, attese nelle code (OS), ecc.) Tempo di CPU vogliamo distinguere rispetto ai tempi spesi per I/O e multiprogrammazione es.: comando UNIX time ( time <prog> ) 90.7s 12.9s 2:39 63% user system elapsed 100 * ( ) / 159 CPU time CPU time time Il nostro primo obiettivo sarà quello di analizzare soltanto il tempo di CPU impiegato per l esecuzione dei programmi utente (user CPU time) ovvero, senza considerare i codici dell O.S., l I/O, o altro Execution time = user CPU time
8 Performance, Execution Time, Speedup Misuriamo il tempo di esecuzione (user CPU time) di un programma su una macchina X: Execution time X Definiamo la Performance (throughput) come: Performance X = 1 / Execution time X Se la macchina X è più veloce di Y a eseguire il programma Speedup = Execution time Y / Execution time X = Performance X / Performance Y = n "X è n volte più veloce di Y
9 Cicli di clock Legame tra tempo di esecuzione e numero di cicli di clock per eseguire un programma CPU time (in sec.) = no. cicli x T Clock period (Periodo) = durata/periodo del ciclo di clock (in sec.) Clock rate (Frequenza) = cicli al secondo (1 Hz. = 1 cycle/sec) Freq = 1 / T T = 1 / Freq Un clock a 200 Mhz. (200 x 10 6 Hz) ha un periodo T di clock uguale a 5 ns. Conoscendo no. di cicli per l esecuzione di un programma e la frequenza del clock: CPU time (in sec.) = no. cicli / Frequenza
10 Migliorare le prestazioni CPU time (in sec.) = no. cicli x T CPU time (in sec.) = no. cicli / Frequenza Per migliorare le prestazioni possiamo: diminuire il no. cicli necessari per eseguire un programma, oppure diminuire il ciclo di clock, oppure aumentare la frequenza di clock
11 Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni su interi Accedere alla memoria costa di più che accedere ai registri Importante: se cambiamo il periodo di clock spesso, come effetto collaterale, cambiano il numero di cicli di clock necessari per eseguire le varie istruzioni
12 Esempio Per un dato programma da eseguire sul computer A conosciamo il tempo di CPU sul computer A: T A = 10 s la frequenza di clock del computer A: F A = 2 GHz Vogliamo costruire un computer B dove il tempo di CPU: T B = 6 s Il progettista può aumentare la frequenza di B, ma questo provoca l incremento dei numero di cicli per l esecuzione del programma (1.2 in più dei cicli necessari sulla macchina A). Di quanto dovremmo aumentare F B per garantire T B = 6 s? T A = # cicli A / F A # cicli A = 10 x 2 x 10 9 = 2 x T B = 1.2 x # cicli A / F B F B = 1.2 x 2 x / 6 = 4 GHz
13 IC, CPI, MIPS numero istruzioni # Cicli di clock = x macchina numero (medio) di cicli di clock per istruzione IC = instruction count = numero di istruzioni macchina del programma CPI = cicli di clock per istruzione = # cicli di clock / IC MIPS = milioni di istruzioni per secondo = IC / (Texe * 10 6 ) A noi interessa il tempo di esecuzione, le altre misure, prese singolarmente, possono portare a conclusioni errate nel valutare le prestazioni di un programma.
14 Esempio Due processori A e B implementano diversamente la stessa ISA Il processore A ha un ciclo di clock di 250 ps Il processore B ha un ciclo di clock di 500 ps Per lo stesso programma compilato Il processore A ha CPI 2.0 Il processore B ha CPI 1.2 Quale processore è più veloce, e di quanto?
15 Esempio Due processori A e B implementano diversamente la stessa ISA, quali delle seguenti quantità non cambia? F, CPI, Texe, IC, MIPS Soluzione: TA = IC x CPIA x (periodo di clock)a = 500 x IC ps TB = IC x CPIB x (periodo di clock)b = 600 x IC ps Speedup TB / TA = 600 / 500 = 1.2
16 Esempio Per una data ISA abbiamo tre classi di istruzioni: Classe A: 1 CPI Classe B: 2 CPI Classe C: 3 CPI Progettando un compilatore, una porzione di codice può essere implementata in due modi: Modo 1: AABCC (IC = 5) Modo 2: AAAABC(IC = 6) Quale dei due modi è più veloce, e di quanto? Qual è il CPI medio per ciascuna sequenza?
17 Esempio Quale dei due modi è più veloce, e di quanto? (# cicli)1 = 2 x x x 3 = 10 (# cicli)2 = 4 x x x 3 = 9 Speedup = 10/9 ~ 1.1 Qual è il CPI medio per ciascun modo? CPI1 = (# cicli)1 / IC1 = 10/5 = 2 CPI2 = (# cicli)2 / IC2 = 9/6 = 1.5
18 Esempio Due compilatori sono testati su un processore a 100 MHz con tre classi di istruzioni: Classe A, B, C: 1, 2, 3 CPI rispettivamente Il compilatore 1 genera un codice che una 5M istruzioni di classe A, 1M istruzioni di classe B, 1M istruzioni di classe C Il compilatore 2genera un codice che una 10M istruzioni di classe A, 1M istruzioni di classe B, 1M istruzioni di classe C Quale compilatore sarà più veloce rispetto al tempo di esecuzione? Quale compilatore sarà più veloce rispetto ai MIPS?
19 Esempio Quale compilatore sarà più veloce rispetto al tempo di esecuzione? (# cicli) 1 = 5M x 1 + 1M x 2 + 1M x 3 = 10M T 1 = (# cicli) 1 / F = 0.1 sec (# cicli) 2 = 10M x 1 + 1M x 2 + 1M x 3 = 15M T 2 = (# cicli) 2 / F = 0.15 sec Speedup = T 2 / T 1 =1.5 Quale compilatore sarà più veloce rispetto ai MIPS? MIPS 1 = IC 1 / T 1 = 7 / 0.1 = 70 MIPS MIPS 2 = IC 2 / T 2 = 12 / 0.15 = 80 MIPS
20 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 sono replicati Bisogna eseguire in parallelo tutti i passi necessari per l esecuzione di qualsiasi istruzione dell ISA I processori moderni hanno un organizzazione interna che permette di eseguire più istruzioni in parallelo (ILP) Organizzazione a pipeline Grazie all ILP diminuiamo il CPI ma aumentiamo la frequenza di accesso alla memoria (per leggere istruzioni e leggere/scrivere dati)
21 Pipeline Le unità funzionali (lavatrice, asciugatrice, stiratrice, armadio) sono usate sequenzialmente per eseguire i vari job tra l esecuzione di due job, ogni unità rimane inattiva per 1,5 ore In modalità pipeline, il job viene suddiviso in stadi, in modo da usare le unità funzionali in parallelo unità funzionali usate in parallelo, ma per eseguire job diversi nella fase iniziale/ finale, non lavorano tutte parallelamente
22 Stadi della pipeline del MIPS Le istruzioni MIPS ristrette (lw, sw, add, or, beq, slt) del nostro processore MIPS sono sempre composte da 5 stadi 1. IF : Instruction fetch (memoria istruzioni) 2. ID : Instruction decode e lettura registri (grazie al formato regolare delle istruzioni) 3. EXE : Esecuzione istruzioni o calcolo indirizzi 4. MEM : Accesso a un operando in memoria (memoria dati) 5. WB : Write back (scrittura del registro risultato, calcolato in EXE o MEM)
23 Stadi della pipeline del MIPS
24 Registri per stadi di pipeline
25 Esempio lw
26 Esempio lw
27 Esempio lw
28 Esempio lw
29 Esempio lw C è un bug!!!
30 Esempio lw
31 Segnali di controllo
32 Segnali di controllo IF ID I segnali di controllo per leggere la memoria istruzioni e per scrivere il PC sono sempre asseriti, quindi non ci sono unità da controllare. A ogni ciclo di clock si verificano sempre le stesse azioni, quindi non ci sono segnali di controllo espliciti. EXE Bisogna propagare i segnali sul registro destinazione della ALU, quale operazione deve eseguire e quale input fornirgli sul secondo ingresso. MEM Bisogna propagare i segnali di lettura/scrittura sulla memoria dati e il segnale di branch. WB Bisogna propagare i segnali di controllo dei dati di input da scrivere sul register file (contenuto e controllo)
33 Segnali di controllo
34 Segnali di controllo
Esempio: aggiungere j
Esempio: add Esempio: load Esempio: beq Esempio: aggiungere j Eccezioni e interruzioni Il progetto del controllo del processore si complica a causa della necessità di considerare, durante l esecuzione
DettagliCicli di clock e istruzioni
Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni
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
DettagliValutazione delle Prestazioni
Valutazione delle Prestazioni Misure per le Prestazioni T durata del ciclo di clock [secondi] F numero cicli di clock al secondo [hertz] F 1 / T T 1 / F Exe_Time X tempo di esecuzione (CPU) di un programma
DettagliEsercitazione su Instruction Level Parallelism
Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a
DettagliValutazione delle prestazioni
Valutazione delle prestazioni Salvatore Orlando Arch. Elab. - S. Orlando 1 Valutazione delle prestazioni Studieremo le modalità per misurare, descrivere e sintetizzare le prestazioni di un sistema hardware/software
DettagliRichiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
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:
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
di Cassino e del Lazio Meridionale Corso di Misura delle prestazioni Anno Accademico Francesco Tortorella Misura delle prestazioni E fondamentale definire una metrica corretta per misurare le prestazioni
DettagliCorso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino
Corso di Alfabetizzazione Informatica / La CPU CPU (Central Processing Unit) Funzione: eseguire i programmi immagazzinati in memoria principale prelevando le istruzioni (e i relativi), interpretandole
DettagliValutazione delle prestazioni Salvatore Orlando
Valutazione delle prestazioni Salvatore Orlando Arch. Elab. - S. Orlando 1 Valutazione delle prestazioni L approccio RISC ha semplificato l ISA, ma ha anche portato a sviluppo di tecniche di ottimizzazione
DettagliImplementazione semplificata
Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento
DettagliArchitettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
DettagliCapitolo 5 Elementi architetturali di base
Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo
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
DettagliCorso di Informatica
CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica
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
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
DettagliElementi base per la realizzazione dell unità di calcolo
Elementi base per la realizzazione dell unità di calcolo Memoria istruzioni elemento di stato dove le istruzioni vengono memorizzate e recuperate tramite un indirizzo. ind. istruzione Memoria istruzioni
DettagliCome funzionano i computer
Fluency Come funzionano i computer Capitolo 6 Cosa sanno fare Esecuzione deterministica istruzioni per elaborare dati Devono ricevere una serie di istruzioni da seguire Cosa non sanno fare Non hanno immaginazione
DettagliConcetti di base del PIPELINING
Concetti di base del PIPELINING L architettura MIPS pipelined I problemi del pipelining Alcune soluzioni di base ai problemi del pipelining Versioni più sofisticate di pipeline Osservazioni conclusive.
DettagliEsame di INFORMATICA Lezione 4
Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite
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
DettagliLecture 2: Prime Istruzioni
[http://www.di.univaq.it/muccini/labarch] Modulo di Laboratorio di Architettura degli Elaboratori Corso di Architettura degli Elaboratori con Laboratorio Docente: H. Muccini Lecture 2: Prime Istruzioni
DettagliConcetti di base del PIPELINING. L architettura MIPS pipelined. L architettura MIPS pipelined
Concetti di base del PIPELINING L architettura MIPS pipelined I problemi del pipelining Alcune soluzioni di base ai problemi del pipelining Versioni più sofisticate di pipeline Osservazioni conclusive.
DettagliProgetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando
Progetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando Arch. Elab. - S. Orlando 1 Eccezioni e interruzioni Il progetto del controllo del processore si complica
DettagliArchitettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione
Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina
DettagliInfluenza dell' I/O sulle prestazioni (globali) di un sistema
Influenza dell' I/O sulle prestazioni (globali) di un sistema Tempo totale per l'esecuzione di un programma = tempo di CPU + tempo di I/O Supponiamo di avere un programma che viene eseguito in 100 secondi
DettagliLEZIONE 2 Il processore e la memoria centrale
Informatica per Igienisti Dentali LEZIONE 2 Il processore e la memoria centrale 1 Il linguaggio macchina Il processore è in grado di riconoscere (e quindi di eseguire) solo programmi scritti in un proprio
DettagliStruttura hw del computer
Informatica per laurea triennale facoltà di medicina LEZIONE 3 Il processore, la memoria e l esecuzione dei programmi 1 Struttura hw del computer Il nucleo di un computer è costituito da 3 principali componenti:
DettagliArchitettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf
Architettura di un calcolatore e ciclo macchina Appunti per la classe 3 Dinf Il Sistema di Elaborazione Computer Hardware Software 2 Hardware Struttura fisica del calcolatore formata dai circuiti elettronici
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
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
DettagliFasi (MIPS) Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer)
Fasi (MIPS) Fasi senza pipeline: IF (istruction fetch): IR Mem[PC] ; NPC PC + 4 ; Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer) Lezione Architettura degli
DettagliIl 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
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
DettagliLinguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche
3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni
DettagliBlocchi di più parole
Blocchi di più parole Per trarre vantaggio dalla località spaziale non conviene avere blocchi di una sola parola ma blocchi di più parole che occupano nella memoria principale posizioni vicine. Esempio:
DettagliComputer e Programmazione
Computer e Programmazione Che cos è un Computer Un computer è un apparecchio elettronico progettato per svolgere delle funzioni. Come tutte le macchine, non ha nessuna capacità decisionale o discrezionale,
DettagliL ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O
L ARCHITETTURA DEI CALCOLATORI Il processore La memoria centrale La memoria di massa Le periferiche di I/O Caratteristiche dell architettura 2 Flessibilità adatta a svolgere diverse tipologie di compiti
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
DettagliValutazione delle prestazioni di calcolo
Architettura degli Elaboratori e delle Reti Lezione 32 Valutazione delle prestazioni di calcolo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliElementi di base del calcolatore
Elementi di base del calcolatore Registri: dispositivi elettronici capaci di memorizzare insiemi di bit (8, 16, 32, 64, ) Clock: segnale di sincronizzazione per tutto il sistema si misura in cicli/secondo
DettagliComponenti di un processore
Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria
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
DettagliIl linguaggio del calcolatore: linguaggio macchina e linguaggio assembly
Il linguaggio del calcolatore: linguaggio macchina e linguaggio assembly Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Richiamo sull
DettagliIl Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003
Il Ciclo Fetch-Decode-Execute C Nyssen/Aberdeen College 2003 Linguaggio Assembler Op code (Mnemonico) Operando #assembly code program 0000 LDA-24 #loads 0001 ADD-25 #adds 0002 HLT #stops #end of program
DettagliModi di esecuzione user / kernel
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliSottosistemi ed Architetture Memorie
Sottosistemi ed Architetture Memorie CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II La memoria centrale Memoria centrale: array di
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
DettagliPrestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.
Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell
DettagliLinguaggi di alto livello, compilatori e interpreti
Linguaggi di alto livello, compilatori e interpreti Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Il punto della situazione STATO DATI
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)
DettagliSistemi di numerazione
SOMMARIO Sistemi di numerazione...2 Sistema decimale (o a base 10)...2 Sistema binario...2 Operazioni sui numeri binari...3 Espressioni logiche...4 Definizione...4 Prodotto Logico : AND...4 Somma Logica
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
DettagliLez. 4 L hardware. Prof. Pasquale De Michele Gruppo 2
Lez. 4 L hardware 1 Dott. Pasquale De Michele Dipartimento di Matematica e Applicazioni Università di Napoli Federico II Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli pasquale.demichele@unina.it
DettagliLaboratorio di Architettura degli Elaboratori
Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni
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
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 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
DettagliLezione4: MIPS e Istruzioni (1 Parte)
Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi mnappi@unisa.it http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA
DettagliArchitettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)
Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) La macchina di Von Neumann Le periferiche Software (tutto ciò che non e tangibile) Il sistema operativo I programmi applicativi
DettagliPorte Input/Output (I/O Connectors)
Porte Input/Output (I/O Connectors) Le porte I/O permettono al computer di comunicare (scambiare dati) con le periferiche Interfacce di entrata / uscita Porta seriale RS-232, invio dei dati attraverso
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
DettagliIl processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler.
Il processore N.12 Struttura di base di un microprocessore Il microprocessore (detto comunemente CPU, per Central Processing Unit) è preposto al coordinamento di tutte le componenti che formano l'architettura
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
DettagliCapitolo 7: Input/Output. Es.1 - Bus sincrono. Es.1 - Risposta (a)
Esercitazione di Calcolatori Elettronici Ing. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Capitolo 7: Input/Output Capitolo 7 Input/Output Esercizi sul BUS: 1. Bus sincrono 2. Arbitraggio
DettagliModulo: Elementi di Informatica
ARCHITETTURA DI VON NEUMANN Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Fisica medica e statistica Modulo: Elementi di Informatica A.A. 2009/10 Lezione
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:
DettagliArchitettura di un elaboratore
Architettura di un elaboratore Ciclo fondamentale della macchina di Von Neumann Uno sguardo ai PC Oltre Von Neumann? Corso di Informatica 2007 3 - Architettura di un Elaboratore 1 La macchina di Von Neumann
DettagliSistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi
Sistemi Operativi A.M. Fanelli Architettura dei Sistemi a. a. 2008-09 1 Livello di Sistema Operativo Livello di Linguaggi Applicativi Livello di Linguaggio Assembly Livello di Sistema Operativo Livello
DettagliArchitettura di una CPU
Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1
DettagliArchitettura di un processore basato su registri generali.
Architettura di un processore basato su registri generali. M. Esposito (mesposit@unina.it) 26 febbraio 2007 In Fig. 1 è riportato uno schema di principio che raffigura l architettura di un processore basato
DettagliIndice lezione: Pagina 2
Abbiamo visto: sistema monolitico (I + E + O) dividiamo I e O da E, e affidiamo loro una CPU replichiamo gli I e gli O per parallelizzare singolarmente gli I e O Pagina 1 Indice lezione: Parallelizzazione
DettagliArchitettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)
INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Computer elaboratore di informazione riceve informazione in ingresso (input) elabora questa informazione restituisce informazione ottenuta elaborando
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
DettagliSistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliLezione 1: L hardware
Architettura del calcolatore Lezione 1: L hardware Architettura Componenti e funzionamento Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle
DettagliCalcolatori Elettronici
Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di von Neumann rchitettura dei calcolatori: definizioni Evoluzione dell architettura rchitettura della
DettagliCorso di Linguaggi di Programmazione + Laboratorio
Corso di inguaggi di Programmazione + aboratorio Capitolo 1 - Introduzione Si ringrazia il Dott. Marco de Gemmis per la collaborazione nella predisposizione del materiale didattico Apprendimento di un
DettagliLa Valutazione delle Prestazioni
La Valutazione delle Prestazioni Maurizio Palesi Maurizio Palesi rend ecnologico: Microprocessori 00000000 0000000 000000 IBM PPC60 R0000 Pentium R4400 i80486 Alpha 2264: 5 milion Pentium Pro: 5.5 million
DettagliAXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
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
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
DettagliInformatica e Bioinformatica
Informatica e Bioinformatica Alessandro Sperduti 23 Marzo 2016 Alessandro Sperduti Informatica e Bioinformatica Informazione sul Docente di Informatica Docente: prof. Alessandro Sperduti E-mail: sperduti@math.unipd.it
DettagliCapitolo 6 Le infrastrutture SoftWare
Capitolo 6 Le infrastrutture SoftWare Funzioni del sistema operativo Rendere utilizzabili le risorse fisiche presenti nel sistema informatico: garantire la correttezza e la precisione nell elaborazione
DettagliLA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
DettagliCorso di Architettura (Prof. Scarano) 09/04/2002
Corso di Architettura (Prof. Scarano) 09/0/2002 Un quadro della situazione Lezione 15 Il Set di Istruzioni (1) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno
DettagliIl computer P R O F. L O R E N Z O P A R I S I
Il computer P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore più potente di quel periodo era l ENIAC, in grado di svolgere
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
DettagliIl Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire efficientemente l'elaboratore e le sue periferiche,
DettagliCircuiti sequenziali e latch
Circuiti sequenziali e latch Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano A.A. 23-24 /27 Sommario Circuiti sequenziali Latch asincroni
DettagliLaboratorio di Architettura lezione 5. Massimo Marchiori W3C/MIT/UNIVE
Laboratorio di Architettura lezione 5 Massimo Marchiori W3C/MIT/UNIVE Da Alto a Basso livello: compilazione Come si passa da un linguaggio di alto livello a uno di basso livello? Cioe a dire, come lavora
DettagliLa memoria principale
La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce
DettagliLezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly
Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliI bistabili ed il register file
I bistabili ed il register file Prof. Alberto Borghese ipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/32 Sommario I problemi dei latch trasparenti sincroni
DettagliSoluzione Esercizio 1
Esercizio 1 Si consideri una notazione binaria in virgola mobile a 16 bit, detta ALFA, di cui (nell ordine da sinistra a destra) si usa 1 bit per il segno (0=positivo), 6 bit per l esponente, che è rappresentato
DettagliInformatica. 80 ore divise in 4 UFC. Docente: Michela Bacchin. Contatti: Tramite Ermes Studenti
Informatica 80 ore divise in 4 UFC Docente: Michela Bacchin Contatti: michela.bacchin.corsi@gmail.com Tramite Ermes Studenti Programma UFC 12: Strumenti per il trattamento dei documenti testuali UFC 13:
DettagliIL MODELLO DI ESECUTORE
IL MODELLO DI ESECUTORE Elementi di Informatica CdL Ingegneria Meccanica (M-Z) Università degli Studi di Napoli Federico II 16 ottobre 2013 Ing. Giovanni Ponti ENEA C.R. Portici giovanni.ponti@enea.it
DettagliTrend di sviluppo delle pipeline
Trend di sviluppo delle pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@.unimi.it Università degli Studi di Milano Patterson 4.10, 4.11 143 Sommario Superpipeline
Dettagli