









































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Slides su sistemi input/output del corso Calcolatori Elettronici
Tipologia: Dispense
1 / 49
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!










































ARSLAB - Autonomous and Robotic Systems Laboratory Dipartimento di Matematica e Informatica - Universit `a di Catania, Italy [email protected]
Architettura degli Elaboratori
Una caratteristica fondamentale di un computer e la possibilita di interagire con il mondo esterno (operatore umano, ambiente, etc.)
Queste operazioni sono effettuate attraverso le interfacce di Input/Output Esse sono dispositivi hardware che mettono a disposizione opportune funzionalit `a e/o collegamenti elettrici con l’esterno
Interagiscono con la CPU attraverso i collegamenti del bus di sistema
Una parte della memoria (stabilita a design-time) viene riservata per l’Input/Output Un set di indirizzi specifico dell’area di memoria `e assegnato all’Input/Ouput
Ogni interfaccia di I/O viene “allocata” (staticamente o dinamicamente) su uno o pi `u indirizzi dell’area riservata
L’accesso all’interfaccia `e effettuato attraverso delle operazioni di LOAD/STORE che utilizzano l’indirizzo assegnato all’interfaccia stessa
Un set di indirizzi separato da quello della memoria centrale e assegnato all’Input/Output Ogni interfaccia di I/O viene “allocata” (staticamente o dinamicamente) su uno o piu indirizzi di tale area di I/O
L’accesso all’interfaccia `e effettuato attraverso delle operazioni speciali di IN/OUT (differenti dalle LOAD/STORE) che utilizzano l’indirizzo assegnato all’interfaccia stessa
Data Bus
Control Bus
Address Bus
ADDRESS DECODER
PERIPHERAL REGISTERS
External Input/Output Lines
Il Control Bus espone due linee che indicano l’operazione che si sta effettuando:
STR VAL, [0x4002]
Data Bus
Control Bus
Address Bus
ADDRESS DECODER
PERIPHERAL REGISTERS
External Input/Output Lines
0x
0x
VAL
VAL
VAL
La CPU pone l’indirizzo 0x4002 sull’Address Bus Il decoder della periferica lo riconosce La CPU pone il dato sul Data Bus La CPU “attiva” il segnale WR L’hardware della periferica memorizza (“riceve”) il dato
Le operazioni tra CPU e periferica sono soggette ad uno scambio di segnali elettrici, in cui e importante sia l’aspetto logico (livello di tensione) che **temporale** Tali interazioni sono dunque regolate da un **protocollo** che specifica l’andamento tempolare dei segnali (cosa viene prima e dopo, quando accade un evento, quando accade l’altro evento, etc.) Il protocollo puo essere di due tipi: sincrono , e presente un segnale di clock e gli eventi avvengono solo durante i fronti **asincrono** , none presente un segnale di clock
STR VAL, [0x4002]
CLOCK
ADDRESS LINES 0x
DATA LINES VAL
CPU Cycle
Data is written here in the peripheral's register
LDR REG, [0x4002]
CLOCK
ADDRESS LINES 0x
DATA LINES VAL
CPU Cycle
VAL is sent by peripheral to data bus
VAL is acquired by CPU
32 D-Type Flip-Flops
Q31 ...Q16 ...Q
32
Data Bus, D31 ... D
ADDRESSDECODER 0x
32
Address Bus, A31 ... A
CONTROL^ CLOCK
CLOCK
SEL = 0 , when address = 0 x 4002
CLOCK
ADDRESS LINES 0x
DATA LINES VAL
CPU Cycle
32 D-Type Flip-Flops
I31 ...I16 ... I
32
Data Bus, D31 ... D
DECODER^ ADDRESS 0x
32
Address Bus, A31 ... A
CONTROL^ CLOCK ENABLEAND
CLOCK
32 Buffers 3-state 32
SEL = 0 , when address = 0 x 4003
CLOCK
ADDRESS LINES 0x
DATA LINES VAL
CPU Cycle
Sample DataHere