Documente Academic
Documente Profesional
Documente Cultură
Curs2 SMP2014 PDF
Curs2 SMP2014 PDF
MICROPROCESOARE
2014
CURS 2 MICROPROCESORUL 8086
.l. dr. ing. Radu PIETRARU
radu.pietraru@aii.pub.ro
MICROPROCESORUL 8086
Descriere general:
Lansat n 1978, aflat n producie pn n anii 90
Primul circuit al familiei x86
Frecven de funcionare ntre 5 MHz i 10 MHz
Procesor pe 16 bii (cuvnt de date)
Magistral extern de adres de 20 de bii, putea
accesa un spaiu de memorie extern de 1M (220)
Magistral intern de adrese pe 16 bii (spaiul de
adrese intern 64K)
Urmat un an mai trziu de 8088 variant cu
magistral extern de date pe 8 bii primul
circuit care a echipat IBM PC.
ARHITECTUR INTERN
REGISTRE INTERNE
REGISTRE DE UZ GENERAL
REGISTRE DE UZ GENERAL
BP - base pointer:
SP - stack pointer:
REGISTRE DE UZ SPECIAL
REGISTRU FLAGS
REGISTRE DE SEGMENT
CS indic segmentul coninnd programul
curent.
DS indic segmentul unde sunt definite
variabilele.
ES - extra segment register, folosire lsat la
latitudinea programatorului.
SS indic segmentul ce conine stiva.
10
MODURI DE ADRESARE
Registru MOV AX,BX
Imediat MOV CH, 3AH
Direct MOV [1234H], AX
(DSx10H+deplasament)
Indirect prin registru MOV [BX],CL
(DSx10H+BX)
Indexat MOV [BX+SI],BP
(DSx10H+BX+SI)
Relativ la registru MOV CL,[BX+4]
11
CONFIGURAIA PINILOR
12
SEMNIFICAIA PINILOR
RESET pin de RESET, trebuie inut timp de 4
cicluri main pe 1. Adresa de reset este FFFF0h;
la reset este ters bitul IF sunt dezactivate
ntreruperile.
CLK ofer semnalul de baz de ceas pentru
microprocesor.
Vcc 5V
GND mas
READY pin de intrare care permite strilor de
WAIT n funcionarea microprocesorului. Cnd
este 0 microprocesorul intr n stare de ateptare
i nu efectueaz alte operaii.
13
14
SEMNIFICAIA PINILOR
INTR Interrupt request linie de ntrerupere
extern hardware, dac IF=1 UCP intr n ciclul
de tratare a ntreruperii dup finalizarea
instruciunii curente.
/INTA Interrupt acknowledge rspuns la
INTR.
NMI Non-maskable interrupt similar cu
INTR dar nu testeaz IF.
15
SEMNIFICAIA PINILOR
/TEST este testat de instruciunea WAIT. Dac
este 0 instruciunea WAIT funcioneaz ca o
operaie NOP. Dac este 1 instruciunea WAIT
ateapt pn la tranziia n 0. Utilizat n
conjuncie cu coprocesorul matematic.
HOLD pin de intrare care indic solicitarea
unui ciclul DMA. Dac este 1 microprocesorul
oprete execuia programului i trece liniile de
magistral n stare de impedan mrit.
HLDA Hold acknowledge, indic c procesorul
a intrat n starea de HOLD.
16
SEMNIFICAIA PINILOR
17
CICLURI MAGISTRAL
18
CICLURI MAGISTRAL
19
SEMNIFICAIA PINILOR
A19/S6 A16/S3 Linii de adres / status
multiplexate; S6 este ntotdeauna 0, S5 indic
starea lui IF, S4 i S3 arat segmentul care este
accesat n ciclul magistral curent (00-ES, 01-SS,
10-CS sau nici un segment, 11-DS) i sunt adesea
utilizate prin decodificare pentru a accesa patru
bank-uri de memorie de 1M (rezultnd nc dou
linii de adres A21, A20).
MN//MX Mod minim / maxim pin de intrare /
selecie, pentru modul minim pinul trebuie
conectat la +5V.
/BHE/S7 Bus High Enable indic utilizarea
prii superioare a magistralei de date (D15-D8) n
cadrul unui ciclu magistral. S7 e ntotdeauna 1.
20
DEMULTIPLEXARE
(PARIAL
MOD MINIM)
MAGISTRAL
21
DEMULTIPLEXARE
(COMPLET
MOD MINIM)
MAGISTRAL
22
23
24
CONFIGURAIE
MAGISTRAL MOD MAXIM
26
(FFFFFH)
(FFFFEH)
(FFFFDH)
(FFFFCH)
(FFFFBH)
(FFFFAH)
(00005H)
(00004H)
(00003H)
(00002H)
(00001H)
(00000H)
512 KB
27
BHE/
D15 D8
A19 A1
D 7 D0
A0
BHE/
(FFFFFH)
(FFFFEH)
(FFFFDH)
(FFFFCH)
(FFFFBH)
(FFFFAH)
(00005H)
(00004H)
(00003H)
(00002H)
(00001H)
(00000H)
D15 D8
A19 A1
D7 D0
512 KB
A0
AH
AL
(00004H)
Neafectat
AX
28
BHE/
(FFFFFH)
(FFFFEH)
(FFFFDH)
(FFFFCH)
(FFFFBH)
(FFFFAH)
(00005H)
(00004H)
(00003H)
(00002H)
(00001H)
(00000H)
D15 D8
A19 A1
512 KB
D7 D0
A0
AH
AL
(00005H)
(00004H)
AX
29
BHE/
(FFFFFH)
(FFFFEH)
(FFFFDH)
(FFFFCH)
(FFFFBH)
(FFFFAH)
(00005H)
(00004H)
(00003H)
(00002H)
(00001H)
(00000H)
D15 D8
A19 A1
D7 D0
512 KB
A0
AH
AL
(00004H)
(00003H)
AX
30