Estratto del documento

Configurazione "communic asincrona"

Il programma serve a provare la configurazione "communic asincrona" costituita da due sistemi simmetrici ciascuno con un processore M68000, una ROM di 8K (addr $0-$1FFF), una RAM di 10K (addr $8000-$A7FF), un device parallelo PIA mappato a $2004, un device seriale di tipo TERMINAL mappato a $2000.

Interconnessione e protocollo di handshaking

I due PIA sono interconnessi e mediante un protocollo di handshaking consentono ai due sistemi di scambiarsi i caratteri digitati sul dispositivo TERMINAL. I device interagiscono con i rispettivi processori mediante le linee di interruzione. In particolare, il dato immesso da tastiera è acquisito mediante interruzione (liv.1, autovettore 25 mappato in area ROM alla locazione $64 che punta alla ISR posta all'indirizzo $8500 in area RAM e inviato alla sezione A del dispositivo parallelo PIA per la trasmissione verso il dispositivo PIA connesso all'altro sistema.

Il carattere ricevuto dal PIA è gestito mediante interruzione. All'arrivo dell'interrupt la ISR lo acquisisce e lo invia al terminal per la visualizzazione. L'interruzione è associata all'interrupt di liv. 3, #vect 27 mappato a $6C della ROM con ISR a $8700.

Schema di connessione PIA

PIA1                     PIA2
 ______                  _______
| CA1 | <---------> | CB2  |
| CA2 | ---------> | CB1  |
|_____| <====           |_______|
| CB1 | <---------> | CA2  |
| CB2 | ---------> | CA1  |
|_____| ====>          |_______|

Codice assembly e inizializzazione

NAME communic; tale direttiva non è allo stato supportata dall'assemblatore

BEGIN ORG $8200

  • PIADA EQU $2004; indirizzo di PIA-A dato, usato in input
  • PIACA EQU $2005; indirizzo di PIA-A stato/controllo
  • PIADB EQU $2006; indirizzo di PIA-B dato, usato in output
  • PIACB EQU $2007; indirizzo di PIA-B controllo
  • TERD EQU $2000; indirizzo di TERMINAL registro dato
  • TERC EQU $2001; indirizzo di TERMINAL registro Stato-Controllo

JSR DVAIN; inizializza PIA porto A
JSR DVBOUT; inizializza PIA porto B
JSR DVTER; inizializza terminal
MOVE.W SR,D0; legge il registro di stato
ANDI.W #$D8FF,D0; maschera per reg stato (stato utente, int abilitati)
MOVE.W D0,SR; pone liv int a 000
LOOP JMP LOOP; ciclo caldo dove il processore attende interrupt

Inizializzazione della PIA: porto A

CRA |0 |0 |1 0 0 |1 |0 1|
| | |__Controllo CA1: interruzioni abilitate su IRQA, CA1 sensibile al fronte 1->0
| |
| |______Accesso a DRA: il prossimo accesso ad indirizzo pari è per PRA

Anteprima
Vedrai una selezione di 1 pagina su 5
Comunicazione asincrona Pag. 1
1 su 5
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche MAT/02 Algebra

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher cecilialll di informazioni apprese con la frequenza delle lezioni di Algebra e Geometria e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Pastore Stefano.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community