Architettura dei calcolatori

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Architettura dei calcolatori"

Transcript

1 Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna

2 Architettura dei calcolatori 2

3 Cos'è un computer? Architettura dei calcolatori 3

4 Cos'è un computer? E' un dispositivo in grado di Elaborare dati Memorizzare dati Trasferire dati da e verso l'esterno Eseguire operazioni di controllo e coordinamento tra le parti di cui è composto Ambiente Esterno I/O Elaborazione Controllo Memoria Architettura dei calcolatori 4

5 Architettura di Von Neumann Dati e programmi sono rappresentati allo stesso modo (da sequenze di bit) e contenuti nella stessa memoria János Lajos Margittai Neumann, , nato in Ungheria e naturalizzato americano col nome di John Von Neumann Architettura dei calcolatori 5

6 Struttura di un calcolatore: Architettura di Von Neumann Processore (CPU) Memoria Sottosistema di interfaccia (I/O) Bus di sistema Esegue le istruzioni elementari richieste dai programmi Elaborazione + Controllo Mantiene Dati e Programmi Memorizzazione Permette di comunicare dati e programmi alla macchina e di ottenere i risultati (tastiera, scheda audio, stampante, schermo, mouse...) Trasferimento dati da/verso l'esterno Architettura dei calcolatori 6

7 Architettura a Bus Semplicità Una sola linea di connessione cui è possibile collegare più dispositivi, anziché un nuovo collegamento per ogni coppia di dispositivi che devono interagire tra loro Estensibilità Nuovi dispositivi possono essere aggiunti in modo semplice Standardizzazione E' possibile definire normative che consentono a dispositivi di produttori diversi di interagire correttamente Limitata capacità Al crescere del numero dei dispositivi, il bus diventa un fattore limitante (collo di bottiglia) delle prestazioni del sistema Architettura dei calcolatori 7

8 Architettura di Von Neumann Processore (CPU) Memoria Sottosistema di interfaccia (I/O) Bus di sistema Architettura dei calcolatori 8

9 CPU Bus Dati Indirizzi Controllo R1 R2 ALU Memoria Rn PC IR PSW Controllo Architettura dei calcolatori 9

10 Componenti della CPU Un certo numero N di registri di uso generale R 1...R N Di solito, ma non necessariamente, un registro contiene 32 bit = 1 parola PC (Program Counter) Indica l'indirizzo di memoria che contiene la prossima istruzione da eseguire IR (Instruction Register) Contiene il codice numerico che rappresenta l'istruzione che deve essere eseguita PSW (Program Status Word) Informazioni sullo stato del programma (es: se l'ultima operazione aritmetica eseguita ha causato overflow) Architettura dei calcolatori 10

11 Ciclo Fetch-Decode-Execute Fetch Preleva dalla memoria l'istruzione da eseguire; l'istruzione viene letta dall'indirizzo di memoria che si trova in PC; il contenuto viene posto in IR Decode Esamina l'istruzione memorizzata in IR per decidere quali operazioni richiede Execute Esegue l'istruzione memorizzata in IR, incluso il recupero dalla memoria degli eventuali parametri necessari ad eseguirla, e deposito del risultato. Aggiorna il PC per la prossima istruzione. Architettura dei calcolatori 11

12 Tipi di istruzioni Istruzioni Aritmetico-Logiche Esempio: Somma due valori contenuti in due registri; salva il risultato in un terzo registro Istruzioni di controllo del flusso di esecuzione Esempio: Salta ad eseguire l'istruzione il cui codice è contenuto nella cella di memoria all'indirizzo X Istruzioni di letture/scrittura di memoria Esempio: Copia il valore contenuto nella cella di memoria all'indirizzo X all'interno del registro Ry Istruzioni di Input/Output Esempio: Invia il contenuto del registro Rx al dispositivo di I/O numero y Architettura dei calcolatori 12

13 Formato di una istruzione Le istruzioni sono rappresentate da sequenze di bit In alcuni processori ogni istruzione è codificata con 4 byte = 32 bit = 1 parola In altri (es., Intel x86) si usano codifiche con un numero variabile di byte Se le istruzioni sono codificate con 32 bit, ovviamente l'ir deve essere ampio esattamente 32 bit All'interno dei 32 bit, occorre indicare: Il tipo di istruzione da eseguire (somma, prodotto, salto, confronto, copia da memoria...) Gli eventuali parametri dell'istruzione (quali registri sono coinvolti, quali locazioni di memoria sono coinvolte, ecc.) Architettura dei calcolatori 13

14 Esempio Una ipotetica istruzione di somma ADD Ri, Rj, Rk Somma i valori contenuti nei registri Ri e Rj; poni il risultato nel registro Rk Supponiamo di avere 256 possibili registri Una possibile codifica dell'istruzione è la seguente: bit 8 bit 8 bit Codice istruzione i j k Architettura dei calcolatori 14

15 Esempio Esempio: 1 parola = 4 byte 1 byte 1 byte 1 byte 1 byte Istruzione= ADD Primo Addendo: Registro numero 28 Secondo Addendo: Registro numero 2 Risultato va in Registro numero 128 Architettura dei calcolatori 15

16 Esempio 32 bit = 1 parola Indirizzo Contenuto R Memoria R ALU R PC IR Controllo PSW Architettura dei calcolatori 16

17 Fetch 32 bit = 1 parola Indirizzo Contenuto R Memoria R ALU R PC IR Controllo PSW Architettura dei calcolatori 17

18 32 bit = 1 parola Fetch Indirizzo Contenuto R Memoria R28 R128 PC IR PSW ALU Controllo Architettura dei calcolatori 18

19 32 bit = 1 parola Decode Indirizzo Contenuto R Memoria R28 R128 PC IR PSW ALU ADD Controllo Architettura dei calcolatori 19

20 32 bit = 1 parola Execute Indirizzo Contenuto R Memoria R28 R128 PC IR PSW ALU ADD Controllo Architettura dei calcolatori 20

21 32 bit = 1 parola Fetch Indirizzo Contenuto R Memoria R28 R128 PC IR PSW ALU Controllo Architettura dei calcolatori 21

22 Esempio Ipotetica istruzione di trasferimento registro memoria STORE Ri, m Copia il contenuto del registro Ri nella cella di memoria di indirizzo m Una possibile codifica bit 16 bit Codice istruzione i m Architettura dei calcolatori 22

23 Domanda bit 16 bit Codice istruzione i m Considerando l'istruzione STORE Ri,m rappresentata come sopra, quanto grande può essere la memoria accedibile dall'istruzione? Risposta L'indirizzo m della destinazione è espresso con 16 bit L'intero più grande rappresentabile con 16 bit è = Quindi la memoria massima indirizzabile con l'istruzione STORE è di bytes (numerati da 0 a 65535) Architettura dei calcolatori 23

24 Memoria Processore (CPU) Memoria Sottosistema di interfaccia Bus di sistema Architettura dei calcolatori 24

25 RAM La RAM è una sequenza di byte Ogni byte è identificato dalla sua posizione nella sequenza (indirizzo di memoria) byte 0, byte 1, byte 2,... Alcune CPU sono in grado di accedere ai singoli byte; altre accedono a parole (= gruppi di 4 byte) Indirizzo bit Parola Architettura dei calcolatori 25

26 Unità di misura 1 Kilo Byte (1KB) 2 10 = byte 1 Mega Byte (1MB) 2 20 = byte 1 Giga Byte (1GB) 2 30 = byte 1 Tera Byte (1TB) 2 40 = byte Architettura dei calcolatori 26

27 Funzionamento della RAM Linee di selezione 16 celle di memoria da 8 bit ciascuna Bus indirizzi Decodificatore linea 0 0 linea 1 0 linea 2 0 linea 3 0 linea 4 0 linea 5 0 linea 6 1 linea 7 0 linea 8 0 linea 9 0 linea 10 0 linea 11 0 linea 12 0 linea 13 0 linea 14 0 linea Byte selezionato Bus di controllo Leggi/Scrivi Bus Dati Architettura dei calcolatori 27

28 Vari tipi di memoria Accesso molto veloce Costo elevato Limitata capacità Accesso veloce Costo contenuto Ampia capacità Accesso lento/molto lento Costo basso Vastissima capacità Hard Disk CD/ DVD CPU Cache RAM I/O I/O Bus di sistema Architettura dei calcolatori 28

29 Domanda La CPU di un computer ha il registro PC di 20 bit e una memoria RAM di un Mbyte (=2 20 Byte). E' possibile aumentare la sua memoria RAM destinata all'esecuzione dei programmi senza cambiare la CPU? Architettura dei calcolatori 29

30 Nei calcolatori moderni... CPU L1 cache L2 cache Memoria Sottosistema di interfaccia (I/O) Bus di sistema Vengono utilizzati diversi livelli di memoria cache (molto veloce) per mantenere i dati più frequentemente usati vicini alla CPU Riduce gli accessi alla memoria tramite il bus di sistema Architettura dei calcolatori 30

31 Nei calcolatori moderni... L1 cache L2 cache Memoria Sottosistema di interfaccia (I/O) Bus di sistema CPU multi-core: all'interno del processore sono presenti più unità di calcolo indipendenti (di fatto, più CPU) che possono operare contemporaneamente, in modo indipendente l'una dall'altra Architettura dei calcolatori 31

32 CPU reali Intel core i7 AMD Istanbul Architettura dei calcolatori 32

33 I tempi in gioco 1 CPU cycle 0.3 ns 1 s Level 1 cache access 0.9 ns 3 s Main memory access 120 ns 6 min Solid-state disk I/O μs 2-6 days Rotational disk I/O 1-10 ms 1-12 months Internet: SF to NYC 40 ms 4 years Internet: SF to UK 81 ms 8 years Internet: SF to Australia 183 ms 19 years Physical system reboot 5 m 32 millenia Source: Architettura dei calcolatori 33

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer? Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? E' un dispositivo in grado di Elaborare

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

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

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

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

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

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 di un elaboratore. Il modello di von Neumann

Architettura di un elaboratore. Il modello di von Neumann Architettura di un elaboratore Il modello di von Neumann 4(5) componenti fondamentali unita di elaborazione: CPU memoria centrale: RAM periferiche (memoria di massa) bus di sistema bus di sistema CPU RAM

Dettagli

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:

Dettagli

6: Macchina di Von Neumann

6: Macchina di Von Neumann Data: 8-10-2017 Pag: 6 6: Macchina di Von Neumann 1. Lo Schema di Von Neumann John Von Neumann, un ricercatore che in USA realizzò uno dei primi computer l'eniac: faceva 300 moltiplicazioni al secondo

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

Architettura dei calcolatori

Architettura dei calcolatori Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura

Dettagli

Componenti di un processore

Componenti 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

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

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

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

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

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

Dettagli

Il Processore: l unità di controllo

Il Processore: l unità di controllo Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di

Dettagli

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Cos è un Calcolatore? Un computer (calcolatore) è una macchina

Dettagli

Concetti Introduttivi

Concetti Introduttivi Concetti Introduttivi Architettura del Computer http://www.dia.uniroma3.it/~roselli/ [email protected] Credits Materiale a cura del Prof. Franco Milicchio Introduzione In questo corso ci occuperemo

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA 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

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore

Dettagli

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

Dettagli

Struttura di un elaboratore

Struttura di un elaboratore Struttura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,

Dettagli

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN Università degli Studi di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA A.A. 2008/09 Lezione 4 ARCHITETTURA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono

Dettagli

Esame di INFORMATICA Lezione 4

Esame 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

Dettagli

Il modello di Von Neumann

Il modello di Von Neumann Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2016/2017 1 Programma del corso Informatica di

Dettagli

Architettura dei Calcolatori Elettronici

Architettura dei Calcolatori Elettronici Architettura dei Calcolatori Elettronici Prof. Orazio Mirabella L architettura del Calcolatore: esame delle sue caratteristiche Fondamentali Capacità di eseguire sequenze di istruzioni memorizzate Calcolatore

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Lezione 1: L hardware

Lezione 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

Dettagli

Architettura dei calcolatori I parte Introduzione, CPU

Architettura dei calcolatori I parte Introduzione, CPU Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica ed Elementi di Statistica 3 c.f.u. Anno Accademico 2010/2011 Docente: ing. Salvatore Sorce Architettura dei calcolatori

Dettagli

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi)

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi) LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 2 LA MACCHINA DI VON NEUMANN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

LA STRUTTURA DEL COMPUTER

LA STRUTTURA DEL COMPUTER LA STRUTTURA DEL COMPUTER Enrico Terrone A. S: 2011/2012 Modello di Tanenbaum In questa parte ci occuperemo di capire come è strutturato e come funziona l hardware, e quindi in che modo esso esegue i programmi

Dettagli

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

Dettagli

Il Processore. Informatica di Base -- R.Gaeta 27

Il Processore. Informatica di Base -- R.Gaeta 27 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