Xem mẫu

  1. Luaän vaên toát nghieäp  Nguyeân lí hoaït ñoäng toång quaùt: Heä thoáng baùo giôø töï ñoäng laø moät heä vi xöû lí neân hoaït ñoäng cuûa heä thoáng laø söï keát hôïp chaët cheõ giöõa phaàn cöùng vaø phaàn meàm. Vi xöû lí ñöôïc ñaët ôû cheá ñoä “auto reset” neân khi môùi môû ñieän vi xöû lí seõ baét ñaàu ñoïc boä nhôù taïi ñòa chæ 0000h. Ñaây cuõng laø ñòa chæ baét ñaàu cuûa chöông trình heä thoáng. Ngoaøi ra, maïch kieåm soaùt ngaét seõ caám tín hieäu Timer taùc ñoäng vaøo ngaét NMI cuûa Z80 nhaèm muïc ñích traùnh vieäc taïo thôøi gian thöïc sai da ãn ñeán heä thoáng baùo giôø sai. Veà maët phaàn meàm: Khi môùi môû ñieän chöông trình heä thoáng seõ khôûi ñoäng maïch hieån thò (khôûi taïo 8279) ñeå maïch hieån thò saün saøng hieån thò döõ lieäu thôøi gian thöïc töø vi xöû lí gôûi tôùi. Ngoaøi ra, chöông trình heä thoáng coøn reset maïch baùo chuoâng … Maïch baøn phím hoaït ñoäng khi chöông trình con Keypro ñöôïc goïi ñeå phuïc vuï cho Settime, Hottime hay Skiptime. Phaàn “caáu taïo vaø nguyeân taét hoaït ñoäng cuûa caùc khoái maïch” seõ giuùp chuùng ta hieåu roõ hôn hoaït ñoäng cuûa Heä Thoáng. Böôùc ñaàu tieân trong vieäc thieát keá Heä Thoáng laø phaân boá boä nhôù vaø thöïc hieän giaûi maõ ñòa chæ cho caùc boä phaän cuûa Heä Thoáng. Heä thoáng baùo giôø töï ñoäng
  2. Luaän vaên toát nghieäp 2.2_Boä nhôù Heä Thoáng vaø giaûi maõ ñòa chæ: 2.2.1_Boä nhôù Heä Thoáng: Heä Thoáng baùo giôø töï ñoäng laø moät heä vi xöû lí neân vieäc phaân boá boä nhôù Heä Thoáng laø heát söùc caàn thieát. Ngoaøi boä nhôù ROM, RAM Heä Thoáng coøn coù caùc boä phaän: baøn phím, maïch hieån thò vaø maïch ñieàu khieån baùo hieäu. Caùc boä phaän naøy ñöôïc xem nhö boä nhôù. Boä vi xöû lí seõ truy xuaát caùc khoái maïch naøy gioáng nhö truy xuaát boä nhôù (phöông phaùp aùnh xaï boä nhôù). Do yeâu caàu hoaït ñoäng vôùi vuøng nhôù nhoû. Heä Thoáng chæ söû duïng 20KB ñaàu tieân (0000h – 4FFFh) trong khoâng gian 64KB maø Z80 quaûn lí. Vôùi yeâu caàu treân boä nhôù seõ ñöôïc phaân chia thaønh caùc vuøng nhôù daønh cho ROM, RAM, vuøng nhôù daønh cho maïch hieån thò, maïch baùo hieäu vaø baøn phím. Ñeå ñôn giaûn, boä nhôù Heä Thoáng seõ chia thaønh 5 vuøng vôùi dung löôïng 4KB/vuøng ñöôïc phaân boá nhö sau: 4FFFh MAÏCH BAØN PHÍM 4KB 4000h 3FFFh MAÏCH BAÙO HIEÄU 4KB 3000h 2FFFh MAÏCH HIEÅN THÒ 4KB 2000h 1FFFh CHÖA DUØNG 2KB 1800h 17FFh RAM 2KB 1000h 0FFFh ROM 4KB 0000h Hình 2: BAÛN ÑOÀ BOÄ NHÔÙ HEÄ THOÁNG Vuøng nhôù töø ñòa chæ 0000h ñeán 0FFFh daønh cho IC ROM chöùa phaàn meàm Heä Thoáng vaø löu tröõõ caùc Restime. IC ROM ñöôïc duøng laø 2732 (4KBx8). Baûng moâ taû hoaït ñoäng vaø sô ñoà chaân chöùc naêng nhö sau: Heä thoáng baùo giôø töï ñoäng
  3. Luaän vaên toát nghieäp CHEÁ ÑOÄ Vcc OUTPUT OE \Vpp CE Read VIL VIL Vcc Dout Stand by VIH X Vcc High Z Program VIL Vpp Vcc Din Program verify VIL VIL Vcc Dout Program Inhibit VIH Vpp Vcc High Z Baûng 1 : BAÛNG MOÂ TAÛ HOAÏT ÑOÄNG CUÛA IC – ROM 2732 Hình 3: SÔ ÑOÀ CHAÂN CHÖÙC NAÊNG CUÛA IC-ROM 2732 Vuøng nhôù töø 1000h ñeán 1FFFh laø vuøng nhôù RAM duøng ñeå laøm ngaên xeáp (Stack), vuøng ñeäm, baûng Hottime vaø baûng Skiptime. Vôùi yeâu caàu hieän taïi, Heä Thoáng chæ söû duïng 2KB töø 1000h ñeán 17FFh khi coù yeâu caàu môû roäng 2KB coøn laïi seõ ñöôïc duøng ñeán. IC- RAM ñöôïc choïn laø loaïi RAM tónh (Static Ram) 6116 (2KBx8). IC 6116 coù baûng moâ taû hoaït ñoäng vaø sô ñoà chaân chöùc naêng nhö sau: Heä thoáng baùo giôø töï ñoäng
  4. Luaän vaên toát nghieäp CHEÁ ÑOÄ DATA CE OE WE Khoâng choïn H X X High Z Caám xuaát L H H High Z Ñoïc (Read) L L H Dout Ghi (Write) L H L Din Baûng 2 : BAÛNG MOÂ TAÛ HOAÏT ÑOÄNG CUÛA IC – RAM 6116 Hình 4: SÔ ÑOÀ CHAÂN CHÖÙC NAÊNG CUÛA RAM 6116 Vuøng nhôù coøn laïi ñöôïc daønh cho caùc boä phaän: baøn phím, hieån thò, ñieàu khieån baùo hieäu. 2.2.2_ Maïch giaûi maõ ñòa chæ: Nhieäm vuï maïch giaûi maõ ñòa chæ laø thöïc hieän hoaït ñoäng giaûi maõ ñeå taïo ra caùc tín hieäu : choïn IC nhôù ROM , RAM ( CS chip select) vaø caùc tín hieäu ñieàu khieån choïn caùc boä phaän baøn phím, hieån thò, ñieàu khieån baùo hieäu. Maïch giaûi maõ ñòa chæ laø moät maïch giaûi maõ töø 3 ra 8 ñöôøng söû duïng 3 ñöôøng ñòa chæ A12, A13, A14 ñeå giaûi maõ taïo 8 ñöôøng tín hieäu ñieàu khieån vaø choïn chip. Baûng giaûi maõ ñòa chæ chi tieát cuøng caùc tín hieäu ñieàu khieån nhö sau: Heä thoáng baùo giôø töï ñoäng
  5. Luaän vaên toát nghieäp A15 A14 A13 A12 A 11 A10 ……A0 VUØNG NHÔÙ TÍN CHÖÙC HIEÄU NAÊNG 0 00 0 x x …… x 0000h – 0FFFh Choïn IC ROM CS1 0 00 1 0 x …… x 1000h - 17FFh Choïn IC RAM CS 2 0 00 1 1 x …… x 1800h – 1FFFh Chöa duøng 0 01 0 x x ….. x 2000h – 2FFFh Hieån thò DPL 0 01 1 x x ….. x 3000h - 3FFFh Baùo hieäu BDR 0 10 0 x x …… x 4000h - 4FFFh Ñoïc baøn phím KBD Baûng 3 : BAÛNG GIAÛI MAÕ ÑÒA CHÆ BOÄ NHÔÙ. Maïch giaûi maõ ñòa chæ duøng IC 74LS138 coù 8 ngoõ ra taùc ñoäng möùc thaáp. Tín hieäu MERQ töø P taùc ñoäng vaøo 2 ngoõ vaøo ñieàu kieän G2A vaø G2B ñeå ñieàu khieån vieäc giaûi maõ choïn chip. Hình 5: SÔ ÑOÀ CHI TIEÁT MAÏCH GIAÛI MAÕ ÑÒA CHÆ. 2.2.3_Toùm taét: Maïch ñieän boä nhôù Heä Thoáng coù caáu taïo nhö sau: Heä thoáng baùo giôø töï ñoäng
  6. Luaän vaên toát nghieäp Hình 6: SÔ ÑOÀ CHI TIEÁT MAÏCH BOÄ NHÔÙ Caùc tín hieäu CS1, CS 2 thöïc hieän choïn IC ROM vaø IC RAM. Tín hieäu RD töø P ñieàu khieån vieäc ñoïc döõ lieäu trong ROM vaø RAM, tín hieäu WR cho pheùp P ghi döõ lieäu vaøo RAM. Giaûn ñoà thôøi gian caùc chu kì P ñoïc vaø ghi boä nhôù nhö hình 7: Heä thoáng baùo giôø töï ñoäng
  7. Luaän vaên toát nghieäp CLOCK A0-A15 VALID ADDRESS MERQ RD D0-D7 DATA IN WR D0-D7 DATA OUT Hình 7: CHU KÌ  P ÑOÏC VAØ GHI BOÄ NHÔÙ. Hoaït ñoäng ñoïc, ghi boä nhôù cuûa P nhö sau: HOAÏT ÑOÄNG CUÛA P CS RD WR MERQ Ñoïc boä nhôù L L L H Ghi boä nhôù L L H L Caùc boä phaän baøn phím, hieån thò vaø ñieàu khieån baùo hieäu thieát keá theo nguyeân taét aùnh xaï boä nhôù. Hoaït ñoäng cuûa P truy xuaát caùc boä phaän naøy nhö sau: TÍN HIEÄU HOAÏT ÑOÄNG CUÛA P ÑÒA CHÆ MERQ ÑIEÀU KHIEÅN Hieån thò 2000h – 2FFFh L DPL = L Ñieàu khieån baùo hieäu 3000h – 3FFFh L BDR = L Ñoïc baøn phím 4000h – 4FFFh L KBD = L Heä thoáng baùo giôø töï ñoäng
  8. Luaän vaên toát nghieäp 2.3_ Khaûo saùt tính chaát ngaét NMI : (NON_ MASKABLE INTERRUPT) Ngaét NMI (ngaét khoâng theå che baèng phaàn meàm) cuûa Z80 laø ngaét coù ñoä öu tieân tuyeät ñoái. Khi coù ngaét NMI taùc ñoäng, chöông trình Heä Thoáng seõ taïm döøng coâng vieäc hieän taïi ñeå thöïc hieän chöông trình phuïc vuï ngaét NMI baét ñaàu taïi ñòa chæ 0066h. Vôùi yeâu caàu ñaët ra laø Heä Thoáng laøm vieäc vôùi thôøi gian thöïc, neân ñoøi hoûi vieäc ñeám thôøi gian phaûi thöïc hieän chính xaùc vaø ñöôïc öu tieân haøng ñaàu. Do ñoù, ngaét NMI daønh cho vieäc ñeám thôøi gian thöïc. Tuy nhieân, ngoaøi hoaït ñoäng ñeám thôøi gian thöïc chöông trình Heä Thoáng coøn phaûi thöïc hieän caùc coâng vieäc khaùc nhö: phuïc vuï baøn phím, phuïc vuï vieäc baùo hieäu cuõng nhö hieån thò. Ngaét NMI khoâng ñöôïc laøm aûnh höôûng ñeán caùc hoaït ñoäng treân . Coâng vieäc thaêm doø ngaét INT vaø NMI ñöôïc Z80 thöïc hieän taïi chu kì ñoàng hoà cuoái cuøng ôû chu kì maùy cuoái cuøng cuûa moät chu kì leänh (goïi laø caùc thôøi ñieåm to). Chu kì maùy cuoái Chu kì maùy leänh keá to  Hình 8: GIAÛN ÑOÀ NHAÄN NGAÉT NMI Theo hình 8, neáu coù tín hieäu goïi ngaét NMI (hoaëc ngaét INT ) xuaát hieän taïi caùc thôøi ñieåm khaùc vôùi caùc thôøi ñieåm to thì chöông trình Heä Thoáng seõ khoâng nhaän ñöôïc ngaét NMI vaø chöông trình phuïc vuï ngaét ñeå taïo thôøi gian thöïc seõ khoâng ñöôïc thöïc hieän. Phaàn meàm Heä Thoáng bao goàm nhieàu loaïi leänh vaø caùc leänh naøy ñöôïc thöïc hieän vôùi soá chu kì ñoàng hoà khaùc nhau. Do vaäy, xung goïi ngaét NMI phaûi ñuû roäng ñeå vieäc thaêm doø ngaét NMI ñöôïc thöïc hieän moät caùch hoaøn haûo. Neáu xung goïi ngaét NMI coù ñoä roäng lôùn hôn möùc caàn thieát thì ñieàu gì xaûy ra ? Qua thöû nghieäm ngöôøi vieát nhaän thaáy, khi coù ngaét NMI chöông trình Heä Thoáng taïm döøng coâng vieäc hieän taïi vaø thöïc hieän chöông trình phuïc vuï ngaét NMI , neáu tín hieäu ngaét NMI tieáp tuïc ñöôïc giöõ ôû möùc logic thaáp thì sau khi chöông trình phuïc vuï ngaét NMI thöïc hieän xong, P seõ trôû veà thöïc hieän coâng vieäc dôû dang tröôùc khi phuïc vuï ngaét maø khoâng baän taâm ñeán tín hieäu ngaét NMI duø luùc Heä thoáng baùo giôø töï ñoäng
  9. Luaän vaên toát nghieäp naøy vaãn ñang ôû möùc tích cöïc thaáp. Ñeå nhaän ngaét trôû laïi, chaân NMI cuûa Z80 phaûi ñöôïc keùo leân möùc logic cao tröôùc khi coù tín hieäu ngaét keá tieáp. Nhö vaäy coù theå noùi raèng, khi tín hieäu NMI ôû möùc thaáp vaø P nhaän ngaét thì vieäc thaêm doø ngaét seõ khoâng ñöôïc thöïc hieän cho ñeán khi tín hieäu NMI leân möùc cao. Vieäc cho tín hieäu NMI leân möùc cao tröôùc khi coù tín hieäu ngaét keá tieáp töông ñöông vôùi vieäc khoâi phuïc hoaït ñoäng thaêm doø ngaét cuûa P . Toùm laïi, ñeå hoaït ñoäng ñeám thôøi gian thöïc khoâng aûnh höôûng ñeán caùc hoaït ñoäng khaùc cuûa Heä Thoáng (trong ñoù coù vieäc P nhaän ngaét INT ) thì ñoä roäng xung goïi ngaét goïi ngaét NMI (ñeám thôøi gian) phaûi ñöôïc choïn thích hôïp vaø chöông trình phuïc vuï ngaét NMI phaûi khoâng ñöôïc quaù daøi. Ñaây laø yeâu caàu quan troïng ñoái vôùi hoaït ñoäng cuûa Heä Thoáng . 2.4_Caáu taïo vaø nguyeân taét hoaït ñoäng caùc khoái maïch: 2.4.1_Maïch taïo xung ñoàng hoà: Maïch taïo xung ñoàng hoà coù vai troø nhö quaû tim ñaäp nhòp cho hoaït ñoäng cuûa Heä Thoáng. Vieâäc taïo thôøi gian thöïc seõ caøng chính xaùc neáu taàn soá xung clock caáp cho P caøng cao. Tuy nhieân, Heä Thoáng seõ hoaït ñoäng khoù oån ñònh ôû taàn soá cao do nhieãu xuaát hieän treân ñöôøng maïch in. Do vaäy, taàn soá xung clock ñöôïc choïn sau cho giaûm thieåu sai soá trong vieäc taïo thôøi gian thöïc vaø traùnh ñöôïc nhieãu xuaát hieän treân maïch in ñeå Heä Thoáng hoaït ñoäng oån ñònh. Taàn soá xung clock ñöôïc choïn laø 500KHz. Caên cöù vaøo taàn soá xung clock ñaõ choïn vaø tính chaát ngaét NMI cuûa P laø seõ nhaän ngaét khi phaûi thöïc hieän xong leänh coøn ñang dang dôû ta tính ñöôïc sai soá veà thôøi gian cöïc ñaïi do vieäc taïo thôøi gian thöïc nhö sau: Thôøi gian thöïc hieän leänh daøi nhaát t = 23x1/fck = 23/500000 = 0.46s Sai soá trong 1 phuùt = 60 x t = 60 x 0.46 = 27,6S Tính töông töï ta coù sai soá cöïc ñaïi trong moät naêm = 365 x 24 x 60 x 60 x t = 365 x 24 x 60x 60 x27,6 = 870s Heä thoáng baùo giôø töï ñoäng
  10. Luaän vaên toát nghieäp Sai soá naøy laø sai soá max, thöïc teá khoâng phaûi luùc naøo tín hieäu goïi ngaét NMI cuõng ngay vöøa luùc P nhaän moät leänh daøi nhaát neân taàn soá hoaït ñoäng cuûa Heä Thoáng = 500KHz laø chaáp nhaän ñöôïc. Taàn soá xung clock naøy cuõng ñöôïc caáp cho IC 8279 ñeå hieån thò. Ñeå taän duïng soá löôïng coång logic treân maïch cuõng nhö ñôn giaûn trong thieát keá, maïch dao ñoäng ñöôïc thieát keá nhö sau: Hình 9: SÔ ÑOÀ MAÏCH TAÏO XUNG ÑOÀNG HOÀ 2.4.2_Maïch ñònh thôøi. Maïch ñònh thôøi coù nhieäm vuï taïo ra xung nhòp tuaàn hoaøn phuïc vuï cho vieäc ñeám thôøi gian thöïc. Vieäc ñeám thôøi gian thöïc ñoøi hoûi phaûi thöïc hieän moät caùch chính xaùc vaø oån ñònh. Do ñoù, maïch ñònh thôøi phaûi taïo ra tín hieäu ñònh thôøi coù taàn soá thaät chính xaùc vaø coù tính oån ñònh cao. Tín hieäu ñònh thôøi taùc ñoäng vaøo ngaét NMI . Khi coù ngaét NMI chöông trình taïo thôøi gian thöïc seõ taêng leân 1 ñôn vò thôøi gian (1 giaây). Ñeå coù ñöôïc tín hieäu ñònh thôøi taàn soá 1Hz coù ñoä chính xaùc vaø tính oån ñònh cao maëc nhieân khoâng theå söû duïng maïch dao ñoäng RC vì giaù trò R,C khoâng oån ñònh theo thôøi gian cuõng nhö nhieät ñoä. Coù theå duøng maïch dao ñoäng thaïch anh ñeå coù ñöôïc tín hieäu ñònh thôøi oån ñònh vaø chính xaùc. Tuy nhieân, giaù trò thaïch anh baùn ngoaøi thò tröôøng ít nhaát cuõng vaøi traêm KHz, cho neân phaûi toán theâm maïch chia taàn soá thì môùi coù ñöôïc tín hieäu ñònh thôøi taàn soá 1Hz. Chính vì vaäy ngöôøi vieát choïn maïch dao ñoäng trong ñoàng hoà GIMIKO, ñaây laø maïch chuyeân duøng neân ñaûm baûo ñöôïc tính oån ñònh vaø chính xaùc cuûa tín hieäu ñònh thôøi. Heä thoáng baùo giôø töï ñoäng
nguon tai.lieu . vn