Ki Thuat Vxl

  • Uploaded by: le thanh
  • 0
  • 0
  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Ki Thuat Vxl as PDF for free.

More details

  • Words: 19,394
  • Pages: 47
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ãø . + ADO - AD7 [I;O : tên hiãû u vaì o vaì ra] : Caï c chán däö n kãnh cho caï c tên hiãû u pháö n tháú p cuí a bus dæî liãû u vaì 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æî liãû u (ALE = 0) hoàû c âëa chè (ALE = 1). Caï c chán naì y åí traû ng thaï i tråí khaï ng cao khi µP cháú p nháû n treo. + A8 - A15 [O] : Caï c bit pháö n cao cuí a bus âëa chè. Caï c chán naì y åí traû ng thaï i tråí khaï ng cao khi µP cháú p nháû n treo. + A16/S3, A17/S4, A18/S5, A19/S6 [O] : Caï c chán däö n kãnh cuí a âëa chè pháö n cao vaì traû ng thaï i. Âëa chè A16 - A19 seî coï màû t taû i caï c chán âoï khi

ALE = 1 coì n khi AEL = 0 thç trãn caï c chán âoï coï caï c tên hiãû u traû ng thaï i S3 S6. Caï c chán naì y åí traû ng thaï i tråí khaï ng cao khi µP cháú p nháû n treo. Tên hiãûu âiãöu khiãøn hãû thäúng

Tên hiãûu âiãöu khiãøn bus

Âiãöu khiãøn CPU

IO/ M ( SI )

A/D0

DT/R( S 2 )

A/D1

RD WR ( LOCK ) DEN ( SO ) SSO

A/D2 A/D3 A/D4

READY

A/D5 A/D6

HOLD ( RQ / GT 0 )

A/D7

HLDA ( RQ / GT 1 )

A8

INTA (QS1) ALE (QS0) NMI INTR RESET

A9 A10 A11 A12 A13

MN/ MX ) TEST CLK Vcc GND µP GND

A14 A15 A16/S3 A17/S4 A18/S5 A19/S6

8088

Âäöng häö Vaì nguäön

8 âæåìng däön kãnh cuía bus A/D pháön tháúp

8 âæåìng cuía bus A pháön cao

4 âæåìng däön kãnh cuía bus 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 0 0 1

S3 0 1 0

1

1

Truy nháû p âãú n Âoaû n dæî liãû u phuû Âoaû n ngàn xãú p Âoaû n maî hoàû c khäng âoaû n naì o Â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.

AND A14 A13 A12 A11 A10 A9 A8 A/D7 A/D6 A/D5 A/D4 A/D3 A/D2 A/D1 A/D0 NMI INTR CLK GND

1 2 3 4 5 6 7 8 9 10 11µP 12 Intel 13 8088 14 15 16 17 18 19 20

40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21

Chãú âäü MIN

Vcc A15 A16/S3 A16/S4 A16/S5 A16/S6

SSO MN/ MX ) RD HOLD HLDA

WR IO/ M DT/ R DEN ALE

INTA TEST READY RESET

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

Chãú âäü MAX

(High)

( RQ / GT 0 ) ( RQ / GT 1 ) ( LOCK ) ( S2) ( S1 ) ( S0 ) (QS0) (QS1)

+ 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 IO/ M

DT/ R

0 0 0

0 0 1

SS0

0 1 0

Chu kyì âiãö u khiãø n cuí a bus Âoü c maî lãû nh Âoü c bäü nhåï Ghi bäü nhåï

0 1 1 1 1

1 0 0 1 1

1 0 1 0 1

Bus räé (nghé) Cháú p nháû n yãu cáö u ngàõ t Âoü c thiãú t bë ngoaû i vi Ghi thiãú t bë ngoaû i vi 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.

S2

S1

S0

0 0

0 0

0 1

Chu kyì âiãö u khiãø n cuí a bus Cháú p nháû n yãu cáö u ngàõ t Âoü c thiãú t bë ngoaû i vi

0

1

0

Ghi thiãú t bë ngoaû i vi

0 1 1

1 0 0

1 0 1

Dæì ng (halt) Âoü c maî lãû nh Âoü c bäü nhåï

Tên hiãû u INTA IORC IOWC, AIOWC Khäng MRDC MRDC

1

1

0

Ghi bäü nhåï

1

1

1

Bus räù i (nghé)

MWTC, AMWC

Khäng

+ RQ / GT 0 vaì RQ / GT1 [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 / GT1 . + 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/ M

OC1 LS244

RD WR A19/S6 A18/S5 A17/S4 A16/S3

A15 A14 A13 A12 A11 A10 A9 A8

LS373 G/ OC

OC1, 2 LS244

IO/ M

RD WR

Bus âiãöu khiãøn

A19 A18 A17 A16

A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1

Bus Âëa chè

LS373 G

OC

LS245

Bus Dæî liãûu

G DIR

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 fx 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 10k

K

8284 RES RESET F/ C CSYNC

8088 RESET

+ 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, vi maû ch 8288 laì maû ch âiãö u khiãø n bus, noï láú y 1 säú tên hiãû u âiãö u khiãø n cuí a CPU vaì cung cáú p táú t caí caï c tên hiãû u âiãö u khiãø n cáö n thiãú t cho hãû vi xæí lyï khi CPU 808aì m viãû c åí chãú âäü MAX. Så âäö chán vaì caï c tên hiãû u cuí a 8288 âæåü c thãø hiãû n trãn hçnh 5.7. Caï c tên hiãû u chênh cuí a 8288 bao gäö m : IOB CLK

S1 DT/ R ALE

AEN AMWC MWTC

GND

1 2 3 4 5 6 7 8 9 10

8288

20 19 18 17 16 15 14 13 12 11

Vcc

S0 S2 MCE/ PDEN DEN CEN

INTA IORC AIOWC IOWC

AEN : address enable CEN : command enable IOB : input/output bus mode MRDC : memory read comm MWTC : memory write comm AMWC : advanced MWTC IORC : i/o read command IOWC : i/o write command AIOWC : advanced IOWC DT/ R : data transmit/receive DEN : data enable

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 0 [I, I, I] : laì caï c tên hiãû u traû ng thaï i láú y thàó ng tæì 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 CLK

T2

T3

T4

Tw ALE A/S A16/S3 A19/S6

Âëa chè

Tên hiãûu traûng thaïi

A (A8-A15)

A/D (AD0-AD7

Âëa chè äøn âënh

Âëa chè

Dæî liãûu ghi

TWr

tgiæî W

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 CLK

T2

T3

T4

Tw ALE ttrãùâëac ADRS A16/S3 A19/S6

Âëa chè

ADR (A8-A15)

Tên hiãûu traûng thaïi

Âëa chè äøn âënh 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 Tw , 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ì TRD = 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 tgiæî 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ì TWR = 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 hiãû u âëa chè

WR

A0 A1 A2

D0 D1 D2

Am

Dn

CS

OE

Tên hiãû u dæî liãû u

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ä = 210 = 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 t ac. 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 tac = 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ï tac = 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 CE /PG

Chuí A0 - A10 D0 - D7

OE

Vpp

CE /PGM

Chãú âäü

M

OE Vpp

Vcc

[V]

[V]

D0 - D7

Âoü c Duy trç Ghi

0 1

0 X 1

+5 +5 +25

+5 +5 +25

Dout HZ Din

0 1

+25 +25

+5 +5

Dout HZ

50ms

Kiãø m tra Cám ghi

A0 - A10 : Âëa chè D0 - D7 khaï ng cao OE : cho pheï p âæa dæî liãû u ra CE /PGM : âiãû n aï p ghi

0 0

x : khäng quan tám HZ : Traû ng thaï i tråí

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 - D7

OE WE

CS

A0 - A10 : Âëa chè D0 - D7 : Dæî liãûu OE : cho pheïp âæa dæî liãûu ra WE : Cho pheïp ghi CS : Choün voí

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 D0 - D3

OE WE CAS

RAS

A0 - A7 : Âëa chè D0 - D3 : Dæî liãûu CAS : xung cho pheïp chäút âëa chè cäüt 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åï

A0 - A9

Di D0

WE CAS

RAS

A0 - A9 : Âëa chè Di : Dæî liãûu vaìo D0 : Dæî liãûu ra CAS : xung cho pheïp chäút âëa chè 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.

Tên hiãûu âëa chè Tên hiãûu â/khiãøn

Maûch giaíi maî âëa chè

CS1 CS 2

Caïc tên hiãûu choün voí

CS 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 D0 - D7

Bus B

OE

RD A13 A14 A15

A

Y

B

Y1

C

Y2

LS138

Y3

Y

CE

F0000-F1FFF

Caïc chán choün voí cho 7 maûch 2764-15 khaïc

A17 A16 A18

IO/ M A19

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è F0000HFFFFFH. Cho caï c maû ch nhåï EPROM 8 KB (duì ng 8x2764-15, tac = 150ns). Haî y duì ng maû ch giaí i maî kiãø u 74LS138 âãø thæû c hiãû n. Caïc âáöu vaìo choün

A

Y

B

Y1

C

Y2 138

Caïc âáöu vaìo cho gheïp

Caïc âáöu ra cuía maûch giaíi maî

Y3 Y4

G2 A

Y

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.

Bus A Bus D

A0 - A12 2764-15 D0 - D7

OE

CE

RD A13 A14 A15 A16 A17 A18 A19 A20

A0 O0 A1 O1 A2 A3 A4 A5 A6 A7 A8

F0000-F1FFF

O2 O3 O4 O5 O6 O7 O8

Caïc chán choün voí cho 7 maûch 2764-15 khaïc

FE000-FFFFF

IO/ M

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 Bus D

Bäü taûo Tw

Tåïi RYD1 Cuía 8284

2732 D0 - D7

OE RD A12 A13 A14

A15 A16 A17 A18 A19

CS

A

Y

B

Y1

C

Y2

LS138

Y3

CE

F0000-F1FFF

Caïc chán choün voí cho 7 maûch 2764-15 khaïc

Y4

Vcc

G2 A

Y

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 Reset

A-H

CLR Q

280 A

D

A-H

Even

1

Even

CLK

1 D WR

RD

RD A0-A11

Bus A WR

A0-A11 1 A

y0

1 B

( 2016 la ø 2 KB )

* 193 1E

y3 RD WR

A 11 A 12 A 13

A B C G2A

y0 y1

A0-A10 D0-D7

* 138

8 x 2016

G2B G1 A14 - A19

y7

( 2016 la ø 2 KB )

+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

MAO-MA7

ALE 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ø ñieàu khieån

ACW REFERQ

CAS

Troïng taøi RDY

TWST FS0 FS1

Taïo xung laøm töôi

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äú fCLK = 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äú traû ng thaï i chåì

Chu kyì laì m tæåi

0 0 0 0 1 1 1 1

0 0 1 1 0 0 1 1

0 1 0 1 0 1 0 1

0 0 0 0 1 1 1 1

ngoaì i Tclk × 31 Tclk × 46 Tclk × 61 Tclk × 46 Tclk × 61 Tclk × 76 Tclk × 76

Táö n säú xung laì m tæåi(KHz) REFREQ 64-95 64-85 64-82 64-85 64-80 64-77 64-88

Säú nhëp cho 1 láö n laì m tæåi 4 3 3 4 3 4 4 4

RA0-RA7 MA0-MA7

A0-A7

CA0-CA7 2X4464 RAS0

ALE

RAS CAS

REN1 ACR

CAS

ACW TNS 4500A A0-A7

CS

CAS RDY

RAS1

CLK TWST

FS FS

RAS 2X4464

1K

+5V

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 B C

A 11 A 12 A 13 AO-A7

G2B RD IO/M

G2A G1

y0 y1 y2 y3 y4 y5 y6 y7

ISP

A B C

A 11 A 12 A 13 AO-A7

ISP

G2B WR IO/M

G2A G1

y0 y1 y2 y3 y4 y5 y6 y7

ISP

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 A1 RD

A B C

A2-A6 A7

G2A

WR

G2B

G1

y0 y1 y2 y3 y4 y5 y6 y7

ISP7C ISP7F OSP7C

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

D

QO

Q G

BusD

DIEU KHIEN LED

373

D7

OSP7C

G

Q7

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 TOI BUSD CUA CPU

TU THIET BI VAO

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ï 816 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

NHOÙM A COÅNG A

Bus noäi boä

PAO-PA7

Ñieàu khieån NHOÙM A NHOÙM A COÅNG C DO-D7

PC4-PC7

(CAO)

Ñeäm BusD

NHOÙM B COÅNG C

PCO-PC3

(THAÁP) RD WR AO

Ñieàu khieån Logic

NHOÙM B

Ñieàu khieån PBO-PB7

ghi / ñoïc

A1

NHOÙM B COÅNG B

RESET CS

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

A1 x 0 0 1 1

A0 x 0 1 0 1

Choü n ra khäng choü n PA PB PC 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 000 : PC0 ... 111 : PC7

1: láû p PCi 0: xoaï PCi

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

WR INTEA

STBA

PC5

IBFA

PC3

INTRA

PC2

STBB

ACKB

PC1

IBFB

INTRB

PC0

INTRB

OBFA

PC6

ACKA

PC3

INTRA

PC1

OBFB

PC2

PC0

PB-PB PC4,5

INTEA

PC4

PC7

RD INTEA

PB-PB 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-tr aû 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-tr aû 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

PC5

IBFA

PC4

STBA

INTE1 PC5

IBFA

PC4

STBA

INTE2

INTE1

INTE2 PB-PB

WR

PB-PB

RD PC-PC

WR I/O

RD

PC1

OBFB

PC2

ACKB

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è 7Ch 7Dh

Thanh ghi (cäø ng) PA PB

7Eh 7Fh

PC 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 PC4OF

EQU 09H EQU 08H

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

ta coï máù u chæång trçnh sau: MOV CX, 100H CLI

; säú xung phaí i taû o ra ; 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ï U1>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ì PCH 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 PB PC CWR CW

EQU EQU EQU EQU EQU

30H 31H 32H 33H 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 OUT CWR, AL

; tæì âiãö u khiãø n trong AL ; âæa CW vaì o CWR

DocPB: IN AL, PB AND AL, 80H JZ DocPB IN AL, PA And AL, 01H JZ Tat MOV CL, 4 ROL AL, CL OUT PC, AL Tat: OUT PC, AL

; âoü c cäø ng PB ; PB7=1? ; âoü c laû i ; âoü c cäø ng PA ; khoaï K âoï ng (PA1=0)? ; âuï ng, tàõ t âeì n ; âäø i bit0 lãn bit4 ; âæa tên hiãû u thàõ p âeì n ; âæa tên hiãû u tàõ t âeì n Ra:...

Related Documents

Ki Thuat Vxl
November 2019 19
Ki Thuat Vxl
November 2019 18
Ki Thuat Vxl
November 2019 22
Ki Thuat Vxl
November 2019 19
Ki Thuat Vxl
November 2019 16
Ki Thuat Vxl
November 2019 13

More Documents from "le thanh"

Thiet_ke_kcd_ha
November 2019 24
10_truyen Thong Noi Tiep
November 2019 18
Ki Thuat Vxl
November 2019 21
Ki Thuat Vxl
November 2019 28
Ki Thuat Vxl
November 2019 20