Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
2,91 MB
Nội dung
1 TrườngĐạihọcBáchkhoaHàNội BộmônĐiềukhiểntựđộng Tàiliệutómtắtbàigiảng HỆ THỐNG ĐIỀU KHIỂN NHÚNG (EmbeddedControlSystems) TS.LưuHồngViệt 2 Nội dung 1 MỞĐẦU 5 1.1 Cáckháiniệmvềhệnhúng 5 1.2 Lĩnhvựcứngdụngcủahệnhúng 7 1.3 Đặcđiểmcôngnghệvàxuthếpháttriểncủahệnhúng 8 1.3.1 Đặcđiểmcôngnghệ 8 1.3.2 Xuth ếpháttriểnvàsựtăngtrưởngcủahệnhúng 9 1.4 Mụcđíchvànộidungmônhọc 10 2 CẤUTRÚCPHẦNCỨNGHỆNHÚNG 11 2.1 Cácthànhphầnkiếntrúccơbản 11 2.1.1 Đơnvịxửlý trungtâmCPU 11 2.1.2 Xungnhịpvàtrạngtháitínhiệu 13 2.1.3 Busđịachỉ,dữliệuvàđiềukhiển 16 2.1.4 Bộnhớ 17 2.1.5 Khônggianvàphânvùngđịachỉ 21 2.1.6 Ngoạivi 21 2.1.7 Giaodiện 33 2.2 Mộ tsốnềnphầncứngnhúngthôngdụng(µP/DSP/PLA) 37 2.2.1 ChipVixửlý/Viđiềukhiểnnhúng 37 2.2.2 ChipDSP 39 2.2.3 PAL 41 3 CƠSỞKỸTHUẬTPHẦNMỀMNHÚNG 48 3.1 Đặcđiểmphầnmềm nhúng 48 3.2 Biểudiễnsốvàdữliệu 48 3.2.1 Cáchệthốngcơsố 48 3.2.2 Sốnguyên 48 3.2.3 Sốdấuphảytĩnh 50 3.2.4 Sốdấuphảyđộng 51 3.2.5 Mộtsốphéptínhcơbản 52 3.3 Tậplệnh 55 3.3.1 CấutrúctậplệnhCISCvàRISC 55 3.3.2 Địnhdạnglệnh 57 3.3.3 Cáckiểutruyềnđịachỉtoántửlệnh 57 3.3.4 Nguyênlýthựchiệnpipeline 60 3.3.5 Harzard 61 3 3.4 Ngônngữvàmôitrườngpháttriển 63 3.4.1 Ngônngữ 63 3.4.2 Biêndịch 65 3.4.3 Simulator 70 3.4.4 Emulator 71 3.4.5 Thiếtkếhệthốngbằngmáytính 71 4 HỆĐIỀUHÀNHNHÚNG 73 4.1 Hệđiềuhành 73 4.2 Bộnạpkhởi tạo(Boot‐loader) 74 4.3 Cácyêucầuchung 76 4.4 Hệđiềuhànhthờigianthực 77 5 KỸTHẬTLẬPTRÌNHNHÚNG 81 5.1 Tácvụvàquátrình(process) 81 5.2 Lậplịch(Scheduling) 81 5.2.1 Cáckháiniệm 81 5.2.2 Cácphươngpháplậplịchphổbiến 82 5.2.3 Kỹthuậtlậplịch 85 5.3 Truyềnthôngvàđồngbộ 87 5.3.1 Semaphore 87 5.3.2 Monitor 89 5.4 Xửlýngắt 90 6 THIẾTKẾHỆNHÚNG:TỔHỢPPHẦNCỨNGVÀM ỀM 93 6.1 Quitrìnhpháttriển 93 6.2 Phântíchyêucầu 93 6.3 Môhìnhhoásựkiệnvàtácvụ 93 6.3.1 PhươngphápmôhìnhPetrinet 93 6.3.2 QuiướcbiểudiễnmôhìnhPetrinet 94 6.3.3 Môtảcáctìnhhuốnghoạtđộ ngcơbảnvớiPetrinet 95 6.3.4 Ngônngữmôtảphầncứng(VHDL) 103 6.4 Thiếtkếphầnmềmđiềukhiển 104 6.4.1 Môhìnhthựcthibộđiềukhiểnnhúng 104 6.4.2 Vídụthựcthibộđiềukhi ểnPIDsố 106 TÀILIỆUTHAMKHẢO 108 4 5 1 MỞ ĐẦU Kỷnguyêncông nghệmớiđãvàđang tiếptụcpháttriểnkhôngngừngnhằmthông minhhoáhiệnđạihoáthôngsuốtcáchệthống.Cóthểnóiđánhdấusựrađờivàphát triểnc ủah ệnhúngtrướctiênphảikểđếnsựrađờicủacácbộvixửlý,viđiềukhiển. NóđượcđánhdấubởisựrađờicủaChipvixửlýđầutiên4004vàonăm1971chomục đích tínhtoánth ươngmạibởimộtcôngtyNhậtbảnBusicomvàsauđóđãđượcchắp cánhvàpháttriểnvượtbậcbởiIntelđểtrởthànhcácbộsiêuxửlýnhưcácChipđược ứngdụng choPCnhưngàynay.Thậpkỷ80cóthểđượccoilàkhởiđiểmbắtđầukỷ nguyêncủasựbùngnổvềpháttriểncáchệnhúng.Từđókhởinguồncholànsóngra đờicủahànglo ạtcácchủngloạivixửlývàgắnliềnlàcáchệnhúngđểthâmnhậprộng khắptrongcácứngdụnghàngngàycủacuộcsốngchúngtavídụnhư,cácthiếtbịđiện tửsửdụngchosinhhoạthàngngày(lòvisóng,TV,tủlạnh,máygiặt,điềuhoà )và vănphònglàmviệc(máyfax,máyin,máyđiệnthoại ) Cácbộvixửlývàphầnmềm c ũngngàycàngđượcsửdụngrộngrãitrongrấtnhiềucáchệthốngnhỏ.Cácloạivixử lýđượcsửdụngtrongcáchệthốngnhúnghiệnnayđãvượtxasovớiPCvềsố lượng chủngloại(chiếmđến79%sốcácvixửlýđangtồntại[2])vàvẫncòntiếptụcphát triểnđểnhằmđápứngvàthoảmãnrấtnhiềuứngdụngđadạng.Trong sốđóvẫncòn ứngdụngcảcácChipvixửlý8bit,16bitvàhiệnnaychủyếuvẫnlà32bit(chiếm khoảng75%).Gắnliềnvớisựpháttriểnphầncứng,ph ầnmềmcũngđãpháttriểnvới tốcđộnhanhkhôngthuakémthậmchísẽt ăngnhanhhơnrấtnhiềutheosựpháttriển hệnhúng. 1.1 Các khái niệm về hệ nhúng Hệnhúng? Trongthếgiớithựccủachúngtabấtkỳmộtthiếtbịhayhệthốngđiện/điệntửcókhả năngxửlýthôngtin vàđiềukhiểnđều cóthểtiềmẩn trong đómột thiếtbịhay hệ nhúng,vídụnhưcácthiếtbịtruyềnthông,thiếtbịđolườngđiềukhiển,cácthiếtbị phụcvụsinhhoạthàngngàynhưlòvisóng,máygiặt,camera…Rất dễdàngđểcóthể kểrahàngloạtcácthiếtbịhayhệthốngnhưvậyđangtồntạiquanhta,chúnglàhệ nhúng.Vậyhệnhúngthựcchấtlàgìvànênhiểuthếnàovềhệnhúng?Hi ệnnaycũng chưacómộtđịnhnghĩanàothựcsựthoảđángđểđượcchuẩnhoávàthừanhậnrộng rãichohệnhúngmàvẫnchỉlànhữngkháiniệmdiễntảvềchúngthôngqua nhữngđặc thùchung.Tuynhiênởđâychúngtacóthểhiểuhệnhúnglàmộtphầnhệthốngxửlý thôngtinnhúngtrongcáchệthốnglớn,phứchợpvàđộclậpvídụnhưtrongôtô,các thi ếtbịđolường,điềukhiển,truyềnthôngvàthiếtbịthôngminhnóichung. Chúnglà nhữngtổhợpcủaphầncứngvàphầnmềmđểthựchiệnmộthoặcm ộtnhómchứ cnăng chuyên biệt, cụ thể (Tráingượcvới máy tínhPC màchúngta thường thấyđược sử dụngkhôngphảichomộtchứcnăngmàlàrấtnhiềuchứcnănghayphục vụchungcho nhiềumụcđích).PCthựcchấtlạilàmộthệthốnglớn,tổhợpcủanhiềuhệthốngnhúng vídụnhưcardmànhình,âmthanh,modem,ổcứng,bànphím…Chínhđiềunàylàm chúngtadễlúngtúngnếuđượchỏinênhiểuthếnàovềPC,cóphảilàhệnhúnghay không. 6 Hình1‐1:Mộtvàihìnhảnhvềhệnhúng Hệthờigianthực? Trongcácbàitoánđiềukhiểnvàứngdụngchúngtarấthaygặpthuậtng ữ“thờigian thực”.Thờigianthựccóphảilàthờigianphảnánh vềđộtrungthựccủathờigianhay không?Thờigianthựccóphảilàhi ểnthịchínhxácvàđồngbộtheođúngnhưnhịp đồnghồđếmthờigianhay không?Khôngphải hoàntoànnhưvậy!Th ựcchất,theo cáchhiểunếunóitrongcáchệthốngkỹthuậtđặcbiệtcáchệthốngyêucầukhắtkhevề sựràngbuộcthờigian,thờigianthựcđượchiểulàyêucầ ucủahệthốngphảiđảmbảo thoảmãnvềtínhtiềnđịnhtronghoạtđộngcủahệthống.Tínhtiềnđịnhnóilênhànhvi củahệthốngthựchiệnđúngtrongmộtkhungthời gianchotrướchoàntoànxácđịnh. Khungthờigiannàyđượcquyếtđịnhbởiđặcđiểmhoặcyêucầucủahệthống,cóthểlà vàigiâyvàcũngcóthểlàvàinanogiâyhoặcnhỏhơ nnữa.Ởđâychúngtaphânbiệt yếutốthờigiangắnliềnvớikháiniệmvềthờigianthực.Khôngphảihệthốngthực hiệnrấtnhanhlàsẽđảmbảođượctínhth ờigianthựcvìnhanhhaychậmhoàntoànlà phépsosánhcótínhtươngđốivìmiligiâycóthểlànhanhvớihệthốngđiềukhiển nhiệtnhưnglạilàchậm đốivớicácđối tượngđiềukhiểnđiệnnhưdòng,áp….Hơnthế nữanếuchỉnhanhkhôngthìchưađủmàphảiđảmbảoduytrìổnđịnhbằngmộtcơ chếhoạtđộngtincậy.Chínhvìvậyh ệthốngkhôngkiểmsoátđượchoạtđộngcủanó (bấtđịnh)thìkhôngthểlàm ộthệthốngđảmbảotínhthờigianthựcmặcdùhệthống đócóthểchođápứngrấtnhanh,th ậmchínhanhhơnrấtnhiềusovớiyêucầuđặtra. Mộtvídụ minh hoạtiêu biểuđólà cơchếtruyền thôngdữliệu quađường truyền chuẩnEthernettruyềnthống,mặcdù aicũngbiếttốcđộtruyềnlàrấtnhanhnhưngvẫn khôngphảihệhoạtđộngthờigianthựcvìkhôngthoảmãntínhtiềnđịnhtrongcơchế truyềndữliệu(cóthểlàrấtnhanh vàcũngcóthểlàrấtchậmnếucósựcanhtrạnhvà giaothôngđườngtruyềnbịnghẽn). 7 Ngườitaphânralàmhailoạiđốivớikháiniệmthờigianthựclàcứng(hardreal ‐time) vàmềm(softreal‐time).Thờigianthựccứnglàkhihệthốnghoạtđộngv ớiyêucầuthoả mãnsựràngbuộctrongkhungthờigiancứngtứclànếuviphạmthìsẽdẫnđếnhoạt độngcủatoànhệthốngbịsaihoặcbịpháhuỷ.Vídụv ềhoạtđộngđiềukhiểnchomột lòphảnứnghạtnhân, nếuchậmraquyếtđịnhcóthểdẫnđếnthảmhoạgâyradophản ứngphânhạchvàdẫnđếnbùngnổcảh ệthống.Thờigianthựcmềmlàkhi hệthống hoạtđộngvớiyêucầuthoảmãnràngbuộctrongkhungthờigianmềm,nếuviphạmvà sailệchnằmtrongkhoảngchophép thìhệthốngvẫncóthểhoạtđộngđượcvàchấp nhậnđược.Vídụnhưhệthốngphátthanhtruyềnhình,nếuthông tintruyềnđitừtrạm pháttớingườinghe/nhìnchậmmộtvài giâythìcũngkhôngảnhhưởngđángkểđến tínhthờisựcủatinđượctruyềnđivàhoàntoànđượcchấpnhậnbởingườitheodõi. Thựctếthấyrằnghầuhếthệnhúnglàcác hệthờigianthựcvàhầuhếtcáchệthờigian thựclàhệnhúng.Điềunàyphảnánhmốiquanhệmậtthiếtgiữahệnhúngvàthờigian thựcvàtínhthờigian thựcđãtrởthànhnhưmộtthuộctínhtiêubiểu củahệnhúng.Vì vậyhiệnnaykhiđềcậptớicáchệnhúngngườitađềunóitớiđặctínhcơbảncủanólà tínhthời gianthực. Hệ thời gian thực Hệ Nhúng Hệnhúngthời gianthực Hình1‐2:Phânbốvàquanhệgiữahệnhúngvàthờigianthực 1.2 Lĩnh vực ứng dụng của hệ nhúng Chúngtacóthểkểrađượcrấtnhiềucácứngdụngcủahệthốngnhúngđangđượcsử dụnghiệnnay,vàxuthểsẽcòntiếptụctăngnhanh.Mộtsốcáclĩnhvựcvàs ảnphẩm thịtrườngrộnglớncủacáchệnhúngcóthểđượcnhómnhưsau: • Cácthiếtbịđiềukhiển • Ôtô,tàuđiện • Truyềnthông • Thiếtbịytế • Hệthốngđo lườngthẩmđịnh • Toànhàthôngminh • Thiếtbịtrongcácdâytruyềnsảnxuất • Rôbốt • 8 1.3 Đặc điểm công nghệ và xu thế phát triển của hệ nhúng 1.3.1 Đặc điểm công nghệ Cáchệthốngnhưvậyđềucóchungmộtsốđặcđiểmnhưyêucầuvềkhảnăngthời gianthực,độtincậy,tínhđộclậpvàhiệuquả.Mộtcâuhỏiđặtralàtại saohệthống nhúnglạipháttriểnvàđượcphổcậpmộtcáchnhanhchóngnhưhiệnnay.Câutrảlời thựcranằmởcácyêucầutănglênkhôngngừngtrongcácứngdụngcôngnghệ hiện nay.Mộttrongnhữngyêucầucơbảnđólà: Khảnăngđộclậpvàthôngminhhoá:Điềunàyđượcchỉrõhơnthôngquamộtsốcác thuộctínhyêucầu,cụthểnhư: ; Độtincậy ; Khảnăngbảotrìvànângcấp ; Sựphổcậpvàtiệnsửdụng ; Độantoàn ; Tínhbảomật Hiệuquả:Yêucầunàyđượcthểhiệnthôngqua mộtsốcácđặcđiểmcủahệthốngnhư sau: ; Nănglượngtiêuthụ ; Kíchthướcvềphầncứngvàphầnmềm ; Hiệuquảvềthờigianthựchiện ; Kíchthướcvàkhốilượng ; Giáthành Phânhoạchtácvụvàchứcnănghoá:Cácbộvixửlýtrongcáchệnhúngthườngđược sửdụngđểđảmnhiệmvàthựchiệnmộthoặcmộtnhómch ứcnăngrấtđộclậpvàcũng đặcthùchotừngphầnchứcnăngcủahệthốnglớnmànóđượcnhúngvào.Vídụnhư mộtvixửlýthựchiện mộtphần điềukhiểnchomộtchứcnăngthuthập,xửlývàhiển thịcủaôtôhayhệthốngđiềukhiểnquátrính.Khảnăngnàylàmtăngthêmsựchuyên biệthoávềchứcnă ngcủamộthệthốnglớnvàdễdànghơnchoquátrínhxâydựng, vậnhànhvàbảotrì. Khảnăngthờigianthực:Cáchệthốngđềugắnliềnvớiviệcđảm nhiệmmộtchứcnăng chínhvàphảiđượcthựchiệnđúngtheomộtkhungthờigianquiđịnh.Thôngthường mộtchứcnăngcủahệthốngphảiđượcthựchiệnvàhoàn thànhtheomộtyêucầuthời gianđịnhtrướcđểđảmbảothôngtincậpnhậtkịpthờichophầnxửlýcủacácchức năngkhácvàcóthểảnhhưởngtrựctiếptới sựhoạtđộng đúngvàchínhxáccủatoàn hệthống.Tuỳthuộcvàotừngbàitoánvàyêucầucủahệthốngmàyêucầuvềkhảnăng thờigianthựccũngrấtkhácnhau. Tuynhiên,trong thựctếkhôngphải hệnhúngnàocũngđềucóthểthoảmãntấtcả nhữngyêucầunêutrên,vìchúnglàkếtquảcủasựthoảhiệpcủanhiềuyêucầuvàđiề u kiệnnhằmưutiênchochứcnăngcụthểmàchúngđượcthiếtkế.Chínhđiềunàylại 9 cànglàmtăngthêmtínhchuyênbiệthoácủacáchệ/thiếtbịnhúngmàcácthiếtbịđa năngkhôngthểcạnhtranhđược. 1.3.2 Xu thế phát triển và sự tăng trưởng của hệ nhúng Vìsựpháttriểnhệnhúnglàsựkếthợpnhuầnnhuyễngiữaphầncứngvàphầnmềm nêncôngnghệgắnliềnvớinócũngchínhlàcôngnghệkếthợpgiữacác giảiphápcho phầncứngvàmềm.Vìtínhchuyênbiệtcủacácthiếtbị/hệnhúngnhưđãgiớithiệu nêncácnềnphầncứngcũngđượcchếtạođểưutiênđápứngcho chứcnănghaynhiệm vụcụthểcủayêucầuthiếtkếđặtra. Lớphệnhúngưutiênphát triểntheotiêuchívề kíchthướcnhỏgọn,tiêu thụnăng lượngít,giáthànhthấp.Các chípxửlýnhúngcholớphệthốngứngdụngđóthường yêucầuvềkhảnăngtínhtoáníthoặcvừaphảinênhầuhếtđượcxâydựngtrêncởsở bộđồngxửlý8bít‐ 16bithoặccùnglắmlà32bitvàkhônghỗtrợdấuphảyđộngdosự hạnchếvềdunglượngvàkhảnăngtínhtoán. Lớphệnhúngưutiênthựcthikhảnăngxửlýtínhtoánv ớitốcđộthựchiệnnhanh.Các chípxửlýnhúngchocáchệthốngđócũngsẽlàcácChipápdụngcáccôngnghệcao cấpvớikiếntrúcxửlýsongsongđểđápứngđượccườngđộtínhtoán lớnvàtốcđộmà cácChipxửlýđachứcnăngthôngthườngkhôngđạttớiđược. Lớphệthốngưutiêncảhaitiêuchípháttriểncủahailớptrên,tứclàkíchthướcnhỏ g ọn,mứctiêuthụnănglượngthấp,tốcđộtínhtoánnhanh.Tuỳtheosựthoảhiệpgiữa cácyêucầuvàxuthếpháttriểnchínhvìvậycũngkhôngcógìngạcnhiênkhichúngta thấ ysựtồntạisongsongcủarấtnhiềucácChipvixửlýnhúng,viđiềukhiểnnhúng8 bit,16bithay32bitcùngvớicácChípsiêuxửlýkhácvẫnđangđượcứngdụngrộng rãichohệnhúng.Đócũnglàsựkếthợpđadạngvàsựrađờicủacáchệnhúngnói chungnhằmthoảmãncácứngdụngpháttriểnkhôngngừng. Vớimỗimộtnềnph ầncứngnhúngthườngcónhữngđặcthùriêngvàkèmtheomột giảipháppháttriểnphầnmềmtốiưutươngứng.Khôngcómộtgiảiphápnàochung vàchuẩntắcchotất cảcáchệnhúng.Chínhvìvậythôngthườngcácnhàpháttriểnvà cungcấpphầncứngcũnglạichínhlànhàcungcấpgiảiphápphầnmềmhoặccôngcụ pháttriểnphầnm ềmkèmtheo.RấtphổbiếnhiệnnaycácChipvixửlýhayviđiều khiểnđềucócáchệpháttriển(StarterKithayEmulator)đểhỗtrợchocácnhàứngdụng vàxâydựnghệnhúngvới hiểubiếthạnchếvềphầncứng.Ngônngữmãhoãphần mềmcũngthườnglàChoặc gầngiốngnhư C(LikelyC)thay vìphảiviết hoàntoàn bằnghợpngữAssembly .Điềunàychophépcácnhàthiếtkếtốiưuvàđơngiảnhoárất nhiềuchobướcpháttriểnvàxâydựnghệ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.ĐứngsausựphổcậprộngrãicủacácChipvixửlýviđiềukhiển nhúng,DSP phảikểđếncáccôngnghệcũngđangrấtđượcquantâmhi ệnnaynhưASIC,CPLD, 10 FPGA,PSOC vàsự tổhợp củachúng Kèm theođólà cáckỹ thuậtpháttriển phần mềmchophépđảmnhiệmđượccácbàitoányêu cầukhắtkhetrêncơsởmộtnềnphần cứng hữuhạnvềkhảnăngxửlývàkhônggianbộnhớ.Giảiquyếtcácbàitoánthời gianthựcnhưphânchiatácvụvàgiảiquyếtc ạnhtranhchiasẻtàinguyênchung.Hiện naycũ ngđãcó nhiềunhàphát triểncông nghệphần mềm lớnđanghướngvào thị trườnghệnhúngbaogồmcảMicrosoft.NgoàimộtsốcáchệđiềuhànhWindowsquen thuộc dùngcho PC,Microsoftcũngđ ãtungra cácphiên bảnmini nhưWindowsCE, WindowsXPEmbeddedvàcáccôngcụpháttriểnứngdụngkèmtheođểphụcvụchocác thiếtbịnhúng,điểnhìnhnhưcácthiếtbịPDA,mộtsốthiếtbịđiều khiểncôngnghiệp nhưcácmáytínhnhúng,IPCcủaSiemens Có thểnóihệ nhúngđã trởthành một giảipháp công nghệ và pháttriển một cách nhanhchóng,hứa hẹnnhiềuthiết bị nhúngsẽ chiếm lĩnhđược thịtrườngrộng lớn trongtươnglainhằmđápứngnhucầuứngdụngkhôngng ừngtrongcuộcsốngcủa chúngta.Đốivớilĩnhvựccôngnghiệpvềđiềukhiể nvàtựđộnghoá,hệnhúngcũnglà mộtgiảiphápđầytiềmnăngđãvàđangđượcứngdụngrộngrãi.Nórấtphùhợpđể thựcthicácchứcnăngthôngminhhoá,chuyênbiệttrong cáchệthốngvàthiếtbịcông nghiệp,từcáchệthốngtậptrungđếncáchệthốngphântán.Giảipháphệnhúngcóthể thựcthitừcấpthấpnhấtcủahệthốngcôngnghiệ pnhưcơcấuchấphànhchođếncác cấpcaohơnnhưgiámsátđiềukhiểnquátrình. 1.4 Mục đích và nội dung môn học Hệđiềukhiểnnhúnglàm ộtmônhọcmớinhằmcungcấpkiếnthứcchosinhviênvề khảnăngphântíchvàthiếtkếhệthốngđiềukhiểnvàthôngminhhoáhệthốngtheo chứcnăngtheogiảiphápcôngnghệ.Thiếtkếthựcthiđiềukhiểntrênnềnphầncứng nhúng. 11 2 CẤU TRÚC PHẦN CỨNG HỆ NHÚNG 2.1 Các thành phần kiến trúc cơ bản Hình2‐1:KiếntrúcđiểnhìnhcủacácchípVXL/VĐKnhúng 2.1.1 Đơn vị xử lý trung tâm CPU Hình2‐2:CấutrúcCPU Ngườitavẫnbiết tớiphầnlõixửlýcủacácbộVXLlàđơnvịxửlýtrungtâmCPU (CentralProcessing Unit)đóngvaitrònhưbộnãochịutráchnhiệmthựcthicácphép tínhvàthực hiệncáclệnh.PhầnchínhcủaCPUđảmnhiệmchứcnăngnà ylàđơnvị logictoánhọc(ALU–ArthimeticLogicUnit).NgoàirađểhỗtrợchohoạtđộngcủaALU còncóthêmmộtsốcácthành phầnkhácnhưbộgiảimã(decoder),bộtuầntự(sequencer) vàcácthanhghi. 12 Bộgiảimãchuyểnđổi(thôngdịch)cáclệnhlưutrữởtrongbộmãchươngtrìnhthành cácmãmàALUcóthểhiểuđượcvàthựcthi.Bộtuầntựcónhiệmvụquảnlýdòngdữ li ệutraođổiquabusdữliệucủaVXL.CácthanhghiđượcsửdụngđểCPUlưutrữtạm thờicácdữliệuchínhchoviệcthựcthicáclệnhvàchúngcóthểthayđổinộidungtrong quátrìnhhoạtđộngcủaALU.HầuhếtcácthanhghicủaVXLđềulàcácbộnhớđược thamchiếu (mapped)vàhộinhậpvớikhuvựcbộnhớvàcóthểđượcsửdụngnhưbất kỳkhuvựcnhớkhác. CácthanhghicóchứcnănglưutrữtrạngtháicủaCPU.Nếucácnộidungcủabộnhớ VXLvàcácnộidungcủacácthanhghitạimộtthờiđ iểmnàođóđượclữugiữđầyđủ thìhoàntoàncóthểtạmdừngthựchiệnphầnchươngtrìnhhiệntạitrongmộtkhoảng thờigianbấtkỳvàcó thểtrởlạitrạngthái củaCPUtrướcđó.Thựctếsốlượngcác thanhghivàtêngọicủachúngcũngkhácnhautrongcáchọVXL/VĐKvàthườngdo chínhcácnhàchếtạoquiđịnh,nhưngvềcơbảnchúngđề ucóchungcácchứcnăng nhưđãnêu. Khithứtựbytetrongbộnhớđãđượcxácđịnhthìngườithiếtkếphầncứngphảithực hiệnmộtsốquyếtđịnhxemCPUsẽlưudữ liệuđónhưthếnào.Cơchếnàycũngkhác nhautuỳtheokiếntrúctậplệnhđượcápdụng.Cóbaloạihìnhcơbản: (1) Kiếntrúcngănxếp (2) Kiếntrúcbộtíchluỹ (3) Kiếntrúcthanhghimụcđíchchung Kiếntrúcngănxếpsửdụngngănxếpđểthựchiệnlệnhvàcáctoántửnhậnđượctừ đỉnhngănxếp.Mặcdùcơchếnàyhỗtrợ mậtđộmãtốtvàmôhìnhđơngiảnchoviệc đánhgiácáchthểhiệnchươngtrìnhnhưngngănxếpkhôngthểhỗtrợkhảnăngtruy nhậpngẫunhiênvàhạnchếhiệusuất thựchiệnlệnh. Kiếntrúcbộtíchluỹvớilệnhmộttoántửngầmmặcđịnhchứatrongthanhghitíchluỹ cóthểgiảmđượcđộphứctạpbêntrongcủacấutrúcCPUvà chophépcấuthànhlệnh rấtnhỏgọn.Nhưngthanhghitíchluỹchỉlànơichứadữliệutạmthờinêngiaothông bộnhớrấtlớn. Kiếntrúcthanhghimụcđíchchungsửd ụngcáctậpthanhghimụcđíchchungvàđược đón nhận như mô hình của các hệthống CPU mới,hiệnđại. Các tậpthanhghiđó nhanhhơnbộnhớthườngvàdễdàngchobộbiênd ịchxửlýthựcthivàcóthểđượcs ử dụngmộtcáchhiệuquả.Hơnnữagiáthànhphầncứngngàycàngcóxuthếgiảmđáng kểvàtậpthanhghicóthểtăngnhanh.Nế ucơchếtruynhậpbộnhớnhanhthìkiếntrúc dựatrênngănxếpcóthểlàsựlựachọnlýtưởng;cònnếutruynhậpbộnhớchậmthì kiếntrúcthanhghisẽlàsựl ựachọnphùhợpnhất. Mộtsốthanhghivớichứcnăngđiểnhìnhthườngđượcsửdụngtrongcáckiếntrúc CPUnhưsau: 13 Thanhghicontrỏngănxếp(stackpointer): Thanhghinàylưugiữđịachỉtiếptheocủangănxếp.Theonguyênlýgiátrịđịachỉ chứatrongthanhghicontrỏngănxếpsẽgiả mnếudữliệuđượclưuthêmvàongănxếp vàsẽtăngkhidữliệuđượclấyrakhỏingănxếp. Thanhghichỉsố(indexregister) Thanhghichỉsốđượcsửdụngđểlư uđịachỉkhimodeđịachỉđượcsửdụng.Nócòn đượcbiếttớivớitêngọilàthanhghicontrỏhaythanhghilựachọntệp(Microchip). Thanhghiđịachỉlệnh/Bộđếmchương trình(ProgramCounter) Một trong nhữngthanhghiqua n trọng nhất của CPU là thanhghibộ đếm chương trình.Thanhghibộđếmchươngtrìnhlưuđịachỉlệnhtiếptheocủachươngtrìnhsẽ được CPUxửlý.MỗikhilệnhđượctrỏtớivàđượcCPUxửlýthìnộidunggiátrịcủa thanhghibộđếmchươngtrìnhsẽtănglênmột.Chươngtrìnhsẽkếtthúckhithanhghi PCcó giátrịbằngđịachỉcuốicùngcủachươngtrìnhnằmtrongbộnhớchươngtrình. Thanhghitíchlũy(Accumulator) ThanhghitíchlũylàmộtthanhghigiaotiếptrựctiếpvớiALU,đượ csửdụngđểlưu giữcáctoántửhoặckếtquảcủamộtphéptoántrongquátrìnhhoạtđộngcủaALU. 2.1.2 Xung nhịp và trạng thái tín hiệu TrongVXLvàcácvimạchsốnóichung,hoạtđộngcủahệthốngđượcthựchiệnđồng bộhoặcdịbộtheocácxungnhịpchuẩn.Cácnhịpđóđượclấytrựctiếphoặcgiánti ếp từmộtnguồnxungchuẩnthườnglàcácmạchtạoxunghoặcdaođộngthạchanh.Để môtảhoạtđộngcủahệthống,cáctínhiệudữliệuvàđiềukhiểnthườngđược môtả trạngtháitheogiảnđồthờigianvàmứctínhiệunhưđượcchỉratrongHình2‐3:Môtả vàtrạngtháitínhiệuhoạtđộngtrongVXL Hình2‐3:MôtảvàtrạngtháitínhiệuhoạtđộngtrongVXL Mụcđíchcủaviệcmôtảtrạngtháitínhiệutheogiảnđồthờigianvàmứctínhiệulàđể phântíchvàxácđịnhchuỗisựkiệnhoạtđộngchitiếttrongmỗichukỳbus. Nhờviệc môtảnàychúngtacóthểxemxétđếnkhảnăngđápứngthờigiancủacácsựkiệnthực thitronghệthốngvàthờigiancầnthiếtđểthựcthihoạtđộngtuầnt ựcũngnhưlàkhả 14 năngtươngthíchkhicósựhoạtđộngphốihợpgiữacácthiếtbịghépnốihaymởrộng tronghệthống.Thôngthườngthôngtinvềcácnhịpthờigianhoạtđộngcũngnh ưđặc tínhkỹthuậtchitiếtđượccungcấphoặcquiđịnhbởicácnhàchếtạo. Mộtsốđặctrưngvềthờigiancủacáctrạngtháihoạtđộngcơbảncủacáctínhi ệuhệ thốnggồmcónhưsau: 9 Thờigiantănghoặcgiảm 9 Thờigiantrễlantruyềntínhiệu 9 Thờigianthiếtlập 9 Thờigiangiữ 9 Trễcấmhoạtđộng vàtrạngtháitreo(Tri‐State) 9 Độrộngxung 9 Tầnsốnhịpxunghoạtđộng Thờigiantănghoặcgiảm Hình2‐4:Môtảtrạngtháitínhiệulogictăngvàgiảm Thờigiantăngđượcđịnhnghĩalàkhoảngthờigianđểtínhiệutăngtừ20%đến80% mứctínhiệucầnthiết.Thờigiangiảmlàkhoảngthờigianđểtínhiệugiảmtừ 80%đến 20%mứctínhiệucầnthiết. Thờigiantrễlantruyền: Làkhoảngthờigiantíntừkhithayđổitínhiệuvàochotớikhicósựthayđổitínhiệuở đầura.Đặctínhnàythườngdocấutạovàkhảnăngtruyềndẫntínhiệuvậtlýtronghệ thốngtínhiệu. Hình2‐5:Môtảtrạngtháivàđộtrễlantruyềntínhiệu Thờigianthiếtlậpvàlưugiữ Khoảngthờigiancầnthiếtđểtínhiệutríchmẫuđạttớimộttrạngtháiổnđịnhtrướckhi nhịpxungchuẩnđồnghồthayđổiđượcg ọilàthờigianthiếtlập.Thờigianlưugiữlà 15 khoảng thờigian cầnthiết đểduy trìtínhiệu tríchmẫuổnđịnh saukhi xungnhịp chuẩnđồnghồthayđổi.Thựcchấtkhoảngthờigianthiếtlậpvàthờigianlưugi ữlàcần thiếtđểđảmbảo tínhiệuđượcghinhận chínhxác vàổnđịnh trongquá trìnhhoạt độngvàchuyểnmứctrạngthái.GiảnđồthờigiantrongHình2‐6:Thờigianthiếtlập và lưugiữminhhọathờigianthiếtlậpvàlưugiữtronghoạtđộngcủaTrigerD. Hình2‐6:Thờigianthiếtlậpvàlưugiữ Trongtrườnghợphoạtđộngchuyểntrạngtháitínhiệukhôngđồngbộvàkhôngđảm bảođượcthờigianthiếtlậpvàlưugiữsẽcóthểdẫnđếnsựmấtổnđịnhhaykhôngxác đị nh mức tín hiệu trong hệ thống. Hiện tượng nàyđược biết tới với tên gọi là metastabilit.ĐểminhhọachohiệntượngnàytrongHình2‐7môtảhoạtđộnglỗicủa mộ tTrigerkhicácmứctínhiệuvàokhôngthỏamãnyêucầuvềthờithiếtlậpvàlưu giữ. Hình2‐7:HiệntượngMetastabilittronghoạtđộngcủaTrigerD Chukỳtínhiệu3trạngtháivàcontention 16 Hình2‐8:Môtảchukỳtínhiệu3trạngtháivàcontention Độrộngxungvàtầnsốnhịpxungchuẩn Hình2‐9:Độrộngvàtầnsốxungnhịpchuẩn 2.1.3 Bus địa chỉ, dữ liệu và điều khiển Busđịachỉ Busđịachỉlàcácđườngdẫntínhiệulogicmộtchiềuđểtruyềnđịachỉthamchiếutới cáckhuvực bộnhớvàchỉradữliệuđượclưugiữởđâutrongkhônggianbộnh ớ. TrongqúatrìnhhoạtđộngCPUsẽđiềukhiểnbusđịachỉđểtruyềndữliệugiữacác khuvựcbộnhớvàCPU.Cácđịachỉthôngthườngthamchiếutớicáckhuvựcbộnhớ hoặc cáckhuvựcvàora,hoặcngoạivi.Dữliệuđượclưuởcáckhuvựcđóthườnglà8‐ bit(1byte),16‐bit,hoặc32‐bittùythuộcvàocấutrúctừngloạivixửlý/viđiề ukhiển. Hầuhếtcácviđiềukhiểnthườngđánhđịachỉdữliệutheokhối8‐bit.Cácloạivixửlý 8‐bit,16‐bitvà32‐bitnóichungcũngđềucóthểlàmviệctraođổi vớikiểudữliệu8‐bit và16‐bit. Chúngtavẫnthườngđượcbiếttớikháiniệmđịachỉtruynhậptrựctiếp,đólàkhảnăng CPUcóthểthamchiếuvàtruynhập tớitrongmộtchukỳbus.NếuvixửlýcóNbitđịa chỉtứclànócóthểđánhđịachỉđược2 N khuvựcmàCPUcóthểthamchiếutrực tiếp tới.Quiướccáckhuvựcđượcđánhđịachỉbắtđầutừđịachỉ0vàtăngdầnđến2 N ‐1. Hiệnnaycácvixửlývàviđiềukhiểnnóichungchủyếuvẫnsửdụngphổbiếncácbus dữliệucóđộrộnglà16,20,24,hoặc32‐bit.Nếuđánhđịachỉtheobyte thìmộtvixửlý 16‐bitcóthểđánhđịachỉđược2 16 khuvựcbộnhớtứclà65,536byte=64Kbyte.Tuy nhiêncómộtsốkhuvựcbộnhớmàCPUkhôngthểtruynhậptrựctiếptớitứclàphải sửdụngnhiềunhịpbusđểtruy nhập,thôngthườngphảikếthợpvớiviệcđiềukhiển phầnmềm.Kỹthuậtnàychủyếuđượcsửdụngđểmởrộngbộnhớvàthườngđược biếttớivớikháini ệmđánhđịachỉtrangnhớkhinhucầuđánhđịachỉkhuvựcnhớ vượtquáphạmvicóthểđánhđịachỉtruynhậptrựctiếp. Vídụ:CPU80286có24‐bitđịachỉsẽchophépđánhđịa chỉtrựctiếpcho2 24 byte(16 Mbyte)nhớ.CPU80386vàcácloạivixửlýmạnhhơncókhônggianđịachỉ32‐bitsẽcó thểđánhđượctới2 32 byte(4Gbyte)địachỉtrựctiếp. 17 Busdữliệu BusdữliệulàcáckênhtruyềntảithôngtintheohaichiềugiữaCPUvàbộnhớhoặccác thiếtbịngoạivivàora.Busdữliệuđượcđiềukhiểnbởi CPUđểđọchoặcviếtcácdữ liệuhoặcmãlệnhthựcthitrongqúatrìnhhoạtđộngcủaCPU.Độrộngcủabusdữliệu nóichungsẽxácđịnhđượclượngdữliệucóthểtruyền vàtraođổitrênbus.Tốcđộ truyềnhaytraođổidữliệuthườngđượctínhtheođơnvịlà[byte/s].Sốlượngđường bitdữliệusẽchophépxácđịnhđượcsốlượngbitcóthểlưutrữtrongmỗikhu vực thamchiếutrựctiếp.Nếumộtbusdữliệucókhảnăngthựchiệnmộtlầntruyềntrong1 μs,thìbusdữliệu8‐bitsẽcóbăngthônglà1Mbyte/s,bus16 ‐bitsẽcóbăngthônglà 2Mbyte/svàbus32‐bitsẽcóbăngthônglà4Mbyte/s.Trongtrườnghợpbusdữliệu8‐ bitvớichukỳbuslàT=1μs(tứclàsẽtruyềnđược1byte/1chukỳ)thìsẽ truyềnđược1 Mbytetrong1shay2Mbytetrong2s. Busđiềukhiển Busđiềukhiểnphụcvụtruyềntảicácthôngtindữliệu đểđiềukhiểnhoạtđộngcủahệ thống.Thôngthường cácdữliệuđiềukhiểnbaogồmcáctínhi ệuchukỳđểđồngbộ cácnhịpchuyểnđộngvàhoạtđộngcủahệthống.Busđiềukhiểnthườngđượcđiều khiểnbởiCPUđểđồngb ộhóanh ịphoạtđộngvàdữliệutraođổitrêncácbus.Trong trườnghợpvixửlýsửdụngdồnkênhbusdữliệuvàbusđịachỉtứclàmộtphầnhoặc toànbộbusdữ liệusẽđượcsửdụngchungchiasẻvớibusđịachỉthìcầnmộttínhiệu điềukhiểnđểphânnhịptruynhậpchophépchốtlưutrữthôngtinđịachỉmỗikhibắt đầu mộtchukỳtruyền.Mộtvídụvềcácchukỳbusvàsựđồngbộcủachúngtrong hoạtđộngcủahệthốngbusđịachỉvàdữliệudồnkênhđượcchỉratro ngHình2‐10. Đâylà hoạtđộngđiểnhìnhtronghọviđiềukhiển8051vànhiềuloạitươngtự. Hình2‐10:Chukỳhoạtđộngbusdồnkêch 2.1.4 Bộ nhớ Kiếntrúcbộnhớ Kiếntrúcbộnhớđượcchiaralàmhailoạichínhvàđượcápdụngrộngrãitronghầu hếtcácChipxửlýnhúnghiệnnaylàkiếntrúcbộnhớvonNeumannvàHavard. 18 TrongkiếntrúcvonNeumannkhôngphânbiệtvùngchứadữliệu vàmãchươngtrình. Cảchươngtrìnhvàdữliệuđềuđượctruynhậptheocùngmộtđường.Điềunàycho phépđưadữliệuvàovùng mãchươngtrìnhROM,vàcũngcóthểlưumãchươngtrình vàovùngdữliệuRAMvàthựchiệntừđó. Hình2‐11:KiếntrúcbộnhớvonNeumannvàHavard KiếntrúcHavardtách/phânbiệtvùnglưumãchươngtrìnhvàdữliệu.Mãchươngtrình chỉcóthểđượclưuvàthựchiệntrongvùngchứaROMvàdữliệucũngchỉcóthểlưu vàtrao đổitrongvùngRAM.Hầuhếtcácvixửlýnhúngngàynaysửdụngkiếntrúcbộ nhớHavardhoặckiếntrúcHavardmởrộng(tứclàbộnhớchươngtrìnhvàdữliệutách biệtnhưng vẫnchophépkhảnănghạnchếđểlấydữliệuratừvùngmãchươngtrình). TrongkiếntrúcbộnhớHavardmởrộngthườngsửdụngmộtsốlượngnhỏcáccontrỏ đểlấydữliệ utừvùngmãchươngtrìnhtheocáchnhúngvàotrongcáclệnhtứcthời. MộtsốChipviđiềukhiểnnhúngtiêubiểuhiệnnaysửdụngcấutrúcHavardlà8031, PIC,AtmelAVR90S.Nếusử dụngChip8031chúngtasẽnhậnthấyđiềunàythôngqu a việctruy nhậplấy dữliệu ratừ vùngdữ liệuRAM hoặctừ vùngmãchươngtrình. Chúngtacómộtvàicontrỏđượcs ửdụngđểlấydữliệuratừbộnhớdữliệuRAM, nhưngchỉcóduynhấtmộtcontrỏDPTRcóthểđượcsửdụngđểlấydữliệuratừvùng mãchương trình. Hình2‐11 môtả nguyên lýkiến trúccủa bộ nhớvon Neumann và Harvard. ƯuđiểmnổibậtcủacấutrúcbộnhớHarvardsovớikiếntrúcvonNeumannlàcóhai kênhtáchbiệtđểtruynhậpvàovùngbộnh ớmãchươngtrìnhvàdữliệunhờvậymà mãchươngtrìnhvàdữliệucóthểđượctruynhậpđồngthờivàlàmtăngtốcđộluồng traođổivớibộxửlý. 19 Hình2‐12:Nguyênlýđiềukhiểntáchkênhtruynhậpbusđịachỉvàbusdữliệu Bộnhớchươngtrình–PROM(ProgrammableReadOnlyMemory) Vùngđểlưumãchươngtrình.CóbaloạibộnhớPROMthôngdụngđượcsửdụngcho hệnhúngvàsẽđượcgiớithiệulầnlượtsauđây. EPROM Baogồmmộtmảngcáctransistorkhảtrình.Mãchươngtrìnhsẽđượcghitrựctiếpvàvi xửlýcóthểđọcrađểthựchiện.EPROMcóthểxoáđượcbằngtiacựctímvàcóthể được lậptrìnhlại.CấutrúcvậtlýcủaEPROMđượcmôtảnhưtrongHình2‐13. Hình2‐13:NguyênlýcấutạovàhoạtđộngxoácủaEPROM 20 BộnhớFlash CũnggiốngnhưEPROMđượccấutạobởimộtmảngtransistorkhảtrìnhnhưngcóthể xoáđượcbằngđiệnvàchínhvìvậycóthểnạplạichươngtrìnhmàkhông cầntáchra khỏinềnphầncứngVXL.Ưuđiểmcủabộnhớflashlàcóthểlậptrìnhtrựctiếptrên mạchcứngmànóđangthựcthitrênđó. Hình2‐14:SơđồnguyênlýghépnốiEPROMvớiVXL Bộnhớdữliệu‐RAM Vùngđểlưuhoặctraođổidữliệutrunggiantrongquátrìnhthựchiệnchươngtrình. Hình2‐15:CấutrúcnguyênlýbộnhớRAM CóhailoạiSRAMvàDRAM [...]... 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. Bộ định thời/Bộ đếm C8254 Hình 2‐27: 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 ... đảm bảo để thực thi đúng theo thứ tự. Một ví dụ đơn giản nhất về sự phụ thuộc điều khiển là sự phụ thuộc điều khiển theo cấu trúc if…then…Phần thực thi trong phần “then” sẽ phụ thuộc câu lệnh điều kiện if. Ví dụ đoạn mã chương trình minh họa như sau: if (p1) { S1; } if (p2) { S2; } 62 Câu lệnh được điều khiển phụ thuộc vào p1 và S2 được điều khiển phụ thuộc p2 chứ không phải p1. Nói chung, có 2 ràng buộc có thể giả thiết trong sự phụ thuộc điều khiển: ... trong các phép tính Hazard do sự phụ thuộc điều khiển Kiểu phụ thuộc cũng khá phổ biến là do cấu trúc điều khiển. Sự phụ thuộc điều khiển được quyết định trình tự thực thi của một lệnh i theo lệnh rẽ nhánh đảm bảo sao cho nó được thực thi đúng như thứ tự mong muốn. Tất cả các lệnh ngoại trừ khối cơ bản đầu tiên của chương trình đều được điều khiển theo cấu trúc lệnh rẽ nhánh và phải được ... Sự phụ thuộc điều khiển phải được đảm bảo bởi 2 thuộc tính trong cơ chế pipeline đơn giản. Thứ nhất, các lệnh thực hiện trong chương trình phải đúng theo trình tự được điều khiển của nó. Trình tự này phải được đảm bảo rằng một lệnh mà phải thực thi trước một nhánh điều khiển thì phải thực hiện trước nhánh đó. Thứ hai, việc phát hiện ra sự xung đột về điều khiển (control hazard) sẽ đảm bảo rằng một lệnh mà được điều ... 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 ... nếu chúng không gây ảnh hưởng gì đến tính đúng đắn của chương trình, nếu không sự xung đột gây ra bởi sự phụ thuộc điều khiển có thể xảy ra. Sự phụ thuộc về điều khiển không phải là một thuộc tính kịch tính bắt buộc phải bảo đảm. Thay vì điều đó, hai thuộc tính kịch tính cho việc lập trình một cách đúng đắn và thường được bảo đảm là phải tránh được xung đột bởi cả sự phụ thuộc về dữ liệu và điều khiển và đó chính là hành vi ngoại lệ có thể xảy ra trong luồng dữ liệu thực thi chương trình. ... Nguồn cung cấp có thể là +5V, ± 12V, hoặc ± 15V Thời gian chuyển đổi cực đại là 25 µs với thời gian truy nhập bus là 150ns. 27 Hình 2‐25: Sơ đồ bố trí chân của Chip ADC574A Nguyên lý điều khiển ADC 574 được điều khiển bởi các chân tín hiệu như mô tả trong bảng sau: Bảng 1: Tín hiệu điều khiển ADC 574A Ký hiệu Định nghĩa CE (Pin 6) Chip Enable (active high) Must be high (“1”) to either initiate a conversion or read output data 0-1... 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). 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 ... IC chức năng chuyên dụng Hình 2‐21: Nhịp hoạt động DMA DMA chu kỳ đơn và nhóm 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 cho CPU. Trong cơ chế thực hiện DMA ... ra sự xung đột về điều khiển (control hazard) sẽ đảm bảo rằng một lệnh mà được điều khiển phụ thuộc vào một nhánh thì không được thực hiện chừng nào hướng thực hiện của nhánh đó rõ ràng. Bảo đảm được sự phụ thuộc điều khiển là cần thiết và cũng là một cách đơn giản để đảm bảo đúng trình tự thực hiện chương trình. Sự phụ thuộc điều khiển không phải là một sự hạn chế cơ bản về khả năng . Busdữliệu BusdữliệulàcáckênhtruyềntảithôngtintheohaichiềugiữaCPUvàbộnhớhoặccác thiếtbịngoạivivàora.Busdữliệuđược điều khiển bởi CPUđểđọchoặcviếtcácdữ liệuhoặcmãlệnhthựcthitrongqúatrìnhhoạtđộngcủaCPU.Độrộngcủabusdữliệu nóichungsẽxácđịnhđượclượngdữliệucóthểtruyền vàtraođổitrênbus.Tốcđộ truyềnhaytraođổidữliệuthườngđượctínhtheođơnvịlà[byte/s].Sốlượngđường bitdữliệusẽchophépxácđịnhđượcsốlượngbitcóthểlưutrữtrongmỗikhu vực thamchiếutrựctiếp.Nếumộtbusdữliệucókhảnăngthựchiệnmộtlầntruyềntrong1 μs,thìbusdữliệu8‐bitsẽcóbăngthônglà1Mbyte/s,bus16 ‐bitsẽcóbăngthônglà 2Mbyte/svàbus32‐bitsẽcóbăngthônglà4Mbyte/s.Trongtrườnghợpbusdữliệu8‐ bitvớichukỳbuslàT=1μs(tứclàsẽtruyềnđược1byte/1chukỳ)thìsẽ truyềnđược1 Mbytetrong1shay2Mbytetrong2s. Bus điều khiển Bus điều khiển phụcvụtruyềntảicácthôngtindữliệu để điều khiển hoạtđộngcủahệ thống. Thôngthường cácdữliệu điều khiển baogồmcáctínhi ệuchukỳđểđồngbộ cácnhịpchuyểnđộngvàhoạtđộngcủahệ thống. Bus điều khiển thườngđược điều khiển bởiCPUđểđồngb ộhóanh. nội dung môn học Hệ điều khiển nhúng làm ộtmônhọcmớinhằmcungcấpkiếnthứcchosinhviênvề khảnăngphântíchvàthiếtkếhệ thống điều khiển vàthôngminhhoáhệ thống theo chứcnăngtheogiảiphápcôngnghệ.Thiếtkếthựcthi điều khiển trênnềnphầncứng nhúng. 11 2. Ngônngữmôtảphầncứng(VHDL) 103 6.4 Thiếtkếphầnmềm điều khiển 104 6.4.1 Môhìnhthựcthibộ điều khiển nhúng 104 6.4.2 Vídụthựcthibộ điều khi ểnPIDsố 106 TÀILIỆUTHAMKHẢO 108 4 5 1