Elementi architetturali dell'8086
Click here to load reader
-
Upload
sergio-porcu -
Category
Education
-
view
249 -
download
0
Transcript of 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)
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
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).