20 marzo 2007 - Corsi di Laurea a Distanza
Transcript
20 marzo 2007 - Corsi di Laurea a Distanza
Laurea in Ingegneria Informatica Sistemi di Elaborazione a Microprocessore Esame del 20 marzo 2007 Teoria: non è possibile consultare nulla. Durata: 30 minuti Domanda 1 Si descriva il ruolo della Bus Interface Unit, della Execution Unit e della Coda delle istruzioni esistenti all’interno di un 8086. Domanda 2 Si descrivano le differenze esistenti tra il funzionamento di un 8255 in modo 0 e in modo 1. Programmazione: è possibile consultare libri o appunti. Durata: 60 minuti. Si consideri il sistema 8086 riportato in figura, nel quale le porte A e B dell’8255 sono configurate per funzionare in modo 0, in input e in output rispettivamente. PortaA 8255 PortaB INTA 8086 8259 IR7 INT COUNT0 8253 1 MHz Il sistema deve: • Acquisire dalla porta A gli N × N elementi (ciascun corrispondente ad un intero con segno su 16 bit) costituenti una matrice • Inviare sulla porta B gli elementi della matrice trasposta. Sia l’input che l’output avvengono contemporaneamente, ad una frequenza di 1 byte ogni 250 µs. Affinché l’operazione di input non interferisca con quella di output, le due operazioni lavorano su due strutture dati separate, che si scambiano periodicamente. Si richiede la scrittura di: • procedura di inizializzazione dell’8255 • procedura di inizializzazione dell’8253 • procedura di servizio dell'interrupt. Si assuma che i dispositivi rispondano ai seguenti indirizzi esadecimali: 8255 Porta A 0030 Porta B 0031 Porta C 0032 Registro di controllo 0033 8259 ICW1, OCW2, OCW3 0090 ICW2, ICW3, ICW4, OCW1 0091 8253 Contatore 0 0010 Contatore 1 0011 Contatore 2 0012 Registro di controllo 0013