Вы находитесь на странице: 1из 177

CHNG 1 : GII THIU CHUNG

CHNG 1: GII THIU CHUNG

1.1.

Tng quan v cu trc my tnh

Cu trc my tnh l mt mng kin thc nghin cu v cch x l ca mt h


thng my tnh di cch nhn ca mt lp trnh vin. Cch nhn ny thc t
cng c nhiu kha cnh, v d nh my tnh c rng d liu khc nhau s c
cu trc phn cng v hot ng khc nhau, hoc my tnh c h tr cc php
ton no (cng, tr, nhn, chia, h tr cc chng trnh con,...)
Trong cu trc my tnh xut hin khi nim mc my. tng c bn ca
n l trong mi mt my tnh c nhiu mc khc nhau, t mc cao nht
(ngi s dng c th chy chng trnh, s dng my tnh...) cho n mc thp
nht (my tnh ch l tp hp cc phn t l transistor v cc dy ni...). Gia
mc my cao n thp cn c cc mc my trung gian. Trc khi tho lun v
cc mc ca my tnh, chng ta xem xt lch s pht trin ca my tnh c
c mt quan im v cch xy dng mt my tnh
1.2.

Lch s pht trin ca my tnh

Cc thit b c kh c s dng iu khin cc thit b phc hp xut


hin t nht t nhng nm 1500. Vo thi im , ngi ta s dng trc quay
c nh lm nhng hp nhc. V hp nhc ch c th hot ng n gin
l lp i lp li mt giai iu nht nh
Blaisa Pascal (1623 - 1662) pht trin mt my tnh ton c kh gip
ngi cha trong cng vic tnh thu. My tnh Pascal (Pascaline) bao gm 8 con
s c kt ni trn mt trng xoay. Mt s s tng 1 gi tr (xoay mt gc nht
nh) khi s thp hn quay mt vng. Mt s my tnh Pascal khc c ng
xy dng nm 1642 vn cn n tn ngy nay.

Hnh 1.1. My tnh Pascal

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 1

CHNG 1 : GII THIU CHUNG


n nhng nm 1800, mt ngi pht trin cc thnh phn c kh ca my
tnh Pascal thnh mt my m chng ta nhn thy rng l thnh phn c bn
ca mt my tnh s. Ngi l Charles Babbage
Charles Babbage c coi l ng ni ca my tnh hn l cha ca my
tnh, bi v ng cha bao gi xy dng mt my tnh m ng thit k. Babbage
sng ti nc Anh, ti thi im , ngi ta thng s dng bn tnh tnh
ton. trnh vic tnh ton c nhiu li, Babbage to ra mt my tnh hot
ng bng cch quay cc bnh rng. My ca ng thm ch cn c kh nng to
ra nhng a d liu c th s dng ngay trong my in, do trnh c li do
sp ch trong khi thit k bn in. My tnh ca Babbage c chc nng c d
liu, lu tr v biu din d liu. Cc chc nng c bn ca n gn ging vi
cc chc nng ca my tnh hin i. S thnh cng ca cc my tnh Babbage
gip ng ginh c s h tr ca chnh ph trong vic thit k nhng my
phn tch c ln, nhng my c ngha rt ln trong vic lp trnh s dng cc
th c l theo m hnh Jacquard
Nhng my phn tch ca Babbage thit k nhng khng c xy dng
bi Babbage v ti thi im , nhng my c kh khng t c chnh
xc theo thit k. Mt phin bn khc ca my tnh Babbage cui cng cng
c lm ra ti Bo tng khoa hc London nm 1991, v tn ti cho n tn
ngy nay
Tri qua hng th k cho n Th chin th II, xut hin mt ng lc ln cho
vic pht trin my tnh. Ti Anh, tu ngm ca c b thit hi nng n
trong khi vn chuyn. Chic tu ngm nhn v gii m cc tn hiu t cc tu
khc ca c v b iu khin sai. Vic m ha tn hiu ca c c to ra
bng cch s dng mt on m c to ra bi mt chic my do Siemens AG
to ra di ci tn ENIGMA
Qu trnh to ra cc m thng tin c bit n t lu, thm ch Tng thng
Hoa K Thomas Jefferson (1743 - 1826) thit k mt my c coi l tin
thn ca ENIGMA, mc d ng khng ch to n. Qu trnh gii m din ra
phc tp hn rt nhiu. N l ng lc Alan Turning (1912 - 1954) v mt s
nh khoa hc nc Anh khc to ra my ph m. Trong sut Th chin II,
Turning l ngi gii m hng u Anh v l mt trong nhng ngi bin
khoa hc mt m t chc nng l dch cc ngn ng c i thnh mt khoa hc
tnh ton

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 2

CHNG 1 : GII THIU CHUNG


Colossus l my gii m u tin c ch to ti Bletchley Park, Anh quc, ni
Turning lm vic. Nhng ng chn khng c s dng lu tr ni dung
ging nh trn giy v c a vo chic my, vic tnh ton din ra sau
c thc hin trn nhng ng chn khng cho n khi nhng ng khc li
c tip tc a vo my. Vic lp trnh c din ra trn nhng bng cm cc
ng chn khng.
Cng thi vi Turning, J.Presper Eckert v John Mauchly ch to ra mt
chic my dng tnh ton qu o ca ng n s dng cho qun i Hoa
k. Kt qu s n lc ca Eckert v Mauchly l chic my in t s tch hp
my tnh (Electronic Numerical Intergrator And Computer - ENIAC). My
ENIAC bao gm 18.000 ng chn khng to nn phn tnh ton ca my. Vic
lp trnh v nhp liu c thc hin bng cch thay i trng thi cc cng tc
v cc ng cable. My khng c kh nng lu tr d liu hay chng trnh
nhng n khng phi l hn ch ln nht ca my bi v chc nng ca my
EMIAC l tnh ton qu o ca ng n. Thm ch chic my ny khng
hot ng c cho n tn nm 1946, sau chin tranh Th gii II nhng n
c coi l mt thnh cng v c s dng trong sut 9 nm
Sau thnh cng ca my ENIAC, Eckert v Mauchly (lm vic ti i hc
Pennsylvania) c John Von Neumann (1903 - 1957) mi cng tc lm vic
ti Vin nghin cu cao cp ti Princeton. Cng vi nhau, h thit k mt
my tnh c kh nng lu tr c gi l EDVAC. Mu thun ny sinh, hai
nhm ngi ti i hc Pennsylvania v Princeton chia tch nhau. Tuy nhin,
m hnh my tnh m h thit k pht trin mnh m, hnh thnh nn my tnh
EDSAC c to ra bi Maurice Wilkes ti i hc Cambridge nm 1947
1.3.

M hnh my tnh Von Neumann

My tnh k thut s thng thng c ch to da trn m hnh c cho l


ca Von Neumann. M hnh Von Neumann bao gm 5 thnh phn chnh c
ch ra trn hnh 1.2. Khi nhp liu s a lnh v d liu vo h thng v lu
tr tun t khi b nh chnh. Lnh v d liu s c thc th ti khi S
hc v logic (ALU) di s iu khin bi khi iu khin. Kt qu s c
a ra khi hin th d liu. Khi ALU v b iu khin thng c gi chung
l b x l trung tm (CPU). Hu ht cc my tnh thng thng c th phn
chia thnh cc khi c bn nh trn

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 3

CHNG 1 : GII THIU CHUNG

Hnh 1.2. M hnh my tnh Von Neumann


Chng trnh lu tr l ni dung quan trng nht ca m hnh Von Neumann.
Chng trnh c lu tr ti b nh chnh cng vi d liu chng trnh c
x l. Vic lu tr c thc hin theo tng cp khc nhau cng vi s pht
trin ca cng ngh. V d nh trc kia, chng trnh v d liu c lu tr
di dng th c l hay bng t,... Trong my tnh, chng trnh hay cc lnh
ca chng trnh c thao tc nh th l d liu. iu ny dn n vic xut
hin cc trnh bin dch v h iu hnh, v lm cho my tnh tr nn rt linh
hot
1.4.

M hnh h thng bus

Mc d kin trc Von Neumann c s dng rng ri trong cc my tnh hin


i, nhng n c bin i. Hnh 1.3. th hin mt m hnh h thng bus
ca mt h thng my tnh. M hnh ny chia my tnh ra lm 3 khi: CPU, b
nh v cc cng vo ra I/O. iu tinh t ca m hnh ny l kt hp khi
ALU v khi iu khin thnh mt khi c chc nng duy nht l CPU. Khi
nhp d liu v hin th d liu c kt hp thnh khi cc cng ngoi vi

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 4

CHNG 1 : GII THIU CHUNG

Hnh 1.3. M hnh h thng bus


iu quan trng nht ca m hnh h thng bus l s kt ni gia cc khi c
gi chung l h thng bus, c cu thnh t cc bus d liu mang thng tin
bng cch truyn thng, bus a ch c chc nng ch ra ni d liu s c
chuyn ti v bus iu khin s ch ra cc kha cnh thng tin ang c gi i
v trong nhng phng thc g. Tt nhin h thng cn c h thng bus cng
sut l cc ng dy cung cp nng lng in cho ton b h thng. H thng
bus cng sut thng khng c ch ra trong m hnh nhng s c ngm
hiu trong mi m hnh. Mt s kin trc cn c cc h thng bus I/O ring bit
V mt vt l, cc h thng bus thc cht l cc ng dy c nhm li vi
nhau theo chc nng. H thng bus d liu 32 bit bao gm 32 ng dy ring
bit, mi dy s truyn ti 1 bit d liu (a ch hoc cc thng tin iu khin).
Trong cch hiu ny, bus h thng l cc nhm bus c phn chia theo chc
nng
Bus d liu c chc nng chuyn d liu gia cc khi. Mt s h thng c h
thng bus d liu ring chuyn d liu tng tc vi khi CPU c gi l
cc h thng bus d liu v v bus d liu ra. Thng thng bus d liu v v ra
c thc hin trn cng mt h thng dy dn v ti cng mt thi im s ch
truyn d liu theo mt hng
V h thng bus c s dng kt ni gia cc khi, do cc khi chc
nng cn c c im nhn dng ring, chnh l a ch. Trong mt s my tnh,
tt c cc a ch c gi nh l a ch nh, nhng thc t s bao gm c

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 5

CHNG 1 : GII THIU CHUNG


a ch nh v a ch cc cng ngoi vi I/O. Mi cng I/O s c mt a ch
hon ton ring bit. Ch ny s c bn k hn trong chng 8
a ch nh, hay c hiu l v tr lu tr d liu tng t nh phng thc
nh a ch th tn xc nh ni gi v nhn th. Trong sut qu trnh c/ghi
d liu, bus a ch s cha a ch m d liu s c c hoc ghi. Thut ng
c v ghi c hiu vi ch th l CPU, tc l CPU s c d liu t b nh
hoc ghi d liu ln b nh. Nu d liu c c t b nh th bus d liu s
cha ni dung c c a ch nh c ch ra trn bus a ch. Nu d
liu c ghi vo b nh th bus d liu s cha d liu cn c ghi vo nh
tng ng trong b nh
Bus iu khin c phn phc tp v s c tho lun trong nhng chng tip
theo. d hiu, ta c th coi bus iu khin c s dng cho php truy
cp vafp h thng bus d liu v bus a ch, phi hp cc tng tc gia cc
khi chc nng

1.5.

Mc my tnh

Trong mt h thng phc hp, my tnh c th c nhn nhn thnh cc mc


my khc nhau, t mc cao nht, mc ngi s dng n mc thp nht l
mc transistor. Mi mt mc th hin mt mc tru tng khc nhau v
my tnh. C l mt trong nhng nguyn nhn ca s thnh cng ca my tnh
s l s phn chia cc mc tru tng mt cch r rng, c lp vi nhau. iu
hin nhin c th nhn thy l mt ngi s dng my tnh g vn bn khng
cn hiu bit v lp trnh. ng thi mt lp trnh vin cng khng cn quan
tm n cc thnh phn cu to nn my tnh. Mt iu th v l vic phn chia
my tnh thnh cc cp my c khai thc pht trin cc dng my tnh
c chc nng khc nhau

Mc cng logic, transistor, dy dn


Cp thp nht bt c mt my tnh cp cao chnh l cp cng logic, transistor
v dy dn. Cp ny c to ra bi cc cng logic c thit k thc hin
mt chc nng nht nh, thc hin mt thut ton nht nh. cp ny, my
tnh bao gm cc phn t in nh transistor, dy dn,... Cng ti cp ny,
chc nng ca my tnh cha c th hin r v hot ng ca n ch th hin
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 6

CHNG 1 : GII THIU CHUNG


thng qua cc tn hiu in p, dng in, cc tn hiu tr, tn hiu lng t v
cc vn cp thp hn

Hnh 1.4. Cc cp my tnh


Cp khi chc nng
Trong cp khi chc nng, cc thanh ghi thc hin vic dch chuyn d liu vo
v ra khi cc cc khi chc nng di s kim sot ca cc khi iu khin.
Cc khi chc nng ny th hin mt s chc nng quan trng ca s hot ng
ca my tnh. Cc khi chc nng ny bao gm cc thanh ghi bn trong CPU,
khi ALU v b nh chnh ca my tnh

Cp vi chng trnh
y l cp th hin s tc ng ca khi iu n vic dch chuyn d liu
t thanh ghi n cc thanh ghi v n cc khi chc nng khc ra lm sao. Khi
iu khin s np ln lt m lnh v thc thi tng lnh theo mt chng trnh
c nh sn bi nh sn xut cc chip vi x l c gi l cc vi chng
trnh. Thc ra, ngi lp trnh khng cn quan tm lm n s hot ng ca
cp ny bi v cc vi chng trnh l c nh, ch c ngi thit k phn
cng mi tc ng c n cc vi chng trnh ny
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 7

CHNG 1 : GII THIU CHUNG


Cp hp ng
T cp ny, cc lp trnh vin c th t vit cc chng trnh bt my tnh
thc hin cc yu cu ca mnh. Tuy nhin, my tnh ch c th hiu c m
my bao gm cc chui s 0 v 1. Vic lp trnh kiu nh vy rt d b li. Do
vic xut hin mt ngn ng gn vi ngn ng con ngi l iu tt yu
ngn ng hp dch. Mt trnh bin dch s chuyn ngn ng hp dch sang ngn
ng my v my tnh c th hiu c. Tp hp cc lnh ca ngn ng hp dch
c gi l tp lnh

Ngn ng cp cao
Bt c mt lp trnh vin no s dng mt trong nhng ngn ng nh C,
Pascal, Fortran, hay Java u tng tc vi my tnh cp ngn ng cp
cao. Ti cp ny, lp trnh vin tng tc vi d liu v m lnh chng
trnh thng qua ngn ng cp cao, rt ging vi ngn ng hng ngy m khng
cn quan tm ti vic d liu v m lnh c my tnh x l nh th no
Thc t, my tnh c th hiu c cc lnh c vit bng ngn ng cp
cao, my tnh phi thc hin qu trnh chuyn i t ngn ng cp cao thnh
ngn ng my thng qua mt trong hai qu trnh bin dch hoc thng dch.
Bin dch (Compiler) l qu trnh chuyn i m lnh ca ton b chng trnh
t ngn ng cp cao thnh ngn ng cp thp ri my tnh mi thc thi chng
trnh. Thng dch (Interpreter) l qu trnh chuyn i tng cu lnh t ngn
ng cp cao thnh ngn ng cp thp, thc thi lnh ri chuyn i tip cu lnh
k tip

Cp chng trnh ng dng


cp ny, ngi s dng tng tc vi my tnh bng cch chy cc chng
trnh nh son tho vn bn, cc bng tnh hay game. Ngi s dng s s dng
my tnh thng qu cc chng trnh chy trn n

1.6.

H thng my tnh in hnh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 8

CHNG 1 : GII THIU CHUNG


Mu my tnh hin i c pht trin t nhng nm 1950 n 1960 v cng
ngy cng c kch thc nh gn v cng ngy cng mnh m. Mc d c rt
nhiu ci tin nhng 5 thnh phn c bn trong m hnh Von Neumann vn
khng th thay i trong my tnh hin i

Hnh 1.5. Cc thnh phn ca my tnh hin i


Hnh 1.5 th hin cc thnh phn in hnh ca mt my tnh bn. Khi nhp
liu chnh l bn phm, thng qua n, ngi s dng s nhp cc d liu v cc
dng lnh vo h thng. Mn hnh l ni hin th cc d liu ra bn ngoi. Khi
ALU v khi iu khin c ch to trn mt chip in t c gi l CPU.
Khi b nh bao gm cc mch in c lp v cc khi a cng, a mm
v cc CD-ROM,...
Nhn su hn vo h thng, chng ta c th thy c thnh phn quan trng
nht ca h thng l bn mch chnh (mainboard), hnh 1.6. Bn mch chnh
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 9

CHNG 1 : GII THIU CHUNG


bao gm cc mch in tch hp Ics, cc khe cm cc card m rng, cc dy ni
kt ni cc mch tch hp v cc khe cm m rng. Trn hnh 1.6. cc v tr
gn cc khi nhp liu input, khi hin th d liu output, b nh v CPU c
khoanh vng v ch r trn hnh

Hnh 1.6. Cu trc mainboard

TNG KT CHNG
Cu trc ca my tnh cng vi cc cp ca n cn c th hin mt cch
r rng di con mt ca lp trnh vin lp trnh vin c th tng tc vi
my tnh mt cch d dng. Tuy nhin, yu cu li khng c d dng thc
hin c. Trong lch s pht trin, cc lp trnh vin phi tng tc vi my
tnh thng qua cc kha cnh khc nhau. V d nh Babbage phi lp trnh thng
qua cc bnh rng c kh,...Cng vi s pht trin ca cng ngh, cc cp
ca my tnh cng tr nn r rng hn, cho php my tnh c nhiu hn cc
tng tc vi con ngi. Mt m hnh pht trin nht chnh l m hnh my tnh
Von Neumann, y l m hnh thng dng nht trong cc my tnh ngy nay.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 10

CHNG 2 : BIU DIN D LIU


CHNG 2: BIU DIN D LIU

2.1.

Gii thiu chung

Trong nhng ngy u tin, c mt s quan nim sai lm v my tnh. Mt


trong nhng quan nim l my tnh ch l mt ci my kch thc ln c kh
nng tnh ton. My tnh c th lm c nhiu hn th ngay c trong giai
on khi u. Mt quan nim sai lm khc l my tnh c th lm tt c.
Chng ta u bit rng c nhng vn rt phc tp m ngay c my tnh mnh
nht hin nay cng khng c kh nng thc hin c. Quan im ng n tt
nhin nng khong no gia 2 quan nim trn
Chng ta rt quen thuc vi nhng hot ng ca my tnh m khng lin
quan ti cc con s nh ha, m thanh k thut s, thm ch c nhng ci
nhp chut...Vy lm th no m my tnh c th x l c tt c cc loi
thng tin , khi m tt c cc thng tin m my tnh x l c ch c biu
din bng cc con s 0 v 1. Ngay lp tc trong chng ta s c mt cu hi l
cc thng tin c my tnh biu din hay m ha nh th no ?
Chng ta chc hn ngh rng my tnh s dng s thp phn, nhng my
tnh thc t s dng m nh phn biu din thng tin. Chng ny s gii
thiu mt vi cch biu din thng tin ph bin v quan trng nht l s du
phy tnh c du v khng du, s thc v cc k t
Lin quan n vic biu din d liu, c mt kha cnh m chng ta cng cn
quan tm ti l rng ca d liu m my tnh biu din. V d nh my
tnh 32 bit c th x l cc d liu c rng l 32 bit. Khi , kt qu php
ton c th khng cn l 32 bit na m c th l mt con s ch c th biu din
bng mt d liu ln hn 32 bit. iu ny dn ti hin tng trn s - overflow.
Do , chng ta cn phi tm hiu gii hn ca mi mt phng php biu din
d liu m chng ta xem xt trong nhng phn tip theo di y.
2.2.

S du phy tnh

Trong h thng s dng s du phy tnh, mi con s c biu din bng mt


s chnh xc cc con s, v c mt du phy c s dng phn cch gia
phn nguyn v phn l c t mt v tr chnh xc. Mt v d v s du
phy tnh th hin trong s thp phn l 0.23, 5.12 hay 9.11. Trong v d ny,
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 11

CHNG 2 : BIU DIN D LIU


mi s c biu din bng 3 s v c 1 du phy t v tr th 2 t bn phi
sang. iu khc bit quan trng gia vic biu din s du phy tnh trn giy
v trn my tnh l du phy tnh trong my tnh khng c lu tr bt
k u. Ngi ta ni rng, du phy tnh ch tn ti trong u ca lp trnh
vin
nghin cu v s du phy tnh, trc ht chng ta nn tm hiu v phm vi
s dng cng nh chnh xc ca s du phy tnh trong h s thp phn. Sau
, chng ta s i vo bn cht ca cc h s chng hn nh s thp phn v s
nh phn v phng php chuyn i gia cc h s. V vi nn tng ny, ta s
tip tc tm hiu v cch biu din s m trong s du phy tnh.

2.2.1. Phm vi v chnh xc ca s du phy tnh


Mt s du phy tnh c th c phn chia theo phm vi biu din cc con s
( l phm vi biu din ca con s ln nht v nh nht) v chnh xc ca
n. Vi v d v s du phy tnh trn, phm vi biu din s ca n l cc con
s t 0.00 n 9.99 vi mi bc nhy l 0.01. Do , sai s c tnh l 0.01
Cn lu rng phm vi v chnh xc ph thuc vo v tr ca du phy tnh.
Vi du phy tnh dch chuyn v pha bn phi, phm vi s l [000,999] vi
chnh xc l 1.0 v nu du phy dch chuyn v pha tri, phm vi biu din s
s l [0.000,0.999] v sai s s l 0.001. Trong cc trng hp trn, cc s c
biu din bng 3 con s, phm vi ca n t 000 n 999 hoc .000 n .999, tc
l n c th biu din ch 1000 gi tr khng hn khng km, khng ph thuc
vo phm vi v chnh xc.
Ngoi ra, cng khng c mt l do no bt buc chng ta phi bt u dy s
cn biu din bng gi tr 0. Mt s thp phn c 2 ch s c th l dy [00,99]
hoc [-50,49], thm ch l [-99,00]. Vic biu din s m s c trnh by k
mc sau

2.2.2. Lut kt hp i s khng phi lc no cng c th thc hin trn my


tnh
Trong ton hc chng ta bit rng
+( + )=( + )+

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 12

CHNG 2 : BIU DIN D LIU


By gi chng ta s phn tch ti sao lut kt hp ny li khng phi lc no
cng c th thc hin c trn my tnh. Nu my tnh chng ta ang xt l
my c th thc hin biu din 1 con s, gi s phm vi biu din ca n l [9,9] vi a = 7, b = 4 v c = -3. V tri a + (b + c) = 7 + (4 + -3) = 7 + 1 = 8.
Nhng v phi (a + b) + c = (7 + 4) + -3 = 11 + -3 nhng s 11 nm ngoi phm
vi biu din ca h thng ny. Chng ta c hin tng trn s trong tnh ton
mc d kt qu cui cng vn nm trong khong c th biu din c.
V d trn th hin lut kt hp i s s khng c p dng cho cc s c
di hu hn. iu ny l khng th trnh khi bi v chnh bn thn cch
biu din d liu. khc phc nhc im ny, h thng s ngng ngay vic
tnh ton khi pht hin hin tng trn s, thng bo cho ngi s dng hoc
gii quyt bng phng php khc l lp li tnh ton vi rng d liu ln
hn

2.2.3. H thng c s bt k
Trong phn ny, chng ta s nghin cu vic biu din cc con s v chuyn i
gia cc h s thng c s dng trong my tnh: s nh phn (binary), s bt
phn (octal) v s hecxa (hecxadecimal)
C s ca h thng s l khong gi tr c th biu din c bi cc con s
trong h thng . V d c s thp phn c 10 con s c s dng biu
din d liu l 0,1,2,3,4,5,6,7,8,9. Cng thc tng qut biu din mt s du
phy tnh c s k l

Gi tr ca con s v tr th i c th hin bi bi. ng thi n v m l s


lng cc con s bn tri v bn phi du phy tnh. Vi cu trc ny, mi
mt con s c trng s nht nh. Gi s vi gi tr (541.25)10 c th hin
di c s 10. Ta s c n = 3, m = 2 v k = 10

Xem xt c s 2 (1010.01)2 vi n = 4, m = 2 v k =2
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 13

CHNG 2 : BIU DIN D LIU

V d trn gi cho ta phng php chuyn i mt con s c c s bt k sang


c s 10. T tng ca phng php l nhn mi mt con s vi c s ly tha
trng s v sau tnh tng tt c cc gi tr li. Ch rng s c trng s
ln nht c k hiu l MSB v s c trng s nh nht c k hiu l LSB

Chuyn i gia cc c s
Trong phn trn, chng ta tm hiu cch chuyn t c s bt k sang c s
10. Trong phn ny chng ta s tm hiu phng php chuyn ngc li t c s
10 sang c s bt k. V d ta cn chuyn s (23.375)10 sang c s 2. Chng ta
bt u bng cch chia s thnh phn nguyn v phn thp phn

Vi phn nguyn

Vi phn thp phn

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 14

CHNG 2 : BIU DIN D LIU


Kt qu ta s c

2.2.4. Biu din cc s nh phn, bt phn, v hecxa

Chuyn i qua li t c s 2 sang c s 8 v c s 16

2.2.5. Php ton c bn trong my tnh


Php ton c bn trong my tnh l php cng. T php ton ny, ta s pht
trin cc php ton khc (chng ta s ni r vn ny trong chng 3).
Nguyn tc thc hin php cng nh phn ging nguyn tc php cng s thp
phn m ta thc hin t ph thng

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 15

CHNG 2 : BIU DIN D LIU


V d

Lu rng s ln nht c th biu din c bng s 8 bit l (11111111)2 =


(255)10 v s nh nht l (00000000)2 = (0)10. Vi cch biu din nh vy, t
hp nm gia khong 11111111 v 00000000 l cc con s c gi tr trong
khong 0 n 255 l cc con s c gi tr dng. y l quy c ca s khng
du. Nu quy c s c du, khong mt na cc trng thi bit s c s dng
biu din s dng v mt na trng thi cn li biu din s m. 4 phng
php biu din s c du s c chng ta cp trong mc k tip ngay sau
y

2.2.6. S c du
Nh ni mc trn, s c du c th c biu din bng 1 trong 4 cch.
l phng php dng bit MSB lm bit du (sign-magnitude), s b 1 (ones
complement), s b 2 (twos complement) v s tha (Excess). Mi quan h
gia cc phng php biu din c m t bi bng di y

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 16

CHNG 2 : BIU DIN D LIU


S dng MSB lm bit du
Phng php ny c cch biu din s m v dng ging nh i vi c s 10
s dng du + v du . im khc bit l n s dng 1 bit c tn cng
pha tri lm bit du. Gi tr 1 tng ng vi s m v gi tr 0 tng ng vi s
dng. Cc con s cn li trong chui s biu din ln ca s theo m nh
phn thng thng. Vi cch biu din ny, chng ta s c 2 s mang gi tr 0 l
+0 v -0

Chng ta thng s dng phng php ny biu din s i vi s du phy


ng (xem tip mc 2.3)

S b 1
S b 1 l phng php cng t khi c s dng. Phng php ny o tt c
cc bt t 0 ln 1 v t 1 v 0 ca tt c cc bit trong s cn biu din. Vi cch
biu din ny, nu bit tn cng bn tri c gi tr l 1 th y l mt s m

Phng php s dng s b 1 rt him khi c s dng bi v khi s dng


phng php ny, vic so snh gi tr ca cc con s thc hin tng i phc
tp v c 2 trng thi bit biu din gi tr 0. Hn na, vic thc hin cc php
ton cng kh thc hin

S b 2
S b 2 c to ra t s b 1 cng thm 1 n v. S tn cng bn tri th hin
s l m (gi tr 1) hoc dng (gi tr 0). Phng php biu din ny khc
phc c nhc im ca 2 phng php biu din trnh by pha trn l ch
s dng 1 cch biu din cho s 0.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 17

CHNG 2 : BIU DIN D LIU

Bn thm v phm vi ca cc con s m n c th biu din c. Gi s s


chng ta cn biu din l cc con s 8 bit. Nh vy chng ta s c tt c 256
trng thi khc nhau biu cc gi tr. S dng 1 trng thi biu din s 0,
chng ta s cn 127 trng thi biu din cc gi tr dng v 128 trng thi
biu din gi tr m
S b 2 c s dng rng ri trong cc h thng my tnh. Chng ta s s dng
phng php biu din ny trong ton b phn sau ca ti liu ny

S tha
Phng php ny nh la my tnh, n lm cho my tnh khng phn bit c
l n ang tng tc vi s c du. S tha c to ra bng cch xc nh mt
gi tr tha (hay cn gi l gi tr dch chuyn gc 0) lm mc gi tr 0 gi s
l 128. Khi , gi tr gi s l +12 s c to ra bng cch tnh ton (128 + 12
= 140)10. V gi tr 140 khi biu din trong c s 2 s i din cho s +12

Cch biu din trn l s tha 128 ca cc gi tr +12 v -12. Chng ta c th


tham kho thm v s tha vi cc v d trong bng (s tha 4)
2.2.7. S BCD (Binary Coded Decimal)
M BCD s dng cc t hp 4 bit nh phn biu din cc gi tr t 0 n 9
ca s thp phn

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 18

CHNG 2 : BIU DIN D LIU


biu din s m trong m BCD, ta c th s dng mt trong hai phng
php l m b 9 v m b 10. Trong m b 9 v m b 10, s dng c biu
din bnh thng. Vi s m trong m b 9, t hp BCD cao nht th hin l s
m nu c gi tr ln hn hoc bng 5, v biu th s dng nu c gi tr nh
hn 5. Cc gi tr cn li c tnh bng cch ly gi tr 9 tr i gi tr dng
tng ng ti v tr . Trong v d trn, ti phn (b) ta thy, s -301 c t
hp bi

Tong t nh s b 9, s b 10 c to thnh s b 9 cng thm 1 n v.

2.3.

S du phy ng

2.3.1. Hn ch ca s du phy tnh


S du phy tnh c s lng chnh xc cc bit biu din s. biu din s
1 t, ta cn khong 40 bit pha bn tri ca dy s. biu din chnh xc 1
phn t, ta cng cn phi s dng khong 40 bit na pha bn phi sau du
chm. Nh vy, ta cn khong 80 bit biu din s trn.
Trong thc t, rt nhiu trng hp ta li cn tnh ton cc con s ln hn 1 t
thm ch ln hn kh nng tnh ton ca my tnh. tnh ton con s cng ln,
phn cng ca my tnh i hi phi mnh hn lu tr v tnh ton. Trong
lc , chnh xc cao ca php ton li t ra l khng cn thit i vi cc
php tnh s ln. Ngc li, i khi ta khng cn biu din s ln nu n c
to ra t cc s nh.
2.3.2. ln v chnh xc ca s du phy ng
Cch biu din ca s du phy ng cho php biu din s c gi tr ln bng
mt dy cc bit c s lng hu hn bng cch chia mt s lng bit biu
din chnh xc v s lng bit cn li s biu din ln ca con s

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 19

CHNG 2 : BIU DIN D LIU

V d
Trong v d trn, ln m con s c biu din ln ti khong 1023 cn
chnh xc ca con s c biu din bng mt s du phy tnh. biu din
gi tr ny, s du phy ng cn c 3 thnh phn: phn du m dng, s m
c s 10 v phn gi tr

c th biu din s c gi tr ln hn na, ta phi hi sinh 1 bit trong phn


khong gi tr tc l hi sinh chnh xc ca con s ang biu din tng bit
vo phn s m. Vic thay i cc bit ti cc trng ny s lm thay i
ln v chnh xc ca con s cn biu din

2.3.3. Chun ha v nhng bit c giu i


Mt vn ni cm ca s du phy ng l mt con s c th c biu din
bng cc quy chun khc nhau. iu ny gy kh khn cho vic so snh v thc
hin cc php ton. V d

trnh vic cng mt con s c biu din bng nhiu cch nh v d trn,
cc s du phy ng cn c chun ha. Theo , du phy c y sang
tri hoc sang phi v s m c iu chnh tng ng cho n khi s u tin
v pha bn phi sau du chm khng phi l mt s 0. Vi cch chun ha nh
vy, s tn cng bn phi v d trn l s c chun ha.
i vi trng hp s cn biu din l s nh phn. Sau khi chun ha, s cn
biu din s lun bt u bng s 1, khi khng nht thit cn phi biu din
s 1 . Thc t, con s 1 s khng c lu li v lun c b i. Kt qu
l s c thm 1 bit biu din con s v iu ny lm tng chnh xc ca
con s m ta cn biu din. Bit m ta b i c gi l nhng bit c du i

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 20

CHNG 2 : BIU DIN D LIU


2.3.4. Biu din s du phy ng trong my tnh
biu din s du phy ng, chng ta s dng cu trc sau
- Bit du c t tn cng pha bn tri
- Tip theo l 3 bit th hin s m c s 10. 3 bit ny c biu
din bng m tha 4 vi c s 16
- Tip theo l du phy c chun ha v 3 s hecxa biu
din ln ca s

By gi, ta s th chuyn i s (358)10 sang s du phy ng. Trc ht, ta


chuyn con s ta cn biu din sang s c c s 16.

Khi ta c (358)10 = (166)16. Bc tip theo l chuyn sang s du phy


ng

Ch rng (160)10 = (100)16. Khi ta c

S m ta c l 3, s ny cn c chuyn sang s tha 4. Tc l n s c gi


tr trong c s 10 l 3 + 4 = 7 = (111)2. Cui cng ta c

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 21

CHNG 2 : BIU DIN D LIU


Chng ta cn lu rng du chm trong chui s trn ch l mang tnh cht
tng trng, n khng h tn ti trong my tnh.
Vi 3 bit s m, ta s dng m tha 4 ch khng phi l m b hay m c bt
du l bi v khi s dng m tha 4, vic tnh ton (cng tr) tr nn rt thun
tin. thc hin vic cng hay tr 2 s, s c s m nh hn s c phi
chun ha bng cch tng s m n gi tr bng vi s m ca s ln hn. Sau
khi thay i, v m tha khng cn s phn bit ca s c du v khng du nn
ta ch cn so snh cc bit t cao n thp l ta c th so snh c s no ln
hn
Bn lun thm mt cht v s so snh 2 s m tha 4. Trong m tha 4, s nh
nht l -4 c biu din bng 3 k t 000, s ln nht l +3 c biu din bi
111. Cc con s -3, -2, -1, 0, 1 v 2 ln lt c biu din l 001, 010, 011,
100, 101, v 110. R rng s ln hn trong dy c cc bt t ln n nh l ln
hn.

2.3.5. Biu din s du phy ng theo chun IEEE 754


Trong v d phn trn, s du phy ng c biu din bi 12 bit, vy my
tnh s s dng bao nhiu bit biu din. V mt l thuyt l khng c mt gi
tr c nh. Do vy, tt c cc my tnh c th hiu c d liu ca nhau, v
to s thng nht cho cc lp trnh vin khi x l d liu, vic hnh thnh nn
mt tiu chun thng nht l mt tt yu. y l nguyn nhn ca s hnh thnh
nn chun IEEE 754
Cc phng php biu din

Mt vi minh ha

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 22

CHNG 2 : BIU DIN D LIU

C 1 quy c biu din gi tr v cng l s m l 1111 1111 v khong gi tr


l cc con s 0, bit du c th l 0 hoc 1
Kt qu ca php ton 0/0 l mt s bt nh. Khi , kt qu c tr v l
NaN (Not a Number). Chui quy c c s m l 1111 1111, bit du l 0 hoc
1, cn gi tr l mt s khc 0

2.4.

M k t

Khc vi cc con s c khong gi tr l v hn, s lng cc k t l mt s


hu hn v c th c biu din bi mt s lng cc bit. C 3 phng php
biu din cc k t thng dng l m ASCII, m EBCDIC v m Unicode
2.4.1. M ASCII
ASCII l vit tt t American Standard Code for Information Interchange.
Phng php biu din ny s dng 7 bit m ha k t, trong cc k t c
m t 00 n 1F v k t c m 7F l cc k t iu khin cc chc nng c
bit. Cc k t c s dng cho vic truyn d liu, iu khin vic in n
v mt s qu trnh khc. Cc k t c m cn li u l cc k t c th in
c bao gm cc k t ch ci, cc con s, cc k hiu thng thng v
khong trng

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 23

CHNG 2 : BIU DIN D LIU

2.4.2. M EBCDIC
C mt vn ca m ASCII l n ch c th biu din c 128 k t khc
nhau bi v hn ch cc k t c trong bn phm. M EBCDIC (Extended
Binary Coded Decimal Interchange Code) c s dng m rng thnh m 8
bit. M ny c s dng rng ri trong cc my ch mainframe ca IBM. T
cc m 7 bit ca m ASCII, ta thm vo 1 bit 0 hoc 1 thu c m
EBCDIC
Vic s dng m ny khng lm thay i kch thc ca vng nh trong my
tnh. Tuy nhin, khi thc hin truyn d liu, vic truyn m 8 bit tn thi gian
hn vic truyn s 7 bit

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 24

CHNG 2 : BIU DIN D LIU

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 25

CHNG 2 : BIU DIN D LIU


2.4.3. M Unicode
Bng m ASCII v m EBCDIC h tr cc k t Latin c s dng trong my
tnh. Tuy nhin, trn th gii c rt nhiu cc b k t khc nhau, v do , k
t ASCII khng th biu din c tt c cc ngn ng ny. V nguyn nhn ,
mt tiu chun mi c xy dng h tr cc ngn ng trn ton th gii,
l chun Unicode
Unicode l mt chun c tnh cht m. N s lun cp nht cc k t mi vo
n v cc k t ny s c chun ha, tinh ch vic s dng c thun li.
Trong phin bn 2.0, c 38.885 k t c m ha bao gm cc k t ca
ngn ng c bn ca Chu M, Chu u, Trung ng, Chu Phi, n , Chu
Thi Bnh Dng,...
Chun Unicode s dng m 16 bit biu din k t, trong c mt s tng
ng 1-1 gia m 16 bit v k t biu din. Ging nh m ASCII, Unicode
khng c mt m hnh phc hp. Mc d Unicode h tr nhiu k t hn
ASCII hay EBCDIC nhng y cng khng chc chn l chun cui cng m
chng ta s dng. Thc t, chun Unicode 16 bit ch l mt thnh phn ca
chun k t 32 bit ISO 10646 (UCS-4)
Bng m di y lit k 256 k t u tin ca Unicode 2.1 trong c 128 k
t ging nh trong bng m ASCII

TNG KT CHNG
Tt c cc d liu trong my tnh c biu din bi mt chui cc bit. Cc bit
c th c nh ngha i din cho s nguyn, s c du phy tnh, s
du phy ng hoc l mt k t

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 26

CHNG 2 : BIU DIN D LIU

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 27

CHNG 3 : CC PHP TON S HC


CHNG 3: CC PHP TON S HC

3.1.

Tng quan

Trong chng trc, chng ta tm hiu cc phng php biu din cc con s
trong my tnh s nhng chng ta mi ch lm quen vi cc php ton c bn
m cha tm hiu k my tnh thc hin cng vic nh th no. Trong
chng ny, chng ta s tm hiu 4 php ton c bn trong my tnh l cng,
tr, nhn, v chia, tm hiu xem my tnh s l cc php ton c thc hin
nh th no i vi cc trng hp cc con s trong php ton l cc s du
phy tnh, du phy ng.
3.2.

Php cng v tr vi s du phy tnh

Php cng s nh phn v ngha ca hin tng trn overflow c chng


ta im qua trong chng 2. Trong chng ny, chng ta s xem xt k php
cng v tr i vi s khng du v c du mt cch k cng. T khi s b 2
c s dng biu din mt con s n nay, n c s dng rt ph
bin, do vy, chng ta s tp trung tm hiu cc php ton trn s b 2
3.2.1. Php ton cng v tr vi s b 2
Trong phn ny, chng ta s tm hiu php cng i vi s b 2 c du. Ti sao
li ch l php cng m khng phi l php tr ? Php tr bn cht cng l php
cng, chng ta c th coi php tr hai s a v b l mt php cng nh sau

Vi cch biu din nh trn, chng ta c c s m t mt s bt k bng cch


ly s b 2 ca chng (tm s b 1 ri cng thm 1 n v), v thc hin
php tr th ta s thc hin 1 php cng.

Xem xt php cng trong cc trng hp cc s l 2 s dng, 1 s m v 1 s


dng v 2 s m. Gi s cc s c biu din l s 8 bit

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 28

CHNG 3 : CC PHP TON S HC

Vi 3 v d v php cng trn, ta thy nguyn tc chung ca php cng l rt


quen thuc v c trnh by trong chng 2. y ch c mt vn duy
nht cn bn lun l bit c c loi b trong php cng gia 1 s m vi 1
s dng v gia 2 s m. Mc d bit c c set up ln 1, nhng iu ny
khng c ngha l php ton ca chng ta thc hin sai. 2 v d trn
chng minh rt r rng mc d bit c l 1 nhng kt qu li hon ton ng.

Trong trng hp no kt qu l chp nhn c khi bit c bng 1


Khi tin hnh php cng 2 s dng c gi tr ln v cng du, hin tng trn
du s xy ra khi s lng cc bit d liu biu din con s khng ln. V d
khi ta cng 2 s +80 v +50 c biu din bi s 8 bit c du. V mt ton hc
ta s c kt qu l +130 nhng my tnh s cho ta kt qu l -126

iu ny hon ton khng ngc nhin v s 8 bit c du ch c gi tr ln nht l


+127. Mc d chui s 10000010 c gi tr ng l 130 nhng kt qu khng
c chp nhn bi lp trnh vin.
phn bit khi no th kt qu c th c chp nhn, chng ta c 2 nh
ngha sau y
- Khi cng 2 s cng du, nu kt qu c du ngc li ng thi
c hin tng trn du th kt qu l sai. Nu cng 2 s khc
du, hin tng kt qu sai do trn du s khng bao gi din
ra
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 29

CHNG 3 : CC PHP TON S HC


- Nu mt s m tr i mt s dng v kt qu l dng hoc
mt s dng tr i mt s m v kt qu l m th hin tng
trn du xy ra v kt qu l khng chnh xc
3.2.2. Mch phn cng ca php cng v tr
Nguyn l ca php cng

Bng chn l v mch m t dng PLA

Mch cng 4 bit c nh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 30

CHNG 3 : CC PHP TON S HC

Tng hp mch cng 16 bit t mch cng 4 bit

Tng t ta c th thit k c mch tr vi bng chn l v m hnh nh sau

B tr 4 bit c nh

Vi phn tch v mch tr vi bn cht l php cng vi s tr c chuyn


sang s m, ta c th thit k c mch va thc hin c php cng v tr nh
di y

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 31

CHNG 3 : CC PHP TON S HC

Trong mch trn, khi thc hin php cng, tn hiu chn
/
c tn
hiu l 0. Khi 4 phn t XOR khng c tc dng trong mch. Cc chn bi ln
s a trc tip vo cc b cng c nh. Phn t nh C0 l 0. Khi thc hin
/
c tn hiu bng 1. 4 phn t XOR
php tnh tr, tn hiu chn
c chc nng o cc bit ca cc tn hiu bi hnh thnh nn s b 1. Tn hiu C0
l 1 c a vo b nh c tc dng chuyn s b 1 sang s b 2 tc l s
m ca B. Nh vy, mch s thc hin php ton A + (-B)

3.2.3. Php cng v tr i vi s b 1


Mc d khng cn c s dng mt cch rng ri nhng php ton vi s b 1
tng c s dng trong nhng ngy u tin ca my tnh in t. Php
ton i vi s b 1 khc mt cht i vi s b 2 l bit trn khng b loi b
m n c s dng trong php ton. Cch s dng bit nh ny c gi l
lm trn bit nh. Phng php lm trn bit nh c trnh by vi 2 v d
di y, p dng cho 2 php ton l s nguyn v s khng nguyn

Ti sao li cn phi c bc lm trn bit nh. tr li cu hi ny chng ta


lt li 2 vn m chng ta bit trong cc chng trc.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 32

CHNG 3 : CC PHP TON S HC


- S b 1 c 2 gi tr chui s biu din s +0 v -0. V mt gi
tr chng hon ton bng nhau nhng v cch biu din th
chng cch nhau 1 n v. Do ta cn phi b gi tr ny trong
php ton
- Vi php cng 2 s cng du dng v kt qu cha vt qua
kh nng biu din ca chui s nh phn, hin tng trn s
khng xy ra, kt qu vn ng. Nu hin tng trn xy ra, kt
qu sai. Khi cng 2 s m, hoc gia 1 s m v 1 s dng,
hin tng trn xy ra, vic lm trn bt nh khc phc hin
tng 2 s +0 v -0
3.3.

Php nhn v chia vi s du phy tnh

Php nhn v chia vi s du phy tnh c th c phn tch thnh t hp cc


php ton cng, tr v dch. Trong phn ny, chng ta s phn tch k phng
php thc hin php ton nhn v chia i vi s du phy tnh, u tin l vi
s khng du ri sau l s c du
3.3.1. Php nhn s khng du
Qu trnh thc hin nhn s khng du c thc hin tng t nh i vi s
thp phn

Php nhn c thc hin bng cch ln lt dch sang tri s nhn M, cc kt
qu ca php dch ny c thc hin cng vi nhau hay khng ty thuc vo
gi tr ca bit tng ng trong s em nhn Q. Kt qu cui cng P l kt qu
ca php nhn. Hai s n bit nhn vi nhau s cho ta kt qu l mt s 2n bit.
Khi thc hin php nhn i vi 2 s n bit c du, kt qu c ln l s 2n-1
bit trong c 1 bit du

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 33

CHNG 3 : CC PHP TON S HC


S nguyn l mch phn cng

Mch phn cng thc hin php tnh cng tng t nh nguyn tc thc hin
php ton cng. Phn cng ca mch bao gm 1 b cng 4 bit v 3 thanh ghi c
di 4 bit v 1 thanh ghi trn 1 bit. thc hin php nhn, s nhn M c
a vo thnh ghi M, s em nhn c a vo thanh ghi Q, ni dung cc
thanh ghi A v C cn li c t gi tr 0. Trong qu trnh thc hin php
cng, gi tr ca bit tn cng bn phi ca thanh ghi Q s quyt nh c thc
hin php cng gi tr M vo b cng hay khng. Sau khi thc hin php cng
, c nh C, s em nhn Q v thanh ghi A c dch sang phi 1 bit. iu
ny c hiu ng tng ng nh y s nhn M dch sang phi tng ng vi
qu trnh nhn 2 s bng tay, ng thi a cc bit tip theo trong thanh ghi Q
vo b iu khin dch v cng thc hin php ton
3.3.2. Php chia s khng du
Trong qu trnh thc hin php chia s nh phn, ta phi c gng tr s chia M
t s b chia Q bng cch s dng t nht s bit trong s b chia. Nguyn l ca
php chia ngc li hon ton vi php nhn. Trong php chia, thay v dch
sang phi trong php nhn, ta s thc hin dch sang tri; thay v thc hin php
cng, ta s thc hin php tr. Nu kt qu ca php tr l m (do trn s), ta s
thc hin khi phc li gi tr trc khi tr, dch tip ri tip tc php tr
thc hin tip php chia.
S mch phn cng

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 34

CHNG 3 : CC PHP TON S HC

Cu to ca b chia bao gm 1 b cng 5 bit, b iu khin, thanh ghi 4 bit lu


tr s b chia Q, 2 thanh ghi 5 bit lu tr s chia M v phn d kt qu php
chia A. Trong mch ny, A v M l cc thanh ghi 5 bit v ta cn s dng bit c
trng s ln nht xc nh du ca kt qu php tr, tc l kim tra xem php
tr c c thc hin hay khng
thc hin chia 2 s, s b chia c t trong thanh ghi Q, s chia t trong
thanh ghi M, thanh ghi A v cc bit cao nht ca M c xa v 0. A v Q c
dch sang tri 1 bit ri ly gi tr tr i M. Kt qu c bit tn cng bn tri c
gi tr l 1, A s c khi phc v bit tn cng bn phi ca Q b xa v 0 (tc
l kt qu php chia ca bit ny l 0 v php tr khng hon thnh). Nu bit tn
cng bn tri ca A c gi tr 0, php tr thc hin thnh cng, tc l php
chia s c kt qu l 1, khi q0 c set ln 1. Ta c th xem xt cc bc
din ra v d thc hin php chia vi s chia l 3, s b chia l 7 lu trn
3.3.3. Php nhn v chia s c du
Trong trng hp s thc hin php nhn u l s dng, vic thc hin php
ton s khng c g khc nh trong trng hp s khng du.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 35

CHNG 3 : CC PHP TON S HC


Trng hp nhn mt s m vi mt s dng, ta hy xt v d nhn s +1 vi
s -1-

Kt qu ng phi l -1 nhng y, kt qu c gi tr l +15. Nguyn nhn ca


hin tng ny l bit du khng c m rng v pha tri biu din bit
du. khc phc hin tng ny, mt phn ca cc phn t thc hin php
nhn s c m rng ln bng vi kt qu. Ta thy ngay gi tr ca php
nhn ng trong hnh biu din bn phi.
Php chia c thc hin phc tp hn rt nhiu. Chng ta s khng tm hiu
thm v n na. Tuy nhin, v mt nguyn tc chung, chng ta thc hin php
chia s c du bng cch chuyn n sang s dng, thc hin php chia ri
chuyn tr li s c du.

3.4.

Php ton vi s du phy ng

Php ton i vi s c du phy ng c th c suy lun t php ton vi s


c du phy tnh m thut ton c tm hiu mc 3.3. mc tip theo ny,
chng ta s tm hiu lm th no c th thc hin php ton du phy tnh vi
cc s c s 2 v c s 10
3.4.1. Php cng v tr s du phy ng
Php ton s du phy ng khc vi php ton s nguyn v biu din s du
phy ng c 2 trng quan trng l s m v trng ln. thc hin c
php ton, trng s m cn c gi tr bng nhau c 2 ton hng. Vi 2 s c
s 10 thng thng, s m 2 ton hng c chun ha sao cho c gi tr
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 36

CHNG 3 : CC PHP TON S HC


bng nhau. Sau , vic thc hin php ton cng v tr c thc hin trong
trng ln. Phng php ny n gin, tuy nhin hn ch ca n l kt qu
c th c nhng sai s. phn tch hin tng ny, ta hy tnh php tnh (.101
x 23 + .111 x 24) vi ln ca trng gi tr l 3 con s. u tin chng ta iu
chnh s m ca s b hn cho bng vi s m ca s ln hn. Do chng ta
c .101 x 23 = .010 x 24. Vic ny lm mt gi tr .001 x 23 ca ton hng ny.
Kt qu php cng

Vic lm trn tip tc din ra v trng ln ch c 3 con s, v chng ta li


mt i 0.001 x 24 na

3.4.2. Php nhn v chia s du phy ng


Php nhn v chia s du phy ng c thc hin tng t nh php cng v
tr, ngoi tr cc trng du, ln v trng s m s c thc hin mt
cch c lp. Nu cc ton hng c cng du, kt qu thu c s l s dng.
Nu khc du, kt qu l s m. S m s c thc hin chun ha bng cch
thc hin php cng i vi php nhn v thc hin php tr i vi thc hin
php chia. ln ca kt qu c c bng php nhn hoc chia ph thuc vo
php ton m ta thc hin. Gi tr ny c thc hin mt cch bnh thng nh
l s c du phy tnh.
V d nh vi h thng my tnh c trng ln c biu din bng 3 bit. Ta
thc hin php ton (+.101 x 22) x (-.110 x 2-3). 2 ton hng ny c du khc
nhau nn kt qu c du l s m. By gi ta s thc hin php cng s m
thc hin php chia, v do ta c s m ca kt qu l 3 + -3 = -1. Tip theo ta
s nhn trng ln vi nhau, kt qu l .01111. Sau chun ha i vi h
thng 3 bit, ta s c kt qu php nhn l

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 37

CHNG 3 : CC PHP TON S HC


TNG KT CHNG

Cc php ton trong my tnh c th c thc hin tng t nh cch m


chng ta tnh ton trong c s 10 bng tay, ch khc l chng ta s thc hin i
vi c s m my tnh s dng. Trong my tnh, s b 2 v s b 10 c s
dng biu din cc php ton vi s nguyn. Trong khi , s c du c s
dng biu din ln cc s m v dng trong cc phng php biu din
chun

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 38

CHNG 4 : NGN NG MY V HP NG
CHNG 4: NGN NG MY V HP NG

Trong chng ny chng ta s gii quyt ni dung trng tm ca cu trc my


tnh, l loi ngn ng m my tnh c th hiu c thng c gi l ngn
ng my. Ngn ng my thng c tho lun nhiu nht l hp ng. y l
loi ngn ng m chc nng ca n tng ng vi ngn ng my ngoi tr
vic n s dng cc lnh gn gi vi ngn ng thng thng. Chng hn nh
lnh cng ni dung thanh ghi r0 vi thanh ghi r1 v ghi kt qu vo thanh ghi r2
ADD r0, r1, r2 s d hiu v trc quan hn chui lnh tng ng
0110101110101101
Chng ta s bt u bng vic m t tp lnh ISA (Intruction Set
Architecture) bng cch xem xt cc lnh v ton hng ca n. Ngn ng ISA
ny tng ng vi cp hp ng c th hin trong hnh 1.4 chng 1. N l
cp gia cp ngn ng cp cao (ti cp ny, lp trnh vin khng cn quan tm
n cu trc phn cng my tnh)v cp iu khin hot ng (ti cp ny, ni
dung ca cc thanh ghi iu khin tc ng trc tip n hot ng ca my
tnh)
m t bn cht ca hp ng, chng ta s nghin cu m hnh my ARC, mt
m hnh n gin ca kin trc my tnh SPARC l m hnh thng dng ca
my tnh Sun
Chng ta s minh ha cc chc nng khc nhau ca cc lp cu lnh bng cc v
d v chng trnh hp ng
4.1. Cc thnh phn cng ca cu trc tp lnh
Mt my tnh theo m hnh ISA di ci nhn ca mt lp trnh vin bao gm
tt c cc phn cng, cc lnh v cc d liu m chng ta c th truy cp c.
Trong phn ny, chng ta s xem xt cu trc phn cng ca my tnh di con
mt ca mt lp trnh vin. Chng ta s bt u bng vic tho lun v cu trc
ca my tnh, l CPU v tng tc ca n vi b nh chnh, l s xut
nhp d liu ca my tnh vi bn ngoi
4.1.1. Nhc li v m hnh cu trc bus

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 39

CHNG 4 : NGN NG MY V HP NG

Hnh 4.1. M hnh cu trc bus


Hnh 4.1. nhc li cho chng ta cu trc ca m hnh cu trc bus m chng ta
xem xt trong chng 1. Mc ch ca h thng bus l gim thiu cc lin
kt gia CPU v cc thnh phn ca n. Thay v vic s dng cc mi lin kt
ring r gia b nh v cng ngoi vi I/O, CPU c kt ni vi cc thnh phn
bng h thng bus. Trong mt vi cu trc khc phc tp hn, CPU s s
dng cc h thng bus ring bit kt ni cc thnh phn
Khng phi l tt c cc thnh phn h thng c kt ni vi nhau theo cng
mt phng thc. CPU to ra cc a ch v c a ln bus a ch, v b nh
nhn tn hiu a ch ny t bus a ch . B nh khng to ra cc tn hiu a
ch v CPU khng bao gi nhn cc tn hiu a ch, v do khng c mt s
tng ng trong cc ng bus
Thng thng, ngi s dng s vit cc chng trnh bng ngn ng cp cao,
sau c chuyn sang hp ng. Chng trnh bin dch s chuyn tip
chng trnh hp ng ny thnh m my c lu tr trn a. Trc khi thc
thi chng trnh, m my s c np t a ln b nh chnh di s iu
khin ca h iu hnh
Trong qu trnh thc thi cc lnh ca chng trnh, tng lnh s c np vo
ALU t b nh mt cch ln lt cng vi d liu tng ng cn c x l
ca lnh . Kt qu ca chng trnh s c a n cc thit b nh mn
hnh hay a. Tt c cc hot ng c phi hp bi b iu khin m
chng ta s ni k hn trong chng 6.
iu quan trng chng ta cn nh rng cc lnh c x l bi ALU mc d tt
c cc lnh v d liu ca n c lu tr trn b nh. iu c ngha l cc
lnh v d liu cn c np t b nh vo cc thanh ghi ca ALU, v kt qu
s c lu ngc tr li vo b nh.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 40

CHNG 4 : NGN NG MY V HP NG
4.1.2. B nh
B nh ca my tnh bao gm mt tp hp mt s cc thanh ghi c nh s
th t hay cn gi l nh a ch, mi a ch c th lu tr 1 byte c ln 8
bit. Mt nibble hay i khi cn c gi l nybble c nh ngha l 4 bit lin
k nhau. ngha ca cc khi nim bit, byte, v nibble ni chung khng ph
thuc v cu trc ca my tnh nhng ngha ca word s ph thuc vo tng
cu trc c th. Mt word thng thng c th l 16, 32, 64 v 128 bit, vi word
32 bit c xem l dng chun ca my tnh. Hnh 4.2 lit k cc dng d liu
ca my tnh

Hnh 4.2. Cc dng d liu my tnh


Trong my tnh nh a ch theo byte, d liu nh nht m n c th tc ng
trc tip trong b nh l byte. Tuy nhin, thng thng cc lnh s c v ghi
mt vi byte lin tip. Nhng cm byte nh vy s c lu tr lin tip trong
b nh, c nh a ch bi byte c a ch thp nht. Hu ht cc my tnh
ngy nay c th truy cp theo byte, half word, v double word.
Khi s dng cm byte, c 2 phng php chnh lu d liu vo trong b nh:
byte c trng s ln c lu vo a ch thp, c gi l big-endian, hoc l
byte c trng s nh c lu vo a ch thp, c gi l little-endian.

Hnh 4.3. Phng php lu d liu trong b nh


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 41

CHNG 4 : NGN NG MY V HP NG
Cc nh trong b nh c nh a ch tuyn tnh nh th hin trn hnh 4.3.
Mi a ch duy nht tng ng vi mt t c bit gm 4 byte. Cc a ch
c nh tng dn bt u t 0 v a ch cao nht c xc nh l dung
lng ca b nh tr 1 n v. a ch cao nht ca b nh 232 byte l 232-1.

Hnh 4.4. T chc b nh trn my tnh


Hnh 4.4. m t t chc b nh trn my tnh. My tnh trong v d ny c
khng gian a ch 32 bit, c ngha l chng trnh c th truy cp vo bt c
nh no trong khng gian a ch t 0 n 232-1. Khng gian a ch trong my
tnh s c chia thnh cc vng c chc nng ring bit l cc vng dnh
cho h iu hnh, cc cng ngoi vi I/O, ngi s dng v stack. Cch phn
vng gia cc my tnh khc nhau cng khc nhau. iu l gii ti sao
chng trnh thch hp cho nhng dng vi x l ny li khng thch hp i vi
nhng dng vi x l khc.

4.1.3. CPU
Chng ta va tm hiu cu trc c bn nht ca my tnh l h thng bus, b
nh, by gi chng ta s tm hiu cu trc bn trong ca CPU. Mt cch n
gin nht, CPU bao gm khi d liu bao gm cc thanh ghi cha v b ALU,
v mt khi iu khin c s dng bin dch cc lnh v tc ng n cc
thanh ghi dch chuyn

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 42

CHNG 4 : NGN NG MY V HP NG

Hnh 4.5. Cu trc n gin ca CPU


Khi iu khin ca my tnh c trch nhim thc thi cc lnh ca chng trnh
c lu trn b nh (ta s tm hiu k hn trong chng 9). C 2 thanh ghi
lin kt gia khi iu khin v khi d liu l thanh ghi m chng trnh PC
(Program Counter) v thanh ghi lnh IR (Instruction Register). Thanh ghi PC
cha a ch ca lnh ang c thc thi trong ALU. Lnh ny s c np t
b nh, c lu trong thanh ghi IR v c bin dch ti . Cc bc thc thi
1 lnh c ch ra bi cc bc di y
1.
2.
3.
4.
5.

Np lnh k tip s c thc thi t b nh


Gii m lnh
c cc ton hng t b nh chnh nu cn
Thc thi lnh v lu tr kt qu
Quay v bc u tin

Qu trnh thc hin trn c bit n bng ci tn chu k lnh.


Ngoi ra, khi iu khin cn c trch nhim phi hp cc thnh phn khc
nhau thc thi lnh. C th coi rng c mt my tnh nh bn trong my
tnh ln m nhim mi hot ng ca CPU. Chng ta s tm hiu k hn
vn ny trong chng 6

M hnh iu khin lung d liu

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 43

CHNG 4 : NGN NG MY V HP NG

Hnh 4.6. Mt m hnh lung d liu


Lung d liu l mi lin kt gia cc thanh ghi trong CPU v khi ALU. Hnh
4.6. l mt m hnh lung d liu ca my tnh. Cc thanh ghi trong m hnh
ny c th c coi l mt vng nh truy cp nhanh, c lp vi vng nh ca
h thng, c s dng lu tr tm thi trong qu trnh tnh ton. Kch c
ca h thng thanh ghi ny c th t vi thanh ghi cho ti vi nghn thanh ghi.
Cng ging nh b nh, cc thanh ghi c nh a ch tng dn bt u t 0,
tuy nhin khng gian a ch ca cc thanh ghi nh hn nhiu so vi khng gian
b nh. S khc bit ln nht gia h thng thanh ghi v b nh h thng l h
thng thanh ghi nm trn CPU, nn hot ng ca n nhanh hn. D liu dch
chuyn gia cc thanh ghi nhanh hn khong 10 ln so vi dch chuyn d liu
vi b nh h thng.
Khi ALU c th thc thi cc lnh c 1 hoc 2 ton hng. Cc ton hng c
s dng s c la chn bi khi iu khin. Cc ton hng ny c np t
cc lung d liu c nh du bi nhn Register Source 1 (rs1) v
Register Source 2 (rs2). u ra t ALU l lung d liu c nh nhn
Register Destination (rd) c a ngc tr v h thng cc thanh ghi.
Trong hu ht cc h thng, cc lin kt bao gm c cc lung d liu u c
th truy cp c

Tp lnh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 44

CHNG 4 : NGN NG MY V HP NG
Tp lnh l tp hp cc cu lnh m vi x l c th thc thi c, do n phi
c nh ngha bi vi x l. Tp lnh cho mi h vi x l l hon ton khc
nhau. Chng khc nhau s lng cc cu lnh, cc ton t, ton hng, thm
ch c kt qu thu c t vi x l cng khc nhau. S khng tng thch ny
li hon ton tri ngc vi kh nng tng thch ca cc ngn ng bc cao nh
C, Pascal,...Chng trnh vit bng ngn ng cp cao c th chy c trn hu
ht cc h thng vi x l khc nhau nu c bin dch li cho ph hp vi h
vi x l tng ng.
Chng ta s xem xt mt tp lnh c th trong chng ny

Phn mm to ra ngn ng my
Trnh bin dch (Compiler) l mt chng trnh my tnh c s dng
chuyn mt chng trnh c vit bng ngn ng cp cao nh C, Pascal, hay
Fortran sang ngn ng my. Cc trnh bin dch cng mt mc ngn ng c
cng mt dng u vo nhng chng s c nhng u ra khc bit ph thuc
vo chng loi vi iu khin. Ngoi ra, khi bin dch cng mt chng trnh cho
cng mt loi vi x l, ta s nhn c cc kt qu khc nhau ph thuc vo cc
trnh bin dch khc nhau.
Vic s dng cc trnh bin dch to thun li ln cho cc lp trnh vin.
l vic lp trnh tr nn d dng v ngn ng s dng gn vi ngn ng i
thng, khng phi l chui cc con s 0 v 1 d nhm ln. Tuy nhin, khi lp
trnh bng ngn ng cp cao, tc x l ca h thng b nh hng do h
thng tn thi gian chuyn chng trnh t ngn ng cp cao thnh ngn ng
hp ng, sau li phi chuyn tip sang ngn ng my. Cc ngn ng lp
trnh hin nay cng h tr vic lp trnh kt hp c ngn ng cp cao v ngn
ng my trong cng mt chng trnh tn dng nhng u im ca c 2 loi
ngn ng cp cao v cp thp.
Ngn ng cp cao cho php chng ta khng cn quan tm n cu trc ca my
tnh trong qu trnh lp trnh. cp ngn ng my, lp trnh, s hiu bit
v cu trc my tnh l iu thit yu. Nhng nu ta lp trnh bng ngn ng
cp cao nh C, Pascal, hay Fortran, chng ta khng cn quan tm n iu v
c trnh bin dch chuyn cc chng trnh thnh cc chng trnh tng
ng vi mi mt h thng vi x l.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 45

CHNG 4 : NGN NG MY V HP NG
4.2.

My tnh ARC (A RISC Computer)

hiu r hn cc ni dung ca chng ny, chng ta s nghin cu mt m


hnh cu trc da trn mt kin trc vi x l m rng c thng mi ha
SPARC (Scalable Processoer Architecture) c pht trin bi Sun
Microsystems vo nhng nm 1980. SPARC nhanh chng tr thnh kin trc
ph bin t khi c gii thiu bi y l mt h thng m. Kin trc y
ca SPARC c hon thin vo khong nm 1992. Trong ni dung ca
chng ny, chng ta s xem xt mt thnh phn ca SPARC l my tnh da
trn cng ngh RISC, my tnh ARC. ARC l chc nng quan trng nht ca
kin trc SPARC nhng chc nng ny li khng c trong cc vi x l ngy nay

4.2.1. B nh ca ARC
My tnh ARC l my tnh 32 bit c b nh nh a ch theo byte, tc l my
x l cc d liu c rng 32 bit, nhng d liu c lu tr l dng byte.
ng thi, rng ca tn hiu a ch l 32 bit c nh t thp n cao.
Hnh 4.4 chnh l t chc ca b nh trong my tnh ARC, trong
Di a ch 211 = 2048 thp nht trong khng gian nh c s dng
lm vng nh d tr cho h iu hnh
Vng nh dnh cho ngi s dng c dng np chng trnh
hp ng. Vng nh ny bt u t a ch 2048 n khong stack
ca h thng
Stack h thng bt u t a ch 231-4 v gim dn v nhng a ch
thp hn. ln ca stack l khng xc nh trc v thng thng
n ph thuc vo lp trnh vin
Di a ch t 231 n 232-1 c s dng nh a ch cc cng
ngoi vi I/O, vi mi cng c a ch hon ton ring bit
My tnh ARC c mt vi dng d liu khc nhau nh byte, half word,
integer,... nhng hin ti, chng ta s ch xem xt n dng d liu s nguyn 32
bit. Mi s nguyn c lu tr trong 4 byte trong b nh. ARC da trn kin
trc big-endian tc l nhng byte c trng s cao s c nh a ch thp.
a ch ln nht c th m ARC c c l 232-1, do tn hiu a ch ln nht
m CPU a ra l 232-4

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 46

CHNG 4 : NGN NG MY V HP NG
4.2.2. Tp lnh ca ARC
Trc khi tm hiu v tp lnh ca ARC, chng ta s xem xt k hn v cc
chc nng ca CPU
My tnh ARC c 32 thanh ghi 32 bit a mc ch, cng vi PC v
IR
Thanh ghi trng thi vi x l PSR (Processor Status Register) cha
cc thng tin v trng thi hot ng ca CPU, bao gm c cc
thng tin v kt qu ca php ton trong ALU.
Mi mt lnh c lu tr trn 1 word (32 bit)
ARC l my tnh loi load-store tc l ti 1 thi im, n ch cho
php np mt gi tr vo 1 thanh ghi hoc lu 1 gi tr vo mt a
ch trn b nh. Cc ton hng trc v sau khi c x l bi ALU
u c lu tr trn cc thanh ghi. Kin trc SPARC c khong
200 lnh, tp lnh ca ARC cng da trn nn lnh . Hnh 4.7 m
t mt tp con gm 15 lnh ca ARC. Cc lnh c th hin di
dng biu tng vi ngha ring bit
ngha
Biu
tng
lnh
Tng tc b Ld
Np ni dung thanh ghi t b nh
St
nh
Ct ni dung thanh ghi vo b nh
Php ton logic Sethi
Set 22 bit cao ca mt thanh ghi
Andcc
Thc hin php AND tng bit
orcc
Thc hin php OR tng bit
Orncc
Thc hin php NOR tng bit
Srl
Dch sang phi
Php ton s Addcc
Cng
hc
iu
khin Call
Gi chng trnh con
lung
chng Jmpl
Nhy v lin kt tr v t chng
trnh
trnh con
Be
R nhnh nu bng
Bneg
R nhnh nu nh hn 0
Bcs
R nhnh nu c c carry
Bvs
R nhnh nu trn d liu
Ba
Lun lun r nhnh
Hnh 4.7. Mt vi lnh c bn ca ARC

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 47

CHNG 4 : NGN NG MY V HP NG
Nhm lnh dch chuyn d liu bao gm 2 lnh ld v st l 2 lnh duy nht
cho php truy cp vo b nh h thng. Lnh sethi s nh li gi tr ca 22
bit cao trong 1 thanh ghi theo mt gi tr nh trc.
Nhm lnh ton hc v lnh logic gm cc lnh andcc, orcc, orncc
c s dng thc hin cc php ton AND, OR, NOR theo tng bit ca cc
ton hng. Mt trong 2 ton hng bt buc phi l 1 thanh ghi. Kt qu php
ton s c t vo 1 thanh ghi. Lnh dch chuyn d liu srl c s dng
dch phi ni dung ca mt thanh ghi ng thi s thm chui cc con s 0
vo nhng bit tn cng pha bn tri. Lnh sra (khng c m t trong hnh
4.7) s dch ni dung cc bit trong thanh ghi sang bn phi, a ni dung cc bit
LSB quay tr v v tr tng ng thnh cc bit MSB.
Nhm lnh iu khin bao gm 2 lnh ch yu l lnh call v jmpl. y l
cp lnh c s dng gi chng trnh con v nhy t chng trnh con tr
v chng trnh chnh. Nhng lnh nh be, bneg, bcs, bvs v ba cn
c tn l nhm lnh r nhnh. Nhng lnh ny s kim tra ni dung ca thanh
ghi trng thi PSR v r chng trnh sang cc nhnh tng ng. iu ny c
tc dng ging nh cc lnh goto, if-then-else hay do-while trong
cc ngn ng bc cao

4.2.3. C php lnh ca ARC


Mi mt ngn ng hp ng u c c php ring ca n. Chng ta s tm hiu
c php ca hp ng SPARC, th hin trn hnh 4.8

Hnh 4.8. C php ca ARC


C php bao gm 4 thnh phn: trng nhn lnh c th khng c, trng tn
lnh, cc ton hng ngun v ton hng ch nu c, v cui cng l trng li
gii thch cho lnh . Trng gii thch c ngha ch yu l gip ngi
lp trnh ghi nh cc lnh vit nn n c th c hoc khng.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 48

CHNG 4 : NGN NG MY V HP NG
Nhn trong c php ca ARC c th l mt chui k t bt k, tuy nhin n
phi tha mn l khng cha cc k t iu khin, k t c bit, hay trng vi
mt lnh no
Cc thanh ghi ton hng ngun v ch trong ARC bao gm 32 thanh ghi c
k hiu t r0 n r31. 32 thanh ghi ny c rng d liu l 32 bit trong

Hnh 4.9. Cc thanh ghi trong ARC m ngi s dng c th truy cp


thanh ghi s 0 %r0 lun c gi tr l 0 v gi tr ny lun lun khng i. Thanh
ghi %r14 v %r15 c thm chc nng l thanh ghi con tr stack v thanh ghi
lin kt. Ngoi 32 thanh ghi ny, trong ARC cn c thm cc thanh ghi PC l
thanh ghi m chng trnh, thanh ghi trng thi PSR.
Cc ton hng trong c php lnh ARC c phn cch nhau bi du phy.
Ton hng ch lun l ton hng ng tn cng pha bn tay phi.

4.2.4. Cu trc ngn ng my ca ARC


Cu trc ngn ng my nh ngha ngha ca tng bit trong cu lnh. Tc l
n nh ngha tng trng trong cu lnh, ln ca tng trng d liu v
tc ng ca tng bit ln h thng. C tt c 5 cu trc trong ARC l SETHI,
branch, call, arithmetic v memory

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 49

CHNG 4 : NGN NG MY V HP NG

Hnh 4.10. Cu trc lnh trong ARC


Mi mt lnh c biu din bng mt tn ring v mt m lnh (Opcode). Mi
mt cu trc lnh c th c nhiu hn mt trng m lnh vi mc ch l
th hin r rng hn ni dung, nhim v, v hot ng ca lnh.
C th nh sau
2 bit tn cng pha bn tri ca mi mt lnh l trng op (opcode)
c s dng nhn din cu trc lnh. Cu trc SETHI v Branch
c cng gi tr l 00 trong trng ny. Cu trc SETHI v Branch
c phn bit vi nhau trng op2 trong gi tr 010 tng
ng vi Branch v 100 tng ng vi cu trc SETHI. Ngoi ra bit
th 29 trong cu trc Branch lun lun l 0. Trong khi , 5 bit rd
trong cu trc SETHI cha thanh ghi ch ca lnh.
Trng cond trong cu trc Branch nhn din loi lnh r nhnh,
da trn m iu kin nh z, n, v, v c trong thanh ghi trng
thi PSR. i vi nhng lnh c biu tng tn cng c 2 k t
cc, nu kt qu ca php ton l s m th bit n s c gi tr l 1.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 50

CHNG 4 : NGN NG MY V HP NG

Tng t, bit z = 1 nu kt qu bng 0 v v=1 nu trn. Nhng


lnh c biu tng kt thc khng bng 2 k t cc s khng c
hiu ng r nhnh. Trng imm22 v disp22 lu tr 22 bit c
s dng nh l ton hng i vi cu trc SETHI v lm c s
tnh ton cho lnh r nhnh trong cu trc Branch
Cu trc CALL ch bao gm 2 trng duy nht l trng op c ni
dung 01 v trng disp30 c s dng l ni cha a ch ca
chng trnh m n gi ti.
Cu trc Arithmetic c op = 10 v cu trc Memmory c op =
11 cng c trng rd nhn dng thanh ghi ngun vi lnh st,
hoc nhn dng thanh ghi ch trong cc trng hp lnh cn li.
Rs1 v rs2 l cc thanh ghi ngun s 1 v 2. Trng op3 c s
dng phn bit cc lnh (c trnh by nh hnh 4.10)
Trng simm13 c 13 bit gi tr tc th c du c th m rng ln
32 bit khi trng i c gi tr bng 1. lm c vic ny, bit du
tc l bit tn cng bn phi c chp vo mt s 32 bit c gi tr
bng s trong trng simm13 tng ng. V d, gi tr trng
trng simm13 l (1111111110011)2 = (-13)10. Khi s nguyn
32 bit tng ng c to ra khi trng i = 1 l
(11111111111111111111111111110011)2 = (-13)10.
Cu trc lnh Arithmetic c 2 ton hng ngun v 1 ton hng ch,
tng cng l 3 ton hng. Cu trc lnh Memmory c 2 ton hng:
mt dnh cho a ch, mt dnh cho d liu. Thng thng ton
hng ngun l a ch

4.2.5. Cu trc d liu ca ARC


ARC h tr 12 cu trc d liu khc nhau c m t nh hnh 4.11. c chia
thnh 3 nhm: s nguyn c du, s nguyn khng du v s du phy ng.
Vi cc loi cu trc d liu ny, rng d liu cho php l 1 byte (8 bit),
halfword (16 bit), tagged word (32 bit nhng ch s dng 30 bit c trng s ln
nht cha gi tr), doubleword (64 bit) v quadword (128 bit)

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 51

CHNG 4 : NGN NG MY V HP NG

Hnh 4.11. Cu trc d liu ca ARC

Trong thc t s dng, ARC khng phn bit s c du v s khng du. C 2


loi ny c lu tr v tnh ton nh l s nguyn b 2. Chng ch khc nhau
phng php biu din. Trong tng trng hp c th, mt gi tr s c gi
nh l c du hoc khng du. Khi cc bit v v c s c s dng. Bit c =
1 khi xy ra hin tng trn ca s khng du, bit v = 1 khi trn s c du.
Trong s tagged word, 2 bit c trng s nh nht c s dng biu th hin
tng trn s
S du phy ng c s dng trong my tnh ARC tun theo chun IEEE
754-1985 (xem chng 2)

4.2.6. M t cc lnh ca ARC


Chng ta va tm hiu xong cu trc mt lnh. By gi chng ta s m t k
hn 15 lnh c lit k trong hnh 4.7. Trong phn nu chi tit ny, ta s a ra
chi tit m lnh (Object code) vi mc ch chnh l tham kho. Vic chuyn
m lnh nh th no s c chng ta tm hiu chi tit trong chng k tip
Tn lnh
M t

V d

ngha
M lnh

ld
Np ni dung ca mt thanh ghi t b nh. Cc a ch b nh phi c gi tr chia ht cho
4 tc l c ranh gii t. Gi tr a ch s c tnh ton bng cch cng ni dung ca
thanh ghi trong trng rs1 hoc gi tr trong trng simm13 ty theo tng trng hp
Ld [x], %r1
Ld [x], %r0, %r1
Hoc
Ld %r0+x, %r1
Hoc
Copy ni dung ca b nh a ch l x vo thanh ghi r1
11000010000000000010100000010000
(x = 2064)

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 52

CHNG 4 : NGN NG MY V HP NG

Tn lnh
M t

V d
ngha
M lnh

st
Ct ni dung ca thanh ghi vo b nh. Cc a ch b nh phi c gi tr chia ht cho 4
tc l c ranh gii t. a ch s c tnh ton bng cch cng ni dung ca thanh ghi
trong trng rs1 vi ni dung ca thanh ghi trong trng rs2 hoc ni dung trong trng
simm13. Trng rd trong lnh ny c s dng cha thanh ghi ngun
st %r1, [x]
Copy ni dung ca thanh ghi r1 vo b nh a ch l x
(x = 2064)
11000010001000000010100000010000

V d
ngha
M lnh

sethi
Set ni dung ca 22 bit cao ca thanh ghi ln mt gi tr nht nh v a 10 bit thp ca
thanh ghi v 0. Nu ton hng l 0 v thanh ghi c s dng l r0 th lnh ny tng
ng vi lnh khng lm g c NOP
sethi 0x304F15, %r1
Np ni dung (304F15)16 vo 22 bit cao ca thanh ghi r1 cn 10 bit thp xa v 0
00000011001100000100111100010101

Tn lnh
M t
V d
ngha
M lnh

andcc
Tnh lnh AND tng bit ca 2 ton hng ngun v a kt qu v ton hng ch
andcc %r1, %r2, %r3
Tnh lnh AND ni dung thanh ghi r1 vi thanh ghi r2 v a kt qu vo thanh ghi r3
10000110100010000100000000000010

Tn lnh
M t
V d
ngha
M lnh

orcc
Tnh lnh OR tng bit ca 2 ton hng ngun v a kt qu v ton hng ch
orcc %r1, 1, %r1
Set tt c cc bit trong thanh ghi r1 ln gi tr 1 v a kt qu v thanh ghi r1
10000010100100000110000000000001

Tn lnh
M t
V d
ngha
M lnh

Srl
Thc hin php dch sang phi t 0 ti 31 bit. Nhng bit pha bn tri s c in y
bi gi tr 0
srl %r1, 3, %r2
Dch ni dung thanh ghi r1 sang phi 3 bit, lu kt qu vo thanh ghi r2
10000101001100000110000000000011

Tn lnh
M t
V d
ngha
M lnh

addcc
Cng 2 ton hng ngun v a kt qu v ton hng ch vi php cng 2 s b 2
addcc %r1, 5, %r1
Cng 5 vo thanh ghi r1
10000010100000000110000000000101

Tn lnh
M t

call
Gi chng trnh con, lu a ch ca lnh ang thc hin vo thanh ghi %r15. Trong m
lnh, trng disp30 trong cu trc call cha 30 bit a ch m n tr ti. a ch m
my tnh x l k tip l a ch c gi tr 4 x disp30. Ch rng disp30 cng c
th l s m

Tn lnh
M t

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 53

CHNG 4 : NGN NG MY V HP NG
V d
ngha
M lnh

call sub_r
Gi chng trnh con sub_r
01000000000000000000000000011001

Tn lnh
M t

jmpl
Nhy v chng trnh chnh t chng trnh con v ct a ch ca lnh ang thc hin v
thanh ghi ch
jmpl %r15 + 4, %r0
Tr v t chng trnh chnh. a ch trc kia c lu thanh ghi %r15 s c khi
phc v lnh k tip c thc thi l a ch %r15+4.a ch hin ti s c b i
10000001110000111110000000000100

V d
ngha
M lnh

Tn lnh
M t
V d
ngha
M lnh

Tn lnh
M t
V d
ngha
M lnh

Tn lnh
M t
V d
ngha
M lnh

Tn lnh
M t
V d
ngha
M lnh
Tn lnh
M t
V d
ngha
M lnh

4.3.

be
Nu bit z = 1 th chng trnh th chng trnh nhy ti a ch 4 x disp22 trong cu
trc r nhnh. Nu z = 0 th lnh nhy ti lnh k tip sau lnh be
be label
Nhy ti nhn label nu z = 1
00000010100000000000000000000101

bneg
Nu bit n = 1 th chng trnh th chng trnh nhy ti a ch 4 x disp22 trong cu
trc r nhnh. Nu n = 0 th lnh nhy ti lnh k tip sau lnh bneg
bneg label
Nhy ti nhn label nu n = 1
00001100100000000000000000000101

bcs
Nu bit c = 1 th chng trnh th chng trnh nhy ti a ch 4 x disp22 trong cu
trc r nhnh. Nu c = 0 th lnh nhy ti lnh k tip sau lnh bcs
bcs label
Nhy ti nhn label nu c = 1
00001010100000000000000000000101

bvs
Nu bit v = 1 th chng trnh th chng trnh nhy ti a ch 4 x disp22 trong cu
trc r nhnh. Nu v = 0 th lnh nhy ti lnh k tip sau lnh bvs
bvs label
Nhy ti nhn label nu v = 1
00001110100000000000000000000101
ba
Nhy khng iu kin n a ch 4 x disp22 trong cu trc r nhnh
ba label
Nhy khng iu kin ti nhn label. Trong m lnh di y, nhn l l vng nh
trc vng nh hin ti 5 word
00010000101111111111111111111011

Ton t gi

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 54

CHNG 4 : NGN NG MY V HP NG
Ngoi nhng lnh c lit k trn, ARC cn c cc ton t gi hay cn gi l
lnh gi h tr cc lp trnh vin xy dng cu trc chng trnh. Cc lnh
gi c lit k chi tit trong hnh 4.12. Lu rng cc lnh gi khng phi l
cc lnh s c x l bi my tnh. Cc lnh gi ny s c x l bi trnh
bin dch tc l s c thc hin bi phn mm

Hnh 4.12. Cc lnh gi


Lnh .equ c s dng gn mt gi tr hay mt chui k t cho mt biu
tng. Lnh .begin v .end c s dng thng bo cho trnh bin dch
bit im bt u v kt thc ca chng trnh. Tt c cc lnh trc .begin
v sau .end s b b qua. Mt chng trnh c th c nhiu hn 1 cp
.begin/.end nhng mt lnh .end s s kt thc tt c cc .begin v
trong chng trnh phi c t nht mt lnh .begin.
Lnh .org s lm cho cc lnh c vit sau n s c lu tr ti a ch bt
u t a ch m n ch ra. V d trong hnh 4.12. lnh sau .org 2048 s
c lu bt u t a ch 2048. Lnh .dwb s to ra nhng khi d liu m
mi phn t ca n c rng 4 byte. Lnh ny hay c s dng to ra cc
khi mng d liu.
Lnh .global v .extern c s dng vi cc bin v a ch m cc bin
v a ch c vit trong 1 modul hp ng nhng li c s dng trong
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 55

CHNG 4 : NGN NG MY V HP NG
mt modul hay chng trnh khc. Lnh .global cho php cc bin m n
nh ngha c s dng trong nhiu chng trnh khc nhau. Lnh .extern
ch ra rng bin m n ang s dng c nh ngha trong mt modul khc
Lnh .macro, .endmacro, .if v .endif s c tm hiu trong
chng sau

4.4.

V d v mt chng trnh hp ng

Qu trnh vit chng trnh hp ng khng khc lm so vi vic vit mt


chng trnh bc cao ngoi tr mt s chi tit m ta phi tun th. Trong phn
ny ta s tm hiu 2 chng trnh mu c vit bng hp ng
a, Chng trnh cng hai s nguyn

Hnh 4.13. Chng trnh cng 2 s nguyn


Chng ta nghin cu mt v d v chng trnh hp ng vit cho my tnh ARC
nh hnh 4.13. y l mt chng trnh n gin cng s 15 v 9. Chng
trnh c bt u v kt thc bi cp lnh gi .begin/.end. Lnh gi .org
ch ra rng cc lnh hp ng s c np vo my tnh bt u t a ch 2048.
Hai ton hng 15 v 9 s c lu vo 2 bin x v y. Chng ta ch c th thc
hin php ton cng vi cc s c lu tr trong thanh ghi my tnh ARC
bi v ch cc lnh ld v st mi c truy cp b nh. Do chng trnh s
bt u bng vic np cc gi tr x v y vo thanh ghi %r1 v %r2. Lnh
addcc s thc hin php ton cng v a kt qu vo thanh ghi %r3. Lnh
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 56

CHNG 4 : NGN NG MY V HP NG
st s ct kt qu php ton t thanh ghi %r3 vo bin z nh trc. Lnh
jmpl vi cc ton t %r15+4,%r0 c tc dng quay tr v chng trnh chnh.
y ta gi nh chng trnh thc hin php ton cng ny l mt chng
trnh con v s c mt chng trnh cp cao hn gi ti.

b, Chng trnh tnh tng mt chui s nguyn

Hnh 4.14. Chng trnh tnh tng chui s nguyn


Chng trnh chng ta xem xt y phc tp hn v d trc, m chng trnh
c th hin trn hnh 4.14. Cng nh chng trnh pha trn, chng trnh
ny cng bt u bng cp lnh gi .begin/.end v cng s dng lnh
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 57

CHNG 4 : NGN NG MY V HP NG
.org lu m lnh vo b nh bt u t a ch 2048. Bin a_start c
to ra vi gi tr mc nh l 3000
Chng trnh bt u bng vic np di ca mng a vo thanh ghi %r1, a
ch bt u ca mng vo %r2 v xa ni dung thanh ghi %r3 lm ni cha
tng cn tnh (bng cch thc hin php ton AND tng bit vi thanh ghi %r0)
Vng lp loop s thc hin ln lt cng cc thnh phn ca mng vo tng
trong thanh ghi %r3. Vng lp loop bt u bng vic kim tra xem s phn t
cn li cn phi cng vo tng c phi l 0 hay khng. Vic ny c thc hin
bng cch thc hin php ton AND gia %r1 vi chnh n. Nu %r1 = 0 th
kt qu l 0, vic thc hin php cng s dng li v chng trnh nhy n
nhn done. Nu %r1 khc 0 th kt qu ca php AND cng khc 0, chng
trnh thc hin php cng.
thc hin php cng, chng trnh s
- Tnh li s phn t cn cng vo tng bng cch tr %r1 i gi tr tng
ng 1 phn t (tc l cng vi -4). C th coi %r1 chnh l a ch tng
i ca mng
- Xc nh a ch ca phn t cn cng vo tng ti vng lp ang xt v
a a ch ny vo thanh ghi %r4. Vic ny c thc hin bng cch
cng a ch tuyt i ca mng (%r2) vi a ch tng i ca mng
(%r1)
- Np phn t mng vo %r5
- Cng phn t va c c t %r5 vo %r3
- Nhy v nhn loop

4.5.

Truy cp d liu b nh - Cc ch a ch

Bng 4.1. di y ch ra cc ch a ch s dng trong ARC. Cc quy c


trong bng ny cng rt ph bin trong lp trnh hp ng. K hiu M[x] c
ngha d liu c truy cp theo kiu d liu mng vi gi tr x c cho trong
ngoc l ch s a ch c cho di kiu byte l a ch ca phn t trong
mng.
Ch a ch
a ch tc th

K hiu
#K

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

ngha
K
Page 58

CHNG 4 : NGN NG MY V HP NG
a ch trc tip
K
a ch gin tip
(K)
a ch thanh ghi
(Rn)
a ch ch s thanh ghi
(Rm+Rn)
a ch thanh ghi c s
(Rm+x)
a ch thanh ghi tng i c s ch s
(Rm+Rn+x)
Bng 4.1. Cc ch a ch

M[k]
M[M[K]]
M[Rn]
M[Rm+Rn]
M[Rm+x]
M[Rm+Rn+x]

Ch a ch tc th cho php truy xut mt hng s trong mt chu k


my
Ch a ch trc tip c s dng truy cp d liu vi a ch
bit trc trong mt chu k my
Ch a ch gin tip c s dng truy cp vo mt con tr ca
mt bin m bit a ch ca bin . Ch a ch ny him khi
c s dng trong cc vi x l hin i v n cn tham chiu ti 2 nh
truy cp ton hng. Lp trnh vin khi s dng phng php truy cp
ny cn phi thc hin bng 2 lnh, mt truy cp con tr v mt lnh
khc truy cp gi tr cn truy cp.
Ch a ch thanh ghi c s dng khi ta khng bit a ch ca ton
hng cho n khi my thc hin lnh.
Ch a ch ch s thanh ghi, ch thanh ghi c s v ch thanh
ghi tng i c s ch s thng c s dng truy cp vo cc d
liu kiu mng nh v d trong mc 4.4.b

4.6.

Cc mi lin kt chng trnh con v stack

Chng trnh con hay cn c tn gi l hm (function) hay th tc (procedure)


bn cht l mt chui cc cu lnh c i din bi mt tn gi mt cp lp
trnh cao hn. Khi mt chng trnh gi chng trnh con, chng trnh s
chuyn quyn iu khin t chng trnh chnh sang chng trnh con
chng trnh con thc hin cc lnh ca n. Khi cc lnh ca chng trnh con
thc hin xong, chng trnh con chuyn ngc quyn iu khin tr v
chng trnh gi ti n. Vic thc hin lin kt gia chng trnh chnh v
chng trnh con c th c thc hin bi mt trong nhng phng php sau
a, Lin kt thng qua thanh ghi

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 59

CHNG 4 : NGN NG MY V HP NG

Hnh 4.15. Lin kt chng trnh con qua thanh ghi


Trong chng trnh trn, 2 i s s c np vo 2 thanh ghi %r1 v %r2, sau
chng trnh con add_1 s c gi v kt qu c tr ngc li thanh ghi
%r3. Chng trnh con add_1 s nhn ton hng thng qua 2 thanh ghi %r1
v %r2 v tr kt qu vo %r3 trc khi quay tr v chng trnh chnh thng
qua lnh jmpl. Phng php ny hot ng nhanh v n gin, nhng n
khng th p dng trong trng hp s lng cc i s ln hn s lng cc
thanh ghi c th s dng hoc trong trng hp cc chng trnh con lng vo
nhau

b, Lin kt thng qua d liu


Trong phng php lin kt thng qua d liu, a ch ca d liu lin kt s
c np t thanh ghi. Nh trn hnh 4.16. lnh gi .dwb trong chng trnh
chnh s to ra mt vng d liu lin kt gm 3 t, a ch l x, x + 4 v x + 8.
Trc khi gi chng trnh con, chng trnh chnh np 2 ton t vo x v x +4.
Chng trnh con s lu kt qu m n x l vo vng nh x + 8. xem xt
k hn v v d ny, ta s phn tch tng bc m chng trnh thc hin
Chng trnh lu ni dung ca thanh ghi %r1 v %r2 vo x v x + 4
Np gi tr x vo 22 bit cao ca thanh ghi %r5
Dch sang tri %r5 10 bit, iu ny ng ngha vi vic chuyn ton b
gi tr a chi x vo %r5
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 60

CHNG 4 : NGN NG MY V HP NG

Hnh 4.16. Lin kt thng qua d liu


Gi chng trnh add_2 thc hin cc lnh sau
o Np %r5 vo %r8, tc l np x vo %r8
o Np %r5 + 4 vo %r9 tc l x + 4 vo %r9
o Tnh tng v a kt qu vo %r10
o Lu kt qu vo %r5 + 8 tc x + 8
o Quay v chng trnh chnh
Lu kt qu t x+ 8 vo %r3
c, Lin kt thng qua stack

Hnh 4.17.Lin kt d liu thng qua stack


Phng php lin kt chng trnh con th 3 l lin kt thng qua stack. V mt
bn cht, phng php ny khng khc lm so vi lin kt d liu thng qua b
nh. Vi phng php ny, ta cng khai bo mt vng nh trong b nh lm
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 61

CHNG 4 : NGN NG MY V HP NG
stack v s dng bnh thng. im khc bit gia phng php ny v phng
php lin kt thng qua b nh l truy xut cc nh lin tip trong stack th
gim dn cn cc nh lin tip trong b nh th truy xut tng dn. Ta phn
tch v d trong hnh 4.17

Khai bo stack (thanh ghi %r14 lun lun cha a ch ca stack)


Xc nh a ch ca phn nh stack bng cch tr y stack i 4
Lu gi tr %r1 vo nh stack va xc nh
Tip tc xc nh a ch nh stack
Lu gi tr %r2 vo nh stack va xc nh
Gi chng trnh add_3 thc hin cc ni dung sau
o Xc nh nh stack
o Np gi tr nh stack vo %r8, tc l np %r2 vo %r8
o Tng gi tr stack
o Np nh stack vo %r9 tc l np %r1 vo %r9
o Tnh tng v a vo %r10
o Lu vo stack
o Quay v chng trnh chnh
Tr kt qu t stack vo %r3

Phng php lin kt thng qua stack c s dng rt ph bin bi v phng


php ny c th c s dng trong mi trng hp, k c trong trng hp gi
cc chng trnh con lng vo nhau. Phng php lin kt ny c p dng rt
rng ri c trong ngn ng lp trnh bc cao nh ngn ng C.
Trong v d trong hnh 4.18, hai chng trnh con l func_1 v func_2 s
dng cc ton hng c chng trnh chnh khai bo gi tr v lu vo trong
stack trc khi thc hin chng trnh con thng qua du ngoc n.
Vi chng trnh con func_1 v func_2, sau khi tnh ton cc gi tr, kt
qu c lu vo stack thng qua lnh return. Kt qu ny s c bo lu
trong stack v c gn vo cc bin w v z tng ng trong chng trnh
chnh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 62

CHNG 4 : NGN NG MY V HP NG

Hnh 4.18. Lin kt chng trnh thng qua stack trong ngn ng bc cao C
4.7.

Nhp v xut d liu trong hp ng

Trong phn ny, chng ta s nghin cu cch thc mt chng trnh hp ng


lin kt vi bn ngoi thng qua cc cng ngoi vi. Mt cch thit b ngoi vi
lin kt vi my tnh l s dng nhng lnh giao tip c bit v vi h thng
bus vo/ra c thit k ring cho mc ch ny. Mt phng php khc c
s dng l tng tc thng qua vic nh x khng gian b nh vo /ra. C th,
mi mt thit b vo /ra s chim mt a ch nht nh trong khng gian nh.
Khi , my tnh tng tc vi th gii bn ngoi c thc hin khng khc g
vic tng tc vi b nh my tnh
Mt v d v nh x vo/ra c s dng trong my tnh ARC c trnh by
trong hnh 4.20. Trn hnh, ta c th nhn thy trong my tnh c mt vi vng
nh, trong , h thng ginh ra 2 vng add-in video memory v cho vng
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 63

CHNG 4 : NGN NG MY V HP NG

Hnh 4.20. nh x b nh my tnh ARC


touchscreen. Mn hnh cm ng c 2 dng lng t v in. Mt minh ha v
mn hnh cm ng dng lng t c m t trn hnh 4.21. Mt ma trn cc
chm tia bao ph cc chiu ngang v dc mn hnh. Nu chm tia b ngt qung
bi ngn tay chm vo mn hnh th v tr s c tnh ton bi v tr b ngt
qung

Hnh 4.21. Mn hnh touchscreen


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 64

CHNG 4 : NGN NG MY V HP NG
B nh ch thc s b chim dng trong khong a ch t 222 n 223-1 (lu
rng 223-4 l a ch tn cng bn tri trong nh dng big-endian). Phn cn
li ca khng gian a ch c s dng cho cc mc ch khc. Phn khng
gian a ch t 0 n 216-1 c s dng cha cc chng trnh c xy
dng sn cho vic qun l h iu hnh v cc chng trnh con, chng trnh
ngt. a ch t 216 n 219-1 c dnh ring cho 2 vng nh add-in video
memory vi mc ch l lu cc d liu x l video. Lu rng cc d liu
video s ch c x l khi cc module video c chn vo tng ng. Cui
cng khong a ch 223 n 224-1 c s dng cho cc thit b ngoi vi
Tr li bi ton mn hnh touchscreen, ta x v y s c t ng cp nht
vo cc thanh ghi tng ng trong khong khng gian b nh. Cc thanh ghi
ny c truy cp mt cch n gin thng qua vic c nh nh x n n.
Vng nh Screen Flash l ni cha chng trnh c cc gi tr x v y bt
c khi no mn hnh c chm vo

TNG KT CHNG
Trong chng ny, chng ta nghin cu my tnh ARC v mt s thnh phn
c bn ca ARC. Thng qua , ta gii quyt cc ni dung c bn sau
Nghin cu v thnh phn c bn ca my tnh nh CPU, cu trc b
nh, phng php truy cp b nh.
Nghin cu v phng php truy cp b nh, phn tch cc ch a ch
b nh
Tm hiu v phng php lp trnh top-down trong lp trnh vi x l

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 65

CHNG 5 : NGN NG BC CAO V MY TNH


CHNG 5: NGN NG BC CAO V MY TNH

Trong chng trc, chng ta xem xt mi quan h gia my tnh ISA, ngn
ng hp ng v ngn ng my. By gi chng ta s xem xt k hn v tc ng
ca cc cu lnh ln cc thanh ghi, v s dch chuyn d liu gia b nh v
CPU, v tt nhin c qu trnh lin kt gia hp ng v chng trnh. Cng
trong chng ny, chng ta s m rng hn khi nim v mi quan h gia
ngn ng my tnh v my tnh
Chng ta s bt u vi vic tho lun v bin dch, qu trnh chuyn i t
ngn ng lp trnh bc cao sang chng trnh hp ng. Tip , chng ta s
tho lun qu trnh chuyn i t ngn ng hp ng sang ngn ng my. Phn
tip theo, chng ta s tho lun v vn lin kt chng trnh, y l qu trnh
lin kt d liu kiu modul tr thnh mt chng trnh hon chnh, qu trnh
np, y l qu trnh dch chuyn chng trnh n b nh v qu trnh chun b
thc thi. Chng ta cng s nghin cu v macro, y l nhng on chng
trnh c s dng ging nh chng trnh th tc

5.1. Qu trnh bin dch


Nh trong chng trc chng ta nghin cu, qu trnh chuyn mt chng
trnh t ngn ng hp ng sang ngn ng my c thc hin mt cch rt n
gin, bi v ch l qu trnh tng bc chuyn 1 lnh hp ng sang t hp
nh phn lnh tng ng. Tuy nhin i vi ngn ng bc cao, qu trnh ny
c thc hin phc tp hn nhiu

5.1.1. Cc bc thc hin qu trnh bin dch


xem xt cc bc thc hin qu trnh bin dch, ta s xem xt qu trnh
chuyn mt cu lnh n gin c vit t mt ngn ng bc cao thnh mt
on chng trnh hp ng
Cu lnh

A = B + 4;

Trnh bin dch phi i mt vi mt s nhim v phc tp trong vic chuyn


cu lnh trn thnh mt hay mt vi lnh hp ng, l cc vn
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 66

CHNG 5 : NGN NG BC CAO V MY TNH


Gim lng ch vit trong cu lnh, chuyn n thnh cc biu tng ca
cu lnh ca ngn ng m ta ang nghin cu. V d trong cu lnh trn,
ta phi nh ngha cac bin A v B, cng nh phi nhn dng v nh
ngha cc php ton + v ton t =. Qu trnh ny c gi l qu trnh
phn tch ngn t
Phn tch cc k hiu nhn bit cu trc c bn ca chng trnh.
Trong v d trn, vic phn tch c php phi nhn ra c cc cu trc
c bn nh l cu trc c bn ca lnh gn c biu hin bng k t
=, hay l cu trc ca php ton cng c biu hin bng k t +.
Qu trnh trn cn c gi l phn tch c php
Qu trnh phn tch tn bin: y l qu trnh kt hp cc bin A v B
ca chng trnh vi mt v tr nht nh trong b nh lu tr cc gi
tr
Qu trnh phn tch dng d liu. Trong v d trn, cc bin A v B v
hng s 4 s c nhn din thnh dng bin kiu s nguyn int. Qu
trnh phn tch tn bin v qu trnh phn tch dng d liu i khi c
gi tn chung l phn tch ng ngha
To bn m v to m lnh, y l qu trnh kt ni cc cu lnh trong
chng trnh vi ngn ng hp ng tng ng. Vi cu lnh trn,
chng trnh hp ng tng ng c th l
ld
add
st

[B],%r0, %r1 ; Np ni dung ca nh [B] vo %r1


%r1,4, %r2 ; Cng gi tr ca %r1 vi 4, a kt qu vo %r2
%r2,%r0, [A] ; Lu kt qu t %r2 vo nh [A]

Mt s bc tip theo m trnh bin dch phi thc hin l qun l bin v
qun l cc thanh ghi, theo di vic s dng cc thanh ghi, ti u chng
trnh...
5.1.2. Cc c trng ca qu trnh bin dch
Trong khi qu trnh bin dch ang thc hin nhim v ca n, cc thng tin v
kin trc tp lnh ISA s c nhng vo n. (Ch rng kin trc tp lnh ISA
ca trnh bin dch khng nht thit phi ging kin trc tp lnh ISA m n to
ra, qu trnh ny cn c tn l bin dch cho). Cc thng tin ISA nhng vo
trnh bin dch cn c gi l cc c trng ca qu trnh bin dch. V d,
trnh bin dch s quyt nh gn cho cc bin v cc hng s trong chng trnh
dng d liu tng ng ty thuc vo loi ngn ng my tnh m h thng ang
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 67

CHNG 5 : NGN NG BC CAO V MY TNH


s dng. i vi ngn ng lp trnh C, kiu d liu int c th l 16 bit, 32 bit
hoc hn. i vi ngn ng Java, cc s kiu int lun l 32 bit.
Trnh bin dch cng phi tnh ti cc tnh nng v hn ch ca my tnh khi
nhng cc c trng ca my tnh vo hp ng. V d trong my tnh ARC, tp
lnh ca ARC yu cu ton hng ca cc php ton phi l s tc th hoc l
thanh ghi. Do trnh bin dch phi to ra cc lnh chuyn ton hng cn
thc hin php ton vo cc thanh ghi trc khi to ra lnh thc hin php
ton. y cng l nguyn nhn chnh trnh bin dch thc hin bin dch lnh
A=B+4
Phi c lnh
ld

[B],%r0, %r1 ; Np ni dung ca nh [B] vo %r1

Trc khi c lnh cng


add

%r1,4, %r2 ; Cng gi tr ca %r1 vi 4, a kt qu vo %r2

Ni tm li, trong qu trnh bin dch, chuyn mt chng trnh bc cao thnh
chng trnh c vit bng ngn ng thp hn, trnh bin dch c mt s c
trng sau
Dng d liu ca cc bin s hay hng s s c trnh bin dch t ng
gn cho mt kiu d liu ph thuc vo c trng ca kin trc tp lnh
ISA, tc l kin trc ISA c nhng vo trnh bin dch
Qu trnh to m lnh cp thp cng tnh ton ti c trng ca my tnh
s dng lnh m n to ra, m lnh c to ra tng thch vi my
tnh s s dng n

5.1.3. Bin dch cc nhm lnh sang hp ng


Trong phn ny, chng ta s nghin cu k hn vn chuyn 3 nhm lnh:
nhm lnh dch chuyn d liu, nhm lnh ton hc, v nhm lnh iu khin
lung chng trnh t ngn ng bc cao sang hp ng. Trong v d di y,
chng ti s s dng ngn ng lp trnh C m t qu trnh ny bi v ngn
ng C rt ph bin, thng dng, cu trc cu lnh cng nh ngha ca cu
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 68

CHNG 5 : NGN NG BC CAO V MY TNH


lnh rt gn gi vi i sng hng ngy lm cho ngi khng bit v ngn ng
C cng c th tm hiu c vn . Trc khi tm hiu v 3 nhm lnh trn,
chng ta s nghin cu trc 1 vn chung, l vic lu tr cc bin trong
b nh my tnh
Trong cc v d pha trn trong ti liu ny, chng ta lun s dng cc bin
c truy xut trc tip thng qua tn bin, tc l n c nh ngha ti
vng nh xc nh trong b nh v n s c truy xut ngay ti thi im thc
thi cu lnh lin quan n n. V d nh trong lnh A = B + 4 trn, cc bin A
v B c nh ngha trc khi cu lnh c thc hin. Thc t, ch c ton
cc global variable hay l bin static variable trong C mi c truy xut
ngay ti thi im thc thi. Nhng bin c khai bo v s dng trong cc
hm hoc khi hm li hon ton khc, n ch tn ti khi hm hoc khi hm
c truy cp, cc bin s mt i khi hm hoc khi hm kt thc truy
cp. Cc bin ny c gi l cc bin a phng local hoc trong C c tn l
automatic variable. Trong cc chng trnh, cc bin a phng c s dng
thng dng hn rt nhiu so vi bin ton cc
V bn cht khng c s dng bn vng ca bin a phng, thc hin
vic qun l chng, ta c th s dng phng php last-in-first-out ging nh
stack c m t trong chng 4. Cc bin c lu trong stack (bn cht vn
l lu trong b nh) v s c s dng khi hm c gi ti. Khi kt thc
hm, cc bin s c stack xa i. Trong chng trc, chng ta bit h
thng ARC s dng thanh ghi con tr %sp truy cp vo stack. Thc t, ngi
ta hay s dng phng php copy ni dung ca %sp vo mt thanh ghi khc
s dng, l thanh ghi frame pointer %fp (thanh ghi ny c th c hiu l
thanh ghi c s).Lc , ta s truy cp %fp s dng trong hm nh l mt
bin. Ta phi lm nh th v stack ngoi vic lu tr cc bin a phng, n
cn phi lu tr cc bin tm thi hoc cc gi tr trung gian trong qu trnh tnh
ton. Ngoi vic s dng trc tip %fp, ta cng c th s dng cc nh offset
xung quanh [%fp + n]. V d nu ta mun np mt bin c lu ti byte s
12 pha trc %fp vo thanh ghi %r1, ta c th s dng 1 trong 2 cu lnh sau
ld
ld

%fp, -12, %r1


[%fp 12], %r1

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 69

CHNG 5 : NGN NG BC CAO V MY TNH


5.1.4. Nhm lnh dch chuyn ca d liu
Thc cht vn bin dch cu lnh ca nhm lnh dch chuyn d liu chnh l
vic chuyn vic s dng cc bin s v hng s c trong ngn ng bc cao
sang v tr mt nh trong hp ng. Vn ny c gii quyt trong phn
5.1.3. bng cch s dng stack v thanh ghi %fp lu tr cc bin s. Trong
phn ny, chng ta s bn k hn mt cht v vn s dng cc bin m kiu
bin c nh ngha bi ngi s dng
Bin dng cu trc
Trong ngn ng C, ta c kiu bin m ngi s dng nh ngha, l kiu
struct hay l kiu record trong Pascal
Xem xt kiu struct trong C, ta ly v d v kiu struct ny vi d liu
c nh ngha l kiu point vi cu trc nh sau
Struct point {
Int x;
Int y;
Int z;
}
Bin (c tn l im A) s dng cu trc trn c khai bo trong C nh sau
Struct point diemA ;
Vi cch nh ngha trn, ngi dng c th truy cp vo tng phn t ca bin
diemA bng ton t du chm quen thuc diemA.x.
i vi vic bin dch sang ngn ng hp ng, trnh bin dch s phi to ra cc
nh tng ng vi cu trc point. Vi vic khai bo bin diemA c cu trc
trn, trnh bin dch s to ra mt bin-mt nh c tn l diemA. Bin
diemA.x s tng ng vi nh [diemA], bin diemA.y tng ng
[diemA + 4], bin diemA.z tng ng [diemA + 8] . Do , cu lnh
np bin y vo thanh ghi %r1 s l
ld

[diemA + 4], %r1

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 70

CHNG 5 : NGN NG BC CAO V MY TNH


Bin dng mng
Hu ht cc ngn ng lp trnh u cung cp kiu d liu mng array. Trong
ngn ng C, nh ngha mng A gm 10 phn t kiu int ta s dng cu
lnh
Int A[10];
Khi , C s to ra mt chui phn t kiu int c cng tn l A v c gn
cc ch s t 0 n 9 phn bit
Hp ng truy cp cc phn t trong mng hon ton tng t nh i vi cu
trc struct. C ngha l phn t A[3] s c lu ti v tr [A + 12] (Lu
rng phn t u tin ca mng A c ch s l 0)
Trong ngn ng Pascal, mng c khai bo
A : array [-10..10] of integer ;
Cch khai bo nh trn c chp nhn. Khi , Pascal to ra mng A gm 21
phn t kiu int c ch s t -10 n 10
Vic bin dch ngn ng Pascal do phc tp hn so vi C bi hp ng cng
c ch s bt u t 0. tnh c phn t A[i] bt k, ta s dng cng thc
chuyn i
a ch phn t i = a ch c s + (Ch s -

Ch s bt u) * Size

Vi khai bo nh trn, np phn t A[5] vo thanh ghi %r1 ta phi bin


dch thnh chui lnh sau
Ld
Ld
Sub
Sll
Ld

%r0,
%r0,
%r3,
%r6,
[A +

5, %r3
-10, %r4
%r4, %r6
2, %r6
%r6], %r1

5.1.5. Cc lnh ton hc


Cc lnh ton hc c bin dch rt n gin v cc php ton c th hin
trong ngn ng bc cao u c cu lnh hp ng tng ng. Qu trnh bin dch
ch c mt cht phc tp i vi my tnh dng load-store nh my tnh ARC
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 71

CHNG 5 : NGN NG BC CAO V MY TNH


hoc cc my tnh da trn kin trc RISC. Vi my tnh ny, php ton trc
khi c thc hin, cc ton hng phi c a vo cc thanh ghi. Mc d s
lng cc thanh ghi trong my tnh lun lun tng ln trong lch s pht trin,
tuy nhin vn lun c trng hp s lng thanh ghi cn s dng ln hn s
lng thanh ghi m my tnh c. Trong trng hp ny, trnh bin dch s tm
thi lu tr cc bin trong b nh stack, k thut ny cn c tn l register spill.
Khi , trnh bin dch s s dng mt k thut phc tp c tn l register
coloring quyt nh s tip tc lu tr thanh ghi no, v ni dung thanh ghi
no s phi c lu tr trn b nh stack nhng thanh ghi cho mt bin
khc, thm ch, k thut register coloring cn c kh nng xc nh xem c cn
thit phi lu li mt ni dung ca mt thanh ghi na hay khng

5.1.6. Lung chng trnh


iu khin lung chng trnh, tt c cc ngn ng lp trnh u s dng cc
lnh r nhnh c iu kin hoc khng c iu kin, kt hp vi vic s dng
cc c flags thng bo trng thi. Trong phn ny, chng ta s nghin cu vic
bin dch vic iu khin lung chng trnh thng dng
Lnh nhy r nhnh khng iu kin goto
y l dng r nhnh n gin nht, lnh nhy goto label. Cu lnh ngn
ng bc cao ny c thc hin mt cch n gin trong ARC bng lnh
ba label
Cu trc r nhnh if-then-else
Trong ngn ng C, cu trc if-then-else c cu trc
If (expr) stmt1 else stmt2;
Hot ng ca cu trc nh sau. Nu mnh expr c gi tr l true, hnh
ng stmt1 s c thc thi, nu khng th hnh ng stmt2 s c thc
thi. Do , trnh bin dch phi nh gi c gi tr ca expr v thc hin mt
trong hai hnh ng ph thuc vo expr. Gi s iu kin expr c m t
rt n gin l kim tra ni dung ca 2 thanh ghi %r1==%r2. Khi cu trc
ny c th hin bi cc lnh sau
Subcc

%r1, %r2, %r0 ! Kim tra s bng nhau ca %r1 v %r2

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 72

CHNG 5 : NGN NG BC CAO V MY TNH

Bne Hdong2

! Nu %r1 khc %r2 th nhy n hdong2

...

! Cc lnh thuc hnh ng 1

Ba ketthuc
Hdong2:
! Cc lnh thuc hnh ng 2

...
Ketthuc:
Cu trc vng lp while

Trong ngn ng C, cu trc ny c th hin


While (expr) stmt;
Cu trc ny c ngha l nu mnh expr l true th hnh ng stmt s
c thc hin. Qu trnh ny s c lp i lp li cho n khi mnh expr
chuyn sang false. vic tm hiu v cu trc ny n gin hn, ta xem xt
mt v d l tnh tng ca 10 s l lin tip bt u t s 5. Nu vit bng ngn
ng gi C, on chng trnh ny s l
%r1=5;
%r2=10;
%r3=0;
%r4=0;
While (%r2!=%r3) {

%r4=%r4+%r1 ;

%r1=%r1+2;
%r3=%r3+1; }
Trnh bin dch s chuyn sang hp ng thnh on chng trnh tng ng
nh sau
Ld %r0, 5, %r1
Ld %r0, 10, %r10
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 73

CHNG 5 : NGN NG BC CAO V MY TNH


Andcc %r3, %r0, %r3
Andcc %r4, %r0,%r4
Ba kiemtra
True: add %r4, %r1, %r4
Add %r1, 2, %r1
Add %r3, 1, %r3
Kiemtra: subcc %r2, %r3, %r0
Bneg True
Vic t mnh kim tra expr trn hay di hnh ng stmt ty thuc
vo lp trnh vin. Ngi c c th t kim tra. Tc gi khuyn khch t mnh
kim tra di (nh v d trn) v cch lm ny c hiu qu hn nu ta t
mnh kim tra trn
Cu trc do-while
Cu trc do-while c m t trong C nh sau
Do stmt while (expr)
y ch l cch biu din khc ca cu trc while ngoi tr vic kim tra iu
kin s c thc hin sau khi hnh ng stmt c thc hin ti chu k u
tin. Vic bin dch cu trc ny cng c thc hin tng t nh cu trc
while nhng ta phi c bin php loi b nh hng ca lnh ba u tin
Cu trc vng lp for
Trong C, cu trc ny c biu din bi
For (expr1; expr2; expr3) stmt;
Cu trc ny c hiu ng hon ton tng ng vi
Expr1;
While (expr2) {

stmt;

Expr3; }

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 74

CHNG 5 : NGN NG BC CAO V MY TNH


Do , vic bin dch cu trc ny c thc hin bng cch kt hp cc cu
trc trn

5.2. Qu trnh chuyn sang ngn ng my


Qu trnh chuyn t ngn ng hp ng sang ngn ng my c gi l qu
trnh assembly. Qu trnh ny c thc hin rt n gin v n c thc hin
nh vic tra bng tng lnh. Cng vic ny rt n gin nhng rt d nhm ln
nu thc hin bng tay. Thng thng, qu trnh ny c thc hin bi mt
phn mm c gi l assembler
Mt phn mm assemble t nht phi c nhng kh nng sau
Cho php lp trnh vin xc nh chnh xc ni lu tr d liu v chng
trnh ti thi im chy chng trnh
Cung cp phng tin lp trnh vin khi to gi tr d liu trc khi
chy chng trnh
Cung cp cc phng n chuyn t ngn ng hp ng sang ngn ng
my cho tt c cc lnh hp ng v tt c cc ch a ch
Cho php s dng cc nhn biu tng biu din a ch v hng s
Cung cp kh nng cho ngi lp trnh xc nh a ch bt u ca
chng trnh
C c ch cho php s dng cc bin c nh ngha trong 1 chng
trnh ny c s dng trong mt chng trnh c lp khc
Cung cp kh nng thc hin chng trnh con
tm hiu thm v vn ny, chng ta s th chuyn m chng trnh bng
tay mt chng trnh n gin c nu trong chng trc, l chng
trnh tnh tng 2 s nguyn

Hnh 5.1. Chng trnh cng hai s nguyn


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 75

CHNG 5 : NGN NG BC CAO V MY TNH

Hnh 5.2. Cu trc lnh trong ARC


Hnh 5.2 cung cp cho ngi c phng php m ha lnh ca my tnh ARC.
y chnh l nhng c tnh ca cc trng nh phn trong ngn ng my gip
ngi c chuyn hp ng sang ngn ng my.
Qu trnh chuyn ng kp
Hu ht chng trnh bin dch u thc hin chuyn ng 2 ln, hay cn c tn
l two-pass assemblers. Bc u tin l xc nh a ch, d liu v loi m
lnh, ng thi chn nhng m lnh s chuyn sang ngn ng my (nhng
khng to m my)
a ch ca d liu v m my c ch ra bi mt b m c bit n bi
tn gi location counter. B m ny s lu li a ch ca cu lnh ang c
x l hoc d liu ang c np vo vi x l. B m ny bng 0 khi khi to
lc chng trnh bt u chy v tng dn theo mi lnh c thc thi. Lnh gi
.org c th xc nh c mt gi tr ca b m ny bng gi tr i km vi
n. V d nh cu lnh sau
.org 1000
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 76

CHNG 5 : NGN NG BC CAO V MY TNH


Cu lnh ny s xc nh b m c gi tr l 1000 v lnh k tip n s c a
ch trong my l cc gi tr tip theo s 1000. B m ny s to thnh mt bng
cc con s tng dn. Trong sut bc 1 ny, chng trnh hp ng cng s kim
tra hot ng ca cc lnh, chn thm cc nh ngha cc bin hay hng s vo
bng s , qu trnh ny c tn l symbol table
Nguyn nhn i hi phi thc hin chuyn m 2 ln l ta s phi thc hin vic
a nhng bin s, hng s m ta thc hin symbol table vo chng trnh
m ta cn chuyn m
By gi ta s thc hin vic chuyn m lnh u tin trong hnh 5.1.
Ld

[x], %r1

Khi b m m ti lnh u tin (thng c bit ti l qu trnh np cu


lnh). Cu lnh ny c ngha l np ni dung ca nh c tn l x, tc l
nh %r0 + x t b nh vo thanh ghi %r1. Lnh ny tng ng vi cu trc
Memory format trong hnh 5.2. Nghin cu loi m lnh ny ta thy trng u
tin trong m lnh l op c gi tr l 11. M thanh ghi ch trong cu trc lnh
ny c cha trong trng rd, trong v d trn s l 00001 v y l thanh
ghi %r1. Trng op3 c gi tr l 000000 i vi lnh ld (i chiu vi hnh
5.2.). Trng rs1 trong trng hp ny tng ng vi thanh ghi %r0. Gi tr x
s c cung cp thng qua trng simm13. Bit i s l bit tip theo. Bt ny
c s dng phn bit gia cc nh dng nh khc nhau. Trong trng hp
ny i=1. Trng simm13 tng ng vi a ch x, vy x phi la bao nhiu ?
Nhn x xut hin sau 5 word sau lnh u tin c a ch 2048. Mi word l 4
byte, do x s c a ch l 2048 + 5 * 4 = 2068. Biu din bng s nh phn
s l 0100000010100
Nh vy, m lnh ca lnh u tin s l

Tng t, lnh tip theo l

Tip tc thc hin, ta c


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 77

CHNG 5 : NGN NG BC CAO V MY TNH

Nhn chung, qu trnh chuyn m s c thc hin tun t t u ti cui, m


lnh s c to ra ln lt theo tng cu lnh. S kh khn s ch xut hin
nu trong chng trnh xut hin cc lnh gi chng trnh con vi t kha
call.

Hnh 5.3. Chng trnh khung ca lnh call


Khi chng trnh chuyn m lnh call, n hon ton cha bit c sub_r l
g cho n khi sub_r c tm thy. Do , chng trnh s a sub_r vo
bng symbol table v nh du l cha c gii quyt. Khi tm thy sub_r,
chng trnh s thc hin qu trnh khc phc.

Hot ng ca symbol table


Trong bc u ca qu trnh chuyn m 2 bc, symbol table c to ra.
Mt nhn hay mt ci tn bt k s tng ng vi mt gi tr c s dng
trong sut qu trnh chuyn m. Chng ta s tm hiu li v d trong hnh 4.14
lm r hn hot ng ca symbol table
Bt u t lnh gi .begin v b m s c gi tr 2048 vi lnh gi .org
2048. Lnh u tin c tnh n l
a_start .equ 3000. Vi lnh
ny, mt biu tng a_start s c thit lp v np gi tr l 3000. Lu
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 78

CHNG 5 : NGN NG BC CAO V MY TNH


rng lnh ny khng to ra bt k m lnh no nn s khng chim a ch trong
b nh

Hnh 5.4. V d hnh 4.14


Qu trnh chuyn m s bt u vi lnh u tin
Ld

[length], %r1

Lnh ny s c chuyn m ti a ch u tin c xc nh bi cc lnh gi


tc l 2048. B m sau s tng ln gi tr k tip tng ng vi 4 byte, 2052
thc hin chuyn m lnh k tip. Nhng ti thi im , bin length khng
c chng trnh nhn ra nn n cha bit gi tr l bao nhiu. Trong bng
symbol, gi tr ca n tng ng c k hiu ----. Lnh tip theo s c x
l tng t nh vy.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 79

CHNG 5 : NGN NG BC CAO V MY TNH


Cho n khi trnh bin dch gp li length, khi gi tr ca b m l 2092.
Gi tr ca length s c gn vi gi tr m 2092, tc l ni dung ca nh
length s l ni dung ca nh c a ch l 2092. Nh vy, nh address
v done s c gi tr tng ng l 2096 v 2088. Nhn done c gi tr l 2088
v c 10 lnh tng ng 40 byte t khi c lnh u tin cho n khi gp nhn
done
Sau khi bng symbol c to ra, bc 2 ca qu trnh chuyn m s bt u.
Chng trnh s c c li mt ln na bt u t .begin, ng thi m
lnh s c to ra. Lnh u tin c to ra l lnh ld s c a ch l 2048.
Khi to m lnh ny, nh length s c i chiu vi bng symbol truy
ra gi tr 2096. Vi y cc yu t , lnh ld ny s c i chiu l loi
lnh Memory format v to m tng ng. Qu trnh chuyn m s c thc
hin tun t vo c kt qu tng ng nh hnh 5.5

Hnh 5.5. Kt qu chuyn m chng trnh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 80

CHNG 5 : NGN NG BC CAO V MY TNH


5.3. Lin kt chng trnh v np chng trnh
Hu ht cc chng trnh ng dng u c cu to t mt vi modul. Mi
mt modul ny c xy dng t cc ngn ng lp trnh khc nhau v chng c
th c cung cp bi cc th vin khc nhau, trn cc mi trng lp trnh
khc nhau, thm chi trn cc h iu hnh khc nhau. Mi mt modul c cc
thng tin c trng khc nhau cho nn chng cn c kt ni np chng
trnh v thc thi
Chng trnh kt ni linker l chng trnh phn mm kt hp cc chng
trnh hp ng khc nhau thnh 1 chng trnh c lp. Chng trnh linker s
phi gii quyt tt c cc vn nh cc bin ton cc, bin a phng, gii
quyt cc a ch cc bin trn cc chng trnh hon ton c lp. Chng
trnh cui cng s c np vo b nh bng chng trnh loader
Th vin kt ni ng (dynamic link libraries - DLLs) c xy dng bi
Microsoft trn h iu hnh Windows c s dng rt ph bin.Chng ta s
tm hiu thm v cc th vin lin kt ny nhng phn sau trong mc ny
5.3.1. Lin kt chng trnh
kt hp cc chng trnh c lp vi nhau, chng trnh kt ni cn phi
Gii quyt vn cc a ch cc modul khc nhau phi c lin kt
li
Xc nh li v tr ca cc modul trong b nh bng cch kt hp. Trong
sut qu trnh ny, rt nhiu a ch trong cc modul phi c thay i
tng ng vi chng trnh mi c to ra
Xem xt li cc biu tng c s dng trong cc modul khc nhau
Nu cc modul nm trong cc phn on khc nhau, chng trnh linker
phi nhn din v thm nhp vo cc phn on khc nhau
Lin kt cc a ch cc modul
gii quyt vn a ch ca cc bin v hng s cc modul khc nhau,
chng trnh lin kt cn phi phn bit cc biu tng cc bin a phng
vi cc biu tng cc bin ton cc. iu ny c thc hin bi cc lnh
gi .global v .extern. Lnh gi .global s gn cho cc biu tng
trong modul l cc bin ton cc v cho php cc modul khc truy cp. Lnh gi
.extern ch ra rng nhn m n tr ti c s dng trong 1 modul nhng li
c nh ngha trong mt modul khc. Do , lnh gi .global c s
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 81

CHNG 5 : NGN NG BC CAO V MY TNH


dng trong modul m cc biu tng c nh ngha cn lnh gi
.extern c s dng nhng ni m cc modul cn s dng cc bin trong
.global. C mt iu ch l a ch cc nhn c th l ton cc hoc l a
phng
Tt c cc nhn c nh ngha trong mt chng trnh nhng s s dng
trong mt chng trnh khc, v d nh chng trnh con s c khai bo vi
cu trc
.global symbol1, symbol2,...
Tt c cc nhn cc modul a phng, c cng tn nhn v c s dng
trong ln hn mt modul khc s c khai bo
.extern symbol1, symbol2,...
V d di y m t cch s dng ca .global v .extern

Hnh 5.6. V d minh ha v .global v .extern


Xc nh li v tr cc modul trong b nh
Trong v d hnh 5.6, ta thy rng c 2 chng trnh u c bt u cng
mt a ch l 2048, do vy chng khng th tn ti cng mt thi im bi
nu nh vy s dn ti hin tng xung t b nh. gii quyt vn ny
cc biu tng phi c t li a ch trong qu trnh lin kt. tng gii
quyt l chng trnh thay v bin dch a ch 2048 th n s bin dch a
ch 3000 chng hn, v do lch a ch s l 3000 2048 = 925. Vic ny
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 82

CHNG 5 : NGN NG BC CAO V MY TNH


s c chng trnh lin kt qun l. Do s khng c mt chng trnh con
no c bin dch cng mt a ch so vi chng trnh chnh.

5.3.2. Np chng trnh


Chng trnh np loader l chng trnh c s dng np chng trnh ln
b nh. Nhim v ca loader l np cc phn vng b nh khc nhau vi cc
c th nh cc gi tr thanh ghi iu khin v d nh %sp, b m chng
trnh, %pc chuyn n thnh gi tr tng ng chng trnh c th hot ng
bnh thng
Nu ti mt thi im ch c 1 chng trnh c np, vic thc thi chng
trnh hot ng rt n gin. Tuy nhin, trong cc h iu hnh hin i, mt
vi chng trnh c th c np cng lc, do khng c cch no linker
hay loader c th bit c a ch m n ang x l. Chng trnh np cn xc
nh li a ch ca cc modul bng cch np vo a ch offset i vi ton b
cc lnh trong modul. Phng php ny c tn l relocating loader. Phng
php np relocating khng lp li cng vic ca chng trnh lin kt linker.
Chng trnh lin kt linker s kt hp mt vi modul thnh mt modul duy
nht, trong khi , b np loader nh li a ch ca mt chng trnh duy nht
nhiu chng trnh c th ng thi np vo b nh chng trnh. Phng
php np th 2 c tn linking loader. Phng php ny c chc nng ca c
chng trnh kt ni linker v chng trnh np loader: xc nh li a ch cc
bin, nh li a ch cc modul v np vo b nh
Chng trnh lin kt s to ra file cha cc thng tin c t li qu trnh lin
kt nh a ch bt u ca chng trnh, cc thng tin nh li a ch v cc
im bt u ca cc chng trnh con
Mt cch khc np b nh chng trnh l s dng chng trnh qun l b
nh memory managemet unit MMU. Chng trnh ny s phn chia b nh
vt l thnh tng phn vng (segment). Vic truy cp mt nh s l truy cp
vo phn vng tng ng v a ch offset. Cc chng trnh khc nhau c th
c cng a ch offset nhng s c a ch segment khc nhau

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 83

CHNG 5 : NGN NG BC CAO V MY TNH


Th vin lin kt ng DLL
Quay tr li v th vin lin kt ng DLL, khi nim ny c mt s tnh nng
hp dn. Cc bin ca cc chng trnh con thng xuyn c s dng v d
nh chng trnh qun l b nh hay qun l ha s c lu vo mt v tr,
l th vin DDL. iu ny lm cho kch thc chng trnh nh hn bi v
mi chng trnh khng cn phi lu li mt bn sao DDL m thng thng
phi c. Tt c cc chng trnh chia s cc on m ca mnh ngay c trong lc
thc hin. Hn na, th vin DDL cn c nng cp kh nng phn tch li
hoc cc chc nng khc. Nh th, cc chng trnh s dng ti n khng cn
phi chuyn m hay lin kt li

5.4. Macro
Trong qu trnh s dng chng trnh con, chng ta nhn thy l mt s lng
cc thanh ghi s c lu vo v ly ra t stack trong qu trnh gi chng trnh
con v quay v chng trnh chnh. ct thanh ghi %r15 vo stack, h thng
phi thc hin 2 qu trnh c th hin bi 2 dng lnh sau
Addcc
%r14, -4- %r14 ! Gim gi tr thanh ghi stack pointer
St
%r15, %r14
! Ct ni dung %r15 vo stack
Trong trng hp ny, hnh ng xy ra ch bao bm 2 lnh. Tuy nhin nu
hnh ng xy ra lp i lp li nhiu ln bao gm nhiu lnh th vic vit i vit
li on chng trnh lp li tr nn rt nhm chm. Do , ta c th thay th
on chng trnh bng chng trnh macro. Trong v d trn, ta c th thay
th 2 cu lnh bng mt li gi macro
Push

%r15

Trong push l mt macro vi ni dung sau c th hin trong hnh 5.9


Hnh 5.9. Ni dung macro

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 84

CHNG 5 : NGN NG BC CAO V MY TNH


Mt macro c nh ngha bi lnh gi .macro v kt thc bi .endmacro.
Ngay sau lnh gi .macro l tn ca macro do ngi s dng t ra v cc
ton t l cc bin a phng c s dng trong thn chng trnh macro.

TNG KT CHNG
Trong chng ny, chng ta tm hiu mt s vn quan trng sau
Qu trnh bin dch chng trnh t ngn ng cp cao nh C hay Pascal
sang hp ng bao gm cc nhm lnh dch chuyn d liu, nhm lnh
ton hc v nhm lnh iu khin lung chng trnh
Qu trnh chuyn hp ng sang ngn ng my qu trnh chuyn m 2
ln
Kt ni cc modul chng trnh thnh 1 chng trnh ln
S dng macro

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 85

CHNG 6 : IU KHIN LUNG D LIU


CHNG 6: IU KHIN LUNG D LIU

Trong nhng chng trc, chng ta tm hiu v my tnh cc mc ng


dng, mc ngn ng lp trnh bc cao, mc hp ng. Trong chng 4, chng ta
gii thiu ni dung ca kin trc tp lnh ISA, tc ng ca tp lnh ln cc
thanh ghi v b nh. Trong chng ny, chng ta s tm hiu mt b phn ca
my tnh chu trch nhim thc thi cc lnh, l b iu khin ca CPU. Vi
ni dung , chng ta s tm hiu my tnh mc vi chng trnh. Cu trc vi
chng trnh bao gm cc b iu khin v cc thanh ghi lp trnh m ngi s
dng khng c php tng tc, cc khi chc nng nh ALU, cc thanh ghi
c chc nng b xung m cc b iu khin yu cu
Mi mt kin trc tp lnh khc nhau c th c cu trc vi chng trnh khc
nhau. V d, cng mt kin trc ISA ca my tnh Intel Pentium nhng s c
nhiu phng thc iu khin khc nhau. Khng ch vi Intel, mt s i th
cnh tranh khc nh AMD hay Cyrix cng thc hin da trn kin trc tp lnh
ISA nhng phng php thc hin hon ton khc so vi Intel. Mt kin trc vi
chng trnh c th ti u tc hot ng, c th ti u tit kim nng lng
hoc cng c th l tit kim gi thnh sn xut. Vic kin trc vi chng trnh
thay i trong khi vn gi nguyn kin trc tp lnh ISA s lm cc nh sn
xut IC c th tn dng c cng ngh IC v cng ngh b nh v ch cn
ngi s dng thay i phn mm
Trong chng ny, chng ta s nghin cu 2 thi cc ca kin trc vi chng
trnh l iu khin vi chng trnh bng phn mm v iu khin vi chng
trnh bng phn cng v xem xt hot ng ca vi x l trn nn tng ca 2 kin
trc

6.1. C s vi kin trc


Cc chc nng ca vi kin trc xoay quanh vic gii m-thc thi lnh, do
c coi l tri tim ca my tnh. Nh tho lun chng 4, cc bc
thc thi mt chu k lnh l
1. Np lnh k tip c thc thi t b nh
2. Gii m lnh
3. Np cc ton hng t b nh hay thanh ghi nu cn
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 86

CHNG 6 : IU KHIN LUNG D LIU


4. Thc thi lnh v lu kt qu
5. Tr v bc u tin
Vi kin trc chu trch nhim hot ng ca 5 bc trn. Vi kin trc iu khin
vic np lnh k tip s c thc thi vo vi x l, kim tra cc lnh , np cc
ton hng nu cn, thc thi lnh, lu kt qu v lp li qu trnh.

Hnh 6.1. Cu trc ca vi kin trc


Vi kin trc bao gm khi d liu cha cc thanh ghi v ALU v khi iu
khin nh trn hnh 6.1. Khi d liu cng c bit n l lung d liu. B
iu khin Control Unit c th c xy dng bi mt trong 2 thi cc nh
ni trn. Vi thi cc s dng vi chng trnh, vic iu khin hot ng ca
cc lung d liu hon ton l do chng trnh, chc nng c bit ny c tn
microprogram. y l chc nng ngi lp trnh khng can thip Thng
thng microprogram c cu thnh t nhiu chng trnh nh hot ng
nh cc macro. Ngc li l b iu khin Control Unit c xy dng t phn
cng. T tng ca b iu khin bng phn cng l b iu khin cho rng
mi mt lnh s c thc hin bi mt s bc hu hn, b iu khin s tc
ng h thng chuyn ln lt t trng thi ny sang trng thi khc, mi
trng thi l mt bc ca qu trnh thc hin mt bc ca mt lnh.
Vi 2 thi cc vi kin trc bng phn mm, microprogram v vi kin trc bng
phn cng hardwired, thnh phn cc thanh ghi v ALU s c cu to hon ton
ging nhau. iu khc bit ch l phn iu khin Control Unit. Trong nhng
phn tip theo, chng ta s nghin cu k hn v 2 kiu kin trc vi chng
trnh ny.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 87

CHNG 6 : IU KHIN LUNG D LIU


6.2. Kin trc vi mu ca my tnh ARC
Trong phn ny, chng ta s tm hiu b iu khin Control Unit di cch tip
cn bng phn mm, hay cn c gi l cu trc vi chng trnh. Chng ta s
bt u t vic m t lung d liu v cc tn hiu iu khin n.
Hnh 6.2 nhc li v tp lnh v cu trc tp lnh ARC c m t trong
chng 4. Chng ta c 15 lnh c chia thnh 4 nhm phn bit bi 2 bit tn
cng bn tri. Ngoi ra chng ta cn c thanh ghi trng thi %psr

Hnh 6.2. Tp lnh v cu trc tp lnh ARC


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 88

CHNG 6 : IU KHIN LUNG D LIU


6.2.1. Lung d liu

Hnh 6.3. Cu trc lung chng trnh


Cu trc lung d liu c th hin trn hnh 6.3. Cu trc vi chng trnh bao
gm 32 thanh ghi m ngi dng nhn thy c (%r0 n %r31), thanh ghi
m chng trnh (%pc), thanh ghi con tr lnh (%ir), khi ALU, 4 thanh ghi
m m ngi dng khng nhn thy c (%temp0 n %temp3), v cc kt
ni gia cc thnh phn trn
Cc thanh ghi %r0 n %r31 l cc thanh ghi cho php truy cp bi ngi
dng. Thanh ghi %r0 lun c gi tr bng 0 v khng th thay i c. Thanh
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 89

CHNG 6 : IU KHIN LUNG D LIU


ghi %pc l thanh ghi m chng trnh c s dng theo di cc lnh c
t b nh. Ngi dng c th truy cp trc tip thanh ghi %pc thng qua cc
lnh call v jmpl. Cc thanh ghi m temp c s dng trong qu trnh
bin dch v khng c truy cp bi ngi dng. Thanh ghi %ir lun cha
lnh ang c thc thi v cng khng c truy cp bi ngi dng

Khi ALU
Khi ALU thc hin 1 trong 16 lnh vi 2 ton hng c ly t 2 h thng bus
A v B. 16 lnh ny c th hin trn hnh 6.4. Kt qu ca php ton c
lu tr trn h thng bus C nu tn hiu iu khin b dn knh MUX khng
cha d liu t b nh

Hnh 6.4. 16 lnh ca ALU


Lnh ANDCC v lnh AND u c tc ng l thc hin php ton AND tng
bit ln 2 ton hng trn bus A v B. Tuy nhin ta lu rng cc lnh kt thc
bi CC s c tc ng n iu kin dnh cho lnh nhy. Do lnh ANDCC
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 90

CHNG 6 : IU KHIN LUNG D LIU


s tc ng n iu kin nhy cn lnh AND th khng. Tng t nh vy l
lnh ORCC v OR, lnh NORCC v NOR, lnh ADDCC v lnh ADD.
Lnh SRL (lnh dch phi) s dch ni dung ca bus A sang phi vi s bit
tng ng nm trong bus B (t 0 n 31 bit). Cc s 0 s c nhi vo tn
cng bn tri khi tin hnh dch phi. Lnh LSHIFT2 v LSHIFT10 s dch ni
dung bus A sang tri 2 hoc 10 bit tng ng. Cc s 0 s c nhi vo bn
phi
Lnh SIMM13 s ly 13 bit c trng s nh nht ca d liu trn bus A v thm
19 s 0 vo cc bit c trng s ln nht. Lnh SEXT13 thc hin vic m rng
13 bit c trong s nh nht trn bus A thnh mt t 32 bit. Tc l nu bit tn
cng bn tri ca 13 bit l 1 th 19 s 1 s c thm vo phn c trng s ln
nht to thnh kt qu. Lnh INC s tng gi tr trn bus A ln 1 n v.
Trong khi lnh INCPC s tng gi tr trn bus A ln 4. Lnh INCPC thng
c s dng lm tng thanh ghi con tr lnh %pc. Lnh INCPC c th tc
ng n tt c cc thanh ghi c kt ni vi bus A
Lnh RSHIFT5 dch ton hng trn bus A sang phi 5 bit, chp bit c trng s
ln nht (bit du) vo v tr 5 bit pha bn tri. Lnh ny c hiu ng l to ra 5
bit m rng lm bit du. Khi thc hin lnh ny 3 ln vi ton hng 32 bit s
to ra hiu ng chuyn bit c trng s ln nht ca trng COND trong cu trc
Branch sang v tr bt s 13
Tt c cc lnh ton hc v logic u c th c thc hin bng cc lnh trong
ALU. V d nh php tr A B c th c thc hin bi tng ca A vi s -B
l s b 2 ca B. Ch rng trong lnh ALU ca my tnh ARC khng h c
php ton o. thc hin php ton o, ta c th s dng php ton NOR
tc ng vi tt c cc bit ca B.
ALU to ra cc tn hiu c c, n, z, v v. Cc tn hiu ny tch cc nu xy ra cc
hin tng tng ng
ALU c th c cu to theo nhiu cch. Mt cch n gin nht c gi l
phng php lookup table (LUT). Khi ALU c cc ng d liu vo A v B
v 1 ng d liu ra C. Cc ng d liu ny c rng 32 bit. Ngoi
ra,ALU cn c 4 bit iu khin F, 4 bit a ra cc tn hiu trng thi v tn hiu
SCC c s dng thit lp cc tn hiu c trong thanh ghi %psr. Chng ta
c th phn tch ALU thnh 32 khi LUT, mi khi thc hin cc php ton v

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 91

CHNG 6 : IU KHIN LUNG D LIU


logic ring bit. Kt qu c a vo khi barrel shifter c tc dng nh b
dch tri phi. S khi ca ALU c th hin trong hnh 6.5.
Khi barrel shifter s dch cc d liu u vo t 0 n 31 bit ph thuc vo cc
tnh hiu iu khin u vo. Cu to ca b dch barrel shifter c th hin
trong hnh 6.6.

Hnh 6.5. S khi ca ALU


Trn hnh 6.6. chng ta s bt u vi pha di ca mch, ta s thy u ra ca
mch s tng ng vi u vo pha trn. Nu tn hiu SA0 bng 0 th ton b
tn hiu trn s c chuyn xung di m khng tin hnh dch tri hay
phi. Khi tn hiu SA0 bng 1 th hnh ng dch mi xy ra. Khi tn hiu SA0
bng 1, tn hiu Shift Right cng bng 1 th u ra s dch sang phi, ngc li
s dch sang tri. cm mch pha trn, hnh ng dch cng c tin hnh
tng t. Vi nguyn l , thc hin dch t 0 n 31 bit th chng ta cng
c h thng mch gm 31 tng. S bit dch chuyn s c kch hot tng ng
khi hot ng
Mi mt khi LUT hot ng c lp vi nhau. Chng c cu to ni chung l
ging nhau ngoi tr mt s khc bit khi thc hin lnh INC v INCPC. V
mt c bn, ta c bng chn l ca b LUT c th hin trong hnh 6.7.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 92

CHNG 6 : IU KHIN LUNG D LIU

Hnh 6.6. Cu to b dch barrel shifter

Hnh 6.7. Bng chn l ca LUT

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 93

CHNG 6 : IU KHIN LUNG D LIU


Cc tn hiu iu khin n, z, v v c hot ng trc tip trong n v c c ly
ra trc tip t c31 ca b dch barrel shifter v tn hiu c t LUT s 31
Lu rng ch c cc lnh kt thc bi CC mi tc ng n cc iu kin
nhy. Tn hiu ny c to ra v c nh du bi nhn SCC (Set Condition
Codes). Tn hiu ny l TRUE khi c 2 tn hiu F3 v F2 l FALSE

Cc thanh ghi
Tt c cc thanh ghi trong ALU u l cc thanh ghi c tc ng sn xung
loi D. iu c ngha l u ra ca cc thanh ghi khng thay i khi tn hiu
xung nhp chuyn trng thi t cao xung thp. Tt c cc thanh ghi u c
chung mt dng. Hnh 6.8 di y th hin thanh ghi %r1, cc thanh ghi cn
li cng c cu to hon ton nh vy

Hnh 6.8. Cu to ca thanh ghi %r1


Tn hiu xung nhp CLK a vo thanh ghi %r1 thng qua cng AND vi tn
hiu chn thanh ghi c1 t b gii m C decoder. Vi cu to ca cc thanh ghi
%ri khc, ta s a tn hiu ci tng ng t b gii m. Tn hiu vo cc thanh
ghi c ly trc tip t cc ng dy trn h thng bus C. u ra ca thanh
ghi c ghi vo h thng bus A hoc bus B thng qua b m 3 trng thi. u
ra ca b m s a vo bus A hoc bus B bi cc tn hiu iu khin a1 v b1
ca cc b gii m A decoder v B decoder, hai tn hiu ny s ch c 1 tn hiu
c tch cc ti 1 thi im

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 94

CHNG 6 : IU KHIN LUNG D LIU


Cc thanh ghi cn li c cu to hon ton tng t. Tuy nhin thanh ghi %r0
lun lun mang gi tr l 0, khng thay i c. Do thanh ghi %r0 khng
c u vo t bus C cng nh khng c u vo t b gii m C decoder, v
cng khng cn c cc flip-flop. Thanh ghi %ir c cc u ra c bit tng
ng vi cc trng rd, rs1, rs2, op, op2, op3 v trng bit 13, nh
hnh 6.9. Cc u ra c s dng bi b iu khin trong qu trnh chuyn m.
iu ny s c th hin k hn trong mc 6.2.4.
Cc b gii m A, B, C n gin l cc b la chn cc tn hiu. Mi b gii m
ny c 6 bit tn hiu vo c th gii m 64 tn hiu khc nhau. Tuy nhin chng
ta ch cn gii m 38 thanh ghi, trong thanh ghi %r0 khng cn gii m. Do
, ta s s dng tt c 37 tn hiu gii m

6.2.2. Khi iu khin Control section


Vi kin trc theo cu trc vi chng trnh c th hin nh hnh 6.10. Trn
hnh th hin c khi lung d liu, khi iu khin v kt ni gia cc khi.
Trung tm ca khi iu khin l vng nh kch thc 2048 word x 41 bit.
Vng nh ny cha d liu theo hng, mi mt hng iu khin mt bc trong
vic thc thi lnh. Vng nh ROM ny s c tn l control store trong ti liu
ny. Mi mt t 41 bit c gi l mt vi lnh microinstruction. Khi iu
khin chu trch nhim np vi lnh, tng t nh vi cc my tnh tng t
ARC khc. Hot ng ca cc vi lnh c iu khin bi thanh ghi vi lnh
MIR (microprogram instruction register), thanh ghi trng thi %psr, v mt c
ch xc nh vi lnh no s c thc thi tip theo. C ch bao gm khi
iu khin r nhnh CBL (Control Branch Logic), v khi Control Store
Address MUX. y cng khng cn thit phi c mt my tnh ring bit
qun l, lu tr a ch ca vi lnh k tip bi v a ch c tnh ton trc
tip trong mi chu k lnh
Khi vi cu trc bt u hot ng, gi s l lc bt u cung cp ngun, mch
reset (khng th hin trn hnh) s np vi lnh a ch 0 trong b nh control
store vo thanh ghi vi lnh MIR v thc thi n. Bt u t thi im ny, cc
lnh k tip c thc thi t cc khi Next, Decode hay khi Jump trong khi
CS Address MUX ph thuc vo trng COND trong thanh ghi vi lnh MIR v
khi iu khin r nhnh v logic CBL. Mi khi mt vi lnh c t vo MIR,
lung d liu tng ng s c thc hin. l lung d liu no ph thuc
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 95

CHNG 6 : IU KHIN LUNG D LIU


vo ni dung ca cc trng c th trong thanh ghi MIR

Hnh 6.10. Vi kin trc ca ARC

Hnh 6.11. Cu trc ca mt vi lnh


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 96

CHNG 6 : IU KHIN LUNG D LIU


Cu trc ca mt vi lnh c th hin trn hnh 6.11. T bn tri sang, bt u
l trng A gm 6 bit. T hp ca cc bit ny s quyt nh kch hot lung d
liu tng ng i t thanh ghi ln h thng bus A. Trng AMUX gm 1 bit
tip theo quyt nh d liu t trng A decoder s c np t trng A trong
thanh ghi MIR (AMUX = 0) hay c np t trng rs1 trong thanh ghi %ir
(AMUX = 1). Tng t nh vy, trng B v C s ch ra thanh ghi c truy
xut ln h thng bus B v bus C. BMUX quyt nh d liu trn B decoder
c ly t MIR (BMUX = 0) hay t rs2 trong %ir cn CMUX quyt nh d
liu trn C decoder c ly trn MIR (CMUX = 0) hay t rd trong %ir
Tn hiu RD v WR l cc tn hiu quyt nh xem b nh c c hay ghi.
Qu trnh l c nu RD = 1 v qu trnh l ghi nu WR = 1. Tn hiu RD v
WR s khng ng thi l 1 ti cng mt thi im, nhng c th ng thi l 0
khi khng din ra qu trnh truy cp b nh. Trong c 2 qu trnh c v ghi d
liu, a ch nh s c ly trc tip trn h thng bus A, d liu t ALU i
vo b nh c ly trn bus B cn d liu t b nh i vo ALU c ly trn
bus C. Tn hiu RD cng iu khin b dn knh 64 sang 32 (b MUX). y l
b phn la chn tn hiu trn bus C s c np t b nh ngoi (RD = 1) hay
c ly t ALU (RD = 0)
Trng ALU quyt nh xem ALU s thc thi hnh ng g nh trn hnh 6.4.
C tt c 16 lnh m ALU c th thc hin c tng ng vi 4 bit trong
trng ALU. iu ny cng c ngha l khng c cch no tt ALU khi
khng s dng, v d nh trong qu trnh c v ghi b nh
Trng COND s ch dn b vi iu khin np vi lnh k tip t b nh
control store hoc np t mt v tr c ch ra trong trng JUMP ADDR trong
thanh ghi MIR hoc t mt m lnh trong thanh ghi %ir. Trng COND c
bin dch ra bng th hin trong hnh 6.12. Nu COND = 000, s khng c lnh
nhy no c tc hin, d liu trong khi Next trong khi CS Address MUX
s c np. Khi Next ny c tnh ton bi mt b m CSAI (Control
Store address increment) th hin trong hnh 6.10. Trong cc trng hp COND
c gi tr 001, 010, 011, 100 hay 101, lnh nhy c iu kin s tr ti vng nh
control store tng ng c lu trong trng JUMP ADDR ty thuc vo gi
tr ca cc bit n, z, v, hay c hoc bit th 13 trong thanh ghi %ir. Nu COND =
110, lnh nhy khng iu kin s c thc hin. Trng COND l 111 ch ra
rng ti thi im ang din ra qu trnh gii m lnh. Khi , lnh k tip

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 97

CHNG 6 : IU KHIN LUNG D LIU


trong control store c np vo MIR c ly t khi Next trong CS Address
MUX hoc trong khi JUMP.

Hnh 6.12. Cu hnh trng COND trong vi lnh


Cui cng, trng JUMP ADDR cha 11 bit tn cng bn phi ca thanh ghi
MIR s cha v tr ca vi lnh cha trong vng nh control store gip h thng
c th nhy n v tr bt k trong vng nh .

6.2.3. ng b hot ng
Kin trc vi mu hot ng di tc ng ng b ca 1 b pht xung nhp. Cc
khi master ca tt c cc thanh ghi thay i trng thi vo thi im sn ln
ca xung v cc khi slave thay i trng thi ti thi im sn xung ca
xung. iu ny c th hin nh trn hnh 6.14.

Hnh 6.14. ng b tn hiu vi xung clock


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 98

CHNG 6 : IU KHIN LUNG D LIU


Tt c cc thanh ghi u cu to t flip-flop loi D ngoi tr thanh ghi %r0
khng cu to t flip-flop no c. Ti sn xung ca xung nhp ng h, d
liu lu tr trong cc khi master ca cc thanh ghi s c gi ti cc khi
slave. iu ny lm cho cc d liu cn thit cho hot ng ca ALU lun lun
trng thi sn sng. Khi xung nhp mc thp, cc khi ALU, CBL v MUX
hot ng v n ng thi im sn ln ca xung, d liu trong n nh
ng thi cc d liu mi trong cc thanh ghi s c lu vo cc khi master.
Cc thanh ghi s d nguyn gi tr trong khi xung nhp ng h mc cao. Qu
trnh s c lp i lp li

6.2.4. By v ngt
By trap l mt th tc t ng c gi ti bi mt tn hiu in khi xy ra
mt iu kin no khi ALU thc thi chng trnh, v d nh lnh khng hp
l, trn d liu, hay xy ra php chia cho s khng. Khi c yu cu thc thin
by, quyn iu khin c chuyn giao cho by thc cht l mt chng
trnh c sn ca h iu hnh. By s thc hin mt chng trnh nht nh
no ty thuc vo tng h iu hnh, v d nh hin th li xy ra,...
Mt phng php thc hin by l iu chnh vi lnh.V d, ta c th kim tra
bit v xem h thng c b trn hay khng. Nu xy ra iu kin by, mt on
vi lnh s c s dng np vo PC vi mc ch l xc nh a ch bt u
ca by.
Thng thng, ngi ta thng s dng mt vng nh lu a ch ca cc
by. Vng nh ny c tn branch table c s dng chuyn quyn iu
khin cho cc by (Hnh 6.18.).

Hnh 6.18. Bng ngt branch table


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 99

CHNG 6 : IU KHIN LUNG D LIU


Ngt cng tng t nh by, nhng ngt s bt u khi c mt tc ng phn
cng nh n mt phm trn bn phm, mt bin ng ca ngun cung cp, hay
mt tc ng ca nhit ln h iu hnh,v.v...By ng b vi chng trnh
chy cn ngt th khng. Do , by s c thc hin ti cng mt v tr trong
cng mt chng trnh vi cng mt tp d liu, cn ngt s xy ra m khng
th d on trc c
xem xt k hn v s hot ng ca ngt, ta s xem xt mt v d hot ng
ca n sau y. Khi tc ng mt phm trn bn phm, bn phm s chuyn tn
hiu ngt trn ng tn hiu INT v CPU, ngay sau , CPU xc nhn nhn
c tn hiu ngt. Bn phm tip sau s t vector ngt ln ng bus d
liu truyn tip v CPU, y chnh l cc d liu m chng trnh ngt s s
dng thc hin ngt. Tip , CPU s lu b m chng trnh v thanh ghi
trng thi vi x l vo stack. Vector ngt s c s dng truy cp branch
table xc nh a ch ca chng trnh ngt tng ng thc thi.
Khi by hoc ngt c thc hin, h thng s t ng lu cc thanh ghi c kh
nng b thay i gi tr vo stack, sau s khi phc li khi by hoc ngt
c thc hin xong. Qu trnh khi phc v chuyn quyn iu khin v
chng trnh chnh sau khi thc hin xong by hoc ngt khc i vi chng
trnh con. im khc bit l i vi ngt hoc by, thanh ghi %psr c lu v
khi phc li cn i vi chng trnh con th khng

6.2.5. Lp trnh nano


Trong hnh 6.10 trn, chng ta nghin cu v cu trc ca CPU, trong ta
thy c mt vng nh control store kch thc 2048 x 41 bit. y l vng nh
cha cc vi lnh. Cc vi lnh ny s c np vo thanh ghi iu khin MIR
iu khin cc lung d liu trong h thng. Vn t ra l ta c th thit k
vng nh ny nh th no
Thng thng, vng nh control store s lu tr 2048 vi lnh khc nhau, mi vi
lnh c kch thc 41 bit. Tuy nhin, nu trong trng hp h thng c nhiu vi
lnh ging nhau, chng ta c th tit kim kch thc vng nh ny bng cch
l lu tr mt vi lnh duy nht c gi l nanostore v s nh ch s truy
cp vo cc nanostore ny.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 100

CHNG 6 : IU KHIN LUNG D LIU


Hnh 6.19a ch ra kch thc b nh trong trng hp c bn l 2048 x 41 bit.
Khi dung lng cn thit ca b nh l 2048 x 41 = 83968 bit

Hnh 6.19. (a) Vng nh control store (b) Lp trnh nano


By gi hy gi s l h thng ca ta khng s dng 2048 vi lnh khc nhau m
ch s dng khong 100 vi lnh. Thng thng, 100 vi lnh ny vn nm trong
vng nh 2048 x 41 bit, trong c nhiu hng c cng mt ni dung. Vi mc
ch sp xp li vng nh gim thiu dung lng b nh cn s dng (ni
cch khc l lp trnh li vng nh - lp trnh nano), ta c th thc hin nh sau.
Vng nh th nht cn dng l vng nh c tn nanoprogram c s dng
cha 100 vi lnh khc nhau. Vng nh th 2 l vng nh microgram c 2048
hng tng ng vi s hng mc nh trong ARC, s ct trong mi hng c s
bit tng ng vi s vi lnh, y l 100. Do ta cn s dng y l k =
log2(100) = 7. Vng nh microgram ny cha 2048 gi tr m mi gi tr m
ha tng ng 1 lnh trong vng nh nanoprogram. Lc tng vng nh m
ta cn s dng l 18436 bit

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 101

CHNG 6 : IU KHIN LUNG D LIU


6.3. B iu khin cng
Mt phng php khc c th iu khin khi control unit l s dng phn
cng. Khi , ta s s dng cc mch c to ra t cc cng logic l cc flipflop thay th cho khi control store
Vic thit k mch phn cng thc hin nhim v iu khin khi control
unit rt phc tp. qun l cng vic thit k ny, ngi ta thng s dng
ngn ng m t phn cng HDL hardware description language. Mt s pht
trin ca ngn ng ny l VHDL, l vit tt ca VHSIC Hardware Description
Language Very High Speed Integrated Circuit.

Hnh 6.20. V d v ngn ng HDL


Hnh 6.20. th hin m t HDL ca b m modul 4. Tn hiu ra c 4 trng thi
00, 01, 10, 11 v sau lp li cho n khi u vo x l 0. Nu u vo c set
ln 1, b m s quay li trng thi 0 chu k xung nhp k tip
Mt chng trnh vit bng HDL bao gm 3 khi: Preamble, statements v
epilogue. Khi Preamble s t tn ton b modul bi t kha MODULE,
nh ngha cc bin u vo, u ra bi INPUTS, OUTPUTS, s lng cc
u ra v tt nhin n cng nh ngha thm dung lng b nh m rng nu
cn bi t kha MEMORY. Cc trng thi ca mch c th hin ngay sau
trong phn Statements ngay sau Preamble. Khi Epilogue s kt thc modul
bi cm t kha END SEQUENCE. Cm t kha END
MOD_4_COUNTER c s dng ng ton b modul.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 102

CHNG 6 : IU KHIN LUNG D LIU


Vic chuyn ngn ng HDL thnh mch in t c th c phn tch thnh 2
phn ring bit l khi iu khin v khi d liu. Khi iu khin i ph vi
vic chuyn trng thi gia cc trng thi ca mch. Khi d liu qun l cc d
liu ra v thay i cc gi tr u ra khi cc gi tr u vo thay i

Hnh 6.21. Mch m modul 4


Trc ht ta s xem xt khi iu khin. Chng ta c 4 trng thi u ra nn s
s dng 4 flip-flop, mi chic tng ng mt trng thi. u tin, ta s v 4
flip-flop v nh s tng ng v cung cp cho chng cc tn hiu xung nhp
CLK. Bc tip theo n gin l qut tt c cc trng thi thm cc cng
logic thch hp cho vic chuyn trng thi. T trng thi 0, ta c 2 trng thi m
n c th chuyn sang l trng thi 0 v trng thi 1 di iu kin u vo x.
u ra ca flip-flop 0 do s c ni vi u vo ca cc flip-flop s 0 v s
1. Cng AND c s dng thm cc iu kin x vo gi tr u ra. Ch
rng cng AND ni vi flip-flop 1 c 1 vng trn nh u vo, iu ny c
ngha l tn hiu x c nghch o trc khi c a vo cng AND. Cc
trng thi ca cc flip-flop 1 v 2 cng hon ton tng t nh i vi flip-flop
0. Vi flip-flop 3 th khng cn lm vy v vi mi gi tr ca x th trng thi
u c chuyn v 0.
Tip theo l khi d liu, rt n gin trong trng hp ny. Cc bit u ra
chuyn trng thi trong mi trng thi ca n, do khng cn thit phi xc
nh iu kin khi to cc tn hin ra. Chng ta ch cn xc nh ng cc gi tr
ca u ra l xong. Bit c trng s nh nht bng 1 cc trng thi 1 v 3, nn
u ra ca n c ly ra t flip-flop 1 v 3 qua mt cng OR. Bit c trng s
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 103

CHNG 6 : IU KHIN LUNG D LIU


ln nht bng 1 trng thi 2 v 3, do cng tng t u ra ny c ly t
flip-flop 2 v 3 thng qua 1 cng OR. Kt qu cui cng ta c c mch nh
hnh 6.21.
By gi ta quay tr li khi iu khin ca kin trc ARC c th hin trong
hnh 6.10. Nhc li mt cht, ta c th thit k khi iu khin ny bng 2 cch
tip cn. Cc tip cn th nht ta cp trong mc 6.2, l cch tip cn
bng phn mm. Trong phn ny, ta s xem xt cch tip cn bng mch iu
khin phn cng
Vi mi lnh c thc thi, cc bc m CPU phi thc hin bao gm
1.
2.
3.
4.
5.

Np lnh k tip s c thc thi t b nh


Gii m lnh
c cc ton hng t b nh hoc thanh ghi nu cn
Thc thi lnh v lu kt qu
Quay v bc 1

Khi iu khin ca ARC c m t bi ngn ng HDL c th hin trong


hnh 6.22
Hnh 6.23 th hin khi iu khin m t khi iu khin ca ARC
Hnh 6.24. th hin khi d liu u ra ca khi iu khin ARC

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 104

CHNG 6 : IU KHIN LUNG D LIU

Hnh 6.22. Khi iu khin ca ARC di ngn ng HDL


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 105

CHNG 6 : IU KHIN LUNG D LIU

Hnh 6.23. Khi control section ca khi iu khin ARC

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 106

CHNG 6 : IU KHIN LUNG D LIU

Hnh 6.24. Khi d liu ca khi iu khin ARC


TNG KT CHNG
Vi kin trc my tnh bao gm cc lung d liu v khi iu khin. Lung d
liu bao gm cc thanh ghi, khi ALU v cc kt ni gia chng. Khi iu
khin bao gm thanh ghi iu khin MIR (vi cch tip cn bng phn mm)
hoc cc m iu kin trng thi. Tng ng nh vy, ta c th thit k b iu
khin bng vi chng trnh hoc bng phn cng. B iu khin vi chng trnh
bao gm cc vi lnh c lu tr trong khi b nh control store. B iu khin
bng phn cng bao gm t hp cc flip-flop mang thng tin cc trng thi, kt
hp vi cc cng logic th hin s chuyn trng thi ca b iu khin
Cch tip cn bng phn cng lm h thng hot ng vi tc cao v s
dng s lng phn cng nh hn so vi cch tip cn bng phn mm. Tuy
nhin cch tip cn bng phn mm t ra linh hot hn, qu trnh hot ng n
gin hn nn phng php ny c s dng ph bin hn. H tr cho cch
tip cn phn mm l vic thit k lp trnh nano. y l th thut lm gim
thiu b nh control store

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 107

CHNG 7 : B NH
CHNG 7: B NH

Trong vi thp k trc y, tc x l ca CPU c tnh bng s lnh c


x l trong 1 giy, thng thng tng gp i trong 18 thng. B nh my tnh
cng tng t nh vy, dung lng ca n cng tng gp 4 mi 36 thng. Tuy
nhin, tc hot ng ca b nh ch tng ln vi t l di 10% mi nm. Do
, trong khi tc x l ca CPU tng tng ng vi dung lng b nh, cn
khong cch gia tc x l ca CPU v tc hot ng ca b nh ngy
cng ln.
Khi khong cch gia tc x l ca CPU v tc b nh tng ln, cc gii
php k thut s c s dng lp y cc khong cch ny. Mt my tnh
in hnh cha mt vi loi b nh khc nhau, t cc loi hot ng nhanh, t
tin nh cc thanh ghi ni bn trong CPU, n cc loi b nh r tin, khng
t nh cc loi nh gn ngoi. S tng tc gia cc loi b nh ny lm cho
my tnh hot ng nh th chng s dng 1 h thng nh n gin, dung
lng ln v tc nhanh; mc d thc t chng cha rt nhiu dng b nh
khc nhau. Chng ta s bt u chng ny vi ni dung cc t chc b nh
trong my tnh

7.1. Phn cp b nh
B nh trong mt my tnh s thng thng c t chc theo phn cp c
th hin nh hnh 7.1. pha trin ca h thng phn cp l cc thanh ghi c tc

Hnh 7.1. Phn cp b nh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 108

CHNG 7 : B NH
tng ng vi tc ca CPU nhng c xu hng l kch thc ln v tiu
th in nng ln. Do vy m thng thng ch c mt s lng nh cc thanh
ghi trong vi x l, trong mt vi trng hp c th ln ti vi trm thanh ghi
hoc t hn. pha di h thng phn cp l b nh th cp v cc b nh gn
ngoi nh l cc a t hoc bng t c gi thnh r, tiu th t in nng nhng
thi gian truy cp ln hn rt nhiu so vi thanh ghi. Khong gia h thng
phn cp l mt s dng khc nhau ca b nh. Ni thm mt cht v h thng
phn cp ny, dng b nh c tc truy xut cng cao th c gi thnh cng
cng cao. Bng 7.1. c ta mt s c im v b nh my tnh c thng k
vo nhng nm 90s

Bng 7.1. Mt s c im v b nh my tnh

7.2. B nh RAM Random Access Memory


Trong mc ny, chng ta s tm hiu cu trc v chc nng ca b nh RAM.
Thut ng random y c ngha l bt c mt vng nh no cng c th
c truy cp trong cng khong thi gian. Hnh 7.2 th hin chc nng ca
mt cell RAM trong mt my tnh in hnh v cu to thc t ca mt DRAM.
Cu to ca mt cell RAM bao gm mt D flip-flop cng vi phn iu khin
cho php cell nh c chn selected, c read, ghi writen. Cell RAM c mt
cng 2 chiu c s dng lm ng dy input/output. Ta s da vo cu to
ny tho lun v hot ng ca b nh RAM. Ch rng hnh chc nng 1
cell ram ch l m t v chc nng ch khng phi l cu to thc t. Ta c rt
nhiu cch khc nhau th hin chc nng ca RAM. Hnh cu to DRAM l
mt v d.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 109

Dy d liu (dy bit) B

CHNG 7 : B NH

Tr
S

D
G

Dy iu khin (dy t )

Chc nng ca 1 cell RAM


Cu to DRAM
Hnh 7.2. Cu to ca 1 cell RAM
Qu trnh c RAM c tn hiu iu khin Select = 1 v
= 0. Khi tn
hiu CLK a vo D flip-flop khng tch cc, trng thi ca D Flip-flop khng
i, ng thi tn hiu iu khin cng Data in/out tch cc lm trng thi hin
ti ca D flip-flop i qua cng ny. Qu trnh ghi d liu hot ng tng t.
= 1, tn hiu cng Data in/out khng tch cc lm
Khi Select = 1 cn
u ra ca D flip-flop c cch ly, tn hiu CLK tch cc lm D flip-flop ly
trng thi u vo (lc ny l tn hiu trn Data in/out) thnh trng thi ca n.
D liu trn Data in/out c coi l c lu trn D flip-flop.
B nh c cu to da trn cc Flip-flop nh hnh 7.2 c gi l RAM tnh
(SRAM) bi v ni dung ca mi nh s ko di cho n khi no in nng
ngng cung cp cho nh . Ram ng (Dynamic RAM - DRAM) c cu to
t cc t in, c kh nng lu c d liu c mc logic 1 trong khong mt
vi pht khi ngng cung cp nng lng. Do DRAM b mt nng lng do hin
tng d in nng trn t nn n cn c refresh mt cch nh k. Cng do
hin tng d in nng m h thng DRAM d pht sinh cc tia gamma gy
nhiu ln h thng. y l hin tng kh him khi xy ra nhng nhng h
thng s dng DRAM cng khng th hot ng lin tc nhiu ngy. Thng
thng ta nn tt my tnh vo cui ngy trnh li h thng. Mt s my tnh
c kh nng d tm li h thng nhng nhng h thng ny c gi thnh tng
i cao v c s dng trong cc h thng ATM (automated teller machines )
hay NFSs (network file servers)
Phn tip theo chng ta s tm hiu cc cell RAM c t chc thnh cc chip
nh nh th no

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 110

CHNG 7 : B NH
7.3. T chc b nh

Hnh 7.3. S khi chip RAM


S chn ca chip Ram c m t mt cch n gin nh hnh 7.3. Nh trn
hnh, chip ram c m chn tn hiu a ch c nh k hiu t A0...Am-1, cc tn
hiu iu khin chn chip
(Chip Seclect), tn hiu iu khin
(
=0
ghi d liu ln chip) hoc WR(WR = 1 c d liu t chip v CPU).
Trong qu trnh c d liu t chip, sau khong thi gian tAA l khong thi
gian tr t khi tn hiu a ch c gii m v c tc dng, tn hiu d liu wbit mi tng tc c vi cc ng dy d liu D0...Dw-1. Trong qu trnh ghi
d liu ln chip, ng d liu cn c gi nguyn gi tr trong sut khong
thi gian tAA. Cc ng dy d liu u l cc cc tn hiu 2 chiu.
Tn hiu a ch A0...Am-1 ca b nh RAM th hin trn hnh 7.3 s cha cc tn
hiu a ch c gii m t tn hiu m-bit thnh 2m nh trong chip. Mi nh
s cha w-bit. Do chip nh c dung lng l 2m x w bit
Vn gii m h thng RAM
Trong mc 7.2, ta xem xt cu trc ca mt cell RAM. Vn t ra l lm
th no c th xy dng h thng c dung lng ln hn 1 cell ram. Ta hy
xem cu trc ca mt h thng c dung lng 4 x 4 bit word. H thng ny c
mt b gii m 2-to-4 decoder c nhim v gii m 2 tn hiu a ch A0 v A1
thnh 4 a ch nh. Mi tn hiu a ch nh ny c ni vi mt khi c 4
cell tng ng vi 4 bit thng qua cc tn hiu . Cc chn tn hiu u ra ca
cc khi ny Q0...Q3 c ni vi nhau v ni vi ng dy data bus. Khi c
mt gi tr a ch A1A0 a vo h thng, b gii m s kch hot mt ng
a ch 00, 01, 10 hoc 11. Mt trong cc ng dy ny s kch hot 1 khi b
nh t Word0...Word3 tng ng. Cc cell nh trong khi nh s kt ni vi
data bus thc hin qu trnh c hoc ghi theo nhu cu hot ng ca h
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 111

CHNG 7 : B NH

Hnh 7.4. H thng RAM 4 x 4 bit word


thng. Phng php gii m nh trn c tn gi l gii m tuyn tnh hay l gii
m 1 bc. u im ca gii m tuyn tnh l thi gian truy cp b nh tng
i nhanh. Nhc im ca cch gii m ny l t ra khng kinh t vi trng
hp s tn hiu a ch tng cao. V d nh chip b nh dung lng 64M c 26
ng a ch. iu ny c ngha l ta phi xy dng h thng gii m 26-to-226
m trong thc t, chi ph xy dng b gii m ny s chim phn ln gi
thnh ca b nh. gii quyt vn ny, ta xy dng b nh theo phng
php gii m 2 bc nh trn hnh 7.5
H thng gii m 2 bc c s dng ph bin trong hu ht cc Ics nh. H
thng bao gm cc b gii m theo hng v theo ct hot ng c lp vi
nhau. Nh trn hnh 7.5. h thng RAM ca ta c 6 ng a ch c chia
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 112

CHNG 7 : B NH

Hnh 7.5. H thng RAM gii m 2 bc


thnh cc tn hiu hng v ct. B gii m ct cn c chc nng lm b gii m,
la chn tn hiu a ch hoc d liu. Mt h thng tn hiu 2 chiu c s
dng lm cng input v output. Trong qu trnh c, b gii m hng s thc
hin chc nng ca mnh v kch hot ton b mt hng ca ma trn nh. Tip
, tn hiu gii m ct s la chn cho mt u ra duy nht. Trong qu trnh
ghi d liu, bit c ghi c phn phi bi b gii m DEMUX ln ct mc
tiu, ng thi b gii m hng s la chn hng thch hp vit
Mt ci tin ca nguyn l trn l h thng gii m 2 bc kt hp refresh dnh
cho DRAM c trnh by trong hnh 7.6.

Hnh 7.6. B gii m b nh 2 bc kt hp refresh cho DRAM


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 113

CHNG 7 : B NH
Hot ng ca h thng nh sau: Trong qu trnh truy cp nh, u tn tn
hiu gii m hng
s c kch hot tn hiu ca mt hng trong ma trn
cc nh, tip theo l kch hot tn hiu gii m ct
. Trc khi xm
nhp nh, b tin np s cung cp tn hiu in p

2 vo tt c cc ng

dy bit trn cng mt hng. Khi c tn hiu c nh, cc ng dy bit ny s


c kt ni vi t in trong nh. Ty vo gi tr in p trong nh lc
l 0 (hay 1) m in p trn t s c ko ln (hoc ko xung) lm in p
trn ng dy bit b gim (hay tng) mt lng rt nh. B khuch i nhy
s nhn bit s thay i ny v khuch i gi tr np li cho t in v mc
logic 0 (hoc 1) cc in p chun ca n tc l 0V (hoc 5V ). Vic ny lm
cho cc gi tr logic trn cng 1 hng c lm mi refresh mt ln.
Mc d DRAM t ra rt kinh t, nhng SRAM li cung cp mt tc hot
ng nhanh. Qu trnh refresh, qu trnh pht hin li v hot ng vi mc
tiu hao nng lng thp lm cho tc truy cp ca DRAM chch lch
khong 1 4 so vi tc SRAM. Tc truy xut ca c SRAM v DRAM

u ngy cng c ci thin. Mt s phng php truy cp nhanh hay c s


dng l phn trang, ch an xen,...

Thit k h thng dung lng ln t cc chip dung lng nh


Chng ta by gi c th thit k mt modul RAM c dung lng ln t cc
modul dung lng nh. Ta c th tng dung lng RAM theo c 2 chiu, tc l
tng chiu di t nh v tng s lng t nh. V d, ta c th s dng 8 modul
nh dung lng 16M x 1bit to thnh mt modul dung lng 16M x 8-bit;
hoc l ta c th s dng 2 modul dung lng 32M x 8-bit to thnh mt
modul dung lng 64M x 8-bit
Hnh 7.7. cho ta nguyn tc ghp ni b nh tng t nh. Trn hnh ta thy t
2 modul nh kch thc 4 x 4 bit, ta ghp ni c c mt h thng dung
lng 4 x 8 bit. Cch ghp ni ny khng lm thay i s lng nh m ch
lm thay i kch thc ca 1 a ch nh. Nguyn tc chung l:
H thng chung cc tn hiu iu khin, chung cc tn hiu a ch
Cc ng dy d liu D v Q c nh s li tng ng vi modul m
ta s dng lm t cao hoc t thp
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 114

CHNG 7 : B NH

Hnh 7.7. Ghp ni b nh tng t nh

Hnh 7.8. Ghp ni b nh tng s lng t nh


Tng t nh vy, hnh 7.8. cho ta nguyn tc ghp ni b nh tng s lng t
nh. Cc ghp ni ny khng lm thay i kch thc ca 1 t nh m ch lm
thay i s lng a ch m modul truy xut ti. T 2 modul nh 4 x 4 bit, ta
c c modul 8 x 4 bit. Vic tng s lng t nh t 4 ln 8 lm cho s lng
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 115

CHNG 7 : B NH
tn hiu a ch tng t 2 ln 3, tc l ta s c 3 tn hiu a ch A2, A1 v A0.
Trong , 2 tn hiu A0 v A1 c a trc tip vo 2 modul 4 x 4 bit. Tn hiu
A2 s c a vo mt b gii m kch hot tn hiu
ca 1 trong 2 modul
4 x 4 bit. T ta c th c c nguyn tc ghp ni RAM trong trng
hp ny l:
Kt ni chung cc ng dy d liu D v Q ca tt c cc modul nh
Vi mi modul nh, tn hiu a ch thp c a tng ng vo cc
ng dy a ch ca modul
Cc tn hiu a ch cao c a vo b gii m tng ng vi s lng
ca mi
modul RAM. u ra ca b gii m c a vo tn hiu
modul RAM tng ng

7.4. Modul nh thng mi


Modul nh thng mi thng c thit k theo mt cu trc chun. Hnh 7.9.
ch ra mt cu trc chun ca chip nh dung lng 220 x 8 bit. Chun ny c tn
Single-in-line Memory Module (SIMM). Cc im kt ni in (nh s 1 - 30)

Hnh 7.9. Modul nh SIMM


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 116

CHNG 7 : B NH
u nm trn mt hng n. Vi 220 a ch ta cn 20 ng tn hiu a ch,
nhng cu trc ny ch c 10 ng (A0 A9). Cc tn hiu a ch 10 bit cho
cc b gii m hng v gii m ct c np vo modul nh hon ton c lp.
Cc tn hiu iu khin
v
s tc ng ngay khi a ch 10 bit trn
c a vo cc b gii m tng ng. Mc d cch t chc ny lm cho thi
gian truy cp cc nh ring bit tng ln gp i, nhng nu hot ng trong
ch phn trang th thi gian truy xut ca n li gim thiu rt nhiu v
truy cp cc nh cnh nhau th ch cn thay i tn hiu a ch ct m khng
cn np li tn hiu a ch hng.
Cc ng tn hiu a ch d liu DQ1 DQ8 c t chc theo byte gip cho
vic c hay ghi d liu c thc hin song song. t chc mt t 32 bit, ta
s s dng 4 modul SIMM

7.5. B nh ROM Read Only Memory


Khi chng trnh np vo b nh, n s tn ti trong b nh cho n khi b ghi
hoc cho n khi ngun in cung cp cho h thng b ngt. Trong mt s
ng dng, chng trnh khng thay i trong sut qu trnh hot ng, chng
trnh s c ghi vo b nh ch c ROM (Read Only Memory). ROM thng
c s dng lu chng trnh trong cc my chi game, my tnh, in
thoi,...

Hnh 7.10. Cu trc ca ROM


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 117

CHNG 7 : B NH
ROM l mt chip c cu to rt n gin. Tt c cn c ch l mt b gii m,
vi ng tn hiu u ra v mt vi cng logic, khng cn bt c mt flip-flop
hay mt t in no c. Hnh 7.10 bn tri l mt b nh ROM lu tr 4 t
rng 4 bit (0101, 1011, 1110 v 0000). Mi mt a ch vo (00, 01, 10, 11)
tng ng vi mt a ch lu tr. Hnh 7.10 bn phi l mt cch th hin na
ca ROM vi cu to t cc diode bn dn.
m rng ng dng ca mnh, ROM cn lp trnh c. Nhu cu ny dn ti
s xut hin ca PROM (Programmable ROM), cho php ngi dng ghi ni
dung mt ln bng thit b c tn ROM bunner
PROM c nhc im l ch cho php ghi ni dung 1 ln, do xut hin thm
ROM cho ghi d liu vo phn cha ghi, EPROM (Erasable PROM). Tip l
s xut hin ca ROM cho php xa d liu bng tia cc tm UVPROM
(Ultraviolet PROM) v ROM xa d liu bng in EEPROM (Electrically
Erasable PROM)
Mt ng dng khc ca ROM c trnh by tip theo y l b ALU cho php
ton n gin. Gi s ta cn xy dng mt b ALU c th thc hin c 4
php ton: cng, tr, nhn v chia vi cc ton hng 8 bit. Ta s to ra mt bng
chn l c tng s trng thi u ra l 216 v 22 trng thi iu khin. Sau ta
s np bng trng thi vo ROM. Kt qu th hin trn hnh 7.11.

Hnh 7.11. ng dng ROM to thnh mt ALU n gin


Lc , cc tn hiu a ch c s dng lm ni nhp cc ton hng A v B
v cc tn hiu iu khin thc hin php ton. Ch rng cc kt qu php
ton tng ng vi cc tn hiu iu khin c np sn trn ROM

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 118

CHNG 7 : B NH
7.6. B nh Cache
Khi chng trnh c thc thi trn my tnh, h thng truy xut ti mt lng
nh nh. Mt nh va c truy xut c kh nng s tip tc c truy xut
ngay sau . Tc truy xut thng thng l thp hn rt nhiu so vi tc
ca b x l trung tm CPU v c mt nt c chai phn kt ni gia CPU v
b nh. Do vy, nu h thng c mt vng nh dung lng nh nhng tc
truy xut vi tc cao, c s dng lu tr ni dung nh va c truy
xut th tc x l ca CPU s c ci thin rt nhiu. y chnh l tin
ca s xut hin b nh Cache. Vng nh Cache l vng cha ni dung ca cc
nh thng c truy cp, c t gia b nh chnh v CPU. Khi thc thi
chng trnh, vng nh Cache s c tm kim trc, nu ni dung cn tm c
trong Cache, n s c s dng ngay lp tc. Nu ni dung cn tm khng c
trong Cache, h thng s tip tc bng cch truy xut ra b nh chnh bn ngoi.
Ni dung ny sau s c a vo b nh Cache. Mc d qu trnh ny c
v lm cho thi gian truy cp b nh tng ln nhng nu xt v tng th, vic s
dng Cache lm gim thi gian hot ng ca h thng rt nhiu.
H thng b nh hin i c th c vi mc Cache, l Cache Level 1 (L1),
Level 2 (L2) v c th c c Level 3 (L3). Trong hu ht cc trng hp, b nh
L1 c tch hp lun vo CPU. B nh Intel Pentium v IBM-Motorola
PowerPC G3 u c b nh L1 dung lng 32Kbyte tch hp sn trn chip
CPU.
B nh Cache c tc truy xut nhanh hn b nh chnh bi mt s nguyn
nhn sau.
B nh Cache s dng cc linh kin in t c cht lng cao, c kh
nng hot ng vi tc nhanh. Tt nhin i km vi c tnh ny l gi
thnh ca sn phm cng nh nng lng tiu tn cho n cng tng ln.
Tuy nhin, dung lng ca b nh Cache thng rt nh nn cng khng
nh hng ln n gi thnh ca sn phm
B nh Cache c dung lng nh nn b gii cng n gin hn, do
gim bt thi gian truy cp
B nh Cache kt ni trc tip vi CPU nn khng phi gii quyt vn
tranh chp bus
Hnh 7.12 di y ch r thm v ngha ca b nh Cache trong vic tng tc
hot ng ca h thng. Ti hnh pha bn tri, h thng khng c s tn ti
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 119

CHNG 7 : B NH

Hnh 7.12. H thng my tnh khng c Cache v c Cache


ca b nh Cache. H thng ny c tc hot ng l 400MHz, nhng truyn
thng 66MHz v truy cp b nh tc 10MHz. Mt s chu k bus c s
dng ng b hot ng ca CPU v bus, do s khc bit gia tc ca
b nh v CPU c th ln ti 10 ln hoc hn. Vi h thng bn phi, b nh
Cache c tch hp vo CPU, do CPU c th truy cp vo n trc tip vi
tc 400MHz.

7.6.1. B nh Cache c kt hp nh x
Mt s chng trnh phn cng c pht trin chuyn tn hiu a ch truy
xut b nh chnh thnh a ch truy xut Cache. iu ny lm cho b nh
Cache ci tin c th c a vo s dng ti bt c mt my tnh no m
khng cn s i phn mm truy xut chng
Phng thc chuyn i cc tn hiu a ch nh hng rt ln n gi thnh
v tc hot ng ca Cache, v khng c mt phng php no c cho l
tt nht. Trong phn ny, chng ta s nghin cu phng php nh x b nh.
Phng php ny c thc hin theo nguyn tc sau. u tin, gi s h thng
c b nh chnh dung lng 232 c chia thnh 227 khi block, mi block c
dung lng l 32 word. Tt nhin vic chia b nh chnh ny ch l v mt
logic. Thc t, b nh chnh vn l mt khi thng nht. Vi b nh Cache gi
s trong trng hp ny s bao gm 214 slot. Mi slot c dung lng ln
lu tr 1 block b nh chnh. Nh vy, 227 block b nh chnh u c th c
np ln mt slot bt k ca b nh Cache. theo di xem block no ca b
nh chnh c lu trn 1 slot, mi slot c mt trng tag c ln 27 bit c
s dng m ha block tng ng. Trng tag ny chnh l 27 bit c trng s
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 120

CHNG 7 : B NH
ln nht trong 32 tn hiu a ch m h thng a vo Cache. Tt c cc gi tr
tag u c lu trn mt vng nh c bit. Mi khi c mt block mi c
lu vo Cache, gi tr tag ca n s c cp nht vo vng nh ny.

Hnh 7.13. Phng php nh x b nh


Khi mt chng trnh c np vo b nh chnh ln u, Cache c coi l
trng. Khi thc thi chng trnh , mi mt slot s c 1 bit c tn valid c
s dng ch ra rng block m n cha c thuc chng trnh ang chy hay
khng. Ngoi ra, mi slot cn c mt bit dirty c s dng theo di xem
block nm trn slot c b thay i ni dung hay khng. Nu slot thay
i ni dung th n cn c ghi ngc tr li ln b nh chnh trc khi slot
c ti s dng np mt block khc.
Khi CPU cn ly ni dung t b nh, n s kim tra trn Cache trc, nu
Cache c ni dung , kt qu kim tra s l mt hit, nu khng c, kt qu l
mt miss. Khi x l lnh u tin ca mt chng trnh, kt qu l mt miss v
cha c mt block no c np ln Cache.
Trong qu trnh nh x Cache, mi block nh u c th c nh x n bt c
mt slot bt k. Vic nh x t b nh chnh n Cache c thc hin thng
qua vic phn vng a ch thnh 2 trng tag v word c nh hnh di y.
Khi thc hin qu trnh truy xut b nh chnh, b iu khin Cache s truy
xut vo Cache trc, tm kim Cache tag tng ng xem block cn truy xut
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 121

CHNG 7 : B NH

c trong Cache hay khng. Vi mi slot, nu bit valid bng 1, trng tag s
c kim tra v so snh vi a ch m CPU cn truy cp. Tt c cc gi tr tag
s c kim tra cng mt lc. Nu c mt gi tr tag no trng vi gi tr tag
m a ch nh, ni dung nh s c ly t Cache. Ni dung ca trng
word chnh l a ch ca nh ny. Nu khng c gi tr tag no c tm
thy, khi , block trn b nh chnh cha ni dung cn np s c np vo
Cache ri sau s c chuyn v CPU. Cc trng tag, valid, v dirty s
c cp nht ri h thng s tin hnh thc thi.
hiu r hn qu trnh ny, ta s tm hiu qu trnh truy cp nh
(A035F014)16. nh ny coi nh c np ln Cache. a ch ca nh
c m t nh di y

Trong a ch , 27 bit cao ca n c gi tr tng ng l (501AF8)16 chnh l


a ch tag. Nu a ch ta cn truy xut c mt trong Cache th ta s tm thy
mt slot c tag mang gi tr (501AF8)16. Nu khng tm thy bt c mt slot no
c tag nh vy, mt miss s din ra. Khi d liu tng ng vi trng tag bng
(501AF8)16 s c np t b nh chnh vo mt slot no trn Cache.
Mc d phng php nh x t ra rt hiu qu nhng c 2 vn xy ra trong
vic truy xut b nh, y cng chnh l hn ch ca phng php nh x. Th
nht, qu trnh xc nh xem slot no c gii phng khi mt block mi c
a vo Cache l rt phc tp. Qu trnh ny i hi mt lng phn cng ng
k gy tr h thng. Vn th hai l khi tm mt a ch tag trong Cache,
trng a ch tag so snh ng thi ra lm sao vi 214 trng tag trong Cache.
Mi mt phng php gii quyt u c hn ch ring ca n. Vn ny s
c ni r hn trong phn 7.6.2 v 7.6.3.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 122

CHNG 7 : B NH
Chnh sch thay th trong nh x Cache
Khi mt block mi cn c nh x vo Cache, cc slot trong Cache cn c
kim tra xem c th cho php ghi d liu vo hay khng. Nu c slot thch hp
(nh trong trng hp chng trnh bt u thc thi), slot u tin c bit valid
bng 0 s c s dng. Khi tt c cc bit valid ca tt c cc slot u bng 1,
mt slot s c gii phng dnh ch cho block mi. C 4 chnh sch thay
th c th c s dng: LRU (Least recently used), FIFO (First In First Out),
LFU (Least frequently used) v random. Chnh sch th nm c s dng vi
mc ch phn tch l phng php ti u.
Vi chnh sch LRU, mt bin thi gian c thm vo mi slot. Bin thi gian
ny c cp nht mi khi c mt slot bt k c truy cp. Khi mt slot phi
b gii phng cho mt block mi, ni dung ca slot m t c s dng nht
c xc nh bi bin thi gian trn s c gii phng v block mi s
c ghi vo slot ny. Chnh sch LFU hot ng tng t nh vy, ngoi tr
mt iu l mi slot c cp nht u n bi mt b m gn vo mi slot.
Khi cn gii phng mt slot, slot no c s dng vi tn s t nht s c
gii phng. Chnh sch FIFO s thay th ln lt cc slot theo mt chu trnh
nh sn, slot ny k tip slot khc. Chnh sch ramdom chn ngu nhin mt
slot bt k gii phng.

u nhc im ca phng php nh x Cache


nh x Cache c u im l bt c block b nh chnh no cng c th c
np vo Cache slot. iu ny c ngha l khng cn bit ni dung ca block l
d liu hay chng trnh, nu cn slot cho bt c mt block no th n s c th
c lu tr vo Cache. Nhng iu ny li lm cho cc nh thit k phn cng
phi b xung thm phn cng qun l cc block ny. Mi slot phi c 27 bit
tag xc nh a ch trong b nh chnh, v cc tag phi c kim tra ng
thi. iu c ngha l vi v d trn, vng nh lu tr tag phi c dung
lng 27 x 214 bit, ng thi nh ni trn, phi c mt c ch tm kim,
kim tra ni dung ca tt c cc tag mt cch ng thi. Ta s bn v vn
ny nhng phn sau trong chng ny.
Bng cch hn ch v tr m mi block b nh c th c np vo Cache, ta c
th loi b s cn thit ca vng nh tag. Loi b nh Cache nh vy hot ng
theo nguyn tc nh x trc tip m ta s tho lun phn k tip ngay sau y
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 123

CHNG 7 : B NH
7.6.2. nh x trc tip b nh Cache

Hnh 7.14. nh x trc tip b nh Cache


Hnh 7.14 th hin nguyn l ca nh x trc tip b nh Cache. Cng nh
trong v d trn, b nh c chia thnh 227 block c dung lng 32 word, v
Cache c 214 slot. S lng block b nh cn c nh x ln slot ln hn rt
nhiu so vi s lng slot. T l l 213 block/1slot. lm c iu ny,
trng tag vi dung lng 13 bit c thm vo mi slot lu tr mt gi tr
nhn dng mt di t 0 n 213-1
Trong qu trnh nh x trc tip, mi mt block b nh chnh c nh x ln
mt v ch mt slot, nhng mt slot c th lu tr nhiu hn mt block ti cc
thi im khc nhau. Qu trnh thc hin nh x c thc hin theo phng
thc c trnh by di y.

a ch 32 bit m h thng a ra c chia thnh trng tag 13 bit, tip l


trng slot 14 bit v cui cng l trng word 5 bit. Khi cn truy xut mt a
ch, trng slot s kim tra xem trong 214 slot m n qun l c ni dung cn
truy xut hay khng. Nu bit valid bng 1, trng tag s c so snh vi cc
trng tag ca cc slot. Nu trng tag l ging nhau, trng word s ch ra v
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 124

CHNG 7 : B NH
tr trn slot cn truy xut. Nu bit valid bng 1 nhng trng tag khng ging
nhau, slot s c ghi ngc tr v b nh chnh nu bit dirty l 1,v block
trn b nh s c c vo slot. Khi mt chng trnh bt u c thc thi,
bit valid s bng 0, v block d liu s c vit vo slot mt cch bnh thng.
Bit valid tip s c set ln 1, v chng trnh s truy xut vo Cache
thc thi.
V d nh khi ta truy xut vo a ch nh (A035F014)16, trng a ch s l

Nu nh cn tm c trn Cache, n s c tm thy a ch (14)16 ca slot


(2F80)16 v tag c gi tr l (1406)16.

u nhc im ca phng php nh x trc tip


Phng php nh x trc tip thc hin tng i n gin. B nh tag trong
trng hp ny c kch thc 13 x 214 bit, ch bng mt na so vi phng php
nh x thng thng. Hn na, phng php nh x trc tip khng cn thc
hin cng vic tm kim a ch tag, bi v a ch t CPU a sang c s
dng trc tip.
Vic thc hin n gin ny b nh i bi c chi ph v hiu sut. Ta s thy
c vn khi tm hiu iu g c th xy ra khi thc hin truy cp b nh
dung lng 219, bng vi dung lng ca Cache. Nu ma trn nh thc hin gii
m 2 bc, tc l phi gii m theo hng v theo ct, s phc tp bt u tng
ln. Mi nh c truy cp c tr v l mt miss, h thng phi truy cp
vo b nh chnh c ni dung c mt block, m thc t ta ch cn ni dung
ca ng 1 nh. T hn na, ch c mt phn rt nh b nh Cache c s
dng.

7.6.3. Hot ng ca Cache


Trong phn trn, ta nghin cu v 2 phng php iu khin Cache l nh x
thng thng v nh x trc tip. Vic thay i gia 2 phng php c thc
hin m khng cn phi thay i mt cht no v phn cng cng nh phn
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 125

CHNG 7 : B NH
mm h thng. Vic thay i gia cc phng php ch nh hng n tc
hot ng ca h thng.
Nh vy, tc truy cp l mc tiu chnh ca Cache, nhng hiu r thm v
mc tiu ny, c mt s vn cn c gii quyt nh iu g ngn chn mt
word hay mt block dch chuyn gia Cache v b nh chnh. Cc chnh sch
c v ghi hot ng trong b nh Cache c tng kt hnh 7.15. Cc chnh
sch ny. Cc chnh sch ny ph thuc vo vic c hay khng cc yu cu xut
pht t Cache.
Khi c nhu cu c d liu t Cache, nu d liu c trong Cache, mt hit s
xy ra v d liu s c a trc tip v CPU. Nu c mt miss, khi d liu
cha thng tin s c c vo Cache ri d liu s c a vo CPU.
Trong mt s cch t chc, khi mt miss xy ra, ni dung cn c s c a
trc tip t b nh chnh v a v CPU m khng cn phi in y ni dung
ca slot, cch thc hin ny c gi l load-through.

Hnh 7.15. Cc chnh sch c v ghi ca Cache


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 126

CHNG 7 : B NH

Trong qu trnh ghi d liu ln Cache, nu t cn ghi c trong Cache, h


thng s ghi ng thi d liu ln Cache v b nh, qu trnh writethrough. Nu qu trnh thc hin ghi trn Cache trc v tr hon qu trnh ghi
trn b nh, c gi l write-back. Nu d liu cn ghi khng c trong
Cache, h thng c th thc hin qu trnh ghi bng cch np khi d liu cn
ghi vo Cache ri cp nht n, write-allocate, hoc cp nht trc tip b nh
chnh m khng cn thng qua Cache, write-no-allocate.
Vi cu hi chnh sch ghi v c Cache no l tt nht, s khng c mt cu
tr li no c a ra. Mi mt cch t chc b nh Cache thng c xy
dng ring bit cho tng loi my tnh khc nhau. xy dng mt b nh
Cache, ngi ta phi tin hnh chy m phng cc thit k khc nhau ri mi
la chn mt thit k ph hp

7.7. B nh o
Mc d c tin b rt ln trong vic tng dung lng v gim kch thc b nh
nhng dng nh b nh vn c coi l hu hn v dng nh vn cha p
ng c nhu cu ca ngi s dng. Mt gii php kinh t l m rng khng
gian b nh bng cc b nh ph bn ngoi. Vic s dng b nh bn ngoi vi
mc ch nh b nh chnh t ra kh hiu qu v gi thnh thp, ng thi h
thng c coi nh l c m rng v hn. Tuy nhin vic qun l b nh
bn ngoi t ra kh phc tp. Trong mc ny, chng ta s nghin cu cng vic
qun l b nh bn ngoi thng qua b nh o.

7.7.1. Overlay
Mt phng php c thc hin sm nht s dng a ngoi s dng
nh b nh chnh l k thut overlays. Trong k thut ny, lp trnh vin c
trch nhim qun l b nh m n s dng. Hnh 7.16. l mt v d trong
mt chng trnh bao gm on m chng trnh chnh v 3 chng trnh con
A, B, v C. B nh chnh c kch thc nh hn kch thc ca ton b chng
trnh, nhng ln hn kch thc ca on chng trnh chnh v tng chng
trnh con. Mt th thut qun l b nh c s dng l overlays s thay i
chng trnh sao cho n s ln lt cho tng phn ca chng trnh vo b nh
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 127

CHNG 7 : B NH
chnh, c tng phn cc d liu v thc thi. C th, h thng s hot ng
nh sau. Chng trnh chnh s phn chia thnh cc phn vng. Phn vng 0

Hnh 7.16. Phn vng hot ng overlays


bao gm m code ca chng trnh con A bi v ch c chng trnh chnh mi
gi ti A. Phn vng 1 bao gm m code ca chng trnh con B v C v gi s
chng trnh chnh gi n B nhng B li gi ti C, ng thi chng trnh
chnh cng gi ti C. Chng trnh chnh s lun c lu trn b nh chnh.
Khi chng trnh chnh gi n chng trnh con A, phn vng 0 s c np
vo b nh, trong khi phn vng 1 vn c lu trong b nh gn ngoi
hoc cc a. Khi chng trnh gi ti B hoc C, phn vng 0 s b thay th
bi phn vng 1, v khi cn thit, phn vng 1 cng c th li b thay th bi
phn vng 0. Nh vy, ti mi thi im, b nh chnh ca h thng khng nht
thit phi lu ton b chng trnh. N s chi lu nhng phn vng chng
trnh cn thit cho s hot ng ca chng trnh.
Mc d phng thc ny hot ng tt trong nhiu trng hp khc nhau
nhng mt gii php hon thin hn vn cn c qun l overlays. Hn th
na, khi h thng chy nhiu hn 1 chng trnh ti mt thi im, vic qun l

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 128

CHNG 7 : B NH
overlays l khng th. chnh l l do dn n mt phng thc qun l mi
l phn trang s c m t phn ngay sau y

7.7.2. Phn trang


Phn trang l qu trnh thc hin overlays t ng c qun l bi h iu
hnh. Khng gian a ch c chia thnh tng khi c kch thc bng nhau
c gi l tng trang. Dung lng mi trang thng thng l mt gi tr s m
c s 2, chng hn l 210 = 1024 byte. Phn trang lm cho b nh vt l c v
ln hn thc t bng cch nh x khng gian a ch thc t ln khng gian a
ch o. Cc d liu lu tr trn khng gian a ch o thc t c lu tr trn
a. Hnh 7.17 m t qu trnh nh x ny. 8 trang b nh o c nh x ln 4
trang b nh thc

Hnh 7.17. Phng php phn trang


Khi CPU cn truy xut vo mt nh, nh s nm trong khng gian a
ch o. Trong m t hnh 7.17, a ch m CPU c th truy cp t 0 n 8191.
Tuy nhin d liu di a ch trn c mt na c lu tr trn b nh tht,
mt na nm trn a cng. Nu d liu nm trn b nh tht, vic truy cp n
s c thc hin trc tip. Nu d liu khng nm trn b nh tht, h thng
s thc hin qu trnh phn trang theo quy trnh sau
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 129

CHNG 7 : B NH
1. Xc nh mt trang s b xa i. Ni dung ca trang s b xa phi c
ghi ngc tr li a cng bn ngoi nu ni dung ca trang c s
thay i.
2. Trang b nh o m ta mun truy cp s c xc nh trn a cng v
ghi vo b nh thc trang b nh va b xa i (trang c xc nh
mc 1)
3. Cp nht bng phn trang page number ghi li trang b nh o c
ghi ln trang b nh tht
4. Cp nht b nh thc ly d liu v h thng
truy cp khng gian a ch b nh o 213 nh hnh 7.17, CPU s phi cung
cp mt gi tr a ch c ln 13 bit. a ch ny c chia lm 2 trng l
trng page number c di 3 bit m ha s trang o t page 0 n page 7.
10 bit cn li l a ch offset trong trang. Khi h iu hnh qun l vic phn
trang nhn c a ch ny, n s phn tch thnh mt a ch c di 13 bit
nhng s c 3 trng. Trng th nht l Present bit c nhim v xc nh xem
nh cn truy xut c nm trn b nh thc (nu c gi tr 1) hay khng (nu
c gi tr 0). Trng th 2 l a ch offset trong trang vn c ln 10 bit.
Trng th 3 l trng page frame c nhim v xc nh xem trang ang
c lu tr trong trang b nh thc no. H thng s dng mt bng phn
trang page table qun l vic phn trang ny. Vi nhng trang khng nm
trn b nh thc, trng Page frame khng c ngha, thng thng c k
hiu l xx

Hnh 7.18. Bng phn trang page number

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 130

CHNG 7 : B NH
thc hin vic chuyn i t mt a ch o (gm 2 trng) sang a ch truy
xut b nh thc (gm 3 trng) nh ni trn, ta s thc hin nh trnh by
hnh 7.19

Hnh 7.19. Qu trnh chuyn i a ch o sang a ch thc


Nh trn hnh 7.19, ta cn truy cp vo a ch 1001101000101. 3 bit c trng
s ln nht (100) s ch ra trang o m h thng cn truy cp. Gi tr ny s
c so snh vi bng phn trang page table xem trang s 100 = 4 nm trn
b nh thc hay o. Trong trng hp trn, a ch nm trn b nh thc
trang thc s (11). Gi tr ny s to thnh 2 bit c trng s ln nht trong a
ch thc. Trng a ch offset 10 bit a ch o s c a trc tip vo a
ch offset ca a ch vt l thc. Kt qu ta s truy cp vo a ch
111101000101 nhn c d liu cn truy cp.

Phn trang theo nhu cu - demand paging


Khi thc thi mt chng trnh, khng phi chng trnh nm trn 1 trang m
thc t n c th nm trn nhiu trang khc nhau. Vn t ra l lm th no
c th np c trang cha chng trnh cn thc thi vo b nh thc. Qu
trnh ny thc hin nh sau. Gi s ban u cha c mt ni dung no ca
chng trnh c np vo b nh thc. Khi cn np lnh u tin ca
chng trnh vo h thng, CPU s a ra a ch nh (nm trn a cng) ca
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 131

CHNG 7 : B NH
lnh u tin . V ni dung ny khng c trong b nh thc nn s xut hin
mt li fault. Khi pht sinh li ny, h iu hnh s thc hin nh x trang
tng ng b nh o vo mt trang trong b nh chnh. Khi li trang s
c khc phc. Cc lnh ca chng trnh nm trn trang ny s c truy cp
tip tc trong trang b nh tht ny. Trong khi tip tc thc thi cc lnh trong
chng trnh, nu chng trnh cn truy cp vo mt trang khc, n li pht sinh
mt li v li ny s li c khc phc. Tip tc nh th, tt c cc trang cha
chng trnh c thc thi s c np theo nhu cu vo b nh chnh

Chnh sch thay th trang


Mt vn ny sinh l trong trng hp kch thc chng trnh ln hn
kch thc b nh chnh. Khi , b nh chnh khng th cha ton b chng
trnh, n s phi xa bt trang khng s dng nhng ch cho mt trang
khc xa li. Chnh sch thay th trang hay c s dng l FIFO hoc LRU.
Chnh sch ny tng t nh chnh sch thay th trong nh x Cache m ta
cp trong chng ny

7.7.3. Phn on
Phn on cng l mt phng thc qun l b nh ca h iu hnh. Khc vi
phn trang qun l b nh o (khng gian b nh o), phn on ch qun l b
nh thc. N cng khc phn trang ch n qun l b nh theo chc nng
chng trnh. Mt chng trnh khi np vo b nh thc s c qun l theo
tng on segment theo chc nng. l cc phn on: code segment cha
cc lnh ca chng trnh, data segment cha cc d liu chng trnh, stack
segment cha b nh stack.
Ngoi cch qun l nh trn, phn on cng c th chia b nh thnh tng
on, mi on c s dng theo mc ch ring, c truy cp vo bo v
theo tng mc m h iu hnh h tr. Trong v d hnh 7.20, h iu hnh c
th thc hin phn on b nh thnh 3 phn on. Phn on s 0 l code
segment, ch cha cc lnh ca chng trnh, do n ch cha cc lnh
thc thi, khng cho php xa m ch cho php c. Phn on s 1 c s
dng cha cc d liu dnh cho ngi dng s 1. Ch ngi dng s 1 mi
c php truy cp v thay i cc d liu ny. Tng t nh vy l phn on
s 2.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 132

CHNG 7 : B NH

Hnh 7.20. V d v phn on


Phn on khng ging phn trang. Vi phn trang, ngi s dng khng cn
quan tm n n v n c thc hin hon ton t ng. Ngc li vi phn
on, ngi s dng ( y l cc lp trnh vin) dng nh phi ch xem
ang tng tc vi phn on no, gii hn ca tng phn on l g, c php
truy cp hay khng. Rt may cho chng ta, h iu hnh thay chng ta thc
hin tt c cc nhim v , k c vic thay i cc gi tr phn on hay
chuyn i cc a ch phn on sang a ch vt l

TNG KT CHNG
B nh c phn thnh nhiu loi khc nhau, trong , loi c hiu sut tt
nht li c gi thnh t nht, loi c hiu sut nh nht, r nht li c tnh
thng mi tt nht. dung ha mi li ch, cc nh thit k h thng s
dng b nh Cache v b nh o
B nh Cache nm trong CPU cha cc khi d liu nh m h thng hay s
dng nht, c kh nng truy xut vi tc cao. B nh o li qun l vng nh
t trong cc a cng m rng dung lng nh
Cache v b nh o u c s dng trong cng mt h thng my tnh nhng
li phc v cc mc ch khc nhau. Cache tng tc truy cp b nh chnh,
cn b nh o m rng dung lng b nh chnh

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 133

CHNG 8 : THIT B NGOI VI V GHP NI


CHNG 8: THIT B NGOI VI V GHP NI

Trong nhng chng trc, chng ta tm hiu phng thc m CPU tc ng


vo d liu, hoc phng thc truy cp b nh chnh, hoc vng nh trn
a gn ngoi thng qua b nh o. Tc truy xut b nh ph thuc rt nhiu
vo tng loi b nh khc nhau. Tuy nhin, vic CPU truy xut vo cc thit b
vo ra li khc rt nhiu so vi truy xut b nh.
Tc truyn d liu ca cc cng I/O rt khc nhau, c th l tc rt
chm nh c d liu t bn phm, nhng cng c th c tc rt ln
nh c d liu t a, hoc tng tc d liu thi gian thc vi card
ha.
Hot ng ca cc I/O l khng ng b, tc l n khng c cng tc
xung nhp vi xung nhp CPU (vic truyn d liu trn b nh c cng
tc xung nhp vi CPU). Cc tn hiu bt tay handshaking c b
xung vo hot ng ca cc I/O phi hp hot ng ca I/O trong qu
trnh cc thit b c hoc ghi d liu.
Cht lng ca d liu truyn trn cc cng I/O khng c bo m tnh
ton vn. Cc tn hiu nhiu tc ng vo ng truyn nh tn hiu in
thoi, hay cc tn hiu t trng tc ng vo cc thit b ngoi vi c th
lm pht sinh li d liu. Do cn c nhng phng thc c bit
m bo tnh ton vn d liu
Mt s cc thit b ngoi vi c cc thnh phn c kh, ni chung l d
hng so vi CPU. D liu truyn trn h thng bus c th b gin on do
cc thnh phn c kh ny b hng, hoc khng hot ng theo ng chc
nng ca n.
Cc modul phn mm I/O c gi l cc driver phi c b xung
khc phc cc thiu st trn
Trong chng ny, chng ta s tm hiu mt s thit b ngoi vi c bn, bt u
l cc a lu tr, tip l cc thit b nhp liu input, thit b xut d liu
output. Tip theo, ta s tm hiu mt s kt ni gia cc thit b v mt s
phng php khc phc li trn ng truyn

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 134

CHNG 8 : THIT B NGOI VI V GHP NI


8.1. Thit b lu tr
Trong chng 7, chng ta tm hiu v cc loi b nh my tnh. B nh c
tc truy xut nhanh nht l cc thanh ghi, tc thp nht l cc b nh
ngoi. l cc a cng, a mm, bng t,...Cc thanh ghi v b nh RAM
cn phi c cung cp nng lng lin tc lu d liu, trong khi cc b
nh ngoi nh a t hay bng t vn lu c d liu sau khi ngng cung cp
ngun. Loi a nh vy cn c tn gi l non-volatile.

8.1.1. a t tnh

Hnh 8.1. a t tnh


a t l thit b lu tr d liu vi dung lng ln v tc truy cp cao.
Thnh phn lu d liu ca a gm mt hoc nhiu a c t cch nhau
vi millimeters trn cng mt trc quay nh hnh 8.1. Cc a ny thng c
lm t nhm hoc thy tinh pha mt lng nh nhm. 2 b mt ca a u
c ph mt lp t tnh nh ocid st. Chnh v lp ocid st ny nn cc mt a
cng, a mm hay bng t u c mu nu. Cc gi tr nh phn 0 v 1 c
lu trn cc nh trn cc b mt ny.
Mi mt u c c s dng ring cho tng b mt. Hnh 8.1 s dng 3 a
t gm 6 mt a. B mt trn cng v di cng ca t hp a thng thng
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 135

CHNG 8 : THIT B NGOI VI V GHP NI


khng c s dng lu tr bi v n d b nh hng ca t trng bn
ngoi hn so vi cc b mt bn trong. Cc u c c gn vi nhau trn mt
cnh tay c th dch chuyn theo chiu ngang c th tip cn vo cc v tr
khc nhau ca b mt a.
Trong mt a cng, cc a quay vi tc c nh, thng thng c th t
3600 n 10000 vng/pht (RPM). Cc u c/ghi d liu s to ra t trng
nh hng n vt liu t trong qu trnh ghi hoc cm ng in t trong qu
trnh c. Ch c mt u c duy nht hot ng ti mt thi im. Do d
liu c c truyn v theo phng thc ni tip serial mc d v mt l
thuyt chng c th truyn song song. Mt nguyn nhn m ch c/ghi
song song khng c s dng n c th gy ra nhiu d liu gy hng d liu.
Mi mt b mt a s ch tng tc vi mt u c bi v v tr ca u c
lun lun c xc nh mt cch chnh xc, tng ng vi v tr ca n trn b
mt a.

M ha d liu trn a t
u c d liu ch c th nhn bit c s thay i ca t trng, do , n
ch c th pht hin ra s thay i logic t 0 ln 1 hay t 1 v 0. Phng php
m ha thng dng nht l m manchester, ngoi ra cn c th s dng phng
php MFM (modified frequency modulation). ngi c c th so snh, ta
hy xem xt hnh 8.2. Ti hnh a l m NRZ (non-return-to-zero) ca k t F
c m ha bi m ASCII. Hnh b cng l k t nhng c biu din bi
m Manchester. Trong cch m ha m Manchester, trong bt c mt chu k

Hnh 8.2. 2 phng php m ha k t


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 136

CHNG 8 : THIT B NGOI VI V GHP NI


thi gian u c mt s thay i gi tr in p. Ti thi im xung chuyn
trng thi t mc thp ln mc cao, gi tr logic thu c l 1. Ngc li, ti
thi im in p chuyn t mc cao v mc thp, gi tr logic thu c l 0.
Ngoi ra, chu k chuyn i trng thi logic cng cho ta thng tin v xung ng
b h thng.

Hnh 8.3. T chc d liu trn mt mt a t


lu d liu trn a cng, a cn c t chc theo nhng chun c nh
ngha. Mi b mt c chia thnh hng trm rnh track l nhng vng trn
ng tm Mi rnh c chia thnh tng khong nh gi l sector. Mi sector
c th lu tr c 512 byte. Gia cc sector c khong nh gi l inter-sectorgap. Tng t nh vy gia cc track cng c khong khng gian phn cch
inter-track-gap. Ngoi cch qun l theo track v sector, h thng cng c th
qun l theo t tr cylinder. Cylinder l tp hp cc rnh cha u c ca tt
c cc b mt cc a. V d nh track s 0 ca ca cc b mt s 0, 1, 2, 3, 4,
v 5 trn hnh 8.1 s to nn cylinder s 0. Dung lng lu tr trn mi sector
thng thng l khng thay i i vi mi mt loi a t.
Trong cc loi a cng hin i, s lng track trn cng mt sector cn th
thay i theo vng, mi vng cha mt s lng sector c nh. Vng gn tm
ca a t s c mt lu tr cao hn nhng vng bn ngoi. Do , ta c th
tng mt lu tr ti cc sector vng xa tm a. Cng ngh ny c tn gi
l zone-bit-recording.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 137

CHNG 8 : THIT B NGOI VI V GHP NI


Dung lng v tc a
Nu h thng a t c cng mt mt lu tr, dung lng a C lc c th
c tnh t s lng byte c trn 1 sector N, s lng sector trn mt track S,
s lng rnh trn 1 b mt T v s lng mt a P. Cng thc tnh l
C=NSTP

Mt a dung lng cao c th c N = 512 byte, S = 1000 sector, T = 5000 track


v c P = 8 mt a. Tng dung lng ca a l C = 512 1000 5000
8/230 hay 19GB
Tc truyn ti a ca a ph thuc vo 3 yu t: thi gian u c di
chuyn n track d liu c gi l seek time, thi gian sector cn c
quay n v tr u c gi l rotational latency, v thi gian chuyn d liu
t sector vo u c gi l transfer time. Qu trnh c v ghi d liu phi
tri qua 3 khong thi gian nh vy v ti 1 thi im u c ch c th c d
liu hoc ghi d liu.
Thi gian u c dch chuyn n v tr track cn c mt nhiu thi gian
nht trong qu trnh truy cp a. Nh sn xut thng tnh theo thi gian trung
bnh l khong thi gian u c dch chuyn 1 2 khong cch a. Trong

cc a hin i, khong thi gian ny xp x 10ms.

Khi u c dch chuyn n track cn truy cp, chng ta mt ln na khng


tnh c chnh xc thi gian m u c tm c ng sector cn tm. Khong
thi gian ny mt ln na c tnh bng 1 2 khong thi gian ln nht m u

c hon thnh cng vic ny. Trung bnh, u c s mt khong 4 n 8 ms.

Transfer time l khong thi gian m u c hon thnh vic c/ghi mt


lng sector trn cng mt track. Nu cn c/ghi mt khi lng d liu ln,
khi kt thc vic c/ghi d liu trn track ny, u c s phi dch chuyn
sang track khc. Khong thi gian u c dch chuyn t track ny sang
track khc xp x 2 ms.
Tc truy cp c th c tnh ton t cc yu t k trn, tuy nhin tc
trong thc t li thp hn tnh ton. iu ny l do c th tc truy cp b nh
hng bi qu trnh thm nhp d liu trn h thng bus kt ni gia cc a
v cc thnh phn bn trong h thng my tnh, hoc mt nguyn nhn cng tc
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 138

CHNG 8 : THIT B NGOI VI V GHP NI


ng n tc truy cp a l tc kt ni d liu gia CPU v b nh
chnh. Cc a hot ng trong my tnh SCSI thng c tc truy cp trung
bnh khong 5 n 40 MB/s.

a mm
a mm, floppy disk hay diskette, bao gm mt a nha c bao ph lp
vt liu t ocid st t trn c 2 b mt. C 2 lp vt liu t ny u c th
c s dng lu d liu. Thi gian truy cp ca a mm chm hn rt
nhiu so vi a cng bi v a mm khng th quay vi tc cao. Tc
trung bnh ca a mm khong 300 RPM v tc ny c th thay i ph
thuc vo v tr ca u c ti u ha tc truyn. Thi gian truy cp ca
a mm ch khong 250 n 300 ms, thp hn khong 10 ln so vi a cng.
Dung lng a mm ln ti 1.44 MB.
S dng a mm rt kinh t bi v c vic tho lp a vi h thng rt d
dng v bi v kch thc ca n rt nh. V u c a mm c th gy ra
nhng vt xc trn b mt a nn a mm ch quay khi n cn c/ghi d
liu.
Mt s a mm dung lng cao c th lu tr vi dung lng ln. V d nh
a mm ca Iomega Zip c th lu 100MB v thi gian truy cp gp 2 ln so
vi a cng. a c dung lng ln nht hin nay l Iomega Jaz c dung
lng ln ti 2GB vi tc truy cp tng ng Iomega Zip.

H thng qun l file trn a


Mt file d liu c lu tr trn nhiu sector cc v tr khc nhau trong
a. Chng s c lin kt vi nhau to thnh mt th thng nht. Vic t
chc cc thnh phn nh ca mt file c th c thc hin theo nhiu cch
khc nhau. Phng php c hiu qu nht l lu gi trong cc sector lin tip
nhau gim thiu thi gian tm kim cc mnh. Mt a tt nhin s lu tr
nhiu file, do tm kim mt v tr ln lu tr 1 file ni chung l kh
thc hin. lm c vic ny, h iu hnh phi c mt bn sao chp dung
lng ca cc khong trng s dng khi cn ghi 1 file vo a.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 139

CHNG 8 : THIT B NGOI VI V GHP NI


Mt phng php khc c s dng l lu tr file trn cc phn mnh khc
nhau, cc phn mnh ny c lin kt vi nhau thng qua mt bng lu gi tr
FAT (File allocation table). Vi phng php ny, dung lng file lu tr c
th tng ln. Tuy nhin, sau mt thi gian s dng, file ny s b phn mnh.
Cc nh sn xut khc nhau c cc phng php khc nhau c th chng li
s phn mnh ny.
Bn k hn mt cht v bng FAT. Nh ni trn, y l mt bng lu cc
gi tr, thng thng l tn file, v tr ca cc sector cha d liu cc file,
ngy to ra file,.... Dung lng file khng th hin trn bng d liu ny nhng
h iu hnh c th tnh ton dung lng file da vo s lng sector cha file.

Hnh 8.4. V d v ni dung ca bng FAT

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 140

CHNG 8 : THIT B NGOI VI V GHP NI


8.1.2. Bng t
Bng t l mt phng php lu tr d s dng mt u c. u c ny c
b phn c v ghi d liu ring bit. Khi di bng t chy qua u c, n
s gy nh hng t ln bng t trong qu trnh ghi d liu hoc cm ng t
trng ca bng t trong qu trnh ghi. Phng php lu tr s dng bng t rt
r bi v n c th lu tr dung lng rt ln. Tuy nhin vic truy cp d liu
li rt chm bi v tt c cc sector ca bng t pha trc v tr cn c d
liu s phi c c trc khi ni dung c c tm thy.
Thng tin lu tr trong bng t theo 2 chiu c m t trong hnh 8.5. Cc bit
c lu d liu theo chiu rng ca bng t (ghi theo frame) v lu tr theo
chiu di ca bng t (ghi theo record). 1 file c lu tr theo mt tp hp cc
record. V 1 record l mt n v vt l nh nht m d liu c th c c
hoc ghi ln bng t. Bnh thng cc bng t khng t dch chuyn. Khi mun

Hnh 8.5. Lu tr d liu trn bng t


truy xut d liu, mt ng c s c s dng ko bng t chuyn ng
trong mt khong thi gian. Khi bng t t n tc cn thit, cc bn ghi
record s c ghi, sau bng t s ngng chuyn ng. Vic tng tc ng
c lm bng t dch chuyn v dng ng c lm cho trn bng t c nhng
khe h gia cc bn record.
Bng t thch hp cho vic lu tr d liu vi dung lng ln,v d nh backup
d liu trn a hoc qut nh, nhng khng thch hp vi cc truy cp d liu
ngu nhin. C 2 nguyn nhn chnh ca ng dng trn. Th nht, vic truy cp
vo mt bn ghi bt k i hi rt nhiu thi gian v v tr bng t cn truy cp
khng phi lc no cng gn v tr hin ti. Th hai, khi tin hnh ghi d liu
ln mt v tr gia bng t, ln mt ni dung khc c th lm mt d liu
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 141

CHNG 8 : THIT B NGOI VI V GHP NI


ca 1 bn record gn mc d cc record c cng kch thc nhng khong
cch gia cc record li khng phi l mt gi tr nh trc.
Mt bn ghi record vt l thng c chia thnh cc bn ghi record logic. V
d, mt bn record vt l c 4096 byte c th chia thnh 4 bn ghi logic vi
di ca mi bn ghi l 1024 byte. Vic truy cp cc bn ghi logic c thc
hin bi h iu hnh, do ngi s dng khng cn quan tm n n.
Ngoi cch t chc trn, ta c th c mt cch t chc khc na l s dng cc
bn record c di thay i. Mt k hiu c bit c t gia cc bn
record nh du s bt u v kt thc ca mi bn ghi record.

8.1.3. a quang
Cc a quang p dng mt s cng ngh mi trong quang hc lu tr v
khi phc d liu. a CD (Compact Disc) v DVD (Digital Versatile Disc) s
dng nh sng phn x c d liu m ha

Compact Disc CD
a CD c gii thiu vo nm 1983 c s dng lu d liu m thanh.
a CD c dung lng lu tr khong 74 pht m thanh ch digital steoreo
2 knh. Tn hiu m thanh c trch mu 2 44,000 16-bit, hay l gn
700MB dung lng. T khi c gii thiu vo nm 1983, cng ngh CD
pht trin tng mt lu tr, gim gi thnh pht trin thnh a lu tr
d liu CD ROM (CD read only memories). Vi gi thnh rt r, ch vi cent
cho mt n v MB, CD ROM nhanh chng pht trin v thay th a mm.
CD ROM l a ch c bi v n c nhn bn t 1 a gc master ging nh
l i vi a nhc CD. Mt a CD ROM c cu to t nha plastic c
ph bn ngoi lp nhm mng, c kh nng phn x nh sng theo cch hng
khc nhau to thnh cc b mt Land hoc cc l trng Pit. a master c
ch to vi chnh xc cao da vo nh sng laser cng sut cao. Cc a nhn
bn c chnh xc thp hn, do mt b sa li c s dng pht
hin v khi phc d liu. D liu trn CD ROM cng c s dng m
Manchester.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 142

CHNG 8 : THIT B NGOI VI V GHP NI


Khng ging nh a t s dng lu tr thng tin trn cc sector trn cc track
l cc ng trn ng tm, a CD s dng cc rnh xon trn c nh hnh 8.7

Hnh 8.7. B mt a CD ROM


Cc pit d liu c t vi khong cch bng nhau t u cho n cui a.
Tc quay ca a khong 30 RPM ging nh i vi a mm, nhng tc
s c iu chnh. Tc s chm hn khi u c ra a v nhanh hn khi
u c trung tm a. Vi cc c tnh , tc truy xut trn CD ROM
tng ng vi trn a mm v n c tr cao. CD ROM c d liu vi
tc 24 tc l gp 24 ln tc ca mt a m thanh audio CD. Tc c
ny cng ngy cng c ci thin.
Cng ngh CD ROM thch hp vi vic phn phi mt lng ln a d liu,
khng tn km khi c cng nhiu bn sao. Tuy nhin nu ch mt s lng nh
a c sao chp, gi thnh cho tng a s tng cao bi v cc a CD khng
th c in vi gi thnh r m s lng t.
Mt cng ngh mi c pht trin trn nn cng ngh CD ROM l cc a cho
php ghi 1 ln, c d liu nhiu ln WORM (writen once read many). Vi a
WORM, tc ghi d liu thp hn nhiu so vi tc c d liu, ng thi
cc a cng t hn so vi CD ROM thng thng.

Digital Versatile Disc DVD

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 143

CHNG 8 : THIT B NGOI VI V GHP NI


Mt phin bn mi ca a quang l DVD. Vi cng ngh ny, c mt s
chun cng nghip dnh cho cc mc ch khc nhau nh DVD-audio, DVDVideo, v DVD ROM, DVD RAM. Vi mt mt a c s dng, dung lng
lu tr s c th ln ti 4.7GB. Chun DVD thng thng cng c th lu tr
d liu vo c 2 mt a vi tng dung lng ln ti 17GB. Cng ngh DVD l
k tha t CD nn trong thc t, u c DVD c th tng thch ngc vi cc
u CD, v CD ROM thng thng.

8.2. Thit b nhp d liu


a lu d liu nh trnh by trong mc 8.1 u l cc thit b va input va
output v ng dng ch yu l lu tr d liu. Trong phn ny, chng ta s
tip tc tm hiu mt s thit b c s dng chuyn nhp d liu input. Ta
s bt u vi bn phm keyboard.

8.2.1. Bn phm
Bn phm thng c s dng nhp liu bng tay cho my tnh. S bn
phm theo chun ECMA-23 c th hin trn hnh 8.8. S QWERTY ph
hp vi bn phm nhp liu chun ca my nh ch. Cc k t hay c s

Hnh 8.8. S bn phm theo chun ECMA-23


dng c t xa ngi nh my g vi tc chm hn, trnh gy
nghn tn hiu c kh. Mc d hin tng nghn c kh khng xy ra vi cc
bn phm in t nhng s b tr bn phm nh trn mang tnh cht lch s.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 144

CHNG 8 : THIT B NGOI VI V GHP NI


Khi mt k t trn bn phm c tc ng, tn hiu mu s c to ra v
chuyn v cc cng my tnh. Vi cc k t ASCII 7 bit, s c 128 mu k t
c s dng. Mt s bn phm khc c m rng t chun ECMA-23 c
thm cc phm nh shift, escape v control m rng, do thng m ha 7
bit thng khng
C mt s bin th khc ca bn phm ECMA-23 l thm cc phm chc nng
(v d nh cc phm chc nng F), cc phm c bit nh tab, delete,...Mt
trong s chng l bn phm Dvorak c m t hnh 8.9. Mc d bn phm
Dvorak c nhiu u im nhng thc t n li khng c chp nhn

Hnh 8.9. S bn phm Dvorak


8.2.2. Bng nhp liu Bit pad
Bng nhp liu bit pad l mt bng k thut s c chc nng chuyn dng l
nhp liu. Bng bit pad bao gm mt bt v mt bng phng nh trn hnh 8.10.

Hnh 8.10. Bit pad


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 145

CHNG 8 : THIT B NGOI VI V GHP NI


Bng phng cm ng c cu to t mt h thng ma trn 2 chiu cc cun
dy cm ng. Cc cun dy ny s cm ng mt dng in khi con tr bt di
chuyn trn bng. Cc tn hiu ta X-Y ca con tr cng nh trng thi ca
cc phm bm u l cc tn hiu tng t lin tc s c truyn v phn iu
khin, sau s c truyn v my tnh. ng dng ch yu ca bit pad l
trong trng hp nhp cc d liu dng ha nh bn , nh, cc biu ct
hay biu graph.

8.2.3. Chut v trackball

Hnh 8.11. Chut v trackball


Chut l mt thit b nhp liu cm tay bao gm mt hay vi phm bm mt
trn v c mt qu bng nh bng cao su mt di. Hnh 8.11 bn tri ch ra
mt dng chut c bn. Khi chut di chuyn, qu bng mt di quay tng
ng vi qung ng dch chuyn. Cc chit p bn trong chut s cm ng
chiu dch chuyn v khong cch dch chuyn, v s dch chuyn s c
ghi li v chuyn v my tnh cng vi trng thi ca cc phm bm. Thng
thng chut c 2 phm tri v phi tng tc vi my tnh vi cc chc nng
khc nhau.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 146

CHNG 8 : THIT B NGOI VI V GHP NI


Trackball cng c th c coi l mt dng chut b quay ngc ln. Cu trc
ca trackball l c nh, cn qu bng cao su s c ln bi tay ngi s dng.
Hnh 8.11. bn phi nu ln hnh dng c bn ca mt trackball. Nguyn l hot
ng ca n ging ht so vi chut.
Vi s pht trin ca cng ngh, chut quang dn thay th chut truyn thng.
Chut quang thay qu bng cao su bi cc diode pht quang LED v s dng
mousepad c bit bao gm cc sc c th hp th v phn x theo c chiu dc
ln chiu ngang. S di chuyn s c cm nhn thng qua s chuyn i gia
vng hp th v phn x. Chut quang khng bm bn nh chut truyn thng
v c th c s dng trong c mi trng thng ng hoc trong mi trng
khng trng lng

8.3. Thit b hin th d liu


Mn hnh my tnh l thit b hin th d liu thng dng trong my tnh. Thng
tin hin th c th l ch, s hoc l ha. Hin nay c mt s loi mn hnh
thng dng l mn hnh tia m cc CRT (Cathode Ray Tube), mn hnh tinh th
lng LCD (Liquid Crystal Display) v mn hnh Plasma PD (Plasma Display).

Hnh 8.12. Mn hnh CRT


Cu hnh ca mn hnh CRT c th hin trn hnh 8.12. Mt sng to
electron c chc nng to chm electron bn vo mn hnh ph cht pht quang
phosphor. V tr pht sng l v tr chm tia p vo mn hnh. V tr ny c
iu khin bi in p t vo cc a li dc v a li ngang. Cc electron c
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 147

CHNG 8 : THIT B NGOI VI V GHP NI


in tch m, mt li mang in tch dng c to ra ngn cn cc
electron n c mn hnh, lm cho sng mn hnh c th thay i. Mu sc
trn mn hnh c xc nh bi cc c tnh ca phosphor. i vi mn hnh
CRT mu, thng thng s c 3 loi phosphor (, lc, lam) c xen k ti
mt khong v tr trn bn hnh v s to ra 3 mu bi 3 sng phng tia electron
khc nhau.
to ra mt hnh nh trn vn trn mn hnh, tn hiu hnh nh c phn tch
v chuyn thnh tn hiu a vo sng phng electron. Chm tia ny s c
qut theo chiu ngang t tri qua phi to thnh mt vt sng ngang. n cui
dng, n c qut ngc tr li bn tri tip tc qut tip dng th 2. Qu
trnh qut c thc hin dch chuyn dn t trn xung di cho n cn di
ca mn hnh to thnh mt hnh nh, c gi l mt mnh. Cc mnh c
to ra nhiu ln trong 1 giy. Tc lp li c gi l tc khung, hay tc
lm ti. Tc lm ti thng thng khong 50-60Hz. Mt s loi mn hnh
cao cp cn c tc qut ln ti 100Hz

8.4. Kt ni truyn thng v ghp ni my tnh


Kt ni truyn thng l qu trnh truyn thng tin t mt im ngun n mt
ch. H thng kt ni truyn thng c phm vi rt rng, tri di t cc kt ni
trong h thng bus trong cc mch tch hp cho n cc h thng in thoi,
radio v h thng truyn hnh. D liu c truyn trong h thng truyn thng
c th l tn hiu tng t nh tn hiu ting ni, hoc cng c th l tn hiu s.
Mi trng truyn tin cng c th l cc loi cable ng, cable quang, tn hiu
viba,... Trong phm vi chng ny, chng ta s tm hiu mt s phng php
truyn thng trong phm vi nh, v d nh qu trnh tng tc d liu gia CPU
v b nh chnh hoc tng tc gia cc thit b trong my tnh.

8.4.1. Kt ni bn trong my tnh


Khng ging nh cc mng vin thng c nhiu b truyn tin v b nhn tin
c t cc v tr a l rng ln khc nhau, my tnh ch c mt s lng c
th cc thit b c ni vi nhau trong mt phm vi c hn, khong cch t vi
millimeter cho ti vi meter.Trong mt h thng c N thit b cn kt ni vi
nhau. Vi kch bn xu nht, ta s phi cn c N2/2 ng kt ni. Tuy nhin,
rt may l khng phi tt c cc thit b s c kt ni nh vy.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 148

CHNG 8 : THIT B NGOI VI V GHP NI


Bus l c nh ngha l mt h thng dy dn c s dng kt ni mt s
lng cc thit b li vi nhau. Hnh 8.13 l v d h thng bus trn mainboard.

Hnh 8.13. Mainboard nhn t trn xung


Kt ni bus
Mt h thng bus s bao gm nhiu thnh phn nh cc b kt ni, cc dy dn
v giao thc truyn thng. Cc dy dn c th c phn loi thnh tng nhm:
nhm iu khin, nhm a ch, nhm d liu v nhm cung cp ngun nh trn
hnh 8.14. Mt h thng bus c th c mt vi ng dy cung cp ngun,
thng thng l cc tn hiu ngun t GND, +5V v -15V

Hnh 8.14. H thng bus in hnh


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 149

CHNG 8 : THIT B NGOI VI V GHP NI


Trong h thng truyn thng trong my tnh c th c rt nhiu thit b. Tuy
nhin ti mt thi im s ch c 1 thit b c th c truyn d liu. Tt c
cc thit b lun lun nghe ngng ng truyn, nhng s ch c 1 thit b c
php nhn d liu. Ch c 1 thit b c coi l thit b ch bus master, cn tt
c cc thit b cn li c coi l thit b t slave. Thit b ch s iu khin h
thng bus v n c th l thit b truyn cng nh l thit b nhn.
u im ca kt ni bus l gim thiu c cc kt ni tt c cc thit b vi
tt c cc thit b khc, gim thiu c cc kt ni dy phc tp do gim
c gi thnh h thng. Nhc im ca kt ni bus l tc kt ni b hn
ch, vn truy cp, chia s chung mt h thng bus v kh nng m rng h
thng
Hu ht cc my tnh PC c cng mt cch t chc h thng bus. n gin l
tt c cc thit b u s dng chung mt h thng bus c gi l system bus
nh hnh 8.15. Phng php t chc ny t ra n gin, tit kim dy dn do

Hnh 8.15. T chc bus vi my tnh PC thng thng


gim thiu chi ph h thng. Tuy nhin, nhc im ca n l c th xy ra tnh
hung c CPU v cc thit b I/O cng i chim dng bus v s xy ra xung
t. gii quyt vn ny, ta s phi s dng 1 chip chuyn dng phn
x bus. Vn phn x bus s c cp ngay trong mc ny.
i vi h thng my ch, my tnh main frame i hi lng d liu trao i
ln, t chc bus c phn tch ra theo chc nng nh trn hnh 8.16. H thng
main frame c th c trang b mt hay nhiu CPU, b nh chnh v cc b x
l vo ra I/O. Trn my tnh loi ny thng c 3 h thng bus: memory bus
c s dng cc b x l I/O c v ghi d liu vi b nh chnh m khng
cn thng qua CPU; I/O bus cho php CPU pht cc lnh n tt c cc b x l
I/O; v h thng bus tng tc trc tip gia CPU vi b nh chnh. Vi cch t
chc nh vy, CPU c th ng thi trao i d liu vi cc thit b I/O v trao

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 150

CHNG 8 : THIT B NGOI VI V GHP NI


i d liu vi b nh chnh (Tt nhin l ti cng mt thi im khng th trao
i vi 2 thit b ngoi vi).

Hnh 8.16. T chc bus vi my tnh main frame


Bus ng b
Bus ng b l h thng bus hot ng di s ng b ca mt tn hiu xung
nhp ng h. V d nh qu trnh c d liu t b nh v CPU c th hin
trn hnh 8.17 di y

Hnh 8.17. Hot ng ca bus ng b


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 151

CHNG 8 : THIT B NGOI VI V GHP NI

Ti chu k u tin T1, khi xung nhp ng h cn mc cao, CPU t a ch


ca nh cn c d liu ln bus a ch. Ngay sau trong khong T1, sau khi
tn hiu a ch n nh, tn hiu
v
s c kch hot. Tn hiu
l tn hiu ch ra rng CPU s tng tc vi b nh. Tn hiu
l tn
hiu m CPU ch ra y l qu trnh c d liu v CPU. C hai tn hiu
u tch cc mc in p 0V. Qu trnh c d liu thng din ra
v
chm hn so vi tc bus, do ton b thi gian T2 c dnh cho vic truy
cp b nh. Ti chu k T3, CPU s c d liu truyn v trn ng data bus.
Ngay sau khi hon thnh qu trnh c d liu, CPU s gii phng tn hiu
v
.

Bus khng ng b
Nu ta t b nh ng b vo mt h thng bus ng b c tc cao hn tc
ca b nh, khi thi gian truy cp vn khng c ci thin bi v tc c
xung nhp l khng i. Nu ta tng tc xung nhp ph hp vi tc cao
ca b nh, cc thit b c tc thp hn s khng th hot ng bnh thng.
Bus khng ng b c s dng gii quyt vn trn, tt nhin l cch
gii quyt ca n tng i phc tp v n khng c xung nhp ng b. Mt
thit b ch master s t tt c mi th m n cn ln h thng bus (a ch, d
(master
liu, tn hiu iu khin), sau kch hot tn hiu ng b ch
synchronization). Thit b t s p ng vi tc nhanh nht c th ri kch
hot tn hiu ng b t
(slave synchronization) khi kt thc qu trnh
truyn nhn. Tip , thit b ch s gii phng
ri thit b t gii phng
. Bng cch ny, h thng ch/t hot ng vi tc cao s hot ng
hiu qu hn so vi h thng ch/t hot ng vi tc thp.
tm hiu r hn v qu trnh trao i d liu khng ng b, ta s xem xt
qu trnh c d liu khng ng b c miu t trn hnh 8.16. c c
d liu trong b nh, CPU t tn hiu a ch ln bus a ch, sau l kch
hot tn hiu
v
. Khi cc tn hiu ny n nh, CPU s kch hot
. S kin ny kch hot b nh thc hin hot ng c. Qu trnh c
b nh s kt thc khi tn hiu
c kch hot bi b nh. Ta cng c th
nhn r qu trnh ny thng qua cc mi tn c trn hnh 8.18. Phng php trao
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 152

CHNG 8 : THIT B NGOI VI V GHP NI


i d liu nh trn cn c gi l full handshake. Lu rng qu trnh trao
i d liu khng ng b khng s dng tn hiu xung nhp clock.
Khi pht sinh li h thng, h thng bus khng ng b t ra rt kh phn tch,
kim tra li so vi h thng bus ng b. Chnh v vy m trong my tnh PC,
ch yu ta thng s dng bus ng b.

Hnh 8.18. Hot ng ca bus khng ng b


Phn x bus
By gi hy gi s l ti mt thi im c nhiu hn mt thit b cn truy cp
bus. Cu hi t ra l thit b no s c quyt nh lm master ? Vn phn
x bus c th c gii quyt bi mt trong hai phng php c bn: phn x
bus tp trung v phn x bus khng tp trung. Hnh 8.19 m t hai phng php
phn x bus. Phn x bus tp trung c m t trong hnh 8.19a. Thit b 0 n
thit b n cng c ni vo mt h thng bus (h thng bus ny khng c
m t trong hnh) v c cng mt ng dy tn hiu bus request ni vi b
phn x. Khi mt thit b mun lm master thc hin trao i d liu, n
kch hot tn hiu yu cu. Khi b phn x nhn thy c tn hiu yu cu, n s
quyt nh xem tn hiu cho php c c cung cp hay khng (trong mt s
trng hp, h thng bus khng c php gin on). Nu tn hiu phn x
c cung cp, n s kch hot tn hiu cho php. Tn hiu cho php c ni
ni tip t thit b ny n thit b khc. Thit b u tin nhn c tn hiu
cho php v n cng ng thi mun tr thnh bus master s nm quyn truy
cp bus v ngn cm cc thit b pha sau n truy cp bus. Nu thit b khng
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 153

CHNG 8 : THIT B NGOI VI V GHP NI


mun truy cp bus, n n gin l chuyn tn hiu cho php ra thit b pha sau.
Thit b no gn b phn x s c mc u tin cao hn so vi cc thit b pha
sau.

Hnh 8.19. Phn x bus


Trong mt s trng hp, vic phn x bus c 1 mc u tin nh vy t ra
khng thch hp. Khi , ta c th thc hin phn x bus c nhiu mc u tin
nh hnh 8.19b. Tn hiu yu cu vi s hiu nh hn c mc u tin cao hn.
Do vy, xc nh mc u tin cao hn cho mt thit b, n s c gn vi
tn hiu yu cu c s hiu nh. Cc thit b c cng mc u tin s c nhm
thnh tng nhm v a vo cng mt b phn x bus.
Phn x bus khng tp trung c th hin trn hnh 8.19c. Lu rng h thng
s khng c b phn x. Tn hiu cho php lun c cung cp vo h thng
cc thit b. Khi mt thit b mun truy cp bus, n s kch hot tn hiu yu cu
ln ng bus request ri kim tra tn hiu trn ng dy busy. Nu tn hiu
trn ng busy l khng tch cc, n s chuyn tn hiu 0 n cc thit b c
nh s cao hn trong dy kt ni (tc l ngt tn hiu cho php n cc thit b
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 154

CHNG 8 : THIT B NGOI VI V GHP NI


pha sau), tch cc ng tn hiu busy v gii phng tn hiu yu cu. Nu tn
hiu busy l bn, hoc nu thit b khng c nhu cu truy cp bus, n ch cn
n gin l chuyn tn hiu cho php n cc thit b pha sau.
Phn x bus cn hot ng vi tc cao, do phn x bus tp trung ch thch
hp vi h thng c s lng thit b nh (thng ti a l 8 thit b). Trong
trng hp s lng thit b ln, phn x bus khng tp trung t ra thch hp
hn

8.4.2. Mt s chun bus trong my tnh


Trong mc 8.4.1. trn, ta tm hiu mt s kin thc c bn v h thng bus
trong my tnh. Trong phn ny, chng ta s tm hiu c th hn cc chun bus
c trong mt my tnh.
Chun ISA
Ra i vo nm 1981 trong mt d n ca IBM dnh cho cc my tnh 16/8 bit.
Ban u chun ISA c xy dng l h thng 8 bit. Theo nhu cu pht trin,
chun ISA 16 bit c gii thiu vo nm 1984. Tc xung nhp hot ng
trong ISA 8 bit thng l 4,77MHz cn i vi chun ISA 16 bit l 6MHz ri
nhanh chng tng tc ln 8MHz.
Chun ISA thng c s dng kt ni cc card ngoi vi vi mainboard
nh card ha hoc card m thanh. Mt s modem trong thi gian u cng
c kt ni vi my tnh thng qua khe cm ISA ny. S lng thit b ti a
kt ni vi h thng l 6 thit b
Hnh 8.20 m t cu trc cc chn tn hiu ca ISA 8 bit v cu trc ISA 16 bit

Hnh 8.20. Cu trc ISA 8 bit v ISA 16 bit


BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 155

CHNG 8 : THIT B NGOI VI V GHP NI


Cc tn hiu ca chun ISA

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 156

CHNG 8 : THIT B NGOI VI V GHP NI

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 157

CHNG 8 : THIT B NGOI VI V GHP NI

Chun MCA
MCA Micro Channel Architecture l chun kt ni do IBM pht trin t nm
1987 cho cc my tnh PS/2. Tn ti mt thi gian kh di, hin nay chun
MCA c th c tm thy trong mt s my mainframe nh PS/2, RS/6000
hay /400 hoc System/370. Chun MCA cng c dng 16 bit v c dng 32
bit. S chn ca chun ny c th hin trn hnh 8.21. di y

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 158

CHNG 8 : THIT B NGOI VI V GHP NI

Hnh 8.21. S chn chun MCA 16 v 32 bit

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 159

CHNG 8 : THIT B NGOI VI V GHP NI

Bus EISA (Extended ISA)


Chun ny ra i nhm m rng cu trc ISA h tr ngoi vi 32 bit vi tc
truyn d liu cao hn. Do cnh tranh vi MCA, khe cm c 2 nc : nc trn
c tip im hon ton tng thch vi ISA nn c th s dng card ISA cm
vo khe cm . Nc di cho php cm cc card EISA 32 bit. Chun EISA c
tc xung nhp 8,33 MHz nhng do lm vic vi s liu 32 bit nn tc
truyn ti ti a y ln ti 33,32 MB/s v bus c th a ch ha c b nh
c dung lng 4 GB. Hnh 8.22. m t s chn ca EISA

Bus cc b VL VESA Local


Nhc im chnh ca cc bus ISA, EISA l gp phi hiu ng nght c chai
lm lng ph thi gian x l ca cc vi x l tc cao hn khi lm vic vi cc
bus tc thp, nh vy lm gim hiu xut ca ton b h thng. Do vy, hip
hi VESA (Video Electronic Standard Association) pht trin bus cc b
VESA cho php cc card ghp ni t vi x l ti bn mch video tc nhanh
c th hot ng c. Bus VL h tr c cc thit b 32 ln 64 bit vi tn s
xung nhp ln ti 50MHz nhng ch tn s 33 MHz vi thit b 32 bit l ti u
vi bng thng cc i l 107MB/s. V l do , chun ny tr nn hn ch khi
tc cc bus cc b qu 33MHz hoc trn 100MHz. Hnh 8.23. m t s
chn ca VL bus

PCI bus (Peripheral Component Interconection)


Chun lin kt ni cc thnh phn ngoi vi PCI l chun bus vo/ra c s
dng ph bin nht hin nay. Bus PCI cung cp mt ng d liu chia s ngay
gia vi x l v cc b iu khin ngoi vi trong tt c cc my tnh xch tay
n my tnh ln
Bus PCI ra i nm 1993, c thit k bi cng ty Intel, Compaq v Digital.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 160

CHNG 8 : THIT B NGOI VI V GHP NI

Hnh 8.22. S chn ca EISA

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 161

CHNG 8 : THIT B NGOI VI V GHP NI

Hnh 8.23. VESA Local bus


Bus PCI cng tn ti trn mainboard cng vi bus ISA trong nhiu nm. Do yu
cu truyn tc cao v gim kch thc cc bn mch ghp ni PCI nn cc
khe cm PCI khng th tng thch vi cc khe cm ISA hay EISA. Tn s lm
vic ca PCI l 33MHz hay 66MHz, h tr cc ng truyn d liu 32 hay 64
bit. Trn bn mch chnh ngy nay tn ti t 3 n 5 khe PCI kt ni vi b vi
x l qua mt chip c bit gi l cu PCI. Hnh 8.24 m t s chn ca khe
cm bus PCI.
ng dng ch yu ca khe cm PCI l cm cc card x l m thanh, ha,
mng kt ni LAN hay cc modem gn trong.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 162

CHNG 8 : THIT B NGOI VI V GHP NI

Hnh 8.24. PCI bus


AGP bus
Khe cm tng tc hin th ha AGP c cu trc vt l ging PCI. N lm
vic tng t PCI v c coi l mt thit b PCI nhng tc nhanh gp i
PCI. Card AGP c kh nng truy cp trc tip b nh v bus AGP ph hp cho
vic hin th 3 chiu v n dng b nh chnh lu tr d liu v bng, trc z,
ngun sng.
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 163

CHNG 8 : THIT B NGOI VI V GHP NI


AGP c mt s loi c phn loi theo bng thng
AGP

rng bus

Tn s lm vic

1x
2x
4x
8x

32 bit
32 bit
32 bit
32 bit

66MHz
66MHz
66MHz
66MHz

S d liu truyn 1
xung nhp
1
2
4
8

Bng thng
266 MBps
533 MBps
1066 MBps
2133 MBps

in p lm vic ca AGP l 1.5V hoc 3.3V ty loi. S chn c th hin


trn hnh 8.25

Hnh 8.25. S chn ca AGP

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 164

CHNG 8 : THIT B NGOI VI V GHP NI

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 165

CHNG 8 : THIT B NGOI VI V GHP NI

PCI Express
PCI v PCI express (PCIe) khc bit c bn trn giao thc ghp ni tip serial.
PCIe l kiu kt ni im-im theo 2 chiu vi bng thng ging nhau v
khng chia s cho cc thit b khc. Do c th tng bng thng khi tng s

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 166

CHNG 8 : THIT B NGOI VI V GHP NI


ng truyn ni tip. Hin ti c 5 kiu khe cm cho PCIe. PCIe x 16 c bng
thng n 8GB/s p ng nhu cu ha ngy cng tng
Ngy nay, mt mainboard c th cung cp n 20 ng PCI, thng thng s
c 1 PCI x 16 v 4 PCI x 1 thay th cho cc khe cm PCI thng thng

8.4.4. Kt ni my tnh vi cc thit b bn ngoi


Trong qu trnh hot ng, my tnh cn c nhu cu tng tc vi cc thit b
khc. My tnh v cc thit b s c kt ni vi nhau thng qua cc cng
kt ni, thng thng l cc cng kt ni serial, nhng i khi cng l cng kt
ni song song (nh kt ni my in qua cng LPT). Trong mc ny, ta s im
qua mt s cng kt ni thng dng
RS-232
Kt ni theo chun RS-232 l kt ni khng ng b ni tip. ngha ca ni
tip l cc bit s c truyn i ln lt trn mt ng truyn vt l. Mt byte
d liu c truyn i trn mt khung nh sau

Mt khung truyn c 1 start bit v mt stop bit nh du khung truyn. D


liu truyn c th c di l 7 bit hoc 8 bit. 1 bit kim tra chn l c s
dng kim tra tnh ton vn ca d liu pht hin li. Trn ng truyn,
mc in p mang mc logic 1 nm trong khong -3V n -15V nhng cng c
th ln ti -25V. Ngc li, mc in p mang mc logic 0 nm trong khong
3V n 15V nhng cng c th ln ti 25V. Di in p nm trong khong -3V
n 3V l di cm.
Tc truyn ph thuc khong cch 19.2kBd vi khong cch 30 n 50m.
Hin nay c th c nhng h thng truyn vi tc ln ti 460kBd v hn na
nhng trong thc t s dng th nhng h thng nh vy rt t v kh thc hin.
S chn ca cng cm RS-232 c th hin trn hnh 8.26. RS-232 c 2
loi cng 9 chn hoc 25 chn. Hin nay, cng 25 chn gn nh khng cn
c s dng.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 167

CHNG 8 : THIT B NGOI VI V GHP NI

Hnh 8.26. S chn ca RS-232


Phng php ghp ni chuyn i gia 2 loi cng 9 chn v 25 chn

Phng php ghp ni 2 my tnh qua cng 9 chn trong ch full


handshaking

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 168

CHNG 8 : THIT B NGOI VI V GHP NI


Cng LPT
Cng LPT l cng truyn d liu song song c thit k ring cho truyn d
liu gia my tnh v my in. Cng ny c 25 chn c th hin trong hnh
8.27

Hnh 8.27. S chn ca cng LPT

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 169

CHNG 8 : THIT B NGOI VI V GHP NI


USB (Univeral Serial Bus)
USB l chun kt ni my tnh ph bin nht hin nay. c im quan trng
nht ca chun ny l n c th kt ni mt s lng ln cc thit b khc nhau
nh bn phm, chut, a, camera, my in,... USB kt thc tnh trng chp v,
khng ng nht ca cc giao din ngoi vi trong my tnh c nhn. Ngoi ra,
bn thn tn hiu trn cng USB cn c kh nng cung cp ngun +5V cho cc
thit b bn ngoi. y l mt c im m khng mt chun no khc h tr.
Khi thc hin truyn d liu theo chun USB, my tnh c coi l master v n
s qun l tt c cc thit b khc gn vo n. Thit b c gn vo my tnh
theo chun USB u c kh nng hot ng ngay lp tc m khng cn khi
ng li h thng
Hnh 8.28. m t mt s phin bn ca chun USB.

Hnh 8.28. Cc phin bn USB thng dng


8.5. Li truyn thng v cc phng php pht hin li
Trong tt c cu trc my tnh, v c bit trong trng hp lin quan ti truyn
thng gia cc my tnh vi nhau, lun lun c th xy ra trng hp d liu
nhn c trn ng truyn b li. Nguyn nhn ca li l do nhiu trn ng
truyn. C th l cc d liu trn ng truyn c m ha di dng s nh
phn, thc t l cc gi tr in p hoc dng in. Nhiu trn ng truyn xut
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 170

CHNG 8 : THIT B NGOI VI V GHP NI


pht t bn thn cu trc ng truyn, xut pht t mi trng bn ngoi nh
p sut, cc tia gama,...Cc nguyn nhn ny lm pht sinh li, tc l lm mc
logic 0 chuyn thnh 1 v mc logic 1 chuyn thnh 0.
Gi s h thng cn truyn mt k t ASCII l k t b t bn truyn n bn
nhn v trong qu trnh truyn pht sinh mt li bit c trong s nh nht.
Chui k t ng ca k t b l 1100010, nhng chui nhn c l 1100011,
th hin l k t c. Bn nhn s khng c bt c mt cng c no c th
pht hin c li v chui nhn c vn c chp nhn
khc phc hin tng ny, h thng truyn v nhn d liu s c b xung
thng tin check bit km vi d liu. H thng nhn d liu s kim tra thng
tin check bit km theo cng mt iu kin i vi bn truyn pht hin ra
li, v trong mt s trng hp c th sa li li. Trong ni dung ca chng
ny, ta s xem xt 2 phng php c bn kim tra li v sa li. Nhng trc
ht ta hy tm hiu mt s nh ngha c bn v truyn tin

8.5.1. T l bit li
C rt nhiu cch khc nhau c th gii thiu v cc li trong h thng my
tnh, v cc li ny cng c th c rt nhiu dng khc nhau. Ti thi im ny,
ta s gi s rng xc sut mt bit nhn c b li c lp vi xc sut cc bit
khc gn b li. Trong trng hp , ta c th nh ngha t l bit li BER
(bit error rate) l xc sut bit nhn c b li. R rng trong nh ngha ny,
con s l rt nh, thng thng t l bit li nh hn 10-12 cho mi bit c
kim tra, tc l s xut hin mt li trong 1012 bit c kim tra.
Trong mt h thng my tnh, t l bit li BER c th c chp nhn gi tr
10-18 hoc t hn. Theo mt c tnh, nu xung nhp ng h 100MHz, v h
thng l 32 bit. Khi s lng li trong 1 giy s c tnh l 10-18 100
106 32 hay 3.2 10-9 li trong 1 giy, tc l xp x 1 li s xy ra trong
khong thi gian khong 10 nm.
8.5.2. Pht hin li v sa li single-bit-error
Mt phng php n gin v lu i nht pht hin li trong qu trnh
truyn v nhn k t l kim tra chn l parity bit. Mt bit parity, mang gi tr
BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 171

CHNG 8 : THIT B NGOI VI V GHP NI


0 hoc 1 c thm vo mi mt k t kim tra tng s bit mang gi tr 1
trong k t l chn hay l. Trong v d v truyn k t b theo m ASCII
trn, chui 1100010 nu c kim tra chn, mt bit mang gi tr 1 s c
thm vo v tng s bit mang gi tr 1 trong chui l l. Cui cng, chui truyn
i l 11000101. H thng nhn s nhn v m s bit mang gi tr 1 trong chui
nhn c l chn hay l. Nu kt qu l chn, qu trnh truyn khng c li v
h thng s khi phc ni dung c truyn. Ngc li th chui nhn c
b li. Phng php ny khng pht hin ra li nu s bit b li trong chui l
2 hoc nhiu hn (nhng l s chn). Trong trng hp , ta c th s dng
phng php khc s c tho lun trong phn di y.

Hamming Codes
Nhng bit thm vo d liu ngoi chc nng pht hin li, n cn cn c kh
nng t sa li. Mt s phng php m ha ph bin c s dng rng ri l
m Hamming. Phng php ny c thc hin da trn cc nghin cu ca
Richard Hamming ti Bell Telephone Laboratories, hin nay hot ng di s
qun l ca Lucent Technologoies
Khong cch Hamming HD c nh ngha l s lng bit li ti thiu m
khng m bo chc chn pht hin c trong mt chui bit. Khi truyn mt
chui k t ASCII v nhn c 1 chui k t ASCII khc, bn nhn khng c
kh nng pht hin ra c li trn ng truyn, do HD = 1. Nu by gi bng
mt phng php no , ta tng khong cch HD = 2 th c ngha l ta c th
pht hin tt c cc li n (single-bit error)
Mt phng php tng khong cch HD n gin l thm 1 bit kim tra chn
l pariy bit nh trnh by trn. Nu thc hin kim tra chn vi bit kim tra
c t pha bn tri. K t a khi s c biu din bi chui
11100001. Tng t, ta c th xc nh c chui th hin k t b, c, z
hoc A nh th hin trn hnh 8.29. Bng m ASCII lc ny s c tng s 28 =
256 trng thi khc nhau. Mt na trong s th hin m k t sai. Khi bn
nhn nhn c m k t sai, bn nhn s yu cu thc hin truyn li m k t
.
Qu trnh truyn li k t b sai khng phi lc no cng c th thc hin c.
Do cn c mt phng php no ng thi pht hin li v t sa li.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 172

CHNG 8 : THIT B NGOI VI V GHP NI


Phng php kim tra chn l c th pht hin li nhng n khng th xc nh
c v tr li. Gi s nh ta nhn c 11100011 v phng php kim tra l

Hnh 8.29. Kim tra chn mt s k t


chn, ta bit chc chn l c li xy ra v tng s bit mang gi tr logic 1 l
l. Nhng ta khng c thng tin xc nh bit truyn i l a, b hay bt
k mt k t no khc.
c th xy dng c mt loi m c kh nng pht hin v t sa li dng
single-bit-error, ta phi thm nhiu hn 1 bit d phng trong chui d liu 7 bit
ban u. Thc t ta s phi thm 4 bit d phng c th loi b cc trng hp
li 1 bit trong chui c th xy ra. Gi s chui k t a cn truyn i l
1100001 th ta phi loi b cc trng hp li l 0100001, 1000001, 1110001,
1101001, 1100101, 1100011, 1100000. Nh vy, ta s s dng 11bit m ha
li bng m ASCII.
Qu trnh m ha c thc hin theo cc bc nh sau
1. Cc bit d phng c thm vo cc v tr C1, C2, C4, C8 nh sau

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 173

CHNG 8 : THIT B NGOI VI V GHP NI


2. Bit C1 l kim tra chn hoc l ca t hp cc bit s {1, 3, 5, 7, 9, 11}.
Nh v d trn hnh, C1 = 0 v ch c cc bit s 3 v 11 bng 1 (kim tra
chn)
3. Bit C2 l kim tra chn l ca t hp cc bit {2, 3, 6, 7, 10, 11}. Tng t
vi phn tch trn ta c C2 = 1
4. Bit C4 l kim tra chn l ca t hp cc bit {4, 5, 6, 7}. C4 trong trng
hp ny l 0
5. Bit C8 l kim tra chn l ca {8, 9, 10, 11}. C8 = 0
6. Chui bit truyn i s l

thit b nhn, ta s tin hnh kim tra theo quy trnh sau
1. Kim tra chn l cc bit d phng C1, C2, C4, C8 vi cc t hp tng
ng.
2. Nu kt qu kim tra u ph hp, th d liu truyn khng li
3. Nu c li tc l t nht mt gi tr Ci c kt qu kim tra l l th v tr
li c tnh l =

Tip tc v d trn, gi s ta nhn c chui 10010111001.

Ta s kim tra chn l


Kim tra
Kim tra
Kim tra
Kim tra

C1
C2
C4
C8

{1, 3, 5, 7, 9, 11}
{2, 3, 6, 7, 10, 11}
{4, 5, 6, 7}
{8, 9, 10, 11}

Kt qu l
Kt qu chn
Kt qu l
Kt qu chn

Kt qu l C1 v C4 do v tr bit b li l n = 1 + 4 = 5. Chui c sa li
l 10010101001. D liu thu c 1000100. y chnh l k t D trong bng
m ASCII

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 174

CHNG 8 : THIT B NGOI VI V GHP NI


8.5.3. Kim tra d phng theo chiu dc VRC
Phng php kim tra d phng theo chiu dc VRC (Vertical Redundancy
Checking) l phng php c s dng kim tra theo khi d liu. Khi
truyn mt nhm d liu word, cc bit d phng c thm vo mi word. Kt
qu mi word sau khi c thm vo bit kim tra chn l li c xp theo tng
hng. Cui cng ta li kim tra chn l mt ln na theo chiu dc. Ta c th
hnh dung r hn qu trnh kim tra VRC bng v d trn hnh 8.30 khi ta truyn
8 k t t A n F

Hnh 8.30. Kim tra li theo phng php VRC


8.5.4. Kim tra m vng CRC
Kim tra m vng CRC l mt phng php rt mnh pht hin li v sa
li. Nguyn l c bn ca CRC l t mt li bit pht sinh, li ny s bng n v
nu c mt c ch kim tra lin tc bit li ny th xc sut pht hin li s tng
ln
CRC s dng mt m a thc nh mt khung truyn c chia thnh 2 trng.
Trng d liu v trng kim tra CRC. Sau khi nhn c khung truyn (bao
gm d liu v CRC bit), h thng s kim tra theo cng mt c ch i vi bn
gi. Nu kt qu ph hp, tc l khng c li. Nu kt qu c s khc bit, li
xy ra.
thc hin kim tra CRC, bn gi d liu s thc hin theo cc bc sau

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 175

CHNG 8 : THIT B NGOI VI V GHP NI


1. Vi chui d liu cn truyn i, n c coi l mt a thc M(x) c bc
l k s c thm n bit s 0 vo ng sau. Vi n l bc ca mt a thc
sinh G(x) v k>n
2. a thc thu c gm M(x) v chui n bit 0 thm vo c thc hin
php chia cho a thc G(x) theo php chia modul 2 c phn d R(x).
R(x) c s bit khng ln hn n bit.
3. a thc truyn i l T(x) = M(x) + R(x)
Bn nhn d liu gi s l T(x) s tin hnh kim tra nh sau
1. Thc hin php chia T(x) cho a thc sinh G(x)
2. Nu kt qu R(x) bng 0 th qu trnh truyn khng c li, nu kt qu
khc 0 th qu trnh truyn c li
Gi s ta cn truyn chui d liu M(x) = 1101011011. a thc sinh G(x) =
10011 (tc l G(x) = x4 + x + 1). Vi a thc sinh nh vy, ta thy n = 4, tc l
ta s thm 4 s 0 vo chui cn truyn d liu c chui 11010110110000.
Thc hin php chia nh hnh 8.31 ta c R(x) = 1110.

Hnh 8.31. Thc hin php chia trong kim tra CRC
Chui truyn i s l

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 176

CHNG 8 : THIT B NGOI VI V GHP NI


Mt s a thc sinh hay c s dng cho kt qu tt trong vic pht hin li,
l
16 =

32 =
+

+
+
+

+
+
+1

+1

+1

TNG KT CHNG
Cc lu tr d liu c rt nhiu dng khc nhau. Vi d lu tr c cc loi
nh cng, bng t. a quangcos mt lu tr cao hn a t, nhng c
gi thnh cao hn v khng h tr kh nng ghi d liu. Cc a quang thng
dng l CD ROM, DVD ROM.
Cc thit b vo/ra cng c rt nhiu loi khc nhau. Trong chng ny chng ta
nghin cu mt s thit b c bn. l bn phm, bit pad, chut, trackball,
mn hnh hin th CRT.
Cc cng vo ra d liu cng lin quan ti h thng bus truyn thng bn trong
my tnh. Chng ta cng tm hiu mt s h thng bus c bn trong my tnh.
Cc h thng bus ny khc nhau tc truyn thng, rng d liu m n
h tr, kh nng kt ni. Vi mi h thng bus ny, chng ta cng tm hiu
s chn v cc tn hiu trong bus.
kt ni vi cc thit b ngoi vi bn ngoi, my tnh phi s dng cc knh
truyn dn ring (khc vi bus). Mt s knh truyn dn l RS-232, cng LPT,
v c bit l chun USB
Trong qu trnh truyn nhn d liu, li pht sinh l khng th trnh khi. Ta
tm hiu mt s phng php pht hin v t sa li c bn, thng c s
dng nh kim tra chn l, kim tra VRC, v mt phng php rt mnh l
CRC.

BI GING CU TRC MY TNH V GHP NI

PDF created with pdfFactory trial version www.pdffactory.com

Page 177

Вам также может понравиться