Tải bản đầy đủ (.pdf) (91 trang)

BÀI GIẢNG KIẾN TRÚC MÁY TÍNH docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.86 MB, 91 trang )

1
Chng 1
GII THIU CHUNG
Phm Quang Dng
B môn Khoa hc máy tính - Khoa CNTT
Trng i hc Nông nghip I – Hà Ni
website: www.hau1.edu.vn/it/pqdung
T: (04) 8766318 D: 0988.149.189
Phm Quang Dng Bài ging Kin trúc máy tính 1.2
Chng 1: Gii thiu chung
Ni dung chng 1
1.1. Máy tính và phân loi
1.2. Kin trúc máy tính
1.3. S tin hoá ca máy tính
Phm Quang Dng Bài ging Kin trúc máy tính 1.3
Chng 1: Gii thiu chung
1.1. Máy tính và phân loi
1. Máy tính
¸ Máy tính (Computer) là thit b đin t thc hin
các công vic sau:
̈ Nhn thông tin vào,
̈ X lý thông tin theo dãy các lnh đc nh sn bên
trong,
̈ a thông tin ra.
¸ Dãy các lnh nm trong b nh đ yêu cu máy
tính thc hin công vic c th đc gi là chng
trình (program)
å Máy tính hot đng theo chng trình.
Phm Quang Dng Bài ging Kin trúc máy tính 1.4
Chng 1: Gii thiu chung
Mô hình máy tính c bn


2
Phm Quang Dng Bài ging Kin trúc máy tính 1.5
Chng 1: Gii thiu chung
Mô hình phân lp ca máy tính
¸ Phn cng: h thng vt lý ca máy tính
¸ Phn mm: các chng trình và d liu
Ngi s dng
(End User)
Ngi lp trình
(Programmer)
Ngi thit k HH
(OS Designer)
Các chng trình ng dng
(Application Programs)
Các phn mm trung gian (Utilities)
H điu hành (Operating System)
Phn cng (Computer Hardware)
Phm Quang Dng Bài ging Kin trúc máy tính 1.6
Chng 1: Gii thiu chung
2. Phân loi máy tính
¸ Phân loi truyn thng:
̈ Máy vi tính (Microcomputer)
̈ Máy tính nh (Minicomputer)
̈ Máy tính ln (Mainframe Computer)
̈ Siêu máy tính (Supercomputer)
Phm Quang Dng Bài ging Kin trúc máy tính 1.7
Chng 1: Gii thiu chung
Phân loi máy tính hin đi
¸ Máy tính đ bàn (Desktop Computers)
¸ Máy ch (Servers)

¸ Máy tính nhúng (Embedded Computers)
Phm Quang Dng Bài ging Kin trúc máy tính 1.8
Chng 1: Gii thiu chung
Máy tính đ bàn (Desktop)
¸ Là loi máy tính ph bin nht
¸ Các loi máy tính đ bàn
̈ Máy tính cá nhân (Personal Computer – PC)
̈ Máy tính trm làm vic (Workstation Computer)
¸ 1981 å IBM gii thiu máy tính IBM-PC s
dng b x lý Intel 8088
¸ 1984 å Apple đa ra máy tính Macintosh s
dng b x lý Motorola 68000
¸ Giá thành: 300USD đn 10.000USD
3
Phm Quang Dng Bài ging Kin trúc máy tính 1.9
Chng 1: Gii thiu chung
Máy ch (Server)
¸ Thc cht là máy phc v
¸ Dùng trong mng theo mô hình
Client/Server (Khách hàng/Ngi phc v)
¸ Tc đ và hiu nng tính toán cao
¸ Dung lng b nh ln
¸  tin cy cao
¸ Giá thành: hàng chc nghìn đn hàng chc
triu USD.
Phm Quang Dng Bài ging Kin trúc máy tính 1.10
Chng 1: Gii thiu chung
Máy tính nhúng (Embedded Computer)
¸ c đt trong thit b khác đ điu khin thit
b đólàm vic

¸ c thit k chuyên dng
¸ Ví d:
̈ in thoi di đng
̈ B điu khin trong máy git, điu hoà nhit
đ
̈ Router - b đnh tuyn trên mng
¸ Giá thành: Vài USD đn hàng trm nghìn USD.
Phm Quang Dng Bài ging Kin trúc máy tính 1.11
Chng 1: Gii thiu chung
1.2. Kin trúc máy tính
Kin trúc máy tính bao gm hai khía cnh:
¸ Kin trúc tp lnh (Intruction Set Architecture): nghiên cu
máy tính theo cách nhìn ca ngi lp trình.
¸ T chc máy tính (Computer Organization): nghiên cu cu
trúc phn cng máy tính.
å Kin trúc tp lnh thay đi chm, t chc máy tính thay đi
rt nhanh.
Ví d: Các máy tính PC dùng các b x lý Intel 32-bit t
80386 đn Pentium 4:
̈ Cùng chung kin trúc tp lnh (IA-32)
̈ Có t chc khác nhau
Phm Quang Dng Bài ging Kin trúc máy tính 1.12
Chng 1: Gii thiu chung
Kin trúc tp lnh
Kin trúc tp lnh ca máy tính bao gm:
¸ Tp lnh: tp hp các chui s nh phân mã
hoá cho các thao tác mà máy tính có th thc
hin.
¸ Các kiu d liu: các kiu d liu mà máy tính
có th x lý.

4
Phm Quang Dng Bài ging Kin trúc máy tính 1.13
Chng 1: Gii thiu chung
Cu trúc c bn ca máy tính
Phm Quang Dng Bài ging Kin trúc máy tính 1.14
Chng 1: Gii thiu chung
Các thành phn c bn ca máy tính
¸ B x lý trung tâm (Central Processing Unit):
iu khin hot đng ca máy tính và x lý d liu.
¸ B nh chính (Main Memory): Cha các chng
trình và d liu đang đc s dng.
¸ H thng vào ra (Input/Output System): Trao
đi thông tin gia máy tính vi bên ngoài.
¸ Liên kt h thng (System Interconnection):
Kt ni và vn chuyn thông tin gia các thành
phn vi nhau.
Phm Quang Dng Bài ging Kin trúc máy tính 1.15
Chng 1: Gii thiu chung
1.3. S tin hoá ca máy tính
¸ Th h th nht: Máy tính dùng đèn đin t
chân không (1943-1956)
¸ Th h th hai: Máy tính dùng transistor
(1957-1965)
¸ Th h th ba: Máy tính dùng vi mch SSI,
MSI và LSI (1966-1980)
¸ Th h th t: Máy tính dùng vi mch VLSI,
SLSI (1981-nay)
/>Phm Quang Dng Bài ging Kin trúc máy tính 1.16
Chng 1: Gii thiu chung
1. Máy tính dùng đèn đin t

¸ ENIAC -Máy tính đin t đu tiên
̈ Electronic Numerical Intergator And Computer
̈ D án ca B Quc phòng M
̈ Do John Mauchly và John Presper Eckert  i
hc Pennsylvania thit k.
̈ Bt đu t nm 1943, hoàn thành nm 1946
5
Phm Quang Dng Bài ging Kin trúc máy tính 1.17
Chng 1: Gii thiu chung
ENIAC (tip)
¸ Nng 30 tn
¸ Kích thc 140 m
2
¸ 18000 đèn đin t và 1500 rle
¸ 5000 phép cng/giây
¸ X lý theo s thp phân
¸ B nh ch lu tr d liu
¸ Lp trình bng cách thit lp v trí ca các
chuyn mch và các cáp ni.
Phm Quang Dng Bài ging Kin trúc máy tính 1.18
Chng 1: Gii thiu chung
ENIAC (tip)
Phm Quang Dng Bài ging Kin trúc máy tính 1.19
Chng 1: Gii thiu chung
ENIAC (tip)
Phm Quang Dng Bài ging Kin trúc máy tính 1.20
Chng 1: Gii thiu chung
Máy tính von Neumann
¸ Còn gi là máy tính IAS:
̈ Princeton Institute for Advanced Studies

̈ c bt đu t 1947, hoàn thành 1952
̈ Do John von Neumann thit k
̈ c xây dng theo ý tng “chng trình đc
lu tr” (stored-program concept) ca von
Neumann/Turing (1945)
6
Phm Quang Dng Bài ging Kin trúc máy tính 1.21
Chng 1: Gii thiu chung
c đim chính ca máy tính IAS
¸ Bao gm các thành phn: đn v điu khin, đn v s
hc và logic (ALU), b nh chính và các thit b vào ra.
¸ B nh chính cha chng trình và d liu.
¸ B nh chính đc đánh đa ch theo tng ngn nh,
không ph thuc vào ni dung ca nó.
¸ ALU thc hin các phép toán vi s nh phân.
¸ n v điu khin nhn lnh t b nh, gii mã và thc
hin lnh mt cách tun t.
¸ n v điu khin điu khin hot đng ca các thit b
vào-ra.
¸ Tr thành mô hình c bn ca máy tính.
Phm Quang Dng Bài ging Kin trúc máy tính 1.22
Chng 1: Gii thiu chung
John von Neumann và máy tính IAS
Phm Quang Dng Bài ging Kin trúc máy tính 1.23
Chng 1: Gii thiu chung
Các máy tính thng mi ra đi
¸ 1947 - Eckert-Mauchly Computer Corporation
¸ UNIVAC I (Universal Automatic Computer)
¸ 1950s - UNIVAC II
̈ Nhanh hn

̈ B nh ln hn
Phm Quang Dng Bài ging Kin trúc máy tính 1.24
Chng 1: Gii thiu chung
John Mauchly và UNIVAC
7
Phm Quang Dng Bài ging Kin trúc máy tính 1.25
Chng 1: Gii thiu chung
UNIVAC
Phm Quang Dng Bài ging Kin trúc máy tính 1.26
Chng 1: Gii thiu chung
Hãng IBM
¸ IBM – International Business Machine
¸ 1952 – IBM 701
̈ Máy tính lu tr chng trình đu tiên ca IBM
̈ S dng cho tính toán khoa hc
¸ 1955 – IBM 702
̈ Các ng dng thng mi
Phm Quang Dng Bài ging Kin trúc máy tính 1.27
Chng 1: Gii thiu chung
IBM 701 (1952) và IBM 702 (1955)
IBM 701
IBM 702
Phm Quang Dng Bài ging Kin trúc máy tính 1.28
Chng 1: Gii thiu chung
2. Máy tính dùng transistor
¸ Máy tính PDP-1 ca DEC (Digital Equipment
Corporation) máy tính mini đu tiên
¸ IBM 7000
¸ Hàng trm nghìn phép cng trong mt giây
¸ Các ngôn ng lp trình bc cao ra đi.

8
Phm Quang Dng Bài ging Kin trúc máy tính 1.29
Chng 1: Gii thiu chung
DEC's PDP-1 (1960)
Phm Quang Dng Bài ging Kin trúc máy tính 1.30
Chng 1: Gii thiu chung
IBM 7030 (1961)
Phm Quang Dng Bài ging Kin trúc máy tính 1.31
Chng 1: Gii thiu chung
3. Máy tính dùng vi mch SSI, MSI và LSI
¸ Vi mch (Integrated Circuit – IC): nhiu transistor
và các phn t khác đc tích hp trên mt chip
bán dn.
̈ SSI (Small Scale Integratinon)
̈ MSI (Medium Scale Integration)
̈ LSI (Large Scale Integration)
̈ VLSI (Very Large Scale Integration) (dùng cho máy
tính h th t)
¸ Siêu máy tính xut hin: CRAY-1, VAX
¸ B vi x lý (microprocessor) ra đi
̈ B x lý đu tiên å Intel 4004 (1971).
Phm Quang Dng Bài ging Kin trúc máy tính 1.32
Chng 1: Gii thiu chung
Lut Moore
¸ Gordon Moore - ngi đng sáng lp Intel
¸ S transistors trên chip s gp đôi sau 18 tháng
¸ Giá thành ca chip hu nh không thay đi
¸ Mt đ cao hn, do vy đng dn ngn hn
¸ Kích thc nh hn dn ti đ phc tp tng lên
¸ in nng tiêu th ít hn

¸ H thng có ít các chip liên kt vi nhau, do đó
tng đ tin cy
9
Phm Quang Dng Bài ging Kin trúc máy tính 1.33
Chng 1: Gii thiu chung
Tng trng s transitor trong chip CPU
Phm Quang Dng Bài ging Kin trúc máy tính 1.34
Chng 1: Gii thiu chung
IBM 360 Family (1964-1968)
¸ Có t model 20 minicomputer (b nh 24 KB)
đn model 91 supercomputer đc xây dng
cho h thng phòng th tên la Bc M.
/>Phm Quang Dng Bài ging Kin trúc máy tính 1.35
Chng 1: Gii thiu chung
IBM 360/40
¸ Dùng HH DOS/360
Phm Quang Dng Bài ging Kin trúc máy tính 1.36
Chng 1: Gii thiu chung
IBM 360/67
¸ Time sharing
system
¸ Phn cng h tr
virtual memory
¸ Dùng HH CP-67
¸ 500 KB RAM
10
Phm Quang Dng Bài ging Kin trúc máy tính 1.37
Chng 1: Gii thiu chung
IBM 360/91
¸ c thit k đ x lý d liu tc đ cao cho các ng dng khoa hc

nh khám phá không gian, vt lý nguyên t, d báo thi tit toàn cu.
¸ 16.6 triu phép cng/giây  1000 bài toán vi 200 t phép tính/ngày.
¸ 2-6 MB main memory, CPU có 5 đn v x lý đng thi.
Phm Quang Dng Bài ging Kin trúc máy tính 1.38
Chng 1: Gii thiu chung
PDP-11 (1972)
Phm Quang Dng Bài ging Kin trúc máy tính 1.39
Chng 1: Gii thiu chung
Siêu máy tính CRAY-1 (1976)
Saymour Cray
̌ HH Cray Operating
System (COS),
̌ 100-160 triu phép tính
du chm đng/giây
(megaflops)
̌ X lý d liu vector
̌ 8 MB main memory
Phm Quang Dng Bài ging Kin trúc máy tính 1.40
Chng 1: Gii thiu chung
1977 - PC có tích hp màn hình
11
Phm Quang Dng Bài ging Kin trúc máy tính 1.41
Chng 1: Gii thiu chung
VAX 11/780 (1978) - máy tính 32-bit
Phm Quang Dng Bài ging Kin trúc máy tính 1.42
Chng 1: Gii thiu chung
Osborne 1 (1980) - máy tính kh chuyn
¸ Máy tính "có th di chuyn" đu tiên, kích thc
nh, nng 24 pound (10,9 kg)
Phm Quang Dng Bài ging Kin trúc máy tính 1.43

Chng 1: Gii thiu chung
4. Máy tính dùng vi mch VLSI
Các sn phm chính ca công ngh VLSI:
¸ B vi x lý (Microprocessor): CPU đc ch to trên
mt chip.
¸ Vi mch điu khin tng hp (chipset): mt hoc
mt vài vi mch thc hin đc nhiu chc nng
điu khin và ni ghép.
¸ B nh bán dn (Semiconductor Memory): ROM,
RAM
¸ Các b vi điu khin (Microcontroller): máy tính
chuyên dng đc ch to trên mt chip.
Phm Quang Dng Bài ging Kin trúc máy tính 1.44
Chng 1: Gii thiu chung
Các h thng máy tính hin đi
¸ Máy tính nhúng
¸ Máy tính cá nhân (PC)
¸ Máy trm làm vic
¸ Máy ch (Servers)
¸ Mng máy tính
¸ Internet - Mng máy tính toàn cu
12
Phm Quang Dng Bài ging Kin trúc máy tính 1.45
Chng 1: Gii thiu chung
Mt s H thng Máy tính nhúng
Phm Quang Dng Bài ging Kin trúc máy tính 1.46
Chng 1: Gii thiu chung
Siêu máy tính Earth Simulator ca NEC (2002)
Earth Simulator ti C quan Khoa
hc và Công ngh bin Nht Bn

(JAMSTEC), Yokohama, Japan
̌ 5200 processor
̌ 35860-40960 GFlops
Phm Quang Dng Bài ging Kin trúc máy tính 1.47
Chng 1: Gii thiu chung
Siêu máy tính ASC Purple ca IBM (2005)
ASC Purple at Lawrence Livermore
National Laboratory
̌ 10240 processor
̌ 40960 GB main
memory
̌ 63390-77824 GFlops
Phm Quang Dng Bài ging Kin trúc máy tính 1.48
Chng 1: Gii thiu chung
Siêu máy tính BlueGene L ca IBM (2005)
̌ 131702 processor
̌ 32768 GB main memory
̌ 280600-367000 GFlops
Chng 2
H THNG MÁY TÍNH
Phm Quang Dng
B môn Khoa hc máy tính - Khoa CNTT
Trng i hc Nông nghip I – Hà Ni
website: www.hau1.edu.vn/it/pqdung
T: (04) 8766318 D: 0988.149.189
Phm Quang Dng Bài ging Kintrúcmáytính 2.2
Chng 2: H thng máy tính
Ni dung chng 2
2.1. Các thành phn ca máy tính
2.2. Hot đng ca máy tính

2.3. Liên kt h thng
Phm Quang Dng Bài ging Kintrúcmáytính 2.3
Chng 2: H thng máy tính
2.1. Các thành phn ca máy tính
¸ B x lý trung tâm (Central Processing Unit)
¸ B nh (Memory)
¸ H thng vào ra (Input/Output System)
¸ Liên kt h thng (System Interconnection)
Phm Quang Dng Bài ging Kintrúcmáytính 2.4
Chng 2: H thng máy tính
1. B x lý trung tâm (CPU)
¸ Chc nng
̈ điu khin hot đng ca máy tính
̈ x lý d liu
¸ Nguyên tc hot đng c bn:
CPU hot đng theo chng trình nm trong b
nh chính.
Phm Quang Dng Bài ging Kintrúcmáytính 2.5
Chng 2: H thng máy tính
Cu trúc c bn ca CPU
n v
điu khin
(CU)
n v s hc
và logic
(ALU)
Tp các
thanh ghi
(RF)
n v phi ghép bus (BIU)

bus điu khin bus d liubus đa ch
bus bên trong
Phm Quang Dng Bài ging Kintrúcmáytính 2.6
Chng 2: H thng máy tính
Các thành phn c bn ca CPU
¸ n v điu khin (Control Unit – CU): điu khin hot
đng ca máy tính theo chng trình đã đnh sn.
¸ n v s hc và logic (Arithmetic and Logic Unit –
ALU): thc hin các phép toán s hc và các phép toán
logic trên các d liu c th.
¸ Tp thanh ghi (Register File - RF): lu gi các thông tin
tm thi phc v cho hot đng ca CPU.
¸ n v ni ghép bus (Bus interface Unit - BIU): kt ni
và trao đi thông tin gia bus bên trong (internal bus)
và bus bên ngoài (external bus)
Phm Quang Dng Bài ging Kintrúcmáytính 2.7
Chng 2: H thng máy tính
Tc đ ca b x lý
¸ Tc đ ca b x lý:
̈ Tính bng s lnh đc thc hin trong 1 giây
̈ MIPS (Millions of Instructions per Second)
̈ Khó đánh giá chính xác
¸ Tn s xung nhp ca b x lý:
̈ B x lý hot đng theo mt xung nhp (Clock)
có tn s xác đnh
̈ Tc đ ca b x lý đc đánh giá gián tip
thông qua tn s ca xung nhp.
Phm Quang Dng Bài ging Kintrúcmáytính 2.8
Chng 2: H thng máy tính
Tc đ ca b x lý (tip)

¸ Dng xung nhp:
¸ T
0
- chu k xung nhp
¸ Tn s xung nhp: f
0
= 1/T
0
¸ Mi thao tác ca b x lý cn kT
0
¸ T
0
càng nh å b x lý chy càng nhanh
¸ Ví d: Máy tính dùng b x lý Pentium IV 2GHz
Ta có f
0
= 2 GHz = 2x10
9
Hz
å T
0
= 1/f
0
= 1/(2x10
9
) = 0,5 ns.
Phm Quang Dng Bài ging Kintrúcmáytính 2.9
Chng 2: H thng máy tính
2. B nh máy tính (Memory)
¸ Chc nng: lu tr chng trình và d liu.

¸ Các thao tác c bn vi b nh:
̈ c (Read)
̈ Ghi (Write)
¸ Các thành phn chính:
̈ B nh trong (Internal Memory)
̈ B nh ngoài (External Memory)
Phm Quang Dng Bài ging Kintrúcmáytính 2.10
Chng 2: H thng máy tính
Các thành phn ca b nh máy tính
Phm Quang Dng Bài ging Kintrúcmáytính 2.11
Chng 2: H thng máy tính
B nh trong (Internal memory)
¸ Chc nng và đc đim:
̈ Cha các thông tin mà CPU có th trao đi trc
tip
̈ Tc đ rt nhanh
̈ Dung lng không ln
̈ S dng b nh bán dn: ROM, RAM
¸ Các loi b nh trong:
̈ B nh chính
̈ B nh cache (b nh đm nhanh)
Phm Quang Dng Bài ging Kintrúcmáytính 2.12
Chng 2: H thng máy tính
B nh chính (Main memory)
¸ Cha các chng trình và d
liu đang đc CPU s dng.
¸ T chc thành các ngn nh
đc đánh đa ch.
¸ Ngn nh thng đc t chc
theo byte.

¸ Ni dung ca ngn nh có th
thay đi, song đa ch vt lý ca
ngn nh luôn c đnh.
00101011
11010101
00001010
01011000
11111011
0000
0001
0010
0011
0100
00001000 0101
11101010 0110
00000000 0111
10011101 1000
00101011 1001
11101011 1010
00101000 1011
11111111 1100
10101010 1101
00101011 1110
01010101 1111
Ni dung a ch
Phm Quang Dng Bài ging Kintrúcmáytính 2.13
Chng 2: H thng máy tính
B nh đm nhanh (Cache memory)
¸ B nh có tc đ nhanh đc đt đm gia
CPU và b nh chính nhm tng tc đ CPU

truy nhp b nh
¸ Dung lng nh hn b nh chính
¸ Tc đ nhanh hn
¸ Cache thng đc chia thành mt s mc
¸ Cache có th đc tích hp trên chip vi x lý.
¸ Cache có th có hoc không.
Phm Quang Dng Bài ging Kintrúcmáytính 2.14
Chng 2: H thng máy tính
B nh ngoài (External memory)
¸ Chc nng và đc đim:
̈ Lu gi tài nguyên phn mm ca máy tính
̈ c kt ni vi h thng di dng các thit b
vào-ra
̈ Dung lng ln
̈ Tc đ chm
¸ Các loi b nh ngoài:
̈ B nh t: đa cng, đa mm
̈ B nh quang: đa CD, DVD
̈ B nh bán dn: Flash disk, memory card
Phm Quang Dng Bài ging Kintrúcmáytính 2.15
Chng 2: H thng máy tính
3. H thng vào-ra (Input/Output System)
¸ Chc nng: trao đi thông tin gia máy tính
vi th gii bên ngoài.
¸ Các thao tác c bn:
̈ Vào d liu (Input)
̈ Ra d liu (Output)
¸ Các thành phn chính:
̈ Các thit b ngoi vi (Peripheral Devices)
̈ Các môđun vào-ra (IO Modules)

Phm Quang Dng Bài ging Kintrúcmáytính 2.16
Chng 2: H thng máy tính
Cu trúc c bn ca h thng vào-ra
Cng
vào-
ra
Cng
vào-
ra
Cng
vào-
ra
Thit b
ngoi vi
Thit b
ngoi vi
Thit b
ngoi vi
Môđun
vào-ra
Ni ghép vi
CPU và b
nh chính
Phm Quang Dng Bài ging Kintrúcmáytính 2.17
Chng 2: H thng máy tính
Các thit b ngoi vi
¸ Chc nng: chuyn đi d liu gia bên trong
và bên ngoài máy tính.
¸ Các loi thit b ngoi vi (TBNV) c bn:
̈ Thit b vào: bàn phím, chut, máy quét …

̈ Thit b ra: màn hình, máy in …
̈ Thit b nh: các  đa …
̈ Thit b truyn thông: MODEM …
Phm Quang Dng Bài ging Kintrúcmáytính 2.18
Chng 2: H thng máy tính
Môđun vào-ra
¸ Chc nng: ni ghép các TBNV vi máy tính.
¸ Mi môđun vào-ra có mt hoc mt vài cng
vào-ra (I/O Port).
¸ Mi cng vào-ra đc đánh mt đa ch xác
đnh.
¸ Các TBNV đc kt ni và trao đi d liu vi
máy tính thông qua các cng vào-ra.
Phm Quang Dng Bài ging Kintrúcmáytính 2.19
Chng 2: H thng máy tính
2.2. Hot đng ca máy tính
1. Thc hin chng trình
¸ Là hot đng c bn ca máy tính
¸ Máy tính lp đi lp li hai bc:
̈ Nhn lnh
̈ Thc hin lnh
¸ Thc hin chng trình b dng nu thc hin
lnh b li hoc gp lnh dng.
} chu trình lnh
Phm Quang Dng Bài ging Kintrúcmáytính 2.20
Chng 2: H thng máy tính
Chu trình lnh
Bt đu
Nhn lnh
Thc hin lnh

Dng
Phm Quang Dng Bài ging Kintrúcmáytính 2.21
Chng 2: H thng máy tính
Quá trình nhn lnh
¸ Bt đu mi chu trình lnh, CPU nhn lnh t
b nh chính.
¸ B đm chng trình PC (Program Counter)
ca CPU gi đa ch ca lnh s đc nhn.
¸ CPU nhn lnh t ngn nh đc tr bi PC.
¸ Lnh đc np vào thanh ghi lnh IR
(Instruction Register)
¸ Sau khi lnh đc nhn vào, ni dung PC t
đng tng đ tr sang lnh k tip.
Phm Quang Dng Bài ging Kintrúcmáytính 2.22
Chng 2: H thng máy tính
Minh ha quá trình nhn lnh
Phm Quang Dng Bài ging Kintrúcmáytính 2.23
Chng 2: H thng máy tính
Quá trình thc hin lnh
¸ B x lý gii mã lnh đã đc nhn và phát tín
hiu điu khin thc hin thao tác mà lnh yêu
cu.
¸ Các kiu thao tác ca lnh:
̈ Trao đi d liu gia CPU và b nh chính
̈ Trao đi d liu gia CPU và môđun vào-ra
̈ X lý d liu: thc hin các phép toán s hc
hoc phép toán logic vi các d liu
̈ iu khin r nhánh
̈ Kt hp các thao tác trên
Phm Quang Dng Bài ging Kintrúcmáytính 2.24

Chng 2: H thng máy tính
2. Ngt (Interrupt)
¸ Khái nim: Ngt là c ch cho phép CPU tm
dng chng trình đang thc hin đ chuyn
sang thc hin mt chng trình khác, gi là
chng trình con phc v ngt.
¸ Các loi ngt:
̈ Ngt do li khi thc hin chng trình, ví d:
tràn s, chia cho 0 …
̈ Ngt do li phn cng, ví d: li b nh RAM
̈ Ngt do môđun vào-ra phát tín hiu ngt đn
CPU yêu cu trao đi d liu.
Phm Quang Dng Bài ging Kintrúcmáytính 2.25
Chng 2: H thng máy tính
Hot đng ngt
¸ Sau khi hoàn thành mt lnh, b x lý kim tra tín hiu
ngt.
¸ Nu không có ngt å b x lý nhn lnh tip theo ca
chng trình hin ti.
¸ Nu có tín hiu ngt:
̈ Tm dng chng trình đang thc hin
̈ Ct ng cnh (các thông tin liên quan đn chng trình b
ngt)
̈ Thit lp PC tr đn chng trình con phc v ngt
̈ Chuyn sang thc hin chng trình con phc v ngt
̈ Cui chng trình con phc v ngt, khôi phc ng cnh và
tip tc chng trình đang b tm dng.
Phm Quang Dng Bài ging Kintrúcmáytính 2.26
Chng 2: H thng máy tính
Hot đng ngt (tip)

lnh
lnh
lnh
lnh
lnh i
lnh i+1
RETURN
lnh
lnh
.
.
.
Chng trình
đang thc hin
.
.
.
lnh
Chng trình con
phc v ngt
lnh
lnh
Ngt  đây
Phm Quang Dng Bài ging Kintrúcmáytính 2.27
Chng 2: H thng máy tính
Chu trình lnh vi ngt
Bt đu
Nhn lnh
Thc hin
lnh

Dng
Kim tra
có ngt hay
không?
Chuyn đn
chng trình con
phc v ngt
YN
Phm Quang Dng Bài ging Kintrúcmáytính 2.28
Chng 2: H thng máy tính
X lý vi nhiu tín hiu yêu cu ngt
¸ X lý ngt tun t
̈ Khi mt ngt đang đc thc hin, các ngt khác s
b cm
̈ B x lý s b qua các ngt tip theo trong khi đang
x lý mt ngt
̈ Các ngt vn đang đi và đc kim tra sau khi ngt
đu tiên đc x lý xong
̈ Các ngt đc thc hin tun t
¸ X lý ngt u tiên
̈ Các ngt đc đnh ngha mc u tiên khác nhau
̈ Ngt có mc u tiên thp hn có th b ngt bi ngt
u tiên cao hn å xy ra ngt lng nhau
Phm Quang Dng Bài ging Kintrúcmáytính 2.29
Chng 2: H thng máy tính
3. Hot đng vào-ra
¸ Hot đng vào-ra: là hot đng trao đi d liu
gia TBNV vi bên trong máy tính.
¸ Các kiu hot đng vào-ra:
̈ CPU trao đi d liu vi môđun vào-ra

̈ Môđun vào-ra trao đi d liu trc tip vi b
nh chính.
Phm Quang Dng Bài ging Kintrúcmáytính 2.30
Chng 2: H thng máy tính
2.3. Liên kt h thng
1. Khái nim chung v bus
¸ Bus: tp hp các đng kt ni dùng đ vn
chuyn thông tin gia các thành phn ca máy
tính vi nhau.
¸  rng bus: là s đng dây ca bus có th
truyn các bit thông tin đng thi (ch dùng
cho bus đa ch và bus d liu)
¸ Phân loi cu trúc bus:
̈ Cu trúc đn bus
̈ Cu trúc đa bus
Phm Quang Dng Bài ging Kintrúcmáytính 2.31
Chng 2: H thng máy tính
Bus đng b và bus không đng b
¸ Bus đng b
̈ Bus có đng tín hiu Clock
̈ Các s kin trên bus đc xác đnh bi xung
nhp Clock.
¸ Bus không đng b
̈ Không có đng tín hiu Clock
̈ Kt thúc mt s kin này trên bus s kích hot
cho mt s kin tip theo.
Phm Quang Dng Bài ging Kintrúcmáytính 2.32
Chng 2: H thng máy tính
2. Cu trúc đn bus
Phm Quang Dng Bài ging Kintrúcmáytính 2.33

Chng 2: H thng máy tính
Bus đa ch
¸ Chc nng: vn chuyn đa ch đ xác đnh
ngn nh hay cng vào-ra.
¸  rng bus đa ch: xác đnh dung lng b
nh cc đi ca h thng.
Nu đ rng bus đa ch là N bit:
A
N-1
, A
N-2
, A
2
, A
1
, A
0
å dung lng b nh cc đi là 2
N
byte
(còn gi là không gian đa ch b nh)
¸ Ví d: B x lý Intel Pentium có bus đa ch 32
bit å không gian đa ch là 2
32
byte = 4 GB.
Phm Quang Dng Bài ging Kintrúcmáytính 2.34
Chng 2: H thng máy tính
Bus d liu
¸ Chc nng:
̈ vn chuyn lnh t b nh đn CPU

̈ vn chuyn d liu gia CPU, các môđun nh và
môđun vào-ra.
¸  rng bus d liu: xác đnh s bit d liu có
th đc trao đi đng thi.
̈ M bit: D
M-1
, D
M-2
, … D
2
, D
1
, D
0
̈ M thng là 8, 16, 32, 64, 128 bit
¸ Ví d: Các b x lý Pentium có bus d liu là
64 bit.
Phm Quang Dng Bài ging Kintrúcmáytính 2.35
Chng 2: H thng máy tính
Bus điu khin
¸ Chc nng: vn chuyn các tín hiu điu khin
¸ Các loi tín hiu điu khin:
̈ Các tín hiu phát ra t CPU đ điu khin môđun
nh và môđun vào-ra
̈ Các tín hiu t môđun nh hay môđun vào-ra
gi đn yêu cu CPU.
Phm Quang Dng Bài ging Kintrúcmáytính 2.36
Chng 2: H thng máy tính
Mt s tín hiu điu khin đin hình
¸ Các tín hiu phát ra t CPU đ điu khin đc-

ghi:
̈ Memory Read (MEMR): điu khin đc d liu t
mt ngn nh có đa ch xác đnh lên bus d liu
̈ Memory Write (MEMW): điu khin ghi d liu
đn mt ngn nh có đa ch xác đnh
̈ I/O Read (IOR): điu khin đc d liu t mt
cng vào-ra có đa ch xác đnh lên bus d liu
̈ I/O Write (IOW): điu khin ghi d liu có sn
trên bus d liu ra mt cng có đa ch xác đnh.
Phm Quang Dng Bài ging Kintrúcmáytính 2.37
Chng 2: H thng máy tính
Mt s tín hiu điu khin đin hình (tip)
¸ Các tín hiu điu khin ngt:
̈ Interrupt Request (INTR): tín hiu t b điu
khin vào-ra gi đn yêu cu ngt CPU đ trao
đi vào-ra. Tín hiu INTR có th b che.
̈ Interrupt Acknowledge (INTA): tín hiu phát ra
t CPU báo cho b điu khin vào-ra bit CPU
chp nhn ngt đ trao đi vào-ra.
̈ Non Markable Interrupt (NMI): tín hiu ngt
không che đc gi đn CPU.
̈ Reset: tín hiu t bên ngoài gi đn CPU và các
thành phn khác đ khi đng li máy tính.
Phm Quang Dng Bài ging Kintrúcmáytính 2.38
Chng 2: H thng máy tính
Mt s tín hiu điu khin đin hình (tip)
¸ Các tín hiu điu khin bus:
̈ Bus Request (BRQ): hay là Hold: tín hiu t
môđun điu khin vào-ra gi đn yêu cu CPU
chuyn nhng quyn s dng bus.

̈ Bus Grant (BGT) hay là Hold Acknowledge
(HLDA): tín hiu phát ra t CPU chp nhn
quyn s dng bus.
̈ Lock: tín hiu khóa không cho xin chuyn
nhng bus.
̈ Unlock: tín hiu m khóa cho xin chuyn nhng
bus.
Phm Quang Dng Bài ging Kintrúcmáytính 2.39
Chng 2: H thng máy tính
c đim ca cu trúc đn bus
¸ Bus h thng ch phc v đc mt yêu cu
trao đi d liu ti mt thi đim.
¸ Bus h thng phi có tc đ bng tc đ bus
ca môđun nhanh nht trong h thng.
¸ Bus h thng ph thuc vào cu trúc bus (các
tín hiu) ca b x lý å các môđun nh và các
môđun vào-ra cng ph thuc vào b x lý.
¸ Vì vy cn phi phân cp bus å đa bus
Phm Quang Dng Bài ging Kintrúcmáytính 2.40
Chng 2: H thng máy tính
3. Phân cp bus trong máy tính
¸ Phân cp bus cho các thành phn:
̈ Bus ca b x lý
̈ Bus ca b nh chính
̈ Các bus vào-ra
¸ Phân cp bus khác nhau v tc đ
¸ Bus b nh chính và các bus vào-ra không ph
thuc vào b x lý c th.
Phm Quang Dng Bài ging Kintrúcmáytính 2.41
Chng 2: H thng máy tính

Các bus đin hình trong PC
¸ Bus ca b x lý (Front Side Bus - FSB): có tc đ nhanh
nht.
¸ Bus ca b nh chính (ni ghép vi các môđun RAM).
¸ AGP bus (Accelerated Graphic Port) - Bus đ ha tng
tc: ni ghép card màn hình tng tc.
¸ PCI bus (Peripheral Component Interconnection): ni
ghép vi các TBNV có tc đ trao đi d liu nhanh.
¸ USB (Universal Serial Bus): Bus ni tip đa nng
¸ IDE (Integrated Driver Electronics): Bus kt ni vi  đa
cng hoc  đa CD, DVD.
Phm Quang Dng Bài ging Kintrúcmáytính 2.42
Chng 2: H thng máy tính
Phân cp bus
Phm Quang Dng Bài ging Kintrúcmáytính 2.43
Chng 2: H thng máy tính
Máy tính Pentium IV dùng Chipset 925
Phm Quang Dng Bài ging Kintrúcmáytính 2.44
Chng 2: H thng máy tính
4. Phân x bus
¸ Có nhiuhnmtmôđun điukhin bus, vd CPU và
DMA controller, nhng timtthi đimch duy nht1
mođun có thđiukhinbus å cnphânx bus.
¸ S phân x bus có th là tp trung hocphântán
̈ Phân x tp trung: có mtthitb phncng điu
khins truy nhpbus:
¸ cgilàBđiukhinbus(Bus Controller) hay
Trng tài bus (Arbiter)
¸ Có th nmtrênCPU hoctáchriêng
̈ Phân x phân tán: mimôđun có thđiukhinbus,

nhng có sđiukhinlogic trênttc các môđun.
Chng 3
BIU DIN D LIU VÀ
S HC MÁY TÍNH
Phm Quang Dng
B môn Khoa hc máy tính - Khoa CNTT
Trng i hc Nông nghip I – Hà Ni
website: www.hau1.edu.vn/it/pqdung
T: (04) 8766318 D: 0988.149.189
Phm Quang Dng Bài ging Kin trúc máy tính 3.2
Chng 3: Biu din d liu và s hc máy tính
Ni dung chng 3
3.1. Các h đm c bn
3.2. Mã hoá và lu tr d liu trong máy tính
3.3. Biu din s nguyên
3.4. Thc hin các phép toán s hc vi s nguyên
3.5. S du chm đng
3.6. Biu din ký t
Phm Quang Dng Bài ging Kin trúc máy tính 3.3
Chng 3: Biu din d liu và s hc máy tính
3.1. Các h đm c bn
¸ H thp phân (Decimal System)
å Con ngi s dng
¸ H nh phân (Binary System)
å Máy tính s dng
¸ H mi sáu (Hexadecimal System)
å Dùng đ vit gn s nh phân
Phm Quang Dng Bài ging Kin trúc máy tính 3.4
Chng 3: Biu din d liu và s hc máy tính
1. H thp phân

¸ C s 10
¸ 10 ch s: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
¸ Dùng n ch s thp phân có th biu din đc
10
n
giá tr khác nhau:
̈ 00 000 = 0
̈ 99 999 = 10
n
-1
Phm Quang Dng Bài ging Kin trúc máy tính 3.5
Chng 3: Biu din d liu và s hc máy tính
Ví d s thp phân
472.38 = 4x10
2
+ 7x10
1
+ 2x10
0
+ 3x10
-1
+ 8x10
-2
¸ Các ch s ca phn nguyên:
̈ 472 : 10 = 47 d 2
̈ 47 : 10 = 4 d 7
̈ 4 : 10 = 0 d 4
¸ Các ch s ca phn l:
̈ 0.38 x 10 = 3.8 phn nguyên = 3
̈ 0.8 x 10 = 8.0 phn nguyên = 8

Phm Quang Dng Bài ging Kin trúc máy tính 3.6
Chng 3: Biu din d liu và s hc máy tính
2. H nh phân
¸ C s 2
¸ 2 ch s nh phân: 0 và 1
¸ Ch s nh phân gi là bit (binary digit)
¸ Bit là đn v thông tin nh nht
¸ Dùng n bit có th biu din đc 2
n
giá tr khác
nhau:
̈ 00 000 = 0
̈ 11 111 = 2
n
-1
Phm Quang Dng Bài ging Kin trúc máy tính 3.7
Chng 3: Biu din d liu và s hc máy tính
Dng tng quát ca s nh phân
Có mt s nh phân A nh sau:
A = a
n
a
n-1
a
1
a
0
.a
-1
a

-m
Giá tr ca A đc tính nh sau:
A = a
n
2
n
+ a
n-1
2
n-1
+ + a
0
2
0
+ a
-1
2
-1
+ + a
-m
2
-m

−=
=
n
mi
i
i
aA 2

Phm Quang Dng Bài ging Kin trúc máy tính 3.8
Chng 3: Biu din d liu và s hc máy tính
Ví d s nh phân
1101001.1011
(2)
6 5 4 3 2 1 0 -1 -2 -3 -4
= 2
6
+ 2
5
+ 2
3
+ 2
0
+ 2
-1
+ 2
-3
+ 2
-4
= 64 + 32 + 8 + 1 + 0.5 + 0.125 + 0.0625
= 105.6875
(10)

×