Upload
lee-tuyen
View
276
Download
7
Embed Size (px)
Citation preview
7/31/2019 Giao Trinh Ghep Noi May Tinh
1/79
Bi ging mn hc: K thut ghp ni my tnh
Bi m u 3Chng 1i cng v k thut ghp ni my tnh...........................................................4
1.1Yu cu trao i tin ca my vi tnh i vi mi trng bn ngoi.....................................................4
1.1.1.Yu cu trao i tin vi ngi iu hnh......................................................................................41.1.2.Yu cu trao i tin vi thit b ngoi thng dng........................................................................41.1.3.Yu cu trao i tin trong mng my tnh.....................................................................................4
1.2Dng v cc loi tin trao i gia my vi tnh v thit b ngoi (TBN)...............................................41.2.1.Dng tin (s)...................................................................................................................................41.2.2.Cc loi tin.....................................................................................................................................5
1.3Vai tr nhim v v chc nng ca khi ghp ni (KGN)...................................................................51.3.1.Vai tr.............................................................................................................................................51.3.2.Nhim v........................................................................................................................................61.3.3.Chc nng......................................................................................................................................7
1.4Cu trc chung ca mt khi ghp ni..................................................................................................7
1.5Chng trnh phc v trao i tin cho khi ghp ni...........................................................................8Chng 2Giao tip vi tn hiu tng t.........................................................................102.1Khi nim tn hiu analog v h o lng iu khin s....................................................................102.2Chuyn i tn hiu s sang tng t DACs.......................................................................................10
2.2.1.Cc tham s chnh ca mt DAC ..........................................................................112.2.2.DAC chia in tr (Resistive Divider DACs).............................................................................112.2.3.DAC trng s nh phn (Binary Weighted DACs).....................................................................122.2.4.DAC iu bin rng xung (PWM DACs).............................................................................13
2.3Chuyn i tn hiu tng t - s ADCs: ...........................................................................................132.3.1.Cc tham s chnh ca mt ADC................................................................................................14
Chng 3Th tc trao i tin ca my vi tnh.................................................................15
3.1Cc ch trao i tin ca my vi tnh...............................................................................................153.2Trao i tin ngt vi x l.....................................................................................................................163.2.1.Cc loi ngt ca my vi tnh PC................................................................................................163.2.2.X l ngt cng trong IBM - PC:................................................................................................193.2.3.Lp trnh x l ngt cng:...........................................................................................................22
3.3Trao i tin trc tip khi nh.............................................................................................................253.3.1.C ch hot ng:........................................................................................................................253.3.2.Hot ng ca DMAC:................................................................................................................253.3.3.Chip iu khin truy nhp b nh trc tip DMAC 8237 (Direct Memory Access Controller)
26Chng 4Rnh cm m rng...........................................................................................32
4.1t vn .............................................................................................................................................324.2Bus PC..................................................................................................................................................324.3Bus ISA (16 bit)...................................................................................................................................334.4Bus PCI.................................................................................................................................................334.5Ghp ni qua khe cm m rng...........................................................................................................34
4.5.1.Mt s c im ca Card ISA....................................................................................................344.5.2.Gii m a ch v kt ni Bus d liu........................................................................................34
5.1Khi ghp ni song song n gin......................................................................................................365.2Cc vi mch m, cht (74LS245, 74LS373).....................................................................................37
1
7/31/2019 Giao Trinh Ghep Noi May Tinh
2/79
5.2.1.Vi mch m 74LS245:...............................................................................................................375.2.2.Vi mch cht 74LS373:...............................................................................................................37
5.3Vi mch PPI 8255A.............................................................................................................................385.3.1.Gii thiu chung...........................................................................................................................385.3.2.Cc lnh ghi v c cc cng v cc thanh ghi iu khin.........................................................405.3.3.Cc t iu khin.........................................................................................................................405.3.4.Ghp ni 8255A vi MVT v TBN.............................................................................................43
5.4Ghp ni song song qua cng my in..................................................................................................485.4.1.Ghi thiu chung..........................................................................................................................485.4.2.Cu trc cng my in...................................................................................................................495.4.3.Cc thanh ghi ca cng my in:...................................................................................................515.4.4.EPP - Enhanced Parallel Port.......................................................................................................53
6.1t vn .............................................................................................................................................596.2Yu cu v th tc trao i tin ni tip:..............................................................................................59
6.2.1.Yu cu: .......................................................................................................................................596.2.2.Trao i tin ng b: Synchronous.............................................................................................606.2.3.Trao i tin khng ng b - Asynchronous:.............................................................................60
6.3Truyn thng ni tip s dng giao din RS-232:...............................................................................61
6.3.1.Qu trnh truyn mt byte d liu:..............................................................................................616.3.2.Cng ni tip RS 232...................................................................................................................62
Ti liu tham kho:...........................................................................................................79
2
7/31/2019 Giao Trinh Ghep Noi May Tinh
3/79
Bi m u
3
7/31/2019 Giao Trinh Ghep Noi May Tinh
4/79
Chng 1: i cng v k thut ghp ni my tnh
Chng 1 i cng v k thut ghp ni my tnh
1.1 Yu cu trao i tin ca my vi tnh i vi mi trng bn ngoi
1.1.1. Yu cu trao i tin vi ngi iu hnh
Ngi iu hnh (ngi s dng) my vi tnh (MVT) cn a lnh (di dng ch) v s liuthng qua bn phm. Khi ngi iu hnh bm vo cc phm ca bn phm nhng m c to rav c truyn vo b nh ca MVT v ng thi hin th ln mn hnh cc ch v con s bm.
1.1.2. Yu cu trao i tin vi thit b ngoi thng dng
Cc thit b a tin vo
Cc thit b a tin ra
Cc b nh ngoi
Yu cu trao i tin vi thit b ngoi khc
Trong h o vt l, MVT cn nhn cc tin vt l( nhit , p xut, lc, dng in, vv ) didng tn hiu in thng qua du d b pht hin (detector ), cm bin (sensor ), b chuyn i(tranducer ). Hn na MVT cn nhn cc tin v trng thi sn sng hay bn ca cc thit b o.Trong h o - iu khin, MVT cn:
Nhn tin v s liu o, v trng thi thit b o
a tin v s chp nhn trao i tin vi thit b ngoi, v lnh iu khin cc c cu chp
hnh (Cc ng c servo, cc van ng m, cc thit b ng ngt mch in, vv ) v ccthng s k thut cho thit b.
Trong cc h lu tr v biu din tin, MVT cn a tin ra :
Lu tr trn bng t, a t, bng giy v a compac
Biu din kt qu o di dng bng s liu, dng th trn giy ca my v hay trnmn hnh ca thit b u cui.
1.1.3. Yu cu trao i tin trong mng my tnh
Mt my tnh trong mng cn trao i tin vi nhiu ngi s dng mng, vi nhiu my vitnh khc, vi nhiu thit b ngoi nh: cc thit b u cui, cc thit b nh ngoi, cc thit blu tr v biu din tin.
1.2 Dng v cc loi tin trao i gia my vi tnh v thit b ngoi (TBN)
1.2.1. Dng tin (s)MVT ch trao i tin di dng s vi cc mc logic 0 v 1
4
7/31/2019 Giao Trinh Ghep Noi May Tinh
5/79
Chng 1: i cng v k thut ghp ni my tnhThit b ngoi li trao i tin vi nhiu dng khc nhau nh dng s, dng k t, dng tng t, dng mtn hnh sin tun hon
1.2.2. Cc loi tin
MVT a ra thit b ngoi mt trong 3 loi tin:
Tin v a ch: l cc tin ca a ch TBN hay chnh xc hn, l a ch thanh ghi m
ca khi ghp ni i din cho TBN Tin v lnh iu khin: l cc tn hiu iu khin khi ghp ni hay TBN nh ng
m thit b, c hoc ghi mt thanh ghi, cho php hay tr li yu cu hnh ng, vv
Tin v s liu: l cc s liu cn a ra cho thit b ngoi
My tnh nhn tin vo t TBN v mt trong hai loi tin:
Tin v trng thi ca TBN: l tin v s sn sng hay yu cu trao i tin, v trng thisai li ca TBN
Tin v s liu: l cc s liu cn a vo MVT
1.3 Vai tr nhim v v chc nng ca khi ghp ni (KGN)
1.3.1. Vai tr
Khi ghp ni nm gia MVT v TBN ng vai tr bin i v trung chuyn tin gia chng
5
7/31/2019 Giao Trinh Ghep Noi May Tinh
6/79
Chng 1: i cng v k thut ghp ni my tnh
1.3.2. Nhim v
Phi hp v mc v cng sut tn hiu
- Mc tn hiu ca MVT thng l mc TTL (0V 5V) trong khi TBN c nhiu mc khc nhau,thng thng cao hn ( 15V, 48V)- Cng sut ng dy MVT nh, TBN ln- Thng dng cc vi mch 3 trng thi
Phi hp v dng tin:
Trao i tin ca MVT thng l song song, cua TBN i khi l ni tip
Phi hp v tc trao i tin
Phi hp v phng thc trao i tin
m bo trao i tin mt cch tin cy gia MVT v TBN, cn c KGN v cch trao itin din ra theo trnh t nht nh.
Vic trao i tin do my tnh khi xng(1) MVT a lnh d khi ng TBN hay khi ng KGN(2) MVT c tr li sn sng trao i hay trng thi sn sng ca TBN. Nu c trng thi
sn sng mi trao i tin, nu khng, ch v c li trng thi(3) MVT trao i khi c thy trng thi sn sng
Ngunpht
MVT
Ngunnhn
Ngunnhn
TBN
Ngunpht
Ngunpht
Ngunnhn
Ngunnhn
Ngunpht
Ghp ni ngdy MVT
Ghp ni ngdy TBN
V tr v vai tr ca khi ghp ni
6
7/31/2019 Giao Trinh Ghep Noi May Tinh
7/79
Chng 1: i cng v k thut ghp ni my tnh
Vic trao i tin do TBN khi xng:(1) gim thi gian ch i trng thi sn sng ca TBN, MVT c th khi ng
TBN ri thc hin nhim v khc. Vic trao i tin din ra khi:(2) TBN a yu cu trao i tin vo b phn x l ngt ca KGN, a yu cu ngt
chng trnh cho MVT(3) Nu c nhiu TBN a yu cu ng thi, KGN sp xp theo u tin nh sn, ri
a yu cu trao i tin cho MVT(4) MVT nhn yu cu , sa son trao i v a tn hiu xc nhn sn sng trao i(5) KGN nhn v truyn tn hiu xc nhn cho TBN(6) TBN trao i tin vi KGN v KGN trao i tin vi MVT (nu a tin vo)(7) MVT trao i tin vi TBN qua KGN (nu a tin ra)
1.3.3. Chc nng Chc nng nhn tn hiu ( listener)
- Nhn thng bo a ch t MVT
- Nhn thng bo trng thi t TBN- Nhn lnh iu khin t MVT- Nhn s liu t MVT Chc nng ngun tn hiu (talker)
- Pht a ch cho khi chc nng ca TBn- Pht lnh cho TBN- Pht yu cu hay trng thi ca TBN cho MVT- Pht s liu cho TBN hay cho MVT Chc nng iu khin (Controler)
Ni chung KGN thng c ng thi hai chc nng trn, c bit khi ghp ni vi nhiu TBN
Cu trc chung ca mt h ghp ni my tnhCu trc ng dy ca KGN vi MVTBt c KGN no cng ni vi MVT v TBN theo cc nhm sau Nhm ng dy a ch A0 - An- Cc tn hiu ny c gii m trong cc KGN chn cc TBN cn lin lc vi MVT- Tp hp cc tn hiu ny to thnh bus a ch (address bus) Nhm ng dy lnh- ng dy c, ng dy vit truyn lnh c (RD) hay vit cho KGN.- ng dy hi thoi t chc phi h hnh ng gia MVT v KGN, m bo s hot ng nhp
nhng, tin cy gia chng nh:Hi - tr liYu cu (t KGN vo MVT) v chp nhn (t MVT ra KGN) : yu cu ngt INTR v chp
nhn ngt INTA- ng dy lnh iu khin KGN hay TBN Nhm ng dy nhp thi gian Nhm ng dy in p ngun
1.4 Cu trc chung ca mt khi ghp ni
7
7/31/2019 Giao Trinh Ghep Noi May Tinh
8/79
Chng 1: i cng v k thut ghp ni my tnh
Khi phi hp ng dy MVT- Phi hp mc v cng sut tn hiu vi bus MVT. Thng dng vi mch chuyn mc, vi mch
cng sut- C lp ng dy khi khng c trao i tin Khi gii m a ch - lnh: Nhn cc tn hiu t bus a ch, cc tn hiu c, ghi, cht a ch
(ALE), t hp thnh cc tn hiu c, ghi v chn chp cho tng thit b ca KGN v TBN. Cc thanh ghi m- Thanh ghi iu khin ch - Thanh ghi trng thi hay yu cu trao i cuatr TBN- Thanh ghi m s liu ghi- Thanh ghi m s liu c Khi x l ngt- Ghi nhn, che chn yu cu trao i tin ca TBN. X l u tin v a yu cu vo MVT
Khi pht nhp thi gian- Pht nhp thi gian cho hnh ng bn trong KGN hay cho TBN. i khi ng b, khi cn
nhn tn hiu nhp ng h (clock) t bus my tnh Khi m thit b ngoi- Bin i mc tn hiu, cng sut v bin i dng tin Khi iu khin : iu khin hot ng ca khi nh pht nhp thi gian, ch hot ng
1.5 Chng trnh phc v trao i tin cho khi ghp ni
X l ngt
Thanh ghitrng thi
Thanh ghiiu khin
Thanh ghim c
Thanh ghi
m vit
Gii ma ch -
lnh
LnhcLnhvit
A0
- Ann
WR
DO0
- DOn
DI0
- DIn
Phihpngdym
ytnh
Phihp
ngdythitbngo
i
Lnh c
Lnh vit
Lnh vit
Lnh c
DI0
- DIn
DO0
- DOn
iu khin A
iu khin B
Yu cu A
Yu cu B
cmngtn
WR
Yu cu (INTR)
Xc nhn (INTA)
ngdym
ytnh(Syst e
m
bu
s)
ngdythitbngo
i
S khi khi ghp ni
Cc lnhchn chp
8
7/31/2019 Giao Trinh Ghep Noi May Tinh
9/79
Chng 1: i cng v k thut ghp ni my tnh
Mi khi ghp ni cn c mt chng trnh phc v trao i tin ( thng thng vit bngAssembly) v khi s dng, ngi dng cn vit chng trnh ng dng.
Vi chng trnh phc v trao i tin, cn c cc thao tc sau:
Khi ng KGN
Ghi che chn v cho php ngt
c trng thi TBN
Ghi s liu ra
c tin s liu
9
7/31/2019 Giao Trinh Ghep Noi May Tinh
10/79
Chng 2 Giao tip vi tn hiu tng t
2.1 Khi nim tn hiu analog v h o lng iu khin s
Vic s dng phng php s trong x l thng tin v iu khin ang ngy cng hiu qu vthun li. Tuy nhin hu ht cc tn hiu trong th gii thc li l tn hiu dng tng t
(analog). Do bt k h thng no mun x l cc tn hiu thc t bng phng php s th nphi c kh nng chuyn i cc thng tin tng t thnh dng s v ngc li. Thao tc thng c thc hin bng cc thit b ADC (Analog to Digital Converter) v DAC (Digital toAnalog Converter).
Hnh 2.1: M hnh h thng x l tn hiu tng t bng phng php s
H thng x l tn hiu tng t bng phng php s ni chung l mt h lai, trong sliu tng t s c truyn, lu tr , hay x l bng phng php s nh cc b vi x l s.TRc khi s l, tn hiu tng t phi c chuyn thnh tn hiu s nh b chuyn i tn hiu
tng t sang s (ADC). Kt qu ca php x l s c chuyn ngc li thnh dng tng tnh b chuyn i tn hiu s thnh tng t (DAC).
2.2 Chuyn i tn hiu s sang tng t DACs
Mt b chuyn i tn hiu s thnh tng t DAC lmt dng c bit ca mt b gii m. N gii m tn hius u vo v chuyn thnh tn hiu tng t u ra.Bng chn l ca n c th c dng nh sau:
Hnh 2.2: Bng gi tr chn l ca mt DAC
10
7/31/2019 Giao Trinh Ghep Noi May Tinh
11/79
Chng 2: Giao tip tn hiu tng t
2.2.1. Cc tham s chnh ca mt DACTham s n v Gii thch
phn gii(revolution)
Bit
y l s bit m DAC x l. Nu DAC c n bit th gi tr in p ura c th phn thnh n trng thi c gi tr cch u nhau. Mi gi trtng ng vi mt m s u vo. S bit n cng cao th DAC c
phn gii cng lnGii in p tham chiu(Vref) FSR
VCh ra mc in p ln nht v nh nht c th c s dng nhin p tham chiu t bn ngoi
Sai s phn cc imkhng
mVL lch gia in p tng t u ra thc t vi u ra l tng0V khi u m b hai vo l 0 c a vo thanh ghi u vo
phi tuyn vi phn(Non-Linearity,Differential - DNL)
LSB hay%Vref
L chnh lch gia thay i gi tr ip p ra thc t vi thay i in p ra l tng trong trng hp u vo s thay imt bit LSB , hay d thay i gia hai gi tr s k nhauVD: +/- 1 LSB; +/- 0.001% FSR
phi tuyn tch phn(Non-Linearity, Integral- INL) hay chnh xctng i (RelativeAccuracy)
LSBL sai s ln nht gia u ra vi ng thng ni gia im 0 vim ton thang (gi tr ln nht ca thang o) ngoi tr sai s imkhng v sai s ton thangVD: +/-1 LSB typ.; +/- 4 LSB's max.
Gii u ra tng thay gii ton thangAnalog Output Rangeor Full-Scale Range
VL chnh lch gia gi tr tng t ln nht v nh nht m DACc th cung cpVD: -3V to +3V, Bipolar Mode
Mc in p logic caou voLogic Input Voltage,Vih (Logic "1")
VL in p nh nht ca tn hiu s u vo DAC m bo c nhnl mc logic 1
VD: 2.4 V min.
Logic Input Voltage,Vil (Logic "0")
VL in p ln nht ca tn hiu s u vo DAC m c nhn lmc logic 0"VD: : 0.8 V max
in p ngun dngAnalog Positive PowerSupply (+Vs)
VL di in p c th dng lm ngun cung cp dng cho DACVD: +4.75V min.; +5.0V typ.; +13.2V max.
in p ngun mAnalog Negative PowerSupply (-Vs)
VL di in p c th s dng lm ngun cung cp m cho DACVD: -13.2V min.; -5V typ.; -4.75V max.
in p mc logicdngLogic Positive PowerSupply (+VL)
VL di in p c th s dng cho mc logic dng ca DAC:VD: +4.75V min.; +5.0V typ.; +13.2V max.
in p mc logic mLogic Negative PowerSupply (-VL)
VL di in p c th s dng cho mc logic dng ca DACVD: -13.2V min.; -5V typ.; -4.75V max.
2.2.2. DAC chia in tr (Resistive Divider DACs)
11
7/31/2019 Giao Trinh Ghep Noi May Tinh
12/79
DAC theo phng php chia in tr c l l kiu DAC n gin nht. DAC kiu ny sdng mt chui in tr mc ni tip vi nhau to ra mt tp cc gi tr in p cch u nhaugia +Vref v Vref. Tn hiu s u vo xc nh tn hiu in p no c ni vi b khuchi thng qua cc cc b chuyn mch.
Mc d phng php chia in tr c th d hiu, nhng n tr nn km hiu qu vi cc bDAC c phn gii cao. Mi bit thm vo cho phn gii ca DAC i hi tng gp i sin tr v cng tc. V d nh vi DAC 12 bit th phi cn ti 4095 in tr v 4096 cng tc.
Hnh 2.3: DAC chia in tr
2.2.3. DAC trng s nh phn (Binary Weighted DACs)
Khi phn gii ca DAC t ti 6 hay 7 bit, kin trc thang in tr thng cho mtphng php hiu qu hn
Phng php ny cho ta li ch chnh l chng tit kim din tch vi mch. Chng hn nhmt DAC 9 bit ch cn 1 in tr v 1 cng tc thm vo so vi DAC 8 bit
Hnh 2.4: DAC trng s nh phn
12
7/31/2019 Giao Trinh Ghep Noi May Tinh
13/79
Chng 2: Giao tip tn hiu tng t
2.2.4. DAC iu bin rng xung (PWM DACs)
Phng php DAC iu bin rng xung (Pulse width modulation PWM) l phng phprt n gin v hu nh hon ton s dng phng php s, s dng rt t mch tng t
PWM iu chnh in p u ra s dng chui xung tn s cao vi rng xung c th thayi c thay i cng sut u ra
di xung cng ln th in p u ra cng gn vi in p ti a (VOH) ca DAC, vngc li di xung ngn nht tng ng vi in p ti thiu (VOL)
Tn hiu u ra s c a qua mt b loc thng thp to tn hiu analog
Hnh 2.5: DAC iu bin rng xung
DAC dng PWM cng kh thu c DAC vi phn gii cao, bi v c phn giicao, DAC phi iu chnh chui xung theo cc khong thi gian rt nh. iu yu cu phi cmt xung clock (master clock) vi tn s rt cao iu khin rng xung
V d vi DAC 16 bit, cn c phn gii theo thi gian bng 1/65536 ln chu k chuixung. V xung tn hiu cn phi a qua b lc thng thp to ra tn hiu tng t, tn sxung i hi phi gp nhiu ln ( thng thng l gp 100 ln) tn s cao nht ca tn hiu tngt u ra. Do mt b DAC 16 bit cho cc ng dng x l m thanh c bng thng 20kHz cn
c mt b to xung clock c tn s l 65536 x 100 x 20000 = 131 GHz. R rng rng tn s nyl khng th t c vi cng ngh hin nay
2.3 Chuyn i tn hiu tng t - s ADCs:
Gii php thng dng a tn hiu tng t vo x l bng cc b x l s l dng bchuyn i tn hiu tng t sang s (analog-to-digital converter - ADC). Hnh di l mt v dcho mt b ADC n gin. u vo cho b ny l hai tn hiu: mt tn hiu tham chiu
13
7/31/2019 Giao Trinh Ghep Noi May Tinh
14/79
(reference) v tn hiu cn chuyn i. N c mt u ra biu din mt t m dng s 8 bit. Tm ny vi x l c th c v hiu c
2.3.1. Cc tham s chnh ca mt ADC
Tham s n v Gii thch
phn giiResolution
Bits
Nu mt ADC c n bit, th phn gii ca n l 2n , cngha l s trng thi hay s m c th s dng chiau vo analog. S bit cng cao th phn gii cng lnv cng phn bit c nhiu trng thi
Sai s tuyn tnh viphnNon-Linearity,Differential (DNL)
Bits(with nomissingcodes)
Vi mi ADC, tn hiu s bin i theo tng bit LSB. chnh lch gia cc gi tr l tng c gi l phi tuyn vi phn.Example of an Actual Spec: 10 Bits min
Sai s tuyn tnh tchphnNon-Linearity,Integral (INL)
LSB
Hm truyn ca mt ADC l mt ng thng ni tim 0 ti im ton thang. Sai s ln nht ca mtm s vi ng thng ny c gi l sai s tchphn ca ADCExample of an Actual Spec: +/- 2 LSB's max
Di in p tng tu vo hay di tonthang(Analog Input Rangeor Full-Scale Range)
V
L chnh lch gia gi tr tng t ln nht v nhnht ng vi ADC c thVD:0V to +10 V, Unipolar Mode;-5V to +5V, Bipolar Mode
Thi gian chuyn i(Conversion Time)
secThi gian cn thit ADC hon thnh mt ln chuyniVD: 15 sec min.; 25 sec typ.; 40 sec max.
Ngun nui dng (+
Power Supply - V+) V
Di in p c th s dng lm ngun nui dng cho
ADCVD: +4.5V min.; +5.0V typ.; +7.0V max.
Ngun nui m- Power Supply (V-)
VDi in p c th s dng lm ngun nui m cho ADCVD: -12.0V min.; -15V typ.; -16.5V max.
14
7/31/2019 Giao Trinh Ghep Noi May Tinh
15/79
Chng 3: Th tc trao i tin ca my vi tnh
Chng 3 Th tc trao i tin ca my vi tnh
3.1 Cc ch trao i tin ca my vi tnh
Ch trao i tin ca MVT vi thit b ngoi Trao i tin theo ch chng trnh
S trao i tin c VXL iu khin theo mt trong hai loi lnh sau
Cc lnh vo (IN) hay ra (OUT).
Cc lnh chuyn(MOV) gia thanh ghi A v thanh ghi m s liu ca KGN c a chnh xc nh.
Trao i tin trc tip khi nh
Sau khi VXL c khi ng, s trao i tin hon ton do KGN iu khin thay cho VXL vcc ca vo ra ca VXL trng thi in tr cao (VXL b c lp). Lc ny, KGN iu khin mihot ng ca khi nh M v KGN, c th l:
Pht a ch cho khi nh hoc TBN. Pht lnh c (RD) hay ghi (WR) s liu.
Cc s liu c, ghi c trao i gia khi nh M va TBN thng qua cc thanh ghi mca KGN.
Th tc trao i tin trong ch chng trnh ch trao i tin theo chng trnh, c th trao i tin theo mt trong ba phng php sau:
- Trao i ng b- Trao i khng ng b hay hi trng thi (Polling)- Trao i theo ngt chng trnh
1.Trao i ng bSau khi khi ng TBN, MVT khng cn quan tm ti TBN c sn sng traoi tin hay khng m a lun cc lnh trao i tin ( c vo, ghi ra haytruyn s liu ). Phng php trao i tin ny ch c thc hin khi:
- TBN lun sn sng trao i tin.- Tc trao i tin ca MVT v TBN lun ph hp nhau hoc TBN trao i
tin nhanh.nh gi:- u im: Nhanh, khng tn thi gian ch i- Nhc im: Thiu tin cy, b mt tin v c th c s c
lm TBN cha sn sng trao i.2.Trao i khng ng b hay hi trng thi (Polling)
Trnh t trao i din ra nh sau:- MVT a tin iu khin TBN.- MVT ch v kim tra trng thi sn sng trao i tin
ca TBN bng cch:o c tin v trng thi sn sng ca TBN.o Kim tra trng thi sn sng. Nu cha, MVT
li c v kim tra trng thi sn sng.- MVT trao i tin vi TBN.
Trao i tin
Chng trnh
Chng trnh
TBN sn sng ?
Trao i tin
S
15
7/31/2019 Giao Trinh Ghep Noi May Tinh
16/79
Phng php trao i ny thc hin khi tc trao i tin ca TBN chm so vi MVT
nh gi:- u im: Tin cy, ch trao i khi bit chc TBN sn sng.- Nhc im: Tn thi gian s dng MVT.
V d: Gi s c mt thit b o lng c ghp ni vi my tnh. N c nhim v thu nhit t mtim o v chuyn thnh tn hiu s a vo my tnh. Thit b ny c mt thanh ghi trng thiStatusReg 8 bit cho bit trng thi hot ng ca n, khi no d liu sn sng my tnh c th c voth bit S5 ca thanh ghi ny s c t ln 1. Chng trnh iu khin s c nhim v lin tc c dliu nhit t thit b ny. Ta c on chng trnh nh sau:Begin
While ((StatusReg and 20H) = 20H) doBegin
c d liu v thc hin cc tc v lin quanEnd;
End.
3.2 Trao i tin ngt vi x lPhng php trao i tin ny khc phc nhc im ca cc
phng php trn. Trnh t nh sau:(1) MVT ang thc hin chui lnh ca mt chng trnh
no .(2) TBN c yu cu trao i tin, s gi tn hiu yu cu trao
i tin ( yu cu ngt INTR)(3) MVT (c th l VXL ) a tn hiu chp nhn (xc nhn
ngt INTA)
(4) Chng trnh chnh b ngt, MVT chuyn sang chngtrnh con phc v ngt tc l chng trnh con trao itin cho TBN yu cu.
(5) Chng trnh chnh lai tip tc thc hin ch b ngt.
3.2.1. Cc loi ngt ca my vi tnh PC
Cc loi ngtNgi ta chia ngt thnh hai loi: ngt cng v ngt mm
Ngt cng: cn gi l ngt ngoi v do nguyn nhn bn ngoi. VXL c cc li
vo dnh cho ngt ngoi. Khi c tn hiu vo li vo ny, chng trnh VXL ang thc hins b dng.
Ngt NMI( Non maskable Interrupt) - Ngt khng che c : Khi c ngt ny, VXL dngchng trnh sau lnh ang thc hin, thanh ghi a ch lnh (IP) v thanh ghi ch th flagc lu gi, 2 bit IF (Interrupt Flag) va TF (Trap Flag) b xo v 0 cm ngt ngoitip theo v khng c by. Mun cho php hay khng cho php ngt ny sy ra, chng tadng mt triger (flip flop) mc li vo ngt trc khi a vo li vo ngt NMI.
Chng trnh
Ngt
Chngtrn
hcon
phcvng
t
16
7/31/2019 Giao Trinh Ghep Noi May Tinh
17/79
Chng 3: Th tc trao i tin ca my vi tnh
Ngt INTR:o Ngt ny c cho php hay cm ngt bng cch lp hay xo bit IF ca thanh ghi flag.
Lp bi lnh STI (Set Interrupt), xo bi lnh CLI (Clear Interup)o Thng c ni vi li ra yu cu ngt ca vi mch x l u tin ngt (8214, 8259).
Ngt reset :
Ngt mm: (hay ngt bn trong do lnh ca chng trnh) do VXL gp cc lnhgy ra ngt hoc tnh hung c bit khi thc hin lnh (ngt logic) v ngt ca h iu hnh.- Ngt do lnh: l ngt khi thc hin cc lnh CALL, HLT, INT- Ngt logic hay cc ngoi tr: xy ra khi gp cc tnh hung c bit sau:
o Chia mt s cho 0o Trn ni dung thanh ghi hay b nho Thc hin tng bc (vector 1)o im dng ( Break point) chng trnh do ngi dung chng trnh s dng nh trc
(Vect 3)
- Ngt ca h iu hnh: l cc ngt do h iu hnh quy nh phc v trao i tin ca ccTBN (bn phm, my in, vv) nh INT 10, INT 16, INT 21, .v.v..)
Ngt ca MVT PC (8086, 80286 )
Cc ngt khng hon ton c lin kt vi cc thit b ngoi. H VXL 8086 cung cp 256ngt, a phn trong s chng l ch phc v nh ngt phn mm. H 8086 c mt bng vecterngt gi a ch ca cc chng trnh phc v ngt. Mi a ch l 4 byte.
Trong cc my PC, ch c 15 ngt dnh cho phn cng v 1 ngt khng che c. Phn cnli c s dng cho cc ngt phn mm v cc b x l ngoi l. B x l ngoi l l ccchng trnh tng t nh ISR nhng x l cc ngt khi xut hin li. V d nh vector ngt utin gi a ch ca ngoi l Divide by Zero (li chia cho 0). Khi xut hin li ny VXL nhysang a ch 0000:0000 v thc hin chng trnh c a ch lu y.
INT (Hex) IRQ Common Uses
00 - 01 Exception Handlers -
02 Non-Maskable IRQ Non-Maskable IRQ (Parity Errors)
03 - 07 Exception Handlers -
08 Hardware IRQ0 System Timer
09 Hardware IRQ1 Keyboard
0A Hardware IRQ2 Redirected
0B Hardware IRQ3 Serial Comms. COM2/COM4
0C Hardware IRQ4 Serial Comms. COM1/COM3
0D Hardware IRQ5 Reserved/Sound Card
0E Hardware IRQ6 Floppy Disk Controller
0F Hardware IRQ7 Parallel Comms.
17
7/31/2019 Giao Trinh Ghep Noi May Tinh
18/79
10 - 6F Software Interrupts -
70 Hardware IRQ8 Real Time Clock
71 Hardware IRQ9 Redirected IRQ2
72 Hardware IRQ10 Reserved
73 Hardware IRQ11 Reserved
74 Hardware IRQ12 PS/2 Mouse75 Hardware IRQ13 Math's Co-Processor
76 Hardware IRQ14 Hard Disk Drive
77 Hardware IRQ15 Reserved
78 - FF Software Interrupts -
Th tc x l (p ng) ngt chng trnh
Khi c mt tin hiu yu cu ngt chng chnh a vo chn yu cu ngt (INTR), qu trnh
ngt chng trnh c din ra theo cc bc sau: Lu gi tin v trng thi ca VXL lc c tn hiu yu cu ngt v ni chng trnh b gin
on.
VXL gi tn hiu xc nhn hay cho php ngt INTA v c vector ngt.
Chuyn sang chng trnh phc v ngt.
Tr v ch chng trnh chnh b ngt v tip tc thc hin chng trnh .
Lu gi tin v ch b ngt chng trnh:
cui mi chu trnh lnh, VXL 8086 ( cng nh 80286) kim tra xem c yu cu ngt nogi ti khng. Nu c yu cu, VXL tin hnh lu tr tin v ni b ngt chng trnh ( dng lnhPUSH vo vng nh ngn xp m a ch ch th bi thanh ghi SP).Cc tin l:
- Thanh ghi c Flag FR (Flag Register)- Con tr lnh IP(Instruction Pointer)- Thanh ghi on lnh CS (Code Segment register)
Gi tn hiu cho php (xc nhn ) ngt v c vector ngt:
Sau khi lu tr tin v v tr b ngt ca chng trnh chnh, VXL gi tn hiu xc nhn ngtINTA (Interrupt Acknowledge) cho KGN ca TBN. Tu cch t chc ngt v to vector ngt,
VXL s dng tn hiu ny c vector ngt tng ng ca KGN vo thanh ghi cha A. VXLc ni dung ca nh c a ch l vector ngt bit c a ch u tin ca chng trnhcon phc v ngt ( chng trnh trao i tin).
Thc hin chng trnh con phc v ngt
18
7/31/2019 Giao Trinh Ghep Noi May Tinh
19/79
Chng 3: Th tc trao i tin ca my vi tnh
l chng trnh m a ch lnh u tin nm trong nh c a ch l vector ngt. Ktthc chng trnh con ny, c lnh tr v (RET - return) VXL tip tc thc hin chng trnhchnh.
Tip tc thc hin chng trnh chnh:
Sau khi gp lnh tr v (RET), VXL tin hnh c v hi phc cc tin ca VXL lc b ngt
chng trnh ghi nh ch ngt chng trnh (bng lnh POP cc nh ngn xp). Qua trnhc ra ny xy ra ngc li vi qu trnh ghi vo (theo quy lut LIFO Last In First Out) v nidung ca:
Thanh ghi con tr lnh (IP) tr v lch (offset) ca a ch lnh tip theo ca chngtrnh chnh b ngt trong mng nh lnh (CS).
Thanh ghi mng lnh (CS) v a ch on u tin ca vng nh dnh cho chng trnhchnh b ngt.
Thanh ghi flag lc b ngt chng trnh.
3.2.2. X l ngt cng trong IBM - PC:
VXL 80x86 c 3 chn dng cho ngt cng l:INTR: Interrupt RequestNMI: NonMaskable Interrupt/INTA: Interupt Acknowledge
INTR l tn hiu u vo yu cu ngt ca VXL v n c th che hay cho php thng qualnh CLI (Clear Interrupt) v STI (Set Interrupt)NMI tng t INTR nhng khng che c bng lnh
INTR v NMI c th c kch hot t bn ngoi bng cch ni vo in p 5V vo chntng ng ca VXL.
Nh vy VXL ch c kh nng phc v mt yu cu ngt cng t TBN. m rng khnng phc v ngt ngoi IBM - PC s dng thm vi mch x l ngt cng lp trnh c PIC(Programmable Interrupt Controller) 8259. S dng PIC 8259 ni vo chn INTR c th m rngs lng ngt cng ln n 64s
19
7/31/2019 Giao Trinh Ghep Noi May Tinh
20/79
RAM
KGN1VXL
InterruptController KGN8
. . .IR0IR7
ROM
INTR
INT
/INTA
NMIResetC ch thc hin ngt cng
System bus
. . ..
20
7/31/2019 Giao Trinh Ghep Noi May Tinh
21/79
Chng 3: Th tc trao i tin ca my vi tnh
Vi mch x l ngt 8259S khi:
Cc chn:IR0 IR7 (Chn 18 25) : Cc li vo yu cu ngtD0 D7 (Chn 11 4) : Cc bit s liu (2 chiu)A0 (chn 27) : a ch chn thanh ghi lnhCS (Chn 11) : Chn vi mch (chip select)WR (chn 2) : Li vo lnh ghiRD ( chn 3) : Li vo lnh cCAS0 2 (Chn 12,13,15) : Li vo mc ni tngSP (chn 16) : Trong ch khng m, nu SP = 1 th 8259 l ch (Master).
SP = 0 th l t (Slave)INTA (chn 26) : Li vo xc nhn ngtINT (chn 17) : Li ra yu cu ngt chng trnh
Cu trc PIC 8259
Thanh ghi yu cu ngt IRR (Interrupt Request Register): ghi tm mc ngt(IR0 IR7)t TBN.
Thanh ghi Ngt ang phc v ISR (In Service Register): ghi mc ngt ang s dng.
Thanh ghi mt n ngt IMR (Interrupt Mask Register).
Mch logic gii quyt u tin PR (Priority Resolver)
CAS0
CAS1
CAS2
B md liu
Logicc/ghi
B so snhv ni tng
Logic iu khin
Thanhghi phcv (ISR)
Giiquyt u
tin(PR)
Thanhghi yucu ngt
Thanh ghi che ngt (IMR)
D0
D7
A00
A00
A00
A00
A00
A0 INT
IR0
.
.
.
.IR
n
ngdyni
S khi 8259
21
7/31/2019 Giao Trinh Ghep Noi May Tinh
22/79
Khi logic iu khin: x l ngt, a yu cu (INT) v xc nhn ngt (INTA)
B m ng dy s liu: m ghi vo cc thanh ghi v m c cc s liu t ccthanh ghi.
Logic iu khin c/ghi: to cc tn hiu ghi v c cc thanh ghi m.
B m ni tng/so snh: chn cc vi mch 8259 t trong mt vi mch 8259 ch.
i vi IBM - PC, 2 PIC c s dng m rng ra 15 ngt cng. PIC1 qun l u vongt IRQ0 - 7, PIC2 dnh cho IRQ8 - 15. PIC2 c ni tng ?ln PIC1 qua ng IRQ2 (Do nu ta chn ngt IRQ2 th ton b IRQ 8 - 15 cng b che.
3.2.3. Lp trnh x l ngt cng:Trong my IBM - PC c 2 PIC c nh v ti cc a ch l PIC1 - 20H, PIC2 - A0H. Cc PIC ckhi to bi BIOS, do ta ch cn quan tm ti 2 lnh khi lm vic vi chng.
Lnh th nht tc ng vo t iu khin OCW1 thit lp vic che ngt Nu munche ngt no th ta xo bit tng ng vi ngt v 0. T iu khin OCW1 c gi ti
a ch base + 1. Lnh th 2 l lnh End of Interrupt (EOI). Lnh ny c gi ti PIC khi kt thc chng
trnh con x l ngt reset PIC. Lnh EOI c gi ti PIC bng cch ghi gi tr 20Hvo thanh ghi c a ch base.
Thc hin chng trnh x l ngt;
Trong ngn ng C ta c th thc hin mt chng trnh x l ngt bng khai bo
MPU
IR0IR1
IR2
IR3
IR7
INT
/INTA
IR0
IR1
IR2
IR7
INT
/INTA
CAS0-2
INTR
/
INTA
CAS0-2
Pri PIC
Sec PIC
IRQ0
IRQ1
IRQ3
IRQ7
IRQ8
IRQ9
IRQ10
IRQ15
: : :
: :
Port 20H
Port A0H
S ghp ni ni tng PIC trong IBM - PC
22
7/31/2019 Giao Trinh Ghep Noi May Tinh
23/79
Chng 3: Th tc trao i tin ca my vi tnh
void interrupt myISR()
trong yourisr l con tr tr n a ch m chng trnh ISR ca ta nm trong b nh. ach ny sau s c t vo bng vector ngt, v c gi khi c ngt.Khung ca mt chng trnh ISR vit bng C nh sau:
void interrupt myISR() /* Interrupt Service Routine (ISR) */
{ disable();
/* Body of ISR goes here */
oldhandler();
outportb(0x20,0x20); /* Send EOI to PIC1 */
enable();
}
void interrupt yourisr() nh ngha mt hm l mt chng trnh con x l ngt.
disable(); xo c ngt lm cho cc ngt cng khc (ngoi tr ngt NMI) khng thc hin
c. V trnh trng hp cc ngt khc c u tin cao hn s ngt chng trnh x lngt ca chng ta. Tuy vy vic ny c th khng cn thc hin.Phn thn ca chng trnh ISR gm cc lnh m ta mun thc hin khi yu cu ngt c kch hot.
Cc cng hoc cc thit b ngoi c th ngt VXL bi rt nhiu l do, vd nh nhn c mtbyte, time-out, trn b m, vv. Khi chng trnh ISR phi c thanh ghi trng thi ca KGN bit nguyn nhn gy ra ngt ca thit b, v c nhng thao tc tng ng.
i khi ngoi chng trnh x l ngt ca ta, h thng cn mt s chng trnh thng trkhc cng c kch hot khi c ngt . V vy sau khi thc hin xong cc thao tc ca mnh,chng trnh ISR ca chng ta phi c li gi ti chng trnh ISR c (nu c). Thc hin bng
lnh gi con tr tr ti a ch ca chng trnh ISR c. Trong trng hp ny l oldhandle()Trc khi thoat khi chng trnh con ISR, ta phi bo cho PIC bit l ta kt thc chng trnh ISR bngcch gi lnh EOI ti PIC tng ng.
Chng trnh con ISR mun c thc thi phi c mt chng trnh khi to v qun ln. on chng trnh sau s khi to v qun l chng trnh con myISR m ta va to. Githit chng ta s dng ngt IRQ3
#include
#define INTNO 0x0B /* Interupt Number - See Table 1 */
void main(void){
oldhandler = getvect(INTNO); /* Save Old Interrupt Vector */
setvect(INTNO, myISR); /* Set New Interrupt Vector Entry */
outportb(0x21,(inportb(0x21) & 0xF7)); /* Un-Mask (Enable) IRQ3 */
/* Set Card - Port to Generate Interrupts */
/* Body of Program Goes Here */
/* Reset Card - Port as to Stop Generating Interrupts */
23
7/31/2019 Giao Trinh Ghep Noi May Tinh
24/79
outportb(0x21,(inportb(0x21) | 0x08)); /* Mask (Disable) IRQ3 */
setvect(INTNO, oldhandler); /* Restore old Interrupt Vector Before Exit */
}
Trc khi thay th a ch ca chng trnh ISR mi vo bng vector ngt , ta phi lu vectorngt c, ta c th phc hi li sau khi thot khi chng trnh. Thc hin bng lnh
oldhandler = getvect(INTNO); /* Save Old Interrupt Vector */
trong INTNO l s hiu ca vector ngt ta mun lu.Sau ta ci chng trnh ISR mi ca ta vo bng lnh
setvect(INTNO, myISR); /* Set New Interrupt Vector Entry */
Ngt cng ta mun s dng phi c cho php bng lnh
outportb(0x21,(inportb(0x21) & 0xF7)); /* Un-Mask (Enable) IRQ3 */
Phn thn chng trnh chnh tip tc thc hin bnh thng tu theo tng ng dng, vd nhx l ho, giao tip vi ngi s dng, v.v. Khi c bt k s kin lin quan n thit b uc x l t ng bi chng trnh con ISR.
Trc khi thot khi chng trnh chnh ta lun phi khi phc li vector ngt c.setvect(INTNO, oldhandler); /* Restore old Interrupt Vector Before Exit */
24
7/31/2019 Giao Trinh Ghep Noi May Tinh
25/79
Chng 3: Th tc trao i tin ca my vi tnh
3.3 Trao i tin trc tip khi nh
3.3.1. C ch hot ng:
VXL khi to TBN
TBN khi xng vic truyn s liu bng cch s dng cc thng tin cung cp bi VXLthng qua qu trnh khi to
TBN thc hin vic truyn s liu bng cch truyn trc tip gia TBN v b nh thngqua s iu khin ca b iu khin DMA (DMAC)
3.3.2. Hot ng ca DMAC:
Khi to: Trc khi a DMAC vo hot ng, Phi c chng trnh khi to cho n. Qutrnh khi to s cung cp cho DMAC thng tin cn thit hot ng. l cc thng tin nh:a ch bt u ca khi d liu, kch thc khi d liu, chiu c/ghi d liu, s hiu cng caTBN.
Hot ng:
Xt trng hp truyn mt khi d liu t b nh ra TBN.(1) Bc 1: TBN yu cu DMA bng cch t tn hiu DREQ ln mc cao(2) Bc 2: DMAC t tn hiu mc cao vo chn HRQ (Hold Request) gi tn hiu
yu cu treo bus cho VXL, bo cho VXL bit DMAC cn s dng bus.(3) Bc 3: VXL kt thc chu k bus hin ti, chuyn cc cng ghp ni vi bus sang
mc tr khng cao v tr li yu cu DMA bng tn hiu mc cao chn HDLA( Hold Acknoledge) bo cho DMAC c quyn s dng bus
VXLDMAC MEMORY Disk
Controller
HOLD
HLDA DACK
DREQ
Data Bus
Address Bus
Control Bus (IOR, IOW, MEMR, MEMW)
Hot ng ca DMAC
25
7/31/2019 Giao Trinh Ghep Noi May Tinh
26/79
(4) Bc 4: DMAC kch hot tn hiu DACK bo cho TBN bit n s bt u iukhin vic truyn d liu.
(5) Bc 5: DMAC bt u truyn d liu t b nh ti TBN nh sau:o DMAC t a ch ca byte u tin ca khi d liu ln bus a cho Kch hot tn hiu /MEMR c byte d liu t b nh ln bus d liuo t a ch ca cng TBN ln bus a ch
o Kch hot tn hiu IOW ghi byte d liu ang c trn bus d liu ra TBNo Gim gi tr m v tng gi tr i cho Lp li qu trnh trn cho ti khi gi tr m bng 0.(6) Sau khi qu trnh DMA kt thc, DMAC xo gi tr HRQ xung mc thp, tr
quyn iu khin bus cho VXL.
3.3.3. Chip iu khin truy nhp b nh trc tip DMAC 8237 (Direct Memory AccessController)
DMAC 8237 c th thc hin truyn d liu theo 3 kiu: kiu dc (t b nh ra thit b ngoi
vi), kiu ghi (t thit b ngoi vi n b nh) v kiu kim tra. Khi Timing and Control (nh thi v iukhin):
To cc tn hiu nh thi v iu khin cho bus ngoi(external bus). Cc tn hiu ny c ng b vi xungclock a vo DMAC (tn s xung clock ti a l 5 MHz).
Khi Priority encoder and rotating prioritylogic (m ho u tin v quay mc u tin):
DMAC 8237A c 2 m hnh u tin: m hnh u tin cnh (fixed priority) v m hnh u tin quay (rotatingpriority). Trong m hnh u tin c nh, knh 0 s c mcu tin cao nht cn knh 3 c mc u tin thp nht. Cni vi m hnh uu tin quay th mc uu tin khi khi dngging nh m hnh u tin c nh nhng khi yu cuDMA ti mt knh no d c phc v th s c txung mc u tin thp nht.
Khi Command Control (iu khin lnh):Gii m cc thanh ghi lnh (xc nh thanh ghi s c truy xut vloi hot ng cn thc hin).
26
7/31/2019 Giao Trinh Ghep Noi May Tinh
27/79
Chng 3: Th tc trao i tin ca my vi tnh
Cc thanh ghi:DMAC 8237A c tt c 12 loi thanh ghi ni khc nhau:
27
7/31/2019 Giao Trinh Ghep Noi May Tinh
28/79
Chc nng cc chn ca 8237A:
CLK (Input): tn hiu xung clock ca mch. Tn hiu ny thng c ly t 8284 sau khiqua cng o.
CS (Input): thng c ni vi b gii m a ch.
RESET (Input): khi dng 8237A, c ni vi ng RESET ca 8284. Khi Reset th thanhghi mt n c lp cn cc phn sau b xo:
Thanh ghi lnh
Thanh ghi trng thi
Thanh ghi yu cu
Thanh ghi tm
Flip-flop du/cui (First/Last flip-flop)
READY (Input): ni vi READY ca CPU to chu k i khi truy xut cc thit b ngoi
vi hay b nh chm.HLDA (Hold Acknowledge)(Input): tn hiu chp nhn yu cu treo t CPU
DRQ0 DRQ3 (DMA Request)(Input): cc tn hiu yu cu treo t thit b ngoi vi
DB0 DB7 (Input, Output): ni n bus a ch v d liu ca CPU
IOR , IOW (Input, Output): s dng trong cc chu k dc v ghi
EOP (End Of Process)(Input,Output): bt buc DMAC kt thc qu trnh DMA nu l ngvo hay dng bo cho mt knh bit l d liu chuyn xong
(Terminal count TC), thng dng nh yu cu ngt CPU kt thc qu trnh DMA.A0 A3 (Input, Output): chn cc thanh ghi trong 8237A khi lp trnh hay dng cha 4 bit
a ch thp.
A4 A7 (Output): cha 4 bit a ch
HRQ (Hold Request)(Output): tn hiu yu cu treo n CPU
DACK0 DACK3 (DMA Acknowledge)(Output): tn hiu tr li yu cu DMA cho ccknh.
AEN (Output): cho php ly a ch vng nh cn trao i
ADSTB (Address Strobe)(Output): cht cc bit a ch cao A8 A15 cha trong cc chnDB0 DB7
MEMR , MEMW (Output): dng dc / ghi b nh.
Cc thanh ghi ni:
Cc thanh ghi ni trong DMAC 8237A c truy xut nh cc bit a ch thp A0 A3
28
7/31/2019 Giao Trinh Ghep Noi May Tinh
29/79
Chng 3: Th tc trao i tin ca my vi tnh
Bit a ch ach Chn chc nng R/W?
A3 A2 A1 A0
0 0 0 0 X0 Thanh ghi a ch b nh knh 0 R/W
0 0 0 1 X1 Thanh ghi m t knh 0 R/W
0 0 1 0 X2 Thanh ghi a ch b nh knh 1 R/W
0 0 1 1 X3 Thanh ghi m t knh 1 R/W
0 1 0 0 X4 Thanh ghi a ch b nh knh 2 R/W
0 1 0 1 X5 Thanh ghi m t knh 2 R/W
0 1 1 0 X6 Thanh ghi a ch b nh knh 3 R/W
0 1 1 1 X7 Thanh ghi m t knh 3 R/W
1 0 0 0 X8 Thanh ghi trng thi / lnh R/W
1 0 0 1 X9 Thanh ghi yu cu W
1 0 1 0 XA Thanh ghi mt n cho mt knh W
1 0 1 1 XB Thanh ghi ch W
1 1 0 0 XC Xo flip-flop u/cui W
1 1 0 1 XD Xo ton b cc thanh ghi / cthanh ghi tm
W/R
1 1 1 0 XE Xo thanh ghi mt n W
1 1 1 1 XF Thanh ghi mt n W
a ch cc thanh ghi ni dng ghi / c a ch:
Knh/
IOR/
IOW A3 A2 A1 A0 Thanh ghi R/W?
0 1010
0101
0000
0000
0000
0011
a ch c s v a ch hin hnha ch hin hnhB m c s v b m hin hnhB m hin hnh
WRWR
1 1010
0101
0000
0000
1111
0011
a ch c s v a ch hin hnha ch hin hnhB m c s v b m hin hnhB m hin hnh
WRWR
2 1010
0101
0000
1111
0000
0011
a ch c s v a ch hin hnha ch hin hnhB m c s v b m hin hnhB m hin hnh
WRWR
29
7/31/2019 Giao Trinh Ghep Noi May Tinh
30/79
3 1010
0101
0000
1111
1111
0011
a ch c s v a ch hin hnha ch hin hnhB m c s v b m hin hnhB m hin hnh
W RW R
a ch cc thanh ghi tr ng thi v i u khi n:
/IOR/
IOW A3 A2 A1 A0 Thanh ghi
1 0 1 0 0 0 Ghi thanh ghi lnh0 1 1 0 0 0 c thanh ghi trng thi
1 0 1 0 0 1 Ghi thanh ghi yu cu
1 0 1 0 1 0 Ghi thanh ghi mt n
1 0 1 0 1 1 Ghi thanh ghi ch
1 0 1 1 0 0 Xo flip-flop u/cui
1 0 1 1 0 1 Xo tt c cc thanh ghi ni
0 1 1 1 0 1
1 0 1 1 1 0 a ch c s v a ch hin hnh
0 1 1 1 1 0 a ch hin hnh
1 0 1 1 1 1B m c s v b m hinhnh
0 1 1 1 1 1 B m hin hnh
Mch 8237A-5 cha 4 knh trao i d liu DMA vi mc u tin lp trnh c. 8237A-5c tc truyn 1 MBps cho mi knh v 1 knh c th truyn 1 mng c di 64 KB. cth s dng mch DMAC 8237A, ta cn to tn hiu iu khin nh sau:
30
7/31/2019 Giao Trinh Ghep Noi May Tinh
31/79
Chng 3: Th tc trao i tin ca my vi tnh
Tn hiu iu khin cho h thng lm vic vi DMAC 8237A
Tn hiu AEN t 8237A dng cm cc tn hiu iu khin t CPU khi DMAC nmquyn iu khin bus.
TK:[1] DIRECT MEMORY ACCESS (69)
31
7/31/2019 Giao Trinh Ghep Noi May Tinh
32/79
Chng 4 Rnh cm m rng
4.1 t vn
Khi bn lun v cu trc my tnh ta thng cp n cc cu trc bus, cc ng dn busnh bus d liu, bus iu khin , v.v. Cc rnh cm m rng l mt dng th hin bng phn
cng ca bus trn bn mch chnh, trn c th cm thm cc card m rng thay i hocnng cp cu hnh ca my tnh.
S ra i ca cc loi rnh cm m rng gn lin vi s pht trin ca k thut my tnh. Ttrc n nay c n 8 kiu bus m rng c s dng cho my tnh c nhn. Vic phn loicc bus m rng da trn s cc bit d liu m chng x l ng thi. l cc bus:
- Bus PC (Cn gi l ISA 8 bit)- Bus ISA (16 bit)- Bus PC/MCIA (16 bit)- Bus VESA local (32bit)
- Bus SCSI (16/ 32 bit)- Bus EISA (32 bit)- Bus MCA (32 bit)- Bus PCI (32/ 64 bit)- Bus AGP (32/ 64 bit)
4.2 Bus PC
Bus PC l loi bus xut hin trn my tnh PC/XTu tin nn c gi lun l bus PC. Loi bus nytn dng kin trc ca b VXL Intel 8088, nn c
mt bus d liu 8 bit v ngoi v bus a ch 20 bit.Rnh cm ni vi bus PC c 62 chn cho php cmvo mt card m rng lm t mch in 2 mt. V trnbus ny c 8 bit d liu c truyn ng thi nnbus PC cn c gi l bus PCI 8 bit
Tc truyn ca bus PC c c nh 4.77MHz
i vi bus ISA 8 bit ta cn quan tm n mt sng tn hiu chnh sau:Tn hiu Hng M t
A0 - A19 I/O 20 ng tn hiu a ch dng nh a ch cho bnh v cc thit b ngoi vi
D0 - D7 I/O 8 ng tn hiu to thnh BUS d liu cho vi x l, b nh v cc thit b ngoi vi
Reset Out Sau khi bt my tnh hoc sau khi khi ng li, ngdn Reset s kch hot trong thi gian ngn a card c cm vo n mt trng thi ban u xc nh.
Article I. S chn khe cm ISA 8bit
Article II. Pha mch in
Article III.Pha linh kin
GND B01 A01 /IOCHCK Reset B02 A02 D7+ 5V B03 A03 D6IRQ2 B04 A04 D5- 5V B05 A05 D4
DREQ2 B06 A06 D3- 12V B07 A07 D2
D tr B08 A08 D1+ 12V B09 A09 D0
GND B10 A10 /IOCHRDY/MEMW B11 A11 AEN/MEMR B12 A12 A19
/IOW B13 A13 A18/IOR B14 A14 A17
/DACK3 B15 A15 A16DERQ3 B16 A16 A15
/DACK1 B17 A17 A14DREQ1 B18 A18 A13/DACK0 B19 A19 A12
CLK B20 A20 A11IRQ7 B21 A21 A10IRQ6 B22 A22 A9IRQ5 B23 A23 A8IRQ4 B24 A24 A7IRQ3 B25 A25 A6
/DACK2 B26 A26 A5TC B27 A27 A4ALE B28 A28 A3
+ 5V B29 A29 A2OSC B30 A30 A1GND B31 A31 A0
32
7/31/2019 Giao Trinh Ghep Noi May Tinh
33/79
Chng 4: Rnh cm m rng/IOW Out Input/Output/Write:
Tn hiu ny s kch hot khi truy nhp ghi ln mt card mrng. Mc thp ch ra rng cc d liu c gi tr ang ch a ra bus d liu. Cc d liu c n nhn bng s-n trc
/IOR Out Input/Output/Read:Mc thp ca ng dn a ch ny bo hiu s truynhp c trn mt card m rng. Trong thi gian ny ccd liu c gi tr cn phi sp xp sau c nnhn bng sn trc
AEN Out Address Enableng dn iu khin AEN dng phn bit chu trnhtruy nhp DMA v chu trnh truy nhp b vi x l. mccao DMA gim st qua bus a ch v bus d liu. ngdn c hiu lc mc thp. ng dn ny cn phi c sdng cho qu trnh gii m a ch bi card m rng.
4.3 Bus ISA (16 bit)
Cng ty my tnh IBM pht trin bus ISA dng trong my tnh AT da trn b VXL80286. im mnh ca bus ny l c th cho php cng mt lc x l hoc trao i vi 16 bit dliu. m bo tnh tng thch vi bus PC, cc nh thit k b xung rnh cm th 2 thnghng vi rnh cm PC 8 bit, trn c cha 8 bit d liu v 4 bit a ch. Nh vy bus ISA cmt bus d liu 16 bit v mt b a ch 24 bit. Ging nh bus PC, n s dng tc ng h cnh 8.33 MHz
Do cch t chc rnh cm nh vy nn mt card PC vn c th cm vo mt khe cm ca bus
ISA. Card ISA rt ph bin bi v chng th hin tnh nng u vit i vi hu ht cc ng dngghp ni. Cc linh kin c s dng trn card u rt r, cho nn trn thc t vic ghp nibng cc card m rng ISA t ra l cng ngh qua th thchs v ng tin cy.
4.4 Bus PCICng ty Intel xy dng nn mt tiu chun ghp ni mi c tn l bus cc b PCI
(Peripheral Componel Interconnection - Kt ni cc thnh phn ngoi vi) hay thng gi tt l
bus PCI, dng cho b x l Pentium. Bus ny cho php truy nhp rt nhanh ti b nh, b
iu khin a, card m thanh, card ho. Vi mch ghp ni dng cho bus ny l chip PCI82430 cho php ghp ni trc tip vi bus.
Mt s c im chnh:
- Bus PCI truyn d liu bng tc ca ng h h thng cho php truyn d liu vi tc
cao hn nhiu so vi bus ISA.
- C th hot ng vi 64 bit - Tc ti a t c l 264 Mbyte/s
- Rnh cm PCI c mt chn cao hn do vy khong tng thch vi cc card ISA.
33
7/31/2019 Giao Trinh Ghep Noi May Tinh
34/79
4.5 Ghp ni qua khe cm m rng
4.5.1. Mt s c im ca Card ISA
Kch thc ln nht ca cc card ISA 8 bit l:
Chiu cao: 106,7 mm (hay 4.2 inch)
Chiu di 333.5 mm ( hay 13.13 inch) Chiu dy - k c linh kin - 12.7 mm (hay 0.5 inch)
Cc ng tn hiu ca khe cm b tr c 2 pha, v vy card m rng bao gi cng phi lbn mch in 2 mt.
4.5.2. Gii m a ch v kt ni Bus d liu
i vi my PC vng a ch 300 - 31FH c d tnh dnh ring cho card m rng cmthm vo. Cc ng a ch s dng i vi vng ny l A0 - A9.
Trn mt card m rng thng c nhiu khi chc nng nh b bin i tng t /s ADC,
b bin i s - tng t DAC, khi xut nhp d liu s, iu khin hin th, .v.v. . Cc khiny c trao i di nhng a ch khc nhau t my tnh. Do , trn card m rng phi cthm mt b gii m a ch. B gii m a ch c nhim v so snh i ch trn bus a ch camy tnh vi cc a ch c thit lp trc cho cc khi chc nng ca card m rng. Khia ch c s thng nht vi khi no th khi tng ng s c kch hot thng qua mtng tn hiu logic t u ra ca b gii m. Khi c kch hot, khi mi c th tin hnhs trao i thng tin vi my tnh.
34
7/31/2019 Giao Trinh Ghep Noi May Tinh
35/79
Chng 4: Rnh cm m rng
G19
DIR1
A12
B118
A23
B217
A34
B316
A45
B415
A56
B514
A67
B613
A78
B712
A89
B811
74245
Q?
MC74F245A
1
B2
C3
G16
G2A4
G2B5
Y015
Y114
Y213
Y312
Y411
Y510
Y69
Y77
Q?
SN74LS138
1
2345678
16
1514131211109
Q?
SW DIP-8
/(P=Q)19
Q03
Q1 5Q2
7
Q39
Q412
Q514
Q616
Q718
P02
P14P2
6
P38
P411
P513
P615
P717
/G1
Q?
74HC688
U?NAND
U?NAND
U?
NAND
A09
A07A06A05A04A03A02
A08
B14
B13
B02
A31A30
A29
A28
A26A27
A25A24A23A22
A11
VCC
R?RES2
VCC
/IOR
/IOW
RESET
AEN
A2
A3A4A5A6A7A8A9
D0D1D2D3D4D5D6D7
A0A1
D0D1D2D3D4D5D6D7
B gii m a ch 74HC688 so snh cc ng dn a ch A2 - A9 xem c thng nht via ch thit lp trc ca card m rng bng chuyn mch DIP. 74HC688 so snh cc cp bitxem c ging nhau khng. Khi cc cp ng nht thi s to ra mt tn hiu mc thp u ra.
Ngoi ra khi gii m cn phi quan tm n ng tn hiu AEN (Address ENable). ng nycho bit CPU hay DMAC ang chim quyn s dng bus. Khi tn hiu ny mc thp th cardm rng mi c s dng cc bus. Tn hiu AEN c a ti u vo /G ca 74HC688 chophp b gii m hot ng.
Cc ng tn hiu A0, A1, IOR, IOW cng c s dng trong b gii m bng cch kthp vi cc IC cng logic AND, OR v vi mch gii m 74HC138 to thnh cc ng iukhin c ghi cho tng khi chc nng trn card
B gii m logic ng thi m nhn vai tr iu khin b m bus 2 chiu 74HC245. Bny ni cc ng dn d liu ca rnh cm PC vi cc ng dn ca card m rng. Cch ghp
ni ny rtquan trng, nh vy m cc mc tn hiu trn ng dn d liu khng b nh hng.N c cha 8 vi mch m vi cc li ra 3 trng thi trao i thng tin gia cc ng dnbus d liu theo 2 hng. Hng truyn d liu c xc nh bng chn DIR: DIR = 0, d liuc chuyn t B sang A. Vic chuyn hng d liu cho php qun l n gin bng tn hiu/IOR. Ta c th ni trc tip ra chn DIR. Qua m bo b m ch cho php d liu a vot bn ngoi a ln bus d liu ca my tnh khi PC thc hin mt qu trnh truy nhp c(/IOR = 0)
35
7/31/2019 Giao Trinh Ghep Noi May Tinh
36/79
Chng 5 Ghp ni trao i tin song song
5.1 Khi ghp ni song song n gin
Ca vo n gin: Gm mt b gii m a ch - lnh v cc ca vo 3 trng thi a trctip s liu song song t thanh ghi m s liu t TBN vo ng dy s liu (D 0 - Dn) ca MVT
Ca ra n gin: Cng c b gii m a ch - lnh, nhng c thm cc thanh ghi cht sliu ra ghi s liu a ra t MVT. Li ra c th c thm s 3 trng thi c lp TBN vibus ca MVT
DI0
DI1
DI2
DI3
Gii m ach
A0
- An
RD
D0
D1
D2
D3
S ca vo n gin
Gii m i ch
WR
A0
- An
D Q
C
D Q
C
D Q
C
D Q
C
D0
D1
D2
D3
DO0
DO1
DO2
DO3
Ca ra n gin khng c i thoi
36
7/31/2019 Giao Trinh Ghep Noi May Tinh
37/79
Chng 5: Ghp ni trao i tin song song
5.2 Cc vi mch m, cht (74LS245, 74LS373)
5.2.1. Vi mch m 74LS245:
Vi mch 74LS245 cho tn hiu vo ra 2 chiu dng m s liu trong my tnh PC/XT(VXL 8086). Vi mch ny c 2 ng iu khin chnh, tn hiu /G l tn hiu cho php vi mchhot ng, khi /G mc cao, cc chn d liu ca vi mch trng thai tr khng cao.
Tn hiu DIR xc nh chiu truyn d iu. DIR = 1 d liu c truyn t A sang B, ngcli, khi DIR = 0 d liu c truyn t B sang A
5.2.2. Vi mch cht 74LS373:
Vi mch bao gm cc vi mch cht v cc vi mch cng 3 trng thi. Vi mch ny thngc dng cht a ch trong my PC/XT v cht d liu trong cc ng dng ghp ni mytnh. C 2 ng tn hiu iu khin l /OE v LE. Tn hiu /OE l tn hiu cho php hot ngca vi mch. Khi /OE mc cao, cc cng ca vi mch trng thi tr khng cao. Tn hiu LEl tn hiu cho php cht, tn hiu ny tch cc mc dng. i vi 74LS373, khi LE mccao, tn hiu a vo t cng D c a ra cng Q. Khi LE chuyn sang mc thp, tn hiu cng Q c cht li.
Inputs FunctionOutputs
G DIR A bus B bus
L L Output Input A = B
L H Input Output B = AH X High Impedance Z
37
7/31/2019 Giao Trinh Ghep Noi May Tinh
38/79
5.3 Vi mch PPI 8255A
5.3.1. Gii thiu chung
Vi mch vo ra song song lp trnh c PPI (Programable Parallel Interface) 8255 do hngIntel ch to. Ngoi kh nng cho php to mt giao din song song lp trnh c ghp nivi my tnh, n cn c th hot ng vi cc ch khc nhau v kh nng lp xo bit ca C
cho i thoi. Vi mch 8255 ny rt thng dng, thng c trong cc my tnh PC/XT, PC/AT vcc thit b trao i tin khc.
38
7/31/2019 Giao Trinh Ghep Noi May Tinh
39/79
Chng 5: Ghp ni trao i tin song song
Vi mch gm:- B m s liu trao i tin v s liu hai chiu gia PPI v bus ca my tnh.- B logic iu khin c vit: tc l b gii m a ch lnh cho cc thanh ghi m v thanh ghi
iu khin.Phn ghp ni vi TBN c:Ca A: thanh ghi m s liu (8 bit), vo hoc ra tu theo chng trnh khi phtCa B: thanh ghi m s liu (8 bit), vo hoc ra tu theo chng trnh khi phtCa C: Chia lm 2 na, cao v thp
Cng A8
Cng Cnathp
4
Cng B8
IO
PA0- PA
7
Cng Cna cao
4
IO
PA7- PA
4
IO
PA3- PA
0
IO
PA0- PA
7
8
4
4
8
iukhinnhm
AA
iukhinnhmB
msliu
D0- D
7
iukhinlgicc
ghi
RD
CS
WR
A1
A0
S khi ca PPI 8255A
Reset
39
7/31/2019 Giao Trinh Ghep Noi May Tinh
40/79
Tu theo ch s dng cho bi t iu khin ca C c th c dng- Trao i s liu vo hoc ra- iu khin hoc i thoi vi TBN v VXL khi ca A v B ch xc lp v xo tng bit PCi- iu khin hoc i thoi vi TBN v VXL khi ca A v B ch 1 v 2
Cc mch iu khin ni b: C cc khi iu khin (nhm A, nhm B) cc ca A, B v C.
5.3.2. Cc lnh ghi v c cc cng v cc thanh ghi iu khin
Vi t hp cc tn hiu a ch (A0, A1), chon vi mch (CS), v cc lnh c ghi (RD, WR)ca VXL, ta c cc lnh ghi c khc nhau cho cc ca (A, B, C ) v thanh ghi iu khin nhbng 3.2, to ra s di chuyn s liu gia ng dy s liu, cc ca v thanh ghi iu khin.Nh vy, vi mch 8255 c c im l khng c lnh c thanh ghi trng thi m dng lnh c ca Ckhi vi mch ch 1 v 2, cn ch 0, khng c trng thi.
A1 A0 CS RD WR Lnh (ca VXL)Chiu di chuyn s liu
(vi VXL)0 0 0 0 1 c cng A Cng A -> D0 - D70 1 0 1 1 c cng B Cng B -> D0- D7
1 0 0 1 1 c cng C Cng C -> D0- D71 1 0 0 1 Khng c gi tr0 0 0 1 0 Ghi cng A D0 - D7 -> Cng A0 1 0 1 0 Ghi cng B D0 - D7 -> Cng B1 0 0 1 0 Ghi cng C D0 - D7 -> Cng C
1 1 0 1 0Thanh ghi iukhin
D0 - D7 -> Thanh ghi iukhin
X X 1 X XTrng thi in trcao
Khng c trao i d liu
Cc lnh ca 8255A
5.3.3. Cc t iu khinT iu khin thit lp ch :
T iu khin lp xo bit:
Ch 0
D0
- D7
A0, A
1, CSWR, RD
Port C Port APort B
PB0
- PB7
PA0
- PA7
PC0
- PC3
PC4
- PC7
I/O I/O I/O I/O
8255A
D7 X X X D3 D2 D1 D0
0: Lp xa bit
BitD3D
2D
111PC00000 PC10010 P
C20100 PC
30110 PC
41001 PC
51
010 PC61101 PC
71111
0: xo1: lp
C lp/xo
T IU KHIN LP XO BIT CA VI MCH 8255
D7 D6 D5 D4 D3 D2 D1 D0
NhmB
Cng C thp1 = Li vo
0 = Li raCng B
1 = Li vo0 = Li ra
Mode1 = Mode 10 = Mode 0
NhmACng C cao1 = Li vo0 = Li ra
Cng A1 = Li vo0 = Li ra
Mode00 = Mode 001 = Mode 10X = Mode 2
Mode Flag1 = Active
Control Word (T iukhin)
40
7/31/2019 Giao Trinh Ghep Noi May Tinh
41/79
Chng 5: Ghp ni trao i tin song songCh ny cn c gi l ch vo hoc ra c s v:
- Cc ca A, B, v 2 na ca ca C c s dng c lp vi nhau- Cc ca c th l ca vo hoc ra tu t iu khin ch ghi vo thanh ghi iu khin- S liu ra c cht- S liu vo khng c cht- Khng c tn hiu i thoi vi VXL cng nh TBN. Nu mun c tn hiu i thoi, phi dng
cc bit ca ca no ( thng l ca C) cc lp ln 1 v sau l xo v 0 bng cch ghi s
liu hoc bng cch xc lp/ xo mt bit PC i ca ca C bi t iu khin vi D7 = 0. Khi cngC phi thit lp ch ra.
- Lp xo tng bit ca cng PC- ch 0, ngi ta c th dng cc bit PCi ca ca C lp (t ln 1) v xo (xo v 0)
iu khin hoc i thoi vi TBN. Mun vy phi ghi li lnh vi D7 = 0 vo thanh ghi iukhin ca 8255A sau khi ghi li iu khin ch .
Ch 1:
Ch ny cn gi l ch vo ra c i thoi vi cc bit ca C. Chia thnh 2 nhm. Nhm A gm ca A trao i s liu v na C cao (PC3 PC7) i thoi vi VXL v
TBN.
Nhm B gm ca B trao i s liu v na C thp (PC0 PC2) i thoi vi VXLv TBN.
Chiu v ch 1 ca ca A v B do t iu khin quyt nh, cn cc tn hiu i thoi PC icn ph thuc chiu ca vo hay ra ca ca A, B
PC0 lun l tn hiu ra INTRB: tn hiu yu cu ngt chng trnh cho B
PC3 lun l tn hiu ra INTAA: tn hiu yu cu ngt chng trnh cho A
PC2 lun l tn hiu vo, nhn cc tn hiu yu cu STBBv xc nhn /ACKB ca thit bngoi cho ca B chung cho c 2 chiu vo hay ra. Cn na A, nu l ca vo, PC4 nhn/STBA ca thit b ngoi v PC6 nhn /ACK ca thit b ngoi nu ca A l ca ra.
Cc bit cn li ca ca C l vo hay ra tu t iu khin ch Ch ra:
Port APort B
PB0
- PB7 PA0 - PA7
I/O I/O
IBFB
STBB
IBFA
STBA I/O I/O
INTR
B
INTR
A
OBFB
OBFAACKB ACKAI/OI/O
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
Ca vo
Ca ra
i thoi ca Ai thoi ca B
Cng A: Ch 1, chiu ra
41
7/31/2019 Giao Trinh Ghep Noi May Tinh
42/79
Mi khi d liu c ghi ra cng, tn hiu /OBF chuyn sang mc tch cc 0 thng bocho TBN bit d liu c cht cng ra v sn sng cho TBN c. Khi c c d liu,TBN kch hot tn hiu /ACK cho bit c d liu, khi tn hiu /OBF c t ng chuynv mc cao.
/OBF(Output Buffer Full): L tn hiu ra thng bo cho TBN bit d liu c cht cng ra A hoc B.
/ACK(Acknowledge): Tn hiu xc nhn bo v t TBN lm cho chn OBF chuyn lnmc cao. Tn hiu ny thng bo cho 8255 bit TBN nhn d liu.
INTR: Tn hiu ny thng thng dng ngt VXL mi khi TBN gi li tn hiu /ACK
INTE(Interrupt Enable): Bit ni, dng cho php hay cm tn hiu INTR.
- INTEA c lin kt vi PC6 nu cng A hot ng ch ra. PC4 nu ch vo
- INTEB lin kt vi PC2 vi c chiu ra v vo ca cng B
Ch vo: /STB: Chn nhn tn hiu xung cht. Khi c mt xung mc thp tc ng vo chn ny, d
liu a t TBN vo 8255 s c cht cng vo.
IBF: Khi tn hiu /STB tch cc tn hiu IBF s c chuyn sang mc cao, bo cho TBNbit 8255 cht d liu cng vo. Tn hiu ny s tr v mc thp khi VXL c tnhiu ang cht cng (khi tn hiu /RD tch cc)
INTR: Tn hiu ngt VXL, tch cc khi /STB chuyn sang mc cao. Khi c tn hiu /RDtn hii\ ny s thi tch cc.
Ch 2:
Ch ny ch dng cho ca A vi vo ra hai chiu v cc bit PC3 PC7 dng lm tn hiuhi thoi. Ca B lc ny c th hot ng ch 0 hoc 1, chiu vo hay ra c th t bng tiu khin.
Port APort B
PB0
- PB7
PA0
- PA7
I/O I/O
IBFA
STBA
INTR
A
OBFA
I/O (Ch 0)i thoi (Ch 1)
ACKA
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
Ca B c th ch 0 hoc 1
Ca A ch ithoi 2 chiu
(2 chiu)
Cng A: Ch 1, chiu vo
42
7/31/2019 Giao Trinh Ghep Noi May Tinh
43/79
Chng 5: Ghp ni trao i tin song song
V d:Gi thit ta cn thit lp:PPI hot ng ch 0. Cng A vo, B ra, C cao vo, C thp ra.-> Ta c gi tr ca t iu khin l 98HCng B hot ng ch 1, vo. Cng A hot ng ch 0, ra. Cng C cao ra, cng C thp khngquan tm- > Gi tr t iu khin: 87H hoc 86H
T trng thi
Thng thng khi s dng 8255 ch 1 v 2, ta thng dng phng php iu khinbng ngt chng trnh. Tuy nhin ta c th s dung phng php hi vng trng thi bng cchc cng C bit c trng thi hot ng ca 8255. Do ta c th coi a ch cng C trongch 1 v 2 l a ch ca thanh ghi trng thi ca 8255. c thanh ghi trng thi ny, ta c thbit c cc thng tin sau:
C yu cu ngt chng trnh trao i tin ca cc ca A (INTRA) hay B (INTRB)
Cc thanh ghi m s liu vo c s liu (IBFA=1, IBFB=1)
Cc thanh ghi m ra c s liu (/OBFA = 0, /OBFB = 0)
Hoc ring vi ch 2, khi c ngt xy ra, ta cn phi c t trng thi bit c nguynnhn gy ra ngt l do 8255 nhn c d liu hay gi c d liu c cc hot ngtng ng.
5.3.4. Ghp ni 8255A vi MVT v TBN
S ghp ni ca vo ra theo chng trnh vi VXL v TBN nh hnh di. PPI 8255A t
gia VXL v TBN, ng vai tr trung chuyn tin gia VXL v TBN qua cc ng dy caMVT v TBN.
43
7/31/2019 Giao Trinh Ghep Noi May Tinh
44/79
Phn ghp ni vi MVT Cc tn hiu v s liu (data bus) D0 D7, a ch thp (A0,A1), lnh c (RD), lnh ghi
(WR) c ni thng vi cc li vo tng ng ca PPI 8255A
Tn hiu /CS (Chip Select) ca PPI c ni vi b gii m cc a ch cao (A2 An) caVXL
Cc tn hiu ra yu cu ngt chng trnh (INTRA , INTRB) ca 8255 c ni vo li voINTR ca VXL qua mt vi mch logic OR
Phn ghp ni vi thit b ngoi:
Tu thuc loi TBN, s bit ca ng dy s liu v phng thc trao i tin m ta c cchmc ng dy khc nhau.
Ch 0: Ba ng dy PA, PB, PC u c dng trao i s liu hoc tin v iukhin v trng thi mt cch bnh ng vi nhau v tu la chn. ch ny c th:
- Khng cn i thoi gia 8255 v TBN, ch c trao i s liu trn 1 trong 3cng
D0
D7
RD
WR
A0
A1
8
CS
RST
RD
WR
D0
D7
Gii ma ch
INTR
AINTR
B
PA0 PA7
8
PA0
PA7
8
PCTBN
A2
- An
INTR
VXL8255A
Ghp ni 8255A vi MVT v TBN
Reset
44
7/31/2019 Giao Trinh Ghep Noi May Tinh
45/79
Chng 5: Ghp ni trao i tin song song
- Nu cn tin v iu khin hay c trng thi ca TBN ta s dng thm cc cakhc cho mc ch ny ngoi ca trao i s liu
Ch 1: Ch c hai ca A,B trao i s liu c lp nhau, cn cc ng PCi ca caPC dng hi thoi cho cc ca A,B trn. Cc ng ny c chiu v vai tr xcnh do khng th thay i.
Ch 2: Ch cho ca PA vi s liu vo/ra hai chiu. Cc bit ca PC cng c vai tr vchiu xc nh
cc ch bt tay (i thoi), gia 8255 v TBN ch trao i hai tn hiu hi p m thiMt s ng dng ghp ni 8255 vi thit b ngoi:
Mch ghp ni 8255 ch 0:
hnh 4.x gii thiu cch ghp ni 8255 vi my in qua cng PA c chiu ra, v ghp nivi mt b bin i tng t - s qua cng PB c chiu vo. Cng C c dnh cho cc tn hiui thoi. Trong :
Na C thp l ca vo, c trng thi ca my in v ADC
- PC0 cho trng thi my in bn (busy)
- PC1 cho tn hiu ACK ca my in
- PC2 Cho tn hiu EOC (End of Convertion) ca ADC
Na C cao a ra cc tin v iu khin
- PC4 a ra tn hiu cht d liu cho my in
- PC5 a ra tn hiu Start cho ADC.
45
7/31/2019 Giao Trinh Ghep Noi May Tinh
46/79
Ghp ni 8255 ch 1:
8 PA0 PA7INTR
D0
D7
RD
WRA0A1
CS
RST RD
WR
D0
D7
Gii ma ch
PB0
PB7
My in
A2
- An
VXL 8255A
Ghp ni 8255A vi MVT v TBN ch 0
Reset
ADC
/ACK
Busy
Data Strobe
EOC
Start
PC0
PC1
PC4
PC5
PC3
46
7/31/2019 Giao Trinh Ghep Noi May Tinh
47/79
Chng 5: Ghp ni trao i tin song song
Chng trnh trao i tin cho 8255A
Tu theo cch mc v TBN, chng trnh cn c cc khi lnh c bn sau:1. Khi to: l lnh ghi vo thanh ghi iu khin ca 8255 vi a ch thp A0, A1 =11 ti t iu khin. Cc bit t iu khin ny c xc nh bi:- Ch ca cc ca- Chiu (vo/ra) ca cc ca2. iu khin TBN: Cn a ni dung ca cc bit cho cc ca dng iu khin TBN.Nu ch 1,2 cc bit nay l cc bit PCi ca i thoi, ta khng cn phi vit lnh a gi trra na. Cn trng hp ch 0 ta c th dng mt trong hai cch sau:- Lp/ xo tng bit PCi ca ca PC- a tin ra cc bit ca cc ca3. c v kim tra trng thi:
- Cc lnh c voo Thanh ghi trng thi nu ca dng ch 1, 2o Mt ca bt k ch 0 dng ghi trng thi ca TBN.
- Lnh v logic (AND) chn cc bit khng cn kim tra- Lnh so snh (CMP) vi cc gi tr 1 ca bit - Lnh tr v v tr c lnh c trng thi nu kt qu so snh khng ng trng thi cn xt4. Trao i s liu:- a s liu vo (IN v VXL h 86) hay chuyn s liu MOV (ca VXL 8085)- a s liu ra (OUT ) hay chuyn s liu MOV
D0
D7
RD
WR
A0
A1
8
CS
RST
RD
WR
D0
D7
Gii ma ch
PC3
PC0
A2
- An
INTR
VXL8255A
Ghp ni 8255A vi MVT v TBN ch 1
Reset
PB
My in
ADC
/ACKBusy
Data Strobe
EOCStart
PA
47
7/31/2019 Giao Trinh Ghep Noi May Tinh
48/79
5.4 Ghp ni song song qua cng my in
5.4.1. Ghi thiu chung
Cng my in l giao din thng c s dng nhiu nht trong cc ng dng ghp ni mytnh n gin, do tnh ph cp v n gin trong vic ghp ni v iu khin cng vi yu cu ti
thiu v thit b phn cng thm vo. Cng ny cho php a vo ti 13 bit v a ra 12 bit songsong, trong c 4 ng iu khin, 5 ng bo trng thi v 8 ng d liu. Trong hu nhbt k PC no ta cng c th tm thy cng my in pha sau. u ni ny c dng DB 25 chn(gic ci female).
Cc cng song song gn y c chun ho theo chun IEEE 1284 a ra nm 1994. Chunny m t 5 ch hot ng ca cng my in nh sau:
1. Ch tng thch (Compatibility mode)
2. Ch Nibble
3. Ch Byte
4. Ch EPP
5. Ch d ECP
Ch c s (hay cn gi l Centronics mode) c bit dn t lu. Ch ny ch cho phpa d liu theo mt chiu ra (output), vi tc ti a 150kB/s. Mun thu d liu (input) taphi chuyn sang ch Nibble hay Byte. Ch Nibble c th cho php a vo 4 bit songsong mt ln. Ch Byte s dng tnh nng song song hai hng ca cng my in a vo
mt byte. a ra mt byte ra my in ( hoc cc thit b khc) trong ch c s, phn mm phi
thc hin cc bc sau:(1) Vit d liu ra cng my in (ghi vo thanh ghi d liu)(2) Kim tra my in c bn khng, nu my in bn, n s khng chp nhn bt c d
liu no, do d liu ghi ra lc s b mt
48
7/31/2019 Giao Trinh Ghep Noi May Tinh
49/79
Chng 5: Ghp ni trao i tin song song
(3) Nu my in khng bn, t chn Strobe (chn 1) xung thp (mc 0), bo vimy in l c d liu trn ng truyn ( chn 2 - 9)
(4) Sau ch 5 microgiy v t chn Strobe ln cao (mc 1).
Ch m rng (EPP) v nng cao (ECP) s dng cc thit b phn cng tch hp thm vo
thc hin v qun l vic i thoi vi thit b ngoi. ch ny cho phn cng kim tratrng thi my in bn, to xung strobe v thit lp s bt tay thch hp. Do ch cn s dngmt lnh vo ra trao i d liu nn gip tng tc thc hin. Khi cng ny c th ad liu ra vi tc 1 2 MB/s. Ngoi ra ch ECP cn h tr s dng knh DMA v c thmb m FIFO.
5.4.2. Cu trc cng my in
Chun IEEE 1284 a ra 3 u ni dng cho cng my in. Dng A (DB25) c th thy huht cc my PC, dng B (36 chn) thng thy my in, v dng C, 36 chn, ging dng Bnhng nh hn, c cc thuc tnh in tt hn v c thm 2 ng tn hiu dnh cho cc thit b
i mi sau ny.S hiuchn
(DB25)Tn
Hng(In/Out)
Thanhghi
M t
1 nStrobe In/Out Control Byte c in
2 Data 0 Out Data
ng d liuD0 - D7
3 Data 1 Out Data
4 Data 2 Out Data
5 Data 3 Out Data
6 Data 4 Out Data
7 Data 5 Out Data
8 Data 6 Out Data
9 Data 7 Out Data
10 nAck In Status Xc nhn (Acknowledge
11 Busy In Status My in bn
12 Paper-Out / Paper-End In Status Ht giy ( Paper Empty
13 Select In Status La chn ( Select )14 nAuto-Linefeed In/Out Control T np giy ( Auto Feed
15 nError / nFault In Status Li
16 nInitialize In/Out Control t li my in
17 nSelect-Printer / nSelect-In In/Out Control
18 - 25 Ground Gnd
nXXXX: Tch cc mc thp
49
7/31/2019 Giao Trinh Ghep Noi May Tinh
50/79
Bng s chn ca cng my in
Tn hiu ra ca cng my in thng cc mc logic TTL.
Address Cng
378h - 37Fh LPT 1
278h - 27Fh LPT 2
Khi khi ng BIOS gn a ch cho cc cng my in v lu thng tin a ch ny trong bnh a ch cho bng di:
a ch bt u M t
0000:0408 a ch c bn cng LPT1
0000:040A a ch c bn cng LPT20000:040C a ch c bn cng LPT3
0000:040E a ch c bn cng LPT4
Chng trnh v d c thng tin a ch ca cc cng my in c trong my tnh:
#include
#include
void main(void){
unsigned int far *ptraddr; /* Pointer to location of Port
Addresses */
unsigned int address; /* Address of Port */
int a;
ptraddr=(unsigned int far *)0x00000408;
for (a = 0; a < 3; a++)
{
address = *ptraddr;
if (address == 0)printf("No port found for LPT%d \n",a+1);
else
printf("Address assigned to LPT%d is
%Xh\n",a+1,address);
*ptraddr++;
}
}
50
7/31/2019 Giao Trinh Ghep Noi May Tinh
51/79
Chng 5: Ghp ni trao i tin song song
5.4.3. Cc thanh ghi ca cng my in:1. Thanh ghi d liu (Data Register)
a ch TnRead/Writ
eS hiu
bitM t
Base + 0 DataPort
Write Bit 7 Data 7Bit 6 Data 6
Bit 5 Data 5
Bit 4 Data 4
Bit 3 Data 3
Bit 2 Data 2
Bit 1 Data 1
Bit 0 Data 0
a ch c s (Base address) thng gi l cng d liu (Data port) hay Thanh ghi d liu(Data Register) thng s dng a d liu ra cc chn tn hiu ( Chn 2 9). Thanh ghi nythng l thanh ghi ch ghi. Nu ta c d liu cng ny ta s thu c gi tr m ghi ra gnnht. Nu cng my in l hai chiu th ta c th thu gi liu vo t cng ny.
2. Thanh ghi trng th i ( Status Register):
a ch Tn Read/Write S hiu bit M t
Base + 1 Status Port Read Only Bit 7 Busy
Bit 6 Ack
Bit 5 Paper OutBit 4 Select In
Bit 3 Error
Bit 2 IRQ (Not)
Bit 1 Reserved
Bit 0 Reserved
Thanh ghi trng thi l thanh ghi ch c. Bt k d liu no vit ra cng ny u b b qua.Cng trng thi c to bi 5 ng tn hiu vo (Chn 10, 11, 12, 13, 15), mt bit trng thingt IRQ v 2 bit dnh. Ch rng bit 7 (Busy) l u vo tch cc thp, ngha l khi c mttn hiu +5V chn 11, bit 7 s c gi tr logic 0. Tng t vi bit 2 (nIRQ) nu c gi tr 1 cngha l khng c yu cu ngt no xut hin.
51
7/31/2019 Giao Trinh Ghep Noi May Tinh
52/79
3. Thanh ghi iu khin ( Control Register):
ach
Tn Read/Write S hiu bit M t
Base + 2 Control
Port
Read/Write Bit 7 Unused
Bit 6 UnusedBit 5 Enable Bi-Directional Port
Bit 4 Enable IRQ Via Ack Line
Bit 3 Select Printer
Bit 2 Initialize Printer (Reset)
Bit 1 Auto Linefeed
Bit 0 Strobe
Thanh ghi iu khin c d nh l ch ghi. Khi mt my in c ni vi my tnh, 4
ng iu khin s c s dng. l cc ng Strobe, Auto Linefeed, Inittialize v SelectPrinter, tt c u l u ra o tr ng Initialize.
Bit 4 v 5 l cc bit iu khin ni. Bit 4 cho php ngt v bit 5 cho php ch vo ra 2chiu. t bit 5 cho php thu liu vo qua ng Data 0 7.
4. Thanh ghi iu khin m rng ECR (Extended Control Register ):
a ch Bit Function
Base + 402H 7:5 Selects Current Mode of Operation
000 Standard Mode001 Byte Mode
010 Parallel Port FIFO Mode
011 ECP FIFO Mode
100 EPP Mode
101 Reserved
110 FIFO Test Mode
111 Configuration Mode
4 ECP Interrupt Bit3 DMA Enable Bit
2 ECP Service Bit
1 FIFO Full
0 FIFO Empty
52
7/31/2019 Giao Trinh Ghep Noi May Tinh
53/79
Chng 5: Ghp ni trao i tin song song
5.4.4. EPP - Enhanced Parallel Port
Cng song song nng cao (EPP) c thit k bi s lin kt gia cc hng Intel, Xircom& Zenith Data Systems. Cng EPP ban u c thit k theo chun v sau l chun IEEE1284 ra i nm 1994. EPP c hai chun: EPP 1.7 v EPP 1.9. C mt vi s khc nhau gia ccchun ny m chng c nhng nh hng ti cc thao tc x l ca thit b. Vn ny s cn
c ni n trong phn sau. EPP c tc truyn d liu theo tiu chun l t 500KB/s ti2MB/s. iu ny cho php cc thit b phn cng ti cc cng to ra tn hiu bt tay (tn hiu mcni, hi thoi) chng hn nh tn hiu stroble, phn mm x l chng, v d nh caCentronics.
EPP c s dng rng ri hn ECP. EPP khc vi ECP ch cng EPP pht ra cc tn hiuiu khin v iu khin tt c qu trnh truyn d liu t n ti thit b ngoi vi. Bn cnh thECP li yu cu thit b ngoi vi c s hi thoi tr li bi mt tn hiu mc ni. iu ny lkhng mm do cho vic thit l p mt lin kt logic v nh vy cn c mt b iu khin chuyndng hoc mt chip ngoi vi ECP.
EPP Hardware Properties (cc c trng phn cng EPP)Khi s dng ch EPP, mt t p cc tc v khc nhau (c tn tng ng) c sp xp trn
mi ng dy tn hiu. Cc tn hiu ny c ch ra trong bng 4. Chng s dng cc tn chungtrong SPP v EPP trong cc bng m t v cng song song v cc ti liu. iu ny c th lmcho n rt cng nhc ch r chnh xc nhng g ang xy ra. Mc d tt c cc ti liu yu s s dng tn theo EPP.
Pin SPP Signal EPP Signal IN/OUT Function
1 Strobe Write OutMc thp th hin mt chu k ghi, mc cach nh l ang c
2-9 Data 0-7 Data 0-7 In-Out Data Bus. Hai chiu
10 Ack Interrupt InInterrupt Line. Ngt xut hin sn dnca xung
11 Busy Wait InUsed for handshaking. A EPP cycle can bstarted when low, and finished when high.
12Paper Out /End
Spare In Spare - Not Used in EPP Handshake
13 Select Spare In Spare - Not Used in EPP Handshake
14 Auto Linefeed Data Strobe OutKhi mc thp, ch nh l ang truyn d
liu (data)15 Error / Fault Spare In Spare - Note used in EPP Handshake
16 Initialize Reset Out Reset - Tch cc thp
17 Select Printer AddressStrobe
Out Khi mc thp, ch nh ang truyn i ch
18-25 Ground Ground GND Ground
Bang 1 S xp xp cac chn cua EPP.
53
7/31/2019 Giao Trinh Ghep Noi May Tinh
54/79
Cc tn hiu Paper Out, Select v Error khng c xc nh trong t p cc tn hiu bt tay caEPP. Cc tn hiu ny c th c s dng tu theo s nh ngha ca ngi s dng. Trngthi ca cc c tn hiu ny c th c xc nh ti bt k thi im no theo s xp xp tnhiu ca thanh ghi trng thi. ng tic l khng c u ra tha. iu ny c th tr nn phc tpcho vic xc nh trng thi ti mt thi im no ca cho k truyn/nhn thng tin.
Cc thanh ghi trong ch EPP
Ch EPP c mt tp cc thanh ghi mi, trong c 3 thanh ghi c t ch SPP
Address Port Name Read/Write
Base + 0 Data Port (SPP) WriteBase + 1 Status Port (SPP) ReadBase + 2 Control Port (SPP) WriteBase + 3 Address Port (EPP) Read/WriteBase + 4 Data Port (EPP) Read/WriteBase + 5 Undefined (16/32bit Transfers) -Base + 6 Undefined (32bit Transfers) -Base + 7 Undefined (32bit Transfers) -
Qu trnh bt tay ca EPP
Theo trnh t thc hin mt chu k truyn d liu hp khi s dng EPP, chng ta phi theoth t bt tay ca EPP. Do phn cng lm tt c mi vic nn cc tn hiu bt tay ny ch c sdng cho phn cng ca chng ta m khng c s dng cho phn mm nh trong trng hpvi SPP. khi to cho mt chu k EPP, phn mm ch cn thc hin mt thao tc vo/ra khi to cho thanh ghi EPP. Chi tit v vn ny s ni c th sau.
EPP Data Write Cycle
Hnh 1. Enhanced Parallel Port Data Write Cycle.
1. Chng trnh ghi d liu vo thanhghi d liu EPP (Base+4)
2. /Write c xo v 0. (Cho bitang c mt thao tc ghi)
3. D liu c t ln ng truynd liu (2 9).
4. /Data Strobe c kch hot nu/Wait ang mc thp (Sn sng btu mt chu k mi)
5. My tnh ch tn hiu xc nhn thhin bi /Wait chuyn sang mc cao
6. Ngng kch hot /Data Strobe
7. Chu k ghi d liu EPP kt thc
Qu trnh gi a ch EPP (Address Write Cycle)
54
7/31/2019 Giao Trinh Ghep Noi May Tinh
55/79
Chng 5: Ghp ni trao i tin song song
Hnh 2. Enhanced Parallel Port Address Write Cycle.
1. Chng trnh ghi gi tr a chvothnh ghi a ch EPP (Base+3)
2. /Write c xo v 0. (Cho bit qatrnh ghi)
3. Gi tr a ch c t ln ngtruyn d liu (2 7).
4. /Address Strobe c kch hotnu /Wait ang mc thp (Sn sngbt u)
5. My tnh ch tn hiu xc nhnvng vi /Wait t ln mc cao (TBN c a ch xong)
6. Tn hiu /Address Strobe ngng tchcc
7. Chu k gi a ch EPP
EPP Chu k c d liu
Hnh 3. Enhanced Parallel Port Data Read Cycle.
1.Chng trnh ra lnh c thanh ghi dliu EPP (Base+4)
2. /Data Strobe c kch hot nu /Waitang mc thp(Sn sng mt chu kmi)
3.My tnh ch tn hiu xc nhn (/Waitchuyn sang mc cao)
4.D liu c c t cc chn tn hiuca cng
5.Ngng kch hot tn hiu /Data Strobe
6.Kt thc chu k c d liu
EPP Address Read Cycle
55
7/31/2019 Giao Trinh Ghep Noi May Tinh
56/79
Hnh 4. Enhanced Parallel Port Address Read Cycle.
1. Program reads EPP Address Register(Base+3)2. nAddr Strobe is asserted if Wait is Low
(OK to start cycle)3. Host waits for Acknowledgment bynWait going high4. Data is read from Parallel Port Pins5. nAddr Strobe is de-asserted6. EPP Address Read Cycle Ends
Chu y: Nu s du ng EPP 1.7 (trc IEEE 1284) tin hiu Strobes cho d liu va iachi co th c dung xac nhn s bt u cua mt chu ky ri cua trang thai i.EPP 1.9 se chi bt u mt chu ky i mc thp. Ca EPP 1.7 va EPP 1.9 chuy n tinhiu i (strobe) ln mc cao kt thuc chu ky.
56
7/31/2019 Giao Trinh Ghep Noi May Tinh
57/79
Chng 5: Ghp ni trao i tin song song
Cc thanh ghi s dng trong ch EPP
Cng EPP cng c mt t p cc thanh ghi mi. Tuy nhin c 3 thanh ghi l c trc trongcng song song chun. Bng sau cho thy cc thanh ghi c v cc thanh ghi mi.
Address Port Name Read/Write
Base+0 Data Port (SPP) Write
Base+1 Status Port (SPP) Read
Base+2 Control Port (SPP) Write
Base+3 Address Port (EPP) Read/Write
Base+4 Data Port (EPP) Read/Write
Base+5 Undefined (16/32bit Transfers) -
Base+6 Undefined (32bit Transfers) -
Base+7 Undefined (32bit Transfers) -
Bang 2: EPP Registers
Nh ta c th thy, 3 thanh ghi u l ging ht cc thanh ghi trong t p thanh ghi ca cngsong song chun v chc nng cng l ging. V th nu ta s dng mt EPP ta c th a dliu ra thanh ghi d liu (Base+0) theo kiu ging nh ta c th a d liu ra nu s dng SPP(Standard Parallel Port). Nu ta kt ni vi mt my in v s dng ch ph hp, sau taphi kim tra xem cng c bn khng, tip theo ta c th bo (strobe) v kim (Ack) tra thngqua vic ghi/c thanh ghi iu khin v trng thi.
Nu mun truyn thng vi mt thit b tng thch EPP th tt c cng vic ta phi lm lgi d liu ra thanh ghi d liu EPP (EPP Data Register) ti a ch Base+4 v cng my in ssinh ra tt c cc tn hiu bt tay cn thit. Tng t nh vy, nu mun gi mt a ch ti thitb, ta s dng thanh ghi a ch EPP (EPP Address Register) ti a ch Base+3.
C thanh ghi a ch (Address Register) v d liu (Data Register) u c th c v ghi, do c d liu t thit b ta c th s dng cng mt thanh ghi. mc d, card my in phi khipht mt chu k c vi tn hiuData Strobe hocAddress Strobe u ra. Thit b ngoi vn cth a ra tn hiu yu cu c qua ng tn hiu yu cu ngt v ISR (chng trnh con phcv ngt) s thc hin cng vic c.
Cng trng thi c mt s thay i nh. Bit 0 l d tr i vi t p thanh ghi ca SPP th
gi y n l Bit Time-out EPP. Bit ny s c l p khi xut hin mt Time-out EPP. S kinny xy ra khi ng tn hiu nWaitl khng c xc nhn tr li trong khong 10us (gi trny tu thuc vo cng khc nhau) ca tn hiu IOR hoc IOW c xc nhn. Cc tn hiuIOR v IOW l cc tn hiu c v ghi thit b (I/O Read v I/O Write) trn bus ISA.
Ch EPP c gin thi gian rt ging vi gin thi gian ca bus ISA. Khi thc hinmt chu k c, cng phi m nhn trch nhim iu khin ph hp cc tn hiu hi thoiRead/Write v tr li d liu nh trong chu k bus ca ISA. Tt nhin qu trnh ny khng ngthi vi chu k bus ISA, v th cng s dng tn hiu iu khin IOCHRDY (I/O Channel Ready)
57
7/31/2019 Giao Trinh Ghep Noi May Tinh
58/79
trn bus ISA cho bit trng thi i cho n khi hon thnh chu k bus. By gi ta c thtng tng rng nu mt qu trnh c hoc ghi EPP c bt u nu nh khng c thit bngoi vi no ni vo th s ra sao? Cng s khng bao gi nhn c mt tn hiu xc nhn(nWait) v th m c c mt yu cu cho trng thi i, my tnh phi thc hin mt vngl p kim tra. , do n duy tr vic gi tn hiu yu cu v ch kt thc trng thi wait, v mytnh s b treo. V vy m EPP thc hin mt kiu kim tra watchdog m thi gian time out l xp
x 10uS.Ba thanh ghi: Base+5, Base+6 v Base+7 c th c s dng cho cc thao tc c/ghi 32
bits d liu nu nh cng c h tr cho n. iu ny c th lm gim cc thao tc vo/ra ca ta.Cng song song c th chi truyn d liu 8 bits ti mt thi im cho nn bt k mt word 16hay 32 bits c ghi ti cng song song s c chia thnh cc byte v c gi qua 8 bits(ng) d liu ca cng song song.
Lp trnh cng my in trong ch EPP.
EPP ch c 2 thanh ghi chnh v mt c trng thi time-out, chng ta c th thit l p chng
nhng g?Trc khi ta c th bt u bt k mt chu k EPP bng vic c v ghi ti thanh ghi d liu
v thanh ghi a ch th cng phi c cu hnh mt cch ng n cho ch lm vic ca n.trong trng thi t do, cng EPP cn phi c cc tn hiu nAddress Strobe, nData Strobe, nWritev nReset trng thi khng tch cc ( mc cao - high level). Mt vi cng yu cu ta phi thitl p cc tn hiu ny trc khi thc hin mt chu k bus EPP. V vy nhim v u tin ca chngta l khi to mt cch th cng cc tn hiu ny bng vic s dng cc thanh ghi ca SPP. Cth l ghi gi tr xxxx 0100 ti thanh ghi iu khin khi to.
Trn mt vi card, nu cng song song c t trong ch ngc li, th mt chu k ghi
EPP s khng th thc hin c. V vy n s t bit phi t cng vo ch hp l trc khis dng EPP. Xo bits 5 ca thanh ghi iu khin c th lm cho vic l p trnh tr nn th v hnm khng lm ph v s pht trin chng trnh.
Bit time-out ca EPP The EPP: Khi bit ny c l p, cng EPP c th khng m bo ngchc nng ca n. Mt s kin chung l lun lun c gi tr 0FFh t c chu k a ch v chu kd liu. Bit ny nn c xo cc thao tc c tin cy v n phi lun c kim tra.
58
7/31/2019 Giao Trinh Ghep Noi May Tinh
59/79
Chng 6: Ghp ni trao i tin ni tip
Chng 6 Ghp ni trao i tin ni tip
6.1 t vn
Mt trong nhng k thut ghp ni c s dng rng ri l k thut ghp ni TBN qua cngni tip
- Qua cng ni tip c th ghp ni chut, modem ngoi, my in, b bin i A/D, cc thit b olng,
- Cc cch ghp ni ny s dng phng php truyn thng tin (d liu) theo kiu ni tip. cc bitd liu c truyn ni tip nhau trn mt ng dy duy nht. Ti mt thi im ch c mt bitd liu c truyn trn ng dy.
- Truyn thng ni tip c u im l cn t ng dy, c th s dng mt ng truyn, mtng nhn. Thng tin thu nhn l tin cy, tuy nhin tc truyn l chm.
- Chun RS232 c xy dng thnh chun chnh thc dnh cho truyn thng ni tip, do hip hicc nh cng nghip in t EIA (Electronic Industries Association) nm 1962. Chun ny chophp truyn vi tc cc i 19.600 bit/s vi khong cch nh hn 20 m
- Sau ra i mt s chun nh RS422, RS449, RS485 c tc truyn v khong cch cho php
xa hn. Vd: RS422: Tc truyn 10Mbit/s, khong cch >1000m
6.2 Yu cu v th tc trao i tin ni tip:
6.2.1. Yu cu:
Khi khong cch gia hai thit b trao i tin l rt ln, vic s dng phng php truyn tinsong song s i hi chi ph tn km v ng dy ng thi cng kh khn trong vic chngnhiu trn ng truyn. Do vi vic truyn tin khong cch xa v yu cu v tc khngln th phng php truyn tin ni tip c s dng. Truyn thng ni tip cn thm cng ongia cng tn hiu chuyn tn hiu song song thnh tn hiu ni tip gi i, sau phi
chuyn t tn hiu ni tip thnh song song ni nhn. Vic gia cng tn hiu ny cng tn mtkhon chi ph nhng cng gim hn nhiu so vi truyn thng song song.
Cc thit b u cui trong lin kt ni tip c th l cc loi thit b khc nhau nhng chngphi thng nht vi nhau v cc quy tc v giao thc cng nh nh dng d liu. S thng nhtny m bo d liu c gi ti bn nhn v bn nhn c th hiu c d liu . Phn ny strnh by v nh dng d liu v giao thc truyn d liu s dng trong truyn thng ni tip, vs ch trng hn ti phng php truyn thng khng ng b do c dng trong chun RS232ca cng ni tip COM
Trong truyn tin ni tip, ti mt thi im ch c mt bit d liu c truyn i v cc bit d
liu c truyn tun t nhau. Mt lin kt gia hai bn c th s dng hai ng d liu truyn theo hai hng ring bit hoc c th s dng chung mt ng d liu truyn theo chai hng vo cc thi im khc nhau. Vic truyn thng se dng chung mt ng tn hiucho c hai hng gi l truyn bn song cng (Half-duplex) cn trng hp s dng hai ngtn hiu ring cho hai hng cho php truyn ng thi c hai hng th c gi l truyn songcng y (Full-duplex). Trong my tnh PC, lin kt ni tip s dng dng Full-duplex.
C mt tn hiu phi c trong truyn tin ni tip l tn hiu xung ng h (clock). Tn hiuny gip iu khin dng d liu. Bn gi v bn nhn s dng tn hiu ny quyt nh khi
59
7/31/2019 Giao Trinh Ghep Noi May Tinh
60/79
no gi v nhn mi bit. C hai phng php truyn thng ni tip l truyn thng ng b(Synchronous) v truyn thng khng ng b (Asynchronous). Vi mi loi th cch s dng tnhiu clock l khc nhau.
6.2.2. Trao i tin ng b: Synchronous
Trong truyn thng ng b, hai bn truyn thng s dng chung mt ng tn hiu clock.
Tn hiu ny c pht ra bi mt bn hoc bi mt thit b pht xung ng b ring. Tn hiung b ny c th c tn s thay i hoc c mt chu k khng xc nh. Ngha l mi bittruyn i c xc nh ti mt thi im khi c s thay i mc tn hiu ca tn hiu clock. Bnnhn cng s dng s thay i mc xc nh khi no th c bit d liu gi ti. Th d nhbn nhn s cht d liu gi ti khi xut hin sn ln ca xung clock hay l s thay i mc tnhiu t thp ln cao. Truyn ng b bn nhn khng cn phi bit trc tc trao i tin mch cn qua tm ti tn hiu ng b pht trn ng dy ng b.
Truyn thng ng b rt hu ch khi truyn khong cch gn bi n cho php truyn thngvi tc cao. Tuy vy vi khong cch xa, vic truyn thng ng b l khng kh thi do n
i hi c thm mt ng tn hiu clock, nh vy cn mt ng dy thm vo, hn na s db nhiu trn ng truyn.
Mi khi tin ng b thng gm nhiu byte, cc khi c nh du bi cc byte nh dukhung tin, cc byte ny c gi tr l 16H ( m ASCII ca ch Sync)
Truyn thng ng b phi thc hin lin tc, khi khng c d liu cn truyn th bn phtvn tip tc phi truyn cc d liu trng duy tr s ng b.
Truyn thng ng b thc hin kim tra li bng phng php s d vng (chia tng tin cakhung cho mt a thc - gi l a thc sinh). S d ca php chia c ghi vo mt byte FCS( Frame Check Sum). pha thu, cng tnh tng t v so snh kt qu. Nu bng nhau th tin
truyn khng b li.
6.2.3. Trao i tin khng ng b - Asynchronous:
Trong truyn thng khng ng b, ng truyn s khng cn c thm mt ng tn hiuclock bi v mi bn c b pht xung ng b ca ring n. lm c nh vy, hai bnphi thng nht mt tn s xung chung, v tt c cc xung clock phi khp nhau mt mc no . Mi byte truyn i s bao gm mt bit Start ng b xung ng h gia hai bn vmt bit Stop nh du kt thc byte c truyn. Cng RS-232 ca my PC s dng nhdng khng ng b truyn thng vi cc thit b ngoi nh modem, my in cng nh tru