You are on page 1of 43

CHÆÅNG 5

GHEÏP 8088 VÅÏI BÄÜ NHÅÏ VAÌ TÄØ CHÆÏC


VAÌO/RA DÆÎ LIÃÛU

1. Giåïi thiãûu caïc tên hiãûu cuía 8088 vaì caïc maûch phuû tråü 8284,
8288

1.1. Caïc tên hiãûu cuía 8088

Hçnh 5.1 thãø hiãûn viãûc chia caïc tên hiãûu cuía 8088 theo caïc
nhoïm âãø ta dãù nháûn diãûn. Så âäö bäú trê cuû thãø caïc chán cuía vy xæí lyï
8088 âæåüc thãø hiãûn trong hçnh 5.2.
Sau âáy ta seî thãø hiãûn chæïc nàng cuía tæìng tên hiãûu taûi caïc
chaïn cuû thãø.
IO/ M ( SI ) A/D0
+ ADO - AD7 [I;O : tên
DT/R( S 2hiãûu
) vaìo vaì
A/D1ra] : Caïc chán däön kãnh cho
caïc tên hiãûu pháön tháúpRD cuía bus dæî liãûuA/Dvaì 2 bus âëa chè. Xung ALE seî
baïo cho maûnh ngoaìi biãút khi naìo trãn caïc âæåìng âoï coï tên hiãûu dæî
WR ( LOCK ) A/D 3

liãûu (ALE = 0) hoàûc âëaDEN chè( SO (ALE) = 1). Caïc


A/D4 chán naìy åí traûng thaïi tråí
khaïng cao khi P cháúp nháûnSSO treo. A/D5
READY
+ A8 - A15 [O] :HOLDCaïc( bit pháön caoA/D
RQ / GT 0 )
cuía
A/D7
6
bus âëa chè. Caïc chán naìy
åí traûng thaïi tråí khaïng cao 
khi( RQ / GTcháúp
1 ) nháûn treo.
P
HLDA A8
+ A16/S3, A17/S4, A18/S5,
INTA (QS1) A19/S6A9[O] : Caïc chán däön kãnh cuía
âëa chè pháön cao vaì traûng thaïi. Âëa chè AA16
ALE (QS0) 10
- A19 seî coï màût taûi caïc
NMI A11
chán âoï khi ALE = 1 coìn INTRkhi AEL = 0 thç trãn A12 caïc chán âoï coï caïc tên hiãûu
traûng thaïi S3 - S6. Caïc chán
RESET A13 tråí khaïng cao khi P cháúp
naìy åí traûng thaïi
MN/ MX ) A14
nháûn treo.
TEST A15
CLK A16/S3
Vcc A17/S4
Tên hiãûu GND A18/S5
âiãöu GND P 8088 A19/S6 8 âæåìng
khiãøn däön kãnh
hãû thäúng cuía bus A/D
pháön tháúp
Tên hiãûu
âiãöu
khiãøn
bus
8
âæåìng cuía
Âiãöu bus A
khiãøn pháön cao
CPU

4 âæåìng
Âäöng häö däön kãnh
Vaì cuía bus
nguäön C/Acao

Hçnh 5.1. caïc tên hiãûu cuía 8088 åí chãú âäü MIN vaì (MAX).

Baíng 5.1. caïc bit traûng thaïi vaì viãûc truy nháûp caïc thanh ghi âoaûn.

S4 S3 Truy nháûp âãún


0 0 Âoaûn dæî liãûu phuû
0 1 Âoaûn ngàn xãúp
1 0 Âoaûn maî hoàûc khäng
âoaûn naìo
1 1 Âoaûn dæî liãûu

Bit S6 = 0 liãn tuûc, bit S5 phaín kaïnh giaï trë bit IF cuía thanh ghi
cåì. Hai bit S3 vaì S4 phäúi håüp våïi nhau âãø chè ra viãûc truy nháûp caïc
thanh ghi âoaûn (baíng 5.1)
+ RD [O] : Xung cho pheïp âoüc. Khi RD = 0 thç bus dæî liãûu sàôn
saìng nháûn säú liãûu tæìi bäü nhåï hoàûc thiãút bë ngoaûi vi. Chán RD åí
traûng thaïi tråí khaïng cao khi P cháúp nháûn treo.
+ READY [I] : Tên hiãûu baïo cho CPU biãút tçnh traûng sàôn saìng
cuía thiãút bë ngoaûi vi hay bäü nhåï. Khi READY = 1 thç CPU thæûc ghi/âoüc
maì khäng cáön cheìn thãm caïc chu kyì âåüi. Ngæåüc laûi khi thiãút bë ngoaûi
vi hay bäü nhåï coï täúc âäü hoaût âäüng cháûm, chuïng coï thãø âæa tên hiãûu
READY = 0 âãø baïo cho CPU biãút maì chåì chuïng. Luïc naìy CPU tuåü keïo
daìi thåìi gian thæûc hiãûn lãûnh ghi/âoüc bàòng caïch cheìn thãm caïc chu kyì
âåüi.
Chãú Chãú
âäü âäü
MIN MAX
AND 1 40 Vcc
A14 2 39 A15
A13 3 38 A16/S3
A12 4 37 A16/S4
A11 5 36 A16/S5
A16/S6
A10 6 35
(High)
A9 7 34 MN/)
A8 8 P 33
A/D7 9 32 HOLD (/)
A/D6 Intel
10 31 HLDA (/)
A/D5 8088
11 30 ()
A/D4 12 29 IO/ ()
A/D3 13 28 DT/ ()
A/D2 14 27 ()
A/D1 15 26 ALE (QS0)
A/D0 16 25 (QS1)
NMI 17 24 READY
INTR 18 23 RESET
CLK 19 22
GND 20 21

Hçnh 5.2. Så âäö chán cuía CPU 8088.

+ INTR [I] : Tên hiãûu yãu cáöu ngàõt che âæåüc. Khi coï yãu cáöu
ngàõt maì cåì cho pheïp ngàõt IF = 1 thç CPU kãút thuïc lãûnh âang laìm dåí,
sau âoï noï âi vaìo chu kyì cháúp nháûn ngàõt vaì âæa ra bãn ngoaìi tên hiãûu
INTA = 0.
+ TEST [I] : Tên hiãûu taûi chán naìy âæåüc kiãøm tra båíi lãûnh
WAIT. Khi CPU thæûc hiãûn lãûnh WAIT maì luïc âoï tên hiãûu TEST =1, noï
seî chåì cho âãún khi tên hiãûu TEST = 0 thç måïi thæûc hiãûn lãûnh tiãúp theo.
+ NMI [I] : Tên hiãûu yãu cáöu ngàõt khäng che âæåüc. Tên hiãûu
naìy khäng bë khäúng chãú båíi cåì IF vaì noï seî âæåüc CPU nháûn biãút
bàòng caïc taïc âäüng cuía sæåìn lãn cuía xung yãu cáöu ngàõt. Nháûn âæåüc
yãu cáöu naìy CPU kãút thuïc lãûnh âang laìm dåí, sau âoï noï chuyãøn sang
thæûc hiãûn chæång trçnh phuûc vuû ngàõt kiãøu INT2.
+ RESET [I] : tên hiãûu khåíi âäüng laûi 8088. khi RESET = 1 keïo
daìi êt nháút trong thåìi gian 4 chu kyì âäöng häö thç 8088 bë buäüc phaíi khåíi
âäüng laûi : noï xoaï caïc thanh ghi DS, ES, SS, IP vaì FR vãö 0 vaì bàõt âáöu
thæûc hiãûn chæång trçnh taûi âëa chè CS:IP = FFFF:0000H (chuï yï cåì IF  0
âãø cáúm caïc yãu cáöu ngàõt khaïc taïc âäüng vaìo CPU vaì cåì TF  0 âãø
bäü vi xæí lyï khäng -bë âàût trong chãú âäü chaûy tæng lãûnh).
+ CLK [I] : Tên hiãûu âäöng häö (xung nhëp). Xung nhëp coï âäü
räùng laì 77% vaì cung cáúp nhëp laìm viãûc cho CPU.
+ Vcc [I] : Chán nguäön. Taûi âáy CPU âæåüc cung cáúp
+5V10%.340mA
+ GND [O] : Hai chán nguäön âãø näúi våïi âiãøm OV cuía nguäön
nuäi.
+ MN/MX [I] : Chán âiãöu khiãøn hoaût âäüng cuía CPU theo chãú
âäü MIN/MAX.

Do 8088 coï thãø laìm viãûc åí 2 chãú âäü khaïc nhau nãn coï mäüt säú
chán tên hiãûu phuû thuäüc vaìo caïc chãú âäü âoï.

 Chãú âäü MIN (Chán MN/MX cáön âæåüc näúi


thàóng vaìo +5V maì khäng qua âiãûn tråí !)

Trong chãú âäü MIN táút caí caïc tên hiãûu âiãöu khiãøn liãn quan
âãún caïc thiãút bë ngoaûi vi truyãön thäúng vaì bäü nhåï giäúng nhæ trong hãû
8085 âãöu coï sàôn trong 8088. Vç váûy viãûc phäúi gheïp våïi caïc thiãút bë âoï
seî ráút dãù daìng vaì chênh vç táûn duûng âæåüc caïc phäúi gheïp ngoaûi vi
sàôn nãn coï thãø giaím giaï thaình hãû thäúng.
+ IO/ M [O] : Tên hiãûu naìy phán biãût trong thåìi âiãøm âaî âënh
pháön tæí naìo trong caïc thiãút bë vaìo/ra (IO) hoàûc bäü nhåï (M) âæåüc choün
laìm viãûc våïi CPU. Trãn bus âëa chè luïc âoï seî coï caïc âëa chè tæång æïng
cuía caïc thiãút bë âoï. Chán naìy åí traûng thaïi tråí khaïng cao khi P cháúp
nháûn treo.
+ WR [O] : Xung cho pheïp ghi. Khi CPU âæa ra WR=0 thç trãn bus
dæî liãûu caïc dæî liãûu âaî äøn âënh vaì chuïng seî âæåüc ghi vaìo bäü nhåï
hoàûc thiãút bë ngoaûi vi taûi thåìi âiãøm âoüt biãún WR = 1. Chán WR åí
traûng thaïi tråí khaïng cao khi P cháúp nháûn treo.
+ INTA [O] : Tên hiãûu baïo cho caïc maûch bãn ngoaìi biãút CPU
cháúp nháûn yãu cáöu ngàõt INTR. Luïc naìy CPU âæa ra INTA = 0 âãø baïo laì
noï âang chåí maûch ngoaìi âæa vaìo säú hiãûu ngàõt (kiãøu ngàõt) trãn bus dæî
liãûu.
+ ALE [O] : Xung cho pheïp chäút âëa chè. Khi ALE = 1 coï nghéa laì
trãn bus däön kãnh AD coï caïc âëa chè cuía thiãút bë vaìo/ra hay cuía ä nhåï.
ALE khäng bao giåì bë thaí näúi (trong traûng thaïi tråí khaïng cao) khi CPU bë
treo thç ALE = 0.
+ DT/ R [O] : Tên hiãûu âiãöu khiãøn caïc âãûm 2 chiãöu cuía bus
dæî liãûu âãø choün chiãöu chuyãøn cuía váûn dæî liãûu trãn bus D. Chán naìy
åí traûng thaïi tråí khaïng cao khi P cháúp nháûn treo.
+ DEN [O] : Tên hiãûu baïo cho bãn ngoaìi biãút laì luïc naìy trãn bus
däön kãnh AD coï dæî liãûu äøn âënh. Chán naìy åí traûng thaïi tråí khaïng cao
khi P cháúp nháûn treo.
+ HOLD [I] : Tên hiãûu yãu cáöu treo CPU âãø machj ngoaìi thæûc
hiãûn viãûc trao âäøi dæî liãûu våïi bäü nhåï bàòng caïch thám nháûp træûc
tiãúp (direct memory access, DMA). Khi HOLD = 1. CPU 8088 seî tæû taïch ra
hãû thäúng bàòng caïch treo táút caí caïc bus A, bus D, bus C cuía noï ( caïc bus
åí traûng thaïi tråí khaïng cao) âãø bäü âiãöu khiãøn DMA (DMA contrroller,
DMAC) coï thãø láúy âæåüc quyãön âiãöu khiãøn hãû thäúng âãø laìm caïc
cäng viãûc trao âäøi dæî liãûu.

Baíng 5.2. Caïc chu kyì cuía bus qua caïc tên hiãûu SS0 , IO/ M , DT/ R

Chu kyì âiãöu khiãøn


IO/ M DT/ R SS0
cuía bus
0 0 0 Âoüc maî lãûnh
0 0 1 Âoüc bäü nhåï
0 1 0 Ghi bäü nhåï
0 1 1 Bus räé (nghé)
Cháúp nháûn yãu cáöu
1 0 0
ngàõt
1 0 1 Âoüc thiãút bë ngoaûi vi
1 1 0 Ghi thiãút bë ngoaûi vi
1 1 1 Dæìng (halt)

+ HLDA [O] : Tên hiãûu baïo cho bãn ngoaìi biãút yãu cáöu treo CPU
âãø duìng caïc bus âaî âæåüc cháúp nháûn , vaì CPU 8088 âaî treo caïc bus A,
bus D vaì mäüt säú tên hiãûu cuía bus C.
+ SSO [O] : Tên hiãûu traûng thaïi. Tên hiãûu naìy giäúng nhæ SO
trong chãú âäü MAX vaì âæåüc duìng kãút håüp våïi IO/M vaì DT/ R âãø giaíi
maî caïc chu kyì hoaût âäüng cuía bus (xem baíng 5.2).

 Chãú âäü MAX (Chán MN/MX näúi âáút)

Trong chãú âäü MAX mäüt säú tên hiãûu âiãöu khiãøn cáön thiãút
âæåüc taûo ra trãn cå såí caïc tên hiãûu traûng thaïi nhåì duìng thãm åí bãn
ngoaìi mäüt maûch âiãöu khiãøn bus 8288. Chãú âäü MAX âæåüc sæí duûng
khi trong hãû thäúng coï màût bäü âäöng xæí lyï toaïn hoüc 8087
+ S 2, S1 vaì S 0 [O] : Caïc chán traûng thaïi duìng trong chãú âäü
MAX âãø gheïp våïi maûch âiãöu khiãøn bus 8288. Caïc tên hiãûu naìy âæåüc
8288 duìng âãø taûo ra caïc tên hiãûu âiãöu khiãøn trong caïc chu kyì hoaût
âäüng cuía bus. Caïc tên hiãûu âiãöu khiãøn âoï âæåüc chè ra trong baíng 5.3.

Baíng 5.3. Caïc tên hiãûu âiãöu khiãøn cuía 8288.

Chu kyì âiãöu khiãøn


S2 S1 S0 Tên hiãûu
cuía bus
Cháúp nháûn yãu cáöu
0 0 0 INTA
ngàõt
0 0 1 Âoüc thiãút bë ngoaûi vi IORC
0 1 0 Ghi thiãút bë ngoaûi vi IOWC, AIOWC
0 1 1 Dæìng (halt) Khäng
1 0 0 Âoüc maî lãûnh MRDC
1 0 1 Âoüc bäü nhåï MRDC
MWTC,
1 1 0 Ghi bäü nhåï
AMWC
1 1 1 Bus räùi (nghé) Khäng

+ RQ / GT 0 vaì RQ / GT 1 [I/O] : Caïc tên hiãûu yãu cáöu duìng bus


cuía caïc bäü xæí lyï khaïc hoàûc thäng baïo cháúp nháûn treo cuía CPU âãø cho
caïc bäü vi xæí lyï khaïc duìng bus. RQ / GT 0 coï mæïc æu tiãn hån RQ / GT 1 .
+ LOCK [O] : Tên hiãûu do CPU âæa ra âãø cáúm caïc bäü xæí lyï
khaïc trong hãû thäúng duìng bus trong khi noï âang thi haình mäüt lãûnh naìo
âoï âàût sau tiãúp âáöu LOCK.
+ QS0 vaì QS1 [O] : Tên hiãûu thäng baïo caïc traûng thaïi khaïc nhau
cuía âãûm lãûnh (haìng âåüi lãûnh). Baíng 5.4 cho biãút caïc traûng thaïi cuía
âãûm lãûnh âæåüc maî hoaï bàòng caïc tên hiãûu trãn.
Trong hãû vi xæí lyï våïi sæû coï màût cuía bäü âäöng häö xæí lyï
toaïn hoüc 8087, caïc tên hiãûu naìy âæåüc maûch 8087 duìng âãø âäöng bäü
quaï trçnh hoaût däüng cuía noï våïi bäü vi xæí lyï 8088.

Baíng 5.4. Caïc traûng thaïi cuía lãûnh âãûm

QS1 QS0 Traûng thaïi lãûnh âãûm


0 0 Khäng hoaût âäüng
0 1 Âoüc byte maî lãûnh âáöu tiãn tæì
âãûm lãûnh
1 0 Âoüc lãûnh räùng
1 1 Âoüc byte tiãúp theo tæì âãûm
lãûnh

1.2. Phán kãnh âãø taïch thäng tin vaì viãûc âãûm cho caïc bus
Âãø giaím båït khoï khàn vãö màût cäng nghãû do viãûc phaíi chãú
taûo nhiãöu chán cho caïc tên hiãûu cuía vi maûch CPU, ngæåìi ta âaî tçm caïch
haûn chãú säú chán cuía vi maûch bàòng caïch däön kãnh nhiãöu tên hiãûu trãn
cuìng mäüt chán. Vê duû caïc chán AD0 - AD8 cuía 8088 âæåüc däön kãnh âãø
coï thãø âæa ra bãn ngoaìi caïc thäng tin vãö âëa chè pháön tháúp vaì dæî liãûu
pháön tháúp. Khi nháûn âæåüc caïc tên hiãûu âoï åí bãn ngoaìi vi maûch, ta
phaíi tiãún haình taïch caïc tên hiãûu âãø taïi taûo laûi caïc tên hiãûu gäúc cho
caïc bus âäüc láûp (bus âëa chè vaì bus dæî liãûu). Viãûc naìy thæûc hiãûn
bàòng caïch sæí duûng caïc vi maûch chæïc nàng thêch håüp åí bãn ngoaìi
(thäng thæåìng thç âoï laì caïc maûch chäút). Ta cuîng phaíi laìm tæång tæû nhæ
váûy âäúi våïi caïc chán däön âëa chè/traûng thaïi. Âãø häù tråü cho viãûc taïch
thäng tin naìy, CPU âæa ra thãm xung ALE sao cho khi ALE åí mæïc cao seî
coï taïc duûng baïo cho bãn ngoaìi biãút luïc naìy thäng tin vãö âëa chè taûi caïc
chán däön kãnh coï giaï trë. Xung ALE âæåüc duìng âãø måí caïc maûch chäút
vaì taïch âæåüc caïc thäng tin vãö âëa chè bë däön kãnh.
Muäún náng cao taíi cuía caïc bus âãø âaím nháûn viãûc nuäi caïc
maûch bãn ngoaìi. Caïc tên hiãûu ra vaì vaìo CPU cáön phaíi âæåüc khuãúch
âaûi thäng qua caïc maûch âãûm mäüt chiãöu hoàûc hai chiãöu våïi caïc âáöu ra
thæåìng hoàûc âáöu ra 3 traûng thaïi.
Hçnh 5.3 cho tháúy mäüt vê duû âån giaín caïc täø chæïc viãûc taïch
tên hiãûu âëa chè tæì caïc tên hiãûu däön kãnh chè/dæî liãûu hoàûc âëa
chè/âiãöu khiãøn bàòng caïc maûch chäút 74LS373 vaì viãûc sæí duûng caïc bäü
khuãúch âaûi âãûm 74LS244 vaì 74LS245 cho caïc tên hiãûu cuía bäü vi xæí lyï
8088 laìm viãûc åí chãú âäü MIN.
Hçnh 5.5 cung cáúp cho ta hçnh aính tè mè hån vãö caïch täø chæïc
cuû thãø khaïc cuía bus âëa chè, dæî liãûu vaì âiãöu khiãøn thäng qua læåüc âäö
cuía maïy IBM PC/XT. Trong âoï bäü vi xæí lyï 8088 laìm viãûc åí chãú âäü
MAX.
Bãn caûch CPU trãn hçnh 5.4 ta coìn tháúy sæû coï màût cuía caïc
maûch phuû tråü cuía intel nhæ :
+ Bäü âiãöu khiãøn bus 8288.
+ Bäü taûo ra caïc xung âäöng häö 8284.
+ Bäü phäúi gheïp ngoaûi vi song song 8255.
+ Bäü âiãöu khiãøn trao âäøi dæî liãûu bàòng caïch thám nháûp træûc
tiãúp vaìo bäü nhåï 8237.
+ Bäü âiãöu khiãøn ngàõt æu tiãn 8259.
+ Bäü âãúm/âënh thåìi gian 8253 vaì
+ Chäù càõm daình cho bäü âäöng xæí lyï toaïn hoüc 8087.
Mäüt säú maûch trong caïc maûch kãø trãn cuîng seî âæåüc giåïi
thiãûu trong chæång trçnh naìy vaì caïc chæång trçnh sau âãø ta coï thãø hiãøu
âæåüc hoaût âäüng cuía tæìng hãû.
Trãn så âäö naìy ta cuîng tháúy viãûc sæí duûng caïc maûch chäút vaì
maûch khuãúch âaûi âãûm thäng duûng ( caïc maûch 74LS373, 74LS244 vaì
74LS245) taûi nhæîng chäù cáön thiãút cuía bus âëa chè, bus dæî liãûu vaì bus
âiãöu khiãøn nhæ âaî noïi åí trãn.
IO/ IO/
M M
RD RD
WR WR

A19/S A19
6 A18
A18/S A17
5 A16
A17/S
4
A16/S OC1 Bus
3 LS244 A15 âiãöu
A14 khiãøn
A13
A12
A15 A11
A14 LS373 A10
A13 G/ OC A9
A12 A8
A11
A10 A7
A9 OC1, 2 A6
A8 A5
LS244 A4
A3 Bus
A2 Âëa
A1 chè
A0

ALE D7
D6
D5
D4
A7 D3
A6 D2
A5 D1
A4 D0
A3
A2
A1
A0
LS373
G OC

LS245

Bus
Dæî
G DI liãûu
R

Hçnh 5.3. Bus hãû thäúng coï khuãúch âaûi âãûm.

1.3. Maûch taûo xung nhëp 8284.

Cho duì laìm viãûc trong chãú âäü MIN hay MAX, CPU 8088 luän
cáön xung nhëp (xung âäöng häö) tæì maûch taûo xung nhip 8284. Maûch taûo
xung nhëp khäng nhæîng cung cáúp xung nhëp våïi táön säú thêch håüp cho
toaìn hãû maì noï coìn coï aính hæåíng tåïi viãûc âäöng bäü tên hiãûu RESET
vaì tên hiãûu READY cuía CPU.
YÏ nghéa cuía caïc tên hiãûu

+ AEN1 , AEN 2 : Tên hiãûu cho pheïp choün âáöu vaìo tæång æïng
RDY1, RDY2 laìm tên hiãûu baïo tçnh traûng sàôn saìng cuía bäü nhåï hoàûc
thiãút bë ngoaûi vi.
+ RDY1, RDY2 : cuìng våïi AEN1 , AEN 2 duìng âãø gáy ra caïc chu
kyì âåüi åí CPU.
+ ASYNC : Choün âäöng bäü hai táöng hoàûc âäöng bäü mäüt táöng
cho tên hiãûu RDY1, RDY2. Trong chãú âäü âäöng bäü mäüt táöng ( ASYNC =
1) tên hiãûu RDY coï aính hæåíng âãún tên hiãûu READY tåïi táûn sæåìn
xuäúng cuía xung âäöng häö tiãúp theo. Coìn trong chãú âäü âäöng bäü hai
táöng ( ASYNC = 0) tên hiãûu RDY chè coï aính hæåíng âãún tên hiãûu READY
khi coï sæåìn xuäúng cuía xung âäöng häö tiãúp theo.
+ READY : Näúi âãún âáöu READY cuía CPU. Tên hiãûu naìy âæåüc
âäöng bäü våïi caïc tên hiãûu RDY1, RDY2.
+ X1, X2 : Näúi våïi hai chán cuía thaûch anh våïi táön säú f x, thaûch
anh naìy laì mäüt bäü pháûn cuía mäüt maûch dao âäüng bãn trong 8284 coï
nhiãûm vuû taûo xung chuáøn duìng laìm tên hiãûu âäöng häö cho toaìn hãû
thäúng.
+ F/ C : Duìng âãø choün nguäön tên hiãûu chuáøn cho 8284. Khi
chán naìy åí mæïc cao thç xung âäöng häö bãn ngoaìi seî âæåüc duìng laìm xung
nhëp cho 8284, ngæåüc laûi thç xung âäöng häö cuía maûch dao âäüng bãn
trong duìng thaûch anh seî âæåüc choün âãø laìm xung nhëp.
+ EFI : läúi vaìo cho xung tæì bäü dao âäüng ngoaûi.
+ CLK : Xung nhëp fCLK=fx/3våïi âäü räùng 77% näúi âãún chán cuía
CLK cuía 8088.
+ PCLK : Xung nhëp fCLK=fx/6våïi âäü räùng 50% daình cho thiãút bë
ngoaûi vi.
+ OSC : Xung nhëp âaî âæåüc khuãúch âaûi coï táön säú bàòng f x cuía
bäü dao âäüng.
+ RES : Chán khåíi âäüng, näúi våïi maûch RC âãø 8284 âãø tæû
khåíi âäüng khi báût nguäön.
+ RESET : Näúi vaìo RESETcuía 8088 vaì laì tên hiãûu khåíi âäüng
laûi cho toaìn hãû
+ CSYNC : Läúi vaìo cho xung âäöng bäü chung khi trong hãû thäúng
coï caïc 8284 duìng dao âäüng ngoaìi taûi chán naìy (hçnh 5.6)
+ Hçnh 5.6 biãøu diãùn caïc âæåìng näúi tên hiãûu chênh cuía 8088
vaì 8284. Maûch 8284 nháûn âæåüc xung khåíi âäüng tæì bãn ngoaìi thäng qua
maûch RC khi bàõt âáöu báût âiãûn
X1 CLK CLK
X2
+5V 8088
8284
10k RESET
RES RESET
K +F/ C
CSYNC
Khåíi âäüng hãû thäúng

Hçnh 5.6. Maûch 8284 näúi våïi 8088.

hoàûc xung khåíi âäüng laûi khi báúm cäng tàõc K. Tæì xung naìy 8284 coï
nhiãûm vuû âæa ra xung khåíi âäüng âäöng bäü cho CPU cuìng våïi táút caí caïc
thaình pháön khaïc cuía hãû thäúng.
1.4. Maûch âiãöu khiãøn bus 8288
Nhæ âaî giåïi thiãûu åí pháön træåïc, AENvi maûch
: address8288
enablelaì maûch âiãöu
khiãøn bus, noï láúy 1 säú tên hiãûu CEN : command enable
Vccâiãöu khiãøn cuía CPU vaì cung cáúp táút
IOB 1 20 IOB : input/output bus mode
caí caïc tên
CLK
hiãûu âiãöu khiãøn cáön
S 0thiãút cho hãû vi xæí lyï khi CPU 808aìm
MRDC : memory read comm
2 19 S2
viãûc åí chãú
S1 âäü MAX.
3 18 MWTC : memory write comm
MCE/ PDEN
Så R
DT/ âäö chán
4 vaì caïc17tên DEN
hiãûu cuía 8288
AMWC âæåüc thãø MWTC
: advanced hiãûn trãn hçnh
5.7. ALE 5 16 CEN IORC : i/o read command
AEN 6 15 IOWC : i/o write command
Caïc
AMWC 7
tên hiãûu chênh14cuíaINTA
8288 bao gäöm :
AIOWC : advanced IOWC
IORC
MWTC 8 13 AIOWC DT/ R : data transmit/receive
GND 9 12 IOWC DEN : data enable
10 11
8288

MCE/PDEN : master cascade enable/peripheral data enable


Hçnh 5.7. Maûch taûo xung âiãöu khiãøn 8288.

+ S 2 , S1 , S [I, I, I] : laì caïc tên hiãûu traûng thaïi láúy thàóng tæì
0

CPU. Tuyì theo caïc tên hiãûu naìy maì maûch 8288 seî taûo ra caïc tên hiãûu
âiãöu khiãøn khaïc nhau taûi caïc chán ra cuía noï âãø âiãöu khiãøn hoaût âäüng
cuía caïc thiãút bë näúi våïi CPU. Baíng 5.3 mä taí caïc tên hiãûu vaìo vaì ra âoï.
+ CLK [I] : Âáy laì âáöu vaìo näúi våïi xung âäöng häö hãû thäúng
(tæì maûch 8284) vaì duìng âãø âäöng bäü toaìn bäü caïc xung âiãöu khiãøn âi
ra tæì maûch 8288.
+ CEN [I] : Laì tên hiãûu âáöu vaìo âãø cho pheïp âæa ra tên hiãûu
DEN vaì caïc tên hiãûu âiãöu khiãøn khaïc cuía 8288.
+ IOB [I] : tên hiãûu âãø âiãöu khiãøn maûch 8288 laìm viãûc åí caïc
chãú âäü bus khaïc nhau.
Khi IOB = 1 8288 laìm viãûc åí chãú âäü bus vaìo/ra, khi IOB = 0
maûch 8288 laìm viãûc åí chãú âäü bus hãû thäúng (nhæ trong caïc maïy IBM
PC).
+ MRDC [O] : tên hiãûu âiãöu khiãøn âoüc bäü nhåï. Noï kêch hoaût
bäü nhåï âæa dæî liãûu ra bus.
+ MWTC [O] AMWC [O] : laì caïc tên hiãûu âiãöu khiãøn ghi bäü nhåï
hoàûc ghi bäü nhåï keïo daìi.
Âoï thæûc cháút laì caïc tên hiãûu giäúng nhæ MEMW , nhæng
AMWC (advanced memory write command) hoaût âäüng såïm lãn mäüt chuït
âãø taûo ra khaí nàng cho caïc bäü nhåï cháûm coï thãm âæåüc thåìi gian ghi.

+ IORC [O] : tên hiãûu âiãöu khiãøn âoüc thiãút bë ngoaûi vi. Noï
kêch hoaût caïc thiãút bë âæåüc choün âãø caïc thiãút bë naìy âæa dæî liãûu ra
bus.
+ IOWC [O] AIOWC [O] : laì caïc tên hiãûu âiãöu khiãøn âoüc thiãút bë
ngoaûi vi hoàûc âoüc thiãút bë ngoaûi vi keïo daìi.
Âoï thæûc cháút laì caïc tên hiãûu giäúng nhæ IOW , nhæng AIOWC
(advanced I/O write command) hoaût âäüng såïm lãn mäüt chuït âãø taûo ra khaí
nàng cho caïc bäü nhåï cháûm coï thãm âæåüc thåìi gian ghi.
+ INTA [O] : laì âáöu ra âãø thäng nbaos laì CPU cháúp nháûn yãu
cáöu ngàõt cuía thiãút bë ngoaûi vi vaì luïc naìy caïc thiãút bë ngoaûi vi phaíi
âæa ra säú hiãûu ngàõt ra bus âãø CPU âoüc.
+ DT/ R [O] : laì tên hiãûu âãø âiãöu khiãøn hæåïng âi cuía dæî liãûu
trong hãû vaìo hay ra so våïi CPU (DT/ R = 0 : CPU âoüc dæî liãûu, DT/ R = 1
CPU ghi dæî liãûu).
Trong caïc maïy IBM PC thç tên hiãûu naìy âæåüc näúi âãún caïc
chán DIR cuía maûch âãûm 2 chiãöu 74LS245 âãø âiãöu khiãøn dæî liãûu âi tæì
CPU âãún bus hãû thäúng khi ghi hoàûc ngæåüc laûi, tæì bus hãû thäúng âãún
CPU khi âoüc.

+ DEN [O] : âáy laì tên hiãûu âãø âiãöu khiãøn bus dæî liãûu tråí
thaình bus cuûc bäü hay bus hãû thäúng.
Trong caïc maïy IBM PC thç tên hiãûu naìy âæåüc sæí duûng cuìng
våïi tên hiãûu cuía maûch âiãöu khiãøn ngàõt PIC 8259 âãø taûo ra tên hiãûu
âiãöu khiãøn cæûc G cuía maûch âãûm 2 chiãöu 74LS245.

+ MCE/ PDEN [O] : âáy laì tên hiãûu duìng âãø âënh chãú âäü laìm
viãûc cho maûch âiãöu khiãøn ngàõt PIC 8259 âãø noï laìm viãûc åí chãú âäü
chuí.

+ ALE [O] : âáy laì tên hiãûu cho pheïp chäút âëa chè taûi caïc chán
däön kãnh âëa chè - dæî liãûu AD0 - AD7, tên hiãûu naìy thæåìng âæåüc näúi
våïi chán G cuía maûch 74LS373 âãø âiãöu khiãøn maûch naìy chäút láúy âëa
chè.
1.5. Biãøu âäö thåìi gian cuía caïc lãûnh ghi/âoüc

Trãn hçnh 5.8 vaì 5.9 laì caïc biãøu âäö thåìi gian âaî âæåüc âån giaín
hoaï cuía caïc tên hiãûu cå baín trong CPU 8088 cho caïc lãûnh ghi/âoüc bäü
nhåï hoàûc thiãút bë ngoaûi vi.
Trong træåìng håüp bçnh thæåìng mäüt chu kyì ghi/âoüc (coìn goüi laì
chu kyì bus) cuía CPU keïo daìi 4 chu kyì âäöng häö. Caïc chu kyì âäöng häö
âæåüc âaïnh dáúu laì T1, T2, T3 vaì T4. Nãúu CPU laìm viãûc våïi táön säú
âäöng häö 5MHz thç mäüt chu kyì âäöng häö keïo daìi T=200ns vaì mäüt chu
kyì bus keïo daìi 4*T=800ns.
Mäüt chu kyì cuía
bus
T1 T2 T3 T4
CLK

Tw
ALE
A/S
Âëa chè Tên hiãûu traûng
A16/S3
A19/S6
thaïi

A
Âëa chè äøn âënh
(A8-A15)

A/D
(AD0-AD7 Âëa chè Dæî liãûu ghi
tgiæî W
TWr
WR

DEN

Hçnh 5.8. Caïc tên hiãûu cuía CPU 8088 trong chu kyì ghi âån giaín hoaï.
Mäüt chu kyì cuía
bus
T1 T2 T3 T4
CLK

Tw
ALE ttrãùâëachè

ADRS Âëa chè Tên hiãûu traûng


A16/S3 thaïi
A19/S6

ADR
Âëa chè äøn âënh
(A8-A15)
tgiæîK
ADRD
(AD0-AD7 Âëa chè Dæî liãûu âoüc

TWr
RD

DEN

Hçnh 5.9. Caïc tên hiãûu cuía CPU 8088 trong chu kyì âoüc âån giaín hoaï.

Chuïng ta mä taí toïm tàõt caïc hiãûn tæåüng xaíy ra trong mäüt chu
kyì T noïi trãn.

+ Chu kyì T1 :
Trong chu kyì naìy âëa chè cuía bäü nhåï hay thiãút bë ngoaûi vi
âæåüc âæa ra trãn caïc âæåìng âëa chè, hoàûc âëa chè/dæî liãûu vaì âëa chè/
traûng thaïi. Caïc tên hiãûu âiãöu khiãøn ALE. DT/ R . IO/ M cungx âæåüc âæa
ra âãø giuïp viãûc hoaìn táút viãûc giæî thäng tin âëa chè naìy.

+ Chu kyì T2 :
Trong chu naìy CPU âæa ra caïc tên hiãûu âiãöu khiãøn RD hoàûc
WR . DEN vaì tên hiãûu dæî liãûu trãn D0 - D7 nãúu laì lãûnh ghi. DEN
thæåìng duìng âãø måí caïc bäü âãûm cuía bus dæî liãûu nãúu nhæ chuïng âæåüc
duìng trong hãû. Taûi cuäúi kyì T2 (vaì giæîa mäùi chu kyì T cuía T w , nãúu coï)
CPU láúy máùu tên hiãûu READY âãø xæí lyï trong chu kyì tiãúp theo khi noï
phaíi laìm viãûc våïi bäü nhåï hoàûc thiãút bë ngoaûi vi cháûm.

+ Chu kyì T3 :
Trong chu kyì naìy CPU daình thåìi giåì cho bäü nhåï hay thiãút bë
ngoaûi vi khi nháûp dæî liãûu. Nãúu laì chu kyì âoüc dæî liãûu thç taûi cuäúi T3
CPU seî láúy máùu tên hiãûu cuía bus dæî liãûu.
Nãúu taûi cuäúi chu kyì âäöng häö T2 (hoàûc giæîa mäùi chu kyì T
cuía Tw) maì CPU phaït hiãûn ra tên hiãûu READY=0 (do bäü nhåï hay thiãút bë
ngoaûi vi âæa âãún) thç CPU tæû xen vaìo sau T3 mäüt vaìi chu kyì T âãø taûo
chu kyì âåüi Tw = n*T nhàòm keïo daìi thåìi gian thæûc hiãûn lãûnh, taûo âiãöu
kiãûn cho bäü nhåï hoàûc thiãút bë ngoaûi vi. coï âuí thåìi gian hoaìn táút viãûc
ghi/âoüc dæî liãûu.

+ Chu kyì T4 :
Trong chu kyì naìy caïc tên hiãûu trãn bus âæåüc giaíi hoaût (âæa vãö
traûng thaïi khäng têch cæûc) âãø chuáøn bë cho chu kyì bus måïi. Tên hiãûu
WR trong khi chuyãøn traûng thaïi tæì 0 lãn 1 seî kêch hoaût âäüng quaï trçnh
âæa vaìo bäü nhåï hay thiãút bë ngoaûi vi.
Trãn caïc hçnh veî 5.8 vaì 5.9 cuîng biãøu diãùn caïc thäng säú quang
troüng vãö màût thåìi gian liãn quan âãún täúc âäü hoaût âäüng täúi thiãøu cáön
thiãút cuía caïc bäü nhåï hoàûc thiãút bë ngoaûi vi nãúu chuïng muäún laìm
viãûc våïi CPU 5MHz.
Trong biãøu âäö thåìi gian âoüc (hçnh 5.9) ta tháúy viãûc truy nháûp
bäü nhåï keïo daìi trong khoaíng thåìi gian tæì T1 - T3 (gáön 3 chu kyì âäöng
häö 3*T = 600 ms). Trong täøng säú thåìi gian naìy phaíi tênh âãún thåìi gian
trãù khi chuyãön âëa chè ttrãù dëa chè = 110ns, thåìi gian giæî cuía dæî liãûu khi
âoüc tgiæîR = 30 ns vaì thåìi gian trãù do viãûc truyãön tên hiãûu qua caïc maûch
âãûm nhiãöu nháút laì ttrãù âãûm = 40ns. Nhæ váûy caïc bäü nhåï näúi våïi 8088 -
5MHz cáön phaíi coï thåìi gian thám nháûp nhoí hån :

3*T - ttrãù dëa chè - tgiæîR - ttrãù âãûm = 600 - 110 - 30 - 40 = 420ns.

Màût khaïc våïi CPU 8088 5MHz thç âäü räüng xung âoüc laì T RD =
325ns, âoï laì thåìi gian âuí daìi âãø cho bäü nhåï våïi thåìi gian thám nháûp cåî
420ns laìm viãûc.

Trong biãøu âäö thåìi gian ghi ( hçnh 5.8) ta tháúy phaíi coï mäüt thåìi
gian giæî dæî liãûu täúi thiãøu âãø ghi t giæîW = 88ns sau khi WR âäüt biãún tæì 0
lãn 1. trong thæûc tãú thåìi gian naìy gáön nhæ bàòng 0 âäúi våïi bäü nhåï thäng
duûng. Âäü daìi cuía xung ghi âäúi våïi CPU 8088 - 5MHz laì T WR = 340ns
cuîng laì phuì håüp våïi caïc bäü nhåï våïi thåìi gian thám nháûp cåî 450ns.
Trãn hçnh 5.10 laì mäüt maûch duìng âãø xem thãm chu kyì âåüi våïi
thåìi gian âåüi tuyì choün nT (n=0-7). Bàòng caïch thay âäøi âáöu näúi âãún caïc
âáöu ra cuía maûch vaìo song song ra näúi tiãúp 74LS164 cho âãún khi coï
sæåìn dæång cuía T2.
2. Phäúi gheïp 8088 våïi bäü nhåï
2.1. Bäü nhåï baïn dáùn
Træåïc khi noïi vãö phäúi gheïp 8088 våïi bäü nhåï ta noïi qua mäüt
chuït vãö caïc bäü nhåï baïn dáùn thæåìng duìng våïi bäü vi xæí lyï.

Caïc bäü nhåï baïn dáùn thæåìng duìng våïi bäü vi xæí lyï bao gäöm :

+ Bäü nhåï cäú âënh ROM (read only memory, bäü nhåï coï näüi dung
ghi sàôn chè âãø âoüc ra). Thäng tin ghi trong maûch khäng bë máút khi máút
nguäön âiãûn nuäi cho maûch.
+ Bäü nhåï baïn cäú âënh EPROM (aerraseble programmable ROM laì
bäü nhåï ROM coï thãø láûp trçnh âæåüc bàòng xung âiãûn vaì xoaï âæåüc
bàòng tia cæûc têm).
+ Bäü nhåï khäng cäú âënh RAM ( random access memory, bäü nhåï
ghi/âoüc) thäng tin ghi trong maûch bë máút khi máút nguäön âiãûn nuäi cho
maûch. Trong caïc bäü nhåï RAM ta coìn phán biãût ra loaûi RAM ténh (stiatic
RAM hay SRAM, trogn âoï mäùi pháön tæí nhoí laì mäüt maûch láût hay traûng
thaïi äøn âënh) vaì loaûi RAM âäüng (dyamic RAM hay DRAM, trong âoï mäùi
pháön tæí nhåï laì mäüt tuû âiãûn ráút nhoí âæåüc chãú taûo bàòng cäng nghãû
MOS).

Mäüt bäü nhåï thæåìng âæåüc chãú taûo nãn tæì nhiãöu vi maûch nhåï.
Mäüt vi maûch nhåï thæåìng coï daûng cáúu truïc tiãu biãøu nhæ sau (hçnh
5.11)

Tên A0 D0 Tên
hiãû A1 D1 hiãû
u A2 D2 u
âëa Am Dn dæî
chè liãû
u

WR CS OE WR : Write
WE : write enable
OE : Output enable
CS : Chip select
RD : Read
Choün voí RD
Hçnh 5.11. så âäö khäúi 1 vi maûch nhåï.
Theo så âäö khäúi naìy ta tháúy mäüt lvi maûnh nhåï coï caïc nhoïm tên hiãûu
sau :
 Nhoïm tên hiãûu âëa chè :

Caïc tên hiãûu âëa chè coï taïc duûng choün ra mäüt ä nhåï (tæì nhåï
cuû thãø âãø ghi/âoüc. Caïc ä nhåï coï âäü daìi khaïc nhau tuyì theo nhaì saín
xuáút : 1, 4, 8, bit. Säú âæåìng tên hiãûu âëa chè coï liãn quan âãún dung læåüng
cuía maûch nhåï. Våïi mäüt maûch nhåï coï m bit âëa chè thç dung læåüng cuía
maûnh nhåï âoï laì 2m tæì nhåï. Vê duû, våïi m = 10 ta coï dung læåüng maûch
nhåï laì 1K ä nhåï (1 kilä = 2 10 = 1024) vaì våïi m=20 ta coï dung læåüng maûch
nhåï laì 1M ä nhåï (1 Mãga = 220 = 1048576).
 Nhoïm tên hiãûu dæî liãûu :

Caïc tên hiãûu dæî liãûu thæåìng laì âáöu ra âäúi våïi maûch ROM
hoàûc âáöu vaìo/ra dæî liãûu chung (hai chiãöu) âäúi våïi maûch RAM. Cuîng
täön taûi maûch nhåï RAM våïi âáöu ra vaì âáöu vaìo dæî liãûu riãng biãût. Âäúi
våïi RAM loaûi naìy, khi duìng trong maûch cuía bus dæî liãûu ngæåìi sæí
duûng phaíi näúi hai âáöu âoï laûi. Caïc maûch nhåï thæåìng coï âáöu ra dæî
liãûu kiãøu 3 traûng thaïi. Säú dæåìng dáy dæî liãûu quyãút âënh âäü daìi tæì
nhåï cuía maûch nhåï. Thäng thæåìng ngæåìi ta hay noïi roî dung læåüng vaì âäü
daìi tæì nhåï cuìng mäüt luïc. Vê duû maûch nhåï dung læåüng 1 Kx8 (tæïc laì
1KB) hoàûc 16Kx4 ...
 Nhoïm tên hiãûu choün vi maûch (choün voí) :

Caïc tên hiãûu choün voî laì CS (chip select) hoàûc CE (Chip enable)
thæåìng âæåüc duìng âãø taûo ra vi maûch nhåï cuû thãø âãø ghi/âoüc. Tên
hiãûu choün voî åí caïc maûch RAM thæåìng la CS , coìn åí maûch ROM
thæåìng laì CE . Caïc tên hiãûu choün voî thæåìng âæåüc näúi våïi âáöu ra cuía
bäü giaíi maî âëa chè. Khi mäüt maûnh nhåï khäng âæåüc choün thç bus dæî
liãûu cuía noï bë treo (åí traûng thaïi tråí khaïng cao)

 Nhoïm tên hiãûu âiãöu khiãøn :

Tên hiãûu âiãöu khiãøn cáön coï trong táút caí caïc maûch nhåï. Caïc
maûch nhåï ROM thæåìng coï mäüt âáöu vaìo âiãöu khiãøn OE (output enable)
âãø cho pheïp dæî liãûu âæåüc âæa ra bus. Mäüt màût nhåï khäng âæåüc måí
båíi OE thç bus dæî liãûu cuía noï bë treo.
Mäüt maûch nhåï Ram nãúu chè coï mäüt tên hiãûu âiãöu khiãøn thç
thæåìng âoï laì R / W âãø âiãöu khiãøn quaï trçnh ghi/âoüc. Nãúu maûch nhåï
RAM coï hai tên hiãûu âiãöu khiãøn âoï thæåìng laì WE (write enable) âãø âiãöu
khiãøn ghi vaì OE âãø âiãöu khiãøn âoüc. Hai tên hiãûu naìy phaíi ngæåüc pha
nhau âãø âiãöu khiãøn viãûc ghi/âoüc maûch nhåï.
Mäüt thäng säú âàûc træng khaïc cuía bäü nhåï laì thåìi gian thám
nháûm tac. Noïi chung noï âæåüc âënh nghéa nhæ laì thæoìi gian kãø tæì khi coï
xung âëa chè trãn bus âëa chè cho âãún khi coï dæî liãûu ra äøn âënh trãn bus
dæî liãûu. Thåìi gian thám nháûm bäü nhåï phuû thuäüc ráút nhiãöu vaìo cäng
nghãû chãú taûo nãn noï. Caïc bäü nhåï laìm bàòng cäng nghãû læåîng cæûc coï
thåìi gian thám nháûp nhoí (10 - 30ns) coìn caïc bäü nhåï laìm bàòng cäng
nghãû MOS coï thåìi gian thám nháûp låïn hån nhiãöu (cåî 150ms hoàûc hån
næîa).

Sau âáy laì vê duû mäüt säú loaûi bäü nhåï thæåìng duìng :
 Bäü nhåï EPROM :

Caïc bäü nhåï EPROM thäng duûng täön taûi dæåïi nhiãöu kiãøu
maûch khaïc nhau. Hoü 27xxx coï caïc loaûi makchj sau : 2708 (1Kx8), 2716
(2Kx8), 2732 (4Kx8), 2764 (8Kx8), 27128 (16Kx8), 27256 (32Kx8), 27512
(64Kx8) våïi tac = 250-450ns tuyì theo loaûi cuû thãø. Trãn hçnh 5.12 laì så âäö
caïc tên hiãûu vaì baíng chæïc nàng cuía 2716.

Maûch nhåï 2716 coï thåìi gian thám nháûp t ac = 450ns, nhæ váûy âãø
gheïp vaì laìm viãûc âæåüc våïi CPU 8088 5MHz noï cáön phaíi thãm chu kyì
âåüi. Ngæåüc laûi maûch nhåï 2716 - 1 laûi coï t ac = 250ns nãn khäng cáön thãm
chu kyì âåüi.
Cáön læu yï laì trong chãú âäü duy trç cäng suáút tiãu thuû cuía maûch
giaím âæåüc 75% so våïi cäng suáút khi noï åí chãú âäü têch cæûc

Ch Vpp Vcc D0 - D7
uí CE/PG
OE
M [V] [V]
A0 - A10 Chãú âäü
D0 - D7
Âoüc 0 0 +5 +5 Dout
OE Duy trç 1 X +5 +5 HZ
50m
Vpp Ghi s 1 +25 +25 Din
CE /PG Kiãøm tra 0 0 +25 +5 Dout
M Cám ghi 0 1 +25 +5 HZ

A0 - A10 : Âëa chè x : khäng quan tám


D0 - D7 HZ : Traûng thaïi tråí
khaïng cao
OE : cho pheïp âæa dæî liãûu ra
CE /PGM : âiãûn aïp ghi

Hçnh 5.12. Bäü nhåï EPROM 2716 (2Kx8)

 Bäü nhåï RAM ténh (SRAM) :

Bäü nhåï SRAM coï khaí nàng læu giæî thäng tin trong noï chæìng
naìo noï coìn âæåüc cáúp âiãûn. Caïc bäü nhåï SRAM vaì EPROM cuìng dung
læåüng thæåìng coï caïch bäú trê chán giäúng nhau âãø dãø bãö daìy thay thãú
láùn trong qua trçnh phaït triãøn hãû thäúng. Trãn hçnh 5.13 laì vê duû maûch
nhåï TMS 4014 (2Kx8) våïi thåìi gian thám nháûp tac = 250ns.
Âaî täön taûi trong thæûc tãú maûch nhåï SRAM dung læåüng 32Kx8
(62256LP-10) våïi thåìi gian thám nháûp cåî 100ns chãú taûo theo cäng nghãû
CMOS vaì mäüt loaûi SRAM khaïc chãs taûo theo cäng nghãû læåîng cæûc
8KB - 120KB coï thåìi gian thám nháûp 15ns.

A0 - A10
D0 - D 7 A0 - A10 : Âëa chè
quan tám
OE
D0 - D7 : Dæî liãûu
WE
Traûng thaïi tråí khaïng cao
CS OE : cho pheïp âæa dæî
liãûu ra
Hçnh 5.13. Bäü nhåï RAM ténh TMS 4016 (2Kx8).

 Bäü nhåï RAM âäüng (DRAM) :

Bäü nhåï DRAM læu giæî thäng tin bàòng caïch naûp hay khäng naûp
âiãûn têch lãn caïc tuû âiãûn cäng nghãû MOS. Mäùi pháön tæì nhåï cuía bäü
nhåï DRAM vç váûy cáön âæåüc laìm tæåi laûi (bàòng caïch ghi hay âoüc pháön
tæí âoï) sau mäüt khoaíng thåìi gian cåî 15,6 s , nãúu khäng âiãûn têch trãn
caïc tuû âiãûn seî bë tiãu taïn vaì dáùn âãún máút thäng tin. Caïc maûch DRAM
cáön coï caïc maûch logic phuû âãø âaím baío viãûc laìm tæåi vaì vç thãú viãûc
phäúi gheïp âoï våïi bäü vi xæí lyï laì ráút phæïc taûp. Buì laûi nhæåüc âiãøm
naìy caïc maûch nhåï DRAM laûi coï æu âiãøm laì coï thãø chãú taûo âæåüc
mäüt säú læåüng ráút låïn caïc pháön tæí nhåï trãn 1 âån vë âiãûn têch, caïc vi
maûch naìy do váûy cuîng cáön ráút nhiãöu chán cho caïc tên hiãûu âëa chè.
Âãø laìm giaím båït säú læåüng chán âëa chè trãn mäüt vi maûch nhåï, ngæåìi ta
thæåìng chia âëa chè ra laìm hai nhoïm : âëa chè haìng vaì âëa chè cäüt däön
kãnh chuïng trãn caïc chán âëa chè, âäöng thåìi cung cáúp thãm caïc tên hiãûu
cho pheïp chäút giæî riãng leî âëa chè haìng ( RAS ) vaì cäüt ( CAS ) åí bãn trong
vi maûch nhåï (hçnh 5.14).

A0 - A7 A0 - A7 : Âëa chè
D0 - D 3 D0 - D3 : Dæî liãûu
CAS : xung cho pheïp chäút âëa chè
OE WE
cäüt
CAS RAS RAS : xung cho pheïp chäút âëa chè
haìng
OE : cho pheïp âæa dæî liãûu ra

RAS
RAS

A0 - A7 Âc cäüt Âc haìng

Hçnh 5.14. Bäü nhåï RAM âäüng TMS 4464 (64Kx4).

Caïc maûch nhåï DRAM thæåìng âæåüc chãú taûo våïi âäü daìi 1
hoàûc 4 bit. Âaî täön taûi trong thæûc tãú maûch nhåï DRAM dung læåüng 1
Mx1, 4 Mx1, vaì 16 Mx1 vaì chuïng thæåìng âæåüc täø håüp thaình bäü nhåï
kiãøu SIMM (single in-line memory module) hay SIP (single in-line package)
duìng trong caïc maïy tênh thãú hãû måïi. Trãn hçnh 5.15 laì vê duû cuía vi
maûch nhåï TMX4C1024 dung læåüng 1 Mx1 våïi thåìi gian thám nháûp 60ns.
2.2. Giaíi maî âëa chè cho bäü nhåï

Di A0 - A9 : Âëa chè
A0 - A9 Di : Dæî liãûu vaìo
D0
WE
D0 : Dæî liãûu ra
CAS : xung cho pheïp chäút âëa chè
CAS RAS cäüt
RAS : xung cho pheïp chäút âëa chè
haìng
Hçnh 5.15. Bäü nhåï RAM âäüng TMX 4C1024 (1Mx1)
Mäùi maûch nhåï näúi gheïp våïi CPU cáön phaíi âæåüc CPU qui
chiãúu tåïi mäüt caïch chênh xaïc khi thuûc hiãûn caïc thao taïc ghi/âoüc. Âiãöu
âoï coï nghéa laì mäùi maûch nhåï phaíi âæåüc gaïn cho mäüt vuìng riãng biãût
coï âëa chè xaïc âënh nàòm trong khäng gian âëa chè täøng thãø cuía bäü nhåï.
Viãûc gaïn âëa chè cuû thãø cho maûch nhåï âæåüc thæûc hiãûn nhåì mäüt xung
choün voí láúy tæì maûch giaíi maî âëa chè. Viãûc phán âënh khäng gian âëa
chè täøng thãø thaình caïc cuìng nhåï khaïc nhau âãø thæûc hiãûn nhæîng chæïc
nàng nháút âënh goüi laì phán vuìng bäü nhåï. Vê duû, âäúi våïi CPU 8088 thç
khäng gian âëa chè täøng thãø daình cho bäü nhåï laì 1MB, trong âoï vuìng nhåï
dung læåüng 1 KB kãø tæì âëa chè tháúp nháút 00000H nháút thiãút phaíi âæåüc
daình cho RAM (vç tai âáy ta phaíi coï chäù âãø cho mäüt baíng gäöm 256 vectå
ngàõt cuía 8088), taûi coìn vuìng nhåï coï chæïa âëa chè FFFF0H thç laûi nháút
thiãút phaíi daình cho ROM hay EPROM ( vç FFFF0H laì âëa chè khåíi âäüng
cuía CPU).

Vãö nguyãn tàõc mäüt bäü giaíi maî âëa chè thæåìng coï cáúu taûo
nhæ trãn hçnh 5.16.

CS1
Tên hiãûu âëa Maûc
Caïc tên
chè h giaíi
hiãûu
maî
choün voí
âëa
CS 2
Tên hiãûu
CS n
â/khiãøn

Hçnh 5.16. Maûch giaíi maî âëa chè täøng quaït.

Âáöu vaìo cuía bäü giaíi maî laì caïc tên hiãûu âëa chè vaì tên hiãûu
âiãöu khiãøn. Caïc tên hiãûu âëa chè gäöm caïc bit âëa chè coï quan hãû nháút
âënh våi caïc tên hiãûu choün voí åí âáöu ra. Tên hiãûu âiãöu khiãøn thæåìng laì
tên hiãûu IO/ M duìng âãø phán biãût âäúi tæåüng maì CPU choün laìm viãûc laì
bäü nhåï hay thiãút bë vaìo/ra. Maûch giaíi maî laì mäüt trong nhæîng kháu gáy
ra viãûc trãù thåìi gian cuía tên hiãûu tæì CPU tåïi bäü nhåï hoàûc thiãút bë
ngoaûi vi maì trong khi choün maûch nhåï/ngoaûi vi ta phaíi tênh âãún. Tuyì
theo quy mä cuía maûch giaíi maî maì ta coï thãø coï åí âáöu ra mäüt hay nhiãöu
tên hiãûu choün voí.
Giaíi maî âáöy âuí cho mäüt maûch nhåï âoìi hoíi ta phaíi âæa âãún
âáöu vaìo cuía maûch giaíi maî caïc tên hiãûu âëa chè sao cho tên hiãûu åí âáöu
ra cuía noï chè choün riãng maûch nhåï âaî âënh. Trong træåìng håüp naìy ta
phaíi duìng täø håüp âáöu âuí cuía caïc âáöu vaìo âëa chè tæång æïng âãø choün
âæåüc maûch nhåï, vç xung nháûn âæåüc tæì maûch giaíi maî ngoaìi viãûc
choün maûch nhåï åí vuìng âaî âënh seî coï thãø chon ra caïc maûch nhåï åí caïc
vuìng nhåï khaïc næîa.
Nhæ váûy, giaíi maî thiãúu thç tiãút kiãûm âæåüc linh kiãûn khi thæûc
hiãûn bäü giaíi maî nhæng laûi laìm máút tênh âån trë cuía xung choün thu
âæåüc åí âáöu ra.
Thäng thæåìng khi thiãút kãú maûch giaíi maî ngæåìi ta hay tênh âäi ra
mäüt chuït âãø dæû phoìng, sao cho sau naìy nãúu coï sæû thay âäøi do phaíi
tàng thãm dung læåüng cuíabäü nhåï thç váùn coï thãø sæí duûng âæåüc maûch
giaíi maî âaî âæåüc thiãút kãú .

 Thæûc hiãûn maûch giaíi maî baìng caïc maûch


NAND

Baìng caïc maûch kiãøu maûch cæía NAND ta coï thãø xáy dæûng
âæåüc maûch giaíi maî âëa chè âån giaín våïi säú âáöu ra haûn chãú, ta phaíi
âæa âãún âaìu vaìo cuía maûch cæía nhiãöu läúi vaì mäüt täø håüp thêch håüp
cuía caïc bit âëa chè âãø nháûn âæåüc åí âáöu ra cuía noï tên hiãûu choün voí
cho maûch nhåï.
Trong maûch giaíi maî âån giaín cho EPROM naìy, xung choün voí seî
coï taïc âäüng khi ta âoüc bäü nhåï taûi âëa chè nàòm trong khoaíng EF800H -
FFFFFH, tæïc laì vuìng âëa chè coï chæïa âëa chè khåíi âäüng cuía CPU 8088. 9
bit âëa chèpháön cao cuía bus âëa chè (A11-A19) åí mæïc 1 seî phäúi håüp
cuìng xung IO/ M (âaî âæåüc âaío) âãø taûo ra xung choün vuìng nhåï 2 KB
âàût taûi âëa chè cao nháút trong khäng gian âëa chè cuía 8088. mäùi ä nhåï cuû
thãø trong 2 KB cuía maûch nhåï EPROM 2716-1 seî do caïc bit tháúp coìn laûi
cuía bus âëa chè (A0 - A10) choün ra. Âãø kiãøm chæïng nhanh âiãöu naìy ta
cáön nhåï ràòng våïi caïc bit âëa chè A10 ta choün ra âæåüc caïc maûch nhåï
1KB vaì våïi bit A11 ta choün ra âæåüc caïc maûch nhåï 2 KB caïc maîng nhåï
naìy nàòm raîi raïc trong khäng gian cuía bäü nhåï.

 Thæûc hiãûn bäü giaíi maî duìng maûch giaíi maî


kiãøu 74LS138 :

Khi ta muäún coï nhiãöu âáöu ra choün voí tæì bäü giaíi maî maì váùn
duìng caïc maûch logic âån giaín thç thiãút kãú seî tråí nãn ráút cäöng kãönh do
säú læåüng caïc maûch cæía tàng lãn. Trong træåìng håüp nhæ váûy ta thæåìng
sæí duûng caïc maûch giaíi maî coï sàôn. Mäüt trong caïc maûch giaíi maî hay
dæåüc sæí duûng laì 74LS138, maûch giaíi maî 3-8 (hçnh 5.18)

A0 - A9
Bus A
2764-15
Bus B D0 - D7

OE
RD
CE
A13 A F0000-F1FFF
A14 Y
A15 B Y1
C Y2 Caïc chán choün voí
LS138 Y3 cho 7 maûch 2764-15
Y4
khaïc
A17 A16
A18 G2 A Y5

IO/ M G2 B Y 6

A19 G1 Y 7 FE000-FFFFF
Hçnh 5.19. så âäö bäü giaíi maî duìng 74LS138.

Vê duû
Giaí thiãút ta cáön duìng riãng vuìng nhåï 64 KB coï âëa chè F0000H-
FFFFFH. Cho caïc maûch nhåï EPROM 8 KB (duìng 8x2764-15, t ac = 150ns).
Haîy duìng maûch giaíi maî kiãøu 74LS138 âãø thæûc hiãûn.

Caïc âáöu A
vaìo choün Y
B Y1
C Y2 Caïc âáöu ra cuía
maûch giaíi maî
138 Y3
Y4
Caïc âáöu
vaìo cho G2 A Y5
gheïp G2 B Y6
G1 Y7
Hçnh 5.18. så âäö khäúi cuía 74LS138

Giaíi

Ta coï thãø duìng maûch 74LS138 vaì bäú trê caïc âæåìng âëa chè nhæ
trãn hçnh 5.19.
Åí thê duû naìy ta cáön læu yï ràòng bit âëa chè A13 coï khaí nàng
choün ra caïc maîng nhåï 8 KB nàòm raîi raïc trong khäng gian nhåï cuía 8088.
chênh vç váûy ta duìng noï nhæ âáöu vaìo A cuía 74LS138, cuìng våïi caïc âëa
chè bit A14 vaì A15 taûi caïc chán B vaì C ta seî choün ra âæåüc 8 vuìng nhåï
liãön nhau, mäùi vuìng coï dung læåüng laì 8 KB hay toaìn vuìng laì 64 KB naìy
åí pháön cao nháút trong khäng kgian nhåï.
Âiãöu naìy coï thãø âaût âæåüc mäüt caïch dãø daìng bàòng viãûc
duìng täø håüp 4 bit âëa chè cao nháút A16 - A19 åí traûng thaïi 1 (A19 thäng
qua âaìu vaìo G1 vaì A16 -A18 qua 1 maûch NAND 3 âáöu vaìo âãø âæa âãún
G2A cuía maûch 74LS138).
Taûi thê duû naìy ta tháúy maûch giaíi maî coï sàôn 74LS138 coï säú
læåüng âáöu vaìo âëa chè vaì âáöu vaìo cho pheïp haûn chãú. Nãúu ta coï säú
læåüng âáöu vaìo cho âëa chè låïn maì ta laûi phaíi giaíi maî âáöy âuí âãø thæûc
hiãûn bäü giaíi maî âaî hoaìn chènh ta váùn phaíi duìng thãm caïc maûch logic
phuû. Âáy cuîng laì lyï do âãø ngæåìi ta thay thãú caïc bäü giaíi maî kiãøu naìy
bàòng caïc bäü giaíi maî duìng PROM hoàûc PLA (programable logic array)
våïi æu âiãøm chênh laì chuïng coï ráút nhiãöu âáöu vaìo cho caïc bit âëa chè vaì
vç thãú ráút thêch håüp trong caïc hãû vi xæí lyï sau naìy våïi khäng gian âëa
chè låïn.

 Thæûc hiãûn bäü giaíi maî duìng PR OM :

Âãø trçnh baìy æïng duûng cuía PROM trong viãûc thæûc hiãûn caïc
bäü giaíi maî ta láúy laûi vê duû phán vuìng bäü nhåï cho 64 KB EPROM trong
pháön træåïc. Taûi âáy ta duìng maûch PROM loaûi TPB 28L42 våïi dung
læåüng 512 byte âãø laìm bäü giaíi maî. Trong baíng 5.5 laì máùu caïc bit âãø
ghi vaìo PROM TPB 58L42 cho træåìng håüp æïng duûng cuû thãø naìy.
Theo baíng 5.5 ta tháúy ràòng âãø thæûc hiãûn bäü giaíi maî cho bäü
nhåï theo yãu cáöu âaî noïi åí trãn ta måïi chè sæí duûng hãút 8 byte âáöu tiãn
trong täøng säú 512 byte cuía maûch nhåï PROM âãø ghi caïc giaï trë cáön
thiãút. Caïc ä nhåï taûi âëa chè khaïc vç thãú âãöu chæïa cuìng giaï trë nhæ nhau
laì FFH.

A0 - A12
Bus A
2764-15
Bus D D0 - D7

OE
RD
A13 CE
A14 A0 F0000-F1FFF
A15 O0
A16 A1
A17 O1 Caïc chán choün voí
A18
A19 A2 O2 cho 7 maûch 2764-15
A3 O3 khaïc
A20
A4 O4
A5 O5 FE000-FFFFF
A6 O6
A7 O7 M
IO/
A8 O8

Hçnh 5.20. Så âäö bäü giaíi maî duìng PROM

Maûch giaíi maî cho bäü nhåï EPROM 64 KB duìng PROM âæåüc
thãø hiãûn trãn hçnh 5.20. so våïi caïch thæûc hiãûn bäü giaíi maî bàòng
74LS138 chuïng ta khäng phaíi duìng âãún caïc maûch phuû âiãöu naìy laìm
giaím âaïng kãø kêch thæåïc váût lyï cuía bäü giaíi maî.
Trong caïc maïy vi tênh caï nhán thæång pháøm viãûc phán chia vuìng
vaì giaíi maî âëa chè cho bäü nhåï thæåìng âaî âæåüc thæûc hiãûn hoaìn chènh.
Viãûc làõp chung caïc modun RAM vaìo mäüt hãû thäúng cuîng âæåüc nhaì
saín xuáút tênh toaïn tæì træåïc âãø taûo thuaûn låüi täúi âa cho ngæåìi sæí
duûng.
2.3. Päúi gheïp CPU 8088 - 5MHz våïi bäü nhåï

Sau khi âaî giåïi thiãûu caïc phæång phaïp giaíi maî cho maûch nhåï
trong pháön naìy ta seî giåïi thiãûu caïch phäúi gheïp 8088 våïi bäü nhåï. Coï
thãø noïi täøng quaït ràòng nãúu -khäng coï xung âäüt giæîa täúc âäü thám
nháûp maûch nhåï vaì täúc âäü CPU thç viãûc phäúi gheïp CPU våïi bäü nhåï
âån giaín chè laì viãûc giaíi maî âëa chè trong maûch nhåï. Trong pháön låïn
caïc træåìng håüp âiãöu naìy coï thãø âuïng cho caïc maûch nhåï RAM vaì caïc
maûch nhåï EPRAM coï thåìi gian thám nháûp nhoí hoen hoàûc bàòng 250 ms,
caïch phäúi gheïp CPU våïi cac maûch naìy vãö cå baín laì giäúng nhau. Âäúi
våïi caïc maûch nhåï EPROM nhæ 2716, 2732 ... loaûi täúc âäü 450 ms khi
thæûc hiãûn phäúi gheïp våïi 8088 - 5MHz thç cáön phaíi tênh toaïn tháûn
troüng hån.
Trong pháön âáöu cuía chæång naìy ta âaî tênh âæåüc ràòng muäún
phäúi gheïp âæåüc våïi CPU 8088 - 5MHz thç caïc maûch nhåï phaíi coï thåìi
gian thám nháûp daìi nháút laì cåî 450 ms, vç váûy nãúu ta muäún gheïp
EPROM 2732 täúc âäü 450ms vaìo bäü nhåï thç chàõc chàõn phaíi coï caïch âãø
baïo cho CPU xen thãm chu kyì âåüi trãn hçnh 5.21 laì så âäö maûch phäúi
gheïp EPROM 2732 coï thãm maûch NAND âãø taûo tên hiãûu cho pheïp
maûch giaíi maî vaì tên hiãûu yãu cáöu âåüi âãø âæa âãún chán RDI1 cuía 8284
(âaî âæåüc trçnh baìy åí pháön træåïc). Bàòng caïch naìy mäùi khi CPU âåüi
EPROM 2732 täúc âäü cháûm thç 1 chu kyì âåüi seî âæåüc tæû âäüng xen thãm.
A0 - A11
Bus A
2732
Bus D D0 - D7
Bäü taûo
Tåïi
RYD1 Tw OE
RD
Cuía
8284 CE
A12 A F0000-F1FFF
A13 Y
A14 B Y1
C Y2 Caïc chán choün voí
cho 7 maûch 2764-15
A15 CS LS138 Y3
khaïc
A16 Y4
A17 G2 A Y5
A18 G2 B Y6
A19 Vcc G1 Y7 FE000-FFFFF
IO/ M
Hçnh 5.21. Phäúi gheïp EPROM 2732 - 450 ns våïi CPU 8088 - 5MHz.

Viãûc phäúi gheïp SRAM våïi 8088 thæåìng âån giaín hån so våïi
EPROM vç SROM coï täúc âäü nhanh nãn khäng cáön maûch xen thãm chu kyì
âåüi.
Trong hçnh 5.23 ta coï thãø tháúy viãûc gheïp 16KB SRAM våïi CPU
coï duìng mäüt bäü giaíi maî kiãøu 74LS138. khäúi 16KB SRAM naìy bàõt âáöu
taûi âëa chè tháúp nháút laì 00000H bao truìm vuìng nhåï chæïa baíng vectå
ngàõt cuía CPU 8088.

 Váún âãö kiãøm tra parity âãø phaït hiãûn läùi trong
bäü nhåï RAM :

Do caïc bäü nhåï baïn dáùn DRAM duìng cho maïy vi tênh ngaìy nay
coï giaï caí ngaìy caìng reî nãn ngæåìi ta âaî âæa vaìo sæí duûng caïc vuìng nhåï
dung læåüng ngaìy caìng låïn vaì vç váûy viãûc kiãøm tra parity âãø phaït hiãûn
läùi trong thiãút bë nhåï laì mäüt váún dãö bæïc thiãút. Baín cháút cuía váún âãö
åí âáy laì ngæåìi ta phaíi duìng thãm 1 bit nhåï (bit thæï 9) âãø laìm kiãøm tra
parity cho 8 bè dæî liãûu thæûc vaì ngæåìi ta so saïnh bit parity khi nghé vaì
biãút parity khi âoüc âãø phaït hiãûn läùi. Ta coï thãø duìng 1 trong 2 kiãøu
parity : parity chàôn hoàûc parity leî.
Nãúu ta duìng parity chàôn thç khi täøng säú bit 1 trong 8 bit seî laì
chàôn thç ta ghi vaìo bit säú 9 laì 0 trong træåìng håüp ngæåüc laûi ta ghi vaìo
bit säú 9 laì 1. Nãúu ta duìng parity leî thç
khi täøng säú bit 1 trong 8 bit seî laì chàôn thç ta ghi vaìo bit säú 9 laì 1 trong
træåìng håüp ngæåüc laûi ta ghi vaìo bit säú 9 laì 0.
Caïc cäng viãûc trãn coï thãø thæûc hiãûn bàòng chæång trçnh nhæng
nãúu thæûc hiãûn bàòng maûch âiãûn tæí chuyãn duìng thç seî thu âæåüc kãút
quaí nhanh hån ráút nhiãöu.
Trong thæûc tãú ngæåìi ta âaî chãú taûo ra nhæîng vi maûch chuyãn
duìng âãø duìng trong viãûc kiãøm tra parity nhàòm xaïc âënh läùi cuía bäü nhåï
khi hoaût âäüng mäüt trong nhæîng vi maûch naìy laì maûch taûo parity vaì
phaït hiãûn läùi parity 74AS280. chæïc nàng cuía maûch âæåüc mä taí trãn hçnh
5.22.
Caïch hoaût âäüng cuía maûch nhæ sau : nãúu ta âæa 9 bit dæî liãûu
vaìo 9 âáöu vaìo cuía vi maûch naìy thç tuyì theo säú læåüng caïc bit 1 cuía dæî
liãûu maì ta 0seî thu âæåüc åí âáöu ra  Even (chàôn) vaì âáöu ra  Odd (leî)
caïc giaï trë nhæ âæåüc cho trong baíng bãn caûnh

maî 74LS139 coï chæïc nàng gáön giäúng 74LS138 maì chuïng ta âaî noïi åí pháön
træåïc. Trong så âäö naìy ta duìng parity leí. tæïc laì khi säú bêt 1 taûi caïc âáöu vaìo
A-H cuía 74AS280 A laì chàôn (âáöu vaìo mäüt näúi âáút) thç ta ghi 1 bäü nhåï parity,
ngæåüc laûi thç ta ghi 0 taûi âoï. Khi âoüc säú liãûu, bêt paraty âæåüc âæa âãún âáöu
vaìo I cuía 74AS280 B. Nhæ váûy nãúu caïc bêt âoüc âæåüc taûi caïc chán tæì A-H
laì khäng âäøi thç åí âáöu ra Even cuía 74AS280 B laì 0 vaì khäng xuáút hiãûn yãu
cáöu ngàõt MNI.
Våïi så âäö maûch trãn hçnh 5.23 ta coï khaí nàng phaït hiãûn sai taûi 1 bêt naìo
âoï cuía tæì nhåï.
Bus D (D0-D7)
280 B 280 A
Reset
CLR A-H A-H
Q D
Even 1 Even 1

CLK D
WR
RD
RD
Bus A A0-A11

WR

A0-A11
1 A y0 ( 2016 la ø2 KB )
1 B

* 193
1E y3

RD
WR

A 11 A y0
A 12 B y1 A0-A10
A 13 C D0-D7

* 138
G2A 8 x 2016
G2B
G1 y7 ( 2016 la ø2 KB )

A14 - A19
+5 V

Hçnh 5.23. Så âäö 16KBSRAM coï trang bë bäü kiãøm tra parity.

Trong thæûc tãú täön taûi nhæîng maûch ráút phæïc taûp coï khaí nàng phaït
hiãûn sai vaì sæía sai âãø duìng cho caïc bäü nhåï cho caïc vi maïy tênh (vê duû maûch
74LS636, våïi 5 bêt parity ghi thãm vaìo tæì nhåï 8 bêt cuía bäü nhåï, coï khaí nàng
phaït hiãûn sai taûi 2 bêt vaì tæû âäüng sæía sai âäúi våïi træåìng håüp coï läùi taûi
mäüt bêt).
Nãúu so saïnh våïi SRAM thç viãûc phäúi gheïp CPU våïi DRAM seî phæïc
taûp hån vç ta cáön phaíi coï thãm caïc maûch däön kãnh âëa chè vaì maûch laìm tæåi.
Nhæ ta âaî biãút åí pháön træåïc, muäún cho caïc thäng tin læu giæî taûi DRAM (trãn
caïc pháön tæí nhåï kiãøu tuû âiãûn MOS) âæåüc baío toaìn thç theo âënh kyì 15,6 s
mäùi pháön tæí nhoí cuía DRAM phaíi âæåüc laìm tæåi laûi mäüt láön.
Caïc maûch nhåï DRAM thæåìng coï 2 chãú âäü laìm tæåi.
+ Laìm tæåi caí maíng: mäüt maíng caïc pháön tæí gäöm 128-256 (hoàûc 512)
hàòng âæåüc choün ra âãø âæåüc laìm tæåi cæï 2-4ms (hoàûc 8ms) 1 láön.
+ Laìm tæåi tæìng haìng: våïi täúc âäü sao cho âaím baío mäùi pháön tæí âãöu
âæåüc laìm tæåi trong giåïi haûn 15,6 s.
Viãûc laìm tæåi mäùi pháön tæí nhåï thæûc hiãûn bàòng caïch ghi hoàûc âoüc
mäüt loaût caïc ä nhåï. Säú læåüng bêt âæåüc laìm tæåi cuìng mäüt luïc phuû thuäüc
vaìo täø chæïc bãn trong cuía mäùi maûch nhåï. Mäüt chu kyì laìm tæåi âàûc biãût laì
mäüt chu kyì khi viãûc laìm tæåi laì cäng viãûc näüi bäü cuía DRAM vaì âæåüc hoaìn
táút trong khi caïc bäü pháûn khaïc cuía bäü nhåï váùn âang laìm viãûc. Âiãöu naìy
âæåüc thæûc hiãûn nhåì viãûc âæa ra caïc tên hiãûu âëa chè haìng vaì duìng xung
RAS nhàòm choün ra mäüt haìng caïc pháön tæí cáön âæåüc laìm tæåi (RAS only
refresh). Xung RAS seî khiãún cho doìng âënh choün laìm tæåi âæåüc âoüc vaì ghi
laûi. Âëa chè laìm tæåi âæåüc láúy tæì mäüt bäü âãúm 7,8 (hoàûc 9) bêt tuyì theo
kêch thæåïc cuía maûch nhåï cáön laìm tæåi, näüi dung cuía bäü âãúm naìy âæåüc tàng
lãn sau mäùi chu kyì laìm tæåi sao cho táút caí caïc doìng âãöu âæåüc laìm tæåi trong
thåìi gian âaî âënh (hçnh 5.24). Kiãøu laìm tæåi naìy coìn âæåüc goüi laì laìm tæåi áøn
vç trong luïc laìm tæåi mäüt vuìng naìo âoï cuía DRAM thç bäü vi xæí lyï váùn âæåüc
ghi/âoüc åí vuìng nhåï khaïc..
Âäúi våïi DRAM noïi chung caïc nhaì chãú taûo âaî cáúu truïc maûch sao cho
thåìi gian laìm tæåi cho 1 pháön tæí laì 1,5 s.
Caïc cäng viãûc phaíi laìm khi phäúi gheïp DRAM våïi vi xæí lyï laì:
+ Däön kãnh 2 loaûi tên hiãûu âëa chè cho mäùi maûch nhåï vaì cung cáúp
xung cho pheïp chäút âëa chè RAS vaì CAS .
+ Cung cáúp caïc tên hiãûu âiãöu khiãøn viãûc ghi/ âoüc bäü nhåï.
+ Laìm tæåi mäùi haìng trong thåìi gian thêch håüp.
+ Âaím baío khäng coï trang cháúp trong hoaût âäüng ghi/âoüc bçnh thæåìng
cuía CPU våïi cäng viãûc laìm tæåi.
Âãø laìm âån giaín viãûc phäúi gheïp CPU-DRAM, caïc nhaì saín xuáút vi
maûch âaî cung cáúp caïc bäü âiãöu khiãøn DRAM thæûc hiãûn caïc chæïc nàng cuía
maûch däön kãnh cho âëa chè haìng, cäüt vaì maûch laìm tæåi maì khäng aính hæåíng
nhiãöu âãún hoaût âäüng bçnh thæåìng cuía hãû vi xæí lyï.
RAS

CAS

ñc.haøng ñc.haøng ñc.haøng

khoâng quan taâm


Hçnh 5.24. Chu kyì laìm tæåi RAS cho RAM TM34464 (64K4).

 Bäü âiãöu khiãøn DRAM


Chuïng ta seî giåïi thiãûu så qua taûi âáy bäü âiãöu khiãøn DRAM TMS 4500A.
Trãn hçnh 5.25 laì så âäö khäúi cuía bäü âiãöu khiãøn DRAM. Trong TMS
4500A coï bäü däön kãnh âëa chè, bäü âãúm âëa chè laìm tæåi vaì caïc bäü pháûn taûo
xung riãng cáön thiãút cho viãûc laìm tæåi.
Mä taí caïc chán tên hiãûu cuía bäü âiãöu khiãøn DRAM TMS 4500A
+ RA0-RA7 [I]: Âëa chè haìng., thæåìng âæåüc näúi våïi buï âëa chè taûi caïc
chán âëa chè tháúp A0-A7.
+ CA0- CA7 [I]: âëa chè cäüt, thæåìng âæåüc näúi våïi bus âëa chè taûi caïc
chán âëa chè cao.A8- A15.
+ MA0-MA7[O]: Âëa chè cho vi maûch nhåï, âæåüc näúi træûc tiãúp våïi
DRAM taûi caïc chán âëa chè A0-A7.
+ ALE [I]: Cho pheïp chäút caïc tên hiãûu âëa chè haìng, âëa chè cäüt REN1
vaì CS .

+ CS .[I]: Xung choün maûch âãø bàõt âáöu viãûc ghi/âoüc DRAM, âæåüc
näúi qua bäü âiãöu khiãøn trong thåìi âiãøm sæåìn xuäúng cuía xung ALE.
+ REN1 [I] : Choün 1 trong 2 khäúi nhåï DRAM näúi våïi bäü âiãöu khiãøn
(REN=1) thç choün RASO , REN1=0 thç chon RAS 1
+ ACR [I]: Sæåìn lãn cuía xung naìy kãút thuïc viãûc âoüc. Thæåìng âæåüc
näúi våïi RD trong chãú âäü MN.
+ ACW [I]: Sæåìn lãn cuía xung naìy kãút thuïc viãûc ghi. Thæåìng âæåüc näúi
våïi WR trong chãú âäü MN.
+ CLK [I]: âáöu vaìo cho xung âäöng häö (näúi våïi CLK cuía PCU).
RAO-RA7
Choát
ñòa chæhaøng

ALE MAO-MA7
MUX

Choát
ñòa chæcoät
CAO-CA7

Boäñeám

ALE

MAO-MA7
CS
Choát
tín hieäu choïn
REN 1 RAS1
ARC Taïo nhòp
vaø
ACW ñieàu CAS
khieån

REFERQ Troïng taøi


RDY

TWST

FS0 Taïo xung


laøm töôi
FS1

CLK

Hçnh 5.25. Bäü âiãöu khiãøn DRAM TMS 4500A

+ REFREQ  I, O : Xung vaìo âiãöu khiãøn viãûc bàõt âáöu chu kyì laìm tæåi
hoàûc xung ra âãø baïo cho bãn ngoaìi biãút bäü nhæï âang âæåüc laìm tæåi.
+ RAS0, RAS1  O : Caïc chán cho pheïp chäút âëa chè haìng cuía RAM.
+ CAS [O]: Chán cho pheïp chäút âëa chè cäüt cuía DRAM.
+ RDY [O]: RDY = 0 khi DRAM âang âæåüc laìm tæåi (näúi âãún RDY cuía
8284).
+ TWST [I]: (Timing/wait strap) choün traûng thaïi chåì vaì caïc thäng säú thåìi
gian khaïc khi TWST = 1 thç CPU seî phaíi xen thãm 1 traûng thaïi chåì khi ghi/âoüc.
+ FSO,FS1 [I]: cuìng våïi TWST choün chãú âäü vaì táön säú laìm viãûc (baíng
5.6).
Hoaût âäüng cuía TMS 4500A
Trãn hçnh 5.26 laì mäüt thê duû æïng duûng cuía bäü âiãöu khiãøn DRAM
TMS 4500A trong maûch nhåï gäöm 44464 âãø taûo nãn bäü nhåï 128 KB bàõt âáöu
taûi âëa chè 00000H. Cáön læu yï caïch sæí duûng caïc chán REN1 näúi våïi A16 âãø
choün ra 2 maính 64KB vaì CS näúi våïi maûch NAND âãø âàût 2 maíng nhåï vaìo
vuìng âëa chè âaî âënh. Caïc chán TWST FS1 vaì FSO âæåüc âàût laì 0,1 vaì 1 âãø
khäng coï traûng thaïi chåì vaì viãûc laìm tæåi âæåüc tiãún haình sau 61 chu kyì âäöng
häö vaì keïo daìi trong 4 nhëp cuía xung laìm tæåi. Våïi táön säú f CLK = 5 MHz thç
nhëp âäü laìm tæåi cho mäùi haìng laì 12,2 s (xáúp xè våïi giaï trë âaî âæåüc noïi
âãún taûi pháön træåïc laì 15,6s). Khi bäü âiãöu khiãøn laìm tæåi nhåï thç RDY = 0
vaì CPU bë âæa vaìo traûng thaïi chåì.
Baíng 5.6. Choün chãú âäü cuía TMS 4500A.

TWST FS1 FSO Säú Chu kyì Táön säú Säú nhëp
traûng laìm tæåi xung laìm cho 1 láön
thaïi chåì tæåi(KHz) laìm tæåi
0 0 0 0 ngoaìi REFREQ 4
0 0 1 0 Tclk  31 64-95 3
0 1 0 0 Tclk  46 64-85 3
0 1 1 0 Tclk  61 64-82 4
1 0 0 1 Tclk  46 64-85 3
1 0 1 1 Tclk  61 64-80 4
1 1 0 1 Tclk  76 64-77 4
1 1 1 1 Tclk  76 64-88 4
RA0-RA7

MA0-MA7 A0-A7
CA0-CA7

2X4464

ALE RAS0
RAS
REN1 CAS

ACR CAS

ACW

TNS 4500A

A0-A7
CS

CAS

RDY RAS1 RAS


2X4464
CLK FS
TWST FS +5V
1K

Hçnh 5.26. TMS 4500A vaì 128 KB DRAM taûi âëa chè 00000FH-1FFFFH

Hçnh 5.27 mä taí caïc xung cuía bäü âiãöu khieenr khi noï hoaût âäüng. Cáön
læu yï laì xung yãu cáöu laìm tæåi coï tæì bãn trong maûch, âæåüc taûo ra sau 61 chu
kyì âäöng häö vaì phaíi chåì cho chu kyì bus hiãûn taûi âæåüc hoaìn táút thç måïi coï
taïc duûng.
1 2 3 4 1 W W W 2 3 4 1 2

CLK

ALE

ACR ACW

Haøng Ñòa chæcoät Laøm töôi Ñòa chæcoät Haøng

RES

CAS

REF-REQ

RDY

Hçnh 5.27. Biãøu âäö thåìi gian cuía bäü âiãöu khiãøn TMS 4500A

3. Phäúi gheïp 8088 våïi thiãút bë ngoaûi vi


3.1. Caïc kiãøu phäúi gheïp vaìo/ra
Âäúi våïi 8088 (hay hoü 80x86 noïi chung) coï 3 caïch phäúi gheïp CPU våïi
caïc thiãút bë ngoaûi vi (caïc cäøng vaìo/ra, I/O) : a) thiãút bë ngoaûi vi coï khäng gian
âëa chè taïch biãût våïi bäü nhåï vaì b) thiãút bë ngoaûi coï khäng gian âëa chè chung
våïi bäü nhåï.
 Thiãút bë vaìo/ra coï khäng gian âëa chè taïch biãût
Trong caïch phäúi gheïp naìy, bäü nhåï âæåüc âäüc quyãön duìng khäng gian
1MB maì CPU daình cho noï. Caïc thiãút bë ngoaûi vi (caïc cäøng) seî âæåüc daình
riãng mäüt khäng gian 64KB cho mäùi loaûi cäøng vaìo hoàûc ra. Táút nhiãn ta phaíi
duìng tên hiãûu IO/M, vaì caïc lãûnh trao âäøi dæî liãûu mäüt caïch thêch håüp cho
mäùi khäng gian âoï (xem hçnh 5.28a).
 Thiãút bë vaìo/ra vaì bäü nhåï coï chung khäng gian âëa chè
Trong caïch phäúi gheïp naìy, bäü nhåï vaì thiãút bë ngoaûi vi cuìng chia nhau
khäng gian âëa chè 1MB maì CPU 8088 coï khaí nàng âëa chè hoïa. Caïc thiãút bë
ngoaûi vi seî chiãúm mäüt vuìng naìo âoï trong khäng gian 1MB, pháön coìn laûi laì
cuía bäü nhåï. Táút nhiãn trong træåìng håüp naìy ta duìng chung tên hiãûu IO/ M =0
vaì lãûnh trao âäøi dæî liãûu kiãøu lãûnh MOV cho caí bäü nhåï vaì thiãút bë ngoaûi vi
(xem hçnh 5.28.b)
3.2. Giaíi maî âëa chè cho thiãút bë vaìo/ra
Viãûc giaíi maî âëa chè cho thiãút bë vaìo/ra cuîng gáön giäúng nhæ giaíi maî
âëa chè cho maûch nhåï. Ta seî nháún maûnh åí âáy viãûc giaíi maî âëa chè cho caïc
cäøng. Thäng thæåìng caïc cäøng coï âëa chè 8 bit taûi A0-A7, trong mäüt säú hãû vi
xæí lyï khaïc (nhæ caïc maïy IBM PC) caïc cäøng coï 16 bit taûi A0 - A15. Tuyì theo
âäü daìi cuía toaïn haûng trong lãûnh laì 8 hay 16 bit ta saín xuáút coï 1 cäøng 8 bit coï
âëa chè liãn nhau âãø taûo nãn tæì våïi âäü daìi tæång æïng. Trong thæûc tãú êt coï hãû
sæí duûng hãút 256 cäøng vaìo/ra khaïc nhau nãn ta chè xeït åí âáy caïc bäü giaíi maî
âëa chè 8 bit A0-A7 vaì maûch giaíi maî thäng duûng coï sàôn 9nhæ 74LS138 chàóng
haûn) âãø taûo ra caïc xung choün thiãút bë.
Caïc maûch giaíi maî âån giaín coï thãø taûo âæåüc tæì maûch NAND nhæ
hçnh 5.29.
Trong træåìng håüp cáön nhiãu xung choün åí âáöu ra cho caïc cäøng vaìo/ra
coï âëa chè liãn tiãúp, ta coï thãø duìng caïc maûch giaíi maî coï sàôn kiãøu 74LS138.
Thê duû trãn hçnh 5.30 trçnh baìy 2 maûch tæång tæû nhau duìng 74LS138 âãø giaíi
maî âëa chè cho 8 cäøng vaìo vaì 8 cäøng ra. Trãn cå såí maûch naìy ta cuîng coï thãø
phäúi håüp våïi caí hai tên hiãûu âoüc vaì ghi âãø taûo ra tên hiãûu choün cho viãûc
âoüc/ghi tæìng cäøng vaìo/ra ra cuû thãø. Bäü giaíi maî nhæ váûy âæåüc minh hoaû
trãn hçnh 5.31.

A 11 A y0 A 11 A y0
y1 ISP y1 ISP
A 12 B A 12 B
A 13 C y2 A 13 C y2
y3 y3
AO-A7 y4 AO-A7 y4
G2B y5 G2B y5
RD G2A y6 WR G2A y6
IO/M G1 y7 ISP IO/M G1 y7 ISP

Hçnh 5.30. Caïc bäü giaín maî våïi âëa chè 00-07 cho a) cäøng vaìo ; b)
cäøng ra.
A0 A y0
ISP7C
A1 B y1
RD C y2
y3 ISP7F
y4 OSP7C
A2-A6 G2A y5
A7 G1 y6
WR G2B y7 OSP7S

Hçnh 5.31. Mäüt bäü giaíi maî cho cäøng vaìo vaì cäøng ra våïi âëa chè 7CH-7FH

3.3. Caïc maûch cäøng âån giaín


Trong thæûc tãú coï ráút nhiãöu vi maûch täø håüp cåî væìa coï thãø âæåüc
duìng laìm cäøng phäúi gheïp våïi bäü vi xæí lyï âãø vaìo/ra dæî liãûu. Caïc maûch
naìy thæåìng âæåüc cáúu taûo nãn tæì caïc maûch chäút 8 bit coï âáöu ra 3 traûng haï
(74LS373: kêch theo mæïc; 74LS374: kêch theo sæåìn), caïc maûch khuãúch âaûi
âãûm 2 chiãöu 8 bit âáöu ra 3 traûng thaïi (74LS245). Chuïng âæåüc duìng trong caïc
phäúi gheïp âån giaín âãø laìm cho CPU vaì thiãút bë ngoaûi vi hoaût âäüng tæång
thêch våïi nhau, vê duû nhæ âãø âãûm bus hoàûc caïc maûch cäøng âãø taûo ra caïc
tên hiãûu moïc näúi...
Trãn hçnh 5.32 laì vê duû mäüt maûch phäúi gheïp âån giaín duìng maûch
74LS373 âãø âæa tên hiãûu ra âiãöu khiãøn caïc âeìn LED bàòng lãûnh OUT 7CH,
AL.

DO QO
D Q

G DIEU KHIEN LED


BusD

373
D7 Q7

OSP7C G OC

Hçnh 5.32. Mäüt maûch phäúi gheïp ra âån giaín duìng 74LS373

Trãn hçnh 5.33 laì vê duû mäüt maûch phäúi gheïp âån giaín duìng maûch
74LS244 âãø âoüc tên hiãûu tæì thiãút bë ngoaûi vi vaìo CPU bàòng lãûnh IN Al,7CH.
DO QO

TU THIET BI VAO TOI BUSD CUA CPU

D7 Q7
244

ISP7C OC1 OC2

Hçnh 5.33. Mäüt maûch phäúi gheïp ra âån giaín duìng 74LS244

Ngoaìi caïc maûch phäúi gheïp âån giaín åí trãn, trong thæûc tãú coìn coï caïc
maûch phäúi gheïp láûp trçnh âæåüc duìng cho caïc cäng viãûc täø chæïc vaìo/ra dæî
liãûu phæïc taûp hån.
3.4. Maûch phäúi gheïp vaìo/ra song song láûp trçnh âæåüc 8255A
Maûch 8255A thæåìng âæåüc goüi laì maûch phäúi gheïp vaìo/ra láûp trçnh
âæåüc (program mable peripheral interface, PPI). Do khaí nàng mãöm deío trong caïc
æïng duûng thæûc tãú noï laì maûch phäúi gheïp âæåüc duìng ráút phäø biãún cho caïc
hãû vi xæí lyï 8-16 bit. Så âäö khäúi mä taí chæïc nàng bãn trong cuía 8255A âæåüc
thãø hiãûn trãn hçnh 5.34.
Caïc chán tên hiãûu cuía 8255A coï yï nghéa khaï roî raìng. Chán Reset phaíi
âæåüc näúi våïi tên hiãûu reset chung cuía toaìn hãû (khi reset thç caïc cäøng âæåüc
âënh nghéa laì cäøng vaìo âãø khäng gáy ra sæû cäú cho caïc maûch âiãöu khiãøn). CS
âæåüc näúi våïi maûch taûo xung choün thiãút bë âãø âàût maûch 8255A vaìo mäüt
âëa chè cå såí naìo âoï. caïc tên hiãûu âëa chè A0, A1 seî choün ra 4 thanh ghi bãn
trong 8255A 1 thanh ghi âãø ghi tæì âiãöu khiãøn cho hoaût âäüng cuía 8255A (viãút
tàõt laì CWR, control word register) vaì 3 thanh ghi khaïc æïng våïi caïc cäøng (port)
laì PA, PB, PC âãø ghi/âoüc dæî liãûu (xem baíng 5.7). Theo baíng naìy ta nháûn
tháúy âëa chè cho PA cuîng chênh laì âëa chè cå såí cuía 8255A.
Coï 2 loaûi tæì âiãöu khiãøn cho 8255A:
+ Tæì âiãöu khiãøn âënh nghéa cáúu hçnh cho caïc cäøng PA, PB, PC
+ Tæì âiãöu khiãøn láûp/xoïa tæìng bit åí âáöu ra cuía PC
PAO-PA7
Bus noäi boä NHOÙ
MA
COÅ
NG A

Ñieàu khieån
NHOÙ
MA
PC4-PC7
NHOÙ
MA
COÅ
NG C
(CAO)
Ñeäm
DO-D7
BusD

PCO-PC3
NHOÙ
MB
COÅ
NG C
(THAÁ
P)
RD Ñieàu khieån
Logic NHOÙ
MB
WR
Ñieàu khieån
AO PBO-PB7
ghi / ñoïc
A1
NHOÙ
MB
RESET COÅ
NG B

CS

Hçnh 5.34. Så âäö khäúi cáúu truïc bãn trong cuía 8255A

CS A1 A0 Choün ra
1 x x khäng choün
0 0 0 PA
0 0 1 PB
0 1 0 PC
0 1 1 CWR

 Tæì âiãöu khiãøn âënh nghéa cáúu hçnh

Daûng thæïc cuía tæì âiãöu khiãøn âãø âënh cáúu hçnh âæåüc thãø hiãûn trãn
hçnh 5.35.

 Tæì âiãöu khiãøn láûp/xoaï bit ra PCi:

Daûng thæïc cuía tæì âiãöu khiãøn âãø láûp/xoaï PCi âæåüc thãø hiãûn trãn
hçnh 5.36.

Láûp/xoaï
0 0 0 0 S/R
Maî hoaï PCi 1: láûp PCi
000 : PC0 0: xoaï PCi
...
111 : PC7

Nhæ ta tháúy åí trãn, caïc chãú âäü (mode) laìm viãûc cuía maûch cäøng 8255A
coï thãø âæåüc âënh nghéa bàòng tæì âiãöu khiãøn CWR. Cuû thãø 8255A coï 4 chãú
âäü laìm viãûc:

+ Chãú âäü 0: "Vaìo/ra cå såí" (coìn goüi laì "vaìo ra âån giaín"). Trong chãú
âäü naìy mäùi cäøng PA. PB. PCH vaì PCL âãöu coï thãø âæåüc âënh nghéa laì caïc
cäøng vaìo hoàûc ra.
+ Chãú âäü 1: "Vaìo/ra coï xung cho pheïp". Trong chãú âäü naìy mäùi
cäøng PA. PB coï thãø âæåüc âënh nghéa thaình cäøng vaìo hoàûc ra våïi tên hiãûu
moïc näúi (handshaking) do caïc bit tæång æïng cuía cäøng PC trong cuìng nhoïm
âaím nhiãûm.
+ Chãú âäü 2: "Vaìo ra 2 chiãöu".Trong chãú âäü naìy chè riãng cäøng PA
coï thãø âæåüc âënh nghéa thaình cäøng vaìo/ra 2 chiãöu våïi caïc tên hiãûu moïc näúi
do caïc bit cuía cäøng PC âaím nhiãûm. Cäøng PB coï thãø laìm viãûc trong chãú âäü
0 hoàûc 1.
+ Láûp/xoaï caïc bit PCi: chãú âäü naìy coï thãø tháúy roî trãn hçnh 5.36.

Sau âáy ta seî giåïi thiãûu cuû thãø caïc chãú âäü laìm viãûc 0, 1 vaì 2 cuía
8255A.

Chãú âäü 0: "Vaìo/ra cå såí"

Trong chãú âäü naìy, bäún cäøng PA, PB, PCH, PCL âãöu coï thãø âæåüc âënh
nghéa laì cäøng vaìo hoàûc cäøng ra. Nhæ váûy, våïi täø håüp táút caí caïc khaí nàng
vaìo/ra cho 4 cäøng âoï ta coï âæåüc 16 cáúu hçnh khaïc nhau.

Chãú âäü 1: "Vaìo/ra coï xung cho pheïp"


PA-PA PA-PA

INTEA INTEA
PC7 OBFA PC4 STBA

PC6 ACKA PC5 IBFA

WR PC3 INTRA RD PC3 INTRA

INTEA INTEA
PC1 OBFB PC2 STBB

PC2 ACKB PC1 IBFB

PC0 INTRB PC0 INTRB

PB-PB PB-PB

PC4,5 I/O PC6,7 I/O

Hçnh 5.37. Maûch 8255A åí chãú âäü 1 vaì caïc tên hiãûu traûng thaïi.

Âãø âån giaín ta coi PA vaì PB cuìng âæåüc âënh nghéa laì cäøng ra hoàûc
cäøng vaìo.

Ra dæî liãûu trong chãú âäü 1 (hçnh 5.37 a)

ÅÍ âáy PA vaì PB cuìng âæåüc âënh nghéa laì cäøng ra vaì coï tên hiãûu moïc
näúi tæång âæång nhau cho viãûc trao âäøi dæî liãûu. Ta chè cáön giåïi thiãûu åí âáy
caïc tên hiãûu cho PA, caïc tên hiãûu cho PB cuîng tæång tæû:
+ OBFA (Âãûm ra cuía PA âáöy). Tên hiãûu baïo cho thiãút bë ngoaûi vi biãút
CPU âaî ghi dæî liãûu vaìo cäøng âãø chuáøn bë âæa ra. Tên hiãûu naìy thæåìng
âæåüc näúi våïi STB cuía thiãút bë nháûn.
+ ACKA (Traí låìi âaî nháûn âæåüc dæî liãûu). Âáy laì tên hiãûu cuía thiãút bë
ngoaûi vi cho biãút laì noï âaî nháûn âæåüc dæî liãûu tæì PA cuía 8255A.
+ INTRA (Yãu cáöu ngàõt tæì PA). Âáy laì kãút quaí thu âæåüc tæì quan hãû
giæîa caïc tên hiãûu khaïc cuía 8255A trong quaï trçnh âäúi thoaûi våïi thiãút bë
ngoaûi vi, noï âæåüc duìng âãø phaín aính yãu cáöu ngàõt cuía PA tåïi CPU (xem
biãøu âäö quan hãû giæîa caïc tên hiãûu trong hçnh 5.38).
+ INTEA laì tên hiãûu cuía mäüt maûch láût bãn trong 8255A âãø cho
pheïp/cáúm yãu cáöu ngàõt INTRA cuía PA. INTEA âæåüc láûp/xoaï thäng qua bit
PC6 cuía PC.
Caïc tên hiãûu âäúi thoaûi-traûng thaïi kãø trãn âãöu coï thãø láúy træûc tiãúp
âæåüc tæì caïc chán tæång æïng cuía vi maûch hoàûc âæåüc âoüc vaìo CPU thäng qua
viãûc âoüc cäøng PC (xem hçnh 5.37c âãø tháúy traûng thaïi âoüc âæåüc khi 8255A
âæåüc âënh nghéa åí chãú âäü 1).
Vaìo dæî liãûu trong chãú âäü 1 (hçnh 5.37 b)

ÅÍ âáy PA vaì PB âæåüc âënh nghéa laì cäøng vaìo vaì coï caïc tên hiãûu moïc
näúi tæång âæång nhau cho viãûc trao âäøi dæî liãu. Ta chè cáön giåïi thiãûu åí âáy
caïc tên hiãûu cho PA, caïc tên hiãûu cho PB cuîng tæång tæû:
+ STB (Cho pheïp chäút dæî liãûu): Khi dæî liãûu âaî sàôn saìng âãø âæåüc
âoüc vaìo bàòng PA, thiãút bë ngoaûi vi phaíi duìng STB âãø baïo cho 8255A biãút
maì chäút dæî liãûu.
+ IBF (Âãûm vaìo âáöy): Sau khi 8255A chäút âæåüc dæî liãûu do thiãút bë
ngoaûi vi âæa âãún noï âæa ra tên hiãûu IBF âãø baïo cho thiãút bë ngoaûi vi biãút laì
âaî chäút xong.
+ INTRA (yãu cáöu ngàõt tæì cäøng PA): Tên hiãûu âãø baïo cho CPU biãút laì
âaî coï dæî liãûu sàôn saìng âãø âoüc tæì PA. Âáy laì kãút quaí thu âæåüc tæì quan hãû
giæîa caïc tên hiãûu khaïc cuía 8255A trong quaï trçnh âäúi thoaûi våïi thiãút bë
ngoaûi vi (xem biãøu âäö quan hãû giæîa caïc tên hiãûu trong hçnh 5.39).
+ INTEA laì tên hiãûu cuía mäüt maûch laût bãn trong 8255A âãø cho
pheïp/cáúm yãu cáöu ngàõt INTRA cuía PA. INTEA âæåüc láp/xoaï thäng qua bit PC4
cuía PC.

Mäüt säú trong caïc tên hiãûu âäúi thoaûi-traûng thaïi kãø trãn âãöu coï thãø
láúy âæåüc træûc tiãúp tæì chán tæång æïng cuía vi maûch hoàûc coï thãø âæåüc âoüc
vaìo CPU thäng qua viãûc âoüc PC (xem hçnh 5.37d).
CaÏc tên hiãûu âäúi thoaûi-traûng thaïi coï thãø âæåüc sæí duûng laìm tên
hiãûu moïc näúi cho caïc kiãøu vaìo/ra dæî liãûu bàòng caïch ngàõt CPU hay bàòng
caïch thàm doì traûng thaïi sàôn saìng cuía thiãút bë ngoaûi vi (seî âæåüc trçnh baìy
trong caïc pháön sau).

Chãú âäü 2: "Bus 2 chiãöu" (hçnh 5.40)

Trong chãú âäü naìy chè riãng cäøng PA âæåüc âënh nghéa âãø laìm viãûc nhæ
mäüt cäøng 2 chiãöu coï caïc tên hiãûu moïc näúi do mäüt säú bit cuía PC âaím
nhiãûm, coìn PB thç coï thãø laìm viãûc åí chãú âäü 1 hoàûc 0 tuyì theo caïc bit âiãöu
khiãøn trong CWR. Caïc chán tên hiãûu coìn laûi cuía PC coï thãø âæåüc âënh nghéa
âãø laìm viãûc nhæ caïc chán vaìo hoàûc ra, hoàûc phuûc vuû cho cäøng PB.
PA-PA PA-PA

PC3 INTRA PC3 INTRA

PC7 OBFA PC7 OBFA

PC6 ACKA PC6 ACKA


INTE1 INTE1

PC5 IBFA PC5 IBFA

PC4 STBA PC4 STBA


INTE2 INTE2
PB-PB

PC1 OBFB
WR PB-PB WR
PC2 ACKB
RD RD
I/O
PC-PC PC0 INTRB

Hçnh 5.40. 8255A åí chãú âäü "Bus hai chiãöu".

Mäüt säú tên hiãûu moïc näúi âàûc biãût cáön giåïi thiãûu cuía PA gäöm:

+ INTRA: Yãu cáöu ngàõt cho dæî liãûu theo hai chiãöu vaìo vaì ra.
+ INTE1 vaì INTE2 laì 2 tên hiãûu cuía 2 maûch láût bãn trong 8255A âãø cho
pheïp/cáúm yãu cáöu ngàõt cuía cäøng PA. Caïc bit naìy âæåüc láûp/xoaï båíi caïc bit
PC6 vaì PC4 cuía cäøng PC.

Biãøu âäö thåìi gian cuía caïc tên hiãûu moïc näúi cuía 8255A âæåüc biãøu
hiãûn trãn hçnh 5.41.
Mäüt säú trong caïc tên hiãûu âäúi thoaûi-traûng thaïi kãø trãn âãöu coï thãø
láúy âæåüc træûc tiãúp tæì chán tæång æïng cuía vi maûch hoàûc coï thãø âoüc âæåüc
vaìo CPU tæì cäøng PC vaì cho pheïp âiãöu khiãøn viãûc trao âäøi dæî liãûu bàòng
caïch thàm doì caïc tên hiãûu naìy.
Khi duìng 8255A trong chãú âäü bus 2 chiãöu âãø trao âäøi dæî liãûu theo caïch
thàm doì ta phaíi kiãøm tra xem bit OBFA coï bàòng 1 (âãûm ra räùng) hay khäng
træåïc khi duìng lãûnh IN âãø âoüc dæî liãûu vaìo tæì cäøng PA.
Sau âáy laì mäüt vaìi vê duû vãö caïch láûp trçnh cho 8255A.

 Vê duû 1: Giaí thiãút maûch 8255A coï caïc âëa chè sau:

Âëa chè Thanh ghi (cäøng)


7Ch PA
7Dh PB
7Eh PC
7Fh CWR
Láûp trçnh âãø âënh nghéa chãú âäü 0 cho 8255A våïi cáúu hçnh caïc cäøng
nhæ sau:

PA: Ra
PB: Vaìo
PCH: Ra
PCL: Vaìo

Sau âoï âoüc caïc giaï trë dæî liãûu coï taûi PB räöi âæa ra PA vaì
PCL räöi âæa ra PCH.

Giaíi: Coï thãø âënh nghéa caïc hàòng cho cäøng, thanh ghi tæì âiãöu khiãøn
vaì cho tæì âiãöu khiãøn nhåì lãûnh giaí EQU:
PA EQU 7CH
PB EQU 7DH
PC EQU 7EH
CWR EQU 7FH
CW EQU 83H ; tæì âiãöu khiãøn cho yãu
; cáöu trãn 83H=10000011

vaì sau âoï duìng hàòng âoï vaìo viãûc âënh nghéa cáúu hçnh cho 8255A:

MOV AL, CW ; tæì âiãöu khiãøn trong AL


OUT CWR, AL ; âæa CW vaìo CWR
IN AL, PB ; âoüc cäøng PB
OUT PA, AL ; âæa dæî liãûu âoüc âæåüc ra cäøng PA
IN AL, PC ; âoüc cäøng PCL
MOV CL, 4 ; säú láön quay AL
ROL AL, CL ; chuyãøn 4 bit tháúp thaình 4 bit cao
OUT PC, AL ; âæa dæî liãûu âoüc âæåüc ra cäøng PCH
 Vê duû 2: Láûp trçnh âãø bit PC4 cuía 8255A åí vê duû trãn taûo ra 256 xung våïi
T=50ms, âäü räüng 50%. Giaí thiãút âaî coï sàôn chæång trçnh con trãù 25ms laì
TRE25MS.

Giaíi: Sæí duûng caïc kyï hiãûu åí vê duû trãn vaì caïc âënh nghéa måïi

PC4ON EQU 09H ; tæì âiãöu khiãøn âãø PC4=1 (On): 00001001B
PC4OF EQU 08H ; tæì âiãöu khiãøn âãø PC4=0 (Off): 00001000B

ta coï máùu chæång trçnh sau:

MOV CX, 100H; säú xung phaíi taûo ra


CLI ; cáúm ngàõt âãø yãn tám maì
; taûo xung
Lap: MOV AL, PC4ON ; tæì âiãöu khiãøn cho PC4=1.
OUT PC, AL ; PC4=1
CALL TRE25MS ; keïo daìi 25ms.
MOV AL,PC4OFF ; PC4=0
CALL TRE25MS ; Làûp cho âuí säú xung
STI ; cho pheïp ngàõt tråí laûi
...

Trong vê duû trãn ta chuï yï lãûnh CLI (âãø cáúm ngàõt) vaì leûnh STI (âãø cho
pheïp ngàõt) åí âáöu vaì cuäúi âoaûn chæång trçnh tênh thåìi gian taûo ra daîy xung.
Âiãöu naìy laì cáön thiãút vç ta duìng chæång trçnh âãø taûo ra caïc khoaíng thåìi gian
vaì vç thãú ta muäún caïc yãu cáöu ngàõt (nãúu coï) khäng aính hæåíng tåïi viãûc taûo
ra caïc khoaíng thåìi gian âoï.

 Vê duû 3: coï maûch 8255A våïi âëa chè cå såí laì 30H näúi våïi caïc pháön tæí
ngoaûi vi âån giaín (hçnh 5.42). Láûp trçnh âãø coï U 1>U2 thç âoüc traûng thaïi cäng
tàõc K, nãúu K âoïng thç cho âeìn LED tàõt, K måí thç cho âeìn LED saïng.

Giaíi:
Ta phaíi âënh nghéa caïc hàòng vaì tæì âiãöu khiãøn âãø âënh nghéa cáúu hçnh:
PA laì vaìo, PB laì vaìo vaì PC H laì ra. Khi U1>U2 thç ta âoüc âæåüc PB7=1 (coìn khi
U 1  U 2 thç PB7=0). Luïc naìy ta phaíi âoüc traûng thaïi cäng tàõc K âãø âiãöu khiãøn
âeìn LED, nãúu K âoïng thç ta âoüc âæåüc PB7=0 vaì ta phaíi âæa ra PC4=) âãø tàõt
âeìn.

Âënh nghéa caïc hàòng

PA EQU 30H
PB EQU 31H
PC EQU 32H
CWR EQU 33H
CW EQU 92H ; tæì âiãöu khiãøn cho yãu
; cáöu trãn 92H=10010010
âoaûn chæång trçnh coìn laûi laì:

MOV AL, CW ; tæì âiãöu khiãøn trong AL


OUT CWR, AL ; âæa CW vaìo CWR
DocPB: IN AL, PB ; âoüc cäøng PB
AND AL, 80H ; PB7=1?
JZ DocPB ; âoüc laûi
IN AL, PA ; âoüc cäøng PA
And AL, 01H ; khoaï K âoïng (PA1=0)?
JZ Tat ; âuïng, tàõt âeìn
MOV CL, 4
ROL AL, CL ; âäøi bit0 lãn bit4
OUT PC, AL ; âæa tên hiãûu thàõp âeìn
Tat: OUT PC, AL ; âæa tên hiãûu tàõt âeìn
Ra:...

You might also like