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

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

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

Lezione 1: L hardware

Il processore. Istituzionii di Informatica -- Rossano Gaeta

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

Architettura dei computer

Sistemi di numerazione

Capitolo 5 Elementi architetturali di base

Componenti di un processore

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

Architettura dei calcolatori

Architettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Corso di Informatica

Architettura del Calcolatore

Elementi di base del calcolatore

La memoria principale

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Lezione 3: Architettura del calcolatore

Esame di INFORMATICA Lezione 4

LEZIONE 2 Il processore e la memoria centrale

Informatica: Lez. 1. Andrea Payaro. (European Logistics Association)

Struttura hw del computer

Sottosistemi ed Architetture Memorie

LA GESTIONE DELLA I/O

Il linguaggio del calcolatore: linguaggio macchina e linguaggio assembly

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.

Architettura di un processore basato su registri generali.

Modulo: Elementi di Informatica

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

Architettura del calcolatore

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

L Architettura di un Calcolatore

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

CPU. Maurizio Palesi

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

Richiami sull architettura del processore MIPS a 32 bit

Struttura del calcolatore

Ingegneria Gestionale della logistica e produzione Prof. A. Palomba - Elementi di Informatica (J-Z) Componenti

Architettura del Calcolatore. Danilo Ardagna Politecnico di Milano

Secondo l architettura di Von Neumann il bus rappresenta il punto di interconnessione di tutti i componenti del calcolatore.

Architettura dei calcolatori I parte Introduzione, CPU

Come funzionano i computer

Corso di Calcolatori Elettronici I A.A Il processore Lezione 18

La macchina di Von Neumann

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

Informatica e Bioinformatica

Architettura dei calcolatori e Software di sistema

Computer e Programmazione

Corso di Informatica Prof. Giovanni Giuffrida

Elementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Architettura di una CPU

Capitolo 6 Le infrastrutture HardWare

C. P. U. MEMORIA CENTRALE

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler.

Laboratorio di Architettura degli Elaboratori

Informatica di Base. Ancora su numeri. La struttura dei sistemi informatici.

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

(1) (2) (3) (4) 11 nessuno/a (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

Architettura di un calcolatore: introduzione

CODIFICA DI CARATTERI

Lezione4: MIPS e Istruzioni (1 Parte)

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H

DEFINIZIONE. particolare l'unità di elaborazione centrale è una tipologia di

LA STRUTTURA DEL COMPUTER. Enrico Terrone A. S: 2014/2015

Macchina di Von Neumann: Non distingueva fra RAM e ROM Non aveva un bus ma collegamenti punto-punto

L architettura di riferimento

Memoria Secondaria o di Massa

LA MEMORIA NEL CALCOLATORE

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Corso di Architettura (Prof. Scarano) 09/04/2002

Architettura di un elaboratore

1.4a: Hardware (Processore)

Capitolo 6 Le infrastrutture SoftWare

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

A cura di: Giulia Bonacina e Fabiana Motteran Prof: Claudio Cancelli Informatica - 3^C_Liceo_Tecnologico A.S

Architettura dei Calcolatori

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Caratteristiche di un PC

NOZIONI BASE DEL PROCESSORE (CPU)

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica

Struttura del calcolatore

Docente : Carla BIASCA, Loris RUGGERI

Anatomia e fisiologia del computer: l architettura del calcolatore

Architettura dei calcolatori

Informatica. 80 ore divise in 4 UFC. Docente: Michela Bacchin. Contatti: Tramite Ermes Studenti

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Lecture 2: Prime Istruzioni

Architettura hardware

Porte Input/Output (I/O Connectors)

Calcolo numerico e programmazione Architettura dei calcolatori

o studiare l architettura del calcolatore significa:

Architettura del calcolatore

Corso di Sistemi di Elaborazione delle informazioni

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Il Sistema Operativo. Informatica Sistema Operativo 1

Introduzione. Un calcolatore digitale è costituito da un sistema interconnesso dei seguenti dispositivi:

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

Programmazione modulare

Transcript:

Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione dei componenti del livello ogni componente è caratterizzato dalla funzione che deve svolgere.

Funzioni Le funzioni svolte da un calcolatore sono classificabili in 4 tipologie: elaborazione dati memorizzazione dati trasferimento dati controllo

Proprietà Alcune proprietà flessibilità nel calcolo (general-purpose) modularità della struttura componentistica scalabile e standard semplicità di installazione larga disponibilità di SW a basso costo

Architettura di riferimeto Architettura di Von Neumann sottosistema di interfaccia sottosistema di elaborazione sottosistema di memorizzazione canale (bus) di connessione

Sottosistema di interfaccia Permette di far interagire il calcolatore con il mondo esterno. dispositivi di ingresso/uscita (unità periferiche) gestiti mediante interfacce che controllano il trasferimento dei dati Schermo, tastiera, mouse, memoria di massa,...

Sottosistema di elaborazione il cuore (cervello!) del calcolatore è la CPU (Central Processing Unit). Gestisce le funzioni di controllo e coordinamento elaborazione dei dati Fisicamente è rappresentato dal microprocessore

Sottosistema di memorizzazione Per la memorizzazione dei dati è presente un unità chiamata memoria. Può essere vista come una serie di celle adiacenti, ognuna delle quali è identificata mediante un indirizzo (memory address).

Canale di connessione La connessione dei sottosistemi avviene mediante una linea per il trasferimento dati chiamata bus. Problema: il collegamento contemporaneo di tutte le unità può essere difficilmente gestibile. Soluzione: tecnologia master-slave la gestione dell intero sistema di comunicazione affidata a un master (la CPU) il quale gestisce l accesso al bus le unità periferiche rivestono il ruolo di slave, non possono accedere al bus autonomamente si evitano possibili collisioni fra dati

Pregi e difetti del collegamento a BUS semplicità estendibilità standardizzabilità lentezza limitata capacità sovraccarico della CPU

Il BUS È suddiviso funzionalmente in 3 componenti: bus dati => trasferimento dati CPU <=> memoria CPU <=> interfacce di ingresso/uscita bus indirizzi => trasferimento degli indirizzi di memoria in cui la CPU va a leggere e scrivere bus di controllo =>trasferimento di informazione di controllo per coordinare l intero sistema gestione della politica master-slave direzione dello scambio (lettura/scrittura)

Esecuzione di un programma un calcolatore basato sull architettura di Von Neumann esegue un programma sulla base dei seguenti principi: dati e programmi sono memorizzati in una memoria unica dati e programmi sono indirizzati in base alla loro posizione, indipendentemente dalla loro natura le istruzioni vengono eseguite in modo sequenziale

Il linguaggio macchina il linguaggio per cui la CPU si comporta da esecutore è il linguaggio macchina (o linguaggio assembly). È un linguaggio a basso livello numero di operazioni ridotto numero di operandi ridotto non esiste il concetto di tipo di dato L utilizzo di tale linguaggio implica un ottima conoscenza della struttura fisica del calcolatore ogni CPU è caratterizzata dal suo linguaggio macchina (set di istruzioni)

Istruzioni I programmi sono codificati mediante un linguaggio di basso livello chiamato linguaggio macchina. Anche le istruzioni del linguaggio macchina sono codificate mediante un codice binario. assegnare un codice univoco ad ogni singola istruzione (opcode) oltre all opcode è necessario codificare gli eventuali riferimenti agli operandi necessari all esecuzione dell istruzione. il numero di operandi dipende dal tipo di istruzione. (ES: l istruzione ADD (somma) ha due operandi, l istruzione HALT ha 0 operandi).

il ciclo fetchdecode-execute Nell esecuzione di un programma, la CPU opera ciclicamente nel seguente modo: acquisizione dalla memoria di un istruzione del programma (fase di fetch) identificazione dell istruzione fra quelle che compongono l insieme delle istruzioni (fase di decode) esecuzione dell istruzione (fase di execute)

Struttura di una CPU Una CPU è costituita da 3 sottosistemi principali l unità aritmetico-logica (ALU), la cui funzione è di effettuare operazioni aritmetiche (somme, sottrazioni,...) e logiche (AND, OR,...). i registri: celle di memoria interne alla CPU, utilizzate per memorizzare gli operandi delle operazioni aritmetiche e informazioni di controllo l unità di controllo (CU), che ha funzione di coordinamento

Alcuni registri Tra i vari tipi di CPU, il numero e il tipo di registri è variabile. Sono però sempre presenti i seguenti: PC (Program Counter) contiene l indirizzo di memoria della prossima istruzione da eseguire IR (Instruction Register) contiene una copia dell istruzione da eseguire MAR (Memory Address Register) contiene l indirizzo di memoria dove scrivere o leggere un dato MDR (Memory Data Register) contiene una copia del dato da trascrivere o estratto dalla memoria. PSW (Process Status Word) contiene informazioni inerenti allo status del sistema a seguito dell esecuzione di un istruzione

Ciclo F-D-E nel dettaglio FETCH La CU fornisce alla memoria l indirizzo (contenuto in PC) della contenente l istruzione da eseguire, la richiesta viene eseguita mediante la scrittura di tale indirizzo nel registro MAR e l attivazione di un messaggio di controllo LEGGI sul BUS. La memoria seleziona la cella contenente l istruzione e la invia al registro MDR. La CU copia dal MDR al IR l istruzione corrente.

Ciclo F-D-E nel dettaglio DECODE La CU incrementa il PC in modo che punti alla prossima istruzione da eseguire. La CU esamina l istruzione in IR e determina l operazione da svolgere

Ciclo F-D-E nel dettaglio EXECUTE Le unità interessate all esecuzione dell istruzione vengono opportunamente comandate. Si provvede a prelevare eventuali operandi dalla memoria (fetch degli operandi) e a trasferire il risultato in un registro o in memoria

Coordinamento delle attività il ciclo F-D-E richiede che le varie unità operino in modo coordinato anche dal punto di vista della temporizzazione degli eventi. Si introduce un orologio (CLOCK) che fornisce una cadenza temporale per la sincronia delle singole attività La frequenza del clock (numero di attività elementari nell unità di tempo) è un parametro per valutare la velocità di una CPU. Le CPU attuali hanno una frequenza di CLOCK dell ordine del GHz (1000000 di operazioni al secondo).

Prestazioni di un sistema Parametri valutabili tempo di risposta o di latenza (cioè il tempo che trascorre dall inizio alla fine di un compito) throughput (ammontare del lavoro svolto in un dato tempo)

Prestazioni di un sistema Si può misurare il tempo complessivo necessario al completamento di un compito (elapsed time), che comprende l accesso al disco, alla memoria, attività di I/O, tempo di CPU,... è influenzato dagli altri processi attivi, in particolare dal sovraccarico apportato dal sistema operativo Tempo effettivo di elaborazione (tempo di CPU), non comprende il tempo di attesa dovuto alle operazioni di I/O e all esecuzione di altri processi.

Tempo di CPU t CPU = n CK * T CK t CPU : tempo di CPU n CK : numero di cicli di CLOCK necessari al completamento del processo T CK : periodo di CLOCK oppure t CPU = n CK / f CK t CPU : tempo di CPU n CK : numero di cicli di CLOCK necessari al completamento del processo f CK : frequenza di CLOCK

Tempo di CPU Consideriamo n I numero di istruzioni che vengono eseguite CPI = n CK / n I CPI: numero medio di cicli di CLOCK per istruzione Quindi, t CPU = CPI * n I * T CK Oppure, t CPU = (CPI * n I ) / f CK

Tempo di CPU t CPU = (CPI * n I ) / f CK Il tempo di CPU è influenzato da 1. frequenza di CLOCK 2. numero medio di cicli di CLOCK per istruzione 3. numero di istruzioni

CISC vs RISC Due filosofie di progettazione dei processori CISC (complex instruction set computer) RISC (reduced instruction set computer) Tipo di CPU CISC RISC CPI alto basso n I basso alto f CK media alta C-RISC soluzione intermedia!

Altri indicatori Il tempo di CPU è generalmente il parametro più importante nella valutazione delle prestazioni di un sistema informatico Ci sono comunque altri indicatori MIPS (Mega Instructions per Second) MFLOPS (Mega Floating Point Operations per Second)