De Cuong He Thong Nhung

119
Faculty of Electronics & Electrical Engineering Embedded Systems This Document is Prepared by Dr. Bui Trung Thanh 1 TRƯỜNG ĐẠI HỌC SƯ PHẠM KTHUẬT HƯNG YÊN KHOA ĐIỆN – ĐIỆN T******** ĐỀ CƯƠNG BÀI GIẢNG HTHNG NHÚNG EMBEDDED SYSTEMS Hưng Yên, tháng 01 năm 2010

description

He Thong Nhung

Transcript of De Cuong He Thong Nhung

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

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

    ********

    CNG BI GING

    H THNG NHNG EMBEDDED SYSTEMS

    Hng Yn, thng 01 nm 2010

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    CHNG 1

    GII THIU CHUNG

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

    1.1 Cc khi nim v h nhng

    H nhng

    Hnh 1: mt vi hnh nh v h nhng

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

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

    Hnh 1-2:Phn b quan h gia h nhng & thi gian thc

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    Chun Ethernet truyn thng, mc d ai cng bit tc truyn l rt nhanh nhng vn khng phi h hot ng thi gian thc v khng tha mn tnh tin nh trong c ch truyn d liu (c th l rt nhanh v cng c th l rt chm nu c s cnh tranh v giao thng ng truyn b nghn).

    1.2 c im cng ngh v xu th pht trin ca h nhng

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    1.2.2 Xu th pht trin v s tng trng ca h nhng

    V s pht trin h nhng l s kt hp nhun nhuyn gia phn cng v phn mm cng ngh gng lin vi n cng chnh l cng ngh kt hp vi cc gii php cho phn cng v mm. V tnh chuyn bit ca cc thit b /h nhng nh gii thiu nn cc nn phn cng cng c ch to u tin p ng cho chc nng hay nhim v c th ca yu cu thit k a ra.

    Lp h nhng u tin pht trin theo tiu ch v kch thc nh gn, tiu th nng lng t, gi thnh thp. Cc chip x l nhng cho lp h thng ng dng thng yu cu v kh nng tnh ton t hoc va phi nn hu ht c xy dng trn c s ng b x l 8 bit- 16 bit hoc cng lm l 32 bit v khng h tr du phy ng do s hn ch v dung lng v kh nng tnh ton.

    Lp h nhng u tin thc thi cc kh nng x l tnh ton vi tc cc nhanh. Cc chip x l nhng cho cc h thng cng c h tr.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    6

    CHNG 2

    CU TRC PHN CNG H NHNG

    2.1 Cc thnh phn kin trc c bn

    2.1.1 n v x l trung tm

    CPU (central processing unit) ng vai tr nh b no chu trch nhim thc thi chc nng ny l n v tnh v thc hin cc lnh. Phn chnh ca CPU m nhim chc nng ny l n v logic ton hc (ALU arthimeic logic unit). Ngoi ra h tr cho hot ng ca ALU cn c thm mt s cc thnh phn khc nh b gii m decoder, b tun t sequencer v thanh ghi. Thanh ghi con tr v ngn xp - Stack pointer Thanh ghi ny lu tr a ch tip theo ca ngn xp. Theo nguyn l gi tr ca a ch cha trong thanh gh con tr ngn xp s gim nu d liu c lu thm vo ngn xp v s tng khi d liu c ly ra khi ngn xp. Thanh ghi ch s - Index register Thanh ghi ch s c s dng lu a ch khi mode a ch c s dng . N cn c bit ti vi tn gi l thanh ghi con tr hay thanh ghi la chn tp Microchip. Thanh ghi a ch lnh / b m chng trnh - Program Counter Mt trong nhng thanh ghi quan trng nht CPU l thanh ghi b m chng trnh. Thanh ghi b m chng trnh s tng ln mt. Chng trnh s kt thc khi thanh ghi PC c gi tr bng a ch cui cng ca chng trnh nm trong b nh chng trnh. Thanh ghi tch ly - Accumulator

    Thanh ghi tch ly l mt thanh ghi giao tip trc tip vi ALU c s dng lu gi cc ton t hoc kt qu ca mt php ton trong qu trnh hot ng ca ALU.

    2.1.2 Xung nhp v trng thi tn hiu

    Trong VXL ni chung hot ng ca h thng c thc hin ng b hoc d b theo cc xung nhp chun. Cc nhp c ly trc tip hoc gin tip t mt ngun xung chun thng l cc mch to xung hoc dao ng thch anh. m t hot ng ca h thng, cc tn hiu d liu v iu khin thng c m t trng thi theo gin thi gian v mc tn hiu.

    Mc ch ca vic m t trng thi tn hiu theo gin thi gian v mc tn hiu l phn tch v xc nh chui s kin hot ng chi tit rong mi chu k bus. Nh vic m t ny chng ta c th xem xt n kh nng p ng thi gian ca cc

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    7

    s kin thc thi trong h thng v thi gian cn thit thc thi hot ng tun t cng nh l kh nng tng thch khi s s phi hp gia c thit b ghp ni hay m rng trong h thng. Thng thng thng tin v cc nhp thi gian hot ng cng nhu c tnh k thut chi tit c cung cp hoc qui inh bi cc nh ch tao. Mt s c trng v thi gian ca cc trng thi hot ng c bn ca cc tn hiu h thng gm c nh sau: + Thi gian tng hoc gim + Thi gian tr lan truyn tn hiu + Thi gian thit lp + Thi gian gi + Tr cm hot ng v trng thi treo Tri-state + rng xung + Tn s nhp hot ng Thi gian tng hoc gim

    Thi gian tng c nh ngha l khong thi gian tn hiu tng t 20% n 80% mc tn hiu cn thit. Thi gian gim l khong thi gian tn hiu gim t 80% n 20% mc tn hiu cn thit. Thi gian tr lan truyn

    L khon thi gian tnh t khi thay i tn hiu vo cho ti khi c s thay i tn hiu u ra. c tnh ny thng do cu to v kh nng truyn dn tn hiu vt l trong h thng tn hiu. Thi gian thit lp v lu gi

    Khong thi gian cn thit tn hiu trch mu t ti mt trng thi n nh trc khi xung nhp chun ng h thay c gi l thi gian xc lp. Thi gian lu gi l khong thi gian cn thit duy tr tn hiu trch mu n nh sau khi xung nhp chun ng h thay i. Thc cht l khong thi gian thit lp v thi gian lu gi l cn thit m bo tn hiu c ghi nhn chnh xc v n nh trong qu trnh hot ng v chuyn mc trng thi.

    Trong trng hp hot ng chuyn trng thi tn hiu khng ng b v khng m bo c thi gian thit lp v lu gi s c th dn n s mt n nh hay khng xc nh mc tn hiu trong h thng. Hin tng ny c bit ti vi tn gi l metastability.

    2.1.3 Bus a ch v d liu iu khin

    Bus a ch l cc ng dn tn hiu logic mt chiu truyn a ch tham chiu ti cc khu vc b nh v ch ra d liu c lu gi u trong khng gian b nh. Trong qu trnh hot ng CPU s iu khin bus a ch truyn d liu gia cc khu vc b nh v CPU . Cc a ch thng thng tham chiu ti cc khu vc b nh hoc cc khu vc vo/ra hoc ngoi vi. D liu c lu trong cc khu vc

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    8

    thng l 8 bit, 16 bit, hay 32 bit ty thuc vo cu trc tng loi vi x l/vi iu khin. Hu ht cc vi iu khin thng nh a ch d liu c rng l 16,20,24 hoc 32 bit. Nu nh a ch theo byte th mt vi x l 16 bit c th nh a ch ch bt u t a ch 0 v tng dn n 2N-1. Hin nay cc vi x l v vi iu khin ni chung ch yu vn s dng ph bin cc bus d liu c rng. Nu nh a ch theo byte th mt vi x l 16 bit c th a ch c 216 khu vc b nh tc l 65536 = 64 Kbyte. Tuy nhin mt s khu vc b nh m CPU khng th truy nhp trc tip ti tc l phi l phi s dng nhiu nhp bus truy cp, thng thng phi kt hp vi iu khin phn mm. K thut ny ch yu c s dng m rng b nh v thng c bit ti khi nim nh a ch trang nh khi nhu cu nh a ch khu vc nh vt qu phm vi c th nh a ch truy nhp trc tip.

    V d: CPU c 24 bit a ch s cho php nh a ch trc tip cho 224 byte(16 Mbyte) nh. CPU80386 v cc loi vi x l mnh hn c khng gian a ch 32 bit s c th nh c ti 232 4 GB a ch trc tip. Bus d liu

    Bus d liu l cc knh truyn ti thng tin theo 2 chiu gia CPU. Tc ng truyn hay trao i d liu thng c d tnh theo n v byte/s. S lng ng truyn bit d liu s cho php xc nh c s lng bit c th lu tr trong mi khu vc tham chiu trc tip. Nu mt bus d liu c kh nng thc hin mt ln truyn trong 1 ms, th bus d liu 8 bit s c bng thng l 1Mb/s, bus 16 bit s c bng thng l 2 mb/s v bus 32 bit s c bng thng l 4 Mb/s. Trong trng hp bus d liu 8 bit vi chu k bus l T = 1 ms tc l s truyn c 1b/1 chu k th s truyn c 1 Mb trong 1s hay 2 Mb trong 2s. Bus iu khin

    Bus iu khin phc v truyn ti cc thng tin d liu iu khin hot ng ca h thng. Thng thng cc d liu iu khin bao gm c tn hiu chu k ng b cc nhp chuyn ng v hot ng ca h thng. Thng thng cc d liu iu khin bao gm cc tn hiu chu k ng b cc nhp chuyn ng v hot ng ca h thng. Bus iu khin thng c iu khin bi CPU ng b ha nhp hot ng v d liu trao i trn cc bus. Trong trng hp vi x l s dng dn knh bus d liu v bus a ch tc l mt phn hoc ton b bus d liu s c s dng chung chia x vi bus a ch th cn mt tn hiu iu khin phn nhp truy nhp cho php cht lu tr thng tin a ch mi khi bt u mt chu k truyn. Mt v d v cc chu k bus v s ng b ca chng trong hot ng ca h thng bus a ch v d liu dn knh. y l hot ng in hnh trong h vi iu khin 8051 v nhiu loi tng t.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    9

    2.1.4 B nh v kin trc b nh

    Kin trc b nh chia lm 2 loi chnh v c p dng rng ri trong hu ht cc chip vi x l nhng hin nay theo Von Newman v Havard. Trong kin trc Von Newmann khng phn bit vng cha d liu v m chng trnh. C phng trnh v d liu u c truy nhp theo cng mt ng. iu ny cho php a d liu vo vng m chng trnh ROM, v cng c th lu m chng trnh vo vng d liu RAM v thc hin t .

    Kin trc Havard tch /phn bit vng lu m chng trnh v d liu. M chng trnh ch c th c lu v thc hin trong vng cha ROM v d liu cng ch c th lu v trao i trong vng RAM. Hu ht cc vi x l nhng ngy nay s dng kin trc b nh Havard hoc kin trc Havard m rng tc l b nh chng trnh v d liu tch bit nhng vn cho php kh nng hn ch ly d liu ra t vng m chng trnh. Trong kin trc b nh Havard m rng tc l b nh chng trnh v d liu tch bit nhng vn cho php kh nng hn ch ly d liu ra t vng m chng trnh. Trong kin trc b nh Havard m rng thng s dng mt s lng nh cc con tr ly d liu t vng m chng trnh theo cch nhng vo trong cc lnh tc thi. Mt s chip vi iu khin nhng tiu biu hin nay s dng cu trc Havard l 8031, PIC, Atmel AVR90S. Nu s dng chip 8031 chng ta s nhn thy iu ny thng qua vic truy nhp ly d liu ra t vng d liu RAM hoc t m vng chng trnh. Chng ta c mt vi con tr c s dng ly d liu ra t b nh d liu ra t b nh d liu RAM, nhng ch c duy nht 1 con tr DPTR c th c s dng ly d liu ra t vng m chng trnh.

    u im ni bt ca cu trc b nh Havard so vi kin trc Von newman l c 2 knh tch bit truy nhp va vng b nh m chng trnh v d liu nh vy m m chng trnh v d liu c th c truy nhp ng thi v lam tng tc lung trao i vi b vxl. - B nh chng trnh PROM programme read only memory - Vng lu tr m chng trnh. C ba loi b nh PROM thng thng c s dng cho h nhng v s c gii thiu ln lt sau y. - EPROM Bao gm mt mng cc trnsistor kh trnh. M chng trnh s c ghi trc tip v vxl c th c ra thc hin. EPROM c th xa c bng tia cc tm v c th c lp trnh li.

    B nh FLASH

    Cng ging nh EPROM c cu to bi mt mng transistor kh trnh nhng c th xa c bng in v chnh v vy c th np li chng trnh m khng cn tch ra khi nn phn cng vxl. u im ca b nh flash l c th lp trnh trc tip trn mch cng m n ang thc thi trn .

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    B nh d liu RAM

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

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

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

    Hnh 2-3: Nguyn l ghp ni (m rng) RAM vi VXL

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    2.1.5 Khng gian v phn vng a ch

    2.1.6 Ngoi vi

    B nh thi gian/B m

    Hnh 2-4: B nh thi/ B m 8 bit ca AVR

    Hu ht cc chp vi iu khin ngy nay u c t nht mt b nh thi gian/b m c th cu hnh hot ng linh hot theo cc mode phc v nhiu mc ch trong cc ng dng x l, iu khin. Cc b nh thi gian cho php to ra cc chui xung v ngt thi gian hoc m theo cc khong thi gian c th lp trnh. Chng thng c ng dng ph bin trong cc nhim v m xung, o khong thi gian cc s kin, hoc nh chu k thi gian thc thi cc tc v. Mt trong nhng ng dng quan trng ca b nh thi gian l to nhp t b to xung thch anh cho b truyn thng d b a nng hot ng. Thc cht l ng dng thc hin php chia tn s. t c chnh xc, tn s thch anh thng c chn sao cho cc php chia s nguyn c thc hin chnh xc m bo cho tc truyn thng d liu c to ra chnh xc. Chnh v vy h vi iu khin 80C51 thng hay s dng thch anh c tn s dao ng l 11.059 thay v 12MHz to ra nhp hot ng truyn thng tc chun 9600.

    B iu khin ngt

    Ngt l mt s kin xy ra lm dng hot ng chng trnh hin ti phc v thc thi mt tc v hay mt chng trnh khc. C ch ngt gip CPU lm tng tc p ng phc v cc s kin trong chng trnh hot ng ca VXL/VK. Cc VK khc nhau s nh ngha cc ngun to ngt khc nhau nhng u c chung mt c ch hot ng v d nh ngt truyn thng ni tip, ngt b nh thi gian, ngt cng, ngt

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    ngoi. Khi mt s kin yu cu ngt xut hin, nu c chp nhn CPU s lu ct trng thi hot ng cho chng trnh hin ti ang thc hin v d ni dung b m chng trnh (con tr lnh) cc ni dung thanh ghi lu d liu iu kin chng trnh ni chung thc thi chng trnh phc v tc v cho s kin ngt. Thc cht qu trnh ngt l CPU nhn dng tn hiu ngt, nu chp nhn s c con tr lnh chng trnh tr ti vng m cha chng trnh phc v tc v ngt. V vy mi mt ngt u gn vi mt vector ngt nh mt con tr lu thng tin a ch ca vng b nh cha m chng trinhg phc v tc v ca ngt. CPU s thc hin chng trnh phc v tc v ngt n khi no gp lnh quay tr v chng trnh trc thi im s kin ngt xy ra. C th phn chia 2 loi ngun ngt: Ngt cng v Ngt mm.

    Ngt mm Ngt mm thc cht thc hin mt li gi hm c bit m c kch hot bi

    cc ngun ngt l cc s kin xut hin t bn trong chng trnh v ngoi vi tch hp trn Chp v d nh ngt thi gian, ngt chuyn i A/D,C ch ngt ny cn c hiu l loi thc hin ng b vi chng trnh v n c kch hot v thc thi ti cc thi im xc nh trong chng trnh. Hm c gi s thc thi chc nng tng ng vi yu cu ngt. Cc hm thng c tr bi mt vector ngt m c nh ngha v gn c nh bi nh sn xut Chip. V d nh h iu hnh ca PC s dng ngt s 21hex gn cho ngt truy nhp c d liu t a cng v xut d liu ra my in.

    Ngt cng Ngt cng c th c xem nh l mt li gi hm t bit trong ngun kch

    hot l mt s kin n t bn ngoi chng trnh thng qua mt cu trc phn cng (thng c kt ni vi th gii bn ngoi qua cc chn ngt). Ngt cng thng c hiu hot ng theo c ch d b v cc s kin ngt kch hot t cc tn hiu ngoi vi bn ngoi v tng i c lp vi CPU, thng l khng xc nh c thi im kch hot. Khi cc ngt cng c kch hot CPU s nhn dng v thc hin li gi hm thc thi chc nng phc v s kin ngt tng ng.

    Trong cc c ch ngt khong thi gian t khi xut hin s kin ngt (c yu cu phc v ngt) ti khi dch v ngt c thc thi l xc nh v ty thuc vo cng ngh phn cng x l ca Chip.

    B nh thi Watchdog Timer

    Thng thng khi c mt s c xy ra lm h thng b treo hoc chy qun, CPU s khng th tip tc thc hin ng chc nng. c bit khi h thng phi lm vic ch vn hnh t ng v khng c s can thip trc thip thng xuyn bi ngi vn hnh. thc hin c ch t gim st v pht hin s c phn mm, mt s VXL/VK c thm mt b nh thi ch canh. Bn cht l mt b nh thi c bit nh ngha mt khung thi gian hot ng bnh thng ca h thng. Nu c s c phn mm xy ra s lm h thng b treo khi b nh thi Watchdog timer s pht hin v gip h thng thot khi trng thi bng cch thc hin khi to li chng trnh. Chng trnh hot ng khi c b chng trnh phi m bo reset n

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

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

    Hnh 2-5: S nguyn l hot ng ca b nh thi watchdog

    B iu khin truy nhp b nh trc tip DMA

    DMA (Direct Memory Access) l c ch hot ng cho php hai hay nhiu vi x l hoc ngoi vi chia s bus chung. Thit b no ang c quyn iu khin bus s c th ton quyn truy nhp v trao i d liu trc tip vi cc b nh nh h thng c mt vi x l. ng dng ph bin nht ca DMA l chia s b nh chung gia hai b vi x l hoc cc ngoi vi truyn d liu trc tip gia thit b ngoi vi vo/ra v b nh d liu ca VXL.

    Truy nhp b nh trc tip c s dng p ng nhu cu trao i d liu vo ra tc cao gia ngoi vi vi b nh. Thng thng cc ngoi vi kt ni vi h thng phi chia s bus d liu v c iu khin bi CPU trong qu trnh trao i d liu. iu ny lm hn ch tc trao i, tng cng tc v loi b s can thip ca CPU, c bit trong trng hp cn truyn mt lng d liu ln. Th tc c bt u bng vic yu cu thc hin DMA vi CPU. Sau khi x l, nu c chp nhn CPU s trao quyn iu khin bus cho ngoi vi v thc hin qu trnh trao i d liu. Sau khi thc hin xong CPU s nhn c thng bo v nhn li quyn iu khin bus. Trong c ch DMA, c 2 cch truyn d liu: Kiu DMA chu k n, v kiu DMA chu k nhm (burst).

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    Hnh 2-6: Nguyn l hot ng ca b nh thi watchdog timer

    DMA chu k n v nhm

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

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

    Hnh 2 7 : Nhp hot ng DMA

    Chu k ri ( Cycle Stealing)

    Trong kiu ny DMA s c thc hin trong nhng thi im chu k bus m CPU khng s dng bus do khng cn thc hin th tc x l cp pht quyn truy nhp v thc hin DMA.

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    thng bus thc hin c ch x l v gii quyt yu cu truy nhp (Trng ti) thng qua d liu truyn v vy cng khng nh hng nhiu ti tc truyn DMA.

    DMA c yu cu khi kh nng iu khin ca CPU truyn d liu thc hin qu chm. DMA cng thc s c ngha khi CPU ang phi thc hin cc tc v khc m khng cn nhu cu truy nhp bus.

    IC chc nng chuyn dng

    DAC/ADC

    Hnh 2 8: S nguyn l mch chuyn i DAC

    Hnh 2 9: S nguyn l mch chuyn i ADC

    V d ADC 754A

    c im k thut:

    Ch to theo cng ngh CMOS. 12 bit vi giao din tng thch vi cc loi VXL/VK 8, 12 v 16 bit. C th

    lp trnh hot ng chuyn i 8 bit hoc 12 bit.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    Tn hiu d liu ra tng thch vi chun TTL v ghp ni thng qua loi cng logic 3 trng thi.

    Di gi tr in p u vo c th la chn nh cu hnh gi tr in tr ni u vo nhn cc di tn hiu ( 100 )V , ( 200 )V, ( 55 )V, ( 1010 )V.

    C thm kh nng cung cp ngun tham chiu Vref = +10V. Ngun cung cp c th l +5 V, 12 V, hoc 15 V. Thi gian chuyn i cc i l 25 s vi thi gian truy nhp bus l 150 ns.

    Hnh 2 10: S nguyn l cu trc ADC754A

    Hnh 2 11: S b tr chn ca chip ADC574A

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    Nguyn l iu khin:

    ADC574 c iu khin bi cc chn tn hiu nh m t trong bng sau:

    Bng 1: Tn hiu iu khin ADC574A

    K hiu nh ngha Chc nng

    CE (Pin 6)

    CS (Pin 3)

    CR / (Pin 5)

    AO (Pin 4)

    8/12 (Pin 2)

    Chip Enable (active high)

    Chip Select (active low)

    Read/Convert (1 = read)

    (0=convert)

    Byte Address Short Cycle

    Data Mode Select

    (1=12 bits) (0=8 bits)

    Must be high (1) to either initiate a conversion or read output data 01 edge may be used to initiate a conversion.

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

    Must be low (0) to initiate either 8- or 12- bit conversion. 10 edge may be used to initiate a conversion.

    Must be high (1) to read output data 01 edge may be used to initiate a read operation.

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

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

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    1

    (2) Kch hot qu trnh chuyn i: B chuyn i thc hin chuyn i khi nhn c tn hiu mnh lnh tch cc t chn tn hiu CE/CS, hoc R/C vi iu kin cc tn hiu iu khin khc c xc lp.

    (3) Trng thi chuyn i: Tn hiu u ra STATUS bo trng thi chuyn i hin hnh ca ADC; thit lp mc cao nu ang thc hin chuyn i v mc thp nu hon thnh. Trong qu trnh chuyn i cc tn hiu iu khin b kha v d liu khng th c c v cc ng tn hiu ra c chuyn sang trng thi cao tr.

    (4) c d liu ra: Qu trnh c d liu ra c th c thc thi nu cc tn hiu iu khin xc lp trng thi cho php c v tn hiu STATUS trng thi thp. Ty thuc vo mode chuyn i c thit lp v nh dng d liu u ra bi t hp trng 8/12 v AO.

    Cng song song kh trnh 82C55A

    82C55A l mt giao din ngoi vi cng song song kh trnh c ch to theo cng ngh CMOS. N l mt thit b ngoi vi vo ra kh trnh ra mc ch v c th c s dng vi nhiu loi VXL/VK khc nhau. 82C55A c 24 chn vo ra on Chip c chia ra thnh 2 nhm, mi nhm 12 chn v c th c s dng theo 3 ch hot ng khc nhau.

    Hnh 2 12: Gin khi chc nng ca chip 82C55A.

    Chc nng v ngha ca cc chn on Chip ca 82C55A c m t trong Bng 2: Chc nng ca cc chn on Chip ca 82C55A.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    Bng 2: Chc nng ca cc chn on Chip ca 82C55A

    K hiu Kiu M t chc nng

    Vcc Vcc: The +5V power supply pin. A 0.1 F capacitor between Vcc and GND is recommended for decoupling.

    GND GROUND

    D0 D7 I/O DATA BUS: The Data Bus lines are bidirectional three-state pins connected to the system data bus.

    RESET I RESET: A high on this input clear the control register and all ports (A,B,C) are set to the input mode with the Bus Hold circuitry turned on.

    CS I CHIP SELECT: Chip select is an active low input used to enable the 82C55A onto the Data Bus for CPU communications.

    RD I READ: Read is an active low input control signal used by the CPU to read status information or data via the data bus.

    WR I WRITE: Write is an active low input control signal used by the CPU to load control words and data into the 82C55A.

    A0 A1 I

    ADDRESS: These input signals, in conjunction with the RD and WR inputs control the selectionof one of the three ports or the control word register. A0 and A1 are normally connected to the least significant bits of the Address Bus A0, A1.

    PA0 PA7 I/O PORT A: 8-bit input and output port. Both bus hold high and bus hold low circuitry are present on this port.

    PB0-PB7 I/O PORT B:8-bit input and output port. Bus hold high circuitry is present on this port.

    PC0 PC7 I/O PORT C:8-bit input and output port. Bus hold circuitry is present on this port.

    82C55A cung cp 3 ch hot ng chnh v c th lp trnh la chn

    Mode 0: Hot ng vo ra c bn. Mode 1: Hot ng vo ra nm bt (strobed).

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

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

    Hnh 2-13: Thanh ghi t iu khin chn ch hot ng cho 82C55A

    Khi u vo reset c iu khin mc cao th tt c cc cng s c thit lp hot ng ch cng vo vi 24 ng tn hiu v duy tr mc logic 1. Sau khi tn hiu iu khin reset mc tch cc b loi b th 82C55A c th duy tr ch hot ng m khng cn thm bt k vic khi to no na. iu ny s gip loi b c cc in tr treo cao hoc treo thp trong cc thit k cho mch CMOS. Khi kch hot ch thit lp th thanh ghi t iu khin s cha gi tr 9Bh. Trong qu trnh thc hin chng trnh vn c th thay i la chn ch hot ng khc nhau, iu ny cho php 82C55 hot ng mt cch a dng p ng cho nhiu bi ton ng dng khc nhau. Trong qu trnh thanh ghi t iu khin ang c vit th tt c cc cng c thit lp hot ng ch cng ra s c khi to bng zero.

    Mode 0 (Vo ra c bn): Cu hnh ch hot ng ny cung cp cc hot ng vo ra c bn cho c 3 cng A, B v C. D liu c trao i trc tip v khng cn phi c c ch bt tay. Ch hot ng ny h tr cc chc nng c th nh sau:

    Hai cng 8-bit v hai cng 4 bit. Bt k cng no cng c th l cng vo hoc cng ra. Cc ng d liu tn hiu ra c cht. Cc ng d liu tn hiu vo c cht. C th cu hnh 16 kiu hot ng vo ra khc nhau.

    Mode 1 (Vo ra c bt tay): Ch hot ng ny cung cp kh nng truyn d liu ti hoc i t mt cng c th cng vi cc tn hiu bt tay. Trong ch ny

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    cng A, B c s dng truyn d liu v cng C hot ng nh cng iu khin c ch ng b bt tay. Ch hot ng ny cung cp cc chc nng chnh sau:

    Hai nhm cng (Nhm A v nhm B). Mi nhm bao gm mt cng 8-bit v mt cng d liu iu khin 4-bit.

    Cng d liu 8 bit c th hot ng nh hoc l cng vo, hoc l cng ra v c 2 chiu d liu u c cht.

    Cng d liu 4- bit c th c s dng iu khin v trng thi ca cng 8-bit.

    Mode 2 (Bus vo ra 2 chiu c bt tay): Ch hot ng ny cung cp kh nng truyn thng vi cc ngoi vi hoc cc bus d liu 8-bit cho vic truyn nhn d liu. Cc tn hiu bt tay c cung cp duy tr dng tn hiu bus tng t nh ch 1. Cc c ch to ngt cng c th c thc hin ch ny. Mt s cc chc nng chnh h tr trong ch ny bao gm:

    Ch s dng nhm A. Mt cng bus 2 chiu 8-bit (Cng A) v mt cng iu khin 5-bit (Cng C). C hai chiu d liu vo v ra u c cht. Cng iu khin 5- bit (Cng C) c s dng trong mc ch iu khin v

    trng thi cho cng A trao i d liu 2 chiu 8-bit. B nh thi / B m C8254

    Hnh 2-14: S cu trc chc nng 8254

    y l b m tc cao cung cp 3 b nh thi 16 bit c lp v c th c cu hnh hot ng nhiu ch hot ng. Mi b m c cc knh d liu

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    v iu khin ring bit. H tr 2 kiu m ha m nh phn (t 0 65535) hoc BCD (binary coded decimal) (0 9999). C 4 thanh ghi thch hp On-Chip lu gi tr m v cu hnh hot ng (t iu khin). Tn s hot ng ca b m c th lm vic vi xung nhp tn s 10MHz v h tr 6 ch hot ng v c th cu hnh ring l.

    2.1.7. Giao din

    Giao din song song 8 bit/16 bit

    Cc cng song song l mt dng giao din vo ra n gin v ph bin nht kt ni thng tin vi ngoi vi. C nhiu loi cu trc giao din hp l in t t dng cng vo ra n gin cc Collector TTL h trong cc ng dng cng my in n cc loi cu trc giao din cng tc cao nh cc chun Bus IEEE-488 hay SCSI. Hu ht cc chip iu khin nhng c mt vi cng vo ra song song kh trnh (c th cu hnh). Cc giao din ph hp vi cc cng vo ra n gin nh cc kha chuyn. Chng cng ph hp trong cc bi ton phc v giao din kt ni iu khin v gim st theo cc giao din nh kiu rle bn dn.

    Hnh 2 15: Cu trc nguyn l in hnh ca mt cng I/O logic

    Giao din ni tip

    USART

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    Hnh 2 16: Cu trc n gin ha ca USART

    Hnh 2 17: Mode hot ng truyn thng ng b

    Hnh 2 18: Mode hot ng truyn thng d b

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    I2C ( Inter IC)

    Giao thc u tin truyn thng ni tip c pht trin bi Philips Semiconductor v c gi l bus I2C.V ngun gc n c thit k l iu khin lin thng IC (Inter IC) nn n c t tn l I2C. Tt c cc chip c tch hp v tng thch vi I2C u c thm mt giao din tch hp trn Chip truyn thng trc tip vi cc thit b tng thch I2C khc. Vic truyn d liu ni tip theo 2 hng 8bit c thc thi theo 3 ch sau:

    Chun (Standard) 100 Kbits/sec. Nhanh (Fast) 400 Kbits/sec. Tc cao (High- Speed) 3.4 Mbits/sec.

    ng bus thc hin truyn thng ni tip I2C gm hai ng l ng truyn d liu ni tip SDA v ng truyn nhp xung ng h ni tip SCL. V c ch hot ng l ng b nn n cn c mt nhp xung tn hiu ng b. Cc thit b h tr I2C u c mt a ch nh ngha trc, trong mt s bit a ch l thp c th cu hnh. n v hoc thit b khi to qu trnh truyn thng l n v Ch v cng l n v to xung nhp ng b, iu khin cho php kt thc qu trnh truyn. Nu n v Ch mun truyn thng vi cc n v khc n s gi km thng tin a ch m n mun truyn trong d liu truyn. n v T u c gn v nh a ch thng qua n v Ch c th thit lp truyn thng v trao i d liu. Bus d liu c thit k cho php thc hin nhiu n v Ch v T trn cng bus.

    Qu trnh truyn thng I2C c bt u bng tn hiu Start to ra bi n v Ch. Sau n v Ch s truyn i d liu 7bit cha a ch ca n v T m n mun truyn thng, theo th t l cc bit c trng s ln nht MSB s c truyn trc. Bit th 8 tip theo s cha thng tin xc nh n v T s thc hin vai tr nhn (0) hay gi (1) d liu. Tip theo s l mt bit ACK xc nhn bi n v nhn nhn c mt byte trc hay khng. n v truyn (gi) s truyn i mt byte d liu bt u bi MSD. Ti im cui ca byte truyn, n v nhn s to ra mt bit xc nhn ACK mi. Khun mu 9 bit ny (gm 8 bit d liu v 1 bit xc nhn) s c lp li nu cn truyn tip mt byte na. Khi n v Ch trao i xong d liu cn n s quan st bit xc nhn ACK cui cng ri sau s to ra mt tn hiu dng STOP kt thc qu trnh truyn thng.

    I2C l mt giao din truyn thng c bit thch hp cho cc ng dng truyn thng gia cc n v trn cng mt bo mch vi khong cch ngn v tc thp. V d nh truyn thng gia CPU vi cc khi chc nng trn cng mt bo mch nh EEPROM, cm bin, ng h to thi gian thcHu ht cc thit b h tr I2C hot ng tc 400 Kbps, mt s cho php hot ng tc cao vi Mbps. I2C kh n gin thc thi kt ni nhiu n v v n h tr c ch xc nh a ch.

    SPI

    SPI l mt giao din cng ni tip ng b ba dy cho php kt ni truyn thng nhiu VK c pht trin bi Motorola. Trong cu hnh mng kt ni truyn

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    thng ny phi c mt VK gi vai tr l Ch (Master) v cc VK cn li c th hoc l Ch hoc l T. SPI c 4 tc c th lp trnh, cc v pha nhp ng h kh trnh v kt thc ngt truyn thng. Nhp ng h khng nm trong dng gi liu v phi c cung cp nh mt tn hiu tch c lp. C 3 thanh ghi SPSR, SPCR vSPDR cho php thc hin cc chc nng iu khin, trng thi v lu tr. C 4 chn c bn cn thit thc thi chun giao din truyn thng ny.

    D liu ra MOSI ( Master Output Slave Input) D liu vo MISO (Master Input Slave Output) Nhp xung chun SCLK (Serial Clock) La chn thnh phn t SS (Slave Select)

    Hnh 2 19: Kt ni nguyn l truyn thng SPI gia mt Master v mt Slave

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

    Hnh 2 20: S kt ni truyn thng SPI ca mt n v Ch vi nhiu n v T

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    truyn thng. iu ny phc v vo giao thc nh ngha hoc phi thc hin b sung thm mt s cc m rng ph bn ngoi.

    Kh nng truyn thng ng thi 2 chiu vi tc ln n khong vi Mbit/s v nguyn l kh n gin nn SPI hon ton ph hp thc hin truyn thng gia cc thit b yu cu truyn thng tc chm, c bit hiu qu trong cc ng dng mt n v Ch v mt n v T. Tuy nhin trong cc ng dng vi nhiu n v T vic thc thi li kh phc tp v thiu c ch xc nh a ch, v s phc tp s tng ln khi s n v T tng.

    2.2. Mt s nn phn cng nhng thng dng

    Trong phn ny gii thiu ngn gn cu trc nguyn l ca cc chip x l nhng ng dng trong cc nn phn cng nhng hin nay.

    S pht trin nhanh chng cc chng loi chip kh trnh vi mt tch hp cao v ang c mt tc ng ng k n s thay i trong vic thit k cc nn phn cng thit b x l v iu khin s trong thp k gn y. Mi chng loi u c nhng c im v phm vi i tng ng dng v lun khng ngng pht trin p ng mt cch tt nht cho cc yu cu cng ngh. Chng ang hng ti tp trung cho mt th trng cng ngh tim nng rng ln, l cc thit b x l v iu khin nhng. Trong bi vit ny tc gi gii thiu ngn gn v cc chng loi chip x l, iu khin nhng in hnh ang tn ti v pht trin v mt s c im v hng phm vi ng dng ca chng.

    C th k ra hng lot cc chip kh trnh c th s dng cho cc bi ton thit k h nhng nh cc h vi x l/ vi iu khin nhng (Microprocessor/ Microcontroller), Chip DSP (Digital Signal Processing), cc Chip kh trnh trng (FPD - Field Programmable Device). Chng ta d b chong ngp nu bt u cng vic thit k bng vic tm kim mt chip x l iu khin ph hp cho ng dng. V vy cn phi c mt hiu bit v s phn bit v c im v ng dng ca chng khi la chn v thit k. Cc thng tin lin quan nh nh sn xut cung cp Chip, cc kin thc v cng c pht trin km theo Mt s chng loi Chip in hnh s c gii thiu.

    2.2.1. Chip vi x l/ vi iu khin nhng

    y l mt chng loi rt in hnh v ang c s dng rt ph bin hin nay. Chng c ra i v s dng theo s pht trin ca cc Chip x l ng dng cho my tnh. V i tng ng dng l cc thit b nhng nn cu trc cng c thay i theo p ng cc ng dng. Hin nay chng ta c th thy cc h vi x l iu khin ca rt nhiu cc nh ch to, cung cp nh: Intel, Atmel, Motorola, Ifineon. V cu trc, chng cng tng t nh cc Chip vi x l pht trin cho PC nhng mc n gin hn nhiu v cng nguyn v ti nguyn. Ph bin vn l cc Chip c rng bus d liu l 8 bit, 16 bit, 32bit. V bn cht cu trc, Chip vi iu khin v Chip vi x l c tch hp thm cc ngoi vi. Cc ngoi vi thng l cc khi chc nng ngoi vi thng dng nh b nh thi gian, b m, b chuyn i A/D, giao din song song, ni tip Mc tch hp ngoi vi cng khc nhau ty thuc vo

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

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

    Hnh 2 21: Kin trc nguyn l ca VK vi cu trc Havard

    V d v kin trc ca h VK AVR

    Hnh 2 22: Kin trc ca h VK AVR

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    2

    Hnh 2 23: S khi chc nng kin trc PIC16F873A

    2.2.2. Chip DSP

    DSP vn c bit ti nh mt loi vi iu khin c bit vi kh nng x l nhanh phc v cc bi ton yu cu khi lng v tc x l bi ton ln. Vi u im ni bt v rng bng thng ca bus v thanh ghi tch ly, cho php ALU x l song song vi tc c v x l lnh nhanh hn cc loi vi iu khin thng thng. Chip DSP cho php thc hin nhiu lnh trong mt nhp nh vo kin trc b nh Havard.

    Thng thng khi phi s dng DSP tc l p ng cc bi ton tnh ton ln v tc cao v vy nh dng biu din ton hc s l mt yu t quan trng phn loi v c quan tm. Hin nay ch yu chng vn c phn loi theo 2 kiu l du phy ng v du phy tnh. y cng chnh l mt yu t quan trng phi quan tm i vi ngi thit k la chn c mt DSP ph hp vi ng dng ca mnh. Cc loi DSP du phy tnh thng l loi 16bit hoc 24 bit cn cc loi du phy ng thng l 32bit. Mt v d in hnh v mt DSP 16bit du phy tnh l TMS320C55x, lu cc s nguyn 16bit hoc cc s thc trong mt min gi tr c nh. Tuy nhin cc gi tr v h s trung gian c th c lu gi vi chnh xc l

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

    Hnh 2-24: Gin khi chc nng ca DSP TMS320C28xx

    u im ni bt ca cc DSP du phy ng l c th x l v biu din s trong di phm vi gi tr rng v ng. Do vn v chuyn i v hn ch v phm vi biu din s khng phi quan tm nh i vi loi DSP du phy tnh. Mt loi DSP 32bit du phy tnh in hnh l TMS320C67x c th x l v biu din s gm 24 bit mantissa v 8 bit exponent. Phn mantissa biu din phn s l trong phm vi -1.0 n +1.0 v phn exponent biu din v tr ca du phy nh phn v c th dch

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

    V d chnh xc ca DSP du phy ng 32 bit l 2-23 vi 24 bit biu din phn mantissa. Vng ng l 3838 104.31018.1 x

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

    2.2.3 PAL

    Ngay khi ni n chng loi Chip kh trnh mng ta thng bit ti mt s tn gi nh PAL, CPLD, FPGAMt cht lc s v s ra i v pht trin sau y s gip chng ta hnh dung c c im v ngun gc ra i ca chng.

    Lch s pht trin ca loi chip kh trnh mng PLA( Programmable Logic Array) c bt ngun t nguyn l b nh chng trnh PROM (Programmable Read-Only Memory). Trong cc u vo a ch ng vai tr nh cc ng vo ca mch logic v cc ng d liu ra ng vai tr nh cc ng ra ca mch logic.V PROM khng thc s ph hp cho mc ch thit k cc mch logic nn PLA ra i vo u thp k 70. N rt ph hp thc hin mch logic c dng tng cc tch ( v cu thnh bi cc phn t logic AND v OR). Nhng nhc im l chi ph sn xut cao v tc hot ng thp. khc phc nhc im ny PAL(Programmable Array Logic) c pht trin. N c cu thnh t cc phn t AND kh trnh v phn t OR gn c nh v c cha c phn t flip-flop u ra nn c kh nng thc thi cc mch logic tun t. hnh 2-26 m t cu trc chung ca PAL.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

    Hnh 2-25: Cu trc PROM v PLA

    Hnh 2-26: Cu trc chung ca PAL

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

    Hnh 2-27: Cu trc nguyn l ca FPGA

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

    Hnh 2-28: Cu trc CLB v LAB

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

    FPGA thc s ph hp cho cc ng dng i hi lng tnh ton ln nh trong x l tn hiu. FPGA c th c lp trnh hot ng ng thi vi mt s cc ng d liu song song. Chng l cc ng d liu hot ng ca t hp nhiu cc chc nng t n gin n phc tp nh b cng, b nhn, b m, b lu tr , b so snh, b tnh tng quanNgy nay c th phn loi ra mt s kiu chng loi FPGA da vo cu to ca chng.

    FPGA cu to t SRAM

    Vi loi ny cc mt kt ni kh trnh c thc hin bng cc phn t SRAM, chnh v vy cho php thc hin lp trnh lp li nhiu ln. u im ni bt ca loi ny l cc tng thit k mi c th c thc thi v th nghim nhanh chng. Hn na SRAM cng ng l mt hng pht trin rt mnh hin nay trong nn cng nghip sn xut b nh v cng u thc thi theo cng ngh CMOS rt ph hp vi cng ngh ch to FPGA.

    Tuy nhin mt c im c th xem nh l nhc im ca FPGA cu to t cc phn t SRAM l chng phi cu hnh li mi khi ngun h thng c cung cp. Cng vic ny thng c thc hin bi mt b nh ngoi chuyn dng hoc mt b vi iu khin km theo mch. Chnh v vy cng lm gi thnh ca FPGA tng thm.

    FPGA cu to t cu ch (anti-fused)

    Khng ging nh loi FPGA cu to t SRAM, FPGA vi cu t kiu cu ch c lp trnh offline bng mt lp trnh chuyn dng. tng ch to loi FPGA ny xut pht t nhu cu v mt thit b kh trnh c kh nng lu cu hnh sau khi c s dng.. Tc l n khng phi lm cng vic cu hnh mi khi ngun h thng c cung cp. Khi FPGA anti-fused c lp trnh th n khng th b thay i hay c lp trnh li na. Chnh nh iu ny nn n khng cn bt k mt b nh ngoi no lu tr cu hnh v c th tit kim, gim gi thnh ca thit b.

    Mt u im ni bt ca FPGA anti-fused l kiu cu trc lin kt kh bn vng vi cc loi nhiu x. c im ny kh quan trng khi thit b phi lm vic trong mi trng tim nng nh qun s hoc tim nng v tr. V vy n trnh c trng hp ri ro c th xy ra nu s dng cng ngh SRAM l hin tng lt trng thi(flipped). Tuy nhin hin tng ny cng c th c khc phc bng c ch d phng bc 3 nhng li lm tng thm chi ph ch to.

    Mt u im ni bt ca loi FPGA anti-fused l kh nng bo v cng ngh. Tc l d liu cu hnh lp trnh cho FPGA c th c bo v bi vic c bt hp php hoc khng cho php c. Trong qu trnh x l hoc pht trin, ngi lp trnh s s dng mt tp d liu cu hnh lp trnh v kim tra qu trnh np cu hnh cho

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

    FPGA. Cng vic ny ch thc hin mt ln v s khng th thay i c na. Khi thc hin xong n c th c thit lp thm mt thuc tnh l chng c trc tip t FPGA d liu lin quan n cu hnh. Ngoi ra chng ta c th bit thm rng FPGA anti-fuse thng c s dng t nng lng hn loi FPGA SRAM, kch thc cng nh hn, v tc cng nhanh hn mt cht nh khong cch kt ni cng gia cc phn t ngn hn.

    Tuy nhin nhc im ln nht ca FPGA anti-fused l ch c th c lp trnh v cu hnh mt ln. V vy n ch thc s ph hp khi thc thi hon chnh sn phm cui cng v khng ph hp vi mc ch thit k pht trin.

    FPGA cu to t EEPROM/FLASH

    EPROM or FLASH based FPGAs cng c nguyn l cu to tng t nh loi FPGA-SRAM. Cc phn t cu hnh ca n c kt ni da trn mt chui thanh ghi dch di. Chng c th c cu hnh offline bng cc thit b lp trnh chuyn dng. Cng c mt s c th lp trnh online nhng thi gian lp trnh cu hnh s gp khong 3 ln thi gian thc thi vi nn FPGA-SRAM. Khi c cu hnh lp trnh th chng c th c duy tr v khng b mt i nh nguyn l lu gi ca EEPROM hoc FLASH. Loi FPGA- EEPROM/FLASH c cu to nh hn so vi loi FPGA-SRAM v vy cng c th gim c thi gian lan truyn tn hiu kt ni lin thng gia cc phn t logic.

    bo v cng ngh khi FPGA c cu hnh v a ra s dng, ta c th bo v bng c ch kha m mm( cu to khong 50 bit n vi trm bt). Mun c c thng tin cu hnh trc tip t FPGA, ngi ta cn phi c m kha v cng rt kh hoc khng th m c theo nguyn l th sai. V mun vy theo c tnh cng phi mt n hang triu nm mi hy vng thnh cng m ra c.

    Tuy nhin cng ngh ch to FPGA-EEPROM/FLASH i hi thc thi qua nhiu cng on x l hn so vi loi FPGA-SRAM v vy m s pht trin ca chng cng chm hn. Hn na nng lng tiu th ca chng cng ln hn v phi nui rt nhiu phn t in tr ko (pull- up resistor)

    FPGA cu to t t hp FLASH-SRAM

    Ngy nay ngi ta cng pht trin ch to cc loi FPGA cu to t cc t hp SRAM v FLASH tn dng c cc u im ca c hai chng loi ny. Thng thng cc phn t cu hnh FLASH s c s dng lu cc ni dung cu hnh sao chp cho cc phn t cu hnh SRAM. V cc phn t cu hnh SRAM hon ton c th c cu hnh li theo yu cu thit k trong khi vn duy tr mt phn thit k cu hnh gc lu trong cc phn t FLASH.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

    C hai loi cu trc c bn cu thnh nn cc khi logic kh trnh trong kin trc FPGA th hoc trung bnh l MUX(Multiplex) v LUT( Lookup Table). Trong loi cu trc MUX th cc phn t logic c cu thnh theo cu trc t hp cc u vo ra theo nguyn l MUX nh m t trong hnh 2-29: Khi logic dng MUX.

    Hnh 2-29: Khi logic dng MUX

    i vi loi cu trc LUT th cc u vo thc cht l cc t hp chn ra gi tr trong bng chn l ca hm chc nng cn thc thi.

    Hnh 2-30: LUT thc hin hm t hp AND v OR

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

    Hnh 2-31: Hnh nh ca Chip c cc ct l cc khi RAM nhng

    FPGA vi ht nhn DSP

    Hnh 2-46: S nguyn l mch ghp ni VK v FPGA

    Thc cht l mt t hp nhm tng tc v kh nng tnh ton. Khi nim ny cng tng t nh cc b ng x l ton hc trong kin trc my tnh. Nguyn l l nhm san s v gim bt ti sang FPGA thc thi cc chc nng tnh ton ln( thng thng i hi thc hin trong nhiu nhp hot ng ca Chip DSP) v cho php chip

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

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

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    3

    CHNG 3

    LP TRNH H NHNG

    3.1 c im phn mm nhng

    Hng chc nng ha c th Hn ch v ti nguyn b nh Yu cu thi gian thc 3.2 Biu din s v d liu

    n v c bn nht trong biu din thng tin ca h thng s c gi l bt, chnh l k hiu vit tt cu thut ng binary digit.

    1964, IBM thit k v ch to my tnh s s dng mt nhm 8 bt nh a ch b nh v nh ngha ra thut ng 8 bit= 1byte.

    Ngy nay s dng rng ri thut ng Word l mt t d liu dng biu din kch thc d liu m c x l mt cch hiu qu nht i vi mi loi kin trc x l s c th. Chnh v vy mt t c th l 16 bits, 32 bits, hoc 64 bits

    Mi mt byte c th c chia ra thnh hai na 4 bit v c gi l cc nibble. Nibble cha cc bt trng s ln gi l nibble bc cao, v nibble cha cc bit trng s nh c gi l nibble bc thp.

    3.2.1 Cc h thng c s

    Trong cc h thng biu din s hin nay u c biu din dng tng qut l tng ly tha theo c s, v c phn loi theo gi tr c s. Mt cch tng qut mt h biu din c s b v a l mt s nguyn nm trong khong gi tr c s b dc biu din nh sau:

    A = anbn+ an-1bn-1+ + a0 =

    n

    oibiai. (1.1)

    V d nh c s binary( nh phn), c s decimal (thp phn), c s Hexaadecimal, c s 8 Octal (bt phn)

    V d v biu din cc gi tr trong cc h c s khc nhau:

    243.5110 = 2102 + 4 101 + 3100 +5104 +110-2

    2123 = 232 + 131 +230 = 2310

    101102 = 124 + 023 + 122 + 121 + 020 = 2210

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    Hai loi c s biu din thng dng nht hin nay cho cc h thng x l s l c s thp phn v c s mi su.

    3.2.2 S nguyn

    Trong biu din s c du phn bit s dng v s m ngi ta s dng bit trng s ln nht quy c lm bit du v cc bt cn li c s dng biu din gi tr ln ca s. V d mt t 8 bt c biu din gi tr -1 s c dng nh phn l 10000001, v gi tr +1 s c dng 00000001. Nh vy vi mt t 8 bit c th biu din c cc s trong phm vi t -127 n +127. Mt cch tng qut mt t N bit s biu din c -2(N-1)-1 n +2(N-1)-1.

    Ch khi thc hin cng hai s c du:

    Nu hai s cng du th thc hin php cng phn biu din gi tr v s dng bit cng du vi hai s .

    Nu hai s khc du th kt qu s nhn du ca ton t ln hn, v thc hin php tr gia tan t c gi tr ln hn vi ton t b hn.

    V d 1: Cng hai s c du 010011112 v 001000112.

    1 1 1 1 1 carries

    0 1 0 0 1 1 1 1 (79)

    0+ 0 1 0 0 0 1 1 +(35)

    0 1 1 1 0 0 1 0 (114)

    V d 2: Cng hai s c du 010011112 v 011000112

    Nh cui cng 1 1 1 1 1 carries

    Trn 0 1 0 0 1 1 1 1 (79)

    B nh 0 + 1 1 0 0 0 1 1 +(99)

    0 0 1 1 0 0 1 0 (50)

    V d 3 : tr hai s c du 010011112 v 011000112

    0 1 1 2 borrows

    0 1 1 0 0 0 1 1 (99)

    0 - 1 0 0 1 1 1 1 -(79)

    0 0 0 1 0 1 0 0 20

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    V d 4 : cng hai s khc du 100100112 v 000011012(+13)

    0 1 2 borrows

    1 0 0 1 0 0 1 1 (-19 )

    0 - 0 0 0 1 1 0 1 (+13)

    1 0 0 0 0 1 1 0 (-6)

    Thut ton thc hin php tnh c du:

    (1) Khai bo v xa cc bin lu gi tr v du chun b thc hin php tnh. (2) Kim tra du ca ton t th nht xem c phi s m khng . Nu l s m th thc hin b du v b ton t. Nu khng th chuyn qua thc hin bc 3. (3) Kim tra du ca ton t th 2 xem c phi s m khng. Nu l s m th thc hin b du v b ton t. Nu khng th chuyn sang thc hin bc 4. (4) Thc hin php nhn hoc chia vi cc ton t va x l. (5) Kim tra du. Nu zero th coi nh kt thc. Nu bng -1(0ffh) th thc hin php tnh b 2 vi kt qu thu c v kt thc. Hin nay ngi ta s dng hai quy c biu din s nguyn phn bit theo th t ca byte trng s trong mt t c biu din.

    Litte edian: byte trng s nh nht ng trc thun li cho php cng hoc tr v

    Big endian: byte trng s ln nht ng trc thuwnj li cho php nhn hoc chia.

    V d xt mt s nhi phn 4- byte

    Theo quy c biu din litte edian th th t a ch lu trong b nh s l:

    a ch c s +0= Byte 0

    a ch c s +1= Byte 1

    a ch c s +2= Byte 2

    a ch c s +3= Byte 3

    V theo quy c biu din s big edian s l:

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    a ch c s +0= Byte 3

    a ch c s +1= Byte 2

    a ch c s +2= Byte 1

    a ch c s +3= Byte 0

    3.2.3 S du phy tnh

    Chng ta c th s dng mt k hiu du chm o biu din mt s thc. Du chm o c s dng trong t d liu dung phn bit v ngn cch gia phn biu din gi tr nguyn ca d liu v mt phn l thp phn. V d v mt t 8 bit biu din s du phy ng c ch ra nh trong hnh 3.1. Vi cch biu din ny, gi tr thc ca s c tnh nh sau:

    N = a4 24 + a3 23 + a2 22 +a1 21 + a020 +a-1 2-1 +a-2 2-2 +a-32-3

    =0. 24 + 1.23 + 0.22 + 1.21 +1.20 +1.2-1 +0.2-2+ 1.2-3

    = 8+2+1+1/2+1/8

    =11.625

    Hnh 3.1 : nh dng biu din s du phy tnh 8 bit

    Nhc im ca phng php biu din s du phy tnh l vng biu din s nguyn b hn ch bi du phy tnh c gn c nh. iu ny d xy ra hin tng trn s khi thc hin cc php nhn hai s ln.

    3.2.4 S du phy ng

    Phng php biu din s chnh xc v linh hot c s dng rng ri hin nay l h thng biu din s du phy ng. y cng l mt phng php biu din s khoa hc bao gm 2 phn: phn biu din lu tr s mantissa v mt phn lu tr biu din s exponent. V d trong h c s thp phn, mt s nguyn bng 5 c biu din hoc l 0.5101, 5010-1 hoc 0.0510-2,trong my tnh s hoc h thng s ni chung, cc s du phy ng nh phn thng c biu din dng :

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    N= M.2E (1.2)

    Trong M l phn gi tr s mantissa, E l phn ly tha ca s N. M thng l cc gi tr l m phn thp phn ca n thng nm trong khong 0.5 M 1.

    Hnh 3.2 m t biu din mt s du phy ng ca t 8 bit gm 5 bit biu din phn s c ngha mantissa, v 3 bit biu din phn ly tha. V cc mantissa v ly tha u c th nhn cc gi tr m v vy cc bt u tin ca cc phn gi tr u c th c s dng biu din du khi cn thit

    Hnh 3.2: Biu din du phy ng 8 bit

    Trong mt s VXL,VK do rng t nh phn nh nn c th s dng 2 t biu din mt s du phy ng. Mt t s dng biu din gi tr mantissa, v mt phn biu din gi tr exponent.

    Nu phn mantissa c chun ha thnh mt s l c gi tr trong khong

    0.5 M1 th bt u tin sau bit du thng l 1v s c mt du phy nh phn n ngay sau bit du.

    Phn biu bin exponent E s quyt nh v tr ca du phy ng s dch sang tri (E>0) hay sang phi (E

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    Nmax= (1-2-m-1)2(21e -1)

    V s dng nh nht c th biu din l:

    Nmin= 0.5. 2 ( 21e -1)

    Theo tiu chun IEEE 754 v 854 c hai nh dng chnh cho s du phy ng l s thc di (long) v s thc ngn( short) chng khc nhau v chiu di biu din v ln lu tr yu cu. Theo chun ny, s thc di c nh dng 8 byte bao gm 1 bt du , 11 bit exponent v 53 bit lu gi tr s c ngha. Mt s thc ngn c nh dng 4 byte bao gm 1 bit du ,8 bit ly tha v 24 bit lu gi tr s c ngha. Mt s thc ngn c th biu din v x l c s c gi tr nm trong di 1038 to 10-38 v s thc di c th biu din v x l c s c gi tr thuc di 10308 to 10-308. biu din mt gi tr tng ng nh vy bng s du phy tnh th cn ti 256 bit hay 32 byte d liu.

    3.2.5 Mt s php tnh c bn

    Thc hin php nhn

    V trong cc VK nhng thng khng h tr cc php nhn nhiu byte. Cng vic ny phi c thc hin bi ngi pht trin chng trnh v th hin di dng mt thut ton da trn cc php ton c sn p dng cho s nh phn l cng , tr v dch. c mt s hiu bit r rng hn v thut ton thc hin php nhn , chng ta xt mt v d v mt php tnh nhn hai s nh phn tng qut nh sau:

    A= an .2n ++a1.21 +a0 .20

    B= bn .2n ++b1.21 +b0 .20

    bn .(A) .2n ++b1 .(A).21 +b0 .(A).20

    Nguyn l thc hin php nhn cng ging nh ta thc hin php nhn hai a thc. Trong trng hp nhn hai s nh phn th mi phn t l mt bit, byte hoc t v d c th vi hai s nh phn 4 bit ta thu c php nhn thc hin nh sau:

    a3. 23+ a2. 22+a1. 21+a0. 20

    b3. 23+ b2. 22+b1. 21+b0. 20

    a3.b0. 23+a2.b0. 22+a1. b0 21+a0.b0. 20

    a3.b1. 24+ a2.b1. 23+a1.b1 22+a0.b1. 21

    a3.b2. 25+ a2.b2. 24+a1 .b2 23+a0.b2. 22

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    a3.b3. 26+ a2.b3. 25+ a1.b3 .24+a0.b3. 23

    Thut ton thc hin php nhn 32 bit theo trnh t sau:

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

    0. A 1100(12)

    B 1101(13)

    Counter 100(4)

    Product 0

    1. A 11000(24)

    B 0110(6)

    Counter 011(3)

    Product 1100(12)

    2. A 110000(48)

    B 0011(3)

    Counter 010(2)

    Product 1100(12)

    3. A 1100000(96)

    B 0001(1)

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    Counter 001(1)

    Product 111100(60)

    4. A 11000000(192)

    B 0001(1)

    Counter 000(0)

    Product 10011100(156)

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

    Thc thi php chia

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

    ax = a

    nax

    i vi php chia nh phn th n s c chn l mt s ly tha ca 2 v phi ln hn a. Thut ton thc hin php chia c th c thc thi bi php dch, cng v tr nh sau:

    (1) Np bin lu gi tr thng s bng gi tr ca s b chia,s bc dch cn thc hin bng s bt lu s b chia. (2) Dch tri bin lu gi tr thng s vo phn bin lu gi tr d ca php chia.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

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

    I=0; quotient =0 ;

    If (divisior==0 goto error;

    While (dividend > divisor) divisor=1;

    While (I !=0) {

    Quotient

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

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

    Hnh 3-3: Thc hin php chia

    3.3 Tp lnh

    3.3.1 Cu trc tp lnh CISC v RISC

    Hu ht cc vi iu khin v VXL nhng c cu trc c pht trin da theo kin trc my tnh tp lnh phc hp CISC (Complex Instruction Set Computer). CISC

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    4

    l mt cu trc x l cc lnh phc hp, tc l mt lnh phc hp s bao gm mt vi lnh n. Theo nguyn l ny c th gim bt c thi gian dng truy cp v c m chng trnh t b nh. iu ny rt c ngha vi cc kin trc thit k x l tnh ton theo kiu tun t. L do cho s ra i ca tp lnh phc hp nhm gim thiu dung lng b nh cn thit lu gi chng trnh thc hin, v s gim c gi thnh v b nh cn cung cp cho CPU. Cc lnh cng gn v phc hp th s cn cng t khng gian b nh chng trnh. Kin trc tp lnh phc hp s dng cc lnh vi di bin i ty thuc vo phc hp ca cc lnh t n gin n phc tp. Trong s c mt s lng ln cc lnh c th truy nhp trc tip b nh. V vy vi kin trc tp lnh phc hp chng ta s c c mt tp lnh a dng phc hp, gn, vi di lnh thay i v dn n chu k thc hin lnh cng thay i ty theo phc hp trong tng lnh. Mt vi lnh phc hp, c bit l cc lnh truy nhp b nh cn ti vi chc chu k thc hin. Trong mt s trng hp cc nh thit k VXL thy rng cn phi gim chu k nhp lnh c thi gian cho cc lnh hon thnh iu ny cng dn n thi gian thc hin b ko di hn.

    Mt s VK c pht trin theo cu trc my tnh tp lnh rt gn RISC (Reduced Instruction Set Computer). RISC ph hp vi cc kin trc x l cc lnh n. Thut ng rt gn ( reduced ) i khi b hiu khng tht chnh xc theo ngha en ca n thc cht tng gc xut pht t kh nng cung cp mt tp lnh ti thiu thc hin tt c cc hot ng chnh nh: chuyn d liu, cc hot ng ALU v r nhnh iu khin chng trnh. Ch c cc lnh np (load), lu tr (store) l c php truy nhp trc tip b nh.

    B 1: So snh c im ca CISC v RISC

    CISC RISC

    Bt k lnh no cng c th tham chiu ti b nh

    Ch c cc lnh Np (load), hoc Lu tr (store) l c th tham chiu ti b nh

    Tn ti nhiu lnh v kiu a ch Tn ti t lnh v kiu a ch

    Khun dng lnh a dng Khun dng lnh c nh

    Ch c mt tp thanh ghi C nhiu tp thanh ghi

    Cc lnh thc hin trong nhiu nhp chu k Cc lnh thc hin trong mt nhp chu k

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    C mt chng trnh nh thng dch lnh

    Lnh c thc hin trc tip ngay bi phn cng

    Chng trnh thng dch lnh phc tp Chng trnh bin dch m ngun phc tp

    Khng h tr c ch pipeline H tr c ch pipeline

    Kch thc m chng trnh nh gn Kch thc m chng trnh ln

    3.3.2 nh dng lnh

    Hnh 3-4:nh dng lnh MIPS

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    Hnh 3-5: Phn loi cc php tnh thc thi lnh

    3.3.3 Cc kiu truyn i ch ton t lnh Cc kiu nh/truyn a ch cho php chng ta ch ra/truyn ton t tham gia trong cc lnh thc thi. Kiu a ch c th ch ra l mt hng s, mt thanh ghi hoc mt khu vc c th trong b nh. Mt s kiu nh a ch cho php s dng a ch ngn v mt s loi th cho php chng ta xc nh khu vc cha ton t lnh v thng c gi l a ch hiu dng ca ton t v thng l ng. Chng ta s xt mt s loi hnh nh a ch c bn hin ang c s dng rng ri trong c ch thc hin 5 lnh.

    nh a ch tc th (Immediate Addressing) Phng php ny cho php truyn gi tr ton t lnh mt cch tc th nh mt phn ca cu lnh c thc thi.V d nu s dng kiu nh a ch tc thi cho cu lnh Load 0x0008 th gi tr 0x0008 s c np ngay vo AC. Trng bit thng dng cha ton t lnh s cha gi tr thc ca ton t ch khng phi a ch ca ton t cn truyn cho lnh thc thi. Kiu a ch tc thi cho php thc thi lnh rt nhanh v khng phi thc hin truy xut b nh np gi tr ton t m gi tr ton t c gp nh mt phn trong cu lnh v c th thc thin gay. V ton t tham gia nh mt phn c nh ca chng trnh v vy kiu nh a ch ny ch ph hp vi cc ton t hng v bit trc ti thi im thc hin chng trnh, hay xc nh ti thi im bin dch chng trnh.

    nh a ch trc tip (Direct Addressing)

    Phng php ny cho php truyn ton t lnh thng qua a ch trc tip cha ton t trong b nh. V d nu s dng c ch nh a ch ton t trc tip th trong cu lnh Load 00008 s c hiu l d liu hay ton t c np trong cu

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    lnh ny nm trong b nh ti a ch 00008. C ch nh a ch trc tip cng thuc loi hnh kh nhanh mc d khng nhanh c nh c ch truyn a ch tc thi nhng mm do cao hn v a ch ca ton t khng nm trong phn m lnh v gi tr c th thay i trong qu trnh thc thi chng trnh.

    nh a ch thanh ghi (Register Addressing)

    Trong cch nh a ch v truyn ton t ny th ton t khng nm trong b nh nh trng hp nh a ch trc tip m nm ti chnh trong thanh ghi. Khi ton t c np vo thanh ghi th vic thc hin c th rt nhanh v tc truy xut thanh ghi nhanh hn so vi b nh. Nhng s lng thanh ghi ch c hn v phi c chia s trong qu trnh thc hin v vy cc ton t phi c np vo thanh ghi trc khi n c thc thi.

    nh a ch gin tip (Indirect Addressing)

    Trong phng php truyn ton t ny, trng ton t trong cu lnh c s dng tham chiu ti mt con tr nm trong b nh tr ti a ch hiu dng ca ton t. C ch truyn ny c th ni l mm do nht so vi cc c ch truyn a ch khc trong qu trnh thc thi chng trnh. V d nu p dng c ch truyn a ch gin tip trong cu lnh Load 00008 th s c hiu l gi tr d liu c a ch ti Load 00008 thc cht l cha i ch hiu dng ca ton t cn truyn cho cu lnh. Gi thit ti v tr nh 00008 ang cha gi tr 002A0 th 002A0 chnh l gi tr thc ca ton t s c np vo AC. Mt bin th khc cng c th thc hin theo c ch ny l truyn tham chiu ti con tr nm trong khu vc thanh ghi. C ch ny cn c bit ti vi tn gi l nh a ch gin tip thanh ghi. V d mt cu lnh Load R1 s dng c ch truyn a ch gin tip thanh ghi th chng ta c th d dng thng dch c ton t truyn trong cu lnh ny c a ch hiu dng nm trong thanh ghi R1

    nh a ch c s v ch s (Index and Base Addressing)

    Trong c ch ny ngi ta s dng mt thanh ghi cha offset( chnh lch tng i) m s c cng vi ton t to ra mt a ch hiu dng. V d nu ton t X ca lnh Load X c nh a ch theo c ch a ch ch s v thanh ghiR1 l thanh ghi cha a ch s v c gi tr l 1 th a ch hiu dng ca ton t thc cht s l X +1. C ch nh a ch c s cng ging nh vy loi tr mt iu l thay v s dng thanh ghi a ch offset th y s dng thanh ghi a ch c s. V mt l thuyt s khc nhau gia hai c ch tham chiu a ch ny l chng c s dng th no ch khng phi cc ton t c tnh th no. Mt thanh ghi ch s s lu ch s m s c s dng nh mt offset so vi a ch c a ra trong trng a ch ca lnh thc thi. Thanh ghi c s lu mt a ch c s v trng a ch

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    trong cu lnh thc thi s lu gi tr dch chuyn t a ch ny. Hai c ch tham chiu a ch ny rt hu ch tng vic truy xut vi cc phn t kiu mng. Ty thuc vo thit kt tp lnh cc thanh ghi mc ch chung thng hay c s dng trong c ch nh a ch ny.

    nh a ch ngn xp (Stack Addressing)

    Trong c ch truyn a ch ny th ton t nhn c t nh ngn xp. Thay v s dng thanh ghi mc ch chung hay nh kin trc da trn ngn xp lu cc ton t trn nh ca ngn xp, v c th truy xut vi CPU. Kin trc ny khng ch hiu qa trong vic lu gi cc gi tr trung gian trong cc php tnh phc tp m cn cung cp mt phng php hiu qu trong vic truyn cc tham s trong cc li gi hm cng nh lu ct cc cu trc d liu cc b v nh ngha ra phm vi tn ti ca cc bin v cc hm con. Trong cc cu trc lnh truyn ton t da trn ngn xp hu ht cc lnh ch bao gm phn m, tuy nhin cng c mt s lnh c bit ch c mt ton t v d nh lnh ct vo(push) hoc ly ra (pop) t ngn xp. Ch c mt s lnh yu cu hai ton t th hai gi tr cha trong hai nh trn nh ngn xp s c s dng. V d nh lnh Add, CPU ly ra khi ngn xp hai phn t nm trn nh ri thc hin php cng v sau lu kt qu tr li nh ngn xp.

    Cc cch nh a ch khc

    C rt nhiu bin th to bi cc c ch nh a ch gii thiu trn. l s t hp trong vic to ra hoc xc nh a ch hiu dng ca ton t truyn cho lnh thc thi. V d nh c ch nh a ch ch s gin tip s dng ng thi c hai c ch nh a ch ng thi, tng t nh vy cng c c ch nh a ch c s offsetCng c mt s c ch t ng tng hoc gim thanh ghi s dng trong lnh ang thc thi nh vy m c th gim c ln ca m chng trnh c bit ph hp cho cc ng dng Nhng.

    3.3.4 Nguyn l thc hin PIPELINE

    Vi x l c th tc thi cc lnh vi mt tc rt nhanh. RISC s dng k thut pipeline tng cng tc x l cc lnh ng thi nh vo kh nng thc hin xp chng cun chiu lin tc cc lnh theo cc phn on thc hin lnh. V d mt lnh c th c c t b nh trong khi mt lnh khc ang c gii m chun b a vo x l v mt lnh khc th ang c thc hin. Cng c mt s VK c tn gi l my tnh tp lnh c bit SISC ( Specific Instruction Set Computer) v chng c pht trin da trn tp lnh c thit k c chng cho mc ch iu khin.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    Hnh 3.6 : Nguyn l thc hin pipeline

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

    Hnh 3-7: qu trnh thc hin nguyn l pipeline

    (1) Tr lnh (Instrution Fetch): Thc hin tr ti lnh thc hin bng cch c a ch lnh t thanh ghi con tr lnh (PC), c lnh ra t b nh chng trnh v tnh ton ri np gi tr mi vo trong thanh ghi con tr lnh tr ti lnh s thc thi tip theo.

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    (2) Gii m lnh(Decode): Thc hin thng dch v chuyn i m lnh thnh dng m ALU c th hiu v chun b thc thi. Qu trnh ny thc cht l qu trinh c v chuyn i ni dung trong cc thanh ghi chng trnh.

    (3) Thc thi lnh (Excute): ALU thc thi lnh va c gii m. (4) Truy nhp b nh d liu( Memory): c ra hoc vit vo b nh d liu nu

    lnh thc hin c nhu cu ny. (5) Vit tr li (Write back): Hon thnh v cp nht ni dung cc thanh ghi. Chng ta cn phn bit c ch pipeline v c ch thc thi song song mc d c hai u nhm p ng yu cu thc thi canh tranh v tng tc thc thi. C ch Pipeline gii quyt vn cnh tranh v tng tc thc hin bng cch chia nh tnh ton thnh cc bc nh trong khi c ch song song s s dng nhiu ngun ti nguyn c lp thc hin.

    3.3.5 Harzard

    Trong c ch thc hin lnh pipeline th hin r c u im trong vic thc

    y hiu sut thc hin lnh, tuy nhin c th xy ra hin tng thc thi sai do s thiu

    ng b v ph thuc ln nhau gia cc lnh trong nhm thc thi pipeline.

    Hazard d liu

    Hin tng harzard xy ra khi c s ph thuc ln gia cc lnh nm trong

    khong xp chng thc hin cun chiu theo nguyn l pipeline. iu ny c th d

    dng hnh dung khi hai hoc nhiu lnh thc hin xp chng khi c nhu cu c gi tr

    ca cng mt ton t. Do s ph thuc nh vy nn khi vit chng trnh chng ta

    phi kim sot c th t chng trnh m cc lnh s c thc hin nh th no.

    Mc ch ca vic thc thi l lm sao h tr c c ch thc hin song song v

    tng c hiu sut thc thi chng trnh. Vic pht hin v trnh c hin tng

    hazard l cn thit m bo chng trnh c thc thi ng.Tu theo nguyn nhn

    gy ra hazard ngi ta phn ra 3 loi hnh chnh tu thuc vo th t c hoc vit

    truy nhp lnh ca cc nhm lnh ph thuc nhau trong c ch thc hin song song.

    Xt hai lnh i v j trong lnh i c thc hin trc lnh j trong chng

    trnh. Hin tng Hazard d liu c th xy ra nh sau:

    RAW (read after write): c sau khi vit

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    Khi lnh i v j u cn s dng v trao i thng tin vi cng mt gi tr

    nh, trong lnh i cn phi thc hin xong v cp nht gi tr vo nh ri

    lnh j mi c th c v s dng. Nu lnh i cha thc hin xong m lnh j c

    gi tr nh th s xy ra hin tng c gi l hazard d liu. Lnh j c

    thng tin t mt nh trc khi lnh i kp vit vo v vy lnh j s ch c c gi

    tr c ch khng phi gi tr mi cn phi s dng. Trong c ch thc hin pipeline

    5 phn on s gp phi hin tng hzard d liu khi c mt lnh np (load) theo

    sau mt lnh ALU s nguyn v s dng trc tip kt qu np.

    WAW (write after write): Vit sau khi vit

    Lnh j vit vo mt ton t trc khi lnh i vit vo. M yu cu thc thi

    ng chng trnh l lnh i phi vit trc lnh j v gi tr cui cng lu trong ton

    t phi do lnh j a ra ch khng phi lnh i. Hin tng ny c gi l hazard

    d liu khi c s ph thuc u ra v nhiu lnh cng c nhu cu truy nhp vit vo

    cng mt bin hay mt nh.

    WAR (write after read): Vit sau khi c

    j vit vo ton t ch trc khi n c c bi lnh i do lnh I s nhn

    c gi tr sai. Hin tng Hazard ny xut hin khi c s ph thuc ton hng

    trong cc php tnh.

    Hazard do s ph thuc iu khin

    Kiu ph thuc cng kh ph bin l do cu trc iu khin. S ph thuc

    iu khin c quyt nh trnh t thc thi ca mt lnh i theo lnh r nhnh m

    bo sao cho n c thc thi ng nh th t mong mun. Tt c cc lnh ngoi tr

    khi c bn u tin ca chng trnh u c iu khin theo cu trc lnh r

    nhnh v phi c m bo thc thi ng theo th t. Mt v d n gin nht

    v s ph thuc iu khin l s ph thuc iu khin theo cu trc ifthen

    Phn thc thi trong phn then s ph thuc cu lnh iu kin if. V d on

    m chng trnh minh ha nh sau:

  • Faculty of Electronics & Electrical Engineering Embedded Systems

    This Document is Prepared by Dr. Bui Trung Thanh

    5

    Cu lnh c iu khin ph thuc vo p1 v S2 c iu khin ph thuc

    p2 ch khng phi p1.

    Ni chung, c 2 rng buc c th gi thit trong s ph thuc iu khin:

    (1) Mt lnh thc hin ph c quyt nh bi mt lnh iu khin r nhnh

    th khng th c php chuyn ln trc cu lnh thc hin kim tra iu kin.

    V d chng ta khng th a lnh t phn then ln trc phn if.

    (2) Mt lnh thc hin c lp v khng ph thuc vo lnh r nhnh khng th

    c chuyn vo khu vc sau phn thc hin ca nhnh thc hin ph thuc. V d

    khng th a mt lnh ln trc phn lnh if v chuyn n vo trong phn then. S

    ph thuc iu khin phi c m bo bi 2 thuc tnh trong c ch pipeline n

    gin. Th nht, cc lnh thc hin trong chng trnh phi ng theo trnh t

    c iu khin ca n. Trnh t ny phi c m bo rng mt lnh m phi

    thc thi trc mt nhnh iu khin th phi thc hin trc nhnh . Th hai, vic

    pht hin ra s xung t v iu khin (control hazard) s m bo rng mt lnh

    m c iu khin ph thuc vo mt nhnh th khng c thc hin chng no

    hng thc hin ca nhnh r rng. Bo m c s ph thuc iu khin l

    cn thit v cng l mt cch n gin m bo ng trnh t thc hin chng

    trnh. S ph thuc iu khin khng phi l mt s hn ch c bn v kh nng

    thc thi chng trnh. Chng ta c th sn sng thc thi thm nhng lnh m l ra

    khng nn c thc thi nu chng khng gy nh hng g n tnh ng n ca

    chng trnh, nu khng s xung t gy ra bi s ph thuc iu khin c th xy

    ra. S ph thuc v iu khin khng phi l mt thuc tnh kch tnh bt buc phi

  • Faculty of Electronics & Electrical Engineering