Fondamenti di Informatica B

Documenti analoghi
FONDAMENTI DI INFORMATICA Lezione n. 10

FONDAMENTI DI INFORMATICA Lezione n. 10

Il ciclo di base. La sequenza delle istruzioni. Interruzione. CPU - Memoria

Esercitazione 11. Control-Unit. Data-Path

ESERCITAZIONE Unità centrale di elaborazione Ciclo base di un istruzione Meccanismo di interruzione

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Architettura del Calcolatore

Architettura del Calcolatore

Architettura dell elaboratore

Architettura dell elaboratore

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

Componenti principali

Architettura di von Neumann

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

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

Componenti e connessioni. Capitolo 3

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

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

memoria PSW R1 R2 CPU Struttura logica dell elaboratore unità di controllo ALU unità di ingresso unità organo coordinatore clock di uscita

Fondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o

Memoria centrale (RAM) Registri della CPU. Definizioni. Architettura considerata in CPUSim. Programma in linguaggio macchina

Fondamenti di Informatica B

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

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

Elementi di informatica

Architettura dei calcolatori

ARCHITETTURA DI UN ELABORATORE

Laboratorio di Informatica L-A 1

Elementi di informatica

Elementi di base del calcolatore

Capitolo 5 Elementi architetturali di base

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti

Architettura di un Sistema Informatico

Lezione 15. L elaboratore Elettronico

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ALU e Control Unit. ALU e Control Unit

Processore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)

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

Fondamenti di Informatica B

Macchina di von Neumann/Turing

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Architettura hardware

Architettura di una CPU

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

architettura degli elaboratori Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione

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

Sistemi e reti CPU Concetti di base

A cosa servono i moltiplicatori? Tanti algoritmi prevedono l utilizzo di moltiplicazioni!

Architettura dei computer

Cenni sull architettura del calcolatore

Calcolatore: sottosistemi

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Fondamenti di Informatica A. A / 1 9

Struttura di un elaboratore

Il modello di von Neumann

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini

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

Fondamenti di Informatica B

Architettura dell elaboratore

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

ARCHITETTURA DI UN ELABORATORE

ESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI

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

FONDAMENTI DI INFORMATICA Lezione n. 11

Architettura del calcolatore (Seconda parte)

Corso di Fondamenti di Informatica Elementi di Architettura

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Corso di Calcolatori Elettronici I

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

Strutture dei sistemi di calcolo

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

Lezione 1: L hardware

Tecniche della Programmazione, , Parte1

Architettura degli Elaboratori

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1)

Architettura del computer

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

Sistemi di Elaborazione delle Informazioni

Architettura dei computer

Architettura di un calcolatore: primi cenni introduttivi

Progetto CPU a singolo ciclo

Abilità Informatiche e Telematiche

Il processore - CPU (CENTRAL PROCESSING UNIT)

Architettura hardware

Il processore. Istituzionii di Informatica -- Rossano Gaeta

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

Macchina di Von Neumann

Cognome:, Nome: Matricola:

CPUSim. Laboratorio 30/11/2016

Informatica di base 4 crediti 32 ore!!

X 1, X 2,..., X n e trasferisci il risultato nel registro Z. Lez. 9 Arch. RTL Fondamenti di Informatica B 6

Transcript:

Fondamenti di Informatica B Lezione n. 10 Alberto Broggi Gianni Conte A.A. 2005-2006

Fondamenti di Informatica B CPU-MEMORIA CICLO PRINCIPALE CPU ARCHITETTURA BASE UNITÀ DI ESECUZIONE E UNITÀ DI CONTROLLO Lezione n.10 In questa lezione viene analizzata l'architettura di base di un sistema di elaborazione. Essa è formata da un unità centrale di elaborazione (o CPU Central Processing Unit) e dalla memoria che, nel modello di Von Neuman, immagazzina dati e istruzioni. Sono poi descritte le operazioni elementari svolte dalla CPU e la sua interazione con la memoria. Descriveremo poi le caratteristiche generali di una unità di controllo e le tecniche di realizzazione. Lez. 10 CPU-Memoria Fondamenti di Informatica B 2

Unità di elaborazione Central Processing Unit + Memoria Compito: Eseguire i comandi contenuti nella memoria. Architettura di VonNeuman Architettura Harward CPU Memoria Istruzioni + dati CPU Memoria dati Memoria controlli Lez. 10 CPU-Memoria Fondamenti di Informatica B 3

La Memoria Decodificatore Matrice di memoria Indirizzo Segnali di controllo Dati La memoria è costituita da celle che memorizzano bit di informazione raggruppate in parole (8 bit) caratterizzate da un indirizzo. Sulla singola cella di memoria sono possibili le operazioni di lettura e scrittura. Le linee di dato consentono l'ingresso e l'uscita delle informazioni dalla memoria. Le linee di dato sono bidirezionali mentre le linee di indirizzo consentono di trasmettere l'informazione solo dalla CPU alla memoria. Lez. 10 CPU-Memoria Fondamenti di Informatica B 4

Il ciclo di base Il ciclo base di una qualsiasi istruzione: FETCH: Lettura dell'istruzione in memoria. ESECUZIONE: Lettura dei dati necessari. Svolgimento dell'operazione. La fase di FETCH è eguale per tutte le istruzioni che ovviamente si differenziano nella fase di ESECUZIONE. Al termine della fase di esecuzione viene eseguita la fase di FETCH della istruzione successiva. Lez. 10 CPU-Memoria Fondamenti di Informatica B 5

La sequenza delle istruzioni Ogni istruzione contiene in modo esplicito o implicito l indicazione dell istruzione successiva. Modo esplicito: il codice dell istruzione contiene l indirizzo della cella di memoria dove è contenuta l istruzione da eseguire. Modo implicito: l indirizzo della istruzione successiva è contenuto in un registro interno alla CPU. La sequenza delle istruzioni è definita dal programma. Lez. 10 CPU-Memoria Fondamenti di Informatica B 6

Interruzione La CPU sorveglia gli altri elementi del sistema: Può sospendere la sequenza prevista e svolgere operazioni di maggiore urgenza Al termine ritorna a svolgere la sequenza interrotta INTERRUPT o INTERRUZIONE Casi nei quali questo evento si può verificare: Mancanza della tensione di alimentazione Errori hardware Operazioni di I/O Una interruzione sospende l'esecuzione del flusso principale di istruzioni e forza la CPU a svolgere una nuova sequenza di operazioni associata alla particolare richiesta Lez. 10 CPU-Memoria Fondamenti di Informatica B 7

CPU - Memoria La CPU (componente unico) deve essere realizzata con la migliore tecnologia possibile (anche costosa) La memoria principale (di grande capacità) deve essere realizzata con la tecnologia più conveniente (economicamente) t CPU : tempo richiesto per la più veloce operazione della CPU (0,2-2 ns). t M : intervallo minimo fra due accessi alla memoria (20 ns - 100 ns). Questa differenza di prestazioni negli ultimi anni si è accentuata. Le prestazioni delle CPU continuano ad crescere velocemente mentre il tempo di accesso delle memorie commerciali non è diminuito in modo significativo negli ultimi anni. Lez. 10 CPU-Memoria Fondamenti di Informatica B 8

Registri interni Le operazioni fra registri interni avvengono con tempi dell'ordine di t CPU Ogni istruzione è trasformata in un certo numero di operazioni RTL interne alla CPU Alcune CPU dispongono di centinaia di registri interni nei quali memorizzare dati temporanei Questa tecnica utilizzata nelle architetture RISC Lez. 10 CPU-Memoria Fondamenti di Informatica B 9

CPU - Memoria Altre tecniche architetturali consentono di accedere alla memoria (ad esempio per l'operazione di FETCH) contemporaneamente a fasi di esecuzione che non richiedono accessi alla memoria (PREFETCH) CPU Memoria Coda istruzioni Lez. 10 CPU-Memoria Fondamenti di Informatica B 10

CPU - Memoria Per ridurre i tempi di accesso alla memoria si interpongono tra la memoria principale e la CPU memorie secondarie con prestazioni (tempi di accesso) più elevate. Questa metodologia verrà discussa in dettaglio in seguito. CPU Memoria Memoria cache Lez. 10 CPU-Memoria Fondamenti di Informatica B 11

CPU UNITA LOGICO ARITMETICA m e m or ia DR AR PC AC IR UNITA DI CONTROLLO Segnali di controllo La figura rappresenta lo schema più semplice, a livello RTL, di una CPU di tipo Von Neuman DR: Data Register - Memorizza i dati provenienti e diretti alla memoria AR: Address Register - Memorizza gli indirizzi da comunicare alla memoria ACC: Accumulatore - Immagazzina dati in ingresso e uscita all'alu PC: Program Counter o Contatore di Programma - Memorizza l'indirizzo della istruzione da eseguire IR: Instruction Register - Memorizza il codice dell'istruzione da eseguire ALU: Aritmetic Logic Unit - Esegue le operazioni aritmetico-logiche Lez. 10 CPU-Memoria Fondamenti di Informatica B 12

Fase di Fetch Memoria UNITA LOGICO ARITMETICA DR AC UNITA DI CONTROLLO AR PC IR Segnali di controllo Fase di Fetch comune a tutte le istruzioni: AR PC ; DR M(AR) ; Lettura in memoria dell istruzione IR DR ; Codice di istruzione all unità di controllo PC PC + 1 ; Si prepara il PC per la lettura della ; prossima istruzione Segue la esecuzione dell istruzione Lez. 10 CPU-Memoria Fondamenti di Informatica B 13

Struttura di base ESECUZIONE-CONTROLLO. Una CPU è formata da: Ingresso controlli Unità di controllo Uscita controlli Unità di esecuzione o percorso dati (data path) Unità di controllo (a più livelli): Segnali di controllo Segnali di reazione della sequenza delle istruzioni, della esecuzione delle istruzioni. Ingresso dati Percorso dati Uscita dati Lez. 10 CPU-Memoria Fondamenti di Informatica B 14

Tecniche di implementazione Controllo cablato Circuito sequenziale speciale che realizza la funzione desiderata Meno costoso e più conveniente per sistemi semplici Di difficile progettazione per sistemi complessi Controllo a microprogramma Microistruzioni che contengono direttamente le indicazioni per l'attivazione dei segnali Progettazione concorrente di parte operativa e controllo Progettazione strutturata Semplicità per l aggiornamento dell'hw Lez. 10 CPU-Memoria Fondamenti di Informatica B 15

Controllo cablato GENERAZIONE DI SEQUENZE Da un diagramma di flusso (o un programma,...) che definisce il comportamento della parte operativa si deve generare una sequenza temporale di vettori: { c, c, c } C, 1, C2, K Cn con Ci = 1 2 K m ai tempi: t 1, t 2, t n Metodi di progetto: 1. Generatori di sequenze basati su elementi di ritardo (asincroni) o contatori (sincroni) 2. Macchine a stati finiti (progetto tradizionale di circuiti sequenziali) Lez. 10 CPU-Memoria Fondamenti di Informatica B 16

Unità di controllo CPU Si consideri una semplice CPU con le seguenti caratteristiche: 8 istruzioni a un indirizzo Unità aritmetica che svolge le seguenti funzioni: ADD, COMP, AND LOAD X AC M(X) STORE X M(X) AC ADD X AC AC+M(X) AND X AC AC M(X) JUMP X PC X COMP AC AC RSHIFT Scorr. destra di AC Lez. 10 CPU-Memoria Fondamenti di Informatica B 17

Semplice CPU C3 C4 C5 UNITA LOGICO ARITMETICA AC C0 C1 C2 C12 Me mo DR C6 IR UNITA DI CONTROLLO ria C7 C8 C11 AR PC C9 Segnali di controllo C10 Lez. 10 CPU-Memoria Fondamenti di Informatica B 18

Segnali di controllo c 0 AC AC+DR c 1 AC AC DR c 2 AC AC c 3 DR M(AR) (read) c 4 M(AR) DR (write) c 5 DR AC c 6 AC DR c 7 AR DR(ADDR) c 8 PC DR(ADDR) c 9 PC PC + 1 c 10 AR PC c 11 IR DR(OP) c 12 Scorr. destra di AC Lez. 10 CPU-Memoria Fondamenti di Informatica B 19