Curs 3 - Universitatea Politehnica Timişoara

Download Report

Transcript Curs 3 - Universitatea Politehnica Timişoara

Proiectarea Microsistemelor Digitale
Curs 3
1
Proiectarea Microsistemelor Digitale
2.3. Unitatea centrală
2.3.1. Magistrale
 2 probleme: amplificarea şi demultiplexarea.
 Amplificarea:
Circuit
IOH
IOL
IIH
IIL
Microprocesor
- 250 µA
1,8 mA
10 µA
10 µA
Memorie SRAM
- 1 mA
2,1 mA
2 µA
2 µA
8255
- 400 µA
2,5 mA
10 µA
10 µA
Porţi CMOS (HC,
HCT)
- 8 mA
8 mA
1 µA
1 µA
Porţi TTL normale
- 800 µA
16 mA
40 µA
- 1,6 mA
2
Proiectarea Microsistemelor Digitale
Soluţii:
Amplificarea liniilor unidirecţionale:

3
Proiectarea Microsistemelor Digitale
Cu facilitatea de cedare a magistralelor:
Amplificarea liniilor bidirecţionale:
4
Proiectarea Microsistemelor Digitale

Schema internă a circuitului:
5
Proiectarea Microsistemelor Digitale

Demultiplexarea: multiplexarea terminalelor apare la:





8086,
Slotul PCI al PC-ului şi
Microcontrolere.
Memoriile şi porturile cer ca adresele să ramînă stabile toată durata ciclului
demultiplexarea – necesită registre (ex. 74x373, 74x374).
Registrul 74x373:
6
Proiectarea Microsistemelor Digitale

Schema internă a circuitului:
OC
1D
D
G
2D
Q
4Q
Q
5Q
Q
6Q
Q
7Q
Q
8Q
D
G
8D
3Q
D
G
7D
Q
D
G
6D
2Q
D
G
5D
Q
D
G
4D
1Q
D
G
3D
Q
D
G
G
7
Proiectarea Microsistemelor Digitale

Soluţii:

Demultiplexarea centrală:

Demultiplexarea locală:
8
Proiectarea Microsistemelor Digitale
2.3.2. Unitate centrală cu microprocesorul 8086

Circuitul 8284A:




generează tactul către microprocesor şi pentru circuitele specializate pentru
interfeţe,
generează semnalul READY către microprocesor, sincronizându - l cu tactul şi
generează semnalul de iniţializare, RESET, către microprocesor, sincronizându-l
cu tactul.
Configuraţia terminalelor:
RESET
RES
OSC
X1
X2
F/C
EFI
RDY1
AEN1
RDY 2
AEN 2
8
2
8
4
A
CLK
PCLK
READY
ASYNC
9
Proiectarea Microsistemelor Digitale

Schema internă:
RES
D
Q
RESET
CLK
X1
OSC
OSC
CLK
X2
F/C
.
.
.
EFI
3
.
.
.
SYNC
2
PCLK
SYNC
CSYNC
RDY1
AEN1
AEN2
RDY2
D
CLK
Q
D
Q
READY
CLK
ASYNC
10
Proiectarea Microsistemelor Digitale
Circuitul 8288 (controler de magistrală)



generează semnalele de comandă pentru transferurile cu memoria sau cu
porturile de intrare/ ieşire cînd microprocesorul lucrează în modul maxim,
amplifică ieşirile de comandă şi date.
Configuraţia terminalelor:

MRDC
S2
DT / R
S1
AMWC
S0
AEN
CLK
8
2
8
8
IORC
IOWC
AIOWC
INTA
DT / R
IOB
DEN
CEN
MCE / PDEN
ALE
2 moduri de lucru:



IOB = 1 logic: modul de comandă a magistralei de intrare / ieşire; semnalele
care controlează magistrala de intrare / ieşire se vor activa independent de
intrarea /AEN;
IOB = 0 logic: modul de comandă a magistralei sistem; generarea semnalelor
de comandă pentru transferuri va fi validată prin intermediul semnalului /AEN;
11
Proiectarea Microsistemelor Digitale

Unitate centrală cu microprocesorul 8086 în modul minim
3X
OC
RES
RDY1
AEN1
CLK
BHE
A19-16
RESET
AD15-0
READY ALE
8
2
8
4
A
BHE
L
S
3
7
3
…
G
Memorii
8
RD
0
8 WR
6 M / IO
A19-0
Porturi
GSC
2X
1
MN /
MX
DT / R
DEN
L
S
2
DIR 4
5
G
D15-0
12
Proiectarea Microsistemelor Digitale

Unitate centrală cu microprocesorul 8086 în modul maxim
3X
OC
RDY1
AEN1
8
2
8
4
A
BHE
CLK
RESET
BHE
L
S
3
7
3
RES
A19-16
AD15-0
…
G
READY
MRDC
S2-0
8
0
8
6
S2  0
ALE 8
2
8
DEN 8
DT / R
Memorii
A19-0
Porturi
MWTC
AMWC
IORC
IOWC
AIOWC
INTA
2X
MN /
MX
L
S
2
4
DIR 5
G
D15-0
13
Proiectarea Microsistemelor Digitale

Conectarea microprocesorului 8086 în sisteme multiprocesor
M2
M1
...
I/O1
I/O2
...
Magistrală comună
P1

P2
...
Pm
2 probleme:


sincronizarea între microprocesoare în scopul evitării conflictelor;
cererile sunt întîi sincronizate cu un tact extern de mare frecvenţă şi apoi
intră în arbitru;
arbitrarea cererilor de acces la magistrala comună: arbitrul de magistrală
8289.
14
Proiectarea Microsistemelor Digitale

Circuitul 8289:

Acţionează asupra circuitului 8288:




când arbitrul permite accesul procesorului la magistrala comună, el va activa
linia /AEN; aceasta va permite accesul separatoarelor de pe liniile de adrese
şi date pe magistrala comună; semnalele de comandă vor fi generate, de
către circuitul 8288, în funcţie de tipul de ciclu executat de procesor;
cînd arbitrul nu permite accesul procesorului la magistrala comună, el va
dezactiva semnalul /AEN; circuitul 8288 va trece toate semnalele de comandă
a transferurilor cu resursele de pe magistrala comună în starea lor inactivă,
separatoarele de pe liniile de date şi adrese între magistralele procesorului şi
magistrala comună vor fi trecute în a 3-a stare permiţând astfel accesul altor
procesoare la magistrala comună.
Microprocesorul este introdus în stări de WAIT;
Într-un sistem multimaster este necesară definirea unei priorităţi la
existenţa cererilor de acces simultane la magistrala comună; 3 tehnici:



paralelă,
serială şi
rotativă.
15
Proiectarea Microsistemelor Digitale

Soluţia paralelă:
Vcc
BUSY
CBRQ
Arbitru
8289
2
Arbitru
8289
1
BPRN
BPRO
BPRN
Arbitru
8289
n
BPRO
BPRN
BPRO
. . .
Codificator cu
prioritate
Decodificator
. . .
16
Proiectarea Microsistemelor Digitale

Soluţia serială:
Vcc
BUSY
CBRQ
Arbitru
8289
2
Arbitru
8289
1
BPRN

BPRO
BPRN
Arbitru
8289
n
BPRO
BPRN
BPRO
Soluţia rotativă:


similară cu cea paralelă doar că prioritatea este reasignată în mod dinamic;
codificatorul cu prioritate este înlocuit de un circuit mai complex care roteşte
prioritatea între arbitri care cer acces, asigurând astfel fiecărui arbitru timp
egal pe magistrală.
17
Proiectarea Microsistemelor Digitale

Controlul magistralei comune de către circuitul 8289:






permite accesul la magistrala comună a procesoarelor master de mare şi
mică prioritate;
procesorul cu prioritate mare va putea intra pe magistrala comună atunci
când prezentul deţinător al magistralei îşi încheie ciclul iar procesorul cu
prioritate mai mică va putea intra pe magistrală dacă nici un procesor cu
prioritate mai mare nu o doreşte;
dacă un procesor prioritar deţine magistrala şi dacă un procesor mai puţin
prioritar o doreşte, arbitrul acestuia va activa, la 0 logic, semnalul /CBRQ,
indicându-i procesorului mai prioritar că doreşte magistrala atunci când
aceasta va fi liberă;
configurarea arbitrului 8289 depinde de structura sistemului şi va determina
modul în care preia şi eliberează magistrala comună;
dacă arbitrul este conectat la un procesor care are acces atât la magistrala
comună cât şi la o magistrală rezidentă, arbitrul se va supune tehnicii de
prioritizare doar pentru accesele la magistrala comună;
cedarea magistralei comune poate fi împiedicată de către un procesor, prin
intermediul semnalului /LOCK; semnalul este folosit pentru a proteja secvenţe
critice de cod, de ex.: lucrul cu semafoare, transferurile cu harddiskul,
secvenţă de refresh etc
18
Proiectarea Microsistemelor Digitale

Modul Single Bus:
1
RESB
IOB
RDY1
LOCK
CLK
DIR
S2
8
2
8
4 READY
A CLK
S1
8
2
8
9
BUSY
CBRQ
BPRO
BPRN
BREQ
S0
AEN
BCLR
AEN 1
AEN
S2
S0
CLK
READY
8
0
8
6
MN /
MX
S2
S1
S0
CLK
DEN
DT / R
ALE
MRDC
MWTC
S1
8
2
8
8
AMWC
IORC
IOWC
AIOWC
IOB
INTA
LOCK
OC
BHE
A19-16
AD15-0
G
G
DIR
L
S
3
7
3
L
S
2
4
5
M
A
g.
BHE
c
o
m
u
n
a
A19-0
AD15-0
19
Proiectarea Microsistemelor Digitale

Modul IOB (facultativ):
XACK
XACK
RDY1
AEN1
RDY2
8
2 AEN 2
8
4
READY
A
CLK
Comenzi
ptr.
I/E
CLK
8
2
8
9
READY
CLK
8
0
8
9
S2  0
A19-16
AD15-0
M
a
g.
Control
S2  0
AEN
IOB
RESB
S2  0
AEN
CLK
8
2
8
8
ALE
Comenzi
ptr.
memorii
IOB
PDEN
1
DEN DT / R
d
e
G
OC
I
/
E
L
S
3
7
3
Adrese
L
S
2
4
5
Adrese
L
S
3
7
3
DIR
G
Date
G
OC
M
a
g.
c
o
m
u
n
a
DIR
G
L
S
2
4
5
Date
20
Proiectarea Microsistemelor Digitale

Modul RESB (facultativ):
XACK
RDY1
XACK
RDY2
8
2
8
AEN1 4 AEN2
A
READY
CLK
READY
CLK
S2  0
8
0
8
6
Control
CLK
S2  0
AEN
8
2
8
9
A19-16
AD15-0
AEN
CEN
8
2
8
8
CLK
S2  0
DT / R
DEN
ALE
M
a
g
i
s
t
r
a
l
a
SYSB /
RESB
AEN
CEN
CLK
S2  0
8
2
8
8
DT / R
DEN
c
o
m
u
n
a
ALE
D
E
C
OC
r
e
z
i
d
e
n
t
a
IOB
Comenzi
Comenzi
M
a
g
i
s
t
r
a
l
a
RESB
Adrese
G
Date
G
OC
L
S
3
7
3
DIR
L
S
2
4
5
G
L
S
3
7
3
G
Adrese
DIR
L
S
2
4
5
Date
21
Proiectarea Microsistemelor Digitale

Conectarea la 2 magistrale comune (facultativ):
XACK
RDY1
XACK
AEN 1
RDY2
AEN 2
READY
CLK
8
2
8
4
A
8
0
8
6
S2  0
A19-16
A15-0
M
a
g.
M
a
g.
m
u
l
t
i
m
a
s
t
e
r
2
Control
8
2
8
9
SYSB /
RESB
CEN
Comenzi
CLK
S2  0
DT / R
DEN
ALE
G
OC
D
E
C
SYSB /
RESB
L
S
2
4
5
AEN
CEN
AEN
Comenzi
CLK
S2  0
DT / R
DEN
8
2
8
8
mu
l
t
i
m
a
s
t
e
r
1
ALE
G
OC
Adrese
L
S
3
7
3
DIR
G
Control
8
2
8
9
S2  0
L
S
3
7
3
Adrese
Date
AEN
AEN
8
2
8
8
CLK
CLK
S2  0
DIR
G
L
S
2
4
5
Date
22
Proiectarea Microsistemelor Digitale
2.3.3. Unitate centrală cu microprocesorul 80386 (facultativ)

Circuitul 74x244
1A1
1Y1
1A2
1Y2
1A3
1Y3
1A4
1Y4
1G
2A1
2Y1
2A2
2Y2
2A3
2Y3
2A4
2Y4
2G
23
Proiectarea Microsistemelor Digitale
V CC

Unitate centrală
D0-7
.
.
.
B7
D8-15
.
.
B7
2
4
5
.
.
B7
.
.
.
A7
G
DIR
A0
2
4
5
.
.
.
A7
G
DIR
B0
.
A0
A0
B0
.
D16-23
BS16
B0
D0
.
.
.
D7
A2
.
.
.
A9
.
.
.
A7
G
DIR
.
.
4 .
.
4 .
A7 Y7
A2-9
1G
2G
D8
.
.
.
D15
A10
.
.
.
A17
3
8
6
D16
.
.
.
D23
A0
.
.
.
A7
Y0
2
4
4
.
A10-17
.
.
Y7
1G
2G
A0
2
4
5
Y0
2
.
A18
.
.
.
A25
D
X
A0
.
.
.
A7
Y0
2
4
4
.
A18-25
.
.
Y7
1G
2G
D14-31
B0
.
A0
2
.
.
4 .
.
5 .
B7 A7
G
DIR
D24
.
.
.
D31
A26
.
.
.
A31
A0
.
.
.
A7
Y0
2
.
4 .
4Y 6
Y7
A26-31
ADS
LOCK
1G
2G
ASD
HOLD
DLDA
LOCK
NA
BE 0
READY
INTR
NMI
PEREQ
.....
BE 3
W /R
A0
.
D/C
BUSY
M / IO
ERROR
CLK
.
.
A7
1G
Generator de tact
Y0
2
4
4
BE 0  3
.
.
.
Y7
W/R
D/C
M / IO
CLK
2G
24