Lezione 10. Lezione 10. Interruzioni. Interruzioni. Sottosistema di I/O. Sottosistema di I/O. Materiale di riferimento. Sommario

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lezione 10. Lezione 10. Interruzioni. Interruzioni. Sottosistema di I/O. Sottosistema di I/O. Materiale di riferimento. Sommario"

Transcript

1 Lezione 10 Sommario Sottosistema di I/O I/O mappato in memoria e isolato Gestione con polling o interruzioni Interruzioni vettorizzate e non Interruzioni con priorità DMA Lezione 10 Materiale di riferimento 1. A. Clements, "The principles of computer hardware", Oxford, 2000, cap. 8, pagg G. Bucci, "Architetture degli elaboratori elettronici", McGraw-Hill, 2001, cap. 4, pp J. B. Peatman, "Design with Microcontrollers", McGraw - Hill, 1988, cap. 3, pp Simone Buso - Microcontrollori e DSP - Lezione 10 1 Simone Buso - Microcontrollori e DSP - Lezione 10 2 Interruzioni In ogni sistema a microprocessore si possono sempre individuare alcuni elementi costitutivi fondamentali, che sono: 1. unità aritmetico logica (ALU) 2. unità di controllo 3. memoria 4. periferiche di input-output (I/O) La gestione del sottosistema di I/O può essere operata con diverse modalità. La più tipica, nei mc e DSP per controllo real-time, è quella che si avvale di un sistema di interruzioni. Simone Buso - Microcontrollori e DSP - Lezione 10 3 Interruzioni In alcuni casi è preferibile adottare una gestione delle periferiche controllata da un opportuno programma. Questa tecnica (detta di polling ) è però meno efficiente rispetto al controllo tramite interruzioni. Infine, alcuni DSP e mc più evoluti, mettono a disposizione un processore di I/O dedicato, denominato DMAC ( Controller). Questo permette la gestione del sottosistema di I/O con il minimo intervento della CPU. Simone Buso - Microcontrollori e DSP - Lezione 10 4 CPU Sottosistema di I/O Bus Memoria Interfaccia Interfaccia Periferica di I/O Periferica di I/O Bus dati Bus indirizzi DREG SREG CREG Interfaccia Organizzazione di un sistema di I/O. Le diverse periferiche sono interfacciate con il bus attraverso un opportuno circuito. Simone Buso - Microcontrollori e DSP - Lezione 10 5 Sottosistema di I/O Il circuito di interfaccia svolge funzioni di adattamento logico e, se necessario, elettrico tra le periferiche e la CPU. Ciascuna periferica svolge le sue funzioni in modo asincrono rispetto alla CPU. L interfaccia deve quindi fornire diversi registri detti anche porte di I/O allo scopo di: 1. ospitare i dati scambiati con la CPU; 2. permettere la configurazione della periferica; 3. tenere traccia dello stato della periferica. Simone Buso - Microcontrollori e DSP - Lezione 10 6

2 Sottosistema di I/O Spesso i registri di controllo CREG e di stato SREG sono in realtà costituiti da pochi bit e quindi non sempre sono separati. Anche i registri dati DREG hanno talvolta una dimensione diversa da quella della parola della CPU (ad esempio in un convertitore A/D). I registri devono poter essere letti e scritti. Si hanno due possibili organizzazioni: 1. ingresso/uscita mappato in memoria; 2. ingresso/uscita isolato. I/O mappato in memoria L organizzazione con ingresso/uscita mappato in memoria (memory mapped I/O) consiste nel trattare i registri delle periferiche come normali locazioni di memoria, senza ricorso a istruzioni dedicate. Questa tecnica è comunemente utilizzata nei mc e nei DSP. La sua realizzazione comporta semplicemente la connessione delle periferiche ad alcune linee del bus degli indirizzi che, attraverso un opportuno circuito di decodifica, selezionano le diverse unità. Simone Buso - Microcontrollori e DSP - Lezione 10 7 Simone Buso - Microcontrollori e DSP - Lezione 10 8 I/O isolato L organizzazione con ingresso/uscita isolato sfrutta invece istruzioni apposite per la gestione delle periferiche. L esecuzione di queste istruzioni opera sul bus in modo analogo a quello delle istruzioni che leggono o scrivono in memoria dati. Esistono però delle linee di controllo dedicate che selezionano le periferiche di interesse. Questa tecnica è stata ormai praticamente abbandonata. Simone Buso - Microcontrollori e DSP - Lezione 10 9 Unità periferiche di interesse I mc e i DSP per applicazioni embedded sono dotati di alcune unità periferiche tipiche che sono: 1. convertitori A/D e, talvolta, D/A; 2. timer e contatori (modulatori PWM); 3. moduli di comunicazione (porte seriali, driver per bus di campo, ); 4. interfacce verso encoder; 5. interfacce verso display (solo mc); 6. moduli per la gestione di memoria esterna di vario tipo (DRAM più raro). Simone Buso - Microcontrollori e DSP - Lezione Sincronizzazione Dato che le periferiche operano in modo asincrono e a velocità di solito assai minore di quella della CPU, esiste il problema di come sincronizzare lo scambio dei dati tra il processore e le unità esterne. Ci sono tre approcci fondamentali: 1. polling o controllo da programma; 2. uso di un sistema di interruzioni; 3. uso di un processore di I/O (DMA). L approccio di gran lunga più usato nelle applicazioni dei mc e DSP è il secondo. Simone Buso - Microcontrollori e DSP - Lezione Controllo da programma Nel controllo da programma, la CPU interroga periodicamente la porta della periferica di interesse, in modo da tenere sotto controllo lo stato della stessa. Quando la periferica è disponibile a ricevere o trasmettere un dato, la CPU esegue le istruzioni necessarie. Successivamente, torna a controllare lo stato della periferica. Questo approccio risulta assai poco efficiente, comportando un grosso spreco di tempo da parte della CPU. Simone Buso - Microcontrollori e DSP - Lezione 10 12

3 Interruzioni La disponibilità di un sistema di interruzioni permette alla CPU di svolgere altre operazioni mentre le unità periferiche sono attive. Quando una periferica necessita della CPU, ad esempio perché ha appena prodotto un dato o ricevuto un segnale dall esterno, invia alla CPU una richiesta di intervento. Questo segnale viene indicato con il termine interruzione, perché, di norma, la sua ricezione interrompe l esecuzione del programma da parte della CPU, che comincia ad occuparsi della periferica che lo ha inviato. Simone Buso - Microcontrollori e DSP - Lezione Un sistema di interruzioni richiede la presenza di una linea di controllo specifica nella CPU che possa essere asserita dalle periferiche per richiedere l interruzione. CPU Bus dati Bus indirizzi Interfaccia DREG SREG CREG Periferica Simone Buso - Microcontrollori e DSP - Lezione La ricezione di una richiesta di interruzione genera una sequenza di eventi nella CPU: 1. completamento dell istruzione corrente; 2. salvataggio del contesto; 3. attivazione, se possibile, di una routine di servizio per l interruzione; 4. recupero del contesto e continuazione del programma originario. Il punto 2 è particolarmente importante: la CPU deve poter tornare allo stato precedente l interruzione, una volta che questa è stata servita. Simone Buso - Microcontrollori e DSP - Lezione Salvataggio del contesto Tutti i sistemi di interruzioni richiedono, come minimo, il salvataggio del program counter (PC) e del registro di stato (SR) del processore. Alcuni processori consentono di operare su un set di registri alternativo a quello principale, per tutta la durata dell interruzione, preservando così, in modo automatico e molto veloce, il contenuto originario dei registri. In altri casi, deve essere il programmatore a mettere in salvo (e.g. nello stack) il contenuto dei registri che verranno usati dalla routine di servizio e a ripristinarli al suo termine. Simone Buso - Microcontrollori e DSP - Lezione Routine di servizio La routine di servizio di una interruzione è semplicemente un sottoprogramma che viene attivato dalla CPU, quando questa intende servire la richiesta di interruzione prodotta da una periferica. Il sottoprogramma contiene tutte le istruzioni necessarie a gestire la periferica, consentendo lo scambio dei dati con la CPU. Al suo termine, una particolare istruzione (solitamente indicata con RTI o simili) provoca il ritorno della CPU alle attività precedenti la richiesta di interruzione. Simone Buso - Microcontrollori e DSP - Lezione Dato che le periferiche di un mc o DSP possono essere numerose, si pongono diversi problemi: 1. riconoscere la periferica che ha richiesto l interruzione; 2. gestire eventuali richieste simultanee da parte di diverse periferiche 3. gestire le interruzioni delle routine di servizio (interruzioni annidate). Esistono diverse possibili soluzioni che corrispondono a diverse organizzazioni del sistema di interruzioni. Simone Buso - Microcontrollori e DSP - Lezione 10 18

4 Controllo da programma La prima soluzione, usata in architetture del passato, sfrutta un registro di stato delle interruzioni (ISR), ciascun bit del quale è associato ad una periferica. Una periferica che richieda una interruzione asserisce al tempo stesso il proprio bit del registro. Al recepimento della richiesta, la routine di servizio esamina sequenzialmente i bit di ISR e determina quale periferica ha attivato la richiesta. Di conseguenza, attiva (e.g. con una istruzione CALL) il sottoprogramma di gestione opportuno. Controllo da programma Questa soluzione realizza implicitamente anche un meccanismo di priorità, in quanto i bit di ISR vengono letti in un ordine fissato e nello stesso ordine vengono servite eventuali richieste di interruzione concorrenti. La gestione di ISR è a carico del programma, che deve disasserire i bit delle interruzioni servite e le stesse richieste, in modo da evitare loop pericolosi. Il metodo è comunque poco efficiente, in quanto la lettura di ISR richiede un tempo significativo. Simone Buso - Microcontrollori e DSP - Lezione Simone Buso - Microcontrollori e DSP - Lezione Interruzioni vettorizzate Una organizzazione più efficiente è quella di tipo vettorizzato. In questo caso, il processore presenta più linee di interruzione (1, 2, ), ciascuna dedicata a una periferica (o a un piccolo gruppo di periferiche) ed è in grado di attivare in modo automatico la routine di servizio appropriata. Il modo più semplice di realizzare questa organizzazione consiste nel codificare in una istruzione speciale, caricata a seguito di ciascuna interruzione, le due operazioni essenziali: push PC, jump rout_n. Interruzioni vettorizzate La gestione di interruzioni annidate è ancora possibile, in quanto il circuito codificatore di interruzione può permettere il passaggio delle richieste di interruzioni a priorità più elevata. La terminazione delle richieste pendenti deve essere opportunamente gestita, in modo che le routine di servizio eventualmente interrotte giungano comunque a compimento. Ciò richiede una organizzazione del circuito codificatore piuttosto complessa, tanto che non sempre esso è interno alla CPU. Simone Buso - Microcontrollori e DSP - Lezione Simone Buso - Microcontrollori e DSP - Lezione Vettore delle interruzioni CALL ISR_i CALL ISR_n Interruzioni vettorizzate CALL ISR_1 0x0000 CALL ISR_2 0x0004 CALL ISR_3 0x0008 memoria STI CLI Codificatore Indirizzo ISR S R Q Gestione priorità Organizzazione di un sistema di interruzioni vettorizzato n CPU Simone Buso - Microcontrollori e DSP - Lezione IE Un meccanismo di gestione alternativo, che permette di mantenere una sola linea di, è denominato daisy-chain. Si tratta di una organizzazione hardware apposita, che permette alla CPU di identificare rapidamente la periferica che ha asserito la linea. Al recepimento della richiesta di interruzione, la CPU invia un segnale (INTA) lungo una linea di controllo denominata DCL. Tale segnale si propaga da una periferica alla successiva, fino a quando arriva alla periferica che ha asserito la linea. Simone Buso - Microcontrollori e DSP - Lezione 10 24

5 Periferiche Interfacce IACK1 IACK2 IACKn 1 2 n DCL DCL DCL INTA INTA INTA CPU Per 1 Per 2 Per n Int 1 Int 2 Int n Organizzazione di un sistema di interruzioni con daisy-chain. INTAI D Q Clk Q IACK DCL Schema semplificato di un nodo DCL INTAO Simone Buso - Microcontrollori e DSP - Lezione Simone Buso - Microcontrollori e DSP - Lezione Quando riceve il segnale di INTA, la periferica che ha asserito blocca la sua propagazione lungo la DCL e genera il segnale IACK. L interfaccia invia sul bus dati un codice, detto selettore di interruzione, che permette alla CPU di avviare la routine di servizio appropriata. Questo meccanismo introduce implicitamente anche un sistema di priorità, in quanto le periferiche vengono servite in un ordine prestabilito, che è quello della loro collocazione lungo la daisy-chain stessa. Simone Buso - Microcontrollori e DSP - Lezione La gestione di più concorrenti è però complicata: se una periferica si trova a valle di una che ha appena generato una richiesta di interruzione, non viene servita perché il segnale INTA non ha modo di propagarsi lungo la linea DCL. E necessario che il sistema disabiliti le richieste di interruzione da parte delle periferiche a valle di una che viene servita, in modo che queste non vadano perdute. Ciò si ottiene modificando opportunamente il nodo DCL. Simone Buso - Microcontrollori e DSP - Lezione Il meccanismo della daisy-chain è talora usato insieme alla vettorizzazione interna per discriminare le sorgenti di interruzione all interno di piccoli gruppi di periferiche associate alla stessa linea di interruzione fisica. L organizzazione del sistema di interruzioni tramite daisy-chain prende anche il nome di vettorizzazione esterna, per indicare il fatto che la CPU ha in realtà una sola linea di interruzione. Simone Buso - Microcontrollori e DSP - Lezione Interruzioni mascherabili e non E possibile fare in modo che la CPU non venga interrotta dalle periferiche in alcuni momenti, mascherando le sorgenti di interruzione. In pratica il segnale viene soppresso tenendo basso il segnale di IE (Interrupt Enable). Talvolta è anche possibile inibire singolarmente ciascuna sorgente. Tutti i processori hanno però almeno una sorgente di interruzione che non può essere mascherata (NMI). Questa può essere usata per gestire situazioni di emergenza, come per esempio improvvise mancanze di alimentazione. Simone Buso - Microcontrollori e DSP - Lezione 10 30

6 I parametri fondamentali che qualificano il sistema di interruzioni di un mc o DSP sono: 1. numero di sorgenti ammesso; 2. gestione delle priorità; 3. velocità nel salvataggio del contesto; 4. mascherabilità delle interruzioni. Nelle applicazioni di controllo real-time, la velocità di salvataggio del contesto è spesso un parametro critico. Altrettanto importante è la possibilità di impedire l interruzione di regioni critiche del codice. Simone Buso - Microcontrollori e DSP - Lezione I mc di più recente progetto e i DSP dispongono in gran parte di un sistema di interruzioni vettorizzato internamente. La chiamata della routine di servizio corrispondente alla sorgente di interruzione è quindi automatizzata, spesso insieme al salvataggio (per lo meno parziale) del contesto. Questo minimizza il tempo di latenza dell interruzione, cioè il tempo tra la richiesta di interruzione e l esecuzione della prima istruzione della ISR. Simone Buso - Microcontrollori e DSP - Lezione Il numero di sorgenti di interruzione è di norma piuttosto elevato (>10, ma può arrivare al centinaio) ed è spesso possibile configurare una interruzione definendone la priorità e, in alcuni casi, anche se deve essere vettorizzata o meno. La gestione delle priorità può essere molto diversa: alcuni processori permettono solo di arbitrare interruzioni simultanee, altri permettono anche di servire interruzioni di maggiore priorità all interno di routine di servizio a priorità minore (nesting). Simone Buso - Microcontrollori e DSP - Lezione Programma principale ISR4 ISR1 ISR2 ISR3 ISR5 Gestione di interruzioni successive in un sistema che non permette il nesting. per 1 per 2 per 3 per 5 Simone Buso - Microcontrollori e DSP - Lezione Programma principale Programma principale 1 1 ISR1 4 1 interrompe ISR4 perché ha priorità maggiore 4 viene lasciata pendente fino al termine di ISR1 Gestione di interruzioni successive in un sistema che permette il nesting. Le interruzioni di priorità più alta sono servite subito, quelle di priorità più bassa sono lasciate pendenti. Simone Buso - Microcontrollori e DSP - Lezione ISR2 ISR3 ISR4 ISR5 Esempio iniziale rivisto in un sistema che permette il nesting. per 3 per 5 Simone Buso - Microcontrollori e DSP - Lezione 10 36

7 Le due gestioni sono differenti, in quanto, con il nesting, una interruzione di alta priorità può essere servita nel minimo tempo. Il nesting può penalizzare le interruzioni di bassa priorità (nell esempio 4, ma non 5). Solo nel caso in cui le ISR (Interrupt Service Routine) siano tutte relativamente brevi, anche la gestione senza nesting può offrire buone prestazioni (il massimo ritardo è breve). Quest ultima è la gestione offerta da quasi tutti i DSP (eccezione: DSP della serie AD21xx Analog Devices e Motorola 56F8xx). Simone Buso - Microcontrollori e DSP - Lezione In molte applicazioni è necessario prevedere il massimo ritardo con cui una certa richiesta di interruzione potrà essere servita, ovvero il suo tempo di latenza massimo. Il tempo di latenza di una interruzione presenta sempre una componente intrinseca (T LI ), dovuta alla necessità di operare, in modo automatico o nel programma, il salvataggio del contesto (PC, SR, registri, ). Tuttavia, al diminuire della loro priorità, le interruzioni presentano tempi di latenza crescenti e molto maggiori di T LI. Simone Buso - Microcontrollori e DSP - Lezione In un sistema che consente il nesting, il tempo di latenza di una interruzione di priorità n, nel caso peggiore, è dato da: T L_n = T LI + n-1 T ex_i i=1 dove i T ex_i rappresentano i tempi totali di esecuzione delle ISR associate a tutte le interruzioni attive di priorità maggiore di n. Si noti che la sommatoria dei tempi di esecuzione è in realtà indipendente dalla presenza del nesting. Simone Buso - Microcontrollori e DSP - Lezione In un sistema che non consente il nesting, il tempo di latenza di una interruzione di priorità n, sempre nel caso peggiore, è invece dato da: T L_n = T LI + Max(T ex_j ) + j>n n-1 T ex_i i=1 che risulta maggiore del precedente per la presenza di un termine aggiuntivo pari al massimo tra tutti i tempi di esecuzione delle routine di servizio, che hanno una priorità più bassa dell interruzione considerata. Simone Buso - Microcontrollori e DSP - Lezione L interruzione a priorità più alta presenta un tempo di latenza che è spesso superiore a T LI, anche in un sistema che consente il nesting. Questo può essere dovuto a due diversi fattori: 1. le interruzioni sono state disabilitate per proteggere regioni critiche del programma principale (T RC ); 2. è in esecuzione una istruzione complessa. Nel caso peggiore, il totale tempo di latenza dell interruzione sarà pari alla somma dei tre contributi (T LI + T RC + T IST ). Simone Buso - Microcontrollori e DSP - Lezione Quando un segmento di programma deve essere eseguito in modo rigorosamente sequenziale, e.g. per garantire una precisa temporizzazione, è necessario che tutte le interruzioni siano mascherate. In caso contrario la durata del segmento di codice critico non è costante, ma varia in modo apparentemente casuale a seconda del verificarsi delle richieste di interruzione. Questo può dare luogo a errori non ripetibili, fenomeni di jitter, glitch etc. molto difficili da identificare. Simone Buso - Microcontrollori e DSP - Lezione 10 42

8 Densità delle interruzioni Quando un mc o DSP deve gestire numerose sorgenti di interruzione, ad esempio N, si pone il problema di garantire che tutte possano essere effettivamente servite. Una condizione necessaria affinché questo si verifichi è che sia soddisfatta la seguente diseguaglianza: N i=1 Tex_i T p_i < 1 dove T p_i rappresenta il minimo periodo di ripetizione della i-esima ISR. Simone Buso - Microcontrollori e DSP - Lezione Densità delle interruzioni La condizione non è però sufficiente, perché non tiene conto del fatto che interruzioni di priorità più elevata, combinandosi, possono impedire al processore di servire l i-esima interruzione nel periodo di tempo T p_i. Per escludere questa eventualità, per ciascuna interruzione si deve anche verificare la seguente condizione di intervallo: T ex_i + Max(T ex_j ) + j>i Simone Buso - Microcontrollori e DSP - Lezione i-1 k=1 N k T ex_k < T p_i Densità delle interruzioni La condizione di intervallo esprime il fatto che per la i-esima interruzione, la somma del tempo di esecuzione totale, della massima durata della interruzione di priorità più bassa (per un sistema senza nesting) e di tutti i tempi di esecuzione delle ISR relative a interruzioni di priorità più alta (moltiplicati per il numero di volte N k in cui si possono verificare nel periodo T p_i ) sia comunque minore di T p_i. La definizione formale di N k è: Programma principale Densità delle interruzioni T p_4 T p_4 T p_4 T p_4 T ex_4 +T ex_8 +T ex_2 +T ex_1 <T p_4 N k = INT((T p_i -T ex_i )/T p_k ) + 1 Simone Buso - Microcontrollori e DSP - Lezione Condizione di intervallo in un sistema senza nesting. Simone Buso - Microcontrollori e DSP - Lezione Problema In un sistema di 2 interruzioni (vettorizzate con priorità 1 e 2, senza nesting), le richieste di ciascuna interruzione avvengono ogni 100 µs. Nel programma principale esiste una regione critica di 20 µs. Determinare le durate possibili per le ISR delle due interruzioni. Si tratta di valutare le due condizioni di intervallo: 1. T ex_1 + Max(T RC,T ex_2 ) < 100 [µs] 2. T RC + T ex_2 + T ex_1 < 100 [µs] Simone Buso - Microcontrollori e DSP - Lezione Problema Si vede che la seconda condizione è più restrittiva della prima. Quindi la condizione limite sulle durate delle due ISR è data da: [µs] T ex_2 80 T ex_2 + T ex_1 < 80 [µs] [µs] Le coppie di valori che ricadono entro l area tratteggiata soddisfano entrambe le condizioni di intervallo. 80 T ex_1 Simone Buso - Microcontrollori e DSP - Lezione 10 48

9 L approccio DMA rappresenta la soluzione più efficiente per l interfacciamento di una CPU con un insieme di periferiche di I/O. Consiste nell introduzione di un circuito di controllo aggiuntivo, denominato DMAC, che, una volta programmato, gestisce le periferiche senza coinvolgere la CPU. Questo approccio diventa l unico possibile per quelle periferiche la cui velocità è comparabile con quella della CPU. Si tratta comunque di una soluzione molto costosa, usata solo in dispositivi di pregio. Simone Buso - Microcontrollori e DSP - Lezione Il DMAC è estremamente utile in tutti i casi in cui una periferica renda disponibili grandi quantità di dati da spostare verso la memoria. Il DMAC provvede a questi spostamenti controllando i bus dati e indirizzi in modo autonomo, lasciando la CPU libera di eseguire altre operazioni. L operazione di spostamento può avvenire in modo singolo (cycle stealing) oppure a blocchi (burst). Mentre il DMAC è operativo la CPU non può usare il bus, quindi operare sulla memoria dati. Simone Buso - Microcontrollori e DSP - Lezione Per questa ragione il DMAC è di solito usato in combinazione con la memoria cache. Questo permette alla CPU di procedere nelle sue elaborazioni in modo indipendente dal DMAC, purchè i dati contenuti nella cache rimangano validi (i.e. non vengano sovrascritti nella memoria principale dal DMAC). La gestione del DMAC consiste semplicemente nell indicazione di un indirizzo di memoria a partire dal quale si scriveranno i dati e del numero di dati da spostare. Al termine dello spostamento il DMAC genera un interruzione. Simone Buso - Microcontrollori e DSP - Lezione Un DMAC può anche servire più periferiche di I/O in parallelo, in quanto dispone di norma di diversi canali. Un DMAC ad alte prestazioni è per esempio incluso nel DSP TMS320C4x: esso è in grado di completare un trasferimento da e per la memoria per ciclo di clock, senza interferire con il processore. E in grado di gestire 6 canali simultaneamente. Simili dispositivi sono presenti nei DSP della serie di Motorola e negli ADSP-2106x di Analog Devices (e superiori). Simone Buso - Microcontrollori e DSP - Lezione Bus switch Address Bus Data Bus Enable CPU Bus switch Bus switch Enable DMA Address Data Address Data Address Data CPU memoria DMAC I/O (e.g. CODEC) ADREG Counter DMARequest Controller DMAGrant TransferRequest TransferGrant Struttura semplificata di sistema con DMAC Simone Buso - Microcontrollori e DSP - Lezione Il protocollo di funzionamento del DMAC è il seguente: 1. la periferica richiede al DMAC il permesso per un trasferimento dati (TransferReq.). 2. il DMAC richiede alla CPU il permesso di usare i bus (DMAReq.). 3. la CPU concede l uso del bus: gli switch isolano la CPU e connettono DMAC e periferica (DMAGrant) alla memoria. 4. Il DMAC imposta l indirizzo sul bus e autorizza la periferica a leggere/scrivere il dato (TransferGrant) in memoria. Simone Buso - Microcontrollori e DSP - Lezione 10 54

Lezione 10. Lezione 10

Lezione 10. Lezione 10 Lezione 10 Sommario Sottosistema di I/O I/O mappato in memoria e isolato Gestione con polling o interruzioni Interruzioni vettorizzate e non Interruzioni con priorità Tempi di latenza DMA Simone Buso -

Dettagli

Periferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus

Periferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus Periferiche Interface Interface Interface Interface CPU SREG CREG DREG Il processore scambia informazioni con le periferiche attraverso dei registri. Tipicamente: Control REGister; Status REGister; Data

Dettagli

Il problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano

Il problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il problema dello I/O e gli Interrupt Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il Calcolatore e le periferiche Periferica Decodifica Indirizzi Circuiti di Controllo Registri

Dettagli

Capitolo 13 Il sottosistema di ingresso/uscita

Capitolo 13 Il sottosistema di ingresso/uscita Capitolo 13 Il sottosistema di ingresso/uscita Elementi di base del sottosistema di I/O I dispositivi di I/O sono collegati al bus di sistema attraverso una interfaccia che risolve i problemi di sincronizzazione

Dettagli

LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19

LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19 LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19 Prof. Rosario Cerbone rosario.cerbone@libero.it http://digilander.libero.it/rosario.cerbone a.a. 2005-2006 Interrupt Se il ciclo del processore

Dettagli

Interrupt. LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19. Prof. Rosario Cerbone

Interrupt. LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19. Prof. Rosario Cerbone LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 19 Prof. Rosario Cerbone rosario.cerbone@libero.it http://digilander.libero.it/rosario.cerbone a.a. 2006-2007 Se il ciclo del processore fosse effettivamente

Dettagli

IL SISTEMA DELLE INTERRUZIONI

IL SISTEMA DELLE INTERRUZIONI IL SISTEMA DELLE INTERRUZIONI CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Elettronica (A-I) ICAR Consiglio Nazionale delle Ricerche DIS - Università degli Studi di Napoli Federico II Supporti didattici

Dettagli

Interruzioni parte prima. Inquadramento del problema

Interruzioni parte prima. Inquadramento del problema Corso di Calcolatori Elettronici I A.A. 2010-2011 Interruzioni parte prima Lezione 32 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea in Ingegneria

Dettagli

Il sistema di I/O. Calcolatori Elettronici

Il sistema di I/O. Calcolatori Elettronici Il sistema di I/O 1 Architettura a bus singolo Memoria CPU Interfaccia Unità di I/O Interfaccia Unità di I/O 2 Interfaccia Svolge la funzione di adattamento sia elettrico sia logico tra le unità periferiche

Dettagli

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

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

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1

Sistemi Operativi SISTEMI DI INPUT/OUTPUT. D. Talia - UNICAL. Sistemi Operativi 10.1 SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Tecniche di gestione dell I/O

Tecniche di gestione dell I/O CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dell Informazione Politecnico di Milano Tecniche di gestione dell I/O Ottobre 2001 Docente William Fornaciari Politecnico di Milano {fornacia,

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

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 sistemi di elaborazione (Input/Output parte 2)

Architettura dei sistemi di elaborazione (Input/Output parte 2) Architettura dei sistemi di elaborazione (Input/Output parte 2) Gestione dell I/O Il processore può comunicare con uno o più dispositivi esterni secondo schemi temporali imprevedibili che dipendono dalle

Dettagli

LA GESTIONE DELLA I/O

LA GESTIONE DELLA I/O LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Struttura dei Sistemi di Calcolo Operazioni dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione hardware Invocazione del Sistema Operativo 1 Architettura

Dettagli

Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo

Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo Corso di Calcolatori Elettronici I Interruzioni ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Gestione di eventi Ciclo base del processore: le istruzioni sono eseguite una dopo l altra

Dettagli

Architettura dei sistemi di elaborazione (Input/Output parte 1)

Architettura dei sistemi di elaborazione (Input/Output parte 1) Architettura dei sistemi di elaborazione (Input/Output parte 1) Sottosistema di I/O Il sottosistema di I/O è la parte attraverso la quale si esplica la comunicazione tra il calcolatore e il mondo esterno.

Dettagli

Input/Output (Cap. 7, Stallings)

Input/Output (Cap. 7, Stallings) Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli

Dettagli

Input/Output. Input/Output

Input/Output. Input/Output Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di sistema; Trasferimento dati; Gestione I/O. 2 M. Violante 1.1 Organizzazione di sistema Memoria

Dettagli

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione Processori

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

Memoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica

Memoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide

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

Il sistema delle interruzioni nel processore MC68000 (cenni)

Il sistema delle interruzioni nel processore MC68000 (cenni) Corso di Calcolatori Elettronici I A.A. 2011-2012 Il sistema delle interruzioni nel processore MC68000 (cenni) Lezione 33 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria

Dettagli

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo. Classificazione. I microcontrollori

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo. Classificazione. I microcontrollori INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione General Purpose CISC

Dettagli

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) 1^ parte Cosa è Arduino? Arduino è una piattaforma di sviluppo open-source basata su una semplice scheda

Dettagli

Il polling consiste nella scansione ciclica, da parte della CPU, di tutte le periferiche per verificare la disponibilità o meno alla comunicazione.

Il polling consiste nella scansione ciclica, da parte della CPU, di tutte le periferiche per verificare la disponibilità o meno alla comunicazione. TECNICHE DI INTERRUZIONE NEI MICROCOMPUTER Abbiamo analizzato nel modulo E la procedura con cui avviene lo scambio di informazioni in un microcomputer tra la CPU e la memoria. Il µp, che svolge la funzione

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

La memoria principale

La memoria principale La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce

Dettagli

ARCHITETTURA DEL CALCOLATORE

ARCHITETTURA DEL CALCOLATORE ARCHITETTURA DEL CALCOLATORE AVVERTENZE Questi appunti non vogliono essere degni sostituti di un buon libro di testo e hanno il solo scopo di aiutare gli studenti dei corsi di informatica che affrontano

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

Lezione 2. Lezione 2

Lezione 2. Lezione 2 Lezione 2 Sommario Struttura base dell hardware di un processore (ALU, memoria, I/O). Organizzazione Von Neumann vs Harvard. Organizzazione della ALU. Bus dati, istruzioni, indirizzi. Metodi di controllo.

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2004/2005 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità

Dettagli

PD-32. Connessione di dispositivi esterni (periferiche)

PD-32. Connessione di dispositivi esterni (periferiche) PD-32 Seconda parte Connessione di dispositivi esterni (periferiche) Ogni dispositivo di I/O è connesso al PD-32 mediante un interfaccia suddivisa in una parte dipendente dal dispositivo ed un altra indipendente

Dettagli

Università degli Studi di Cassino

Università degli Studi di Cassino Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2007/2008 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione

Dettagli

Modi di esecuzione user / kernel

Modi di esecuzione user / kernel Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione

Dettagli

verso espandibili eterogenei tempo di accesso tempo di risposta throughput

verso espandibili eterogenei tempo di accesso tempo di risposta throughput I/O Un calcolatore è completamente inutile senza la possibile di caricare/ salvare dati e di comunicare con l esterno Input / Output (I/O): insieme di architetture e dispositivi per il trasferimento di

Dettagli

Lezione 2. Lezione 2 CPU CPU. Organizzazione. Organizzazione. Organizzazione. Organizzazione. Memoria. Memoria Dati. Dati Istruzioni.

Lezione 2. Lezione 2 CPU CPU. Organizzazione. Organizzazione. Organizzazione. Organizzazione. Memoria. Memoria Dati. Dati Istruzioni. Sommario Lezione 2 Struttura base dell hardware di un processore (ALU, memoria, I/O). Von Neumann vs Harvard. della ALU. dati, istruzioni, indirizzi.. Sistemi di memoria (registri, RAM, ). Periferiche

Dettagli

Memoria cache, interrupt e DMA

Memoria cache, interrupt e DMA FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide

Dettagli

Principali periferiche

Principali periferiche Principali periferiche Timer Periferica per il conteggio esatto del tempo Esempio: 8254 3 contatori "indietro" da 16 bit: si può impostare un valore iniziale fino a 0xFFFF in ciascuno dei tre contatori;

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

Sistemi Operativi. Sottosistema di I/O

Sistemi Operativi. Sottosistema di I/O Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O Patrizia Scandurra Università degli Studi di Bergamo a.a. 2011-12 Sommario L hardware di I/O Struttura Interazione tra computer e controllori

Dettagli

Si pone allora il problema fondamentale: come far dialogare la CPU con le periferiche nel modo più efficiente possibile CPU

Si pone allora il problema fondamentale: come far dialogare la CPU con le periferiche nel modo più efficiente possibile CPU Sistemi Roberta Gerboni 1 Un computer è un sistema complesso costituito da: - una Unità Centrale di Elaborazione (CPU) - e da un insieme più o meno numeroso di dispositivi periferici chiamati, semplicemente,

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

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

ESERCITAZIONE Unità centrale di elaborazione Ciclo base di un istruzione Meccanismo di interruzione ESERCITAZIONE 8 Sommario Unità centrale di elaborazione Meccanismo di interruzione CPU-Memoria Architettura di una CPU Linguaggio macchina Modi di indirizzamento 1. Unità centrale di elaborazione L unità

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

Caratteristiche di un PC

Caratteristiche di un PC Caratteristiche di un PC 1 Principali porte presenti sui personal computer PC Una porta è il tramite con la quale i dispositivi (periferiche o Device ) vengono collegati e interagiscono con il personal

Dettagli

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

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Architettura di Von Neumann Modello concettuale di un architettura di computer che permette di rappresentare,

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Eccezioni ed Interruzioni Anno Accademico 2013/2014 Alessandra Scotto di Freca Si ringrazia il prof.francesco Tortorella

Dettagli

Le Interruzioni. Ciclo del processore

Le Interruzioni. Ciclo del processore Le Interruzioni Ciclo del processore L esecuzione di una istruzione avviene attraverso alcune fasi: Fetch L istruzione da eseguire viene prelevata dalla memoria e trasferita all interno della CPU Decode

Dettagli

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

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II) 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 La inserita nella architettura dell elaboratore Informatica Facoltà di Medicina Veterinaria a.a.

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

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi)

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi) shell Programmi utente Modo utente Il Nucleo del sistema operativo (la gestione dei processi) Interfaccia delle chiamate di sistema File system Gestione processi Device driver Gestione memoria HARDWARE

Dettagli

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

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica 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

Dettagli

Lezione 15. L elaboratore Elettronico

Lezione 15. L elaboratore Elettronico Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente

Dettagli

I dispositivi di input/output

I dispositivi di input/output I dispositivi di input/output I dispositivi di input/output (anche detti periferiche), permettono di realizzare l'interazione tra l'uomo e la macchina La loro funzione primaria è quella di consentire l'immissione

Dettagli

Calcolatore: sottosistemi

Calcolatore: sottosistemi Calcolatore: sottosistemi Processore o CPU (Central Processing Unit) Memoria centrale Sottosistema di input/output (I/O) CPU I/O Memoria Calcolatore: organizzazione a bus Il processore o CPU Unità di controllo

Dettagli

Il sistema di I/O. Sistemi Operativi 13.1

Il sistema di I/O. Sistemi Operativi 13.1 Il sistema di I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Prestazioni 13.1 Introduzione Un elaborazione eseguita da

Dettagli

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP

Introduzione. Caratteristiche generali. Sistemi e Tecnologie per l'automazione LS. HW per elaborazione digitale in automazione: Microcontrollori e DSP Laurea Specialistica in Ingegneria Informatica Laurea Specialistica in Ingegneria Elettronica e delle Telecomunicazioni Sistemi e Tecnologie per l'automazione LS HW per elaborazione digitale in automazione:

Dettagli

Strutture dei sistemi di calcolo

Strutture dei sistemi di calcolo Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di protezione Architettura di un sistema di calcolo

Dettagli

Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni

Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni Calcolatori Elettronici T Ingegneria Informatica 04 Interruzioni Stefano Mattoccia Gestione eventi con una CPU: polling In un sistema a microprocessore è di fondamentale importanza poter gestire eventi

Dettagli

ELETTRONICA II. Prof. Dante Del Corso - Politecnico di Torino

ELETTRONICA II. Prof. Dante Del Corso - Politecnico di Torino ELETTRONICA II Prof. Dante Del Corso - Politecnico di Torino Gruppo G: Interfacciamento e interconnessioni Lezione n. 34 - G - 5: Protocollo a livello transazione Esempi di bus reali Interconnessioni 3

Dettagli

Sistemi Operativi. La gestione delle risorse

Sistemi Operativi. La gestione delle risorse Sistemi Operativi La gestione delle risorse Introduzione Il sistema operativo ha il compito di fornire la gestione dell hardware ai programmi dell utente. Utente utilizza i programmi applicativi Programmi

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

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Calcolatori Elettronici 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di solito

Dettagli

Il sistema di I/O. Calcolatori Elettronici 1. Architettura a bus singolo. Memoria. Unità di I/O. Interfaccia. Unità di I/O.

Il sistema di I/O. Calcolatori Elettronici 1. Architettura a bus singolo. Memoria. Unità di I/O. Interfaccia. Unità di I/O. Il sistema di I/O Calcolatori Elettronici 1 Architettura a bus singolo Memoria CPU Interfaccia Unità di I/O Interfaccia Unità di I/O Calcolatori Elettronici 2 1 Interfaccia Svolge la funzione di adattamento

Dettagli

Pentium: architettura di sistema

Pentium: architettura di sistema Pentium: architettura di sistema 1 2 TXC 4 3 5 6 PIIX 7 Pentium: architettura a livello di sistema 1 Il processore Pentum (1) è interfacciato sul bus con la memoria cache di livello 2 (2). L interfacciamento

Dettagli

Macchina di Von Neumann

Macchina di Von Neumann Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è

Dettagli

Architetture dei sistemi elettronici 14. Il microcontrollore

Architetture dei sistemi elettronici 14. Il microcontrollore Architetture dei sistemi elettronici 14. Il microcontrollore Roberto Roncella Schema a blocchi 2 Il core CPU 3 4 Architettura von Neumann Istruzioni Unità Aritmetica Unità di di Controllo Stato Dati B

Dettagli

Corso di Informatica Modulo T3 1-Nucleo e processi

Corso di Informatica Modulo T3 1-Nucleo e processi Corso di Informatica Modulo T3 1-Nucleo e processi 1 Prerequisiti Concetto stack Programmazione elementare Struttura elementare del computer Concetto intuitivo di sottoprogramma 2 1 Introduzione Vediamo

Dettagli

CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico)

CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico) CLASSIFICAZIONE DEI SISTEMI OPERATIVI (in ordine cronologico) - Dedicati Quelli dei primi sistemi operativi. La macchina viene utilizzata da un utente per volta che può eseguire un solo programma per volta.

Dettagli

Lezione 2. Lezione 2 CPU CPU. Organizzazione. Organizzazione. Organizzazione. Organizzazione. Memoria. Memoria Dati. Dati Istruzioni.

Lezione 2. Lezione 2 CPU CPU. Organizzazione. Organizzazione. Organizzazione. Organizzazione. Memoria. Memoria Dati. Dati Istruzioni. Sommario Lezione 2 Struttura base dell hardware di un processore (LU, memoria, I/O). Von Neumann vs Harvard. della LU. dati, istruzioni, indirizzi.. Sistemi di memoria (registri, RM, ). Periferiche di

Dettagli

Il ciclo del processore semplificato BOOTSTRAP FETCH EXECUTE

Il ciclo del processore semplificato BOOTSTRAP FETCH EXECUTE Roadmap Inquadramento del problema La fase di interrupt nel ciclo del processore Le cause di interruzione Le fasi di uninterruzione Ripristino del programma Latenza Identificazione di dispositivi: soluzioni

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità

Dettagli

Cenni sull architettura del calcolatore

Cenni sull architettura del calcolatore Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Cenni sull architettura del calcolatore Pietro Di Lena - pietro.dilena@unibo.it hard-ware /h :dwe9 r / n. The part of the computer

Dettagli

Sistemi di Elaborazione: esercizio con il D12

Sistemi di Elaborazione: esercizio con il D12 Sistemi di Elaborazione: esercizio con il D12 Un sistema basato su PIC18F8720 a 24 MHz è dotato di 32 KB di EPROM agli indirizzi alti e 64 KB di RAM statica agli indirizzi bassi. Il sistema è dotato inoltre

Dettagli

Terza lezione 21 ottobre 2016

Terza lezione 21 ottobre 2016 Terza lezione 21 ottobre 2016 Condizione per la conversione A/D Il teorema di Shannon (o di Nyquist) fornisce la condizione necessaria affinché un segnale dopo il campionamento possa nuovamente essere

Dettagli

ESERCITAZIONE Operandi Architettura ad 1 operando Architettura a 2 operandi Architettura a 3 operandi

ESERCITAZIONE Operandi Architettura ad 1 operando Architettura a 2 operandi Architettura a 3 operandi ESERCITAZIONE 9 Sommario Operandi Registri dedicati Gestione di sottoprogrammi Meccanismi di interruzione 1. Operandi Le prestazioni di una CPU possono variare considerevolmente a seconda del numero di

Dettagli

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

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi Corso di Calcolatori Elettronici I A.A. 2011-2012 Architettura di un calcolatore: primi cenni introduttivi Lezione 1 (seconda parte) Prof. Roberto Canonico Università degli Studi di Napoli Federico II

Dettagli

Lezione 6. Lezione 6. Moltiplicatori a look-up table. Moltiplicatori a look-up table. Moltiplicatori veloci. Moltiplicatori a look-up table.

Lezione 6. Lezione 6. Moltiplicatori a look-up table. Moltiplicatori a look-up table. Moltiplicatori veloci. Moltiplicatori a look-up table. Sommario Lezione 6 Moltiplicatori veloci a look-up table Moltiplicatori veloci a matrice Circuiti per aritmetica floating point Simone Buso - Microcontrollori e DSP - Lezione 6 1 Lezione 6 Materiale di

Dettagli

Nicola Amoroso. Corso introduttivo sui microcontrollori A. S Microprocessori - Microcontrollori.

Nicola Amoroso. Corso introduttivo sui microcontrollori A. S Microprocessori - Microcontrollori. Corso introduttivo sui microcontrollori A. S. 2007 2008 Microprocessori - Microcontrollori Nicola Amoroso namoroso@mrscuole.net NA L1 1 Cosa e un microcontrollore? > Un piccolo computer, contenente al

Dettagli

Giustificazione dei sistemi di interrupt

Giustificazione dei sistemi di interrupt Sistemi di interruzione Giustificazione dei sistemi di interrupt Omero Tuzzi Sistemi di Interruzione 1 Sistemi di interruzione Dalla constatazione che i traferimenti di dati tra un dispositivo periferico

Dettagli

CALCOLATORI ELETTRONICI II

CALCOLATORI ELETTRONICI II CALCOLATORI ELETTRONICI II L INTERFACCIA PARALLELA Argomenti della lezione Le interfacce parallele Il dispositivo Intel 855 Architettura Funzionamento Le interfacce parallele Esempio Le interfacce parallele

Dettagli

Calcolatori Elettronici B a.a. 2004/2005

Calcolatori Elettronici B a.a. 2004/2005 Calcolatori Elettronici B a.a. 2004/2005 GESTIONE DELL INPUT/OUTPUT Massimiliano Giacomin 1 Livello del linguaggio specializzato Ln Traduzione (compilatore) o interpretazione da parte di un interprete

Dettagli

Lezione 7. Lezione 7. Unità di controllo. Unità di controllo. Unità di controllo. Materiale di riferimento. Sommario

Lezione 7. Lezione 7. Unità di controllo. Unità di controllo. Unità di controllo. Materiale di riferimento. Sommario Sommario Lezione 7 Unità di controllo del processore Realizzazioni a sgolo ciclo Confronto tra realizzazioni a sgolo ciclo e multiciclo Lezione 7 Materiale di riferimento 1. D. A. Patterson, J. L. Hennessy,

Dettagli