CALCOLATORI ELETTRONICI

Slides:



Advertisements
Presentazioni simili
La struttura fisica e logica di un elaboratore
Advertisements

Classe III A A.s – 2011 Sistemi di Elaborazione e Trasmissione dell’Informazione 4 ore settimanali (2 laboratorio) Docenti Prof. Alberto Ferrari.
Dalla scrittura all’esecuzione
Elaboratore e Sistemi Operativo
Architettura di un sistema informatico Hardware
Il Linguaggio Macchina
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di.
Il livello Microarchitetturale
Il Linguaggio Macchina
Com’è fatto un elaboratore?
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Lezione 4 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 3 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
ARCHITETTURA DEL CALCOLATORE
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Il calcolatore Stefano Cagnoni e Monica Mordonini Dipartimento.
La macchina di von Neumann
La macchina di von Neumann
L’Architettura del Sistema di Elaborazione
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Architettura dell’elaboratore
Il Modello logico funzionale dell’elaboratore
ARCHITETTURA DEGLI ELABORATORI
ELETTRONICA DIGITALE (II Parte)
Appunti di Informatica
L' ARCHITETTURA DI VON NEUMANN
Architetture dei Calcolatori (Lettere j-z ) Il Processore
Architettura del calcolatore
ARCHITETTURA DI UN ELABORATORE
Sistemi di elaborazione e trasmissione delle informazioni
Unità centrale di processo
Architettura di una CPU
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione.
Architettura del calcolatore
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Calcolatori Elettronici Il Processore
Luglio 2004Generalità Hardware1 Luglio Generalità Hardware2 MACCHINA DI VON NEUMAN (1947) BUS Processore Elaborazione Controllo Memoria Ingresso.
Sistemi Elettronici Programmabili: Riepilogo 1 Sistemi digitali : Riepilogo Sistemi Elettronici Programmabili.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Calcolatori Elettronici Il Processore (2)
Sistemi Elettronici Programmabili (SELPR)
Corsi di Laurea in Biotecnologie
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata Instruction Set Architecture (2) Istruzioni I-type Indirizzamento.
FONDAMENTI DI INFORMATICA
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Architettura di un calcolatore e linguaggio macchina.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Il calcolatore Stefano Cagnoni e Monica Mordonini
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Informatica Lezione 4 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
STRUTTURA DELL’ELABORATORE
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Il sistema di elaborazione Marco D. Santambrogio – Ver. aggiornata al 15 Maggio.
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata (3) Istruzioni J-type Istruzioni di salto Istruzioni.
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Il modello di Von Neumann
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Architettura degli elaboratori
Transcript della presentazione:

CALCOLATORI ELETTRONICI Giovanni Danese Tel. 0382 985364 e-mail: gianni.danese@unipv.it Corsi di Laurea in Ingegneria Biomedica, in Ingegneria Elettronica e Informatica orario delle lezioni: Lunedì 16-18 aula 8, Mercoledì 9-11 aula 4 orario di ricevimento: Martedì 16.45-17.45, Giovedì 16.45-17.45

Materiale didattico consigliato Testo Consigliato: David A. Patterson, John L. Hennessy, Struttura e progetto dei calcolatori Zanichelli, 2014, Bologna, IV edizione. (David A. Patterson, John L. Hennessy, “Computer Organization and Design” Elsevier – Morgan Kaufmann, 2014, V edition) David A. Patterson, John L. Hennessy, Struttura, organizzazione e progetto dei calcolatori Jackson libri, 1999, Milano, II edizione. Documentazione varia è reperibile al sito: mclab.unipv.it/index.php/corsi

Argomenti del corso: Prerequisiti 1. Architettura dei calcolatori 2. Architettura di una CPU 3. Linguaggio assemblativo 4. L’aritmetica dei calcolatori 5. L’ambiente di sviluppo dei progetti Prerequisiti Devono essere noti gli argomenti trattati nei corsi Fondamenti di Informatica e Fondamenti di Informatica (laboratorio)

Architettura di un computer I/O system Instr. Set Proc. Compiler Operating System Application Digital Design Circuit Design Firmware Datapath & Control Layout Instruction Set Diversi livelli di astrazione

Rappresentazione delle istruzioni Linguaggio ad alto livello (HLL) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; Compilatore lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) Linguaggio Assembly Assemblatore 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 Linguaggio Macchina Interpretazione macchina Segnali di controllo °

Struttura del software (1) I linguaggi HLL permettono progettazione in linguaggio ~ a quello naturale una maggior concisione rispetto al linguaggio macchina indipendenza dal calcolatore Riutilizzo routine frequentemente impiegate  librerie di subroutine Un programma separato che supervisiona l’utilizzo della macchina da parte dei programmi utente  sistema operativo Software di sistema= insieme di programmi che forniscono servizi (Sistema Operativo, compilatori, assemblatori) Software applicativo=programmi utente o mirati all’utente (editors, spreadsheet)

Struttura del software (2) Sw applicativo SOFTWARE HW Sw sistema Software appl. Software sistema Word Compilatori Sist. Op. Assembl. Memoria File I/O virtuale System drivers

Architettura del Set di Istruzioni Un importante livello di astrazione interfaccia fra hardware e software di basso livello standardizza il formato delle istruzioni e i pattern di bit a livello di linguaggio macchina vantaggi: differenti implementazioni della stessa architettura svantaggi: talora impossibilità di avvalersi di innovazioni tecnologiche Architetture moderne di set di istruzioni Digital Alpha (v1, v3) 1992-97 HP PA-RISC (v1.1, v2.0) 1986-96 Sun Sparc (v8, v9) 1987-95 SGI MIPS (MIPS I, II, III, IV, V) 1986-96 Intel (8086,80286,80386, 1978-96 80486, Pentium, MMX, ...)

Di cosa ci occuperemo Le istruzioni: il linguaggio dei calcolatori (Cap. 2 Zanich, 3 Jacks) L’aritmetica dei calcolatori (Cap. 3 Zanichelli, Cap. 4 Jackson) Assemblatori, linker ed il simulatore SPIM (App. B Zanichelli e App. A Jackson) Fondamenti sulla progettazione di reti logiche (App. C CD Zanichelli e Jackson)

Architettura della macchina di Von Neumann Unità di ingresso Unità di uscita Memoria ALU Unità di controllo Risultati Programmi e dati CPU Unità centrale

Unità Centrale CO N T R O L D AD A D T R E S S B B U B U S U S S CPU ALU CPU Unità di controllo MAR Memoria ROM MBR MAR Memoria RAM MBR

Microprocessori e Bus 210 Byte = 1024 byte = 1 KByte I microprocessori sono dispositivi elettronici che implementano in un unico circuito integrato le funzioni di una intera CPU. I microprocessori attuali hanno bus dati a 8, 16, 32, 64 bit. Il bus dati (data bus) esprime la capacità di elaborazione del processore (quanti bit possono essere elaborati in parallelo) Il bus indirizzi (address bus) esprime la capacità di memorizzazione del processore (2m celle di memoria, se m è il numero dei bit del bus) La capacità di indirizzamento indica il numero di celle diverse cui si può accedere: 210 Byte = 1024 byte = 1 KByte 220 Byte = 1048576 byte = 1 Mbyte 230 Byte = 1073741824 byte = 1 GByte

Un Esempio Variazione nella precisione di misura di 1 Kg. in un sistema di pesatura basato su microprocessori con diversa dimensione del bus dati Numero di bit bus dati 4 8 16 Dati rappresentabili 24=16 28= 256 216= 65536 Precisione relativa 6.25% ~3.9 ‰ ~0.015‰ Precisione max. 62.5 gr ~3.9 gr ~0.015 gr

Osservazioni I microprocessori a 8 bit di dato hanno tipicamente bus indirizzi a 16 bit con capacità di indirizzamento di 64 KB I microprocessori a 16 bit di dato hanno tipicamente bus indirizzi a 20-24 bit con capacità di indirizzamento di 1-16 MB I microprocessori a 64 bit di dato hanno bus indirizzi a 64 bit con capacità di indirizzamento fino a circa 1019 byte I microprocessori Single Chip riuniscono in un unico circuito integrato più di uno dei blocchi costituenti un microcalcolatore (eventualmente tutti).

Architettura di una CPU BUS DATI ESTERNO BUS DATI INTERNO ACC C O N T R. D E C O D. I N S T. R E G. SP PC R e g R e g N F L A G …. ALU BUS INDIRIZZI INTERNO BUS IND. ESTERNO

Ciclo di esecuzione di un’istruzione FETCH (prelevamento dell’istruzione) DECODIFICA ESECUZIONE La memoria (ROM e RAM) contiene il programma e i dati sui quali opera la CPU. Il Program Counter (PC) contiene l’indirizzo della cella di memoria con la prossima istruzione da eseguire. FORMATO DELLE ISTRUZIONI Codice Operativo Operando 1 Operando 2 Campo che caratterizza le varie istruzioni Gli operandi possono essere 0, 1, 2

Sequenza di operazioni elementari per l’esecuzione di ogni singola istruzione FETCH: vengono letti i campi che costituiscono l’istruzione: 1) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR I passi 1, 2, 3 permettono di caricare in IR (instruction register) il codice operativo (OP Code) dell’istruzione corrente. Passi analoghi permettono di caricare in opportuni registri della CPU gli operandi presenti nell’istruzione. In tal caso, nel passo 3 la destinazione del dato proveniente dalla memoria non è più IR, ma opportuni registri. DECODE: viene identificata l’istruzione corrente sulla base dell’OP Code EXECUTE: è diversa a seconda del tipo di istruzione. In pratica consiste nell’inviare comandi e dati alle unità interessate. P.S. MAR= Memory Address Register; MBR: Memory Buffer Register Notazione: (X) Y significa: “Il contenuto del registro X viene trasferito nel registro Y

Formato delle istruzioni Le istruzioni sono codificate da stringhe di bit. Una volta caricata nell’IR, un’istruzione deve essere decodificata ed eseguita. A tal scopo l’unità di controllo deve conoscere: codice operativo sorgente: dati su cui operare destinatario: dove porre il risultato e, se sorgente e destinazione sono in memoria, la modalità di indirizzamento Codice Operativo Sorgente Destinazione Mod. indirizzamento Esempio 1: Somma tra il contenuto del registro R2 e il contenuto dell’accumulatore. Il risultato va nell’accumulatore FORMATO codice operativo FETCH come in precedenza ESECUZIONE (R2)+(ACC)ACC

Esempio di esecuzione di istruzioni complete Esempio 2: somma tra il contenuto della cella di memoria il cui indirizzo è specificato nell’istruzione ed il contenuto dell’accumulatore; il risultato va nell’accumulatore FORMATO: codice operativo+operando FETCH: 1) (PC)MAR 4) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 5) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR 6) (MBR) Rn EXECUTE: 1) (Rn) MAR 3) (MBR) Rn 2) ((MAR)) MBR 4) (Rn)+(ACC) ACC

Esempio di esecuzione di istruzioni complete Esempio 3: saltare all’istruzione che è memorizzata nella cella il cui indirizzo è specificato all’interno dell’istruzione corrente: FORMATO: codice operativo+operando FETCH: 1) (PC)MAR 4) (PC)MAR 2) ((MAR)) MBR; (PC)+1 PC 5) ((MAR)) MBR; (PC)+1 PC 3) (MBR) IR 6) (MBR) Rn EXECUTE: 1) (Rn) PC