You are on page 1of 95

Msc. V Vn Chn ThS.

Nguyn Hng Vn KS Phm Hu Ti

Gio trnh

KIN TRC MY TNH


c bin son trong khun kh d n ASVIET002CNTT Tng cng hiu qu o to v nng lc t o to ca sinh vin khoa Cng ngh Thng tin - i hc Cn th

i hc Cn Th - 12/2003

Kin trc my tnh

Mc lc

MC LC
***** MC LC ..........................................................................................................................2 GII THIU TNG QUAN.............................................................................................5 GIO TRNH KIN TRC MY TNH .......................................................................5 MC CH ......................................................................................................................5 YU CU .........................................................................................................................5 NI DUNG ......................................................................................................................6 KIN THC TIN QUYT ..............................................................................................6 TI LIU THAM KHO ..................................................................................................6 PHNG PHP HC TP ............................................................................................6 CHNG I: I CNG ...............................................................................................7 I.1 CC TH H MY TNH.........................................................................................7 a. Th h u tin (1946-1957)................................................................................7 b. Th h th hai (1958-1964) .................................................................................8 c. Th h th ba (1965-1971) ..................................................................................8 d. Th h th t (1972-????) ...................................................................................8 e. Khuynh hng hin ti ........................................................................................8 I.2 PHN LOI MY TNH...........................................................................................9 I.3 THNH QU CA MY TNH .............................................................................10 QUI LUT MOORE V S PHT TRIN CA MY TNH ...................................10 I.4- THNG TIN V S M HO THNG TIN........................................................12 I.4.1 - Khi nim thng tin.........................................................................................12 I.4.2 - Lng thng tin v s m ho thng tin .........................................................13 I.4.3 - Biu din cc s: .............................................................................................13 I.4.4 S nguyn c du..............................................................................................16 I.4.5 - Cch biu din s vi du chm ng:...........................................................17 I.4.6 - Biu din cc s thp phn .............................................................................19 I.4.7 - Biu din cc k t ..........................................................................................19 CU HI N TP V BI TP CHNG I ............................................................22 CHNG II: KIN TRC PHN MM B X L.................................................23 II.1 - THNH PHN C BN CA MT MY TNH..............................................23 II.2 - NH NGHA KIN TRC MY TNH.............................................................25 II.3 - CC KIU THI HNH MT LNH ...................................................................25 II.4 - KIU KIN TRC THANH GHI A DNG ....................................................27 II.5 - TP LNH............................................................................................................27 II.5.1 - Gn tr ............................................................................................................28 II.5.2 - Lnh c iu kin ...........................................................................................29 II.5.3 - Vng lp.........................................................................................................30 II.5.4 - Thm nhp b nh ngn xp..........................................................................31 II.5.5 - Cc th tc .....................................................................................................31 II.6 - CC KIU NH V ............................................................................................33

Kin trc my tnh

Mc lc

II.7 - KIU CA TON HNG V CHIU DI CA TON HNG ......................34 II.8 - TC V M LNH THC HIN .......................................................................34 II.9 - KIN TRC RISC ( REDUCED INSTRUCTION SET COMPUTER) ...........................35 II.10 - KIU NH V TRONG CC B X L RISC...............................................37 II.10.1 - Kiu nh v thanh ghi..................................................................................37 II.10.2 - Kiu nh v tc th.......................................................................................37 II.10.3 - Kiu nh v trc tip ...................................................................................38 II.10.4 - Kiu nh v gin tip bng thanh ghi + di ..........................................38 II.10.5 - Kiu nh v t tng .....................................................................................38 II.11 - NGN NG CP CAO V NGN NG MY ..............................................39 CU HI N TP V BI TP CHNG II ..........................................................41 CHNG III: T CHC B X L ..........................................................................42 III.1. NG I CA D LIU.................................................................................42 III.2. B IU KHIN .................................................................................................44 III.2.1. B iu khin mch in t ...........................................................................44 III.2.2. B iu khin vi chng trnh: ......................................................................45 III.3. DIN TIN THI HNH LNH M MY ..........................................................46 III.4. NGT QUNG (INTERRUPT)...........................................................................47 III.5. K THUT NG DN (PIPELINE)...................................................................48 III.6. KH KHN TRONG K THUT NG DN ...................................................49 III.7. SIU NG DN...................................................................................................51 III.8. SIU V HNG (SUPERSCALAR)................................................................52 III.9. MY TNH C LNH THT DI VLIW (VERY LONG INSTRUCTION WORD)..........................................................................................................................53 III.10. MY TNH VECT ...........................................................................................53 III.11. MY TNH SONG SONG .................................................................................53 III.12 KIN TRC IA-64 ..............................................................................................59 a) c trng ca kin trc IA-64: .........................................................................59 b) nh dng lnh trong kin trc IA-64 ...............................................................60 CU HI N TP V BI TP CHNG III.........................................................62 CHNG IV: CC CP B NH ...............................................................................63 IV.1. CC LOI B NH ............................................................................................63 IV.2. CC CP B NH ..............................................................................................65 IV.3. XC SUT TRUY CP D LIU TRONG B NH TRONG ........................66 IV.4. VN HNH CA CACHE..................................................................................67 IV.5. HIU QU CA CACHE....................................................................................72 IV.6. CACHE DUY NHT HAY CACHE RING L .................................................73 IV.7. CC MC CACHE..............................................................................................73 IV.8. B NH TRONG.................................................................................................74 IV.9. B NH O.........................................................................................................75 IV.10. BO V CC TIN TRNH BNG CCH DNG B NH O...................79 CU HI N TP V BI TP CHNG IV .........................................................81 CHNG V: NHP - XUT..........................................................................................82

Kin trc my tnh

Mc lc

V.1. DN NHP ...........................................................................................................82 V.2. A T ..................................................................................................................82 V.3. A QUANG .........................................................................................................84 V.4. CC LOI TH NH ...........................................................................................86 V.5. BNG T ..............................................................................................................86 V.6. BUS NI NGOI VI VO B X L V B NH TRONG ...........................87 V.7. CC CHUN V BUS..........................................................................................89 V.8. GIAO DIN GIA B X L VI CC B PHN VO RA ..........................90 V.9. MT S BIN PHP AN TON D LIU TRONG VIC LU TR THNG TIN TRONG A T ....................................................................................................91 CU HI N TP V BI TP CHNG V...........................................................95

Kin trc my tnh

Gii thiu tng quan

GII THIU TNG QUAN GIO TRNH KIN TRC MY TNH


MC CH
Gio trnh ny nhm trang b cho ngi c cc ni dung ch yu sau: Lch s pht trin ca my tnh, cc th h my tnh v cch phn loi my tnh. Cch bin i c bn ca h thng s, cc bng m thng dng c dng biu din cc k t. Gii thiu cc thnh phn c bn ca mt h thng my tnh, khi nim v kin trc my tnh, tp lnh. Cc kiu kin trc my tnh: m t kin trc, cc kiu nh v. Gii thiu cu trc ca b x l trung tm: t chc, chc nng v nguyn l hot ng ca cc b phn bn trong b x l. M t din tin thi hnh mt lnh m my v mt s k thut x l thng tin: ng dn, siu ng dn, siu v hng, my tnh c lnh tht di, my tnh vc-t, x l song song v kin trc IA-64. Gii thiu chc nng v nguyn l hot ng ca cc cp b nh my tnh. Gii thiu mt s thit b lu tr ngoi nh: a t, a quang, th nh, bng t. H thng kt ni c bn cc b phn bn trong my tnh. Cch giao tip gia cc ngoi vi v b x l. Phng php an ton d liu trn thit b lu tr ngoi.

YU CU
Sau khi hc xong mn hc ny, ngi hc c trang b cc kin thc v: Sinh vin c trang b kin thc v lch s pht trin ca my tnh, cc th h my tnh v cch phn loi my tnh. Nm vng cc khi nim c bn lin quan n cc h thng s c dng trong my tnh. Thnh tho cc thao tc bin i s gia cc h thng s. Sinh vin c kin thc v cc thnh phn c bn ca mt h thng my tnh, khi nim v kin trc my tnh, tp lnh. Nm vng cc kin thc v cc kiu kin trc my tnh, cc kiu nh v c dng trong kin trc, loi v chiu di ca ton hng, tc v m my tnh c th thc hin. Phn bit c hai loi kin trc: CISC (Complex Instruction Set Computer), RISC (Reduced Instruction Set Computer). Cc kin thc c bn v kin trc RISC, tng qut tp lnh ca cc kin trc my tnh. Sinh vin phi nm vng cu trc ca b x l trung tm v din tin thi hnh mt lnh m my, v y l c s hiu c cc hot ng x l lnh trong cc k thut x l thng tin trong my tnh. Sinh vin phi hiu c cc cp b nh v cch thc vn hnh ca cc loi b nh c gii thiu c th nh gi c hiu nng hot ng ca cc loi b nh. Sinh vin phi nm vng cc kin thc v h thng kt ni c bn cc b phn bn trong my tnh, cch giao tip gia cc ngoi vi v b x l. Bit c cu to v cc vn hnh ca cc loi thit b lu tr ngoi v phng php an ton d liu trn a cng.

Kin trc my tnh

Gii thiu tng quan

NI DUNG
Chng I: I CNG Lch s pht trin ca my tnh, thng tin v s m ho thng tin. Chng II: KIN TRC PHN MM B X L Gii thiu cc thnh phn c bn ca mt h thng my tnh, kin trc my tnh, tp lnh v cc kiu nh v c bn. Khi nim v kin trc RISC v CISC, ngn ng cp cao v ngn ng my. Chng III: T CHC B X L Gii thiu cu trc ca b x l trung tm: t chc, chc nng v nguyn l hot ng ca cc b phn bn trong b x l. Mt s k thut x l thng tin. Chng IV: CC CP B NH Gii thiu chc nng v nguyn l hot ng ca cc cp b nh my tnh. Chng V: NHP - XUT Thit b ngoi vi: cc thnh phn v h thng lin kt. Phng php an ton d liu trn thit b lu tr ngoi

KIN THC TIN QUYT


K THUT S (TH 313)

TI LIU THAM KHO


1. Kin trc my tnh V Vn Chn, i hc Cn Th, 1997. 2. Computer Architecture: A Quantitative Approach, A. Patterson and J. Hennesy, Morgan Kaufmann Publishers, 2nd Edition, 1996. 3. Computer Otganization and Architecture: Designing for Performance, Sixth Edtion, William Stallings, Prentice Hall. 4. Principles of Computer Architecture, Miles Murdocca and Vincent Heuring (internet- http://iiusaedu.com). 5. Computer Organization and Design: The Hardware/Software Interface, Patterson and Hennessy, Second Edition (internet-http://engronline.ee.memphis.edu).

PHNG PHP HC TP
Do gio trnh ch mang tnh cht gii thiu tng qut nn ngi c cn c thm cc ti liu gii thiu v kin trc c th ca cc b x l. Ngi c cn tm hiu thm cc hnh nh v v d minh ho trong cc ti liu lin quan thy c su hn vn c t ra.

Kin trc my tnh

Chng I: i cng

Chng I: I CNG
Mc ch: Gii thiu lch s pht trin ca my tnh, cc th h my tnh v cch phn loi my tnh. Gii thiu cc cch bin i c bn ca h thng s, cc bng m thng dng c dng biu din cc k t. Yu cu: Sinh vin c trang b kin thc v lch s pht trin ca my tnh, cc th h my tnh v cch phn loi my tnh. Nm vng cc khi nim c bn lin quan n cc h thng s c dng trong my tnh. Thnh tho cc thao tc bin i s gia cc h thng s.

I.1 CC TH H MY TNH
S pht trin ca my tnh c m t da trn s tin b ca cc cng ngh ch to cc linh kin c bn ca my tnh nh: b x l, b nh, cc ngoi vi,Ta c th ni my tnh in t s tri qua bn th h lin tip. Vic chuyn t th h trc sang th h sau c c trng bng mt s thay i c bn v cng ngh. a. Th h u tin (1946-1957)

Hnh 1.1: My tnh ENIAC ENIAC (Electronic Numerical Integrator and Computer) l my tnh in t s u tin do Gio s Mauchly v ngi hc tr Eckert ti i hc Pennsylvania thit k vo nm 1943 v c hon thnh vo nm 1946. y l mt my tnh khng l vi th tch di 20 mt, cao 2,8 mt v rng vi mt. ENIAC bao gm: 18.000 n in t, 1.500

Kin trc my tnh

Chng I: i cng

cng tc t ng, cn nng 30 tn, v tiu th 140KW gi. N c 20 thanh ghi 10 bit (tnh ton trn s thp phn). C kh nng thc hin 5.000 php ton cng trong mt giy. Cng vic lp trnh bng tay bng cch u ni cc u cm in v dng cc ngt in. Gio s ton hc John Von Neumann a ra tng thit k my tnh IAS (Princeton Institute for Advanced Studies): chng trnh c lu trong b nh, b iu khin s ly lnh v bin i gi tr ca d liu trong phn b nh, b lm ton v lun l (ALU: Arithmetic And Logic Unit) c iu khin tnh ton trn d liu nh phn, iu khin hot ng ca cc thit b vo ra. y l mt tng nn tng cho cc my tnh hin i ngy nay. My tnh ny cn c gi l my tnh Von Neumann. Vo nhng nm u ca thp nin 50, nhng my tnh thng mi u tin c a ra th trng: 48 h my UNIVAC I v 19 h my IBM 701 c bn ra. b. Th h th hai (1958-1964) Cng ty Bell pht minh ra transistor vo nm 1947 v do th h th hai ca my tnh c c trng bng s thay th cc n in t bng cc transistor lng cc. Tuy nhin, n cui thp nin 50, my tnh thng mi dng transistor mi xut hin trn th trng. Kch thc my tnh gim, r tin hn, tiu tn nng lng t hn. Vo thi im ny, mch in v b nh bng xuyn t c dng. Ngn ng cp cao xut hin (nh FORTRAN nm 1956, COBOL nm 1959, ALGOL nm 1960) v h iu hnh kiu tun t (Batch Processing) c dng. Trong h iu hnh ny, chng trnh ca ngi dng th nht c chy, xong n chng trnh ca ngi dng th hai v c th tip tc. c. Th h th ba (1965-1971) Th h th ba c nh du bng s xut hin ca cc mch kt (mch tch hp IC: Integrated Circuit). Cc mch kt tch hp mt thp (SSI: Small Scale Integration) c th cha vi chc linh kin v kt tch hp mt trung bnh (MSI: Medium Scale Integration) cha hng trm linh kin trn mch tch hp. Mch in nhiu lp xut hin, b nh bn dn bt u thay th b nh bng xuyn t. My tnh a chng trnh v h iu hnh chia thi gian c dng. d. Th h th t (1972-????) Th h th t c nh du bng cc IC c mt tch hp cao (LSI: Large Scale Integration) c th cha hng ngn linh kin. Cc IC mt tch hp rt cao (VLSI: Very Large Scale Integration) c th cha hn 10 ngn linh kin trn mch. Hin nay, cc chip VLSI cha hng triu linh kin. Vi s xut hin ca b vi x l (microprocessor) cha c phn thc hin v phn iu khin ca mt b x l, s pht trin ca cng ngh bn dn cc my vi tnh c ch to v khi u cho cc th h my tnh c nhn. Cc b nh bn dn, b nh cache, b nh o c dng rng ri. Cc k thut ci tin tc x l ca my tnh khng ngng c pht trin: k thut ng dn, k thut v hng, x l song song mc cao, e. Khuynh hng hin ti Vic chuyn t th h th t sang th h th 5 cn cha r rng. Ngi Nht v ang i tin phong trong cc chng trnh nghin cu cho ra i th h th 5 ca 8

Kin trc my tnh

Chng I: i cng

my tnh, th h ca nhng my tnh thng minh, da trn cc ngn ng tr tu nhn to nh LISP v PROLOG,... v nhng giao din ngi - my thng minh. n thi im ny, cc nghin cu cho ra cc sn phm bc u v gn y nht (2004) l s ra mt sn phm ngi my thng minh gn ging vi con ngi nht: ASIMO (Advanced Step Innovative Mobility: Bc chn tin tin ca i mi v chuyn ng). Vi hng trm nghn my mc in t ti tn t trong c th, ASIMO c th ln/xung cu thang mt cch uyn chuyn, nhn din ngi, cc c ch hnh ng, ging ni v p ng mt s mnh lnh ca con ngi. Thm ch, n c th bt chc c ng, gi tn ngi v cung cp thng tin ngay sau khi bn hi, rt gn gi v thn thin. Hin nay c nhiu cng ty, vin nghin cu ca Nht thu Asimo tip khch v hng dn khch tham quan nh: Vin Bo tng Khoa hc nng lng v i mi quc gia, hng IBM Nht Bn, Cng ty in lc Tokyo. Hng Honda bt u nghin cu ASIMO t nm 1986 da vo nguyn l chuyn ng bng hai chn. Cho ti nay, hng ch to c 50 robot ASIMO. Cc tin b lin tc v mt tch hp trong VLSI cho php thc hin cc mch vi x l ngy cng mnh (8 bit, 16 bit, 32 bit v 64 bit vi vic xut hin cc b x l RISC nm 1986 v cc b x l siu v hng nm 1990). Chnh cc b x l ny gip thc hin cc my tnh song song vi t vi b x l n vi ngn b x l. iu ny lm cc chuyn gia v kin trc my tnh tin on th h th 5 l th h cc my tnh x l song song. Th h 1 Nm 19461957 19581964 19651971 1972???? K thut n t Sn phm mi Hng sn xut v my tnh

in My tnh in t IBM 701. UNIVAC tung ra th trng Burroughs 6500, NCR, CDC 6600, Honeywell 50 hng mi: DEC PDP-11, Data general ,Nova

2 3 4

Transistors My tnh r tin Mach IC My tnh mini

LSI - VLSI My tnh c Apple II, IBM-PC, Appolo nhn v trm DN 300, Sun 2 lm vic

5 ??

????-???? X l song My tnh a x Sequent ? Thinking song l. a my tnh Machine Inc.? Honda, Casio Bng 1.1: Cc th h my tnh

I.2 PHN LOI MY TNH


Thng thng my tnh c phn loi theo tnh nng k thut v gi tin. a. Cc siu my tnh (Super Computer): l cc my tnh t tin nht v tnh nng k thut cao nht. Gi bn mt siu my tnh t vi triu USD. Cc siu my tnh thng l cc my tnh vect hay cc my tnh dng k thut v hng v c thit k tnh ton khoa hc, m phng cc hin tng. Cc siu my tnh c thit k vi k

Kin trc my tnh

Chng I: i cng

thut x l song song vi rt nhiu b x l (hng ngn n hng trm ngn b x l trong mt siu my tnh). b. Cc my tnh ln (Mainframe) l loi my tnh a dng. N c th dng cho cc ng dng qun l cng nh cc tnh ton khoa hc. Dng k thut x l song song v c h thng vo ra mnh. Gi mt my tnh ln c th t vi trm ngn USD n hng triu USD. c. My tnh mini (Minicomputer) l loi my c trung, gi mt my tnh mini c th t vi chc USD n vi trm ngn USD. d. My vi tnh (Microcomputer) l loi my tnh dng b vi x l, gi mt my vi tnh c th t vi trm USD n vi ngn USD.

I.3 THNH QU CA MY TNH QUI LUT MOORE V S PHT TRIN CA MY TNH


Hnh I-2 cho thy din bin ca thnh qu ti a ca my tnh. Thnh qu ny tng theo hm s m, tng trng cc my vi tnh l 35% mi nm, cn i vi cc loi my khc, tng trng l 20% mi nm. iu ny cho thy tnh nng cc my vi tnh vt qua cc loi my tnh khc vo u thp nin 90 . Super Computers Mainframes Mini Computers

1000 100 10 1 Micro Processor 0.1 1965 1970 1975 1980 1985 1990 1995 2000

Hnh 1.2: nh gi thnh qu ca my tnh My tnh dng tht nhiu b x l song song rt thch hp khi phi lm tnh tht nhiu. S tng trng theo hm s m ca cng ngh ch to transistor MOS l ngun gc ca thnh qu cc my tnh. Hnh I.4 cho thy s tng trng v tn s xung nhp ca cc b x l MOS. tng trng ca tn s xung nhp b x l tng gp i sau mi th h v tr hon trn mi cng / xung nhp gim 25% cho mi nm . S pht trin ca cng ngh my tnh v c bit l s pht trin ca b vi x l ca cc my vi tnh lm cho cc my vi tnh c tc vt qua tc b x l ca cc my tnh ln hn.

10

Kin trc my tnh

Chng I: i cng

B x l Intel

Nm SX 1971 1972 1974 1978 1982 1985 1989 1993 1997 1999 2000 2002 2003

S lng transistor tch hp 2,250 2,500 5,000 29,000 120,000 275,000 1,180,000 3,100,000 7,500,000 24,000,000 42,000,000 220,000,000 410,000,000

4004 8008 8080 8086 286 Intel386 processor Intel486 processor Intel Pentium processor Intel Pentium II processor Intel Pentium III processor Intel Pentium 4 processor Intel Itanium processor Intel Itanium 2 processor

Hnh I.3 v Bng I.2: S pht trin ca b x l Intel da vo s lng transistor trong mt mch tch hp theo qui lut Moore T nm 1965, Gordon Moore (ng sng lp cng ty Intel) quan st v nhn thy s transistor trong mi mch tch hp c th tng gp i sau mi nm, G. Moore a ra d on: Kh nng ca my tnh s tng ln gp i sau 18 thng vi gi thnh l nh nhau. Kt qu ca quy lut Moore l: Chi ph cho my tnh s gim. Gim kch thc cc linh kin, my tnh s gim kch thc H thng kt ni bn trong mch ngn: tng tin cy, tng tc . Tit kim nng lng cung cp, to nhit thp. Cc IC thay th cho cc linh kin ri. 11

Kin trc my tnh

Chng I: i cng

Hnh I.4: Xung nhp cc b x l MOS Mt s khi nim lin quan: Mt tch hp l s linh kin tch hp trn mt din tch b mt tm silicon cho sn, cho bit s nhim v v mch c thc hin. Tn s xung nhp b x l cho bit tn s thc hin cc nhim v. Tc x l ca my tnh trong mt giy (hay cng sut tnh ton ca mi mch): c tnh bng tch ca mt tch hp v tn s xung nhp. Cng sut ny cng tng theo hm m i vi thi gian.

I.4- THNG TIN V S M HO THNG TIN


I.4.1 - Khi nim thng tin Hiu th
Vt2 VH

VL Vt1

t1

t2

Thi gian

Hnh I.5: Thng tin v 2 trng thi c ngha ca hiu in th 12

Kin trc my tnh

Chng I: i cng

Khi nim v thng tin gn lin vi s hiu bit mt trng thi cho sn trong nhiu trng thi c th c vo mt thi im cho trc. Trong hnh ny, chng ta quy c c hai trng thi c ngha: trng thi thp khi hiu in th thp hn VL v trng thi cao khi hiu in th ln hn VH. c thng tin, ta phi xc nh thi im ta nhn trng thi ca tn hiu. Th d, ti thi im t1 th tn hiu trng thi thp v ti thi im t2 th tn hiu trng thi cao. I.4.2 - Lng thng tin v s m ho thng tin Thng tin c o lng bng n v thng tin m ta gi l bit. Lng thng tin c nh ngha bi cng thc: I = Log2(N) Trong : I: l lng thng tin tnh bng bit N: l s trng thi c th c Vy mt bit ng vi s hiu bit ca mt trng thi trong hai trng thi c th c. Th d, s hiu bit ca mt trng thi trong 8 trng thi c th ng vi mt lng thng tin l: I = Log2(8) = 3 bit Tm trng thi c ghi nhn nh 3 s nh phn (mi s nh phn c th c gi tr 0 hoc 1). Nh vy lng thng tin l s con s nh phn cn thit biu din s trng thi c th c. Do vy, mt con s nh phn c gi l mt bit. Mt t n bit c th tng trng mt trng thi trong tng s 2n trng thi m t c th tng trng. Vy mt t n bit tng ng vi mt lng thng tin n bit. Trng thi 0 1 2 3 4 5 6 7 X2 0 0 0 0 1 1 1 1 X1 0 0 1 1 0 0 1 1 X0 0 1 0 1 0 1 0 1

Bng I.3: Tm trng thi khc nhau ng vi 3 s nh phn I.4.3 - Biu din cc s: Khi nim h thng s: C s ca mt h thng s nh ngha phm vi cc gi tr c th c ca mt ch s. V d: trong h thp phn, mt ch s c gi tr t 0-9, trong h nh phn, mt ch s (mt bit) ch c hai gi tr l 0 hoc 1. Dng tng qut biu din gi tr ca mt s:

Vk
13

Kin trc my tnh

Chng I: i cng

Trong : Vk: S cn biu din gi tr m: s th t ca ch s phn l (phn l ca s c m ch s c nh s th t t -1 n -m) n-1: s th t ca ch s phn nguyn (phn nguyn ca s c n ch s c nh s th t t 0 n n-1) bi: gi tr ca ch s th i k: h s (k=10: h thp phn; k=2: h nh phn;...). V d: biu din s 541.25 10 2 1 0 1 2 541.2510 = 5 * 10 + 4 * 10 + 1 * 10 + 2 * 10- + 5 * 10= (500)10 + (40)10 + (1)10 + (2/10)10 + (5/100)10 Mt my tnh c ch yu cu to bng cc mch in t c hai trng thi. V vy, rt tin li khi dng cc s nh phn biu din s trng thi ca cc mch in hoc m ho cc k t, cc s cn thit cho vn hnh ca my tnh. bin i mt s h thp phn sang nh phn, ta c hai phng thc bin i: - Phng thc s d bin i phn nguyn ca s thp phn sang nh phn. V d: i 23.37510 sang nh phn. Chng ta s chuyn i phn nguyn dng phng thc s d: bit gi bit c trng s nh nht

Phng thc nhn bin i phn l ca s thp phn sang nh phn bit c trng s ln nht

bit c trng s nh nht Kt qu cui cng nhn c l: 23.37510 = 10111.0112 Tuy nhin, trong vic bin i phn l ca mt s thp phn sang s nh phn theo phng thc nhn, c mt s trng hp vic bin i s lp li v hn

14

Kin trc my tnh

Chng I: i cng

V d:

Trng hp bin i s nh phn sang cc h thng s khc nhau, ta c th nhm mt s cc s nh phn biu din cho s trong h thng s tng ng.
Binary (Base 2) 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Octal (Base 8) 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 Decimal (Base 10) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hexadecimal (Base 16) 0 1 2 3 4 5 6 7 8 9 A B C D E F

Thng thng, ngi ta nhm 4 bit trong h nh phn h biu din s di dng thp lc phn (Hexadecimal). Nh vy, da vo cch bin i s trong bng nu trn, chng ta c v d v cch bin i cc s trong cc h thng s khc nhau theo h nh phn: 10112 = (102)(112) = 234 234 = (24)(34) = (102)(112) = 10112 1010102 = (1012)(0102) = 528 011011012 = (01102)(11012) = 6D16 Mt t n bit c th biu din tt c cc s dng t 0 ti 2n-1. Nu di l mt s nh phn th i, mt t n bit tng ng vi mt s nguyn thp phn.

N=

n 1 i =0

d i 2i
15

Kin trc my tnh

Chng I: i cng

Mt Byte (gm 8 bit) c th biu din cc s t 0 ti 255 v mt t 32 bit cho php biu din cc s t 0 ti 4294967295. I.4.4 S nguyn c du C nhiu cch biu din mt s n bit c du. Trong tt c mi cch th bit cao nht lun tng trng cho du. Khi , bit du c gi tr l 0 th s nguyn dng, bit du c gi tr l 1 th s nguyn m. Tuy nhin, cch biu din du ny khng ng trong trng hp s c biu din bng s tha K m ta s xt phn sau trong chng ny (bit du c gi tr l 1 th s nguyn dng, bit du c gi tr l 0 th s nguyn m). dn-3 .... d2 d1 d0 dn-1 dn-2 ....
bit du

S nguyn c bit dn-1 l bit du v c tr s tng trng bi cc bit t d0 ti dn-2 . a) Cch biu din bng tr tuyt i v du Trong cch ny, bit dn-1 l bit du v cc bit t d0 ti dn-2 cho gi tr tuyt i. Mt t n bit tng ng vi s nguyn thp phn c du.

N=

(1) d n 1 d i 2 i
i =0

n2

V d: +2510 = 000110012 -2510 = 100110012 Mt Byte (8 bit) c th biu din cc s c du t -127 ti +127. C hai cch biu din s khng l 0000 0000 (+0) v 1000 0000 (-0). b) Cch biu din hng s b 1 Trong cch biu din ny, s m -N c c bng cch thay cc s nh phn di ca s ng N bng s b ca n (ngha l nu di = 0 th ngi ta i n thnh 1 v ngc li). -2510 = 111001102 V d: +2510 = 000110012 Mt Byte cho php biu din tt c cc s c du t -127 (1000 00002) n 127 (0111 11112) C hai cch biu din cho 0 l 0000 0000 (+0) v 1111 1111 (-0). c) Cch biu din bng s b 2 c s b 2 ca mt s no , ngi ta ly s b 1 ri cng thm 1. Vy mt t n bit (dn-1 ....... d0) c tr thp phn.
N = d n 1 2
n 1 n -2

d i 2i

i =0

Mt t n bit c th biu din cc s c du t - 2n-1 n 2n-1 - 1. Ch c mt cch duy nht biu din cho s khng l tt c cc bit ca s u bng khng. -2510 = 111001112 V d: +2510 = 000110012 Dng 1 Byte (8 bit) biu din mt s c du ln nht l +127 v s nh nht l 128. Ch c mt gi tr 0: +0 = 000000002, -0 = 000000002 16

Kin trc my tnh

Chng I: i cng

d3 d2 d1 d0 N d3 d2 d1 d0 N 0 0 0 0 0 1 0 0 0 -8 0 0 0 1 1 1 0 0 1 -7 0 0 1 0 2 1 0 1 0 -6 0 0 1 1 3 1 0 1 1 -5 0 1 0 0 4 1 1 0 0 -4 0 1 0 1 5 1 1 0 1 -3 0 1 1 0 6 1 1 1 0 -2 0 1 1 1 7 1 1 1 1 -1 Bng I.4: S 4 bit c du theo cch biu din s m bng s b 2 d) Cch biu din bng s tha K Trong cch ny, s dng ca mt s N c c bng cch cng thm vo s tha K c chn sao cho tng ca K v mt s m bt k lun lun dng. S m -N ca s N c c bng cck ly K-N (hay ly b hai ca s va xc nh). V d: (s tha K=128, s cng thm vo 128 l mt s nguyn dng. S m l s ly b hai s va tnh, b qua s gi ca bit cao nht) : +2510 = 100110012 -2510 = 011001112 Dng 1 Byte (8 bit) biu din mt s c du ln nht l +127 v s nh nht l 128. Ch c mt gi tr 0: +0 = 100000002, -0 = 100000002 Cch biu din s nguyn c du bng s b 2 c dng rng ri cho cc php tnh s nguyn. N c li l khng cn thut ton c bit no cho cc php tnh cng v tnh tr, v gip pht hin d dng cc trng hp b trn. Cc cch biu din bng "du , tr tuyt i" hoc bng "s b 1" dn n vic dng cc thut ton phc tp v bt li v lun c hai cch biu din ca s khng. Cch biu din bng "du , tr tuyt i" c dng cho php nhn ca s c du chm ng. Cch biu din bng s tha K c dng cho s m ca cc s c du chm ng. Cch ny lm cho vic so snh cc s m c du khc nhau tr thnh vic so snh cc s nguyn dng. I.4.5 - Cch biu din s vi du chm ng: Trc khi i vo cch biu din s vi du chm ng, chng ta xt n cch biu din mt s di dng du chm xc nh. V d: Trong h thp phn, s 25410 c th biu din di cc dng sau: 0 1 2 3 4 254 * 10 ; 25.4 * 10 ; 2.54 * 10 ; 0.254 * 10 ; 0.0254 * 10 ; Trong h nh phn, s (0.00011)2 (tng ng vi s 0.0937510) c th biu din di cc dng : 0 1 -4 0.00011; 0.00011 * 2 ; 0.0011 * 2- ; 0.011 * 2-2; 0.11 * 2-3; 1.1 * 2 Cc cch biu din ny gy kh khn trong mt s php so snh cc s. d dng trong cc php tnh, cc s c chun ho v mt dng biu din: 1. fff...f x 2 E Trong : f l phn l; E l phn m 17

Kin trc my tnh

Chng I: i cng

S chm ng c chun ho, cho php biu din gn ng cc s thp phn rt ln hay rt nh di dng mt s nh phn theo mt dng qui c. Thnh phn ca s chm ng bao gm: phn du, phn m v phn nh tr. Nh vy, cch ny cho php biu din gn ng cc s thc, tt c cc s u c cng cch biu din. C nhiu cch biu din du chm ng, trong cch biu din theo chun IEEE 754 c dng rng ri trong khoa hc my tnh hin nay. Trong cch biu din ny, phn nh tr c dng 1,f vi s 1 n tng v f l phn s l. Chun IEEE 754 nh ngha hai dng biu din s chm ng: S chm ng chnh xc n vi nh dng c nh ngha: chiu di s: 32 bit c chia thnh cc trng: du S (Sign bit - 1 bit), m E (Exponent - 8 bit), phn l F (Fraction - 23 bit). S ny tng ng vi s thc (-1)S * (1,f1 f2 ..... f23) * 2(E - 127) bit 31 30 23 22 bit 1 bit 0 S E f1 f2 ........... f22 f23 Hnh I.7: Biu din s c du chm ng chnh xc n vi 32 bit S chm ng chnh xc kp vi nh dng c nh ngha: chiu di s: 64 bit c chia thnh cc trng: du S (Sign bit - 1 bit), m E (Exponent - 11 bit), phn l F (Fraction - 52 bit) S ny tng ng vi s thc (-1)S * (1,f1 f2 ..... f52) * 2(E - 1023) bit 63 62 52 51 bit 1 bit 0 S E f1 f2 ........... f51 f52 Hnh I.8: Biu din s c du chm ng chnh xc kp vi 64 bit thun li trong mt s php tnh ton, IEEE nh ngha mt s dng m rng ca chun IEEE 754: Tham s Chiu di (bit) Chiu di trng m (E) S tha Gi tr m ti a Gi tr m ti thiu Chiu di trng l F (bit) Chnh xc n 32 8 127 127 -126 23 M rng chnh xc n 43 11 1023 - 1022 31 Chnh xc kp 64 11 1023 1023 -1022 52 M rng chnh xc kp 79 15 16383 -16382 63

Chun IEEE 754 cho php biu din cc s chun ho (cc bit ca E khng cng lc bng 0 hoc bng 1), cc s khng chun ho (cc bit ca E khng cng lc bng 0 v phn s l f1 f2 ... khc khng), tr s 0 (cc bit ca E khng cng lc bng 0 v phn s l bng khng), v cc k t c bit (cc bit ca E khng cng lc bng 1 v phn l khc khng). V d cc bc bin i s thp phn -12.62510 sang s chm ng chun IEEE 754 chnh xc n (32 bit): 18

Kin trc my tnh

Chng I: i cng

Bc 1: i s -12.62510 sang nh phn: -12.62510 = -1100.1012. Bc 2: Chun ho: -1100.1012 = -1.1001012 x 23 (S 1.1001012 dng 1.f) Bc 3: in cc bit vo cc trng theo chun: S m: bit du S c gi tr 1. Phn m E vi s tha K=127, ta c: E-127=3 E = 3 + 127 = 130 (1000 00102). 32 bit Kt qu nhn c: 1 1000 0010 1001 0100 0000 0000 0000 000 S E F

I.4.6 - Biu din cc s thp phn Mt vi ng dng, c bit ng dng qun l, bt buc cc php tnh thp phn phi chnh xc, khng lm trn s. Vi mt s bit c nh, ta khng th i mt cch chnh xc s nh phn thnh s thp phn v ngc li. V vy, khi cn phi dng s thp phn, ta dng cch biu din s thp phn m bng nh phn (BCD: Binary Coded Decimal) theo mi s thp phn c m vi 4 s nh phn (bng I.6). S thp d3 d2 d1 d0 phn 0 0 0 0 5 0 1 0 1 0 0 0 1 6 0 1 1 0 0 0 1 0 7 0 1 1 1 0 0 1 1 8 1 0 0 0 0 1 0 0 9 1 0 0 1 Bng I.5: S thp phn m bng nh phn biu din s BCD c du, ngi ta thm s 0 trc mt s dng cn tnh, ta c s m ca s BCD bng cch ly b 10 s cn tnh. 0000 0111 1001 V d: biu din s +07910 bng s BCD: B 9 1001 0010 0000 +1 B 10 1001 0010 0001 Vy, ta c: S - 07910 trong cch biu din s BCD: 1001 0010 0001BCD. Cch tnh ton trn tng ng vi cch sau: o Trc ht ta ly s b 9 ca s 079 bng cch: 999 - 079 = 920. o Cng 1 vo s b 9 ta c s b 10: 920 + 1 = 921. o Biu din s 921 di dng s BCD, ta c: 1001 0010 0001BCD S thp phn 0 1 2 3 4 d3 I.4.7 - Biu din cc k t Tu theo cc h thng khc nhau, c th s dng cc bng m khc nhau: ASCII, EBCDIC, UNICODE,....Cc h thng trc y thng dng bng m ASCII (American Standard Codes for Information Interchange) biu din cc ch, s v d2 d1 d0

19

Kin trc my tnh

Chng I: i cng

mt s du thng dng m ta gi chung l k t. Mi k t c biu din bi 7 bit trong mt Byte. Hin nay, mt trong cc bng m thng dng c dng l Unicode, trong bng m ny, mi k t c m ho bi 2 Byte.

Bng m ASCII Bng m EBCDIC

20

Kin trc my tnh

Chng I: i cng

Bng m UNICODE

21

Kin trc my tnh

Chng I: i cng

CU HI N TP V BI TP CHNG I
***** 1. Da vo tiu chun no ngi ta phn chia my tnh thnh cc th h? 2. c trng c bn ca cc my tnh th h th nht? 3. c trng c bn ca cc my tnh th h th hai? 4. c trng c bn ca cc my tnh th h th ba? 5. c trng c bn ca cc my tnh th h th t? 6. Khuynh hng pht trin ca my tnh in t ngy nay l g? 7. Vic phn loi my tnh da vo tiu chun no? 8. Khi nim thng tin trong my tnh c hiu nh th no? 9. Lng thng tin l g ? 10. S hiu bit v mt trng thi trong 4096 trng thi c th c ng vi lng thng tin l bao nhiu? 11. im chung nht trong cc cch biu din mt s nguyn n bit c du l g? 12. S nh phn 8 bit (11001100)2, s ny tng ng vi s nguyn thp phn c du l bao nhiu nu s ang c biu din trong cch biu din: a. Du v tr tuyt i. b. S b 1. c. S b 2. 13. i cc s sau y: a. (011011)2 ra s thp phn. b. (-2005)10 ra s nh phn 16 bits. c. (55.875)10 ra s nh phn. 14. Biu din s thc (31.75)10 di dng s c du chm ng chnh xc n 32 bit.

22

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Chng II: KIN TRC PHN MM B X L


Mc ch: Gii thiu cc thnh phn c bn ca mt h thng my tnh, khi nim v kin trc my tnh, tp lnh. Gii thiu cc kiu kin trc my tnh, cc kiu nh v c dng trong kin trc, loi v chiu di ca ton hng, tc v m my tnh c th thc hin. Kin trc RISC (Reduced Instruction Set Computer): m t kin trc, cc kiu nh v. Gii thiu tng qut tp lnh ca cc kin trc my tnh. Yu cu :Sinh vin c kin thc v cc thnh phn c bn ca mt h thng my tnh, khi nim v kin trc my tnh, tp lnh. Nm vng cc kin thc v cc kiu kin trc my tnh, cc kiu nh v c dng trong kin trc, loi v chiu di ca ton hng, tc v m my tnh c th thc hin. Phn bit c hai loi kin trc: CISC (Complex Instruction Set Computer), RISC (Reduced Instruction Set Computer). Cc kin thc c bn v kin trc RISC, tng qut tp lnh ca cc kin trc my tnh.

II.1 - THNH PHN C BN CA MT MY TNH


Thnh phn c bn ca mt b my tnh gm: b x l trung tm (CPU: Central Processing Unit), b nh trong, cc b phn nhp-xut thng tin. Cc b phn trn c kt ni vi nhau thng qua cc h thng bus. H thng bus bao gm: bus a ch, bus d liu v bus iu khin. Bus a ch v bus d liu dng trong vic chuyn d liu gia cc b phn trong my tnh. Bus iu khin lm cho s trao i thng tin gia cc b phn c ng b. Thng thng ngi ta phn bit mt bus h thng dng trao i thng tin gia CPU v b nh trong (thng qua cache), v mt bus vora dng trao i thng tin gia cc b phn vo-ra v b nh trong.

B x l trung tm (CPU)
B iu khin (CU) B lm tnh v lun l (ALU) CC THANH GHI (Registers)

Bus a ch Bus d liu Bus iu khin

B nh trong

Ngoi vi

Hnh II.1: Cu trc ca mt h my tnh n gin Mt chng trnh s c sao chp t a cng vo b nh trong cng vi cc thng tin cn thit cho chng trnh hot ng, cc thng tin ny c np vo b nh

23

Kin trc my tnh

Chng II: Kin trc phn mm b x l

trong t cc b phn cung cp thng tin (v d nh mt bn phm hay mt a t). B x l trung tm s c cc lnh v d liu t b nh, thc hin cc lnh v lu cc kt qu tr li b nh trong hay cho xut kt qu ra b phn xut thng tin (mn hnh hay my in). Thnh phn c bn ca mt my tnh bao gm : - B nh trong: y l mt tp hp cc nh, mi nh c mt s bit nht nh v chc mt thng tin c m ho thnh s nh phn m khng quan tm n kiu ca d liu m n ang cha. Cc thng tin ny l cc lnh hay s liu. Mi nh ca b nh trong u c mt a ch. Thi gian thm nhp vo mt nh bt k trong b nh l nh nhau. V vy, b nh trong cn c gi l b nh truy cp ngu nhin (RAM: Random Access Memory). di ca mt t my tnh (Computer Word) l 32 bit (hay 4 byte), tuy nhin dung lng mt nh thng thng l 8 bit (1 Byte). - B x l trung tm (CPU): y l b phn thi hnh lnh. CPU ly lnh t b nh trong v ly cc s liu m lnh x l. B x l trung tm gm c hai phn: phn thi hnh lnh v phn iu khin. Phn thi hnh lnh bao gm b lm ton v lun l (ALU: Arithmetic And Logic Unit) v cc thanh ghi. N c nhim v lm cc php ton trn s liu. Phn iu khin c nhim v m bo thi hnh cc lnh mt cch tun t v tc ng cc mch chc nng thi hnh cc lnh. - B phn vo - ra: y l b phn xut nhp thng tin, b phn ny thc hin s giao tip gia my tnh v ngi dng hay gia cc my tnh trong h thng mng (i vi cc my tnh c kt ni thnh mt h thng mng). Cc b phn xut nhp thng gp l: b lu tr ngoi, mn hnh, my in, bn phm, chut, my qut nh, cc giao din mng cc b hay mng din rng...B to thch ng l mt vi mch tng hp (chipset) kt ni gia cc h thng bus c cc tc d liu khc nhau. Bus h thng ( Bus ni CPU - B nh trong ) Cache CPU iu khin vo -ra B to thch ng Bus vo - ra iu khin vo -ra iu khin vo -ra B nh trong

a t

Mn hnh th

Mng

Hnh II.2: S m t hot ng in hnh ca mt my tnh

24

Kin trc my tnh

Chng II: Kin trc phn mm b x l

II.2 - NH NGHA KIN TRC MY TNH


Kin trc my tnh bao gm ba phn: Kin trc phn mm, t chc ca my tnh v lp t phn cng. Ki n trc ph n m m c a my tnh ch y u l ki n trc ph n m m c a b x l, bao g m: t p l nh, d ng cc l nh v cc ki u nh v . + Trong , t p l nh l t p h p cc l nh m my (m nh phn) hon ch nh c th hi u v c x l b i b x l trung tm, thng th ng cc l nh trong t p l nh c trnh by d i d ng h p ng . M i l nh ch a thng tin yu c u b x l th c hi n, bao g m: m tc v , a ch ton h ng ngu n, a ch ton h ng k t qu , l nh k ti p (thng th ng th thng tin ny n). + Ki u nh v ch ra cch th c thm nh p ton h ng. Ki n trc ph n m m l ph n m cc l p trnh vin h th ng ph i n m v ng vi c l p trnh hi u qu , t sai st. Phn t chc ca my tnh lin quan n cu trc bn trong ca b x l, cu trc cc bus, cc cp b nh v cc mt k thut khc ca my tnh. Phn ny s c ni n cc chng sau. Lp t phn cng ca my tnh m ch vic lp rp mt my tnh dng cc linh kin in t v cc b phn phn cng cn thit. Chng ta khng ni n phn ny trong gio trnh. Ta nn lu rng mt vi my tnh c cng kin trc phn mm nhng phn t chc l khc nhau (VAX- 11/780 v VAX 8600). Cc my VAX- 11/780 v VAX11/785 c cng kin trc phn mm v phn t chc gn ging nhau. Tuy nhin vic lp t phn cng cc my ny l khc nhau. My VAX- 11/785 dng cc mch kt hin i ci tin tn s xung nhp v thay i mt t t chc ca b nh trong.

II.3 - CC KIU THI HNH MT LNH


Nh m t, mt lnh m my bao gm mt m tc v v cc ton hng. V d: lnh m my 01101001010101010000001101100101 Vic chn s ton hng cho mt lnh m my l mt vn then cht v phi c mt s cn i gia tc tnh ton v s cc mch tnh ton phi dng. Tu theo tn s s dng cc php nh trn m cc nh thit k my tnh quyt nh s lng cc mch chc nng cn thit cho vic tnh ton. Thng thng s ton hng thay i t 0 ti 3. V d: lnh Y := A + B + C + D c th c hin bng mt lnh m my nu ta c 3 mch cng, hoc c thc hin bng 3 lnh m my nu chng ta ch c mt mch cng, nu vic tnh ton trn xy ra t, ngi ta ch cn thit k mt mch cng thay v phi tn chi ph lp t 3 mch cng. Tuy nhin, vi mt mch cng th thi gian tnh ton ca h thng s chm hn vi h thng c ba mch cng. V tr ca ton hng cng c xem xt. Bng II.1 chn mt vi nh sn xut my tnh v 3 kiu c bn ca v tr cc ton hng i vi nhng lnh tnh ton trong ALU l: ngn xp, trn thanh ghi tch lu, v trn cc thanh ghi a dng. Nhng kin trc phn mm ny c gi l kin trc ngn xp, kin trc thanh ghi tch lu v kin trc thanh ghi a dng.

25

Kin trc my tnh

Chng II: Kin trc phn mm b x l

V tr cc ton hng Ngn xp

Th d

B 5500 HP Ngn xp Lnh Push, Pop 3000/70 Thanh ghi PDP 8 1 Thanh ghi Lnh np vo hoc ly ra tch lu Motorola tch lu t thanh ghi tch lu 6809 (load, store) 2 hoc 3 Thanh ghi Lnh np vo hoc ly ra Thanh ghi IBM 360 a dng DEC, VAX hoc b nh t thanh ghi hoc b nh Bng II.1 : V d v cch chn la v tr cc ton hng Mt vi nh sn xut my tnh tun th cht ch cc kiu chn v tr ton hng nu trn, nhng phn nhiu cc b x l dng kiu hn tp. V d, mch x l 8086 ca Intel dng cng mt lc kiu "thanh ghi a dng" v kiu "thanh ghi tch lu". V d minh ho chui lnh phi dng thc hin php tnh C := A + B trong 3 kiu kin trc phn mm. Kin trc ngn xp Push A Push B ADD Pop C Kin trc thanh ghi tch lu Load A ADD B Store C Kin trc thanh ghi a dng Load R1, A ADD R1, B Store R1, C

Ton hng cho lnh tnh ton trong ALU 0

V tr t kt qu

Cch thc thm nhp vo ton hng

Bng II.2: Chui lnh dng thc hin php tnh C := A + B (gi s A, B, C u nm trong b nh trong) Hin ti cc nh sn xut my tnh c khuynh hng dng kin trc phn mm thanh ghi a dng v vic thm nhp cc thanh ghi a dng nhanh hn thm nhp b nh trong, v v cc chng trnh dch dng cc thanh ghi a dng c hiu qu hn. Li im - Lnh ngn - t m my - Lm ti thiu trng thi bn trong ca my tnh - D dng to ra mt b bin dch n gin cho kin trc ngn xp Thanh ghi tch lu - Lnh ngn - Lm ti thiu trng thi (Accumulator bn trong ca my tnh Register) (yu cu t mch chc nng). - Thit k d dng Loi kin trc Ngn xp (Stack) B t l i - Thm nhp ngn xp khng ngu nhin. - M khng hiu qu - Kh dng trong x l song song v ng dn - Kh to ra mt b bin dch t i u - Lu gi thanh ghi tch lu l tm thi. - Nghn thanh ghi tch lu - Kh dng trong x l song song v ng dn - Trao i nhiu vi b nh.

26

Kin trc my tnh

Chng II: Kin trc phn mm b x l

- Tc x l nhanh, - Lnh di Thanh ghi nh v n gin. - S lng thanh ghi b gii a dng hn (General Register) - t thm nhp b nh. - Kiu rt tng qut to cc m hu hiu Bng II.3: im li v bt li ca 3 kiu kin trc phn mm

II.4 - KIU KIN TRC THANH GHI A DNG


Do hin nay kiu kin trc thanh ghi a dng chim v tr hng u nn trong cc phn sau, ta ch cp n kiu kin trc ny. i vi mt lnh tnh ton hoc logic in hnh (lnh ALU), c 2 im cn nu ln. Trc tin, mt lnh ALU phi c 2 hoc 3 ton hng. Nu trong lnh c 3 ton hng th mt trong cc ton hng cha kt qu php tnh trn hai ton hng kia (V d: add A, B, C). Nu trong lnh c 2 ton hng th mt trong hai ton hng phi va l ton hng ngun, va l ton hng ch (V d: add A, B). Th hai, s lng ton hng b nh c trong lnh. S ton hng b nh c th thay i t 0 ti 3. Trong nhiu cch t hp c th c cc loi ton hng ca mt lnh ALU, cc my tnh hin nay chn mt trong 3 kiu sau : thanh ghi-thanh ghi (kiu ny cn c gi np - lu tr), thanh ghi - b nh v b nh - b nh. Kiu thanh ghi - thanh ghi c nhiu nh ch to my tnh lu vi cc l do: vic to cc m my n gin, chiu di m my c nh v s chu k xung nhp cn thit cho vic thc hin lnh l c nh, t thm nhp b nh. Tuy nhin, kiu kin trc ny cng c mt vi hn ch ca n nh: s lng thanh ghi b gii hn, vic cc thanh ghi c cng di dn n khng hiu qu trong cc lnh x l chui cng nh cc lnh c cu trc. Vic lu v phc hi cc trng thi khi c cc li gi th tc hay chuyn i ng cnh.

II.5 - TP LNH
Mc tiu ca phn ny l dng cc v d trch t cc kin trc phn mm c dng nhiu nht, cho thy cc k thut mc ngn ng my dng thi hnh cc cu trc trong cc ngn ng cp cao. minh ho bng th d, ta dng c php lnh trong hp ng sau y : T gi nh m lnh, thanh ghi ch, thanh ghi ngun 1, thanh ghi ngun 2. T gi nh m lnh m t ngn gn tc v phi thi hnh trn cc thanh ghi ngun, kt qu c lu gi trong thanh ghi ch. Mi lnh ca ngn ng cp cao c xy dng bng mt lnh m my hoc mt chui nhiu lnh m my. Lnh nhy (GOTO) c thc hin bng cc lnh hp ng v nhy (JUMP) hoc lnh hp ng v vng. Chng ta phn bit lnh nhy lm cho b m chng trnh c np vo a ch tuyt i ni phi nhy n (PC a ch tuyt i ni phi nhy ti), vi lnh vng theo ta ch cn cng thm mt di vo b m chng trnh (PC PC + di). Ta lu l trong trng hp sau, PC cha a ch tng i so vi a ch ca lnh sau lnh vng.

27

Kin trc my tnh

Chng II: Kin trc phn mm b x l

II.5.1 - Gn tr Vic gn tr, gm c gn tr cho biu thc s hc v logic, c thc hin nh mt s lnh m my. Cho cc kin trc RISC, ta c th nu ln cc lnh sau : - Lnh b nh LOAD Ri, M (a ch) M[a ch] Ri STORE Ri, M(a ch) ; Ri M[a ch] a ch c tnh tu theo kiu nh v c dng. - Lnh tnh ton s hc: tnh ton s nguyn trn ni dung ca hai thanh ghi Ri, Rj v xp kt qu vo trong Rk: ADD (cng) ADDD (cng s c du chm ng, chnh xc kp) SUB (tr) SUBD (tr s c du chm ng, chnh xc kp) MUL (nhn) DIV (chia) - Lnh logic: thc hin php tnh logic cho tng bit mt. AND (lnh V) OR (lnh HOC) XOR (lnh HOC LOI) NEG (lnh ly s b 1 )
1
D ch phi logic

0
D ch tri logic

D ch phi s hc

0
D ch tri s hc

Quay phi

Quay tri

Hnh II.7: Minh ho lnh dch chuyn v quay vng 28

Kin trc my tnh

Chng II: Kin trc phn mm b x l

- Cc lnh dch chuyn s hc hoc logic (SHIFT ), quay vng (ROTATE) c hoc khng c s gi ng vo, sang phi hoc sang tri. Cc lnh ny c thc hin trn mt thanh ghi v kt qu lu gi trong thanh ghi khc. S ln dch chuyn (mi ln dch sang phi hoc sang tri mt bit) thng c xc nh trong thanh ghi th ba. Hnh II.7 minh ho cho cc lnh ny Cho cc kin trc kiu RISC, ta c : SLL (shift left logical : dch tri logic) SRL (shift right logical : dch phi logic) SRA (shift right arithemtic : dch phi s hc) II.5.2 - Lnh c iu kin Lnh c iu kin c dng : Nu <iu kin> th <chui lnh 1> nu khng <chui lnh 2> (IF <condition> THEN <instructions1> ELSE <instructions2>) Lnh ny buc phi ghi nh iu kin v nhy vng nu iu kin c tho. a) Ghi nh iu kin . B lm tnh ALU cung cp kt qu ng ra tu theo cc ng vo v php tnh cn lm. N cng cho mt s thng tin khc v kt qu di dng cc bit trng thi. Cc bit ny l nhng i lng logic NG hoc SAI (hnh II.8). Trong cc bit trng thi ta c bit du S (Sign - ng nu kt qu m), bit trc nghim zero Z (Zero - ng nu kt qu bng khng), bit trn OVF (Overflow) NG nu php tnh s hc lm thanh ghi khng kh nng lu tr kt qu, bit s gi C (carry) NG nu s gi ng ra l 1 .... Cc bit trn thng c gi l bit m iu kin. S gi Ton hng ngun 1 ALU

Kt qu

Ton hng ngun 2

Bit S Bit Z Bit OVF Bit C

Hnh II.8 : Bit trng thi m ALU to ra C hai k thut c bn ghi nh cc bit trng thi Cch th nht, ghi cc trng thi trong mt thanh ghi a dng. V d lnh CMP Rk, Ri, Rj

29

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Lnh trn s lm php tnh tr Ri - Rj m khng ghi kt qu php tr, m li ghi cc bit trng thi vo thanh ghi Rk. Thanh ghi ny c dng cho mt lnh nhy c iu kin. im li ca k thut ny l gip lu tr nhiu trng thi sau nhiu php tnh dng v sau. im bt li l phi dng mt thanh ghi a dng ghi li trng thi sau mi php tnh m s thanh ghi ny li b gii hn 32 trong cc b x l hin i. Cch th hai , l cc bit tr ng thi vo m t thanh ghi c bi t g i l thanh ghi tr ng thi . V n l u gi n i dung thanh ghi ny c gi i quy t b ng nhi u cch. Trong ki n trc SPARC, ch c m t s gi i h n l nh c php thay i thanh ghi tr ng thi v d nh l nh ADDCC, SUBCC (cc l nh ny th c hi n cc php tnh c ng ADD v php tnh tr SUB v cn lm thay i thanh ghi tr ng thi). Trong ki n trc PowerPC, thanh ghi tr ng thi c phn thnh 8 tr ng, m i tr ng 4 bit, v y l thanh ghi phn thnh 8 thanh ghi tr ng thi con. b) Nhy vng Cc lnh nhy hoc nhy vng c iu kin, ch thc hin lnh nhy khi iu kin c tho. Trong trng hp ngc li, vic thc hin chng trnh c tip tc vi lnh sau . Lnh nhy xem xt thanh ghi trng thi v ch nhy nu iu kin nu ln trong lnh l ng. Chng ta xem mt v d thc hin lnh nhy c iu kin. Gi s trng thi sau khi b x l thi hnh mt tc v, c lu tr trong thanh ghi, v b x l thi hnh cc lnh sau : 1. CMP R4, R1, R2 : So snh R1 v R2 bng cch tr R1 cho R2 v lu gi trng thi trong R4 2. BGT R4, +2 : Nhy b 2 lnh nu R1 > R2 3. ADD R3, R0, R2 : R0 c gi tr 0. Chuyn ni dung ca R2 vo R3 4. BRA +1 : nhy b 1 lnh 5. ADD R3, R0, R1 : chuyn ni dung R1 vo R3 6. Lnh k Nu R1 > R2 th chui lnh c thi hnh l 1, 2, 5, 6 c thi hnh, nu khng th chui lnh 1, 2, 3, 4, 6 c thi hnh. Chui cc lnh trn , trong c 2 lnh nhy, thc hin cng vic sau y : Nu R1 > R2 th R3 = R1 nu khng R3 = R2 Cc lnh nhy lm tc thi hnh lnh chm li, trong cc CPU hin i dng k thut ng dn. Trong mt vi b x l ngi ta dng lnh di chuyn c iu kin trnh dng lnh nhy trong mt vi trng hp. Th d trn y c th c vit li : 1. CMP R4, R1, R2 : So snh R1 v R2 v cc bit trng thi trong R4. 2. ADD R3, R0, R2 : Di chuyn R2 vo R3 3. MGT R4, R3, R1 : (MGT : Move if greater than). Nu R1 > R2 th di chuyn R1 vo R3 II.5.3 - Vng lp Cc lnh vng lp c th c thc hin nh lnh nhy c iu kin m ta ni trn. Trong trng hp ny, ta qun l s ln lp li bng mt b m vng lp,

30

Kin trc my tnh

Chng II: Kin trc phn mm b x l

v ngi ta kim tra b m ny sau mi vng lp xem s vng cn thc hin hay cha. B x l PowerPC c mt lnh qun l vng lp BNCT Ri, di Vi thanh ghi Ri cha s ln lp li. Lnh ny lm cc cng vic sau: Ri := Ri -1 Nu Ri <> 0, PC := PC + di. Nu khng th tip tc thi hnh lnh k. II.5.4 - Thm nhp b nh ngn xp Ngn xp l mt t chc b nh sao cho ta ch c th c mt t nh ngn xp hoc vit mt t vo nh ngn xp. a ch ca nh ngn xp c cha trong mt thanh ghi c bit gi l con tr ngn xp SP (Stack Pointer). ng vi cu trc ngn xp, ngi ta c lnh vit vo ngn xp PUSH v lnh ly ra khi ngn xp POP. Cc lnh ny vn hnh nh sau: - Cho lnh PUSH SP := SP +1 M (SP) := Ri (Ri l thanh ghi cn vit vo ngn xp) - Cho lnh POP Ri := M(SP) (Ri l thanh ghi, nhn t ly ra khi ngn xp) SP := SP -1 Trong cc b x l RISC, vic vit vo hoc lp ra khi ngn xp dng cc lnh bnh thng. V d thanh ghi R30 l con tr ngn xp th vic vit vo ngn xp c thc hin bng cc lnh: ADDI R30, R30, 4 ; tng con tr ngn xp ln 4 v t di 32 bit STORE Ri, (R30) ; Vit Ri vo nh ngn xp Vic ly ra khi ngn xp c thc hin bng cc lnh : LOAD Ri, (R30) ; ly s liu nh ngn xp v np vo Ri SUBI R30, R30,4 ; gim con tr ngn xp bt 4 II.5.5 - Cc th tc Cc th t c c g i t b t c n i no c a ch ng trnh nh l nh g i th t c CALL. khi ch m d t vi c thi hnh th t c th ch ng trnh g i c ti p t c bnh th ng, ta c n l u gi a ch tr v t c a ch c a l nh sau l nh g i th t c CALL. Khi ch m d t thi hnh th t c, l nh tr v RETURN n p a ch tr v vo PC. Trong cc ki n trc CISC (VAX 11, 80x86, 680x0), a ch tr v c gi ng n x p. Trong cc ki n trc RISC, m t thanh ghi c bi t (th ng l thanh ghi R31) c dng l u gi a ch tr v . Lnh gi th tc l mt lnh loi JMPL Ri, lnh ny lm cc tc v : R31 := PC ; a ch tr v trong R31 PC := Ri ; nhy ti a ch ca th tc nm trong thanh ghi Ri Lnh tr v khi chm dt th tc l JMP R31, v thanh ghi R31 cha a ch tr v.

31

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Vic dng mt thanh ghi c bit lu tr a ch tr v l mt gii php ch p dng cho cc th tc cui cng, ngha l cho th tc khng gi th tc no c. c th cho cc th tc c th gi mt th tc khc, ta c hai gii php: Gii php 1: c nhiu thanh ghi lu tr a ch tr v Gii php 2: lu gi a ch tr v ngn xp. Vic gi th tc c th c thc hin bng chui lnh sau y : ADDI R30, R30,4 ; R30 l con tr ngn xp STORE R31, (R30) ; lu gi a ch tr v JMPL Ri ; gi th tc Ngi ta dng chui lnh sau y tr v chng trnh gi : LOAD R31, (R30) ; phc hi a ch tr v SUBI R30, R30,4 ; cp nht con tr ngn xp JMP R31 ; tr v chng trnh gi a ch B nh trong Chng trnh chnh

Th tc Proc1

Th tc Proc2

a) Gi th tc v tr v

b) Din tin thi hnh

a) Khi to ngn xp

b) Sau li gi th tc 1

c) Sau li gi th tc 2

d) Tr v sau li gi th tc 2

e) Sau li gi th tc 2 ln 2

f) Tr v sau li gi th tc 2

g) Tr v sau li gi th tc 1

Hnh II.9: Gi th tc v tr v khi thc hin xong th tc 32

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Vic truyn tham s t th tc gi n th tc b gi c th thc hin bng cch dng cc thanh ghi ca b x l hoc dng ngn xp. Nu s tham s cn truyn t, ta dng cc thanh ghi.

II.6 - CC KIU NH V
Kiu nh v nh ngha cch thc thm nhp cc ton hng. Mt vi kiu xc nh cch thm nhp ton hng b nh, ngha l cch tnh a ch ca ton hng, cc kiu khc xc nh cc ton hng nm trong cc thanh ghi. Ch rng, trong cc kiu nh v, ta cn lu khi chuyn i d liu nh phn gia hai kiu nh a ch lin quan n nh, v mi t my tnh gm bn byte, mi nh cha mt byte. Nh vy, mt t my tnh c lu trong bn nh lin tip trong b nh trong, c nhiu cch xc mt t my tnh, trong , hai cch tiu biu nht l:

a ch t l x cho c hai minh ho Hnh II.3: Minh ho hai cch sp xp a ch trong b nh nh v kiu Big-Endian: byte thp nht c t trong nh c a ch cao nht (IBM, Motorolla, Sun, HP). nh v kiu Little-Endian: byte thp nht c t trong nh c a ch thp nht (Intel, DEC) Kiu nh v Gii thch R3 R3 + R4 R4 R4 + 3 R1 R1 + M [1001] R4 R4 + M [R1] R1 R1 + M[ M [R3]] R4 R4 + M[R1 + 100] R3 R3 + M[R1 + R2] R1R1+M[100+R2+ d * R3] R1 R1 + M[R2] R2 R2 +d Add R1, -(R2) R2 R2 - d R1 R1 + M[R2] Kiu nh v ca mt b x l c kin trc phn mm kiu thanh ghi a dng.

V d v lnh Add R3, R4 Thanh ghi Add R4, #3 Tc th Add R1, (1001) Trc tip ADD R4, (R1) Gin tip (thanh ghi) Add R1, @ (R3) Gin tip (b nh) Add R4, 100(R1) Gin tip (thanh ghi + di) Gin tip (thanh ghi + thanh ghi) Add R3, (R1 + R2) Gin tip ( t/g nn + t/g ch s + di ) Add R1, 100(R2)[R3] Add R1, (R2)+ T tng T gim Bng II.4 :

33

Kin trc my tnh

Chng II: Kin trc phn mm b x l

R1, R2, R3, R4 : cc thanh ghi R4 R3 + R4 : Cng cc thanh ghi R3 v R4 ri kt qu v R4 M[R1] : R1 cha a ch b nh m ton hng c lu tr M[1001] : ton hng c lu tr a ch 1001 d : s byte s liu cn thm nhp (d = 4 cho t my tnh, d = 8 cho t i my tnh ). Trong kiu nh v thanh ghi, cc ton hng u c cha trong cc thanh ghi. Trong kiu nh v tc th, ton hng c cha trong lnh. Trong kiu nh v trc tip, a ch ca ton hng c cha trong lnh. Trong kiu nh v gin tip (thanh ghi), a ch ton hng c cha trong thanh ghi. Trong kiu nh v gin tip (b nh), thanh ghi R3 cha a ch ca a ch ca ton hng nh trong hnh II.4 B nh R3 nh ny cha (R3 ch ti a ch ny) a ch ton hng

Ton hng Hnh II.4: Minh ho kiu nh v gin tip (b nh)

II.7 - KIU CA TON HNG V CHIU DI CA TON HNG


Kiu ca ton hng thng c a vo trong m tc v ca lnh. C bn kiu ton hng c dng trong cc h thng: - Kiu a ch. - Kiu dng s: s nguyn, du chm ng,... - Kiu dng chui k t: ASCII, EBIDEC,... - Kiu d liu logic: cc bit, c,... Tuy nhin mt s t my tnh dng cc nhn xc nh kiu ton hng. Thng thng loi ca ton hng xc nh lun chiu di ca n. Ton hng thng c chiu di l byte (8 bit), na t my tnh (16 bit), t my tnh (32 bit), t i my tnh (64 bit). c bit, kin trc PA ca hng HP (Hewlet Packard) c kh nng tnh ton vi cc s thp phn BCD. Mt vi b x l c th x l cc chui k t.

II.8 - TC V M LNH THC HIN


Bng II.5 cho cc loi tc v m mt my tnh c th thc hin. Trn tt c my tnh ta u thy 3 loi u tin (tnh ton s hc v lun l, di chuyn s liu, chuyn iu khin). Tu theo kin trc ca mi my tnh, ngi ta c th thy 0 hoc vi loi tc v trong s 5 tc v cn li (h thng, tnh ton vi s c du chm ng, tnh ton vi s thp phn, tnh ton trn chui k t). Loi tc v Tnh ton s hc v lun l Di chuyn s liu Th d Php tnh s nguyn v php tnh lun l: cng, tr, AND, OR Np s liu, lu gi s liu

34

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Lnh nhy, lnh vng lp, gi chng trnh con v tr v, ngt qung Gi h iu hnh, qun l b nh o H thng Cc php tnh trn s c du chm ng: cng, Tnh s c du chm ng nhn Cc php tnh trn s thp phn: cng, nhn, i t Tnh s thp phn thp phn sang k t Tnh ton trn chui k t Chuyn, so snh, tm kim chui k t Nn v gii nn d liu hnh nh ho (3D) v d liu a phng tin (hnh nh ng v m ho v a phng tin thanh) Bng II.5: Cc tc v m lnh c th thc hin Chuyn iu khin

II.9 - KIN TRC RISC ( REDUCED INSTRUCTION SET COMPUTER)


Cc kin trc vi tp lnh phc tp CISC (Complex Instruction Set Computer) c ngh ra t nhng nm 1960. Vo thi k ny, ngi ta nhn thy cc chng trnh dch kh dng cc thanh ghi, rng cc vi lnh c thc hin nhanh hn cc lnh v cn thit phi lm gim di cc chng trnh. Cc c tnh ny khin ngi ta u tin chn cc kiu nh - nh v nh - thanh ghi, vi nhng lnh phc tp v dng nhiu kiu nh v. iu ny dn ti vic cc lnh c chiu di thay i v nh th th dng b iu khin vi chng trnh l hiu qu nht. Bng II.6 cho cc c tnh ca vi my CISC tiu biu. Ta nhn thy c ba my u c im chung l c nhiu lnh, cc lnh c chiu di thay i. Nhiu cch thc hin lnh v nhiu vi chng trnh c dng. Tin b trong lnh vc mch kt (IC) v k thut dch chng trnh lm cho cc nhn nh trc y phi c xem xt li, nht l khi c mt kho st nh lng v vic dng tp lnh cc my CISC. B x l IBM 370/168 DEC 11/780 iAPX 432 Nm sn xut 1973 1978 1982 S lnh 208 303 222 B nh vi chng trnh 420 KB 480 KB 64 KB 16 - 48 16 - 456 6 - 321 Chiu di lnh (tnh bng bit) K thut ch to ECL - MSI TTl - MSI NMOS VLSI Cch thc hin lnh Thanh ghi- thanh ghi Thanh ghi - thanh ghi Ngn xp Thanh ghi - b nh Thanh ghi - b nh B nh- b nh B nh - b nh B nh - b nh Dung lng cache 64 KB 64 KB 0 Bng II.6: c tnh ca mt vi my CISC V d, chng trnh dch bit s dng cc thanh ghi v khng c s khc bit ng k no khi s dng nh cho cc vi chng trnh hay nh cho cc chng trnh. iu ny dn ti vic a vo khi nim v mt my tnh vi tp lnh rt gn RISC vo u nhng nm 1980. Cc my RISC da ch yu trn mt tp lnh cho php thc hin k thut ng dn mt cch thch hp nht bng cch thit k cc lnh 35

Kin trc my tnh

Chng II: Kin trc phn mm b x l

c chiu di c nh, c dng n gin, d gii m. My RISC dng kiu thc hin lnh thanh ghi - thanh ghi. Ch c cc lnh ghi hoc c nh mi cho php thm nhp vo nh. Bng II.7 din t ba mu my RISC u tin: mu my ca IBM (IBM 801) ca Berkeley (RISC1 ca Patterson) v ca Stanford (MIPS ca Hennessy). Ta nhn thy c ba my u c b iu khin bng mch in (khng c nh vi chng trnh), c chiu di cc lnh c nh (32 bits), c mt kiu thi hnh lnh (kiu thanh ghi - thanh ghi) v ch c mt s t lnh. B x l IBM 801 RISC1 MIPS 1980 1982 1983 Nm sn xut 120 39 55 S lnh 0 0 0 Dung lng b nh vi chng trnh 32 32 32 di lnh (tnh bng bit) ECL MSI NMOS VLSI NMOS VLSI K thut ch to Thanh ghi-thanh ghi Thanh ghi-thanh ghi Thanh ghi-thanh ghi Cch thc hin lnh Bng II.7 : c tnh ca ba mu u tin my RISC Tm li, ta c th nh ngha mch x l RISC bi cc tnh cht sau: - C mt s t lnh (thng thng di 100 lnh ). - C mt s t cc kiu nh v (thng thng hai kiu: nh v tc th v nh v gin tip thng qua mt thanh ghi). - C mt s t dng lnh (mt hoc hai) - Cc lnh u c cng chiu di. - Ch c cc lnh ghi hoc c nh mi thm nhp vo b nh. - Dng b to tn hiu iu khin bng mch in trnh chu k gii m cc vi lnh lm cho thi gian thc hin lnh ko di. - B x l RISC c nhiu thanh ghi gim bt vic thm nhp vo b nh trong. Ngoi ra cc b x l RISC u tin thc hin tt c cc lnh trong mt chu k my. B x l RISC c cc li im sau : - Din tch ca b x l dng cho b iu khin gim t 60% (cho cc b x l CISC) xung cn 10% (cho cc b x l RISC). Nh vy c th tch hp thm vo bn trong b x l cc thanh ghi, cc cng vo ra v b nh cache ..... - Tc tnh ton cao nh vo vic gii m lnh n gin, nh c nhiu thanh ghi (t thm nhp b nh), v nh thc hin k thut ng dn lin tc v c hiu qu (cc lnh u c thi gian thc hin ging nhau v c cng dng). - Thi gian cn thit thit k b iu khin l t. iu ny gp phn lm gim chi ph thit k. - B iu khin tr nn n gin v gn lm cho t ri ro mc phi sai st m ta gp thng trong b iu khin. Trc nhng iu li khng chi ci c, kin trc RISC c mt s bt li:

36

Kin trc my tnh

Chng II: Kin trc phn mm b x l

Cc chng trnh di ra so vi chng trnh vit cho b x l CISC. iu ny do cc nguyn nhn sau : + Cm thm nhp b nh i vi tt c cc lnh ngoi tr cc lnh c v ghi vo b nh. Do ta buc phi dng nhiu lnh lm mt cng vic nht nh. + Cn thit phi tnh cc a ch hiu dng v khng c nhiu cch nh v. + Tp lnh c t lnh nn cc lnh khng c sn phi c thay th bng mt chui lnh ca b x l RISC. Cc chng trnh dch gp nhiu kh khn v c t lnh lm cho c t la chn din dch cc cu trc ca chng trnh gc. S cng nhc ca k thut ng dn cng gy kh khn. C t lnh tr gip cho ngn ng cp cao. Cc b x l CISC tr gip mnh hn cc ngn ng cao cp nh c tp lnh phc tp. Hng Honeywell ch to mt my c mt lnh cho mi ng t ca ngn ng COBOL. Cc tin b gn y cho php xp t trong mt vi mch, mt b x l RISC nn v nhiu ton t chuyn dng. Th d, b x l 860 ca Intel bao gm mt b x l RISC, b lm tnh vi cc s l v mt b to tn hiu ho.

II.10 - KIU NH V TRONG CC B X L RISC


Trong b x l RISC, cc lnh s hc v logic ch c thc hin theo kiu thanh ghi v tc th, cn nhng lnh c v ghi vo b nh l nhng lnh c ton hng b nh th c thc hin vi nhng kiu nh v khc. II.10.1 - Kiu nh v thanh ghi y l kiu nh v thng dng cho cc b x l RISC, cc ton hng ngun v kt qu u nm trong thanh ghi m s th t c nu ra trong lnh. Hnh II.5 cho vi v d v kiu thanh ghi v dng cc lnh tng ng trong mt vi kin trc RISC. Hm 5 6 SPARC Khong trng Ngun 2 khc 5 8 Power Op code ch Ngun 1 Ngun 2 Op code m rng 0 PC 6 5 5 5 10 1 ALPHA Op code Ngun 1 Ngun 2 0 Op code m ch 6 5 5 3 1 rng 5 7 Hnh II.5 : Dng lnh trong kiu nh v thanh ghi - thanh ghi cho vi CPU RISC MIPS Op code Ngun 1 Ngun 2 ch 6 5 5 5 Op code ch Op code Ngun 1 0 2 5 6 5 1 II.10.2 - Kiu nh v tc th Trong kiu ny, ton hng l mt s c du, c cha ngay trong lnh. Hnh II.6 cho ta vi v d v dng lnh kiu tc th. 37
Dch chuyn

Kin trc my tnh

Chng II: Kin trc phn mm b x l

MIPS SPARC ALPHA

Op code 6

Thanh ghi ngun

Thanh ghi ch

S c du ( ton hng tc th ) 16

Power PC

Thanh ghi Op code Thanh ghi 1 Ton hng tc th c du Op ch ngun code 5 5 6 1 2 13 Thanh ghi Thanh ghi Ton Op code 1 Op code ngun ch hng tc m rng 5 5 th > 0 6 1 7 8 Thanh ghi Thanh ghi Ton hng tc th c du Op code ch ngun

6 16 5 5 Hnh II.6 : Dng lnh trong kiu nh v thanh ghi - tc th cho vi CPU RISC

II.10.3 - Kiu nh v trc tip Trong kiu ny a ch ton hng nm ngay trong lnh (hnh II.6). V d, kiu nh v trc tip c dng cho cc bin ca h iu hnh, ngi s dng khng c quyn thm nhp cc bin ny. Thanh ghi Thanh ghi di c du a ch s liu 6 5 5 16 SPARC Op Thanh Op code Thanh ghi 1 di c du code ghi a ch 1 13 2 s liu 6 5 5 ALPHA Op code Thanh ghi Thanh ghi di c du s liu a ch 6 5 5 16 Power Op code Thanh ghi Thanh ghi di c du PC s liu a ch 6 5 5 16 Hnh II.7 : Dng lnh thm nhp b nh trong ca vi kin trc RISC II.10.4 - Kiu nh v gin tip bng thanh ghi + di y l kiu c th cho cc kin trc RISC. a ch ton hng c tnh nh sau : a ch ton hng = Thanh ghi (a ch ) + di. Ta rng kiu nh v trc tip ch l mt trng hp c bit ca kiu ny khi thanh ghi (a ch) = 0. Trong cc b x l RISC, mt thanh ghi (R0 hoc R31) c mc vo in th thp (tc l 0) v ta c nh v trc tip khi dng thanh ghi nh l thanh ghi a ch. II.10.5 - Kiu nh v t tng Mt vi b x l RISC, v d b x l PowerPC, dng kiu nh v ny. 38 MIPS Op code

Kin trc my tnh

Chng II: Kin trc phn mm b x l

II.11 - NGN NG CP CAO V NGN NG MY


Trong chi ph cho mt h thng tin hc, bao gm gi tin ca my tnh, gi tin cc phn mm h thng v cc phn mm ng dng, th chi ph cho trin khai phn mm lun ln hn chi ph mua phn cng. V th cc nh tin hc trin khai t lu cc ngn ng gi l ngn ng cp cao. Ngn ng cp cao dng cc lnh c cu trc gn vi ngn ng thng thng hn ngn ng my. Cc ngn ng cp cao ni ting l: FORTRAN cho tnh ton khoa hc, COBOL cho qun l, LISP v PROLOG dng trong tr tu nhn to, PASCAL, C, ADA ... im chnh ca cc ngn ng ny l s c ng v s c lp i vi mi b x l. S c lp i vi mi my tnh c ngha l c th c thi hnh trn mi kin trc phn mm ca b x l, vi iu kin l phi c chng trnh dch dch chng trnh vit bng ngn ng cp cao thnh chng trnh m my ca my tnh ang s dng. y, chng ta khng quan tm n cc c tnh ca ngn ng cp cao m ch quan tm n quan h ca n i vi ngn ng my. Thy vy, mun cho mt chng trnh ngn ng my c thc hin mt cch hu hiu th chng trnh dch phi dch hu hiu cc lnh ca ngn ng cp cao thnh lnh m my. Mun th th kin trc phn mm ca b x l rt quan trng i vi chng trnh dch. Qu trnh chuyn i t ngn ng cp cao sang ngn ng my: mt b bin dch (Compiler) chuyn i ngn ng cp cao (c lp vi kin trc phn mm) sang dng hp ng (ph thuc kin trc phn mm). Mt chng trnh dch hp ng (Assembler) chuyn i mt chng trnh vit bng hp ng (Assembly Language) sang ngn ng my my tnh c th thc hin c chng trnh . Chng trnh bng ngn ng cp cao Trnh bin dch (Compiler) Chng trnh bng hp ng B dch hp ng (Assembler) Chng trnh bng ngn ng my
0000 1010 1100 0101 1001 1111 0110 1000

temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2)

1100 0101 1010 0000

0110 1000 1111 1001

1010 0000 0101 1100

1111 1001 1000 0110

0101 1100 0000 1010

1000 0110 1001 1111

Hnh II.10: M t qu trnh chuyn i t ngn ng cp cao sang ngn ng my Trc y, k thut ch to cc b x l cn km, vic quyt nh mt kin trc phn mm no cho mt b x l nhm gip ch cho lp trnh bng hp ng. Ngi ta c gng tch kin trc phn mm ca b x l ra khi vic thc hin cc chng trnh dch hu hiu. Nhng dn dn, vi s tin b trong cng ngh ch to my tnh, ngi ta bt u ngh ti thit k cc kin trc phn mm lm gim nh cc cng vic ca chng trnh dch ca nhng ngn ng cp cao. Trong nhng nm 39

Kin trc my tnh

Chng II: Kin trc phn mm b x l

1970, ngi ta c gng gim bt chi ph pht trin phn mm bng cch thit k cc kin trc b x l c nhng chc nng m nhng b x l trc phi dng mt phn mm thc hin. Do vy cc kin trc phn mm mnh nh kin trc phn mm ca my VAX, c thc hin. My VAX c nhiu kiu nh v v mt tp lnh phong ph c th s dng nhiu kiu d liu. Tuy nhin, vo u nhng nm 1980, vi s tin b ca cng ngh vit cc chng trnh dch, ngi ta xem xt li cc kin trc phn mm phc tp v c chuyn hng ch to cc kin trc phn mm n gin v hu hiu. Chnh v vy m cc my tnh dng b x l kiu RISC (Reduced Instruction Set Computer) ra i. Vi nhng tin b khng ngng ca cng ngh ch to my tnh, ca cng ngh vit chng trnh dch v ca cng ngh lp trnh, ngi ta ang tin ti ch to cc kin trc phn mm hp dn hn trong tng lai. *****

40

Kin trc my tnh

Chng II: Kin trc phn mm b x l

CU HI N TP V BI TP CHNG II

*****
1. Cc thnh phn ca mt h my tnh n gin 2. Nhim v ca mi bus trong h thng bus ca mt h my tnh n gin? Ti sao trong thc t cn c mt h thng bus vo ra? 3. M t cc kiu thi hnh lnh ca mt my tnh. Ti sao kiu thi hnh lnh thanh ghi thanh ghi c dng nhiu hin ti? 4. M t mi kiu nh v trong cc kiu nh v m mt CPU c th c. Cho CPU RISC, cc kiu nh v no thng c dng nht? 5. S khc bit gia CPU RISC v CPU CISC? 6. Trong CPU Power PC, gi s m tc v ca lnh ADD l 011010. Vit lnh m my tng ng vi ADD R1, R19, #-15673

41

Kin trc my tnh

Chng III: T chc b x l

Chng III: T CHC B X L


Mc ch: Gii thiu cu trc ca b x l trung tm: t chc, chc nng v nguyn l hot ng ca cc b phn bn trong b x l: ng i ca d liu, b iu khin to ra s vn chuyn tn hiu bn trong b x l nhm thc hin tp lnh tng ng vi kin trc phn mm ra. M t din tin thi hnh mt lnh m my, y l c s hiu c cc hot ng x l lnh trong cc k thut ng dn, siu ng dn, siu v hng,...Mt s k thut x l thng tin: ng dn, siu ng dn, siu v hng, my tnh c lnh tht di, my tnh vc-t, x l song song v kin trc IA-64 Yu cu: Sinh vin phi nm vng cu trc ca b x l trung tm v din tin thi hnh mt lnh m my, v y l c s hiu c cc hot ng x l lnh trong cc k thut x l thng tin trong my tnh. B x l c chia ch yu thnh hai b phn: Phn iu khin v phn ng i ca d liu (data path) nh c v trong hnh III.1.

III.1. NG I CA D LIU
Phn ng i d liu gm c b phn lm tnh v lun l (ALU: Arithmetic and Logic Unit), cc mch dch, cc thanh ghi v cc ng ni kt cc b phn trn. Phn ny cha hu ht cc trng thi ca b x l. Ngoi cc thanh ghi tng qut, phn ng i d liu cn cha thanh ghi m chng trnh (PC: Program Counter), thanh ghi trng thi (SR: Status Register), thanh ghi m TEMP (Temporary), cc thanh ghi a ch b nh (MAR: Memory Address Register), thanh ghi s liu b nh (MBR: Memory Buffer Register), b a hp (MUX: Multiplexor), y l im cui ca cc knh d liu - CPU v b nh, vi nhim v lp thi biu truy cp b nh t CPU v cc knh d liu, h thng bus ngun (S1, S2) v bus kt qu (Dest). Nhim v chnh ca phn ng i d liu l c cc ton hng t cc thanh ghi tng qut, thc hin cc php tnh trn ton hng ny trong b lm tnh v lun l ALU v lu tr kt qu trong cc thanh ghi tng qut. ng vo v ng ra cc thanh ghi tng qut c cc mch cht A, B, C. Thng thng, s lng cc thanh ghi tng qut l 32. Phn ng i ca d liu chim phn na din tch ca b x l nhng l phn d thit k v ci t trong b x l.

42

Kin trc my tnh

Chng III: T chc b x l

B X L
BUS S1 S2 BUS DEST

Ng vo

ALU B I U K H I N
Ng vo

Ng ra

Dy cc thanh ghi

TEMP PC SR MAR

IR

MBR

MUX

Ng vo d liu B NH TRONG a ch Ng ra d liu

Hnh III.1: T chc ca mt x l in hnh (Cc ng khng lin tc l cc ng iu khin) 43

Kin trc my tnh

Chng III: T chc b x l

III.2. B IU KHIN
B iu khin to cc tn hiu iu khin di chuyn s liu (tn hiu di chuyn s liu t cc thanh ghi n bus hoc tn hiu vit vo cc thanh ghi), iu khin cc tc v m cc b phn chc nng phi lm (iu khin ALU, iu khin c v vit vo b nh trong...). B iu khin cng to cc tn hiu gip cc lnh c thc hin mt cch tun t. Vic ci t b iu khin c th dng mt trong hai cch sau: dng mch in t hoc dng vi chng trnh (microprogram). III.2.1. B iu khin mch in t hiu c vn hnh ca b iu khin mch in t, chng ta xt n m t v Automate trng thi hu hn: c nhiu h thng hay nhiu thnh phn m mi thi im xem xt u c mt trng thi (state). Mc ch ca trng thi l ghi nh nhng g c lin quan trong qu trnh hot ng ca h thng. V ch c mt s trng thi nht nh nn ni chung khng th ghi nh ht ton b lch s ca h thng, do vy n phi c thit k cn thn ghi nh nhng g quan trng. u im ca h thng (ch c mt s hu hn cc trng thi) l c th ci t h thng vi mt lng ti nguyn c nh. Chng hn, chng ta c th ci t Automate trng thi hu hn trong phn cng my tnh dng mch in hay mt dng chng trnh n gin, trong , n c kh nng quyt nh khi ch bit mt lng gii hn d liu hoc bng cch dng v tr trong on m lnh a ra quyt nh.
B iu khin dng mch in Dy iu khin

Automate trng thi hu hn

Ng ra

ng i d liu

Trng Thi tng lai

Trng thi Ng vo

Xung nhp

IR

Hnh III.2: Nguyn tc vn hnh ca b iu khin dng mch in Hnh III.2 cho thy nguyn tc ca mt b iu khin bng mch in. Cc ng iu khin ca phn ng i s liu l cc ng ra ca mt hoc nhiu Automate trng thi hu hn. Cc ng vo ca Automate gm c thanh ghi lnh, thanh ghi ny cha lnh phi thi hnh v nhng thng tin t b ng i s liu. ng vi

44

Kin trc my tnh

Chng III: T chc b x l

cu hnh cc ng vo v trng thi hin ti, Automate s cho trng thi tng lai v cc ng ra tng ng vi trng thi hin ti. Automate c ci t di dng l mt hay nhiu mch mng logic lp trnh c (PLA: Programmable Logic Array) hoc cc mch logic ngu nhin. K thut iu khin ny n gin v hu hiu khi cc lnh c chiu di c nh, c dng thc n gin. N c dng nhiu trong cc b x l RISC. III.2.2. B iu khin vi chng trnh:
Dy diu khin B iu khin vi chng trnh B nh vi chng trnh Ng ra

ng i d liu

xung nhp PC ca vi CT +1 Xc nh a ch ca vi lnh tip theo

phn vi a ch tip theo

IR

Hnh III.3: Nguyn tc vn hnh ca b iu khin vi chng trnh S nguyn tc ca b iu khin dng vi chng trnh c trnh by hnh III.3. Trong k thut ny, cc ng dy iu khin ca b ng i d liu ng vi cc ng ra ca mt vi lnh nm trong b nh vi chng trnh. Vic iu khin cc tc v ca mt lnh m my c thc hin bng mt chui cc vi lnh. Mt vi my tnh nm bn trong b iu khin thc hin tng lnh ca vi chng trnh ny. Chnh vi my tnh ny iu khin vic thc hin mt cch tun t cc vi lnh hon thnh tc v m lnh m my phi thc hin. Cc tc v ca lnh m my cng tu thuc vo trng thi ca phn ng i d liu. B iu khin bng vi chng trnh c dng rng ri trong cc b x l CISC. B x l ny c tp lnh phc tp vi cc lnh c chiu di khc nhau v c dng thc phc tp. Trong cc b x l CISC, ngi ta ci t mt lnh m my bng cch vit mt vi chng trnh. Nh vy cng vic kh n gin v rt hu hiu. Cc sai st trong thit k automat iu khin cng d sa i.

45

Kin trc my tnh

Chng III: T chc b x l

III.3. DIN TIN THI HNH LNH M MY


Vic thi hnh mt lnh m my c th chia thnh 5 giai on:

c lnh (IF: Instruction Fetch) Gii m lnh (ID: Instruction Decode) Thi hnh lnh (EX: Execute) Thm nhp b nh trong hoc nhy (MEM: Memory access) Lu tr kt qu (RS: Result Storing).

Mi giai on c thi hnh trong mt hoc nhiu chu k xung nhp. 1. c lnh: MAR PC IR M[MAR] B m chng trnh PC c a vo MAR . Lnh c c t b nh trong, ti cc nh c a ch nm trong MAR v c a vo thanh ghi lnh IR. 2. Gii m lnh v c cc thanh ghi ngun: A Rs1 B Rs2 PC PC + 4 Lnh c gii m. K cc thanh ghi Rs1 v Rs2 c a vo A v B. Thanh ghi PC c tng ln ch ti lnh k . hiu r giai on ny, ta ly dng thc ca mt lnh lm tnh tiu biu sau y: M lnh bit 6 Thanh ghi Rs1 5 Thanh ghi Rs2 5 Thanh ghi Rd 5 Tc v 11

Cc thanh ghi ngun Rs1 v Rs2 c s dng tu theo tc v, kt qu c t trong thanh ghi ch Rd. Ta thy vic gii m c thc hin cng lc vi vic c cc thanh ghi Rs1 v Rs2 v cc thanh ghi ny lun nm ti cng v tr trong lnh. 3. Thi hnh lnh: Tu theo loi lnh m mt trong ba nhim v sau y c thc hin: - Lin h ti b nh MAR a ch do ALU tnh tu theo kiu nh v (Rs2). MBR Rs1 a ch hiu dng do ALU tnh c a vo MAR v thanh ghi ngun Rs1 c a vo MBR c lu vo b nh trong.

46

Kin trc my tnh

Chng III: T chc b x l

- Mt lnh ca ALU Ng ra ALU Kt qu ca php tnh ALU thc hin php tnh xc nh trong m lnh, a kt qu ra ng ra. - Mt php nhy Ng ra ALU a ch lnh tip theo do ALU tnh. ALU cng a ch ca PC vi di lm thnh a ch ch v a a ch ny ra ng ra. Nu l mt php nhy c iu kin th thanh ghi trng thi c c quyt nh c cng di vo PC hay khng. 4. Thm nhp b nh trong hoc nhy ln cui Giai on ny thng ch c dng cho cc lnh np d liu, lu gi d liu v lnh nhy. - Tham kho n b nh: MBR M[MAR] hoc M[MAR] MBR S liu c np vo MBR hoc lu vo a ch m MAR tr n. - Nhy: If (iu kin), PC ng ra ALU Nu iu kin ng, ng ra ALU c np vo PC. i vi lnh nhy khng iu kin, ng ra ALU lun c np vo thanh ghi PC. 5. Lu tr kt qu Rd Ng ra ALU hoc Rd MBR Lu tr kt qu trong thanh ghi ch.

III.4. NGT QUNG (INTERRUPT)


Ngt qung l mt s kin xy ra mt cch ngu nhin trong my tnh v lm ngng tnh tun t ca chng trnh (ngha l to ra mt lnh nhy). Phn ln cc nh sn xut my tnh (v d nh IBM, INTEL) dng t ngt qung m ch s kin ny, tuy nhin mt s nh sn xut khc dng t ngoi l, li, by ch nh hin tng ny. B iu khin ca CPU l b phn kh thc hin nht v ngt qung l phn kh thc hin nht trong b iu khin. nhn bit c mt ngt qung lc ang thi hnh mt lnh, ta phi bit iu chnh chu k xung nhp v iu ny c th nh hng n hiu qu ca my tnh. Ngi ta ngh ra ngt qung l nhn bit cc sai st trong tnh ton s hc, v ng dng cho nhng hin tng thi gian thc. By gi, ngt qung c dng cho cc cng vic sau y:

Ngoi vi i hi nhp hoc xut s liu. Ngi lp trnh mun dng dch v ca h iu hnh.

47

Kin trc my tnh


Chng III: T chc b x l

Cho mt chng trnh chy tng lnh. Lm im dng ca mt chng trnh. Bo trn s liu trong tnh ton s hc. Trang b nh thc s khng c trong b nh. Bo vi phm vng cm ca b nh. Bo dng mt lnh khng c trong tp lnh. Bo phn cng my tnh b h. Bo in b ct.

D rng ngt qung khng xy ra thng xuyn nhng b x l phi c thit k sao cho c th lu gi trng thi ca n trc khi nhy i phc v ngt qung. Sau khi thc hin xong chng trnh phc v ngt, b x l phi khi phc trng thi ca n c th tip tc cng vic. n gin vic thit k, mt vi b x l ch chp nhn ngt sau khi thc hin xong lnh ang chy. Khi mt ngt xy ra, b x l thi hnh cc bc sau y: 1. Thc hin xong lnh ang lm. 2. Lu tr trng thi hin ti. 3. Nhy n chng trnh phc v ngt 4. Khi chng trnh phc v chm dt, b x l khi phc li trng thi c ca n v tip tc thc hin chng trnh m n ang thc hin khi b ngt.

III.5. K THUT NG DN (PIPELINE)


y l mt k thut lm cho cc giai on khc nhau ca nhiu lnh c thi hnh cng mt lc. V d: Chng ta c nhng lnh u n, mi lnh c thc hin trong cng mt khon thi gian. Gi s, mi lnh c thc hin trong 5 giai on v mi giai on c thc hin trong 1 chu k xung nhp. Cc giai on thc hin mt lnh l: ly lnh (IF: Instruction Fetch), gii m (ID: Instruction Decode), thi hnh (EX: Execute), thm nhp b nh (MEM: Memory Access), lu tr kt qu (RS: Result Storing). Hnh III.4 cho thy ch trong mt chu k xung nhp, b x l c th thc hin mt lnh (bnh thng lnh ny c thc hin trong 5 chu k). Chui lnh 1 Lnh th i Lnh th i+1 Lnh th i+2 Lnh th i+3 Lnh th i+4 IF 2 ID IF 3 EX ID IF Chu k xung nhp 4 5 6 MEM RS EX ID IF MEM EX ID IF RS MEM EX ID RS MEM RS EX MEM RS

Hnh III.4: Cc giai on khc nhau ca nhiu lnh c thi hnh cng mt lc

48

Kin trc my tnh

Chng III: T chc b x l

So snh vi kiu x l tun t thng thng, 5 lnh c thc hin trong 25 chu k xung nhp, th x l lnh theo k thut ng dn thc hin 5 lnh ch trong 9 chu k xung nhp. Nh vy k thut ng dn lm tng tc thc hin cc lnh. Tuy nhin k thut ng dn c mt s rng buc: - Cn phi c mt mch in thi hnh mi giai on ca lnh v tt c cc giai on ca lnh c thi hnh cng lc. Trong mt b x l khng dng k thut ng dn, ta c th dng b lm ton ALU cp nht thanh ghi PC, cp nht a ch ca ton hng b nh, a ch nh m chng trnh cn nhy ti, lm cc php tnh trn cc ton hng v cc php tnh ny c th xy ra nhiu giai on khc nhau. - Phi c nhiu thanh ghi khc nhau dng cho cc tc v c v vit. Trn hnh III.4, ti mt chu k xung nhp, ta thy cng mt lc c 2 tc v c (ID, MEM) v 1 tc v vit (RS). - Trong mt my c k thut ng dn, c khi kt qu ca mt tc v trc , l ton hng ngun ca mt tc v khc. Nh vy s c thm nhng kh khn m ta s cp mc ti. - Cn phi gii m cc lnh mt cch n gin c th gii m v c cc ton hng trong mt chu k duy nht ca xung nhp. - Cn phi c cc b lm tnh ALU hu hiu c th thi hnh lnh s hc di nht, c s gi, trong mt khong thi gian t hn mt chu k ca xung nhp. - Cn phi c nhiu thanh ghi lnh lu gi lnh m chng ta phi xem xt cho mi giai on thi hnh lnh. - Cui cng phi c nhiu thanh ghi b m chng trnh PC c th ti tc cc lnh trong trng hp c ngt qung.

III.6. KH KHN TRONG K THUT NG DN


Khi thi hnh lnh trong mt my tnh dng k thut ng dn, c nhiu trng hp lm cho vic thc hin k thut ng dn khng thc hin c nh l: thiu cc mch chc nng, mt lnh dng kt qu ca lnh trc, mt lnh nhy. Ta c th phn bit 3 loi kh khn: kh khn do cu trc, kh khn do s liu v kh khn do iu khin.

a. Kh khn do cu trc:
y l kh khn do thiu b phn chc nng, v d trong mt my tnh dng k thut ng dn phi c nhiu ALU, nhiu PC, nhiu thanh ghi lnh IR ... Cc kh khn ny c gii quyt bng cch thm cc b phn chc nng cn thit v hu hiu. b. Kh khn do s liu: Ly v d trng hp cc lnh lin tip sau: Lnh 1: ADD R1, R2, R3 Lnh 2: SUB R4, R1, R5 Lnh 3: AND R6, R1, R7 R8, R1, R9 Lnh 4: OR

49

Kin trc my tnh

Chng III: T chc b x l

Hnh III.5 cho thy R1, kt qu ca lnh 1 ch c th c dng cho lnh 2 sau giai on MEM ca lnh 1, nhng R1 c dng cho lnh 2 vo giai on EX ca lnh 1. Chng ta cng thy R1 c dng cho cc lnh 3 v 4.

1- ADD R1, R2, R3 2- SUB R4, R1, R5 3- AND R6, R1, R4 4- OR R8, R1, R9

IF

ID IF

EX ID IF

MEM RS EX ID IF MEM RS EX ID MEM RS EX MEM RS

Hnh III.5: Chui lnh minh ho kh khn do s liu. khc phc kh khn ny, mt b phn phn cng c dng a kt qu t ng ra ALU trc tip v mt trong cc thanh ghi ng vo nh trong hnh III.6.

CC THANH GHI

a hp

a hp

ALU

Thanh ghi m cha kt qu

R4 R1
Hnh III.6: ALU vi b phn phn cng a kt qu tnh ton tr li ng vo Khi b phn phn cng nu trn pht hin c dng kt qu ca ALU lm ton hng cho lit k, n tc ng vo mch a hp a ng ra ca ALU vo ng vo ca ALU hoc vo ng vo ca mt n v chc nng khc nu cn. c. Kh khn do iu khin: Cc lnh lm thay i tnh thi hnh cc lnh mt cch tun t (ngha l PC tng u n sau mi lnh), gy kh khn v iu khin. Cc lnh ny l lnh nhy n mt a ch tuyt i cha trong mt thanh ghi, hay lnh nhy n mt a ch xc nh mt cch tng i so vi a ch hin ti ca b m chng trnh PC. Cc lnh nhy trn c th c hoc khng iu kin. Trong trng hp n gin nht, tc v nhy khng th bit trc giai on gii m (xem hnh III.4). Nh vy, nu lnh nhy bt u chu k C th lnh m chng trnh

50

Kin trc my tnh

Chng III: T chc b x l

nhy ti ch c bt u chu k C+2. Ngoi ra, phi bit a ch cn nhy n m ta c cui giai on gii m ID. Trong lnh nhy tng i, ta phi cng di cha trong thanh ghi lnh IR vo thanh ghi PC. Vic tnh a ch ny ch c thc hin vo giai on ID vi iu kin phi c mt mch cng vic ring bit. Vy trong trng hp lnh nhy khng iu kin, lnh m chng trnh nhy n bt u thc hin chu k C+2 nu lnh nhy bt u chu k C. Cho cc lnh nhy c iu kin th phi tnh ton iu kin. Thng thng cc kin trc RISC t kt qu vic so snh vo trong thanh ghi trng thi, hoc vo trong thanh ghi tng qut. Trong c 2 trng hp, c iu kin tng ng vi c thanh ghi. c thanh ghi c th c thc hin trong phn na chu k cui giai on ID. Mt trng hp kh hn c th xy ra trong nhng lnh nhy c iu kin. l iu kin c c khi so snh 2 thanh ghi v ch thc hin lnh nhy khi kt qu so snh l ng. Vic tnh ton trn cc i lng logic khng th thc hin c trong phn na chu k v nh th phi ko di thi gian thc hin lnh nhy c iu kin. Ngi ta thng trnh cc trng hp ny khng lm gim mc hu hiu ca my tnh. Vy trng hp n gin, ngi ta c th c a ch cn nhy n v iu kin nhy cui giai on ID. Vy c chm i mt chu k m ngi ta c th gii quyt bng nhiu cch. Cch th nht l ng bng k thut ng dn trong mt chu k, ngha l ngng thi hnh lnh th i+1 ang lm nu lnh th i l lnh nhy. Ta mt trng mt chu k cho mi lnh nhy. Cch th hai l thi hnh lnh sau lnh nhy nhng lu rng hiu qu ca mt lnh nhy b chm mt mt lnh. Vy lnh theo sau lnh nhy c thc hin trc khi lnh m chng trnh phi nhy ti c thc hin. Chng trnh dch hay ngi lp trnh c nhim v xen vo mt lnh hu ch sau lnh nhy. Trong trng hp nhy c iu kin, vic nhy c th c thc hin hay khng thc hin. Lnh hu ch t sau lnh nhy khng lm sai lch chng trnh d iu kin nhy ng hay sai. B x l RISC SPARC c nhng lnh nhy vi hu b. Cc lnh ny cho php thi hnh lnh sau lnh nhy nu iu kin nhy ng v hu b thc hin lnh nu iu kin nhy sai.

III.7. SIU NG DN
My tnh c k thut siu ng dn bc n bng cch chia cc giai on ca k thut ng dn n gin, mi giai on c thc hin trong khon thi gian Tc, thnh n giai on con thc hin trong khon thi gian Tc/n. hu hiu ca k thut ny tng ng vi vic thi hnh n lnh trong mi chu k Tc. Hnh III.7 trnh by th d v siu ng dn bc 2, c so snh vi siu ng dn n gin. Ta thy trong mt chu k Tc, my dng k thut siu ng dn lm 2 lnh thay v lm1 lnh trong my dng k thut ng dn bnh thng. Trong my tnh siu ng dn, tc thc hin lnh tng ng vi vic thc hin mt lnh trong khong thi gian Tc/n. Cc bt li ca siu ng dn l thi gian thc hin mt giai on con ngn Tc/n v vic tr hon trong thi hnh lnh nhy ln. Trong v d hnh III.7, nu lnh th i l mt lnh nhy tng i th lnh ny c gii

51

Kin trc my tnh

Chng III: T chc b x l

m trong giai on ID, a ch nhy n c tnh vo giai on EX, lnh phi c nhy ti l lnh th i+4, vy c tr tr 3 lnh thay v 1 lnh trong k thut ng dn bnh thng. i i+1 i+2 i+3 i+4 i+5 i i+1 i+2 IF ID IF EX ID MEM EX RS MEM RS
IF1 IF2 ID1 ID2 EX1 EX2
MEM1 MEM2

RS1 RS2

IF ID EX MEM RS Hnh III.7: Siu ng dn bc 2 so vi siu ng dn n gin. Trong khong thi gian Tc, my c siu ng dn lm 2 lnh thay v 1 lnh nh trong my c k thut ng dn n gin.

III.8. SIU V HNG (SUPERSCALAR)


My tnh siu v hng bc n c th thc hin ng thi n lnh trong mt chu k xung nhp Tc. Hnh III.8 trnh by mt v d v s vn hnh ca mt my tnh siu v hng bc 2 so vi mt my tnh dng k thut ng dn. i IF ID EX MEM RS i+1 i+2 i+3 i i+1 IF IF ID IF IF ID IF EX ID ID EX ID MEM EX EX MEM EX RS (a) MEM MEM RS (b) MEM RS Hnh III.8: Siu v hng (a) so vi k thut ng dn (b). RS RS

52

Kin trc my tnh

Chng III: T chc b x l

Trong mt my tnh siu v hng phn cng phi qun l vic c v thi hnh ng thi nhiu lnh. Vy n phi c kh nng qun l cc quan h gia s liu vi nhau. Cng cn phi chn cc lnh c kh nng c thi hnh cng mt lc. Nhng b x l u tin a ra th trng dng k thut ny l cc b x l Intel i860 v IBM RS/6000. Cc b x l ny c kh nng thc hin song song nhiu tc v trn s nguyn v trn s l. Nm 1992, ngi ta thy xut hin cc b x l c nhiu b thc hin tc v c lp vi nhau (nhiu ALU, b tnh ton s l, np d liu, lu d liu, nhy), c th thc hin song song nhiu lnh (lnh tnh s nguyn, s l, lnh b nh, lnh nhy...). S lnh c th c thi hnh song song cng nhiu th phn cng thc hin vic ny cng phc tp.

III.9. MY TNH C LNH THT DI VLIW (VERY LONG INSTRUCTION WORD)


My tnh siu v hng c th thc hin 2 hoc 3 lnh trong mi chu k xung nhp. Do k thut ng dn i hi cc lnh phi ph thuc vo nhau nn rt kh thc hin nhiu lnh trong mt chu k. Nh vy, thay v c thc hin nhiu lnh trong mt chu k, ngi ta tm cch a vo nhiu lnh trong mt t lnh di. Mt lnh VLIW c th cha hai tc v tnh ton s nguyn, hai tc v tnh ton s l, hai tc v thm nhp b nh v mt lnh nhy. Mt lnh nh vy c chia thnh nhiu trng, mi trng c th c t 16 n 24 bt v chiu di ca lnh VLIW l t 112 n 168 bt. C nhiu k thut to ra mt lnh VLIW trong tt c cc trng u c dng. Gi thnh v phc tp ca mt my tnh c lnh tht di tng ln rt nhiu nu ngi ta tng s trng trong mt lnh VLIW.

III.10. MY TNH VECT


Mt my tnh vect bao gm mt b tnh ton v hng bnh thng dng k thut ng dn v mt b lm tnh vect. B tnh ton v hng, ging nh b x l dng k thut ng dn, thc hin cc php tnh v hng, cn b lm tnh vect thc hin cc php tnh vect. a s cc my tnh vect cho php lm cc php tnh trn vect s nguyn, vect s l v vect s logic (s Boolean). C 2 kiu kin trc my tnh vect: kiu vect nh - nh v kiu thanh ghi vect. Trong my tnh loi vect b nh - b nh, cc php tnh vect c thc hin trong b nh. Kin trc kiu thanh ghi vect c thc hin trong cc siu my tnh CRAY - 1, CRAY - 2, X - MP, Y - MP, trong cc siu my tnh ca Nht NEC SX/2, Fujitsu VP200 v Hitachi S820. Cc my ny c mt b nhiu thanh ghi vect v nhng tc v vect c thc hin trn cc thanh ghi ny ngoi tr cc tc v np d liu v lu d liu. My CRAY-2 (1995) c 8 thanh ghi vect, mi thanh ghi c th cha 64 vect, mi vect c chiu di 64 bt.

III.11. MY TNH SONG SONG


Trong cc my tnh siu ng dn, siu v hng, my tnh vect, my tnh VLIW, ngi ta dng tnh thc hin song song cc lnh cc mc khc nhau lm tng hiu qu ca chng. Gii hn v kh nng tnh ton ca loi my trn cng

53

Kin trc my tnh

Chng III: T chc b x l

vi s pht trin ca cng ngh my tnh khin ngi ta ngh ti gii php song song theo ngi ta tng cng hiu qu ca my tnh bng cch tng s lng b x l. Cc my tnh c th sp xp vo 4 loi sau: 1- SISD (Single Instructions Stream, Single Data Stream): My tnh mt dng lnh, mt dng s liu. 2- SIMD (Single Instructions Stream, Multiple Data Stream): My tnh mt dng lnh, nhiu dng s liu. 3- MISD (Multiple Instructions Stream, Single Data Stream):My tnh nhiu dng lnh, mt dng s liu. 4- MIMD (Multiple Instruction Stream, Multiple Data Stream): My tnh nhiu dng lnh, nhiu dng s liu. Kiu phn loi ny n gin, d hiu, vn cn hiu lc n hm nay, mc d c nhng my tnh dng kin trc hn tp. Cc my tnh SISD tng ng vi cc my mt b x l m chng ta nghin cu. Cc my MISD kiu my tnh ny khng sn xut thng mi. Cc my SIMD c mt s ln cc b x l ging nhau, cng thc hin mt lnh ging nhau x l nhiu dng d liu khc nhau. Mi b x l c b nh d liu ring, nhng ch c mt b nh lnh v mt b x l iu khin, b ny c v thi hnh cc lnh. My CONNECTION MACHINE 2 (65536 b x l 1 bt) ca cng ty Thinking Machine Inc, l mt v d in hnh ca SIMD. Tnh song song dng trong cc my SIMD l tnh song song ca cc d liu. N ch c hiu qu nu cu trc cc d liu d dng thch ng vi cu trc vt l ca cc b x l thnh vin. Cc b x l vc-t v mng thuc loi my tnh ny Cc my MIMD c kin trc song song, nhng nm gn y, cc my MIMD ni ln v c xem nh mt kin trc ng nhin phi chn cho cc my nhiu b x l dng trong cc ng dng thng thng, mt tp hp cc b x l thc hin mt chui cc lnh khc nhau trn cc tp hp d liu khc nhau. Cc my MIMD hin ti c th c xp vo ba loi h thng s c gii thiu trong phn tip theo ca chng trnh l: SMP (Symmetric Multiprocesors), Cluster v NUMA (Nonunifrom Memory Access) a). Mt h thng SMP bao gm nhiu b x l ging nhau c lp t bn trong mt my tnh, cc b x l ny kt ni vi nhau bi mt h thng bus bn trong hay mt vi s sp xp chuyn mch thch hp. Vn ln nht trong h thng SMP l s kt hp cc h thng cache ring l. V mi b x l trong SMP c mt cache ring ca n, do , mt khi d liu trong b nh trong c th tn ti trong mt hay nhiu cache khc nhau. Nu mt khi d liu trong mt cache ca mt b x l no b thay i s dn n d liu trong cache ca cc b x l cn li v trong b nh trong khng ng nht. Cc giao thc cache kt hp c thit k gii quyt vn ny.

54

Kin trc my tnh

Chng III: T chc b x l

b). Trong h thng cluster, cc my tnh c lp c kt ni vi nhau thng qua mt h thng kt ni tc cao (mng tc cao Fast Ethernet hay Gigabit) v hot ng nh mt my tnh thng nht. Mi my trong h thng c xem nh l mt phn ca cluster, c gi l mt nt (node). H thng cluster c cc u im: - Tc cao: C th to ra mt h thng cluster c kh nng x l mnh hn bt c mt my tnh n l no. Mi cluster c th bao gm hng t my tnh, mi my c nhiu b x l. - Kh nng m rng cao: c th nng cp, m rng mt cluster c cu hnh v hot ng n nh. - tin cy cao: H thng vn hot ng n nh khi c mt nt (node) trong h thng b h hng. Trong nhiu h thng, kh nng chu li (fault tolerance) c x l t ng bng phn mm. - Chi ph u t thp: h thng cluster c kh nng mnh hn mt my tnh n l mnh nht vi chi ph thp hn. c). Mt h thng NUMA (Nonunifrom Memory Access) l h thng a x l c gii thiu trong thi gian gn y, y l h thng vi b nh chia s, thi gian truy cp cc vng nh dnh ring cho cc b x l th khc nhau. iu ny khc vi kiu qun l b nh trong h thng SMP (b nh dng chung, thi gian truy cp cc vng nh khc nhau trong h thng cho cc b x l l nh nhau). H thng ny c nhng thun li v bt li nh sau: Thun li: - Thc hin hiu qu hn so vi h thng SMP trong cc x l song song. - Khng thay i phn mm chnh. - B nh c kh nng b nghn nu c nhiu truy cp ng thi, nhng iu ny c th c khc phc bng cch: + Cache L1&L2 c thit k gim ti thiu tt c cc thm nhp b nh. + Cn cc phn mm cc b c qun l tt vic cc ng dng hot ng hiu qu. + Qun tr b nh o s chuyn cc trang ti cc nt cn dng. Bt li: - H thng hot ng khng trong sut nh SMP: vic cp pht cc trang, cc qu trnh c th c thay i bi cc phn mm h thng nu cn. - H thng phc tp. Lin quan n b nh trong cc my tnh song song, chng ta c th chia thnh hai nhm my: - Nhm my th nht, m ta gi l my c kin trc b nh chia s, c mt b nh trung tm duy nht c phn chia cho cc b x l v mt h thng bus chia s ni cc b x l v b nh. V ch c mt b nh trong nn h thng b nh khng kh nng p ng nhu cu thm nhp b nh ca mt s ln cc b x l. Kiu kin trc b nh chia s c dng trong h thng SMP.

55

Kin trc my tnh

Chng III: T chc b x l

Nhm my th hai bao gm cc my c b nh phn tn vt l. Mi my ca nhm ny gm c cc nt, mi nt cha mt b x l, b nh, mt vi ng vo ra v mt giao din vi h thng kt ni gia cc nt (hnh III.10).
B x l
L1 Cache

B x l
L1 Cache

B x l
L1 Cache

L2 cache

Bus dng h

L2 cache

L2 cache

iu hp vo ra B nh trong dng chung

Bus n i ngoi vi

iu hp vo ra

iu hp vo ra

Hnh III.9: My tnh song song vi b nh dng chung, h thng bus dng chung
B X L + CACHE B X L + CACHE B X L + CACHE

B NH TRONG

I/O

B NH TRONG

I/O

B NH TRONG

I/O

H thng kt ni

B NH TRONG

I/O

B NH TRONG

I/O

B NH TRONG

I/O

B X L + CACHE

B X L + CACHE

B X L + CACHE

Hnh III.10: Cu trc nn ca mt b nh phn tn

56

Kin trc my tnh

Chng III: T chc b x l

Vic phn tn b nh cho cc nt c hai im li. Trc ht, y l mt cch phn tn vic thm nhp b nh. Th hai, cch ny lm gim thi gian ch i lc thm nhp b nh cc b. Cc li im trn lm cho kin trc c b nh phn tn c dng cho cc my a x l c mt s t b x l. im bt li chnh ca kin trc my tnh ny l vic trao i d liu gia cc b x l tr nn phc tp hn v mt nhiu thi gian hn v cc b x l khng cng chia s mt b nh trong chung. Cch thc hin vic trao i thng tin gia b x l v b nh trong, v kin trc logic ca b nh phn tn l mt tnh cht c th ca cc my tnh vi b nh phn tn. C 2 phng php c dng truyn d liu gia cc b x l. i). Phng php th nht l cc b nh c phn chia mt cch vt l c th c thm nhp vi mt nh v chia s mt cch logic, ngha l nu mt b x l bt k c quyn truy xut, th n c th truy xut bt k nh no. Trong phng php ny cc my c gi c kin trc b nh chia s phn tn (DSM: Distributed Sharing Memory). T b nh chia s cho bit khng gian nh v b chia s. Ngha l cng mt a ch vt l cho 2 b x l tng ng vi cng mt nh. ii). Phng php th hai, khng gian nh v bao gm nhiu khng gian nh v nh khng giao nhau v c th c mt b x l thm nhp. Trong phng php ny, mt a ch vt l gn vi 2 my khc nhau th tng ng vi 2 nh khc nhau trong 2 b nh khc nhau. Mi m-un b x l-b nh th c bn l mt my tnh ring bit v cc my ny c gi l a my tnh. Cc my ny c th gm nhiu my tnh hon ton ring bit v c ni vo nhau thnh mt mng cc b.

Hnh III.11: T chc kt ni ca my tnh song song c b nh phn tn

57

Kin trc my tnh

Chng III: T chc b x l

Kin trc song song pht trin mnh trong thi gian gn y do cc l do: - Vic dng x l song song c bit trong lnh vc tnh ton khoa hc v cng ngh. Trong cc lnh vc ny ngi ta lun cn n my tnh c tnh nng cao hn. - Ngi ta chp nhn rng mt trong nhng cch hiu qu nht ch to my tnh c tnh nng cao hn cc my n x l l ch to cc my tnh a x l. - My tnh a x l rt hiu qu khi dng cho a chng trnh. a chng trnh c dng ch yu cho cc my tnh ln v cho cc my phc v ln. Cc v d v cc siu my tnh dng k thut x l song song: - My in ton Blue Gene/L ca IBM ang c t ti Phng th nghim Lawrence Livermore, v ng u trong s 500 siu my tnh mnh nht th gii. Siu my tnh Blue Gene/L s c s dng cho cc cng vic "phi truyn thng", ch yu l gi lp v m phng cc qu trnh sinh hc v nguyn t. My in ton Blue Gene/L t tc hn 70 teraflop (nghn t php tnh/giy). Kt qu ny c th s a c my ln v tr dn u trong danh sch cc siu my tnh nhanh nht th gii, c cng b ngy 8/11/2004. Theo , siu my tnh do IBM lp rp t tc 70,72 teraflop trong cc cuc th nghim hi thng 10/2004. IBM nghin cu v pht trin Blue Gene vi mc ch th nghim nhm to ra cc h thng cc mnh nhng chim t khng gian v tiu th t nng lng. IBM d kin, s lp t cho phng th nghim quc gia Lawrence Livermore mt siu my tnh c tc nhanh gp 4 ln so vi k lc va t c. Khi , thit b s c ng dng vo nhiu nghin cu khoa hc. H thng mi bao gm 16,384 giao im in ton kt ni 32.768 b x l. - Thng tin mi nht (02/2005) cho bit: siu my tnh IBM Blue Gene/L va thit lp k lc mi l c kh nng x l 135,5 nghn t php tnh/giy (135,3 teraflop), vt xa k lc 70,72 teraflop do chnh siu my tnh ny lp nn. S b x l (BXL) ca Blue Gene/L va c cc nh khoa hc tng ln gp i (64.000 BXL) nhm tng cng kh nng tnh ton cho siu my tnh ny. Cng cn phi nhc li rng thit k hon thin ca siu my tnh Blue Gene/L, d kin s hon tt vo khong thng 6 ti, s bao gm 130.000 BXL vi tc tnh ton c k vng vo khong 360 teraflop. Blue Gene l tn gi chung cho d n nghin cu siu my tnh c IBM khi ng t nm 2000, vi mc ch ban u l thit k mt "c my" c kh nng x l 1 teraflop. Trong khi , siu my tnh Blue Gene/L l mt trong nhiu sn phm ch lc ca IBM nhm cnh tranh vi cc hng i th Silicon Graphics v NEC. - Hng in t khng l NEC pht hnh mt supercomputer dng vector, my SX-8 mi ra i c tc x l cc i ln ti 65 teraflop (65 nghn t php tnh du phy ng/giy) v kh nng hot ng n nh mc xp x 90% ca tc 58,5% teraflop. My SX-8 c kin trc khc hn Blue Gene/L ca IBM. N dng kin trc vector nn em n n nh khi hot ng cao hn nhiu so vi dng my tnh v hng (scalar) nh ca IBM - Mt h thng ti trung tm nghin cu ca C quan hng khng v tr M (NASA) ti California cng t c tc 42,7 teraflop. Vi tn gi Columbia, siu my tnh ny s c s dng nghin cu kh tng v thit k my bay. H thng tr gi 50 triu USD (thi im thng 10/2004) ny s dng phn mm Linux v c SGI k hp ng bn cho C quan hng khng v tr M NASA. N c th thc hin

58

Kin trc my tnh

Chng III: T chc b x l

42,7 nghn t php tnh/giy (42,7 teraflop). Tuy nhin, tc cha phi l tt c nhng g ni bt ca siu my tnh ny: h thng mi ch khai thc c 4/5 cng sut ca 10.240 b x l Intel Itanium 2 trong ton b c my t trung tm nghin cu ca NASA California (M). Siu my tnh ny khng ging vi hu ht cc siu my tnh hin nay thng c to nn theo kiu cluster, vi s tham gia ca nhiu c my gi r. Columbia c thit lp t 20 my tnh m mi chic c 512 b x l, kt ni bng cng ngh mng cao tc v u chy mt h iu hnh c lp. Cch xy dng ny rt hu ch cho nhng cng vic nh gi lp cc yu t kh ng lc cho tu khng gian. Mt ng dng khc ca siu my tnh Columbia l vic d bo bo. Phn mm cho tc v ny ang c thit k v ha hn kh nng d bo chnh xc ng i ca bo sm 5 ngy. Ton b my Columbia chim dng mt din tch bng khong 3 sn bng r.

III.12 KIN TRC IA-64


Kin trc IA-64 l mt kin trc mi c gii thiu trong nhng nm gn y. Kin trc ny l sn phm ca s kt hp nghin cu gia hai cng ty my tnh hng u th gii l Intel, HP (Hewlett Packard) v mt s trng i hc. Kin trc mi da trn s pht trin ca cng ngh mch tch hp v k thut x l song song. Kin trc IA-64 gii thiu mt s khi u mi quan trng ca k thut siu v hng - k thut x l lnh song song (EPIC: Expicitly Parallel Intruction Computing) - k thut nh hng nhiu n s pht trin ca b x l hin nay. Sn phm u tin thuc kin trc ny l b x l Itanium. a) c trng ca kin trc IA-64: C ch x l song song l song song cc lnh m my (EPIC) thay v cc b x l song song nh h thng a b x l. Cc lnh di hay rt di (LIW hay VLIW). Cc lnh r nhnh xc nh (thay v on cc lnh r nhnh nh cc kin trc trc). Np trc cc lnh (theo s suy on). Cc c trng ca t chc ca b x l theo kin trc IA-64: C nhiu thanh ghi: s lng thanh ghi cc b x l kin trc IA-64 l 256 thanh ghi. Trong , 128 thanh ghi tng qut (GR) 64 bit cho cc tnh ton s nguyn, lun l; 128 thanh ghi 82 bit (FR) cho cc php tnh du chm ng v d liu ho; ngoi ra, cn c 64 thanh ghi thuc tnh (PR)1 bit ch ra cc thuc tnh lnh ang thi hnh. Nhiu b thi hnh lnh: hin nay, mt my tnh c th c tm hay nhiu hn cc b thi hnh lnh song song. Cc b thi hnh lnh ny c chia thnh bn kiu: + Kiu I (I-Unit): dng x l cc lnh tnh ton s nguyn, dch, lun l, so snh, a phng tin. + Kiu M (M-Unit): Np v lu tr gia thanh ghi v b nh thm vo mt vi tc v ALU. + Kiu B (B-Unit): Thc hin cc lnh r nhnh. + Kiu F (F-Unit): Cc lnh tnh ton s du chm ng

59

Kin trc my tnh

Chng III: T chc b x l

b) nh dng lnh trong kin trc IA-64

PR: Predicate register GR: General hay Floating-point

Hnh III.12: nh dng lnh trong kin trc IA-64

Kin trc IA-64 nh ngha mt gi (buldle) 128 bit cha ba lnh (mi lnh di 41 bit) v mt trng mu (template field) 5 bit. B x l c th ly mt hay nhiu gi lnh thi hnh cng lc. Trng mu (template field) ny cha cc thng tin ch ra cc lnh c th thc hin song song (Bng III.1). Cc lnh trong mt b c th l cc lnh c lp nhau. B bin dch s sp xp li cc lnh trong cc gi lnh k nhau theo mt th t cc lnh c th c thc hin song song Hnh III.12a ch ra nh dng lnh trong kin trc IA-64. Hnh III.12b m t dng tng qut ca mt lnh trong gi lnh. Trong mt lnh, m lnh ch c 4 bit ch ra 16 kh nng c th thi thi hnh mt lnh v 6 bit ch ra thanh ghi thuc tnh c dng vi lnh. Tuy nhin, cc m tc v ny cn tu thuc vo v tr ca lnh bn trong gi lnh, v vy kh nng thi hnh ca lnh nhiu hn s m tc v c ch ra. Hnh III.12c m t chi tit cc trng trong mt lnh (41 bit) Trong bng III.1 , cc kiu L-Unit, X-Unit l cc kiu m rng, c th thc hin lnh bi I-Unit hay B-Unit. Template 00 01 02 03 04 05 08 09 0A Slot 0 M-Unit M-Unit M-Unit M-Unit M-Unit M-Unit M-Unit M-Unit M-Unit Slot 1 I-Unit I-Unit I-Unit I-Unit L-Unit L-Unit M-Unit M-Unit M-Unit Slot 2 I-Unit I-Unit I-Unit I-Unit X-Unit X-Unit I-Unit I-Unit I-Unit

60

Kin trc my tnh

Chng III: T chc b x l

0B 0C 0D 0E 0F 10 11 12 13 16 17 18 19 1C 1D

M-Unit M-Unit I-Unit M-Unit F-Unit I-Unit M-Unit F-Unit I-Unit M-Unit M-Unit F-Unit M-Unit M-Unit F-Unit M-Unit I-Unit B-Unit M-Unit I-Unit B-Unit M-Unit B-Unit B-Unit M-Unit B-Unit B-Unit B-Unit B-Unit B-Unit B-Unit B-Unit B-Unit M-Unit M-Unit B-Unit M-Unit M-Unit B-Unit M-Unit F-Unit B-Unit M-Unit F-Unit B-Unit Bng III.1: Bng m ho tp hp cc nh x trong trng mu. *****

61

Kin trc my tnh

Chng III: T chc b x l

CU HI N TP V BI TP CHNG III

*****
1. Cc thnh phn v nhim v ca ng i d liu? 2. M t ng i d liu ng vi cc lnh sau: i. ADD R1,R2,R3 ii. SUB R1, R2, (R3) iii. ADD R1, R5, #100 iv. JMP R1 (Nhy n nh m R1 tr ti) v. BRA +5 (Nhy b 5 lnh) 3. Th no l ngt qung? Cc giai on thc hin ngt qung ca CPU. 4. V hnh m t k thut ng dn. K thut ng dn lm tng tc CPU ln bao nhiu ln (theo l thuyt)? Ti sao trn thc t s gia tng ny li t hn? 5. Cc iu kin m mt CPU cn phi c ti u ho k thut ng dn. Gii thch tng iu kin. 6. Cc kh khn trong k thut ng dn v cch gii quyt kh khn ny. 7. Th no l my tnh vect? Cc kiu ca kin trc vect? 8. Cho v d v my tnh mt dng lnh, nhiu dng s liu (SIMD) 9. Cc my tnh song song nhiu dng lnh, nhiu dng s liu (MIMD) dng nhiu b x l, c phn thnh 2 loi tu theo t chc b nh ca chng l: my tnh a x l c b nh tp trung chia s v my tnh a x l c b nh phn tn. Phn tch u - khuyt im ca hai loi my tnh ny. 10. Cc loi h thng MIMD. 11. Cc c trng ca kin trc IA-64? nh dng lnh trong kin trc IA-64?

62

Kin trc my tnh

Chng IV: Cc cp b nh

Chng IV: CC CP B NH
Mc ch: Chng ny gii thiu chc nng v nguyn l hot ng ca cc cp b nh my tnh: b nh cache: nguyn l vn hnh, phn loi cc mc, nh gi hiu qu hot ng; v nguyn l vn hnh ca b nh o. Yu cu: Sinh vin phi hiu c cc cp b nh v cch thc vn hnh ca cc loi b nh c gii thiu c th nh gi c hiu nng hot ng ca cc loi b nh.

IV.1. CC LOI B NH
B nh cha chng trnh, ngha l cha lnh v s liu. Ngi ta phn bit cc loi b nh: B nh trong (RAM-B nh vo ra ngu nhin), c ch to bng cht bn dn; b nh ch c (ROM) cng l loi b nh ch c v b nh ngoi bao gm: a cng, a mm, bng t, trng t, cc loi a quang, cc loi th nh,... B nh RAM c c tnh l cc nh c th c c hoc vit vo trong khong thi gian bng nhau cho d chng bt k v tr no trong b nh. Mi nh c mt a ch, thng thng, mi nh l mt byte (8 bit), nhng h thng c th c ra hay vit vo nhiu byte (2,4, hay 8 byte). B nh trong (RAM) c c trng bng dung lng v t chc ca n (s nh v s bit cho mi nh), thi gian thm nhp (thi gian t lc ua ra a ch nh n lc c c ni dung nh ) v chu k b nh (thi gian gia hai ln lin tip thm nhp b nh). MAR RAM MBR

Wi R/W

Wj

Hnh IV.1: Vn hnh ca b nh RAM (Wi, Wj, R/W l cc tn hiu iu khin) Tu theo cng ngh ch to, ngi ta phn bit RAM tnh (SRAM: Static RAM) v RAM ng (Dynamic RAM). RAM tnh c ch to theo cng ngh ECL (CMOS v BiCMOS). Mi bit nh gm c cc cng logic vi 6 transistor MOS, vic nh mt d liu l tn ti nu b nh c cung cp in. SRAM l b nh nhanh, vic c khng lm hu ni dung ca nh v thi gian thm nhp bng chu k b nh. RAM ng dng k thut MOS. Mi bit nh gm c mt transistor v mt t in. Cng nh SRAM, vic nh mt d liu l tn ti nu b nh c cung cp in. Vic ghi nh da vo vic duy tr in tch np vo t in v nh vy vic c mt bit nh lm ni dung bit ny b hu. Vy sau mi ln c mt nh, b phn iu khin b nh phi vit li nh ni dung va c v do chu k b nh ng t nht l gp

63

Kin trc my tnh

Chng IV: Cc cp b nh

i thi gian thm nhp nh. Vic lu gi thng tin trong bit nh ch l tm thi v t in s phng ht in tch np vo v nh vy phi lm ti b nh sau mi 2s. Lm ti b nh l c nh v vit li ni dung vo li nh. Vic lm ti c thc hin vi tt c cc nh trong b nh. Vic lm ti b nh c thc hin t ng bi mt vi mch b nh. B nh DRAM chm nhng r tin hn SRAM.

Hnh IV.2: SRAM v DRAM SDRAM (Synchronous DRAM DRAM ng b), mt dng DRAM ng b bus b nh. Tc SDRAM t t 66-133MHz (thi gian thm nhp b nh t 75ns150ns). DDR SDRAM (Double Data Rate SDRAM) l ci tin ca b nh SDRAM vi tc truyn ti gp i SDRAM nh vo vic truyn ti hai ln trong mt chu k b nh. Tc DDR SDRAM t t 200-400MHz RDRAM (Rambus RAM) l mt loi DRAM c thit k vi k thut hon ton mi so vi k thut SDRAM. RDRAM hot ng ng b theo mt h thng lp v truyn d liu theo mt hng. Mt knh b nh RDRAM c th h tr n 32 chip DRAM. Mi chip c ghp ni tun t trn mt module gi l RIMM (Rambus Inline Memory Module) nhng vic truyn d liu gia cc mch iu khin v tng chp ring bit ch khng truyn gia cc chip vi nhau. Bus b nh RDRAM l ng dn lin tc i qua cc chip v module trn bus, mi module c cc chn vo v ra trn cc u i din. Do , nu cc khe cm khng cha RIMM s phi gn mt module lin tc m bo ng truyn c ni lin.Tc RDRAM t t 400-800MHz B nh ch c ROM cng c ch to bng cng ngh bn dn. Chng trnh trong ROM c vit vo lc ch to n. Thng thng, ROM cha chng trnh khi ng my tnh, chng trnh iu khin trong cc thit b iu khin t ng,...

64

Kin trc my tnh

Chng IV: Cc cp b nh

PROM (Programable ROM): Ch to bng cc mi ni (cu ch - c th lm t bng in). Chng trnh nm trong PROM c th c vit vo bi ngi s dng bng thit b c bit v khng th xa c. EPROM (Erasable Programable ROM): Ch to bng nguyn tt phn cc tnh in. Chng trnh nm trong ROM c th c vit vo (bng in) v c th xa (bng tia cc tm - trung ha tnh in) vit li bi ngi s dng. EEPROM (Eletrically Erasable Programable ROM): Ch to bng cng ngh bn dn. Chng trnh nm trong ROM c th c vit vo v c th xa (bng in) vit li bi ngi s dng. Kiu b nh RAM ROM Programmable ROM (PROM) Erasable PROM Electrically Erasable PROM (EEPROM) Flash Memory Loi c/ghi ch c hu ht ch c C ch xo bng in, mc byte Khng th xo Tia cc tm, mc chip bng in, mc byte bng in Khng C ch ghi bng in Mt n Tnh bay hi C

bng in, mc khi Bng IV.1: Cc kiu b nh bn dn

IV.2. CC CP B NH
Cc c tnh nh lng thng tin lu tr, thi gian thm nhp b nh, chu k b nh, gi tin mi bit nh khin ta phi phn bit cc cp b nh: cc b nh nhanh vi dung lng t n cc b nh chm vi dung lng ln (hnh IV.3)

Hnh IV.3: Cc cp b nh

65

Kin trc my tnh

Chng IV: Cc cp b nh

Cc c tnh chnh ca cc cp b nh dn n hai mc chnh l: mc cache - b nh trong v mc b nh o (bao gm b nh trong v khng gian cp pht trn a cng) (hnh IV.4). Cch t chc ny trong sut i vi ngi s dng. Ngi s dng ch thy duy nht mt khng gian nh v nh, c lp vi v tr thc t ca cc lnh v d liu cn thm nhp.

M c cache - B nh trong

Cc thanh ghi

Cache B nh trong a cng Hnh IV.4: Hai mc b nh Bng t, CD, DVD Hnh IV.4: Hai mc b nh Cc cp b nh gip ch cho ngi lp trnh mun c mt b nh tht nhanh vi chi ph u t gii hn. V cc b nh nhanh t tin nn cc b nh c t chc thnh nhiu cp, cp c dung lng t th nhanh nhng t tin hn cp c dung lng cao hn. Mc tiu ca vic thit lp cc cp b nh l ngi dng c mt h thng b nh r tin nh cp b nh thp nht v gn nhanh nh cp b nh cao nht. Cc cp b nh thng c lng vo nhau. Mi d liu trong mt cp th c gp li trong cp thp hn v c th tip tc gp li trong cp thp nht. Chng ta c nhn xt rng, mi cp b nh c dung lng ln hn cp trn mnh, nh x mt phn a ch cc nh ca mnh vo a ch nh ca cp trn trc tip c tc nhanh hn, v cc cp b nh phi c c ch qun l v kim tra cc a ch nh x.

Mc b nh o

IV.3. XC SUT TRUY CP D LIU TRONG B NH TRONG


Cache l b nh nhanh, n cha lnh v d liu thng xuyn dng n. Vic la chn lnh v d liu cn t vo cache da vo cc nguyn tc sau y: Mt chng trnh mt 90% thi gian thi hnh lnh ca n thi hnh 10% s lnh ca chng trnh. Nguyn tc trn cng c p dng cho vic thm nhp d liu, nhng t hiu nghim hn vic thm nhp lnh. Nh vy c hai nguyn tc: nguyn tc v khng gian v nguyn tc v thi gian Nguyn tc v thi gian: cho bit cc nh c h thng x l thm nhp c kh nng s c thm nhp trong tng lai gn. Tht vy, cc chng trnh c cu to vi phn chnh l phn c thi hnh nhiu nht v cc phn ph dng

66

Kin trc my tnh

Chng IV: Cc cp b nh

x l cc trng hp ngoi l. Cn s liu lun c cu trc v thng thng ch c mt phn s liu c thm nhp nhiu nht m thi. Nguyn tc v khng gian: cho bit, b x l thm nhp vo mt nh th c nhiu kh nng thm nhp vo nh c a ch k tip do cc lnh c sp xp thnh chui c th t. T chc cc cp b nh sao cho cc lnh v d liu thng dng c nm trong b nh cache, iu ny lm tng hiu qu ca my tnh mt cch ng k.

IV.4. VN HNH CA CACHE


Mc cache -b nh trong trong bng cc cp b nh c c cu vn hnh trong sut i vi b x l. Vi thao tc c b nh, b x l gi mt a ch v nhn mt d liu t b nh trong. Vi thao tc ghi b nh, b x l vit mt d liu vo mt nh vi mt a ch c ch ra trong b nh. cho chng trnh vn hnh bnh thng th cache phi cha mt phn con ca b nh trong b x l c th thm nhp vo cc lnh hoc d liu thng dng t b nh cache. Do dung lng ca b nh cache nh nn n ch cha mt phn chng trnh nm trong b nh trong. m bo s ng nht gia ni dung ca cache v b nh trong th cache v b nh trong phi c cng cu trc. Vic chuyn d liu gia cache v b nh trong l vic ti ln hay ghi xung cc khi d liu. Mi khi cha nhiu t b nh tu thuc vo cu trc b nh cache. S la chn kch thc ca khi rt quan trng cho vn hnh ca cache c hiu qu. Chuyn tng t Chuyn tng khi

B x l

Cache

B nh trong

Hnh IV.5: Trao i d liu gia cc thnh phn CPU-Cache-B nh trong Trc khi kho st vn hnh ca cache, ta xt n cc khi nim lin quan: - Thnh cng cache (cache hit): b x l tm gp phn t cn c (ghi) trong cache.
- Tht bi cache (cache miss): b x l khng gp phn t cn c (ghi) trong

cache.
- Trng pht tht bi cache (cache penalty): Thi gian cn thit x l mt

tht bi cache. Thi gian bao gm thi gian thm nhp b nh trong cng vi thi gian chuyn khi cha t cn c t b nh trong n cache. Thi gian ny tu thuc vo kch thc ca khi. hiu c cch vn hnh ca cache, ta ln lt xem xt v tr li bn cu hi lin quan n cc tnh hung khc nhau xy ra trong b nh trong. Cu hi 1: Phi mt khi b nh vo ch no ca cache (sp xp khi)? Cu hi 2: Lm sao tm mt khi khi n hin din trong cache (nhn din khi)?

67

Kin trc my tnh

Chng IV: Cc cp b nh

Cu hi 3: Khi no phi c thay th trong trng hp tht bi cache (thay th khi)? Cu hi 4: Vic g xy ra khi ghi vo b nh (chin thut ghi)? Tr li cu hi 1: Phi mt khi b nh vo ch no ca cache (sp xp khi)? Mt khi b nh c t vo trong cache theo mt trong ba cch sau: Kiu tng ng trc tip: Nu mi khi b nh ch c mt v tr t khi duy nht trong cache c xc nh theo cng thc: K= i mod n Trong : K: v tr khi t trong cache i: s th t ca khi trong b nh trong n: s khi ca cache Nh vy, trong kiu xp t khi ny, mi v tr t khi trong cache c th cha mt trong cc khi trong b nh cch nhau xn khi (x: 0,1,...,m; n: s khi ca cache) V d: S th t khi cache S th t ca khi trong b nh trong 0 0, n, 2n,...mn 1 1,n+1, 2n+1,...,mn+1 ... ... n-1 n-1, 2n-1,...mn-1 Kiu hon ton phi hp: trong kiu t khi ny, mt khi trong b nh trong c th c t vo v tr bt k trong cache. Nh vy, trong kiu xp t khi ny, mi v tr t khi trong cache c th cha mt trong tt c cc khi trong b nh Kiu phi hp theo tp hp: vi cch t chc ny, cache bao gm cc tp hp ca cc khi cache. Mi tp hp ca cc khi cache cha s khi nh nhau. Mt khi ca b nh trong c th c t vo mt s v tr khi gii hn trong tp hp c xc nh bi cng thc: K= i mod s Trong : K: v tr khi t trong cache i: s th t ca khi trong b nh trong s: s lng tp hp trong cache. Trong cch t khi theo kiu phi hp theo tp hp, nu tp hp c m khi, s tng ng gia cc khi trong b nh trong v cc khi ca cache c gi l phi hp theo tp hp m khi. Nu m=1 (mi tp hp c 1 khi), ta c kiu tng ng trc tip. Nu m=n (n: s khi ca cache), ta c kiu tng hon ton phi hp. Hin nay, phn ln cc cache ca cc b x l u l kiu tng ng trc tip hay kiu phi hp theo tp hp (mi tp hp gm 2 hoc 4 khi). V d: B nh trong c 32 khi, cache c 8 khi, mi khi gm 32 byte, khi th 12 ca b nh trong c a vo cache.

68

Kin trc my tnh

Chng IV: Cc cp b nh

S th t khi

1 0

1 1

1 2

1 3

1 4

1 5

1 6

1 7

1 8

1 9

2 0

2 1

2 2

2 3

2 4

2 5

2 6

2 7

2 8

2 9

3 0

3 1

B nh trong

S th t khi

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

B nh cache

Hon ton phi hp

Tng ng trc tip

TH0

Phi hp theo tp hp

TH1

TH2

TH3

Tr li cu hi 2: Lm sao tm mt khi khi n hin din trong cache (nhn din khi)? Mi khi ca cache u c mt nhn a ch cho bit s th t ca cc khi b nh trong ang hin din trong cache. Nhn ca mt khi ca cache c th ch thng tin cn thit c xem xt bit c cc khi nm trong cache c cha thng tin m b x l cn c hay khng. Tt c cc nhn u c xem xt song song (trong kiu tng ng trc tip v phi hp theo tp hp) v tc l yu t then cht. bit xem mt khi ca ca cache c cha thng tin m b x l cn tm hay khng, ngi ta thm mt bit nh du (valid bit) vo nhn ni ln khi c cha thng tin m b x l cn tm hay khng. Nh m t phn u, vi thao tc c (ghi) b nh, b x l a ra mt a ch v nhn (vit vo) mt d liu t (vo) b nh trong. a ch m b x l a ra c th phn tch thnh hai thnh phn: phn nhn dng s th t khi v phn xc nh v tr t cn c trong khi. Tng ng vi ba kiu lp t khi xt, ta c: a. Cn c vo t chc s t trong khi b nh m s bit trong a ch xc nh v tr t cn c trong khi. Cch ny ng vi c ba cch xp t khi xt. b. Phn nhn dng s th t khi s khc nhau tu thuc vo cch xp t khi, trng ch s khi c so snh vi nhn ca cache xc nh khi trong cache. D liu c b x l c cng lc vi vic c nhn. Phn ch s khi ca khi trong b nh trong c so snh vi bng tng quan xc nh khi c nm trong cache hay khng. chc rng nhn cha thng tin ng n (tc l khi c cha t m b x l cn c-ghi), nu vic so snh nhn ca khi cache ging vi s th t khi, bit nh du (Valid bit) phi c bt ln. Ngc li, kt qu so snh c b qua. B x l cn c vo phn xc nh t trong khi c (ghi) d liu t (vo) cache. i vi kiu tng ng trc tip, phn nhn dng ch s khi c chia thnh hai phn:

69

Kin trc my tnh

Chng IV: Cc cp b nh

+ xt.

Phn ch s khi cache: ch ra s th t khi cache tng ng cn xem

+ Phn nhn: so snh tng ng vi nhn ca khi cache c ch ra bi phn ch s khi. Ch s khi trong b nh Nhn Ch s khi cache a ch t cn c trong khi

i vi kiu hon ton phi hp, phn nhn dng ch s khi trong a ch s c so snh vi nhn ca tt c cc khi cache. Ch s khi a ch t cn c trong khi

i vi kiu phi hp theo tp hp, phn nhn dng ch s khi c chia thnh hai phn: + Phn ch s tp hp: ch ra s th t tp hp trong cache cn xem xt. + Phn nhn: so snh tng ng vi nhn ca cc khi cache thuc tp hp c ch ra bi phn ch s tp hp. Ch s khi b nh Nhn Ch s tp hp a ch t cn c trong khi

V d: phn tch a ch mt t trong c cho trn, a ch xc nh mt t trong b nh c 10 bit, tu theo cch xp t khi m ta c th phn tch a ch ny thnh cc thnh phn nh sau: i vi kiu tng ng trc tip: 10 bit Ch s khi b nh (5 bit) Nhn Ch s khi cache (2 bit) (3 bit) i vi kiu hon ton phi hp: 10 bit a ch t cn c trong khi (5 bit) a ch t cn c trong khi (5 bit)

Ch s khi b nh (Nhn) (5 bit) -

i vi kiu phi hp theo tp hp, gi s cache gm 4 tp hp, mi tp hp gm hai khi:

70

Kin trc my tnh

Chng IV: Cc cp b nh

10 bit Ch s khi b nh (5 bit) Nhn Ch s tp hp (3 bit) (2 bit) a ch t cn c trong khi (5 bit)

Tr li cu hi 3: Khi no phi c thay th trong trng hp tht bi cache (thay th khi)? Khi c tht bi cache, b iu khin cache thm nhp b nh trong v chuyn khi m b x l cn c (ghi) vo cache. Nh vy, khi no trong cache s b thay th bi khi mi c chuyn ln. i vi kiu tng ng trc tip, v tr t khi khng c s la chn, n c xc nh bi trng ch s khi cache trong a ch ca t cn c (ghi). Nu cache l kiu hon ton phi hp hay phi hp theo tp hp th khi tht bi phi chn la thay th trong nhiu khi. C bn chin thut ch yu dng chn khi thay th trong cache: - Thay th ngu nhin: phn b ng u vic thay th, cc khi cn thay th trong cache c chn ngu nhin. - Khi xa nht (LRU: Least Recently Used): cc khi c thm nhp s c nh du v khi b thay th l khi khng c dng t lu nht. - Vo trc ra trc (FIFO: First In First Out): Khi c a vo cache u tin, nu b thay th, khi s c thay th trc nht. - Tn s s dng t nht (LFU: Least Frequently Used): Khi trong cache c tham chiu t nht iu ny s dng h qu ca nguyn tc s dng nh theo thi gian: nu cc khi mi c dng c kh nng s c dng trong tng lai gn, khi b thay th l khi khng dng trong thi gian lu nht. Tr li cu hi 4: Vic g xy ra khi ghi vo b nh (chin thut ghi)? Thng thng b x l thm nhp cache c thng tin. Ch c khong 15% cc thm nhp vo cache l thc hin thao tc ghi (con s ny l 33% vi cc tnh ton vect-vect v 55% i vi cc php dch chuyn ma trn). Nh vy, ti u ho cc hot ng ca cache, cc nh thit k tm cch ti u ho vic c bi v cc b x l phi i n khi vic c hon thnh nhng s khng i n khi vic ghi hon tt. Hn na, mt khi c th c c, so snh v nh th vic c mt khi c th c bt u khi ch s khi c bit. Nu thao tc c thnh cng, d liu nh cn c s c giao ngay cho b x l. Ch rng, khi mt khi c nh x t b nh trong vo cache, vic c ni dung ca khi cache khng lm thay i ni dung ca khi so vi khi cn nm trong b nh trong. i vi vic ghi vo b nh th khng ging nh trn, vic thay i ni dung ca mt khi khng th bt u trc khi nhn c xem xt bit c thnh cng hay tht bi. Thao tc ghi vo b nh s tn nhiu thi gian hn thao tc c b nh. Trong vic ghi b nh cn c mt kh khn khc l b x l cho bit s byte cn phi ghi, thng l t 1 n 8 byte. m bo ng nht d liu khi lu tr, c hai cch chnh ghi vo cache:

71

Kin trc my tnh

Chng IV: Cc cp b nh

- Ghi ng thi: Thng tin c ghi ng thi vo khi ca cache v khi ca b nh trong. Cch ghi ny lm chm tc chung ca h thng. Cc ngoi vi c th truy cp b nh trc tip - Ghi li: m bo tc x l ca h thng, thng tin cn ghi ch c ghi vo khi trong cache. qun l s khc bit ni dung gia khi ca cache v khi ca b nh trong, mt bit trng thi (Dirty bit hay Update bit) c dng ch th. Khi mt thao tc ghi vo trong cache, bit trng thi (Dirty bit hay Update bit) ca khi cache s c thit lp. Khi mt khi b thay th, khi ny s c ghi li vo b nh trong ch khi bit trng thi c thit lp. Vi cch ghi ny, cc ngoi vi lin h n b nh trong thng qua cache. Khi c mt tht bi ghi vo cache th phi la chn mt trong hai gii php sau: - Ghi c np: khi cn ghi t b nh trong c np vo trong cache nh m t trn. Cch ny thng c dng trong cch ghi li. - Ghi khng np: khi c thay i b nh trong khng c a vo cache. Cch ny c dng trong cch ghi ng thi. Trong cc t chc c nhiu hn mt b x l vi cc t chc cache v b nh chia s, cc vn lin quan n tnh ng nht ca d liu cn c m bo. S thay i d liu trn mt cache ring l s lm cho d liu trn cc h thng cache v b nh lin quan khng ng nht. Vn trn c th c gii quyt bng mt trong cc h thng cache t chc nh sau: Mi b iu khin cache s theo di cc thao tc ghi vo b nh t cc b phn khc. Nu thao tc ghi vo phn b nh chia s c nh x vo cache ca n qun l, b iu khin cache s v hiu ho s thm nhp ny. Chin lc ny ph thuc vo cch ghi ng thi trn tt c cc b iu khin cache. Mt vi mch c dng iu khin vic cp nht, mt thao tc ghi vo b nh t mt cache no s c cp nht trn cc cache khc. Mt vng nh chia s cho mt hay nhiu b x l th khng c nh x ln cache. Nh vy, tt c cc thm nhp vo vng nh chia s ny u b tht bi cache.

IV.5. HIU QU CA CACHE


Thng thng ngi ta dng thi gian thm nhp trung bnh b nh trong nh gi hiu qu ca cache. Thi gian thm nhp trung bnh c cho bi cng thc:
Thi gian thm nhp Thi gian thm T l Trngphat * trung bnh b = + thtbai nh nhpthanh cng thtbai

Thi gian thm nhp thnh cng l thi gian thm nhp vo mt thng tin trong mt thnh cng cache. T s tht bi l t s gia s tht bi cache v tng s thm nhp cache. Thi gian thm nhp thnh cng v trng pht tht bi c o bng n v thi gian hoc bng chu k xung nhp (clock cycle). Trong vic tm kim thng tin trong cache phi ch lm gim t l tht bi m cc nguyn nhn chnh l nh sau:

72

Kin trc my tnh

Chng IV: Cc cp b nh

- Khi ng: trong ln thm nhp cache u tin, khng c thng tin cn tm trong cache nn phi chuyn khi cha thng tin vo cache. - Kh nng: v cache khng th cha tt c cc khi cn thit cho vic thi hnh mt chng trnh nn gp tht bi do cache thiu kh nng, do mt khi b ly ra khi cache ri li c a vo sau ny. - Tranh chp: Nu chin thut thay th cc khi l phi hp theo tp hp hay tng ng trc tip, cc tht bi do tranh chp xy ra v mt khi c th b a ra khi cache ri c gi vo sau nu c nhiu khi phi c thay th trong cc tp hp. Ba nguyn nhn trn cho ta nim v nguyn nhn tht bi, nhng m hnh n gin trn c nhng hn ch ca n. M hnh ny gip ta thy mt s liu trung bnh nhng cha gii thch c tng tht bi mt. V d, nu tng kch thc cache th gim tht bi do tranh chp v tht bi do kh nng v cache cng ln th nhiu khi c th c a vo. Tuy nhin, mt tht bi c th i t tht bi do kh nng n tht bi do tranh chp khi kch thc ca cache thay i. Khi nu ba nguyn nhn trn ta khng lu n cch thc thay th cc khi. Cch thc ny c th dn n nhng vn hnh bt thng nh l t l tht bi cao ln khi phi hp ln ln.

IV.6. CACHE DUY NHT HAY CACHE RING L


Cache duy nht cha ng thi lnh v d liu. Cache ring l phn bit cache lnh v cache d liu. Gii php sau c li l trnh cc kh khn do kin trc, khi thi hnh cc lnh dng k thut ng dn. Vi mt cache duy nht, s c tranh chp khi mt lnh mun thm nhp mt s liu trong cng mt chu k ca giai on c mt lnh khc. Cache ring l cn gip ti u ho mi loi cache v mt kch thc tng qut, kch thc cc khi v phi hp cc khi.

IV.7. CC MC CACHE
Vic dng cache trong c th lm cho s cch bit gia kch thc v thi gian thm nhp gia cache trong v b nh trong cng ln. Ngi ta a vo nhiu mc cache: Cache mc mt (L1 cache): thng l cache trong (on-chip cache; nm bn trong CPU) Cache mc hai (L2 cache) thng l cache ngoi (off-chip cache; cache ny nm bn ngoi CPU). Ngoi ra, trong mt s h thng (PowerPC G4, IBM S/390 G4, Itanium ca Intel) cn c t chc cache mc ba (L3 cache), y l mc cache trung gian gia cache L2 v mt th b nh.

73

Kin trc my tnh

Chng IV: Cc cp b nh

B x l IBM 360/85 PDP-11/70 VAX 11/780 IBM 3033 IBM 3090 Intel 80486 Pentium PowerPC 601 PowerPC 620 PowerPC G4 IBM S390/G4 IBM S390/G6 Pentium 4 IBM SP CRAY MTA b Itanium SGI Origin 2001
a b

Kiu Mainframe Mini Computer Mini Computer Mainframe Mainframe PC PC PC PC PC/Server Mainframe Mainframe PC/Server High-End server/ Super Computer Super Computer PC/Server High-End server

Nm pht hnh 1968 1975 1978 1978 1985 1989 1993 1993 1996 1999 1997 1999 2000 2000 2000 2001 2001

L1 Cache a 16 to 32 KB 1 KB 16 KB 64 KB 128 to 256 KB 8 KB 8 KB / 8 KB 32 KB 32 KB / 32 KB 32 KB / 32 KB 32 KB 256 KB 8 KB / 8 KB 64 KB / 32 KB 8 KB 16 KB / 16 KB 32 KB / 32 KB

L2 Cache 256 to 512 KB 256KB to 1MB 256 KB 8 MB 256 KB 8 MB 2 MB 96 KB 4 MB

L3 Cache 2 MB 2 MB 2 MB -

Hai gi tr cch nhau bi du / ch gi tr cache lnh v cache d liu C hai gi tr u l cache lnh Bng IV.2: Kch thc cache ca mt s h thng

IV.8. B NH TRONG
B nh trong tho mn cc yu cu ca cache v c dng lm m vo ra v b nh trong v a l n i ch a cc thng tin t ngoi a vo, v a l n i xu t ra cc thng tin cho cache. Vi c o hi u qu c a b nh trong d a vo th i gian thm nh p v b rng di thng. Thng th ng th i gian thm nh p b nh trong l ph n t quan trng cho cache trong lc di thng b nh l ph n chnh cho cc tc v xu t nh p. V i vi c dng ph bi n cc cache ngoi, di thng c a b nh trong c ng tr thnh quan trng cho cache. Mc d cache cn b nh trong c thi gian thm nhp nh, nhng thng th d ci thin di thng b nh nh nhiu cch t chc b nh mi, hn l gim thi gian thm nhp cho cache. Cache th hng cc tin b v di thng bng cch tng kch thc ca mi khi ca cache m khng tng ng k trng pht tht bi cache. Ngi ta dng cc k thut sau y ni rng di thng ca b nh trong: Ni rng chiu di nh trong. y l k thut n gin tng gii thng b nh. Thng thng cache v b nh trong c chiu rng nh l chiu rng 1 t v b x l thm nhp vo mt t nh. Nhn i, nhn bn chiu rng nh ca cache v b nh trong lm lu lng thm nhp b nh trong c nhn i hay nhn bn. Vy cng phi chi tiu thm ni rng bus b nh (l bus ni b x l vi b nh). Mt v d b x l c chiu di nh trong ln l b x l ALPHA AXP 21064 (Hng DEC). Cache ngoi, b nh trong v bus b nh u c rng l 256 bit.

74

Kin trc my tnh

Chng IV: Cc cp b nh

B nh an cho n gin: cc IC b nh c th c t chc thnh di c hay vit nhiu t cng mt lc thay v ch c mt t, rng ca bus v ca cache khng thay i. Khi gi nhiu a ch n nhiu di th ta c c nhiu t cng mt lc. B nh an cho cng cho php ghi vo b nh nhiu t cng mt lc. T chc b nh an cho n gin khng rc ri nhiu so vi t chc bnh thng ca b nh trong v cc di c th dng chung cc ng a ch vi b iu khin nh, v nh th mi di c th dng phn s liu ca bus b nh. SDRAM v DDR SDRAM l cc loi RAM dng k thut ny B nh an cho t chc thnh di c lp: mt t chc b nh an cho hiu qu hn, l cho php nhiu thm thp b nh v nh th cho php cc di lm vic c lp vi nhau. Mi di cn c cc ng a ch ring bit v i khi cn bus s liu ring bit: Trong trng hp ny b x l c th tip tc cng vic ca mnh trong lc ch i s liu (trng hp tht bi cache). RDRAM l b nh loi ny Trnh xung t gia cc di b nh. Trong cc my tnh a x l v my tnh vect, h thng b nh c thit k nhm cho php nhiu yu cu thm nhp c lp nhau. S hiu qu ca h thng tu thuc vo tn s cc trng hp c yu cu c lp thm nhp vo cc di khc nhau. Vi s an cho bnh thng (hnh IV.6), cc thm nhp tun t hoc tt c cc thm nhp vo cc a ch cch bit nhau mt s chn, th vn hnh tt nhng s gp rc ri nu s cch bit gia cc a ch l mt s l. Mt bin php m cc my tnh ln dng l lm gim bt cc trng hp xung t tnh bng cch tng s lng cc di. Th d, my NEC SX/3 chia b nh trong ra 128 di. a ch 0 4 8 12 a ch Di 1 a ch Di 2 a ch Di 3 1 2 3 5 6 7 9 10 11 13 14 15 Hnh IV.6: B nh an cho bc 4. Di th i cha tt c cc t c a ch tho mn cng thc (a ch) mod 4 = i Di 0

IV.9. B NH O
B nh o xc nh mt c ch vn chuyn t ng s liu gia b nh trong v b nh ngoi (a t). Trc y, khi di ca chng trnh vt qu gii hn dung lng b nh th ngi lp trnh phi phn chia chng trnh ca mnh thnh tng phn t loi b nhau (overlays) v phi t qun l vic trao i thng tin gia b nh v a t. B nh o lm nh trch nhim ca cc nh lp trnh bng cch lm cho vic trao i thng tin ny c thc hin mt cch t ng. Trong cc b x l hin i, b nh o c dng cho php thc hin cng lc nhiu tin trnh (process), mi tin trnh c mt khng gian nh v ring. Nu tt c cc khng gian nh v ny u thuc khng gian nh v b nh trong th rt tn km. B nh o bao gm b nh trong v b nh ngoi c phn tch thnh khi c th cung cp cho mi chng trnh mt s khi cn thit cho vic thc hin chng trnh . Hnh IV.7 cho thy mt chng trnh cha trong b nh o gm 4 khi, 3 trong 4 khi nm b nh trong, khi th t nm trn a.

75

Kin trc my tnh


a ch o
0 4K 8K 12K 16K 20K 24K 28K 32K ... ... 16M

Chng IV: Cc cp b nh
a ch vt l A B C D
0 4K 8K 12K 16K 20K 24K 28K

b nh trong C

A B

... ...

a cng b nh o D D

Hnh IV.7. Mt chng trnh gm 4 trang A,B,C,D trong trang D nm trong a Ngoi vic phn chia khng gian b nh, cn bo v v qun l t ng cc cp b nh, b nh o n gin ho vic np chng trnh vo b nh thi hnh nh mt c ch c gi l s ti nh a ch (address relocation). C ch ny cho php mt chng trnh c th c thi hnh khi n nm bt c v tr no trong b nh. Tham s Cache B nh o Chiu di mi khi (trang) Thi gian thm nhp thnh cng Trng pht khi tht bi (Thi gian thm nhp) (Di chuyn s liu) T s tht bi Dung lng 16 - 128 byte 1 - 2 xung nhp 8 - 100 xung nhp 6 - 60 xung 2 - 40 xung 0,5% - 10% 8 KB 8MB 4096 - 65536 bytes 40 - 100 xung nhp 700.000 - 6 triu xung 500.000 - 4 triu xung 200.000 - 2 triu xung 0,00001% - 0,001% 16 MB 8GB

Bng IV.3: i lng in hnh cho b nh cache v b nh o. So vi b nh cache th cc tham s ca b nh o tng t 10 n 100.000 ln Ngoi s khc bit nh lng m ta thy trong hnh IV.9, c nhng khc bit khc gia b nh cache v b nh o l: - Khi tht bi cache, s thay th mt khi trong cache c iu khin bng phn cng, trong khi s thay th trong b nh o l ch yu do h iu hnh.

76

Kin trc my tnh

Chng IV: Cc cp b nh

- Khng gian nh v m b x l qun l l khng gian nh v ca b nh o, trong lc th dung lng b nh cache khng tu thuc vo khng gian nh v b x l. - B nh ngoi cn c dng lu tr tp tin ngoi nhim v l hu phng ca b nh trong (trong cc cp b nh). B nh o cng c thit k bng nhiu k thut c th cho chnh n. Cc h thng b nh o c th c chia thnh 2 loi: loi vi khi c dung lng c nh gi l trang, v loi vi khi c chiu di thay i gi l on. nh v trang xc nh mt a ch trong trang, ging nh nh v trong cache. Trong nh v on cn 2 t: mt t cha s th t on v mt t cha di trong on. Chng trnh dch gp kh khn nhiu hn trong nh v on. Do vic thay th cc on, ngy nay t my tnh dng nh v on thun tu. Mt vi my dng cch hn hp gi l on trang. Trong mi on cha mt s nguyn cc trang.By gi chng ta tr li 4 cu hi t ra trong cc cp b nh cho b nh o. Cu hi 1: Mt khi c t ti u trong b nh trong? Vic trng pht b nh o khi c tht bi, tng ng vi vic phi thm nhp vo a. Vic thm nhp ny rt chm nn ngi ta chn phng n hon ton phi hp trong cc khi (trang) c th nm bt k v tr no trong b nh trong. Cch ny cho t l tht bi thp.

Hnh IV.8: nh x cc trang o vo b nh vt l Cu hi 2: Lm th no tm mt khi khi n ang nm trong b nh trong? nh v trang v nh v on u da vo mt cu trc d liu trong s th t trang hoc s th t on c c ch s. Cho nh v trang, da vo bng trang, a ch trong b nh vt l c xc lp cui cng l vic t k nhau s th ca trang vt l vi a ch trong trang (hnh IV.9). Cho nh v on, da vo thng tin trn bng on, vic kim tra tnh hp l ca a ch c tin hnh. a ch vt cui cng c xc lp bng cch cng a ch on v a ch trong on ( di trong on) (hnh IV.10).

77

Kin trc my tnh

Chng IV: Cc cp b nh

Hnh IV.9 : Minh ho s nh x a ch gia b nh o v b nh vt l trong nh v trang Bng on


Limit Base

CPU

S a ch logic

D ng < + sai a ch vt l B NH TRONG

S: a ch on trong b nh o D: di on trong b nh o Limit: gii hn ti a ca on Base: di trong on

Hnh IV.10 : nh x a ch gia b nh o v b nh vt l trong cch nh v on

78

Kin trc my tnh

Chng IV: Cc cp b nh

Cu hi 3: Khi no phi c thay th khi c tht bi trang? Hu ht cc h iu hnh u c gng thay th khi t dng gn y nht (LRU: Least Recent Utilized) v ngh rng y l khi t cn nht. Cu hi 4: Vic g xy ra khi cn ghi s liu? Chin thut ghi lun l mt s ghi li ngha l thng tin ch c vit vo trong khi ca b nh trong. Khi c thay i thng tin, c chp vo a t nu khi ny b thay th.

IV.10. BO V CC TIN TRNH BNG CCH DNG B NH O


S xut hin ca a chng trnh (multiprogram) trong my tnh chy nhiu chng trnh song song vi nhau, dn ti cc i hi mi v vic bo v v phn chia gia cc chng trnh. a chng trnh a n khi nim tin trnh (process): mt tin trnh gm c mt chng trnh ang thc hin v tt c cc thng tin cn thit tip tc thc hin chng trnh ny. Trong a ch ng trnh, b x l v b nh trong c nhi u ng i s dng chia s m t cch qua l i (interactive), cng m t th i i m, t o c m gic rng m i ng i dng ang c mt my tnh ring. V nh th , t i b t c lc no, ph i c th chuy n i t mt ti n trnh ny sang m t tin trnh khc. Mt tin trnh phi vn hnh ng n, d n c thi hnh lin tc t u ti cui, hay n b ngt qua li bi cc tin trnh khc. Trch nhim m bo cc tin trnh u chy ng, c chia s gia nh thit k my tnh v nh thit k h iu hnh. Nh thit k my tnh phi m bo b x l c th lu gi trng thi cc tin trnh v phc hi cc trng thi ny, cn nh thit k h iu hnh phi m bo cc tin trnh khng nh hng ln nhau. H iu hnh gii quyt vn ny bng cch chia b nh trong cho cc tin trnh v trng thi ca mi tin trnh ny hin din trong phn b nh c chia cho n. iu ny c ngha rng cc nh thit k h iu hnh phi c s gip sc ca cc nh ch to my tnh bo v mt tin trnh khng b nh hng bi tin trnh khc. Nh thit k my tnh c thm 3 trch nhim trong vic gip cc nh thit k h iu hnh bo v cc tin trnh l: 1. Cung cp hai ch vn hnh cho bit tin trnh ang thc hin l tin trnh ca ngi s dng hay tin trnh h thng (ca ngi iu hnh). 2. Cung cp mt tp hp con trng thi ca b x l m tin trnh ngi s dng c th dng nhng khng th sa i. 3. Cung cp cc c ch c th chuyn i t ch ngi dng sang ch ngi iu hnh v ngc li. Chng ta thy, a ch m b x l a ra phi c bin i t a ch o sang a ch vt l. iu ny gip phn cng i xa na trong vic bo v cc tin trnh. Cch n gin nht lm vic ny l cho php tin trnh ngi s dng tc ng ln cc bit cho php thm nhp vo mi trang hay mi on. Khi b x l pht ra tn hiu c (hay vit) v tn hiu ngi dng (hay h thng) th rt d dng pht hin cc vic thm nhp

79

Kin trc my tnh

Chng IV: Cc cp b nh

tri php b nh trc khi vic thm nhp ny gy h hi. Cc tin trnh c bo v v c bng trang ring cho mnh tr n cc trang tch ri nhau trong b nh. *****

80

Kin trc my tnh

Chng IV: Cc cp b nh

CU HI N TP V BI TP CHNG IV

*****
1. S khc nhau gia SRAM v DRAM? Trong my tnh chng c dng u? 2. Mc tiu ca cc cp b nh? 3. Nu hai nguyn tc m cache da vo vn hnh. 4. Cho mt b nh cache tng ng trc tip c 8 khi, mi khi c 16 byte. B nh trong c 64 khi. Gi s lc khi ng my, 8 khi u tin ca b nh trong c a ln cache. a. Vit bng nhn ca cc khi hin ang nm trong cache b. CPU ln lt a cc a ch sau y c s liu: O4AH, 27CH, 3F5H. Nu tht bi th cp nht bng nhn. c. CPU dng cch ghi li. Khi tht bi cache, CPU dng cch ghi c np. M t cng vic ca b qun l cache khi CPU a ra cc t sau y ghi vo b nh trong: 0C3H, 05AH, 1C5H. 5. Cc nguyn nhn chnh gy tht bi cache? 6. Cc gii php m bo tnh ng nht d liu trong h thng b a x l c b nh chia s dng chung? 7. Cc cch ni rng dy thng ca b nh trong? 8. Ti sao phi dng b nh o? 9. S khc bit gia cache v b nh o?

81

Kin trc my tnh

Chng V: Nhp xut

Chng V: NHP - XUT


Mc ch: Gii thiu mt s thit b lu tr ngoi nh: a t, a quang, th nh, bng t. Gii thiu h thng kt ni c bn cc b phn bn trong my tnh. Cch giao tip gia cc ngoi vi v b x l. Phng php an ton d liu trn thit b lu tr ngoi. Yu cu: Sinh vin phi nm vng cc kin thc v h thng kt ni c bn cc b phn bn trong my tnh, cch giao tip gia cc ngoi vi v b x l. Bit c cu to v cc vn hnh ca cc loi thit b lu tr ngoi v phng php an ton d liu trn a cng.

V.1. DN NHP
B x l ca my tnh in t lin h vi bn ngoi nh cc b phn xut nhp (I/O) m ta cn gi l ngoi vi. Cc ngoi vi thng dng l: - Mn hnh, bn phm, chut, my in, th mng... l nhng b phn gip con ngi s dng my tnh d dng. - Cc a t, bng t, a quang, cc loi th nh l nhng b phn lu tr thng tin tr lng ln. Tt c cc ngoi vi u c ni vo b x l v b nh trong bng mt h thng dy ni phc tp v tnh a dng ca cc ngoi vi. Trong chng ny chng ta tp trung ni n cc b phn lu tr s liu c tr lng cao (a t, a quang, bng t) v s kt ni cc b phn ny vo my tnh.

V.2. A T
D rng cng ngh mi khng ngng pht minh nhiu loi b phn lu tr mt lng thng tin ln nhng a t vn gi v tr quan trng t nm 1965. a t c hai nhim v trong my tnh. - Lu tr di hn cc tp tin. - Thit lp mt cp b nh bn di b nh trong lm b nh o lc chy chng trnh. Do a mm dn c cc thit b lu tr khc c cc tnh nng u vit hn nn chng ta khng xt n thit b ny trong chng trnh m ch ni n a cng. Trong ti liu ny m t mt cch khi qut cu to, cch vn hnh cng nh cp n cc tnh cht quan trng ca a cng. Mt a cng cha nhiu lp a (t 1 n 4) quay quanh mt trc khong 3.60015.000 vng mi pht. Cc lp a ny c lm bng kim loi vi hai mt c ph mt cht t tnh (hnh V.1). ng knh ca a thay i t 1,3 inch n 8 inch. Mi mt ca mt lp a c chia thnh nhiu ng trn ng trc gi l rnh. Thng thng mi mt ca mt lp a c t 10.000 n gn 30.000 rnh. Mi rnh c chia thnh nhiu cung (sector) dng cha thng tin. Mt rnh c th cha t 64 n 800 cung. Cung l n v nh nht m my tnh c th c hoc vit (thng thng khong 512 bytes). Chui thng tin ghi trn mi cung gm c: s th t ca cung, mt khong trng, s liu ca cung bao gm c cc m sa li, mt khong trng, s th t ca cung tip theo.

82

Kin trc my tnh

Chng V: Nhp xut

Vi k thut ghi mt khng u, tt c cc rnh u c cng mt s cung, iu ny lm cho cc cung di hn cc rnh xa trc quay c mt ghi thng tin thp hn mt ghi trn cc cung nm gn trc quay.

Hnh V.1: Cu to ca mt a cng Vi cng ngh ghi vi mt u, ngi ta cho ghi nhiu thng tin hn cc rnh xa trc quay. Cng ngh ghi ny ngy cng c dng nhiu vi s ra i ca cc chun giao din thng minh nh chun SCSI.

Mt ghi khng u

Mt ghi u

Hnh V.2: Mt ghi d liu trn cc loi a cng c hoc ghi thng tin vo mt cung, ta dng mt u c ghi di ng p vo mi mt ca mi lp a. Cc u c/ghi ny c gn cht vo mt thanh lm cho

83

Kin trc my tnh

Chng V: Nhp xut

chng cng di chuyn trn mt ng bn knh ca mi lp a v nh th tt c cc u ny u trn nhng rnh c cng bn knh ca cc lp a. T tr (cylinder) c dng gi tt c cc rnh ca cc lp a c cng bn knh v nm trn mt hnh tr. Ngi ta lun mun c nhanh a t nn thng thng a c nhiu hn s d liu cn c; ngi ta ni y l cch c trc. qun l cc phc tp khi kt ni (hoc ngng kt ni) lc c (hoc ghi) thng tin, v vic c trc, a cn c b iu khin a. Cng nghip ch to a t tp trung vo vic nng cao dung lng ca a m n v o lng l mt trn mt n v b mt.

Bng V.1: Thng s k thut ca a cng

V.3. A QUANG
Cc thit b lu tr quang rt thch hp cho vic pht hnh cc sn phm vn ho, sao lu d liu trn cc h thng my tnh hin nay. Ra i vo nm 1978, y l sn phm ca s hp tc nghin cu gia hai cng ty Sony v Philips trong cng nghip gii tr. T nm 1980 n nay, cng nghip a quang pht trin mnh trong c hai lnh vc gii tr v lu tr d liu my tnh. Qu trnh c thng tin da trn s phn chiu ca cc tia laser nng lng thp t lp lu tr d liu. B phn tip nhn nh sng s nhn bit c nhng im m ti tia laser b phn x mnh hay bin mt do cc vt khc (pit) trn b mt a. Cc tia phn x mnh ch ra rng ti im khng c l khc v im ny c gi l im nn (land). B nhn nh sng trong a thu nhn cc tia phn x v khuch tn c khc x t b mt a. Khi cc ngun sng c thu nhn, b vi x l s dch cc mu sng thnh cc bit d liu hay m thanh. Cc l trn CD su 0,12 micron v rng 0,6 micron (1 micron bng mt phn ngn mm). Cc l ny c khc theo mt track hnh xon c vi khong cch 1,6 micron gia cc vng, khong 16.000 track/inch. Cc l (pit) v nn (land) ko di khon 0,9 n 3,3 micron. Track bt u t pha trong v kt thc pha ngoi theo mt ng khp kn cc ra a 5mm. D liu lu trn CD thnh tng khi, mi khi cha 2.352 byte. Trong , 304 byte cha cc

84

Kin trc my tnh

Chng V: Nhp xut

thng tin v bit ng b, bit nhn dng (ID), m sa li (ECC), m pht hin li (EDC). Cn li 2.048 byte cha d liu. Tc c chun ca CD-ROM l 75 khi/s hay 153.600 byte/s hay 150KB/s (1X). Di y l mt s loi a quang thng dng. CD (Compact Disk): a quang khng th xo c, dng trong cng nghip gii tr (cc a m thanh c s ho). Chun a c ng knh 12 cm, m thanh pht t a khong 60 pht (khng dng). CD-ROM (Compact Disk Read Only Memory): a khng xo dng cha cc d liu my tnh. Chun a c ng knh 12 cm, lu tr d liu hn 650 MB. Khi pht hnh, a CD-ROM c cha ni dung. Thng thng, da CD-ROM c dng cha cc phn mm v cc chng trnh iu khin thit b. CD-R (CD-Recordable): Ging nh a CD, a mi cha c thng tin, ngi dng c th ghi d liu ln a mt ln v c c nhiu ln. D liu trn a CD-R khng th b xo. CD-RW (CD-Rewritable): Ging nh a CD, a mi cha c thng tin, ngi dng c th ghi d liu ln a, xo v ghi li d liu trn a nhiu ln. DVD (Digital Video Disk - Digital Versatile Disk): Ra i phc v cho cng nghip gii tr, a cha cc hnh nh video c s ho. Ngy nay, DVD c s dng rng ri trong cc ng dng cng ngh thng tin. Kch thc a c hai loi: 8cm v 12 cm. a DVD c th cha d liu trn c hai mt a, dung lng ti a ln n 17GB. Cc thng s k thut ca a DVD-ROM (loi a ch c) so vi CD-ROM. Tc c chun (1X) ca DVD l 1.3MB/s (1X ca DVD tng ng khong 9X ca CDROM). DVD-R (DVD-Recordable): Ging nh a DVD-ROM, ngi dng c th ghi d liu ln a mt ln v c c nhiu ln. a ny ch c th ghi c trn mt mt a, dung lng ghi trn mi mt ti a l 4.7 GB. DVD-RW (DVD-Rewritable): Ging nh a DVD-ROM, ngi dng c th ghi, xo v ghi li d liu ln a nhiu ln.. a ny cng c th ghi c trn mt mt a, dung lng ghi trn mi mt ti a l 4.7 GB.

Bng V.2: So snh mt s thng s ca hai loi a CDROM v DVDROM

85

Kin trc my tnh

Chng V: Nhp xut

Vi cc c tnh ca a quang, gi thnh ngy cng thp, c xem nh mt phng tin thch hp phn phi cc phn mm cho my vi tnh. Ngoi ra, a quang cn c dng lu tr lu di cc d liu thay th cho bng t.

V.4. CC LOI TH NH
Hin nay, th nh l mt trong nhng cng ngh mi nht c dng lm thit b lu tr. Th nh flash l mt dng b nh bn dn EEPROM(cng ngh dng ch to cc chip BIOS trn cc v mch chnh), c cu to bi cc hng v cc ct. Mi v tr giao nhau l mt nh gm c hai transistor, hai transistor ny cch nhau bi mt lp -xt mng. Mt transistor c gi l floating gate v transistor cn li c gi l control gate. Floating gate ch c th ni kt vi hng (word line) thng qua control gate. Khi ng kt ni c thit lp, bit c gi tr 1. chuyn sang gi tr 0 theo mt qui trnh c tn Fowler-Nordheim tunneling. Tc , yu cu v dng in cung cp thp v c bit vi kch thc nh gn ca cc loi th nh lm cho kiu b nh ny c dng rng ri trong cng ngh lu tr v gii tr hin nay.

Hnh V.3: Minh ho hai trng thi ca mt bit nh trong th nh

V.5. BNG T
Bng t c cng cng ngh vi cc a t nhng khc a t hai im: - Vic thm nhp vo a t l ngu nhin cn vic thm nhp vo bng t l tun t. Nh vy vic tm thng tin trn bng t mt nhiu thi gian hn vic tm thng tin trn a t. - a t c dung lng hn ch cn bng t gm c nhiu cun bng c th ly ra khi my c bng nn dung lng ca bng t l rt ln (hng trm GB). Vi chi ph thp, bng t vn cn c dng rng ri trong vic lu tr d liu d phng. Cc bng t c chiu rng thay i t 0,38cm n 1,27 cm c ng thnh cun v c cha trong mt hp bo v. D liu ghi trn bng t c cu trc gm mt s cc rnh song song theo chiu dc ca bng. C hai cch ghi d liu ln bng t: Ghi ni tip: vi k thut ghi xon c, d liu ghi ni tip trn mt rnh ca bng t, khi kt thc mt rnh, bng t s quay ngc li, u t s ghi d liu trn rnh mi tip theo nhng vi hng ngc li. Qu trnh ghi c tip din cho n khi y bng t. Ghi song song: tng tc c-ghi d liu trn bng t, u c - ghi c th c-ghi mt s rnh k nhau ng thi. D liu vn c ghi theo chiu dc bng t nhng cc khi d liu c xem nh ghi trn cc rnh k nhau. S rnh ghi ng thi trn bng t thng thng l 9 rnh (8 rnh d liu - 1byte v mt rnh kim tra li).

86

Kin trc my tnh

Chng V: Nhp xut

V.6. BUS NI NGOI VI VO B X L V B NH TRONG


Trong my tnh, b x l v b nh trong lin lc vi cc ngoi vi bng bus. Bus l mt h thng cc dy cp ni (khong 50 n 100 si cp ring bit) trong mt nhm cc cp c nh ngha chc nng khc nhau bao gm: cc ng d liu, cc ng a ch, cc dy iu khin, cung cp ngun. Dng bus c 2 u im l gi tin thp v d thay i ngoi vi. Ngi ta c th g b mt ngoi vi hoc thm vo ngoi vi mi cho cc my tnh dng cng mt h thng bus. Gi tin thit k v thc hin mt h thng bus l r, v nhiu ng vo/ra cng chia s mt s ng dy n gin. Tuy nhin, im tht li chnh ca bus l to ra nghn c chai, iu ny lm gii hn lu lng vo/ra ti a. Cc h thng my tnh dng cho qun l phi dng thng xuyn cc ngoi vi, nn kh khn chnh l phi c mt h thng bus kh nng phc v b x l trong vic lin h vi cc ngoi vi. Mt trong nhng l do khin cho vic thit k mt h thng bus kh khn l tc ti a ca bus b gii hn bi cc yu t vt l nh chiu di ca bus v s b phn c mc vo bus. Cc bus thng c hai loi: bus h thng ni b x l vi b nh (system bus, Front Side Bus-FSB) v bus ni ngoi vi (bus vo/ra I/O bus) (hnh V.4). Bus vo/ra c th c chiu di ln v c kh nng ni kt vi nhiu loi ngoi vi, cc ngoi vi ny c th c lu lng thng tin khc nhau, nh dng d liu khc nhau. Bus kt ni b x l vi b nh th ngn v thng th rt nhanh. Trong giai on thit k bus kt ni b x l vi b nh, nh thit k bit trc cc linh kin v b phn m ng ta cn kt ni li, cn nh thit k bus vo/ra phi thit k bus tho mn nhiu ngoi vi c mc tr hon v lu lng rt khc nhau (xem hnh V.6).

Hnh V.4: H thng bus trong mt my tnh

87

Kin trc my tnh

Chng V: Nhp xut

Hin nay, trong mt s h thng my tnh, bus ni ngoi vi c phn cp thnh hai h thng bus con. Trong , bus tc cao (high-speed bus) h tr kt ni cc thit b tc cao nh SCSI, LAN, Graphic, Video,v h thng bus m rng (expansion bus) c thit k kt ni vi cc ngoi vi yu cu tc thp nh: modem, cng ni tip, cng song song,Gia hai h thng bus ni ngoi vi trong t chc h thng bus phn cp l mt giao din m (hnh V.5).

Hnh V.5: H thng bus phn cp

Hnh V.6: Bng biu din tc d liu ca cc ngoi vi 88

Kin trc my tnh

Chng V: Nhp xut

Ta c th c nhiu la chn trong vic thit k mt bus, nh trong bng V.3. c tnh ca bus
rng ca bus rng bus s liu S t c chuyn Ch nhn ca bus Chuyn tng gi Xung nhp

Bus h thng
ng dy a ch v s liu khc nhau Cng rng cng nhanh (v d 64 bt) Chuyn nhiu t Nhiu C. Cn nhiu ch nhn bus ng b

Bus ni ngoi vi
ng a ch v s liu c a hp Cng hp cng t tn km (v d 8 bt) Chuyn n gin mi ln mt t M t Khng. Kt ni mt ln v chuyn ht thng tin Bt ng b

Bng V.3: Cc la chn chnh yu cho mt bus Trong bng V.3 c khi nim sau y lin quan n cc ch nhn ca bus - cc b phn c th khi ng mt tc v c hoc vit trn bus. V d b x l lun l mt ch nhn ca bus. Mt bus c nhiu ch nhn khi n c nhiu b x l, hoc khi cc ngoi vi c th khi ng mt tc v c dng bus. Nu c nhiu ch nhn ca bus th phi c mt c ch trng ti quyt nh ch nhn no c quyn chim lnh bus. Mt bus c nhiu ch, c th cp mt di thng rng (bandwidth) bng cch s dng cc gi tin thay v dng bus cho tng tc v ring l. K thut s dng gi tin c gi l phn chia nh tc v (dng bus chuyn gi). Mt tc v c c phn tch thnh mt tc v yu cu c (tc v ny cha a ch cn c), v mt tc v tr li ca b nh (cha thng tin cn c). Mi tc v u c mt nhn cho bit loi ca tc v. Trong k thut phn chia nh tc v, trong khi b nh c cc thng tin a ch xc nh th bus c dnh cho cc ch khc. Bus h thng l mt bus ng b, n gm c mt xung nhp trong cc ng dy iu khin, v mt nghi thc cho cc a ch v cc s liu i vi xung nhp. Do c rt t hoc khng c mch logic no dng quyt nh hnh ng k tip no cn thc hin, nn cc bus ng b va nhanh, va r tin. Trn bus ny, tt c u phi vn hnh vi cng mt xung nhp. Ngc li, cc bus vo/ra thuc loi bus bt ng b, cc bus ny khng c xung nhp ng b trong h thng bus. Thay vo c cc nghi thc bt tay vi cc quy nh ring v thi gian, c dng gia cc b phn pht v b phn thu ca bus. Bus bt ng b rt d thch ng vi nhiu ngoi vi v cho php ni di bus m khng phi lo ngi g n vn ng b. Bus bt ng b cng d thch ng vi nhng thay i cng ngh.

V.7. CC CHUN V BUS


S lng v chng loi cc b phn vo/ra khng cn nh trc trong cc h thng x l thng tin. iu ny gip cho ngi s dng my tnh dng b phn vo/ra no p ng c cc yu cu ca h. Vo/ra l giao din trn cc b phn (thit b)

89

Kin trc my tnh

Chng V: Nhp xut

c kt ni vo h thng. N c th xem nh mt bus ni rng dng kt ni thm ngoi vi vo my tnh. Cc chun lm cho vic ni kt cc ngoi vi vo my tnh c d dng; bi v, trong khi cc nh thit k-sn xut my tnh v cc nh thit k-sn xut ngoi vi c th thuc cc cng ty khc nhau. S tn ti cc chun v bus l rt cn thit. Nh vy, nu nh thit k my tnh v nh thit k ngoi vi tn trng cc chun v bus ny th cc ngoi vi c th kt ni d dng vo my tnh. Chun ca bus vo/ra l ti liu quy nh cch kt ni ngoi vi vo my tnh. Cc my tnh qu thng dng th cc chun v bus vo/ra ca chng c th c xem l chun cho cc hng khc (v d: trc y, UNIBUS ca my PDP 11, cc chun v bus ca my IBM PC, AT v hin nay l cc chun ca hng Intel lin quan n cc my vi tnh). Cc chun v bus phi c cc c quan v chun nh ISO, ANSI v IEEE cng nhn.

V.8. GIAO DIN GIA B X L VI CC B PHN VO RA


B x l dng 2 cch lin lc vi cc b phn vo ra: Cch th nht, thng c dng: l cch dng mt vng a ch ca b nh lm vng a ch ca cc ngoi vi. Khi c hay vit vo vng a ch ny ca b nh l lin h n cc ngoi vi. Cch th hai, dng m lnh ring bit cho vo/ra (tc l c cc lnh vo/ra ring, khng trng vi lnh c hay vit vo nh). Trong trng hp ny, b x l gi mt tn hiu iu khin cho bit a ch ang dng l ca mt ngoi vi. Vi mch Intel 8086 v my IBM 370 l cc v d v b x l dng lnh vo/ra ring bit. D dng cch no nh v vo/ra th mi b phn vo/ra u c cc thanh ghi cung cp thng tin v trng thi v v iu khin. B phn vo/ra dng bit trng thi sn sng bo cho b x l n sn sng nhn s liu. nh k b x l xem xt bt ny bit b phn vo ra c sn sng hay khng. Phng php ny l phng php thm d (polling). V nhc im ca phng php ny l lm mt thi gian ca b x l v nh k phi thm d tnh sn sng ca cc thit b ngoi vi. iu ny c nhn thy t lu v dn n pht minh ra ngt qung (interrupt) bo cho b x l bit lc c mt b phn vo/ra cn c phc v. Vic dng ngt qung lm cho b x l khng mt thi gian thm d xem cc ngoi vi c yu cu phc v hay khng, nhng b x l phi mt thi gian chuyn d liu. Thng thng vic trao i s liu gia ngoi vi v CPU l theo khi s liu, nn vi mch thm nhp trc tip b nh trong (DMA: Direct Memory Access) c dng trong nhiu my tnh chuyn mt khi nhiu t m khng c s can thip ca CPU.

Hnh V.7. S hot ng ca h thng bus c vi mch DMA 90

Kin trc my tnh

Chng V: Nhp xut

DMA l mt vi mch chc nng c bit. N chuyn s liu gia ngoi vi v b nh trong, trong lc CPU rnh ri lm cng vic khc. Vy DMA nm ngoi CPU v tc ng nh l mt ch nhn ca bus. B x l khi ng cc thanh ghi ca DMA, cc thanh ghi ny cha a ch nh v s byte cn chuyn. DMA ch ng chuyn s liu v khi chm dt th tr quyn iu khin cho b x l. Vi mch DMA cng thng minh th cng vic ca CPU cng nh i. Nhiu vi mch c gi l b x l vo/ra (hay b iu khin vo/ra) thc hin cng vic mnh theo mt chng trnh c nh (cha trong ROM), hay theo mt chng trnh m h iu hnh np vo b nh trong. H iu hnh thit lp mt hng ch i gm cc khi iu khin cc b phn vo/ ra. Cc khi cha cc thng tin nh l v tr ca s liu (ngun v ch) v s s liu. Cc b x l vo/ra ly cc thng tin ny trong hng ch i, thc hin cc vic cn phi lm v gi v CPU tn hiu ngt khi thc hin xong cng vic. Mt my tnh c b x l vo/ra c xem nh mt my tnh a x l v DMA gip cho my tnh thc hin cng lc nhiu qu trnh. Tuy nhin b x l vo/ra khng tng qut bng cc b x l v chng ch lm c mt s vic nht nh. Hn na b x l vo/ra khng ch bin s liu nh cc b x l thng lm. N ch di chuyn s liu t ni ny sang ni khc.

V.9. MT S BIN PHP AN TON D LIU TRONG VIC LU TR THNG TIN TRONG A T
Ngi ta thng ch trng n s an ton trong lu gi thng tin a t hn l s an ton ca thng tin trong b x l. B x l c th h m khng lm tn hi n thng tin. a ca my tnh b h c th gy ra cc thit hi rt to ln. Mt phng php gip tng cng an ton ca thng tin trn a t l dng mt mng a t. Mng a t ny c gi l H thng a d phng (RAID - Redundant Array of Independent Disks). Cch lu tr d thng tin lm tng gi tin v s an ton (ngoi tr RAID 0). C ch RAID c cc c tnh sau: 1. RAID l mt tp hp cc a cng (vt l) c thit lp theo mt k thut m h iu hnh ch nhn thy ch l mt a (logic) duy nht. 2. gng). 3. Trong mng a c lu cc thng tin kim tra li d liu; do , d liu c th c phc hi nu c mt a trong mng a b h hng . Tu theo k thut thit lp, RAID c th c cc mc sau: i). RAID 0: Thc ra, k thut ny khng nm trong s cc k thut c c ch an ton d liu. Khi mng c thit lp theo RAID 0, a logic c c (m h iu hnh nhn bit) c dung dng bng tng dung lng ca cc a thnh vin. iu ny gip cho ngi dng c th c mt a logic c dung lng ln hn rt nhiu so vi dung lng tht ca a vt l cng thi im. D liu c ghi phn tn trn tt c cc a trong mng. y chnh l s khc bit so vi vic ghi d liu trn cc a ring l bnh thng bi v thi gian c-ghi d liu trn a t l nghch vi s a c trong tp hp (s a trong tp hp cng nhiu, thi gian c ghi d liu cng nhanh). Tnh cht ny Vi c ch c/ghi thng tin din ra trn nhiu a (ghi an cho hay soi

91

Kin trc my tnh

Chng V: Nhp xut

ca RAID 0 tht s hu ch trong cc ng dng yu cu nhiu thm nhp a vi dung lng ln, tc cao (a phng tin, ho,). Tuy nhin, nh ni trn, k thut ny khng c c ch an ton d liu, nn khi c bt k mt h hng no trn mt a thnh vin trong mng cng s dn n vic mt d liu ton b trong mng a. Xc sut h hng a t l thun vi s lng a c thit lp trong RAID 0. RIAD 0 c th c thit lp bng phn cng (RAID controller) hay phn mm (Stripped Applications)
Strip 0 Strip 4 Strip 8 Strip 12 Strip 1 Strip 5 Strip 9 Strip 13 Strip 2 Strip 6 Strip 10 Strip 14 Strip 3 Strip 7 Strip 11 Strip 15

Hnh V.8: RAID 0 ii). RAID 1 (Mirror - a gng): Phng cch thng thng trnh mt thng tin khi a b h l dng a gng, tc l dng 2 a. Khi thng tin c vit vo mt a, th n cng c vit vo a gng v nh vy lun c mt bn sao ca thng tin. Trong c ch ny, nu mt trong hai a b h th a cn li c dng bnh thng. Vic thay th mt a mi (cung thng s k thut vi a h hng) v phc hi d liu trn a n gin. Cn c vo d liu trn a cn li, sau mt khong thi gian, d liu s c ti to trn a mi (rebuild). RAID 1 cng c th c thit lp bng phn cng (RAID controller) hay phn mm (Mirror Applications) vi chi ph kh ln, hiu sut s dng a khng cao (50%).
Strip 0 Strip 4 Strip 8 Strip 12 Strip 1 Strip 5 Strip 9 Strip 13 Strip 2 Strip 6 Strip 10 Strip 14 Strip 3 Strip 7 Strip 11 Strip 15 Strip 0 Strip 4 Strip 8 Strip 12 Strip 1 Strip 5 Strip 9 Strip 13 Strip 2 Strip 6 Strip 10 Strip 14 Strip 3 Strip 7 Strip 11 Strip 15

Hnh V.9: RAID 1 iii) RAID 2: Dng k thut truy cp a song song, tt c cc a thnh vin trong RAID u c c khi c mt yu cu t ngoi vi. Mt m sa li (ECC) c tnh ton da vo cc d liu c ghi trn a lu d liu, cc bit c m ho c lu trong cc a dng lm a kim tra. Khi c mt yu cu d liu, tt c cc a c truy cp ng thi. Khi pht hin c li, b iu khin nhn dng v sa li ngay m khng lm gim thi gian truy cp a. Vi mt thao tc ghi d liu ln mt a, tt c cc a d liu v a sa li u c truy cp tin hnh thao tc ghi. Thng thng, RAID 2 dng m Hamming thit lp c ch m ho, theo , m ho d liu c ghi, ngi ta dng mt bit sa li v hai bit pht hin li. RAID 2 thch hp cho h thng yu cu gim thiu c kh nng xy ra nhiu a h hng cng lc.

92

Kin trc my tnh

Chng V: Nhp xut

b0

b1

b2

b3

F0(b)

F1(b)

F2(b)

Hnh V.10: RAID 2 iii). RAID 3: Dng k thut ghi song song, trong k thut ny, mng c thit lp vi yu cu ti thiu l 3 a c cc thng s k thut ging nhau, ch mt a trong mng c dng lu cc thng tin kim tra li (parity bit). Nh vy, khi thit lp RAID 3, h iu hnh nhn bit c mt a logic c dung lng n-1/n (n: s a trong mng). D liu c chia nh v ghi ng thi trn n-1 a v bit kim tra chn l c ghi trn a dng lm a cha bit parity chn l an cho mc bt. Bt chn l l mt bt m ngi ta thm vo mt tp hp cc bt lm cho s bt c tr s 1 (hoc 0) l chn (hay l). Thay v c mt bn sao hon chnh ca thng tin gc trn mi a, ngi ta ch cn c thng tin phc hi thng tin mt trong trng hp c hng a. Khi mt a bt k trong mng b h, h thng vn hot ng bnh thng. Khi thay th mt a mi vo mng, cn c vo d liu trn cc a cn li, h thng ti to thng tin. Hiu sut s dng a cho cch thit lp ny l n-1/n. RAID 3 ch c th c thit lp bng phn cng (RAID controller).

b0

b1

b2

b3

P(b)

Hnh V.11: RAID 3 iv) RAID 4: t RAID 4 n RAID 6 dng k thut truy cp cc a trong mng c lp. Trong mt mng truy cp c lp, mi a thnh vin c truy xut c lp, do mng c th p ng c cc yu cu song song ca ngoi vi. K thut ny thch hp vi cc ng dng yu cu nhiu ngoi vi l cc ng dng yu cu tc truyn d liu cao. Trong RAID 4, mt a dng cha cc bit kim tra c tnh ton t d liu c lu trn cc a d liu. Khuyt im ln nht ca RAID 4 l b nghn c chai ti a kim tra khi c nhiu yu cu ng thi t cc ngoi vi.
Block 0 B4 B8 B12 Block1 B5 B9 B13 Block2 B6 B10 B14 Block3 B7 B11 B15 P(0-3) P(4-7) P(8-11)
P(12-15)

Hnh V.12: RAID 4 93

Kin trc my tnh

Chng V: Nhp xut

v). RAID 5: yu cu thit lp ging nh RAID 4, d liu c ghi tng khi trn cc a thnh vin, cc bit chn l c tnh ton mc khi c ghi tri u ln trn tt c cc a trong mng. Tng t RAID 4, khi mt a bt k trong mng b h hng, h thng vn hot ng bnh thng. Khi thay th mt a mi vo mng, cn c vo d liu trn cc a cn li, h thng ti to thng tin. Hiu sut s dng a cho cch thit lp ny l n-1/n. RAID 5 ch c th c thit lp bng phn cng (RAID controller). C ch ny khc phc c khuyt im nu trong c ch RAID 4.
Block 0 B4 B8 B12
P(16-19)

Block1 B5 B9
P(1215)

Block2 B6 P(8-11) B13 B17

Block3 P(4-7)

P(0-3) B7 B11 B15 B19

B10
B14 B18

B16

Hnh V.13: RAID 5 vi). RAID 6: Trong k thut ny, cn c n+2 a trong mng. Trong , n a d liu v 2 a ring bit lu cc khi kim tra. Mt trong hai a kim tra dng c ch kim tra nh trong RAID 4&5, a cn li kim tra c lp theo mt gii thut kim tra. Qua , n c th phc hi c d liu ngay c khi c hai a d liu trong mng b h hng. Hin nay, RAID 0,1,5 c dng nhiu trong cc h thng. Cc gii php RAID trn y (tr RAID 6) ch m bo an ton d liu khi c mt a trong mng b h hng. Ngoi ra, cc h hng d liu do phn mm hay ch quan ca con ngi khng c cp trong chng trnh. Ngi dng cn phi c kin thc y v h thng cc h thng thng tin hot ng hiu qu v an ton.
Block 0 B4 B8 B12 P(16-19) Block1 B5 B9 P(12-15) Q(16-19) Block2 B6 P(8-11) Q(12-15) B16 Block3 P(4-7) Q(8-11) B13 B17 P(0-3) Q(4-7) B10 B14 B18 Q(0-3) B7 B11 B15 B19

Hnh V.14: RAID 6 *****

94

Kin trc my tnh

Chng V: Nhp xut

CU HI N TP V BI TP CHNG V

*****
1. 2. 3. 4. M t vn hnh ca a cng. Cch lu tr thng tin trong a cng M t cc bin php an ton trong vic lu tr thng tin trong a cng. Nguyn tc vn hnh ca a quang. u khuyt im ca cc loi a quang. Thng thng c bao nhiu loi bus? Ti sao phi c cc chun cho cc bus vo ra? 5. Th no l ch nhn ca bus? Khi bus c nhiu ch nhn th lm th no gii quyt tranh chp bus? 6. Gii thch vic ni rng di thng bng cch s dng cc gi tin. 7. S khc bit gia b x l vo ra v b x l trung tm ca my tnh.

95

You might also like