You are on page 1of 93

HC VIN CNG NGH BU CHNH VIN THNG ----------------------------------HONG XUN DU

BI GING

KIN TRC MY TNH

H NI 2010

LI NI U

Kin trc my tnh l mt trong cc lnh vc khoa hc c s ca ngnh Khoa hc my tnh ni ring v Cng ngh thng tin ni chung. Kin trc my tnh l khoa hc v la chn v ghp ni cc thnh phn phn cng ca my tnh nhm t c cc mc tiu v hiu nng cao, tnh nng a dng v gi thnh thp. Mn hc Kin trc my tnh l mn hc c s chuyn ngnh trong chng trnh o to cng ngh thng tin h i hc v cao ng. Mc tiu ca mn hc l cung cp cho sinh vin cc kin thc c s ca kin trc my tnh, bao gm bao gm kin trc my tnh tng qut, kin trc b x l trung tm v cc thnh phn ca b x l trung tm, kin trc tp lnh my tnh, c ch ng lnh; h thng phn cp ca b nh, b nh trong, b nh cache v cc loi b nh ngoi; h thng bus v cc thit b vo ra. Kin trc my tnh l mt lnh vc c pht trin trong mt thi gian tng i di vi lng kin thc s, nhng do khun kh ca ti liu c tnh cht l bi ging mn hc, tc gi c gng trnh by nhng vn c s nht phc v mc tiu mn hc. Ni dung ca ti liu c bin son thnh su chng: Chng 1 l phn gii thiu cc khi nim c s ca kin trc my tnh, nh khi kim kin trc v t chc my tnh; cu trc v chc nng cc thnh phn ca my tnh; cc kin trc my tnh von-Neumann v kin trc Harvard. Khi nim v cc h m v cch t chc d liu trn my tnh cng c trnh by trong chng ny. Chng 2 gii thiu v khi x l trung tm, nguyn tc hot ng v cc thnh phn ca n. Khi x l trung tm l thnh phn quan trng v phc tp nht trong my tnh, ng vai tr l b no ca my tnh. Thng qua vic thc hin cc lnh ca chng trnh bi khi x l trung tm, my tnh c th thc thi cc yu cu ca ngi s dng. Chng 3 gii thiu v tp lnh ca my tnh, bao gm cc khi nim v lnh, dng lnh, cc thnh phn ca lnh; cc dng a ch v cc ch a ch. Chng cng gii thiu mt s dng lnh thng dng km v d minh ho. Ngoi ra, c ch ng lnh x l xen k cc lnh cng c cp. Chng 4 trnh by v b nh trong: khi qut v h thng b nh v cu trc phn cp ca h thng nh; gii thiu cc loi b nh ROM v RAM. Mt phn rt quan trng ca chng l phn gii thiu v b nh cache - mt b nh c bit c kh nng gip tng tc h thng nh ni ring v c h thng my tnh ni chung. Chng 5 gii thiu v b nh ngoi, bao gm cc loi a t, a quang, cc h thng RAID, NAS v SAN. B nh ngoi l dng b nh thng c dung lng ln v dng lu tr thng tin n nh, khng ph thuc ngun in nui.

Chng 6 trnh by v h thng bus v cc thit b ngoi vi. Phn trnh by v h thng bus cp n cc loi bus nh ISA, EISA, PCI, AGP v PCI-Express. Phn gii thiu cc thit b vo ra cp n nguyn l hot ng ca mt s thit b vo ra thng dng, nh bn phm, chut, mn hnh v my in. Ti liu c bin son da trn kinh nghim ging dy mn hc Kin trc my tnh trong nhiu nm ca tc gi ti Hc vin Cng ngh Bu chnh Vin thng, kt hp tip thu cc ng gp ca ng nghip v phn hi t sinh vin. Ti liu c th c s dng lm ti liu hc tp cho sinh vin h i hc v cao ng cc ngnh cng ngh thng tin v in t vin thng. Trong qu trnh bin son, mc d tc gi rt c gng song khng th trnh khi c nhng thiu st. Tc gi rt mong mun nhn c kin phn hi v cc gp cho cc thiu st, cng nh kin v vic cp nht, hon thin ni dung ca ti liu. H ni, thng 8 nm 2010 Tc gi

TS. Hong Xun Du Email: dauhx@ptit.edu.vn

MC LC
CHNG 1 GII THIU CHUNG .......................................................................................... 5 1.1 KHI NIM V KIN TRC V T CHC MY TNH .......................................... 5 1.2 CU TRC V CHC NNG cc thnh phN CA MY TNH ............................. 5 1.2.1 S khi chc nng ................................................................................................ 5 1.2.2 Cc thnh phn ca my tnh ..................................................................................... 6 1.3 LCH S PHT TRIN MY TNH ............................................................................. 8 1.3.1 Th h 1 (1944-1959) ................................................................................................ 8 1.3.2 Th h 2 (1960-1964) ................................................................................................ 8 1.3.3 Th h 3 (1964-1975) ................................................................................................ 8 1.3.4 Th h 4 (1975-1989) ................................................................................................ 8 1.3.5 Th h 5 (1990 - nay) ................................................................................................ 8 1.4 KIN TRC MY TNH VON-NEUMANN................................................................. 9 1.4.1 S kin trc my tnh von-Neumann .................................................................... 9 1.4.2 Cc c im ca kin trc von-Neumann ................................................................ 9 1.5 KIN TRC MY TNH HARVARD ......................................................................... 10 1.6 CC H S M V T CHC D LIU TRN MY TNH ............................... 10 1.6.1 Cc h s m .......................................................................................................... 10 1.6.2 T chc d liu trn my tnh ................................................................................. 11 1.6.3 S c du v s khng du ...................................................................................... 12 1.6.4 Bng m ASCII ....................................................................................................... 13 1.7 CU HI N TP ........................................................................................................ 14 CHNG 2 KHI X L TRUNG TM ............................................................................. 15 2.1 S KHI TNG QUT V chu trnh x L LNH ........................................... 15 2.1.1 S khi tng qut ca CPU ................................................................................ 15 2.1.2 Chu trnh x l lnh ................................................................................................. 16 2.2 CC THANH GHI ......................................................................................................... 16 2.2.1 Gii thiu v thanh ghi ............................................................................................ 16 2.3 KHI IU KHIN ...................................................................................................... 18 2.4 KHI S HC V LOGIC ........................................................................................... 19 2.5 BUS TRONG CPU ......................................................................................................... 20 2.6 CU HI N TP ........................................................................................................ 20 CHNG 3 TP LNH MY TNH ..................................................................................... 21 3.1 GII THIU V TP LNH MY TNH ................................................................... 21 3.1.1 Lnh my tnh l g? ................................................................................................ 21 3.1.2 Chu k thc hin lnh .............................................................................................. 21 3.2 DNG V CC THNH PHN CA LNH............................................................. 21 3.3 CC DNG A CH / TON HNG ......................................................................... 22 3.3.1 Ton hng dng 3 a ch ......................................................................................... 22 3.3.2 Ton hng dng 2 a ch ......................................................................................... 22 3.3.3 Ton hng dng 1 a ch ......................................................................................... 22 3.3.4 Ton hng dng 1,5 a ch ...................................................................................... 23 3.3.5 Ton hng dng 0 a ch ......................................................................................... 23 3.4 CC CH A CH ................................................................................................ 23 3.4.1 Gii thiu v ch a ch ..................................................................................... 23 3.4.2 Cc ch a ch .................................................................................................... 24 3.5 MT S DNG LNH THNG DNG ..................................................................... 27 3.5.1 Cc lnh vn chuyn d liu.................................................................................... 27 3.5.2 Cc lnh ton hc v logic ....................................................................................... 27
1

3.5.3 Cc lnh iu khin chng trnh ............................................................................ 28 3.5.4 Cc lnh vo ra ........................................................................................................ 29 3.6 GII THIU C CH NG LNH (PIPELINE) ......................................................... 30 3.6.1 Gii thiu c ch ng lnh ....................................................................................... 30 3.6.2 Cc vn ca c ch ng lnh v hng gii quyt .............................................. 31 3.7 CU HI N TP ........................................................................................................ 35 CHNG 4 B NH TRONG ............................................................................................... 36 4.1 PHN LOI B NH MY TNH .............................................................................. 36 4.1.1 Phn loi b nh ...................................................................................................... 36 4.1.2 T chc mch nh ................................................................................................... 36 4.2 CU TRC PHN CP B NH MY TNH .......................................................... 37 4.2.1 Gii thiu cu trc phn cp h thng nh .............................................................. 37 4.2.2 Vai tr ca cu trc phn cp h thng nh ............................................................ 38 4.3 B NH rom V ram ................................................................................................... 39 4.3.1 B nh ROM ........................................................................................................... 39 4.3.2 B nh RAM ........................................................................................................... 40 4.4 B NH CACHE .......................................................................................................... 42 4.4.1 Cache l g? ............................................................................................................. 42 4.4.2 Vai tr v nguyn l hot ng ............................................................................... 42 4.4.3 Cc dng kin trc cache ......................................................................................... 45 4.4.4 Cc dng t chc/nh x cache................................................................................ 46 4.4.5 Cc phng php c ghi v cc chnh sch thay th ............................................. 52 4.4.6 Hiu nng cache v cc yu t nh hng .............................................................. 53 4.4.7 Cc phng php gim miss cho cache ................................................................... 55 4.5 CU HI N TP ........................................................................................................ 56 CHNG 5 B NH NGOI ................................................................................................ 57 5.1 A T........................................................................................................................... 57 5.1.1 Gii thiu ................................................................................................................. 57 5.1.2 a cng .................................................................................................................. 58 5.2 A QUANG .................................................................................................................. 62 5.2.1 Gii thiu v nguyn l ........................................................................................... 62 5.2.2 Cc loi a quang ................................................................................................... 63 5.2.3 Gii thiu cu to mt s a quang thng dng ..................................................... 64 5.3 RAID .............................................................................................................................. 66 5.3.1 Gii thiu RAID ...................................................................................................... 66 5.3.2 Cc k thut to RAID ............................................................................................ 66 5.3.3 Gii thiu mt s loi RAID thng dng ................................................................ 67 5.4 NAS ................................................................................................................................ 69 5.5 SAN ................................................................................................................................ 70 5.6 CU HI N TP ........................................................................................................ 71 CHNG 6 H THNG BUS V CC THIT B NGOI VI ........................................... 72 6.1 GII THIU CHUNG V H THNG BUS ............................................................... 72 6.2 GII THIU MT S LOI BUS THNG DNG .................................................... 73 6.2.1 Bus ISA v EISA ..................................................................................................... 73 6.2.2 Bus PCI .................................................................................................................... 74 6.2.3 Bus AGP .................................................................................................................. 77 6.2.4 Bus PCI Express ...................................................................................................... 78 6.3 GII THIU CHUNG V CC THIT B NGOI VI ............................................... 78 6.3.1 Gii thiu chung ...................................................................................................... 78 6.3.2 Cc cng giao tip ................................................................................................... 79 6.4 GII THIU MT S THIT B VO RA THNG DNG ..................................... 81 6.4.1 Bn phm ................................................................................................................. 81
2

6.4.2 Chut ....................................................................................................................... 82 6.4.3 Mn hnh .................................................................................................................. 83 6.4.4 My in ...................................................................................................................... 86 6.5 CU HI N TP ........................................................................................................ 89 TI LIU THAM KHO ........................................................................................................ 90

DANH MC CC THUT NG TING ANH V VIT TT


Thut ng ting Anh Central Processing Unit Control Unit Arithmethic and Logic Unit Program Counter System Bus Memory Cache Random Access Memory Read Only Memory Basic Input Output System Pipeline Hit Miss Advanced Technology Attachments Parallel Advanced Technology Attachments Integrated Drive Electronics Serial ATA Small Computer System Interface Redundant Array of Independent Disks Network Attached Storage Storage Area Network Industrial Standard Architecture Extended ISA Peripheral Component Interconnect Accelerated Graphic Port PCI Express Cathode Ray Tube Liquid Crystal Display ATA PATA IDE SATA SCSI RAID NAS SAN ISA EISA PCI AGP PCIe CRT LCD RAM ROM BIOS T vit tt CPU CU ALU PC Thut ng ting Vit/Gii thch B/n v x l trung tm B/n v iu khin B/n v tnh ton s hc v logic B m chng trnh But h thng B nh B nh m / b nh kt B nh truy cp ngu nhin B nh ch c H thng vo ra c s C ch ng lnh hay c ch x l xen k cc lnh on trng l s kin CPU truy tm mt mc tin v tm thy trong cache. on trt l s kin CPU truy tm mt mc tin v khng tm thy trong cache. Chun ghp ni a cng ATA Chun ghp ni a cng PATA hay ATA song song Chun ghp ni a cng IDE Chun ghp ni a cng SATA hay ATA ni tip Chun ghp ni a cng SCSI Cng ngh lu tr RAID to thnh t mt mng lin kt cc a cng vt l H thng lu tr gn vo mng Mng lu tr But theo chun cng nghip ISA But theo chun cng nghip m rng EISA Bus PCI Cng tng tc ho AGP But PCIe Mn hnh ng in t m cc Mnh hnh tinh th lng

CHNG 1 GII THIU CHUNG


1.1 KHI NIM V KIN TRC V T CHC MY TNH Kin trc my tnh (Computer Architecture) v T chc my tnh (Computer Organization) l hai trong s cc khi nim c bn ca ngnh Cng ngh my tnh (Computer Engineering). C th ni kin trc my tnh l bc tranh ton cnh v h thng my tnh, cn t chc my tnh l bc tranh c th v cc thnh phn phn cng ca h thng my tnh. Kin trc my tnh l khoa hc v vic la chn v kt ni cc thnh phn phn cng to ra cc my tnh t c cc yu cu v chc nng (functionality), hiu nng (performance) v gi thnh (cost). Yu cu chc nng i hi my tnh phi c thm nhiu tnh nng phong ph v hu ch; yu cu hiu nng i hi my tnh phi t tc x l cao hn v yu cu gi thnh i hi my tnh phi cng ngy cng r hn. t c c ba yu cu v chc nng, hiu nng v gi thnh l rt kh khn. Tuy nhin, nh c s pht trin rt mnh m ca cng ngh vi x l, cc my tnh ngy nay c tnh nng phong ph, nhanh hn v r hn so vi my tnh cc th h trc. Kin trc my tnh c cu thnh t 3 thnh phn con: (i) Kin trc tp lnh (Instruction Set Architecture), (ii) Vi kin trc (Micro Architecture) v Thit k h thng (System Design). Kin trc tp lnh l hnh nh ca mt h thng my tnh mc ngn ng my. Kin trc tp lnh bao gm cc thnh phn: tp lnh, cc ch a ch, cc thanh ghi, khun dng a ch v d liu. Vi kin trc l m t mc thp v cc thnh phn ca h thng my tnh, phi ghp v vic trao i thng tin gia chng. Vi kin trc gip tr li hai cu hi (1) Cc thnh phn phn cng ca my tnh kt ni vi nhau nh th no? v (2) Cc thnh phn phn cng ca my tnh tng tc vi nhau nh th no thc thi tp lnh? Thit k h thng: bao gm tt c cc thnh phn phn cng ca h thng my tnh, bao gm: H thng phi ghp (cc bus v cc chuyn mch), H thng b nh, Cc c ch gim ti cho CPU (nh truy nhp trc tip b nh) v Cc vn khc (nh a x l v x l song song). T chc my tnh hay cu trc my tnh l khoa hc nghin cu v cc b phn ca my tnh v phng thc lm vic ca chng. Vi nh ngha nh vy, t chc my tnh kh gn gi vi vi kin trc mt thnh phn ca kin trc my tnh. Nh vy, c th thy rng, kin trc my tnh v khi nim rng hn, n bao hm c t chc hay cu trc my tnh. 1.2 CU TRC V CHC NNG CC THNH PHN CA MY TNH 1.2.1 S khi chc nng Hnh 1 minh ho s khi chc nng ca mt h thng my tnh. Theo , h thng my tnh gm bn thnh phn chnh: (1) CPU Khi x l trung tm, (2) B nh trong, gm b nh ROM v b nh RAM, (3) Cc thit b ngoi vi, gm cc thit b vo v cc thit b ra v (4) Bus h thng, l h thng knh dn tn hiu ghp ni cc thnh phn k trn. Ngoi ra, cn

Chng 1- Gii thiu chung

c cc giao din ghp ni vo v ghp ni ra dng ghp ni cc thit b ngoi vi vo bus h thng. Mc 1.2.2 tip theo s m t chi tit chc nng ca tng khi. B nh trong ROM RAM

CPU

Bus h thng Ghp ni vo Thit b vo Bn phm chut a My qut Ghp ni ra Thit b ra Mn hnh My in a

Cc thit b ngoi vi Hnh 1. S khi chc nng ca h thng my tnh 1.2.2 Cc thnh phn ca my tnh 1.2.2.1 Khi x l trung tm Khi x l trung tm (Central Processing Unit - CPU) l thnh phn quan trng nht - c xem l b no ca my tnh. Cc yu cu ca h thng v ca ngi s dng thng c biu din thnh cc chng trnh my tnh, trong mi chng trnh thng c to thnh t nhiu lnh ca CPU. CPU m nhim vic c cc lnh ca chng trnh t b nh, gii m v thc hin lnh. Thng qua vic CPU thc hin cc lnh ca chng trnh, my tnh c kh nng cung cp cc tnh nng hu ch cho ngi s dng. CPU l vi mch tch hp vi mt rt cao, c cu thnh t bn thnh phn con: (1) B iu khin (Control Unit - CU), (2) B tnh ton s hc v logic (Arithmetic and Logic Unit ALU), (3) Cc thanh ghi (Registers) v bus trong CPU (Internal Bus). B iu khin c nhim v c, gii m v iu khin qu trnh thc hin lnh. B tnh ton s hc v logic chuyn thc hin cc php ton s hc nh cng tr, nhn, chia, v cc php ton lgic nh v, hoc, ph nh v cc php dch, quay. Cc thanh ghi l kho cha lnh v d liu tm thi cho CPU x l. Bus trong CPU c nhim v truyn dn cc tn hiu gia cc b phn trong CPU v kt ni vi h thng bus ngoi. Hnh 2 minh ho hai CPU ca hng Intel l 8086 ra i nm 1978 v Core 2 Duo ra i nm 2006. 1.2.2.2 B nh trong B nh trong, cn gi l b nh chnh (Internal Memory hay Main Memory) l kho cha lnh v d liu ca h thng v ca ngi dng phc v CPU x l. B nh trong thng l b nh bn dn, bao gm hai loi: (1) B nh ch c (Read Only Memory ROM) v (2) B nh truy cp ngu nhin (Random Access Memory RAM). ROM thng c s dng lu lnh v d liu ca h thng. Thng tin trong ROM c np t khi sn xut v thng
6

Chng 1- Gii thiu chung

ch c th c ra trong qu trnh s dng. Hn na thng tin trong ROM lun tn ti k c khi khng c ngun in nui.

Hnh 2. CPU ca hng Intel: 8086 v Core 2 Duo Khc vi b nh ROM, b nh RAM thng c s dng lu lnh v d liu ca c h thng v ca ngi dng. RAM thng c dung lng ln hn nhiu so vi ROM. Tuy nhin, thng tin trong RAM ch tn ti khi c ngun in nui. Hnh 3 minh ho vi mch b nh ROM v cc vi mch nh RAM gn trn mt thanh nh RAM.

Hnh 3 B nh ROM v RAM 1.2.2.3 Cc thit b vo ra Cc thit b vo ra (Input Output devices), hay cn gi l cc thit b ngoi vi (Peripheral devices) m nhim vic nhp d liu vo, iu khin h thng v kt xut d liu ra. C hai nhm thit b ngoi vi: (1) Cc thit b vo (Input devices) v (2) Cc thit b ra (Output devices). Cc thit b vo dng nhp d liu vo v iu khin h thng, gm: bn phm (keyboard), chut (mouse), a (Disk Drives), my qut nh (Scanners),... Cc thit b ra dng xut d liu ra, gm: mn hnh (Screen), my in (Printers), a (Disk Drives), my v (Plotters),...
7

Chng 1- Gii thiu chung

1.2.2.4 Bus h thng Bus h thng (System Bus) l mt tp cc ng dy kt ni CPU vi cc thnh phn khc ca my tnh. Bus h thng thng gm ba bus con: Bus a ch Bus A (Address bus), Bus d liu Bus D (Data bus), Bus iu khin - Bus C (Control bus). Bus a ch c nhim v truyn tn hiu a ch t CPU n b nh v cc thit b ngoi vi; Bus d liu vn chuyn cc tn hiu d liu theo hai chiu i v n CPU; Bus iu khin truyn tn hiu iu khin t CPU n cc thnh phn khc, ng thi truyn tn hiu trng thi ca cc thnh phn khc n CPU. 1.3 LCH S PHT TRIN MY TNH Lch s pht trin my tnh c th c chia thnh 5 th h chnh phc thuc vo s pht trin ca mch in t. 1.3.1 Th h 1 (1944-1959) My tnh th h 1 s dng n in t lm linh kin chnh v bng t lm thit b vo ra. Mt tch hp linh kin vo khong 1000 linh kin / foot3 (1 foot = 30.48 cm). i din tiu biu ca th h my tnh ny l siu my tnh ENIAC (Electronic Numerical Integrator and Computer), tr gi 500.000 USD. 1.3.2 Th h 2 (1960-1964) My tnh th h 2 s dng bng bn dn (transitor) lm linh kin chnh. Mt tch hp linh kin vo khong 100.000 linh kin / foot3. Cc i din tiu biu ca th h my tnh ny l UNIVAC 1107, UNIVAC III, IBM 7070, 7080, 7090, 1400 series, 1600 series. My tnh UNIVAC u tin ra i vo nm 1951, c gi khi im l 159.000 USD. Mt s phin bn kt tip ca UNIVAC c gi nm trong khong 1.250.000 1.500.000 USD. 1.3.3 Th h 3 (1964-1975) My tnh th h 3 s dng mch tch hp (IC Integrated Circuit) lm linh kin chnh. Mt tch hp linh kin vo khong 10.000.000 linh kin / foot3. Cc i din tiu biu ca th h my tnh ny l UNIVAC 9000 series, IBM System/360, System 3, System 7. 1.3.4 Th h 4 (1975-1989) My tnh th h 4 s dng mch tch hp loi ln (LSI Large Scale Integrated Circuit) lm linh kin chnh. Mt tch hp linh kin vo khong 1 t linh kin / foot3. Cc i din tiu biu ca th h my tnh ny l IBM System 3090, IBM RISC 6000, IBM RT, Cray 2 XMP. 1.3.5 Th h 5 (1990 - nay) My tnh th h 5 s dng mch tch hp loi siu ln (VLSI Very Large Scale Integrated Circuit) lm linh kin chnh. Mt tch hp linh kin rt cao vi cc cng ngh 0.180m 0.045m (kch thc transitor gim xung cn 180 45 nano mt). Cc i din tiu biu ca th h my tnh ny l my tnh s dng CPU Intel Pentium II, III, IV, M, D, Core Duo, Core 2 Duo, Core Quad,... My tnh th h 5 t hiu nng x l rt cao, cung cp nhiu tnh nng tin tin, nh h tr x l song song, tch hp kh nng x l m thanh v hnh nh.

Chng 1- Gii thiu chung

1.4 KIN TRC MY TNH VON-NEUMANN 1.4.1 S kin trc my tnh von-Neumann Kin trc my tnh von-Neumann c nh ton hc John von-Neumann a ra vo nm 1945 trong mt bo co v my tnh EDVAC nh minh ho trn Hnh 4 - Kin trc my tnh von-Neumann nguyn thu.

Hnh 4 Kin trc my tnh von-Neumann nguyn thu Cc my tnh hin i ngy nay s dng kin trc my tnh von-Neumann ci tin cn gi l kin trc my tnh von-Neumann hin i, nh minh ho trn Hnh 5. n v x l trung tm (CPU) n v iu khin (CU) n v s hc-logic (ALU) Cc thanh ghi (Registers) Hnh 5 Kin trc my tnh von-Neumann hin i 1.4.2 Cc c im ca kin trc von-Neumann Kin trc von-Neumann da trn 3 khi nim c s: (1) Lnh v d liu c lu tr trong b nh c ghi chia s - mt b nh duy nht c s dng lu tr c lnh v d liu, (2) B nh c nh a ch theo vng, khng ph thuc vo ni dung n lu tr v (3) Cc lnh ca mt chng trnh c thc hin tun t. Qu trnh thc hin lnh c chia thnh 3 giai on (stages) chnh: (1) CPU c (fetch) lnh t b nh, (2) CPU gii m v thc hin lnh; nu lnh yu cu d liu, CPU c d liu t b nh; v (3) CPU ghi kt qu thc hin lnh vo b nh (nu c).
9

B nh chnh (Main memory)

Cc thit b vo ra (I/O)

Bus h thng

Chng 1- Gii thiu chung

1.5 KIN TRC MY TNH HARVARD Kin trc my tnh Harvard l mt kin trc tin tin nh minh ho trn Hnh 6.

Hnh 6 Kin trc my tnh Harvard Kin trc my tnh Harvard chia b nh trong thnh hai phn ring r: B nh lu chng trnh (Program Memory) v B nh lu d liu (Data Memory). Hai h thng bus ring c s dng kt ni CPU vi b nh lu chng trnh v b nh lu d liu. Mi h thng bus u c y ba thnh phn truyn dn cc tn hiu a ch, d liu v iu khin. My tnh da trn kin trc Harvard c kh nng t c tc x l cao hn my tnh da trn kin trc von-Neumann do kin trc Harvard h tr hai h thng bus c lp vi bng thng ln hn. Ngoi ra, nh c hai h thng bus c lp, h thng nh trong kin trc Harvard h tr nhiu lnh truy nhp b nh ti mt thi im, gip gim xung t truy nhp b nh, c bit khi CPU s dng k thut ng ng (pipeline). 1.6 CC H S M V T CHC D LIU TRN MY TNH 1.6.1 Cc h s m Trong i sng hng ngy, h m thp phn (Decimal Numbering System) l h m thng dng nht. Tuy nhin, trong hu ht cc h thng tnh ton h m nh phn (Binary Numbering System) li c s dng biu din d liu. Trong h m nh phn, ch 2 ch s 0 v 1 c s dng: 0 biu din gi tr Sai (False) v 1 biu din gi tr ng (True). Ngoi ra, h m thp lc phn (Hexadecimal Numbering System) cng c s dng. H thp lc phn s dng 16 ch s: 0-9, A, B, C, D, E, F. 1.6.1.1 H m thp phn H m thp phn l h m c s 10, s dng 10 ch s: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Mi s trong h 10 c th c biu din thnh mt a thc: anan-1...a1 = an*10n-1an-1*10n-2*...*a1*100 V d: 123 123,456 = 1*102 + 2 * 101 + 3*100 = 100 + 20 + 3 = 1*102 + 2 * 101 + 3*100 + 4*10-1 + 5*10-2 + 6*10-3 = 100 + 20 + 3 + 0.4 + 0.05 + 0.006

10

Chng 1- Gii thiu chung

1.6.1.2 H m nh phn H m nh phn l h m c s 2, ch s dng 2 ch s: 0 v 1. Mi s trong h 2 cng c th c biu din thnh 1 a thc: (anan-1...a1)2 = an*2n-1an-1*2n-2*...*a1*20 V d: (11001010)2 = 1*27 + 1*26 + 0*25 + 0*24 + 1*23 + 0*22 + 1*21 + 0*20 = 128 + 64 + 8 + 2 = (202)10 Vic chuyn i s h thp phn sang s h nh phn c th c thc hin theo thut ton n gin nh minh ho trn Hnh 7.

Hnh 7 Chuyn i s h thp phn sang s h nh phn 1.6.1.3 H m thp lc phn H m thp lc phn l h m c s 16, s dng 16 ch s: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Mi s trong h 16 c biu din bi 4 ch s trong h nh phn nh minh ho trn Hnh 8. u im ca h thp lc phn l s thp lc phn c th chuyn i sang s h nh phn v ngc li mt cch d dng v cn t ch s hn h nh phn biu din cng mt n v d liu.

Hnh 8 Gi tr cc s thp lc phn theo h thp phn v nh phn 1.6.2 T chc d liu trn my tnh D liu trn my tnh c biu din theo cc n v (unit). Cc n v biu din d liu c s gm: bit, nibble, byte, word v double-word. Bit l n v d liu nh nht: mi bit ch lu c ti a 2 gi tr: 0 hoc 1, hay ng hoc sai. Nibble l n v k tip bit. Mi nibble l mt nhm 4 bit. Mt nibble c th lu ti a 16 gi tr, t (0000)2 n (1111)2, hoc mt ch s thp lc phn.

11

Chng 1- Gii thiu chung

Byte l n v d liu k tip nibble. Mt byte l mt nhm ca 8 bits hoc 2 nibbles. Mt byte c th lu n 256 gi tr, t (0000 0000)2 n (1111 1111)2, hoc t (00)16 n (FF)16. Hnh 9 minh ho n v biu din d liu Byte.

Hnh 9 n v biu din d liu Byte Word (t) l n v d liu k tip byte. Mt word l mt nhm ca 16 bits, hoc 2 bytes. Mt word c th lu n 216 (65536) gi tr, t (0000)16 n (FFFF)16. Hnh 10 minh ho n v biu din d liu word.

Hnh 10 n v biu din d liu Word Double words (t kp) l n v biu din d liu c s ln nht. Mt double word l mt nhm 32 bits, hoc 4 bytes, hoc 2 words. Mt double word c th lu n 232 gi tr, t (0000 0000)16 n (FFFF FFFF)16. Hnh 11 minh ho n v biu din d liu double word.

Hnh 11 n v biu din d liu Double word 1.6.3 S c du v s khng du Trong cc h thng tnh ton, vi cng mt s bit c th biu din cc gi tr khc nhau nu s c biu din l c du hoc khng du. biu din s c du, ngi ta s dng bit cao nht (bn tri nht) biu din du ca s - gi l bit du, chng hn bt du c gi tr 0 l s dng v bt du c gi tr 1 l s m. Vi s khng du, tt c cc bit c s dng biu din gi tr ca s. Nh vy, min gi tr c th biu din ca mt s gm n bt nh sau: S c du: min biu din t t -2n-1 n + 2n-1
12

Chng 1- Gii thiu chung

8 bits: t -128 n +128 16 bits: t -32768 n +32768 32 bits: t -2.147.483.648 n +2.147.483.648 8 bits: t 0 n 256 16 bits: t 0 n 65536 32 bits: t 0 n 4.294.967.296

S khng du: t 0 n 2n

1.6.4 Bng m ASCII Bng m ASCII (American Standard Code for Information Interchange) l bng m cc k t chun ting Anh dng cho trao i d liu gia cc h thng tnh ton. Bng m ASCII s dng 8 bt biu din 1 k t, cho php nh ngha tng s 256 k t, nh s t 0 n 255. 32 k t u tin v k t s 127 l cc k t iu khin (khng in ra c). Cc k t t s 32 n 126 l cc k t c th in c (gm c du trng). Cc v tr cn li trong bng (128255) dnh cho s dng trong tng lai. Hnh 12 v Hnh 13 ln lt l minh ho cc k t iu khin v cc k t in c ca bng m ASCII.

Hnh 12 Bng m ASCII - Mt s k t iu khin

13

Chng 1- Gii thiu chung

Hnh 13 Bng m ASCII - Cc k t in c

1.7 CU HI N TP 1. Phn bit khi nim kin trc & t chc my tnh. 2. Nu s khi v m t chc nng tng khi ca my tnh? 3. So snh hai kin trc von-Neumann v Harvard. 4. Cc h m 2, 10 v 16. 5. Cc n v lu tr d liu trn my tnh.

14

CHNG 2 KHI X L TRUNG TM


2.1 S KHI TNG QUT V CHU TRNH X L LNH 2.1.1 S khi tng qut ca CPU

CU IR Internal Bus

A Y

PC A Bus D Bus

ALU

MAR

Z MBR FR Hnh 14 S khi tng qut ca CPU

Hnh 14 trnh by s khi nguyn l tng qut ca CPU. Cc thnh phn ca CPU theo s ny gm: B iu khin (Control Unit CU) B tnh ton s hc v logic (Arithmetic and Logic Unit) Bus trong CPU (CPU Internal Bus) Cc thanh ghi ca CPU: Thanh ghi tch lu A (Accummulator) B m chng trnh PC (Program Counter) Thanh ghi lnh IR (Instruction Register) Thanh ghi a ch b nh MAR (Memory Address Register) Thanh ghi m d liu MBR (Memory Buffer Register) Cc thanh ghi tm thi Y v Z Thanh ghi c FR (Flag Register)

Chng 2- Khi x l trung tm

2.1.2 Chu trnh x l lnh Nh trnh by trong chng 1, nhim v ch yu ca CPU l c lnh t b nh, gii m v thc hin lnh ca chng trnh. Khong thi gian CPU thc hin xong mt lnh k t khi CPU cp pht tn hiu a ch nh cha lnh n khi n hon tt vic thc hin lnh c gi l chu k lnh (Insruction Cycle). Mi chu k lnh ca CPU c m t theo cc bc sau: 1. Khi mt chng trnh c kch hot, h iu hnh (OS - Operating System) np m chng trnh vo b nh trong; 2. a ch ca nh cha lnh u tin ca chng trnh c np vo b m chng trnh PC; 3. a ch nh cha lnh t PC c chuyn n bus a ch thng qua thanh ghi MAR; 4. Bus a ch chuyn a ch nh n n v qun l b nh (MMU - Memory Management Unit); 5. MMU chn ra nh v thc hin lnh c ni dung nh; 6. Lnh (cha trong nh) c chuyn ra bus d liu v tip theo c chuyn tip n thanh ghi MBR; 7. MBR chuyn lnh n thanh ghi lnh IR; IR chuyn lnh vo b iu khin CU; 8. CU gii m lnh v sinh cc tn hiu iu khin cn thit, yu cu cc b phn chc nng ca CPU, nh ALU thc hin lnh; 9. Gi tr a ch trong b m PC c tng ln 1 n v lnh v n tr n a ch ca nh cha lnh tip theo; 10. Cc bc t 3-9 c lp li vi tt c cc lnh ca chng trnh. 2.2 CC THANH GHI 2.2.1 Gii thiu v thanh ghi Thanh ghi (registers) l cc nh bn trong CPU, c nhim v lu tr tm thi lnh v d liu cho CPU x l. Thanh ghi thng c kch thc nh, nhng tc lm vic rt cao bng tc CPU. Cc CPU c (80x86) c khong 16-32 thanh ghi. Cc CPU hin i (nh Pentium 4 v Core Duo) c th c n hng trm thanh ghi. Kch thc thanh ghi ph thuc vo thit k CPU. Cc kch thc thng dng ca thanh ghi l 8, 16, 32, 64, 128 v 256 bit. CPU Intel 8086 v 80286 c cc thanh ghi 8 bit v 16 bit. CPU Intel 80386 v Pentium II c cc thanh ghi 16 bit v 32 bit. Cc CPU Pentium 4 v Core Duo c cc thanh ghi 32 bit, 64 bit v 128 bit. 2.2.1.1 Thanh tch lu A Thanh tch lu A (Accummulator) l mt trong cc thanh ghi quan trng nht ca CPU. Thanh ghi A khng nhng c s dng lu ton hng vo m cn dng cha kt qu ra. Ngoi ra, thanh ghi A cn thng c dng trong cc lnh trao i d liu vi cc thit b vo ra. Kch thc ca thanh ghi A bng kch thc t x l ca CPU: 8 bit, 16 bit, 32 bit hoc 64 bit.

16

Chng 2- Khi x l trung tm

V d v vic s dng thanh ghi A trong php ton: x + y s Np ton hng x vo thanh ghi A Np ton hng y vo thanh ghi tm thi Y ALU thc hin php cng A + Y v lu kt qu vo thanh ghi Z Kt qu php tnh t Z c chuyn v thanh ghi A. Kt qu trong thanh ghi A c lu vo nh s. 2.2.1.2 B m chng trnh PC B m chng trnh PC (Program Counter) hoc con tr lnh (IP Instruction pointer) lun cha a ch ca nh cha lnh k tip c thc hin. c bit, PC cha a ch ca nh cha lnh u tin ca chng trnh khi chng trnh c kch hot v c h iu hnh np vo b nh. Khi CPU thc hin xong mt lnh, a ch ca nh cha lnh tip theo c np vo PC. Kch thc ca PC ph thuc vo thit k CPU. Cc kch thc thng dng ca PC l 8 bit, 16 bit, 32 bit v 64 bit. 2.2.1.3 Thanh ghi lnh IR Thanh ghi lnh IR (Instruction register) lu lnh ang thc hin. IR nhn lnh t MBR v chuyn tip lnh n CU gii m v thc hin. 2.2.1.4 Cc thanh ghi MAR v MBR MAR l thanh ghi a ch b nh (Memory address register) - giao din gia CPU v bus a ch. MAR nhn a ch nh cha lnh tip theo t PC v chuyn tip ra bus a ch. MBR l thanh ghi m d liu (Memory buffer register) - giao din gia CPU v bus a ch. MBR nhn lnh t bus a ch v chuyn tip lnh n IR thng qua bus trong CPU. 2.2.1.5 Cc thanh ghi tm thi CPU thng s dng mt s thanh ghi tm thi cha ton hng u vo v kt qu u ra, nh cc thanh ghi tm thi X, Y v Z. Ngoi ra, cc thanh ghi tm thi cn tham gia trong vic h tr x l song song (thc hin nhiu lnh cng mt thi im) v h tr thc hin lnh theo c ch thc hin tin tin kiu khng theo trt t (OOO Out Of Order execution). 2.2.1.6 Con tr ngn xp SP SP

Stack Hnh 15 Con tr ngn xp SP


17

Chng 2- Khi x l trung tm

Ngn xp (Stack) l b nh c bit hot ng theo nguyn l vo sau ra trc (LIFO). Con tr ngn xp SP (Stack Pointer) l mt thanh ghi lun cha a ch nh ngn xp. C hai thao tc chnh vi ngn xp: Push - y d liu vo ngn xp: SP SP + 1 {SP} D liu ; tng a ch nh ngn xp ; np d liu vo ngn xp

Pop - ly d liu ra khi ngn xp Thanh ghi {SP} ; chuyn d liu t nh ngn xp vo thanh ghi SP SP 1 ; gim a ch nh ngn xp 2.2.1.7 Cc thanh ghi tng qut Cc thanh ghi tng qut (General Purpose Registers) l cc thanh ghi a nng, c th c s dng cho nhiu mc ch: cha ton hng u vo hoc cha kt qu u ra. Chng hn, CPU Intel 8086 c 4 thanh ghi tng qut: AX - Thanh tch lu, BX - thanh ghi c s, CX thanh m v DX - thanh ghi d liu. 2.2.1.8 Thanh ghi trng thi FR Thanh ghi trng thi (SR - Status Register) hoc thanh ghi c (FR Flag Register) l mt thanh ghi c bit ca CPU: mi bt ca thanh ghi c lu trng thi ca kt qu ca php tnh ALU thc hin. C hai loi bt c: c trng thi (CF, OF, AF, ZF, PF, SF) v c iu khin (IF, TF, DF). Cc bt c thng c s dng nh l cc iu kin trong cc lnh r nhnh to logic chng trnh. Kch thc ca thanh ghi FR ph thuc thit k CPU.

Hnh 16 Cc bit ca thanh ghi c FR 8 bit Hnh 16 biu din cc bit ca thanh ghi c FR. ngha c th ca cc bit nh sau: ZF: C Zero, ZF=1 nu kt qu=0 v ZF=0 nu kt qu<>0. SF: C du, SF=1 nu kt qu m v SF=0 nu kt qu dng. CF: C nh, CF=1 nu c nh/mn, CF=0 trong trng hp khc. AF: C nh ph, AF=1 nu c nh/mn na thp ca ton hng. OF: C trn, OF=1 nu xy ra trn, OF=0 trong trng hp khc. PF: C chn l, PF=1 nu tng s bit 1 trong kt qu l l v PF=0 nu tng s bit 1 trong kt qu l chn. IF: C ngt, IF=1: cho php ngt, IF=0: cm ngt. 2.3 KHI IU KHIN Khi iu khin (Control Unit CU) l mt trong cc khi quan trng nht ca CPU. CU m nhim vic iu khin ton b cc hot ng ca CPU theo xung nhp ng h. CU s dng nhp ng h ng b cc n v chc nng trong CPU v gia CPU vi cc b phn
18

Chng 2- Khi x l trung tm

bn ngoi. Hnh 17 minh ho phng thc lm vic ca khi iu khin CU. Khi iu khin CU nhn ba tn hiu u vo: (1) Lnh t thanh ghi lnh IR, (2) Gi tr cc c trng thi ca ALU v (3) Xung nhp ng h CLK v CU sn sinh hai nhm tn hiu u ra: (1) Nhm tn hiu iu khin cc b phn bn trong CPU (Internal control signal) v (2) Nhm tn hiu iu khin cc b phn bn ngoi CPU (External control signal).
Internal control signal External control signal

CLK

Control Unit CU

ALU Flags

IR

Hnh 17 Khi iu khin CU v cc tn hiu 2.4 KHI S HC V LOGIC Khi s hc v logic (Arithmetic and Logic Unit ALU) m nhim chc nng tnh ton trong CPU. ALU bao gm mt lot cc n v chc nng con thc hin cc php ton s hc trn s nguyn v logic: B cng (ADD), b tr (SUB), b nhn (MUL), b chia (DIV), .... Cc b dch (SHIFT) v quay (ROTATE) B ph nh (NOT), b v (AND), b hoc (OR) v b hoc loi tr (XOR) Hnh 18 minh ho cc khi con ca ALU cng nh cc cng vo v cng ra ca ALU. Hai cng vo IN nhn cc ton hng u vo t cc thanh ghi v mt cng OUT kt ni vi bus trong chuyn kt qu tnh ton n thanh ghi.

19

Chng 2- Khi x l trung tm

IN

IN

ADD MUL

SUB DIV SHR

N EG OR ROR XOR

SHL ROL

NOT AND

OUT Hnh 18 B tnh ton ALU 2.5 BUS TRONG CPU Bus trong CPU (Internal bus) l knh giao tip gia cc b phn bn trong CPU, c th gia b iu khin CU vi cc thanh ghi v b tnh ton ALU. Bus trong h tr knh giao tip song cng (full duplex) v cung cp giao din kt ni vi bus ngoi (bus h thng). So vi bus ngoi, bus trong thng c bng thng ln hn v c tc nhanh hn. 2.6 CU HI N TP 1. Nu s khi tng qut v cc thnh phn chnh ca CPU? 2. Nu chu trnh x l lnh ca CPU? 3. Nu vai tr v chc nng ca cc thanh ghi ca CPU? 4. Nu s v chc nng ca CU v ALU?

20

CHNG 3 TP LNH MY TNH


3.1 GII THIU V TP LNH MY TNH 3.1.1 Lnh my tnh l g? C th ni, nu coi phn mch in t ca CPU l phn xc th tp lnh (Instruction Set) chnh l phn hn ca b no my tnh. Nh c tp lnh, CPU c kh nng lp trnh c thc hin cc cng vic hu ch cho ngi dng. Vy lnh my tnh l g? C th nh ngha lnh my tnh mt cch n gin: Lnh my tnh (Computer Instruction) l mt t nh phn (binary word) c gn mt nhim v c th. Cc lnh ca chng trnh c lu trong b nh v chng ln lt c CPU c, gii m v thc hin. Tp lnh my tnh thng gm nhiu lnh c th c chia thnh mt s nhm theo chc nng: nhm cc lnh vn chuyn d liu (data movement), nhm cc lnh tnh ton (computational), nhm cc lnh iu kin v r nhnh conditonal and branching) v mt s lnh khc. Vic thc hin lnh c th c chia thnh cc pha (phase) hay giai on (stage). Mi lnh c th c thc hin theo 4 giai on: (1) c lnh (Instruction fetch - IF): lnh c c t b nh v CPU; (2) Gii m (Instruction decode - ID): CPU gii m lnh; (3) Thc hin lnh (Instruction execution EX): CPU thc hin lnh; v (4) Lu kt qu (Write back - WB): kt qu thc hin lnh (nu c) c lu vo b nh. 3.1.2 Chu k thc hin lnh Chu k thc hin lnh (Instruction execution cycle) c nh ngha l khong thi gian m CPU thc hin xong mt lnh. Mt chu k thc hin lnh c th gm mt s giai on thc hin lnh v mt giai on thc hin lnh c th gm mt s chu k my. Mt chu k my c th gm mt s chu k ng h. C th hn, chu k thc hin lnh c th gm cc thnh phn sau: Chu k c lnh Chu k c b nh (d liu) Chu k ghi b nh (d liu) Chu k c thit b ngoi vi Chu k ghi thit b ngoi vi Chu k bus ri. 3.2 DNG V CC THNH PHN CA LNH Dng tng qut ca lnh my tnh nh minh ho trn Hnh 19, gm c 2 phn chnh: (1) m lnh (opcode operation code) v (2) a ch ca cc ton hng (Addresses of Operands). Mi lnh c mt m lnh ring v c biu bin bng mt s bit. Chng hn, m lnh ca CPU Intel 8086 c biu din bi 6 bit. Mi lnh c th c mt hoc nhiu ton hng v mi ton hng l mt a ch. Tu chung, c 5 dng ton hng ca lnh: 3 a ch, 2 a ch, 1 a ch, 1,5 a ch v 0 a ch. Chi tit v tng dng ton hng c trnh by trong mc 3.3.

Chng 3- Tp lnh my tnh Opcode Opcode Addresses of Operands Destination addr. Source addr.

Hnh 19 Dng v cc thnh phn ca lnh 3.3 CC DNG A CH / TON HNG 3.3.1 Ton hng dng 3 a ch Dng: opcode addr1, addr2, addr3 Mi a ch addr1, addr2, addr3 tham chiu n mt nh hoc mt thanh ghi. V d: ADD R1, R2, R3; R1 R2 + R3; Ri l thanh ghi ca CPU. ADD A, B, C; M[A] M[B] + M[C]; R2 cng vi R3, kt qu lu vo R1.

Ly ni dung ca nh B cng vi ni dung ca nh C, kt qua lu vo nh A A, B, C l a ch cc nh. M[..] quy c l php tham chiu ni dung nh. 3.3.2 Ton hng dng 2 a ch Dng: opcode addr1, addr2 Mi a ch addr1, addr2 tham chiu n mt nh hoc mt thanh ghi. V d: ADD R1, R2; R1 R1 + R2; Ri l thanh ghi ca CPU. ADD A, B; M[A] M[A] + M[B]; R1 cng vi R2, kt qu lu vo R1.

Ly ni dung ca nh A cng vi ni dung ca nh B, kt qua lu vo nh A A, B l a ch cc nh. 3.3.3 Ton hng dng 1 a ch Dng: opcode addr2 a ch addr2 tham chiu n mt nh hoc mt thanh ghi. Ngoi ra, thanh ghi tch lu Racc c s dng v c vai tr nh addr1 trong ton hng dng 2 a ch. V d: ADD R2; Racc Racc + R2; Racc cng vi R2, kt qu lu vo Racc. R2 l thanh ghi ca CPU.
22

Chng 3- Tp lnh my tnh

ADD B;

Racc Racc + M[B];

Ly ni dung ca thanh ghi Racc cng vi ni dung ca nh B, kt qua lu vo Racc. A l a ch mt nh. 3.3.4 Ton hng dng 1,5 a ch Dng: opcode addr1, addr2 Mt a ch tham chiu n mt nh v a ch cn li tham chiu n mt thanh ghi. Dng 1,5 a ch l dng ton hng hn hp gia nh v thanh ghi. V d: ADD R1, A; R1 R1 + M[A]; Ly ni dung ca R1 cng ni dung ca nh A, kt qu lu vo R1. R1 l thanh ghi ca CPU v A l a ch nh. 3.3.5 Ton hng dng 0 a ch Ton hng 0 a ch thng c s dng trong cc lnh thao tc vi ngn xp: PUSH v POP nh minh ho trn Hnh 20.

Hnh 20 Thao tc PUSH v POP vi ngn xp 3.4 CC CH A CH 3.4.1 Gii thiu v ch a ch Ch a ch (Addressing modes) l phng thc hoc cch thc CPU t chc cc ton hng ca lnh. Ch a ch cho php CPU kim tra dng lnh v tm cc ton hng ca lnh. S lng cc ch a ch ph thuc vo thit k ca CPU. Sau y l mt s ch a ch thng dng: 1. Tc th (Immediate)
23

Chng 3- Tp lnh my tnh

2. Trc tip (Direct ) 3. Gin tip (indirect ) 4. Ch s (Indexed ) 5. Tng i (Relative) M t chi tit tng ch a ch c thc hin trong mc 3.4.2. Cc v d minh ho cc ch a ch s dng lnh LOAD (np) vi dng sau: LOAD <ton hng ch> <ton hng gc> ngha: Np gi tr ca <ton hng gc> vo <ton hng ch> Hay: <ton hng ch> <ton hng gc> 3.4.2 Cc ch a ch 3.4.2.1 Ch a ch tc th (Immediate) Trong ch a ch tc th, gi tr hng ca ton hng ngun (source operand) c t nm ngay sau m lnh, cn ton hng ch c th l 1 thanh ghi hoc 1 a ch nh. V d: LOAD R1, #1000; LOAD B, #100; R1 1000 ; Np gi tr 1000 vo thanh ghi R1. M[B] 100 ; Np gi tr 100 vo nh B.

3.4.2.2 Ch a ch trc tip (Direct) Khc vi ch a ch tc th, ch a ch trc tip s dng mt hng biu din a ch mt nh lm mt ton hng. Ton hng cn li c th l 1 thanh ghi hoc 1 a ch nh. V d: LOAD R1, 1000; R1 M[1000] Np ni dung nh c a ch 1000 vo thanh ghi R1. Hnh 21 minh ho vic tham chiu trong ch a ch trc tip v d trn. a ch 1000 tr n nh cha gi tr 200 v gi tr ny c np vo thanh ghi R1.

LOAD

R1, 1000 200 R1 200 Hnh 21 Tham chiu vi ch a ch trc tip


24

Chng 3- Tp lnh my tnh

3.4.2.3 Ch a ch gin tip (Indirect) Trong ch a ch gin tip, mt thanh ghi hoc mt nh c s dng lu a ch mt nh lm mt ton hng. Ton hng cn li c th l mt hng, mt thanh ghi hoc a ch mt nh. Nu thanh ghi c s dng lu a ch nh ta c ch a ch gin tip qua thanh ghi (register indirect); ngc li nu nh c dng lu a ch nh khc ta c ch a ch gin tip qua nh (memory indirect). V d: Gin tip qua thanh ghi: LOAD Rj, (Ri); Gin tip qua nh: LOAD Ri, (1000); Ri M[M[1000]] Np ni dung nh c a ch lu trong nh 1000 vo thanh ghi Ri. Hnh 22 minh ho vic tham chiu trong ch a ch gin tip qua thanh ghi v gin tip qua nh. C th thy rng, ch a ch gin tip qua thanh ghi ch yu cu mt tham chiu b nh cho mt truy nhp, cn ch a ch gin tip qua nh phi cn ti hai tham chiu b nh cho mt truy nhp. Rj M[Ri] Np ni dung nh c a ch lu trong thanh ghi Ri vo thanh ghi Rj.

Hnh 22 Tham chiu trong ch a ch gin tip

25

Chng 3- Tp lnh my tnh

3.4.2.4 Ch a ch ch s (Indexed) Trong ch a ch ch s, a ch ca 1 ton hng c to thnh bi php cng gia 1 hng v thanh ghi ch s (index register). Ton hng cn li c th l mt hng, mt thanh ghi hoc a ch mt nh. V d: LOAD Ri, X(Rind); Ri M[X+Rind] X l mt hng v Rind l thanh ghi ch s. Hnh 23 minh ho php tham chiu trong ch a ch ch s.

Hnh 23 Tham chiu trong ch a ch ch s 3.4.2.5 Ch a ch tng i (Relative) Trong ch a ch tng i, a ch ca 1 ton hng c to thnh bi php cng gia 1 hng v b m chng trnh PC (program counter). Ton hng cn li c th l mt hng, mt thanh ghi hoc a ch mt nh. V d: LOAD Ri, X(PC); Ri M[X+PC] X l mt hng v PC l b m chng trnh. Hnh 24 minh ho php tham chiu trong ch a ch ch s.

Hnh 24 Tham chiu trong ch a ch tng i

26

Chng 3- Tp lnh my tnh

3.5 MT S DNG LNH THNG DNG Ph thuc thit k CPU, tp lnh ca CPU c th c s lng cc lnh rt khc nhau, t vi chc lnh n vi trm lnh. Tuy nhin, mt hu ht cc tp lnh my tnh thng bao gm cc nhm lnh c s sau: (1) Cc lnh vn chuyn d liu (Data Movement Instructions), (2) Cc lnh ton hc v logic (Arithmetic and Logical Instructions), (3) Cc lnh iu khin chng trnh (Control/Sequencing Instructions) v (4) Cc lnh vo ra (Input/Output Instructions). Phn tip theo ca mc ny trnh by mt s lnh thng dng thuc cc nhm lnh k trn. 3.5.1 Cc lnh vn chuyn d liu Cc lnh vn chuyn d liu vn chuyn d liu gia cc b phn ca my tnh. C th, vn chuyn d liu gia cc thanh ghi ca CPU, np d liu t cc nh v cc thanh ghi ca CPU v ngc li ghi d liu t cc thanh ghi ra cc nh. Ngoi ra, d liu cng c th c vn chuyn gia cc nh trong b nh trong. V d: Vn chuyn d liu gia cc thanh ghi ca CPU: MOVE Ri, Rj; Ri Rj Chuyn (sao chp) ni dung ca thanh ghi Rj sang thanh ghi Ri. Vn chuyn d liu gia 1 thanh ghi ca CPU v mt nh: MOVE 1000, Rj; M[1000] Rj Lu ni dung ca thanh ghi Rj vo nh c a ch 1000. Vn chuyn d liu gia cc nh: MOVE 1000, (Rj); M[1000] M[Rj] Chuyn (sao chp) ni dung ca nh c a ch cha trong thanh ghi Rj sang s nh c a ch 1000. Mt s lnh vn chuyn d liu thng dng Tn lnh MOVE LOAD STORE PUSH POP ngha Chuyn d liu gia thanh ghi thanh ghi, nh - thanh ghi v nh - nh. Np ni dung 1 nh vo 1 thanh ghi. Lu ni dung 1 thanh ghi ra 1 nh. y d liu vo ngn xp. Ly d liu ra khi ngn xp.

3.5.2 Cc lnh ton hc v logic Cc lnh tnh ton s hc v logic c s dng thc hin cc thao tc tnh ton trn ni dung cc thanh ghi v / hoc ni dung cc nh. Cc lnh tnh ton h tr hu ht cc php ton s hc thng dng nh cng, tr, nhn, chia cc s nguyn v cc php ton logic, nh ph nh, v, hoc, hoc loi tr.
27

Chng 3- Tp lnh my tnh

V d: Lnh cng: ADD R1, R2, R3; ADD A, B, C; Lnh tr: SUBSTRACT R1, R2, R3; Lnh logic: NOT R1; AND R1, R2; R1 !( R1) R1 R1 R2 Ly gi tr o (ph nh) ca ni dung thanh ghi R1. Nhn bit ni dung 2 thanh ghi R1 v R2, kt qu lu vo R1. Mt s lnh tnh ton v logic thng dng Tn lnh ADD SUBSTRACT MULTIPLY DIVIDE INCREMENT DECREMENT NOT AND OR XOR COMPARE SHIFT ROTATE ngha Cng cc ton hng Tr cc ton hng Nhn cc ton hng Chia cc ton hng Tng mt n v Gim mt n v Ph nh bit Php v (nhn) bit Php hoc (cng) bit Php hoc loi tr bit So snh 2 ton hng Php dch bit (dch tri, dch phi) Php quay bit (quay tri, quay phi) R1 R2 - R3 Ly ni dung thanh ghi R2 tr i ni dung thanh ghi R3, kt qu lu vo thanh ghi R1. R1 R2 + R3 M[A] M[B] + M[C] Cng ni dung 2 thanh ghi R2 v R3, kt qu lu vo thanh ghi R1. Cng ni dung 2 nh B v C, kt qu lu vo nh A.

3.5.3 Cc lnh iu khin chng trnh Cc lnh iu khin chng trnh c s dng thay i trt t thc hin cc lnh khc trong chng trnh hay lm thay i logic chng trnh. y l nhm lnh gy ra cc r nhnh (branching), hoc nhy (jumping) lm cho qu trnh thc hin chng trnh phc tp hn. Mt trong cc c tnh ca cc lnh ny l chng lm thay i ni dung ca b m chng trnh PC ni cha a ch nh cha lnh tip theo c thc hin, c ngha l yu
28

Chng 3- Tp lnh my tnh

cu CPU thc hin chng trnh t mt v tr mi thay v thc hin lnh k tip lnh ang thc hin. Cc lnh iu khin chng trnh s dng cc c ca ALU (lu trong thanh ghi c FR) xc nh iu kin r nhnh hoc nhy. C th chia cc lnh iu khin chng trnh thnh 3 loi chnh sau: Cc lnh nhy / r nhnh c iu kin (CONDITIONAL BRANCHING/ CONDITIONAL JUMP); Cc lnh nhy/ r nhnh khng iu kin (UNCONDITIONAL BRANCHING / JUMP); Cc lnh gi thc hin (CALL) v tr v (RETURN) t chng trnh con. V d: Cng ni dung 100 nh cnh nhau, bt u t a ch 1000. Kt qu lu vo R0. LOAD R1, #100; LOAD R2, #1000; LOAD R0, #0; Loop: ADD R0, (R2); INCREMENT R2; R1 100 R2 1000 R0 0 R0 R0 + M[R2] R2 R2 + 1

DECREMENT R1; R1 R1 1 BRANCH-IF-GREATER-THAN Loop; ; Quay li thc hin lnh sau nhn Loop nu R1 cn ln hn 0. Mt s lnh iu khin chng trnh thng dng Tn lnh BRANCH-IF-CONDITION JUMP CALL RETURN ngha Chuyn n thc hin lnh a ch mi nu iu kin l ng. Chuyn n thc hin lnh a ch mi. Chuyn n thc hin chng trnh con. Tr v (t chng trnh con) thc hin tip chng trnh gi.

3.5.4 Cc lnh vo ra Cc lnh vo ra (I/O instructions) c s dng vn chuyn d liu gia my tnh v cc thit b ngoi vi. Cc thit b ngoi vi giao tip vi my tnh thng qua cc cng vo ra chuyn dng (IO dedicated ports). Mi cng vo ra c gn mt a ch ring bit. C hai lnh vo ra c bn: INPUT: s dng chuyn d liu t thit b vo (input devices) n CPU; OUTPUT: s dng chuyn d liu t CPU n thit b ra (output devices).

29

Chng 3- Tp lnh my tnh

3.6 GII THIU C CH NG LNH (PIPELINE) 3.6.1 Gii thiu c ch ng lnh C ch ng lnh (pipeline) hay cn gi l c ch thc hin xen k cc lnh ca chng trnh l mt phng php thc hin lnh tin tin, cho php ng thi thc hin nhiu lnh, gim thi gian trung bnh thc hin mi lnh v nh vy tng c hiu nng x l lnh ca CPU. Vic thc hin lnh c chia thnh mt s giai on v mi giai on c thc thi bi mt n v chc nng khc nhau ca CPU. Nh vy CPU c th tn dng ti a nng lc x l ca cc n v chc nng ca mnh, gim thi gian ch cho tng n v chc nng.

(a) Khng pipeline

(b) C pipeline Hnh 25 Thc hin lnh (a) khng pipeline v (b) c pipeline Hnh 25 minh ho c ch thc hin lnh (a) khng pipeline v (b) c pipeline. Trong , vic thc hin lnh c chia thnh 5 giai on: Instruction Fetch - IF: c lnh t b nh (hoc cache); Instruction Decode - ID: gii m lnh v c cc ton hng; Execute - EX: thc hin lnh; nu l lnh truy nhp b nh: tnh ton a ch b nh; Memory Access - MEM: c/ghi b nh; no-op nu khng truy nhp b nh; no-op l giai on ch, tiu tn thi gian CPU, nhng khng thc hin thao tc c ngha; Write Back - WB: Ghi kt qu vo cc thanh ghi. C th thy, vi c ch thc hin khng pipeline, ti mi thi im ch c mt lnh c thc hin v ch c mt n v chc nng ca CPU lm vic, cc n v chc nng khc trong trng thi ch. Ngc li, vi c ch thc hin c pipeline, c nhiu lnh ng thi c thc hin gi nhau trong CPU v hu ht cc n v chc nng ca CPU lin tc tham gia vo qu trnh x l lnh. S lng lnh c x l ng thi ng bng s giai on thc hin lnh. Vi 5 giai on thc hin lnh, x l 5 lnh, CPU cn 9 nhp ng h vi c ch thc hin c pipeline, trong khi CPU cn n 25 nhp ng h thc hin 5 lnh vi c ch thc hin khng pipeline. Hnh 26 minh ho vic cc n v chc nng ca CPU phi hp thc hin lnh trong c ch pipeline.

30

Chng 3- Tp lnh my tnh

Vic la chn s giai on thc hin lnh sao cho ph hp l mt trong cc vn quan trng ca c ch ng lnh. V mt l thuyt, thi gian thc hin lnh trung bnh s gim khi tng s giai on thc hin lnh. Cho n hin nay, khng c cu tr li chnh xc v s giai on thc hin lnh ti u m n ph thuc nhiu vo thit k ca CPU. Vi cc CPU c (h Intel 80x86 v tng ng) s giai on l 3 n 5. Vi cc CPU Intel Pentium III v Pentium M, Core Duo, Core 2 Duo s giai on l khong 10 n 15. Ring h Intel Pentium IV c s giai on vo khong 20 v c bit phin bn Intel Pentium IV Prescott chia vic thc hin lnh thnh 31 giai on.

Hnh 26 Thc hin lnh theo c ch pipeline vi cc n v chc nng ca CPU 3.6.2 Cc vn ca c ch ng lnh v hng gii quyt Nh trnh by, c ch ng lnh gip gim thi gian trung bnh thc hin tng lnh v tng ng k hiu sut x l lnh ca CPU. Tuy nhin, c ch ng lnh cng gp phi mt s vn lm gim hiu sut thc hin lnh. Tu chung, c ba vn thng gp vi c ch ng lnh: (1) Vn xung t ti nguyn (resource conflicts), (2) Vn tranh chp d liu (Data hazards) v (3) Vn ny sinh do cc lnh r nhnh (Branch instructions). Trong phm vi ca bi ging ny, hng gii quyt cc vn ca c ch ng lnh ch dng mc gii thiu phng php. 3.6.2.1 Vn xung t ti nguyn Vn xung t ti nguyn xy ra khi h thng khng cung cp ti nguyn phn cng phc v CPU thc hin ng thi nhiu lnh trong c ch ng lnh. Hai xung t ti nguyn thng gp nht l xung t truy cp b nh v xung t truy cp cc thanh ghi. Gi s b nh ch h tr mt truy cp ti mi thi im v nu ti cng mt thi im, c hai yu cu truy cp b nh ng thi t 2 lnh c thc hin trong ng lnh (c lnh ti giai on IF v c d liu ti giai on ID) s ny sinh xung t. iu tng t cng c th xy ra vi cc thanh ghi khi c 2 hay nhiu lnh ang thc hin ng yu cu c/ghi cng mt thanh ghi.

31

Chng 3- Tp lnh my tnh

Gii php ti u cho vn xung t ti nguyn l nng cao nng lc phc v ca cc ti nguyn phn cng. Vi xung t truy cp b nh c th s dng h thng nh h tr nhiu lnh c ghi ng thi, hoc s dng cc b nh tin tin nh b nh cache. Vi xung t truy cp cc thanh ghi, gii php l tng s lng thanh ghi vt l v c c ch cp pht thanh ghi linh hot khi thc hin cc lnh. 3.6.2.2 Vn tranh chp d liu Tranh chp d liu cng l mt trong cc vn ln ca c ch ng lnh v tranh chp d liu kiu c sau khi ghi (RAW Read After Write) l dng xung t d liu hay gp nht. hiu r tranh chp d liu kiu RAW, ta xem xt hai lnh sau: ADD R1, R2, R3; SUB R4, R1, R2; R1 R2 + R3 R4 R1 + R2 (1) (2)

Hnh 27 Tranh chp d liu kiu RAW Hnh 27 minh ho tranh chp d liu kiu RAW gia hai lnh ADD v SUB c thc hin k nhau trong c ch ng lnh. C th thy lnh SUB s dng kt qu ca lnh ADD (thanh ghi R1 l kt qu ca ADD v l u vo cho SUB) v nh vy hai lnh c s ph thuc d liu. Tuy nhin, lnh SUB c thanh ghi R1 ti giai on gii m (ID), trc khi lnh ADD ghi kt qu vo thanh ghi R1 giai on lu kt qu (WB). Nh vy, gi tr SUB c c t thanh ghi R1 l gi tr c, khng phi l kt qu to ra bi ADD. SUB c c gi tr mi nht ca R1, giai on ID ca SUB phi li 3 nhp, n v tr giai on WB ca ADD kt thc. C mt s gii php cho vn tranh chp d liu kiu RAW. C th: 1. Nhn dng tranh chp RAW khi n din ra; 2. Khi tranh chp RAW xy ra, tm dng (stall) ng lnh cho n khi lnh pha trc hon tt giai on WB; 3. C th s dng trnh bin dch (compiler) nhn dng tranh chp RAW v thc hin: Chn thm cc lnh NO-OP vo gia cc lnh c th gy ra tranh chp RAW; NO-OP l lnh rng, khng thc hin tc v hu ch m ch tiu tn thi gian CPU. Thay i trt t cc lnh trong chng trnh v chn cc lnh c lp vo gia cc lnh c th gy ra tranh chp RAW;
32

Chng 3- Tp lnh my tnh

Mc ch ca c hai phng php k trn l li vic thc hin lnh gy tranh chp d liu cho n khi lnh trc n hon tt vic lu kt qu. 4. S dng phn cng nhn dng tranh chp RAW v d on trc gi tr d liu ph thuc. Hnh 28 minh ho gii php khc phc tranh chp RAW bng cch chn thm cc lnh NO-OP. Hnh 29 minh ho gii php khc phc tranh chp RAW bng cch chn thm cc lnh c lp vi hai lnh c tranh chp. Cc lnh c lp c th c c bng cch thay i trt t thc hin cc lnh ca chng trnh m khng thay i kt qu thc hin n. Cng c th s dng gii php kt hp chn NO-OP v lnh c lp.

Hnh 28 Khc phc tranh chp RAW bng chn thm NO-OP

Hnh 29 Khc phc tranh chp RAW bng chn cc lnh c lp 3.6.2.3 Vn ny sinh do cc lnh r nhnh Theo thng k, t l cc lnh r nhnh trong chng trnh khong 10-30%. Do lnh r nhnh thay i ni dung ca b m chng trnh, chng c th ph v tin trnh thc hin tun t cc lnh trong ng lnh v lnh c thc hin sau lnh r nhnh c th khng phi l lnh lin sau n m l mt lnh v tr khc. Nh vy, do kiu thc hin gi u, cc lnh lin sau lnh r nhnh c np v thc hin d dang trong trong ng lnh s b y ra lm cho ng lnh b trng rng v h thng phi bt u np mi cc lnh t a ch ch r nhnh. Hnh 30 minh ho vn ny sinh trong ng lnh do lnh r nhnh. Cc lnh sau lnh r nhnh LOAD v ADD b y ra v h thng np mi cc lnh t a ch ch r nhnh 1000.

33

Chng 3- Tp lnh my tnh

Hnh 30 Vn ny sinh do lnh r nhnh C nhiu gii php khc phc cc vn ny sinh do cc lnh r nhnh, nh s dng ch r nhnh (branch targets), lm chm r nhnh (delayed branching) v d on r nhnh (branch prediction). Ti liu ny ch gii thiu phng php lm chm r nhnh. tng chnh ca phng php lm chm r nhnh l lnh r nhnh s khng gy ra s r nhnh tc th m c lm tr mt s chu k, ph thuc vo chiu di ca ng lnh. Phng php ny cho hiu qu kh tt vi cc ng lnh ngn, thng l 2 giai on v vi rng buc lnh ngay sau lnh r nhnh lun c thc hin, khng ph thuc vo kt qu ca lnh r nhnh. Cch thc hin ca phng php chm r nhnh l chn thm mt lnh NO-OP hoc mt lnh c lp vo ngay sau lnh r nhnh. Hnh 31 minh ho vn ny sinh do lnh r nhnh c iu kin JNE (nhy nu R1 khng bng 0), gii php chn mt lnh NO-OP hoc mt lnh c lp vo sau lnh nhy khc phc.

Hnh 31 Khc phc vn lnh r nhnh bng cch chn NO-OP hoc lnh c lp
34

Chng 3- Tp lnh my tnh

3.7 CU HI N TP 1. Khi nim lnh v tp lnh? Chu k lnh v cc giai on thc hin lnh. 2. Dng lnh v cc dng a ch ton hng. 3. Khi nim ch a ch v cc ch a ch. 4. Nu mt s dng lnh thng dng. 5. Nguyn l hot ng ca c ch ng lnh ca CPU? 6. Cc vn ca c ch ng lnh ca CPU v hng khc phc.

35

CHNG 4 B NH TRONG
4.1 PHN LOI B NH MY TNH 4.1.1 Phn loi b nh B nh my tnh gm nhiu thnh phn vi tc truy cp v v dung lng khc nhau c kt hp vi nhau to thnh h thng nh. C nhiu cch phn loi b nh my tnh. Tu chung, c th chia b nh my tnh da trn ba tiu ch: (1) kiu truy cp, (2) kh nng duy tr d liu v (3) cng ngh ch to. Da trn kiu truy cp, c th chia b nh my tnh thnh ba loi: B nh truy cp tun t (Serial Access Memory - SAM), b nh truy nhp ngu nhin (Random Access Memory RAM), v b nh ch c (Read Only Memory - ROM). Trong b nh truy cp tun t, cc nh c truy cp mt cch tun t, c ngha l mun truy cp n nh sau phi duyt qua nh trc n. Tc truy cp cc nh c v tr khc nhau l khng ging nhau. Ngc li, trong b nh truy nhp ngu nhin, cc nh c th c truy cp ngu nhin, khng theo mt trt t nh trc. Vi b nh ch c, thng tin c ghi vo b nh mt ln nh mt thit b c bit v sau ch c th c ra. Da trn kh nng duy tr d liu, c hai loi b nh: b nh n nh (Non-volatile memory) v b nh khng n nh (Volatile memory). B nh n nh c kh nng duy tr d liu k c khi khng c ngun nui. i din tiu biu cho b nh n nh l b nh ROM. Ngc li, thng tin trong b nh khng n nh ch tn ti khi c ngun nui v s mt khi mt ngun nui. i din tiu biu cho b nh khng n nh l b nh RAM. Da trn cng ngh ch to, c ba loi b nh: b nh bn dn (Semiconductor memory), b nh t tnh (Magnetic memory), b nh quang hc (Optical memory). B nh bn dn c ch to bng vt liu bn dn, thng c tc truy cp rt cao, nhng gi thnh t. i din cho b nh bn dn l b nh ROM v RAM. B nh t tnh l b nh da trn t tnh ca cc vt liu c kh nng nhim t lu tr v c / ghi thng tin. i din cho b nh t tnh l cc loi a t (a mm, a cng) v bng t. B nh quang hc l b nh hot ng da trn cc nguyn l quang in. i din cho b nh quang hc l cc loi a quang, nh a CD, DVD,... 4.1.2 T chc mch nh Mt mch nh (memory chip) thng gm nhiu nh (memory cells) c t chc thnh mt ma trn nh gm mt s hng v mt s ct. Hnh 32 minh ho t chc mt mch nh RAM. Ngoi ma trn nh gm cc nh, mch nh cn gm cc ng a ch (Address lines), b gii m a ch (Address decoder), cc ng d liu (Data lines) v cc tn hiu iu khin nh tn hiu chn mch (Chip select - CS), tn hiu cho php c (Read enable RE) v tn hiu cho php ghi (Write enable - WE). Cc ng a ch l mt tp cc chn tn hiu kt ni vi bus a ch nhn cc tn hiu a ch nh t CPU. B gii m a ch gii m cc tn hiu a ch nh thnh cc a ch hng v ct c th chn ra c nh. Cc ng d liu l mt tp cc chn tn hiu kt ni vi bus d liu nhn tn hiu d liu t CPU v gi tn hiu d liu c c t nh v CPU.

Chng 4- B nh trong

Hnh 32 T chc mch nh Cc tn hiu iu khin c nhim v iu khin hot ng ca mch nh theo cc tn hiu lnh gi n t CPU. Tn hiu chn mch CS cho php kch hot mch nh lm vic vi CPU khi CS = 0. Thng thng, ti mi thi im ch c mt mch nh c chn kch hot lm vic vi CPU, cn cc mch khc trng thi khng c kch hot. Tn hiu cho php ghi WE = 0 s cho php ghi thng tin vo cc nh trong mt dng. Tng t, tn hiu cho php c RD = 0 s cho php c d liu t cc nh trong mt dng. 4.2 CU TRC PHN CP B NH MY TNH 4.2.1 Gii thiu cu trc phn cp h thng nh Hu ht h thng nh trong cc thit b tnh ton hin i c t chc theo cu trc phn cp (hierachical structure). Cu trc phn cp khng ch c s dng trong cc h thng nh m n cn s dng rng ri trong i sng x hi, nh cu trc t chc cc c quan nh nc, doanh nghip v c cc trng hc. Hnh 33 minh ho cu trc phn cp h thng nh, gm cc phn chnh: cc thanh ghi ca CPU (CPU Registers), b nh cache (Cache), b nh chnh (Main Memory) v b nh ngoi (Secondary / Tertiary Storage).

Hnh 33 Cu trc phn cp h thng nh


37

Chng 4- B nh trong

Hnh 34 Dung lng, thi gian truy cp v gi thnh cc loi b nh Trong cu trc phn cp h thng nh, dung lng cc thnh phn tng theo chiu t cc thanh ghi ca CPU n b nh ngoi. Ngc li, tc truy nhp hay bng thng v gi thnh mt n v nh tng theo chiu t b nh ngoi n cc thanh ghi ca CPU. Nh vy, cc thanh ghi ca CPU c dung lng nh nht nhng c tc truy cp nhanh nht v cng c gi thnh cao nht. B nh ngoi c dung lng ln nht, nhng tc truy cp thp nht. B li, b nh ngoi c gi thnh r nn c th c s dung vi dung lng ln. Cc thanh ghi c tch hp trong CPU v thng hot ng theo tn s lm vic ca CPU, nn t tc truy cp rt cao. Tuy nhin, do khng gian trong CPU rt hn ch nn tng dung lng ca cc thanh ghi l kh nh, ch khong vi chc byte n vi kilobyte. Cc thanh ghi thng c s dng lu ton hng u vo v kt qu u ra ca cc lnh phc v CPU lm vic. B nh cache c dung lng tng i nh, khong t vi chc kilobyte n vi chc megabyte (khong 64KB n 32MB vi cc my tnh hin nay). Tc truy cp cache cao, nhng gi thnh cn kh t. Cache c coi l b nh thng minh do c kh nng on trc c nhu cu lnh v d liu ca CPU. Cache on v ti trc cc lnh v d liu CPU cn s dng t b nh chnh, nh vy gip CPU gim thi gian truy cp h thng nh, tng tc x l. B nh chnh gm c b nh ROM v b nh RAM, c dung lng kh ln (khong t 256MB n 4GB vi cc h thng 32 bit), nhng tc truy cp tng i chm so vi cache. Gi thnh b nh chnh tng i thp nn c th s dng vi dung lng ln. B nh chnh c s dng lu lnh v d liu ca h thng v ca ngi dng. B nh ngoi hay b nh th cp, gm cc loi a t, a quang v bng t. B nh ngoi thng c dung lng rt ln, khong 20GB n 1000GB, nhng tc truy cp rt chm. B nh ngoi c u im l gi thnh r v thng c s dng lu tr d liu lu di di dng cc tp (files). 4.2.2 Vai tr ca cu trc phn cp h thng nh Khng hon ton ging vi vai tr ca cu trc phn cp trong cc c quan v doanh nghip l chia tr, cu trc phn cp trong h thng nh c hai vai tr chnh: (1) tng hiu nng h thng thng qua vic gim thi gian truy cp cc nh v (2) gim gi thnh sn xut. S d cu trc phn cp trong h thng nh c th gip tng hiu nng h thng l do n gip dung ho c CPU c tc cao v phn b nh chnh v b nh ngoi c tc thp. CPU s ch yu trc tip truy cp b nh cache c tc cao, v cache s c nhim v chuyn
38

Chng 4- B nh trong

trc cc d liu cn thit v t b nh chnh. Nh vy, CPU s khng phi thng xuyn truy cp trc tip b nh chnh v b nh ngoi tm d liu cc thao tc tn nhiu thi gian do cc b nh ny c tc chm. Nh vy, c th ni rng, thi gian trung bnh CPU truy nhp d liu t h thng nh tim cn thi gian truy nhp b nh cache. Cng vi vic c th gip ci thin hiu nng, cu trc phn cp trong h thng nh c th gip gim gi thnh ch to h thng. C s chnh l trong h thng nh phn cp, cc thnh phn c tc cao v t tin c s dng vi dung lng rt nh, cn cc thnh phn c tc thp v r tin c s dng vi dung lng ln hn. Nh vy c th gim c gi thnh ch to h thng nh m vn m bo c tc cao cho c h thng. Nu ta c hai h thng nh hot ng vi cng tc th h thng nh phn cp s c gi thnh thp hn. 4.3 B NH ROM V RAM 4.3.1 B nh ROM ROM (Read Only Memory) l b nh ch c, c ngha l thng tin lu tr trong ROM ch c th c ra m khng c ghi vo. Trn thc t, vic ghi thng tin vo ROM ch c th c thc hin bng cc thit b chuyn dng hoc phng php c bit. Thng tin trong ROM thng c cc nh sn xut ghi sn, gm cc thng tin v h thng nh thng tin v cu hnh my v h thng cc m un phn mm phc v vic vo ra c s (BIOS - Basic Input Output System). ROM thuc loi b nh bn dn v l b nh nh - thng tin trong ROM vn c duy tr k c khi khng c ngun in nui. Hnh 35 minh ho vi mch nh ROMBIOS c gn trn bng mch chnh.

Hnh 35 Vi mch nh ROM-BIOS Qu trnh pht trin ROM tri qua nhiu th h. ROM cc th h u tin hay cn gi l ROM nguyn thu (Ordinary ROM) s dng tia cc tm ghi thng tin. Trong th h tip theo - ROM c th lp trnh c (PROM - Programmable ROM), thng tin c th c ghi vo PROM nh mt thit b c bit gi l b lp trnh PROM. Tin thm mt bc, vi ROM c th lp trnh v xo c (EPROM - Erasable programmable read-only memory), thng tin trong EPROM c th xo c s dng tia cc tm c cng cao. K tip EPROM, EEPROM (Electrically Erasable PROM) l loi ROM tin tin nht hin nay. EEPROM c th xo c bng in v c th ghi c thng tin s dng phn mm chuyn dng. B nh Flash l mt dng b nh EEPROM c dng ph bin lm thit b lu tr trong cc thit b cm tay. Flash c tc c ghi thng tin nhanh hn EEPROM v thng tin c c ghi theo tng khi.

39

Chng 4- B nh trong

4.3.2 B nh RAM B nh RAM c ch to theo cng ngh bn dn v thuc loi b nh khng n nh, tc l, thng tin trong RAM ch tn ti khi c ngun in nui v mt khi khng cn ngun in nui. RAM l b nh cho php truy cp ngu nhin cc nh ca RAM c th c truy cp mt cch ngu nhin khng theo trt t no v tc truy cp cc nh l tng ng nhau. RAM thng c dung lng ln hn nhiu so vi ROM v thng c s dng lu tr cc thng tin ca h thng v ca ngi dng. C hai loi RAM c bn: RAM tnh (Static RAM hay SRAM) v RAM ng (Dynamic RAM hay DRAM). Mi bit RAM tnh cu to da trn mt mch lt (flip flop) cn gi l mch trig lng n (bistable latching circuit). Thng tin trong SRAM lun n nh v khng phi lm ti nh k. Tc truy nhp SRAM cng nhanh hn nhiu so vi DRAM. Ngc li, mi bit DRAM cu to da trn mt t in. Do bn cht ca t in lun c khuynh hng t phng in tch, thng tin trong bit DRAM s dn b mt. V vy, DRAM cn c lm ti (refresh) nh k bo ton thng tin. DRAM thng c tc truy cp thp hn so vi SRAM, nhng b li, DRAM c cu trc gn nh nn c th tng mt cy linh kin dn n gi thnh mt n v nh DRAM thp hn SRAM. 4.3.2.1 B nh SRAM

C B E B

Mt mch lt (flip-flop) n gin

Mt nh SRAM loi 6T

Hnh 36 Cu to mt mch lt trong b nh SRAM Hnh 36 minh ho cu to mt mch lt n gin gm 2 transitor v mt mch lt phc tp hn vi 6 transitor (6T) hnh thnh mt bit nh ca SRAM. Thng thng, mi bit nh ca SRAM c cu to t mt mch lt 6T, 8T hoc 10T. SRAM c tc truy cp cao l do cc bit SRAM c cu trc i xng v thng tin trong bit SRAM n nh nn khng cn qu trnh lm ti. Tuy nhin, do mi bit SRAM cn nhiu transitor v c cu trc kh phc tp nn mt cy linh kin thng thp v gi thnh SRAM kh cao. 4.3.2.2 B nh DRAM Khc vi SRAM, cc bit DRAM c hnh thnh da trn t in. Hnh 37 minh ho mt bit DRAM v mch nh DRAM t chc thnh ma trn nh gm cc hng v ct. Mi bit DRAM
40

Chng 4- B nh trong

c cu to kh n gin, gm 1 t in v 1 transitor cp ngun. Mc in tch trong t in c s dng biu din cc gi tr 0 v 1, chng hn mc y in tch ng vi mc 1, khng tch in ng vi mc 0.

Transistor

Capacitor

Mt bit DRAM

Hnh 37 Mt bit DRAM v mch nh DRAM Do bn cht t thng t phng in nn in tch trong t c xu hng gim dn dn n thng tin trong t cng b mt theo. trnh b mt thng tin, in tch trong t cn c np li thng xuyn qu trnh ny c gi l qu trnh lm ti cc bit DRAM. DRAM thng c tc truy cp chm hn so vi SRAM l do: (1) c tr khi np in vo t, (2) cn qu trnh lm ti cho t v (3) cc mch DRAM thng dng k thut dn knh (a ch ct/hng) tit kim ng a ch. Tuy nhin, do mi bit DRAM c cu trc n gin, s dng t transitor nn mt cy linh kin thng cao v gi thnh r hn nhiu so vi SRAM. Trong cc loi DRAM, SDRAM (Synchronous DRAM) c s dng ph bin nht. SDRAM l DRAM hot ng ng b vi nhp ng h ca bus. SDRAM c chia thnh 2 loi theo kh nng truyn d liu: (1) SRD SDRAM (Single Data Rate SDRAM) SDRAM c t sut d liu n, chp nhn mt thao tc c/ghi v chuyn 1 t d liu trong 1 chu k ng h vi cc tn s lm vic 100MHz v 133MHz v (2) DDR SDRAM (Double Data Rate SDRAM) - SDRAM c t sut d liu kp, chp nhn hai thao tc c/ghi v chuyn 2 t d liu trong 1 chu k ng h. DDR SDRAM c 3 loi cho n hin nay: DDR1 SDRAM: tn s lm vic 266, 333, 400 MHz: c kh nng chuyn 2 t d liu trong 1 chu k ng h;

41

Chng 4- B nh trong

DDR2 SDRAM: tn s lm vic 400, 533, 800 MHz: c kh nng chuyn 4 t d liu trong 1 chu k ng h; DDR3 SDRAM: tn s lm vic 800, 1066, 1333, 1600 MHz: c kh nng chuyn 8 t d liu trong 1 chu k ng h. 4.4 B NH CACHE 4.4.1 Cache l g? Cache hay cn gi l b nh m, b nh khay l mt thnh phn ca cu trc phn cp ca h thng b nh nh trnh by trong mc 4.2. Cache ng vai trong trung gian, trung chuyn d liu t b nh chnh v CPU v ngc li. Hnh 38 minh ho v tr ca b nh cache trong h thng nh. Vi cc h thng CPU c s dng cng ngh tch hp thp, b nh cache thng nm ngoi CPU; vi cc CPU mi s dng cng ngh tch hp cao, b nh cache thng c tch hp vo trong CPU nhm nng cao tc v bng thng trao i d liu gia CPU v cache.

CPU

Cache

Hnh 38 V tr ca b nh cache trong h thng nh

Main memory

Dung lng ca b nh cache thng nh so vi dung lng ca b nh chnh v b nh ngoi. Vi cc h thng my tnh c, dung lng cache l khong 16KB, 32KB,..., 128KB; vi cc h thng my tnh gn y, dung lng cache ln hn, khong 256KB, 512KB, 1MB, 2MB, 4MB, 8MB v 16MB. Cache c tc truy cp nhanh hn nhiu so vi b nh chnh, c bit vi cache c tch hp vo CPU. Tuy nhin, gi thnh b nh cache (tnh theo bit) thng t hn nhiu so vi b nh chnh. Vi cc h thng CPU mi, cache thng c chia thnh hai hay nhiu mc (levels): mc 1 c dung lng khong 16-32KB c tc truy cp rt cao v mc 2 c dung lng khong 1-16MB c tc truy cp thp hn. 4.4.2 Vai tr v nguyn l hot ng 4.4.2.1 Vai tr ca cache Do nh cache l mt thnh phn ca h thng nh phn cp, nn vai tr ca cache tng t nh vai tr ca cu trc phn cp h thng nh: tng hiu nng h thng vo gim gi thnh sn xut. S d cache c th gip tng hiu nng h thng l nh cache c kh nng dung ho c CPU c tc cao v b nh chnh c tc thp lm cho thi gian trung bnh CPU truy nhp d liu t b nh chnh tim cn thi gian truy nhp cache. Ngoi ra, do cache l mt loi b nh thng minh c kh nng on v chun b trc cc d liu cn thit cho CPU x l nn xc xut CPU phi trc tip truy nhp d liu t b nh chnh l kh thp v iu ny cng gip lm gim thi gian trung bnh CPU truy nhp d liu t b nh chnh. Tuy cache c gi thnh trn mt n v nh cao hn b nh chnh, nhng do tng dung lng cache thng kh nh nn cache khng lm tng gi thnh h thng nh qu mc. Nh vy, cache hon ton ph hp vi cu trc phn cp v c th gip lm gim gi thnh sn xut trong tng quan vi tc ca c h thng nh. C th kt lun rng, nu hai h thng nh

42

Chng 4- B nh trong

c cng gi thnh, h thng nh c cache c tc truy cp nhanh hn; v nu hai h thng nh c cng tc , h thng nh c cache s c gi thnh r hn. 4.4.2.2 Nguyn l hot ng ca cache Cache s d c coi l b nh thng minh l do n c kh nng on trc yu cu v d liu v lnh ca CPU. D liu v lnh cn thit c chuyn trc t b nh chnh v cache v CPU ch cn truy nhp cache, gip gim thi gian truy nhp h thng nh. c c s thng minh, cache hot ng da trn hai nguyn l c bn: nguyn l ln cn v khng gian (Spatial locality) v nguyn l ln cn v thi gian (Temporal locality).

Neighbour cell Current cell Neighbour cell

Hnh 39 Ln cn v khng gian trong khng gian chng trnh Nguyn l ln cn v khng gian c th pht biu nh sau: Nu mt nh ang c truy nhp th xc xut cc nh lin k vi n c truy nhp trong tng lai gn l rt cao. Ln cn v khng gian thng c p dng cho nhm lnh hoc d liu c tnh tun t cao trong khng gian chng trnh, nh minh ho trn Hnh 39. Do cc lnh trong mt chng trnh thng tun t, cache c th c c khi lnh t b nh chnh v khi lnh c c bao ph c cc nh ln cn (neighbour cell) ca nh ang c truy nhp (current cell). Khc vi nguyn l ln cn v khng gian, nguyn l ln cn v thi gian ch trng hn n tnh lp li ca vic truy nhp cc mu thng tin trong mt khong thi gian tng i ngn. C th pht biu nguyn l ny nh sau: Nu mt nh ang c truy nhp th xc xut n c truy nhp li trong tng lai gn l rt cao. Ln cn v thi gian c p dng cho d liu v nhm cc lnh trong vng lp nh minh ho trn Hnh 40. Vi cc phn t d liu, chng c CPU cp nhp thng xuyn trong qu trnh thc hin chng trnh nn c tnh ln cn cao v thi gian. Vi cc lnh trong vng lp, chng thng c CPU thc hin lp i lp li nhiu ln nn cng c tnh ln cn cao v thi gian; nu cache np sn khi lnh cha c vng lp s ph c tnh ln cn v thi gian.

43

Chng 4- B nh trong

Start of loop

Instruction 1 Instruction 2 Instruction 3 Instruction 4

End of loop

Instruction 5

Hnh 40 Ln cn v thi gian vi vic thc hin vng lp 4.4.2.3 Trao i d liu gia CPU cache b nh chnh

CPU
Individual data items: byte, word

Cache
Block of data: 16, 32, 64 bytes

Memory

Hnh 41 Trao i d liu gia CPU vi cache v b nh chnh Hnh 41 minh ho vic trao i d liu gia CPU vi cache v b nh chnh: CPU trao i d liu vi cache theo cc n v c s nh byte, t v t kp. Cn cache trao i d liu vi b nh chnh theo cc khi, vi kch thc 16, 32 hoc 64 bytes. S d CPU trao i d liu vi cache theo cc n v c s m khng theo khi do d liu c lu trong cc thanh ghi ca CPU vn c dung lng rt hn ch. V vy, CPU ch trao i cc phn t d liu cn thit theo yu cu ca cc lnh. Ngc li, cache trao i d liu vi b nh chnh theo cc khi, mi khi gm nhiu byte k nhau vi mc ch bao ph cc mu d liu ln cn theo khng gian v thi gian. Ngoi ra, trao i d liu theo khi (hay m) vi b nh chnh gip cache tn dng tt hn bng thng ng truyn v nh vy c th tng tc truyn d liu. 4.4.2.4 Cc h s Hit v Miss Hit (on trng) l mt s kin m CPU truy nhp mt mc tin v mc tin y c trong cache. Xc sut c mt hit gi l h s hit, hoc H. D thy h s hit H thuc khong (0, 1). H s hit cng cao th hiu qu ca cache cng cao. Ngc li, Miss (on trt) l mt s kin m CPU truy nhp mt mc tin v mc tin y khng c trong cache. Xc sut ca mt miss gi l h s miss, hoc 1-H. Cng c th thy h s miss 1-H thuc khong (0, 1). H s miss cng thp th hiu qu ca cache cng cao.

44

Chng 4- B nh trong

4.4.3 Cc dng kin trc cache Kin trc cache cp n vic cache c b tr vo v tr no trong quan h vi CPU v b nh chnh. C hai loi kin trc cache chnh: kin trc Look Aside (cache c t ngang hng vi b nh chnh) v kin trc Look Through (cache c t gia CPU v b nh chnh). Mi kin trc cache k trn c u im v nhc im ring. 4.4.3.1 Kin trc Look Aside Trong kin trc Look Aside, cache v b nh chnh cng c kt ni vo bus h thng. Nh vy, c cache v b nh chnh u thy chu k bus ca CPU ti cng mt thi im. Hnh 42 minh ho kin trc cache kiu Look Aside. Kin trc Look Aside c thit k n gin, d thc hin. Tuy nhin, cc s kin hit ca kin trc ny thng chm do cache kt ni vi CPU s dng bus h thng thng c tn s lm vic khng cao v bng thng hp. B li, cc s kin miss ca kin trc Look Aside thng nhanh hn do khi CPU khng tm thy mc tin trong cache, n ng thi tm mc tin trong b nh chnh ti cng mt chu k xung nhp. CPU SRAM: RAM lu d liu cache Tag RAM: RAM lu a ch dng nh trong b nh Cache controller: b iu khin cache Main memory: b nh chnh System bus: bus h thng System bus SRAM

Cache controller

Tag RAM

Main Memory

Hnh 42 Kin trc cache kiu Look Aside 4.4.3.2 Kin trc Look Through Trong kin trc kiu Look Through, cache c t nm gia CPU v b nh chnh nh minh ho trn Hnh 43. Nh vy cache c th thy chu k bus ca CPU trc, ri n mi truyn li cho b nh chnh. Cache kt ni vi CPU bng h thng bus ring tc cao v bng thng ln, thng l bus mt sau (BSB Back Side Bus). Cache kt ni vi b nh chnh thng qua bus h thng hay bus mt trc (FSB Front Side Bus). FSB thng c tn s lm vic v bng thng thp hn nhiu so vi BSB. Kin trc Look Through phc tp hn kin trc Look Aside. u im chnh ca kin trc ny l cc s kin hit ca kin trc ny thng rt nhanh do CPU kt ni vi cache bng knh ring c tc cao. Tuy nhin, cc s kin miss ca kin trc Look Through thng chm hn do khi CPU khng tm thy mc tin trong cache, n cn tm mc tin trong b nh chnh ti mt chu k xung nhp tip theo.

45

Chng 4- B nh trong

CPU

SRAM

Cache controller

Tag RAM

Main Memory
Hnh 43 Kin trc cache kiu Look Through 4.4.4 Cc dng t chc/nh x cache 4.4.4.1 Gii thiu t chc/nh x cache

Hnh 44 Quan h gia cc khi ca b nh chnh v dng ca cache Nh trnh by trong mc 4.2, kch thc ca cache thng rt nh so vi kch thc b nh chnh. Do vy, ti mi thi im, ch c mt phn nh thng tin ca b nh chnh c chuyn vo cache. Cu hi t ra l, phi xy dng m hnh t chc / nh x trao i d liu gia cc phn t nh b nh chnh v cc phn t nh ca cache nh th no h thng nh t c tc truy cp ti u. Cho n hin nay, c ba phng php t chc / nh x cache c s dng, bao gm: nh x trc tip (Direct mapping), nh x kt hp y (Fully associative mapping) v nh x tp kt hp (Set associative mapping). Phng php nh x trc tip c u im l thit k n gin v nhanh. Tuy nhin, y l dng nh x c nh d gy xung t dn n hiu qu cache khng cao. Phng php nh x kt hp y s dng nh x mm, t gy xung t v c th t h s hit rt cao. Tuy nhin, phng php ny c thit k phc tp v c tc
46

Chng 4- B nh trong

chm. Phng php nh x tp kt hp l s kt hp ca hai phng php nh x trc tip v nh x kt hp y , tn dng c u im ca c hai phng php: nhanh, t xung t v khng qu phc tp, cho hiu qu cao. 4.4.4.2 nh x trc tip Hnh 45 minh ho phng php nh x trc tip b nh - cache. Cache c chia thnh n dng (line) nh s t 0 n n-1. B nh chnh c chia thnh m trang (page), nh s t 0 n m-1. Mi trang nh li c chia thnh n dng (line) nh s t 0 n n-1. Kch thc mi trang ca b nh chnh bng kch thc cache v kch thc mt dng trong trang b nh cng bng kch thc mt dng cache. nh x t b nh chnh vo cache c thc hin theo quy tc sau: Line0 ca cc trang (page0 n pagem-1) nh x n Line0 ca cache; Line1 ca cc trang (page0 n pagem-1) nh x n Line1 ca cache; .... Linen-1 ca cc trang (page0 n pagem-1) nh x n Linen-1 ca cache.
Page m-1

Page 1 Page 0 Line n-1 Line n-1

Line 1 Line 0 Memory

Line 1 Line 0

Cache

Hnh 45 Phng php nh x trc tip b nh - cache C th thy vi phng php nh x trc tip, ti mi thi im lun c c nh m dng b nh cng cnh tranh mt dng cache. Khi bit c a ch ca dng trong b nh, ta bit v tr ca n trong cache v th phng php nh x trc tip cn gi l nh x cng hay nh x c nh. c th qun l c cc nh c np, cache s dng a ch nh x trc tip gm 3 thnh phn: Tag, Line v Word nh minh ho trn Hnh 46. Tag (bit) l a ch trang trong b nh cha dng c np vo cache, Line (bit) l a ch dng trong cache v Word (bit) l a ch ca t trong dng.

47

Chng 4- B nh trong

Tag

Line

Word

Hnh 46 a ch nh trong nh x trc tip V d tnh cc thnh phn a ch nh trong nh x trc tip: Vo: Ra: Kch thc dng Line = 32 byte = 25 , vy Word = 5 bit Dung lng Cache = 1MB = 210 c 210 / 25 = 25 dng, vy Line = 5 bit a trang Tag: 4GB = 232, cn 32 bt a ch tng cng a ch ho cc nh: Tag = 32 bit a ch Line Word = 32 5 5 = 22 bit. Phng php nh x trc tip c thit k n gin v rt nhanh do khng tn nhiu thi gian truy tm a ch nh trong cache. Do cc nh x l c nh, nn khi bit a ch nh c th tm c v tr ca n trong cache rt nhanh chng. Tuy nhin, cng do nh x c nh nn phng php ny d gy xung t v c th to ra nhiu dng cache b nt c chai trong qu trnh hot ng ca cache. C th c nhiu dng cache rnh ri hay t c s dng, nhng cng c nhiu dng cache qu ti do b nhiu dng b nh cng cnh tranh. Cng v l do d gy xung t nn hiu qu tn dng khng gian cache ca phng php nh x trc tip khng cao v h s hit thp. 4.4.4.3 nh x kt hp y Dung lng b nh = 4GB Dung lng cache = 1MB Kch thc dng = 32 byte

48

Chng 4- B nh trong
Line m-1

Line n-1

Line 1 Line 0 Cache Line 1 Line 0 Memory

Hnh 47 Phng php nh x kt hp y b nh - cache Phng php nh x kt hp y hay cn gi l nh x lin kt y c minh ho trn Hnh 47. Cache c chia thnh n dng (line) nh s t 0 n n-1. B nh chnh c chia thnh m dng (line), nh s t 0 n m-1. Kch thc mt dng b nh bng kch thc mt dng cache. Do b nh chnh c kch thc ln hn nhiu kch thc cache, nn m >> n. nh x t b nh chnh vo cache c thc hin theo quy tc sau: Mt dng trong b nh chnh c th nh x n mt dng bt k trong cache, hay Linei (i = 0 m-1) ca b nh chnh nh x n Linej (j = 0 n-1) ca cache; C th thy vi phng php nh x kt hp y , c n dng cache la chn nh x v th phng php nh x kt hp y cn gi l nh x mm hay nh x khng c nh. Ngc li vi phng php nh x trc tip, khi bit c a ch ca dng trong b nh, ta cha bit v tr ca n trong cache. c th qun l c cc nh c np, cache s dng a ch nh x kt hp y ch gm 2 thnh phn: Tag v Word nh minh ho trn Hnh 46. Tag (bit) l a ch dng trong b nh c np vo cache v Word (bit) l a ch ca t trong dng. Phn a ch Line nh trong a ch nh x trc tip b b do b nh chnh ch cn l mt trang duy nht vi m dng.

Tag

Word

Hnh 48 a ch nh trong nh x kt hp y V d tnh cc thnh phn a ch nh trong nh x kt hp y : Vo: Dung lng b nh = 4GB
49

Chng 4- B nh trong

Ra: -

Dung lng cache = 1MB Kch thc dng = 32 byte Kch thc dng Line = 32 byte = 25 , vy Word = 5 bit a trang Tag: 4GB = 232, cn 32 bt a ch tng cng a ch ho cc nh: Tag = 32 bit a ch Word = 32 5 = 27 bit.

Phng php nh x kt hp y s dng nh x khng c nh nn c u im l mm do, gim c xung t s dng dng cache. Vic s dng cc dng cache c th c iu phi hng n phn b hp l hn, gim hin tng to cc dng b nt c chai vi mc cnh tranh ln. Nh vy, phng php ny c hiu sut s dng khng gian cache cao hn v c kh nng cho h s hit cao. Tuy nhin, cng do vic s dng nh x khng c nh, nn vic truy tm a dng nh trong cache tn nhiu thi gian, gy chm tr, c bit vi cc cache c kch thc ln. Ngoi ra, phng php ny cng c thit k phc tp hn so vi phng php nh x trc tip do cn b sung thm cc b so snh a ch dng cache nhm tng tc cho qu trnh truy tm a dng nh trong cache. Do vy, phng php nh x kt hp y ch thch hp vi cc cache c dung lng nh. 4.4.4.4 nh x tp kt hp Phng php nh x tp kt hp hay cn gi l nh x lin kt nhm c minh ho trn Hnh 49. Cache c chia thnh k ng (way) nh s t 0 n k-1. Mi ng cache li c chia thnh n dng (line) nh s t 0 n n-1. B nh chnh c chia thnh m trang (page), nh s t 0 n m-1. Mi trang li c chia thnh n dng (line) nh s t 0 n n-1. Kch thc mi trang ca b nh chnh bng kch thc mt ng ca cache v kch thc mt dng trong trang b nh cng bng kch thc mt dng ca ng cache. nh x t b nh chnh vo cache c thc hin theo quy tc sau: nh x trang b nh n ng cache (nh x khng c nh): Mt trang ca b nh c th nh x n mt ng bt k ca cache. Line0 ca pagei ca b nh nh x n Line0 ca wayj ca cache; Line1 ca pagei ca b nh nh x n Line1 ca wayj ca cache; .... Linen-1 ca pagei ca b nh nh x n Linen-1 ca wayj ca cache. nh x dng ca trang n dng ca ng (nh x c nh):

50

Chng 4- B nh trong
Page m-1

Page 1 Page 0 Line n-1

Way 0 Line n-1

Way 1 Line n-1

Line 1 Line 0

Line 1 Line 0

Line 1 Line 0

B nh

Cache

Hnh 49 Phng php nh x tp kt hp b nh - cache C th thy phng php nh x tp kt hp m bo c s kt hp hi ho gia nh x mm t trang nh n ng cache v nh x c nh t dng ca trang nh n dng ca ng cache. Do s ng cache khng ln (thng ch khong 4, 8, 16, 32 hoc 64 ng) nn vic tm kim a ch trang nh trong cc ng cache khng nh hng nhiu n tc truy cp cache. Hn na, do nh x t dng ca trang nh n dng ca ng cache l c nh, c th nhanh chng xc nh c v tr ca dng nh trong ng cache khi bit a ch ca n. c th qun l c cc nh c np, cache s dng a ch nh x trc tip gm 3 thnh phn: Tag, Set v Word nh minh ho trn Hnh 50. Tag (bit) l a ch trang trong b nh cha dng c np vo cache, Set (bit) l a ch dng trong ng cache v Word (bit) l a ch ca t trong dng.

Tag

Set

Word

Hnh 50 a ch nh trong nh x tp kt hp kt hp V d tnh cc thnh phn a ch nh trong nh x tp kt hp: Vo: Ra:


51

Dung lng b nh = 4GB Dung lng cache = 1MB, 2 ng Kch thc dng = 32 byte

Chng 4- B nh trong

Kch thc dng Line = 32 byte = 25 , vy Word = 5 bit Dung lng Cache = 1MB = 210 c 210 / 2 ng / 25 = 24 dng / ng, vy Set = 4 bit a trang Tag: 4GB = 232, cn 32 bt a ch tng cng a ch ho cc nh: Tag = 32 bit a ch Set Word = 32 4 5 = 23 bit.

Phng php nh x tp kt hp tn dng c u im ca c hai phng php nh x trc tip v nh x kt hp y : nhanh do nh x trc tip c s dng cho nh x dng chim s ln nh x v mm do, t xung t do nh x t cc trang b nh n cc ng cache l khng c nh. Nh vy, phn b s dng khng gian cache ng u hn v t h s hit cao hn. Nhc im ln nht ca phng php ny l c phc tp thit k v iu khin cao do cache c chia thnh mt s ng, thay v ch mt ng duy nht. 4.4.5 Cc phng php c ghi v cc chnh sch thay th 4.4.5.1 Cc phng php c ghi cache Vic trao i thng tin gia CPU cache v gia cache b nh chnh l mt trong cc vn c nh hng ln n hiu nng cache. Cu hi t ra l cn c chnh sch trao i hay c ghi thng tin gia cc thnh phn ny nh th no t c h s hit cao nht v gim thiu miss. Xt trng hp c thng tin v nu l trng hp hit (mu tin cn c c trong cache): mu tin c c t cache vo CPU v b nh chnh khng tham gia. Nh vy thi gian CPU truy nhp mu tin bng thi gian CPU truy nhp cache. Ngc li, nu c thng tin v l trng hp miss (mu tin cn c khng c trong cache): mu tin trc ht c chuyn t b nh chnh vo cache, sau n c c t cache vo CPU. y l trng hp xu nht: thi gian CPU truy nhp mu tin bng thi gian truy nhp cache cng vi thi gian cache truy nhp b nh chnh cn gi l miss penalty (gp i thi gian truy cp khi on trt). Vi trng hp ghi thng tin v nu l trng hp hit, c th p dng mt trong 2 chnh sch ghi: ghi thng (write through) v ghi tr (write back). Vi phng php ghi thng, mu tin cn ghi c lu ng thi ra cache v b nh chnh. Phng php ghi ny lun m bo tnh nht qu d liu gia cache v b nh chnh, nhng c th gy chm tr v tn nhiu bng thng khi tn sut ghi ln vi nhiu mu tin c kch thc nh. Ngc li, vi phng php ghi tr, mu tin trc ht c ghi ra cache v dng cache cha mu tin s c ghi ra b nh chnh khi n b thay th. Nh vy, mu tin c th c ghi ra cache nhiu ln, nhng ch c ghi ra b nh chnh mt ln duy nht, gip tng tc v gim bng thng s dng. Phng php ghi tr ang c ng rng ri trong cc h thng cache hin nay. Vi trng hp ghi thng tin v nu l trng hp miss, cng c th p dng mt trong hai chnh sch ghi: ghi c c li (write allocate / fetch on write) v ghi khng c li (write nonallocate). Vi phng php ghi c c li, mu tin trc ht c ghi ra b nh chnh, v sau dng nh cha mu tin va ghi c c vo cache. Vic c li mu tin va ghi t b nh chnh vo cache c th gip gim miss c k tip p dng nguyn l ln cn theo thi gian: mu tin va c truy nhp c th c truy nhp li trong tng lai gn. Vi phng php ghi khng c li, mu tin ch c ghi ra b nh chnh. Khng c thao tc c dng nh cha mu tin va ghi vo cache.
52

Chng 4- B nh trong

4.4.5.2 Cc chnh sch thay th dng cache Nh cp, vi c ba phng php nh x b nh chnh cache, lun c nhiu dng nh cng nh x n mt dng cache. Do c nhiu dng b nh chia s mt dng cache, cc dng b nh c np vo cache s dng mt thi gian v c thay th bi dng nh khc theo yu cu thng tin phc v CPU. Cc chnh sch thay th (replacement policies) xc nh cc dng cache no c chn thay th bi cc dng khc t b nh nhm t h s hit cao nht. C ba chnh sch thay th c s dng hin nay: thay th ngu nhin (Random Replacement), thay th kiu vo trc ra trc (FIFO First In First Out) v thay th cc dng t c s dng gn y nht (LRU Least Recently Used). Thay th ngu nhin l phng php u tin c s dng do c thit k n gin v d ci t. Cc dng cache c la chn thay th mt cch ngu nhin, khng theo mt quy lut no. Do vy, phng php thay th ngu nhin thng c h s miss cao do phng php ny khng xem xt n cc dng cache ang thc s c s dng. Nu mt dng cache ang c s dng v b thay th s xy ra miss v n li cn c c t b nh chnh vo cache. Trong phng php thay th kiu vo trc ra trc, cc dng nh c np vo cache trc s c chn thay th trc. Phng php ny lun c khuynh hng loi b cc dng cache c thi gian s dng lu nht, hay gi nht. N c kh nng cho h s miss thp hn so vi thay th ngu nhin do phng php ny c xem xt n yu t ln cn theo thi gian cc dng nh c thi gian tn ti trong cache lu nht c th c xc sut c s dng thp hn. Tuy nhin, phng php ny vn cha thc s xem xt n cc dng cache ang thc s c s dng - mt dng cache gi vn c th ang c s dng. Mt nhc im khc ca thay th kiu vo trc ra trc l thit k v ci t phc tp hn, do cn phi c mch mch in t chuyn dng theo di trt t np cc dng b nh vo cache. Phng php thay th cc dng t c s dng gn y nht hot ng theo nguyn tc: cc dng cache c la chn thay th l cc dng t c s dng gn y nht. Phng php ny cho h s miss thp nht so vi thay th ngu nhin v thay th FIFO, do thay th LRU c xem xt n cc dng ang thc s c s dng tun theo yu t ln cn theo thi gian mt cch cht ch. Nhc im duy nht ca phng php ny l thit k v ci t phc tp hn, do cn phi c mch in t chuyn dng theo di tn sut s dng cc dng cache. 4.4.6 Hiu nng cache v cc yu t nh hng 4.4.6.1 Hiu nng cache Hiu nng ca cache (Cache Performance) c th c nh gi tng th theo thi gian truy nhp trung bnh ca CPU n h thng nh. Thi gian truy nhp trung bnh ca mt h thng nh c cache c tnh nh sau: taccess = (Hit cost) + (miss rate) * (miss penalty) taccess = tcache + (1 - H) * (tmemory) trong , taccess l thi gian truy nhp trung bnh h thng nh, tmemory l thi gian truy nhp b nh chnh, tcache l thi gian ruy nhp cache v H l h s hit. Nu tcache = 5ns, tmemory = 60ns v H=80%, ta c: taccess = 5 + (1 0.8) * (60) = 5+12 = 17ns
53

Chng 4- B nh trong

Nu tcache = 5ns, tmemory = 60ns v H=95%, ta c: taccess = 5 + (1 0.95) * (60) = 5+3 = 8ns Nh vy, thi gian truy nhp trung bnh h thng nh tim cn thi gian truy nhp cache vi trng hp cache t h s hit cao. 4.4.6.2 Cc yu t nh hng C nhiu yu t nh hng n hiu nng cache, trong ba vn (1) kch thc cache, (2) chia tch cache v (3) to cache nhiu mc c nh hng ln nht. Chng ta ln lt xem xt nh hng ca tng yu t n hiu nng cache. Vn kch thc cache Vn kch thc cache lin quan n vic tr li cu hi: nn la chn kch thc cache ln hay nh? Nhiu s liu thng k cho thy, kch thc cache khng nh hng nhiu n h s miss v h s miss ca cache lnh thp hn nhiu so vi cache d liu: 8KB cache lnh c h s miss nh hn 1% 256KB cache lnh c h s miss nh hn 0.002% nh vy, tng kch thc cache lnh khng gim miss hiu qu. 8KB cache d liu c h s miss nh hn 4% 256KB cache d liu c h s miss nh hn 3% nh vy, tng kch thc cache d liu ln 32 ln, h s miss gim 25%. Trn thc t, xu hng chung mong mun kch thc cache cng ln trong gii hn cho php ca gi thnh. Vi kch thc ln, c th tng c s dng b nh lu trong cache v nh vy gim tn sut tro i cc dng cache ca cc chng trnh khc nhau vi b nh chnh. ng thi, cache ln h tr a nhim, x l song song v cc h thng CPU nhiu nhn tt hn do khng gian cache ln c kh nng cha ng thi thng tin ca nhiu chng trnh. Nhc im ca cache ln l chm, do c khng gian tm kim ln hn cache nh. Vn chia tch cache Cache c th c tch thnh cache lnh (I-Cache) v cache d liu (D-Cache) ci thin hiu nng, do: D liu v lnh c tnh ln cn khc nhau; D liu thng c tnh ln cn v thi gian cao hn ln cn v khng gian; lnh c tnh ln cn v khng gian cao hn ln cn v thi gian; Cache lnh ch cn h tr thao tc c; cache d liu cn h tr c 2 thao tc c v ghi v tch cache gip ti u ho d dng hn; Tch cache h tr nhiu lnh truy nhp ng thi h thng nh, nh vy gim xung t ti nguyn cho CPU pipeline. Vn to cache nhiu mc

54

Chng 4- B nh trong

Khi cache c chia thnh nhiu mc vi kch thc tng dn v tc truy nhp gim dn s gip ci thin c hiu nng h thng do h thng cache nhiu mc c kh nng dung ho tt hn tc ca CPU vi tc ca b nh chnh. V d: xem xt 2 h thng nh c s mc cache khc nhau: h thng 3 mc cache (L1, L2 v L3) v h thng 1 mc cache (L1). Gi thit CPU c thi gian truy nhp l 1ns, cc mc cache L1, L2, L3 c thi gian truy nhp ln lt l 5ns, 15ns v 30ns. B nh chnh c thi gian truy nhp l 60ns. CPU L1 Cache 3 mc: Cache 1 mc: 1ns 1ns 5ns 5ns L2 15ns L3 30ns B nh chnh 60ns 60ns

C th thy h thng nh vi nhiu mc cache c kh nng dung ho tc gia cc thnh phn tt hn v c thi gian truy nhp trung bnh h thng nh thp hn. Trn thc t, a s cache c t chc thnh 2 mc: L1 v L2. Mt s cache c 3 mc: L1, L2 v L3. Ngoi ra, nhiu mc cache c th gip gim gi thnh h thng nh. 4.4.7 Cc phng php gim miss cho cache 4.4.7.1 Cc loi miss ca cache Mt h thng nh vi cache tt cn t c cc yu t: (1) h s hit cao, (2) h s miss thp v (3) nu xy ra miss th khng qu chm. c th c gii php gim miss hiu qu, ta cn phn bit r cc loi miss. C th, tn ti ba loi miss chnh: miss bt buc (Compulsory misses), miss do dung lng (Capacity misses) v miss do xung t (Conflict misses). Miss bt buc thng xy ra ti thi im chng trnh c kch hot, khi m chng trnh ang c ti vo b nh v cha c np vao cache. Miss do dung lng li thng xy ra do kch thc ca cache hn ch, c bit trong mi trng a nhim. Do kch thc cache nh nn m ca cc chng trnh thng xuyn b tro i gia b nh v cache. Theo mt kha cnh khc, miss do xung t xy ra khi c nhiu dng b nh cng cnh tranh mt dng cache. 4.4.7.2 Cc phng php gim miss cho cache Trn c s cc loi miss c cp, hai phng php gim miss c th phi hp p dng nhm t hiu qu gim miss ti a, gm: tng kch thc dng cache v tng mc lin kt cache. Bin php tng kch thc dng cache c th gip gim miss bt buc do dng c kch thc ln s c kh nng bao ph cc mc tin ln cn tt hn. Tuy nhin, bin php ny s lm tng miss xung t, do dng kch thc ln s lm gim s dng cache, dn n tng mc cnh tranh ca cc dng nh n mt dng cache. Ngoi ra, dng kch thc ln c th gy lng ph dung lng cache do c th c nhiu phn ca dng cache ln khng bao gi c s dng. Hin nay, kch thc dng cache thng dng hin nay l 64 bytes. Bin php tng mc lin kt cache hay tng s ng cache c th gip gim miss xung t, do tng s ng cache lm tng tnh mm do ca nh x trang b nh n ng cache do c nhiu la chn hn. Tuy nhin, nu tng s ng cache qu ln, c th lm cache chm do tng khng giam tm kim cc ng cache. Hin nay, s ng cache hp l cho miss ti u thng dng l khong 8 ng.

55

Chng 4- B nh trong

4.5 CU HI N TP 1. H thng b nh phn cp: c im, vai tr. 2. ROM l g? cc loi ROM. 3. RAM, SRAM, DRAM l g? Cu to ca SRAM v DRAM. 4. B nh cache: Cache l g? vai tr v nguyn l hot ng. Kin trc cache T chc/nh x cache c ghi thng tin trong cache Cc chnh sch thay th dng cache Hiu nng cache v cc yu t nh hng Cc bin php giam miss cho cache.

56

CHNG 5 B NH NGOI
5.1 A T 5.1.1 Gii thiu a t (Magnetic Disks) l mt trong cc loi thit b lu tr c s dng rng ri nht trong cc thit b tnh ton ni chung v cc my tnh c nhn ni ring. a t thuc loi b nh n nh thng tin lu trn a t lun c duy tr, khng ph thuc vo ngun in nui bn ngoi. a t cng l b nh kiu khi c dung lng ln, c bit l cc a cng, dng lu tr thng tin lu di di dng cc tp (files). lu c thng tin, a t s dng cc a nha hoc a kim loi c ph lp bt t trn b mt. Bt t c s dng thng l oxit st hoc cc hp kim ca st. C hai dng a t ch yu l a t mm (gi tt l a mm Floppy Disks) v a t cng (gi tt l a cng Hard Disks). a mm lm bng plastic, c dung lng nh, tc chm v d b h hng. Ngi ta s dng a mm (FDD Floppy Disk Drive) c ghi a mm. Hnh 51 minh ho a mm v a mm dung lng 1,44MB vi kch thc a 3,5 inches. Ngy nay, do s pht trin mnh m ca cc loi a quang v c bit l cc th nh flash kt ni qua cng USB, a mm ngy cng t c s dng. Nhiu h thng my tnh lp mi khng i km a mm.

Hnh 51 a mm v a mm kch thc 3,5 inches Khc vi a mm, a cng thng c gn c nh trong a v c bc trong mt hp kim loi bo v nh minh ho trn hnh Hnh 52. a cng c lm bng kim loi hoc bng thu tinh, c dung lng ln v tc cao hn nhiu ln so vi a mm. Hin nay, cc a cng thng c dung lng rt ln, t vi chc gigabyte n hng ngn gigabyte v l thit b lu tr ch yu ca cc h thng my tnh. Do a t mm ngy cng t c s dng, phn tip theo ca chng ny ch cp n a t cng v a cng.

Chng 5- B nh ngoi

Hnh 52 a cng kch thc 3,5 inches 5.1.2 a cng 5.1.2.1 Cu to a cng

Hnh 53 Cc thnh phn ca a cng Hnh 53 minh ho cu trc ca a cng v Hnh 54 minh ho h thng a v u t c/ghi a cng. a cng thng gm cc thnh phn chnh: cc a t (Disks), cc u t c/ghi (Heads), cc rnh (Tracks), cc mt tr (Cylinders) v cc cung (Sectors). Mt a cng c th gm mt hoc nhiu a c lp ng trc. Cc a thng phng v c ch to bng nhm hoc thu tinh vi lp bt t rt mng (khong 10-20nm) ph trn b mt a lu thng tin. Vt liu t thng dng l oxit st ba (Fe2O3) vi cc a cng c. Hin nay vt liu t thng dng l hp kim ca cban. a c th lu thng tin trn c hai mt (side), c nh s mt 0 v mt 1. u t hay u c ghi cng l mt trong cc b phn ch cht ca a cng. Mi u t a cng thng c kch thc rt nh, c s dng c v ghi thng tin ln a. Khong
58

Chng 5- B nh ngoi

cch gia u t v b mt a l rt nh, nhng khng tip xc m bay trn mt a. Mi a cng thng c nhiu u t kt hp thnh mt h thng u t trn cng mt gi , nh minh ho trn Hnh 54. S lng u t ca mi a ph thuc vo thit k v dung lng a v thng rt khc nhau: 4, 8, 12, 16, 24, 32, 64...

Hnh 54 H thng a v u t c/ghi a cng Rnh c dng l mt ng trn ng tm trn mt a lu thng tin. Cc rnh c nh s t 0 theo trt t t pha ngoi a vo trong tm v mi mt a c th cha hng ngn rnh. Tip theo rnh, mt tr l tp hp ca cc rnh cc mt a khc nhau nm trn cng mt v tr u t. Trn thc t, mt tr l tham s c s dng nhiu hn rnh trong cc h thng a cng. Cung l mt phn ca rnh trn b mt a v l n v lu tr nh nht c th qun l ca a. Kch thc thng dng ca mi cung l 512 bytes. Vi a cng, ba tham s c s dng tnh dung lng a l: S lng mt tr (C), s lng u t (H) v s lng cung trong mt rnh (S). Nh vy, dung lng ca a cng tnh theo cc tham s trn l: Dung lng ca a cng = C x H x S x 512 bytes 5.1.2.2 Cc chun ghp ni a cng Cc chun hay giao din ghp ni a cng gii quyt vn cc a cng c ghp ni v trao i d liu vi CPU nh th no. Cho n hin nay, cc giao din thng dng ghp ni a cng vi my tnh gm: (1) Parallel ATA (PATA - Parallel Advanced Technology Attachments), cn gi l ATA/IDE/EIDE (Integrated Drive Electronics), (2) Serial ATA (SATA), (3) SCSI Small Computer System Interface (pht m l scuzzy /skzi/), (4) Serial Attached SCSI (SAS) v (5) iSCSI Internet SCSI. Trong ti liu ny, ta cp chi tit ba chun ghp ni thng dng nht cho my tnh l PATA/ATA/IDE, SATA v SCSI.

59

Chng 5- B nh ngoi

Chun ghp ni ATA/IDE/PATA

Hnh 55 Giao din ghp ni v cp ATA/IDE/PATA

Hnh 56 IDE HDD jumpers & ci t jumpers Chun ghp ni ATA/IDE/PATA s dng cp dt 40 hoc 80 si ghp ni cng vi bng mch chnh ca my tnh. Mi cp thng h tr ghp ni vi 2 a: mt a ch (master) v mt a t (slave). Bng thng ng truyn l 16 bt, t cc mc thng lng theo tn s lm vic: 16, 33, 66, 100 v 133MB/s. Hnh 55 v Hnh 56 minh ho khe cm, cp ghp ni v cc chuyn mch ch lm vic (jumpers) ca a chun ATA/IDE/PATA. Chun ghp ni SATA

Khe cm d liu SATA

u cm d liu SATA

u cm ngun SATA

Hnh 57 Khe cm v cp ghp ni SATA


60

Chng 5- B nh ngoi

Hnh 57 minh ho cc thnh phn ghp ni a cng vi bng mch chnh theo chun SATA. Chun SATA s dng cng tp lnh mc thp nh chun ATA nhng SATA s dng ng truyn tin ni tip tc cao qua 2 i dy vi b iu khin SATA s dng chun AHCI (Advanced Host Controller Interface). SATA h tr nhiu tnh nng tin tin vt tri so vi ATA, nh truyn d liu nhanh v hiu qu hn v c bit l tnh nng cm nng (hot plug). SATA cung cp tc truyn d liu cao hn nhiu so vi ATA. Vi SATA th h 1, tc t 1,5 Gb/s v ln lt t 3,0 Gb/s v 6,0 Gb/s vi cc th h 2 v th h 3. Chun ghp ni SCSI SCSI l mt tp cc chun v kt ni vt l v truyn d liu gia my tnh v thit b ngoi vi, thng c s dng trong cc my ch. Tt c cc thit b SCSI u kt ni n bus SCSI theo cng mt kiu v mi bus SCSI c th kt ni 8-16 thit b SCSI. Tng t SATA, chun SCSI cng cung cp nhiu tnh nng tin tin nh tc truyn d liu v tnh n nh rt cao v tnh nng cm nng. Tnh nng cm nng rt hu dng trong cc my ch do SCSI cho php thm, bt cc cng m khng phi tt my, gim thi gian ngng cung cp dch v. SCSI t c tc truyn d liu: 5, 10, 20, 40MB/s vi cc SCSI c v 160, 320, 640 MB/s vi cc SCSI mi. Cc cng SCSI thng rt t tin v c thng c s dng cho cc my ch v cc h thng lu tr tin tin nh RAID, NAS v SAN. 5.1.2.3 Qun l a cng Cc a cng c qun l theo hai mc: mc thp (lower level) v mc cao (high level). Qun l a mc thp c thc hin bi cc chc nng ca ROM-BIOS, a c qun l mc cao bi h iu hnh. Cc vn lin quan n qun l a cng gm: nh dng a cng, phn khu v bng phn khu a cng, cung khi ng, h thng file v th mc gc. nh dng a cng a cng cn c nh dng (format) trc khi s dng. C hai mc nh dng a cng: nh dng mc thp (lower level format) v nh dng mc cao (high level format). nh dng mc thp l qu trnh gn a ch cho cc cung vt l trn a v c th c thc hin bi cc chc nng ca BIOS. Hin nay, hu ht cc a cng u c nh dng mc thp khi xut xng. Sau khi c nh dng mc thp, a cn c nh dng mc cao bi h iu hnh trc khi c th lu thng tin. nh dng mc cao l qu trnh gn a ch cho cc cung logic v khi to h thng file. Phn khu v bng phn khu a cng Mt a cng vt l c th c chia thnh nhiu phn thun tin cho qun l v lu tr. Mi phn c gi l mt phn on hay mt phn khu (partition). C hai loi phn khu: phn khu chnh (primary partition) v phn khu m rng (extended partition). Thng thng, mi a ch c th c mt phn khu chnh v mt hoc mt s phn khu m rng. Mt phn khu li c th c chia thnh mt hoc mt s a logic. Phn khu chnh ch c th cha duy nht mt a logic, nhng phn khu m rng c th c chia thnh mt hoc mt s a logic. Bng phn khu (partition table) l mt bng gm cc bn ghi lu thng tin qun l cc phn khu a cng. Cc thng tin c th v mi phn khu nh sau:
61

Chng 5- B nh ngoi

Phn khu c thuc loi tch cc (active) ? S mt tr (C), u t (H) v cung (S) im bt u phn khu; S mt tr (C), u t (H) v cung (S) im kt thc phn khu; Kiu nh dng phn khu (FAT, NTFS, EXT); Kch thc ca phn khu tnh theo s cung. Cung khi ng Cung khi ng (boot sector) l mt cung c bit, lun nm v tr cung s 1 ca a logic. Cung khi ng cha chng trnh mi khi ng (Bootstrap loader) c nhim v kch hot vic np cc thnh phn ca h iu hnh t a vo b nh. H thng file H thng file (file system) l mt dng bng danh mc (directory) qun l vic lu tr cc files trn a. Cc files thng c lu tr trong cc th mc (folders) v cc th mc c t chc theo m hnh cy. H thng file l mt thnh phn ca h iu hnh v c thit k khc khc nhau. Sau y l mt s h thng file thng dng km theo h iu hnh: FAT (DOS, Windows 3.x, Windows 95, 98, ME) NTFS (Windows NT, 2000, XP, 2003, Vista, 7) Ext2, Ext3 (Unix, Linux) MFS (Macintosh FS)/HFS (Hierarchical FS) (Mac OS) Th mc gc Th mc gc (Root directory) l th mc mc thp nht trong h thng cy th mc ca a logic. Th mc gc l im bt u khi h thng tm kim v truy nhp file. Cng nh cc th mc khc, th mc gc c th cha cc th mc con v cc file. im khc bit ca th mc gc vi cc th mc khc l n khng c th mc m. 5.2 A QUANG 5.2.1 Gii thiu v nguyn l a quang (Optical Disks) hot ng da trn nguyn l quang hc: s dng nh sng c v ghi thng tin trn a. Cc a quang thng c ch to bng plastic vi mt mt c trng mt lp nhm mng phn x tia laser. Mt a quang c khc rnh v mc lm ca rnh c s dng biu din cc bit thng tin, nh minh ho trn Hnh 58. Trn thc t, cc a quang m nhc v phim c ch to hng lot theo kiu ch bn in gm 2 khu: Trc ht, to bn a ch cha thng tin dng m bn bng thit b chuyn dng, sau s dng bn a ch in thng tin ln cc a quang trng. Vic c thng tin trn a quang c thc hin trong a quang (Optical Disk Drive), nh minh ho trn Hnh 59 theo cc bc: 1. Tia laser t it pht laser i qua b tch tia n gng quay; 2. Gng quay c iu khin bi tn hiu c, li tia laser n v tr cn c trn mt a; 3. Tia phn x t mt a phn nh mc li lm trn mt a quay tr li gng quay;
62

Chng 5- B nh ngoi

4. Gng quay chuyn tia phn x v b tch tia v sau n b cm bin quang in; 5. B cm bin quang in chuyn i tia laser phn x thnh tn hiu in u ra. Cng ca tia laser c biu din thnh mc tn hiu ra.

Hnh 58 Lu thng tin trn a quang


Output signal Sensor Laser Diode Rotation mirror

Beam spitter

CD-ROM

Hnh 59 Nguyn l c thng tin trn a CD-ROM 5.2.2 Cc loi a quang C hai h a quang chnh: a CD (Compact Disk) v a DVD (Digital Video Disk). a CD ra i trc c dung lng nh, tc chm, thng c s dng lu d liu, m thanh v phim nh c cht lng thp. a DVD ra i sau, c dung lng ln, tc truy nhp cao v cho php lu d liu, m thanh v phim nh c cht lng cao hn.

63

Chng 5- B nh ngoi

H a CD gm 3 loi chnh: a CD ch c (CD-ROM - Read Only CD), a CD c th ghi 1 ln (CD-R - Recordable CD) v a CD c th ghi li (CD-RW - Rewritable CD). a CDROM c ghi sn ni dung t khi sn xut v ch c th c ra trong qu trnh s dng. CDROM thng c s dng lu m nhc v cc phn mm. a CD-R l a c th ghi mt ln duy nht bi ngi s dng. Sau khi thng tin c ghi, a tr thnh loi ch c. Ngc li, a CD-RW cho php xo thng tin ghi v ghi li nhiu ln. a CD-RW thng c gi thnh cao v c th ghi li khong 1000 ln. Tng t h CD, h DVD cng gm nhiu loi: a DVD ch c (DVD-ROM - Read Only DVD), a c th ghi 1 ln (DVD-R - Recordable DVD), a c th ghi li (DVD-RW Rewritable DVD), a DVD mt cao (HD-DVD - High-density DVD) v a DVD mt siu cao (Blu-ray DVD - Ultra-high density DVD). DVD-ROM thng c s dng lu phim nh v cc phn mm c dung lng ln. a DVD-R l a c th ghi mt ln duy nht bi ngi s dng. Sau khi thng tin c ghi, a tr thnh loi ch c. Ngc li, a DVD-RW cho php xo thng tin ghi v ghi li nhiu ln. a HD-DVD v Blu-ray DVD l cc loi a DVD c dung lng siu cao vi dung lng tng ng vo khong 15GB v 25GB vi a mt lp. 5.2.3 Gii thiu cu to mt s a quang thng dng 5.2.3.1 a CD-ROM, CD-R v CD-RW Dung lng ti a ca a CD l 700MB hoc 80 pht nu lu m thanh. a s dng tia laser hng ngoi vi bc sng 780 nm c thng tin. Tc truyn thng tin ca a CD c tnh theo tc c s (150KB/s) nhn vi h s nhn. V d, a c tc c 4x th tc ti a c th c l 4 x 150KB/s = 600 KB/s; nu a c tc c 50x th tc ti a c th c l 50 x 150KB/s = 7500 KB/s.

Hnh 60 Cu to a CD-R a CD-R v mt hnh thc v cu to tng t a CD-ROM. Tuy nhin, a CD-R c thm mt lp gi l organic dye, tm dch l lp hu c nm gia lp plastic v lp phn x bng kim loi. Tia laser c iu ch bi tn hiu ghi c s dng t lp hu c to thnh cc mc li lm khc nhau trn lp ny lu thng tin. Sau khi t lp hu c b c
64

Chng 5- B nh ngoi

nh v do vy a CD-R ch ghi c 1 ln. Trong a CD-RW, lp hu c c thay bng mt lp bn kim loi. Nh vy, a CD-RW c th ghi c nhiu ln. a s cc a CD-RW cho php ghi li n khong 1000 ln. 5.2.3.2 a DVD-ROM, DVD-R v DVD-RW Dung lng ti a ca a DVD l 4,7GB vi a mt mt v 8,5GB vi a 2 mt. a DVD s dng tia laser hng ngoi c bc sng 650nm, ngn hn nhiu so vi bc sng tia laser dng trong a CD. Nh s dng bc sng laser ngn hn, a DVD c mt ghi cao hn nhiu so vi CD, nhng minh ho trn Hnh 61. Tc truyn thng tin ca a DVD c tnh theo tc c s (1350KB/s) nhn vi h s nhn. V d, a c tc c 4x th tc ti a c th c l 4 x 1350KB/s = 5400 KB/s; nu a c tc c 16x th tc ti a c th c l 16 x 1350KB/s = 21600 KB/s.

Hnh 61 Mt ghi thng tin trn a CD v DVD

Hnh 62 Cu to a DVD-R
65

Chng 5- B nh ngoi

a DVD-R c cu to tng t a CD-R, nhng s dng tia laser c bc sng ngn hn, l 650nm, nh minh ho trn Hnh 62. Hnh 63 minh ho mt ct cc lp trong a DVD-RW. Lp bn kim loi ghi thng tin c t trong hai lp bo v.

Hnh 63 Cu to a DVD-RW 5.2.3.3 a HD-DVD v Blu-ray DVD a HD-DVD v Blu-ray DVD l cc siu a quang vi dung lng rt ln v tc truy nhp cao. a HD-DVD do Toshiba pht minh, s dng tia laser xanh vi bc sng rt ngn. a HD-DVD t dung lng 15GB cho mt lp v 30GB cho hai lp. Do tht bi trong cnh tranh vi a Blu-ray DVD, nn a HD-DVD phi ngng sn xut t thng 2 nm 2008. a Blu-ray DVD do Sony pht minh, s dng tia laser vi bc sng 405nm. a Blu-ray DVD t dung lng 30GB cho mt lp v 50GB cho hai lp. 5.3 RAID 5.3.1 Gii thiu RAID RAID (Redundant Array of Independent Disks) l mt cng ngh to cc thit b lu tr tin tin trn c s cc a cng, nhm t cc yu cu v tc cao (high performance / speed), tnh tin cy cao (high reliability) v dung lng ln (large volume). Mc d RAID l mt mng ca cc a cng, nhng khng phi tt c cc loi cng u c th s dng to RAID. Trn thc t, ch c cc cng theo chun SATA, SCSI v tng ng mi h tr to RAID. 5.3.2 Cc k thut to RAID C hai k thut chnh c s dng to RAID: k thut to lt a (Disk Stripping) v k thut soi gng a (Disk Mirroring). Hnh 64 minh ho k thut to lt a. im mu cht ca k thut ny l iu khin RAID cung cp kh nng ghi v c song song cc khi ca cng mt n v d liu. Nh vy tng c tc c ghi. Theo , cc d liu cn ghi c chia thnh cc khi cng kch thc v c ghi ng thi vo cc a vt l c lp. Tng t, trong qu trnh c, cc khi ca d liu cn c c c ng thi t cc a cng c lp, gip gim thi gian c.
66

Chng 5- B nh ngoi

Trong khi k thut to lt a hng n tc cao, k thut soi gng a nhm t tin cy cao cho h thng lu tr. Hnh 65 minh ho k thut soi gng a. Theo , d liu cng c chia thnh cc khi v mi khi c ghi ng thi ln hai hay nhiu a c lp. Nh vy, ti mi thi im ta u c nhiu bn sao d liu trn cc a cng c lp, m bo tnh an ton cao.
RAID Controller Computer A1 B1 C1 Disk 1 A2 B2 C2 Disk 2

Hnh 64 RAID - K thut to lt a


RAID Controller Computer

A B C Disk 1

A B C Disk 2

Hnh 65 RAID K thut soi gng a 5.3.3 Gii thiu mt s loi RAID thng dng Trn c s cc k thut RAID c cp ti mc 5.3.2, trong mc ny gii thiu ba dng RAID c s dng ph bin nht: RAID 0, RAID 1 v RAID 10. Cc dng RAID khc chng hn RAID 2, 3, 4, 5, 6, 01, c gi c th tham kho cc ti liu khc. 5.3.3.1 RAID 0 Cu hnh RAID 0 da trn k thut to lt a v cn ti thiu hai a vt l, nh minh ho trn Hnh 66. u im chnh ca RAID 0 l t tc cao tc truy nhp RAID t l thun vi s lng a c lp ca RAID. Ngoi ra, RAID 0 c th gip tng dung lng: dung lng RAID 0 bng tng dung lng ca cc a c lp tham gia. Hn ch ln nht ca RAID 0 l tnh tin cy tnh tin cy ca RAID 0 ch tng ng tnh tin cy ca mt a n.
67

Chng 5- B nh ngoi

5.3.3.2 RAID 1 Khc vi RAID 0, cu hnh RAID 1 da trn k thut soi gng a v cng cn ti thiu hai a vt l, nh minh ho trn Hnh 67. u im chnh ca RAID 1 l t tin cy cao, do ti mi thi im lun c nhiu bn sao lu d liu trn cc a c lp. Tc truy nhp v dung lng ca RAID 1 u tng ng vi mt a n.
RAID Controller Computer A1 B1 C1 Disk 1 A2 B2 C2 Disk 2

Hnh 66 Cu hnh RAID 0


RAID Controller Computer

A B C Disk 1

A B C Disk 2

Hnh 67 Cu hnh RAID 1 5.3.3.3 RAID 10 Cu hnh RAID 10 l s kt hp ca RAID 1 v RAID 0, da trn c hai k thut to lt a v soi gng a. RAID 10 cn ti thiu 4 a c lp nh minh ho trn Hnh 68. u im ca RAID 10 l t c c tc cao v tnh tin cy cao, nn rt ph hp vi cc h thng my ch i hi tnh an ton cao, hiu nng ln nh my ch c s d liu. Dung lng RAID 10 bng mt na tng dung lng cc a c lp tham gia to RAID. Nhc im duy nht ca RAID 10 l gi thnh cao.

68

Chng 5- B nh ngoi
Mirroring RAID Controller Computer Stripping Stripping

A1 B1 C1 Disk 1

A2 B2 C2 Disk 2

A1 B1 C1 Disk 3

A2 B2 C2 Disk 4

Hnh 68 Cu hnh RAID 10 5.4 NAS NAS (Network Attached Storage) l mt dng thit b lu tr c gn trc tip vo mng, thng l mng cc b LAN. Hnh 69 minh ho mt thit b NAS USR8700 c gn vo mng LAN v cung cp thit b lu tr cho c mng.

Hnh 69 NAS trong mt mng LAN Trn thc t, NAS thng l mt my ch chuyn dng lm thit b lu tr, c kt ni vo mng (thng l LAN tc cao) v cung cp cc dch v lu tr thng qua mng. NAS thng da trn nn tng l mt RAID c tc cao, dung lng ln v tin cy rt cao. NAS c th cung cp dch v lu tr cho hu ht cc loi my ch c cu hnh phn cng khc nhau v chy cc h iu hnh khc nhau, cng nh cc phn mm ng dng khc nhau, nh minh ho trn Hnh 70.

69

Chng 5- B nh ngoi

Hnh 70 NAS ca hng D-Link v m hnh s dng trong mng LAN

5.5 SAN

Hnh 71 M hnh mng lu tr SAN v ng dng SAN (Storage Area Network) l mt mng ca cc my ch chuyn dng cung cp dch v lu tr, vi cc c im:
70

Chng 5- B nh ngoi

Tc truy nhp rt cao; Dung lng cc ln; an ton rt cao An ton d liu cc b An ton d liu vi cc bn copy c ng b khong cch xa v a l. Thng thng, cc SAN thng c t chc di dng cc h thng file phn tn (Distributed File System) phc v t chc lu tr lng d liu khng l cho cc t chc v cng ty ln. 5.6 CU HI N TP 1. a cng: cu to, cc chun ghp ni, bng phn khu, th mc gc v h thng file. 2. a quang: cu to, nguyn l c CD v cc loi a quang. 3. RAID: RAID l g? cc k thut chnh to RAID; cc cu hnh RAID 0, 1 v 10. 4. Khi nim v NAS. 5. Khi nim v SAN.

71

CHNG 6 H THNG BUS V CC THIT B NGOI VI


6.1 GII THIU CHUNG V H THNG BUS Bus l mt h thng con (subsystem) c nhim v truyn d liu gia cc b phn trong my tnh. Mt h thng bus thng gm ba thnh phn: bus a ch, bus d liu v bus iu khin. Bus a ch (Address Bus A Bus) l bus mt chiu c nhim v truyn cc tn hiu a ch pht hnh bi CPU n b nh hoc cc thit b vo ra. Cc tn hiu a ch gip CPU chn c nh cn c/ghi hoc thit b vo ra cn trao i d liu. Bus d liu (Data Bus D Bus) l bus hai chiu c nhim v truyn cc tn hiu d liu i v n CPU. D liu c bus d liu chuyn t CPU n b nh hoc thit b vo ra v ngc li. Bus iu khin (Control Bus C Bus) l bus mt chiu theo mt hng, c nhim v truyn cc tn hiu iu khin t CPU n b nh hoc thit b vo ra, v truyn cc tn hiu trng thi t b nh hoc thit b vo ra v CPU. Cc bus a ch, d liu v iu khin thng phi hp cng tham gia truyn dn cc tn hiu a ch, d liu v iu khin trong qu trnh CPU trao i thng tin vi b nh hoc cc thit b vo ra.

Hnh 72 H thng bus nguyn l Hnh 72 minh ho h thng bus nguyn l mt h thng bus duy nht kt ni ba thnh phn quan trng nht ca my tnh l CPU, b nh (memory) v cc thit b vo ra (I/O). Trn thc t, h thng bus thng c chia thnh mt s h thng bus con theo tn s lm vic v bng thng, nhm lm cho h thng bus lm vic nhp nhng hn vi cc thnh phn c lin quan. Hnh 73 minh ho h thng bus ca cc my vi tnh c s dng gn y. Theo , h thng bus gm cc bus: Backside Bus (BSB), Frontside Bus (FSB), AGP Bus, PCI Bus v ISA Bus. BSB l bus ring kt ni CPU vi b nh cache, cn FSB kt ni CPU vi b nh chnh. AGP l bus dnh ring phc v card giao tip ho v PCI bus thng c s dng kt ni vi cc thit b ngoi vi. Bus ISA c s dng kt ni vi cc thit b ngoi vi c. Cc h thng bus con c kt ni vi nhau thng qua cc cu bus (Bus Bridge).

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 73 H thng bus thc t 6.2 GII THIU MT S LOI BUS THNG DNG 6.2.1 Bus ISA v EISA Bus ISA (Industrial Standard Architecture) l mt trong cc bus c pht trin sm nht. Bus ISA do IBM pht trin nm 1981 vi bng thng 8 bit trn my XT, hoc 16 bit trn my AT. ISA h tr ti a 6 thit b kt ni ng thi v hot ng cc xung nhp 4, 6 v 8MHz. Hnh 74 minh ho cc khe cm m rng ca bus ISA c dng kt ni vi cc card m rng ISA.

Hnh 74 Khe cm m rng ISA


73

Chng 6- H thng Bus v cc thit b ngoi vi

Bus EISA l mt m rng ca bus ISA ra i vo nm 1988. EISA h tr bng thng 32 bits, nhng n vn tng thch vi cc thit b theo chun ISA 8 v 16 bit. EISA hot ng vi xung nhp 8.33MHz v t tc truyn d liu 33MB/s. Hnh 75 minh ho cc khe cm m rng ca bus EISA c dng kt ni vi cc card m rng ISA v EISA. Hin nay, bus ISA v EISA lc hu v khng cn c s dng.

Hnh 75 Khe cm m rng EISA 6.2.2 Bus PCI 6.2.2.1 Gii thiu bus PCI Bus PCI (Peripheral Component Interconnect) do Intel pht trin nm 1993 v c pht trin thnh mt trong cc bus c s dng rng ri nht cho n ngy nay. PCI h tr bng thng 32 bit hoc 64 bit v t tc truyn d liu kh cao theo tn s lm vic v bng thng. Vi bng thng 32 bit, tc truyn d liu t 133 MB/s ti tn s 33MHz v 266 MB/s ti tn s 66MHz. Vi bng thng 64 bit, tc truyn d liu t 266 MB/s ti tn s 33MHz v 533 MB/s ti tn s 66MHz. Hnh 76 minh ho khe cm PCI v card m rng thit b PCI v Hnh 77 minh ho bus cc b PCI cc thnh phn tham gia vo gia nh PCI.

Hnh 76 Khe cm v card thit b PCI


74

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 77 Bus cc b PCI 6.2.2.2 Nguyn l hot ng ca bus PCI

Hnh 78 S khi nguyn l hot ng ca bus PCI Hnh 78 nu s khi nguyn l hot ng ca bus PCI. Theo PCI l mt bus dng chung hay bus chia s (shared bus). PCI h tr nhiu thit b kt ni ng thi, nhng ti mi thi im, ch c mt cp thit b c s dng bus trao i d liu. Vic trao i d liu trn bus PCI c thc hin thng qua cc giao dch (transaction). Thit b khi to (Initiator) qu trnh truyn d liu c gi l thit b ch (ABH Master) v thit b nhn d liu hay

75

Chng 6- H thng Bus v cc thit b ngoi vi

thit b ch (Target) l thit b th (ABH Slave). Mt trng ti c nhim v iu cc giao dch trn bus PCI c gi l b tu chn (PCI Arbiter). Vic thc hin cc giao dch trn bus PCI c iu khin bi cc tn hiu. Hai nhm tn hiu chnh c s dng, gm: tn hiu khi to giao dch v tn hiu iu khin giao dch. Cc tn hiu khi to mt giao dch, gm tn hiu REQ# do thit b khi to giao dch gi tn hiu yu cu s dng bus v tn hiu GNT# do b tu chn gi tn hiu cho php s dng bus. Cc tn hiu iu khin mt giao dch, gm tn hiu FRAME# - bt u chu k bus, tn hiu IRDY# thit b khi to sn sng, tn hiu DEVSEL# - thit b ch xc nhn bt u giao dch, tn hiu TRDY# - thit b ch sn sng v tn hiu STOP# - dng giao dch. Mt giao dch PCI c thc hin theo 3 pha: pha tu chn (Arbitration), pha a ch (Address) v pha d liu (Data). Pha tu chn c nhim v khi to giao dch, pha a ch xc nh a ch bn tham gia giao dch v pha d liu truyn d liu gia cc bn. Pha tu chn c thc hin thng qua cc bc sau: Thit b PCI (Initiator) gi tn hiu REQ# n Arbiter yu cu s dng bus; Nu bus ri, Arbiter gi tn hiu cho php s dng bus GNT# n Initiator; Nu bus bn, yu cu s dng bus c a vo hng i; Tn hiu cho php s dng bus GNT# c th b Arbiter hu ti bt k thi im no; Thit b PCI c cp tn hiu cho php s dng bus GNT# c th bt u phin truyn d liu nu bus ri. Pha a ch ca giao dch nh minh ho trn Hnh 79, c th gm cc bc: Thit b PCI (Initiator) c tn hiu cho php s dng bus GNT# c th bt u mt giao dch PCI bng vic gi tn hiu FRAME# v gi a ch thit b ch cng cc lnh lin quan (Read/Write); Mi thit b PCI s kim tra a ch v lnh km theo xc nh mnh c phi l thit b ch hay khng. Thit b ch (c a ch trng vi a ch gi bi Initiator) s gi tn hiu tr li DEVSEL# n Initiator; Thit b ch phi gi tn hiu tr li DEVSEL# trong thi gian 3 chu k ng h.

Hnh 79 Pha a ch giao dch PCI

76

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 80 Pha d liu giao dch PCI Hnh 80 minh ho cc tn hiu trong pha d liu ca giao dch PCI. Sau pha a ch, khi tn hiu DEVSEL# mc thp l mt hoc mt s pha d liu. Kt thc pha d liu, thit b ch gi tn hiu STOP#. 6.2.3 Bus AGP

Hnh 81 S nguyn l hot ng ca AGP Bus AGP (Accelerated Graphic Port) do Intel pht trin nm 1993 vi mc ch chnh s dng cho kt ni vi cc mch x l ho tc cao. AGP hon ton thay th PCI trong lnh vc giao tip ho trong cc nm sau . AGP h tr bng thng 32 bt vi tc truyn d liu nhanh gp nhiu ln so vi bus PCI. C th, AGP h tr 4 cp tc truyn d liu l 1x, 2x, 4x v 8x, vi tc ln lt l 266MB/s, 533MB/s, 1066MB/s v 2133MB/s ti cc tn s tng ng 66MHz, 133MHz, 266MHz v 533MHz.
77

Chng 6- H thng Bus v cc thit b ngoi vi

6.2.4 Bus PCI Express Bus PCI Express (cn gi l PCIe) do Intel pht trin nm 2004, l mt dng bus truyn d liu ni tip, kiu im n im (point to point) vi tc cao. rng bus l t 1-32 bit tu theo cu hnh. PCI Express c cu trc t cc lin kt ni tip im n im v mt cp lin kt ni tip (theo 2 chiu ngc nhau) to thnh mt lung (lane). Cc lung c nh tuyn ng thi qua mt b chuyn mch (crossbar switch). Ti a, bus PCI Express c th h tr n 32 lung. Tc truyn d liu ca bus PCI Express ph thuc s lung s dng v phin bn ca chun. Vi mt lung, tc truyn t 250MB/s, 500MB/s v 1GB/s tng ng vi cc phin bn 1.x, 2.0 v 3.0.

Hnh 82 Truyn d liu qua b Switch trong PCI Express Khc vi PCI l bus chia s, bus PCI Express c kh nng cung cp ng truyn ring cho cc cp thit b tham gia s dng bus. ng thi PCI Express cng h tr nhiu cp thit b cng tham gia truyn d liu s dng cc lung truyn khc nhau. Hnh 82 minh ho vic truyn d liu qua b chuyn mch (Switch) trong PCI Express. 6.3 GII THIU CHUNG V CC THIT B NGOI VI 6.3.1 Gii thiu chung Cc thit b ngoi vi (peripheral devices) hay cn gi l thit b vo ra, l cc b phn ca h thng my tnh c nhim v: (1) tip nhn cc thng tin t th gii bn ngoi i vo my tnh v (2) kt xut cc thng tin t my tnh ra th gii bn ngoi. Nhim v (1) c m bo bi nhm cc thit b vo (input devices) v nhim v (2) c m bo bi nhm cc thit b ra (output devices). Cc thit b vo gm c: bn phm, chut, a (c thng tin), my qut nh v my c m vch. Hnh 83 minh ho thit b vo chun l bn phm v chut. Cc thit b ra gm c: mn hnh, my in, a (ghi thng tin) v my v. Hnh 84 minh ho hai loi mn hnh thng dng: mn hnh CRT v LCD. Hnh 85 minh ho cc my in laser v my in phun mc.

78

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 83 Bn phm v chut

Hnh 84 Mn hnh CRT v LCD

Hnh 85 My in Laser v my in phun mc 6.3.2 Cc cng giao tip Cc thit b vo ra thng kt ni vi my tnh thng qua cc cng giao tip (communication ports). Mi cng giao tip c gn mt a ch v c tp tham s lm vic ring. Hnh 86 minh ho cc cng giao tip pha sau my tnh. Cc cng giao tip thng dng:
79

Chng 6- H thng Bus v cc thit b ngoi vi

1. PS/2: kt ni chut v bn phm. 2. Cng COM v LPT. 3. Cng USB: cng giao tip a nng theo chun USB USB 1.0: 12Mb/s USB 2.0: 480Mb/s (hin ti) USB 3.0: 1.5Gb/s (tng lai). 4. Cng IDE, SATA v E-SATA: ghp ni cc loi a. 5. Cng LAN: ghp ni mng. 6. Cng Audio: ghp ni m thanh. 7. Cng c cc th nh. 8. Cng Firewire /IEEE 1394: ghp ni cc loi a ngoi. 9. Cng VGA/Video: ghp ni vi mn hnh. 10. Cng DVI: ghp ni vi mn hnh s.

Hnh 86 Mt s cng giao tip vi my tnh

80

Chng 6- H thng Bus v cc thit b ngoi vi

6.4 GII THIU MT S THIT B VO RA THNG DNG 6.4.1 Bn phm Bn phm (keyboard) l thit b vo chun ca my tnh do bn phm c th m nhim c chc nng nhp d liu v iu khin my tnh. Bn phm tiu chun c 101 phm: cc phm k t (a-z), cc phm s (0-9), cc phm php ton (+, - *, /), cc phm chc nng (F1-F12), cc phm iu khin (Ctrl, Alt, Shift, ..) v cc phm di chuyn: Home, End, Page Up, Page Down, Up, Down, Left, Right, ...

Hnh 87 Mch to phm

Hnh 88 Ma trn phm v pht hin cc phm c nhn Bn phm s dng mt ma trn hnh thnh bi cc dng v ct dy dn, nh minh ho trn hnh Hnh 87 v Hnh 88. Mi phm hot ng nh mt cng tc in. Khi phm c n, dy dn ct c ni vi dy dn dng to thnh mt mch kn. B iu khin bn phm lin tc qut ma trn phm pht hin mch kn v ghi nhn phm c n. Qu trnh x l phm n v to tn hiu gi CPU x l trong bn phm c th c tm tt nh sau: Khi mt phm c n, b iu khin bn phm pht hin v sinh ra mt m qut tng ng (scan code); Mt ngt (interrupt) bn phm c gi n my tnh;
81

Chng 6- H thng Bus v cc thit b ngoi vi

Khi nhn c tn hiu ngt bn phm: My tnh thc hin chng trnh iu khin ngt bn phm: 6.4.2 Chut Chut (mouse) l mt trong cc thit b vo ca my tnh c s dng rng ri nht. Chc nng chnh ca chut l iu khin. Thng qua cc phn mm, hnh thc hin th ca chut c th hin rt a dng, t hnh mi tn n gin, n bn tay, ng h ct, ... theo cc trng thi lm vic ca chng trnh. Hin nay, c rt nhiu loi chut ang c s dng. Ngoi chut bi (cn gi l chut c kh), cn c chut quang, chut laser, chut cm ng v chut khng dy. Cc phm bm chut cng rt a dng: thng thng l loi 3 phm (tri, phi v cun); mt s chut c th c thm c phm tin (forward) v phm li (backward). c m qut phm Chuyn m qut phm thnh m k t tng ng (thng thng l m ASCII).

Mt k t c th c hin th theo nhiu hnh thc khc nhau theo cc b font.

Hnh 89 Chut bi hay chut c kh Chut bi hay chut c kh l loi chut c cu to n gin v c s dng sm nht. Hnh 89 cho thy cc thnh phn bn trong ca chut bi. Chut bi hot ng theo nguyn tc c kh quang in: bin chuyn ng ca vin bi khi r chut thnh cc tn hiu in biu din cc chuyn ng theo phng ngang v phng ng ca chut. C th, nguyn tc hot ng ca chut bi c th tm tt nh sau: Khi chut di chuyn, vin bi chut quay; Khi bi quay n ko theo 2 trc p vo quay theo. Hai trc c gn bnh xe rng ca 1 u: Mt trc dng pht hin chuyn ng theo phng ng Mt trc dng pht hin chuyn ng theo phng ngang Khi bnh rng ca quay, nh sng hng ngoi chiu qua s b ngt qung;

Hai i-t sinh tia hng ngoi chiu qua phn bnh rng ca gn trn cc trc k trn:

82

Chng 6- H thng Bus v cc thit b ngoi vi

pha i din c 2 b cm bin chuyn nh sng hng ngoi sau bnh rng ca thnh tn hiu in; Tn hiu in thu c phn nh chuyn ng ca chut c chuyn cho my tnh x l.

Hnh 90 Chut quang v cu to Khc vi chut bi, chut quang (optical mouse) khng c bi nn thng nh v t chnh xc cao hn. Hin nay, chut quang thay th hu ht cc chut bi. Hnh 90 minh ho chut quang v cu to ca n. Chut quang s dng nguyn tc lin tc chp v phn tch nh b mt chut di chuyn pht hin chuyn ng ca chut. C th, nguyn tc hot ng ca chut quang c th tm tt nh sau: Mt i-t pht nh sng qua ng knh chiu xung mt phng di chut; nh sng phn x t mt phng di chut quay ngc tr li pha di chut; Mt camera t pha di chut lin tc chp nh ca b mt di chut nh nh sng phn x. Tc chp l khong 1500 nh/giy; IC iu khin chut s phn tch v so snh cc nh k nhau v qua pht hin ra chuyn ng chut; Tn hiu biu din chuyn ng chut do IC iu khin chut sinh ra c chuyn cho my tnh x l. Tng t nh chut quang, chut laser cng s dng phng php chp v phn tch nh b mt k nhau pht hin chuyn ng. Tuy nhin, chut laser s dng nh sng laser vi tc chp nh ln n 6000 nh/giy. Nh vy, chut laser thng c chnh xc v nhy cao hn s vi chut quang. 6.4.3 Mn hnh Mn hnh (monitor / screen) l thit b ra chun c th hin th thng tin di dng vn bn hoc hnh nh. Cng vi bn phm v chut, mn hnh l thit b khng th thiu i vi my tnh. C ba dng mn hnh c s dng thng dng: mn hnh ng in t CRT, mn hnh

83

Chng 6- H thng Bus v cc thit b ngoi vi

tinh th lng LCD v mn hnh plasma. Ti liu ny ch cp n hai loi mn hnh c s dng ph bin cho my tnh l mn hnh CRT v LCD. 6.4.3.1 Mn hnh CRT Mn hnh CRT (Cathode Ray Tube) s dng tia in t pht ra t cc Cathode bn ln mt hunh quang pht pho to nh. Tia in t c iu khin bi 2 cun li tia (dng v mnh) qut ht c mn hnh, m bo tc qut ti thiu l 24 mn hnh/giy. Tn hiu hnh nh (video) c s dng iu khin mt tia in t bn ln mn hunh quang to cc mc sng/ti khc nhau. Mn hnh en trng s dng 1 sng in t, cn mn hnh mu s dng 3 sng in t ng vi 3 mu c bn (Red), Xanh l cy (Green) v Xanh da tri (Blue). Ba mu ny c trn vi nhau theo t l khc nhau to thnh tt c cc mu c trong t nhin cho im nh. Hnh 91 minh ho bn ngoi v cc b phn bn trong ca mn hnh CRT, cn Hnh 92 minh ho nguyn l to im nh ca mn hnh CRT mu.

Hnh 91 Bn ngoi v bn trong mn hnh CRT

Hnh 92 Nguyn l im nh ca mn hnh CRT mu

84

Chng 6- H thng Bus v cc thit b ngoi vi

6.4.3.2 Mn hnh LCD Mn hnh LCD (Liquid Crystal Display) l mn hnh to nh da trn s linh ng ca cc tinh th lng (Liquid Crystals). Tinh th lng l cc cht bn rn lng rt nhy cm vi nhit v dng in. So vi mn hnh CRT, mn hnh LCD mng hn, nh hn v tiu th t in nng hn. Ngoi ra, phn din tch mn hnh thc hin th nh (viewable size) ca LCD cng ln hn. Chng hn mn hnh LCD 15 c phn mn hnh thc tng ng mn hnh CRT 17. Nhc im ca LCD so vi CRT l khng h tr nhiu phn gii, cht lng nh khng cao, thi gian p ng (response time) ln v gc nhn (view angle) nh. C th phn loi mn hnh LCD thnh 2 loi theo ngun php sng: LCD chiu sau (backlit) v LCD phn x (reflective). LCD chiu sau s dng ngun sng ring t pha sau, thng dng trong cc LCD c cng sut ln, nh mn hnh my tnh v mn hnh tivi. LCD phn x s dng nh sng phn x ca ngun sng t bn ngoi. LCD phn x c thit k n gin, r tin, thng thch hp vi cc mn hnh c cng sut nh, nh mn hnh ng h, mn hnh my tnh tay.

Hnh 93 M hnh lc nh sng ca tinh th lng iu khin bng in

Hnh 94 Mt TFT - Thin Film Transitor


85

Chng 6- H thng Bus v cc thit b ngoi vi

Bn thn tinh th lng khng c kh nng pht sng, nhng chng c kh nng lc hay thay i cng nh sng i qua theo in p dng in t vo. Hnh 93 minh ho m hnh lc nh sng ca tinh th lng c iu khin bng in. Da trn phng php iu khin cc tinh th lng, ta c 2 loi LCD: LCD ma trn th ng (Passive matrix) v LCD ma trn ch ng (Active matrix). LCD ma trn th ng s dng li hoc ma trn nh ngha tng im nh (pixel) bi hng v ct ca n. Mt im nh (giao gia 1 hng v 1 ct) c kch hot khi in p c t vo ct v dng tng ng c ni t. Ngc li, LCD ma trn ch ng s dng mt TFT (Thin Film Transistor) iu khin mt phn t tinh th lng. Cc TFT hot ng tng t nh cc b chuyn mch, nh minh ho trn Hnh 94.

Hnh 95 Cu trc ca mn hnh TFT-LCD Hnh 95 minh ho cu trc ca mn hnh TFT-LCD. TFT-LCD hot ng theo nguyn l tm tt nh sau: TFT LCD l thit b c iu khin bng cc tn hiu in; Lp tinh th lng nm gia 2 lp trong sut cha cc in cc ITO (Indium Tin Oxide); Cc phn t tinh th lng c sp t theo cc hng khc nhau theo s thay i in p t vo cc in cc ITO; Hng ca cc phn t tinh th lng trc tip nh hng n cng nh sng i qua v n gin tip iu khin mc sng / ti (cn gi l mc xm) ca nh hin th; Mu ca hnh nh c to bi mt lp lc mu; Mc xm ca cc im nh c thit lp theo mc in p ca tn hiu video a vo in cc iu khin. 6.4.4 My in My in (printer) l thit b ra ph bin dng kt xut thng tin ra giy. Qua qu trnh pht trin, c nhiu loi my in c s dng nh my in ba (Typewriter-derived printers), my in kim (Dot-matrix printers), my in laser (Laser printers), my in phun mc (Inkjet printers), my in mu (Colour printers) v cc my in a chc nng (Multi-function printers).
86

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 96 minh ho my in ba. My in ba s dng cc con ch c kch thc c nh nh my nh ch. Ngc li, my in kim s dng b kim to ma trn cc chm to khun ch nh minh ho trn Hnh 97. Hnh 98 v Hnh 99 minh ho nguyn l hot ng ca my in laser. Khc vi cc dng my in i trc, my in laser s dng phng php chp nh in tch bng tia laser to ch. C th nh sau: Trng cm quang c np mt lp in tch nh 1 in cc; Tia laser t ngun sng laser i qua mt gng quay v b iu ch tia c iu khin bi tn hiu cn in n mt trng; nh sng laser lm thay i mt in tch trn mt trng; Nh vy, mt in tch trn mt trng thay i theo tn hiu cn in; Khi trng cm quang quay n hp mc th in tch trn trng ht cc ht mc c tch in tri du. Cc ht mc dnh trn trng biu din m bn ca vn bn/thng tin cn in; Giy t khay c ko ln cng c in cc np in tch tri du vi in tch ca mc nn ht cc ht mc khi trng cm quang. Giy tip tc i qua trng sy nng lm cc ht mc chy ra v b p cht vo giy.

Hnh 96 My in ba

87

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 97 My in kim

Hnh 98 My in Laser

88

Chng 6- H thng Bus v cc thit b ngoi vi

Hnh 99 Nguyn l in Laser

6.5 CU HI N TP 1. Cc thnh phn ca h thng bus v cc loi bus. 2. Nguyn l lm vic ca bus PCI. 3. Nguyn l lm vic ca bus PCI Express. 4. Gii thiu cc thit b vo ra v cc cng vo ra. 5. Nguyn l hot ng ca bn phm. 6. Nguyn l hot ng ca chut quang. 7. Nguyn l hot ng ca mn hnh CRT. 8. Nguyn l hot ng ca mn hnh TFT LCD. 9. Nguyn l hot ng ca my in laser.

89

TI LIU THAM KHO


1. Stallings W., Computer Organization and Architecture: Designing for Performance, 8th Edition, Prentice Hall 2009. 2. Mostafa Abd-El-Barr and Hesham El-Rewini, Fundamentals of Computer Organization and Architecture, John Wiley & Sons, Inc, 2005. 3. Hennesy J.L. and Patterson D.A., Computer Architecture. A Quantitative Approach, Morgan Kaufmann, 4th Edition, 2006. 4. H Khnh Lm, K thut vi x l, Nh xut bn Bu in, 2005 5. Trn Quang Vinh, Cu trc my vi tnh, Nh xut bn Gio dc, 1999. 6. Trang Wikipedia.org, tham kho nm 2009 v 2010. 7. Trang Howstuffworks.com, tham kho nm 2009 v 2010. 8. Trang PCGuide.com, tham kho nm 2009 v 2010.

90

You might also like