Corso di Informatica Prof. Giovanni Giuffrida

Documenti analoghi
Corso di Informatica Prof. Giovanni Giuffrida

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

Esame di INFORMATICA Lezione 4

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale

Architettura hardware

Il 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

Architettura dei computer

Il computer P R O F. L O R E N Z O P A R I S I

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Il modello di Von Neumann

La memoria principale

Modulo: Elementi di Informatica

I dispositivi di input/output: il mouse

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti

Lezione 1. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata.

Architettura dei computer

Architettura hardware

Struttura dell elaboratore elettronico

RIASSUNTO La codifica delle informazioni

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

Lo scanner. Informatica di Base A e B -- Rossano Gaeta 82

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

HARDWARE. Hardware. Vista di insieme

UNIVERSITA DI CATANIA. Facoltà di Medicina e Chirurgia. Corso di Laurea Magistrale in Medicina e Chirurgia. Informatica

I dispositivi di input/output

Memoria Secondaria o di Massa

Architettura dei calcolatori

Architettura di un elaboratore

La memoria secondaria

Modulo 1: Le I.C.T. UD 1.4b: Anatomia del Computer

Architettura del Calcolatore

Architettura hardware

Cenni sull architettura del calcolatore

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

Architettura di von Neumann

Lez. 4 L hardware. Prof. Pasquale De Michele Gruppo 2

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

Corso di Informatica I Prof. Giovanni Giuffrida

Il bus. Bus di sistema: insieme di collegamenti (solitamente in rame) che connette tutti i componenti di un architettura

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche

La memoria secondaria

Informatica. Informazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto.

Architettura dei calcolatori

Informatica giuridica

Elementi di Informatica Chiara Epifanio

o studiare l architettura del calcolatore significa:

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI "PROGRAMMAZIONE I"

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

INFORMATICA. L informatica comprende:

Architettura dei Calcolatori Elettronici

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

Dal sistema operativo all' hardware

Corso di Informatica

La memoria secondaria

Lezione 15. L elaboratore Elettronico

INFORMATICA E PC IL PERSONAL COMPUTER

Architettura hardware

ARCHITETTURA DI UN ELABORATORE

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

Dipartimento di Giurisprudenza Prof. Michele Perilli Conoscenze Informatiche

Abilità Informatiche e Telematiche

SISTEMI INFORMATIVI AZIENDALI

Abilità informatiche. Tipologie di dispositivo

Elementi di informatica

Architettura di Von Neumann

Memoria Centrale. Memoria Centrale. Memoria Centrale. Interazione CPU-memoria centrale 16/04/2008. Indirizzamento

Architettura del calcolatore. L Hardware. A.A Informatica 56

INFORMATICA E PC IL PERSONAL COMPUTER

aumenta il tempo di accesso; aumenta la capacità di memorizzazione; ma diminuisce il costo per bit.

Laboratorio di Informatica L-A 1

Elementi di informatica

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Fondamenti di Informatica Architettura del Calcolatore Alessandra Volpato

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

Personal Computer: introduzione

Il computer. Architettura

Fondamenti: Informatica, Computer, Hardware e Software

Criteri di caratterizzazione di una memoria

Architettura di un elaboratore

Sistemi di Elaborazione delle Informazioni

Storia del Personal Computer

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi

Programma del corso. Architettura del calcolatore. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Elementi di Programmazione

Caratteristiche di un PC

Settimana n.2. Obiettivi Esecuzione di un programma. Tutorial su CodeBlocks e ambiente di sviluppo.

19/11/2013 HARDWARE INTRODUZIONE: COSA E COME COMPRIAMO?

Laboratorio di Informatica I

Informatica e Bioinformatica anno 2013/2014

ARCHITETTURA DI UN ELABORATORE. Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Transcript:

Corso di Informatica Prof. Giovanni Giuffrida Modulo 2 Architettura degli elaboratori Componenti hardware e loro schema funzionale

Storia Riferimento Capitolo 1 del libro Primi calcolatori basati su sistemi meccanici (meta del secolo scorso) L invenzione del transistor ed introduzione della microelettronica ha accelerato lo sviluppo Legge di Moore (1965): «Le prestazioni dei processori, e il numero di transistor ad esso relativo, raddoppiano ogni 18 mesi.»

Esecuzione Scopo fondamentale e` quello di eseguire istruzioni Per eseguirle ha bisogno di memoria Deve comunicare con l esterno Il tutto dev essere coordinato Esempio: 7+6-4 =? Simile all esecuzione degli umani Microprocessori attuali fanno una cosa per volta Moooooolto velocemente Sembrano paralleli (ma non lo sono)

Funzionamento

Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: Processore fornisce la capacità di elaborazione delle informazioni, Memoria (centrale e di massa), Dispositivi di input/output, che comunicano attraverso un canale detto BUS costituito da un insieme di linee elettriche digitali Controllo dell esecuzione Macchina di von Neumann.

Schema a blocchi di un elaboratore Memoria DATI STATO COMANDI Unità di output Unità di input Processore Le componenti comunicano tra di loro usando il BUS

Programma ed istruzioni Programma: specifica univoca di una serie di operazioni che l elaboratore deve svolgere In informatica un algoritmo viene implementato tramite un programma E' costituito da una sequenza ordinata di istruzioni macchina Scritto in codice macchina Linguaggi di programmazione ad alto livello vengono alla fine convertiti in linguaggio macchina per essere eseguiti Deve risiedere in memoria principale per essere eseguito dal processore Il processore esegue in ordine una istruzione per volta

Le istruzioni ed il codice macchina Istruzione macchina: Specifica un istruzione elementare che il processore è in grado di svolgere. È composta da: Codice operazione (indica cosa fare), Uno o due operandi (su cosa operare), Destinazione del risultato (dove memorizzarlo). Codice macchina: Codice binario usato per specificare le istruzioni macchina al processore. Diverso per ogni processore (non esiste codice universale standard).

(Micro-)Processore Composto da blocchi con funzionalità diverse: CPU (Central Processing Unit) FPU (Floating Point Unit) Cache Interfacce varie Se integrato su un unico chip prende il nome di microprocessore Cache Interf CPU FPU Cache

Central Processing Unit (CPU) Svolge tutte le operazioni di: elaborazione numerica controllo e coordinamento di tutte le attività Si suddivide in: Unità logico-aritmetica (ALU) Unità di controllo (CU) Registri

Componenti della CPU Unità di controllo Bus interno REGISTRI Program Counter (PC) Program Status Word (PSW) Registro Istruzioni (IR) Unità aritmetico logica Registri Generali (8 o 16) Registro Indirizzi Memoria (MAR) Registro Dati Memoria (MDR) Registro di Controllo (CR)

Arithmetic Logic Unit (ALU) Svolge tutti i calcoli logici ed aritmetici (complementazione, somma intera, confronto, etc) Opera direttamente sui registri generali E costituita da circuiti elettronici in grado di eseguire le operazioni tra due numeri binari contenuti in due registri oppure di eseguire il confronto tra due numeri

Registri Memoria locale usata per memorizzare: dati acquisiti dalla memoria centrale o dalla unità di input risultati delle operazioni eseguite dall ALU Numero limitato: tipicamente da 8 a 256 Unità di memoria estremamente veloci Le dimensioni di un registro sono una caratteristica fondamentale del processore: 16, 32, 64 bit

Registri (cont.) I registri contengono dati ed informazioni che vengono immediatamente elaborate Esistono due tipi di registri: i registri speciali utilizzati dalla CU per scopi particolari i registri di uso generale (registri aritmetici).

Il clock Ogni elaboratore contiene un circuito di temporizzazione (clock) che genera un riferimento temporale comune per tutti gli elementi del sistema. T = periodo di clock f = frequenza di clock ( = 1/T ), si misura in Hertz Frequenze tipiche delle ultime generazioni: T f > 1000 MHz ( = 1GHz), T < 10-9 secondi t

Tempistica delle istruzioni Un ciclo-macchina è il tempo richiesto per svolgere un operazione elementare È un multiplo del periodo del clock. Un istruzione macchina è ottenuta da una sequenza di operazioni elementari Dunque, l esecuzione di un istruzione macchina richiede un numero intero di cicli macchina, variabile a seconda del tipo di istruzione

Velocità del microprocessore La velocità di elaborazione di un processore dipende dalla frequenza del clock interno I processori attuali hanno in genere valori di frequenza di clock di oltre 3Ghz I progressi tecnologici spingono l integrazione di componenti elettronici e la maggiore velocità di clock

Evoluzione dei Microprocessori

Memoria Viene utilizzata per conservare informazioni Si suddivide in: Memoria di lavoro (memoria principale) Memoria temporanea in grado di conservare dinamicamente dati e programmi che il processore sta utilizzando Memoria magazzino (memoria di massa) Memoria permanente in grado di conservare dati e programmi

Organizzazione della memoria principale La memoria è organizzata funzionalmente in celle indipendenti. Ad ogni cella è associato un indirizzo cioè, un numero progressivo a partire da 0 1936,27 12.360 Y Load 2,5 M O R A 0 1 2 3 4 5 6 7 8

Schema funzionale (generico) Programma e dati sono caricati in memoria La CU preleva la prima istruzione del programma dalla memoria L istruzione viene decodificata ed eseguita La CU passa all'istruzione successiva

Schema funzionale Memoria CPU ALU BUS REGISTRI IR Bus interno PC CU

Architettura degli elaboratori ( parte II ) Gerarchia di memorie, Periferiche, Valutazione delle prestazioni

Random Access Memory (RAM) È una memoria volatile basata su circuiti digitali Il tempo di accesso è il tempo necessario per leggere o scrivere l informazione in una cella di memoria Accesso casuale: ogni cella ha lo stesso tempo di accesso delle altre (indipendentemente dall indirizzo)

Caratteristiche della RAM La dimensione di una RAM varia a seconda del tipo di computer e viene in genere espressa in MB o GB Le dimensioni tipiche della RAM di un PC oggi vanno da 512 MB a 4 GB La RAM di un Server varia in genere da 2 GB a 64 GB Veloce. Il tempo di accesso è dell'ordine di poche decine di nanosecondi (10-9 sec) Costosa I prezzi variano continuamente e ovviamente in genere sono in discesa

Read Only Memory (ROM) È una memoria di sola lettura che viene scritta direttamente dal produttore su circuiti appositi Viene utilizzata per contenere le informazioni di inizializzazione usate ogni volta che si accende l'elaboratore Utilizzata anche negli elettrodomestici

Inizializzazione/Bootstrap Cosa succede all accensione di un calcolatore? Nel PC viene forzato l indirizzo della cella di memoria ove inizia il primo programma da eseguire: Bootstrap Durante il bootstrap il PC esegue tutti i passi di base per l accensione Il programma di Bootstrap normalmente risiede in ROM Non è modificabile

Memoria Cache Per migliorare le prestazioni di un computer si inserisce una memoria intermedia tra CPU e memoria centrale detta Cache: (In genere) è interna al processore Più veloce della RAM: T Cache ~ 1/5 T RAM Di gran lunga più costosa della RAM, anche più di 100 volte

Memoria Cache (cont.) I dati e le istruzioni più frequentemente richiesti vengono memorizzati nella cache, in modo da diminuire il tempo di accesso ed aumentare quindi le prestazioni medie Dimensioni tipiche: da 256 KB ad 1 MB di cache. Esistono vari algoritmi per selezionare i dati e le istruzioni da inserire nella cache In genere basati sul concetto di frequenza di accesso al dato Algoritmi piu sofisticati cercano di prevedere cosa servira in futuro

Memoria Cache (cont.) Senza cache: Tempo di accesso = tempo di accesso alla memoria CPU Memoria RAM Con cache: Se il dato/istruzione è in cache, esso viene prelevato in un tempo minore CPU Memoria RAM cache

Memoria secondaria La memoria secondaria (o di massa) è utilizzata per memorizzare in modo permanente le informazioni Essa è di grande capacità ed è principalmente costituita da dischi magnetici, CD-ROM, DVD, nastri, Quando si vuole eseguire un programma, esso viene sempre caricato dalla memoria di massa alla memoria principale.

Memoria secondaria (cont.) Due tecnologie possibili: Magnetica Dischi magnetici (Floppy-disk, Hard-disk, Disk-pack) Accesso casuale Operazioni di Lettura/Scrittura Nastri magnetici Accesso sequenziale (legato alla posizione del dato) Operazioni di Lettura/Scrittura Ottica CD-ROM, DVD Accesso casuale Tipicamente solo scrittura

Organizzazione fisica dei dati nei dischi I dischi sono suddivisi in tracce concentriche e settori Ogni settore è una fetta di disco I settori suddividono ogni traccia in porzioni di circonferenza dette blocchi La suddivisione di un disco in tracce e settori viene indicata con il termine formattazione

Organizzazione fisica dei dati nei dischi (cont.) Per effettuare un operazione di lettura (scrittura) su un blocco è necessario che la testina raggiunga il blocco desiderato. Single-sided. Double-sided. Il tempo di accesso alle informazioni (access time) dipende da tre fattori fondamentali.

Seek time Organizzazione fisica dei dati nei dischi (cont.) La testina si sposta in senso radiale fino a raggiungere la traccia desiderata Latency time Il settore desiderato passa sotto la testina. La velocità di rotazione è espressa in rpm (round per minute) Transfer time Tempo di lettura vero e proprio

Dischi magnetici Hanno una grande capacità di memorizzazione Un disco fisso oggi ha una capacità tra 120 e 500 GB Sono molto più lenti delle memorie primarie. Tempo di accesso nell ordine dei milli-secondi, 10-3 sec. Sono molto economici

Dischi ottici Tecnologia laser La superfice del disco è formata da tanti specchietti che riflettono il laser Il disco gira ad alta velocità ed la luce laser viene riflessa quando uno specchietto passa sotto Un disco CD-ROM (memoria ottica) ha la capacità di circa 640 MB. Con i DVD la capacità è aumentata parecchio: circa 4 GB Nei DVD la tecnica usata è quella del multistrato Inoltre, per pollice quadrato, è possibile immagazzinare molti più dati grazie alla maggior precisione del fascio laser Oggi i blu-ray raggiungono I 40GB in uno spazio minore rispetto ai DVD

Nastri magnetici Tecnologia vecchia: Sono stati molto utilizzati nei primi calcolatori Oggi vengono soprattutto utilizzati come unità di backup, data la loro grande capacità di memorizzazione ed economicità Accesso sequenziale Per accedere ad una certa posizione bisogna avvolgere il nastro fino a quella posizione Inutilizzabile per utilizzi di memoria normale

Gerarchia di memorie registri velocità costo cache centrale dischi capacità nastri

Dispositivi di Input/Output I dispositivi di I/O, detti anche periferiche, permettono di realizzare l interazione uomo/macchina La loro funzione principale è quella di consentire l ingresso e l uscita delle informazioni elaborate Il controllo è eseguito da un software di gestione, detto driver, che ne gestisce le funzionalità

Dispositivi di I/O (cont.) Tastiera Video Mouse Schermo sensibile (Touch Screen) Stampanti Scanner Altoparlanti Etc.

Schermi video CRT (tubo a raggi catodici), utilizza la tecnologia simile a quella usata nei primi televisori LCD (schermo a cristalli liquidi, al plasma, led). Pollici: unità di misura del monitor (calcolata sulla diagonale dello schermo). Equivale a 2,54cm. Pixel: Il monitor può essere pensato come una griglia composta da migliaia di quadratini detti pixel. Maggiore è il numero di pixel più definita è l immagine nel video. Risoluzione del monitor: Si esprime in pixel e indica il numero di punti in orizzontale e in verticale sullo schermo (es. 640x480).

Classi di elaboratori Personal Computer: Computer che possono essere usati da un utente alla volta con capacità di elaborazione e memorizzazione autonoma Portatili Laptop: computer portatili con peso inferiore ai 4 kg. Molto costosi rispetto alle performance offerte Notebook: computer dalle dimensioni ridotte ma con potenza di calcolo buona. Più costosi dei PC. Palmari e PDA (Personal Digital Assistant) Computer di dimensioni ridotte dai 10-18cm peso 300-400gr, prestazioni ridotte rispetto ai portatili ma molto comodi. Micro e Minicomputer: Computer di media-alta potenza che possono gestire fino ad un centinaio di utenti che lavorano contemporaneamente, collegati attraverso i terminali. Workstations: Terminali dei minicomputer. Mainframes: Computer di grandi dimensioni molto costosi a cui sono collegati simultaneamente molti utenti (anche migliaia). Supercalcolatori (NASA, ) Elaboratori paralleli, dotati di più processori anche distribuiti

La comunicazione tra le componenti Le componenti hardware comunicano seguendo un «Protocollo» Protocollo: Un insieme di «regole» e «linguaggio» per capirsi Es: Chiavetta USB appena inserita Bluetooth: Protocollo wireless

Prestazioni di un elaboratore Valutazione molto difficile perchè dipende pesantemente dal: programma eseguito, tipo di dati, architettura dell elaboratore (istruzioni macchina, cache,...). Soluzioni impiegate: MIPS, MFLOPS, Benchmark.

Prestazioni di un elaboratore (cont.) MIPS - Millions of Instructions Per Second Istruzione: un operazione in codice macchina. Poco indicativo. MFLOPS -Millions of FLoating Operations Per Second Operazione: operazione numerica su reali. Benchmark Tempo richiesto per eseguire una suite di programmi applicativi con calcoli reali/interi. Viene restituito un indice (valore numerico) delle prestazioni.

Prestazioni di un elaboratore (cont.) In pratica: Un PC moderno è in grado di eseguire circa 1000 milioni di operazioni reali in un secondo (1000 MFLOPS)! Il computer più potente ha superato la barriera dei TeraFLOPS (10 12 FLOPS = 1000 miliardi di FLOPS)!

Fine Architettura degli Elaboratori