GII THIU
I. LCH SY TÍNH S :
II. CU TRÚC CA MT H THNG MÁY TÍNH :
1. Máy tính là gì ?
- Máy tính s là công c giúp con người gii quyết các công vic tính toán vi tc độ
cao.
- Máy tính là mt nhánh phát trin ca ngành đin t hot động ch yếu nh các linh
kin s.
- Nguyên tc hot động chính ca máy tính là thc hin liên tc các lnh. Các lnh này
do con người cung cp nhiu dng khác nhau trong đó dng thp nht là s h 2.
Các dng khác như hp ng, các ngôn ng lp trình, các ngôn ng cp cao đều được
dùng vi mc đích làm gim nh vic lp trình bng mã máy tc s h 2.
- Trong máy tính chia ra làm hai phn cng và mm.
- Phn cng là phn vt cht c th to nên máy tính như ngun cung cp, mch chính
máy tính, các thiết b ngoi vi, ...
- Phn mm là phn trườu tượng như các ý nim, các gii thut, các chương trình ...
- Vi x lý là tên gi ca phn linh kin s chc năng điu hành mi hot động ca
h thng máy tính. Tng quát hơn, người ta gi vi x lý các linh kin có kh năng gii
quyết vn đề bng các chương trình.
2. Mô hình Von Neumann :
- Các máy tính t lúc ra đời cho đến nay đều được chế to, ci tiến da trên mô hình
Von Neumann như sau :
- CPU là khi x lý trung tâm có kh năng điu hành mi hot động ca h thng.
- Khi b nh có chc năng lưu gi các thông tin.
CPU Xut/Nhp
B nh
Tu
y
ế
n địa ch
Máy tính
Tu
y
ế
n d liu
Tu
y
ế
n đi
u khi
n
Biên son : Nguyn Xuân Minh Đại hc Bách khoa tp.HCM
Tr.2
T chc và cu trúc máy tính
Gii thiu
- Khi xut nhp có chc năng điu khin các thiết b ngoi vi như màn hình, bàn phím,
máy in ...
- Khi CPU điu khin khi b nh và khi xut nhp thông qua 3 tuyến : địa ch, d
liu và điu khin/trng thái.
- Tuyến địa ch dùng để la chn, phân bit v trí các ô nh, các thiết b ngoi vi.Tuyến
địa ch là tuyến mt chiu : ra CPU, vào các khi còn li.
- S lượng địa ch tuyến địa ch có th qun lý được tùy thuc vào s đường địa ch
ca tuyến. Chng hn, vi 1 đường địa ch, vi x lý có th phân bit được 2 địa ch
0 và 1; vi 2 đường địa ch kh năng định địa ch lên đến 4 địa ch do s t hp ca
hai bit địa ch nói trên gm địa ch 0 (00), 1 (01), 2 (10) và 3 (11); ...
- Trong trường hp tng quát, vi tuyến địa ch có n đường, kh năng qun lý địa ch
b nh lên đến 2n. (Vi các CPU t 386 tr lên, s đường địa ch là 32 nên dung
lượng ti đa có th qun lý được là 232 = 4 GB b nh = 4096 MB)
- Tuyến địa ch thường được ký hiu bng ch A hay a (a31a30...a1a0).
- Tuyến d liu là đường trao đổi thông tin gia các khi vi nhau. Tuyến d liu là
tuyến hai chiu. Vi các CPU 386 tr lên, tuyến d liu có 32 đường cho phép mi
ln trao đổi được 4 byte d liu.
- Tuyến d liu thường được ký hiu bng ch D hay d (d31d30...d1d0).
- Tuyến địa ch và tuyến d liu theo sơ đồ Von Neumann là tuyến dùng chung cho c
hai khi b nh và xut nhp vi mc đích là tiết kim s đường trong mi tuyến.
Chính vì vy nên cn có thêm tuyến điu khin để xác định rõ vi x lý mun làm vic
vi b nh hay vi xut nhp, hoc chiu d liu là chiu ra CPU hay vào CPU, ...
- Trên tuyến điu khin, đường nào có chiu ra khi CPU thường được xem là dường
điu khin. Đường nào có chiu đi vào CPU được xem là các đường trng thái.
- Mi đường trên tuyến điu khin thường mang mt tên riêng tùy theo ý nghĩa ca mi
đường. Chng hn như MEMR là tín hiu điu khin vic đọc b nh, MEMW điu
khin ghi b nh, IORD điu khin quá trình nhp, IOWR điu khin vic xut d
liu ...
- Các đường điu khin/trng thái có th tác động mc 1 hoc mc 0.
3. CPU - Khi x lý trung tâm :
- Khi x lý trung tâm điu hành các hot động ca h thng bng cách thc hin liên
tc và lp đi lp li 2 bước : ly lnh và thi hành lnh.
Điu khin ,định thì
B thanh ghi
ALU
Điu khin
T
r
ng thái
Xung đồng h
T
Địa chD liu
CPU
Đại hc Bách khoa tp.HCM Biên son : Nguyn Xuân Minh
Gii thiu
T chc và cu trúc máy tính
Tr.3
- Lnh mà CPU thi hành được np trước đó vào trong b nh.
- Các lnh nm liên tc trong b nh to thành chương trình.
- CPU mt h thng s tun t, đồng b nên vic cung cp xung đồng h clock là
cn thiết.
- CPU hot động được vi xung clock có tn s càng cao thì chy càng nhanh.
3.1. Khi điu khin, định thì (Control and timing unit) :
- Khi điu khin định thì th hin chc năng điu khin thông qua 3 bước :
. Ly lnh : thc hin quá trình đọc b nh, địa ch hay v trí lnh trong b nh
được lưu gi trong mt thanh ghi đặc bit ca b thanh ghi. Ni dung ca ô nh
chính là mã lnh.
. Gii mã lnh : xác định thao tác cn thc hin t mã lnh đọc được.
. Thi hành lnh : thc hin mt trong các hot động vi khi ALU, vi b thanh
ghi, vi khi b nh và vi khi xut nhp. Các hot động vi ALU và b thanh
ghi được thc hin trong ni b CPU. Các hot động vi b nh hay xut nhp
được thc hin bng cách phát ra các tín hiu điu khin qua tuyến điu khin ra
ngoài.
- Chc năng định thì ca khi điu khin định thì được thc hin thông qua các thi
khon gi là chu k máy. Chu k máy là đơn v thi gian nh nht trong các hot
động ca CPU.
- Mt chu k máy có th kéo dài t 3 đến 4 chu k xung clock hoc thay đổi tùy theo
mi loi CPU.
- Các chu k máy cơ bn là :
Chu k ly lnh.
Chu k đọc b nh.
Chu k ghi b nh.
Chu k xut.
Chu k nhp.
Chu k đáp ng ngt quãng.
- Thi gian thc hin hoàn tt mt lnh t lúc ly lnh đến lúc thi hành xong lnh được
gi là chu k lnh.
- Chu k lnh là mt t hp ca mt hoc nhiu chu ky.
- Như vy có th xem hot động ca mt vi x lý là mt chui ni tiếp các chu k lnh
hay các chu k máy cũng vy trên trc thi gian.
- Như vy vi cùng mt lnh ca CPU, nếu tn s xung clock càng cao tc chu k
càng nh thì thi gian thi hành lnh càng ngn.
- Các lnh ca CPU được mã hóa thành các mã lnh. Các lnh s dng thường xuyên
được có 1 byte mã lnh. Các lnh s dng không thường xuyên được mã hóa thành 2
byte mã lnh tc là thuc các nhóm lnh ph . Nh vy s lượng các lnh có th
nhiu hơn 256 lnh.
3.2. B thanh ghi (Registers unit) :
- Thanh ghi là mt dng b nh hot động được tc độ cao.
- B thanh ghi chính là b nh trong ca CPU.
Ckm1 Ckm2 Ckm3 Ckm1 Ckm1 Ckm2
Lnh 1 Lnh 2
Ckm1 Ckm2 Ckm3 . . .
T T T
Bt máy
t
Lnh 3 Lnh 4
Biên son : Nguyn Xuân Minh Đại hc Bách khoa tp.HCM
Tr.4
T chc và cu trúc máy tính
Gii thiu
- S lượng các thanh ghi trong b thanh ghi thường b hn chế vì khó chế to, giá thành
cao.
- CPU dùng các thanh ghi vi nhng mc đích khác nhau th hin qua tên gi ca mi
thanh ghi.
- Thanh ghi b đếm chương trình PC (program counter) dùng để gi địa ch ô nh cha
mã lnh sp thi hành. Địa ch này s được CPU đưa lên tuyến địa ch trong bước ly
lnh.
- Thanh ghi b tích lũy ACC (accummulator)vai trò quan trng trong phn ln các
lnh ca CPU. Bch lũy là thanh ghi được s dng nhiu hơn các thanh ghi khác
trong b thanh ghi. ACC được dùng nhiu trong tính toán và gi kết qu sau khi tính.
- Các CPU đủ mnh cho phép thc hin các phép tính trên c các thanh ghi đa dng
khác.
- Thanh ghi đa dng (general purpose register) là các thanh ghi được s dng vi các
mc đích khác nhau như dùng làm b đếm, cha địa ch, cha d liu, có th được
dùng trong tính toán nhưng không linh động và mnh như ACC ...
- Thanh ghi ch s (index register) dùng cho vic x lý dãy, bng hay chui ký t. Ni
dung thanh ghi ch s được cng vào địa ch b nh nn (base address) khi xác định v
trí ô nh.
- Thanh ghi con tr chng SP (stack pointer) (con tr ngăn xếp) dùng cho phương pháp
định địa ch theo chng. Chng là mt vùng b nh được dành riêng để cha các
thông tin cn ct tm trong mt khon thi gian ngn, hoc đôi khi có s lượng ln
mà không th cha trong các thanh ghi. SP gi địa ch đỉnh chng là nơi thông tin
được ct vào. Chng còn được gi là dãy vào sau ra trước (Last In First Out).
- Thanh ghi c trng thái (flags register) là thanh ghi được dùng theo tng bit để phn
ánh trng thái ca CPU, ca chương trình hoc kết qu . Mi bit được gi là mt c
và mang tên riêng như c nh (carry flag), c không (zero flag), c du (sign flag), c
tràn (overflow flag), c kim tra chn/l (parity flag), ...
3.3. B s hc lun lý ALU (Arithmetic logic unit) :
- ALU gi vai trò tính toán trong CPU.
- ALU s dng hai thanh ghi toán hng OP1 và OP2 để gi các toán hng và kết qu.
- ALU th thc hin được các phép s hc như cng, tr, tăng, gim, nhân, chia, so
sánh, các phép lun lý NOT, AND, OR, XOR, phép dch (shift), quay (rotate).
3.4. Tp lnh và các phương pháp định địa ch :
- Tp hp các lnh mà vi x lý có th thc hin được gi là tp lnh.
OP1/kết qu
Chn
phép toán
Tác động c
ALU
OP2
(Thanh ghi c)
Đại hc Bách khoa tp.HCM Biên son : Nguyn Xuân Minh
Gii thiu
T chc và cu trúc máy tính
Tr.5
- Tp hp các lnh nm trong b nh mà vi x lý phi thi hành theo mt th t nht
định để gii quyết mt vn đề nào đó gi là chương trình.
- Mi lnh thường mang mt s thông tin như :
. Hot động : cho biết lnh làm gì, còn gi là mã lnh (opcode)
. Các ngun d liu hay các toán hng.
. Nơi cha kết qu.
. Địa ch lnh kế.
- Dng tng quát ca mt lnh vi x lý như sau :
Mã lnh Địa ch
toán hng 1
Địa ch
toán hng 2
Địa ch
kết qu
Địa ch
lnh kế
8 bit 16 bit 16 bit 16 bit 16 bit
- Để gim bt chiu dài câu lnh 72 bit=9 byte , người ta thường dùng mt s thông tin
dng n. Dùng thanh ghi PC để gim bt địa ch lnh kế, dùng mt trong hai toán
hng để cha kết qu thì gim được địa ch kết qu, dùng thanh ghi thay cho b nh
s gim được địa ch toán hng ...
- Các phương pháp định v toán hng là các cách th hin nơi cha toán hng cn x lý.
- Các tiêu chun để chn phương pháp định v toán hng :
. Địa ch dùng trong câu lnh ngn.
. Truy xut được b nh ln.
. Linh động.
. Xác định địa ch nhanh.
. Đơn gin.
- Các phương pháp thường dùng : trc tiếp, gián tiếp, tc thi, ch s, tương đối, thanh
ghi, thanh ghi gián tiếp và chng.
* Trc tiếp : địa ch trong lnh là địa ch ô nh cha toán hng.
* Gián tiếp : địa ch trong lnh là địa ch ô nh cha mt địa ch th hai. Địa ch th hai
mi là địa ch ô nh cha toán hng.
* Tc thi : địa ch trong lnh được thay bng chính toán hng.
* Ch s : địa ch ô nh cha toán hng được xác định bng cách cng địa ch trong lnh
vi ni dung thanh ghi ch s.
* Tương đối : địa ch ô nh cha toán hng được xác định bng cách cng địa ch trong
lnh vi ni dung thanh ghi PC.
* Thanh ghi : địa ch trong lnh là địa ch thanh ghi và thường được ghép vào trong mã
lnh có nghĩa là s không còn vùng địa ch toán hng na).
* Thanh ghi gián tiếp : địa ch trong lnh là địa ch thanh ghi. Ni dung thanh ghi là địa
ch ô nh cha toán hng.
* Chng : địa ch ô nh cha toán hng nm trong thanh ghi SP nên trong lnh không
cn địa ch toán hng na.
- Trong thc tế, các tp lnh ca các vi x lý dùng nhiu phương pháp định v toán
hng phi hp vi nhau trong cùng mt lnh, hoc có th không s dng mt vài
phương pháp và điu đó nói lên các đim mnh, yếu ca tng vi x lý trong vn đề
lp trình.
4. T chc b nh :
4.1. Đặc đim :
- Hin nay, các b nh dùng trong máy tính đều là các b nh bán dn có kh năng lưu
tr thông tin theo dng nh phân.