Professional Documents
Culture Documents
Giả Lập Hệ Thống Nhúng Trên Vi Mạch Lập Trình Được
Giả Lập Hệ Thống Nhúng Trên Vi Mạch Lập Trình Được
LÃ CÔNG HUẤN
KỸ THUẬT ĐIỆN TỬ
Hà Nội, 2011
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LÃ CÔNG HUẤN
KỸ THUẬT ĐIỆN TỬ
Hà Nội, 2011
1
Môc lôc
Më ®Çu ......................................................................................................................................8
T
03 T
03
Ch¬ng 1.
T
03 T
03 TTæng quan hÖ thèng ®iÒu khiÓn nhóng. ......................................9
03 T
03
1.1.
T
03 T
03 Giíi thiÖu hÖ thèng nhóng: ..............................................................................9
T
03 T
03
1.1.1.
T
03 T
03 C¸c kh¸i niÖm vÒ hÖ nhóng ...................................................................................9
T
03 T
03
1.1.2.
T
03 T
03 LÜnh vùc øng dông cña hÖ nhóng. ......................................................................13
T
03 T
03
1.1.3.
T
03 T
03 §Æc ®iÓm c«ng nghÖ vµ xu thÕ ph¸t triÓn cña hÖ nhóng..................................... 13
T
03 T
03
1.2.
T
03 T
03 CÊu tróc phÇn cøng cña hÖ nhóng. ............................................................17
T
03 T
03
1.2.1.
T
03 T
03 C¸c thµnh phÇn kiÕn tróc c¬ b¶n. ....................................................................... 17
T
03 T
03
1.2.2.
T
03 T
03 Mét sè nÒn phÇn cøng nhóng th«ng dông. ......................................................... 51
T
03 T
03
1.3.
T
03 T
03 ThiÕt kÕ hÖ nhóng: tæ hîp phÇn cøng – phÇn mÒm. ............................. 64
T
03 T
03
1.3.1.
T
03 T
03 Quy tr×nh ph¸t triÓn. ........................................................................................... 64
T
03 T
03
1.3.2.
T
03 T
03 Ph©n tÝch yªu cÇu vµ m« h×nh hãa sù kiÖn..........................................................65
T
03 T
03
Ch¬ng 2.
T
03 T
03 TVi m¹ch lËp tr×nh ®îc. ..................................................................... 79
03 T
03
2.1.
T
03 T
03 Giíi thiÖu chung vÒ FPGA vµ ng«n ng÷ VHDL. ......................................... 79
T
03 T
03
2.1.1.
T
03 T
03 Kh¸i niÖm vµ øng dông FPGA. ........................................................................... 79
T
03 T
03
2.1.2.
T
03 T
03 KiÕn tróc FPGA. ................................................................................................. 81
T
03 T
03
2.1.3.
T
03 T
03 Tr×nh tù thiÕt kÕ mét chip ................................................................................... 86
T
03 T
03
2.1.4.
T
03 T
03 Ng«n ng÷ m« t¶ phÇn cøng VHDL ..................................................................... 90
T
03 T
03
2.2.
T
03 T
03 Giíi thiÖu KIT FPGA cña mét sè h·ng. ......................................................... 92
T
03 T
03
2.2.1.
T
03 T
03 Giíi thiÖu m¹ch ph¸t triÓn XST 3S 1000 cña h·ng XESS .................................. 92
T
03 T
03
2.2.2.
T
03 T
03 Giíi thiÖu Board DE2 cña Altera........................................................................96
T
03 T
03
Ch¬ng 3.
T
03 T
03 TM« h×nh ng«i nhµ th«ng minh. ..................................................... 100
03 T
03
3.1.
T
03 T
03 Giíi thiÖu chung. ............................................................................................... 100
T
03 T
03
3.1.1.
T
03 T
03 T×nh h×nh nghiªn cøu trªn thÕ giíi. ..................................................................100
T
03 T
03
2
3.1.2.
T
03 T
03 T×nh h×nh nghiªn cøu trong níc. ....................................................................102
T
03 T
03
3.2.
T
03 T
03 Gi¶i ph¸p iBMS cho nhµ th«ng minh. ......................................................... 104
T
03 T
03
3.2.1.
T
03 T
03 Tæng quan. ........................................................................................................104
T
03 T
03
3.2.2.
T
03 T
03 Thµnh phÇn, chøc n¨ng vµ nhiÖm vô................................................................ 105
T
03 T
03
3.2.3.
T
03 T
03 C«ng nghÖ vµ tiªu chuÈn. .................................................................................. 107
T
03 T
03
3.2.4.
T
03 T
03 Chi phÝ ®Çu t vµ lîi Ých. ................................................................................... 108
T
03 T
03
3.2.5.
T
03 T
03 C¸c khuyÕn nghÞ................................................................................................ 109
T
03 T
03
Ch¬ng 4.
T
03 T
03 ThÖ thèng nhµ th«ng minh trªn FPGA. ......................................112
03 T
03
4.1.
T
03 T
03 Ph©n tÝch yªu cÇu. ............................................................................................ 112
T
03 T
03
4.1.1.
T
03 T
03 Ph©n tÝch yªu cÇu chøc n¨ng............................................................................. 112
T
03 T
03
4.1.2.
T
03 T
03 Ph©n tÝch yªu cÇu phi chøc n¨ng. .....................................................................115
T
03 T
03
4.2.
T
03 T
03 ThiÕt kÕ hÖ thèng. ............................................................................................116
T
03 T
03
4.2.1.
T
03 T
03 M« h×nh tæng qu¸t hÖ thèng.............................................................................. 116
T
03 T
03
4.2.2.
T
03 T
03 ThiÕt kÕ phÇn cøng............................................................................................ 118
T
03 T
03
4.2.3.
T
03 T
03 ThiÕt kÕ phÇn mÒm. ..........................................................................................137
T
03 T
03
H×nh 1-2: Ph©n bæ vµ quan hÖ gi÷a hÖ nhóng vµ thêi gian thùc .......................................... 12
T
03 T
03
H×nh 1-3: KiÕn tróc ®iÓn h×nh cña c¸c chip VXL/VDK nhóng ........................................... 17
T
03 T
03
H×nh 1-5: M« t¶ vµ tr¹ng th¸i tÝn hiÖu ho¹t ®éng trong VXL.............................................. 21
T
03 T
03
H×nh 1-6: M« t¶ tr¹ng th¸i tÝn hiÖu logic t¨ng hoÆc gi¶m ................................................... 22
T
03 T
03
H×nh 1-7: M« t¶ tr¹ng th¸i vµ ®é trÔ lan truyÒn tÝn hiÖu ..................................................... 22
T
03 T
03
H×nh 1-9: HiÖn tîng Metastabilit trong ho¹t ®éng cña Triger D ....................................... 23
T
03 T
03
H×nh 1-14: Nguyªn lý ®iÒu khiÓn t¸ch kªnh truy nhËp bus ®Þa chØ vµ bus d÷ liÖu ............... 28
T
03 T
03
H×nh 1-15: Nguyªn lý cÊu t¹o vµ ho¹t ®éng xãa cña EPROM ............................................ 29
T
03 T
03
H×nh 1-19: Nguyªn lý ghÐp nèi (më réng) RAM víi VXL ................................................31
T
03 T
03
H×nh 1-21: S¬ ®å nguyªn lý ho¹t ®éng cña bé ®Þnh thêi chã canh ...................................... 34
T
03 T
03
H×nh 1-22: Nguyªn lý ho¹t ®éng cña bé ®Þnh thêi chã canh............................................... 35
T
03 T
03
H×nh 1-29: Thanh ghi tõ ®iÒu khiÓn chän chÕ ®é ho¹t ®éng cho 82C55A ........................... 43
T
03 T
03
H×nh 1-31: CÊu tróc nguyªn lý ®iÓn h×nh cña mét cæng vµo/ra logic giao diÖn nèi tiÕp....... 46
T
03 T
03
H×nh 1-32: CÊu tróc ®¬n gi¶n hãa cña USART .................................................................. 46
T
03 T
03
H×nh 1-35: KÕt nèi nguyªn lý truyÒn th«ng SPI gi÷a mét Master vµ mét Slave ................... 49
T
03 T
03
H×nh 1-36: S¬ ®å kÕt nèi truyÒn thèng SPI cña mét ®¬n vÞ Master vµ nhiÒu ®¬n vÞ Slave .... 50
T
03 T
03
H×nh 1-37: CÊu tróc nguyªn lý cña V§K víi cÊu tróc Havard............................................ 52
T
03 T
03
H×nh 1-39: S¬ ®å khèi chøc n¨ng kiÕn tróc PIC 16F873A .................................................. 53
T
03 T
03
H×nh 1-40: Gi¶n ®å khèi chøc n¨ng cña DSP TMS320C28xx ............................................55
T
03 T
03
H×nh 1-47: H×nh ¶nh cña Chip cã c¸c cét lµ c¸c khèi RAM nhóng ....................................63
T
03 T
03
H×nh 1-52: Ho¹t ®éng cña bé ®Õm víi dung lîng h÷u h¹n ............................................... 69
T
03 T
03
H×nh 1-54: Ho¹t ®éng lo¹i trõ cña hai t¸c vô song song chia sÎ chung tµi nguyªn .............. 71
T
03 T
03
H×nh 1-58: Ho¹t ®éng ®ång bé víi hai m¹ng môc ............................................................. 75
T
03 T
03
H×nh 2-5: CÊu tróc c¸c thµnh phÇn cña Spartan 3A ............................................................ 86
T
03 T
03
H×nh 2-7: Quy tr×nh thiÕt kÕ Chip dùa trªn VHDL ............................................................. 92
T
03 T
03
H×nh 2-15: øng dông DE2 m¸y karaoke vµ ch¬i nh¹c tõ card SD ....................................... 99
T
03 T
03
H×nh 3-2: HÖ thèng BMS kiÓu cò víi c¸p truyÒn dÉn ®éc lËp. .......................................... 107
T
03 T
03
H×nh 3-3: Hª thèng BMS kiÓu míi víi c¸p truyÒn dÉn tÝch hîp chuÈn TCP/IP .................108
T
03 T
03
H×nh 4-12: Giao diÖn kÕt nèi Modem TC35i víi PC ........................................................ 129
T
03 T
03
H×nh 4-13: PhÇn cµi ®Æt cæng COM ®Ó kÕt nèi víi Modem GSM ..................................... 130
T
03 T
03
H×nh 4-14: PhÇn ph¶n håi cña Modem GSM ................................................................... 130
T
03 T
03
H×nh 4-15: PhÇn liªn quan ®Õn cuéc gäi .......................................................................... 130
T
03 T
03
H×nh 4-18: Xung ®iÒu khiÓn tõ xa tiÕt kiÖm n¨ng lîng................................................... 132
T
03 T
03
H×nh 4-20: Khung truyÒn hång ngo¹i tiÕt kiÖm n¨ng lîng ............................................. 133
T
03 T
03
H×nh 4-21: S¬ ®å ®Çu vµo c¶m biÕn qua c¸ch ly quang .................................................... 133
T
03 T
03
H×nh 4-22: S¬ ®å ch©n kÕt nèi víi bo m¹ch FPGA vµ kÕt nèi ba m¹ch kh«ng d©y ............ 134
T
03 T
03
H×nh 4-23: S¬ ®å kÕt nèi víi Max 232 ®Ó kÕt nèi víi Modem TC35i................................ 134
T
03 T
03
H×nh 4-24: S¬ ®å kÕt nèi USB víi m¸y tÝnh PC................................................................ 135
T
03 T
03
H×nh 4-25: S¬ ®å m¹ch FPGA kÕt nèi ROM, RAM vµ FLASH ........................................ 135
T
03 T
03
H×nh 4-26: S¬ ®å kÕt nèi mµn h×nh LCD vµ chÝp nhí EPROM ......................................... 136
T
03 T
03
H×nh 4-29: Lu ®å thuËt to¸n cho ch¬ng tr×nh chÝnh ...................................................... 141
T
03 T
03
H×nh 4-30: Lu ®å thuËt to¸n kiÓm tra vµ xö lý tin tøc ®Õn SMS ...................................... 141
T
03 T
03
H×nh 4-31: Lu ®å thuËt to¸n kiÓm tra vµ xö lý d÷ liÖu UART_USB ................................ 142
T
03 T
03
H×nh 4-32: Lu ®å thuËt to¸n hiÓn thÞ th«ng tin trªn LCD 2x16 ....................................... 142
T
03 T
03
H×nh 4-33: Lu ®å thuËt to¸n kiÓm tra vµ xö lý phÝm nhÊn .............................................. 143
T
03 T
03
H×nh 4-34: Lu ®å thuËt to¸n kiÓm tra vµ xö lý lèi vµo c¶m biÕn ..................................... 143
T
03 T
03
7
Më ®Çu
Ngày nay, viÖc nghiªn cøu, ph¸t triÓn vµ øng dông c¸c c«ng nghÖ hÖ
thèng nhóng vµo cuéc sèng ®ang ngµy cµng ph¸t triÓn kh«ng ngõng. ë ViÖt
Nam, ngµy 19/07/2010, Thñ tíng ChÝnh phñ ®· ký quyÕt ®Þnh sè
49/2010/QD-TTg vÒ viÖc phª duyÖt danh môc c«ng nghÖ cao ®îc u tiªn
ph¸t triÓn. Trong danh môc cña QuyÕt ®Þnh nµy, c«ng nghÖ c¸c hÖ thèng
nhóng cã vÞ trÝ ®øng thø hai. §iÒu ®ã ®ñ cho thÊy viÖc u tiªn ph¸t triÓn hÖ
thèng nhóng ë ViÖt Nam ®ang ngµy cµng ®îc quan t©m.
Trong thêi gian võa qua, ®îc sù híng dÉn cña TS. NguyÔn §øc Minh,
em ®· cã nh÷ng nghiªn cøu vÒ ®Ò tµi “Gi¶ lËp hÖ thèng nhóng trªn vi m¹ch lËp
tr×nh ®îc”. Th«ng qua ®Ò tµi lu©n v¨n nµy, em ®· cã nh÷ng t×m hiÓu vÒ hÖ
thèng nhóng, c¸c vi m¹ch lËp tr×nh ®îc. Th«ng qua ®ã, ®· ¸p dông vµo viÖc
gi¶ lËp mét hÖ thèng nhóng “Ng«i nhµ th«ng minh” th«ng qua viÖc sö dông
kit Cyclone 2 vµ kit TC35i. KÕt qu¶ cña nghiªn cøu nµy, em ®· lµm thö
nghiÖm vµ ®a ra mét s¶n phÈm m« h×nh víi môc ®Ých gi¶ lËp hÖ thèng dùa
trªn gi¶i ph¸p iBMS.
Trong thêi gian thùc hiÖn luËn v¨n nµy, em rÊt c¶m ¬n sù chØ b¶o, híng
dÉn tËn t×nh cña TS. NguyÔn §øc Minh.
Do mét sè ®iÒu kiÖn nghiªn cøu cßn h¹n chÕ, nªn luËn v¨n nµy vÉn cßn
mét sè thiÕu sãt nhÊt ®Þnh. RÊt mong nhËn ®îc sù ®ãng gãp cña quý thÇy, c«
vµ c¸c b¹n ®Ó luËn v¨n ®îc hoµn thiÖn h¬n.
Sinh viªn
L· C«ng HuÊn
9
Kû nguyªn c«ng nghÖ míi ®· vµ ®ang tiÕp tôc ph¸t triÓn kh«ng ngõng
nh»m th«ng minh hãa, hiÖn ®¹i hãa th«ng suèt c¸c hÖ thèng. Cã thÓ nãi
®¸nh dÊu sù ra ®êi cña c¸c bé vi xö lý, vi ®iÒu khiÓn. Nã ®îc ®¸nh dÊu
bëi sù ra ®êi cña ChÝp vi xö lý ®Çu tiªn 4004 vµo n¨m 1971 cho môc ®Ých
tÝnh th¬ng m¹i cña mét c«ng ty NhËt B¶n Busicom vµ sau ®ã ®· ®îc
ch¾p c¸nh vµ ph¸t trÓn vît bËc bëi Intel ®Ó trë thµnh c¸c bé siªu xö lý nh
c¸c Chip ®îc øng dông cho PC nh ngµy nay. ThËp kû 80 cã thÓ ®îc coi
lµ khëi ®iÓm b¾t ®Çu kû nguyªn cña sù bïng næ vÒ ph¸t triÓn hÖ nhóng. Tõ
®ã khëi nguån cho lµn sãng ra ®êi cña hµng lo¹t c¸c chñng lo¹i vi xö lý vµ
g¾n lion víi c¸c hÖ nhóng ®Ó th©m nhËp réng kh¾p trong c¸c øng dông
hµng ngµy cña cuéc sèng chóng ta vÝ dô nh c¸c thiÕt bÞ ®iÖn tö sö dông
cho sinh ho¹t hµng ngµy (lß vi sãng, TV, tñ l¹nh, m¸y giÆt,…) vµ v¨n
phßng lµm viÖc (m¸y fax, m¸y in, m¸y ®iÖn tho¹i,…). C¸c bé vi xö lý ®îc
sö dông trong c¸c hÖ thèng nhóng hiÖn nay vît xa so víi PC vÒ sè lîng
chñng lo¹i (chiÕm ®Õn 79% sè c¸c vi xö lý ®ang tån t¹i) vµ vÉn cßn tiÕp tôc
ph¸t triÓn ®Ó nh»m ®¸p øng vµ tháa m·n rÊt nhiÒu øng dông ®a d¹ng.Trong
sè ®ã vÉn cßn øng dông c¶ c¸c Chip vi xö lý 8 bit, 16 bit vµ hiÖn nay chñ
yÕu vÉn lµ 32 bit (chiÕm kho¶ng 75%). G¾n lion víi sù ph¸t triÓn phÇn
cøng, phÇn mÒm còng ®· ph¸t triÓn víi tèc ®é nhanh kh«ng thua kÐm thËm
chÝ sÏ t¨ng nhanh h¬n rÊt nhiÒu sù ph¸t triÓn hÖ nhóng.
Trong thÕ giíi thùc cña chóng ta bÊt kú mét thiÕt bÞ hay hÖ thèng
®iÖn/®iÖn tö cã kh¶ n¨ng xö lý th«ng tin vµ ®iÒu khiÓn ®Òu cã thÓ tiÒm Èn
10
trong ®ã mét thiÕt bÞ hay hÖ nhóng, vÝ dô nh c¸c thiÕt bÞ truyÒn th«ng,
thiÕt bÞ ®o lêng ®iÒu khiÓn, c¸c thiÕt bÞ phôc vô sinh ho¹t hµng ngµy nh
lß vi sãng, m¸y giÆt, camera…RÊt dÔ dµng ®Ó cã thÓ kÓ ra hµng lo¹t c¸c
thiÕt bÞ hay hÖ thèng nh vËy ®ang tån t¹i quanh ta, chóng lµ hÖ nhóng.
VËy hÖ nhóng thùc chÊt lµ g× vµ nªn hiÓu thÕ nµo vÒ hÖ nhóng? HiÖn nay
còng cha cã mét ®Þnh nghÜa nµo thùc sù tho¶ ®¸ng ®Ó ®îc chuÈn ho¸ vµ
thõa nhËn réng r·i cho hÖ nhóng mµ vÉn chØ lµ nh÷ng kh¸i niÖm diÔn t¶ vÒ
chóng th«ng qua nh÷ng ®Æc thï chung. Tuy nhiªn ë ®©y chóng ta cã thÓ
hiÓu hÖ nhóng lµ mét phÇn hÖ thèng xö lý th«ng tin nhóng trong c¸c hÖ
thèng lín, phøc hîp vµ ®éc lËp vÝ dô nh trong «t«, c¸c thiÕt bÞ ®o lêng,
®iÒu khiÓn, truyÒn th«ng vµ thiÕt bÞ th«ng minh nãi chung. Chóng lµ nh÷ng
tæ hîp cña phÇn cøng vµ phÇn mÒm ®Ó thùc hiÖn mét hoÆc mét nhãm chøc
n¨ng chuyªn biÖt, cô thÓ (Tr¸i ngîc víi m¸y tÝnh PC mµ chóng ta thêng
thÊy ®îc sö dông kh«ng ph¶i cho mét chøc n¨ng mµ lµ rÊt nhiÒu chøc
n¨ng hay phôc vô chung cho nhiÒu môc ®Ých). PC thùc chÊt l¹i lµ mét hÖ
thèng lín, tæ hîp cña nhiÒu hÖ thèng nhóng vÝ dô nh card mµn h×nh, ©m
thanh, modem, æ cøng, bµn phÝm… ChÝnh ®iÒu nµy lµm chóng ta dÔ lóng
tóng nÕu ®îc hái nªn hiÓu thÕ nµo vÒ PC, cã ph¶i lµ hÖ nhóng hay kh«ng.
Trong c¸c bµi to¸n ®iÒu khiÓn vµ øng dông chóng ta rÊt hay gÆp thuËt
ng÷ “thêi gian thùc”. Thêi gian thùc cã ph¶i lµ thêi gian ph¶n ¸nh vÒ ®é trung
thùc cña thêi gian hay kh«ng? Thêi gian thùc cã ph¶i lµ hiÓn thÞ chÝnh x¸c vµ
®ång bé theo ®óng nh nhÞp ®ång hå ®Õm thêi gian hay kh«ng? Kh«ng ph¶i
hoµn toµn nh vËy! Thùc chÊt, theo c¸ch hiÓu nÕu nãi trong c¸c hÖ thèng kü
thuËt ®Æc biÖt c¸c hÖ thèng yªu cÇu kh¾t khe vÒ sù rµng buéc thêi gian, thêi
gian thùc ®îc hiÓu lµ yªu cÇu cña hÖ thèng ph¶i ®¶m b¶o tho¶ m·n vÒ tÝnh
tiÒn ®Þnh trong ho¹t ®éng cña hÖ thèng. TÝnh tiÒn ®Þnh nãi lªn hµnh vi cña hÖ
thèng thùc hiÖn ®óng trong mét khung thêi gian cho tríc hoµn toµn x¸c ®Þnh.
Khung thêi gian nµy ®îc quyÕt ®Þnh bëi ®Æc ®iÓm hoÆc yªu cÇu cña hÖ thèng,
cã thÓ lµ vµi gi©y vµ còng cã thÓ lµ vµi nano gi©y hoÆc nhá h¬n n÷a. ë ®©y
chóng ta ph©n biÖt yÕu tè thêi gian g¾n liÒn víi kh¸i niÖm vÒ thêi gian thùc.
Kh«ng ph¶i hÖ thèng thùc hiÖn rÊt nhanh lµ sÏ ®¶m b¶o ®îc tÝnh thêi gian
thùc v× nhanh hay chËm hoµn toµn lµ phÐp so s¸nh cã tÝnh t¬ng ®èi v× mili
gi©y cã thÓ lµ nhanh víi hÖ thèng ®iÒu khiÓn nhiÖt nhng l¹i lµ chËm ®èi víi
c¸c ®èi tîng ®iÒu khiÓn ®iÖn nh dßng, ¸p…. H¬n thÕ n÷a nÕu chØ nhanh
kh«ng th× cha ®ñ mµ ph¶i ®¶m b¶o duy tr× æn ®Þnh b»ng mét c¬ chÕ ho¹t
®éng tin cËy. ChÝnh v× vËy hÖ thèng kh«ng kiÓm so¸t ®îc ho¹t ®éng cña nã
(bÊt ®Þnh) th× kh«ng thÓ lµ mét hÖ thèng ®¶m b¶o tÝnh thêi gian thùc mÆc dï
hÖ thèng ®ã cã thÓ cho ®¸p øng rÊt nhanh, thËm chÝ nhanh h¬n rÊt nhiÒu so víi
yªu cÇu ®Æt ra. Mét vÝ dô minh ho¹ tiªu biÓu ®ã lµ c¬ chÕ truyÒn th«ng d÷ liÖu
qua ®êng truyÒn chuÈn Ethernet truyÒn thèng, mÆc dï ai còng biÕt tèc ®é
truyÒn lµ rÊt nhanh nhng vÉn kh«ng ph¶i hÖ ho¹t ®éng thêi gian thùc v×
kh«ng tho¶ m·n tÝnh tiÒn ®Þnh trong c¬ chÕ truyÒn d÷ liÖu (cã thÓ lµ rÊt nhanh
vµ còng cã thÓ lµ rÊt chËm nÕu cã sù canh tr¹nh vµ giao th«ng ®êng truyÒn bÞ
nghÏn).
12
Ngêi ta ph©n ra lµm hai lo¹i ®èi víi kh¸i niÖm thêi gian thùc lµ cøng
(hard real-time) vµ mÒm (soft real-time). Thêi gian thùc cøng lµ khi hÖ thèng
ho¹t ®éng víi yªu cÇu tho¶ m·n sù rµng buéc trong khung thêi gian cøng tøc
lµ nÕu vi ph¹m th× sÏ dÉn ®Õn ho¹t ®éng cña toµn hÖ thèng bÞ sai hoÆc bÞ ph¸
huû. VÝ dô vÒ ho¹t ®éng ®iÒu khiÓn cho mét lß ph¶n øng h¹t nh©n, nÕu chËm
ra quyÕt ®Þnh cã thÓ dÉn ®Õn th¶m ho¹ g©y ra do ph¶n øng ph©n h¹ch vµ dÉn
®Õn bïng næ c¶ hÖ thèng. Thêi gian thùc mÒm lµ khi hÖ thèng ho¹t ®éng víi
yªu cÇu tho¶ m·n rµng buéc trong khung thêi gian mÒm, nÕu vi ph¹m vµ sai
lÖch n»m trong kho¶ng cho phÐp th× hÖ thèng vÉn cã thÓ ho¹t ®éng ®îc vµ
chÊp nhËn ®îc. VÝ dô nh hÖ thèng ph¸t thanh truyÒn h×nh, nÕu th«ng tin
truyÒn ®i tõ tr¹m ph¸t tíi ngêi nghe/nh×n chËm mét vµi gi©y th× còng kh«ng
¶nh hëng ®¸ng kÓ ®Õn tÝnh thêi sù cña tin ®îc truyÒn ®i vµ hoµn toµn ®îc
chÊp nhËn bëi ngêi theo dâi.
Thùc tÕ thÊy r»ng hÇu hÕt hÖ nhóng lµ c¸c hÖ thêi gian thùc vµ hÇu hÕt
c¸c hÖ thêi gian thùc lµ hÖ nhóng. §iÒu nµy ph¶n ¸nh mèi quan hÖ mËt thiÕt
gi÷a hÖ nhóng vµ thêi gian thùc vµ tÝnh thêi gian thùc ®· trë thµnh nh mét
thuéc tÝnh tiªu biÓu cña hÖ nhóng. V× vËy hiÖn nay khi ®Ò cËp tíi c¸c hÖ nhóng
ngêi ta ®Òu nãi tíi ®Æc tÝnh c¬ b¶n cña nã lµ tÝnh thêi gian thùc.
Chóng ta cã thÓ kÓ ra ®îc rÊt nhiÒu c¸c øng dông cña hÖ thèng nhóng
®ang ®îc sö dông hiÖn nay, vµ xu thÕ sÏ cßn tiÕp tôc t¨ng nhanh. Mét sè c¸c
lÜnh vùc vµ s¶n phÈm thÞ trêng réng lín cña c¸c hÖ nhóng cã thÓ ®îc nhãm
nh sau:
• TruyÒn th«ng
• ThiÕt bÞ y tÕ
• R«bèt
1.1.3. §Æc ®iÓm c«ng nghÖ vµ xu thÕ ph¸t triÓn cña hÖ nhóng.
1.1.3.1. §Æc ®iÓm c«ng nghÖ.
C¸c hÖ thèng nh vËy ®Òu cã chung mét sè ®Æc ®iÓm nh yªu cÇu vÒ kh¶
n¨ng thêi gian thùc, ®é tin cËy, tÝnh ®éc lËp vµ hiÖu qu¶. Mét c©u hái ®Æt ra lµ
t¹i sao hÖ thèng nhóng l¹i ph¸t triÓn vµ ®îc phæ cËp mét c¸ch nhanh chãng
nh hiÖn nay. C©u tr¶ lêi thùc ra n»m ë c¸c yªu cÇu t¨ng lªn kh«ng ngõng
trong c¸c øng dông c«ng nghÖ hiÖn nay. Mét trong nh÷ng yªu cÇu c¬ b¶n ®ã
lµ:
Kh¶ n¨ng ®éc lËp vµ th«ng minh ho¸: §iÒu nµy ®îc chØ râ h¬n th«ng
qua mét sè c¸c thuéc tÝnh yªu cÇu, cô thÓ nh:
§é tin cËy
Kh¶ n¨ng b¶o tr× vµ n©ng cÊp
14
HiÖu qu¶: Yªu cÇu nµy ®îc thÓ hiÖn th«ng qua mét sè c¸c ®Æc ®iÓm cña
hÖ thèng nh sau:
Ph©n ho¹ch t¸c vô vµ chøc n¨ng ho¸: C¸c bé vi xö lý trong c¸c hÖ nhóng
thêng ®îc sö dông ®Ó ®¶m nhiÖm vµ thùc hiÖn mét hoÆc mét nhãm chøc
n¨ng rÊt ®éc lËp vµ còng ®Æc thï cho tõng phÇn chøc n¨ng cña hÖ thèng lín
mµ nã ®îc nhóng vµo. VÝ dô nh mét vi xö lý thùc hiÖn mét phÇn ®iÒu khiÓn
cho mét chøc n¨ng thu thËp, xö lý vµ hiÓn thÞ cña «t« hay hÖ thèng ®iÒu khiÓn
qu¸ trÝnh. Kh¶ n¨ng nµy lµm t¨ng thªm sù chuyªn biÖt ho¸ vÒ chøc n¨ng cña
mét hÖ thèng lín vµ dÔ dµng h¬n cho qu¸ trÝnh x©y dùng, vËn hµnh vµ b¶o tr×.
Kh¶ n¨ng thêi gian thùc: C¸c hÖ thèng ®Òu g¾n liÒn víi viÖc ®¶m nhiÖm
mét chøc n¨ng chÝnh vµ ph¶i ®îc thùc hiÖn ®óng theo mét khung thêi gian
qui ®Þnh. Th«ng thêng mét chøc n¨ng cña hÖ thèng ph¶i ®îc thùc hiÖn vµ
hoµn thµnh theo mét yªu cÇu thêi gian ®Þnh tríc ®Ó ®¶m b¶o th«ng tin cËp
nhËt kÞp thêi cho phÇn xö lý cña c¸c chøc n¨ng kh¸c vµ cã thÓ ¶nh hëng trùc
tiÕp tíi sù ho¹t ®éng ®óng vµ chÝnh x¸c cña toµn hÖ thèng. Tuú thuéc vµo tõng
bµi to¸n vµ yªu cÇu cña hÖ thèng mµ yªu cÇu vÒ kh¶ n¨ng thêi gian thùc còng
rÊt kh¸c nhau.
Tuy nhiªn, trong thùc tÕ kh«ng ph¶i hÖ nhóng nµo còng ®Òu cã thÓ tho¶
m·n tÊt c¶ nh÷ng yªu cÇu nªu trªn, v× chóng lµ kÕt qu¶ cña sù tho¶ hiÖp cña
15
nhiÒu yªu cÇu vµ ®iÒu kiÖn nh»m u tiªn cho chøc n¨ng cô thÓ mµ chóng ®îc
thiÕt kÕ. ChÝnh ®iÒu nµy l¹i cµng lµm t¨ng thªm tÝnh chuyªn biÖt ho¸ cña c¸c
hÖ/thiÕt bÞ nhóng mµ c¸c thiÕt bÞ ®a n¨ng kh«ng thÓ c¹nh tranh ®îc.
V× sù ph¸t triÓn hÖ nhóng lµ sù kÕt hîp nhuÇn nhuyÔn gi÷a phÇn cøng vµ
phÇn mÒm nªn c«ng nghÖ g¾n liÒn víi nã còng chÝnh lµ c«ng nghÖ kÕt hîp
gi÷a c¸c gi¶i ph¸p cho phÇn cøng vµ mÒm. V× tÝnh chuyªn biÖt cña c¸c thiÕt bÞ
/ hÖ nhóng nh ®· giíi thiÖu nªn c¸c nÒn phÇn cøng còng ®îc chÕ t¹o ®Ó u
tiªn ®¸p øng cho chøc n¨ng hay nhiÖm vô cô thÓ cña yªu cÇu thiÕt kÕ ®Æt ra.
Líp hÖ nhóng u tiªn ph¸t triÓn theo tiªu chÝ vÒ kÝch thíc nhá gän, tiªu
thô n¨ng lîng Ýt, gi¸ thµnh thÊp. C¸c chÝp xö lý nhóng cho líp hÖ thèng øng
dông ®ã thêng yªu cÇu vÒ kh¶ n¨ng tÝnh to¸n Ýt hoÆc võa ph¶i nªn hÇu hÕt
®îc x©y dùng trªn cë së bé ®ång xö lý 8 bÝt -16 bit hoÆc cïng l¾m lµ 32 bit
vµ kh«ng hç trî dÊu ph¶y ®éng do sù h¹n chÕ vÒ dung lîng vµ kh¶ n¨ng tÝnh
to¸n.
Líp hÖ nhóng u tiªn thùc thi kh¶ n¨ng xö lý tÝnh to¸n víi tèc ®é thùc
hiÖn nhanh. C¸c chÝp xö lý nhóng cho c¸c hÖ thèng ®ã còng sÏ lµ c¸c Chip ¸p
dông c¸c c«ng nghÖ cao cÊp víi kiÕn tróc xö lý song song ®Ó ®¸p øng ®îc
cêng ®é tÝnh to¸n lín vµ tèc ®é mµ c¸c Chip xö lý ®a chøc n¨ng th«ng
thêng kh«ng ®¹t tíi ®îc.
Líp hÖ thèng u tiªn c¶ hai tiªu chÝ ph¸t triÓn cña hai líp trªn, tøc lµ kÝch
thíc nhá gän, møc tiªu thô n¨ng lîng thÊp, tèc ®é tÝnh to¸n nhanh. Tïy
theo sù tho¶ hiÖp gi÷a c¸c yªu cÇu vµ xu thÕ ph¸t triÓn chÝnh v× vËy còng
kh«ng cã g× ng¹c nhiªn khi chóng ta thÊy sù tån t¹i song song cña rÊt nhiÒu
c¸c Chip vi xö lý nhóng, vi ®iÒu khiÓn nhóng 8 bit, 16 bit hay 32 bit cïng víi
c¸c ChÝp siªu xö lý kh¸c vÉn ®ang ®îc øng dông réng r·i cho hÖ nhóng. §ã
16
còng lµ sù kÕt hîp ®a d¹ng vµ sù ra ®êi cña c¸c hÖ nhóng nãi chung nh»m tho¶
m·n c¸c øng dông ph¸t triÓn kh«ng ngõng.
Víi mçi mét nÒn phÇn cøng nhóng thêng cã nh÷ng ®Æc thï riªng vµ
kÌm theo mét gi¶i ph¸p ph¸t triÓn phÇn mÒm tèi u t¬ng øng. Kh«ng cã mét
gi¶i ph¸p nµo chung vµ chuÈn t¾c cho tÊt c¶ c¸c hÖ nhóng. ChÝnh v× vËy th«ng
thêng c¸c nhµ ph¸t triÓn vµ cung cÊp phÇn cøng còng l¹i chÝnh lµ nhµ cung
cÊp gi¶i ph¸p phÇn mÒm hoÆc c«ng cô ph¸t triÓn phÇn mÒm kÌm theo. RÊt phæ
biÕn hiÖn nay c¸c Chip vi xö lý hay vi ®iÒu khiÓn ®Òu cã c¸c hÖ ph¸t triÓn
(Starter Kit hay Emulator) ®Ó hç trî cho c¸c nhµ øng dông vµ x©y dùng hÖ
nhóng víi hiÓu biÕt h¹n chÕ vÒ phÇn cøng. Ng«n ng÷ m· ho· phÇn mÒm còng
thêng lµ C hoÆc gÇn gièng nh C (Likely C) thay v× ph¶i viÕt hoµn toµn b»ng
hîp ng÷ Assembly. §iÒu nµy cho phÐp c¸c nhµ thiÕt kÕ tèi u vµ ®¬n gi¶n ho¸
rÊt nhiÒu cho bíc ph¸t triÓn vµ x©y dùng hÖ nhóng.
Trong xu thÕ ph¸t triÓn kh«ng ngõng vµ nh»m tho¶ m·n ®îc nhu cÇu
ph¸t triÓn nhanh vµ hiÖu qu¶ cã rÊt nhiÒu c¸c c«ng nghÖ cho phÐp thùc thi c¸c
gi¶i ph¸p hÖ nhóng. §øng sau sù phæ cËp réng r·i cña c¸c Chip vi xö lý vi
®iÒu khiÓn nhóng, DSP ph¶i kÓ ®Õn c¸c c«ng nghÖ còng ®ang rÊt ®îc quan
t©m hiÖn nay nh ASIC, CPLD, FPGA, PSOC vµ sù tæ hîp cña chóng...KÌm
theo ®ã lµ c¸c kü thuËt ph¸t triÓn phÇn mÒm cho phÐp ®¶m nhiÖm ®îc c¸c bµi
to¸n yªu cÇu kh¾t khe trªn c¬ së mét nÒn phÇn cøng h÷u h¹n vÒ kh¶ n¨ng xö
lý vµ kh«ng gian bé nhí. Gi¶i quyÕt c¸c bµi to¸n thêi gian thùc nh ph©n chia
t¸c vô vµ gi¶i quyÕt c¹nh tranh chia sÎ tµi nguyªn chung. HiÖn nay còng ®· cã
nhiÒu nhµ ph¸t triÓn c«ng nghÖ phÇn mÒm lín ®ang híng vµo thÞ trêng hÖ
nhóng bao gåm c¶ Microsoft. Ngoµi mét sè c¸c hÖ ®iÒu hµnh Windows quen
thuéc dïng cho PC, Microsoft còng ®· tung ra c¸c phiªn b¶n mini nh
WindowsCE, WindowsXP Embedded vµ c¸c c«ng cô ph¸t triÓn øng dông kÌm
theo ®Ó phôc vô cho c¸c thiÕt bÞ nhóng, ®iÓn h×nh nh c¸c thiÕt bÞ PDA, mét
sè thiÕt bÞ ®iÒu khiÓn c«ng nghiÖp nh c¸c m¸y tÝnh nhóng, IPC cña Siemens...
17
Cã thÓ nãi hÖ nhóng ®· trë thµnh mét gi¶i ph¸p c«ng nghÖ vµ ph¸t triÓn
mét c¸ch nhanh chãng, høa hÑn nhiÒu thiÕt bÞ nhóng sÏ chiÕm lÜnh ®îc thÞ
trêng réng lín trong t¬ng lai nh»m ®¸p øng nhu cÇu øng dông kh«ng ngõng
trong cuéc sèng cña chóng ta. §èi víi lÜnh vùc c«ng nghiÖp vÒ ®iÒu khiÓn vµ
tù ®éng ho¸, hÖ nhóng còng lµ mét gi¶i ph¸p ®Çy tiÒm n¨ng ®· vµ ®ang ®îc
øng dông réng r·i. Nã rÊt phï hîp ®Ó thùc thi c¸c chøc n¨ng th«ng minh ho¸,
chuyªn biÖt trong c¸c hÖ thèng vµ thiÕt bÞ c«ng nghiÖp, tõ c¸c hÖ thèng tËp
trung ®Õn c¸c hÖ thèng ph©n t¸n. Gi¶i ph¸p hÖ nhóng cã thÓ thùc thi tõ cÊp
thÊp nhÊt cña hÖ thèng c«ng nghiÖp nh c¬ cÊu chÊp hµnh cho ®Õn c¸c cÊp cao
h¬n nh gi¸m s¸t ®iÒu khiÓn qu¸ tr×nh.
H×nh 1-3: KiÕn tróc ®iÓn h×nh cña c¸c chip VXL/VDK nhóng
18
Ngêi ta vÉn biÕt tíi phÇn lâi xö lý cña c¸c bé VXL lµ ®¬n vÞ xö lý trung
t©m CPU (Central Processing Unit) ®ãng vai trß nh bé n·o chÞu tr¸ch nhiÖm
thùc thi c¸c phÐp tÝnh vµ thùc hiÖn c¸c lÖnh. PhÇn chÝnh cña CPU ®¶m nhiÖm
chøc n¨ng nµy lµ ®¬n vÞ logic to¸n häc (ALU – Arthimetic Logic Unit).
Ngoµi ra ®Ó hç trî cho ho¹t ®éng cña ALU cßn cã thªm mét sè c¸c thµnh
phÇn kh¸c nh bé gi¶i m· (decoder), bé tuÇn tù (sequencer) vµ c¸c thanh ghi.
Bé gi¶i m· chuyÓn ®æi (th«ng dÞch) c¸c lÖnh lu tr÷ ë trong bé m·
ch¬ng tr×nh thµnh c¸c m· mµ ALU cã thÓ hiÓu ®îc vµ thùc thi. Bé tuÇn tù
cã nhiÖm vô qu¶n lý dßng d÷ liÖu trao ®æi qua bus d÷ liÖu cña VXL. C¸c
thanh ghi ®îc sö dông ®Ó CPU lu tr÷ t¹m thêi c¸c d÷ liÖu chÝnh cho viÖc
thùc thi c¸c lÖnh vµ chóng cã thÓ thay ®æi néi dung trong qu¸ tr×nh ho¹t ®éng
cña ALU. HÇu hÕt c¸c thanh ghi cña VXL ®Òu lµ c¸c bé nhí ®îc tham chiÕu
(mapped) vµ héi nhËp víi khu vùc bé nhí vµ cã thÓ ®îc sö dông nh bÊt kú
khu vùc nhí kh¸c.
19
C¸c thanh ghi cã chøc n¨ng lu tr÷ tr¹ng th¸i cña CPU. NÕu c¸c néi dung
cña bé nhí VXL vµ c¸c néi dung cña c¸c thanh ghi t¹i mét thêi ®iÓm nµo ®ã
®îc lu gi÷ ®Çy ®ñ th× hoµn toµn cã thÓ t¹m dõng thùc hiÖn phÇn ch¬ng
tr×nh hiÖn t¹i trong mét kho¶ng thêi gian bÊt kú vµ cã thÓ trë l¹i tr¹ng th¸i cña
CPU tríc ®ã. Thùc tÕ sè lîng c¸c thanh ghi vµ tªn gäi cña chóng còng kh¸c
nhau trong c¸c hä VXL/V§K vµ thêng do chÝnh c¸c nhµ chÕ t¹o qui ®Þnh,
nhng vÒ c¬ b¶n chóng ®Òu cã chung c¸c chøc n¨ng nh ®· nªu.
Khi thø tù byte trong bé nhí ®· ®îc x¸c ®Þnh th× ngêi thiÕt kÕ phÇn
cøng ph¶i thùc hiÖn mét sè quyÕt ®Þnh xem CPU sÏ lu d÷ liÖu ®ã nh thÕ
nµo. C¬ chÕ nµy còng kh¸c nhau tuú theo kiÕn tróc tËp lÖnh ®îc ¸p dông. Cã
ba lo¹i h×nh c¬ b¶n:
KiÕn tróc ng¨n xÕp sö dông ng¨n xÕp ®Ó thùc hiÖn lÖnh vµ c¸c to¸n tö
nhËn ®îc tõ ®Ønh ng¨n xÕp. MÆc dï c¬ chÕ nµy hç trî mËt ®é m· tèt vµ m«
h×nh ®¬n gi¶n cho viÖc ®¸nh gi¸ c¸ch thÓ hiÖn ch¬ng tr×nh nhng ng¨n xÕp
kh«ng thÓ hç trî kh¶ n¨ng truy nhËp ngÉu nhiªn vµ h¹n chÕ hiÖu suÊt thùc
hiÖn lÖnh.
KiÕn tróc bé tÝch luü víi lÖnh mét to¸n tö ngÇm mÆc ®Þnh chøa trong
thanh ghi tÝch luü cã thÓ gi¶m ®îc ®é phøc t¹p bªn trong cña cÊu tróc CPU
vµ cho phÐp cÊu thµnh lÖnh rÊt nhá gän. Nhng thanh ghi tÝch luü chØ lµ n¬i
chøa d÷ liÖu t¹m thêi nªn giao th«ng bé nhí rÊt lín.
KiÕn tróc thanh ghi môc ®Ých chung sö dông c¸c tËp thanh ghi môc ®Ých
chung vµ ®îc ®ãn nhËn nh m« h×nh cña c¸c hÖ thèng CPU míi, hiÖn ®¹i.
C¸c tËp thanh ghi ®ã nhanh h¬n bé nhí thêng vµ dÔ dµng cho bé biªn dÞch
20
xö lý thùc thi vµ cã thÓ ®îc sö dông mét c¸ch hiÖu qu¶. H¬n n÷a gi¸ thµnh
phÇn cøng ngµy cµng cã xu thÕ gi¶m ®¸ng kÓ vµ tËp thanh ghi cã thÓ t¨ng
nhanh. NÕu c¬ chÕ truy nhËp bé nhí nhanh th× kiÕn tróc dùa trªn ng¨n xÕp cã
thÓ lµ sù lùa chän lý tëng; cßn nÕu truy nhËp bé nhí chËm th× kiÕn tróc thanh
ghi sÏ lµ sù lùa chän phï hîp nhÊt.
Mét sè thanh ghi víi chøc n¨ng ®iÓn h×nh thêng ®îc sö dông trong c¸c
kiÕn tróc CPU nh sau:
Thanh ghi con trá ng¨n xÕp (stack pointer):
Thanh ghi nµy lu gi÷ ®Þa chØ tiÕp theo cña ng¨n xÕp. Theo nguyªn lý gi¸
trÞ ®Þa chØ chøa trong thanh ghi con trá ng¨n xÕp sÏ gi¶m nÕu d÷ liÖu ®îc lu
thªm vµo ng¨n xÕp vµ sÏ t¨ng khi d÷ liÖu ®îc lÊy ra khái ng¨n xÕp.
Thanh ghi chØ sè (index register)
Thanh ghi chØ sè ®îc sö dông ®Ó lu ®Þa chØ khi mode ®Þa chØ ®îc sö
dông. Nã cßn ®îc biÕt tíi víi tªn gäi lµ thanh ghi con trá hay thanh ghi lùa
chän tÖp (Microchip).
Thanh ghi ®Þa chØ lÖnh /Bé ®Õm ch¬ng tr×nh (Program Counter)
Mét trong nh÷ng thanh ghi quan träng nhÊt cña CPU lµ thanh ghi bé ®Õm
ch¬ng tr×nh. Thanh ghi bé ®Õm ch¬ng tr×nh lu ®Þa chØ lÖnh tiÕp theo cña
ch¬ng tr×nh sÏ ®îc CPU xö lý. Mçi khi lÖnh ®îc trá tíi vµ ®îc CPU xö lý
th× néi dung gi¸ trÞ cña thanh ghi bé ®Õm ch¬ng tr×nh sÏ t¨ng lªn mét.
Ch¬ng tr×nh sÏ kÕt thóc khi thanh ghi PC cã gi¸ trÞ b»ng ®Þa chØ cuèi cïng
cña ch¬ng tr×nh n»m trong bé nhí ch¬ng tr×nh.
Thanh ghi tÝch lòy (Accumulator)
Thanh ghi tÝch lòy lµ mét thanh ghi giao tiÕp trùc tiÕp víi ALU, ®îc sö
dông ®Ó lu gi÷ c¸c to¸n tö hoÆc kÕt qu¶ cña mét phÐp to¸n trong qu¸ tr×nh
ho¹t ®éng cña ALU.
21
Trong VXL vµ c¸c vi m¹ch sè nãi chung, ho¹t ®éng cña hÖ thèng ®îc
thùc hiÖn ®ång bé hoÆc dÞ bé theo c¸c xung nhÞp chuÈn. C¸c nhÞp ®ã ®îc lÊy
trùc tiÕp hoÆc gi¸n tiÕp tõ mét nguån xung chuÈn thêng lµ c¸c m¹ch t¹o xung
hoÆc dao ®éng th¹ch anh. §Ó m« t¶ ho¹t ®éng cña hÖ thèng, c¸c tÝn hiÖu d÷
liÖu vµ ®iÒu khiÓn thêng ®îc m« t¶ tr¹ng th¸i theo gi¶n ®å thêi gian vµ møc
tÝn hiÖu nh ®îc chØ ra trong h×nh 1-5 m« t¶ vµ tr¹ng th¸i tÝn hiÖu ho¹t ®éng
trong VXL.
H×nh 1-5: M« t¶ vµ tr¹ng th¸i tÝn hiÖu ho¹t ®éng trong VXL
Môc ®Ých cña viÖc m« t¶ tr¹ng th¸i tÝn hiÖu theo gi¶n ®å thêi gian vµ møc
tÝn hiÖu lµ ®Ó ph©n tÝch vµ x¸c ®Þnh chuçi sù kiÖn ho¹t ®éng chi tiÕt trong mçi
chu kú bus. Nhê viÖc m« t¶ nµy chóng ta cã thÓ xem xÐt ®Õn kh¶ n¨ng ®¸p
øng thêi gian cña c¸c sù kiÖn thùc thi trong hÖ thèng vµ thêi gian cÇn thiÕt ®Ó
thùc thi ho¹t ®éng tuÇn tù còng nh lµ kh¶ n¨ng t¬ng thÝch khi cã sù ho¹t
®éng phèi hîp gi÷a c¸c thiÕt bÞ ghÐp nèi hay më réng trong hÖ thèng. Th«ng
thêng th«ng tin vÒ c¸c nhÞp thêi gian ho¹t ®éng còng nh ®Æc tÝnh kü thuËt
chi tiÕt ®îc cung cÊp hoÆc qui ®Þnh bëi c¸c nhµ chÕ t¹o.
Mét sè ®Æc trng vÒ thêi gian cña c¸c tr¹ng th¸i ho¹t ®éng c¬ b¶n cña
c¸c tÝn hiÖu hÖ thèng gåm cã nh sau:
Thêi gian t¨ng hoÆc gi¶m
Thêi gian trÔ lan truyÒn tÝn hiÖu
22
H×nh 1-6: M« t¶ tr¹ng th¸i tÝn hiÖu logic t¨ng hoÆc gi¶m
Thêi gian t¨ng ®îc ®Þnh nghÜa lµ kho¶ng thêi gian ®Ó tÝn hiÖu t¨ng tõ
20% ®Õn 80% møc tÝn hiÖu cÇn thiÕt. Thêi gian gi¶m lµ kho¶ng thêi gian ®Ó
tÝn hiÖu gi¶m tõ 80% ®Õn 20% møc tÝn hiÖu cÇn thiÕt.
Thêi gian trÔ lan truyÒn:
Lµ kho¶ng thêi gian tÝnh tõ khi thay ®æi tÝn hiÖu vµo cho tíi khi cã sù
thay ®æi tÝn hiÖu ë ®Çu ra. §Æc tÝnh nµy thêng do cÊu t¹o vµ kh¶ n¨ng truyÒn
dÉn tÝn hiÖu vËt lý trong hÖ thèng tÝn hiÖu.
Kho¶ng thêi gian cÇn thiÕt ®Ó tÝn hiÖu trÝch mÉu ®¹t tíi mét tr¹ng th¸i æn
®Þnh tríc khi nhÞp xung chuÈn ®ång hå thay ®æi ®îc gäi lµ thêi gian thiÕt
23
lËp. Thêi gian lu gi÷ lµ kho¶ng thêi gian cÇn thiÕt ®Ó duy tr× tÝn hiÖu trÝch
mÉu æn ®Þnh sau khi xung nhÞp chuÈn ®ång hå thay ®æi. Thùc chÊt kho¶ng
thêi gian thiÕt lËp vµ thêi gian lu gi÷ lµ cÇn thiÕt ®Ó ®¶m b¶o tÝn hiÖu ®îc
ghi nhËn chÝnh x¸c vµ æn ®Þnh trong qu¸ tr×nh ho¹t ®éng vµ chuyÓn møc tr¹ng
th¸i. Gi¶n ®å thêi gian trong h×nh 1-8 thêi gian thiÕt lËp vµ lu gi÷ minh häa
thêi gian thiÕt lËp vµ lu gi÷ trong ho¹t ®éng cña Triger D.
H×nh 1-9: HiÖn tîng Metastabilit trong ho¹t ®éng cña Triger D
Chu kú tÝn hiÖu 3 tr¹ng th¸i vµ contention
24
Bus ®Þa chØ lµ c¸c ®êng dÉn tÝn hiÖu logic mét chiÒu ®Ó truyÒn ®Þa chØ
tham chiÕu tíi c¸c khu vùc bé nhí vµ chØ ra d÷ liÖu ®îc lu gi÷ ë ®©u trong
kh«ng gian bé nhí. Trong qóa tr×nh ho¹t ®éng CPU sÏ ®iÒu khiÓn bus ®Þa chØ
®Ó truyÒn d÷ liÖu gi÷a c¸c khu vùc bé nhí vµ CPU. C¸c ®Þa chØ th«ng thêng
tham chiÕu tíi c¸c khu vùc bé nhí hoÆc c¸c khu vùc vµo ra, hoÆc ngo¹i vi. D÷
liÖu ®îc lu ë c¸c khu vùc ®ã thêng lµ 8-bit (1 byte), 16-bit, hoÆc 32-bit tïy
thuéc vµo cÊu tróc tõng lo¹i vi xö lý/vi ®iÒu khiÓn. HÇu hÕt c¸c vi ®iÒu khiÓn
thêng ®¸nh ®Þa chØ d÷ liÖu theo khèi 8-bit. C¸c lo¹i vi xö lý 8-bit, 16-bit vµ
25
32-bit nãi chung còng ®Òu cã thÓ lµm viÖc trao ®æi víi kiÓu d÷ liÖu 8-bit vµ
16-bit.
Chóng ta vÉn thêng ®îc biÕt tíi kh¸i niÖm ®Þa chØ truy nhËp trùc tiÕp,
®ã lµ kh¶ n¨ng CPU cã thÓ tham chiÕu vµ truy nhËp tíi trong mét chu kú bus.
NÕu vi xö lý cã N bit ®Þa chØ tøc lµ nã cã thÓ ®¸nh ®Þa chØ ®îc 2N khu vùc mµ
CPU cã thÓ tham chiÕu trùc tiÕp tíi. Qui íc c¸c khu vùc ®îc ®¸nh ®Þa chØ
b¾t ®Çu tõ ®Þa chØ 0 vµ t¨ng dÇn ®Õn 2N-1. HiÖn nay c¸c vi xö lý vµ vi ®iÒu
khiÓn nãi chung chñ yÕu vÉn sö dông phæ biÕn c¸c bus d÷ liÖu cã ®é réng lµ
16, 20, 24, hoÆc 32-bit. NÕu ®¸nh ®Þa chØ theo byte th× mét vi xö lý 16-bit cã
thÓ ®¸nh ®Þa chØ ®îc 216 khu vùc bé nhí tøc lµ 65,536 byte = 64Kbyte. Tuy
nhiªn cã mét sè khu vùc bé nhí mµ CPU kh«ng thÓ truy nhËp trùc tiÕp tíi tøc
lµ ph¶i sö dông nhiÒu nhÞp bus ®Ó truy nhËp, th«ng thêng ph¶i kÕt hîp víi
viÖc ®iÒu khiÓn phÇn mÒm. Kü thuËt nµy chñ yÕu ®îc sö dông ®Ó më réng bé
nhí vµ thêng ®îc biÕt tíi víi kh¸i niÖm ®¸nh ®Þa chØ trang nhí khi nhu cÇu
®¸nh ®Þa chØ khu vùc nhí vît qu¸ ph¹m vi cã thÓ ®¸nh ®Þa chØ truy nhËp trùc
tiÕp.
VÝ dô: CPU 80286 cã 24-bit ®Þa chØ sÏ cho phÐp ®¸nh ®Þa chØ trùc tiÕp
cho 224 byte (16 Mbyte) nhí. CPU 80386 vµ c¸c lo¹i vi xö lý m¹nh h¬n cã
kh«ng gian ®Þa chØ 32-bit sÏ cã thÓ ®¸nh ®îc tíi 232 byte (4Gbyte) ®Þa chØ
trùc tiÕp.
Bus d÷ liÖu
Bus d÷ liÖu lµ c¸c kªnh truyÒn t¶i th«ng tin theo hai chiÒu gi÷a CPU vµ
bé nhí hoÆc c¸c thiÕt bÞ ngo¹i vi vµo ra. Bus d÷ liÖu ®îc ®iÒu khiÓn bëi CPU
®Ó ®äc hoÆc viÕt c¸c d÷ liÖu hoÆc m· lÖnh thùc thi trong qu¸ tr×nh ho¹t ®éng
cña CPU. §é réng cña bus d÷ liÖu nãi chung sÏ x¸c ®Þnh ®îc lîng d÷ liÖu
cã thÓ truyÒn vµ trao ®æi trªn bus. Tèc ®é truyÒn hay trao ®æi d÷ liÖu thêng
®îc tÝnh theo ®¬n vÞ lµ [byte/s]. Sè lîng ®êng bit d÷ liÖu sÏ cho phÐp x¸c
26
®Þnh ®îc sè lîng bit cã thÓ lu tr÷ trong mçi khu vùc tham chiÕu trùc tiÕp.
NÕu mét bus d÷ liÖu cã kh¶ n¨ng thùc hiÖn mét lÇn truyÒn trong 1 -s, th× bus
d÷ liÖu 8-bit sÏ cã b¨ng th«ng lµ 1Mbyte/s, bus 16-bit sÏ cã b¨ng th«ng lµ
2Mbyte/s vµ bus 32-bit sÏ cã b¨ng th«ng lµ 4Mbyte/s. Trong trêng hîp bus
d÷ liÖu 8-bit víi chu kú bus lµ T=1-s (tøc lµ sÏ truyÒn ®îc 1byte/1chu kú) th×
sÏ truyÒn ®îc 1 Mbyte trong 1s hay 2Mbyte trong 2s.
Bus ®iÒu khiÓn
Bus ®iÒu khiÓn phôc vô truyÒn t¶i c¸c th«ng tin d÷ liÖu ®Ó ®iÒu khiÓn
ho¹t ®éng cña hÖ thèng. Th«ng thêng c¸c d÷ liÖu ®iÒu khiÓn bao gåm c¸c tÝn
hiÖu chu kú ®Ó ®ång bé c¸c nhÞp chuyÓn ®éng vµ ho¹t ®éng cña hÖ thèng. Bus
®iÒu khiÓn thêng ®îc ®iÒu khiÓn bëi CPU ®Ó ®ång bé hãa nhÞp ho¹t ®éng vµ
d÷ liÖu trao ®æi trªn c¸c bus. Trong trêng hîp vi xö lý sö dông dån kªnh bus
d÷ liÖu vµ bus ®Þa chØ tøc lµ mét phÇn hoÆc toµn bé bus d÷ liÖu sÏ ®îc sö
dông chung chia sÎ víi bus ®Þa chØ th× cÇn mét tÝn hiÖu ®iÒu khiÓn ®Ó ph©n
nhÞp truy nhËp cho phÐp chèt lu tr÷ th«ng tin ®Þa chØ mçi khi b¾t ®Çu mét chu
kú truyÒn. Mét vÝ dô vÒ c¸c chu kú bus vµ sù ®ång bé cña chóng trong ho¹t
®éng cña hÖ thèng bus ®Þa chØ vµ d÷ liÖu dån kªnh ®îc chØ ra trong H×nh 1-
12. §©y lµ ho¹t ®éng ®iÓn h×nh trong hä vi ®iÒu khiÓn 8051 vµ nhiÒu lo¹i
t¬ng tù.
1.2.1.4. Bé nhí.
KiÕn tróc bé nhí
KiÕn tróc bé nhí ®îc chia ra lµm hai lo¹i chÝnh vµ ®îc ¸p dông réng
r·i trong hÇu hÕt c¸c Chip xö lý nhóng hiÖn nay lµ kiÕn tróc bé nhí von
Neumann vµ Havard.
Trong kiÕn tróc von Neumann kh«ng ph©n biÖt vïng chøa d÷ liÖu vµ m·
ch¬ng tr×nh. C¶ ch¬ng tr×nh vµ d÷ liÖu ®Òu ®îc truy nhËp theo cïng mét
®êng. §iÒu nµy cho phÐp ®a d÷ liÖu vµo vïng m· ch¬ng tr×nh ROM, vµ
còng cã thÓ lu m· ch¬ng tr×nh vµo vïng d÷ liÖu RAM vµ thùc hiÖn tõ ®ã.
Mét sè Chip vi ®iÒu khiÓn nhóng tiªu biÓu hiÖn nay sö dông cÊu tróc
Havard lµ 8031, PIC, Atmel AVR90S. NÕu sö dông Chip 8031 chóng ta sÏ
nhËn thÊy ®iÒu nµy th«ng qua viÖc truy nhËp lÊy d÷ liÖu ra tõ vïng d÷ liÖu
28
RAM hoÆc tõ vïng m· ch¬ng tr×nh. Chóng ta cã mét vµi con trá ®îc sö
dông ®Ó lÊy d÷ liÖu ra tõ bé nhí d÷ liÖu RAM, nhng chØ cã duy nhÊt mét con
trá DPTR cã thÓ ®îc sö dông ®Ó lÊy d÷ liÖu ra tõ vïng m· ch¬ng tr×nh. H×nh
1-14 m« t¶ nguyªn lý kiÕn tróc cña bé nhí von Neumann vµ Harvard.
¦u ®iÓm næi bËt cña cÊu tróc bé nhí Harvard so víi kiÕn tróc von
Neumann lµ cã hai kªnh t¸ch biÖt ®Ó truy nhËp vµo vïng bé nhí m· ch¬ng
tr×nh vµ d÷ liÖu nhê vËy mµ m· ch¬ng tr×nh vµ d÷ liÖu cã thÓ ®îc truy nhËp
®ång thêi vµ lµm t¨ng tèc ®é luång trao ®æi víi bé xö lý.
H×nh 1-14: Nguyªn lý ®iÒu khiÓn t¸ch kªnh truy nhËp bus ®Þa chØ vµ bus d÷
liÖu
Bé nhí ch¬ng tr×nh – PROM (Programmable Read Only Memory)
Bao gåm mét m¶ng c¸c transistor kh¶ tr×nh. M· ch¬ng tr×nh sÏ ®îc ghi
trùc tiÕp vµ vi xö lý cã thÓ ®äc ra ®Ó thùc hiÖn. EPROM cã thÓ xo¸ ®îc b»ng
29
tia cùc tÝm vµ cã thÓ ®îc lËp tr×nh l¹i. CÊu tróc vËt lý cña EPROM ®îc m«
t¶ nh trong h×nh 1-15.
H×nh 1-15: Nguyªn lý cÊu t¹o vµ ho¹t ®éng xãa cña EPROM
Bé nhí Flash
Còng gièng nh EPROM ®îc cÊu t¹o bëi mét m¶ng transistor kh¶ tr×nh
nhng cã thÓ xo¸ ®îc b»ng ®iÖn vµ chÝnh v× vËy cã thÓ n¹p l¹i ch¬ng tr×nh
mµ kh«ng cÇn t¸ch ra khái nÒn phÇn cøng VXL. ¦u ®iÓm cña bé nhí flash lµ
cã thÓ lËp tr×nh trùc tiÕp trªn m¹ch cøng mµ nã ®ang thùc thi trªn ®ã.
Vïng ®Ó lu hoÆc trao ®æi d÷ liÖu trung gian trong qu¸ tr×nh thùc hiÖn
ch¬ng tr×nh.
H×nh 1-19: Nguyªn lý ghÐp nèi (më réng) RAM víi VXL
1.2.1.5. Ngo¹i vi.
HÇu hÕt c¸c chip vi ®iÒu khiÓn ngµy nay ®Òu cã Ýt nhÊt mét bé ®Þnh thêi
gian/bé ®Õm cã thÓ cÊu h×nh ho¹t ®éng linh ho¹t theo c¸c mode phôc vô nhiÒu
môc ®Ých trong c¸c øng dông xö lý, ®iÒu khiÓn. C¸c bé ®Þnh thêi gian cho
phÐp t¹o ra c¸c chuçi xung vµ ng¾t thêi gian hoÆc ®Õm theo c¸c kho¶ng thêi
gian cã thÓ lËp tr×nh. Chóng thêng ®îc øng dông phæ biÕn trong c¸c nhiÖm
vô ®Õm xung, ®o kho¶ng thêi gian c¸c sù kiÖn, hoÆc ®Þnh chu kú thêi gian
thùc thi c¸c t¸c vô. Mét trong nh÷ng øng dông quan träng cña bé ®Þnh thêi
gian lµ t¹o nhÞp tõ bé t¹o xung th¹ch anh cho bé truyÒn th«ng dÞ bé ®a n¨ng
ho¹t ®éng. Thùc chÊt ®ã lµ øng dông ®Ó thùc hiÖn phÐp chia tÇn sè. §Ó ®¹t
®îc ®é chÝnh x¸c, tÇn sè th¹ch anh thêng ®îc chän sao cho c¸c phÐp chia
sè nguyªn ®îc thùc hiÖn chÝnh x¸c ®¶m b¶o cho tèc ®é truyÒn th«ng d÷ liÖu
®îc t¹o ra chÝnh x¸c. ChÝnh v× vËy hä vi ®iÒu khiÓn 80C51 thêng hay sö
dông th¹ch anh cã tÇn sè dao ®éng lµ 11.059 thay v× 12MHz ®Ó t¹o ra nhÞp
ho¹t ®éng truyÒn th«ng tèc ®é chuÈn 9600.
32
Ng¾t lµ mét sù kiÖn x¶y ra lµm dõng ho¹t ®éng ch¬ng tr×nh hiÖn t¹i ®Ó
phôc vô thùc thi mét t¸c vô hay mét ch¬ng tr×nh kh¸c. C¬ chÕ ng¾t gióp CPU
lµm t¨ng tèc ®é ®¸p øng phôc vô c¸c sù kiÖn trong ch¬ng tr×nh ho¹t ®éng cña
VXL/V§K. C¸c V§K kh¸c nhau sÏ ®Þnh nghÜa c¸c nguån t¹o ng¾t kh¸c nhau
nhng ®Òu cã chung mét c¬ chÕ ho¹t ®éng vÝ dô nh ng¾t truyÒn th«ng nèi
tiÕp, ng¾t bé ®Þnh thêi gian, ng¾t cøng, ng¾t ngoµi...Khi mét sù kiÖn yªu cÇu
ng¾t xuÊt hiÖn, nÕu ®îc chÊp nhËn CPU sÏ lu cÊt tr¹ng th¸i ho¹t ®éng cho
ch¬ng tr×nh hiÖn t¹i ®ang thùc hiÖn vÝ dô nh néi dung bé ®Õm ch¬ng tr×nh
(con trá lÖnh) c¸c néi dung thanh ghi lu d÷ liÖu ®iÒu khiÓn ch¬ng tr×nh nãi
chung ®Ó thùc thi ch¬ng tr×nh phôc vô t¸c vô cho sù kiÖn ng¾t. Thùc chÊt qu¸
tr×nh ng¾t lµ CPU nhËn d¹ng tÝn hiÖu ng¾t, nÕu chÊp nhËn sÏ ®a con trá lÖnh
ch¬ng tr×nh trá tíi vïng m· chøa ch¬ng tr×nh phôc vô t¸c vô ng¾t. V× vËy
mçi mét ng¾t ®Òu g¾n víi mét vector ng¾t nh mét con trá lu th«ng tin ®Þa
chØ cña vïng bé nhí chøa m· ch¬ng tr×nh phôc vô t¸c vô cña ng¾t. CPU sÏ
33
thùc hiÖn ch¬ng tr×nh phôc vô t¸c vô ng¾t ®Õn khi nµo gÆp lÖnh quay trë vÒ
ch¬ng tr×nh tríc thêi ®iÓm sù kiÖn ng¾t x¶y ra. Cã thÓ ph©n ra 2 lo¹i nguån
ng¾t: Ng¾t cøng vµ Ng¾t mÒm.
Ng¾t mÒm
Ng¾t mÒm thùc chÊt thùc hiÖn mét lêi gäi hµm ®Æc biÖt mµ ®îc kÝch
ho¹t bëi c¸c nguån ng¾t lµ c¸c sù kiÖn xuÊt hiÖn tõ bªn trong ch¬ng tr×nh vµ
ngo¹i vi tÝch hîp trªn Chip vÝ dô nh ng¾t thêi gian, ng¾t chuyÓn ®æi A/D, …
C¬ chÕ ng¾t nµy cßn ®îc hiÓu lµ lo¹i thùc hiÖn ®ång bé víi ch¬ng tr×nh v×
nã ®îc kÝch ho¹t vµ thùc thi t¹i c¸c thêi ®iÓm x¸c ®Þnh trong ch¬ng tr×nh.
Hµm ®îc gäi sÏ thùc thi chøc n¨ng t¬ng øng víi yªu cÇu ng¾t. C¸c hµm ®ã
thêng ®îc trá bëi mét vector ng¾t mµ ®· ®îc ®Þnh nghÜa vµ g¸n cè ®Þnh bëi
nhµ s¶n xuÊt Chip. VÝ dô nh hÖ ®iÒu hµnh cña PC sö dông ng¾t sè 21hex ®Ó
g¸n cho ng¾t truy nhËp ®äc d÷ liÖu tõ ®Üa cøng vµ xuÊt d÷ liÖu ra m¸y in.
Ng¾t cøng
Ng¾t cøng cã thÓ ®îc xem nh lµ mét lêi gäi hµm ®Æc biÖt trong ®ã
nguån kÝch ho¹t lµ mét sù kiÖn ®Õn tõ bªn ngoµi ch¬ng tr×nh th«ng qua mét
cÊu tróc phÇn cøng (thêng ®îc kÕt nèi víi thÕ giíi bªn ngoµi qua c¸c ch©n
ng¾t). Ng¾t cøng thêng ®îc hiÓu ho¹t ®éng theo c¬ chÕ dÞ bé v× c¸c sù kiÖn
ng¾t kÝch ho¹t tõ c¸c tÝn hiÖu ngo¹i vi bªn ngoµi vµ t¬ng ®èi ®éc lËp víi
CPU, thêng lµ kh«ng x¸c ®Þnh ®îc thêi ®iÓm kÝch ho¹t. Khi c¸c ng¾t cøng
®îc kÝch ho¹t CPU sÏ nhËn d¹ng vµ thùc hiÖn lêi gäi hµm thùc thi chøc n¨ng
phôc vô sù kiÖn ng¾t t¬ng øng.
Trong c¸c c¬ chÕ ng¾t kho¶ng thêi gian tõ khi xuÊt hiÖn sù kiÖn ng¾t (cã
yªu cÇu phôc vô ng¾t) tíi khi dÞch vô ng¾t ®îc thùc thi lµ x¸c ®Þnh vµ tuú
thuéc vµo c«ng nghÖ phÇn cøng xö lý cña Chip.
34
H×nh 1-21: S¬ ®å nguyªn lý ho¹t ®éng cña bé ®Þnh thêi chã canh
Th«ng thêng khi cã mét sù cè x¶y ra lµm hÖ thèng bÞ treo hoÆc ch¹y
quÈn, CPU sÏ kh«ng thÓ tiÕp tôc thùc hiÖn ®óng chøc n¨ng. §Æc biÖt khi hÖ
thèng ph¶i lµm viÖc ë chÕ ®é vËn hµnh tù ®éng vµ kh«ng cã sù can thiÖp trùc
tiÕp thêng xuyªn bëi ngêi vËn hµnh. §Ó thùc hiÖn c¬ chÕ tù gi¸m s¸t vµ ph¸t
hiÖn sù cè phÇn mÒm, mét sè VXL/V§K cã thªm mét bé ®Þnh thêi chã canh.
B¶n chÊt ®ã lµ mét bé ®Þnh thêi ®Æc biÖt ®Ó ®Þnh nghÜa mét khung thêi gian
ho¹t ®éng b×nh thêng cña hÖ thèng. NÕu cã sù cè phÇn mÒm x¶y ra sÏ lµm hÖ
thèng bÞ treo khi ®ã bé ®Þnh thêi chã canh sÏ ph¸t hiÖn vµ gióp hÖ thèng tho¸t
khái tr¹ng th¸i ®ã b»ng c¸ch thùc hiÖn khëi t¹o l¹i ch¬ng tr×nh. Ch¬ng tr×nh
ho¹t ®éng khi cã bé ®Þnh thêi ph¶i ®¶m b¶o reset nã tríc khi khung thêi gian
bÞ vi ph¹m. Khung thêi gian nµy ®îc ®Þnh nghÜa phô thuéc vµo sù ®¸nh gi¸
cña ngêi thùc hiÖn phÇn mÒm, thiÕt lËp kho¶ng thêi gian ®¶m b¶o ch¾c ch¾n
hÖ thèng thùc hiÖn b×nh thêng kh«ng cã sù cè phÇn mÒm.
Cã mét sè c¬ chÕ thùc hiÖn cµi ®Æt bé ®Þnh thêi chã canh ®Ó gi¸m s¸t
ho¹t ®éng cña hÖ thèng nh sau:
35
H×nh 1-22: Nguyªn lý ho¹t ®éng cña bé ®Þnh thêi chã canh
Bé ®iÒu khiÓn truy nhËp bé nhí trùc tiÕp – DMA
DMA (Direct Memory Access) lµ c¬ chÕ ho¹t ®éng cho phÐp hai hay
nhiÒu vi xö lý hoÆc ngo¹i vi chia sÎ bus chung. ThiÕt bÞ nµo ®ang cã quyÒn
®iÒu khiÓn bus sÏ cã thÓ toµn quyÒn truy nhËp vµ trao ®æi d÷ liÖu trùc tiÕp víi
c¸c bé nhí nh hÖ thèng cã mét vi xö lý. øng dông phæ biÕn nhÊt cña DMA lµ
chia sÎ bé nhí chung gi÷a hai bé vi xö lý hoÆc c¸c ngo¹i vi ®Ó truyÒn d÷ liÖu
trùc tiÕp gi÷a thiÕt bÞ ngo¹i vi vµo/ra vµ bé nhí d÷ liÖu cña VXL.
Truy nhËp bé nhí trùc tiÕp ®îc sö dông ®Ó ®¸p øng nhu cÇu trao ®æi d÷
liÖu vµo ra tèc ®é cao gi÷a ngo¹i vi víi bé nhí. Th«ng thêng c¸c ngo¹i vi kÕt
36
nèi víi hÖ thèng ph¶i chia sÎ bus d÷ liÖu vµ ®îc ®iÒu khiÓn bëi CPU trong
qu¸ tr×nh trao ®æi d÷ liÖu. §iÒu nµy lµm h¹n chÕ tèc ®é trao ®æi, ®Ó t¨ng cêng
tèc ®é vµ lo¹i bá sù can thiÖp cña CPU, ®Æc biÖt trong trêng hîp cÇn truyÒn
mét lîng d÷ liÖu lín. C¬ chÕ ho¹t ®éng DMA ®îc m« t¶ nh trong H×nh 1-
23. Thñ tôc ®îc b¾t ®Çu b»ng viÖc yªu cÇu thùc hiÖn DMA víi CPU. Sau khi
xö lý, nÕu ®îc chÊp nhËn CPU sÏ trao quyÒn ®iÒu khiÓn bus cho ngo¹i vi vµ
thùc hiÖn qu¸ tr×nh trao ®æi d÷ liÖu. Sau khi thùc hiÖn xong CPU sÏ nhËn ®îc
th«ng b¸o vµ nhËn l¹i quyÒn ®iÒu khiÓn bus. Trong c¬ chÕ DMA, cã hai c¸ch
®Ó truyÒn d÷ liÖu: kiÓu DMA chu kú ®¬n, vµ kiÓu DMA chu kú nhãm (burst).
Trong kiÓu ho¹t ®éng DMA chu kú nhãm, ngo¹i vi sÏ nhËn ®îc quyÒn
®iÒu khiÓn vµ truyÒn khèi d÷ liÖu råi tr¶ l¹i quyÒn ®iÒu khiÓn cho CPU. Trong
c¬ chÕ DMA chu kú ®¬n ngo¹i vi sau khi nhËn ®îc quyÒn ®iÒu khiÓn bus chØ
truyÒn mét tõ d÷ liÖu råi tr¶ l¹i ngay quyÒn kiÓm so¸t bé nhí vµ bus d÷ liÖu
37
cho CPU. Trong c¬ chÕ thùc hiÖn DMA cÇn cã mét bíc xö lý ®Ó quyÕt ®Þnh
xem thiÕt bÞ nµo sÏ ®îc nhËn quyÒn ®iÒu khiÓn trong trêng hîp cã nhiÒu
h¬n mét thiÕt bÞ cã nhu cÇu sö dông DMA. Th«ng thêng kiÓu DMA chu kú
nhãm cÇn Ýt d÷ liÖu th«ng tin ®iÒu khiÓn (overhead) nªn cã kh¶ n¨ng trao ®æi
víi tèc ®é cao nhng l¹i chiÕm nhiÒu thêi gian truy nhËp bus do truyÒn c¶
khèi d÷ liÖu lín. §iÒu nµy cã thÓ ¶nh hëng ®Õn ho¹t ®éng cña c¶ hÖ thèng do
trong suèt qu¸ tr×nh thùc hiÖn DMA nhãm, CPU sÏ bÞ kho¸ quyÒn truy nhËp
bé nhí vµ kh«ng thÓ xö lý c¸c nhiÖm vô kh¸c cña hÖ thèng mµ cã nhu cÇu bé
nhí, vÝ dô nh c¸c dÞch vô ng¾t, hoÆc c¸c t¸c vô thêi gian thùc...
Chu kú rçi (Cycle Stealing)
Trong kiÓu nµy DMA sÏ ®îc thùc hiÖn trong nh÷ng thêi ®iÓm chu kú
bus mµ CPU kh«ng sö dông bus do ®ã kh«ng cÇn thùc hiÖn thñ tôc xö lý cÊp
ph¸t quyÒn truy nhËp vµ thùc hiÖn DMA.
HÇu hÕt c¸c vi xö lý hiÖn ®¹i ®Òu sö dông gÇn nh 100% dung lîng bé
nhí vµ b¨ng th«ng cña bus nªn sÏ kh«ng cã nhiÒu thêi gian dµnh cho DMA
thùc hiÖn. §Ó tiÕt kiÖm vµ tèi u tµi nguyªn th× cÇn cã mét träng tµi ph©n xö
vµ d÷ liÖu sÏ ®îc truyÒn ®i xÕp chång theo thêi gian. Nãi chung kiÓu DMA
d¹ng burst hiÖu qu¶ nhÊt khi kho¶ng thêi gian cÇn thùc hiÖn DMA t¬ng ®èi
nhá. Trong kho¶ng thêi gian thùc hiÖn DMA, toµn bé b¨ng th«ng cña bus sÏ
®îc sö dông tèi ®a vµ toµn bé khèi d÷ liÖu sÏ ®îc truyÒn ®i trong mét
kho¶ng thêi gian rÊt ng¾n. Nhng nhîc ®iÓm cña nã lµ nÕu d÷ liÖu cÇn truyÒn
lín vµ cÇn mét kho¶ng thêi gian dµi th× sÏ dÉn ®Õn viÖc block CPU vµ cã thÓ
bá qua viÖc xö lý c¸c sù kiÖn vµ t¸c vô kh¸c. §èi víi DMA chu kú ®¬n th× yªu
cÇu truy nhËp bé nhí, truyÒn mét tõ d÷ liÖu vµ gi¶i phãng bus. C¬ chÕ nµy cho
phÐp thùc hiÖn truyÒn interleave vµ ®îc biÕt tíi víi tªn gäi inteleaved DMA.
KiÓu truyÒn DMA chu kú ®¬n phï hîp ®Ó truyÒn d÷ liÖu trong mét kho¶ng
thêi gian dµi mµ cã ®ñ thêi gian ®Ó yªu cÇu truy nhËp vµ gi¶i phãng bus cho
mçi lÇn truyÒn mét tõ d÷ liÖu. ChÝnh v× vËy sÏ gi¶m b¨ng th«ng truy nhËp bus
38
do ph¶i mÊt nhiÒu thêi gian ®Ó yªu cÇu truy nhËp vµ gi¶i phãng bus. Trong
trêng hîp nµy CPU vµ c¸c thiÕt bÞ kh¸c vÉn cã thÓ chia sÎ vµ truyÒn d÷ liÖu
nhng trong mét d¶i b¨ng th«ng hÑp. Trong nhiÒu hÖ thèng bus thùc hiÖn c¬
chÕ xö lý vµ gi¶i quyÕt yªu cÇu truy nhËp (träng tµi) th«ng qua d÷ liÖu truyÒn
v× vËy còng kh«ng ¶nh hëng nhiÒu ®Õn tèc ®é truyÒn DMA.
DMA ®îc yªu cÇu khi kh¶ n¨ng ®iÒu khiÓn cña CPU ®Ó truyÒn d÷ liÖu
thùc hiÖn qu¸ chËm. DMA còng thùc sù cã ý nghÜa khi CPU ®ang ph¶i thùc
hiÖn c¸c t¸c vô kh¸c mµ kh«ng cÇn nhu cÇu truy nhËp bus.
DAC/ADC
VÝ dô ADC 754A
ADC 574 ®îc ®iÒu khiÓn bëi c¸c ch©n tÝn hiÖu nh m« t¶ trong b¶ng
sau:
(1) ThiÕt lËp chÕ ®é ho¹t ®éng: Mode chuyÓn ®æi 8-bit hay 12-bit ®îc
thiÕt lËp bëi tÝn hiÖu A0. TÝn hiÖu nµy ph¶i ®îc chèt tríc khi nhËn ®îc tÝn
hiÖu lÖnh b¾t ®Çu thùc hiÖn chuyÓn ®æi.
41
(2) KÝch ho¹t qu¸ tr×nh chuyÓn ®æi: Bé chuyÓn ®æi thùc hiÖn chuyÓn ®æi
khi nhËn ®îc tÝn hiÖu mÖnh lÖnh tÝch cùc tõ ch©n tÝn hiÖu hoÆc CE/CS, hoÆc
R/C víi ®iÒu kiÖn c¸c tÝn hiÖu ®iÒu khiÓn kh¸c ®· ®îc x¸c lËp.
(3) Tr¹ng th¸i chuyÓn ®æi: TÝn hiÖu ®Çu ra STATUS b¸o tr¹ng th¸i
chuyÓn ®æi hiÖn hµnh cña ADC; thiÕt lËp ë møc cao nÕu ®ang thùc hiÖn
chuyÓn ®æi vµ ë møc thÊp nÕu ®· hoµn thµnh. Trong qu¸ tr×nh chuyÓn ®æi c¸c
tÝn hiÖu ®iÒu khiÓn bÞ kho¸ vµ d÷ liÖu kh«ng thÓ ®îc ®äc v× c¸c ®êng tÝn
hiÖu ra ®îc chuyÓn sang tr¹ng th¸i cao trë.
(4) §äc d÷ liÖu ra: Qu¸ tr×nh ®äc d÷ liÖu ra cã thÓ ®îc thùc thi nÕu c¸c
tÝn hiÖu ®iÒu khiÓn x¸c lËp ë tr¹ng th¸i cho phÐp ®äc vµ tÝn hiÖu STATUS ë
tr¹ng th¸i thÊp. Tuú thuéc vµo mode chuyÓn ®æi ®îc thiÕt lËp vµ ®Þnh d¹ng
d÷ liÖu ®äc ra bëi tæ hîp tr¹ng 12 / 8 vµ A0.
82C55A lµ mét giao diÖn ngo¹i vi cæng song song kh¶ tr×nh ®îc chÕ t¹o
theo c«ng nghÖ CMOS. Nã lµ mét thiÕt bÞ ngo¹i vi vµo ra kh¶ tr×nh ®a môc
®Ých vµ cã thÓ ®îc sö dông víi nhiÒu lo¹i VXL/V§K kh¸c nhau. 82C55A cã
24 ch©n vµo ra on Chip ®îc chia ra thµnh 2 nhãm, mçi nhãm 12 ch©n vµ cã
thÓ ®îc sö dông theo 3 chÕ ®é ho¹t ®éng kh¸c nhau. H×nh 1-28 m« t¶ gi¶n ®å
khèi chøc n¨ng cña chip 82C55A.
42
82C55A cung cÊp 3 chÕ ®é ho¹t ®éng chÝnh vµ cã thÓ lËp tr×nh ®Ó lùa
chän
ViÖc lùa chän chÕ ®é ho¹t ®éng ®îc thùc hiÖn th«ng qua thanh ghi tõ
®iÒu khiÓn vµ ®îc m« t¶ nh trong h×nh 1-29.
H×nh 1-29: Thanh ghi tõ ®iÒu khiÓn chän chÕ ®é ho¹t ®éng cho 82C55A
Khi ®Çu vµo RESET ®îc ®iÒu khiÓn ë møc cao th× tÊt c¶ c¸c cæng sÏ
®îc thiÕt lËp ho¹t ®éng ë chÕ ®é cæng vµo víi 24 ®êng tÝn hiÖu vµo duy tr× ë
møc logic 1. Sau khi tÝn hiÖu ®iÒu khiÓn RESET ë møc tÝch cùc bÞ lo¹i bá th×
82C55A cã thÓ duy tr× chÕ ®é ho¹t ®éng mµ kh«ng cÇn thªm bÊt kú viÖc khëi
t¹o nµo n÷a. §iÒu nµy sÏ gióp lo¹i bá ®îc c¸c ®iÖn trë treo cao hoÆc treo thÊp
trong c¸c thiÕt kÕ cho m¹ch CMOS. Khi kÝch ho¹t chÕ ®é thiÕt lËp th× thanh
ghi tõ ®iÒu khiÓn sÏ chøa gi¸ trÞ 9Bh. Trong qu¸ tr×nh thùc hiÖn ch¬ng tr×nh
vÉn cã thÓ thay ®æi lùa chän chÕ ®é ho¹t ®éng kh¸c nhau, ®iÒu nµy cho phÐp
82C55 ho¹t ®éng mét c¸ch ®a d¹ng ®¸p øng cho nhiÒu bµi to¸n øng dông kh¸c
44
nhau. Trong qu¸ tr×nh thanh ghi tõ ®iÒu khiÓn ®ang ®îc viÕt th× tÊt c¶ c¸c
cæng ®îc thiÕt lËp ho¹t ®éng ë chÕ ®é cæng ra sÏ ®îc khëi t¹o b»ng zero.
Mode 0 (Vµo ra c¬ b¶n): CÊu h×nh chÕ ®é ho¹t ®éng nµy cung cÊp c¸c
ho¹t ®éng vµo ra ®¬n gi¶n cho c¶ 3 cæng A, B vµ C. D÷ liÖu ®îc trao ®æi trùc
tiÕp vµ kh«ng cÇn ph¶i cã c¬ chÕ b¾t tay. ChÕ ®é ho¹t ®éng nµy hç trî c¸c
chøc n¨ng cô thÓ nh sau:
Hai cæng 8-bit vµ 2 cæng 4-bit
BÊt kú cæng nµo còng cã thÓ lµ cæng vµo hoÆc cæng ra
C¸c ®êng d÷ liÖu tÝn hiÖu ra ®îc chèt
C¸c ®êng tÝn hiÖu vµo kh«ng ®îc chèt
Cã thÓ cÊu h×nh 16 kiÓu ho¹t ®éng vµo ra kh¸c nhau
Mode 1 (Vµo ra cã b¾t tay): ChÕ ®é ho¹t ®éng nµy cung cÊp kh¶ n¨ng
truyÒn d÷ liÖu tíi hoÆc ®i tõ mét cæng cô thÓ cïng víi c¸c tÝn hiÖu b¾t tay.
Trong chÕ ®é nµy cæng A, B ®îc sö dông ®Ó truyÒn d÷ liÖu vµ cæng C ho¹t
®éng nh cæng ®iÒu khiÓn c¬ chÕ ®ång bé b¾t tay. ChÕ ®é ho¹t ®éng nµy cung
cÊp c¸c chøc n¨ng chÝnh sau:
Hai nhãm cæng (Nhãm A vµ Nhãm B). Mçi nhãm bao gåm
1 cæng 8-bit vµ mét cæng d÷ liÖu ®iÒu khiÓn 4-bit.
Cæng d÷ liÖu 8-bit cã thÓ ho¹t ®éng nh hoÆc lµ cæng vµo
hoÆc lµ cæng ra vµ c¶ hai chiÒu d÷ liÖu ®Òu ®îc chèt.
The 4-bit port is used for control and status of the 8-bit
port.
Mode 2 (Bus vµo ra hai chiÒu cã b¾t tay): ChÕ ®é ho¹t ®éng nµy cung
cÊp kh¶ n¨ng truyÒn th«ng víi c¸c ngo¹i vi hoÆc c¸c bus d÷ liÖu 8-bit cho viÖc
truyÒn nhËn d÷ liÖu. C¸c tÝn hiÖu b¾t tay ®îc cung cÊp ®Ó duy tr× dßng tÝn
hiÖu bus t¬ng tù nh chÕ ®é 1. C¸c c¬ chÕ t¹o ng¾t còng cã thÓ ®îc thùc
45
hiÖn ë chÕ ®é nµy. Mét sè c¸c chøc n¨ng chÝnh hç trî trong chÕ ®é nµy bao
gåm:
ChØ sö dông nhãm A
Mét cæng bus 2 chiÒu 8-bit (cæng A) vµ mét cæng ®iÒu
khiÓn 5-bit (Cæng C)
C¶ hai chiÒu d÷ liÖu vµo vµ ra ®Òu ®¬c chèt.
Cæng ®iÒu khiÓn 5-bit (Cæng C) ®îc sö dông cho môc
®Ých ®iÒu khiÓn vµ tr¹ng th¸i cho cæng A ®Ó trao ®æi d÷ liÖu
2 chiÒu 8 bit.
§©y lµ bé ®Õm tèc ®é cao cung cÊp 3 bé ®Þnh thêi 16-bit ®éc lËp vµ cã
thÓ ®îc cÊu h×nh ®Ó ho¹t ®éng ë nhiÒu chÕ ®é ho¹t ®éng. Mçi bé ®Õm cã c¸c
kªnh d÷ liÖu vµ ®iÒu khiÓn riªng biÖt. Hç trî 2 kiÓu m· ho¸ ®Õm nhÞ ph©n (0-
65535) hoÆc BCD (binary coded decimal) (0-9999). Cã 4 thanh ghi tÝch hîp
On-chip ®Ó lu gi¸ trÞ ®Õm vµ cÊu h×nh ho¹t ®éng (tõ ®iÒu khiÓn).
TÇn sè ho¹t ®éng cña bé ®Õm cã thÓ lµm viÖc víi xung nhÞp tÇn sè 10
MHz vµ hç trî 6 chÕ ®é ho¹t ®éng vµ cã thÓ cÊu h×nh riªng lÎ.
H×nh 1-31: CÊu tróc nguyªn lý ®iÓn h×nh cña mét cæng vµo/ra logic giao diÖn
nèi tiÕp
USART
Giao thøc u tiªn truyÒn th«ng nèi tiÕp ®îc ph¸t triÓn bëi Philips
Semiconductor vµ ®îc gäi lµ bus I2C. V× nguån gèc nã ®îc thiÕt kÕ lµ ®Ó
®iÒu khiÓn liªn th«ng2IC (Inter IC) nªn nã ®îc ®Æt tªn lµ2C.
P P PI TÊt c¶ c¸c chÝp
P
cã tÝch hîp vµ t¬ng thÝch víi2CI ®Òu cã thªm mét giao diÖn tÝch hîp trªn
P P
Chip ®Ó truyÒn th«ng trùc tiÕp víi c¸c thiÕt bÞ t¬ng thÝch
2
I
C kh¸c. ViÖc
P P
truyÒn d÷ liÖu nèi tiÕp theo hai híng 8 bit ®îc thùc thi theo 3 chÕ ®é sau:
ChuÈn (Standard)—100 Kbits/sec
Nhanh (Fast)—400 Kbits/sec
Tèc ®é cao (High-Speed)—3.4 Mbits/sec
truyÒn d÷ liÖu nèi tiÕp SDA vµ ®êng truyÒn nhÞp xung ®ång hå nèi tiÕp SCL.
V× c¬ chÕ ho¹t ®éng lµ ®ång bé nªn nã cÇn cã mét nhÞp xung tÝn hiÖu ®ång
48
bé. C¸c thiÕt bÞ hç trî I2C ®Òu cã mét ®Þa chØ ®Þnh nghÜa tríc, trong ®ã mét
P P
sè bit ®Þa chØ lµ thÊp cã thÓ cÊu h×nh. §¬n vÞ hoÆc thiÕt bÞ khëi t¹o qu¸ tr×nh
truyÒn th«ng lµ ®¬n vÞ Chñ vµ còng lµ ®¬n vÞ t¹o xung nhÞp ®ång bé, ®iÒu
khiÓn cho phÐp kÕt thóc qu¸ tr×nh truyÒn. NÕu ®¬n vÞ Chñ muèn truyÒn th«ng
víi ®¬n vÞ kh¸c nã sÏ göi kÌm th«ng tin ®Þa chØ cña ®¬n vÞ mµ nã muèn truyÒn
trong d÷ liÖu truyÒn. §¬n vÞ Tí ®Òu ®îc g¸n vµ ®¸nh ®Þa chØ th«ng qua ®ã
®¬n vÞ Chñ cã thÓ thiÕt lËp truyÒn th«ng vµ trao ®æi d÷ liÖu. Bus d÷ liÖu ®îc
thiÕt kÕ ®Ó cho phÐp thùc hiÖn nhiÒu ®¬n vÞ Chñ vµ Tí ë trªn cïng Bus.
Qu¸ tr×nh truyÒn th«ng 2IC ®îc b¾t ®Çu b»ng tÝn hiÖu start t¹o ra bëi ®¬n
P P
vÞ Chñ. Sau ®ã ®¬n vÞ Chñ sÏ truyÒn ®i d÷ liÖu 7 bit chøa ®Þa chØ cña ®¬n vÞ Tí
mµ nã muèn truyÒn th«ng, theo thø tù lµ c¸c bit cã träng sè lín nhÊt MSB sÏ
®îc truyÒn tríc. Bit thø t¸m tiÕp theo sÏ chøa th«ng tin ®Ó x¸c ®Þnh ®¬n vÞ
Tí sÏ thùc hiÖn vai trß nhËn (0) hay göi (1) d÷ liÖu. TiÕp theo sÏ lµ mét bit
ACK x¸c nhËn bëi ®¬n vÞ nhËn ®· nhËn ®îc 1 byte tríc ®ã hay kh«ng. §¬n
vÞ truyÒn (göi) sÏ truyÒn ®i 1 byte d÷ liÖu b¾t ®Çu bëi MSB. T¹i ®iÓm cuèi cña
byte truyÒn, ®¬n vÞ nhËn sÏ t¹o ra mét bit x¸c nhËn ACK míi. Khu«n mÉu 9
bit nµy (gåm 8 bit d÷ liÖu vµ 1 bit x¸c nhËn) sÏ ®îc lÆp l¹i nÕu cÇn truyÒn
tiÕp byte n÷a. Khi ®¬n vÞ Chñ ®· trao ®æi xong d÷ liÖu cÇn nã sÏ quan s¸t bit
x¸c nhËn ACK cuèi cïng råi sau ®ã sÏ t¹o ra mét tÝn hiÖu dõng STOP ®Ó kÕt
thóc qu¸ tr×nh truyÒn th«ng.
I 2C lµ mét giao diÖn truyÒn th«ng ®Æc biÖt thÝch hîp cho c¸c øng dông
P P
truyÒn th«ng gi÷a c¸c ®¬n vÞ trªn cïng mét bo m¹ch víi kho¶ng c¸ch ng¾n vµ
tèc ®é thÊp. VÝ dô nh truyÒn th«ng gi÷a CPU víi c¸c khèi chøc n¨ng trªn
cïng mét bo m¹ch nh EEPROM, c¶m biÕn, ®ång hå t¹o thêi gian thùc... HÇu
hÕt c¸c thiÕt bÞ hç trî 2IC ho¹t ®éng ë tèc ®é 400Kbps, mét sè cho phÐp ho¹t
P P
®éng ë tèc ®é cao vµi Mbps. 2IC kh¸ ®¬n gi¶n ®Ó thùc thi kÕt nèi nhiÒu ®¬n vÞ
P P
SPI
SPI lµ mét giao diÖn cæng nèi tiÕp ®ång bé ba d©y cho phÐp kÕt nèi
truyÒn th«ng nhiÒu V§K ®îc ph¸t triÓn bëi Motorola. Trong cÊu h×nh m¹ng
kÕt nèi truyÒn thèng nµy ph¶i cã mét V§K gi÷ vai trß lµ Chñ (Master) vµ c¸c
V§K cßn l¹i cã thÓ hoÆc lµ Chñ hoÆc lµ Tí. SPI cã 4 tèc ®é cã thÓ lËp tr×nh,
cùc vµ pha nhÞp ®ång hå kh¶ tr×nh vµ kÕt thóc ng¾t truyÒn th«ng. NhÞp ®ång
hå kh«ng n»m trong dßng d÷ liÖu vµ ph¶i ®îc cung cÊp nh mét tÝn hiÖu t¸ch
®éc lËp. Cã ba thanh ghi SPSR, SPCR vµ SPDR cho phÐp thùc hiÖn c¸c chøc
n¨ng ®iÒu khiÓn, tr¹ng th¸i vµ l÷u tr÷. Cã bèn ch©n c¬ b¶n cÇn thiÕt ®Ó thùc thi
chuÈn giao diÖn truyÒn th«ng nµy.
• D÷ liÖu ra MOSI (Master Output – Slave Input)
• D÷ liÖu vµo MISO (Master Input – Slave Output)
• NhÞp xung chuÈn SCLK (Serial Clock)
• Lùa chän thµnh phÇn tí SS (Slave Select)
H×nh 1-35: KÕt nèi nguyªn lý truyÒn th«ng SPI gi÷a mét Master vµ mét Slave
H×nh 1-35 chØ ra nguyªn lý kÕt nèi gi÷a mét ®¬n vÞ Chñ vµ mét ®¬n vÞ Tí
trong truyÒn th«ng SPI. Trong ®ã tÝn hiÖu SCLK sÏ ®îc t¹o ra bëi ®¬n vÞ Chñ
vµ lµ tÝn hiÖu vµo cña ®¬n vÞ Tí. MOSI lµ ®êng truyÒn d÷ liÖu ra tõ ®¬n vÞ
Chñ tíi ®¬n vÞ Tí vµ MISO lµ ®êng truyÒn d÷ liÖu vµo ®¬n vÞ Chñ ®Õn tõ ®¬n
vÞ Tí. §¬n vÞ Tí ®îc lùa chän khi ®¬n vÞ Chñ kÝch ho¹t tÝn hiÖu SS.
50
H×nh 1-36: S¬ ®å kÕt nèi truyÒn thèng SPI cña mét ®¬n vÞ Master vµ nhiÒu
®¬n vÞ Slave
NÕu hÖ thèng cã nhiÒu ®¬n vÞ tí ®¬n vÞ Chñ sÏ t¹o ph¶i ra c¸c tÝn hiÖu
t¸ch biÖt ®Ó chän ®¬n vÞ Tí. C¬ chÕ ®ã ®îc thùc hiÖn nhê s¬ ®å kÕt nèi
nguyªn lý m« t¶ nh trong H×nh 1-36. §¬n vÞ Chñ sÏ t¹o ra tÝn hiÖu chän ®¬n
vÞ Tí nhê c¸c ch©n tÝn hiÖu logic ®a chøc n¨ng. C¸c tÝn hiÖu nµy ph¶i ®îc
®iÒu khiÓn vµ ®¶m b¶o æn ®Þnh vÒ thêi gian ®Ó tr¸nh trêng hîp tÝn hiÖu bÞ
thay ®æi trong qu¸ tr×nh ®ang truyÒn d÷ liÖu. Mét ®iÒu dÔ nhËn ra r»ng SPI
kh«ng hç trî c¬ chÕ x¸c nhËn trong qu¸ tr×nh thùc hiÖn truyÒn th«ng. §iÒu
nµy phô thuéc vµo giao thøc ®Þnh nghÜa hoÆc ph¶i thùc hiÖn bæ sung thªm mét
sè c¸c më réng phô bªn ngoµi.
Kh¶ n¨ng truyÒn th«ng ®ång thêi hai chiÒu víi tèc ®é lªn ®Õn kho¶ng vµi
Mbit/s vµ nguyªn lý kh¸ ®¬n gi¶n nªn SPI hoµn toµn phï hîp ®Ó thùc hiÖn
truyÒn th«ng gi÷a c¸c thiÕt bÞ yªu cÇu truyÒn th«ng tèc ®é chËm, ®Æc biÖt hiÖu
qu¶ trong c¸c øng dông mét ®¬n vÞ Chñ vµ mét ®¬n vÞ Tí. Tuy nhiªn trong c¸c
øng dông víi nhiÒu ®¬n vÞ Tí viÖc thùc thi l¹i kh¸ phøc t¹p v× thiÕu c¬ chÕ x¸c
®Þnh ®Þa chØ, vµ sù phøc t¹p sÏ t¨ng lªn khi sè ®¬n vÞ Tí t¨ng.
51
Trong phÇn nµy giíi thiÖu ng¾n gän cÊu tróc nguyªn lý cña c¸c chip xö
lý nhóng øng dông trong c¸c nÒn phÇn cøng nhóng hiÖn nay.
Sù ph¸t triÓn nhanh chãng c¸c chñng lo¹i Chip kh¶ tr×nh víi mËt ®é tÝch
hîp cao ®· vµ ®ang cã mét t¸c ®éng ®¸ng kÓ ®Õn sù thay ®æi trong viÖc thiÕt
kÕ c¸c nÒn phÇn cøng thiÕt bÞ xö lý vµ ®iÒu khiÓn sè trong thËp kû gÇn ®©y.
Mçi chñng lo¹i ®Òu cã nh÷ng ®Æc ®iÓm vµ ph¹m vi ®èi tîng øng dông vµ
lu«n kh«ng ngõng ph¸t triÓn ®Ó ®¸p øng mét c¸ch tèt nhÊt cho c¸c yªu cÇu
c«ng nghÖ. Chóng ®ang híng tíi tËp trung cho mét thÞ trêng c«ng nghÖ
tiÒm n¨ng réng lín ®ã lµ c¸c thiÕt bÞ xö lý vµ ®iÒu khiÓn nhóng. Trong bµi viÕt
nµy t¸c gi¶ giíi thiÖu ng¾n gän vÒ c¸c chñng lo¹i chip xö lý, ®iÒu khiÓn nhóng
®iÓn h×nh ®ang tån t¹i vµ ph¸t triÓn vÒ mét sè ®Æc ®iÓm vµ híng ph¹m vi øng
dông cña chóng.
Cã thÓ kÓ ra hµng lo¹t c¸c ChÝp kh¶ tr×nh cã thÓ sö dông cho c¸c bµi to¸n
thiÕt kÕ hÖ nhóng nh c¸c hä vi xö lý/vi ®iÒu khiÓn nhóng (Microprocessor/
Microcontroller), Chip DSP (Digital Signal Processing), c¸c Chip kh¶ tr×nh
trêng (FPD – Field Programmable Device). Chóng ta dÔ bÞ cho¸ng ngîp
nÕu b¾t ®Çu c«ng viÖc thiÕt kÕ b»ng viÖc t×m kiÕm mét Chip xö lý ®iÒu khiÓn
phï hîp cho øng dông. V× vËy cÇn ph¶i cã mét hiÓu biÕt vµ sù ph©n biÖt vÒ
®Æc ®iÓm vµ øng dông cña chóng khi lùa chän vµ thiÕt kÕ. C¸c th«ng tin liªn
quan nh nhµ s¶n xuÊt cung cÊp Chip, c¸c kiÕn thøc vµ c«ng cô ph¸t triÓn kÌm
theo… Mét sè chñng lo¹i Chip ®iÓn h×nh sÏ ®îc giíi thiÖu.
1.2.2.1. ChÝp vi xö lý, vi ®iÒu khiÓn nhóng.
§©y lµ mét chñng lo¹i rÊt ®iÓn h×nh vµ ®ang ®îc sö dông rÊt phæ biÕn
hiÖn nay. Chóng ®îc ra ®êi vµ sö dông theo sù ph¸t triÓn cña c¸c Chip xö lý
øng dông cho m¸y tÝnh. V× ®èi tîng øng dông lµ c¸c thiÕt bÞ nhóng nªn cÊu
tróc còng ®îc thay ®æi theo ®Ó ®¸p øng c¸c øng dông. HiÖn nay chóng ta cã
52
thÓ thÊy c¸c hä vi xö lý ®iÒu khiÓn cña rÊt nhiÒu c¸c nhµ chÕ t¹o cung cÊp nh,
Intel, Atmel, Motorola, Infineon. VÒ cÊu tróc, chóng còng t¬ng tù nh c¸c
ChÝp xö lý ph¸t triÓn cho PC nhng ë møc ®é ®¬n gi¶n h¬n nhiÒu vÒ c«ng
n¨ng vµ tµi nguyªn. Phæ biÕn vÉn lµ c¸c Chip cã ®é réng bus d÷ liÖu lµ 8-bit,
16-bit, 32-bit. VÒ b¶n chÊt cÊu tróc, Chip vi ®iÒu khiÓn lµ chip vi xö lý ®îc
tÝch hîp thªm c¸c ngo¹i vi. C¸c ngo¹i vi thêng lµ c¸c khèi chøc n¨ng ngo¹i
vi th«ng dông nh bé ®Þnh thêi gian, bé ®Õm, bé chuyÓn ®æi A/D, giao diÖn
song song, nèi tiÕp…Møc ®é tÝch hîp ngo¹i vi còng kh¸c nhau tuú thuéc vµo
môc ®Ých øng dông sÏ cã thÓ t×m ®îc Chip phï hîp. Thùc tÕ víi c¸c øng
dông yªu cÇu ®é tÝch hîp cao th× sÏ sö dông gi¶i ph¸p tÝch hîp trªn chip, nÕu
kh«ng th× hÇu hÕt c¸c Chip ®Òu cung cÊp gi¶i ph¸p ®Ó më réng ngo¹i vi ®¸p
øng cho mét sè lîng øng dông réng vµ mÒm dÎo.
H×nh 1-37: CÊu tróc nguyªn lý cña V§K víi cÊu tróc Havard
VÝ dô vÒ kiÕn tróc cña hä V§K AVR
53
DSP vÉn ®îc biÕt tíi nh mét lo¹i vi ®iÒu khiÓn ®Æc biÖt víi kh¶ n¨ng
xö lý nhanh ®Ó phôc vô c¸c bµi to¸n yªu cÇu khèi lîng vµ tèc ®é xö lý tÝnh
to¸n lín. Víi u ®iÓm næi bËt vÒ ®é réng b¨ng th«ng cña bus vµ thanh ghi tÝch
luü, cho phÐp ALU xö lý song song víi tèc ®é ®äc vµ xö lý lÖnh nhanh h¬n
c¸c lo¹i vi ®iÒu khiÓn th«ng thêng. Chip DSP cho phÐp thùc hiÖn nhiÒu lÖnh
trong mét nhÞp nhê vµo kiÕn tróc bé nhí Havard.
Th«ng thêng khi ph¶i sö dông DSP tøc lµ ®Ó ®¸p øng c¸c bµi to¸n tÝnh
to¸n lín vµ tèc ®é cao v× vËy ®Þnh d¹ng biÓu diÔn to¸n häc sÏ lµ mét yÕu tè
quan träng ®Ó ph©n lo¹i vµ ®îc quan t©m. HiÖn nay chñ yÕu chóng vÉn ®îc
ph©n lo¹i theo hai kiÓu lµ dÊu ph¶y ®éng vµ dÊu ph¶y tÜnh. §©y còng chÝnh lµ
mét yÕu tè quan träng ph¶i quan t©m ®èi víi ngêi thiÕt kÕ ®Ó lùa chän ®îc
mét DSP phï hîp víi øng dông cña m×nh. C¸c lo¹i DSP dÊu ph¶y tÜnh thêng
lµ lo¹i 16-bit hoÆc 24-bit cßn c¸c lo¹i dÊu ph¶y tÜnh thêng lµ 32-bit. Mét vÝ
dô ®iÓn h×nh vÒ mét DSP 16-bit dÊu ph¶y tÜnh lµ TMS320C55x, lu c¸c sè
nguyªn 16-bit hoÆc c¸c sè thùc trong mét miÒn gi¸ trÞ cè ®Þnh. Tuy nhiªn c¸c
gi¸ trÞ vµ hÖ sè trung gian cã thÓ ®îc lu tr÷ víi ®é chÝnh x¸c lµ 32-bit trong
thanh ghi tÝch lòy 40-bit nh»m gi¶m thiÓu lçi tÝnh to¸n do phÐp lµm trßn trong
qu¸ trÝnh tÝnh to¸n. Th«ng thêng c¸c lo¹i DSP dÊu ph¶y tÜnh cã gi¸ thµnh rÎ
h¬n c¸c lo¹i DSP dÊu ph¶y ®éng v× yªu cÇu sè lîng ch©n On-chip Ýt h¬n vµ
cÇn sö dông lîng silicon Ýt h¬n.
¦u ®iÓm næi bËt cña c¸c DSP dÊu ph¶y ®éng lµ cã thÓ xö lý vµ biÓu diÔn
sè trong d¶i ph¹m vi gi¸ trÞ réng vµ ®éng. Do ®ã vÊn ®Ò vÒ chuyÓn ®æi vµ h¹n
chÕ vÒ ph¹m vi biÓu diÔn sè kh«ng ph¶i quan t©m nh ®èi víi lo¹i DSP dÊu
ph¶y tÜnh. Mét lo¹i DSP 32-bit dÊu ph¶y tÜnh ®iÓn h×nh lµ TMS320C67x cã
thÓ xö lý vµ biÓu diÔn sè gåm 24-bit mantissa vµ 8-bit exponent. PhÇn
mantissa biÓu diÔn phÇn sè lÎ trong ph¹m vi -1.0 – +1.0 vµ phÇn exponent
55
biÓu diÔn vÞ trÝ cña dÊu ph¶y nhÞ ph©n vµ cã thÓ dÞch chuyÓn sang tr¸i hoÆc
ph¶i tuú theo gi¸ trÞ sè mµ nã biÓu diÔn. §iÒu nµy tr¸i ngîc víi c¸c thiÕt kÕ
trªn nÒn DSP dÊu ph¶y tÜnh, ngêi ph¸t triÓn ch¬ng tr×nh ph¶i tù qui íc, tÝnh
to¸n vµ ph©n chia Ên ®Þnh thang biÓu diÔn sè vµ ph¶i lu«n lu t©m tíi kh¶ n¨ng
trµn sè cã thÓ x¶y ra trong qu¸ tr×nh xö lý tÝnh to¸n. ChÝnh ®iÒu nµy ®· g©y ra
khã kh¨n kh«ng nhá ®èi víi ngêi lËp tr×nh. Nãi chung ph¸t triÓn ch¬ng
tr×nh cho DSP dÊu ph¶y ®éng thêng ®¬n gi¶n h¬n nhng gi¸ thµnh l¹i cao
h¬n nhiÒu vµ n¨ng lîng tiªu thô th«ng thêng còng lín h¬n.
Nh÷ng nhµ thiÕt kÕ hÖ thèng ph¶i quyÕt ®Þnh vïng vµ ®é chÝnh x¸c cÇn
thiÕt cho c¸c øng dông. C¸c vi xö lý dÊu ph¶y ®éng thêng ®îc sö dông cho
c¸c øng dông yªu cÇu vÒ ®é chÝnh x¸c cao vµ d¶i biÓu diÔn sè lín phï hîp víi
hÖ thèng cã cÊu tróc bé nhí lín. H¬n n÷a c¸c DSP dÊu ph¶y ®éng cho phÐp
ph¸t triÓn phÇn mÒm hiÖu qu¶ vµ ®¬n gi¶n h¬n b»ng c¸c tr×nh biªn dÞch ng«n
ng÷ bËc cao nh C do ®ã cã thÓ gi¶m ®îc gi¸ thµnh vµ thêi gian ph¸t triÓn.
Tuy nhiªn gi¸ thµnh l¹i cao nªn c¸c DSP dÊu ph¶y ®éng phï hîp víi c¸c øng
dông kh¸ ®Æc biÖt vµ thêng lµ víi sè lîng Ýt.
1.2.2.3. PAL.
Ngµy nay khi nãi ®Õn c¸c chñng lo¹i Chip kh¶ tr×nh m¶ng ta thêng biÕt
tíi mét sè tªn gäi nh PAL, CPLD, FPGA…Mét chót lîc sö vÒ sù ra ®êi vµ
ph¸t triÓn sau ®©y sÏ gióp chóng ta h×nh dung ®îc ®Æc ®iÓm vµ nguån gèc ra
®êi cña chóng.
LÞch sö ph¸t triÓn cña c¸c chñng lo¹i Chip kh¶ tr×nh m¶ng PLA
(Programmable Logic Array) ®îc b¾t nguån tõ nguyªn lý bé nhí ch¬ng
tr×nh PROM (Programmable Read-Only Memory). Trong ®ã c¸c ®Çu vµo ®Þa
chØ ®ãng vai trß nh c¸c ®êng vµo cña m¹ch logic vµ c¸c ®êng d÷ liÖu ra
®ãng vai trß nh c¸c ®êng ra cña m¹ch logic. V× PROM kh«ng thùc sù phï
57
hîp cho môc ®Ých thiÕt kÕ c¸c m¹ch logic nªn PLA ®· ra ®êi vµo ®Çu thËp kû
70. Nã rÊt phï hîp ®Ó thùc hiÖn m¹ch logic cã d¹ng tæng c¸c tÝch (v× cÊu
thµnh bëi c¸c phÇn tö logic AND vµ OR). Nhng nhîc ®iÓm lµ chi phÝ s¶n
xuÊt cao vµ tèc ®é ho¹t ®éng thÊp. §Ó kh¾c phôc nhîc ®iÓm nµy PAL
(Programmable Array Logic) ®· ®îc ph¸t triÓn. Nã ®îc cÊu thµnh tõ c¸c
phÇn tö AND kh¶ tr×nh vµ phÇn tö OR g¸n cè ®Þnh vµ cã chøa c¶ phÇn tö flip-
flop ë ®Çu ra nªn cã kh¶ n¨ng thùc thi c¸c m¹ch logic tuÇn tù. H×nh 1-42 m«
t¶ cÊu tróc chung cña PAL.
Tõ khi ®îc ra ®êi vµ ph¸t triÓn PAL trë thµnh c¬ së cho sù ra ®êi cña
hµng lo¹t c¸c chñng lo¹i Chip kh¶ tr×nh m¶ng víi cÊu tróc phøc t¹p h¬n nh
SPLD (Simple Program-mable Logic Device), CPLD (Com-plex
Programmable Logic Device), vµ sau nµy lµ FPGA (Field Pro-grammable
Gate Array). SPLD còng lµ tªn gäi cho nhãm c¸c chñng lo¹i Chip kiÓu t¬ng
tù nh PAL, PLA. VÒ mÆt cÊu tróc th× SPLD cho phÐp tÝch hîp logic víi mËt
®é cao h¬n so víi PAL th«ng thêng, nhng kÝch thíc cña nã sÏ t¨ng lªn rÊt
nhanh nÕu tiÕp tóc më réng vµ t¨ng mËt ®é tÝch hîp sè ®Çu vµo. §Ó ®¸p øng
nhu cÇu më réng mËt ®é tÝch hîp CPLD ®· ®îc ph¸t triÓn. Nã lµ sù tÝch hîp
cña nhiÒu khèi SPLD vµ cung cÊp thªm kh¶ n¨ng kÕt nèi kh¶ tr×nh gi÷a c¸c
khèi SPLD ®¬n lÎ víi nhau. Víi nguyªn lý cÊu tróc nµy CPLD cã kh¶ n¨ng
tÝch hîp víi mËt ®é cao t¬ng ®¬ng víi 50 khèi SPLD th«ng thêng.
58
NÕu chØ dõng ®Õn ®©y chóng ta cã thÓ thÊy mét ®Æc ®iÓm chung cña c¸c
chñng lo¹i chip kiÓu PLA hay CPLD ®Òu cho phÐp thùc hiÖn c¸c m¹ch logic
trªn c¬ së tæ hîp logic cña c¸c ®Çu vµo vµ ra b»ng c¸c phÇn tö AND vµ OR.
Víi nguyªn lý nµy râ rµng sÏ gÆp khã kh¨n khi thùc thi c¸c øng dông ®ßi hái
c¸c phÐp tÝnh to¸n logic phøc t¹p víi tèc ®é cao. §Ó ®¸p øng ®iÒu nµy FPGA
(Field Programmable Gate Arrays) ®· ra ®êi. Nã lµ sù cÊu thµnh cña c¸c khèi
logic kh¶ tr×nh cïng víi c¸c kªnh kÕt nèi liªn th«ng kh¶ tr×nh gi÷a c¸c khèi ®ã
víi nhau. Mét h×nh ¶nh tiªu biÓu vÒ cÊu tróc nguyªn lý cña FPGA ®îc m« t¶
nh trong H×nh 1-43: CÊu tróc nguyªn lý cña FPGA.
FPGA - ®ang trë thµnh mét sù lùa chän thay thÕ rÊt c¹nh tranh cña c¸c
chip xö lý nhóng ASICs. Nã hç trî c¸c u ®iÓm vÒ chøc n¨ng lùa chän gièng
nh ASICs nhng cho phÐp chØnh söa vµ thiÕt kÕ l¹i sau khi sö dông vµ gi¸
thµnh ph¸t triÓn thÊp h¬n. FPGA cho phÐp kh¶ n¨ng thiÕt kÕ linh ho¹t vµ thÝch
nghi dÔ dµng cho c¸c tiÖn Ých thiÕt bÞ tèi u, trong khi vÉn duy tr× ®îc kh«ng
gian kÝch thíc phÇn cøng vµ n¨ng lîng tiªu thô cña hÖ thèng. §iÒu nµy
kh«ng dÔ dµng nhËn ®îc khi thiÕt kÕ dùa trªn nÒn c¸c Chip DSP.
FPGA thùc sù phï hîp cho c¸c øng dông ®ßi hái lîng tÝnh to¸n lín nh
trong xö lý tÝn hiÖu. FPGA cã thÓ ®îc lËp tr×nh ho¹t ®éng ®ång thêi víi mét
sè c¸c ®êng d÷ liÖu song song. Chóng lµ c¸c ®êng d÷ liÖu ho¹t ®éng cña tæ
59
hîp nhiÒu c¸c chøc n¨ng tõ ®¬n gi¶n ®Õn phøc t¹p nh bé céng, bé nh©n, bé
®Õm, bé lu tr÷, bé so s¸nh, bé tÝnh t¬ng quan, …
Tuy nhiªn mét ®Æc ®iÓm cã thÓ xem nh lµ nhîc ®iÓm cña FPGA cÊu
t¹o tõ c¸c phÇn tö SRAM lµ chóng ph¶i cÊu h×nh l¹i mçi khi nguån hÖ thèng
®îc cung cÊp. C«ng viÖc nµy thêng ®îc thùc hiÖn bëi mét bé nhí ngoµi
chuyªn dông hoÆc bëi mét bé vi ®iÒu khiÓn kÌm theo m¹ch. ChÝnh v× vËy
còng lµm gi¸ thµnh cña FPGA t¨ng thªm.
Kh«ng gièng nh lo¹i FPGA cÊu t¹o tõ SRAM, FPGA víi cÊu tö kiÓu
cÇu ch× ®îc lËp tr×nh offline b»ng mét thiÕt bÞ lËp tr×nh chuyªn dông. ý tëng
60
chÕ t¹o lo¹i FPGA nµy xuÊt ph¸t tõ nhu cÇu vÒ mét thiÕt bÞ kh¶ tr×nh cã kh¶
n¨ng lu cÊu h×nh sau khi ®îc sö dông. Tøc lµ nã kh«ng ph¶i lµm c«ng viÖc
cÊu h×nh mçi khi nguån hÖ thèng ®îc cung cÊp. Khi FPGA anti-fused ®·
®îc lËp tr×nh th× nã kh«ng thÓ bÞ thay ®æi hay ®îc lËp tr×nh l¹i n÷a. ChÝnh
nhê ®iÒu nµy nªn nã kh«ng cÇn bÊt kú mét bé nhí ngoµi nµo ®Ó lu tr÷ cÊu
h×nh vµ cã thÓ tiÕt kiÖm, gi¶m gi¸ thµnh cña thiÕt bÞ.
Mét u ®iÓm næi bËt cña FPGA anti-fused lµ kiÓu cÊu tróc liªn kÕt kh¸
bÒn v÷ng víi c¸c lo¹i nhiÔu bøc x¹. §Æc ®iÓm nµy kh¸ quan träng khi thiÕt bÞ
ph¶i lµm viÖc trong m«i trêng tiÒm n¨ng nh qu©n sù hoÆc hµng kh«ng vò
trô. V× vËy nã tr¸nh ®îc trêng hîp rñi ro cã thÓ x¶y ra nÕu sö dông c«ng
nghÖ SRAM lµ hiÖn tîng lËt tr¹ng th¸i (flipped). Tuy nhiªn hiÖn tîng nµy
còng cã thÓ ®îc kh¾c phôc b»ng c¬ chÕ dù phßng chËp 3 nhng l¹i lµm t¨ng
thªm chi phÝ chÕ t¹o.
Mét u ®iÓm næi bËt cña lo¹i FPGA anti-fused lµ kh¶ n¨ng b¶o vÖ c«ng
nghÖ. Tøc lµ d÷ liÖu cÊu h×nh lËp tr×nh cho FPGA cã thÓ ®îc b¶o vÖ bëi viÖc
®äc bÊt hîp ph¸p hoÆc kh«ng cho phÐp ®äc. Trong qu¸ tr×nh xö lý hoÆc ph¸t
triÓn, ngêi lËp tr×nh sÏ sö dông mét tÖp d÷ liÖu cÊu h×nh ®Ó lËp tr×nh vµ kiÓm
tra qu¸ tr×nh n¹p cÊu h×nh cho FPGA. C«ng viÖc nµy chØ thùc hiÖn mét lÇn vµ
sÏ kh«ng thÓ thay ®æi ®îc n÷a. Khi thùc hiÖn xong nã cã thÓ ®îc thiÕt lËp
thªm mét thuéc tÝnh lµ chèng ®äc trùc tiÕp tõ FPGA d÷ liÖu liªn quan ®Õn cÊu
h×nh. Ngoµi ra chóng ta còng cã thÓ biÕt thªm r»ng FPGA anti-fused thêng
sö dông Ýt n¨ng lîng h¬n lo¹i FPGA SRAM, kÝch thíc còng nhá h¬n, vµ tèc
®é còng nhanh h¬n mét chót nhê kho¶ng c¸ch kÕt nèi cøng gi÷a c¸c phÇn tö
ng¾n h¬n.
Tuy nhiªn nhîc ®iÓm lín nhÊt cña FPGA anti-fused lµ chØ cã thÓ ®îc
lËp tr×nh vµ cÊu h×nh mét lÇn. V× vËy nã chØ thùc sù phï hîp khi thùc thi hoµn
chØnh s¶n phÈm cuèi cïng vµ kh«ng phï hîp víi môc ®Ých thiÕt kÕ ph¸t triÓn.
61
§Ó b¶o vÖ c«ng nghÖ khi FPGA ®· ®îc cÊu h×nh vµ ®a ra sö dông, ta
cã thÓ b¶o vÖ b»ng c¬ chÕ khãa m· mÒm (cÊu t¹o tõ kho¶ng 50 bit ®Õn vµi
tr¨m bit). Muèn ®äc ®îc th«ng tin cÊu h×nh trùc tiÕp tõ FPGA, ngêi ta cÇn
ph¶i cã m· khãa ®ã vµ còng rÊt khã hoÆc kh«ng thÓ mß ®îc theo nguyªn lý
thö sai. V× muèn vËy theo íc tÝnh còng ph¶i mÊt ®Õn hµng triÖu n¨m míi hy
väng thµnh c«ng ®Ó mß ra ®îc.
Tuy nhiªn c«ng nghÖ chÕ t¹o FPGA-EEPROM/FLASH ®ßi hßi thùc thi
qua nhiÒu c«ng ®o¹n xö lý h¬n so víi lo¹i FPGA-SRAM v× vËy mµ sù ph¸t
triÓn cña chóng còng chËm h¬n. H¬n n÷a n¨ng lîng tiªu thô cña chóng còng
lín h¬n v× ph¶i nu«i rÊt nhiÒu c¸c phÇn tö ®iÖn trë kÐo (pull-up resistor).
Ngµy nay ngêi ta còng ph¸t triÓn chÕ t¹o c¸c lo¹i FPGA cÊu t¹o tõ c¸c
tæ hîp SRAM vµ FLASH ®Ó tËn dông ®îc c¸c u ®iÓm cña c¶ hai chñng lo¹i
nµy. Th«ng thêng c¸c phÇn tö cÊu h×nh FLASH sÏ ®îc sö dông ®Ó lu c¸c
néi dung cÊu h×nh ®Ó sao chÐp cho c¸c phÇn tö cÊu h×nh SRAM. Vµ c¸c phÇn
tö cÊu h×nh SRAM hoµn toµn cã thÓ ®îc cÊu h×nh l¹i theo yªu cÇu thiÕt kÕ
62
trong khi vÉn duy tr× mét phÇn thiÕt kÕ cÊu h×nh gèc lu trong c¸c phÇn tö
FLASH.
Ngêi ta còng thêng ph©n lo¹i FPGA dùa vµo phÇn tö kiÕn tróc cña
chóng vµ bao gåm 3 lo¹i chÝnh: mÞn, th« vµ trung b×nh. B¶n chÊt viÖc ph©n
lo¹i nµy lµ dùa vµo kiÓu khèi logic kh¶ tr×nh cÊu thµnh nªn FPGA. Víi lo¹i
FPGA mÞn th× kiÕn tróc c¸c khèi logic kh¶ tr×nh thêng lµ c¸c cæng logic ®¬n
gi¶n (kiÓu AND, OR…, vµ c¸c phÇn tö lu gi÷ nh Triger D…). KiÓu kiÕn
tróc nµy phï hîp vµ thêng sö dông hiÖu qu¶ víi kiÕn tróc ASIC. GÇn ®©y xu
thÕ ph¸t triÓn cña FPGA ®ang tËp trung vµo lo¹i kiÕn tróc th«. Tøc lµ c¸c khèi
logic kh¶ tr×nh lµ c¸c khèi cã kh¶ n¨ng xö lý logic lín víi nhiÒu tæ hîp liªn
kÕt vµ phøc t¹p víi nhiÒu ®Çu vµo vµ ra liªn kÕt. Tïy theo møc ®é cña khèi
logic kh¶ tr×nh ®ã mµ ngêi ta ph©n ra thµnh c¸c lo¹i trung b×nh.
Cã hai lo¹i cÊu tróc c¬ b¶n cÊu thµnh nªn c¸c khèi logic kh¶ tr×nh trong
kiÕn tróc FPGA th« hoÆc trung b×nh lµ MUX (Multiplexer) vµ LUT (Lookup
Table). Trong lo¹i cÊu tróc MUX th× c¸c phÇn tö logic ®îc cÊu thµnh theo
cÊu tróc tæ hîp c¸c ®Çu vµo ra theo nguyªn lý MUX nh m« t¶ trong h×nh 1-
45: Khèi logic d¹ng MUX.
63
§èi víi lo¹i cÊu tróc LUT th× c¸c ®Çu vµo thùc chÊt lµ c¸c tæ hîp ®Ó chän
ra gi¸ trÞ trong b¶ng chÊt lý cña hµm chøc n¨ng cÇn thùc thi. Nguyªn lý cña
lo¹i khèi logic nµy ®îc m« t¶ nh trong h×nh 1-46.
HÇu hÕt c¸c øng dông ®Òu cã nhu cÇu vÒ bé nhí RAM on Chip v× vËy
mét sè dßng FPGA hiÖn nay còng tÝch hîp thªm c¶ c¸c phÇn tö nhí RAM vµ
®îc gäi lµ RAM nhóng (embedded RAM). C¸c phÇn tö RAM ®ã ®îc tæ
chøc thµnh tõng khèi vµ tuú thuéc vµo kiÕn tróc cña FPGA nã sÏ ®îc ph©n bè
linh ho¹t, thêng lµ xung quanh c¸c phÇn tö ngo¹i vi hoÆc ph©n bè ®Òu trªn bÒ
mÆt Chip. Mét h×nh ¶nh minh ho¹ vÒ ph©n bè RAM trong kiÕn tróc FPGA
®îc m« t¶ nh trong h×nh 1-47.
H×nh 1-47: H×nh ¶nh cña Chip cã c¸c cét lµ c¸c khèi RAM nhóng
Thùc chÊt ®ã lµ mét tæ hîp nh»m t¨ng tèc vµ kh¶ n¨ng tÝnh to¸n. Kh¸i
niÖm nµy còng t¬ng tù nh c¸c bé ®ång xö lý to¸n häc trong kiÕn tróc m¸y
64
tÝnh. Nguyªn lý lµ nh»m san sÎ vµ gi¶m bít t¶i sang FPGA ®Ó thùc thi c¸c
chøc n¨ng tÝnh to¸n lín (th«ng thêng ®ßi hái thùc hiÖn trong nhiÒu nhÞp ho¹t
®éng cña Chip DSP) vµ cho phÐp Chip DSP tËp trung thùc hiÖn c¸c chøc n¨ng
®¬n nhÞp tèi u. Tæ hîp FPGA vµ DSP lµ mét kiÕn tróc rÊt linh ho¹t vµ ®Æc
biÖt c¶i thiÖn ®îc hiÖu suÊt thùc hiÖn vµ t¨ng tèc h¬n rÊt nhiÒu so víi kiÕn
tróc nhiÒu Chip DPS hoÆc ASICs ®ång thêi gi¸ thµnh l¹i thÊp h¬n.
Qu¸ tr×nh ph¸t triÓn phÇn mÒm nhóng thùc hiÖn theo chu tr×nh sau:
(5) Code/debug
(6) Test
(7) Integrate
65
N¨m 1962 Carl Adam Petri ®· c«ng bè ph¬ng ph¸p m« h×nh h×nh häa
t¸c vô hay qu¸ tr×nh theo sù phô thuéc nh©n qu¶ ®· ®îc phæ cËp réng r·i vµ
®îc biÕt tíi nh ngµy nµy víi tªn gäi lµ m¹ng Petri.
M¹ng Petri ®îc sö dông phæ biÕn ®Ó biÓu diÔn m« h×nh vµ ph©n tÝch c¸c
hÖ thèng cã sù c¹nh tranh trong qu¸ tr×nh ho¹t ®éng. Mét hÖ thèng cã thÓ hiÓu
lµ mét tæ hîp cña nhiÒu thµnh phÇn vµ mçi thµnh phÇn th× ®Òu cã c¸c thuéc
tÝnh. C¸c thuéc tÝnh ®ã cã thÓ thay ®æi vµ ®îc ®Æc trng bëi c¸c biÕn tr¹ng
th¸i. Mét chuçi c¸c tr¹ng th¸i sÏ m« t¶ qu¸ tr×nh ®éng cña mét hÖ thèng.
M¹ng Petri thùc sù lµ mét gi¶i ph¸p m« t¶ hÖ thèng ®éng víi c¸c sù kiÖn
rêi r¹c t¸c ®éng lµm thay ®æi tr¹ng th¸i cña c¸c ®èi tîng trong hÖ thèng theo
tõng ®iÒu kiÖn cô thÓ tr¹ng th¸i cña hÖ thèng.
M¹ng Petri ®îc thiÕt lËp dùa trªn 3 thµnh phÇn chÝnh: (1) C¸c ®iÒu kiÖn,
(2) c¸c sù kiÖn, vµ (3) quan hÖ luång. C¸c ®iÒu kiÖn cã thÓ lµ tho¶ m·n hoÆc
66
kh«ng tho¶ m·n. C¸c sù kiÖn lµ cã thÓ x¶y ra hoÆc kh«ng. Vµ quan hÖ luång
m« t¶ ®iÒu kiÖn cña hÖ tríc khi sù kiÖn x¶y ra.
C¸c ®iÒu kiÖn ®ßi hái ph¶i tho¶ m·n ®Ó mét sù kiÖn x¶y ra hoÆc chuyÓn
tr¹ng th¸i thùc hiÖn th× ®îc gäi lµ ®iÒu kiÖn tríc (precondition). C¸c ®iÒu
kiÖn mµ ®îc tho¶ m·n khi mét sù kiÖn nµo ®ã x¶y ra th× ®îc gäi lµ ®iÒu kiÖn
sau (postcondition).
1.3.2.2. Quy íc biÓu diÔn m« h×nh Petrinet.
Trong qui íc biÓu diÔn h×nh ho¹ th× m¹ng Petri sö dông c¸c vßng trßn
®Ó biÓu diÔn c¸c ®iÒu kiÖn, c¸c hép ®Ó biÓu diÔn c¸c sù kiÖn, vµ mòi tªn biÓu
diÔn quan hÖ luång. Mét vÝ dô minh ho¹ vÒ m¹ng Petri ®îc m« t¶ trong H×nh
6-1, trong ®ã:
• P = { p 1 , p2 ,..., pnp } lµ tËp gåm np vÞ trÝ ®îc biÓu diÔn trong m«
R R R R R R
hÖ thèng. C¸c gi¸ trÞ mi lµ sè c¸c thÎ bµi (®îc ký hiÖu nh c¸c chÊm
R R
trßn ®en) chøa bªn trong c¸c vÞ trÝi ptrong tËp dÊu M. R R
67
HÖ thèng ®éng cã thÓ ®îc m« t¶ bëi m¹ng Petri nhê sù chuyÓn dÞch c¸c
thÎ bµi trong c¸c vÞ trÝ cña hÖ thèng m« h×nh vµ tu©n thñ theo luËt sau:
• Mét chuyÓn ®æi ®îc phÐp thùc thi nÕu tÊt c¶ c¸c vÞ trÝ ®i vµo chuyÓn
®æi ®ã chøa Ýt nhÊt mét thÎ bµi.
• Khi mét chuyÓn ®æi ®· ®îc thùc thi xong (hoµn thµnh) th× mét thÎ bµi
sÏ bÞ lo¹i ra khái vÞ trÝ ®i vµo chuyÓn ®æi ®ã ®ång thêi bæ sung thªm mét thÎ
bµi vµo c¸c vÞ trÝ ®Çu ra t¬ng øng cña chuyÓn ®æi ®ã.
C¸c tr¹ng th¸i ®éng cña hÖ thèng ®îc m« t¶ bëi tËp R (M) ®¸nh dÊu bëi
c¸c dÊu trong tËp M. Trong vÝ dô trªn cã 5 phÇn tö dÊu trong tËp R lÇn lît lµ
M1 , M2, M 3 , M4 , M5 . T¬ng øng lÇn lît nh sau:
R R R R R R R R R R
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):
68
®îc phÐp thùc hiÖn ®ång thêi; ho¹t ®éng cña chóng kh«ng ¶nh hëng ®Õn
nhau. C¸c ho¹t ®éng ®îc m« h×nh bëi hai chuyÓn ®æi thùc hiÖn song song.
Trong hÖ thèng dù phßng víi ®é tin cËy cao, m« h×nh nµy ®îc sö dông ®Ó
biÓu diÔn hai thµnh phÇn1Cvµ C2 song song ®Ó ®¶m b¶o ho¹t ®éng dù phßng;
R R R R
trong trêng hîp nµy c¸c vÞ trÝ1pvµ p3 biÓu diÔn ®iÒu kiÖn lµm viÖc, c¸c vÞ trÝ
R
R R R
c¶ p2 vµ p4 .
R
R R R
Chia sÎ ®ång bé
Mét yÕu tè ®Æc trng trong ho¹t ®éng cña hÖ thèng ph©n t¸n lµ thêng
ph¶i chia sÎ mét sè tµi nguyªn h÷u h¹n. Sù thiÕu thèn vÒ tµi nguyªn lµm h¹n
chÕ ho¹t ®éng cña hÖ thèng trong qu¸ tr×nh xö lý thËm chÝ lµm t¾c nghÏn hÖ
69
thèng. ViÖc m« h×nh vµ ph©n tÝch c¸c hÖ thèng cã hiÖn tîng t¾c nghÏn lµ mét
t¸c vô khã kh¨n trong hÇu hÕt c¸c qu¸ tr×nh m« h×nh cã thÓ gÆp ph¶i.
H×nh 1-52: Ho¹t ®éng cña bé ®Õm víi dung lîng h÷u h¹n
§Ó minh ho¹ t×nh huèng nµy, biÓu diÔn ho¹t ®éng cña bé ®Öm víi dung
lîng h÷u h¹n ®îc m« t¶ bëi PN trong h×nh 1-52. VÞ trÝ3 m«
p h×nh sè c¸c vÞ R R
tæng c¸c thÎ bµi chøa trong c¸c vÞ trÝ 2pvµ p3 lu«n lµ h»ng sè (trong vÝ dô nµy
R R R R
lµ 3). ChuyÓn ®æi2 tm« h×nh qu¸ tr×nh ®iÒn ®Çy mét vÞ trÝ bé ®Öm vµ hoµn
R R
thµnh nÕu cã Ýt nhÊt mét vÞ trÝ bé ®Öm cßn trèng cïng víi thÎ bµi chøa trong vÞ
trÝ p1 vµ p3. ChuyÓn ®æi3 t®îc phÐp thùc hiÖn nÕu cã Ýt nhÊt mét vÞ trÝ bé
R R R R R R
TuÇn tù
Ho¹t ®éng tuÇn tù sÏ ®îc m« t¶ vµ minh ho¹ bëi ho¹t ®éng cña bé t¹o
vµ bé sö dông th«ng qua mét bé ®Öm. Bé t¹o sÏ sinh ra c¸c ®èi tîng ®Ó ®a
vµo trong mét bé ®Öm vµ sÏ ®îc lÊy ra bëi bé sö dông. Qu¸ tr×nh sö dông sÏ
ph¶i ®îc thùc hiÖn mét c¸ch tuÇn tù theo qu¸ tr×nh t¹o ra ®èi tîng. M« h×nh
cho ho¹t ®éng nµy ®îc diÔn t¶ bëi PN nh trong h×nh 1-53 (a). ThÎ bµi chøa
trong vÞ trÝ1pcã nghÜa lµ bé t¹o ®· s½n sµng thùc hiÖn. Khi c¸c chuyÓn ®æ
R R
1 i t R R
70
vµ t2 hoµn thµnh th× mét ®èi tîng ®îc t¹o ra (mét thÎ bµi t¬ng øng còng sÏ
R R
l¹i. NÕu bé sö dông cã nhu cÇu tiªu thô (®îc m« h×nh bëi thÎ bµi chøa trong
vÞ trÝ 3p) vµ ®ang cã Ýt nhÊt mét ®èi tîng trong bé ®Öm th× mét thÎ bµi chøa
R R
m« h×nh c¸c vÞ trÝ bé ®Öm ®· ®îc ®iÒn ®Çy. Tæng sè lîng c¸c thÎ bµi chøa
trong c¸c vÞ trÝ 5pvµ p6 ph¶i lu«n lµ h»ng sè. NÕu mét thÎ bµi ®îc g¸n cho vÞ
R R R R
trÝ p5 trong dÊu khëi t¹o th× bé t¹o sÏ kh«ng thÓ t¹o thªm ®èi tîng chõng nµo
R R
Hai t¸c vô C 1 vµ C2 ®îc phÐp lµm viÖc song song vµ cïng chia sÎ tµi
R R R R
nguyªn CS, nhng kh«ng ®îc truy nhËp vµo tµi nguyªn ®ång thêi. Gi¶n ®å
PN cho ho¹t ®éng nµy ®îc m« t¶ nh trong h×nh 1-54. C¸c vÞ trÝ p p5 biÓu
1 vµ R
R R R
cña c¸c t¸c vô C 1 vµ C2 mét c¸ch t¬ng øng khi muèn truy nhËp vµo tµi
R R R R
nguyªn chia sÎ CS; p 3 vµ p7 biÓu diÔn CS ®ang bÞ chiÕm dông bëi c¸c t¸c vô
R R R R
C1 vµ C2 mét c¸ch t¬ng øng. VÞ trÝ4 pm« t¶ quyÕt ®Þnh xem t¸c vô nµo cã thÓ
R R R R R R
truy nhËp tµi nguyªn Cs vµ tr¸nh c¸c vÞ trÝ3 pvµ p7 bÞ ®¸nh dÊu ®ång thêi. R
R R R
hoµn thµnh mét trong hai t¸c vô sÏ kho¸/cÊm lÉn nhau. ViÖc hoµn thµnh
chuyÓn ®æi3 t hoÆc 6t sÏ m« h×nh viÖc gi¶i phãng nguån tµi nguyªn chung
R
R R R
(chuyÓn thÎ bµi trë l¹i vÞ trÝ4)p vµ trë vÒ ®iÒu kiÖn lµm viÖc b×nh thêng. R R
H×nh 1-54: Ho¹t ®éng lo¹i trõ cña hai t¸c vô song song chia sÎ chung tµi
nguyªn
§Ó b¾t ®Çu lµm quen víi nguyªn lý biÓu diÔn m« h×nh hãa b»ng m¹ng
Petri chóng ta xÐt ho¹t ®éng cña mét hÖ thèng ®ång bé gi÷a ho¹t ®éng t¹o vµ
sö dông mét h¹ng môc (item) th«ng qua bé ®Öm nh ®îc m«t t¶ trong h×nh
díi.
Bé t¹o - Producer:
T¹o ra h¹ng môc
Bæ sung vµo bé ®Öm
HÖ thèng võa xÐt ®îc m« h×nh hãa bëi ®iÒu kiÖn vµ sù kiÖn. C¸c ®iÒu
kiÖn ®îc m« t¶ bëi c¸c vßng trßn vµ nÕu ®iÒu kiÖn tháa m·n th× khi ®ã vßng
73
trßn sÏ ®îc biÓu diÔn víi mét chÊm trßn n»m trong t¬ng øng víi mét thÎ bµi
(token).
Sù kiÖn ®îc ký hiÖu bëi c¸c hép h×nh ch÷ nhËt. Víi mçi mét sù kiÖn th×
sÏ tån t¹i
• Mét tËp c¸c ®iÒu kiÖn tríc vµ ®îc nhËn biÕt bëi c¸c mòi tªn ®i
vµo c¸c sù kiÖn tõ c¸c ®iÒu kiÖn ®ã vµ
• Mét tËp c¸c ®iÒu kiÖn sau ®îc nhËn biÕt bëi c¸c mòi tªn ®i ra
khái c¸c sù kiÖn vµ ®i vµo c¸c ®iÒu kiÖn ®ã.
Mét sù kiÖn cã thÓ x¶y ra (®îc thùc thi) khi vµ chØ khi
tÊt c¶ c¸c ®iÒu kiÖn tríc t¬ng øng ®îc tháa m·n (nhËn
®îc thÎ bµi) vµ
tÊt c¶ c¸c ®iÒu kiÖn sau t¬ng øng cha ®îc tháa m·n.
Víi lo¹i m¹ng biÓu diÔn nh trªn ngêi ta gäi lµ m¹ng Petri c¬ b¶n
(Elementary Net) vµ ký hiÖu t¾t lµ EN.
§Ó thuËn tiÖn vµ ®¬n gi¶n hãa trong viÖc biÓu diÔn ngêi ta cã thÓ sö
dông c¸c mòi tªn cã thªm träng sè nguyªn ®Ó m« t¶ hÖ thèng cã chung nhiÒu
®iÒu kiÖn tríc vµ sau t¬ng øng cïng víi mét sù kiÖn hoÆc ®iÒu kiÖn. §Æc
biÖt khi sè h¹ng môc trao ®æi gi÷a bé t¹o vµ bé sö dông lín h¬n 1. Víi lo¹i
m¹ng nh vËy ngêi ta ph©n lo¹i vµ gäi lµ m¹ng Petri ChuyÓn ®æi/VÞ trÝ
(Transitions/Places) ký hiÖu t¾t lµ P/T-net.
•C¸c chuyÓn ®æi ®îc m« t¶ bëi c¸c h×nh ch÷ nhËt: C¸c chuyÓn
®æi sÏ lÊy ®i hoÆc thªm vµo sè thÎ bµi tõ hoÆc tíi mét vÞ trÝ.
•C¸c mòi tªn kÕt nèi trùc tiÕp gi÷a c¸c vÞ trÝ vµ chuyÓn ®æi: C¸c
mòi tªn cã kÌm theo c¸c träng sè t¬ng øng víi sè lîng thÎ bµi
mµ nã cã thÓ ®îc lÊy ra hoÆc thªm vµo trong c¸c vÞ trÝ.
Qui íc: Mét tËp vÞ trÝ kÕt nèi víi chuyÓn ®æi th«ng qua mét mòi tªn trùc
tiÕp theo chiÒu tõ vÞ trÝ tíi chuyÓn ®æi ®îc gäi lµ tËp c¸c tiÒn chuyÓn ®æi.
Ngîc l¹i, mét tËp vÞ trÝ kÕt nèi víi chuyÓn ®æi th«ng qua mét mòi tªn trùc
tiÕp theo chiÒu ngîc tõ vÞ trÝ tíi chuyÓn ®æi th× ®îc gäi lµ tËp c¸c hËu
chuyÓn ®æi.
Mét chuyÓn ®æi cã thÓ x¶y ra (thùc hiÖn) khi vµ chØ khi tÊt c¶ c¸c vÞ trÝ
trong tËp tiÒn vÞ trÝ chøa mét sè lîng tèi thiÓu thÎ bµi nh ®îc ®Þnh nghÜa
bëi c¸c träng sè cña c¸c mòi tªn t¬ng øng.
VÝ dô biÓu diÔn m« t¶ mét ho¹t ®éng hÖ thèng víi 2 h¹ng môc cÇn ®ång
bé gi÷a bé t¹o vµ bé sö dông.
75
§Þnh nghÜa: N = (C, E, F) ®îc gäi lµ mét m¹ng nÕu vµ chØ nÕu nã tho¶
m·n c¸c thuéc tÝnh sau:
Hay nãi c¸ch kh¸c lµ mét ®iÒu kiÖn cÇn ph¶i ®îc tho¶ m·n ®Ó mét sù
kiÖn nµo ®ã x¶y ra th× ®îc gäi lµ ®iÒu kiÖn tríc vµ mét ®iÒu kiÖn ®îc tho¶
m·n sau khi mét sù kiÖn nµo ®ã x¶y ra th× ®îc gäi lµ ®iÒu kiÖn sau cña sù
kiÖn ®ã.
M¹ng N ®îc gäi lµ thuÇn nhÊt nÕu F kh«ng chøa bÊt kú vßng lÆp nµo.
§Þnh nghÜa : Mét m¹ng ®îc gäi lµ ®¬n gi¶n nÕu kh«ng cã bÊt kú hai
chuyÓn ®æi t1, t2 nµo cã cïng tËp c¸c ®iÒu kiÖn tríc vµ c¸c ®iÒu kiÖn sau.
C¸c m¹ng mµ kh«ng chøa bÊt kú phÇn tö t¸ch biÖt nµo còng nh kh«ng
cã thªm bÊt kú mét h¹n chÕ nµo th× ®îc gäi lµ m¹ng ®iÒu kiÖn /sù kiÖn.
M¹ng chuyÓn ®æi/vÞ trÝ
Trong c¸c m¹ng ®iÒu kiÖn/sù kiÖn chØ chøa nhiÒu nhÊt lµ mét token cho
mçi mét ®iÒu kiÖn. §Ó h¹n chÕ ®iÒu nµy tøc lµ mét ®iÒu kiÖn cã thÓ chøa
nhiÒu token vµ ngêi ta gäi lµ m¹ng chuyÓn ®æi/vÞ trÝ. C¸c vÞ trÝ t¬ng øng víi
c¸c ®iÒu kiÖn vµ c¸c chuyÓn ®æi t¬ng øng víi c¸c sù kiÖn trong m¹ng ®iÒu
kiÖn/sù kiÖn.
Sè lîng token cho mçi mét ®iÒu kiÖn ®îc gäi lµ Marking. VÒ mÆt to¸n
häc, Marking chÝnh lµ mét ¸nh x¹ to¸n häc cho phÐp chuyÓn mét tËp c¸c vÞ trÝ
vµo mét tËp c¸c sè tù nhiªn ®îc më réng bëi c¸c biÓu tîng ®Æc biÖt -.
VÝ dô : M« t¶ ch¬ng tr×nh ®iÒu khiÓn luång tµu ®iÖn b»ng m¹ng Petrinet
®iÒu kiÖn/sù kiÖn ®Ó tr¸nh trêng hîp xung ®ét trªn mét ®êng ray theo hai
híng tµu ch¹y.
• Tµu ®ang chuyÓn ®éng trªn ®êng ray theo chiÒu ph¶i.
• Tµu ®ang chuyÓn ®éng trªn ®êng ray theo chiÒu tr¸i.
C¸c sù kiÖn :
Token : §êng ray s½n sµng cho tµu vµo theo mét trong hai chiÒu
VHDL lµ mét chuÈn IEEE (Std-1076) ®· ®îc sù hç trî bëi rÊt nhiÒu nhµ
cung cÊp ph¸t triÓn phÇn cøng. øng dông mét c¸ch chuyªn nghiÖp ng«n ng÷
nµy lµ phôc vô cho viÖc m« t¶ c¸c m¹ch ASICs phøc hîp, chÕ t¹o thùc thi c¸c
m¹ch FPGA...
Ng«n ng÷ VHDL cã thÓ ®äc hiÓu kh¸ dÔ dµng víi cÊu tróc có ph¸p râ
rµng gÇn gièng nh ng«n ng÷ Visual Basic vµ Pascal. Nã cã thÓ ph¸t huy ®îc
thÕ m¹nh vÒ có ph¸p ®Ó ®Þnh nghÜa x©y dùng kiÓu d÷ liÖu míi vµ hç trî cho
viÖc lËp tr×nh theo nhãm. Víi xu thÕ hiÖn nay c¸c nhãm ph¸t triÓn cã thÓ thùc
thi víi ®iÒu kiÖn c¸ch xa nhau vÒ kho¶ng c¸ch ®Þa lý, v× vËy viÖc phèi hîp vµ
thiÕt kÕ theo nhãm lµ rÊt cÇn thiÕt.
79
Kh¸i niÖm
FPGA (Field Programable Gate Arrays) lµ mét thiÕt bÞ b¸n dÉn bao gåm
c¸c khèi logic lËp tr×nh ®îc gäi lµ "Logic Block", vµ c¸c kÕt nèi kh¶ tr×nh.
C¸c khèi logic cã thÓ ®îc lËp tr×nh ®Ó thùc hiÖn c¸c chøc n¨ng cña c¸c khèi
logic c¬ b¶n nh AND, XOR, hoÆc c¸c chøc n¨ng kÕt hîp phøc t¹p h¬n nh
decoder hoÆc c¸c phÐp tÝnh to¸n häc. Trong hÇu hÕt c¸c kiÕn tróc FPGA, c¸c
khèi logic còng bao gåm c¶ c¸c phÇn tö nhí. §ã cã thÓ lµ c¸c Flip-Flop hoÆc
nh÷ng bé nhí hoµn chØnh h¬n. C¸c kÕt nèi kh¶ tr×nh cho phÐp c¸c khèi logic
cã thÓ nèi víi nhau theo thiÕt kÕ cña ngêi x©y dùng hÖ thèng, gièng nh mét
b¶ng m¹ch kh¶ tr×nh.
Mét kiÕn tróc kh¸c t¬ng tù nhng ®¬n gi¶n h¬n FPGA, lµ CPLD
(Complex Programable Logic Device). Thùc chÊt ®©y lµ tiÒn th©n cña FPGA.
N¨m 1984, Ross Freeman, mét ®ång s¸ng lËp cña Xilinx ®· ph¸t minh ra
FPGA. FPGA vµ CPLC ®Òu bao gåm mét sè lîng kh¸ lín c¸c phÇn tö logic
kh¶ tr×nh. MËt ®é cæng logic (Logic Gate) cña CPLD n»m trong kho¶n tõ vµi
ngh×n cho ®Õn 10 ngh×n cæng. Trong khi ®ã FPGA th«ng thêng chøa tõ 10
ngh×n cho ®Õn vµi triÖu cæng.
Kh¸c biÖt c¬ b¶n gi÷a FPGA vµ CPLD lµ ë kiÕn tróc cña chóng. CPLD
cã mét kiÕn tróc bÞ giíi h¹n trong mét hoÆc mét vµi d·y logic kh¶ tr×nh cïng
víi mét lîng nhá thanh ghi ®Þnh thêi. Do ®ã nã kÐm linh ho¹t h¬n, nhng l¹i
cã u ®iÓm lµ kh¶ n¨ng dù ®o¸n trÔ lín h¬n vµ tØ lÖ logic-kÕt nèi cao h¬n.
Ngîc l¹i, trong kiÕn tróc cña FPGA l¹i cã sù tréi h¬n vÒ sè lîng kÕt nèi.
§iÒu nµy lµm cho nã trë nªn linh ho¹t h¬n (vÒ sè lîng thiÕt kÕ ®îc thùc thi
bªn trong) nhng còng ®ång nghÜa víi viÖc phøc t¹p h¬n trong qu¸ tr×nh thiÕt
80
kÕ. Mét kh¸c biÖt ®¸ng chó ý n÷a gi÷a FPGA vµ CPLD lµ : hÇu hÕt c¸c FPGA
hiÖn nay ®Òu bao cã c¸c phÇn tö chøc n¨ng tÝch hîp cao h¬n (nh bé céng,
nh©n tÝch hîp), vµ bé nhí tÝch hîp.
Mét sè kiÕn tróc FPGA hiÖn nay cßn cã thÓ cho phÐp cÊu h×nh l¹i tõng
phÇn (partial re-configuration). Cã nghÜa lµ cho phÐp mét phÇn cña thiÕt kÕ
®îc cÊu h×nh l¹i trong khi nh÷ng thiÕt kÕ kh¸c vÉn tiÕp tôc ho¹t ®éng.
Mét u ®iÓm kh¸c cña FPGA, lµ ngêi thiÕt kÕ cã thÓ tÝch hîp vµo ®ã c¸c
bé xö lý mÒm (soft processor) hay vi xö lý tÝch hîp (embedded processor).
C¸c vi xö lý nµy cã thÓ ®îc thiÕt kÕ nh c¸c khèi logic th«ng thêng, mµ m·
nguån do c¸c h·ng cung cÊp, thùc thi c¸c lÖnh theo ch¬ng tr×nh ®îc n¹p
riªng biÖt, vµ cã c¸c ngo¹i vi ®îc thiÕt kÕ linh ®éng (khèi giao tiÕp UART,
vµo/ra ®a chøc n¨ng GPIO, ethernet...). C¸c vi xö lý nµy còng cã thÓ ®îc lËp
tr×nh l¹i (re -configurable computing) ngay trong khi ®ang ch¹y.
øng dông.
FPGA ®îc øng dông ®iÓn h×nh trong c¸c lÜnh vùc nh: xö lý tÝn hiÖu sè,
xö lý ¶nh, thÞ gi¸c m¸y, nhËn d¹ng giäng nãi, m· hãa, m« pháng
(emulation)... FPGA ®Æc biÖt m¹nh trong c¸c lÜnh vùc hoÆc øng dông mµ kiÕn
tróc cña nã yªu cÇu mét lîng rÊt lín xö lý song song, ®Æc biÖt lµ m· hãa vµ
gi¶i m·. FPGA còng ®îc sö dông trong nh÷ng øng dông cÇn thùc thi c¸c
thuËt to¸n nh FFT, nh©n chËp (convolution), thay thÕ cho vi xö lý.
HiÖn nay c«ng nghÖ FPGA ®ang ®îc s¶n xuÊt vµ hç trî phÇn mÒm bëi
c¸c h·ng nh :Xilinx, Altera, Actel, Atmel... Trong ®ã Xilinx vµ Altera lµ 2
h·ng hµng ®Çu. Xilinx cung cÊp phÇn mÒm miÔn phÝ trªn nÒn Windows,
Linux, trong khi Altera cung cÊp nh÷ng c«ng cô miÔn phÝ trªn nÒn Windows,
Linux vµ Solaris.
81
Programmable Interconnect
Interconnect ë FPGA kh¸c xa so víi ë CPLD, tuy nhiªn l¹i gièng víi cña
gate array ASIC. Cã mét line dµi ®îc dïng ®Ó nèi c¸c CLBs quan träng mµ
chóng l¹i ë c¸ch xa nhau mµ kh«ng g©y ra qu¸ nhiÒu trÔ. Chóng cã thÓ ®îc
dïng nh lµ c¸c bus ë trong chip. Cã c¸c line ng¾n ®îc dïng ®Ó liªn kÕt c¸c
CLBs riªng rÏ nhng ®Æt gÇn nhau. Vµ còng thêng cã vµi ma trËn chuyÓn ®æi
(switch matrices), gièng nh trong CPLD, nèi gi÷a c¸c line dµi vµ ng¾n l¹i víi
nhau theo mét sè c¸ch ®Æc biÖt. C¸c chuyÓn ®æi lËp tr×nh ®îc (Programmable
switches) bªn trong chip cho phÐp kÕt nèi gi÷a CLBs tíi c¸c interconnect line
vµ gi÷a interconnect line víi c¸c line kh¸c vµ víi switch matrix. C¸c bé ®Öm 3
83
tr¹ng th¸i ®îc dïng ®Ó kÕt nèi phÇn lín c¸c CLBs víi c¸c line dµi (long line),
t¹o nªn c¸c bus. C¸c long line ®Æc biÖt, gäi lµ c¸c line clock toµn côc (global
clock lines), ®îc thiÕt kÕ ®Æc biÖt cho trë kh¸ng thÊp vµ nhê ®ã mµ thêi gian
lan truyÒn nhanh h¬n. Chóng ®îc kÕt nèi víi c¸c bé ®Öm clock vµ víi mçi
phÇn tö ®îc clock trong mçi CLB. §ã lµ c¸ch mµ clock cã thÓ ph©n phèi bªn
trong FPGA.
C¸c khèi vµo ra víi bé ®Öm clock high drive gäi lµ c¸c clock driver,n»m
r¶i r¸c xung quanh chip. C¸c bé ®Öm nµy ®îc nèi víi c¸c ch©n clock vµo vµ
l¸i c¸c tÝn hiÖu clock vµo c¸c ®êng clock toµn côc (global clock line) nh m«
t¶ ë bªn trªn. C¸c ®êng clock ®îc thiÕt kÕ sao cho thêi gian thêi gian lÖch
nhá nhÊt vµ thêi gian lan truyÒn nhanh. ThiÕt kÕ ®ång bé lµ yªu cÇu b¾t buéc
víi FPGA, tõ khi ®é lÖch tuyÖt ®èi vµ trÔ kh«ng ®îc b¶o ®¶m. ChØ khi dïng
c¸c tÝn hiÖu clock tõ c¸c bé ®Öm clock th× thêi gian trÔ t¬ng ®èi vµ thêi gian
lÖch míi ®îc ®¶m b¶o.
84
FPGA cã cÊu tróc nhá gièng nh c¸c m¶ng cæng cña hÖ ASIC víi c¸c
CLBs chØ bao gåm c¸c phÇn tö c¬ b¶n rÊt nhá nh c¸c cæng NAND, cæng
NOR,… C¸c nhµ lý luËn cho r»ng c¸c phÇn tö nhá cã thÓ nãi víi nhau t¹o lªn
c¸c chøc n¨ng lín h¬n mµ kh«ng tèn nhiÒu c¸c phÇn tö logic. Trong c¸c
FPGA cã cÊu tróc lín, c¸c CLB cã thÓ bao gåm 2 hoÆc nhiÒu flip-flop, c¸c
thiÕt kÕ mµ kh«ng cÇn nhiÒu flip-flop sÏ khiÕn cho nhiÒu flip-flop kh«ng ®îc
dïng ®Õn. TiÕc r»ng, c¸c cÊu tróc nhá l¹i yªu cÇu kh¸ nhiÒu nguån kÕt nèi
(routing resource), dÉn ®Õn t¨ng kh«ng gian vµ thªm vµo mét lîng lín trÔ mµ
kh«ng thÓ bï l¹i ®Ó cã hiÖu qu¶ h¬n.
2.1.2.3. So s¸nh gi÷a SDRAM Programming vµ Anti-fuse
programming
ThuËn lîi cña cÊu tróc FPGA dùa trªn SRAM lµ chóng dïng mét qu¸
tr×nh s¶n xuÊt chuÈn mµ ë ®ã c¸c kÕ ho¹ch s¶n xuÊt chip lµ gÇn nh gièng
nhau vµ lu«n lu«n ®îc tèi u cho kh¶ n¨ng ho¹t ®éng. Tõ khi mµ SRAM cã
thÓ lËp tr×nh l¹i ®îc th× FPGA cã thÓ lËp tr×nh l¹i bÊt cø khi nµo muèn, thËn
chÝ ngay c¶ khi chóng ®ang ë trong hÖ thèng, ®¬n gi¶n nh lµ ghi vµo SRAM
th«ng thêng. Chóng cã nhîc ®iÓm lµ vïng nhí volatile nªn mét vÊn ®Ò vÒ
nguån cã thÓ thay ®æi néi dung cña RAM. C¸c thiÕt bÞ dùa trªn SDRAM còng
cã thêi gian trÔ ®êng truyÒn lín.
85
ThuËn lîi cña cÊu tróc FPGA dùa trªn anti-fuse lµ chóng lµ non-volatile
vµ c¸c trÔ khi nèi d©y sÏ rÊt nhá v× thÕ nªn chóng cã khuynh híng nhanh
h¬n. Nhîc ®iÓm lµ chóng yªu cÇu mét bé lËp tr×nh bªn ngoµi ®Ó lËp tr×nh vµ
mçi khi lËp tr×nh xong th× kh«ng thÓ thay ®æi ®îc.
2.1.2.4. CÊu tróc FPGA cña Spartan 3
CÊu tróc tæng quan cña Spartan 3 gåm cã 5 thµnh phÇn cã chøc n¨ng kh¶
tr×nh c¬ b¶n sau:
• Input/Output Blocks (IOBs) ®iÒu khiÓn dßng d÷ liÖu gi÷a c¸c ch©n vµo
ra I/O vµ c¸c logic bªn trong cña FPGA. IOBs hç trî luång d÷ liÖu 2 chiÒu
(bidirectional data flow) vµ ho¹t ®éng logic 3 tr¹ng th¸i (3 state). Hç trî phÇn
lín c¸c chuÈn tÝn hiÖu, bao gåm mét vµi chuÈn tèc ®é cao, nh Double Data-
Rate (DDR).
• Block RAM cho phÐp lu tr÷ d÷ liÖu díi d¹ng c¸c khèi (block) dual-
port 18-Kbit.
• Multiplier Blocks cho phÐp 2 sè nhÞ ph©n 18bit lµm ®Çu vµo vµ dÔ dµng
tÝnh to¸n tÝch cña chóng.
• Digital Clock Manager (DCM) Blocks cung cÊp kh¶ n¨ng tù x¸c ®Þnh
xung clock, lµ gi¶i ph¸p sè hoµn chØnh cho c¸c tÝn hiÖu clock ph©n phèi, trÔ,
nh©n, chia vµ dÞch bit.
Tõ h×nh vÏ ta thÊy, c¸c IOBs bao quanh c¸c m¶ng CLBs, riªng Spartan-
3E chØ cã mét vßng c¸c IOBs. Mçi cét block RAM bao gåm mét vµi block
RAM 18-Kbit, mçi block RAM l¹i g¾n liÒn víi mét multiplier dµnh riªng.
C¸c DCM ®îc ®Æt ë c¸c vÞ trÝ: 2 DCM phÝa trªn vµ 2 c¸i phÝa díi cña thiÕt
bÞ, vµ ®èi víi c¸c device lín h¬n th× cã thªm c¸c DCM ë phÝa bªn c¹nh.
§Æc ®iÓm chung m¹ng Spartan-3 lµ kÕt nèi liªn th«ng gi÷a 5 phÇn tö c¬
b¶n nµy, vµ truyÒn tÝn hiÖu gi÷a chóng. Mçi thµnh phÇn chøc n¨ng nµy cã mét
switch matrix dµnh riªng ®Ó cho phÐp chän lùa kÕt nèi cho viÖc ®i d©y trong
FPGA.
Tr×nh tù thiÕt kÕ mét hÖ thèng trªn nÒn FPGA bao gåm c¸c bíc thÓ hiÖn
nh trªn h×nh 2-6.
TÇm quan träng cña c¸c ®Æc ®iÓm kÜ thuËt (specification) kh«ng thÓ
phãng ®¹i qu¸. Nã chØ tuyÖt ®èi cÇn ®Æc biÖt khi lµ mét híng dÉn ®Ó chän
c«ng nghÖ phï hîp vµ t¹o nh÷ng yªu cÇu cña b¹n cho c¸c nhµ s¶n xuÊt chip.
87
Vµ c¸c ®Æc ®iÓm kÜ thuËt cho phÐp mçi kÜ s hiÓu vÒ thiÕt kÕ hÖ thèng chung
vµ c«ng viÖc cña hä trong hÖ thèng ®ã lµ g×. Vµ nã còng cho phÐp c¸c kÜ s
thiÕt kÕ giao diÖn ®óng cho mét lo¹t c¸c phÇn cña chip. C¸c ®Æc ®iÓm kÜ thuËt
còng gióp tiÕt kiÖm thêi gian vµ sù hiÓu lÇm. SÏ kh«ng lµm g× ®îc nÕu kh«ng
cã c¸c b¶ng ghi c¸c ®Æc ®iÓm kÜ thuËt.
Chi tiÕt kÜ thuËt nªn bao gåm c¸c th«ng tin sau ®©y:
• S¬ ®å khèi bªn ngoµi ®Ó chØ ra chip ®ã ®îc ®Æt vµo trong hÖ
thèng nh thÕ nµo.
• S¬ ®å khèi bªn trong chØ râ mçi chøc n¨ng cña c¸c thµnh phÇn.
• Miªu t¶ c¸c ch©n vµo ra bao gåm kh¶ n¨ng l¸i ®Çu ra, møc
ngìng ®Çu vµo.
• Thêi gian íc lîng bao gåm thêi gian thiÕt lËp vµ gi÷ ë c¸c ch©n
vµo, thêi gian lan truyÒn ra c¸c cæng ra vµ thêi gian chu k× clock.
• §Õm xÊp xØ sè gate
• D¹ng ®ãng gãi
• Tiªu thô nguån
88
• Gi¸ c¶
• C¸c thñ tôc ®Ó kiÓm tra
Mét ®iÒu rÊt quan träng n÷a lµ ®ã lµ c¸c tµi liÖu trùc tuyÕn. RÊt nhiÒu
phÇn sÏ ®îc dù ®o¸n tèt nhÊt ë trong ®ã, nhng sÏ thay ®æi trong qu¸ tr×nh
chip ®îc thiÕt kÕ.
Mçi khi mét chi tiÕt miªu t¶ kÜ thuËt ®îc xuÊt b¶n, nã cã thÓ ®îc dïng
®Ó chän nhµ s¶n xuÊt chip tèt nhÊt víi c«ng nghÖ vµ cÊu tróc gi¸ c¶ lµ tèt nhÊt
®¸p øng ®îc yªu cÇu cña b¹n.
T¹i thêi ®iÓm nµy b¹n ph¶i quyÕt ®Þnh c¸ch thùc hiÖn thiÕt kÕ mµ b¹n
mong muèn. §èi víi c¸c chip nhá th× c¸ch tiÕp cËn b»ng s¬ ®å nguyªn lý
(schematic) thêng ®îc chän, ®Æc biÖt lµ khi c¸c kÜ s thiÕt kÕ ®· quen thuéc
víi c¸c c«ng cô nµy. ThÕ nhng ®èi víi c¸c thiÕt kÕ lín h¬n, ng«n ng÷ miªu t¶
phÇn cøng (hardware description language) HDL nh Verilog vµ VHDL ®îc
dïng bëi kh¶ n¨ng mÒm dÎo, dÔ ®äc, dÔ chuyÓn giao. Khi dïng ng«n ng÷ cÊp
cao, phÇn mÒm tæng hîp (synthesis software) sÏ ®îc yªu cÇu tæng hîp
(synthesize) thiÕt kÕ. Cã nghÜa r»ng phÇn mÒm nµy sÏ t¹o ra c¸c cæng ë cÊp
thÊp tõ miªu t¶ ë cÊp cao h¬n.
T¹i ®iÓm nµy, b¹n ph¶i quyÕt ®Þnh chän phÇn mÒm tæng hîp nµo sÏ ®îc
dïng nÕu b¹n cã kÕ ho¹ch thiÕt kÕ FPGA víi HDL. §iÒu ®ã rÊt quan träng kÓ
tõ khi mçi c«ng cô tæng hîp ®îc khuyªn dïng vµ sù ñy th¸c cña c¸ch thiÕt kÕ
phÇn cøng nªn nã cã thÓ ho¹t ®éng tæng hîp ®óng h¬n.
89
ThiÕt kÕ chip
• Macros
• Synchronous design
M« pháng lµ mét qu¸ tr×nh liªn tôc khi mµ thiÕt kÕ xong. Tõng phÇn nhá
cña thiÕt kÕ nªn ®îc m« pháng tríc khi kÕt hîp chóng thµnh c¸c phÇn lín
h¬n. §iÒu nµy rÊt lµ cÇn thiÕt vµ sù m« pháng theo thø tù sÏ kiÓm tra chøc
n¨ng ho¹t ®éng ®óng cña tõng phÇn.
Mçi khi thiÕt kÕ vµ m« pháng hoµn thµnh, dÉn ®Õn mét c¸i nh×n tæng
quan kh¸c vÒ thiÕt kÕ v× thÕ thiÕt kÕ cã thÓ ®îc kiÓm tra l¹i. ThËt lµ quan
träng ®Ó nhËn c¸c kÕt qu¶ kh¸c cho phÐp nh×n qua c¸c m« pháng vµ ch¾c
ch¾n r»ng
kh«ng cã ®iÒu g× bÞ quªn vµ kh«ng sù tæn hao nµo gÆp ph¶i. §ã lµ mét
trong nh÷ng kh¸i qu¸t quan träng nhÊt bëi v× khi m« pháng ®óng vµ thµnh
c«ng th× b¹n sÏ biÕt ®îc chip cña b¹n sÏ ho¹t ®éng ®óng trong hÖ thèng.
Tæng hîp
NÕu thiÕt kÕ dïng HDL, bíc tiÕp theo lµ tæng hîp chip, bao gåm viÖc
dïng phÇn mÒm tæng hîp ®Ó chuyÓn ®æi thËt tèi u tõ thiÕt kÕ møc RTL
(register transfer level) sang thiÕt kÕ møc gate mµ cã thÓ g¾n vµo c¸c khèi
logic trong FPGA.
90
Bíc tiÕp theo lµ s¾p ®Æt chip, kÕt qu¶ trong viÖc thiÕt kÕ vËt lý cho chip
thùc. §iÒu nµy bao gåm c¸c c«ng cô cña nhµ s¶n xuÊt ®Î tèi u lËp tr×nh cho
chip ®Ó thùc hiÖn thiÕt kÕ. Sau ®ã, thiÕt kÕ ®îc lËp tr×nh vµo cho chip.
Sau khi s¾p ®Æt xong, th× chip ph¶i ®îc m« pháng l¹i víi c¸c con sè vÒ
thêi gian t¹o ra bëi c¸c layout thùc tÕ. NÕu mäi thø ®Òu tèt ®Õn thêi ®iÓm nµy,
th× mét kÕt qu¶ m« pháng míi sÏ ®óng víi c¸c kÕt qu¶ dù ®o¸n.
KiÓm tra
§èi víi c¸c thiÕt bÞ lËp tr×nh ®îc, ®¬n gi¶n lµ lËp tr×nh thiÕt bÞ ®ã vµ
ngay lËp tøc cã mÉu thö. Sau ®ã b¹n cã tr¸ch nhiÖm ®Æt mÊu thö nµy vµo trong
hÖ thèng vµ xem hÖ thèng cã lµm viÖc ®óng kh«ng. NÕu b¹n lµm lÇn lît c¸c
bíc ë bªn trªn th× ®a phÇn lµ hÖ thèng sÏ ho¹t ®éng ®óng chØ víi mét vµi lçi
rÊt nhá. C¸c lçi nµy thêng ®îc lµm viÖc xung quanh víi viÖc thay ®æi hÖ
thèng vµ thay ®æi phÇn mÒm hÖ thèng. C¸c lçi nµy cÇn ®îc kiÓm tra vµ trÝch
dÉn l¹i ®Ó cã thÓ ®îc söa ch÷a trong phiªn b¶n tiÕp theo cña chip. KiÓm tra
hÖ thèng nhóng lµ cÇn thiÕt t¹i thêi ®iÓm nµy ®Ó ®a ra kÕt qu¶ r»ng mäi phÇn
cña hÖ thèng ®Òu ho¹t ®éng ®óng khi kÕt hîp víi nhau.
Khi c¸c chÝp ®îc ®a vµo s¶n xuÊt, rÊt cÇn thiÕt cã mét vµi kiÓm tra ®Ó
cã mét vµi kiÓm tra burn-in trong hÖ thèng ®Ó test thêng xuyªn hÖ thèng qua
thêi gian dµi. NÕu mét chip ®îc thiÕt kÕ ®óng, th× nã chØ bÞ háng khi lçi ®iÖn
häc hoÆc lçi c¬ häc sÏ thêng xuyªn x¶y ra víi lo¹i kiÓm tra kh¾c nghiÖt nµy.
VHDL lµ viÕt t¾t cña VHSIC Hardware Description Language. B¶n th©n
VHSIC lµ viÕt t¾t cña Very High Speed Integrated Circuits (m¹ch tÝch hîp tèc
®é cao), lÇn ®Çu tiªn ®îc s¸ng lËp bëi United State Department of Defense
trong nh÷ng n¨m 80, sau ®ã t¹o ra VHDL. Phiªn b¶n ®Çu tiªn lµ VHDL 87,
lÇn n©ng cÊp sau ®ã cã tªn lµ VHDL 93. VHDL lµ ng«n ng÷ m« t¶ phÇn cøng
nguyªn gèc ®Çu tiªn ®îc chuÈn hãa bëi Institue of Electrical and Electronics
Engineers (IEEE), tíi chuÈn IEEE 1076. Trong IEEE 1164, cã mét chuÈn
®îc thªm vµo lµ giíi thiÖu hÖ thèng logic ®a gi¸ trÞ (multi-valued logic
system).
§éng c¬ thóc ®Èy c¬ b¶n khi dïng VHDL (hay dïng Verilog) lµ VHDL
lµ mét ng«n ng÷ ®éc lËp chuÈn cña c¸c nhµ c«ng nghÖ, c¸c nhµ ph©n phèi do
®ã chóng cã kh¶ n¨ng portable vµ kÕ thõa cao (reusable). Hai øng dông trùc
tiÕp chÝnh cña VHDL lµ trong m¶ng c¸c thiÕt bÞ logic lËp tr×nh ®îc
(Programmable Logic Devices) (bao gåm CPLDs – Complex Programmable
Logic Devices vµ FPGAs – Field Programmable Gate Arrays). Mçi khi m·
nguån VHDL ®îc viÕt, chóng cã thÓ ®îc dïng ®Ó thùc thi m¹ch ®iÖn trong
c¸c thiÕt bÞ lËp tr×nh ®îc (tõ Altera, Xilinx, Almel,..) hoÆc cã thÓ göi ®Õn c¸c
xëng chÕ t¹o c¸c chÝp ASIC. HiÖn nµy, rÊt nhiÒu c¸c chip th¬ng m¹i phøc
t¹p (vÝ dô nh c¸c microcontrollers) ®îc thiÕt kÕ dùa trªn c¸ch tiÕp cËn nµy.
Mét ®iÒu chó ý vÒ VHDL lµ tr¸i ngîc víi c¸c ch¬ng tr×nh m¸y tÝnh
th«ng thêng ®îc thùc hiÖn tuÇn tù th× c¸c c©u lÖnh ®îc thùc hiÖn song song
(concurrent). V× lÝ do ®ã, nªn VHDL thêng ®îc coi lµ mét m· nguån h¬n lµ
mét ch¬ng tr×nh. Trong VHDL chØ cã c¸c c©u lÖnh ®Æt trong PROCESS,
FUNCTION, hay PROCEDURE ®îc thùc thi tuÇn tù.
Mét trong nh÷ng tiÖn Ých lín cña VHDL lµ cho phÐp tæng hîp m¹ch ®iÖn
hoÆc hÖ thèng trong thiÕt bÞ kh¶ lËp tr×nh (programmable devide) (PLD hoÆc
92
FPGA) hoÆc trong mét hÖ ASIC. C¸c bíc thùc hiÖn mét project ®îc tæng
kÕt nh trong h×nh díi:
Chóng ta b¾t ®Çu thiÕt kÕ b»ng c¸ch viÕt m· VHDL, ®îc ghi trong c¸c
file víi ®u«i më réng .vhd vµ tªn gièng nh tªn cña ENTITY (thùc thÓ). Bíc
®Çu tiªn trong qu¸ tr×nh synthesis lµ biªn dÞch. Biªn dÞch lµ mét qu¸ tr×nh
chuyÓn ®æi gi÷a ng«n ng÷ VHDL bËc cao t¹i Register Transfer Level (RTL)
sang netlist ë møc gate level. Bíc thø 2 lµ tèi u thùc hiÖn trªn gate level net
list tèi u vÒ tèc ®é hoÆc cho diÖn tÝch. Cuèi cïng lµ m«t phÇn mÒm place and
route sÏ t¹o ra mét physical layout cho c¸c chÝp PLD/FPGA hoÆc t¹o ra c¸c
mÆt n¹ cho mét hÖ ASIC.
cho ngêi dïng ®îc viÕt bëi c¸c kÜ s, c¸c nhµ nghiªn cøu, nhµ thiÕt kÕ vµ
ngay c¶ cña sinh viªn.
KIT FPGA nµy bao gåm cã 32 Mbyte DRAM ®ång bé vµ 2 Mbyte Flash
®Ó x©y dùng hÖ thèng vi ®iÒu khiÓn RISC hoµn thiÖn dùa trªn phÇn mÒm (soft-
core).
Cã thÓ cã tíi 4 bitstream ®îc lu tr÷ trong Flash vµ ta cã thÓ dïng
switch ®Ó lùa chän bitstream nµo ®îc cÊu h×nh cho FPGA khi ¸p ®Æt nguån
®iÖn vµo KIT. HoÆc chóng ta cã thÓ download trùc tiÕp vµo FPGA nhê cæng
song song (parallel port) dïng c«ng cô XSTOOLS (trong bé c«ng cô cña
XESS). Giao diÖn CPLD trªn XSA-3S1000 còng hç trî download dïng
XILINX iMPACT vµ circuit test/debug víi ChipScope dïng c¸p download
song song cña Xilinx. Bæ sung thªm vµo c¸c chip FPGA, SDRAM vµ Flash,
cã thªm cæng VGA cã thÓ hiÓn thÞ ®å häa víi 512 mµu. Thªm vµo ®ã, cßn cã
thªm prototyping header ®a cho ta 65 ch©n I/O ®Ó x©y dùng c¸c giao diÖn víi
c¸c ngo¹i vi kh¸c.
94
• C¸c pushbuttons, DIP switches, LEDs, vµ protopying area rÊt cã Ých cho
c¸c thÝ nghiÖm ë phßng Lab.
• Video decoder (bé gi¶i m· video) cho phÐp sè hãa c¸c video d¹ng
NTSC/PAL/SECAM trong c¸c øng dông xö lý ¶nh.
• Giao diÖn Ethernet 10/100 lµm cho XSA Board cã kh¶ n¨ng truy nhËp
TCP/IP vµ c¸c d¹ng m¹ng kh¸c.
• Giao diÖn USB 1.1 lµm cho XSA Board nh mét ngo¹i vi USB d¹ng
low-peed hoÆc full-speed víi PC.
• Giao diÖn RS-232 rÊt h÷u Ých khi XSA Board cÇn ph¶i göi th«ng tin qua
liªn kÕt giao tiÕp næi tiÕp víi tèc ®é thÊp.
• Giao diÖn IDE cung cÊp cho XSA Board kh¶ n¨ng truy cËp vµo æ ®Üa
cøng (hard disk) ®Ó lu vµ phôc håi d÷ liÖu.
• C¸c module víi chøc n¨ng kh¸c cã thÓ thªm vµo trong XST Board nhê
c¸c doughterboard connector.
Nh vËy, kÕt hîp gi÷a XSA-3S1000 vµ XST-3.0 cho ta mét Board øng
dông xö lý video rÊt hiÖu qu¶.
m¹ch logic kh¶ tr×nh cña XESS Corp. Ngoµi ra, c¸c phÇn mÒm vµ module ph¸t
triÓn kh¸ ®Çy ®ñ.
Board DE2 lµ board m¹ch phôc vô cho viÖc nghiªn cøu vµ ph¸t triÓn vÒ
c¸c lÜnh vùc luËn lý sè häc (digital logic), tæ chøc m¸y tÝnh (computer
organization) vµ FPGA.
Board DE2 cung cÊp kh¸ nhiÒu tÝnh n¨ng hç trî cho viÖc nghiªn cøu vµ
ph¸t triÓn, díi ®©y lµ th«ng tin chi tiÕt cña mét board DE2:
97
FPGA:
Vi m¹ch FPGA Altera Cyclone II 2C35.
Vi m¹ch Altera Serial Configuration – EPCS16.
C¸c thiÕt bÞ xuÊt nhËp:
USB Blaster cho lËp tr×nh vµ ®iÓu khiÓn API cña ngêi dung; hç
trî c¶ 2 chÕ ®é lËp tr×nh JTAG vµ AS.
Bé ®iÒu khiÓn Cæng 10/100 Ethernet.
Cæng VGA-out.
Bé gi¶i m· TV vµ cæng nèi TV-in.
Bé ®iÒu khiÓn USB Host/Slave víi cæng USB kiÓu A vµ kiÓu B.
Cæng nèi PS/2 chuét/bµn phÝm.
Bé gi¶i m·/m· hãa ©m thanh 24-bit chÊt lîng ®Üa quang víi jack
c¾m line-in, line-out, vµ microphone.
2 Header më réng 40-pin víi líp b¶o vÖ diode.
Cæng giao tiÕp RS-232 vµ cæng nèi 9-pin.
Cæng giao tiÕp hång ngo¹i.
Bé nhí:
SRAM 512-Kbyte.
SDRAM 8-Mbyte.
Bé nhí cùc nhanh 4-Mbyte (1 sè m¹ch lµ 1-Mbyte).
Khe SD card.
Switch, c¸c ®Ìn led, LCD, xung clock
4 nót nhÊn, 18 nót g¹t.
18 LED ®á, 9 LED xanh, 8 Led 7 ®o¹n
LCD 16x2
Bé dao ®éng 50-MHz vµ 27-MHz cho ®ång hå nguån.
98
H×nh 2-15: øng dông DE2 m¸y karaoke vµ ch¬i nh¹c tõ card SD
100
X· héi ngµy cµng ph¸t triÓn, nhu cÇu cña con ngêi ngµy cµng lín. Ngoµi
nhu cÇu vÒ sinh ho¹t, con ngêi ®ang híng ®Õn sö dông c¸c thiÕt bÞ hiÖn ®¹i,
c«ng nghÖ cao, th«ng minh lµm cho cuéc sèng phong phó h¬n. N¾m b¾t ®îc
nhu cÇu ®ã cña con ngêi, c¸c nhµ s¶n xuÊt ®· vµ ®ang nghiªn cøu, chÕ t¹o ra
c¸c s¶n phÈm míi th«ng minh vµ h÷u Ých cho cuéc sèng. Dï chóng ta cã ®i
®©u, lµm g× th× còng cÇn mét ng«i nhµ ®Ó ë, sinh ho¹t. Cuéc sèng cña chóng ta
sÏ trë lªn hoµn h¶o h¬n nÕu nh chóng ta ®îc së h÷u mét ng«i nhµ th«ng
minh. ë c¸c níc ph¸t triÓn, nhµ th«ng minh trë lªn phæ biÕn, tïy vµo gi¸
thµnh mµ nhµ s¶n xuÊt cã thÓ l¾p ghÐp sè lîng c¸c thiÕt bÞ trong nhµ. Mçi
nhµ s¶n xuÊt ®a ra kh¸i niÖm vÒ mét hÖ thèng nhµ th«ng minh theo tiªu
chuÈn cña riªng m×nh, ®ång thêi x©y dùng vµ ph¸t triÓn gi¶i ph¸p hÖ thèng
nhµ th«ng minh theo kh¸i niÖm nµy. Theo tiªu chuÈn cña I-Solutions th× “Mét
hÖ thèng nhµ th«ng minh ph¶i g¾n kÕt ®îc c¸c hÖ thèng an ninh - an toµn,
chiÕu s¸ng, ®iÒu khiÓn nhiÖt ®é - qu¶n lý n¨ng lîng, hÖ thèng ©m thanh,
video – camera gi¸m s¸t, Intercom – chu«ng cöa cã h×nh, rÌm tù ®éng, b¬m
bÓ b¬i, b¬m tíi, vµ c¸c hÖ thèng kh¸c theo yªu cÇu. C¸c hÖ thèng nµy cã thÓ
giao tiÕp vµ ho¹t ®éng t¬ng t¸c víi nhau ®Ó t¹o ra mét hÖ thèng ®iÒu khiÓn
thèng nhÊt”. Mét hÖ thèng nhµ th«ng minh cã thÓ chØ bao gåm mét vµi hÖ
thèng hoÆc tÊt c¶ c¸c hÖ thèng trªn.
Trong mét ng«i nhµ th«ng minh, c¸c hÖ thèng ho¹t ®éng t¬ng t¸c víi
nhau gióp ng«i nhµ trë nªn hiÖn ®¹i, tiÖn nghi vµ an toµn h¬n. HÖ thèng nhµ
th«ng minh ph¶i ®¶m b¶o c¸c thiÕt bÞ vÉn cã tÝnh n¨ng cña c¸c thiÕt bÞ th«ng
thêng.
101
HÖ thèng ®iÒu khiÓn trung t©m cã thÓ ®iÒu khiÓn c¸c thiÕt bÞ mét c¸ch tù
®éng dùa trªn sù kiªn hÖ thèng. C¸c ch¬ng tr×nh tù ®éng ®îc lËp tr×nh cho
tõng kh¸ch hµng ®Ó t¹o ra tÝnh n¨ng mong muèn. C¸c tÝnh n¨ng thêng cã ë
c¸c ng«i nhµ th«ng minh: Tù ®éng bËt ®Ìn s©n vêng khi mÆt trêi lÆn vµ tù
®éng t¾t vµo lóc nöa ®ªm, tù ®éng bËt ®Ìn khi gia chñ vµo nhµ nÕu trêi tèi vµ
®Ìn cha bËt.
Khi hÖ thèng an ninh ë chÕ ®é “§i Xa” th× hÖ thèng sÏ tù ®éng t¾t toµn
bé ®Ìn trong nhµ, t¾t hÖ thèng ®iÒu hßa vµ thiÕt bÞ ®iÖn, t¾t hÖ thèng ©m thanh
trong tÊt c¶ c¸c phßng. Tù ®éng t¾t loa s©n vên vµo 10 giê tèi hµng ngµy. Tù
®éng bËt ®Ìn hµnh lanh, cÇu thang khi cã ngêi vµ trong ®iÒu kiÖn m«i trêng
thiÕt ¸nh s¸ng vµ tù ®éng t¾t sau 30 gi©y khi ngêi ra khái khu vùc cÇn chiÕu
s¸ng.
BiÖt thù Th¸i B×nh D¬ng cña Bill Gates, ®îc mÖnh danh lµ “ng«i nhµ
th«ng minh” ®Çu tiªn trong lÞch sö loµi ngêi c¶ vÒ nghÜa ®en lÉn nghÜa bãng,
do cã nh÷ng hÖ thèng trang thiÕt bÞ ®iÖn tö tinh vi, hiÖn ®¹i vµ phøc t¹p ®îc
bè trÝ ë néi thÊt bªn trong. BiÖt thù th«ng minh nµy lµ mét trong nh÷ng ®iÓm
®Õn quan träng mµ nh÷ng ngêi næi tiÕng, kÓ c¶ nguyªn thñ quèc gia, ®Òu
khao kh¸t ®îc tíi.
HiÖn nay trªn thÕ giíi ®ang ph¸t triÓn “Ng«i nhµ th«ng minh ®iÒu khiÓn
b»ng ý nghÜ ”. §©y lµ mét hÖ thèng kh¸ míi mÎ vµ ®ang ®îc nghiªn cøu vµ
ph¸t triÓn. Nhng tiÒm n¨ng vµ ph¹m vi øng dông l¹i rÊt lín. Víi hÖ thèng
nµy, khi ta ®a tay lªn bËt ®Ìn, ®iÒu khiÓn ti vi, lÊy ch×a khãa më cöa…tÊt c¶
nh÷ng viÖc ®ã sÏ trë thµnh qu¸ khø khi c«ng nghÖ giao diÖn m¸y tÝnh-n·o
®ang ®îc thö nghiÖm ë ch©u ¢u cho phÐp ngêi tiªu dïng thùc hiÖn mäi viÖc
hoµn toµn nhê sù suy nghÜ.
C«ng nghÖ nµy ®· ®îc tr×nh diÔn t¹i CeBIT ë Hannover vµo th¸ng ba
cung cÊp mét ph¬ng c¸ch míi ®Ó ®iÒu khiÓn c¸c thiÕt bÞ ®iÖn tö kÕt nèi víi
102
nhau chØ th«ng qua sù suy nghÜ trong ®Çu ãc cña “chñ nhµ”. C«ng nghÖ Êy lµ
c¬ së ®Ó thiÕt kÕ c¸c ng«i nhµ th«ng minh trong t¬ng lai, gióp nh÷ng ngêi
tµn tËt chñ ®éng trong cuéc sèng cña m×nh. Nã gióp chóng ta cã thÓ bËt ®Ìn,
chuyÓn kªnh chiÕc v« tuyÕn, më ®ãng cöa b»ng mét ®éng t¸c cùc kú ®¬n gi¶n:
chØ cÇn nghÜ vÒ ®iÒu m×nh cÇn lµm lµ ®ñ. C¸c thiÕt bÞ ghi ®iÖn n·o ®îc dïng
®Ó kiÓm tra ho¹t ®éng ®iÖn nµo cña ngêi sö dông th«ng qua rÊt nhiÒu ®iÖn
cùc g¾n trªn chiÕc mò ®éi ®Çu. Sau mét thêi gian huÊn luyÖn, hÖ thèng nµy ®·
nhËn diÖn ®îc nh÷ng s¬ ®å ®Æc trng cña ho¹t ®éng thÇn kinh h×nh thµnh khi
hä nghÜ ®Õn mét hµnh ®éng nµo ®ã vµ tiÕp ®ã, hµnh ®éng sÏ ®îc thùc hiÖn.
Ngêi ngoµi cã thÓ theo dâi th«ng qua hiÖn tîng nµy tõ c¸c tÝn hiÖu nhÊp
nh¸y cña ¸nh s¸ng hoÆc sãng v« tuyÕn.
Víi viÖc ¸p dông c«ng nghÖ nµy vµo ®êi sèng hµng ngµy chóng ta cã thÓ
gi¶i phãng kh¶ n¨ng cho ngêi tµn tËt, hiÖn tîng dÞch chuyÓn vµ ®iÒu khiÓn
c¸c ®å vËt hoµn toµn cã thÓ dùa vµo dßng ®iÖn cña sù suy nghÜ ®· t¹o ra cho
nh÷ng ngêi tµn tËt kh¶ n¨ng míi vµ kh¶ n¨ng ®ang ®îc gi¶i phãng. Nã gióp
cho nh÷ng ngêi liÖt, côt c¶ tø chi sö dông ®îc c¸c chi gi¶ mét c¸ch chñ
®éng, cho phÐp nh÷ng ngêi mµ cuéc sèng g¾n liÒn víi chiÕc xe l¨n cã thÓ ®i
l¹i trong hiÖn thùc ¶o. Cïng víi sù ph¸t triÓn cña khoa häc vµ c«ng nghÖ trªn
thÕ giíi, hÖ thèng c¸c tßa nhµ th«ng minh ®ang ®îc ph¸t triÓn m¹nh mÏ vµ
®ang ®îc phæ biÕn ë nhiÒu n¬i.
Trong vµi n¨m trë l¹i ®©y, cïng víi sù ph¸t triÓn m¹nh mÏ cña nÒn kinh
tÕ. ChÊt lîng cuéc sèng cña ngêi ®· ®îc c¶i thiÖn rÊt nhiÒu. Ngoµi nhu cÇu
vÒ ¨n uèng sinh ho¹t hµng ngµy th× nhu cÇu vÒ sö dông c¸c thiÕt bÞ hiÖn ®¹i,
c«ng nghÖ cao lµ rÊt lín. N¾m b¾t ®îc t×nh h×nh ®ã, mét sè c«ng ty trong
níc ®ang tiÕn hµnh nghiªn cøu, chÕ t¹o vµ l¾p ®Æt hÖ thèng nhµ th«ng minh
trªn toµn quèc. Míi ®©y nhÊt Bkav ra m¾t hÖ thèng nhµ th«ng minh
103
SmartHome t¹i triÓn l·m ViÖt Nam 2010. §©y lµ mét trong nh÷ng c«ng tr×nh
c«ng nghÖ cao do c¸c kü s, chuyªn gia ViÖt Nam nghiªn cøu vµ s¶n xuÊt,
®îc lùa chän giíi thiÖu t¹i triÓn l·m nh©n dÞp kû niÖm §¹i lÔ 1000 n¨m Hµ
Néi. C¬ chÕ ho¹t ®éng cña ng«i nhµ th«ng minh nh sau: “Khi b¹n bíc vµo
nhµ, hÖ thèng chiÕu s¸ng tù ®éng bËt nhê c¸c thiÕt bÞ c¶m biÕn hång ngo¹i, hÖ
thèng chiÕu s¸ng ®îc thiÕt kÕ ®Ó tïy biÕn ®iÒu chØnh ¸nh s¸ng, mµu s¾c…
theo së thÝch cña chñ nh©n. §ång thêi, hÖ thèng nµy cã thÓ kÕt hîp víi c¸c
thiÕt bÞ kh¸c trong nhµ nh: ©m thanh, rÌm cöa, thiÕt bÞ chiÕu phim, nghe
nh¹c… ®Ó t¹o sù tiÖn nghi. Ch¼ng h¹n, khi thiÕt bÞ chiÕu phim ho¹t ®éng, c¸c
®Ìn chiÕu s¸ng tù ®éng gi¶m ®é s¸ng, ®ång thêi hÖ thèng rÌm mµnh còng tù
®éng khÐp l¹i ®Ó t¹o m«i trêng ¸nh s¸ng cña phßng chiÕu phim”.
Ngoµi ra ng«i nhµ th«ng minh cña Bkav SmartHome cßn ®îc trang bÞ
HÖ thèng kiÓm so¸t m«i trêng nh»m duy tr× tr¹ng th¸i m«i trêng tèt nhÊt:
HÖ thèng c¶nh b¸o an ninh kiÓm so¸t c¸c nguy c¬ ch¸y, næ hay x©m nhËp tr¸i
phÐp… HÖ thèng gi¶i trÝ ®a ph¬ng tiÖn Multimedia qu¶n lý c¸c th viÖn ©m
nh¹c, phim, ¶nh cña chñ nhµ theo së thÝch… §Ó ®iÒu khiÓn c¸c thiÕt bÞ ®iÖn tö
gia dông trong ng«i nhµ SmartHome, ngêi sö dông cã thÓ t¬ng t¸c trªn giao
diÖn c¶m øng cña m¸y tÝnh b¶ng (tablet), ®îc ®Æt ë nh÷ng vÞ trÝ thuËn tiÖn
trong nhµ hoÆc sö dông ®iÖn tho¹i ®i ®éng 3G. Giao diÖn nµy ®îc thiÕt kÕ víi
®å häa 3D víi c«ng nghÖ ®iÒu khiÓn trùc quan, m« pháng l¹i toµn bé ng«i nhµ
cïng c¸c thiÕt bÞ trong gia ®×nh, gióp ngêi sö dông dÔ dµng ®iÒu khiÓn. T¹i
ViÖt Nam, Bkav SmartHome lµ doanh nghiÖp tiªn phong trong lÜnh vùc nghiªn
cøu vµ s¶n xuÊt thiÕt bÞ ®iÖn tö th«ng minh, phôc vô c¸c c«ng tr×nh d©n dông
vµ c«ng nghiÖp. Bkav SmartHome ®· thiÕt kÕ vµ x©y dùng thµnh c«ng biÖt thù
mÉu øng dông HÖ thèng nhµ th«ng minh SmartHome ®Ó kh¸ch hµng cã thÓ
tham quan trùc tiÕp. HÖ thèng ng«i nhµ th«ng minh SmartHome sÏ chÝnh thøc
ra m¾t thÞ trêng níc ta vµo ®Çu n¨m 2011.
104
Nhµ th«ng minh ë ViÖt Nam lµ cßn kh¸ míi mÎ, tuy nhiªn vÒ thÞ trêng
rÊt to lín, ®Ó lÜnh vùc nµy cã thÓ ph¸t triÓn cÇn ®Çu t nghiªn cøu l©u dµi vµ cã
quy m« lín. Níc ta cÇn ph¶i t¹o ra m«i trêng nghiªn cøu khoa häc trong
sinh viªn. V× sinh viªn lµ nguån nh©n lùc dåi dµo, lµ nh÷ng ngêi cã trÝ thøc
vµ cã kh¶ n¨ng. Muèn thay ®æi t×nh tr¹ng nghiªn cøu khoa häc trong sinh viªn
hiÖn nay ph¶i cã sôy thay ®æi tõ c¸ nh©n ba chñ thÓ: Nhµ trêng – sinh viªn
– c¸c c¬ quan, ®¬n vÞ, doanh nghiÖp cÇn sö dông c¸c s¶n phÈm khoa häc.
Trong nh÷ng n¨m gÇn ®©y, rÊt nhiÒu c¸c nhµ cao èc ®ang ®îc x©y dùng
t¹i ViÖt Nam nh»m ®¸p øng nh cÇu ph¸t triÓn cña x· héi. ViÖc qu¶n trÞ hiÖu
qu¶ chi phÝ ho¹t ®éng, n¨ng lîng, thêi gian, con ngêi, an toµn, th«ng tin liªn
l¹c vµ b¶o tr× vËn hµnh nh÷ng cao èc nµy lµ nhu cÇu bøc thiÕt cña tÊt c¶ c¸c
chñ ®Çu t còng nh ngêi sö dông.
Tõ nh÷ng n¨m 1970, c¸c quèc gia tiªn tiÕn trªn thÕ giíi ®· b¾t ®Çu ®a
vµo sö dông hÖ th«ng “Building Management System” (BMS), “Building
Automation System” (BAS), “Intelegent City System” (ICS), “Intelligent
Factory System” (IFS), vµ nh÷ng n¨m gÇn ®©y lµ “Intelligent building
Management System” (iBMS). §©y lµ nh÷ng thµnh phè, tßa nhµ hay nhµ m¸y
105
HÖ thèng qu¶n trÞ tßa nhµ – BMS hay hÖ thèng qu¶n trÞ tù ®éng tßa nhµ
– BAS ra ®êi nh mét sù khëi ®Çu trong viÖc ®¬n gi¶n hãa viÖc qu¶n trÞ vµ
vËn hµnh c¸c hÖ thèng trong tßa nhµ. Tuy nhiªn, BMS/BAS cha thùc sù hiÖu
qu¶ v× nã ®îc lËp tr×nh s½n dùa trªn c¸c chØ sè ®îc thiÕt lËp tõ tríc.
iBMS “th«ng minh” h¬n ë chç ngoµi c¸c tÝnh chÊt cña mét hÖ BMS nã
cßn cã mèi liªn hÖ t¬ng t¸c víi c¸c quy tr×nh nghiÖp vô “®Þnh híng ngêi
dïng”, c¸c luËt, quy ®Þnh, chÝnh s¸ch ®Ó qu¶n lý vµ vËn hµnh hÖ thèng mét
c¸ch tèi u. Mét hÖ thèng iBMS tæng thÓ bao gåm rÊt nhiÒu thµnh phÇn vµ
chøc n¨ng kh¸c nhau, cã thÓ bao gåm (hoÆc kh«ng hoµn toµn) c¸c hÖ thèng
sau:
• HÖ thèng Tæng hîp: Qu¶n lý c¸c hÖ thèng di chuyÓn, thang m¸y,
nhiÖt ®é, ®Ëu xe, chiÕu sang trong vµ ngoµi tßa nhµ, ©m thanh vµ ph¸t
thanh c«ng céng…
• HÖ thèng c¬: qu¶n lý c¸c hÖ thèng sëi, lµm l¹nh, c¶m øng, giã,
níc, Gas, vËn chuyÓn tµi liÖu, xö lý níc th¶i,…
• HÖ thèng ®iÖn: Qu¶n lý c¸c hÖ thèng tiªu thô ®iÖn n¨ng, chiÕu
s¸ng, ph©n phèi ®iÖn, m¸y ph¸t ®iÖn, m¸y lu ®iÖn UPS,…
• HÖ thèng an ninh: qu¶n lý c¸c hÖ thèng Camera an ninh, truy cËp
tù ®éng, c¶m øng, sinh tr¾c häc, b¸o ch¸y, b¸o khãi, dËp ch¸y, b¶o vÖ,
ngËp lôt,…
• HÖ thèng th«ng tin liªn l¹c: qu¶n lý c¸c hÖ thèng m¹ng c¸p th«ng
tin liªn l¹c, tæng ®µi tho¹i, m¹ng d÷ liÖu, Wifi, cable TV, video,
sateline,…
106
Mét hÖ thèng iBMS thùc thô cho phÐp ngêi qu¶n lý ®iÒu khiÓn, phèi
hîp ho¹t ®éng vµ gi¸m s¸t tõ trung t©m toµn bé c¸c hÖ thèng nªu trªn cña tßa
nhµ nh»m ®¶m b¶o qu¸ tr×nh vËn hµnh cña c¸c c¸c hÖ thèng nµy mét c¸ch tèi
u, chÝnh x¸c vµ hiÖu qu¶. ViÖc phèi hîp c¸c ho¹t ®éng cña c¸c hÖ thèng nµy
th«ng qua c«ng cô giao tiÕp, thèng kª, ph¸t hiÖn tù ®éng… sÏ gióp ®¸p øng tèt
nhÊt c¸c yªu cÇu vÒ møc ®é sö dông, ®¶m b¶o an ninh, b¶o tr×, b¶i hµnh, an
toµn, còng nh t¹o ra mét m«i trêng lµm viÖc th©n thiÖn, tiÖn nghi, vµ tho¶i
m¸i nhÊt cho nh÷ng ngêi tham gia ho¹t ®éng trong tßa nhµ, gãp phÇn n©ng
cao hiÖu qu¶ s¶n xuÊt vµ lµm viÖc.
107
C«ng nghÖ iBMS hiÖn nay cha cã mét tiªu chuÈn vµ ng«n ng÷ chung
nµo cho c¸c thiÕt bÞ nµy liªn l¹c víi nhau. T×nh ®Õn thêi ®iÓm 2005, trªn thÕ
giíi cã trªn 500 nhµ s¶n xuÊt c¸c gi¶i ph¸p vµ thiÕt bÞ iBMS víi 47 tiªu chuÈn
truyÒn dÉn, thiÕt bÞ, c¸p, ®Çu nèi vµ giao thøc kh¸c nhau. Trong nhiÒu tßa nhµ
hiÖn nay, c¸c thiÕt bÞ nh m¸y l¹nh, camera an ninh, qu¶n lý truy cËp, b¸o
ch¸y, kiÓm so¸t n¨ng lîng, chiÕu sang… thêng ®îc kÕt nèi trong c¸c m¹ng
c¸p riªng biÖt vµ ®éc víi víi th«ng tin liªn l¹c (tho¹i, d÷ liÖu)… do ®ã sù vËn
hµnh sÏ phøc t¹p, kh«ng hiÖu qu¶, hÖ thèng sÏ khã cµi ®Æt vµ bÞ h¹n chÕ c¸c
chøc n¨ng qu¶n lý tËp trung. HÖ thèng nµy ®ßi hái ph¶i cã nhiÒu ngêi chuyªn
viªn cã kü n¨ng giái ®Ó qu¶n lý vµ thêng lµ kh«ng hiÖu qu¶.
H×nh 3-2: HÖ thèng BMS kiÓu cò víi c¸p truyÒn dÉn ®éc lËp.
Tuy nhiªn, c«ng nghÖ TCP/IP ra ®êi ®· lµm thay ®æi diÖn m¹o vµ tÝnh
hiÖu qu¶ cña iBMS. Víi nÒn t¶ng truyÒn dÉn lµ c¸p ®ång UTP Cat 5e, Cat 6 vµ
c¸p sîi quang vµ giao thøc phæ biÕn nhÊt lµ TCP/IP, hÖ thèng iBMS ®· b¾t ®Çu
ph¸t huy ®îc nh÷ng u ®iÓm cña m×nh. Khi hÖ thèng th«ng tin liªn l¹c lµ c¬
sî h¹ tÇng kh«ng thÓ thiÕu trong bÊt kú tßa nhµ nµo th× viÖc dïng chÝnh hÖ
thèng nµy ®Ó truyÒn c¸c tÝn hiÖu qu¶n lý kh¸c cña hÖ thèng iBMS trë thµnh
gi¶i ph¸p tiÕt kiÖm chi phÝ tèi u cho c¸c chñ ®Çu t tßa nhµ. Kh¶o s¸t cho
108
thÊy, viÖc dïng chung hÖ thèng nµy gióp gi¶m trung b×nh 30% chi phÝ cho hÖ
thèng c¸p vµ gióp gi¶m 60% chi phÝ b¶o tr× hÖ thèng nµy.
H×nh 3-3: Hª thèng BMS kiÓu míi víi c¸p truyÒn dÉn tÝch hîp chuÈn TCP/IP
ViÖc x©y dùng c¸c hÖ thèng c¸p cÊu tróc trong tßa nhµ cÈn ph¶i tu©n thñ
tiªu chuÈn quèc tÕ nh ISO 11801, TIA 568B, TIA 862,… ®Ó ®¶m b¶o tèi u
chi phÝ ®Çu t vµ chÊt lîng hÖ thèng. C¸c hÖ thèng tu©n thñ tiªu chuÈn cao
nhÊt thêng ®îc b¶o hµnh tèi thiÓu 20 n¨m cho chÊt lîng thiÕt bÞ vµ 5 n¨m
cho chÊt lîng truyÒn dÉn. HÖ thèng c¸p ph¶i cã tÝnh linh ®éng, dÔ dµng n©ng
cÊp, më réng, vµ cã tÝnh t¬ng thÝch, ®¸p øng c¸c c«ng nghÖ vµ øng dông
trong t¬ng lai. Ngµy nay, kh«ng hiÕm c¸c tßa nhµ t¹i ViÖt Nam cã nh÷ng hÖ
thèng th«ng tin liªn l¹c cã gi¸ trÞ hµng triÖu ®« la mü, vµ viÖc ®¶m b¸o chÊt
lîng, thiÕt kÕ, thi c«ng vµ vËn hµnh hÖ thèng nµy lµ mèi quan t©m hµng ®Çu
cña chñ ®Çu t.
Víi chi phÝ ®Çu t cho hÖ thèng qu¶n trÞ tßa nhµ th«ng minh trung b×nh
tõ kho¶ng 400USB/m2 (trung b×nh t¹i Mü 2006), c¸c chñ ®Çu t cã thÓ håi
vèn ®Çu t nhanh chãng trong tõ 1.5 – 3 n¨m tõ nh÷ng lîi Ých quy ®æi cña
109
viÖc ®Çu t vµo hÖ thèng nµy. Thèng kª cho thÊy, mét hÖ thèng iBMS chuÈn
IP sÏ gióp:
Gi¶m ®iÖn n¨ng thiªu thô (trung b×nh 15% - 30%).
TiÕt kiÖm chi phÝ vËn hµnh, thêi gian qu¶n trÞ, nh©n lùc vµ
c¸c tµi nguyªn kh¸c.
T¨ng tÝnh hiÖu qu¶, ®é an toµn vµ ®é bÒn.
T¨ng hiÖu suÊt lµm viÖc cña ngêi sinh ho¹t trong tßa nhµ
(2% - 5%).
Gi¶m thêi gian x©y dùng vµ ®a hÖ thèng vµo vËn hµnh.
T¨ng chÊt lîng dÞch vô vµ c¸c dÞch vô gi¸ trÞ gia t¨ng.
T¨ng gi¸ trÞ tiÕp thÞ vµ c«ng suÊt thuª (~4%).
Gi¶m thiÓu lçi vµ sù cè.
DÔ dµng thay ®æi, më réng, n©ng cÊp ®Ó ®¸p øng nhu cÇu
ph¸t triÓn.
Lîi Ých cña hÖ thèng iBMS chuÈn IP kh«ng dõng ë mét tßa nhµ ®éc lËp.
Khi kÕt nèi nh÷ng tßa nhµ, n»m tËp trung hoÆt r¶i r¸c, víi hÖ thèng m¹ng
chuÈn IP th× viÖc qu¶n lý c¸c tßa nhµ nµy tõ hÖ thèng iBMS tËp trung lµ hoµn
toµn kh¶ thi, vµ sÏ gióp tiÕt kiÖm chi phÝ nh©n sù ®iÒu hµnh vµ ®¶m b¶o chÊt
lîng dÞch vô ®ång nhÊt.
Nh nhiÒu hÖ thèng kh¸c, hiÖu qu¶ cña iBMS tïy thuéc rÊt nhiÒu vµo
viÖc tu©n thñ nghiªm ngÆt c¸c thiªu chuÈn vµ quy ®Þnh nh»m gióp cho hÖ
thèng ®¹t chÊt lîng tèi u vµ ho¹t ®éng æn ®Þnh. HÖ thèng m¹ng c¸p cÊu tróc
cho iBMS cÇn tu©n thñ c¸c tiªu chuÈn sau:
• ISO/IEC 11801 vµ EIA/TIA 568B: Tiªu chuÈn hÖ thèng c¸p cÊu
tróc cho c¸c tßa nhµ, bao gåm quy ®Þnh vÒ thiÕt kÕ, chÊt lîng thiÕt bÞ,
thi c«ng triÓn khai, ®o kiÓm,…
110
• EIA/TIA 862: Tiªu chuÈn hÖ thèng c¸p cÊu tróc cho hÖ thèng
qu¶n trÞ tßa nhµ th«ng minh bao gåm quy ®Þnh vÒ hiÖu n¨ng, cÊu h×nh,
giao thøc, tÝnh kü thuËt cho c¸c hÖ thèng c¸p truyÒn dÉn cho iBMS.
• EIA/TIA 569A: tiªu chuÈn vÒ hÖ thèng m¹ng vµ kh«ng gian cho
hÖ thèng c¸p cÊu tróc bao gåm quy ®Þnh vÒ thiÕt kÕ, kh«ng gian, hÖ
thèng hç trî, ®Êu nèi, tñ hép b¶o vÖ…
• EIA/TIA 606: Tiªu chuÈn vÒ viÖc lu trc hå s¬ vµ tµi liÖu, bao
gåm quy ®Þnh vÒ m· ký hiÖu, nh·n, kÝch thíc, hå s¬…
ViÖc thiÕt kÕ vµ x©y dùng iBMS cÇn ph¶i ®îc tÝnh to¸n cÈn thËn víi sù
cam kÕt râ rµng cña chñ ®Çu t ngay tõ nh÷ng ngµy ®Çu tiªn. ViÖc sù dông c¸c
nhµ t vÊn chuyªn nghiÖp trong suèt qu¸ tr×nh x©y dùng tßa nhµ lµ cÇn thiÕt vµ
sÏ gióp gi¶m thiÓu tèi ®a c¸c chi phÝ “kh«ng ®¸ng ph¶i tr¶” trong t¬ng lai gÇn
khi hÖ thèng b¾t ®Çu ®i vµo ho¹t ®éng. KhuyÕn nghÞ tõ HiÖp héi tßa nhµ th«ng
minh (intelligent Building Group) cho c¸c chñ ®Çu t nh sau:
Ng«i nhµ th«ng minh cã thÓ ®iÒu khiÓn hÖ thèng chiÕu s¸ng tù ®éng nhê
c¸c thiÕt bÞ c¶m biÕn hång ngo¹i. HÖ thèng chiÕu s¸ng cßn ®îc thiÕt kÕ ®Ó
tïy biÕn ®iÒu chØnh ¸nh s¸ng, mµu s¾c… theo së thÝch cña chñ nh©n. §ång
thêi, hÖ thèng nµy cßn cã thÓ kÕt hîp víi c¸c thiÕt bÞ kh¸c trong nhµ nh : ©m
thanh, rÌm cöa, thiÕt bÞ chiÕu phim, nghe nh¹c… ®Ó t¹o sù tiÖn nghi. Ch¼ng
h¹n, khi thiÕt bÞ chiÕu phim ho¹t ®éng, c¸c ®Ìn chiÕu s¸ng tù ®éng gi¶m
cêng ®é s¸ng, ®ång thêi hÖ thèng rÌm mµnh còng tù ®éng khÐp l¹i ®Ó t¹o
m«i trêng ¸nh s¸ng cña phßng chiÕu phim… Ngoµi ra nhµ th«ng minh cßn
cã thÓ ®îc trang bÞ hÖ thèng kiÓm so¸t m«i trêng nh»m duy tr× tr¹ng th¸i
113
m«i trêng tèt nhÊt: HÖ thèng c¶nh b¸o an ninh kiÓm so¸t c¸c nguy c¬ ch¸y,
næ hay bÞ x©m nhËp tr¸i phÐp… HÖ thèng gi¶i trÝ ®a ph¬ng tiÖn multimedia
qu¶n lý c¸c th viÖn ©m nh¹c, phim, ¶nh cña chñ theo së thÝch…
Mét hÖ thèng nhµ th«ng minh ph¶i g¾n kÕt ®îc c¸c hÖ thèng An ninh-
An toµn, ChiÕu s¸ng, §iÒu khiÓn nhiÖt ®é - Qu¶n lý n¨ng lîng, hÖ thèng ©m
thanh, Video - Camera gi¸m s¸t, Intercom - Chu«ng cöa cã h×nh, RÌm tù
®éng, B¬m bÓ b¬i, B¬m tíi, vµ c¸c hÖ thèng kh¸c theo yªu cÇu. C¸c hÖ thèng
nµy cã thÓ giao tiÕp vµ ho¹t ®éng t¬ng t¸c víi nhau ®Ó t¹o ra mét hÖ thèng
®iÒu khiÓn thèng nhÊt ".
HÖ thèng ®iÒu khiÓn trung t©m cã thÓ ®iÒu khiÓn c¸c thiÕt bÞ mét c¸ch tù
®éng dùa trªn sù kiÖn hÖ thèng. C¸c ch¬ng tr×nh tù ®éng ®îc lËp tr×nh cho
tõng kh¸ch hµng ®Ó t¹o ra c¸c tÝnh n¨ng mong muèn.
HÖ thèng ®iÒu khiÓn trung t©m cho phÐp t¹o ra c¸c nót nhÊn trªn giao
diÖn ngêi sö dông hoÆc c¸c khèi chøc n¨ng cho phÐp ®iÒu khiÓn nhiÒu hÖ
thèng cïng mét lóc. C¸c nót nhÊn nµy ®îc t¹o ra theo yªu cÇu cña ngêi sö
dông vµ ®îc lËp tr×nh c¸c tÝnh n¨ng theo mong muèn.
V× vËy cã rÊt nhiÒu lý do ®Ó b¹n trang bÞ mét hÖ thèng nhµ th«ng minh :
T¨ng cêng an ninh - an toµn :
B¹n kh«ng bao giê ph¶i ®i trong bãng tèi.Ng«i nhµ cña b¹n cã thÓ tù
®éng xö lý c¸c t×nh huèng x¶y ra vµ th«ng b¸o ®îc tíi b¹n. HÖ thèng tù ®éng
bËt ®Ìn ®Ó xua ®uæi kÎ xÊu x©m nhËp tr¸i phÐp. HÖ thèng tù ®éng lµm nhÊp
nh¸y ®Ìn ngoµi trêi, hó cßi ®Ó th«ng b¸o cho hµng xãm, gäi ®iÖn tho¹i th«ng
b¸o cho b¹n hoÆc cho c¶nh s¸t.
TiÕt kiÖm n¨ng lîng :
B¹n tiÕt kiÖm ®îc tiÒn ®iÖn hµng th¸ng do sö dông hîp lý, hiÖu qu¶
nguån n¨ng lîng. HÖ thèng nhµ th«ng minh HAI qu¶n lý n¨ng lîng dùa
trªn c¸c c¶m biÕn hiÖn diÖn vµ thêi gian thùc lµm t¨ng hiÖu qu¶ sö dông n¨ng
lîng lªn rÊt nhiÒu so víi c¸c qu¶n lý tù ®éng chØ dùa theo thêi gian.
§iÒu khiÓn c¸c thiÕt bÞ nh b×nh nãng l¹nh, ®iÒu hßa kh«ng khÝ theo c¸c
th«ng sè c¶m biÕn nhiÖt ®é vµ c¸c th«ng sè cµi ®Æt. Phèi hîp ho¹t ®éng c¸c hÖ
thèng mét c¸ch hoµn h¶o vµ dÔ dµng sö dông.
T¨ng tÝnh tiÖn nghi cña ng«i nhµ :
HÖ thèng nhµ th«ng minh còng gièng nh mét hÖ thèng gi¶i trÝ. HÖ thèng
sÏ ®em ®Õn cho b¹n nh÷ng tr¶i nghiÖm thó vÞ míi l¹ vµ còng rÊt dÔ sö dông.
Lu«n kiÓm tra ®îc ng«i nhµ cña b¹n trong nh÷ng chuyÕn ®i xa nhµ.
Mét hÖ thèng nhµ th«ng minh hoµn thiÖn ngoµi sù tiÖn Ých vÒ tÝnh n¨ng
th× cÇn ph¶i cã c¸c yªu c©u kh¸c vÒ thÈm mü, dÔ sö dông, th©n thiÖn víi m«i
trêng…
C¸c thiÕt bÞ cÇn ph¶i cã sù æn ®Þnh khi ho¹t ®éng. TÝnh æn ®Þnh lµ rÊt cÇn
thiÕt ®èi víi mäi s¶n phÈm. Nã chÝnh lµ môc tiªu mµ nhµ s¶n xuÊt ®ang híng
tíi.
Mét yªu cÇu kh¸c rÊt quan trong träng lµ yªu cÇu vÒ tÝnh thÈm mü cña
s¶n phÈm. Nã chÝnh lµ thø ®Çu tiªn mµ ngêi sö dông tiÕp xóc víi s¶n phÈm
cña chóng ta, nã sÏ t¹o ra Ên tîng tèt víi kh¸ch hµng. Vµ nã còng thÓ hiÖn sù
chuyªn nghiÖp trong s¶n xuÊt chÕ t¹o.
Giao diÖn sö dông lµ hÕt søc quan träng, nã gióp cho kh¸ch hµng dÔ dµng
sö dông s¶n phÈm cña chóng ta. Khi dÔ ®Ó sö dông, sÏ t¹o ra sù th©n thuéc cña
ngêi sö dông víi s¶n phÈm.
Nhµ th«ng minh lµ s¶n phÈm cña c«ng nghÖ cao, thÓ hiÖn sù ph¸t triÓn vÒ
mÆt c«ng nghÖ. N¨ng lîng sö dông thêng lµ n¨ng lîng ®iÖn lÊy tõ m¹ng
®iÖn líi quèc gia. V× lîng ®iÖn cÇn cho mét ng«i nhµ lµ rÊt lín. NÕu sö
dông toµn bé ®iÖn quèc gia sÏ kh«ng tèt, chóng ta nªn sö dông n¨ng lîng
s¹ch. Mét hÖ thèng nhµ th«ng minh nªn cã c¬ cÊu tù tao ra n¨ng lîng ®Ó sö
dông, mµ ®¬n gi¶n vµ hiÖu qu¶ nhÊt lµ n¨ng lîng tõ trong tù nhiªn nh : n¨ng
lîng mÆt trêi, giã…
116
Hệ thống điều
khiển tòa nhà
HÖ thèng ®îc x©y dùng trªn m« h×nh ®o lêng, qu¶n lý, ®iÒu khiÓn c¸c
thiÕt bÞ trong tßa nhµ. Do vËy m« h×nh hÖ thèng ®îc x©y dùng nh díi
HÖ thèng c¶m biÕn ®o lêng: Ghi nhËn c¸c biÕn ®æi m«i trêng ph¶n håi,
th«ng b¸o trùc tiÕp cho bé xö lý trung t©m qua bé chuyÓn ®æi tÝn hiÖu (thêng
xö dông biÕn ®æi ADC)
Bé ®iÒu khiÓn trung t©m nhËn d÷ liÖu, xö lý d÷ liÖu vµ ®a ra quyÕt ®Þnh
tïy thuéc vµ chÕ ®é ®iÒu khiÓn ®îc thiÕt lËp tõ m¸y tÝnh hoÆc thiÕt bÞ ®iÒu
khiÓn tõ xa.
Bé b¸o hiÖu, hiÖn thÞ ®a ra c¸c kÕt qu¶ xö lý th«ng tin tõ c¸c bé c¶m
biÕn, ®Ó th«ng b¸o hay b¸o hiÖu cho ngêi sö dông hoÆc qu¶n lý biÕn tr¹ng
th¸i hiÖn t¹i
C¬ cÊu chÊp hµnh lµ hÖ thèng c¸c thiÕt trùc tiÕp nhËn vµ thùc thi c¸c hµnh
®éng trùc tiÕp lªn tßa nhµ (m«i trêng) nh ®iÒu chØnh qu¹t, ¸nh s¸ng ®Ìn…
HÖ thèng phÇn cøng lµ khèi ®iÒu khiÓn vµ trùc tiÕp hiÓn thÞ th«ng tin liªn
quan ®Õn hÖ thèng.VÒ mÆt chøc n¨ng hÖ thèng chia lµm 4 khèi chÝnh nh sau:
Khèi ®iÒu khiÓn trung t©m (MCU):
Vai trß: §¶m nhËn vai trß tr¸i tim hÖ thèng. Giao tiÕp víi m¸y tÝnh,
xö lý th«ng tin vµ truyÒn th«ng tin ®iÒu khiÓn hÖ thèng.
§Çu vµo : gãi tin tõ m¸y tÝnh hoÆc tõ ®iÒu khiÓn tõ xa.
§Çu ra: Luång d÷ liÖu ®iÒu khiÓn hÖ thèng nhµ th«ng minh.
Khèi c«ng suÊt: §¶m nhËn vai trß ®êng truyÒn d÷ liÖu vµ
cung cÊp nguån c«ng suÊt cho c¸c thiÕt bÞ trong hÖ thèng.
Bé ®iÒu khiÓn trung ®¶m nhiÖm vai trß quan träng nhÊt hÖ thèng bao
gåm:
Gi¸m s¸t hÖ thèng liªn tôc, b¾t c¸c sù kiÖn ngay khi sù kiÖn
võa ®Õn hay võa x¶y ra.
§iÒu khiÓn hÖ thèng nhiÒu thiÕt bÞ kh¸c nhau víi c¸c møc
®iÒu khiÓn kh¸c nhau tïy theo tõng trêng hîp cô thÓ
Giao tiÕp víi c¸c thiÕt bÞ ®iÒu khiÓn tõ xa còng nh víi
m¸y tÝnh, cËp nhËt chÕ ®é ®iÒu khiÓn còng nh gãi tin ®iÒu
khiÓn trùc tiÕp do con ngêi t¸c ®éng
S¬ ®å khèi bé ®iÒu khiÓn trung t©m:
Transmitter): Bé TruyÒn NhËn Nèi TiÕp §ång Bé Vµ BÊt §ång Bé Phæ Dông,
®©y lµ khèi chøc n¨ng dïng cho viÖc truyÒn th«ng gi÷a vi ®iÒu khiÓn víi c¸c
thiÕt bÞ kh¸c. Trong vÊn ®Ò truyÒn d÷ liÖu sè, cã thÓ ph©n chia c¸ch thøc
(method) truyÒn d÷ liÖu ra hai chÕ ®é (mode) c¬ b¶n lµ :
TruyÒn BÊt §ång Bé: Lµ kiÓu truyÒn d÷ liÖu trong ®ã mçi bé truyÒn
(Transmitter) vµ bé nhËn (Receiver) cã bé t¹o xung clock riªng, tèc ®é xung
o
clock ë hai khèi nµy cã thÓ kh¸c nhau, nhng thêng kh«ng qu¸ 10/o. DoP
P
R R
kh«ng dïng chung xung clock, nªn ®Ó ®ång bé qu¸ tr×nh truyÒn vµ nhËn d÷
liÖu, ngêi ta ph¶i truyÒn c¸c bit ®ång bé (Start, Stop,…) ®i kÌm víi c¸c bit d÷
liÖu. C¸c bé truyÒn vµ bé nhËn sÏ dùa vµo c¸c bit ®ång bé nµy ®Ó quyÕt ®Þnh
khi nµo th× sÏ thùc hiÖn hay kÕt thóc qu¸ tr×nh truyÒn hoÆc nhËn d÷ liÖu. Do
®ã, hÖ thèng truyÒn kh«ng ®å bé cßn ®îc gäi lµ hÖ thèng truyÒn “tù ®ång
bé”. Tõ hai kiÓu truyÒn d÷ liÖu c¬ b¶n trªn, ngêi ta ®a ra nhiÒu giao thøc
(Protocol) truyÒn kh¸c nhau nh: SPI (®ång bé), USRT (®ång bé), UART (bÊt
®ång bé),…Tuy vËy, còng cã giao thøc truyÒn mµ kh«ng thÓ xÕp ®îc vµo
kiÓu nµo: ®ång bé hay bÊt ®ång bé, ch¼ng h¹n kiÓu truyÒ2 C
n I(Trong AVR
R R
gäi lµ TWI), tuy vËy mét c¸ch h¬i gîng Ðp th× cã thÓ thÊy giao thøc truyÒn
I2C gÇn víi kiÓu ®ång bé h¬n v× c¸c thiÕt bÞ giao tiÕp víi nhau theo chuÈn
R R
2C I R R
120
HÖ thèng xung clock ®îc chia thµnh nhiÒu khèi kh¸c nhau, mçi khèi
(module) sÏ cung cÊp xung clock cho c¸c khèi ngo¹i vi øng dông t¬ng øng.
121
FPGA hä Cyclone II lµ mét lo¹i FPGA gi¸ rÎ víi c«ng nghÖ cÊu h×nh dùa
trªn SRAM, mËt ®é tÝch hîp lªn ®Õn 68K phÇn tö logic vµ h¬n 1.1 Mbit Ram
nhóng trªn chip. Chip ®îc hç trî thªm víi 18 x 18 khèi nh©n ®îc dïng cho
c¸c øng dông DSP phøc t¹p, c¸c bé vßng khãa pha (PLL) dïng cho ®iÒu khiÓn
xung clock hÖ thèng vµ c¸c giao tiÕp bé nhí ngoµi tèc ®é cao kÕt nèi víi
SRAM, SDRAM trªn kit. V× vËy, Cyclone II lµ dßng FPGA gi¸ rÎ nhng kh¶
n¨ng thùc thi cao cho c¸c hÇu hÕt c¸c øng dông DSP phøc t¹p.
H¬n n÷a, h·ng Altera còng cung cÊp linh kiÖn cÊu h×nh nèi tiÕp gi¸ rÎ
cho dßng Cyclone II nªn cã thÓ nãi dßng Cyclone II rÊt phï hîp ®Ó thiÕt kÕ
c¸c øng dông DSP chuyªn nghiÖp víi chi phÝ thÊp.
122
Dßng Cyclone II cã kiÕn tróc 2 chiÒu dùa trªn dßng vµ cét ®Ó thùc hiÖn
c¸c khèi logic. C¸c kÕt nèi bªn trong gi÷a dßng vµ cét cung cÊp c¸c tÝn hiÖu
kÕt nèi gi÷a c¸c khèi phÇn cøng víi nhau gåm c¸c LAB (Logic Array Block),
bé nhí nhóng vµ c¸c bé nh©n cho DSP.
Mét d·y logic chøa c¸c LAB, víi mçi LAB cã 16 phÇn tö logic. Mçi mét
phÇn tö logic lµ ®¬n vÞ nhá nhÊt cung cÊp kh¶ n¨ng thùc hiÖn c¸c hµm logic do
ngêi thiÕt kÕ tù ®Þnh nghÜa. C¸c LAB ®îc tËp hîp trªn c¸c hµng vµ cét trong
linh kiÖn. Dßng Cyclone II cã tõ 4.000 ®Õn 68.000 phÇn tö logic.
Dßng Cyclone II cung cÊp mét m¹ng clock toµn côc víi sù hç trî cña 4
vßng khãa pha. M¹ng clock toµn côc bao gåm 16 ®êng clock tr¶i ®Òu suèt
toµn bé diÖn tÝch linh kiÖn. M¹ng nµy cung cÊp xung clock cho tÊt c¶ c¸c
123
thµnh phÇn trong linh kiÖn nh c¸c I/O, phÇn tö logic, bé nhí nhóng vµ
c¸c khèi nh©n. C¸c bé PLL cung cÊp kh¶ n¨ng ®iÒu khiÓn mét c¸ch linh ho¹t
xung clock hÖ thèng nh nh©n tÇn, chia tÇn, dÞch pha v.v . . .
C¸c khèi nhí M4K thùc sù lµ c¸c bé nhí 2-cæng víi 4 Kilo bit
cïng víi parity. C¸c khèi nhí nµy cã thÓ ®îc cÊu h×nh thµnh c¸c bé nhí 2-
cæng hoÆc 1-cæng víi tÇn sè ho¹t ®éng lªn ®Õn 260 MHz vµ chiÒu réng bus
lªn ®Õn 36 bit. C¸c khèi M4K ®îc s¾p xÕp trªn c¸c cét gi÷a c¸c LAB.
Mçi mét khèi nh©n cã thÓ thùc hiÖn ®ång thêi 2 bé nh©n 9 x 9 bit hoÆc 1
bé nh©n 18 x 18 bit víi tÇn sè ho¹t ®éng lªn ®Õn 250 MHz. C¸c khèi
nh©n dïng cho DSP nµy còng ®îc s¾p xÕp däc theo cét cña linh kiÖn.
Lâi FPGA : mét lo¹t c¸c lâi ®Ó lùa chän díi ®©y:
• Flash: 8MByte;
• EPCS16 cÊu h×nh chip: EP1C6 (tøc lµ c«ng suÊt 16Mb);
• Cung cÊp c¸c chÕ ®é cÊu h×nh: JTAG vµ AS;
• 50MHz ho¹t ®éng ®ång hå;
• Mäi I/O, cÊu h×nh bus Avalon, vµ qua bèn hµng ch©n pin,
ngêi dïng cã thÓ ch¬i tù do ®Çy ®ñ ®Ó më réng linh ho¹t
h¬n;
• 4 LED;
• Mét nót ®Æt l¹i (reset)
• IC nguån 3.3V vµ 1.2V
Víi <index> kiÓu sè nguyªn; gi¸ trÞ trong ph¹m vi sè vÞ trÝ hç trî bé
nhí liªn quan
Víi [<mode>] = 0 t¬ng øng víi mode PDU, = 1 t¬ng øng víi mode
text.
Danh s¸ch c¸c tin nh¾n SMS tõ lu tr÷ a thÝch: AT+CMGL= <stat>
<stat> :
<stat> :
= 4: All messages
Víi <index>: kiÓu sè nguyªn; gi¸ trÞ trong ph¹m vi sè vÞ trÝ ®îc
hç trî bëi bé nhí liªn quan
Víi <n>
Víi <m>
= 0: No card
127
Víi <stat>
= 3: registration denied
= 4: unknown
= 5: registered, roaming
c) VËn hµnh Modem TC35i
U
- C¾m nguån cho module TC35i, sau ®ã bËt c«ng t¾c nguån, chó ý
®Ìn nguån sang lµ ®îc.
- Trªn module MC35i cÇn Ên nót Reset, nhÊn Reset ®Ó
MC35i ho¹t ®éng, sau khi nhÊn th× Led trªn module MC35i
thÊy nhÊp nh¸y ®Òu nhau tøc lµ module MC35i ®ang ho¹t
®éng.
- Chó ý c¾m Sim vµo khe c¾m Sim vµ c¾m nèi ¨ngten GSM bªn
ngoµi.
- Cæng RS232 dïng ®Ó kÕt nèi víi m¸y tÝnh hoÆc kÕt nèi víi kÝt
FPGA
- Jack mic vµ phone cho phÐp kÕt nèi ®µm tho¹i voice.
128
H×nh 4-13: PhÇn cµi ®Æt cæng COM ®Ó kÕt nèi víi Modem GSM
thËm chÝ 3/4 so víi ®é réng xung nh lý thuyÕt. B»ng c¸ch nµy, pin 500 giê cã thÓ
sö dông ®îc tíi 600giê (5/6) hoÆc 800 giê (3/4). Mét sè nhµ s¶n xuÊt kh¸c kh«ng
quan t©m l¾m vÒ vÊn ®Ò nµy. Hä t¨ng cêng hiÖu qu¶ truyÒn tÝn hiÖu b»ng c¸ch më
réng 1 chót kho¶ng thêi gian sãng mang 36 KHz tÝch cùc vµ rót nh¾n kho¶ng thêi
gian kia. Nh vËy tÝn hiÖu tö REMOTE SONY cã d¹ng sãng nh sau:
Bit ®Çu tiªn sau bit START lµ bit LSB, ta ®Æt tªn nã lµ bit0 ,Bbit cuèi cïng sÏ lµ
R R
B11 .
R R
Trong h×nh 4-19, ®Þa chØ lµ 02H, m· lÖnh lµ 16H. Cã 32 kh¶ n¨ng ®Þa chØ vµ
128 lÖnh. Toµn bé thêi gian truyÒn ®i cña khung cã thÓ thay ®æi theo thêi gian v× ®é
réng cña bit 1 > ®é réng cña bit 0. NÕu b¹n gi÷ nót bÊm, khung d÷ liÖu sÏ lÆp l¹i sau
mçi 25ms. NÕu b¹n sö dông m¾t nhËn hång ngo¹i cã s½n trªn thÞ trêng, tÊt c¶ d¹ng
sãng trªn sÏ bÞ ®¶o l¹i nh sau:
H×nh 4-20: Khung truyÒn hång ngo¹i tiÕt kiÖm n¨ng lîng
4.2.2.5. C¸c s¬ ®å chi tiÕt phÇn cøng
H×nh 4-22: S¬ ®å ch©n kÕt nèi víi bo m¹ch FPGA vµ kÕt nèi ba m¹ch kh«ng
d©y
H×nh 4-23: S¬ ®å kÕt nèi víi Max 232 ®Ó kÕt nèi víi Modem TC35i
135
H×nh 4-26: S¬ ®å kÕt nèi mµn h×nh LCD vµ chÝp nhí EPROM
C¸c Nios II lu ®å ph¸t triÓn bao gåm 3 bíc ph¸t triÓn:
Bíc thiÕt kÕ phÇn cøng, bíc thiÕt kÕ phÇn mÒm vµ c¸c bíc thiÕt kÕ hÖ
thèng, liªn quan ®Õn c¶ phÇn cøng vµ phÇn mÒm. §Ó ®¬n gi¶n hÖ thèng Nios
II, mét trong ngêi cã thÓ thùc hiÖn tÊt c¶ c¸c bíc. §èi víi nhiÒu hÖ thèng
phøc t¹p, riªng biÖt thiÕt kÕ phÇn cøng vµ phÇn mÒm cã thÓ ph¶i chÞu tr¸ch
nhiÖm cho c¸c bíc kh¸c nhau. HÖ thèng c¸c bíc thiÕt kÕ liªn quan ®Õn c¶
phÇn cøng vµ phÇn mÒm, vµ cã thÓ yªu cÇu ®Çu vµo cña c¶ hai bªn. Trong
trêng hîp cña phÇn cøng riªng biÖt vµ ®éi phÇn mÒm, ®iÒu quan träng lµ ph¶i
138
biÕt chÝnh x¸c nh÷ng g× c¸c tËp tin vµ th«ng tin ph¶i ®îc th«ng qua gi÷a c¸c
®éi t¹i c¸c ®iÓm giao nhau trong lu lîng thiÕt kÕ.
ViÖc thiÕt kÕ c¸c bíc trong híng dÉn nµy tËp trung vµo ph¸t triÓn phÇn
cøng vµ chØ cung cÊp mét giíi thiÖu ®¬n gi¶n ®Ó ph¸t triÓn phÇn mÒm. §Ó biÕt
thªm chi tiÕt vÒ qu¸ tr×nh ph¸t triÓn phÇn mÒm, Altera khuyÕn nghÞ b¹n ®äc
Híng dÉn ph¸t triÓn phÇn mÒm cã s½n tõ Nios II IDE gióp hÖ thèng sau khi
b¹n hoµn thµnh híng dÉn nµy.
C¸c lu ®å ph¸t triÓn b¾t ®Çu víi ho¹t ®éng predesign trong ®ã bao gåm
mét ph©n tÝch c¸c yªu cÇu øng dông, ch¼ng h¹n nh:
HiÖu suÊt tÝnh to¸n nµo ®îc yªu cÇu ¸p dông?
Bao nhiªu b¨ng th«ng hoÆc th«ng qua c¸c yªu cÇu øng dông?
Nh÷ng lo¹i giao diÖn ®îc yªu cÇu ¸p dông lµ g×?
Cã yªu cÇu c¸c øng dông ®a luång cho phÇn mÒm?
C¨n cø vµo c©u tr¶ lêi cho nh÷ng c©u hái nµy, b¹n cã thÓ x¸c ®Þnh cô thÓ
yªu cÇu hÖ thèng, ch¼ng h¹n nh:
Bé xö lý lâi Nios II nµo ®îc sö dông: nhá h¬n hoÆc nhanh h¬n?
C¸c thµnh phÇn nµo cÇn thiÕt kÕ? Cã bao nhiªu lo¹i?
Trong ®ã thêi gian thùc cña hÖ ®iÒu hµnh (RTOS) ®Ó sö dông,
nÕu cã?
Trong trêng hîp cã thÓ t¨ng tèc phÇn cøng logic c¶i thiÖn ®¸ng
kÓ hÖ thèng hiÖu suÊt?
VÝ dô:
- Cã thÓ thªm mét thµnh phÇn lo¹i bá l·ng phÝ xö lý víi DMA chu kú sao
chÐp d÷ liÖu?
139
- Cã thÓ thªm tïy chØnh cã thÓ thay thÕ c¸c vßng lÆp quan träng cña mét
thuËt to¸n DSP ?
C©u tr¶ lêi cho nh÷ng c©u hái liªn quan ®Õn c¶ nhãm phÇn cøng vµ nhãm
phÇn mÒm.
Sau khi ph©n tÝch c¸c yªu cÇu phÇn cøng cña hÖ thèng, b¹n sö dông
SOPC Builder c«ng cô ®îc bao gåm trong phÇn mÒm Altera Quartus II. Sö
dông SOPC Builder b¹n chØ ®Þnh c¸c Nios II bé xö lý lâi (s), bé nhí, vµ c¸c
thµnh phÇn hÖ thèng kh¸c cña b¹n yªu cÇu. SOPC Builder tù ®éng t¹o ra
nh÷ng kÕt nèi logic ®Ó tÝch hîp c¸c thµnh phÇn trong hÖ thèng phÇn cøng.
B¹n cã thÓ chän tõ mét danh s¸ch c¸c nh©n xö lý ®¹t tiªu chuÈn vµ c¸c
thµnh phÇn cung cÊp cïng víi thiÕt kÕ nhóng Nios II Suite. B¹n còng cã thÓ
thªm cña b¹n riªng tïy chØnh phÇn cøng ®Ó t¨ng tèc hiÖu n¨ng hÖ thèng. B¹n
cã thÓ thªm tïy chØnh híng dÉn ®Ó c¸c lâi logic Nios II mµ t¨ng tèc hiÖu suÊt
CPU, hoÆc b¹n cã thÓ thªm mét thµnh phÇn tïy chØnh mµ offloads nhiÖm vô tõ
CPU. Híng dÉn nµy bao gåm viÖc thªm bé xö lý vµ tiªu chuÈn thµnh phÇn
lâi, nhng kh«ng bao gåm viÖc thªm logic tïy chØnh cho hÖ thèng.
Sö dông phÇn mÒm Quartus II ®Ó biªn so¹n c¸c tËp tin HDL c¸c
FPGA tæng thÓ thiÕt kÕ thµnh mét ®èi tîng SRAM File (SOF).
Sau khi b¹n t¹o ra c¸c hÖ thèng Nios II b»ng c¸ch sö dông SOPC Builder,
b¹n tÝch hîp nã vµo trong tæng thÓ dù ¸n Quartus II. Sö dông phÇn mÒm
Quartus II, b¹n thùc hiÖn tÊt c¶ nhiÖm vô cÇn thiÕt ®Ó t¹o ra c¸c thiÕt kÕ phÇn
cøng FPGA cuèi cïng. Nh trong h×nh 4-27, thiÕt kÕ FPGA nhÊt thiÕt bao
gåm logic ngoµi hÖ thèng Nios II. B¹n cã thÓ tÝch hîp phÇn cøng riªng cña
b¹n modul vµo thiÕt kÕ FPGA, hoÆc b¹n cã thÓ tÝch hîp kh¸c lµm s½n së h÷u
trÝ tuÖ (IP) thiÕt kÕ m«-®un cã s½n tõ Altera hoÆc thø ba bªn cung cÊp dÞch vô
IP. Híng dÉn nµy kh«ng bao gåm viÖc thªm logic kh¸c bªn ngoµi c¸c hÖ
thèng Nios II.
Sö dông phÇn mÒm Quartus II, b¹n còng cã thÓ ®Þnh vÞ ch©n (assign pin
locations) tÝn hiÖu I /O, x¸c ®Þnh c¸c yªu cÇu thêi gian (Timing Requestions),
vµ ¸p dông c¸c h¹n chÕ thiÕt kÕ kh¸c.
Cuèi cïng, b¹n biªn dÞch dù ¸n Quartus II ®Ó t¹o ra mét file Object
SRAM ®Ó cÊu h×nh cho FPGA. B¹n t¶i file SRAM Object vµo FPGA trªn bo
m¹ch môc tiªu sö dông mét c¸p t¶i Altera, ch¼ng h¹n nh Blaster-USB. Sau
khi cÊu h×nh, FPGA thùc hiªn hµnh vi theo quy ®Þnh cña thiÕt kÕ phÇn cøng,
mµ trong trêng hîp nµy lµ mét Nios II bé xö lý hÖ thèng.
4.2.3.2. LËp tr×nh cho FPGA
H×nh 4-30: Lu ®å thuËt to¸n kiÓm tra vµ xö lý tin tøc ®Õn SMS
142
H×nh 4-32: Lu ®å thuËt to¸n hiÓn thÞ th«ng tin trªn LCD 2x16
143
H×nh 4-34: Lu ®å thuËt to¸n kiÓm tra vµ xö lý lèi vµo c¶m biÕn
144
Trong khu«n khæ ®Ò tµi luËn v¨n cña m×nh, em ®· nghiªn cøu ®îc mét
sè vÊn ®Ò chÝnh vÒ hÖ thèng nhóng, vi m¹ch lËp tr×nh ®îc, hÖ thèng nhóng
øng dông cho ng«i nhµ th«ng m×nh. KÕt thóc luËn v¨n, em ®· cã s¶n phÈm gi¶
lËp vÒ hÖ thèng nhóng øng dông cho ng«i nhµ th«ng minh. Víi nh÷ng ®iÒu
kiÖn hiÖn cã, hÖ thèng ®îc gi¶ lËp cã kh¶ n¨ng giao tiÕp, ®iÒu khiÓn th«ng
qua hÖ thèng GSM (th«ng qua modem TC35i), qua ®iÒu khiÓn tõ xa vµ qua hÖ
thèng m¸y tÝnh gi¸m s¸t. §Æc biÖt, th«ng qua viÖc gi¸m s¸t vµ ®iÒu khiÓn b»ng
tin nh¾n SMS qua modem GSM, hÖ thèng ®îc m« pháng cã thÓ ®îc øng
dông trong thùc tÕ ®Æc biÖt viÖc gi¸m s¸t c¸c ®¬n vÞ cè ®Þnh nh tr¹m BTS,
nhµ xëng s¶n xuÊt, c¬ së ®µo t¹o,…
Trong t¬ng lai, híng nghiªn cøu cã thÓ më réng viÖc ph¸t triÓn c¸c hÖ
thèng sensor ®a d¹ng vµ hÖ thèng ®iÒu khiÓn më. ViÖc ®ã sÏ gióp cho hÖ
thèng cã nhiÒu kh¶ n¨ng gi¸m s¸t h¬n nh gi¸m s¸t nguån n¨ng lîng, gi¸m
s¸t th«ng tin, gi¸m s¸t h×nh ¶nh, ©m thanh,… Ngoµi ra, viÖc t¹o ra c¸c ®iÒu
khiÓn më cho phÐp n©ng cao, t¨ng cêng tÝnh hiÖu qu¶ trong viÖc sö dông hÖ
thèng vµ dÔ dµng trong viÖc thao t¸c, sö dông. MÆt kh¸c, ®Ò tµi còng cã híng
nghiªn cøu viÖc truyÒn dÉn tÝn hiÖu ®ång bé th«ng qua hÖ thèng th«ng tin s½n
cã nh ®êng tÝn hiÖu tho¹i, ADSL, kªnh riªng. Tõ ®ã cã thÓ n©ng cÊp hÖ
thèng vµ më réng chøc n¨ng ®iÒu khiÓn tõ xa th«ng qua internet.
145