Elementi architetturali dell'8086

3

Click here to load reader

Transcript of Elementi architetturali dell'8086

Page 1: Elementi architetturali dell'8086

Sistemi a Microprocessore Elementi architetturali dell'8086

Sergio PORCU 1

1

Sistemi a Microprocessore

ELEMENTI ARCHITETTURALI

DELL’8086

2

Elementi architetturali dell’8086

• L’8086 utilizza, per gli indirizzi fisici, l’A-BUS (physical address)

• La memoria è organizzata in segmenti da 64K byte ciascuno. Tutti i segmenti cominciano ad indirizzi multipli di 16

• La Process Status Word (PSW) è composta da 16 bit, ma solo 9 di questi sono usati. Ogni bit corrisponde ad un flag (che può essere di condizione o di controllo)

Page 2: Elementi architetturali dell'8086

Sistemi a Microprocessore Elementi architetturali dell'8086

Sergio PORCU 2

3

La memoria dell’8086

Nell’8086 la memoria è organizzata in due banchi da 512K byte:

• il banco dispari (D15 – D8)• il banco pari (D7 – D0)I due banchi sono indirizzati in parallelo dalle

linee di indirizzo A19 – A1.I dati con indirizzo pari sono trasferiti sui pin D7

– D0 mentre i dati ad indirizzi dispari sono trasferiti sui pin D15 – D8.

4

La memoria dell’8086

Il processore fornisce dei segnali di Enable (BHE e A0) per gestire l’accesso alla memoria:

(NESSUNA)11

BYTE BASSO (DALL’INDIRIZZO PARI)01

BYTE ALTO (DALL’INDIRIZZO DISPARI)10

WORD INTERA00

OPERAZIONI IN MEMORIAA0BHE

Page 3: Elementi architetturali dell'8086

Sistemi a Microprocessore Elementi architetturali dell'8086

Sergio PORCU 3

5

Lo stack

Lo Stack può essere manipolato:• attraverso istruzioni di PUSH e POP• all’atto della chiamata (CALL) o del ritorno (RET)

da una procedura. Nel primo caso viene automaticamente eseguita la PUSH dell’IP, nel secondo caso l’analoga POP

• all’atto dell’attivazione di interrupt, e del ritorno dalla corrispondente routine di servizio (IRET). Nel primo caso vengono eseguite automaticamente le PUSH del program counter (registri CS e IP) e della PSW, nel secondo vengono eseguite le corrispondenti POP

6

Accesso alle periferiche

L’accesso alle periferiche avviene attraverso speciali locazioni associate ad un certo indirizzo. Lo spazio di indirizzamento dell’I/O è pari al più a 64K byte. L’accesso alle locazioni può avvenire sia in modo memory mapped (attraverso una normale istruzione) sia in isolated I/O (attraverso speciali istruzioni di I/O).