You are on page 1of 119

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh




1
TRNG I HC S PHM K THUT HNG YN
KHOA IN IN T
********


CNG BI GING
H THNG NHNG
EMBEDDED SYSTEMS









Hng Yn, thng 01 nm 2010

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
CHNG 1
GII THIU CHUNG

K nguyn cng ngh v ang tip tc pht trin khng ngng nhm thng
minh ha hin i ha h thng. C th ni s ra i v pht trin ca h nhng trc
tin phi k n s ra i ca cc b vi x l, vi iu khin. N c nh du bng
s ra i ca Chip vi x l u tin 4004 vo nm 1971 cho mc ch tnh ton thng
mi ca cng ty Busicom v sau c chp cnh v pht trin vt bc bi
INTEL tr thnh cc b siu x l nh cc Chip c ng dng cho PC nh ngy
nay. Thp k 80 c th c coi l thi im bt u k nguyn mi ca s bng n
thng tin v pht trin cc h nhng. T khi ngun cho ln sng ra i ca hng
lot cc chng loi vi x l v gn lin cc h nhng thm nhp rng khp trong cc
ng dng hng ngy ca cuc sng chng ta v d nh cc thit b in t s dng cho
sinh hot hng ngy nh: l vi sng, TV, t lnh, my git, iu ha v vn phng
lm vic nh: my fax, my in, my in thoi cc b vi x l v phn mm cng
ngy cng c s dng rng ri trong rt nhiu ng dng a dng. Trong s vn
cn ng dng cho c chip 8 bit, 16 bit v hin nay ch yu vn l 32 bit (chim khong
75%). Gn vi s pht trin phn cng, phn mm cng pht trin vi tc nhanh
khng thua km thm ch s tng nhanh hn rt nhiu theo s pht trin h nhng.
1.1 Cc khi nim v h nhng
H nhng

Hnh 1: mt vi hnh nh v h nhng
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
Trong th gii ca chng ta bt k mt h thng in/in t hay thit b in
c kh nng x l thng tin v iu khin u c th tim n trong mt thit b hay
h nhng, v d nh cc thit b truyn thng, thit b o lng iu khin, c th k ra
hng lot cc thit b h thng nhng ang tn ti quanh ta, chng l h nhng. Vy
thc cht h nhng l mt phn h thng x l thng tin trong cc h thng ln, phc
hp v c lp v d nh trong t, cc thit b o lng, iu khin, truyn thng v
thit b thng minh ni chung. Chng l nhng t hp ca phn cng v phn mm
thc hin mt hoc mt nhm cc chc nng chuyn bit c th (tri ngc vi my
tnh PC m chng ta thng thy c s dng khng phi cho mt chc nng m l
rt nhiu chc nng chc nng). PC thc cht l mt h thng ln t hp ca nhiu h
thng nhng v d nh card mn hnh, m thanh, cng, bn phm Chnh iu ny
lm chng ta d lng tng nu c hi nn hiu th no v PC, c phi l h nhng
hay khng.

H thi gian thc
Trong bi ton iu khin v ng dng chng ta rt hay gp thut ng thi
gian thc. Real time c phi l thi gian phn nh v trung thc ca thi gian hay
khng? Thi gian thc c phi l hin th chnh xc v ng b theo ng nh nhp
ng h thi gian hay khng? Khng hon ton ng nh vy! Thc cht theo cch
hiu nu ni trong h thng k thut c bit cc h thng yu cu kht khe v s rng
buc thi gian, thi gian thc c hiu l yu cu ca h thng phi m bo tha
mn yu cu v tnh tin nh trong hot ng ca h thng. Tnh tin nh ni ln
hnh vi ca h thng thc hin ng theo mt khung thi gian cho trc hon ton xc
nh vi giy cng c th n vi nano giy hoc nh hn na. y chng ta phn
bit yu t thi gian gn lin vi khi nim thi gian thc. Khng phi h thng thc
hin rt nhanh s m bo thc hin tnh thi gian thc. Hn th na nu ch nhanh
khng th cha m phi m bo duy tr n nh bng mt c ch hot ng tin cy.
Chnh v th m h thng khng kim sot c hot ng ca n (bt nh) th khng
phi l mt h thng m bo tnh thi gian thc mc d h thng c th p ng
rt nhanh, thm ch nhanh hn rt nhiu so vi yu cu t ra. Mt v d tiu biu l
ng truyn thng d liu qua ng truyn.

Hnh 1-2:Phn b quan h gia h nhng & thi gian thc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
Chun Ethernet truyn thng, mc d ai cng bit tc truyn l rt nhanh
nhng vn khng phi h hot ng thi gian thc v khng tha mn tnh tin nh
trong c ch truyn d liu (c th l rt nhanh v cng c th l rt chm nu c s
cnh tranh v giao thng ng truyn b nghn).
1.2 c im cng ngh v xu th pht trin ca h nhng
1.2.1 c im cng ngh
Cc h thng nh vy u c chung mt s c im nh yu cu v kh nng
thi gian thc, tin cy, tnh c lp v hiu qu. Mt cu hi t ra l ti sao h
thng nhng li pht trin v c ph bin mt cch nhanh chng nh vy. Cu tr
li l nm trong cc cc yu cu tng cng khng ngng trong cc ng dng cng
nghip hin nay. Mt trong nhng yu cu c bn l:
Kh nng c lp v thng minh ha: iu ny c ghi r hn thng qua cc
thuc tnh yu cu c th:
- tin cy
- Kh nng bo tr v nng cp
- S ph cp v tin s dng
- an ton
Hiu qu: Yu cu ny c th hin thng qua mt s cc c im ca h
thng nh sau:
- Nng lng tiu th
- Kch thc v phn cng v phn mm
- Hiu qu v thi gian thc hin
- Kch thc v khi lng
- Gi thnh
Phn hoch tc v v chc nng ha: Cc b vi x l thc hin mt phn iu
khin cho mt chc nng thu thp, x l v hin th ca t hay h thng iu khin
qu trnh. Kh nng ny lm tng thm s chuyn bit ha v chc nng ca mt h
thng ln v d dng hn cho qu trnh xy dng, vn hnh bo tr.
Kh nng thi gian thc: Cc h thng gn lin vi vic m nhim mt chc
nng chnh v phi c thc hin ng theo mt khung thi gian qui nh. Thng
thng mt chc nng ca h thng phi c thc hin ng theo mt khung thi
gian qui nh. Thng thng mt chc nng ca h thng phi c thc hin v hon
thnh theo mt yu cu thi gian dnh trc m bo thng tin cp nht kp thi
cho phn x l ca cc chc nng khc v c th nh hng n s hot ng ng v
chnh xc ca ton h thng. Ty thuc vo tng bi ton v yu cu ca h thng m
yu cu v kh nng thi gian thc cng rt khc nhau cng lm tng ln tnh chuyn
mn ha ca cc h thng thit b nhng m cc thit b a nng khng th cnh tranh
c.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
1.2.2 Xu th pht trin v s tng trng ca h nhng
V s pht trin h nhng l s kt hp nhun nhuyn gia phn cng v phn
mm cng ngh gng lin vi n cng chnh l cng ngh kt hp vi cc gii php
cho phn cng v mm. V tnh chuyn bit ca cc thit b /h nhng nh gii
thiu nn cc nn phn cng cng c ch to u tin p ng cho chc nng hay
nhim v c th ca yu cu thit k a ra.
Lp h nhng u tin pht trin theo tiu ch v kch thc nh gn, tiu th
nng lng t, gi thnh thp. Cc chip x l nhng cho lp h thng ng dng
thng yu cu v kh nng tnh ton t hoc va phi nn hu ht c xy dng trn
c s ng b x l 8 bit- 16 bit hoc cng lm l 32 bit v khng h tr du phy
ng do s hn ch v dung lng v kh nng tnh ton.
Lp h nhng u tin thc thi cc kh nng x l tnh ton vi tc cc
nhanh. Cc chip x l nhng cho cc h thng cng c h tr.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
CHNG 2
CU TRC PHN CNG H NHNG

2.1 Cc thnh phn kin trc c bn
2.1.1 n v x l trung tm
CPU (central processing unit) ng vai tr nh b no chu trch nhim thc thi
chc nng ny l n v tnh v thc hin cc lnh. Phn chnh ca CPU m nhim
chc nng ny l n v logic ton hc (ALU arthimeic logic unit). Ngoi ra h tr
cho hot ng ca ALU cn c thm mt s cc thnh phn khc nh b gii m
decoder, b tun t sequencer v thanh ghi.
- Thanh ghi con tr v ngn xp - Stack pointer
Thanh ghi ny lu tr a ch tip theo ca ngn xp. Theo nguyn l gi tr ca
a ch cha trong thanh gh con tr ngn xp s gim nu d liu c lu thm vo
ngn xp v s tng khi d liu c ly ra khi ngn xp.
- Thanh ghi ch s - Index register
Thanh ghi ch s c s dng lu a ch khi mode a ch c s dng .
N cn c bit ti vi tn gi l thanh ghi con tr hay thanh ghi la chn tp
Microchip.
- Thanh ghi a ch lnh / b m chng trnh - Program Counter
Mt trong nhng thanh ghi quan trng nht CPU l thanh ghi b m chng
trnh. Thanh ghi b m chng trnh s tng ln mt. Chng trnh s kt thc khi
thanh ghi PC c gi tr bng a ch cui cng ca chng trnh nm trong b nh
chng trnh.
- Thanh ghi tch ly - Accumulator
Thanh ghi tch ly l mt thanh ghi giao tip trc tip vi ALU c s dng
lu gi cc ton t hoc kt qu ca mt php ton trong qu trnh hot ng ca
ALU.
2.1.2 Xung nhp v trng thi tn hiu
Trong VXL ni chung hot ng ca h thng c thc hin ng b hoc d
b theo cc xung nhp chun. Cc nhp c ly trc tip hoc gin tip t mt
ngun xung chun thng l cc mch to xung hoc dao ng thch anh. m t
hot ng ca h thng, cc tn hiu d liu v iu khin thng c m t trng
thi theo gin thi gian v mc tn hiu.
Mc ch ca vic m t trng thi tn hiu theo gin thi gian v mc tn
hiu l phn tch v xc nh chui s kin hot ng chi tit rong mi chu k bus.
Nh vic m t ny chng ta c th xem xt n kh nng p ng thi gian ca cc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
s kin thc thi trong h thng v thi gian cn thit thc thi hot ng tun t
cng nh l kh nng tng thch khi s s phi hp gia c thit b ghp ni hay m
rng trong h thng. Thng thng thng tin v cc nhp thi gian hot ng cng
nhu c tnh k thut chi tit c cung cp hoc qui inh bi cc nh ch tao.
Mt s c trng v thi gian ca cc trng thi hot ng c bn ca cc tn hiu h
thng gm c nh sau:
+ Thi gian tng hoc gim
+ Thi gian tr lan truyn tn hiu
+ Thi gian thit lp
+ Thi gian gi
+ Tr cm hot ng v trng thi treo Tri-state
+ rng xung
+ Tn s nhp hot ng
- Thi gian tng hoc gim
Thi gian tng c nh ngha l khong thi gian tn hiu tng t 20% n
80% mc tn hiu cn thit. Thi gian gim l khong thi gian tn hiu gim t
80% n 20% mc tn hiu cn thit.
- Thi gian tr lan truyn
L khon thi gian tnh t khi thay i tn hiu vo cho ti khi c s thay i
tn hiu u ra. c tnh ny thng do cu to v kh nng truyn dn tn hiu vt
l trong h thng tn hiu.
- Thi gian thit lp v lu gi
Khong thi gian cn thit tn hiu trch mu t ti mt trng thi n nh
trc khi xung nhp chun ng h thay c gi l thi gian xc lp. Thi gian lu
gi l khong thi gian cn thit duy tr tn hiu trch mu n nh sau khi xung
nhp chun ng h thay i. Thc cht l khong thi gian thit lp v thi gian lu
gi l cn thit m bo tn hiu c ghi nhn chnh xc v n nh trong qu trnh
hot ng v chuyn mc trng thi.
Trong trng hp hot ng chuyn trng thi tn hiu khng ng b v khng
m bo c thi gian thit lp v lu gi s c th dn n s mt n nh hay
khng xc nh mc tn hiu trong h thng. Hin tng ny c bit ti vi tn gi
l metastability.
2.1.3 Bus a ch v d liu iu khin
Bus a ch l cc ng dn tn hiu logic mt chiu truyn a ch tham
chiu ti cc khu vc b nh v ch ra d liu c lu gi u trong khng gian b
nh. Trong qu trnh hot ng CPU s iu khin bus a ch truyn d liu gia
cc khu vc b nh v CPU . Cc a ch thng thng tham chiu ti cc khu vc b
nh hoc cc khu vc vo/ra hoc ngoi vi. D liu c lu trong cc khu vc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
thng l 8 bit, 16 bit, hay 32 bit ty thuc vo cu trc tng loi vi x l/vi iu
khin. Hu ht cc vi iu khin thng nh a ch d liu c rng l 16,20,24
hoc 32 bit. Nu nh a ch theo byte th mt vi x l 16 bit c th nh a ch ch
bt u t a ch 0 v tng dn n 2N-1. Hin nay cc vi x l v vi iu khin ni
chung ch yu vn s dng ph bin cc bus d liu c rng. Nu nh a ch theo
byte th mt vi x l 16 bit c th a ch c 2
16
khu vc b nh tc l 65536 = 64
Kbyte. Tuy nhin mt s khu vc b nh m CPU khng th truy nhp trc tip ti tc
l phi l phi s dng nhiu nhp bus truy cp, thng thng phi kt hp vi iu
khin phn mm. K thut ny ch yu c s dng m rng b nh v thng
c bit ti khi nim nh a ch trang nh khi nhu cu nh a ch khu vc nh
vt qu phm vi c th nh a ch truy nhp trc tip.
V d: CPU c 24 bit a ch s cho php nh a ch trc tip cho 2
24
byte(16
Mbyte) nh. CPU80386 v cc loi vi x l mnh hn c khng gian a ch 32 bit s
c th nh c ti 2
32
4 GB a ch trc tip.
Bus d liu
Bus d liu l cc knh truyn ti thng tin theo 2 chiu gia CPU. Tc
ng truyn hay trao i d liu thng c d tnh theo n v byte/s. S lng
ng truyn bit d liu s cho php xc nh c s lng bit c th lu tr trong
mi khu vc tham chiu trc tip. Nu mt bus d liu c kh nng thc hin mt ln
truyn trong 1 ms, th bus d liu 8 bit s c bng thng l 1Mb/s, bus 16 bit s c
bng thng l 2 mb/s v bus 32 bit s c bng thng l 4 Mb/s. Trong trng hp bus
d liu 8 bit vi chu k bus l T = 1 ms tc l s truyn c 1b/1 chu k th s truyn
c 1 Mb trong 1s hay 2 Mb trong 2s.
Bus iu khin
Bus iu khin phc v truyn ti cc thng tin d liu iu khin hot ng
ca h thng. Thng thng cc d liu iu khin bao gm c tn hiu chu k
ng b cc nhp chuyn ng v hot ng ca h thng. Thng thng cc d liu
iu khin bao gm cc tn hiu chu k ng b cc nhp chuyn ng v hot
ng ca h thng. Bus iu khin thng c iu khin bi CPU ng b ha
nhp hot ng v d liu trao i trn cc bus. Trong trng hp vi x l s dng dn
knh bus d liu v bus a ch tc l mt phn hoc ton b bus d liu s c s
dng chung chia x vi bus a ch th cn mt tn hiu iu khin phn nhp truy
nhp cho php cht lu tr thng tin a ch mi khi bt u mt chu k truyn. Mt v
d v cc chu k bus v s ng b ca chng trong hot ng ca h thng bus a
ch v d liu dn knh. y l hot ng in hnh trong h vi iu khin 8051 v
nhiu loi tng t.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
2.1.4 B nh v kin trc b nh
Kin trc b nh chia lm 2 loi chnh v c p dng rng ri trong hu ht
cc chip vi x l nhng hin nay theo Von Newman v Havard. Trong kin trc Von
Newmann khng phn bit vng cha d liu v m chng trnh. C phng trnh v
d liu u c truy nhp theo cng mt ng. iu ny cho php a d liu vo
vng m chng trnh ROM, v cng c th lu m chng trnh vo vng d liu
RAM v thc hin t .
Kin trc Havard tch /phn bit vng lu m chng trnh v d liu. M
chng trnh ch c th c lu v thc hin trong vng cha ROM v d liu cng
ch c th lu v trao i trong vng RAM. Hu ht cc vi x l nhng ngy nay s
dng kin trc b nh Havard hoc kin trc Havard m rng tc l b nh chng
trnh v d liu tch bit nhng vn cho php kh nng hn ch ly d liu ra t
vng m chng trnh. Trong kin trc b nh Havard m rng tc l b nh chng
trnh v d liu tch bit nhng vn cho php kh nng hn ch ly d liu ra t
vng m chng trnh. Trong kin trc b nh Havard m rng thng s dng mt
s lng nh cc con tr ly d liu t vng m chng trnh theo cch nhng vo
trong cc lnh tc thi. Mt s chip vi iu khin nhng tiu biu hin nay s dng
cu trc Havard l 8031, PIC, Atmel AVR90S. Nu s dng chip 8031 chng ta s
nhn thy iu ny thng qua vic truy nhp ly d liu ra t vng d liu RAM hoc
t m vng chng trnh. Chng ta c mt vi con tr c s dng ly d liu ra
t b nh d liu ra t b nh d liu RAM, nhng ch c duy nht 1 con tr DPTR c
th c s dng ly d liu ra t vng m chng trnh.
u im ni bt ca cu trc b nh Havard so vi kin trc Von newman l c
2 knh tch bit truy nhp va vng b nh m chng trnh v d liu nh vy m
m chng trnh v d liu c th c truy nhp ng thi v lam tng tc lung
trao i vi b vxl.
- B nh chng trnh PROM programme read only memory
- Vng lu tr m chng trnh. C ba loi b nh PROM thng thng c
s dng cho h nhng v s c gii thiu ln lt sau y.
- EPROM
Bao gm mt mng cc trnsistor kh trnh. M chng trnh s c ghi trc tip v
vxl c th c ra thc hin. EPROM c th xa c bng tia cc tm v c th
c lp trnh li.
B nh FLASH
Cng ging nh EPROM c cu to bi mt mng transistor kh trnh nhng
c th xa c bng in v chnh v vy c th np li chng trnh m khng cn
tch ra khi nn phn cng vxl. u im ca b nh flash l c th lp trnh trc tip
trn mch cng m n ang thc thi trn .
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
B nh d liu RAM
Vng lu hoc trao i d liu trung gian trong qu trnh thc hin chng trnh
C 2 loi RAM l SRAM v DRAM.

Hnh 2-1: M t trng thi tn hiu l gic tng v gim

Hnh 2-2: Cu trc mt phn t nh DRAM

Hnh 2-3: Nguyn l ghp ni (m rng) RAM vi VXL
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
2.1.5 Khng gian v phn vng a ch
2.1.6 Ngoi vi
B nh thi gian/B m

Hnh 2-4: B nh thi/ B m 8 bit ca AVR
Hu ht cc chp vi iu khin ngy nay u c t nht mt b nh thi gian/b
m c th cu hnh hot ng linh hot theo cc mode phc v nhiu mc ch trong
cc ng dng x l, iu khin. Cc b nh thi gian cho php to ra cc chui xung
v ngt thi gian hoc m theo cc khong thi gian c th lp trnh. Chng thng
c ng dng ph bin trong cc nhim v m xung, o khong thi gian cc s
kin, hoc nh chu k thi gian thc thi cc tc v. Mt trong nhng ng dng quan
trng ca b nh thi gian l to nhp t b to xung thch anh cho b truyn thng d
b a nng hot ng. Thc cht l ng dng thc hin php chia tn s. t
c chnh xc, tn s thch anh thng c chn sao cho cc php chia s
nguyn c thc hin chnh xc m bo cho tc truyn thng d liu c to ra
chnh xc. Chnh v vy h vi iu khin 80C51 thng hay s dng thch anh c tn
s dao ng l 11.059 thay v 12MHz to ra nhp hot ng truyn thng tc
chun 9600.
B iu khin ngt
Ngt l mt s kin xy ra lm dng hot ng chng trnh hin ti phc v
thc thi mt tc v hay mt chng trnh khc. C ch ngt gip CPU lm tng tc
p ng phc v cc s kin trong chng trnh hot ng ca VXL/VK. Cc VK
khc nhau s nh ngha cc ngun to ngt khc nhau nhng u c chung mt c ch
hot ng v d nh ngt truyn thng ni tip, ngt b nh thi gian, ngt cng, ngt
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
ngoi. Khi mt s kin yu cu ngt xut hin, nu c chp nhn CPU s lu ct
trng thi hot ng cho chng trnh hin ti ang thc hin v d ni dung b m
chng trnh (con tr lnh) cc ni dung thanh ghi lu d liu iu kin chng trnh
ni chung thc thi chng trnh phc v tc v cho s kin ngt. Thc cht qu
trnh ngt l CPU nhn dng tn hiu ngt, nu chp nhn s c con tr lnh chng
trnh tr ti vng m cha chng trnh phc v tc v ngt. V vy mi mt ngt u
gn vi mt vector ngt nh mt con tr lu thng tin a ch ca vng b nh cha
m chng trinhg phc v tc v ca ngt. CPU s thc hin chng trnh phc v tc
v ngt n khi no gp lnh quay tr v chng trnh trc thi im s kin ngt
xy ra. C th phn chia 2 loi ngun ngt: Ngt cng v Ngt mm.
Ngt mm
Ngt mm thc cht thc hin mt li gi hm c bit m c kch hot bi
cc ngun ngt l cc s kin xut hin t bn trong chng trnh v ngoi vi tch hp
trn Chp v d nh ngt thi gian, ngt chuyn i A/D,C ch ngt ny cn c
hiu l loi thc hin ng b vi chng trnh v n c kch hot v thc thi ti cc
thi im xc nh trong chng trnh. Hm c gi s thc thi chc nng tng ng
vi yu cu ngt. Cc hm thng c tr bi mt vector ngt m c nh
ngha v gn c nh bi nh sn xut Chip. V d nh h iu hnh ca PC s dng
ngt s 21
hex
gn cho ngt truy nhp c d liu t a cng v xut d liu ra my
in.
Ngt cng
Ngt cng c th c xem nh l mt li gi hm t bit trong ngun kch
hot l mt s kin n t bn ngoi chng trnh thng qua mt cu trc phn cng
(thng c kt ni vi th gii bn ngoi qua cc chn ngt). Ngt cng thng
c hiu hot ng theo c ch d b v cc s kin ngt kch hot t cc tn hiu
ngoi vi bn ngoi v tng i c lp vi CPU, thng l khng xc nh c thi
im kch hot. Khi cc ngt cng c kch hot CPU s nhn dng v thc hin li
gi hm thc thi chc nng phc v s kin ngt tng ng.
Trong cc c ch ngt khong thi gian t khi xut hin s kin ngt (c yu
cu phc v ngt) ti khi dch v ngt c thc thi l xc nh v ty thuc vo cng
ngh phn cng x l ca Chip.
B nh thi Watchdog Timer
Thng thng khi c mt s c xy ra lm h thng b treo hoc chy qun,
CPU s khng th tip tc thc hin ng chc nng. c bit khi h thng phi lm
vic ch vn hnh t ng v khng c s can thip trc thip thng xuyn bi
ngi vn hnh. thc hin c ch t gim st v pht hin s c phn mm, mt s
VXL/VK c thm mt b nh thi ch canh. Bn cht l mt b nh thi c
bit nh ngha mt khung thi gian hot ng bnh thng ca h thng. Nu c s
c phn mm xy ra s lm h thng b treo khi b nh thi Watchdog timer s
pht hin v gip h thng thot khi trng thi bng cch thc hin khi to li
chng trnh. Chng trnh hot ng khi c b chng trnh phi m bo reset n
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
trc khi khung thi gian b vi phm. Khung thi gian ny c nh ngha ph thuc
vo s nh gi ca ngi thc hin phn mm, thit lp khong thi gian m bo
chc chn h thng thc hin bnh thng khng c s c phn mm. C mt s c
ch thc hin ci t b nh thi Watchdog gim st hot ng ca h thng nh
sau:

Hnh 2-5: S nguyn l hot ng ca b nh thi watchdog
B iu khin truy nhp b nh trc tip DMA
DMA (Direct Memory Access) l c ch hot ng cho php hai hay nhiu vi
x l hoc ngoi vi chia s bus chung. Thit b no ang c quyn iu khin bus s c
th ton quyn truy nhp v trao i d liu trc tip vi cc b nh nh h thng c
mt vi x l. ng dng ph bin nht ca DMA l chia s b nh chung gia hai b vi
x l hoc cc ngoi vi truyn d liu trc tip gia thit b ngoi vi vo/ra v b
nh d liu ca VXL.
Truy nhp b nh trc tip c s dng p ng nhu cu trao i d liu
vo ra tc cao gia ngoi vi vi b nh. Thng thng cc ngoi vi kt ni vi h
thng phi chia s bus d liu v c iu khin bi CPU trong qu trnh trao i d
liu. iu ny lm hn ch tc trao i, tng cng tc v loi b s can
thip ca CPU, c bit trong trng hp cn truyn mt lng d liu ln. Th tc
c bt u bng vic yu cu thc hin DMA vi CPU. Sau khi x l, nu c
chp nhn CPU s trao quyn iu khin bus cho ngoi vi v thc hin qu trnh trao
i d liu. Sau khi thc hin xong CPU s nhn c thng bo v nhn li quyn
iu khin bus. Trong c ch DMA, c 2 cch truyn d liu: Kiu DMA chu k
n, v kiu DMA chu k nhm (burst).
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

Hnh 2-6: Nguyn l hot ng ca b nh thi watchdog timer
DMA chu k n v nhm
Trong kiu hot ng DMA chu k nhm, ngoi vi s nhn c quyn iu
khin v truyn khi d liu ri tr li quyn iu khin cho CPU. Trong c ch DMA
chu k n ngoi vi sau khi nhn c quyn iu khin bus ch truyn mt t d liu
ri tr li ngay quyn kim sot b nh v bus d liu cho CPU. Trong c ch thc
hin DMA cn c mt bc x l quyt nh xem thit b no s c nhn quyn
iu khin trong trng hp c nhiu hn mt thit b c nhu cu s dng DMA.
Thng thng kiu DMA chu k nhm cn t d liu thng tin iu khin (overhead)
nn c kh nng trao i vi tc cao nhng li chim nhiu thi gian truy nhp bus
do truyn c khi d liu ln. iu ny c th nh hng ti hot ng ca c h
thng do trong sut qu trnh thc hin DMA nhm, CPU s b kha quyn truy nhp
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
b nh v khng th x l cc nhim v khc ca h thng m c nhu cu b nh, v
d nh cc dch v ngt, hoc cc tc v thi gian thc

Hnh 2 7 : Nhp hot ng DMA
Chu k ri ( Cycle Stealing)
Trong kiu ny DMA s c thc hin trong nhng thi im chu k bus m
CPU khng s dng bus do khng cn thc hin th tc x l cp pht quyn truy
nhp v thc hin DMA.
Hu ht cc vi x l hin i u s dng gn nh 100% dung lng b nh v
bng thng ca bus nn s khng c nhiu thi gian dnh cho DMA thc hin. tit
kim v ti u ti nguyn th cn c mt trng ti phn x v d liu s c truyn i
xp chng theo thi gian. Ni chung kiu DMA dng burst hiu qu nht khi khong
thi gian cn thc hin DMA tng i nh. Trong khong thi gian thc hin DMA,
ton b bng thng ca bus s c s dng ti a v ton b khi d liu s c
truyn i trong mt khong thi gian rt ngn. Nhng nhc im ca n l nu d
liu cn truyn ln v cn mt khong thi gian di th s dn n vic block CPU v
c th b qua vic x l cc s kin v tc v khc. i vi DMA chu k n th yu
cu truy nhp b nh, truyn mt t d liu v gii phng bus. C ch ny cho php
thc hin truyn interleave v c bit ti vi tn gi interleaved DMA. Kiu truyn
DMA chu k n ph hp truyn d liu trong mt khong thi gian di m c
thi gian yu cu truy nhp v gii phng bus cho mi ln truy nhp mt t d liu.
Chnh v vy s gim bng thng truy nhp bus do phi mt nhiu thi gian yu cu
truy nhp v gii phng bus. Trong trng hp ny CPU v cc thit b khc vn c
th chia s v truyn d liu nhng trong mt di bng thng hp. Trong nhiu h
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
thng bus thc hin c ch x l v gii quyt yu cu truy nhp (Trng ti) thng qua
d liu truyn v vy cng khng nh hng nhiu ti tc truyn DMA.
DMA c yu cu khi kh nng iu khin ca CPU truyn d liu thc
hin qu chm. DMA cng thc s c ngha khi CPU ang phi thc hin cc tc v
khc m khng cn nhu cu truy nhp bus.
IC chc nng chuyn dng
DAC/ADC

Hnh 2 8: S nguyn l mch chuyn i DAC

Hnh 2 9: S nguyn l mch chuyn i ADC
V d ADC 754A
c im k thut:
Ch to theo cng ngh CMOS.
12 bit vi giao din tng thch vi cc loi VXL/VK 8, 12 v 16 bit. C th
lp trnh hot ng chuyn i 8 bit hoc 12 bit.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Tn hiu d liu ra tng thch vi chun TTL v ghp ni thng qua loi cng
logic 3 trng thi.
Di gi tr in p u vo c th la chn nh cu hnh gi tr in tr ni u
vo nhn cc di tn hiu ( 10 0 )V , ( 20 0 )V, ( 5 5 + )V, ( 10 10 )V.
C thm kh nng cung cp ngun tham chiu Vref = +10V.
Ngun cung cp c th l +5 V, 12 V, hoc 15 V.
Thi gian chuyn i cc i l 25 s vi thi gian truy nhp bus l 150 ns.

Hnh 2 10: S nguyn l cu trc ADC754A

Hnh 2 11: S b tr chn ca chip ADC574A
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Nguyn l iu khin:
ADC574 c iu khin bi cc chn tn hiu nh m t trong bng sau:
Bng 1: Tn hiu iu khin ADC574A
K hiu nh ngha Chc nng
CE (Pin 6)



CS (Pin 3)


C R/ (Pin 5)



AO (Pin 4)



8 / 12 (Pin 2)
Chip Enable
(active high)


Chip Select
(active low)


Read/Convert
(1 = read)
(0=convert)


Byte Address
Short Cycle


Data Mode
Select
(1=12 bits)
(0=8 bits)
Must be high (1) to either initiate a conversion or
read output data 01 edge may be used to initiate a
conversion.

Must be low (0) to either initiate a conversion or
read output data 10 edge may be used to initiate a
conversion.

Must be low (0) to initiate either 8- or 12- bit
conversion. 10 edge may be used to initiate a
conversion.
Must be high (1) to read output data 01 edge may
be used to initiate a read operation.

In the start-convert mode. AO select 8-bit (AO=
1) or 12-bit (AO = 0) conversion mode.When
reading output data in two 8- bit bytes. AO= 0
accesses 8 MSBs (high byte) and AO= 1 accesses
4 LSBs and trailing 0s (low byte).

When reading output data, 12/8 = 1 enables all 12
output bits simultaneously. 12/8= 0 will enable the
MSBs or LSBs as detemined by the Aoline.

(1) Thit lp ch hot ng: Mode chuyn i 8-bit hay 12 bit c thit lp
bi tn hiu AO. Tn hiu ny phi c cht trc khi nhn c tn hiu lnh
bt u thc hin chuyn i.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
(2) Kch hot qu trnh chuyn i: B chuyn i thc hin chuyn i khi nhn
c tn hiu mnh lnh tch cc t chn tn hiu CE/CS, hoc R/C vi iu
kin cc tn hiu iu khin khc c xc lp.
(3) Trng thi chuyn i: Tn hiu u ra STATUS bo trng thi chuyn i hin
hnh ca ADC; thit lp mc cao nu ang thc hin chuyn i v mc
thp nu hon thnh. Trong qu trnh chuyn i cc tn hiu iu khin b
kha v d liu khng th c c v cc ng tn hiu ra c chuyn sang
trng thi cao tr.
(4) c d liu ra: Qu trnh c d liu ra c th c thc thi nu cc tn hiu
iu khin xc lp trng thi cho php c v tn hiu STATUS trng thi
thp. Ty thuc vo mode chuyn i c thit lp v nh dng d liu u ra
bi t hp trng 8 / 12 v AO.
Cng song song kh trnh 82C55A
82C55A l mt giao din ngoi vi cng song song kh trnh c ch to theo
cng ngh CMOS. N l mt thit b ngoi vi vo ra kh trnh ra mc ch v c th
c s dng vi nhiu loi VXL/VK khc nhau. 82C55A c 24 chn vo ra on
Chip c chia ra thnh 2 nhm, mi nhm 12 chn v c th c s dng theo 3 ch
hot ng khc nhau.

Hnh 2 12: Gin khi chc nng ca chip 82C55A.
Chc nng v ngha ca cc chn on Chip ca 82C55A c m t trong
Bng 2: Chc nng ca cc chn on Chip ca 82C55A.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
Bng 2: Chc nng ca cc chn on Chip ca 82C55A
K hiu Kiu M t chc nng
Vcc
Vcc: The +5V power supply pin. A 0.1 F capacitor between
Vcc and GND is recommended for decoupling.
GND GROUND
D0 D7 I/O
DATA BUS: The Data Bus lines are bidirectional three-state
pins connected to the system data bus.
RESET I
RESET: A high on this input clear the control register and all
ports (A,B,C) are set to the input mode with the Bus Hold
circuitry turned on.
CS I
CHIP SELECT: Chip select is an active low input used to
enable the 82C55A onto the Data Bus for CPU communications.
RD I
READ: Read is an active low input control signal used by the
CPU to read status information or data via the data bus.
WR I
WRITE: Write is an active low input control signal used by the
CPU to load control words and data into the 82C55A.
A0 A1 I
ADDRESS: These input signals, in conjunction with the RD
and WR inputs control the selectionof one of the three ports or
the control word register. A0 and A1 are normally connected to
the least significant bits of the Address Bus A0, A1.
PA0 PA7 I/O
PORT A: 8-bit input and output port. Both bus hold high and
bus hold low circuitry are present on this port.
PB0-PB7 I/O
PORT B:8-bit input and output port. Bus hold high circuitry is
present on this port.
PC0 PC7 I/O
PORT C:8-bit input and output port. Bus hold circuitry is
present on this port.
82C55A cung cp 3 ch hot ng chnh v c th lp trnh la chn
Mode 0: Hot ng vo ra c bn.
Mode 1: Hot ng vo ra nm bt (strobed).
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
Mode 2: Hot ng Bus 2 chiu
Vic la chn ch hot ng c thc hin thng qua thanh ghi t iu khin.

Hnh 2-13: Thanh ghi t iu khin chn ch hot ng cho 82C55A
Khi u vo reset c iu khin mc cao th tt c cc cng s c thit
lp hot ng ch cng vo vi 24 ng tn hiu v duy tr mc logic 1. Sau
khi tn hiu iu khin reset mc tch cc b loi b th 82C55A c th duy tr ch
hot ng m khng cn thm bt k vic khi to no na. iu ny s gip loi b
c cc in tr treo cao hoc treo thp trong cc thit k cho mch CMOS. Khi kch
hot ch thit lp th thanh ghi t iu khin s cha gi tr 9Bh. Trong qu trnh
thc hin chng trnh vn c th thay i la chn ch hot ng khc nhau, iu
ny cho php 82C55 hot ng mt cch a dng p ng cho nhiu bi ton ng dng
khc nhau. Trong qu trnh thanh ghi t iu khin ang c vit th tt c cc cng
c thit lp hot ng ch cng ra s c khi to bng zero.
Mode 0 (Vo ra c bn): Cu hnh ch hot ng ny cung cp cc hot
ng vo ra c bn cho c 3 cng A, B v C. D liu c trao i trc tip v khng
cn phi c c ch bt tay. Ch hot ng ny h tr cc chc nng c th nh sau:
Hai cng 8-bit v hai cng 4 bit.
Bt k cng no cng c th l cng vo hoc cng ra.
Cc ng d liu tn hiu ra c cht.
Cc ng d liu tn hiu vo c cht.
C th cu hnh 16 kiu hot ng vo ra khc nhau.
Mode 1 (Vo ra c bt tay): Ch hot ng ny cung cp kh nng truyn d
liu ti hoc i t mt cng c th cng vi cc tn hiu bt tay. Trong ch ny
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
cng A, B c s dng truyn d liu v cng C hot ng nh cng iu khin
c ch ng b bt tay. Ch hot ng ny cung cp cc chc nng chnh sau:
Hai nhm cng (Nhm A v nhm B). Mi nhm bao gm mt cng 8-bit v mt
cng d liu iu khin 4-bit.
Cng d liu 8 bit c th hot ng nh hoc l cng vo, hoc l cng ra v c
2 chiu d liu u c cht.
Cng d liu 4- bit c th c s dng iu khin v trng thi ca cng 8-
bit.
Mode 2 (Bus vo ra 2 chiu c bt tay): Ch hot ng ny cung cp kh
nng truyn thng vi cc ngoi vi hoc cc bus d liu 8-bit cho vic truyn nhn d
liu. Cc tn hiu bt tay c cung cp duy tr dng tn hiu bus tng t nh ch
1. Cc c ch to ngt cng c th c thc hin ch ny. Mt s cc chc
nng chnh h tr trong ch ny bao gm:
Ch s dng nhm A.
Mt cng bus 2 chiu 8-bit (Cng A) v mt cng iu khin 5-bit (Cng C).
C hai chiu d liu vo v ra u c cht.
Cng iu khin 5- bit (Cng C) c s dng trong mc ch iu khin v
trng thi cho cng A trao i d liu 2 chiu 8-bit.
B nh thi / B m C8254

Hnh 2-14: S cu trc chc nng 8254
y l b m tc cao cung cp 3 b nh thi 16 bit c lp v c th
c cu hnh hot ng nhiu ch hot ng. Mi b m c cc knh d liu
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
v iu khin ring bit. H tr 2 kiu m ha m nh phn (t 0 65535) hoc BCD
(binary coded decimal) (0 9999). C 4 thanh ghi thch hp On-Chip lu gi tr
m v cu hnh hot ng (t iu khin). Tn s hot ng ca b m c th lm
vic vi xung nhp tn s 10MHz v h tr 6 ch hot ng v c th cu hnh
ring l.
2.1.7. Giao din
Giao din song song 8 bit/16 bit
Cc cng song song l mt dng giao din vo ra n gin v ph bin nht
kt ni thng tin vi ngoi vi. C nhiu loi cu trc giao din hp l in t t dng
cng vo ra n gin cc Collector TTL h trong cc ng dng cng my in n cc
loi cu trc giao din cng tc cao nh cc chun Bus IEEE-488 hay SCSI. Hu
ht cc chip iu khin nhng c mt vi cng vo ra song song kh trnh (c th cu
hnh). Cc giao din ph hp vi cc cng vo ra n gin nh cc kha chuyn.
Chng cng ph hp trong cc bi ton phc v giao din kt ni iu khin v gim
st theo cc giao din nh kiu rle bn dn.

Hnh 2 15: Cu trc nguyn l in hnh ca mt cng I/O logic
Giao din ni tip
USART
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2

Hnh 2 16: Cu trc n gin ha ca USART

Hnh 2 17: Mode hot ng truyn thng ng b

Hnh 2 18: Mode hot ng truyn thng d b

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
I
2
C ( Inter IC)
Giao thc u tin truyn thng ni tip c pht trin bi Philips
Semiconductor v c gi l bus I
2
C.V ngun gc n c thit k l iu khin
lin thng IC (Inter IC) nn n c t tn l I
2
C. Tt c cc chip c tch hp v
tng thch vi I
2
C u c thm mt giao din tch hp trn Chip truyn thng trc
tip vi cc thit b tng thch I
2
C khc. Vic truyn d liu ni tip theo 2 hng
8bit c thc thi theo 3 ch sau:
Chun (Standard) 100 Kbits/sec.
Nhanh (Fast) 400 Kbits/sec.
Tc cao (High- Speed) 3.4 Mbits/sec.
ng bus thc hin truyn thng ni tip I
2
C gm hai ng l ng truyn
d liu ni tip SDA v ng truyn nhp xung ng h ni tip SCL. V c ch hot
ng l ng b nn n cn c mt nhp xung tn hiu ng b. Cc thit b h tr I
2
C
u c mt a ch nh ngha trc, trong mt s bit a ch l thp c th cu hnh.
n v hoc thit b khi to qu trnh truyn thng l n v Ch v cng l n v
to xung nhp ng b, iu khin cho php kt thc qu trnh truyn. Nu n v Ch
mun truyn thng vi cc n v khc n s gi km thng tin a ch m n mun
truyn trong d liu truyn. n v T u c gn v nh a ch thng qua n
v Ch c th thit lp truyn thng v trao i d liu. Bus d liu c thit k
cho php thc hin nhiu n v Ch v T trn cng bus.
Qu trnh truyn thng I
2
C c bt u bng tn hiu Start to ra bi n v
Ch. Sau n v Ch s truyn i d liu 7bit cha a ch ca n v T m n
mun truyn thng, theo th t l cc bit c trng s ln nht MSB s c truyn
trc. Bit th 8 tip theo s cha thng tin xc nh n v T s thc hin vai tr
nhn (0) hay gi (1) d liu. Tip theo s l mt bit ACK xc nhn bi n v nhn
nhn c mt byte trc hay khng. n v truyn (gi) s truyn i mt byte d
liu bt u bi MSD. Ti im cui ca byte truyn, n v nhn s to ra mt bit xc
nhn ACK mi. Khun mu 9 bit ny (gm 8 bit d liu v 1 bit xc nhn) s c lp
li nu cn truyn tip mt byte na. Khi n v Ch trao i xong d liu cn n s
quan st bit xc nhn ACK cui cng ri sau s to ra mt tn hiu dng STOP
kt thc qu trnh truyn thng.
I
2
C l mt giao din truyn thng c bit thch hp cho cc ng dng truyn
thng gia cc n v trn cng mt bo mch vi khong cch ngn v tc thp. V
d nh truyn thng gia CPU vi cc khi chc nng trn cng mt bo mch nh
EEPROM, cm bin, ng h to thi gian thcHu ht cc thit b h tr I
2
C hot
ng tc 400 Kbps, mt s cho php hot ng tc cao vi Mbps. I
2
C kh
n gin thc thi kt ni nhiu n v v n h tr c ch xc nh a ch.
SPI
SPI l mt giao din cng ni tip ng b ba dy cho php kt ni truyn
thng nhiu VK c pht trin bi Motorola. Trong cu hnh mng kt ni truyn
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
thng ny phi c mt VK gi vai tr l Ch (Master) v cc VK cn li c th
hoc l Ch hoc l T. SPI c 4 tc c th lp trnh, cc v pha nhp ng h
kh trnh v kt thc ngt truyn thng. Nhp ng h khng nm trong dng gi liu
v phi c cung cp nh mt tn hiu tch c lp. C 3 thanh ghi SPSR, SPCR
vSPDR cho php thc hin cc chc nng iu khin, trng thi v lu tr. C 4 chn
c bn cn thit thc thi chun giao din truyn thng ny.
D liu ra MOSI ( Master Output Slave Input)
D liu vo MISO (Master Input Slave Output)
Nhp xung chun SCLK (Serial Clock)
La chn thnh phn t SS (Slave Select)

Hnh 2 19: Kt ni nguyn l truyn thng SPI gia mt Master v mt Slave
Hnh 2 19 ch ra nguyn l kt ni gia mt n v Ch v mt n v T
trong truyn thng SPI. Trong tn hiu SCLK s c to ra bi n v Ch v l
tn hiu vo ca n v T. MOSI l ng truyn d liu ra t n v Ch ti n v
T v MISO l ng truyn d liu vo n v Ch n t n v T. n v T
c la chn khi n v Ch kch hot tn hiu SS.

Hnh 2 20: S kt ni truyn thng SPI ca mt n v Ch vi nhiu n v T
Nu h thng c nhiu n v T, n v Ch s phi to ra cc tn hiu tch
bit chn n v T. C ch c thc hin nh s kt ni nguyn l m t
nh trong hnh 2 - 20. n v Ch s to ra tn hiu chn n v T nh cc chn tn
hiu logic a chc nng. Cc tn hiu ny phi c iu khin v m bo n nh v
thi gian trnh trng hp tn hiu b thay i trong qu trnh ang truyn d liu
mt iu d nhn ra rng SPI khng h tr c ch xc nhn trong qu trnh thc hin
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
truyn thng. iu ny phc v vo giao thc nh ngha hoc phi thc hin b sung
thm mt s cc m rng ph bn ngoi.
Kh nng truyn thng ng thi 2 chiu vi tc ln n khong vi Mbit/s
v nguyn l kh n gin nn SPI hon ton ph hp thc hin truyn thng gia
cc thit b yu cu truyn thng tc chm, c bit hiu qu trong cc ng dng
mt n v Ch v mt n v T. Tuy nhin trong cc ng dng vi nhiu n v T
vic thc thi li kh phc tp v thiu c ch xc nh a ch, v s phc tp s tng
ln khi s n v T tng.
2.2. Mt s nn phn cng nhng thng dng
Trong phn ny gii thiu ngn gn cu trc nguyn l ca cc chip x l
nhng ng dng trong cc nn phn cng nhng hin nay.
S pht trin nhanh chng cc chng loi chip kh trnh vi mt tch hp cao
v ang c mt tc ng ng k n s thay i trong vic thit k cc nn phn
cng thit b x l v iu khin s trong thp k gn y. Mi chng loi u c
nhng c im v phm vi i tng ng dng v lun khng ngng pht trin
p ng mt cch tt nht cho cc yu cu cng ngh. Chng ang hng ti tp trung
cho mt th trng cng ngh tim nng rng ln, l cc thit b x l v iu khin
nhng. Trong bi vit ny tc gi gii thiu ngn gn v cc chng loi chip x l,
iu khin nhng in hnh ang tn ti v pht trin v mt s c im v hng
phm vi ng dng ca chng.
C th k ra hng lot cc chip kh trnh c th s dng cho cc bi ton thit
k h nhng nh cc h vi x l/ vi iu khin nhng (Microprocessor/
Microcontroller), Chip DSP (Digital Signal Processing), cc Chip kh trnh trng
(FPD - Field Programmable Device). Chng ta d b chong ngp nu bt u cng
vic thit k bng vic tm kim mt chip x l iu khin ph hp cho ng dng. V
vy cn phi c mt hiu bit v s phn bit v c im v ng dng ca chng khi
la chn v thit k. Cc thng tin lin quan nh nh sn xut cung cp Chip, cc kin
thc v cng c pht trin km theo Mt s chng loi Chip in hnh s c gii
thiu.
2.2.1. Chip vi x l/ vi iu khin nhng
y l mt chng loi rt in hnh v ang c s dng rt ph bin hin
nay. Chng c ra i v s dng theo s pht trin ca cc Chip x l ng dng cho
my tnh. V i tng ng dng l cc thit b nhng nn cu trc cng c thay i
theo p ng cc ng dng. Hin nay chng ta c th thy cc h vi x l iu
khin ca rt nhiu cc nh ch to, cung cp nh: Intel, Atmel, Motorola, Ifineon. V
cu trc, chng cng tng t nh cc Chip vi x l pht trin cho PC nhng mc
n gin hn nhiu v cng nguyn v ti nguyn. Ph bin vn l cc Chip c
rng bus d liu l 8 bit, 16 bit, 32bit. V bn cht cu trc, Chip vi iu khin v
Chip vi x l c tch hp thm cc ngoi vi. Cc ngoi vi thng l cc khi chc
nng ngoi vi thng dng nh b nh thi gian, b m, b chuyn i A/D, giao
din song song, ni tip Mc tch hp ngoi vi cng khc nhau ty thuc vo
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2
mc ch ng dng s c th tm c Chip ph hp. Thc t vi cc ng dng yu
cu tch hp cao th s s dng gii php tch hp trn Chip, nu khng th hu ht
cc Chip u cung cp gii php m rng ngoi vi p ng cho mt s lng ng
dng rng v mm do.

Hnh 2 21: Kin trc nguyn l ca VK vi cu trc Havard
V d v kin trc ca h VK AVR

Hnh 2 22: Kin trc ca h VK AVR
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


2

Hnh 2 23: S khi chc nng kin trc PIC16F873A
2.2.2. Chip DSP
DSP vn c bit ti nh mt loi vi iu khin c bit vi kh nng x l
nhanh phc v cc bi ton yu cu khi lng v tc x l bi ton ln. Vi u
im ni bt v rng bng thng ca bus v thanh ghi tch ly, cho php ALU x l
song song vi tc c v x l lnh nhanh hn cc loi vi iu khin thng thng.
Chip DSP cho php thc hin nhiu lnh trong mt nhp nh vo kin trc b nh
Havard.
Thng thng khi phi s dng DSP tc l p ng cc bi ton tnh ton
ln v tc cao v vy nh dng biu din ton hc s l mt yu t quan trng
phn loi v c quan tm. Hin nay ch yu chng vn c phn loi theo 2 kiu l
du phy ng v du phy tnh. y cng chnh l mt yu t quan trng phi quan
tm i vi ngi thit k la chn c mt DSP ph hp vi ng dng ca mnh.
Cc loi DSP du phy tnh thng l loi 16bit hoc 24 bit cn cc loi du phy
ng thng l 32bit. Mt v d in hnh v mt DSP 16bit du phy tnh l
TMS320C55x, lu cc s nguyn 16bit hoc cc s thc trong mt min gi tr c
nh. Tuy nhin cc gi tr v h s trung gian c th c lu gi vi chnh xc l
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
32 bit trong thanh ghi tch ly 40bit nhm gim thiu li tnh ton do php lm trn
trong qu trnh tnh ton. Thng thng cc loi DSP du phy tnh c gi thnh r
hn cc loi DSP du phy ng. V yu cu s lng chn On Chip t hn v cn s
dng lng Silicon t hn.

Hnh 2-24: Gin khi chc nng ca DSP TMS320C28xx
u im ni bt ca cc DSP du phy ng l c th x l v biu din s
trong di phm vi gi tr rng v ng. Do vn v chuyn i v hn ch v
phm vi biu din s khng phi quan tm nh i vi loi DSP du phy tnh. Mt
loi DSP 32bit du phy tnh in hnh l TMS320C67x c th x l v biu din s
gm 24 bit mantissa v 8 bit exponent. Phn mantissa biu din phn s l trong phm
vi -1.0 n +1.0 v phn exponent biu din v tr ca du phy nh phn v c th dch
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
chuyn sang tri hoc phi ty theo gi tr s m n biu din. iu ny tri ngc vi
cc thit k trn nn DSP du phy tnh, ngi pht trin chng trnh phi t quy
c, phi tnh ton v phn chia n nh thang biu din s v phi lun lu tm ti
kh nng trn s c th xy ra trong qu trnh x l tnh ton. Chnh iu ny gy ra
kh khn khng nh i vi ngi lp trnh. Ni chung pht trin chng trnh cho
DSP du phy ng thng n gin hn nhng gi thnh li cao hn nhiu v nng
lng tiu th thng thng cng ln hn.
V d chnh xc ca DSP du phy ng 32 bit l 2
-23
vi 24 bit biu din
phn mantissa. Vng ng l
38 38
10 4 . 3 10 18 . 1 s s

x
Nhng nh thit k h thng phi quyt nh vng v chnh xc cn
thit cho cc ng dng. Cc vi x l du phy ng thng c s dng cho cc
ng dng yu cu v chnh xc cao v gii biu din s ln ph hp vi h
thng c cu trc b nh ln. Hn na cc DSP du phy ng cho php pht
trin phn mm hiu qu v n gin hn bng cc trnh bin dch ngn ng bc
cao nh C do c th gim gi thnh v thi gian pht trin. Tuy nhin gi
thnh li cao nn cc DSP du phy ng ph hp vi cc ng dng kh c bit
v thng l vi s lng t.

2.2.3 PAL
Ngay khi ni n chng loi Chip kh trnh mng ta thng bit ti mt s tn
gi nh PAL, CPLD, FPGAMt cht lc s v s ra i v pht trin sau y s
gip chng ta hnh dung c c im v ngun gc ra i ca chng.
Lch s pht trin ca loi chip kh trnh mng PLA( Programmable Logic
Array) c bt ngun t nguyn l b nh chng trnh PROM (Programmable
Read-Only Memory). Trong cc u vo a ch ng vai tr nh cc ng vo
ca mch logic v cc ng d liu ra ng vai tr nh cc ng ra ca mch
logic.V PROM khng thc s ph hp cho mc ch thit k cc mch logic nn PLA
ra i vo u thp k 70. N rt ph hp thc hin mch logic c dng tng cc
tch ( v cu thnh bi cc phn t logic AND v OR). Nhng nhc im l chi ph
sn xut cao v tc hot ng thp. khc phc nhc im ny
PAL(Programmable Array Logic) c pht trin. N c cu thnh t cc phn
t AND kh trnh v phn t OR gn c nh v c cha c phn t flip-flop u ra
nn c kh nng thc thi cc mch logic tun t. hnh 2-26 m t cu trc chung ca
PAL.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3

Hnh 2-25: Cu trc PROM v PLA

Hnh 2-26: Cu trc chung ca PAL
T khi ra i v pht trin PAL tr thnh c s cho s ra i ca hng lot cc
chng loi chip kh trnh mng vi cu trc phc tp hn nh SPLD(Simple
Programmable Logic Device), CPLD(Com-plex Programmable Logic Device), v sau
ny l FDGA( Field Pro-grammable Gate Array). SPLD cng l tn gi cho nhm cc
chng loi Chip kiu tng t nh PAL,PLA. V mt cu trc th SPLD cho php tch
hp logic vi mt cao hn so vi PAL thng thng, nhng kch thc ca n s
tng ln rt nhanh nu tip tc m rng v tng mt tch hp s u vo. p
ng nhu cu m rng mt tch hp CPLD c pht trin. N l s tch hp ca
nhiu khi SPLD v cung cp thm kh nng kt ni kh trnh gia cc khi SPLD
n l vi nhau. Vi nguyn l cu trc ny CPLD c kh nng tch hp vi mt
cao tng ng vi 50 khi SPLD thng thng.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
Nu ch dng n y chng ta c th thy mt c im chung ca cc chng
loi chip kiu PLA hay CPLD u cho php thc hin cc mch logic trn c s t
hp logic ca cc u vo v ra bng cc phn t AND v OR. Vi nguyn l ny r
rng s gp kh khn khi thc thi cc ng dng i hi cc php ton logic phc tp
vi tc cao. p ng iu nay FPGA(Field Programmable Gate Array) ra
i. N l s cu thnh ca cc khi logic kh trnh cng vi cc knh kt ni lin
thng kh trnh gia cc khi vi nhau. Mt hnh nh tiu biu v cu trc nguyn
l ca FPGA c m t nh trong hnh 2-27: Cu trc nguyn l ca FPGA.

Hnh 2-27: Cu trc nguyn l ca FPGA
FPGA ang tr thnh mt s la chn thay th rt cnh tranh ca cc chip x
l nhng ASICs. N h tr cc u im v chc nng la chn ging nh ASICs
nhng cho php chnh sa v thit k li sau khi s dng v gi thnh pht trin thp
hn. FPGA cho php kh nng thit k linh hot v thch nghi d dng cho cc tin
ch thit b ti u, trong khi vn duy tr c khng gian kch thc phn cng v
nng lng tiu th ca h thng. iu ny khng d dng nhn c khi thit k da
trn nn cc Chip DSP.

Hnh 2-28: Cu trc CLB v LAB
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
FPGA thc s ph hp cho cc ng dng i hi lng tnh ton ln nh trong
x l tn hiu. FPGA c th c lp trnh hot ng ng thi vi mt s cc ng
d liu song song. Chng l cc ng d liu hot ng ca t hp nhiu cc chc
nng t n gin n phc tp nh b cng, b nhn, b m, b lu tr , b so snh,
b tnh tng quanNgy nay c th phn loi ra mt s kiu chng loi FPGA da
vo cu to ca chng.
FPGA cu to t SRAM
Vi loi ny cc mt kt ni kh trnh c thc hin bng cc phn t SRAM,
chnh v vy cho php thc hin lp trnh lp li nhiu ln. u im ni bt ca loi
ny l cc tng thit k mi c th c thc thi v th nghim nhanh chng. Hn
na SRAM cng ng l mt hng pht trin rt mnh hin nay trong nn cng
nghip sn xut b nh v cng u thc thi theo cng ngh CMOS rt ph hp vi
cng ngh ch to FPGA.
Tuy nhin mt c im c th xem nh l nhc im ca FPGA cu to t
cc phn t SRAM l chng phi cu hnh li mi khi ngun h thng c cung cp.
Cng vic ny thng c thc hin bi mt b nh ngoi chuyn dng hoc mt
b vi iu khin km theo mch. Chnh v vy cng lm gi thnh ca FPGA tng
thm.
FPGA cu to t cu ch (anti-fused)
Khng ging nh loi FPGA cu to t SRAM, FPGA vi cu t kiu cu ch
c lp trnh offline bng mt lp trnh chuyn dng. tng ch to loi FPGA ny
xut pht t nhu cu v mt thit b kh trnh c kh nng lu cu hnh sau khi c
s dng.. Tc l n khng phi lm cng vic cu hnh mi khi ngun h thng c
cung cp. Khi FPGA anti-fused c lp trnh th n khng th b thay i hay
c lp trnh li na. Chnh nh iu ny nn n khng cn bt k mt b nh ngoi
no lu tr cu hnh v c th tit kim, gim gi thnh ca thit b.
Mt u im ni bt ca FPGA anti-fused l kiu cu trc lin kt kh bn
vng vi cc loi nhiu x. c im ny kh quan trng khi thit b phi lm vic
trong mi trng tim nng nh qun s hoc tim nng v tr. V vy n trnh c
trng hp ri ro c th xy ra nu s dng cng ngh SRAM l hin tng lt trng
thi(flipped). Tuy nhin hin tng ny cng c th c khc phc bng c ch d
phng bc 3 nhng li lm tng thm chi ph ch to.
Mt u im ni bt ca loi FPGA anti-fused l kh nng bo v cng ngh.
Tc l d liu cu hnh lp trnh cho FPGA c th c bo v bi vic c bt hp
php hoc khng cho php c. Trong qu trnh x l hoc pht trin, ngi lp trnh
s s dng mt tp d liu cu hnh lp trnh v kim tra qu trnh np cu hnh cho
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
FPGA. Cng vic ny ch thc hin mt ln v s khng th thay i c na. Khi
thc hin xong n c th c thit lp thm mt thuc tnh l chng c trc tip t
FPGA d liu lin quan n cu hnh. Ngoi ra chng ta c th bit thm rng FPGA
anti-fuse thng c s dng t nng lng hn loi FPGA SRAM, kch thc cng
nh hn, v tc cng nhanh hn mt cht nh khong cch kt ni cng gia cc
phn t ngn hn.
Tuy nhin nhc im ln nht ca FPGA anti-fused l ch c th c lp
trnh v cu hnh mt ln. V vy n ch thc s ph hp khi thc thi hon chnh sn
phm cui cng v khng ph hp vi mc ch thit k pht trin.
FPGA cu to t EEPROM/FLASH
EPROM or FLASH based FPGAs cng c nguyn l cu to tng t nh
loi FPGA-SRAM. Cc phn t cu hnh ca n c kt ni da trn mt chui
thanh ghi dch di. Chng c th c cu hnh offline bng cc thit b lp trnh
chuyn dng. Cng c mt s c th lp trnh online nhng thi gian lp trnh cu hnh
s gp khong 3 ln thi gian thc thi vi nn FPGA-SRAM. Khi c cu hnh
lp trnh th chng c th c duy tr v khng b mt i nh nguyn l lu gi ca
EEPROM hoc FLASH. Loi FPGA- EEPROM/FLASH c cu to nh hn so vi
loi FPGA-SRAM v vy cng c th gim c thi gian lan truyn tn hiu kt ni
lin thng gia cc phn t logic.
bo v cng ngh khi FPGA c cu hnh v a ra s dng, ta c th
bo v bng c ch kha m mm( cu to khong 50 bit n vi trm bt). Mun c
c thng tin cu hnh trc tip t FPGA, ngi ta cn phi c m kha v cng
rt kh hoc khng th m c theo nguyn l th sai. V mun vy theo c tnh
cng phi mt n hang triu nm mi hy vng thnh cng m ra c.
Tuy nhin cng ngh ch to FPGA-EEPROM/FLASH i hi thc thi qua
nhiu cng on x l hn so vi loi FPGA-SRAM v vy m s pht trin ca chng
cng chm hn. Hn na nng lng tiu th ca chng cng ln hn v phi nui rt
nhiu phn t in tr ko (pull- up resistor)
FPGA cu to t t hp FLASH-SRAM
Ngy nay ngi ta cng pht trin ch to cc loi FPGA cu to t cc t hp
SRAM v FLASH tn dng c cc u im ca c hai chng loi ny. Thng
thng cc phn t cu hnh FLASH s c s dng lu cc ni dung cu hnh
sao chp cho cc phn t cu hnh SRAM. V cc phn t cu hnh SRAM hon ton
c th c cu hnh li theo yu cu thit k trong khi vn duy tr mt phn thit k
cu hnh gc lu trong cc phn t FLASH.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
Ngi ta cng thng phn loi FPGA da vo phn t kin trc ca chng
v bao gm 3 loi chnh : mn, th v trung bnh. Bn cht vic phn loi ny l da
vo kiu khi logic kh trnh cu thnh nn FPGA. Vi loi FPGA mn th kin trc
cc khi logic kh trnh thng l cc cng logic n gin( kiu AND,OR, v cc
phn t lu gi nh TrigerD). Kiu kin trc ny ph hp v thng s dng hiu
qu vi kin trc ASICos. Gn y xu th pht trin ca FPGA ang tp trung vo loi
kin trc th. Tc l cc khi logic kh trnh l cc khi c kh nng x l logic ln
vi nhiu t hp lin kt v phc tp vi nhiu u vo v ra lin kt. ty theo mc
ca khi logic kh trnh m ngi ta phn ra thnh cc loi trung bnh.
C hai loi cu trc c bn cu thnh nn cc khi logic kh trnh trong kin
trc FPGA th hoc trung bnh l MUX(Multiplex) v LUT( Lookup Table). Trong
loi cu trc MUX th cc phn t logic c cu thnh theo cu trc t hp cc u
vo ra theo nguyn l MUX nh m t trong hnh 2-29: Khi logic dng MUX.

Hnh 2-29: Khi logic dng MUX
i vi loi cu trc LUT th cc u vo thc cht l cc t hp chn ra
gi tr trong bng chn l ca hm chc nng cn thc thi.

Hnh 2-30: LUT thc hin hm t hp AND v OR
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
Hu ht cc ng dng u c nhu cu v b nh RAM on Chip v vy mt s
dng FPGA hin nay cng tch hp thm c cc phn t nh RAM v c gi l
RAM nhng(embedded RAM). Cc phn t RAM oc t chc thnh tng khi v
ty thuc vo kin trc ca FPGA n s c phn b linh hot, thng l xung quanh
cc phn t ngoi vi hoc phn b u trn b mt Chip. Mt hnh nh minh ha v
phn b RAM trong kin trc FPGA c m t nh trong hnh 2-31.

Hnh 2-31: Hnh nh ca Chip c cc ct l cc khi RAM nhng
FPGA vi ht nhn DSP


Hnh 2-46: S nguyn l mch ghp ni VK v FPGA
Thc cht l mt t hp nhm tng tc v kh nng tnh ton. Khi nim ny
cng tng t nh cc b ng x l ton hc trong kin trc my tnh. Nguyn l l
nhm san s v gim bt ti sang FPGA thc thi cc chc nng tnh ton ln( thng
thng i hi thc hin trong nhiu nhp hot ng ca Chip DSP) v cho php chip
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
DSP tp trung thc hin cc chc nng n nhp ti u. T hp FPGA v DSP l mt
kin trc rt linh hot v c bit ci thin c hiu sut thc hin v tng tc hon
rt nhiu so vi kin trc nhiu Chip DSP hoc AICs ng thi gi thnh li thp hn.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


3
CHNG 3
LP TRNH H NHNG

3.1 c im phn mm nhng
Hng chc nng ha c th
Hn ch v ti nguyn b nh
Yu cu thi gian thc
3.2 Biu din s v d liu
n v c bn nht trong biu din thng tin ca h thng s c gi l bt, chnh
l k hiu vit tt cu thut ng binary digit.
1964, IBM thit k v ch to my tnh s s dng mt nhm 8 bt nh a
ch b nh v nh ngha ra thut ng 8 bit= 1byte.
Ngy nay s dng rng ri thut ng Word l mt t d liu dng biu din kch
thc d liu m c x l mt cch hiu qu nht i vi mi loi kin trc x l s
c th. Chnh v vy mt t c th l 16 bits, 32 bits, hoc 64 bits
Mi mt byte c th c chia ra thnh hai na 4 bit v c gi l cc nibble.
Nibble cha cc bt trng s ln gi l nibble bc cao, v nibble cha cc bit trng s
nh c gi l nibble bc thp.
3.2.1 Cc h thng c s
Trong cc h thng biu din s hin nay u c biu din dng tng qut l tng
ly tha theo c s, v c phn loi theo gi tr c s. Mt cch tng qut mt h
biu din c s b v a l mt s nguyn nm trong khong gi tr c s b dc biu
din nh sau:
A = a
n
b
n
+
a
n-1
b
n-1
+

+
a
0
=

=
n
o i
bi ai. (1.1)
V d nh c s binary( nh phn), c s decimal (thp phn), c s Hexaadecimal, c
s 8 Octal (bt phn)
V d v biu din cc gi tr trong cc h c s khc nhau:
243.51
10
= 210
2

+ 4 10
1
+ 310
0

+510
4
+110
-2

212
3
= 23
2
+ 13
1
+23
0
= 23
10

10110
2
= 12
4
+ 02
3
+ 12
2
+ 12
1
+ 02
0
= 22
10

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
Hai loi c s biu din thng dng nht hin nay cho cc h thng x l s l c s
thp phn v c s mi su.
3.2.2 S nguyn
Trong biu din s c du phn bit s dng v s m ngi ta s dng bit
trng s ln nht quy c lm bit du v cc bt cn li c s dng biu din gi
tr ln ca s. V d mt t 8 bt c biu din gi tr -1 s c dng nh phn l
10000001, v gi tr +1 s c dng 00000001. Nh vy vi mt t 8 bit c th biu
din c cc s trong phm vi t -127 n +127. Mt cch tng qut mt t N bit s
biu din c -2
(N-1)
-1 n +2
(N-1)
-1.
Ch khi thc hin cng hai s c du:
Nu hai s cng du th thc hin php cng phn biu din gi tr v s dng
bit cng du vi hai s .
Nu hai s khc du th kt qu s nhn du ca ton t ln hn, v thc hin
php tr gia tan t c gi tr ln hn vi ton t b hn.
V d 1: Cng hai s c du 01001111
2
v 00100011
2
.
1 1 1 1 1 carries
0 1 0 0 1 1 1 1 (79)
0+ 0 1 0 0 0 1 1 +(35)
0 1 1 1 0 0 1 0 (114)
V d 2: Cng hai s c du 01001111
2
v 01100011
2

Nh cui cng 1 1 1 1 1 carries
Trn 0 1 0 0 1 1 1 1 (79)
B nh 0 + 1 1 0 0 0 1 1 +(99)
0 0 1 1 0 0 1 0 (50)
V d 3 : tr hai s c du 01001111
2
v 01100011
2

0 1 1 2 borrows
0 1 1 0 0 0 1 1 (99)
0 - 1 0 0 1 1 1 1 -(79)
0 0 0 1 0 1 0 0 20
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
V d 4 : cng hai s khc du 10010011
2
v 00001101
2
(+13)
0 1 2 borrows
1 0 0 1 0 0 1 1 (-19 )
0 - 0 0 0 1 1 0 1 (+13)
1 0 0 0 0 1 1 0 (-6)
Thut ton thc hin php tnh c du:
(1) Khai bo v xa cc bin lu gi tr v du chun b thc hin php tnh.
(2) Kim tra du ca ton t th nht xem c phi s m khng . Nu l s m th
thc hin b du v b ton t. Nu khng th chuyn qua thc hin bc 3.
(3) Kim tra du ca ton t th 2 xem c phi s m khng. Nu l s m th
thc hin b du v b ton t. Nu khng th chuyn sang thc hin bc 4.
(4) Thc hin php nhn hoc chia vi cc ton t va x l.
(5) Kim tra du. Nu zero th coi nh kt thc. Nu bng -1(0ffh) th thc hin
php tnh b 2 vi kt qu thu c v kt thc.
Hin nay ngi ta s dng hai quy c biu din s nguyn phn bit theo th t
ca byte trng s trong mt t c biu din.
Litte edian: byte trng s nh nht ng trc thun li cho php cng hoc tr
v
Big endian: byte trng s ln nht ng trc thuwnj li cho php nhn hoc
chia.
V d xt mt s nhi phn 4- byte

Theo quy c biu din litte edian th th t a ch lu trong b nh s l:
a ch c s +0= Byte 0
a ch c s +1= Byte 1
a ch c s +2= Byte 2
a ch c s +3= Byte 3
V theo quy c biu din s big edian s l:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
a ch c s +0= Byte 3
a ch c s +1= Byte 2
a ch c s +2= Byte 1
a ch c s +3= Byte 0
3.2.3 S du phy tnh
Chng ta c th s dng mt k hiu du chm o biu din mt s thc. Du chm
o c s dng trong t d liu dung phn bit v ngn cch gia phn biu din
gi tr nguyn ca d liu v mt phn l thp phn. V d v mt t 8 bit biu din s
du phy ng c ch ra nh trong hnh 3.1. Vi cch biu din ny, gi tr thc ca
s c tnh nh sau:
N = a
4
2
4
+ a
3
2
3
+ a
2
2
2
+a
1
2
1
+ a
0
2
0
+a
-1
2
-1
+a
-2
2
-2
+a
-3
2
-3

=0. 2
4
+ 1.2
3
+ 0.2
2
+ 1.2
1
+1.2
0
+1.2
-1
+0.2
-2
+ 1.2
-3
= 8+2+1+1/2+1/8
=11.625

Hnh 3.1 : nh dng biu din s du phy tnh 8 bit
Nhc im ca phng php biu din s du phy tnh l vng biu din s
nguyn b hn ch bi du phy tnh c gn c nh. iu ny d xy ra hin tng
trn s khi thc hin cc php nhn hai s ln.
3.2.4 S du phy ng
Phng php biu din s chnh xc v linh hot c s dng rng ri hin
nay l h thng biu din s du phy ng. y cng l mt phng php biu din
s khoa hc bao gm 2 phn: phn biu din lu tr s mantissa v mt phn lu tr
biu din s exponent. V d trong h c s thp phn, mt s nguyn bng 5 c
biu din hoc l 0.510
1
, 5010
-1
hoc 0.0510
-2
,trong my tnh s hoc h thng
s ni chung, cc s du phy ng nh phn thng c biu din dng :
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
N= M.2
E
(1.2)
Trong M l phn gi tr s mantissa, E l phn ly tha ca s N. M thng l cc
gi tr l m phn thp phn ca n thng nm trong khong 0.5 M 1.
Hnh 3.2 m t biu din mt s du phy ng ca t 8 bit gm 5 bit biu din phn
s c ngha mantissa, v 3 bit biu din phn ly tha. V cc mantissa v ly tha u
c th nhn cc gi tr m v vy cc bt u tin ca cc phn gi tr u c th
c s dng biu din du khi cn thit

Hnh 3.2: Biu din du phy ng 8 bit
Trong mt s VXL,VK do rng t nh phn nh nn c th s dng 2 t biu
din mt s du phy ng. Mt t s dng biu din gi tr mantissa, v mt phn
biu din gi tr exponent.
Nu phn mantissa c chun ha thnh mt s l c gi tr trong khong
0.5 M1 th bt u tin sau bit du thng l 1v s c mt du phy nh phn n
ngay sau bit du.
Phn biu bin exponent E s quyt nh v tr ca du phy ng s dch sang tri
(E>0) hay sang phi (E<0) bao nhiu v tr. V d biu din mt s thp phn 6.5 bng
mt t 8 bit du phy ng nh sau:
N=1101.2
11
2
=[1/2+1/4+1/16] 2
3
=6.5
Trong trn hp ny phn mantissa gm 4 bit v phn exponent gm 3 bit. Nu ta
dich du phy sang phi 3 v tr th chng ta s c mt s nh phn du phy ng biu
din c s l 1101
Tng qut ha trong trng hp mt s nh phn du phy ng n bit gm m bit biu
din phn mantissa v e bit biu din phn exponent th gi tr ca s ln nht c th
biu din c s l:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
N
max
= (1-2
-m-1
)2
(2
1 e
-1)
V s dng nh nht c th biu din l:
N
min
= 0.5. 2
( 2
1 e
-1)

Theo tiu chun IEEE 754 v 854 c hai nh dng chnh cho s du phy ng l s
thc di (long) v s thc ngn( short) chng khc nhau v chiu di biu din v
ln lu tr yu cu. Theo chun ny, s thc di c nh dng 8 byte bao gm 1 bt
du , 11 bit exponent v 53 bit lu gi tr s c ngha. Mt s thc ngn c nh
dng 4 byte bao gm 1 bit du ,8 bit ly tha v 24 bit lu gi tr s c ngha. Mt s
thc ngn c th biu din v x l c s c gi tr nm trong di 10
38
to 10
-38
v s
thc di c th biu din v x l c s c gi tr thuc di 10
308
to 10
-308
. biu
din mt gi tr tng ng nh vy bng s du phy tnh th cn ti 256 bit hay 32
byte d liu.
3.2.5 Mt s php tnh c bn
Thc hin php nhn
V trong cc VK nhng thng khng h tr cc php nhn nhiu byte. Cng vic
ny phi c thc hin bi ngi pht trin chng trnh v th hin di dng mt
thut ton da trn cc php ton c sn p dng cho s nh phn l cng , tr v dch.
c mt s hiu bit r rng hn v thut ton thc hin php nhn , chng ta xt
mt v d v mt php tnh nhn hai s nh phn tng qut nh sau:
A= a
n
.2
n
++a
1
.2
1
+a
0
.2
0


B= b
n
.2
n
++b
1
.2
1
+b
0
.2
0
b
n
.(A) .2
n
++b
1
.(A).2
1
+b
0
.(A).2
0
Nguyn l thc hin php nhn cng ging nh ta thc hin php nhn hai a thc.
Trong trng hp nhn hai s nh phn th mi phn t l mt bit, byte hoc t v d
c th vi hai s nh phn 4 bit ta thu c php nhn thc hin nh sau:
a
3
. 2
3
+ a
2
. 2
2
+a
1
. 2
1
+a
0
. 2
0

b
3
. 2
3
+ b
2
. 2
2
+b
1
. 2
1
+b
0
. 2
0

a
3
.b
0
. 2
3
+a
2
.b
0
. 2
2
+a
1
. b
0
2
1
+a
0
.b
0
. 2
0
a
3
.b
1
. 2
4
+ a
2
.b
1
. 2
3
+a
1
.b
1
2
2
+a
0
.b
1
. 2
1

a
3
.b
2
. 2
5
+ a
2
.b
2
. 2
4
+a
1
.b
2
2
3
+a
0
.b
2
. 2
2

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
a
3
.b
3
. 2
6
+ a
2
.b
3
. 2
5
+ a
1
.b
3
.2
4
+a
0
.b
3
. 2
3

Thut ton thc hin php nhn 32 bit theo trnh t sau:
(1) Cp pht vng nh ln lu s c nhn 32 bit v c th thc hin php
dch tri 32 ln. t gi tr khi to cho b m bit bng 32 v xa thanh ghi hay bin
lu gi kt qu php nhn.(Ch : S lng bit cn lu gi tr kt qu phi bng
tng s lng bit cn lu cc s hng php nhn)
(2) Dch s nhn sang phi mt v tr bt v kim tra c nh. Nu khng c c nh th
tip tc thc hin bc 3. Nu xut hin c nh th cng thmvo bin lu kt qu
hin ti ca php nhn mt gi tr bng gi tr ca s c nhn.
(3) Dch s c nhn sang tri mt v tr bit v gim b m dch i 1. Kim tra
xem gi tr ca b m dch c bng 0 khng? Nu bng 0 th thc hin tip bc 4,
cn khng th quay tr li thc hin bc 3.
(4) Kt qu cui cng ca php nhn c lu trong thanh ghi bin kt qu.
V d php nhn t nh phn 4 bit 1100 1101

0. A 1100(12)
B 1101(13)
Counter 100(4)
Product 0
1. A 11000(24)
B 0110(6)
Counter 011(3)
Product 1100(12)
2. A 110000(48)
B 0011(3)
Counter 010(2)
Product 1100(12)
3. A 1100000(96)
B 0001(1)
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
Counter 001(1)
Product 111100(60)
4. A 11000000(192)
B 0001(1)
Counter 000(0)
Product 10011100(156)

Thc thi thut ton thc hin php nhn s nguyn khng du bng ngn ng C/C
++
;

Thc thi php chia
Php chia c th c thc thi bng cch chuyn i thnh php nhn v php dch. V
d mn thc hin php chia 5 trong h thp phn chng ta c th thc hin bi mt
nhn 2 v dch du phy ca kt qu thu c sang tri mt n v. Mt cch tng qut
c th thc hn chuyn i mt php chia tng ng nh sau:

a
x
=
a
n
a
x

i vi php chia nh phn th n s c chn l mt s ly tha ca 2 v phi ln hn
a. Thut ton thc hin php chia c th c thc thi bi php dch, cng v tr nh
sau:
(1) Np bin lu gi tr thng s bng gi tr ca s b chia,s bc dch cn thc
hin bng s bt lu s b chia.
(2) Dch tri bin lu gi tr thng s vo phn bin lu gi tr d ca php chia.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
(3) So snh s d vi s chia. Nu s d ln hn hoc bng s chia th thc hin
php tr s d i mt gi tr bng gi tr s chia. Nu khng th chuyn sang thc hin
bc tip theo.
(4) Gim bin lu gi tr s ln lp v kim tra xem n bng 0 cha. Nu cha
bng 0 th quay tr li bc 2 thc hin tip, cn nu bng 0 th gi tr ca php chia
c lu trong nh cha s d v thng s.
Thc thi thut ton bng ngn ng C/C
++

I=0; quotient =0 ;
If (divisior==0 goto error;
While (dividend > divisor) divisor<<=1; i++;
Divisor>>=1;
While (I !=0) {
Quotient<<=1;
If (divisor <dividend )dividend-=divisor;
Quotient ++;
Divisor>>1;
i--;
}
Trc khi thc hin php chia yu cu cn phi kim tra li chia khng c th
xy ra. Thut ton thc hin php chia ch yu da trn php dch v php tr. S b
chia s dch sang tri v lu vo mt bin, phn d s oc so snh vi s chia.Nu
phn d bng hoc ln hn s chia th phn d s c tr i mt gi tr bng s chia
v s b chia s c cng thm 1 v dch sang tri mt v tr bt v chnh c gi
l thng s. Qu trnh ny c lp li v tip tc cho n khi s ln dch bng ng
s bit ca t lu s b chia.
Cc bin c s dng trong qu trnh thc hin php chia bao gm 5 bin s:
s b chia , s chia , thng s, s d v s ln dch. Trong qu trnh thc hin th s
b chia , thng s, v s d cng chia s chung mt vng nh. S d v s b chia
s thuc cng mt t ln. S b chia nm trong phn t trng s thp v s d s nm
trong phn t trng s cao. Sau khi thc hin xong php chia th s b chia s c
dch ton b sang tri vo phn bin s d v c thay th bng thng s. Kt qu
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
cn li thu c ch cn l s d vsf thng s. Hnh nh v b nh lu cc bin s
thc hin trong thut ton ny c minh ha nh trong hnh 3-3:

Hnh 3-3: Thc hin php chia
3.3 Tp lnh
3.3.1 Cu trc tp lnh CISC v RISC
Hu ht cc vi iu khin v VXL nhng c cu trc c pht trin da theo
kin trc my tnh tp lnh phc hp CISC (Complex Instruction Set Computer). CISC
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


4
l mt cu trc x l cc lnh phc hp, tc l mt lnh phc hp s bao gm mt vi
lnh n. Theo nguyn l ny c th gim bt c thi gian dng truy cp v c
m chng trnh t b nh. iu ny rt c ngha vi cc kin trc thit k x l tnh
ton theo kiu tun t. L do cho s ra i ca tp lnh phc hp nhm gim thiu
dung lng b nh cn thit lu gi chng trnh thc hin, v s gim c gi
thnh v b nh cn cung cp cho CPU. Cc lnh cng gn v phc hp th s cn
cng t khng gian b nh chng trnh. Kin trc tp lnh phc hp s dng cc lnh
vi di bin i ty thuc vo phc hp ca cc lnh t n gin n phc tp.
Trong s c mt s lng ln cc lnh c th truy nhp trc tip b nh. V vy vi
kin trc tp lnh phc hp chng ta s c c mt tp lnh a dng phc hp, gn,
vi di lnh thay i v dn n chu k thc hin lnh cng thay i ty theo
phc hp trong tng lnh. Mt vi lnh phc hp, c bit l cc lnh truy nhp b
nh cn ti vi chc chu k thc hin. Trong mt s trng hp cc nh thit k
VXL thy rng cn phi gim chu k nhp lnh c thi gian cho cc lnh hon
thnh iu ny cng dn n thi gian thc hin b ko di hn.
Mt s VK c pht trin theo cu trc my tnh tp lnh rt gn RISC
(Reduced Instruction Set Computer). RISC ph hp vi cc kin trc x l cc lnh
n. Thut ng rt gn ( reduced ) i khi b hiu khng tht chnh xc theo ngha
en ca n thc cht tng gc xut pht t kh nng cung cp mt tp lnh ti thiu
thc hin tt c cc hot ng chnh nh: chuyn d liu, cc hot ng ALU v r
nhnh iu khin chng trnh. Ch c cc lnh np (load), lu tr (store) l c php
truy nhp trc tip b nh.
B 1: So snh c im ca CISC v RISC
CISC RISC
Bt k lnh no cng c th tham chiu ti
b nh
Ch c cc lnh Np (load), hoc Lu
tr (store) l c th tham chiu ti b
nh
Tn ti nhiu lnh v kiu a ch Tn ti t lnh v kiu a ch
Khun dng lnh a dng Khun dng lnh c nh
Ch c mt tp thanh ghi C nhiu tp thanh ghi
Cc lnh thc hin trong nhiu nhp chu k Cc lnh thc hin trong mt nhp chu
k
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
C mt chng trnh nh thng dch
lnh
Lnh c thc hin trc tip ngay bi
phn cng
Chng trnh thng dch lnh phc tp Chng trnh bin dch m ngun
phc tp
Khng h tr c ch pipeline H tr c ch pipeline
Kch thc m chng trnh nh gn Kch thc m chng trnh ln
3.3.2 nh dng lnh

Hnh 3-4:nh dng lnh MIPS
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5

Hnh 3-5: Phn loi cc php tnh thc thi lnh
3.3.3 Cc kiu truyn i ch ton t lnh
Cc kiu nh/truyn a ch cho php chng ta ch ra/truyn ton t tham gia
trong cc lnh thc thi. Kiu a ch c th ch ra l mt hng s, mt thanh ghi hoc
mt khu vc c th trong b nh. Mt s kiu nh a ch cho php s dng a ch
ngn v mt s loi th cho php chng ta xc nh khu vc cha ton t lnh v
thng c gi l a ch hiu dng ca ton t v thng l ng. Chng ta s xt
mt s loi hnh nh a ch c bn hin ang c s dng rng ri trong c ch
thc hin 5 lnh.
nh a ch tc th (Immediate Addressing)
Phng php ny cho php truyn gi tr ton t lnh mt cch tc th nh mt
phn ca cu lnh c thc thi.V d nu s dng kiu nh a ch tc thi cho cu
lnh Load 0x0008 th gi tr 0x0008 s c np ngay vo AC. Trng bit thng
dng cha ton t lnh s cha gi tr thc ca ton t ch khng phi a ch ca
ton t cn truyn cho lnh thc thi. Kiu a ch tc thi cho php thc thi lnh rt
nhanh v khng phi thc hin truy xut b nh np gi tr ton t m gi tr ton t
c gp nh mt phn trong cu lnh v c th thc thin gay. V ton t tham gia
nh mt phn c nh ca chng trnh v vy kiu nh a ch ny ch ph hp vi
cc ton t hng v bit trc ti thi im thc hin chng trnh, hay xc nh ti
thi im bin dch chng trnh.
nh a ch trc tip (Direct Addressing)
Phng php ny cho php truyn ton t lnh thng qua a ch trc tip cha
ton t trong b nh. V d nu s dng c ch nh a ch ton t trc tip th
trong cu lnh Load 00008 s c hiu l d liu hay ton t c np trong cu
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
lnh ny nm trong b nh ti a ch 00008. C ch nh a ch trc tip cng
thuc loi hnh kh nhanh mc d khng nhanh c nh c ch truyn a ch tc
thi nhng mm do cao hn v a ch ca ton t khng nm trong phn m lnh
v gi tr c th thay i trong qu trnh thc thi chng trnh.
nh a ch thanh ghi (Register Addressing)
Trong cch nh a ch v truyn ton t ny th ton t khng nm trong b
nh nh trng hp nh a ch trc tip m nm ti chnh trong thanh ghi. Khi ton
t c np vo thanh ghi th vic thc hin c th rt nhanh v tc truy xut
thanh ghi nhanh hn so vi b nh. Nhng s lng thanh ghi ch c hn v phi
c chia s trong qu trnh thc hin v vy cc ton t phi c np vo thanh ghi
trc khi n c thc thi.
nh a ch gin tip (Indirect Addressing)
Trong phng php truyn ton t ny, trng ton t trong cu lnh c s
dng tham chiu ti mt con tr nm trong b nh tr ti a ch hiu dng ca
ton t. C ch truyn ny c th ni l mm do nht so vi cc c ch truyn a ch
khc trong qu trnh thc thi chng trnh. V d nu p dng c ch truyn a ch
gin tip trong cu lnh Load 00008 th s c hiu l gi tr d liu c a ch ti
Load 00008 thc cht l cha i ch hiu dng ca ton t cn truyn cho cu lnh.
Gi thit ti v tr nh 00008 ang cha gi tr 002A0 th 002A0 chnh l gi tr
thc ca ton t s c np vo AC. Mt bin th khc cng c th thc hin theo c
ch ny l truyn tham chiu ti con tr nm trong khu vc thanh ghi. C ch ny cn
c bit ti vi tn gi l nh a ch gin tip thanh ghi. V d mt cu lnh Load
R1 s dng c ch truyn a ch gin tip thanh ghi th chng ta c th d dng thng
dch c ton t truyn trong cu lnh ny c a ch hiu dng nm trong thanh ghi
R1
nh a ch c s v ch s (Index and Base Addressing)
Trong c ch ny ngi ta s dng mt thanh ghi cha offset( chnh lch
tng i) m s c cng vi ton t to ra mt a ch hiu dng. V d nu
ton t X ca lnh Load X c nh a ch theo c ch a ch ch s v thanh ghiR1
l thanh ghi cha a ch s v c gi tr l 1 th a ch hiu dng ca ton t thc
cht s l X +1. C ch nh a ch c s cng ging nh vy loi tr mt iu l
thay v s dng thanh ghi a ch offset th y s dng thanh ghi a ch c s. V
mt l thuyt s khc nhau gia hai c ch tham chiu a ch ny l chng c s
dng th no ch khng phi cc ton t c tnh th no. Mt thanh ghi ch s s
lu ch s m s c s dng nh mt offset so vi a ch c a ra trong trng
a ch ca lnh thc thi. Thanh ghi c s lu mt a ch c s v trng a ch
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
trong cu lnh thc thi s lu gi tr dch chuyn t a ch ny. Hai c ch tham chiu
a ch ny rt hu ch tng vic truy xut vi cc phn t kiu mng. Ty thuc vo
thit kt tp lnh cc thanh ghi mc ch chung thng hay c s dng trong c ch
nh a ch ny.
nh a ch ngn xp (Stack Addressing)
Trong c ch truyn a ch ny th ton t nhn c t nh ngn xp. Thay
v s dng thanh ghi mc ch chung hay nh kin trc da trn ngn xp lu cc
ton t trn nh ca ngn xp, v c th truy xut vi CPU. Kin trc ny khng ch
hiu qa trong vic lu gi cc gi tr trung gian trong cc php tnh phc tp m cn
cung cp mt phng php hiu qu trong vic truyn cc tham s trong cc li gi
hm cng nh lu ct cc cu trc d liu cc b v nh ngha ra phm vi tn ti
ca cc bin v cc hm con. Trong cc cu trc lnh truyn ton t da trn ngn xp
hu ht cc lnh ch bao gm phn m, tuy nhin cng c mt s lnh c bit ch c
mt ton t v d nh lnh ct vo(push) hoc ly ra (pop) t ngn xp. Ch c mt s
lnh yu cu hai ton t th hai gi tr cha trong hai nh trn nh ngn xp s c
s dng. V d nh lnh Add, CPU ly ra khi ngn xp hai phn t nm trn nh ri
thc hin php cng v sau lu kt qu tr li nh ngn xp.
Cc cch nh a ch khc
C rt nhiu bin th to bi cc c ch nh a ch gii thiu trn. l s
t hp trong vic to ra hoc xc nh a ch hiu dng ca ton t truyn cho lnh
thc thi. V d nh c ch nh a ch ch s gin tip s dng ng thi c hai c
ch nh a ch ng thi, tng t nh vy cng c c ch nh a ch c s
offsetCng c mt s c ch t ng tng hoc gim thanh ghi s dng trong lnh
ang thc thi nh vy m c th gim c ln ca m chng trnh c bit ph
hp cho cc ng dng Nhng.
3.3.4 Nguyn l thc hin PIPELINE
Vi x l c th tc thi cc lnh vi mt tc rt nhanh. RISC s dng k thut
pipeline tng cng tc x l cc lnh ng thi nh vo kh nng thc hin xp
chng cun chiu lin tc cc lnh theo cc phn on thc hin lnh. V d mt lnh
c th c c t b nh trong khi mt lnh khc ang c gii m chun b a
vo x l v mt lnh khc th ang c thc hin. Cng c mt s VK c tn gi
l my tnh tp lnh c bit SISC ( Specific Instruction Set Computer) v chng c
pht trin da trn tp lnh c thit k c chng cho mc ch iu khin.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5

Hnh 3.6 : Nguyn l thc hin pipeline
Pipeline c thc hin da trn nguyn l xp chng cun chiu cc phn on
trong mi mt lnh. Thng thng mi mt lnh c chia ra lm nhiu phn on
thc hin, ph bin hin nay l 5 phn on tun t nh sau:

Hnh 3-7: qu trnh thc hin nguyn l pipeline
(1) Tr lnh (Instrution Fetch): Thc hin tr ti lnh thc hin bng cch c a
ch lnh t thanh ghi con tr lnh (PC), c lnh ra t b nh chng trnh v
tnh ton ri np gi tr mi vo trong thanh ghi con tr lnh tr ti lnh s
thc thi tip theo.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
(2) Gii m lnh(Decode): Thc hin thng dch v chuyn i m lnh thnh dng
m ALU c th hiu v chun b thc thi. Qu trnh ny thc cht l qu trinh
c v chuyn i ni dung trong cc thanh ghi chng trnh.
(3) Thc thi lnh (Excute): ALU thc thi lnh va c gii m.
(4) Truy nhp b nh d liu( Memory): c ra hoc vit vo b nh d liu nu
lnh thc hin c nhu cu ny.
(5) Vit tr li (Write back): Hon thnh v cp nht ni dung cc thanh ghi.
Chng ta cn phn bit c ch pipeline v c ch thc thi song song mc d c
hai u nhm p ng yu cu thc thi canh tranh v tng tc thc thi. C ch
Pipeline gii quyt vn cnh tranh v tng tc thc hin bng cch chia nh tnh
ton thnh cc bc nh trong khi c ch song song s s dng nhiu ngun ti
nguyn c lp thc hin.
3.3.5 Harzard
Trong c ch thc hin lnh pipeline th hin r c u im trong vic thc
y hiu sut thc hin lnh, tuy nhin c th xy ra hin tng thc thi sai do s thiu
ng b v ph thuc ln nhau gia cc lnh trong nhm thc thi pipeline.
Hazard d liu
Hin tng harzard xy ra khi c s ph thuc ln gia cc lnh nm trong
khong xp chng thc hin cun chiu theo nguyn l pipeline. iu ny c th d
dng hnh dung khi hai hoc nhiu lnh thc hin xp chng khi c nhu cu c gi tr
ca cng mt ton t. Do s ph thuc nh vy nn khi vit chng trnh chng ta
phi kim sot c th t chng trnh m cc lnh s c thc hin nh th no.
Mc ch ca vic thc thi l lm sao h tr c c ch thc hin song song v
tng c hiu sut thc thi chng trnh. Vic pht hin v trnh c hin tng
hazard l cn thit m bo chng trnh c thc thi ng.Tu theo nguyn nhn
gy ra hazard ngi ta phn ra 3 loi hnh chnh tu thuc vo th t c hoc vit
truy nhp lnh ca cc nhm lnh ph thuc nhau trong c ch thc hin song song.
Xt hai lnh i v j trong lnh i c thc hin trc lnh j trong chng
trnh. Hin tng Hazard d liu c th xy ra nh sau:
RAW (read after write): c sau khi vit
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
Khi lnh i v j u cn s dng v trao i thng tin vi cng mt gi tr
nh, trong lnh i cn phi thc hin xong v cp nht gi tr vo nh ri
lnh j mi c th c v s dng. Nu lnh i cha thc hin xong m lnh j c
gi tr nh th s xy ra hin tng c gi l hazard d liu. Lnh j c
thng tin t mt nh trc khi lnh i kp vit vo v vy lnh j s ch c c gi
tr c ch khng phi gi tr mi cn phi s dng. Trong c ch thc hin pipeline
5 phn on s gp phi hin tng hzard d liu khi c mt lnh np (load) theo
sau mt lnh ALU s nguyn v s dng trc tip kt qu np.
WAW (write after write): Vit sau khi vit
Lnh j vit vo mt ton t trc khi lnh i vit vo. M yu cu thc thi
ng chng trnh l lnh i phi vit trc lnh j v gi tr cui cng lu trong ton
t phi do lnh j a ra ch khng phi lnh i. Hin tng ny c gi l hazard
d liu khi c s ph thuc u ra v nhiu lnh cng c nhu cu truy nhp vit vo
cng mt bin hay mt nh.
WAR (write after read): Vit sau khi c
j vit vo ton t ch trc khi n c c bi lnh i do lnh I s nhn
c gi tr sai. Hin tng Hazard ny xut hin khi c s ph thuc ton hng
trong cc php tnh.
Hazard do s ph thuc iu khin
Kiu ph thuc cng kh ph bin l do cu trc iu khin. S ph thuc
iu khin c quyt nh trnh t thc thi ca mt lnh i theo lnh r nhnh m
bo sao cho n c thc thi ng nh th t mong mun. Tt c cc lnh ngoi tr
khi c bn u tin ca chng trnh u c iu khin theo cu trc lnh r
nhnh v phi c m bo thc thi ng theo th t. Mt v d n gin nht
v s ph thuc iu khin l s ph thuc iu khin theo cu trc ifthen
Phn thc thi trong phn then s ph thuc cu lnh iu kin if. V d on
m chng trnh minh ha nh sau:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5

Cu lnh c iu khin ph thuc vo p1 v S2 c iu khin ph thuc
p2 ch khng phi p1.
Ni chung, c 2 rng buc c th gi thit trong s ph thuc iu khin:
(1) Mt lnh thc hin ph c quyt nh bi mt lnh iu khin r nhnh
th khng th c php chuyn ln trc cu lnh thc hin kim tra iu kin.
V d chng ta khng th a lnh t phn then ln trc phn if.
(2) Mt lnh thc hin c lp v khng ph thuc vo lnh r nhnh khng th
c chuyn vo khu vc sau phn thc hin ca nhnh thc hin ph thuc. V d
khng th a mt lnh ln trc phn lnh if v chuyn n vo trong phn then. S
ph thuc iu khin phi c m bo bi 2 thuc tnh trong c ch pipeline n
gin. Th nht, cc lnh thc hin trong chng trnh phi ng theo trnh t
c iu khin ca n. Trnh t ny phi c m bo rng mt lnh m phi
thc thi trc mt nhnh iu khin th phi thc hin trc nhnh . Th hai, vic
pht hin ra s xung t v iu khin (control hazard) s m bo rng mt lnh
m c iu khin ph thuc vo mt nhnh th khng c thc hin chng no
hng thc hin ca nhnh r rng. Bo m c s ph thuc iu khin l
cn thit v cng l mt cch n gin m bo ng trnh t thc hin chng
trnh. S ph thuc iu khin khng phi l mt s hn ch c bn v kh nng
thc thi chng trnh. Chng ta c th sn sng thc thi thm nhng lnh m l ra
khng nn c thc thi nu chng khng gy nh hng g n tnh ng n ca
chng trnh, nu khng s xung t gy ra bi s ph thuc iu khin c th xy
ra. S ph thuc v iu khin khng phi l mt thuc tnh kch tnh bt buc phi
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
bo m. Thay v iu , hai thuc tnh kch tnh cho vic lp trnh mt cch ng
n v thng c bo m l phi trnh c xung t bi c s ph thuc v d
liu v iu khin v chnh l hnh vi ngoi l c th xy ra trong lung d liu
thc thi chng trnh.
3.4 Ngn ng v mi trng pht trin
3.4.1 Ngn ng
Mt trong nhng ngn ng lp trnh c l ph cp rng ri nht hin nay l
ngn ng C. So vi bt k ngn ng lp trnh no khc ang tn ti C thc s ph
hp v tr thnh mt ngn ng pht trin ca h nhng. iu ny khng phi l c
hu v s tn ti mi, nhng ti thi im ny th C c l l mt ngn ng gn gi
nht tr thnh mt chun ngn ng trong th gii h nhng. Trong phn ny
chng ta s cng tm hiu ti sao C li tr thnh mt ngn ng ph bin n vy v
ti sao chng ta la chn n nh mt ngn ng minh ha cho vic lp trnh h nhng.
S thnh cng v pht trin phn mm thng l nh vo s la chn ngn
ng ph hp nht cho mt d n t ra. Cn phi tm mt ngn ng c th p
ng c yu cu lp trnh cho cc b x l t 8bit n 64bit, trong cc h thng
ch c hu hn v b nh vi Kbyte hoc Mbyte. Cho ti nay, iu ny ch c C l
thc s c th tha mn v ph hp nht.
R rng C c mt s u im ni bt tiu biu nh kh nh v d dng cho
vic hc, cc chng trnh bin dch thng kh sn cho hu ht cc b x l
ang s dng hin nay, v c rt nhiu ngi bit v lm ch c ngn ng
ny ri, hay ni cch khc cng c ph cp t lu. Hn na C c li th l
khng ph thuc vo b x l thc thi m ngun. Ngi lp trnh ch phi tp
trung ch yu vo vic xy dng thut ton, ng dng v th hin bng ngn ng
thn thin thay v phi tm hiu su v kin thc phn cng, cng nh rt nhiu cc
u im ni bt khc ca ngn ng bc cao ni chung.
C l mt th mnh ln nht ca C l mt ngn ng bc cao mc thp
nht. Tc l vi ngn ng C chng ta vn c th iu khin v truy nhp trc tip
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


5
phn cng kh thun tin m khng h phi hy sinh hay nh i bt k mt th
mnh no ca ngn ng bc cao. Thc cht y cng l mt trong nhng tiu ch
xy dng ca nhng ngi sng lp ra ngn ng C mun hng ti. Thc t iu
ny c cp n khi hai nh sng lp ra ngn ng C, Kernighan v Ritchie
a vo trong phn gii thiu ca cun sch ca h The C Programming
Language nh sau:
C is a relatively low level language. This characterization is not
pejorative; it simply means that C deals with the same sort of objects that most
computers do. These may be combined and moved about with the arithmetic and
logical operators implemented by real machines
Tt nhin l C khng phi l ngn ng duy nht cho cc nh lp trnh
nhng. t nht hin nay ngi ta cng c th bit ti ngoi ngn ng C l Assembly,
C++, v Ada.
Trong nhng bui u pht trin h nhng th ngn ng Assembly ch yu
c s dng cho cc vi x l ch. Vi ngn ng ny cho php ngi lp trnh
iu khin v kim sot hon ton vi x l cng nh phn cng h thng trong
vic thc thi chng trnh. Tuy nhin ngn ng Assembly c nhiu nhc im
m cng chnh l l do ti sao hin nay n t c ph cp v s dng. l,
vic hc v s dng ngn ng Assembly rt kh khn v c bit kh khn
trong vic pht trin cc chng trnh ng dng ln phc tp. Hin nay n ch
c s dng ch yu nh im ni gia ngn ng bc cao v bc thp v c s
dng khi c yu cu c bit v hiu sut thc hin v ti u v tc m khng
th t c bng ngn ng khc. Ngn ng Assembly ch thc s ph hp cho
nhng ngi c kinh nghim v hiu bit tt v cu trc phn cng ch cng
nh nguyn l thc hin ca b lnh v chp x l.
C++ l mt ngn ng k tha t C nhm vo cc lp ng dng v t
duy lp trnh hng i tng v cng bt u chim c s lng ln quan
tm trong vic ng dng cho pht trin h nhng. Tt c cc c im ct li ca C
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
vn c k tha hon ton trong ngn ng C++ v ngoi ra cn h tr kh nng
mi v tru tng ha d liu v ph hp vi t duy lp trnh hin i; hng
i tng. Tuy nhin iu ny b nh i bi hiu sut v thi gian thc thi do
ch ph hp vi cc d n pht trin chng trnh ln v khng chu sc p
ln v thi gian thc thi.
Ada cng l mt ngn ng hng i tng mc d n khng c ph cp
rng ri nh C++. Ada c xy dng bi c quan quc phng M phc v
pht trin cc phn mm qun s chuyn dng c bit. Mc d cng c
chun ha quc t (Ada83 v Ada95) nhng n vn khng c ph cp rng ri
ngoi vic ng dng ch yu trong cc lnh vc qun s v hng khng v tr. V
n cng dn dn b mt u th v s ph cp trong thi gian gn y, y cng l
mt iu ng tic v bn thn Ada cng l mt ngn ng c nhiu c im ph
hp cho vic pht trin phn mm h nhng thay v phi s dng C++.
3.4.2 Bin dch

Hnh 3-8: qu trnh pht trin v bin dch phn mm nhng
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
Qu trnh bin dch (Compiling)
Nhim v chnh ca b bin dch l chuyn i chng trnh c vit bng
ngn ng thn thin vi con ngi v d nh C, C++,thnh tp m lnh tng
ng c th c v hiu bi b vi x l ch. Theo cch hiu ny th bn cht mt
b hp ng cng l mt b bin dch chuyn i mtmt t mt dng lnh
hp ng thnh mt dng m lnh tng ng cho b vi x l c th hiu v thc
thi. Chnh v vy i khi ngi ta vn nhm hiu gia khi nim b hp ng v b
bin dch. Tuy nhin vic bin dch ca b hp ng s c thc thi n gin hn
rt nhiu so vi cc b bin dch cho cc m ngun vit bng ngn ng bc cao
khc.
Mi mt b x l thng c ring ngn ng my v vy cn phi chn la
mt b bin dch ph hp c th chuyn i chnh xc thnh dng m my tng
ng vi b x l ch. i vi cc h thng nhng, b bin dch l mt chng
trnh ng dng lun c thc thi trn my ch (mi trng pht trin chng trnh)
v cn c tn gi l b bin dch cho (cross compiler). V b bin dch chy trn
mt nn phn cng to ra m chng trnh chy trn mi trng phn cng khc.
Vic s dng b bin dch cho ny l mt thnh phn khng th thiu trong qu
trnh pht trin phn mm cho h nhng. Cc b bin dch cho thng c th cu
hnh thc thi vic chuyn i cho nhiu nn phn cng khc nhau mt cch linh
hot. V vic la chn cu hnh bin dch tng ng vi cc nn phn cng i khi
cng kh c lp vi chng trnh ng dng ca b bin dch.
Kt qu u tin ca qu trnh bin dch nhn c l mt dng m lnh
c bit ti vi tn gi l tp i tng (object file). Ni dung ca tp i tng
ny c th c xem nh l mt cu trc d liu trung gian v thng c nh
ngha nh mt nh dng chun COFF (Common Object File Format) hay nh
dng ca b lin kt m rng ELF (Extended Linker Format) Nu s dng
nhiu b bin dch cho cc modul m ngun ca mt chng trnh ln th cn
phi m bo rng cc tp i tng c to ra phi c chung mt kiu nh dng.
Hu ht ni dung ca cc tp i tng u bt u bi mt phn header
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
m t cc phn theo sau. Mi mt phn s cha mt hoc nhiu khi m hoc d
liu nh c s dng trong tp m ngun. Tuy nhin cc khi c nhm li
bi b bin dch vo trong cc phn lin quan. V d nh tt c cc khi m c
nhm li vo trong mt phn c gi l text, cc bin ton cc c khi to
(cng cc gi tr khi to ca chng) vo trong phn d liu, v cc bin ton cc
cha c khi to vo trong phn bss.
Cng kh ph bin thng c mt bng biu tng cha trong ni dung
ca tp i tng. N cha tn v a ch ca tt c cc bin v hm c tham
chiu trong tp m ngun. Cc phn cha trong bng ny khng phi lc no cng
y v c mt s bin v hm c nh ngha v cha trong cc tp m ngun
khc. Chnh v vy cn phi c b lin kt thc thi x l vn ny.
Qu trnh lin kt (Linking)
Tt c cc tp i tng nhn c sau bc thc hin bin dch u tin
u phi c t hp li theo mt cch c bit trc khi n c np v chy
trn mi trng phn cng ch. Nh thy trn, bn thn cc tp i tng
cng c th l cha hon thin v vy b lin kt phi x l t hp cc tp i
tng vi nhau v hon thin nt phn cn khuyt cho cc bin hoc hm tham
chiu lin thng gia cc tp m ngun c bin dch c lp.
Kt qu u ra ca b lin kt l mt tp i tng mi c cha tt c m
v d liu trong tp m ngun v cng kiu nh dng tp. N thc thi c iu
ny bng cch t hp mt cch tng ng cc phn text, d liu v phn bss t
cc tp u vo v to ra mt tp i tng theo nh dng m my thng nht.
Trong qa trnh b lin kt thc hin t hp cc phn ni dung tng ng n cn
thc hin thm c vn hon chnh cc a ch tham chiu ca cc bin v hm
cha c y trong bc thc hin bin dch.
Cc b lin kt c th c kch hot thc hin c lp vi b bin dch v
cc tp i tng c to ra bi b bin dch c coi nh cc tham bin vo.
i vi cc ng dng nhng n thng cha phn m khi to c bin dch
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
cng phi c gp trong danh sch tham bin vo ny.
Nu cng mt biu tng c khai bo hn mt ln nm trong mt tp i
tng th b lin kt s khng th x l. N s kch hot c ch bo li
ngi pht trin chng trnh xem xt li. Hoc khi mt biu tng khng th tm
c a ch tham chiu thc trong ton b cc tp i tng th b lin kt s c
gng t gii quyt theo kh nng cho php da vo cc thng tin v d nh cha
trong phn m t ca th vin chun. iu ny cng thng hoc c th gp vi
trng hp cc hm tham chiu trong chng trnh.
Rt ng tic l cc hm th vin chun thng yu cu mt vi thay i
trc khi n c th c s dng trong chng trnh ng dng nhng. Vn y
l cc th vin chun cung cp cho cc b cng c pht trin ch dng n kh nng
nh dng v to ra tp i tng. Hn na chng ta cng rt t khi c th truy nhp
c vo m ngun ca cc th vin chun c th t thay i. Hin nay cng c
mt s nh cung cp dch v phn mm h tr cng c chuyn i hay thay i th
vin C chun ng dng cho cc ng dng nhng, v d nh Cygnus. Gi phn
mm ny c gi l newlib v c cung cp min ph. Chng ta c th ti v
trang web ca Cygnus. N s h tr chng ta gii quyt vn m b lin kt c
th gp phi khi chng trnh s dng cc hm thuc th vin C chun.
Sau khi hp nht thnh cng tt c cc thnh phn m v phn d liu
tng ng cng nh cc vn v tham chiu ti cc biu tng cha c thc
thi trong qu trnh bin dch n l, b lin kt s to ra mt bn sao c bit ca
chng trnh c kh nng nh v li (relocatable). Hay ni cch khc, chng
trnh c hon thin ngoi tr mt iu: Khng c a ch b nh no cha c
gn bn trong cc phn m v d liu. Nu chng ta khng phi l ang pht trin
phn mm cho h nhng th qu trnh bin dch c th kt thc ti y. Tuy nhin,
vi h nhng ngay c h thng nhng bao gm c h iu hnh chng ta vn
cn phi c mt m chng trnh (image) nh phn c nh v tuyt i. Thc t
nu c mt h iu hnh th phn m v d liu cng thng gp c vo bn trong
chng trnh c kh nng nh v li. Ton b ng dng nhng bao gm c h iu
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
hnh thng lin kt tnh vi nhau v thc hin nh mt m chng trnh nh phn
thng nht.
Qu trnh nh v (Locating)
Cng c thc hin vic chuyn i mt chng trnh c kh nng nh v li
thnh mt dng m chng trnh nh phn c th thc thi c gi l b nh v.
N s m nhim vai tr ca bc n gin nht trong cc bc thc thi bin dch
ni chung. Thc t chng ta phi t lm hu ht cng vic ca bc ny bng cch
cung cp thng tin v b nh c cu hnh trn nn phn cng m chng ta ang
pht trin v chnh l tham s u vo cho vic thc thi ca b nh v. B nh v
s s dng thng tin ny gn cc a ch vt l cho mi phn m lnh v d liu
bn trong chng trnh c thc thi m c th nh v li. Tip theo n s to ra
mt tp c cha chng trnh b nh nh phn c th np trc tip vo b nh
chng trnh trn nn phn cng thc thi.
Trong nhiu trng hp b nh v l mt chng trnh kh c lp vi cc
phn cng c khc trong h thng phn mm pht trin. Tuy nhin trong cc b
cng c pht trin GNU chc nng ny c tch hp lun trong b lin kt. Tuy
nhin khng nn nhm ln v chc nng ca chng trong qu trnh thc thi bin
dch. Thng thng chng trnh chy trn cc my tnh mc ch chung th h
iu hnh s thc hin vic chuyn i v gn chnh xc a ch thc cho cc phn
m v d liu trong chng trnh ng dng, cn vi chng trnh pht trin chy
trn h nhng th vic ny phi c thc hin bi b nh v. y cng chnh l
im khc bit c bn khi thc hin bin dch mt chng trnh ng dng cho h
nhng.
Thng tin v b nh vt l ca h thng phn cng pht trin m cn phi
cung cp cho b nh v GNU phi c nh dng theo kiu biu din ca b lin
kt. Thng tin ny i khi c s dng iu khin mt cch chnh xc th
t trong cc phn m chng trnh v d liu bn trong chng trnh c th nh
v li. Nhng y chng ta cn phi thc hin nhiu hn th, tc l phi thit lp
chnh xc khu vc ca mi phn trong b nh.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
Sau y l mt v d minh ha ca mt tp thng tin lin kt c cung cp
cho mt nn phn cng nhng, gi thit l c 512 KB RAM v 512 KB ROM.


on m ny c cung cp cho cho b nh v ca b lin kt GNU v
thng tin b nh c cu hnh trn nn mch cng h nhng ch v ch ra cc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
phn d liu v bss s c nh v trong RAM (bt u ti a ch 0x00000) v
phn m chng trnh s c nh v trong ROM (bt u ti a ch 0x80000).
Tuy nhin cc gi tr khi to trong cc on d liu s c thc hin mt phn
trong ROM bt u t phn nh ngha ca khu vc nh v cui cng trong m
chng trnh.

Hnh 3-9: v d v mt lu pht trin phn mm cho DSP TMS320CMDxx
Tt c cc tn bt u bi du gch di (_) l cc bin c th c tham
chiu t bn trong m ngun. B lin kt s s dng cc biu tng x l cc
tham chiu trong cc tp i tng. V d c th c mt phn chng trnh ng
dng nhng (thng l thuc phn m khi to chng trnh) sao chp cc gi tr
khi to ca cc bin c khi to trong ROM sang khu vc d liu trong
RAM. Cc a ch bt u v kt thc cho hot ng ny c th c thit lp mt
cch biu tng bi tham chiu ti cc bin s nguyn _DataStart v _DataEnd.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
Kt qu ca bc cui cng ny ca qu trnh bin dch l mt m chng
trnh nh phn c th c np trc tip v chy c trn nn phn cng h nhng
ch, tc l c np vo b nh chng trnh ca h thng ch. Trong v d trn
m chng trnh nh phn c to ra c dung lng chnh xc l 1MB. Tuy nhin
bi v cc gi tr cho phn d liu c khi to nm trong ROM nn na phn
thp 512KB ca m chng trnh nh phn ny ch cha gi tr zero v ch c na
phn cao c s dng l ch yu.
3.4.3 Simulator
Simulator l mt chng trnh phn mm cho php ngi pht trin m
chng trnh chy m phng mt chng trnh vit cho mt nn VXL/VK (nn
phn cng ch) trn mt mi trng phn cng khc (hay cn gi l mi trng
pht trin). Thc cht l qu trnh m phng hot ng ca chng trnh thc thi
theo ng nh iu kin thc hin ca mi trng ch trn mi trng pht trin.
S dng b m phng m chng trnh c th c chy th tng bc
hoc tng phn v c th c chnh sa trc tip th nghim cc gii php khc
nhau cho cc bi ton thc thi phn mm. Tuy nhin cc b m phng khng h tr
cc ngt thc v cc thit b ngoi v.
B m phng trc tip (b m phng phn cng) bao gm mt thit b phn
cng kt ni trc tip vi h pht trin v cho php thc thi c c phn ng
ging nh b x l ch. B m phng trc tip trn mch c tt c cc chc
nng ca mt b m phng phn mm ng thi h tr c cc chc nng
emulation cho cc cng vo ra ca VK.
3.4.4 Emulator
Emulator l mt thit b phn cng c kh nng thc hin nh mt nn phn
cng ch. N cn c bit ti nh mt tn gi khc l cng c pht trin thi gian
thc bi v n cho ta phn ng vi cc s kin nh VK ch thc thi. Cc b
Emulator thng c km theo c phn chng trnh gim st (monitor program)
cho php ngi pht trin chng trnh cho VK ch kim tra ni dung, trng
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6
thi cc thanh ghi v cc khu vc b nh v thit lp cc im dng khi thc hin
chy chng trnh.
3.4.5 Thit k h thng bng my tnh

Trong qu trnh pht trin phn mm cn phi c th nghim vi i
tng iu khin. Tu thuc vo tng mi trng pht trin chng ta c th tin
hnh theo mt s cc phng php sau.
M phng offline

Trong h thng pht trin ny nn phn cng nhng ch c m phng
bng m hnh chy trn PC v i tng iu khin cng l m hnh m phng
chy trn PC. V vy qu trnh pht trin thc cht l qu trnh chy m phng h
thng c thc hin hon ton trn PC. Vi h thng ny khng th th nghim
cho cc s kin p ng thi gian thc v thi gian ca m phng khc vi thi
gian din bin thc ca h thng.
H thng pht trin (software in the loop)
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


6

H thng ny m phng nn phn cng thc trn PC cho p ng hnh vi
ging nh vi vi mch cng thc v m hnh i tng c m hnh thc thi
trn PC. Loi h thng ny cng tng t nh h thng m phng offline tuy
nhin c u im hn v kh nng m phng hnh vi v p ng ca vi mch
nhng chnh xc hn v trung thc hn. V cng c mt nhc im l khng th
nghim c bi ton thi gian thc.
M phng thi gian thc (Hardware in the Loop)

H thng ny s dng nn phn cng nhng ch thc nhng i tng
th ch l m hnh thi gian thc khng phi i tng thc. u im l kh
mm do v thay i cu hnh n gin trong qu trnh pht trin th nghim vi
cc hnh vi khc nhau ca i tng. Rt ngt v n gin ha cng vic xy dng
i tng.
M hnh pht trin thc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7

H thng ny s dng nn phn cng nhng ch thc vi i tng thc.
Tuy nhin c s h tr ca cng c pht trin c th ci t v th nghim trc
tip trn nn phn cng thc. y l mt dng m hnh cho kt qu trung thc v
chnh xc nht trong cc dng h thng pht trin nu trn. Tuy nhin cc nn phn
cng ny thng c pht trin v h tr bi cc nh cung cp c th tng
thch vi cng c phn mm km theo.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
CHNG 4
H IU HNH NHNG

4.1. H iu hnh
Ngun gc ra i ca h iu hnh l m nhim vai tr trung gian
tng tc trc tip vi phn cng ca my tnh, phc v cho nhiu ng dng a
dng. Cc h iu hnh cung cp mt tp cc chc nng cn thit cho php cc
gi phn mm iu khin phn cng my tnh m khng cn phi can thip trc
tip su. H iu hnh ca my tnh c th thy n bao gm cc drivers cho cc
ngoi vi tch hp vi my tnh nh card mn hnh, card m thanh... Cc cng c
qun l ti nguyn nh b nh v cc thit b ngoi vi ni chung. iu ny to ra
mt giao din rt thun li cho cc ng dng v ngi s dng pht trin phn
mm trn cc nn phn cng c. ng thi trnh c yu cu v hiu bit su
sc v phn cng v c th pht trin da trn cc ngn ng bc cao.


Hnh 4-1: kin trc h iu hnh
H thng iu hnh bn cht cng l mt loi phn mm nhng n khc vi
cc loi phn mm thng thng. S khc bit in hnh l h thng iu hnh
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
c np v thc thi u tin khi h thng bt u khi ng v c thc hin trc
tip bi b x l ca h thng. H thng iu hnh c vit phc v iu khin
b x l cng nh cc ti nguyn khc trong h thng bi v n s m nhim chc
nng qun l v lp lch cc qu trnh s dng CPU v cng chia s ti nguyn.
Tm li, h iu hnh thc cht chnh l mt giao din quan trng, giao
tip trc tip vi tng phn cng cp thp phc v cho c ngi s dng cng
nh cc chng trnh ng dng thc thi trn nn phn cng h thng. Hn na
h iu hnh cn c vai tr quan trng trong vic m nhim 3 tc v nguyn l
chnh: (1) Qun l qu trnh, (2) Qun l ti nguyn, (3) Bo v ti nguyn khi s
xm phm ca cc qu trnh thc thi sai.
4.2 B np khi to (Boot-loader)
Thut ng bootstrap bt ngun t cch din t c xa c ngha l t
mnh vn ln bng chnh n lc ca bn thn pulling yourself up by your own
bootstraps. N c s dng nh mt thut ng rt ph bin gi tn mt
phn mm thc thi vic khi to chng trnh thc thi trn cc nn vi in t kh
trnh ni chung. Chng trnh ny thng rt nh gn v m nhim chc nng
tin hot ng ca h iu hnh. Cng rt ph bin hin nay ngi ta cng thng
dng thut ng bootloader (b np khi to) thay v bootstrap. B np khi
to thc cht l mt chng trnh nh thc hin trong h thng v m nhim chc
nng cn thit a h iu hnh vo hot ng. Trong cc h nhng, cc lnh
c thc hin u tin thng nm trong cc vng nh ROM v thng thuc loi
chm. D , mt trong nhng tc v ph bin ca b np khi to l sao chp
chng trnh ng dng chnh (main program) vo trong vng b nh nhanh trc
khi chng c thc hin. B np khi to cng c nhim v khi to vng nh d
liu v cc thanh ghi h thng trc khi nhy ti chng trnh ng dng chnh.
Cng c rt nhiu dng khc nhau ca b np khi to, t dng n gin n phc
tp. Dng n gin nht c th ch l mt lnh nhy ti chng trnh ng dng
chnh ngay sau khi reset m khng thc hin bt k mt tc v khi to hay np
chng trnh g. Chng trnh ng dng chnh s phi t thit lp thc thi tc v
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
ca mnh. Cc b np khi to phc tp hn c th thc hin nhim v chun
on b nh v khi to h thng, kim tra chng trnh v np chng trc khi
cho b x l nhy ti thc hin chng trnh ng dng chnh.
Sau y chng ta s tm hiu v mt mi trng pht trin kh in hnh v
tho lun v mt s cc thuc tnh nguyn l c bn ca b np khi to.

Hnh 4-2: nguyn l thc hin ca b np khi to boot- loader
Trong mi trng pht trin h nhng in hnh, nn phn cng ch cn
pht trin c kt ni vi trm ch (host) thng qua mt giao din truyn thng.
Mt mi trng pht trin bao gm mt chng trnh g ri (debugger) v d nh
Code Composer Studio ca Texas Instrument, cho php ngi pht trin chng
trnh np v thc hin th nghim cc chng trnh trn phn cng ch. Mt s
cc cng c h tr v d nh thit lp cc im dng (breakpoint)v cc
nhim v ph tr khc bm st trng thi qu trnh thc thi thi gian thc ca
chng trnh th nghim. iu ny rt c ngha v to nn mt s d dng hn
trong qu trnh pht trin v g ri mt chng trnh ng dng mi cho nn phn
cng ch.
Thng thng cc ng dng c pht trin trong mi trng ngn ng C th
chng trnh ng dng chnh c thc thi v nm trong phm vi hm main() phn
khi to chng trnh v np tin thc hin chng trnh chnh thng khng tng
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
minh hoc b n i. Thc cht iu ny ch ng i vi nhng ngi pht trin m
chng trnh ng dng chnh bng ngn ng bc cao (c bit cho cc ng dng
khng phi cho h nhng) m khng cn phi quan tm nhiu n cc tc v c s
m nhim vic khi to cc thanh ghi h thng, ngn xp v d liuiu ny
cng rt c ngha to ra mt cm gic v mi trng pht trin thn thin cho
ngi pht trin chng trnh v ch cn tp trung phn thc hin chc nng chnh
ca h thng. Tuy nhin trong mi trng pht trin h thng nhng vic thc thi
chng trnh thng bt u ti a ch chng trnh ni bt u tc v khi to h
thng trc khi nhy ti thc hin chng trnh chnh main(). Qu trnh ny c
bt u thc cht l thc thi mt tc v ngt kch hot bi s kin reset.
Boot-loader cng c nhiu dng khc nhau. Hnh 4-2 m t mt b np khi
to cho mt ng dng C nhng. Trong v d ny vector RESET tr ti th tc
c_int00 thc hin tc v khi to. Ngoi vic khi to cc thanh ghi, ngn xp
cc bin C cng cn c khi to trc khi c thc thi. Qu trnh ny s sao chp
t phn .cinit v vit vo cc a ch d liu tng ng ca chng trong phn .bss.
Sau khi hon thnh chng trnh chnh main() mi c gi v bt u thc thi.
Trong v d n gin ny b np khi to t hp vector RESET cng vi hm khi
to c_int00 v gi thit rng c chng trnh b np khi to v chng trnh ng
dng chnh u nm cng trong vng nh vt l non- volatile. Trong cc trng hp
h thng phc tp hn, b np khi to c th bao hm c tc v sao chp chng
trnh chnh vo trong vng nh fast volatile trc khi n c gi v thc thi. B
np khi to cng c th m nhim c chc nng chun on, g ri v nng cp
h thng nu c. Chc nng chun on c th ch l kim tra b nh, ngoi vi v
tng thch tch hp trong h thng. Chc nng g ri cng c th l mt giao
din gim st cung cp thng tin v trng thi thi gian thc v h thng m ngi ta
vn thng bit ti vi tn gi l chng trnh monitoring. Vic nng cp hoc thay
i chng trnh b np khi to cng c th c thc thi nh kh nng lp trnh
FLASH in-circuit v np t b nh ngoi thng qua giao din vi trm ch hoc
chc nng tng t.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7

Hnh4-3: Cu trc b np khi to boot-loader
4.3 Cc yu cu chung
Nh chng ta c bit i vi cc h thng thi gian thc, yu cu thit
k mt h iu hnh kh c bit. H nhng thi gian thc li yu cu h iu
hnh phi thc hin vi mt ngun ti nguyn thng rt hn hp. Mc d kch
thc b nh tch hp on-chip s c th tng ln trong tng lai nhng vi s pht
trin hin nay h iu hnh cho cc h nhng ch nn c khong nh hn 32 Kbytes.
H thng iu hnh m nhim vic iu khin cc chc nng c bn ca h
thng bao gm ch yu l qun l b nh, ngoi vi v vo ra giao tip vi h
thng phn cng. Mt im khc bit c bn nh chng ta bit v h iu hnh
vi cc phn mm khc l n thc hin chc nng iu khin s kin thc thi trong
h thng. C ngha l n thc hin cc tc v theo mnh lnh yu cu t cc
chng trnh ng dng, thit b vo ra v cc s kin ngt.
Bn nhn t chnh tc ng trc tip ti qu trnh thit k h iu hnh l (1)
kh nng thc hin, (2) nng lng tiu th, (3) gi thnh, v (4) kh nng tng
thch. Hin nay chng ta cng c th bt gp rt nhiu h iu hnh khc nhau
c bit cho cc h nhng cng v s tc ng ca 4 nhn t nu trn. Hu ht
chng u c kiu dng v giao din kh ging nhau nhng c ch qun l v
thc thi cc tc v bn trong rt khc nhau. Mi h iu hnh c thit k phc
v trc tip cc chc nng c th phn cng ca h nhng v khng d dng so
snh c gia chng vi nhau.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
Hai thnh phn chnh trong thit k h iu hnh l: phn ht nhn
(kernel) v cc chng trnh h thng. Ht nhn n chnh l phn li ca h iu
hnh. N c s dng phc v cho cc b qun l qu trnh, b lp lch b
qun l ti nguyn v b qun l vo ra. Phn ht nhn m nhim chc nng lp
lch, ng b v bo v h thng bi vic s dng sai, x l ngtChc nng iu
khin chnh ca n l phc v iu khin phn cng bao gm ngt, cc thanh ghi
iu khin, cc t trng thi v cc b nh thi gian. N np cc phn mm iu
khin thit b cung cp cc tin ch chung v phi hp vi cc hot ng vo ra
vi h thng. Phn ht nhn c vai tr iu khin rt quan trng m bo tt c
cc phn ca h thng c th lm vic n nh v thng nht.
Hai kin trc thit k phn ht nhn kinh in nht l kin trc vi ht nhn v
n ht nhn (monolithic). Cc vi ht nhn cung cp cc chc nng iu hnh c bn
ct li (th) theo c ch cc module tng i c lp m nhim cc tc v c th
v chuyn ri rt nhiu cc dch v in hnh iu hnh h thng thc thi trong
khng gian ngi s dng. Nh c ch ny m cc dch v c th c khi to
hoc cu hnh li m khng nht thit phi khi to li ton b h thng. Kin trc vi
ht nhn cung cp an ton cao bi v dch v h thng chy tng ngi s dng
vi hn ch v truy nhp vo ti nguyn ca h thng v c th c gim st. Kin
trc vi ht nhn c th c xy dng mt cch mm do ph hp vi cu hnh
phn cng khc nhau mt cch llinh hot hn so vi kiu kin trc ht nhn
monilithic. Tuy nhin do tnh c lp tng i gia cc modul trong vi ht nhn nn
cn thit phi c mt c ch trao i thng tin hay truyn thng gia cc modul v
vy c th l l do lm chm tc v gim tnh hiu qu hot ng ca h thng.
c im ni bt v ct li ca kin trc vi ht nhn l kch thc nh v d dng
sa i cng nh xy dng linh hot hn. Cc dch v thc thi tng trn ca ht
nhn v vy t c an ton cao. Kin trc vi ht nhn c pht trin mnh m
trong cc h thng a x l v d nh Windows 2000, Mach v QNX.
Kiu kin trc monolithic cung cp tt c chc nng/dch v chnh yu thng
qua mt qua trnh x l n l. Chnh v vy kch thc ca chng thng ln hn
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
kiu kin trc vi ht nhn. Loi hnh kin trc ny thng c p dng ch yu
cho cc phn cng c th m ht nhn monolithic c s tng tc trc tip vi phn
cng nh vy m kh nng ti u cng d dng hn so vi p dng kiu kin trc vi
ht nhn. Chnh v vy cng l l do ti sao kin trc monolithic khng th thay i
mm do linh hot nh kiu vi ht nhn. V d in hnh v loi hnh kin trc ht
nhn monolithic bao gm Linux, MacOS, v DOS.
V h iu hnh cng i hi v ti nguyn v kim c chc nng qun l
chng v vy ngi thit k cn phi nm c thng tin v chng mt cch y .
V d nh i vi h thng iu hnh cho Sun Microsystem Solaris yu cu ti thiu
khng gian b nh trn a l 8MB; Windows 2000 yu cu khong gp hai ln nh
vy.
4.4 H iu hnh thi gian thc
QNX l mt v d in hnh v h thng thi gian thc RTOS c thit k
p ng cc yu cu v lp lch rt kht khe. QNX cng cha thc s ph hp
c th c thc thi cho cc h thng nhng bi v n i hi dung lng b nh
khng nh v thng ph hp cho cc ng dng i hi v an ton v tin cy
ln.
H thng iu hnh thi gian thc l h iu hnh h tr kh nng xy dng
cc h thng thi gian thc.

Hnh 4-4: So snh kin trc RTOS v OS chun
H thng iu hnh vi phn li l ht nhn phi m nhim cc tc v chnh
nh sau:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
X l ngt
Lu tr ng cnh chng trnh ti thi im xut hin ngt
Nhn dng v la chn ng b x l v phc v dch v ngt
iu khin qu trnh
To v kt thc qu trnh/tc v
Lp lch v iu phi hot ng h thng
nh thi
iu khin ngoi vi
X l ngt
Khi to giao tip vo ra

Hnh 4-5: cu trc h iu hnh thi gian thc
Ty theo c ch thc hin v xy dng hot ng ca ht nhn ngi ta phn loi
mt s loi hnh:
(1) H thng thi gian thc nh: Vi loi ny cc phn mm c pht trin m
khng cn c h iu hnh, ngi lp trnh phi t qun l v x l cc vn v
iu khin h thng bao gm:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


7
X l ngt
iu khin qu trnh/ tc v
Qun l b nh
(2) Cng ngh a nhim
Mi qu trnh c mt khng gian b nh ring
Cc qu trnh phi c chia nh thnh cc Thread cng chia s khng gian
b nh.
(3) Cc dch v cung cp bi ht nhn
To v kt thc qu trnh/ tc v
Truyn thng gia cc qu trnh
Cc dch v v nh thi gian
Mt s cc dch v cung cp h tr vic thc thi lin quan n iu khin h
thng
c im c bn ca ht nhn thi gian thc in hnh:
Kch thc nh (lu tr ton b trong ROM)
H thng ngt
Khng nht thit phi c cc c ch bo v
Ch h tr phn kim tra chng trnh ng dng
Tng tc chuyn ng cnh v truyn thng gia cc qu trnh
Khi cc qu trnh ng dng ang thc hin th cc yu cu h thng
iu hnh c th c thc hin thng qua cc li gi hm thay v s
dng c ch ngt mm
Vi ht nhn (Micro - kernel): Bao gm mt tp nh cc dch v h tr
Qun l qu trnh
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
Cc dch v truyn thng gia cc qu trnh nu cn
Cc phn mm iu khin thit b l cc qu trnh ng dng
Ht nhn in hnh c bn
Loi ht nhn n gin nht l mt vng lp v hn thm d cc s kin xut
hin trong h thng v phn ng li theo s thay i nu c.
Vi mt b x l cu hnh nh nht, khng phi lc no n cng c th lu
ct ng cnh v khng th thay i con tr ngn xp hoc vng ngn xp rt
hn ch.
Thay v s dng cc thanh ghi thit b, vng lp thm d c th gim st cc
bin m chu s thay i cp nht bi cc b x l ngt.
Ht nhn c th c xy dng sao cho tt c cc tn hiu logic c iu
khin bi vng lp v nhp c iu khin bi cc ngt.
Cc tc v ln cn nhiu thi gian thc hin c th c chia nh thnh cc
tc v nh v c thc hin ti cc thi im khc nhau nh vo c ch
chuyn v s dng b m.
Cc ht nhn thc thi theo c ch ngt rt ging vi loi ht nhn thc hin
theo c ch vng lp thm d. N x l tt c cc tc v thng qua cc dch
v ngt.
Cc ht nhn ln v phc tp hn s bao gm mt s cc dch v ph phc v
cho vic truyn thng gia cc qu trnh. V nu c b sung y n s
tr thnh mt h iu hnh y .
Cc kiu loi ht nhn c bn
Ht nhn thc hin vng lp thm d
Ht nhn thc hin theo c ch ngt
Ht nhn qu trnh vn hnh qu trnh
Vic la chn loi ht nhn no hon ton ty thuc vo cc b x l v
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
kch thc phn mm, tuy nhin ring loi ht nhn vn hnh theo qu trnh khng
ph hp vi cc b x l nh.
Ht nhn qu trnh
Cc ht nhn qu trnh r rng l phc tp hn cc ht nhn thc hin theo c
ch thm d v iu khin ngt. Cc ng truyn tn hiu logic bn trong cc qu
trnh v cc dch v ngt c tch hp v thc hin thng qua vic truyn d liu.

Hnh 4-6: m hnh trng thi ca qu trnh
Ht nhn s phi m nhim chc nng lp lch cho cc qu trnh theo ng
m hnh trng thi.
RUN: qu trnh c thc hin
WAIT: cc qu trnh ch mt s kin hoc tn hiu vo ra kch hot qu trnh
READY: cc qu trnh sn sng c thc hin
Cc phn t thuc tnh ca mt qu trnh: Cc phn t ny cn thit
phc v cho vic lp lch. V d i vi c ch lp lch theo mc u tin s yu
cu thng tin sau vi mi qu trnh:
Tn (a ch b nh ca phn t qu trnh)
Trng thi: RUN, WAIT, READY
Mc u tin
Ng cnh (dng con tr qun l lu ct thng tin trong ngn xp)
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
CHNG 5
K THUT LP TRNH NHNG

5.1 Tc v v qu trnh (process)
Tc v (task)? L mt cng vic cn thc thi tham gia trong h thng
Qu trnh (process) l mt din bin thc thi mt tc v ca h thng.
i khi ngi ta vn dng ln hai khi nim ny v khng phn bit.
Tc v chu k (period) v khng chu k (aperiod).
Cc tc v phi thc hin lp li mt cch u n theo nhng khong thi
gian p c gi l cc tc v c chu k v p c gi l chu k ca tc v. Cc loi
tc v khc th c gi l tc v khng chu k.
5.2 Lp lch (Scheduling)
Ti sao phi lp lch?
m bo c c ch thc thi chia s ti nguyn hu hn v tho mn yu
cu thi gian thc. Lp lch phi nhm tho mn hay t ti c s tho hip gia
cc rng buc v ti nguyn, s ph thuc ln nhau hay thi gian thc hin.
5.2.1 Cc khi nim
Lp lch l mt php thc hin phn b v gn quy trnh thc thi cc tc v
cho b x l sao cho mi tc v c thc hin hon ton.
Lp lch = tm kim mt gin phn b thi gian thc hin a nhim hp
l vi cc iu kin rng buc cho trc. Hay ni cch khc l b lp lch phi x l
quyt nh v iu phi qu trnh/tc v thc hin.
C mt s thng tin v tc v lun phi quan tm i vi bt k b lp lch
thi gian thc no, bao gm:
- Thi gian xut hin a
i
(arrival time): Khi s kin xy ra v tc v tng ng
c kch hot.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
- Thi im bt u thc thi r
i
(release time): Thi im sm nht khi vic x
l
- sn sng v c th bt u.
- Thi im bt u thc hin s
i
(starting time): L thi im m ti tc v
bt u vic thc hin ca mnh.
- Thi gian tnh ton/thc thi c
i
(Computation time): L khong thi gian cn
thit b x l thc hin xong nhim v ca mnh m khng b ngt.
- Thi im hon thnh f
i
(finishing time): L thi im m ti tc v hon
thnh vic thc hin ca mnh.
- Thi gian ri ro/ xu nht w
i
(worst case time): khong thi gian thc hin lu
nht
- c th xy ra.
- Thi im kt thc d
i
(due time): Thi im m tc v phi hon thnh.

Hnh 5-1: gin thc hin ca mt tc v Ti
Trn c s b lp lch s phi thc hin bi ton ti u v:
Thi gian p ng (response time)
Hiu sut thc hin (s lng cng vic thc hin xong trong mt n v
thi gian)
S cng bng v thi gian ch i (cc tc v khng phi ch i qu lu)
V d v mt lch thc hin 2 tc v c m t nh trong Hnh 5-2.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8

Hnh 5-2: gin lp lch thc hin 2 tc v
Trong trng hp ca v d ny cc thng s v thi gian thc hin ca cc
tc v tnh c nh sau:
Thi gian tnh ton C
1
= 9 v C
2
= 12 .
Thi gian bt u thc hin s
1
= 0; s
2
= 6
Thi im hon thnh: f
1 =
18 , f
2 =
28 .
Khong thi gian chnh lch thi im kt thc v deadline (Lateness) L
i =
f
i
d
i
:
L
1 =
4 , L
2 =
1 .
Khong thi gian ri/d tha gia thi gian cho php thc hin v thi gian
cn thc hin tc v (Laxity) X
I =
d
i
a
i
C
i
: X
1 =
13 , X
2 =
11 .
5.2.2 Cc phng php lp lch ph bin

Hnh 5-3: phn loi cc phng php lp lch
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
Tu thuc vo loi hnh tc v, ngi ta ra hai phng php lp lch l c
chu k v khng c chu k.
Lp lch non-preemptive: Phng php ny m bo cc tc v c thc
hin hon thnh mi khi thc thi, v vy thi gian p ng cho cc s kin khc c
th lu.
Lp lch preemptive: Phng php ny khc phc nhc im ca lp
lch non- preemptive khi thi gian thc thi cc tc v lu. Cc tc v s c thc
hin v c th b ngt gia chng phc v thc thi cc tc v khc. C ch lp
lch ny cho php m bo thi gian p ng cho cc s kin v tc v ngn v nhanh
hn.
Lp lch offline/tnh: Vic lp lch c thc hin da trn cc hiu bit hoc
d bo v cc s kin tc v thc hin trong h thng (thi im xut hin, thi
gian thc hin, deadline) v c quyt nh ti thi im thit k v c p
dng c nh trong sut qu trnh hot ng ca h thng. Vic lp lch trc c mt
s cc u im sau:
- Tc v tip theo c th c la chn thc thi trong khong thi gian l hng
s
- Kh nng p ng yu cu thi gian thc c th c bit trc v c
m bo
Nhc im:
o Khng th thay i lch trnh thc hin ca h thng trong qu trnh thc
hin
o i hi phi c thng tin thi gian chnh xc v cc tc v tnh ton lp
lch
Mt thut ton lp lch tnh c gi l ti u nu n lun lun c th tm
c mt lch iu phi tho mn cc rng buc cho trong khi mt thut ton
tnh khc cng tm c mt li gii.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
Lp lch online/ng: B x l thc hin vic lp lch trong qu trnh thc thi
da trn c s cc thng tin hot ng hin hnh ca h thng. S lp lch l
khng xc nh trc v thay i ng theo qu trnh thc hin.
Cc thut ton lp lch tnh ti u khng phi l ti u trong h thng
ng.
Khng tn ti mt li gii ti u cho vic lp lch trong h thng nhiu b
x l nu thi im xut hin yu cu thc thi ca cc tc v khng c bit trc.
Cc ht nhn c iu khin theo c ch ngt thng thc thi c ch lp
lch non- preemtive ng trong khi loi ht nhn vn hnh theo qu trnh li thc
thi theo c ch preemptive ng.
Mt thut ton lp lch ng c gi l ti u nu n c th tm ra c mt
lch iu phi iu khin h thng tho mn cc rng buc thi gian cho bt k
khi no m thut ton tnh khng tm ra c.
Lp lch tp trung hoc phn tn: Vic lp lch c thc hin p dng cho
cc tc v thc thi bi mt (tp trung) hoc nhiu b x l (phn tn).
Lp lch Mono hay Multi- processor: Nhim v lp lch v thc thi c
m nhim bi mt (mono) hoc nhiu b vi x l (multi). Tu thuc vo phc
tp v thut ton cn x l khi lp lch m ngi ta quyt nh phi s dng phng
php lp lch mono hay multi- processor.
Tnh kh lp lch: Mt h thng vi mt tp cc tc v v cc iu kin rng
buc c gi l kh lp lch nu tn ti t nht mt c ch lch trnh thc hin tho
mn cc tc v v iu kin rng buc .
V d v lp lch cho h thng a nhim vi 2 tc v. Tc v 1 thc hin theo
chu k v tc v 2 thc hin khng theo chu k vi thi gian thc thi ln hn thi
gian chu k lp li ca tc v 1.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8

Hnh 5-4: gin thi gian thc hin lch ca tc v
5.2.3 K thut lp lch
FCFS
Trong c ch lp lch n trc c ph v trc th cc qu tnh c x l
theo th t m n xut hin yu cu v cho n khi hon thnh. C ch lp lch ny
thuc loi khng ngt c v c u im l d dng thc thi. Tuy nhin, n khng
ph hp cho cc h thng m h tr nhiu ngi s dng v c mt s bin i
ln v thi gian trung bnh m mt qu trnh hay tc v phi ch i c x
l. Hn na do vic x l khng ngt c nn c hin tng chim hu c quyn
b x l trong thi gian di v c th gy ra s tr bt thng trong qu trnh thc
hin ca cc tc v phi ch i khc.
Shortest Job First - SJF
Trong c ch lp lch ny tc v c thi gian thc thi ngn nht s c quyn
u tin cao nht v s c phc v trc. Vn chnh gp phi trong c ch
lp lch ny l khng bit trc c thi gian thc thi ca cc tc v tham gia
trong chng trnh v thng thng phi p dng c ch tin on v nh gi da
vo kinh nghim v cc tc v thc thi trong h thng. iu ny chc chn rt kh
lun m bo c chnh xc. C ch lp lch ny c th p dng cho c loi
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
ngt c v khng ngt c.
Rate monotonic (RM):
Phng php lp lich RM c l hin ny l thut ton c bit ti nhiu nht
p dng cho cc tc v hay qu trnh c lp. Phng php ny da trn mt s gi
thit sau:
(1) Tt c cc tc v tham gia h thng phi c deadline kiu chu k
(2) Tt c cc tc v c lp vi nhau
(3) Thi gian thc hin ca cc tc v bit trc v khng i
(4) Thi gian chuyn i ng cnh thc hin l rt nh v c th b qua
Thut ton RM c thc thi theo nguyn l gn mc u tin cho cc tc
v da trn chu k ca chng. Tc v no c chu k nh th s c c gn mc
u tin cao. Theo nguyn l ny vi cc tc v chu k khng thay i th RM s l
phng php lp lch cho php ngt v mc u tin c nh. Tuy nhin RM h tr
yu cu h thng khng tt.
Earliest-deadline-first (EDF)
Nh ng tn gi ca phng php, thut ton lp lich theo phng php ny
s dng deadline ca tc v hay nh iu kin u tin x l iu phi hot ng.
Tc v c deadline gn nht s c mc u tin cao nht v cc tc v c deadline
xa nht s nhn mc u tin thp nht. u im ni bt ca phng php ny l gii
hn c th lp lch p ng c 100% cho tt c cc tp tc v. Hn na mc u
tin gn cho mi tc v trong qu trnh hot ng l ng v vy chu k ca tc v
c th thay i bt k lc no theo thi gian.
EDF c th c p dng cho cc tp tc v chu k v cng c th m rng
p ng cho cc trng hp cc deadline thay i khc nhau theo chu k.
Vn chnh ca thut ton lp lich EDF l khng th m bo c tc v
no trong h thng c th khng c thc thi trong tnh hung qu h thng b
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


8
qu ti. Trong nhiu trng hp mc d mc s dng trung bnh nh hn 100%
nhng vn c th trong mt tnh hung no vn vt qua kh nng p ng ca
h thng tc l s c tc v khng c m bo thc thi ng. Trong nhng
trng hp nh vy cn phi iu khin bit tc v no b li khng thc hin
thnh cng hoc tc v no c thc hin thnh cng trong qu trnh qu .
Minimum Laxity first (MLF)
C ch lp lch ny s u tin tc v no cn t thi gian cn li thc hin
nht trc khi n phi kt thc m bo yu cu thc thi ng. y c xem l
c ch lp lch gn quyn u tin ng v d t c s ti u v hiu sut thc
hin v s cng bng trong h thng.
Round Robin
y l mt c ch lp lch phn b u n, ngt c v n gin. Mi
mt tc v c x l/phc v trong mt khong thi gian nht nh v lp li theo
mt chu trnh xuyn sut ton b cc tc v tham gia trong h thng. Khong thi
gian phc v cho mi tc v trong qu trnh l mt s tho hip gia thi gian
thc hin ca cc tc v v thi gian thc hin mt chu trnh. C th chn khong
thi gian rt nh v i lc chng ta khng nhn c ra rng ang c s phn
b thc hin trong h thng.
Tuy nhin nu thi gian qu nh c th lm mt tnh hiu qu thc hin
ton h thng v cn nhiu thi gian trong vic chuyn i ng cnh cho mi tc
v sau mi chu trnh thc hin.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
5.3 Truyn thng v ng b
5.3.1 Semaphore

Hnh 5-5: truyn thng qu trnh
Semaphores l mt cu trc d liu c nh ngha loi tr kh nng xung
t trong qu trnh chia s ti nguyn ca cc tc v trong hot ng ca h thng.
Semaphores h tr hai hot ng chnh nh sau:
w ait ( sem aphore ) : gim v kho cho ti khi semaphore c m
signal( sem aphore ) : tng v cho php thm mt lung mi c tham gia
hot ng
Trong hot ng phi hp cng vi semaphore c mt hng i gm cc tc v cn
c thc thi s c mt s tnh hung hot ng c bn nh sau:
Khi mt lung (thread) gi wait():
- Nu semaphore c m th lung s c gia nhp v tip tc thc
thi
- Nu semaphore ang b ng th nhnh s b kho v phi nm
ch trong hng i cho ti khi no semaphore c m
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
signal() s m semaphore:
- nu mt lung ang nm trong hng i v khng b kho
- nu khng c lung no trong hng i v tn hiu signal s c nh
v dnh cho lung tip theo
Cc loi Semaphore
Mutex semaphore
Cho php iu khin hot ng truy nhp n l vo ti nguyn chia s
ca h thng.
m bo loi tr xung t trong hot ng truy nhp ng thi ca nhiu
tc v, v ch c mt tc v c thc thi ti mi thi im.
Counting semaphore
iu khin ti nguyn m c th phc v cng mt lc nhiu tc v hoc
mt ngun ti nguyn cho php phc v mt s nht nh cc tc v
khng ng b v hot ng ng thi.
Nhiu lung c th truyn Semaphore
S lng lung c quyt nh bi bin m N ca Semaphore
Thc cht mutex semaphore l mt dng c bit ca counting semaphore vi
bin m N=1.
Thc thi Semaphore
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9

S dng Semaphore trong vic ng b hai qu trnh to v s dng hng mc
thng qua b m trung gian.

Nhn xt:
Semaphores c th c s dng gii quyt bt k mt bi ton hay vn
ng b truyn thng no
Tuy nhin chng c mt s nhc im
o Chng ch yu s dng cc bin ton cc trong vic iu khin hot
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
ng ng b nn c th truy nhp bt k u trong h thng kh
kim sot
o Khng c s lin kt cht ch gia semaphore v d liu m c n
iu khin.
o c s dng ng thi cho c vic loi tr xung t (mutual
exclusion) v hot ng ng b cho cc tc v (scheduling)
5.3.2 Monitor
Monitor l mt ngn ng lp trnh c xy dng iu khin vic truy
nhp vo vng d liu chia s trong hot ng ca h thng. M chng trnh ng
b c b sung vo trong b bin dch v thc thi khi chy chng trnh.
M oni t or l mt modul ng gi
- Cc cu trc d liu c chia s
- Cc th tc hot ng thao tc trn cc cu trc d liu chia s
- ng b cc lung thc thi ng thi m c th kch hot cc th tc
trong hot ng h thng
M oni t or c th bo v d liu khi s truy nhp khng c cu trc. N m
bo rng cc lung truy nhp vo d liu thng qua cc th tc tng tc theo
nhng cch hp php v c kim sot.
M oni t or m bo loi tr xung t
- Ch c mt lung c th thc thi bt k th tc no ti mi mt thi
im (lung trong monitor)
- Nu c mt lung ang thc thi bn trong mt monitor n s kho cc
lung khc mun vo, do monitor cng phi c mt hng i.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9

5.4 X l ngt
Tn hiu iu khin b VXL kch hot bi mt s kin tham gia trong qu
trnh hot ng ca h thng lm h thng ngng v chuyn hng thc thi c
gi l tn hiu ngt. N s ngt b VXL khi hot ng m n ang thc thi v
chuyn sang thc hin mt cng vic khc phc v cho s kin kch hot ngt tng
ng. V d nh trong qu trnh thu thp d liu, VXL lun phi ch i thi im
n nhn d liu v s kch hot s kin ngt CPU mi khi c d liu xut hin
kp thi ghi d liu vo b nh. Sau khi hon thnh, CPU phc hi li trng thi
ca h thng v tr li tip tc thc hin chng trnh t thi im m n b ngt.
i vi b x l ngt, n s phi thc hin hai nhim v chnh l: (1) Xc nh
c s kin ngt v (2) nhn dng s kin ngt trc khi tc v phc v ngt tng
ng c kch hot. Hnh 56 m t mt chu trnh c bn thc hin ngt trong cc
h VXL/VK.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9

Hnh 5-6 : chu trnh thc hin ngt

Hnh 5-7 : v d v cu trc phn cng x l ngt

Hnh 5-8 : c ch thc hin th tc ngt
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
Th tc kch hot mt tc v phc v s kin ngt c m t nh trong
Hnh 5-8. Thng thng ngi ta hay quan tm nhiu n p ng ca CPU vi s
kin ngt v thi gian thc hin tc v ngt. y thi gian p ng ph thuc v
quyt nh bi tc v kh nng x l ca phn cng cn thi gian thc hin tc
v ngt ch yu quyt nh bi tc v ngt di hay ngn v do chng trnh quyt
nh.

Hnh 5-9 : v d v ngun ngt DSP
Cc ngun ngt ngoi/cng c th c nhn dng theo kiu tn hiu ngt
- Theo sn xung (ngt c kch hot khi xut hin sn xung dng ti
chn
- tn hiu ngt)
- Theo mc (ngt c kch hot khi xut hin mt tn hiu xung mc tch cc
ti chn nhn tn hiu ngt)
Mt s kin ngt cng c th c kch hot ch bi mt hot ng c hoc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
vit vo mt thanh ghi thit b ngoi vi hoc cc thanh ghi iu khin hoc trng thi.
S xung t tranh chp gia cc ngun ngt cng xut hin ti mt thi
im c th c gii quyt bng mc u tin hoc kt ni cng vi b x l.
Cc ngun ngt goi c th c ti gin vic x l bng s kt hp vi phn mm
v cng chia s cc ng tn hiu ngt. C ch thc hin ngt c s tranh chp v
gii quyt bng mc u tin c m t nh trong Hnh 5-10.

Hnh 5-10 : c ch thc hin ngt theo mc u tin
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
CHNG 6
THIT K H NHNG: T HP PHN CNG V MM

6.1 Qui trnh pht trin
Qu trnh pht trin phn mm nhng thc hin theo chu trnh sau:
(1) Problem specification
(2) Tool/chip selection
(3) Software plan
(4) Device plan
(5) Code/debug
(6) Test
(7) Integrate

6.2M hnh ho s kin v tc v
6.2.1 Phng php m hnh Petrinet
Nm 1962 Carl Adam Petri cng b phng php m hnh hnh ho tc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


9
v hay qu trnh theo s ph thuc nhn qu c ph cp rng ri v c bit
ti nh ngy ny vi tn gi l mng Petri.
Mng Petri c s dng ph bin biu din m hnh v phn tch cc h
thng c s cnh tranh trong qu trnh hot ng. Mt h thng c th hiu l mt
t hp ca nhiu thnh phn v mi thnh phn th u c cc thuc tnh. Cc thuc
tnh c th thay i v c c trng bi cc bin trng thi. Mt chui cc
trng thi s m t qu trnh ng ca mt h thng.
Mng Petri thc s l mt gii php m t h thng ng vi cc s kin
ri rc tc ng lm thay i trng thi ca cc i tng trong h thng theo tng
iu kin c th trng thi ca h thng.
Mng Petri c thit lp da trn 3 thnh phn chnh: (1) Cc iu kin,
(2) cc s kin, v (3) quan h lung. Cc iu kin c th l tho mn hoc khng
tho mn. Cc s kin l c th xy ra hoc khng. V quan h lung m t iu
kin ca h trc khi s kin xy ra.
Cc iu kin i hi phi tho mn mt s kin xy ra hoc chuyn trng
thi thc hin th c gi l iu kin trc (precondition). Cc iu kin m c
tho mn khi mt s kin no xy ra th c gi l iu kin sau (postcondition).
6.2.2 Qui c biu din m hnh Petrinet
Trong qui c biu din hnh ho th mng Petri s dng cc vng trn
biu din cc iu kin, cc hp biu din cc s kin, v mi tn biu din quan
h lung. Mt v d minh ho v mng Petri c m t trong Hnh 6-1, trong :
- P = { p
1
, p
2
, ..., p
np
} l tp gm np v tr c biu din trong m hnh
(c m t bi cc vng trn);
- T = {t
1
, t
2
, ..., t
nt
} l tp gm nt chuyn i trong tp chuyn i biu din
trong m hnh (c m t bi cc hnh ch nht);
- I biu din quan h i vo chuyn i v c k hiu bi ng mi tn
theo
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
- hng t cc v tr ti cc chuyn i;
- biu din quan h i ra khi chuyn i v c k hiu bi cc ng mi
- tn theo hng t cc chuyn i ti cc v tr;
- M ={m
1
, m
2
, ...m
np
} l du trng thi ca cc chuyn i trong h thng.
Cc gi tr m
i
l s cc th bi (c k hiu nh cc chm trn en) cha
bn trong cc v tr p
i
trong tp du M.

Hnh 6-1: v d v mt mng petri
H thng ng c th c m t bi mng Petri nh s chuyn dch cc th
bi trong cc v tr ca h thng m hnh v tun th theo lut sau:
- Mt chuyn i c php thc thi nu tt c cc v tr i vo chuyn i
cha t nht mt th bi.
- Khi mt chuyn i c thc thi xong (hon thnh) th mt th bi s b
loi ra khi v tr i vo chuyn i ng thi b sung thm mt th bi vo
cc v tr u ra tng ng ca chuyn i .
Cc trng thi ng ca h thng c m t bi tp R(M ) nh du bi cc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
du trong tp M. Trong v d trn c 5 phn t du trong tp R ln lt l M
1
, M
2
, M
3
, M
4
, M
5
. Tng ng ln lt nh sau:
M
1 =
(1, 0, 0, 0,0) :
M
2 =
(0,1,1, 0, 0) :
M
3 =
(0,1, 0, 0,1) :
M
4 =
(0, 0, 0,1,1) :
M
5 =
(0, 0,1,1,0) :
6.2.3 M t cc tnh hung hot ng c bn vi Petrinet
ng hnh (Song song) v ng b
Trong m hnh PN m t nh trong Hnh 62 (a), cc chuyn i t1 v t2
c php thc hin ng thi; hot ng ca chng khng nh hng n nhau.
Cc hot ng c m hnh bi hai chuyn i thc hin song song. Trong h
thng d phng vi tin cy cao, m hnh ny c s dng biu din hai
thnh phn C1 v C2 song song m bo hot ng d phng; trong trng hp
ny cc v tr p1 v p3 biu din iu kin lm vic, cc v tr p2 v p4 biu din
iu kin li, t1 v t2 l cc s kin li trong cc tc v C1 v C2 mt cch tng
ng.

Hnh 6-2: m hnh petrinet hot ng song song a) c lp b) ng b
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Trong hot ng song song, cc tc v hon ton c lp, tuy nhin nu cc s kin
cn phi kt thc v l iu kin cho mt chuyn i khc th hot ng ng
b c th c thc hin nh b sung mt chuyn i t3 nh m t trong Hnh 6-2
(b). Khi chuyn i t3 cn th bi ng thi ca c p2 v p4.
Chia s ng b
Mt yu t c trng trong hot ng ca h thng phn tn l thng phi
chia s mt s ti nguyn hu hn. S thiu thn v ti nguyn lm hn ch hot
ng ca h thng trong qu trnh x l thm ch lm tc nghn h thng. Vic m
hnh v phn tch cc h thng c hin tng tc nghn l mt tc v kh khn
trong hu ht cc qu trnh m hnh c th gp phi.

Hnh 6-3: hot ng ca b m vi dung lng hu hn
minh ho tnh hung ny, biu din hot ng ca b m vi dung lng
hu hn c m t bi PN trong Hnh 6-3. V tr p3 m hnh s cc v tr b m
cn trng v v tr p2 m hnh s v tr c in y; ch rng tng cc th bi
cha trong cc v tr p2 v p3 lun l hng s (trong v d ny l 3). Chuyn i t2
m hnh qu trnh in y mt v tr b m v hon thnh nu c t nht mt v tr
b m cn trng cng vi th bi cha trong v tr p1 v p3. Chuyn i t3 c
php thc hin nu c t nht mt v tr b m c in y. Khi hon thnh
chuyn i t3, mt th bi s c chuyn t v tr p2 sang v tr p3.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Tun t
Hot ng tun t s c m t v minh ho bi hot ng ca b to v b
s dng thng qua mt b m. B to s sinh ra cc i tng a vo trong mt
b m v s c ly ra bi b s dng. Qu trnh s dng s phi c thc hin
mt cch tun t theo qu trnh to ra i tng. M hnh cho hot ng ny c
din t bi PN nh trong Hnh 6-4 (a). Th bi cha trong v tr p1 c ngha l b
to sn sng thc hin.
Khi cc chuyn i t1 v t2 hon thnh th mt i tng c to ra (mt
th bi tng ng cng s c chuyn vo trong b m m hnh bi v tr p5) v
b to li sn sng tr li. Nu b s dng c nhu cu tiu th (c m hnh bi th
bi cha trong v tr p3 ) v ang c t nht mt i tng trong b m th mt th
bi cha trong v tr p5 s c ly i v chuyn i t3 s hon thnh.

a) b)
Hnh 6-4: hot ng ca b m s dng vi dung lng a)v hn v b) hu hn
Trong cch m t trong Hnh 6-4 (a) th vic to v s dng c thc hin
thng qua mt b m vi gi thit l c dung lng v hn. Trong thc t th cc
b m l hu hn, m t hot ng vi b m loi ny Hnh 6-4 (b) c s
dng. V tr p6 m hnh cc v tr b m cn trng v v tr p5 m hnh cc v tr b
m c in y. Tng s lng cc th bi cha trong cc v tr p5 v p6
phi lun l hng s. Nu mt th bi c gn cho v tr p5 trong du khi to th
b to s khng th to thm i tng chng no b s dng vn cha tiu th i
tng trong b m.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Loi tr xung t
Hai tc v C1 v C2 c php lm vic song song v cng chia s ti
nguyn CS, nhng khng c truy nhp vo ti nguyn ng thi. Gin PN cho
hot ng ny c m t nh trong Hnh 6-5. Cc v tr p1 v p5 biu din cc tc
v C1 v C2 lm vic c lp; v tr p2 v p6 biu din cc yu cu ca cc tc v
C1 v C2 mt cch tng ng khi mun truy nhp vo ti nguyn chia s CS; p3 v
p7 biu din CS ang b chim dng bi cc tc v C1 v C2 mt cch tng ng.
V tr p4 m t quyt nh xem tc v no c th truy nhp ti nguyn Cs v trnh
cc v tr p3 v p7 b nh du ng thi. Thc t khi p2 v p6 c nh du th
cc chuyn i t2 v t5 xung t. Vic hon thnh mt trong hai tc v s kho/cm
ln nhau. Vic hon thnh chuyn i t3 hoc t6 s m hnh vic gii phng ngun
ti nguyn chung (chuyn th bi tr li v tr p4) v tr v iu kin lm vic bnh
thng.

Hnh 6-5: hot ng loi tr hai tc v song song chia s chung ti nguyn
bt u lm quen vi nguyn l biu din m hnh ha bng mng Petri
chng ta xt hot ng ca mt h thng ng b gia hot ng to v s dng
mt hng mc (item) thng qua b m nh c mt t trong hnh di.
B to - Producer:
To ra hng mc v
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
b sung vo b m
B s dng (tiu th) - Consumer:
Ly hng mc ra khi b m v
S dng hng mc

Hnh 6-6: hot ng ca h thng gm 1 b to v 1 b s dng
Trong trng hp c nhiu hn mt b s dng th h thng c biu din nh sau:

Hnh 6-7: hot ng ca h thng goomg 1 b to v 2 b s dng
H thng c 2 b m
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

H thng va xt c m hnh ha bi iu kin v s kin. Cc iu kin
c m t bi cc vng trn v nu iu kin tha mn th khi vng trn s c
biu din vi mt chm trn nm trong tng ng vi mt th bi (token).
S kin c k hiu bi cc hp hnh ch nht. Vi mi mt s kin th s tn ti
- mt tp cc iu kin trc v c nhn bit bi cc mi tn i vo cc s
kin t cc iu kin v
- mt tp cc iu kin sau c nhn bit bi cc mi tn i ra khi cc s
kin v i vo cc iu kin .
Mt s kin c th xy ra (c thc thi) khi v ch khi
tt c cc iu kin trc tng ng c tha mn (nhn c th bi) v
tt c cc iu kin sau tng ng cha c tha mn.
Nu mt s kin xy ra th
tt c cc iu kin trc tng ng s b xa b (reset) v
tt c cc iu kin sau tng ng s c thit lp (set).
Vi loi mng biu din nh trn ngi ta gi l mng Petri c bn
(Elementary Net) v k hiu tt l EN.
thun tin v n gin ha trong vic biu din ngi ta c th s dng
cc mi tn c thm trng s nguyn m t h thng c chung nhiu iu kin
trc v sau tng ng cng vi mt s kin hoc iu kin. c bit khi s hng
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
mc trao i gia b to v b s dng ln hn 1. Vi loi mng nh vy ngi ta
phn loi v gi l mng Petri Chuyn i/V tr (Transitions/Places) k hiu tt l
P/T-net.
- Cng tng t nh EN, P/T-net bao gm:
- Cc v tr c k hiu v m t bi cc vng trn: Cc v tr c th cha mt
s nguyn dng cc th bi.
- Cc chuyn i c m t bi cc hnh ch nht: Cc chuyn i s ly i
hoc thm vo s th bi t hoc ti mt v tr.
- Cc mi tn kt ni trc tip gia cc v tr v chuyn i: Cc mi tn c
km theo cc trng s tng ng vi s lng th bi m n c th c ly
ra hoc thm vo trong cc v tr.
Qui c: Mt tp v tr kt ni vi chuyn i thng qua mt mi tn trc
tip theo chiu t v tr ti chuyn i c gi l tp cc tin chuyn i. Ngc
li, mt tp v tr kt ni vi chuyn i thng qua mt mi tn trc tip theo chiu
ngc t v tr ti chuyn i th c gi l tp cc hu chuyn i.
Mt chuyn i c th xy ra (thc hin) khi v ch khi tt c cc v tr trong
tp tin v tr cha mt s lng ti thiu th bi nh c nh ngha bi cc
trng s ca cc mi tn tng ng.
Khi mt chuyn i c thc thi n s
loi b bt s th bi t tp tin v tr bng ng s lng c nh
ngha cho cc trng s ca cc mi tn tng ng v
cng thm vo s lng cc th bi vo tp hu v tr ng bng vi trng s
ca cc mi tn tng ng.
V d biu din m t mt hot ng h thng vi 2 hng mc cn ng b
gia b to v b s dng.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

Hnh 6-8 : hot ng ng b vi 2 hng mc
c th biu din h thng mt cch khoa hc v logic cn c mt nh
ngha y m t bi mng Petri.
Mng iu kin/ s kin
nh ngha: N = (C, E, F ) c gi l mt mng nu v ch nu n tho
mn cc thuc tnh sau:
C v E l cc tp c lp v C E u.
F _(E x C ) (C x E) l quan h nh phn v c gi l quan h lung.
C c gi l cc iu kin v E c gi l cc s kin.
nh ngha: Cho mt mng N v x e (C E) . x := { y | yFx}c gi l tp
cc iu kin trc ca x v x := { y | xFy} c gi l iu kin sau ca x.
Hay ni cch khc l mt iu kin cn phi c tho mn mt s kin
no xy ra th c gi l iu kin trc v mt iu kin c tho mn sau
khi mt s kin no xy ra th c gi l iu kin sau ca s kin .
nh ngha: Cho mt tp (c, e) e C x E
(c, e) c gi l mt vng lp nu cFe . eFc
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Mng N c gi l thun nht nu F khng cha bt k mt vng lp no.
nh ngha : Mt mng c gi l n gin nu khng c bt k hai chuyn
i t1, t2 no c cng tp cc iu kin trc v cc iu kin sau.
Cc mng m khng cha bt k phn t tch bit no cng nh khng c
thm bt k mt hn ch no th c gi l mng iu kin /s kin.
Mng chuyn i/v tr
Trong cc mng iu kin/s kin ch cha nhiu nht l mt token cho mi
mt iu kin. hn ch iu ny tc l mt iu kin c th cha nhiu token v
ngi ta gi l mng chuyn i/v tr. Cc v tr tng ng vi cc iu kin v
cc chuyn i tng ng vi cc s kin trong mng iu kin/s kin.
S lng token cho mi mt iu kin c gi l Marking. V mt ton
hc, Marking chnh l mt nh x ton hc cho php chuyn mt tp cc v tr vo
mt tp cc s t nhin c m rng bi cc biu tng c bit .
V d : M t chng trnh iu khin lung tu in bng mng Petrinet
iu kin/s kin trnh trng hp xung t trn mt ng ray theo hai hng
tu chy.

Cc s kin :
- Tu mun vo ng ray theo chiu sang phi.
- Tu ang chuyn ng trn ng ray theo chiu phi.
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
- Tu thot ra khi ng ray theo chiu phi.
- Tu mun vo ng ray theo chiu sang tri.
- Tu ang chuyn ng trn ng ray theo chiu tri.
- Tu thot ra khi ng ray theo chiu tri.
Cc iu kin :
- Tu vo ng ray t chiu bn tri
- Tu ri khi ng ray theo chiu phi
- Tu ri ng ray
- Tu vo ng ray t chiu bn phi
- Tu ri khi ng ray theo chiu tri
Token : ng ray sn sng cho tu vo theo mt trong hai chiu

6.2.4 Ngn ng m t phn cng (VHDL)
VHDL (Very High Speed Integrated Circuit Hardware Description Lanuage)
l mt ngn ng chung m t cc thit k phn cng mc phn t logic c bn
cu thnh nn h thng v c pht trin bi t chc quc phng M. Mc
ch chnh l thun tin cho vic trao i d liu thit k phn cng theo mt
nh dng chun m mi ngi c th hiu v thng dch, to iu kin thun li
trong vic phi hp hay hp tc trong cc d n thit k. c bit n rt thun tin
trong vic chuyn i hay tng hp bin dch thnh mt dng ngn ng thc thi
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
phn cng thc. iu ny rt kh thc hin bng cc ngn ng bc cao nh C
nhng vi VHDL iu ny chnh l u im ni bt v l th mnh trong vic m
hnh ho h thng, m t mt cch chi tit cc phn t cng cu thnh tham gia trong
h thng.
VHDL l mt chun IEEE (Std-1076) c s h tr bi rt nhiu nh
cung cp pht trin phn cng. ng dng mt cch chuyn nghip ngn ng ny l
phc v cho vic m t cc mch ASICs phc hp, ch to thc thi cc mch
FPGA...
Ngn ng VHDL c th c hiu kh d dng vi cu trc c php r rng
gn ging nh ngn ng Visual Basic v Pascal. N c th pht huy c th mnh
v c php nh ngha xy dng kiu d liu mi v h tr cho vic lp trnh
theo nhm. Vi xu th hin nay cc nhm pht trin c th thc thi vi iu kin
cch xa nhau v khong cch a l, v vy vic phi hp v thit k theo nhm l rt
cn thit.
mainstream applications (More Flash, Less Cash, Circuit Cellar, 178, May
2005). I agree with Tom, but Ill go further and predict that VHDL will become
the premier technology used to define FPGA content either as output from
design tools or with direct programming. In combination with VHDL, FPGAs
provide a lowcost approach to defining complex hardware designs that were
inconceivable only a few decades ago. Perhaps most importantly, using VHDL to
define hardware is fun
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
6.3 Thit k phn mm iu khin
6.3.1 M hnh thc thi b iu khin nhng

Hnh 6-9: h thng iu khin s
thc thi mt b iu khin s trn thit b vt l thc phi i hi xt
xem b iu khin vi m hnh hm truyn cho c th hin thc ha c khng.
iu kin phi xt thc ra l m bo rng khng c u ra no ca h thng li
xut hin trc khi c tn hiu vo. Hay ni cch khc h thng xy dng phi tun
th tnh nhn qu.
Nu khai trin hm truyn ca b iu khin s c m t dng tng qut

thnh chui ly tha theo z th n phi khng c php cha bt k phn t no
cha ly tha dng ca z. Hay ni cch khc l b iu khin c m t nh (1.5)
phi c bc 0 tc l bc ca t s phi nh hn hoc bng bc ca mu s ( n m ).
Sau khi thit k c b iu khin s th vic cn li l lp trnh v np
vo cc b iu khin vt l kh trnh. Thc cht qu trnh ny l thc thi hm
truyn ca b iu khin s bng lp trnh s trn cc b iu khin vt l c.
y chng ta s ch yu quan tm n vic trin khai chun b cho bc lp trnh
cc hm truyn ca b iu khin s. Xut pht t m t hm truyn dng tng qut
ca b iu khin s
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

trong , a
0
0 nu b
0
0 ; m v n l cc s nguyn dng.
C th trin khai thc thi mt hm truyn ca b iu khin s theo 3 cch
nh sau:
Trin khai lp trnh s trc tip
trin khai lp theo phng php lp trnh trc tip th hm truyn b iu
khin cho biu din trong min z phi c chuyn i v dng hm truyn ri
rc

T ng thc (1.7) d dng tnh ra c gi tr ca u ra u
*
(t ) ca b iu
khin s cho theo cc gi tr hin ti v qu kh ca u vo e
*
(t ) cng nh cc
gi tr qu kh ca chnh n

thc hin b iu khin ny yu cu phi lu tr cc gi tr qu kh ca
u vo v u ra ca b iu khin. Vi b iu khin cho yu cu phi c n -
m gi tr cn phi lu tr hay ni cch khc cn phi c n - m phn t lu tr.
Mt phng php khc trin khai lp trnh trc tip l s dng c ch tch
trc tip u vo v u ra ca b iu khin theo mt bin trung gian X(z). Khng
mt tnh tng qut nu chng ta nhn c t v mu ca hm truyn b iu khin s
cho vi mt bin X(z). T rt ra c hm truyn ca u vo E(z) theo X(z)
v hm truyn ca u ra U(z) theo X(z). Phng php ny thc hin nh sau:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

Theo phng php ny yu cu s phn t lu tr chnh bng gi tr n, bng
bc ca a thc mu s trong hm truyn b iu khin s cho. T cc ng thc
(1.9) v (1.10) ta cng d dng xy dng c gin trng thi m t hm truyn
ca b iu khin s (gi thit m = n = 3 ).

Hnh 6-10: gin trng thi ca h thng s
Trin khi lp trnh s ghp tng
Cch trin khai ny yu cu chuyn i b iu khin v dng tch ca cc
hm truyn n gin c th d dng thc hin bng cc chng trnh n gin.
Hay ni cch khc b iu khin s cho l kt qu ghp tng ca nhiu b iu
khin nh.
Trin khai lp trnh s song song
B iu khin cho s c tch ra thnh tng ca cc b iu khin n
gin v c th thc hin lp trnh song song cho cc b iu khin .
6.3.2 V d trin khai b iu khin PID s
Xp x ho thnh phn vi tch phn
C 3 phng php xp x gin on ph bin p dng cho cc thnh phn
tch phn: vt trc (forward), vt sau (backward), v trapezoidal
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Xp x sai phn vt trc

p dng chuyn i z cho (1.11) ta thu c

D xp x ho tch phn s l:

Hnh 6-11: xp x sai phn vt trc
Xp x sai phn vt sau
Tng t nh sai phn vt trc ta c xp x tch phn nh sau:

Hnh 6-12: xp x sai phn vt sau
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
Xp x Trapezoidal
Php xp x tch phn thu c s l:


Hnh 6-13: xp x trapezoidan
ng thc l tng m t b iu khin PID

trong , K l h s khuch i, T
I
l hng s thi gian tch phn, T
D
l hng s
thi gian vi phn.
Trong trng hp chu k trch mu nh, ng thc (1.16) c th c
chuyn sang dng ng thc sai phn bng phng php ri rc ho. Trong ,
thnh phn vi phn c th c xp x nh php tnh sai phn bc nht v thnh
phn tch phn c xp x dng vt trc. Bng php ri rc ny ta thu c
ng thc m t b iu khin PID s nh sau:

T ng thc (1.17) ta d dng nhn thy rng thc thi b iu khin PID
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
cn thng tin ca tt c cc sai lch e trong qu kh. thun tin cho vic thc
hin lp trnh, dng qui s ph hp hn v c th rt ra t (1.17) nh sau:

T (1.17) v (1.18) ta rt ra c algorithm iu khin ca PID s:

M hnh b iu khin dng hm truyn ta c:

trong , thnh phn tch phn c th xp x theo mt trong ba cch nh m t
trong phn 6.1, thnh phn vi phn c th c xp x nh sau:

t (1.21) c th xp x hm truyn thnh phn vi phn

Nh vy hm truyn ca b iu khin PID s c th c xp x theo mt
trong 3 dng nh sau:
Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1

Faculty of Electronics & Electrical Engineering Embedded Systems

This Document is Prepared by Dr. Bui Trung Thanh


1
TI LIU THAM KHO

You might also like