You are on page 1of 461

KIN TRC MY TNH

Computer Architecture
Phm Vn Thun B mn K thut my tnh,Vin CNTT&TT,HBK H Ni Mob. 0985905253 Email. thuanpv@soict.hut.edu.vn phamvanthuanbk@gmail.com Website: http://soict.hut.edu.vn/~thuanpv

Ch v bn quyn
Ton b slide mn hc Cu trc my tnh c xy dng da trn slide ca Thy Nguyn Kim Khnh v Thy Nguyn Ph Bnh, b mn K thut my tnh, vin Cng ngh thng tin v Truyn thng, i hc Bch Khoa H Ni. Yu cu ngi hc khng ph bin, chnh sa ni dung ca slide ny nu cha c s cho php ca tc gi.

XIN CM N!
2

Ti liu tham kho

Stallings, W. Computer Organization and Architecture, 6th ed, Prentice Hall, 2003 Walter A. Triebel, Avtar Singh - The 8088 and 8086 Microprocessors: Programming, Interfacing, Software, Hardware and Applications - 1997.

Ni dung mn hc
Chng 1: Gii thiu chung Chng 2: Biu din d liu v s hc my tnh Chng 3: H thng my tnh Chng 4: Gii thiu kin trc song song

Kin trc my tnh

Chng 1

Gii thiu chung

Ni dung chng 1

1. My tnh v phn loi my tnh 2. S tin ha ca my tnh

My tnh v phn loi my tnh


nh ngha my tnh: Thit b in t thc hin cc cng vic sau:

Nhn thng tin vo X l thng tin theo chng trnh c nh sn bn trong a thng tin ra

My tnh hot ng theo chng trnh.

My tnh v phn loi my tnh

M hnh my tnh c bn

My tnh v phn loi my tnh

M hnh phn lp ca my tnh


9

Phn loi my tnh


Phn loi truyn thng: My vi tnh (Microcomputer) My tnh nh (Minicomputer) My tnh ln (Mainframe Computer) Siu my tnh (Supercomputer)

10

Phn loi my tnh


Phn loi hin i: My tnh c nhn (Personal Computer) My ch (Server) My tnh nhng (Embedded Computer)

11

My tnh c nhn
L loi my tnh ph bin nht i vi ngi dng thng thng. Thit k theo hng ti u c v gi thnh v hiu nng Mt s loi:

My tnh bn (Desktop) My tnh xch tay (Notebook) My trm lm vic (Workstation)

Gi thnh: t vi trm n vi nghn USD

12

My tnh c nhn

13

My Server
My ch (Server) Thc cht l my phc v Dng trong mng my tnh theo m hnh Client/Server Tc v hiu nng tnh ton cao Dung lng b nh ln tin cy cao Gi thnh: t hng chc nghn n hng triu USD.

14

My Server

15

My tnh nhng
My tnh nhng (Embedded Computer) c t trong thit b khc (bao gm c phn cng v cc kt cu c kh) iu khin thit b lm vic c thit k chuyn dng
V d: in thoi di ng B iu khin trong my git, iu ha nhit Mt s thit b mng: Switch, Router,

Gi thnh: t vi USD n hng trm ngn USD


16

My tnh nhng

17

Kin trc my tnh

Kin trc tp lnh


(Instruction Set Architecture ISA)

T chc my tnh
(Computer Organization)

Kin trc my tnh

18

Kin trc tp lnh


Nghin cu cu trc v hot ng ca my tnh theo cch nhn ca ngi lp trnh. Kin trc tp lnh ca my tnh bao gm

Tp lnh: tp hp cc chui s nh phn m ha cho cc thao tc m my tnh c th thc hin c. Kiu d liu: cc kiu d liu m my tnh c th x l. Ch a ch

19

T chc my tnh
Nghin cu cu trc phn cng ca my tnh. Cc thnh phn c bn ca my tnh

B x l trung tm (Central Processing Unit): iu khin hot ng ca my tnh v x l d liu. B nh chnh (Main Memory): cha cc chng trnh v d liu ang c s dng. H thng vo ra (Input/Output System): trao i thng tin gia my tnh v bn ngoi. Lin kt h thng (System Interconnection): kt ni v vn chuyn thng tin gia cc thnh phn vi nhau

20

T chc my tnh

Cu trc c bn ca my tnh
21

Ni dung chng 1

1. My tnh v phn loi my tnh 2. S tin ha ca my tnh

22

Cc th h my tnh
Th h 1: My tnh dng n in t chn khng (1946 - 1955) Th h 2: My tnh dng transistor (1956 - 1965) Th h 3: My tnh dng mch tch hp (1966 1980) Th h 4: My tnh dng mch tch hp VLSI (1981 - nay)

23

My tnh dng n chn khng

24

Kin trc Von Neumann


Da trn tng chng trnh c lu tr (storedprogram concept)

25

My tnh dng transistor

My PDP-1 v CDC 6600

26

My tnh dng mch tch hp


Mch tch hp (Integrated Circuit IC) hay cn gi l vi mch, l cc chip bn dn trong cha cc transistor v cc linh kin khc. So vi th h trc, cc my tnh th h ny:

Nh gn hn Nhanh hn Tiu th t nng lng hn R tin hn

27

Siu my tnh CRAY-1

28

My tnh dng mch tch hp VLSI


Cc cng ngh mch tch hp:

SSI (Small scale integration) t 1965


Tch hp ti 100 transistor trn mt chip

MSI (Medium scale integration) cho n 1971


Tch hp t 100 n 3,000 transistor trn mt chip

LSI (Large scale integration) t 1971 n 1977


Tch hp t 3,000 n 100,000 transistor trn mt chip

VLSI (Very large scale integration) t 1978 n nay


Tch hp t 100,000 n 100,000,000 transistor trn mt chip

ULSI (Ultra large scale integration)


C hn 100,000,000 transistor trn mt chip

29

My tnh dng mch tch hp VLSI


Cc sn phm ca cng ngh VLSI:

B vi x l (Microprocessor): CPU c ch to trn mt chip. Cc vi mch iu khin tng hp (Chipset): cc vi mch thc hin c nhiu chc nng iu khin v ni ghp. B nh bn dn, gm hai loi: ROM, RAM Cc b vi iu khin (Microcontroller): my tnh chuyn dng c ch to trn mt chip.

30

My tnh dng mch tch hp VLSI

31

Kin trc my tnh

Chng 2

BIU DIN D LIU & S HC MY TNH

32

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

33

Cc h m c bn
V mt ton hc, ta c th biu din s theo h m c s bt k. Khi nghin cu v my tnh, ta ch quan tm n cc h m sau y:

H thp phn (Decimal System) con ngi s dng H nh phn (Binary System) my tnh s dng H mi su (Hexadecimal System) dng vit gn cho s nh phn

34

H thp phn
S dng 10 ch s: 0,1,2,3,4,5,6,7,8,9 biu din s Dng n ch s thp phn c th biu din c 10n gi tr khc nhau:
00...000 = 0 .... 99...999 = 10n-1

Gi s mt s A c biu din di dng: A = anan-1an-2a0.a-1a-2...a-m Gi tr ca A c hiu nh sau: A = an10 n + an -110 n -1 + ... + a1101 + a0100 + a-110 -1 + ... + a- m10 - m

A=

i=-m

ai 10i
35

V d
S thp phn 472.38 c gi tr c hiu nh sau:
472.38 = 4 x 102 + 7 x 101 + 2 x 100 + 3 x 10-1 + 8 x 10-2

36

M rng cho h c s r (r>1)


S dng r ch s c gi tr ring t 0 n r-1 biu din s Gi s c s A c biu din bng cc ch s ca h m theo c s r nh sau:

A = anan-1an-2a0.a-1a-2...a-m

Gi tr ca A l:

A = an r n + an -1r n -1 + ... + a1r 1 + a0 r 0 + a-1r -1 + a- 2 r -2 + ... + a- m r - m A=


i =- m

ai r i

Mt chui n ch s ca h m c s r s biu din c rn gi tr khc nhau.


37

H nh phn
S dng 2 ch s: 0,1 Ch s nh phn gi l bit (binary digit) Bit l n v thng tin nh nht Dng n bit c th biu din c 2n gi tr khc nhau:

00...000 = 0 ... 11...111 = 2n-1

Gi s c s A c biu din theo h nh phn nh sau: A = anan-1an-2a0.a-1a-2...a-m Vi ai l cc ch s nh phn, khi gi tr ca A l:


A = an 2 n + an -1 2 n -1 + ... + a1 21 + a0 20 + a-1 2 -1 + a- 2 2 -2 + ... + a- m 2 - m A=
i=- m

ai 2i
38

V d
S nh phn 1101001.1011 c gi tr c xc nh nh sau:
1101001.1011(2) = 26 + 25 + 23 + 20 + 2-1 + 2-3 + 2-4 = 64 + 32 + 8 + 1 + 0.5 + 0.125 + 0.0625 = 105.6875(10)

39

i s thp phn sang nh phn


Thc hin chuyn i phn nguyn v phn l ring. Chuyn i phn nguyn:

Cch 1: chia dn s cho 2, xc nh cc phn d, ri vit cc s d theo chiu ngc li.


V d: chuyn i 105(10) sang h nh phn ta lm nh sau: 105 : 2 = 52 d 1 52 : 2 = 26 d 0 26 : 2 = 13 d 0 13 : 2 = 6 d 1 6:2 = 3 d 0 3:2 = 1 d 1 1:2 = 0 d 1 Nh vy, ta c: 105(10) = 1101001(2)

40

i s thp phn sang nh phn


Chuyn i phn nguyn (tip):

Cch 2: phn tch s thnh tng cc ly tha ca 2, sau da vo cc s m xc nh dng biu din nh phn.
V d: 105 = 64 + 32 + 8 + 1 = 26 + 25 + 23 + 20 105(10) = 1101001(2)

Chuyn i phn l:

Nhn phn l vi 2 ri ly phn nguyn ... Sau vit cc phn nguyn theo chiu thun.
V d: chuyn i s 0.6875(10) sang h nh phn: 0.6875 x 2 = 1.3750 phn nguyn 0.375 x2 = 0.750 phn nguyn 0.75 x2 = 1.50 phn nguyn 0.5 x2 = 1.0 phn nguyn Kt qu l: 0.6875(10) = 0.1011(2) = = = = 1 0 1 1

41

3. H mi su (Hexa)
S dng 16 ch s, k hiu nh sau:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

Dng vit gn cho s nh phn.

42

Mt s v d
Nh phn Hexa: Hexa Nh phn: Thp phn Hexa: 11 1011 1110 0110(2) = 3BE6(16) 3E8(16) = 11 1110 1000(2) 14988 ?
12 tc l C 8 10 tc l A 3

14988 : 16 = 936 d 936 : 16 = 58 d 58 : 16 = 3 d 3 : 16 = 0 d Nh vy, ta c: 14988(10) = 3A8C(16)

Hexa Thp phn:

3A8C ?

3A8C (16) = 3 x 163 + 10 x 162 + 8 x 161 +12 x 160 = 12288 + 2560 + 128 + 12 = 14988(10)

43

Cng tr s Hexa

44

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

45

M ha v lu tr d liu

1. Nguyn tc chung v m ha d liu 2. Lu tr thng tin trong b nh chnh

46

1. Nguyn tc chung v m ha d liu Mi d liu a vo my tnh u phi c m ha thnh s nh phn. Cc loi d liu :

D liu nhn to: do con ngi quy c D liu t nhin: tn ti khch quan vi con ngi

47

Nguyn tc m ha d liu
M ha d liu nhn to:

D liu s nguyn: m ha theo chun qui c D liu s thc: m ha bng s du chm ng D liu k t: m ha theo b m k t

48

Nguyn tc m ha d liu (tip)


M ha d liu t nhin:

Ph bin l cc tn hiu vt l nh m thanh, hnh nh, ... Cc d liu t nhin cn phi c s ha (digitalized) trc khi a vo trong my tnh. S m ha v ti to tn hiu vt l:

49

di t d liu
di t d liu:

L s bit c s dng m ha loi d liu tng ng Trong thc t, di t d liu thng l bi s ca 8 bit, v d: 8, 16, 32, 64 bit

50

2. Lu tr thng tin trong b nh chnh B nh chnh thng c t chc theo Byte di t d liu c th chim 1 hoc nhiu Byte Cn phi bit th t lu tr cc byte trong b nh chnh:

Lu tr kiu u nh (Little-endian) Lu tr kiu u to (Big-endian)

Little-endian: Byte c ngha thp hn c lu tr trong b nh v tr c a ch nh hn. Big-endian: Byte c ngha thp hn c lu tr trong b nh v tr c a ch ln hn.

51

V d

Intel 80x86, Pentium: Little-endian Motorola 680x0, cc b x l RISC: Big-endian Power PC, Itanium: h tr c hai (Bi-endian)
52

Bi tp
D liu 16 bit c gi tr l 5B9D c lu tr vo b nh chnh t chc theo kiu Little-endian bt u t byte nh c a ch l 1234. Hy xc nh ni dung cc byte nh cha lu tr d liu di dng nh phn.

53

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

54

Biu din s nguyn

1. S nguyn khng du 2. S nguyn c du 3. Biu din s nguyn theo m BCD

55

1. S nguyn khng du
Dng tng qut: gi s dng n bit biu din cho mt s nguyn khng du A: an-1an-2...a3a2a1a0 Gi tr ca A c tnh nh sau:

A = an -1 2 n -1 + an - 2 2 n - 2 + ... + a1 21 + a0 20 A = ai 2
i =0 n -1 i

Di biu din ca A: t 0 n 2n-1

56

Cc v d
V d 1. Biu din cc s nguyn khng du sau y bng 8 bit: A = 45 B = 156 Gii: A = 45 = 32 + 8 + 4 + 1 = 25 + 23 + 22 + 20 A = 0010 1101 B = 156 = 128 + 16 + 8 + 4 = 27 + 24 + 23 + 22 B = 1001 1100
57

Cc v d (tip)
V d 2. Cho cc s nguyn khng du X, Y c biu din bng 8 bit nh sau: X = 0010 1011 Y = 1001 0110 Gii: X = 0010 1011 = 25 + 23 + 21 + 20 = 32 + 8 + 2 + 1 = 43 Y = 1001 0110 = 27 + 24 + 22 + 21 = 128 + 16 + 4 + 2 = 150
58

Trng hp c th: vi n = 8 bit


Di biu din l [0, 255]
0000 0000 0000 0001 0000 0010 0000 0011 ..... 1111 1111 = = = = = 0 1 2 3 255

Trc s hc my tnh:

Trc s hc:

59

Vi n = 8 bit
Kiu d liu tng ng trong Turbo C l kiu unsigned char. V d:
unsigned char a; a = 255; a = a + 1; printf(%d,a); //Kt qu sai l 0 1111 1111 + 0000 0001 1 0000 0000 KQ sai: 255 + 1 = 0 ? (do php cng b nh ra ngoi)

60

Vi n = 16 bit, 32 bit, 64 bit


n = 16 bit:

Di biu din l [0, 65535] Kiu d liu tng ng trong Turbo C l kiu unsigned int V d:
unsigned int a; a = 0xffff; a = a + 1; printf(%d,a);

n = 32 bit:

Di biu din l [0, 232-1] Di biu din l [0, 264-1]


61

n = 64 bit:

2. S nguyn c du
a. Khi nim v s b S b chn v s b mi (h thp phn):

Gi s c mt s nguyn thp phn A c biu din bi n ch s thp phn. Khi ta c:


S b chn ca A = (10n - 1) - A S b mi ca A = 10n - A NX: S b mi = S b chn + 1

V d:
Xt n = 4 ch s, A = 2874 S b chn ca A = (104 - 1) - 2874 = 7125 S b mi ca A = 104 - 2874 = 7126

62

Khi nim v s b
S b mt v s b hai (h nh phn):

Gi s c mt s nguyn nh phn A c biu din bi n bit. Khi ta c:


S b mt ca A = (2n - 1) - A S b hai ca A = 2n - A NX: S b hai = S b mt + 1

V d:
Xt n = 4 bit, A = 0110 S b mt ca A = (24 - 1) - 0110 = 1001 S b hai ca A = 24 - 0110 = 1010

63

Nhn xt
C th tm s b mt ca A bng cch o tt c cc bit ca A S b hai ca A = S b mt ca A + 1

64

Nhn xt
V d: cho A S b mt ca A

=0110 0101 =1001 1010 + 1 =1001 1011

S b hai ca A Nhn xt S b hai ca

A = 0110 0101 A += 1001 1011 1 0000 0000 = 0 (b qua bit nh ra ngoi)

->S b hai ca A=-A


65

Biu din s nguyn c du


b. Biu din s nguyn c du bng s b hai Dng n bit biu din s nguyn c du A: an-1an-2...a2a1a0 Vi s dng:
Bit an-1 = 0 Cc bit cn li biu din ln ca s dng

Dng tng qut ca s dng: 0an-2...a2a1a0 Gi tr ca s dng:

A = ai 2i
i =0

n-2

Di biu din ca s dng: [0, 2n-1-1]

66

Biu din s nguyn c du (tip)


Vi s m:
c biu din bng s b hai ca s dng tng ng Bit an-1 = 1

Dng tng qut ca s m: 1an-2...a2a1a0 Gi tr ca s m:

A = -2

n -1

+ ai 2i
i =0

n -2 -2

Di biu din ca s m: [-2n-1, -1]

Di biu din ca s nguyn c du n bit l [-2n-1, 2n-1-1]

67

Biu din s nguyn c du (tip)


Dng tng qut ca s nguyn c du A: an-1an-2...a2a1a0 Gi tr ca A c xc nh nh sau:
A = -an -1 2 n -1 + ai 2i
i =0 n-2

Di biu din: [-2n-1, 2n-1-1]

68

Cc v d
V d 1. Biu din cc s nguyn c du sau y bng 8 bit A = +50 B = -70 Gii: A = +50 = 32 + 16 + 2 = 25 + 24 + 21 A = 0011 0010 B = -70 Ta c: +70 = 64 + 4 + 2 = 26 + 22 + 21 +70 = 0100 0110 S b 1 = 1011 1001 + 1 S b 2 = 1011 1010 B = 1011 1010
69

Cc v d (tip)
V d 2. Xc nh gi tr ca cc s nguyn c du 8 bit sau y: A = 0101 0110 B = 1101 0010 Gii: A = 26 + 24 + 22 + 21 = 64 + 16 + 4 + 2 = +86 B = -27 + 26 + 24 + 21 = -128 + 64 + 16 + 2 = -46

70

Trng hp c th: vi n = 8 bit


Di biu din l [-128, +127]
0000 0000 = 0000 0001 = 0000 0010 = .. 0111 1111 = 1000 0000 = 1000 0001 = ..... 1111 1110 = 1111 1111 = 0 +1 +2 +127 -128 -127 -2 -1
-1 -2 0 +1 +2

Trc s hc my tnh:

-128

+127

Trc s hc:

71

Vi n = 8 bit (tip)
Kiu d liu tng ng trong Turbo C l kiu char. V d:
char a; a = 127; a = a + 1; printf(%d,a); //Kt qu sai l -128 0111 1111 + 0000 0001 1000 0000 KQ sai: 127 + 1 = -128 ? (do php cng b trn s hc)

72

Vi n = 16 bit, 32 bit, 64 bit


n = 16 bit:

Di biu din l [-32768, +32767] Kiu d liu tng ng trong Turbo C l kiu int Di biu din l [-231, 231-1] Kiu d liu tng ng trong Turbo C l kiu long int Di biu din l [-263, 263-1]

n = 32 bit:

n = 64 bit:

73

Chuyn t 8 bit sang 16 bit


Vi s dng: +35 = 0010 0011 (8 bit) +35 = 0000 0000 0010 0011 (16 bit) Thm 8 bit 0 vo bn tri Vi s m: -79 = 1011 0001 (8 bit) -79 = 1111 1111 1011 0001 (16 bit) Thm 8 bit 1 vo bn tri Kt lun: m rng sang bn tri 8 bit bng bit du
74

3. Biu din s nguyn theo m BCD BCD Binary Coded Decimal (M ha s nguyn thp phn bng nh phn) Dng 4 bit m ha cho cc ch s thp phn t 0 n 9
0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001

C 6 t hp khng s dng: 1010, 1011, 1100, 1101, 1110, 1111


75

V d v s BCD
35 0011 0101BCD 79 0111 1001BCD 2281 0010 0010 1000 0001BCD 1304 0001 0011 0000 0100BCD

76

Php cng s BCD


35 0011 0101BCD + 24 + 0010 0100BCD 59 0101 1001BCD Kt qu ng (khng phi hiu chnh) 89 1000 1001BCD + 52 + 0101 0010BCD 141 1101 1011 kt qu sai + 0110 0110 hiu chnh 0001 0100 0001BCD kt qu ng 1 4 1

Hiu chnh: cng thm 6 nhng hng c nh


77

Cc kiu lu tr s BCD
BCD dng nn (Packed BCD): Hai s BCD c lu tr trong 1 Byte.

V d s 52 c lu tr nh sau:

BCD dng khng nn (Unpacked BCD): Mi s BCD c lu tr trong 4 bit thp ca mi Byte.

V d s 52 c lu tr nh sau:

78

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

79

Cc php ton s hc vi s nguyn

1. 2. 3. 4. 5.

B cng Cng s nguyn khng du Cng/tr s nguyn c du Nhn s nguyn Chia s nguyn

80

1. B cng
B cng 1 bit ton phn (Full Adder)

81

B cng (tip)
B cng n bit

82

2. Cng s nguyn khng du


Nguyn tc: S dng b cng n bit cng 2 s nguyn khng du n bit, kt qu nhn c cng l n bit.

Nu khng c nh ra khi bit cao nht (Cout=0) th kt qu nhn c l ng. Nu c nh ra khi bit cao nht (Cout=1) th kt qu nhn c l sai, khi xy ra hin tng nh ra ngoi.

Hin tng nh ra ngoi (Carry-out) xy ra khi tng ca 2 s nguyn khng du n bit > 2n-1

83

VD cng s nguyn khng du 8 bit


Trng hp khng xy ra carry-out:
X = 1001 0110 = 150 Y = 0001 0011 = 19 S = 1010 1001 = 169 Cout = 0

Trng hp c xy ra carry-out:
X = 1100 0101 = 197 Y = 0100 0110 = 70 S = 0000 1011 267 Cout = 1 carry-out (KQ sai = 23 + 21 + 20 = 11)

unsigned char x, y, s; x = 197; y = 70; s = x + y; printf(%d,s);

84

3. Cng/tr s nguyn c du
Khi cng hai s nguyn c du n bit, ta khng quan tm n bit Cout v kt qu nhn c cng l n bit.

Cng hai s khc du: kt qu lun ng Cng hai s cng du:


Nu tng nhn c cng du vi 2 s hng th kt qu l ng Nu tng nhn c khc du vi 2 s hng th xy ra hin tng trn s hc (Overflow) v kt qu nhn c l sai

Trn s hc xy ra khi tng thc s ca hai s nm ngoi di biu din ca s nguyn c du n bit: [-2n-1, 2n-1-1]

85

Php tr s nguyn c du
Nguyn tc thc hin php tr:

Ta c: X Y = X + (-Y) Cch thc hin: ly X cng vi s b 2 ca Y

n-bit B hai

n-bit

B cng n-bit n-bit

S
86

V d cng 2 s nguyn c du (khng trn)

87

V d cng 2 s nguyn c du (Overflow)

88

4. Nhn s nguyn

a. Nhn s nguyn khng du b. Nhn s nguyn c du

89

a. Nhn s nguyn khng du

Cc tch ring phn c xc nh nh sau:


Nu bit ca s nhn = 0 tch ring phn = 0 Nu bit ca s nhn = 1 tch ring phn = s b nhn Tch ring phn tip theo c dch tri 1 bit so vi tch ring phn trc

Tch = tng cc tch ring phn Nhn 2 s nguyn n bit, tch c di 2n bit khng trn
90

B nhn s nguyn khng du

91

Lu thc hin
Bt u

C, A S b nhn Q S nhn B m n

Q0 = 1 ?

C, A

Dch phi C, A, Q B m B m - 1

B m = 0 ?

Kt thc

92

V d nhn s nguyn khng du


M Q C 0 0 0 0 0 0 1 0 = 1011 (11 - S b nhn) = 1101 (13 - S nhn) = 1000 1111 (143 - Tch) A 0000 + 1011 1011 0101 0010 + 1011 1101 0110 + 1011 0001 1000 Q 1101 1101 1110 1111 1111 1111 1111 1111 Cc gi tr khi u A A + M Dch phi Dch phi A A + M Dch phi A A + M Dch phi

93

b. Nhn s nguyn c du
S dng thut gii nhn khng du:

Bc 1: Chuyn i s nhn v s b nhn thnh s dng tng ng. Bc 2: Nhn 2 s bng thut gii nhn s nguyn khng du c tch 2 s dng. Bc 3: Hiu chnh du ca tch:
Nu 2 tha s ban u cng du th tch nhn c bc 2 l kt qu cn tnh. Nu 2 tha s ban u khc du nhau th kt qu l s b 2 ca tch nhn c bc 2.

94

Nhn s nguyn c du
S dng thut gii Booth:

Vi s nhn dng:
Ta c: 2i + 2i-1 + + 2j = 2i+1 - 2j (vi ij) VD: M * 01110010 = M * (27 24 + 22 21) Quy tc: duyt t tri sang phi:

Nu gp 10 th tr A i M ri dch phi Nu gp 01 th cng A vi M ri dch phi Nu gp 00 hay 11 th ch dch phi

Vi s nhn m:
Ta c: 1110ak-1ak-2a0 = -2n-1 + 2n-2 + + 2k+1 + ak-12k-1 + + a020 = -2n-1 + 2n-1 - 2k+1 + ak-12k-1 + + a020 -2k+1 ng vi bit 10 nn vn m bo quy tc TH trn
95

Lu thc hin thut ton Booth


A Q Q-1 Bt u

A Q-1 S b nhn Q S nhn B m n = 10 = 01

Q0Q-1 = 00 / 11

Dch phi A, Q, Q-1 (Gi nguyn bit du ca A) B m B m - 1 S

B m = 0 ?

Kt thc

96

V d v thut ton Booth

97

5. Chia s nguyn

a. Chia s nguyn khng du b. Chia s nguyn c du

98

a. Chia s nguyn khng du


V d:

99

B chia s nguyn khng du

100

Lu thc hin
Bt u

A S chia Q S b chia B m 0

Dch tri A, Q

A<0?

Q0

Q0 A

B m

B m - 1

B m = 0 ?

Kt thc

101

b. Chia s nguyn c du
Bc 1: Chuyn i s chia v s b chia thnh s dng tng ng Bc 2: S dng thut gii chia s nguyn khng du chia 2 s dng, kt qu nhn c l thng Q v phn d R u dng Bc 3: Hiu chnh du kt qu theo quy tc sau:

102

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

103

Biu din s thc

1. Khi nim v s du chm tnh 2. Khi nim v s du chm ng 3. Chun IEEE 754/85

104

Biu din s thc


Quy c: "du chm" (point) c hiu l k hiu ngn cch gia phn nguyn v phn l ca 1 s thc. C 2 cch biu din s thc trong my tnh:

S du chm tnh (fixed-point number):


Du chm l c nh (s bit dnh cho phn nguyn v phn l l c nh) Dng trong cc b vi x l hay vi iu khin th h c.

S du chm ng (floating-point number):


Du chm khng c nh Dng trong cc b vi x l hin nay, c chnh xc cao hn.

105

1. Khi nim v s du chm tnh


S bit dnh cho phn nguyn v s bit phn l l c nh. Gi s rng:

U(a,b) l tp cc s du chm tnh khng du c a bit trc du chm v b bit sau du chm. A(a,b) l tp cc s du chm tnh c du c a bit (khng k bit du) trc du chm v b bit sau du chm.

106

S du chm tnh khng du


Khong xc nh ca s du chm tnh khng du: [0, 2a - 2-b] V d:

Dng 8 bit m ha cho kiu s du chm tnh, trong c 2 bit dnh cho phn l. Khong xc nh ca kiu d liu ny l: 0 R 26 2-2 = 63.75 VD: gi tr ca 101011.11 = 10101111 x 2-2 = 43.75

107

S du chm tnh c du
Khong xc nh ca s du chm tnh c du: [-2a, 2a - 2-b] V d:

Dng 8 bit biu din s chm tnh c du vi a=5, b=2 Ta c tp cc s chm tnh thuc A(5,2) nm trong khong: [-25, 25 2-2] hay [-32, 31.75]

108

c im ca s du chm tnh
Cc php ton thc hin nhanh. chnh xc khi thc hin cc php ton khng cao, c bit l vi php tnh nhn. V d:

Khi thc hin php nhn ta cn phi c thm mt s lng bit nht nh biu din kt qu. i vi s khng du: U(a1, b1) x U(a2, b2) = U(a1 + a2, b1 + b2) i vi s c du: A(a1, b1) x A(a2, b2) = A(a1 + a2 + 1, b1 + b2)

109

2. Khi nim v s du chm ng


Floating Point Number biu din cho s thc Mt s thc X c biu din theo kiu s du chm ng nh sau: X = M * RE Trong :

M l phn nh tr (Mantissa) R l c s (Radix) E l phn m (Exponent)

Vi R c nh th lu tr X ta ch cn lu tr M v E (di dng s nguyn)


110

3. Chun IEEE 754/85


L chun m ha s du chm ng C s R = 2 C cc dng c bn:

Dng c chnh xc n, 32-bit Dng c chnh xc kp, 64-bit Dng c chnh xc kp m rng, 80-bit

Khun dng m ha:

111

Khun dng m ha
S l bit du, S=0 l s dng, S=1 l s m. e l m lch (excess) ca phn m E, tc l: E = e b Trong b l lch (bias):

Dng 32-bit : b = 127, hay E = e - 127 Dng 64-bit : b = 1023, hay E = e - 1023 Dng 80-bit : b = 16383, hay E = e - 16383

m l cc bit phn l ca phn nh tr M, phn nh tr c ngm nh nh sau: M = 1.m Cng thc xc nh gi tr ca s thc tng ng l: X = (-1)S x 1.m x 2e-b

112

V d v s du chm ng
V d 1: C mt s thc X c dng biu din nh phn theo chun IEEE 754 dng 32 bit nh sau: 1100 0001 0101 0110 0000 0000 0000 0000 Xc nh gi tr thp phn ca s thc . Gii:

S = 1 X l s m e = 1000 0010 = 130 m = 10101100...00 Vy X = (-1)1 x 1.10101100...00 x 2130-127 = -1.101011 x 23 = -1101.011 = -13.375
113

V d v s du chm ng (tip)
V d 2: Xc nh gi tr thp phn ca s thc X c dng biu din theo chun IEEE 754 dng 32 bit nh sau: 0011 1111 1000 0000 0000 0000 0000 0000 Gii:

114

V d v s du chm ng (tip)
V d 3: Biu din s thc X = 9.6875 v dng s du chm ng theo chun IEEE 754 dng 32 bit Gii: X = 9.6875(10) = 1001.1011(2) = 1.0011011 x 23 Ta c:

S = 0 v y l s dng E = e 127 nn e = 127 + 3 = 130(10) = 1000 0010(2) m = 001101100...00 (23 bit)

Vy: X = 0100 0001 0001 1011 0000 0000 0000 0000


115

Cc quy c c bit
Nu tt c cc bit ca e u bng 0, cc bit ca m u bng 0, th X = 0 Nu tt c cc bit ca e u bng 1, cc bit ca m u bng 0, th X = Nu tt c cc bit ca e u bng 1, m c t nht mt bit bng 1, th X khng phi l s (not a number - NaN)

116

Trc s biu din

Dng 32 bit: a = 2-127 10-38 Dng 64 bit: a = 2-1023 10-308 Dng 80 bit: a = 2-16383 10-4932

b = 2+127 10+38 b = 2+1023 10+308 b = 2+16383 10+4932

117

Thc hin cc php ton


X1 = M1 * RE1 X2 = M2 * RE2 Ta c

X1 X2 = (M1 * RE1-E2 M2) * RE2 , vi E2 E1 X1 * X2 = (M1 * M2) * RE1+E2 X1 / X2 = (M1 / M2) * RE1-E2

118

Cc kh nng trn s
Trn trn s m (Exponent Overflow): m dng vt ra khi gi tr cc i ca s m dng c th. Trn di s m (Exponent Underflow): m m vt ra khi gi tr cc i ca s m m c th. Trn trn phn nh tr (Mantissa Overflow): cng hai phn nh tr c cng du, kt qu b nh ra ngoi bit cao nht. Trn di phn nh tr (Mantissa Underflow): Khi hiu chnh phn nh tr, cc s b mt bn phi phn nh tr.
119

Php cng v php tr


Kim tra cc s hng c bng 0 hay khng

Nu c th gn kt qu da trn s cn li. Sao cho 2 s c phn m ging nhau: tng s m nh v dch phi phn nh tr tng ng (dch phi hn ch sai s nu c). VD: 1.01 * 23 + 1.11 = 1.01 * 23 + 0.00111 * 23 Nu trn th dch phi v tng s m, nu b trn s m th bo li trn s. Dch tri phn nh tr bit tri nht (bit MSB) khc 0. Tng ng vi vic gim s m nn c th dn n hin tng trn di s m.
120

Hiu chnh phn nh tr

Cng hoc tr phn nh tr

Chun ha kt qu

Ni dung chng 2

2.1. Cc h m c bn 2.2. M ha v lu tr d liu trong my tnh 2.3. Biu din s nguyn 2.4. Cc php ton s hc vi s nguyn 2.5. Biu din s thc 2.6. Biu din k t

121

Biu din k t trong my tnh

1. B m ASCII (American Standard Code for Information Interchange) 2. B m Unicode

122

1. B m ASCII
Do ANSI (American National Standard Institute) thit k L b m 8 bit m ha c cho 28 = 256 k t, c m t 0016 FF16, bao gm:

128 k t chun c m t 0016 7F16 128 k t m rng c m t 8016 FF16

123

HEXA 0 1 2 3 4 5 6 7 8 9 A B C D E F

0 <NUL> 0 <SOH> 1 <STX> 2 <ETX> 3 <EOT> 4 <ENQ> 5 <ACK> 6 <BEL> 7 <BS> 8 <HT> 9 <LF> 10 <VT> 11 <FF> 12 <CR> 13 <SO> 14 <SI> 15

1 <DLE> 16 <DC1> 17 <DC2> 18 <DC3> 19 <DC4> 20 <NAK> 21 <SYN> 22 <ETB> 23 <CAN> 24 <EM> 25 <SUB> 26 <ESC> 27 <FS> 28 <GS> 29 <RS> 30 <US> 31

2 <space> 32 ! 33 " 34 # 35 $ 36 % 37 & 38 ' 39 ( 40 ) 41 * 42 + 43 , 44 45 . 46 / 47

3 0 48 1 49 2 50 3 51 4 52 5 53 6 54 7 55 8 56 9 57 : 58 ; 59 < 60 = 61 > 62 ? 63

4 @ 64 A 65 B 66 C 67 D 68 E 69 F 70 G 71 H 72 I 73 J 74 K 75 L 76 M 77 N 78 O 79

5 P 80 Q 81 R 82 S 83 T 84 U 85 V 86 W 87 X 88 Y 89 Z 90 [ 91 \ 92 ] 93 ^ 94 95

6 ` 96 a 97 b 98 c 99 d 100 e 101 f 102 g 103 h 104 i 105 j 106 k 107 l 108 m 109 n 110 o 111

7 p 112 q 113 r 114 s 115 t 116 u 117 v 118 w 119 x 120 y 121 z 122 { 123 | 124 } 125 ~ 126 <DEL> 127

124

a. Cc k t chun
95 k t hin th c: c m t 2016 7E16

26 ch ci hoa Latin 'A' 'Z' c m t 4116 5A16 26 ch ci thng Latin 'a' 'z' c m t 6116 7A16 10 ch s thp phn '0' '9' c m t 3016 3916 Cc du cu: . , ? ! : ; Cc du php ton: + - * / Mt s k t thng dng: #, $, &, @, ... Du cch (m l 2016)

33 m iu khin: m t 0016 1F16 v 7F16 dng m ha cho cc chc nng iu khin


125

iu khin nh dng
Backspace - Li li mt v tr: K t iu khin con tr li li mt v tr. Horizontal Tab - Tab ngang: K t iu khin con tr dch tip mt khong nh trc. Line Feed - Xung mt dng: K t iu khin con tr chuyn xung dng di. Vertical Tab - Tab ng: K t iu khin con tr chuyn qua mt s dng nh trc. Form Feed - y sang u trang: K t iu khin con tr di chuyn xung u trang tip theo. Carriage Return - V u dng: K t iu khin con tr di chuyn v u dng hin hnh.

BS HT LF VT FF CR

126

iu khin truyn s liu


SOH STX ETX EOT ENQ ACK NAK SYN ETB Start of Heading - Bt u tiu : K t nh du bt u phn thng tin tiu . Start of Text - Bt u vn bn: K t nh du bt u khi d liu vn bn v cng chnh l kt thc phn thng tin tiu . End of Text - Kt thc vn bn: K t nh du kt thc khi d liu vn bn c bt u bng STX. End of Transmission - Kt thc truyn: Ch ra cho bn thu bit kt thc truyn. Enquiry - Hi: Tn hiu yu cu p ng t mt my xa. Acknowledge - Bo nhn: K t c pht ra t pha thu bo cho pha pht bit rng d liu c nhn thnh cng. Negative Aknowledge - Bo ph nhn: K t c pht ra t pha thu bo cho pha pht bit rng vic nhn d liu khng thnh cng. Synchronous / Idle - ng b ha: c s dng bi h thng truyn ng b ng b ho qu trnh truyn d liu. End of Transmission Block - Kt thc khi truyn: Ch ra kt thc khi d liu c truyn.
127

iu khin phn cch thng tin

FS GS RS US

File Separator - K hiu phn cch tp tin: nh du ranh gii gia cc tp tin. Group Separator - K hiu phn cch nhm: nh du ranh gii gia cc nhm tin (tp hp cc bn ghi). Record Separator - K hiu phn cch bn ghi: nh du ranh gii gia cc bn ghi. Unit Separator - K hiu phn cch n v: nh du ranh gii gia cc phn ca bn ghi.

128

Cc k t iu khin khc
NUL BEL SO SI DLE DC1 DC4 CAN EM SUB ESC DEL Null - K t rng: c s dng in khong trng khi khng c d liu. Bell - Chung: c s dng pht ra ting bp khi cn gi s ch ca con ngi. Shift Out - Dch ra: Ch ra rng cc m tip theo s nm ngoi tp k t chun cho n khi gp k t SI. Shift In - Dch vo: Ch ra rng cc m tip theo s nm trong tp k t chun. Data Link Escape - Thot lin kt d liu: K t s thay i ngha ca mt hoc nhiu k t lin tip sau . Device Control - iu khin thit b : Cc k t dng iu khin cc thit b ph tr. Cancel - Hy b: Ch ra rng mt s k t nm trc n cn phi b qua. End of Medium - Kt thc phng tin: Ch ra k t ngay trc n l k t cui cng c tc dng vi phng tin vt l. Substitute - Thay th: c thay th cho k t no c xc nh l b li. Escape - Thot: K t c dng cung cp cc m m rng bng cch kt hp vi k t sau . Delete - Xa: Dng xa cc k t khng mong mun.
129

b. Cc k t m rng
c nh ngha bi:

Nh ch to my tnh Ngi pht trin phn mm B m k t m rng ca IBM: c dng trn my tnh IBM-PC. B m k t m rng ca Apple: c dng trn my tnh Macintosh. Cc nh pht trin phn mm ting Vit cng thay i phn ny m ho cho cc k t ring ca ch Vit, v d nh b m TCVN 5712.
130

V d:

2. B m Unicode
Do cc hng my tnh hng u thit k L b m 16-bit c thit k cho a ngn ng, trong c ting Vit

131

Bi tp 1
Gi s c cc bin nh di y cha cc s nguyn c du 8-bit vi ni dung biu din theo h 16 nh sau: P = 3A Q = 7C R = DE S = FF Hy xc nh gi tr ca cc bin nh di dng s thp phn.

132

Bi tp 2
Gi s c X thuc kiu s nguyn c du 16-bit, n c gn gi tr di dng thp phn bng -1234. Hy cho bit ni dung ca cc byte nh cha bin di dng Hexa, bit rng b nh lu tr theo kiu u nh (little-endian).

133

Bi tp 3
Gi s c bin P cha s nguyn c du 16 bit. Ni dung ca bin P c cho trong b nh nh sau:

Hy xc nh gi tr ca bin P di dng thp phn.


134

Bi tp 4
Gi s c mt bin s thc X c biu din bng s du chm ng theo chun IEEE 754 dng 32 bit, n chim 4 byte trong b nh vi ni dung c ch ra hnh v sau.

Bit rng b nh t chc theo kiu u nh (little-endian), hy xc nh gi tr thp phn ca s thc .


135

Bi tp 5
Gi s c bin X thuc kiu s du chm ng theo chun IEEE 754 dng 32 bit. N c gn gi tr di dng thp phn bng -124.125 v lu tr vo b nh bt u t byte nh c a ch l 200. Hy cho bit ni dung ca cc byte nh cha bin di dng Hexa, bit rng b nh lu tr theo kiu u nh (little-endian).

136

Kin trc my tnh

Chng 3 H THNG MY TNH

137

Ni dung chng 3

3.1. Cu trc v hot ng c bn ca my tnh 3.2. B x l trung tm 3.3. B nh my tnh 3.4. H thng vo ra 3.5. Gii thiu h iu hnh

138

Cu trc v hot ng c bn ca my tnh

Cu trc c bn ca my tnh Lin kt h thng Hot ng c bn ca my tnh Cu trc mt my tnh c nhn in hnh

139

3.1.1 Cu trc c bn ca my tnh B x l trung tm B nh H thng vo-ra Lin kt h thng (Central Processing Unit) (Memory) (Input-Output System) (System Interconnection)

140

B x l trung tm (CPU)
Chc nng:

iu khin hot ng ca ton b h thng my tnh X l d liu

Nguyn tc hot ng c bn: CPU hot ng theo chng trnh nm trong b nh chnh, bng cch:

Nhn ln lt tng lnh t b nh chnh, Sau tin hnh gii m lnh v pht cc tn hiu iu khin thc thi lnh. Trong qu trnh thc thi lnh, CPU c th trao i d liu vi b nh chnh hay h thng vo-ra.

141

Cu trc c bn ca CPU

142

Cc thnh phn c bn ca CPU


n v iu khin (Control Unit - CU): iu khin hot ng ca my tnh theo chng trnh nh sn. n v s hc v logic (Arithmetic and Logic Unit - ALU): thc hin cc php ton s hc v cc php ton logic trn cc d liu c th. Tp thanh ghi (Register File - RF): lu gi cc thng tin tm thi phc v cho hot ng ca CPU. Bus bn trong (Internal Bus): kt ni cc thnh phn bn trong CPU vi nhau. n v ni ghp bus (Bus Interface Unit - BIU) kt ni v trao i thng tin vi nhau gia bus bn trong (internal bus) vi bus bn ngoi (external bus).
143

Tc ca b x l
Tc ca b x l:

S lnh c thc hin trong 1 giy MIPS (Millions of Instructions per Second) Kh nh gi chnh xc B x l hot ng theo mt xung nhp (Clock) c tn s xc nh Tc ca b x l c nh gi gin tip thng qua tn s ca xung nhp

Tn s xung nhp ca b x l:

144

Tc ca b x l (tip)
Dng xung nhp:

T0: chu k xung nhp Mi thao tc ca b x l mt mt s nguyn ln chu k T0 T0 cng nh th b x l chy cng nhanh Tn s xung nhp: f0=1/T0 gi l tn s lm vic ca CPU VD: My tnh dng b x l Pentium IV 2GHz Ta c: f0 = 2GHz = 2 x 109Hz T0 = 1/f0 = 1 / (2 x 109) = 0,5 ns

145

B nh my tnh
Chc nng: lu tr chng trnh v d liu Cc thao tc c bn vi b nh:

Thao tc c (Read) Thao tc ghi (Write) B nh trong (Internal Memory) B nh ngoi (External Memory)

Cc thnh phn chnh:


146

Cc thnh phn b nh my tnh

CPU

B nh trong

B nh ngoi

147

B nh trong
Chc nng v c im:

Cha cc thng tin m CPU c th trao i trc tip Tc rt nhanh Dung lng khng ln S dng b nh bn dn: ROM v RAM B nh chnh B nh cache (b nh m nhanh)

Cc loi b nh trong:

148

B nh chnh (Main Memory)


L thnh phn nh tn ti trn mi h thng my tnh Cha cc chng trnh v d liu ang c CPU s dng T chc thnh cc ngn nh c nh a ch Ngn nh thng c t chc theo Byte Ni dung ca ngn nh c th thay i, song a ch vt l ca ngn nh lun c nh Thng thng, b nh chnh bao gm 2 phn:

B nh RAM B nh ROM

149

B nh m nhanh (Cache memory)


L thnh phn nh tc nhanh c t m gia CPU v b nh chnh nhm tng tc truy cp b nh ca CPU. Tc ca cache nhanh hn b nh chnh nhng dung lng nh hn. Cache thng c chia ra thnh mt s mc: cache L1, cache L2, ... Hin nay cache c tch hp trn cc chip vi x l. Cache c th c hoc khng.
150

B nh ngoi
Chc nng v c im:

Lu gi ti nguyn phn mm ca my tnh, bao gm: h iu hnh, cc chng trnh v cc d liu B nh ngoi c kt ni vi h thng di dng cc thit b vo-ra Dung lng ln Tc chm B nh t: a cng, a mm B nh quang: a CD, DVD B nh bn dn: Flash disk, memory card
151

Cc loi b nh ngoi:

H thng vo-ra (Input-Output)


Chc nng: Trao i thng tin gia my tnh vi th gii bn ngoi. Cc thao tc c bn:

Vo d liu (Input) Ra d liu (Output) Cc thit b ngoi vi (Peripheral Devices) Cc m-un ni ghp vo-ra (IO Modules)

Cc thnh phn chnh:


152

Cu trc c bn ca h thng vo-ra

153

Cc thit b ngoi vi
Chc nng: chuyn i d liu gia bn trong v bn ngoi my tnh Cc loi thit b ngoi vi c bn:

Thit b vo: bn phm, chut, my qut ... Thit b ra: mn hnh, my in ... Thit b nh: cc a ... Thit b truyn thng: modem ...

154

M-un vo-ra
Chc nng: ni ghp thit b ngoi vi vi my tnh Khi nim cng vo-ra:

Trong mi m-un vo-ra c mt hoc mt vi cng vora (I/O Port). Mi cng vo-ra cng c nh mt a ch xc nh. Thit b ngoi vi c kt ni v trao i d liu vi bn trong my tnh thng qua cc cng vo-ra.

155

Lin kt h thng

Lung thng tin trong my tnh Cu trc bus c bn Phn cp bus trong my tnh

156

Lung thng tin trong my tnh


Cc m-un trong my tnh:

CPU M-un nh M-un vo-ra

cn c kt ni vi nhau

157

Kt ni m-un nh

a ch D liu T/h 8/khin c T/h 8/khin ghi Module nh

D liu hoc lnh

158

Kt ni m-un vo-ra
a ch DL n TBNV DL t bn trong MT DL t TBNV T/h o/khin c T/h o/khin ghi Module vo-ra Cc t/h o/khin ngt DL n bn trong MT

159

Kt ni CPU

Lnh D liu CPU Cc t/h U/khin ngt

a ch D liu Cc t/h U/khin b nh v vo-ra

160

Nhn xt
C 4 loi thng tin:

a ch D liu Lnh Thng tin iu khin

161

Cu trc bus c bn
Khi nim chung v bus:

Bus: tp hp cc ng kt ni dng vn chuyn thng tin gia cc thnh phn ca my tnh vi nhau. rng bus: l s ng dy ca bus c th truyn thng tin ng thi. Tnh bng bit. Phn loi cu trc bus:
Cu trc n bus Cu trc a bus

162

Bus ng b v bus khng ng b


Bus ng b:

C ng tn hiu Clock Cc s kin xy ra trn bus c xc nh bi xung nhp Clock. Khng c ng tn hiu Clock Mt s kin trn bus kt thc s kch hot s kin tip theo.

Bus khng ng b:

163

Cu trc n bus

164

Bus a ch (Address bus)


Chc nng: vn chuyn a ch t CPU n mun nh hay m-un vo-ra xc nh ngn nh hay cng vo-ra m CPU cn trao i thng tin. rng bus a ch: xc nh dung lng b nh cc i ca h thng. Nu rng bus a ch l N bit (gm N ng dy AN-1, AN-2, ... , A2, A1, A0) th:
c kh nng vn chuyn c N bit a ch ng thi c kh nng nh a ch ti a c 2N ngn nh = 2N Byte gi l khng gian a ch b nh.

165

V d
rng bus a ch ca mt s b x l ca Intel

8088/8086 : N = 20 bit KGCBN = 220 Byte = 1 MB 80286 : N = 24 bit KGCBN = 224 Byte = 16 MB 80386, 80486, Pentium : N = 32 bit KGCBN = 232 Byte = 4 GB Pentium II, III, 4 : N = 36 bit KGCBN = 236 Byte = 64 GB

166

Bus d liu (Data bus)


Chc nng:

Vn chuyn lnh t b nh n CPU Vn chuyn d liu gia CPU, cc m-un nh v mun vo-ra vi nhau

rng bus d liu: Xc nh s bit d liu c th c trao i ng thi.

Nu rng bus d liu l M bit (gm M ng dy DM-1, DM-2, ... , D2, D1, D0) th ngha l ng bus d liu c th vn chuyn ng thi c M bit d liu M thng l 8, 16, 32, 64 bit

167

V d
rng bus d liu ca mt s b x l ca Intel:

8088 : M = 8 bit 8086, 80286 : M = 16 bit 80386, 80486 : M = 32 bit Cc b x l Pentium : M = 64 bit

168

Bus iu khin (Control bus)


Chc nng: vn chuyn cc tn hiu iu khin Cc loi tn hiu iu khin:

Cc tn hiu iu khin pht ra t CPU iu khin mun nh hay m-un vo-ra Cc tn hiu yu cu t m-un nh hay m-un vo-ra gi n CPU

169

V d
Cc tn hiu pht ra t CPU iu khin c/ghi:

Memory Read (MEMR): iu khin c d liu t mt ngn nh c a ch xc nh ln bus d liu. Memory Write (MEMW): iu khin ghi d liu c sn trn bus d liu n mt ngn nh c a ch xc nh. I/O Read (IOR): iu khin c d liu t mt cng vora c a ch xc nh ln bus d liu. I/O Write (IOW): iu khin ghi d liu c sn trn bus d liu ra mt cng c a ch xc nh.

170

V d (tip)
Cc tn hiu iu khin ngt:

Interrupt Request (INTR): Tn hiu t b iu khin vora gi n yu cu ngt CPU trao i vo-ra. Tn hiu INTR c th b che. Interrupt Acknowledge (INTA): Tn hiu pht ra t CPU bo cho b iu khin vo-ra bit CPU chp nhn ngt. Non Maskable Interrupt (NMI): tn hiu ngt khng che c gi n ngt CPU. Reset: Tn hiu t bn ngoi gi n CPU v cc thnh phn khc khi ng li my tnh.

171

V d (tip)
Cc tn hiu iu khin bus:

Bus Request (BRQ) / Hold: Tn hiu t b iu khin vo-ra chuyn dng gi n yu cu CPU chuyn nhng quyn s dng bus. Bus Grant (BGT) / Hold Acknowledge: Tn hiu pht ra t CPU chp nhn chuyn nhng quyn s dng bus. Lock: Tn hiu kha khng cho xin chuyn nhng bus. Unlock: Tn hiu m kha cho xin chuyn nhng bus.

172

c im ca cu trc n bus
Tt c cc thnh phn cng ni vo mt ng bus chung Ti mt thi im, bus ch phc v c mt yu cu trao i d liu Bus phi c tc bng tc ca thnh phn nhanh nht trong h thng Bus ph thuc vo cu trc bus ca b x l cc m-un nh v cc m-un vo-ra cng ph thuc vo b x l c th. Cn phi thit k bus phn cp hay cu trc a bus
173

Phn cp bus trong my tnh


Phn cp thnh nhiu bus khc nhau cho cc thnh phn:

Bus ca b x l Bus ca b nh chnh Cc bus vo-ra

Phn cp bus khc nhau v tc Cc bus ni ghp vi m-un nh v m-un vo-ra khng ph thuc vo b x l c th.

174

Cc bus in hnh trong my PC


Bus ca b x l (Front Side Bus FSB): c tc nhanh nht Bus ca b nh chnh (ni ghp vi cc m-un nh RAM) AGP bus (Accelerated Graphic Port) cng tng tc ha: ni ghp vi card mn hnh PCI bus (Peripheral Component Interconnect): ni ghp vi cc TBNV c tc trao i d liu nhanh. USB (Universal Serial Bus): bus ni tip a nng IDE (Integrated Drive Electronics): bus kt ni vi a cng hoc a quang (CD, DVD, )

175

VD 1: H thng Pentium III

176

VD 2: Pentium 4 dng chipset 865PE


B chipset Intel 865PE gm c hai con chip 82865PE (MCH) v 82801ER (ICH5-R):

Chip Intel 82865PE MCH h tr CPU Pentium 4 s dng cng ngh siu phn lung (Hyper Threading HT), b nh DDR400, mode Dual Channel (ring chip 82865G (MCH) ca b chipset i865G th tch hp c nhn x l ha Intel Extreme Graphics 2). Chip Intel 82801ER (ICH5-R) tch hp cc b iu khin (controller) cc thit b I/O nh Ultra ATA 100, Serial ATA- RAID-0, USB 2.0, m thanh AC'97 c 6 knh, LAN, EHCI, ASF, ...

177

VD 2 (tip)

178

3.1.2. Hot ng c bn ca my tnh Thc hin chng trnh X l ngt Hot ng vo ra

179

Thit k bus
Cc kiu bus Phn x bus nh thi bus

180

Cc kiu bus
Bus dnh ring (dedicated bus)

Cc ng d liu v a ch tch ri u im: iu khin n gin Nhc im: c nhiu ng kt ni

Bus dn knh (Multiplexed)


Cc ng dng chung cho a ch v d liu C ng iu khin phn bit c a ch hay c d liu u im: c t ng dy Nhc im: iu khin phc tp hn, hiu nng hn ch

181

Phn x bus
C nhiu m-un iu khin bus v d: CPU v b iu khin vo-ra Ch cho php mt m-un iu khin bus mt thi im. Phn x bus c th l tp trung hay phn tn.

182

Phn x bus
Phn x bus tp trung
C mt B iu khin bus (Bus Controller) hay cn gi l B phn x bus (Arbiter) C th l mt phn ca CPU hoc mch tch ri.

Phn x bus phn tn


Mi mt m-un c th chim bus C ng iu khin n tt c cc mun khc

183

nh thi bus
Phi hp cc s kin trn bus Bus ng b

Cc s kin trn bus c xc nh bi mt tn hiu xung nhp xc nh (clock) Bus iu khin bao gm c ng Clock Tt c cc m-un c th c ng clock

Bus khng ng b
Khng c ng tn hiu Clock Kt thc mt s kin ny trn bus s kch hot cho mt s kin tip theo

184

Thc hin chng trnh Nguyn tc hot ng:

Chng trnh ang c thc hin phi nm trong b nh chnh ca my tnh. Thc hin chng trnh l lp i lp li chu trnh lnh gm hai bc:
Nhn lnh Thc thi lnh

Thc hin chng trnh b dng nu b li nghim trng khi thc thi lnh hoc gp lnh dng chng trnh

185

Chu trnh lnh


Bt u

Nhn lnh

Thc thi lnh

Dng
186

Nhn lnh
Bt u mi chu trnh lnh, CPU s nhn lnh t b nh chnh a vo bn trong CPU. Bn trong CPU c 2 thanh ghi lin quan trc tip n qu trnh nhn lnh:

Thanh ghi b m chng trnh (Program Counter - PC): cha a ch ca lnh s c nhn vo. Thanh ghi lnh (Instruction Register - IR): lnh c nhn t b nh chnh s c np vo IR.

187

Nhn lnh (tip)


Hot ng nhn lnh din ra nh sau:

CPU pht a ch ca lnh cn nhn t PC n b nh chnh CPU pht tn hiu iu khin c b nh chnh (MEMR Memory Read) Lnh t b nh chnh c chuyn vo IR Ni dung ca PC t ng tng tr sang lnh k tip nm ngay sau lnh va c nhn.

188

Minh ha qu trnh nhn lnh


B nh chnh CPU Lnh PC 302 Lnh Lnh i Lnh i+1 IR Lnh Lnh 300 301 302 303 304 305 IR Lnh i PC 303 CPU Lnh Lnh Lnh i Lnh i+1 Lnh Lnh 300 301 302 303 304 305 B nh chnh

Trc khi nhn lnh i

Sau khi nhn lnh i

189

Thc thi lnh


Lnh nm IR s c chuyn sang n v iu khin (Control Unit). n v iu khin s tin hnh gii m lnh v pht cc tn hiu iu khin thc thi thao tc m lnh yu cu. Cc kiu thao tc ca lnh:

Trao i d liu gia CPU v b nh chnh Trao i d liu gia CPU v m-un vo-ra X l d liu: thc hin cc php ton s hc hoc php ton logic vi cc d liu iu khin r nhnh Kt hp cc thao tc trn
190

Hot ng ngt
Khi nim chung v ngt (Interrupt): Ngt l c ch cho php CPU tm dng chng trnh ang thc hin chuyn sang thc hin mt chng trnh khc, gi l chng trnh con phc v ngt. Cc loi ngt:

Ngt do li khi thc hin chng trnh, v d: trn s, chia cho 0 Ngt do li phn cng, v d: li b nh RAM Ngt do tn hiu yu cu t m-un vo-ra gi n CPU yu cu trao i d liu

191

Chu trnh x l ngt


c thm vo cui chu trnh lnh Sau khi hon thnh mt lnh, CPU kim tra xem c yu cu ngt gi n hay khng

Nu khng c tn hiu yu cu ngt th CPU nhn lnh k tip Nu c yu cu ngt v ngt c chp nhn th:
CPU ct ng cnh hin ti ca chng trnh ang thc hin (cc thng tin lin quan n chng trnh b ngt) CPU chuyn sang thc hin chng trnh con phc v ngt tng ng Kt thc chng trnh con , CPU khi phc li ng cnh v tr v tip tc thc hin chng trnh ang tm dng
192

Hot ng ngt (tip)


B t u

N h n l nh

T h c h i n l nh

D ng

K im tra c n g t h a y kh ng ?

C h u y n n ch u n g trn h i u kh i n n g t
193

Hot ng ngt (tip)

194

X l vi nhiu tn hiu yu cu ngt


X l ngt tun t:

Khi mt ngt ang c thc hin, cc ngt khc s b cm B x l s b qua cc ngt tip theo trong khi ang x l mt ngt Cc ngt vn ang i v c kim tra sau khi ngt u tin c x l xong Cc ngt c thc hin tun t

195

X l ngt tun t (tip)

196

X l vi nhiu tn hiu yu cu ngt


X l ngt u tin:

Cc ngt c nh ngha mc u tin khc nhau Ngt c mc u tin thp hn c th b ngt bi ngt u tin cao hn ngt xy ra lng nhau

197

X l ngt u tin

198

Hot ng vo-ra
L hot ng trao i d liu gia thit b ngoi vi vi bn trong my tnh. Cc kiu hot ng vo-ra:

CPU trao i d liu vi m-un vo-ra M-un vo-ra trao i d liu trc tip vi b nh chnh

199

3.1.3. Cu trc ca MTCN in hnh

S khi Cc linh kin trn bn mch chnh Cc thit b ngoi vi c bn

200

S khi

201

S khi (tip)
Hp my tnh (Case):

Bn mch chnh (Mainboard):


B vi x l B nh h thng: chip nh ROM v cc module nh RAM Cc vi mch iu khin tng hp (chipset) Cc khe cm m rng Cc knh truyn tn hiu (bus)

Cc loi a: a cng, a mm, a quang, ... Cc cng vo-ra B ngun v qut Mn hnh (monitor), bn phm (keyboard), chut (mouse), loa (speaker), my in (printer), my qut nh (scanner), modem, ...
202

Cc thit b ngoi vi (Peripheral Devices):

Hp my tnh (Case)

203

Cc loi a

204

Cc cng vo-ra

205

B ngun v qut

206

Cc linh kin trn bn mch chnh

207

B vi x l

208

B nh h thng

209

Cc khe cm m rng

210

Cc thit b ngoi vi c bn

211

Cc thit b ngoi vi (tip)

212

Cc thit b ngoi vi (tip)

213

Cc thit b ngoi vi (tip)

214

3.2. B x l trung tm

3.2.1. Cu trc c bn ca CPU 3.2.2. Tp lnh 3.2.3. Hot ng ca CPU

215

3.2.1. Cu trc c bn ca CPU

216

1. n v iu khin (CU)
Chc nng:

iu khin nhn lnh t b nh a vo thanh ghi lnh v tng ni dung ca PC tr sang lnh k tip. Gii m lnh nm trong thanh ghi lnh xc nh thao tc cn thc hin v pht ra tn hiu iu khin thc hin lnh . Nhn tn hiu yu cu t bus h thng v p ng vi cc yu cu .

217

n v iu khin (tip)
M hnh kt ni ca n v iu khin:
Thanh ghi lnh

Cc c

Clock Tn hiu yu cu t bus h thng

n v iu khin

Tn hiu iu khin bn trong CPU

Tn hiu iu khin n bus h thng


Bus iu khin
218

n v iu khin (tip)
Cc tn hiu a n n v iu khin:

M lnh t thanh ghi lnh a n gii m Cc c t thanh ghi c cho bit trng thi ca CPU Xung clock t b to xung bn ngoi cung cp cho n v iu khin lm vic Cc tn hiu yu cu t bus iu khin

219

n v iu khin (tip)
Cc tn hiu pht ra t n v iu khin:

Cc tn hiu iu khin bn trong CPU:


iu khin cc thanh ghi iu khin hot ng ca ALU

Cc tn hiu iu khin bn ngoi CPU:


iu khin b nh chnh iu khin cc module vo-ra

220

2. n v s hc v logic (ALU)
Chc nng: Thc hin cc php ton s hc v cc php ton logic.

S hc: cng, tr, nhn, chia, tng, gim, o du, Logic: AND, OR, XOR, NOT, cc php dch v quay bit

221

n v s hc v logic (tip)
M hnh kt ni ca ALU:

222

3. Tp thanh ghi (RF)

a. Chc nng v phn loi b. Mt s thanh ghi in hnh

223

a. Chc nng v phn loi


Chc nng:

L tp hp cc thanh ghi nm trong CPU Cha cc thng tin tm thi phc v cho hot ng hin ti ca CPU.

224

Phn loi tp thanh ghi


Phn loi theo kh nng can thip ca ngi lp trnh:

Cc thanh ghi khng lp trnh c: ngi lp trnh khng can thip c Cc thanh ghi lp trnh c: ngi lp trnh can thip c Thanh ghi a ch: qun l a ch ca ngn nh hay cng vo-ra Thanh ghi d liu: cha cc d liu tm thi hoc kt qu trung gian phc v cho vic x l d liu ca CPU Thanh ghi iu khin v trng thi: cha cc thng tin iu khin v trng thi ca CPU Thanh ghi lnh: cha lnh ang c thc hin Thanh ghi a nng: c th cha a ch hoc d liu

Phn loi theo chc nng:


225

b. Mt s thanh ghi in hnh


Cc thanh ghi a ch

B m chng trnh (Program Counter PC) Con tr d liu (Data Pointer DP) Con tr ngn xp (Stack Pointer SP) Thanh ghi c s v thanh ghi ch s (Base Register & Index Register)

Cc thanh ghi d liu Thanh ghi trng thi

226

Cc vng nh c bn ca CT
Chng trnh ang thc hin phi nm trong b nh chnh v n chim 3 vng nh c bn sau:

Vng nh lnh (Code): cha cc lnh ca chng trnh. Vng d liu (Data): cha d liu ca chng trnh. Thc cht y l ni cp pht cc ngn nh cho cc bin nh. Vng ngn xp (Stack): l vng nh c cu trc LIFO (Last In First Out) dng ct gi thng tin v sau c th khi phc li. Thng dng cho vic thc hin cc chng trnh con.

227

B m chng trnh (PC)


Cn gi l con tr lnh (Instruction Pointer - IP) L thanh ghi cha a ch ca lnh tip theo s c nhn vo. Sau khi mt lnh c nhn vo th ni dung ca PC t ng tng tr sang lnh k tip nm ngay sau lnh va c nhn.

228

Minh ha hot ng ca PC

229

Thanh ghi con tr d liu (DP)


Cha a ch ca ngn nh d liu m CPU mun truy cp. Thng c mt s thanh ghi con tr d liu.

230

Minh ha hot ng ca DP

231

Con tr ngn xp (SP)


Cha a ch ca ngn nh nh ngn xp (ngn xp c chiu t y ln nh ngc vi chiu tng ca a ch) Khi ct thm mt thng tin vo ngn xp:

Ni dung ca SP t ng gim Thng tin c ct vo bt u t ngn nh tr bi SP Thng tin c ly ra bt u t ngn nh tr bi SP Ni dung ca SP t ng tng

Khi ly mt thng tin ra khi ngn xp:


Khi ngn xp rng: SP tr vo y ngn xp


232

Minh ha hot ng ca SP

Ngn xp (Stack)

Ngn xp (Stack)

nh Stack c SP nh Stack mi SP

nh Stack mi nh Stack c

y Stack

y Stack

Khi ly 1 thng tin ra khi ngn xp, SP t ng tng

Khi ct 1 thng tin vo ngn xp, SP t ng gim

233

Thanh ghi c s v thanh ghi ch s


Thanh ghi c s: cha a ch ca ngn nh c s (a ch c s). Thanh ghi ch s: cha lch a ch gia ngn nh m CPU cn truy cp so vi ngn nh c s (ch s). a ch ca ngn nh cn truy cp = a ch c s + ch s

234

Minh ha thanh ghi c s v ch s

B nh chnh

Thanh ghi c s

Ngn nh c s

Thanh ghi ch s

Ngn nh cn truy cp

235

Cc thanh ghi d liu


Cha cc d liu tm thi hoc cc kt qu trung gian phc v cho vic x l d liu ca CPU Cn c nhiu thanh ghi d liu Cc thanh ghi s nguyn: 8, 16, 32, 64 bit Cc thanh ghi s du chm ng

236

Thanh ghi trng thi


Cn gi l thanh ghi c (Flag Register) Cha cc thng tin trng thi ca CPU

Cc c php ton: biu th trng thi ca kt qu php ton Cc c iu khin: iu khin ch lm vic ca CPU

237

V d c php ton
C Zero (ZF - c rng): c thit lp ln 1 khi kt qu ca php ton va thc hin xong bng 0. C Sign (SF - c du): c thit lp ln 1 khi kt qu ca php ton va thc hin nh hn 0, hay ni cch khc, c Sign nhn gi tr bng bit du ca kt qu. C Carry (CF - c nh): c thit lp ln 1 nu php ton xy ra hin tng carry-out. C Overflow (OF - c trn): c thit lp ln 1 nu php ton xy ra hin tng overflow.
238

V d c iu khin
C Interrupt (IF - c cho php ngt):

Nu IF = 1 th CPU trng thi cho php ngt vi tn hiu yu cu ngt t bn ngoi gi ti. Nu IF = 0 th CPU trng thi cm ngt vi tn hiu yu cu ngt t bn ngoi.

239

Bi tp
Gi s c cc bin nh a, b, c, d, e, f thuc kiu s nguyn c du 8 bit. Cc bin a, b c gn gi tr nh sau: a:=-58 b:=72 Hy biu din cc php tnh sau y di dng s nh phn v cho bit kt qu dng thp phn cng vi gi tr ca cc c ZF, SF, CF, OF tng ng. c:=a-b d:=a+b e:=b-a f:=-a-b

240

B x l trung tm

3.2.1. Cu trc c bn ca CPU 3.2.2. Tp lnh 3.2.3. Hot ng ca CPU

241

3.2.2. Tp lnh

1. Gii thiu chung v tp lnh 2. Cc kiu thao tc in hnh 3. Cc phng php a ch ha ton hng

242

1. Gii thiu chung v tp lnh


Mi b x l c mt tp lnh xc nh (mang tnh k tha trong cng mt dng h). Tp lnh thng c hng chc n hng trm lnh. Mi lnh l mt chui s nh phn m b x l hiu c thc hin mt thao tc xc nh. Cc lnh c m t bng cc k hiu gi nh cc lnh hp ng.

243

Khun dng ca mt lnh my


M thao tc Tham chiu ton hng

M thao tc (Operation Code - Opcode): m ha cho thao tc m CPU phi thc hin. Tham chiu ton hng: m ha cho ton hng hoc ni cha ton hng m thao tc s tc ng.

Ton hng ngun (Source Operand): d liu vo ca thao tc (CPU s c) Ton hng ch (Destination Operand): d liu ra ca thao tc (CPU s ghi)

244

S lng ton hng trong lnh


Ba ton hng:

2 ton hng ngun, 1 ton hng ch VD: c = a + b T lnh di v phi m ha a ch cho c 3 ton hng Thng c s dng trn cc b x l tin tin 1 ton hng l ton hng ngun, ton hng cn li va l ngun va l ch. VD: a = a + b Gi tr c ca 1 ton hng ngun s b ghi bng KQ Rt gn di t lnh Thng c dng ph bin
245

Hai ton hng:

S lng ton hng trong lnh (tip)


Mt ton hng:

Ch c 1 ton hng c ch ra trong lnh Ton hng cn li c ngm nh, thng l thanh ghi (VD: thanh cha Accumulator) Thng c s dng trn cc b x l th h c Cc ton hng u c ngm nh S dng Stack VD: lnh c = a + b
push push add pop a b c

Khng c ton hng:


Khng thng dng

246

2. Cc kiu thao tc in hnh


Chuyn d liu X l s hc vi s nguyn X l logic iu khin vo-ra Chuyn iu khin (r nhnh) iu khin h thng

247

Cc lnh chuyn d liu

MOVE LOAD STORE EXCHANGE CLEAR SET PUSH POP

Copy d liu t ngun n ch Copy d liu t b nh n b x l Copy d liu t b x l n b nh Tro i ni dung ca ngun v ch Chuyn cc bit 0 vo ton hng ch Chuyn cc bit 1 vo ton hng ch Copy d liu t ngun n nh ngn xp Copy d liu t nh ngn xp n ch

248

Cc lnh s hc

ADD SUBTRACT MULTIPLY DIVIDE ABSOLUTE NEGATE INCREMENT DECREMENT COMPARE

Tnh tng hai ton hng Tnh hiu hai ton hng Tnh tch hai ton hng Tnh thng hai ton hng Thay ton hng bng tr tuyt i ca n i du ton hng (ly b 2) Cng 1 vo ton hng Tr ton hng i 1 So snh hai ton hng lp c

249

Cc lnh logic

AND OR XOR NOT TEST SHIFT ROTATE CONVERT

Thc hin php AND hai ton hng Thc hin php OR hai ton hng Thc hin php XOR hai ton hng o bit ca ton hng (ly b 1) Thc hin php AND hai ton hng lp c Dch tri (phi) ton hng Quay tri (phi) ton hng Chuyn i d liu t dng ny sang dng khc

250

VD cc lnh AND, OR, XOR, NOT


Gi s c hai thanh ghi cha d liu nh sau: (R1) = 1010 1010 (R2) = 0000 1111 Khi ta c: (R1) AND (R2) = 0000 1010

Php ton AND c th c dng xo mt s bit v gi nguyn cc bit cn li ca ton hng.

(R1) OR (R2)

= 1010 1111 = 1010 0101 = 0101 0101


251

Php ton OR c th c dng thit lp mt s bit v gi nguyn cc bit cn li ca ton hng. Php ton XOR c th c dng o mt s bit v gi nguyn cc bit cn li ca ton hng.

(R1) XOR (R2)

NOT (R1)

Php ton NOT dng o tt c cc bit ca ton hng.

Cc lnh SHIFT v ROTATE

252

Cc lnh vo-ra chuyn dng

IN OUT

Copy d liu t mt cng xc nh n ch Copy d liu t ngun n mt cng xc nh

253

Cc lnh chuyn iu khin

JUMP (BRANCH) JUMP CONDITIONAL CALL RETURN

Nhy (r nhnh) khng iu kin; np vo PC mt a ch xc nh Kim tra iu kin xc nh, hoc np vo PC mt a ch xc nh hoc khng khng lm g c Ct ni dung PC vo ngn xp, np vo PC a ch xc nh nhy n thc hin chng trnh con Khi phc ni dung PC t nh ngn xp tr v chng trnh chnh

254

Lnh r nhnh khng iu kin


Chuyn ti thc hin lnh v tr c a ch l XXX: PC XXX

255

Lnh r nhnh c iu kin


Kim tra iu kin trong lnh:

Nu iu kin ng chuyn ti thc hin lnh v tr c a ch XXX PC XXX Nu iu kin sai chuyn sang thc hin lnh_k_tip

iu kin thng c kim tra thng qua cc c. C nhiu lnh r nhnh c iu kin.

256

Minh ha lnh r nhnh c iu kin

lnh lnh lnh_r_nhnh_k XXX lnh_k_tip lnh lnh ... XXX lnh lnh lnh

257

Lnh CALL v RETURN


Lnh gi chng trnh con: lnh CALL

Ct ni dung PC (cha a ch ca lnh_k_tip) vo Stack Np vo PC a ch ca lnh u tin ca chng trnh con c gi B x l chuyn sang thc hin chng trnh con tng ng Ly a ch ca lnh_k_tip c ct Stack np tr li cho PC B x l c iu khin quay tr v thc hin tip lnh nm sau lnh CALL
258

Lnh tr v t chng trnh con: lnh RETURN

Minh ha lnh CALL v RETURN

lnh lnh CALL lnh lnh ... CTCon lnh u tin ca CTCon lnh lnh ... RETURN CTCon lnh_k_tip

259

Cc lnh iu khin h thng

HALT WAIT

NO OPERATION (NOP) LOCK UNLOCK

Dng thc hin chng trnh Dng thc hin chng trnh, lp kim tra iu kin cho n khi tho mn th tip tc thc hin Khng thc hin g c Cm khng cho xin chuyn nhng bus Cho php xin chuyn nhng bus

260

3. Cc phng php a ch ha ton hng

Phng php a ch ha ton hng l cch thc ch ra ni cha cc ton hng m thao tc s tc ng. Ton hng c th l:

Hng s cn cho bit gi tr ca hng s Ni dung ca mt thanh ghi bn trong CPU cn cho bit tn ca thanh ghi Ni dung ca mt ngn nh cn cho bit a ch ngn nh Ni dung ca mt cng vo-ra cn cho bit a ch ca cng vo-ra
261

Cc ch a ch thng dng
Ch a ch tc th Ch a ch thanh ghi Ch a ch trc tip Ch a ch gin tip qua thanh ghi Ch a ch dch chuyn

262

Ch a ch tc th

Immediate Addressing Mode Ton hng l mt hng s ngay trong lnh V d: ADD AX, 5 ; AX AX + 5 Truy nhp ton hng rt nhanh

263

Ch a ch thanh ghi
Register Addressing Mode Ton hng l ni dung ca mt thanh ghi m tn thanh ghi c cho bit trong lnh. V d: MOV AX, BX ; AX BX Tc truy cp nhanh hn so vi nhng lnh c truy cp n b nh.

264

Ch a ch trc tip
Direct Addressing Mode Ton hng l ni dung ca mt ngn nh m a ch ngn nh c cho trc tip trong lnh. V d: MOV AL, [1000] ; AL ni dung byte nh c a ch l 1000

265

Ch a ch gin tip qua thanh ghi

Register Indirect Addressing Mode V d: MOV AL, [BX] ; AL ni dung ca byte nh c a ch bng gi tr ca thanh ghi BX
266

Ch a ch dch chuyn
Displacement Addressing Mode Trng a ch cha 2 thnh phn:

Tn thanh ghi Hng s

a ch ca ton hng = ni dung thanh ghi + hng s Thanh ghi c th c ngm nh

267

Minh ha ch a ch dch chuyn

268

Cc dng ch a ch dch chuyn


a ch ha tng i vi PC:

Thanh ghi l PC VD: cc lnh chuyn iu khin Thanh ghi l thanh ghi c s (cha a ch c s) Hng s l ch s Thanh ghi l thanh ghi ch s (cha ch s) Hng s l a ch c s

nh a ch c s:

nh a ch ch s:

269

3.2. B x l trung tm

3.2.1. Cu trc c bn ca CPU 3.2.2. Tp lnh 3.3.3. Hot ng ca CPU

270

3.2.3. Hot ng ca CPU

1. Chu trnh lnh 2. ng ng lnh

271

1. Chu trnh lnh


Bao gm cc cng on chnh sau y:

Nhn lnh Gii m lnh Nhn ton hng Thc hin lnh Ct ton hng Ngt

272

Gin trng thi chu trnh lnh

273

Nhn lnh
CPU a a ch ca lnh cn nhn t thanh ghi b m chng trnh PC ra bus a ch CPU pht tn hiu iu khin c b nh Lnh t b nh c t ln bus d liu v c CPU copy vo trong thanh ghi lnh IR CPU tng ni dung ca PC tr sang lnh k tip

274

Minh ha qu trnh nhn lnh

CPU PC

n v iu khin

B nh

IR

PC : B m chng trnh IR : Thanh ghi lnh

Bus a ch

Bus Bus d iu liu khin

275

Gii m lnh
Lnh t thanh ghi lnh IR c a n n v iu khin n v iu khin tin hnh gii m lnh xc nh thao tc cn phi thc hin

276

Nhn ton hng


CPU a a ch ca ton hng ra bus a ch CPU pht tn hiu iu khin c Ton hng c chuyn vo trong CPU

277

Nhn ton hng gin tip


CPU a a ch ra bus a ch CPU pht tn hiu iu khin c Ni dung ngn nh c chuyn vo CPU, chnh l a ch ca ton hng CPU pht a ch ny ra bus a ch CPU pht tn hiu iu khin c Ni dung ca ton hng c chuyn vo CPU

278

Minh ha nhn ton hng gin tip

CPU MAR

n v iu khin

B nh

MBR

MAR (Memory Address Register) : Thanh ghi a ch b nh MBR (Memory Buffer Register): Thanh ghi m b nh

Bus a ch

Bus Bus d iu liu khin

279

Thc hin lnh


C nhiu dng thao tc ty thuc vo lnh C th l:

c/ghi b nh Vo-ra d liu Chuyn d liu gia cc thanh ghi Thc hin php ton s hc hoc logic Chuyn iu khin (r nhnh)

280

Ghi ton hng


CPU a a ch ra bus a ch CPU a d liu cn ghi ra bus d liu CPU pht tn hiu iu khin ghi D liu trn bus d liu c copy n v tr xc nh

281

Minh ha qu trnh ghi ton hng

CPU MAR

n v iu khin

B nh

MBR

MAR : Thanh ghi a ch b nh MBR : Thanh ghi m b nh

Bus a ch

Bus Bus d iu liu khin

282

Ngt
CPU lu li gi tr hin ti ca PC (l a ch tr v sau khi hon thnh ngt) thng lu vo Stack:

CPU a ni dung ca PC ra bus d liu CPU a a ch (thng c xc nh t con tr ngn xp SP) ra bus a ch CPU pht tn hiu iu khin ghi b nh a ch tr v (ni dung ca PC) trn bus d liu c lu vo ngn nh tng ng ngn xp

CPU np vo PC a ch lnh u tin ca chng trnh con phc v ngt tng ng:

CPU xc nh a ch ca vector ngt tng ng CPU pht a ch ny ra bus a ch CPU pht tn hiu iu khin c b nh Gi tr ca vector ngt (a ch lnh u tin ca CTC phc v ngt) c chuyn ra bus d liu Gi tr ny c np vo trong PC
283

2. ng ng lnh
Nguyn tc ca Pipeline: chia chu trnh lnh thnh cc cng on v cho php thc hin gi ln nhau theo kiu dy chuyn. Gi s chu trnh lnh gm 6 cng on vi thi gian thc hin nh nhau (T):

Nhn lnh (Fetch Instruction FI) Gii m lnh (Decode Instruction DI) Tnh /ch ton hng (Calculate Operand Address CO) Nhn ton hng (Fetch Operands FO) Thc hin lnh (Execute Instruction EI) Ghi ton hng (Write Operands WO)
284

Biu thi gian ca ng ng lnh

1 Lnh 1 Lnh 2 Lnh 3 Lnh 4 Lnh 5 Lnh 6 FI

2 DI FI

3 CO DI FI

4 FO CO DI FI

5 EI FO CO DI FI

6 WO EI FO CO DI FI

10

11

12

WO EI FO CO DI WO EI FO CO WO EI FO WO EI WO

285

Cc xung t ca ng ng lnh
Xung t cu trc: do nhiu cng on dng chung mt ti nguyn Xung t d liu: lnh sau s dng kt qu ca lnh trc Xung t iu khin: do r nhnh gy ra

286

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

287

3.2.4. Cc k thut tin tin


Cu trc chung ca cc b vi x l tin tin Cc kin trc song song mc lnh Kin trc RISC

288

Cu trc chung b vi x l tin tin

289

Cc n v x l
Cc n v s nguyn Cc n v s du phy ng Cc n v chc nng c bit

n v x l d liu m thanh n v x l d liu hnh nh n v x l d liu vector

290

B nh cache
c tch hp trn chip vi x l Bao gm hai mc cache

Cache L1: gm hai mc tch ri


Cache lnh Cache d liu

Cache L2: chung cho lnh v d liu

291

n v qun l b nh
Chuyn i a ch o thnh a ch vy l Cung cp c ch phn trang, phn on Cung cp ch bo v b nh

292

Cc kin trc song song mc lnh Siu ng ng (Superpipeline & HyperPipeline) Siu v hng (Superscalar) VLIW (Very long instruction word)

293

Superpipeline

294

Superscalar

295

VLIW (Very Long instruction word)

296

Kin trc RISC


CISC: Complex Instruction Set computer

My tnh vi tp lnh phc tp Cc b x l truyn thng: x86, 6800 My tnh c tp lnh rt gn V d: kin trc vi x l ARM, MIPS

RISC: Reduced Instruction Set Computer


297

Cc c trng ca RISC
S lng lnh t Hu ht cc lnh truy xut ton hng thanh ghi Truy cp b nh bng cc lnh load/store C gng t c thit k ti u m bo thi gian thc hin mt lnh l u nhau v bng mt chu k my Cc lnh c di c nh (VD: kin trc ARM,MIPS, mi lnh u c di l 32 bit) CPU c tp thanh ghi ln C t ch a ch hn CISC c thit k kiu pipeline lnh 298

3.3.1. Tng quan h thng nh


1. Cc c trng ca h thng nh 2. Phn cp h thng nh ca my tnh

299

1. Cc c trng ca h thng nh
V tr:

Bn trong CPU: tp thanh ghi B nh trong: b nh chnh v cache B nh ngoi: cc thit b nh di t nh (tnh bng bit) S lng t nh Theo tng t nh Theo tng khi (block) nh Truy cp tun t (bng t) Truy cp trc tip (cc loi a) Truy cp ngu nhin (b nh bn dn) Truy cp lin kt (cache)
300

Dung lng:

n v truyn:

Phng php truy cp:


Cc c trng ca h thng nh
Hiu nng:

Thi gian truy cp Chu k nh Tc truyn B nh bn dn B nh t B nh quang Kh bin (mt in th mt thng tin) / Khng kh bin Xa c / Khng xa c

Kiu vt l:

Cc c tnh vt l:

T chc
301

2. Phn cp h thng nh ca MT
B vi x l CPU B nh Cache L1

Tp thanh ghi

B nh Cache L2

B nh chnh

B nh ngoi
B nh mng

Dung lng -, tc , tn sut CPU truy cp , gi thnh / bit thng tin ,


302

H thng nh ca my tnh (tip)


Tp thanh ghi (Registers):

L thnh phn nh nm trong CPU, c coi l mc nh u tin Cha cc thng tin phc v cho hot ng thi im hin ti ca CPU B nh c tc nhanh c t gia CPU v b nh chnh nhm tng tc truy cp b nh ca CPU. Thng c chia thnh mt vi mc (L1, L2) Cha cc chng trnh v d liu ang c s dng. Cha cc ti nguyn phn mm ca my tnh.

B nh m nhanh (Cache):

B nh chnh (Main Memory):

B nh ngoi (External Memory):

303

Pht hin v hiu chnh li


Nguyn tc chung: cn to ra v lu tr cc thng tin d tha

T d liu cn ghi vo b nh: m bit To ra thm t m: k bit -> Lu tr (m+k) bit Khng pht hin thy d liu li Pht hin thy d liu li v c th hiu chnh li Pht hin thy li nhng khng c kh nng hiu chnh -> cn pht ra tn hiu bo li
304

Khi c d liu ra c cc kh nng sau


S pht hin v hiu chnh li

305

M sa li Hamming

306

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

307

3.3.2. B nh bn dn

1. Phn loi 2. M hnh c bn ca chip nh

308

1. Phn loi
Gm 2 loi chnh: ROM v RAM ROM (Read Only Memory): b nh ch c c im:

B nh ch yu dng c thng tin B nh khng kh bin Cha cc chng trnh v d liu c nh vi h thng

309

ROM (tip)
Cc loi b nh ROM:

Maskable ROM (ROM mt n): thng tin c ghi khi ch to PROM (Programmable ROM):
Khi ch to cha c thng tin Cho php ghi thng tin c 1 ln bng thit b chuyn dng

EPROM (Erasable PROM):


Cho php xa bng tia cc tm Ghi li bng thit b np EPROM

EEPROM (Electrically Erasable PROM):


C th xa bng tn hiu in v ghi li thng tin ngay trong mch lm vic (khng cn thit b ghi ring) C th xa v ghi li mc tng Byte Dung lng nh

Flash Memory: ging EEPROM nhng:


c/ghi theo tng block Tc rt nhanh Dung lng ln
310

RAM (Random Access Memory)


RAM (Random Access Memory): b nh truy cp ngu nhin c im:

L b nh c/ghi (Read/Write Memory RWM) B nh kh bin Cha cc thng tin tm thi

311

RAM (tip)
Cc loi b nh RAM:

SRAM (Static): RAM tnh


Mi phn t nh l mt mch lt 2 trng thi n nh thng tin trn SRAM n nh Tc nhanh Dung lng chip nh nh Gi thnh t Thng dng lm b nh Cache

DRAM (Dynamic): RAM ng


Mi phn t nh l mt t in rt nh c sau mt khong thi gian th in tch trn t in s b mt, cho nn thng tin trn DRAM khng n nh khc phc bng mch lm ti (refresh) DRAM Tc chm (do mt thi gian lm ti DRAM) Dung lng chip nh ln Gi thnh r Thng dng lm b nh chnh
312

2. M hnh c bn ca chip nh
T nh 0

A0 A1 A2 . . An-1 B gii m a ch . . .

T nh 1 T nh 2

D0 . . B m d liu D1 . . Dm-1

Ma trn nh 2n x m bit

T nh 2n-1

iu khin c/ghi

CS

WE

OE
313

M hnh c bn ca chip nh (tip)


C n chn a ch (An-1 A0) : vn chuyn vo chip nh c n bit a ch ng thi trong chip nh c 2n t nh. C m chn d liu: (Dm-1 D0) : cho php vn chuyn ng thi c m bit d liu di t nh l m bit. Dung lng ca chip nh l: 2n x m bit Cc chn tn hiu iu khin:

CS (Chip Select): tn hiu iu khin chn chip nh lm vic OE (Output Enable): tn hiu iu khin c d liu ca 1 t nh c xc nh. WE (Write Enable): tn hiu iu khin ghi d liu vo 1 t nh c xc nh.

314

Hot ng ca chip nh
Hot ng c:

Cc bit a ch c a n cc chn a ch. Tn hiu iu khin chn chip nh lm vic c a n CS Tn hiu iu khin c a n OE D liu t ngn nh tng ng vi a ch c s c a ra cc chn d liu.

315

Hot ng ca chip nh (tip)


Hot ng ghi:

Cc bit a ch c a n cc chn a ch D liu cn ghi c a n cc chn d liu Tn hiu iu khin chn chip c a n CS Tn hiu iu khin ghi c a n WE D liu t cc chn d liu s c ghi vo ngn nh tng ng.

316

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

317

3.3.3. B nh chnh

1. Cc c trng ca b nh chnh 2. T chc b nh an xen

318

1. Cc c trng ca b nh chnh
L thnh phn nh tn ti trn mi h thng my tnh Cha cc chng trnh ang c thc hin v cc d liu ang c s dng Bao gm cc ngn nh c nh a ch trc tip bi CPU Dung lng vt l ca b nh chnh khng gian a ch b nh m CPU qun l Vic qun l logic b nh chnh ty thuc vo h iu hnh
319

2. T chc b nh an xen
rng ca bus d liu trao i vi b nh chnh M = 8, 16, 32, 64, 128 bit Cc ngn nh c t chc theo tng Byte nh T chc b nh chnh khc nhau

320

M = 8 bit
VD: Intel 8088 BN chnh l 1 bng (bank) nh tuyn tnh

321

M = 16 bit (2 bng nh an xen)


VD: Intel 8086 80286 B nh chnh gm 2 bng (bank) nh an xen
Bng 1 1 3 5 Bng 0 0 2 4

BE1
BE 0

Bus a ch 2i+1 AN-1 A1 2i

BE1
D15 D8 Bus d liu 16 bit D7 D0

BE 0

322

M=32bit (4 bng nh an xen)

323

M=64bit (8 bng nh an xen)

324

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

325

3.3.4. B nh cache
1. 2. 3. 4. 5. Nguyn tc chung ca cache Cc phng php nh x Thut gii thay th Phng php ghi d liu khi cache hit Cache trn cc b x l Intel

326

1. Nguyn tc chung ca cache


Nguyn l cc b ho tham chiu b nh: Trong mt khong thi gian nh CPU thng ch tham chiu cc thng tin trong mt khi nh cc b V d:

Cu trc chng trnh tun t Vng lp c thn nh Cu trc d liu mng

327

1. Nguyn tc chung ca cache (tip)


Cache c tc nhanh hn b nh chnh Cache c t gia CPU v b nh chnh nhm tng tc truy cp b nh ca CPU Cache c th c t trn chip CPU

328

Cu trc chung ca cache / B nh chnh

329

Cu trc chung ca cache / B nh chnh

B nh chnh c 2N byte nh B nh chnh v cache c chia thnh cc khi c kch thc bng nhau

B nh chnh: B0, B1, B2, ... , Bp-1 (p Blocks) B nh cache: L0, L1, L2, ... , Lm-1 (m Lines) Kch thc ca Block = 8,16,32,64,128 byte

330

Cu trc chung ca cache / B nh chnh

Mt s Block ca b nh chnh c np vo cc Line ca cache. Ni dung Tag (th nh) cho bit Block no ca b nh chnh hin ang c cha Line . Khi CPU truy nhp (c/ghi) mt t nh, c hai kh nng xy ra:

T nh c trong cache (cache hit) T nh khng c trong cache (cache miss).

331

2. Cc phng php nh x
nh x trc tip (Direct mapping) nh x lin kt ton phn (Fully associative mapping) nh x lin kt tp hp (Set associative mapping)

332

nh x trc tip
Mi Block ca b nh chnh ch c th c np vo mt Line ca cache:

B0 L0 B1 L1 .... Bm-1 Lm-1 Bm L0 Bm+1 L1 .... Bj ch c th np vo L j mod m m l s Line ca cache.


333

Tng qut

Minh ha nh x trc tip

334

c im ca nh x trc tip
Mi mt a ch N bit ca b nh chnh gm ba trng:

Trng Word gm W bit xc nh mt t nh trong Block hay Line: 2W = kch thc ca Block hay Line Trng Line gm L bit xc nh mt trong s cc Line trong cache: 2L = s Line trong cache = m Trng Tag gm T bit: T = N - (W+L)

B so snh n gin Xc sut cache hit thp


335

nh x lin kt ton phn


Mi Block c th np vo bt k Line no ca cache. a ch ca b nh chnh bao gm hai trng:

Trng Word ging nh trng hp trn. Trng Tag dng xc nh Block ca b nh chnh.

Tag xc nh Block ang nm Line

336

Minh ha nh x lin kt ton phn

337

c im ca nh x lin kt ton phn

So snh ng thi vi tt c cc Tag mt nhiu thi gian Xc sut cache hit cao. B so snh phc tp.

338

nh x lin kt tp hp
Cache c chia thnh cc Tp (Set) Mi mt Set cha mt s Line V d:

4 Line/Set 4-way associative mapping nh x theo nguyn tc sau: B0 S0 B1 S1 B2 S2 ......

339

Minh ha nh x lin kt tp hp

340

c im ca nh x lin kt tp hp

Kch thc Block = 2w Word Trng Set c S bit dng xc nh mt trong s V = 2S Set Trng Tag c T bit: T = N - (W+S) Tng qut cho c hai phng php trn Thng thng 2,4,8,16Lines/Set

341

Thut gii thay th (nh x trc tip)

Khng phi la chn Mi Block ch nh x vo mt Line xc nh Thay th Block Line

342

Thut gii thay th (nh x lin kt)

c thc hin bng phn cng (nhanh) Random: Thay th ngu nhin FIFO (First In First Out): Thay th Block no nm lu nht trong Set LFU (Least Frequently Used): Thay th Block no trong Set c s ln truy nhp t nht trong cng mt khong thi gian LRU (Least Recently Used): Thay th Block trong Set tng ng c thi gian lu nht khng c tham chiu ti. Ti u nht: LRU
343

Phng php ghi d liu khi cache hit

Ghi xuyn qua (Write-through):


ghi c cache v c b nh chnh tc chm ch ghi ra cache tc nhanh khi Block trong cache b thay th cn phi ghi tr c Block v b nh chnh

Ghi tr sau (Write-back):


344

5. Cache trn cc b x l intel


80486: 8KB cache L1 trn chip Pentium: c hai cache L1 trn chip

Cache lnh = 8KB Cache d liu = 8KB Cache L1:


mi cache 8KB Kch thc Line = 64 byte nh x lin kt tp hp 4 ng

Pentium 4: hai mc cache L1 v L2 trn chip

cache L2
256KB Kch thc Line = 128 byte nh x lin kt tp hp 8 ng
345

3.3.5. B nh ngoi

1. 2. 3. 4. 5.

a t a quang Flash disk Cc chun ni ghp a RAID

346

1. a t
Cc c tnh ca a t:

u t c nh hay di ng a c nh hay thay i Mt mt hay hai mt Mt a hay nhiu a C ch u t:


Tip xc Khng tip xc

Gm 2 loi ph bin:

a mm a cng
347

a cng

348

a cng
Mt hoc nhiu a Thng dng Dung lng tng nhanh Tc c/ghi nhanh Tng i r tin

349

a cng (tip)

350

RAID
Redundant Array of Inexpensive Disks Redundant Array of Independent Disks H thng nh dung lng ln

351

c im ca RAID
Tp cc cng vt l c h iu hnh xem nh mt logic duy nht -> dung lng ln D liu c lu tr phn tn trn cc a vt l -> truy cp song song (nhanh) C th s dng dung lng d tha lu tr cc thng tin kim tra chn l, cho php khi phc thng tin -> an ton thng tin C 7 loi RAID ph bin

352

a mm
8, 5.25, 3.5 Dung lng nh ( 1.44MB) Tc chm Thng dng R tin Tng lai c th khng dng na

353

a mm (tip)

354

2. a quang
Cc loi chnh:

CD-ROM (Compact Disk Read Only Memory) CD-R (Recordable CD) CD-RW (Rewriteable CD) DVD (Digital Video Disk)

355

a. CD-ROM
Thng tin c ghi ngay khi sn xut a. D liu tn ti di dng cc mt phng (land) v cc l (pit).

Bit 1 tng ng vi s thay i t mt phng thnh l hay ngc li; cn nhng l hay mt phng ko di (khng c s thay i) tng ng vi bit 0.

Tc c c s ca mt a CD-ROM ban u l 150KB/s (tc 1X). Cc a hin nay c tc c l bi s ca tc c s ny (v d 48X, 52X,...)


356

CD-ROM (tip)

357

b. CD-R
Khi sn xut ra, cc a ny u l a trng (cha c thng tin). Sau c th ghi d liu ln a ny nhng ch ghi c mt ln nh ghi CD-R ring. CD-R c cu trc v hot ng tng t nh CDROM.

Cu to gm nhiu lp, trong lp cha d liu l mt lp mu polymer hu c. Khi b tia laser t chy, lp mu ny chuyn sang mu en v ng vai tr nh cc l (pit) ca CD-ROM.

Cc a CD-R sau khi ghi c th c c t CD-ROM hoc t CD-R. Cc a CD-R cn c gi l WORM (write one read multiple).
358

c. CD-RW
CD-RW c cu trc v hot ng tng t nh CD-R. Trong lp cha d liu l mt lp kim loi. Nguyn tc ghi d liu da trn s thay i trng thi ca lp kim loi:

trng thi tinh th (phn x nh sng - mt phng) v trng thi v nh hnh (khng phn x nh sng vng l trong CD-ROM hay mu b t en trong CD-R).

Qu trnh thay i trng thi ny c th thay i bt k ty theo cng sut laser nn a CD-RW c th c ghi ri xa i ghi li nhiu ln.
359

d. DVD
y l loi a quang c dung lng ln v c tc nhanh hn so vi cc a quang trn. a DVD c th lu tr thng tin trn hai mt, mi mt c th c n 2 lp d liu. Cc a DVD hin nay thng c dung lng l 4.7GB/mt hoc 9.4GB/mt. Tc truy nhp c bn ca a DVD l 1.321MByte/s. DVD cng c nhiu loi

360

3. Flash disk
Thc cht l b nh bn dn tc cao (flash memory) Thng c kt ni vi my tnh thng qua giao tip USB Dung lng tng nhanh Thun tin, gi thnh hp l

361

Flash disk (tip)

362

4. Cc chun ni ghp a
Giao din IDE-ATA (Integrated Drive Electronics AT Attachment):

c IBM thit k ni trc tip cng km mch iu khin vi Bus ca my tnh AT gi l giao din ATA. Sau giao din ny c kt hp vi a v b iu khin trong cc a giao din IDE/ATA. Giao din IDE (mch in t tch hp trong a) ch bt c a no c tch hp b iu khin a gn bn trong.
Cp IDE chun: gm 40 dy, tn hiu truyn song song trn c dy chn v dy l nn di ca cp b hn ch 46 cm. Gii hn dung lng a ti a l 504MB v c tc tng i chm.

EIDE (Enhanced IDE - IDE c nng cao):


Gia tng dung lng a ln ti hn 8GB Tng tc truyn ti d liu ln hn hai ln kh nng ca IDE Tng gp i s lng a m mt my PC c th c

363

Cc chun ni ghp a (tip)

Giao din ATA gm nhiu phin bn:


ATA-1 (1986-1994) ATA-2 (1996) ATA-3 (1997) ATA-4 (1998, cn gi l Ultra-ATA/33 MHz) ATA-5 v ATA-6 (t 1999 n nay, cn gi l UltraATA/66/100/133 MHz). Cp cho cc chun ny c thit k gm 80 dy truyn d liu tc cao (cc dy ni t v dy tn hiu xen k nhau nhm mc ch kh nhiu)

364

Cc chun ni ghp a (tip)


Giao din Serial ATA:

Do mt s cty ln a ra vo nm 1999 Giao tip Serial Advanced Technology Attachment (Serial ATA) cho cng v thit b ATA Packet Interface (ATAPI) So vi Parallel ATA, Serial ATA dng in p thp, u chn cm nh gn v t dy hn. Serial ATA tng thch hon ton vi phn mm trc y dnh cho thit b Parallel ATA v ATAPI. Th h sn phm Serial ATA u tin xut hin trn th trng vo gia 2002, t tc 150MBps. Trong tng lai, cc phin bn k tip c th t bng thng 300MBps v 600MBps.
365

Cc chun ni ghp a (tip)


Giao din SCSI (Small Computer System Interface):

Dng kt ni nhiu loi thit b c tc trao i d liu cao trong mt my tnh, thng c dng trong cc my ch. Mt bus SCSI h tr ti a 7 hoc 15 thit b C nhiu chun SCSI:
SCSI-1 (1986): truyn d liu trn bus song song 8 bit, tc 5 MB/s, dng cp 50 dy. SCSI-2 (1994): truyn d liu trn bus song song 16 bit, tc 10 MB/s, dng cp 50 dy mt cao. SCSI-3: c thit k cho cc my tnh i mi hin nay, gm 2 phin bn: Ultra 2 SCSI (tc truyn ti 40 MB/s) v Ultra 3 SCSI (tc truyn ti 80 MB/s hoc 160 MB/s)
366

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

367

3.3.6. B nh o
Khi nim b nh o: l b nh bao gm b nh chnh v b nh ngoi m c CPU coi nh l mt b nh duy nht. Cc k thut thc hin b nh o:

K thut phn trang: Chia khng gian a ch b nh thnh cc trang nh c kch thc bng nhau v nm lin k nhau Thng dng: kch thc trang = 4KBytes K thut phn on: Chia khng gian nh thnh cc on nh c kch thc thay i, cc on nh c th gi ln nhau.
368

3.3. B nh my tnh
3.3.1. Tng quan h thng nh 3.3.2. B nh bn dn 3.3.3. B nh chnh 3.3.4. B nh cache 3.3.5. B nh ngoi 3.3.6. B nh o 3.3.7. B nh trn my tnh c nhn

369

3.3.7. B nh trn my tnh c nhn 1. 2. 3. 4. 5. 6. B nh Cache RAM ROM BIOS CMOS RAM Video RAM Cc loi b nh ngoi

370

1. B nh Cache
Thng c chia thnh nhiu mc:

Cache L1:
Cache lnh Cache d liu

Cache L2: 128, 256, 512 KB, 1 MB

c tch hp trn cc chip vi x l

371

2. RAM
S dng DRAM, thng c coi l b nh chnh. Cc loi b nh RAM:

FPM (Fast Page Mode) DRAM EDO (Extended Data Out) DRAM SDRAM (Synchronous DRAM) DDR SDRAM (Double Data Rate SDRAM) RDRAM (Rambus DRAM) My tnh Desktop:
SIMM (Single Inline Memory Module) DIMM (Dual Inline Memory Module) RIMM (Rambus Inline Memory Module)

Cc loi module nh RAM:

My tnh Laptop:
SODIMM (Small Outline Dual Inline Memory Module) MicroDIMM (Micro Dual Inline Memory Module)

372

a. Cc loi b nh RAM
FPM DRAM (Fast Page Mode DRAM)

Khi truy cp b nh: a ch hng khng i, ch thay i a ch ct. Ch truy cp burst mode (t 486) cho php sau khi thit lp cc a ch hng, ct cho 1 ln truy cp, CPU c th truy cp thm 3 a ch tip m khng c trng thi ch. Ch burst mode ca DRAM chun c m t di dng cc thng s x-y-y-y. VD: FPM DRAM 60ns c thng s nh thi ca ch burst mode l 5-3-3-3. Vi bus h thng 66MHz th mt 5x15=75ns cho ln truy cp u v 3x15=45ns cho mi ln trong s 3 ln truy cp tip theo (nhanh hn 5-5-5-5).
373

Cc loi b nh RAM (tip)


EDO DRAM (Extended Data Out DRAM)

S dng ch yu t 1995 1997. L dng ci tin ca FPM DRAM: cc b iu khin d liu ra khng b tt khi b iu khin b nh xa a ch ct cho chu k tip theo => cho php chu k tip theo gi ln chu k trc (tit kim khong 10ns cho 1 chu k). Gi thnh ngang vi FPM nhng hiu nng cao hn. VD: burst mode ca EDO l 5-2-2-2 (cn 11 chu k cho 4 ln truyn) so vi 5-3-3-3 ca FPM (truyn 4 ln trong 14 chu k).

374

Cc loi b nh RAM (tip)


SDRAM (Synchronous DRAM):

S dng t 1997, ch yu cho cc my tnh PII, PIII. Chy ng b vi bus b nh (66, 100, 133 MHz). Thi gian xc nh a ch vn nh c nhng tng thi gian nhanh hn so vi FPM v EDO DRAM. VD: SDRAM : 5-1-1-1 (cn 8 chu k cho 4 ln truyn), nhanh hn 11 v 14 chu k ca EDO v FPM.

375

Cc loi b nh RAM (tip)


DDR SDRAM (Double Data Rate SDRAM):

Xut hin t nm 2000. L dng ci tin ca SDRAM, cho php truyn d liu 2 ln c sn dng v sn m ca 1 chu k. Xut hin t nm 2004. L dng ci tin ca DDR SDRAM: s dng cp dy tn hiu vi sai cho php truyn nhanh v t nhiu hn. S dng in p thp hn DDR SDRAM (1.8V so vi 2.5V).

DDR2 SDRAM:

376

Cc loi module nh DDR SDRAM

377

Cc loi module nh DDR2 SDRAM

378

Cc loi b nh RAM (tip)


RDRAM (Rambus DRAM):

L loi RAM tc cao, c sn xut theo cng ngh ca hng Rambus. Xut hin ch yu t 1999 n 2002 (sau 2001 Intel khng cn h tr cng ngh ny).

379

Cc loi module nh RDRAM

380

b. Cc loi module nh RAM


Cc module RAM th h c:

DIP (Dual Inline Package) SIPP (Single Inline Pin Package) SIMM (Single Inline Memory Module) DIMM (Dual Inline Memory Module) RIMM (Rambus Inline Memory Module) SODIMM (Small Outline Dual Inline Memory Module) MicroDIMM (Micro Dual Inline Memory Module)
381

My tnh Desktop:

My tnh Laptop:

DIP v SIPP
Thng l dng ng gi ca cc module nh FPM DRAM. Dng trong cc my tnh tng ng vi h 80286 tr v trc.

382

SIMM
Module nh n hng chn, gm 2 loi chnh:

SIMM 32 chn (8 bit d liu + 1 bit parity) : FPM DRAM SIMM 72 chn (32 bit d liu + 4 bit parity ty chn) : EDO DRAM

383

DIMM
Module nh hai hng chn, gm 3 loi chnh:

DIMM 168 chn: SDRAM DIMM 184 chn: DDR SDRAM DIMM 240 chn: DDR2 SDRAM

rng ng d liu: 64 bit (non-ECC/parity) hoc 72 bit (parity/ECC).

384

Minh ha cc module nh DIMM

385

RIMM
Module nh 2 hng chn (184 chn), l dng ng gi ca loi b nh RDRAM.

386

SODIMM
Thng dng trong cc my laptop, notebook, printer, router, ... Gm 4 loi chnh:

SODIMM 72 chn, 32 bit d liu, FPM/EDO SODIMM 144 chn, 64 bit d liu, FPM/EDO SODIMM 144 chn, 64 bit d liu, SDRAM SODIMM 200 chn, 64 bit d liu, DDR/DDR2 SDRAM

387

Cc module nh SODIMM

388

MicroDIMM
Thng dng trong cc my notebook c nh, PDA, palmtop, ... Gm 2 loi chnh:

MicroDIMM 144 chn, 64 bit d liu, SDRAM MicroDIMM 172 chn, 64 bit d liu, DDR SDRAM

389

Cc module nh MicroDIMM

390

3. ROM BIOS
BIOS: Basic Input Output System. Cha cc chng trnh: Chng trnh POST (Power On Self Test): t kim tra khi bt ngun. Mi li thng bo y u l li v phn cng. Chng trnh CMOS Setup:

Cho php ngi s dng c th thit lp cc thng s cu hnh v thi gian ca h thng. Cc thng tin sau khi thit lp s c ct vo b nh CMOS RAM.

Chng trnh Bootstrap Loader: tm v np Boot Record ca a khi ng vo mt a ch xc nh trong RAM v trao quyn iu khin cho on m . Cc chng trnh iu khin vo-ra c bn: tp hp cc chng trnh con phc v vo-ra.
391

4. CMOS RAM
L mt vng nh c dung lng nh, c ch to bng cng ngh CMOS, c mt ngun pin nui ring, dng cha cc thng tin cu hnh v thi gian ca h thng.

392

5. Video RAM
Vng nh c tc nhanh, dung lng ln, dng qun l cc thng tin hin th trn mn hnh.

393

6. Cc loi b nh ngoi
a mm a cng Cc loi a quang Flash disk

394

3.4. H thng vo ra

3.4.1. Tng quan v h thng vo-ra 3.4.2. Cc phng php iu khin vo-ra 3.4.3. Ni ghp vi thit b ngoi vi 3.4.4. Cc cng vo-ra thng dng trn PC

395

3.4.1. Tng quan v h thng vo-ra

1. 2. 3. 4.

Gii thiu chung Cc thit b ngoi vi Module ni ghp vo-ra Cc phng php a ch ha cng vo-ra

396

1. Gii thiu chung


Chc nng: trao i thng tin gia my tnh v h thng bn ngoi. Cc thao tc c bn:

Vo d liu (Input) Ra d liu (Output) Cc thit b ngoi vi Cc module ni ghp vo-ra

Cc thnh phn chnh:


397

2. Cc thit b ngoi vi
Chc nng: Chuyn i thng tin t mt dng vt l no v dng d liu ph hp vi my tnh hoc ngc li. Phn loi:

Cc thit b thu nhn d liu: nh bn phm, chut, my qut nh, .. Cc thit b hin th d liu: mn hnh, my in, ... Cc thit b lu tr: a mm, a cng, a quang CD, DVD, ... Cc thit b truyn thng: modem, card mng, ...

398

Cu trc chung ca TBNV

399

Cc thnh phn chnh ca TBNV


B chuyn i tn hiu: chuyn i d liu gia bn ngoi v bn trong my tnh. B m d liu: m d liu khi truyn gia module vo-ra v thit b ngoi vi. Khi logic iu khin: iu khin hot ng ca thit b ngoi vi p ng theo yu cu t module vo-ra.

400

3. Module vo-ra
c im ca vo-ra:

Cc thit b ngoi vi rt a dng, khc nhau v:


Nguyn tc hot ng Tc Khun dng d liu

Tt c cc thit b ngoi vi u chm hn CPU v RAM Cn c cc module vo-ra ni ghp cc thit b ngoi vi vi CPU v b nh chnh.

401

Chc nng ca module vo-ra


Chc nng:

iu khin v nh thi Trao i thng tin vi CPU Trao i thng tin vi thit b ngoi vi m gia bn trong my tnh vi thit b ngoi vi Pht hin li ca thit b ngoi vi

402

Cu trc chung ca module vo-ra

403

Cc thnh phn ca module vo-ra


Thanh ghi m d liu: m d liu trong qu trnh trao i. Cc cng vo-ra (I/O Port): kt ni vi thit b ngoi vi, mi cng c mt a ch xc nh. Khi logic iu khin: iu khin module vo-ra. Thanh ghi trng thi / iu khin: lu gi thng tin trng thi / iu khin cho cc cng vo-ra.

404

4. a ch ha cng vo-ra
Cc thit b ngoi vi c ni ghp v trao i d liu thng qua cc cng vo-ra. Mi cng vo-ra phi c 1 a ch xc nh cn phi c cc phng php a ch ha cho cng vo-ra.

405

a. KGC b nh v KGC vo-ra


Mi CPU u c kh nng qun l c mt khng gian a ch b nh xc nh.

KGC b nh = 2N byte (N l s bit a ch m CPU c kh nng pht ra)

Mt s CPU c kh nng qun l thm 1 khng gian a ch vo ra ring bit vi khng gian a ch b nh.

KGC vo-ra = 2N1 byte (N1 : s bit a ch dng qun l khng gian a ch vo-ra, 2N1 << 2N) CPU phi c tn hiu phn bit khng gian a ch b nh v khng gian a ch vo-ra. CPU phi c cc lnh vo-ra chuyn dng.
406

Trong trng hp CPU qun l c c 2 KGC th:

V d
BXL 68030 ca Motorola ch qun l 1 KGC b nh l 232 byte. BXL Pentium ca Intel c kh nng qun l 2 KGC:

KGC b nh = 232 byte = 4GB KGC vo-ra = 216 byte = 64KB Tn hiu iu khin phn bit truy nhp khng gian a ch: IO/M C 2 lnh vo-ra chuyn dng: IN v OUT

Pentium c:

407

b. Cc pp a ch ha cng vo-ra
Vo ra ring bit (Isolated I/O):

Cng vo-ra c a ch ha theo khng gian a ch vo-ra ring bit. trao i d liu vi cng, trong chng trnh s dng cc lnh vo-ra chuyn dng. Cng vo-ra c a ch ha theo khng gian a ch b nh. trao i d liu vi cng, trong chng trnh s dng cc lnh trao i d liu vi b nh.

Vo ra theo bn b nh (Memory-mapped IO):

408

3.4. H thng vo ra

3.4.1. Tng quan v h thng vo-ra 3.4.2. Cc phng php iu khin vo-ra 3.4.3. Ni ghp vi thit b ngoi vi 3.4.4. Cc cng vo-ra thng dng trn PC

409

3.4.2. Cc pp iu khin vo-ra

1. 2. 3. 4.

Vo-ra bng chng trnh Vo-ra iu khin bng ngt Truy cp trc tip b nh - DMA B x l vo-ra

410

1. Vo-ra bng hi vng (polling)


Nguyn tc chung:

Trong chng trnh ngi lp trnh ch ng vit cc lnh vo-ra. Khi thc hin cc lnh vo-ra , CPU trc tip iu khin vic trao i d liu vi cng vo-ra.

411

Lu thc hin

412

Hot ng
CPU yu cu thao tc vo-ra. Module vo-ra thc hin thao tc. Module vo-ra thit lp cc bit trng thi. CPU kim tra cc bit trng thi:

Nu cha sn sng th quay li tip tc kim tra. Nu sn sng th chuyn sang trao i d liu vi module vo-ra.

413

c im
Vo-ra do mun ca ngi lp trnh CPU trc tip iu khin vo-ra CPU phi i module vo-ra sn sng tiu tn thi gian ca CPU

414

2. Vo-ra iu khin bng ngt


Nguyn tc chung:

CPU khng phi i trng thi sn sng ca module vo-ra. CPU ang thc hin mt chng trnh no , nu module vo-ra sn sng th n pht tn hiu yu cu ngt gi n CPU. Nu yu cu ngt c chp nhn th CPU thc hin chng trnh con vo-ra tng ng trao i d liu. Kt thc chng trnh con , CPU quay tr li tip tc thc hin chng trnh ang b ngt.

415

Hot ng
Hot ng vo d liu nhn t pha module vora:

Module vo-ra nhn tn hiu iu khin c t CPU. Module vo-ra nhn d liu t thit b ngoi vi, trong khi CPU lm vic khc. Khi c d liu, module vo-ra pht tn hiu ngt CPU. CPU yu cu d liu. Module vo-ra chuyn d liu n CPU.

416

Hot ng (tip)
Hot ng vo d liu nhn t pha CPU:

CPU pht tn hiu iu khin c. CPU lm vic khc. Cui mi chu trnh lnh, CPU kim tra tn hiu ngt. Nu b ngt, CPU:
Ct ng cnh hin ti ca chng trnh. Thc hin chng trnh con phc v ngt vo d liu. Sau khi hon thnh chng trnh con , CPU khi phc ng cnh v tr v tip tc thc hin chng trnh ang tm dng.

417

Cc vn ny sinh khi thit k


Lm th no xc nh c module vo-ra no pht tn hiu yu cu ngt. Khi c nhiu yu cu ngt cng gi n, CPU s x l nh th no.

418

Cc phng php ni ghp ngt


S dng nhiu ng yu cu ngt Kim tra vng bng phn mm (Software Poll) Kim tra vng bng phn cng (Daisy Chain of Hardware Poll) S dng b iu khin ngt (PIC)

419

S dng nhiu ng yu cu ngt

Mi module vo-ra c ni vi 1 ng yu cu ngt CPU phi c nhiu ng tn hiu yu cu ngt Hn ch s lng module vo-ra Cc ng yu cu ngt c quy nh mc u tin
420

Kim tra vng bng phn mm

CPU thc hin phn mm hi ln lt tng module vo-ra Tc chm Th t cc module vo-ra c hi vng chnh l th t u tin
421

Kim tra vng bng phn cng

422

Kim tra vng bng phn cng (tip)


CPU pht tn hiu chp nhn ngt (INTA) n module vo-ra u tin. Nu module vo-ra khng gy ra ngt th n gi tn hiu n module k tip cho n khi xc nh c module gy ngt. Module vo-ra gy ngt s t vector ngt ln bus d liu. CPU s dng vector ngt xc nh ni cha chng trnh con phc v ngt. Th t cc module vo-ra kt ni trong chui xc nh th t u tin.
423

B iu khin ngt lp trnh c

PIC: Programmable Interrupt Controller. PIC c nhiu ng yu cu ngt c quy nh mc u tin. PIC chn mt yu cu ngt khng b cm c mc u tin cao nht gi n CPU.
424

T chc ngt ca 80x86


T chc kiu vector ngt. Mi ngt c c trng bng s hiu ngt N (00 FF). Bng vector ngt: 256 x 4 = 1024 byte 00000 003FF Gi CTC phc v ngt bng lnh: INT N
a ch 00000 00002 00004 00006 00008 0000A 0000C 0000E 00010 00012 00014 00016 B nh IP ca INT 0 CS ca INT 0 IP ca INT 1 CS ca INT 1 IP ca INT 0 CS ca INT 0 IP ca INT 1 CS ca INT 1 IP ca INT 0 CS ca INT 0 IP ca INT 1 CS ca INT 1 Vector 0 : Chia cho 0

Vector 1 : Chy tng lnh

Vector 2 : Ngt khng che c (NMI)

Vector 3 : im dng Vector 4 : Trn s hc

Vector 5 c nh ngha trc hoc dnh ring

. . .

Vector 31

Vector 32

003F8 003FA 003FC 003FE

IP ca INT 0 CS ca INT 0 IP ca INT 1 CS ca INT 1

Vector 254

Dnh cho ngi lp trnh

Vector 255

425

c im ca vo-ra bng ngt


C s kt hp gia phn cng v phn mm:

Phn cng: gy ngt CPU. Phn mm: trao i d liu.

CPU trc tip iu khin vo-ra. CPU khng phi i module vo-ra hiu sut s dng CPU tt hn.

426

3. Truy cp trc tip b nh


DMA (Direct Memory Access) Cc phng php vo-ra bng chng trnh v vo-ra iu khin bng ngt do CPU trc tip iu khin:

Chim thi gian ca CPU Tc trao i d liu b hn ch v phi chuyn qua CPU Thm module phn cng l DMAC (Direct Memory Access Controller) DMAC iu khin trao i d liu gia module vo-ra vi b nh chnh.
427

khc phc dng DMA:

Cu trc ca DMAC

Cc ng a ch

Thanh ghi a ch Thanh ghi d liu B m

Cc ng d liu

Yu cu bus Chuyn nhng bus Ngt c Ghi

iu khin c iu khin ghi

Logic iu khin

Yu cu DMA Chp nhn DMA

428

Cc thnh phn ca DMAC


Thanh ghi d liu: cha d liu cn trao i Thanh ghi a ch: cha a ch ngn nh d liu B m d liu: cha s t d liu cn trao i Logic iu khin: iu khin hot ng ca DMAC

429

Hot ng ca DMAC
CPU gi cho DMAC cc thng tin:

Chiu trao i d liu: vo hay ra d liu a ch thit b vo-ra (cng vo-ra tng ng) a ch u ca mng nh d liu np vo thanh ghi a ch S t d liu cn truyn np vo b m d liu

CPU lm vic khc DMAC iu khin trao i d liu Sau khi truyn c 1 t d liu:

Ni dung thanh ghi a ch tng Ni dung b m d liu gim

Khi b m d liu = 0, DMAC gi yu cu ngt n CPU bo hiu kt thc DMA


430

Cc kiu DMA
DMA truyn theo khi (Block Transfer DMA): CPU trao quyn s dng bus cho DMAC trong mt khong thi gian ln DMAC thc hin trao i xong c khi d liu. DMA xen k chu k my vi CPU (Cycle Stealing DMA): DMAC v CPU thay nhau s dng bus trong tng chu k my. DMA trong sut (Transparent DMA): Trong qu trnh hot ng, khng phi chu k no CPU cng s dng bus h thng, DMAC s pht hin xem nhng chu k CPU khng dng bus chim dng bus trong chu k v iu khin trao i 1 t d liu khng lm nh hng n CPU.

431

Cc cu hnh thit k DMA


Cu hnh 1:

Mi ln truyn, DMAC s dng bus 2 ln:


Gia DMAC vi module vo-ra Gia DMAC vi b nh

432

Cc cu hnh thit k DMA (tip)


Cu hnh 2:

DMAC iu khin mt hoc mt vi module vo-ra Mi ln truyn, DMAC s dng bus 1 ln:
Gia DMAC vi b nh

433

Cc cu hnh thit k DMA (tip)


Cu hnh 3:

Bus vo-ra tch ri h tr tt c cc thit b cho php DMA Mi ln truyn, DMAC s dng bus 1 ln:
Gia DMAC vi b nh
434

c im ca DMA
CPU khng tham gia vo qu trnh trao i d liu DMAC iu khin trao i d liu gia b nh chnh vi module vo-ra hon ton bng phn cng tc nhanh. Thch hp vi cc yu cu trao i d liu kch thc ln.

435

4. B x l vo-ra
Vic iu khin vo-ra c thc hin bi mt b x l vo-ra chuyn dng. B x l vo-ra hot ng theo chng trnh ca ring n. Chng trnh ca b x l vo-ra c th nm trong b nh chnh hoc nm trong mt b nh ring. Hot ng theo kin trc a x l.

436

3.4. H thng vo ra

3.4.1. Tng quan v h thng vo-ra 3.4.2. Cc phng php iu khin vo-ra 3.4.3. Ni ghp vi thit b ngoi vi 3.4.4. Cc cng vo-ra thng dng trn PC

437

3.4.3. Ni ghp vi thit b ngoi vi

1. Cc kiu ni ghp 2. Cc cu hnh ni ghp

438

1. Cc kiu ni ghp
Ni ghp song song:

Truyn nhiu bit song song Tc nhanh Cn nhiu ng truyn


Cng vo-ra song song

Bus h thng

TBNV

439

Cc kiu ni ghp (tip)


Ni ghp ni tip:

Truyn ln lt tng bit Cn c b truyn i qua li gia d liu song song v ni tip Tc chm hn Cn t ng dy truyn c xa hn

440

2. Cc cu hnh ni ghp
Cu hnh im ti im (Point to Point): thng qua mt cng vo-ra cho php ni ghp vi mt thit b ngoi vi.

Ni ghp bn phm Ni ghp chut Ni ghp a mm ...

Cu hnh im ti a im (Point to Multipoint): thng qua mt cng vo-ra cho php ni ghp vi nhiu thit b ngoi vi.

Chun ni ghp SCSI: cho php ni ghp ti 7 hoc 15 thit b Cng USB: ni ghp ti 127 thit b Cng IEEE 1394: ni ghp ti 63 thit b

441

3.4. H thng vo ra

3.4.1. Tng quan v h thng vo-ra 3.4.2. Cc phng php iu khin vo-ra 3.4.3. Ni ghp vi thit b ngoi vi 3.4.4. Cc cng vo-ra thng dng trn PC

442

3.4.4. Cc cng vo-ra thng dng Cc cng PS/2: ni ghp bn phm v chut Cc cng ni ghp mn hnh Cng LPT (Line Printer): thng ni ghp vi my in, l cng song song (Parallel Port) Cng COM (Communication): thng ni ghp vi MODEM, l cng ni tip (Serial Port) Cng USB (Universal Serial Bus): cng ni tip a nng

443

Cc cng vo-ra thng dng (tip)

444

Kin trc my tnh

Chng 4 Kin trc song song

445

Ni dung chng 4
4.1. Phn loi kin trc my tnh 4.2. Mt s kin trc song song thng dng

446

4.1. Phn loi kin trc my tnh


Phn loi ca Michael Flynn (1966)

SISD - single instruction stream, single data stream SIMD - Single Instruction Stream, Multiple Data Stream MISD - Multiple Instruction Stream, Single Data Stream MIMD - Multiple Instruction Stream, Multiple Data Stream

447

SISD
CU: Control Unit PU: Processing Unit MU: Memory Unit Mt b x l n dng lnh D liu c lu tr trong mt b nh Chnh l Kin trc von Neumann

448

SIMD

449

SIMD (tip)
n dng lnh iu khin ng thi cc phn t x l PE (processing elements) Mi phn t x l c mt b nh d liu ring LM (local memory) Mi lnh c thc hin trn mt tp cc d liu khc nhau Cc m hnh SIMD

Vector Computer Array processor

450

MISD
Mt lung d liu cng c truyn n mt tp cc b x l Mi b x l thc hin mt dy lnh khc nhau. Khng tn ti my tnh thc t C th c trong tng lai

451

MIMD
Tp cc b x l Cc b x l ng thi thc hin cc dy lnh khc nhau trn cc d liu khc nhau Cc m hnh MIMD
o o

Multiprocessors (Shared Memory) Multicomputers (Distributed Memory)

452

MIMD-Shared Memory

453

MIMD Distributed Memory

454

Mt s kin trc MIMD thng dng

455

SMP
Mt my tnh c n >= 2 b x l ging nhau Cc b x l dng chung b nh v h thng vo-ra Thi gian truy cp b nh l bng nhau vi cc b x l Tt c cc b x l chia s truy nhp vo-ra Cc b x l c th thc hin chc nng ging nhau H thng c iu khin bi mt h iu hnh phn tn

456

u im ca SMP
Hiu nng: Cc cng vic c th thc hin song song Tnh sn dng: Cc b x l c th thc hin cc chc nng ging nhau, v vy li ca mt b x l s khng lm dng h thng Kh nng m rng o Ngi s dng c th tng hiu nng bng cch thm b x l

457

Cluster
Nhiu my tnh c kt ni vi nhau bng mng lin kt tc cao (~ Gbps) Mi my tnh c th lm vic c lp Mi my tnh c gi l mt node Cc my tnh c th c qun l lm vic song song theo nhm (cluster) Ton b h thng c th coi nh l mt my tnh song song

458

Cluster (tip)
D dng xy dng v m rng Tnh sn sng cao Kh nng chu li Gi thnh r vi hiu nng cao

459

Cluster of PCs

460

Cluster of SMP

461

You might also like