You are on page 1of 21

7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq

http://www.ebook.edu.vn 1
CHNG 1: GII THIEU VI X LY


I. TONG QUAN VE HE THONG VI X LY
1. Qua trnh phat trien cua may vi tnh (tham khao [LQ-p.7 9])
- May vi tnh bao gom nhng may tnh dung bo vi x ly (ho Intel, Motorola, AMD) lam cot
loi, cac vi ieu khien (microcontroller) hay may vi tnh trong mot vi mach (one-chip
microcomputer).
2. ng dung cua vi x ly (tham khao [LQ-p.9])
3. S o khoi cua he vi x ly
S o khoi tieu bieu cua he vi x ly: (he thong vi x ly co kien truc 3-bus) [LQ-p.11]

Mot he vi x ly gom co cac thanh phan chnh sau:
- P (microprocessor hay con goi la CPU): oc ma lenh t bo nh (c ghi di dang cac
bit 0 va 1), sau o giai ma va thc thi lenh.
- Bo nh (Memory): cha cac chng trnh ieu khien hoat ong cua toan he va cac d lieu,
ket qua trung gian. (Co hai loai bo nh: RAM (Random Access Memory) la loai bo nh truy
xuat ngau nhien va ROM (Read-Only Memory) la loai bo nh ch oc).
P (Microprocessor): Vi x ly
CPU (Central Processing Unit): n v x ly trung tam
Address bus: Bus a ch
Data bus: Bus d lieu
Control bus: Bus ieu khien
RAM (Random Access Memory): Bo nh truy xuat ngau nhien
ROM (Read-Only Memory): Bo nh ch oc
I/O Interface: Khoi giao tiep nhap/xuat
Peripheral Devices: Thiet b ngoai vi



P
(CPU)
Data bus
Control bus
RAM ROM I/O Interface
Address bus
Input
Devices
Memory
Hnh 1.1
Output
Devices
Peripheral Devices
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 2
- Khoi giao tiep nhap/xuat (Input/Output - I/O): tao ra kha nang giao tiep gia he vi x ly vi
cac thiet b ngoai vi nh ban phm, chuot (thiet b nhap), man hnh, may in, loa (thiet b
xuat), cac o a (thiet b xuat/nhap)
- Bus: ba khoi chc nang tren lien he vi nhau thong qua mot tap cac ng day e truyen
thong tin goi la bus. Trong he thong vi x ly thng bao gom 3 loai bus: bus a ch, bus d
lieu va bus ieu khien.

Mi ngun thng tin vo CPU, nu khng l b nh th l thit b u vo.
Mi ch n ca thng tin t CPU, nu khng l b nh th l thit b u ra.
Tng kt li cc im quan trng t s 1.1:
1. H vi x l c 3 khi chnh:
B nh
CPU
Phi ghp (giao tip) vo/ra (I/O)
2. CPU c thng tin t b nh v ghi thng tin vo b nh
3. Cc thit b u vo a thng tin t bn ngoi vo h vi x l
4. Cc thit b u ra a thng tin t CPU n cc i tng bn ngoi
5. Thng tin khng chy trc tip t b nh n cc phi ghp vo/ra (I/O) v ngc li, trc
tin thng tin phi i qua CPU
C th thy rng vi x l ch trao i thng tin vi b nh v cc phi ghp vo/ra I/O. D h thng sau
ny c phc tp nh th no hoc chng trnh c di n u th vi x l ch lm nhng vic sau:
1. c t b nh
2. Ghi vo b nh
3. c t cc u vo
4. Ghi vo cc u ra
5. Thc hin cc lnh ni b nh lnh cng (ADD), lnh tr (SUB)

II. CAC LOAI BUS
1. Bus a ch
- Co chc nang chuyen tai cac thong tin ve a ch.
- Khi oc/ghi bo nh hay thiet b I/O, P se a ra cac bit a ch tren bus a ch e chon
chnh xac mot ngan nh (word) hay mot thiet b I/O cu the nao o se c giao tiep vi no.
- So lng a ch ma P co the quan ly phu thuoc vao so bit (so ng day) cua bus a ch
(16, 20, 24, 32 bit).
V du: Mot P co so ng day cua bus a ch la N = 16
co kha nang quan ly: 2
N
= 2
16
= 2
6
.2
10
= 64.2
10
= 64 K = 65356 a ch.
- Bus a ch la loai bus mot chieu (xuat phat t P).
em bus a ch [LQ p.60+61]
Do tat ca cac thiet b ngoai vi va bo nh eu c noi vi bus a ch nen ve mat ien co the
vt qua tnh chu tai (fan-out) cua vi x ly. Trong trng hp cac mach noi vao bus a ch
tieu thu dong ien ln hn kha nang chu tai cua vi x ly th he thong se khong hoat ong
hay hoat ong khong on nh. e giai quyet van e nay ta s dung cac bo em trung gian
c goi la bo em a ch.
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 3
V du: em a ch cho CPU co bus a ch 16-bit:

Hnh 1.2
2. Bus d lieu
- Co chc nang chuyen tai cac thong tin ve d lieu en/t P.
- So lng ng day cua bus nay quyet nh so bit d lieu ma P co kha nang x ly cung
mot luc (8, 16, 32, 64 bit).
- Bus d lieu la loai bus hai chieu.
Tuy nhien tai mot thi iem nhat nh th d lieu ch c truyen theo mot hng duy nhat.
Hnh 1.3 D liu di chuyn 2 chiu trn bus d liu
Lu y: Hoat ong cua bus a ch va bus d lieu hoan toan oc lap vi nhau (hnh 1.4).


Hnh 1.4
em bus d lieu [LQ p.62]
Tng t nh bus a ch, bus d lieu cung can c em e tang fan-out khi can thiet. Lu
y la can dung ky thuat em 2 chieu (hnh 1.5) (IC 74LS245).



CPU
B nh hoc
phi ghp
vo/ra (I/O)
Bus d liu


CPU
B nh hoc
phi ghp
vo/ra (I/O)
Bus d liu
a) c - Read
b) Ghi - Write
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 4
Hnh 1.5
K thut m 2 chiu s dng
thm mt tn hiu iu khin, tn
hiu ny s quy nh chiu d liu
s c m.
A
B
BD0 i vo
h thng
D0 n CPU
iu khin hng

3. Bus ieu khien
- Gom nhieu ng day tn hieu khac nhau ( RD , WR ), moi tn hieu ieu khien co mot
chieu nhat nh. Khi hoat ong, P co the a tn hieu ieu khien en cac khoi khac nhau
trong he, ong thi no cung co the nhan cac tn hieu t cac khoi khac e phoi hp hoat ong
cua toan he.
Lu y: Bus ieu khien khoi I/O ve dang 2 chieu e ch tnh 2 chieu cua ca nhom tn hieu,
ch khong phai cua moi tn hieu.
- Co 6 loai truyen thong tieu bieu ma bus ieu khien phai xac inh bang tn hieu ien:
[LQ p.63]
1. c t b nh
2. Ghi vo b nh
3. c t phi ghp u vo (Input)
4. Ghi vo phi ghp u ra (Output)
5. Nhn bit yu cu ngt (Interrupt acknowledge)
6. Nhn bit yu cu treo (Hold acknowledge, phc v DMA)

Giai thch ve truyen thong trong cau truc 3-bus da vao s o khoi hnh 1.1: oc va ghi.

III. VI X LY (P MICROPROCESSOR)
S o khoi cua mot P c cho tren hnh 1.6.
Co ba khoi chc nang chnh: khoi thc thi (Execution Unit), khoi ieu khien tuan t
(Sequencer) va khoi giao tiep bus (Bus Interface).
- Bo ieu khien tuan t (Sequencer): nhan lenh t bo nh, sau o giai ma lenh va truyen
lenh a giai ma en khoi thc thi.
+ Bo em chng trnh: la mot thanh ghi lu gi a ch cua lenh ke tiep se c thc thi.

Moi khi mot lenh c thc thi, bo em chng trnh se c tang len 1 e ch ra a ch
cua lenh ke tiep se c thc thi. Noi dung cua bo em chng trnh c at len bus a
ch e tm va nhan lenh mong muon. Nh vay, P thc hien cac lenh cua chng trnh mot
cach tuan t, tr khi gap cac lenh chuyen ieu khien (lenh nhay, goi chng trnh con )
lam thay oi noi dung PC. Trong mot so vi x ly, bo em chng trnh con c goi la con
tro lenh IP (Instruction Pointer).

+ Bo giai ma lenh: thong dch (dien dch) cac lenh c nhan vao P.
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 5
Co the xem bo giai ma lenh nh mot t ien lu tr ngha cua moi lenh va cac bc ma
P can thc hien oi vi moi lenh c nhan vao. Giong nh t ien neu co cang nhieu
trang th co the nh ngha c nhieu t hn, mot P co the hieu cang nhieu lenh hn neu
co bo giai ma lenh cang ln.

- Thanh ghi lenh IR: lu gi ma nh phan cua lenh ang c thc thi.

- Khoi thc thi (Execution Unit): thc thi va ghi ket qua cau lenh. Cac toan hang (operand)
lien quan co mat cac thanh ghi (registers) hoac co t bus noi (internal bus).
+ ALU (Arithmetic Logic Unit): la mot mach ien t co kha nang thc hien cac phep
toan so hoc (+, -, *, / ) va logic (AND, OR, NOT, XOR).
+ Thanh ghi (Register): la mot bo nh cc nhanh, co dung lng han che nam ben trong
P. Cac thanh ghi thng c dung e lu tr cac thong tin tam thi. Moi thanh ghi co
mot a ch e truy xuat ti no. Cac thanh ghi c noi vi nhau hoac en cac phan t
Execution Unit: Khoi thc thi
Control Unit: Khoi ieu khien
Registers: Cac thanh ghi
ALU (Arithmetic & Logic Unit): Khoi logic - so hoc
Sequencer: Bo ieu khien tuan t
Instruction Register: Thanh ghi lenh
Instruction Decoder: Bo giai ma lenh
Program Counter: Bo em chng trnh
Internal bus: Bus noi
Bus interface: Giao tiep bus
Data bus driver: Bo ieu khien bus d lieu
Control bus driver: Bo ieu khien bus ieu khien
Address bus driver: Bo ieu khien bus a ch
Address bus Data bus
Control bus
Registers
(data, address)
ALU
Address bus
driver
Data bus
driver
Control bus
driver
Program Counter
Internal bus
Bus
Interface
Execution Unit Sequencer
Hnh 1.6
Control
Unit
Instruction Decoder
Instruction Register
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 6
khac cua P hay noi vi bus ngoai nh bus noi. o rong cua cac thanh ghi co the la 8-
bit, 16-bit, 32-bit hay 64-bit tuy thuoc vao loai P.

Thong tin co the la 2 gia tr can c x ly hay a ch cha gia tr can c x ly nhan t
bo nh (hay I/O).
P co cang nhieu thanh ghi va o rong cang ln th cang tot v luc nay chng trnh
khong phai thc hien nhieu phep truyen thong tin gia P va bo nh do co the truy xuat
trc tiep t thanh ghi, t o lam giam thi gian truy xuat cung nh o dai lenh.

+ Khoi ieu khien: tao ra cac tn hieu ieu khien hoat ong cua cac bo phan ben trong
va ben ngoai P (tuy theo ma lenh).
- Giao tiep bus (Bus Interface): gom ba bo ieu khien bus e giao tiep vi bus ben ngoai
tng ng: bus d lieu, bus ieu khien va bus a ch.

Viec tm nap lenh t bo nh la mot trong cac thao tac c ban nhat ma P thc hien, gom cac
bc nh sau:
- Noi dung cua PC c at len bus a ch.
- Tn hieu ieu khien READ c xac lap (chuyen sang trang thai tch cc).
- Ma lenh c oc t bo nh va a len bus d lieu.
- Ma lenh c chot vao thanh ghi lenh IR ben trong.
- PC c tang len e chuan b tm nap lenh ke t bo nh.
Hnh 1.7 minh hoa luong thong tin cho viec tm nap lenh.



Hnh 1.7

IV. BO NH (MEMORY)
Nhac lai cac n v bit, nibble, byte, word [HTM p.29]
1 nibble = 4 bit
1 byte = 8 bit
Word la mot nhom gom nhieu byte. Theo qui c 1 word = 2 byte va 1 word dai = 4
byte (theo the he vi x ly 16-bit, 32-bit )
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 7
1. Phan loai
Bo nh thng c chia lam hai loai: bo nh c ban (hay bo nh chnh main memory) va
bo nh lu tr (storage memory).
- Bo nh chnh: ROM va RAM.
- Bo nh lu tr: bang t, a mem, a cng
Thong thng bo nh lu tr c xem nh la thiet b I/O.
a. Bo nh ch oc ROM (Read-Only Memory)
- La bo nh ch oc, khong the sa oi thong tin trong cac hoat ong thong thng.
- Thong tin ghi trong ROM se khong b mat i khi mat nguon cung cap.
- ROM c ghi bang thiet b chuyen dung.
- ROM thng c dung e cha cac chng trnh va d lieu co nh (chng trnh khi
ong, d lieu tra bang )
- Cac loai ROM:
+ ROM: thong tin c ghi luc che tao.
+ PROM (Programable ROM): la ROM trang, ch cho phep ghi thong tin mot lan duy
nhat.
+ EPROM (Erasable ROM): co the ghi va xoa thong tin nhieu lan. Loai nay c xoa
bang cach roi tia cc tm vao ca so thuy tinh tren be mat.
+ EEPROM (Electrically EPROM): con goi la ROM ien, co the ghi va xoa thong tin
bang xung ien.
+ Flash ROM: tng t EEPROM.
b. Bo nh truy xuat ngau nhien RAM (Random Access Memory)
- Cho phep oc/ghi thong tin bat ky luc nao trong qua trnh lam viec ma khong can thiet
b ac biet.
- Thong tin trong RAM se b mat khi mat nguon cung cap.
- Co hai loai RAM chnh:
+ RAM ong DRAM (Dynamic RAM): co cau tao t cac transistor MOSFET va tu
ien (1 phan t nh), lu tr thong tin bang ien tch trong tu nen thong tin co the
mat i (ro r het) neu khong co bien phap duy tr thch hp. Do o can co qua trnh
lam ti (refresh) nh k e phuc hoi noi dung cua cac o nh trc khi no mat i (ro
r het). DRAM co the tch hp vi dung lng ln.
+ RAM tnh SRAM (Static RAM): cau tao t nhng Flipflop (FF) (1 phan t nh),
moi FF lu tr mot bit thong tin nen SRAM khong can qua trnh lam ti e duy tr
noi dung. Tuy nhien, no kho tch hp vi dung lng ln.
2. Cau truc ben trong tieu bieu cua bo nh
- Bo nh gom cac phan t nh hay o nh (memory cell) c to chc di dang ma tran.
Moi o nh cha mot bit thong tin.
- Mang nh c phan chia thanh mot chuoi cac ngan nh hay t nh (word).
- Moi ngan nh eu co mot a ch duy nhat.
- Mot ngan nh co the co 4-bit, 8-bit, 16-bit
- Ky hieu: so ngan nh x o rong moi ngan nh
V du: bo nh 1024 x 8 bao gom 2
10
ngan nh, moi ngan nh co 8-bit.

- Cau truc ben trong tieu bieu cua bo nh:
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 8


- Cac tn hieu tieu bieu tren mot chip nh:
+ CS(Chip Select): tn hieu chon chip (cho phep chip).
+ OE (Output Enable): tn hieu cho phep xuat d lieu (nhan xung kch RD t P).
+ WE (Write Enable): tn hieu cho phep ghi d lieu (nhan xung kch WR t P).
+ Address: cac tn hieu a ch (t bus a ch) e chon ngan nh can thao tac.
+ Data: cac tn hieu d lieu oc ra (data output) hay ghi vao (data input), c noi vi
bus d lieu.

3. Truy xuat bo nh
* Cac quy c tren gian o thi gian: Hnh 1.9
Hnh 1.8



Memory
array
Write
Row
address
decoder


Column
address
decoder

EN
Three
State
driver

Data
Output
Data
Input
Data
OE ) RD (
WE ) WR (
CS
Address
Memory cell
Memory array: Mang o nh
Row address decoder: Bo giai ma a ch hang
Column address decoder: Bo giai ma a ch cot
Memory cell: O nh
Three state driver: Bo ieu khien ngo ra 3 trang thai
Data Output: D lieu ra
Data Input: D lieu vao
Address: a ch
Write: Ghi
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 9



7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 10
a. Truy xuat ROM
Gii thieu EPROM 2764:
ay la IC nh 28 chan 8K (8192 x 8) vi 13 ng a ch va 8 ng d lieu. Chu y
rang chan /PGM khong c ieu khien bi vi x ly, ch dung cho bo nap d lieu vao
ROM. ien ap VPP ch s dung khi nap ROM, con ien ap VCC = 5V la ien ap hoat
ong cua ROM.







Quy trnh oc ROM:
1. Xac nh a ch cua ngan nh can truy xuat. CPU se
a a ch nay len bus a ch en ROM.
2. Kch hoat tn hieu chon chip cho phep d lieu c xuat
ra bus d lieu.
3. CPU i 1 khoang thi gian ngan goi la thi gian truy
cap e vi mach nh giai ma a ch va xuat d lieu ra
ng d lieu. CPU xuat xung nhp nap d lieu vao thanh
ghi ben trong.
4. Tn hieu chon chip c at mc khong tch cc va
xoa d lieu t ROM vao CPU.


Hnh 1.10
b. Truy xuat RAM
Gii thieu RAM 6264
ay la IC nh cho phep oc ghi tuy y, 28 chan 8K (8192 x 8) vi 13 ng a ch va 8
ng d lieu.
Quy trnh oc RAM: tng t nh oc d lieu t ROM.


A0 A12 ng a ch
D0 D7 ng d lieu
/CE Chon chip
/OE Cho phep xuat
/PGM Lap trnh
A0
10
A1
9
A2
8
A3
7
A4
6
A5
5
A6
4
A7
3
A8
25
A9
24
A10
21
A11
23
A12
2
CE
20
OE
22
PGM
27
VPP
1
D0
11
D1
12
D2
13
D3
15
D4
16
D5
17
D6
18
D7
19
2764
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 11

















Hnh 1.11

Hnh 1.12
Quy trnh ghi RAM:
1. Cc ng a ch c kt ni vi RAM xc nh ngn nh no trong RAM s c kt ni.
2. D liu cn ghi vo RAM c xut n cc ng d liu vo ca RAM.
3. H thng phi i mt khong thi gian nh. Trong khong thi gian ny RAM s gii m a ch
v chn ngn nh mang a ch nhn c. Khong thi gian ny gi l thi gian ghi vo RAM.
4. ng dn R/W s c t mc logic tng ng vi thao tc ghi vo RAM. Tn hiu ny cho
php d liu c ghi vo RAM
5. Ch rng y ta ni v cc ng dn d liu ra t RAM v cc ng dn d liu vo RAM.
Trong thc t v rng trong mt khong khc nht nh th ta ch thc hin mt thao tc l c
hoc ghi, nn c hai loi ng dn trn c thc hin bng mt ng dn hai chiu chung.
A0 A12 ng a ch
D0 D7 ng d lieu
/CE Chon chip
/OE Cho phep xuat
/WE Cho phep ghi
A0
10
A1
9
A2
8
A3
7
A4
6
A5
5
A6
4
A7
3
A8
25
A9
24
A10
21
A11
23
A12
2
CE
20
CS
26
WE
27
OE
22
D0
11
D1
12
D2
13
D3
15
D4
16
D5
17
D6
18
D7
19
6264
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 12

Hnh 1.13
4. Giai ma a ch cho bo nh
Trong mot he thong vi x ly, bo nh co the c tao thanh t nhieu chip nh. Cac chip nay
eu dung chung bus d lieu e trao oi vi P. Do o e tranh xung ot tren bus, can phai
giai ma a ch e tai moi thi iem ch cho phep mot chip co the ket noi vi bus d lieu e
trao oi vi P.
Ket noi mach giai ma a ch tong quat:

Hnh 1.14
Quan he gia giai ma a ch va bang bo nh:
Hnh 1.15
V du: P co 16 ng a ch (A
15
A
0
) co the quan ly 2
16
= 2
6
.2
10
= 64 K = 65536
a ch:
+ 3 bit cao (A
15
A
13
) c a en bo giai ma ( ay dung IC 74LS138).
+ 13 bit thap (A
12
A
0
) c a en cac chip nh.
co 2
3
= 8 vung, moi vung co 2
13
= 2
3
.2
10
= 8 K = 8192 a ch.
Cac bit a ch
m bit
en bo
giai ma
a ch
n bit
en cac
chip nh
MSB LSB


2
n

a ch
2
m

vung
Bang bo nh



P

Mach giai ma
a ch

Bus a ch
en cac chan a ch
cua cac chip nh
CS1
CSn
en cac chan
chon chip cua
cac chip nh
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 13

V. NHAP/XUAT (I/O INPUT/OUTPUT)
1. Phan loai
- Theo chieu trao oi d lieu:
+ Thiet b xuat
+ Thiet b nhap
+ Thiet b nhap/xuat
- Theo dang truyen d lieu:
+ Noi tiep: ong bo va bat ong bo (them bit start, stop)
+ Song song
2. Cau truc tieu bieu cua port I/O
- Cac port nhap (I) va xuat (O) giao tiep P vi cac thiet b ngoai khong the noi trc tiep
en cac bus.
- Ve c ban, mot port xuat ch la mot thanh ghi (hnh 1.17). Khi P ghi ra a ch c gan
cho port, port se cha d lieu co t bus d lieu. Nh vay no cung cap ngo ra co chot cho cac
thiet b ngoai.
- Mot port nhap thong thng la mot bo em 3 trang thai (hnh 1.18). Khi P oc vao t a
ch c gan cho port, bo em 3 trang thai se a d lieu t cac ngo nhap ngoai vao bus d
lieu roi P oc d lieu t bus.
Hnh 1.17

A14
A13
74LS138
A
B
C
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
G1
G2A
G2B
+5V
0
A15
0000 1FFF
2000 3FFF
4000 5FFF
6000 7FFF
8000 9FFF
A000 BFFF
C000 DFFF
E000 FFFF
a en
cac chan
chon chip
cua cac
chip nh
Hnh 1.16
Q outputs
(Register)
D inputs
EN

P
STB
Bus d lieu


Luong d lieu
Cac tn hieu xuat
en cac TB ngoai
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 14
Hnh 1.18
3. Giai ma a ch cho I/O
a. I/O trc tiep (nh a ch I/O theo kieu trc tiep)
- Cac a ch thiet b I/O tach khoi cac a ch bo nh.
- P cung cap hai ng ieu khien oc va ghi rieng cho I/O: IOR va IOW.
- Giai ma a ch cho I/O tng t nh giai ma a ch cho bo nh.
Lu y: Mot so thiet b I/O co the khong co cac tn hieu a ch.
V du: Giai ma a ch cho I/O:
Hnh 1.20
Address bus


P
MEMR
IOR
IOW
MEMW
en bo nh
en I/O
Hnh 1.19
I/O
0

Bo em
d lieu
0 CS
IOW
IOR
I/O
1
Bo em
d lieu
1 CS
IOW
IOR
I/O
n

Bo em
d lieu
n CS
IOW
IOR




P
Bus d lieu
Bus ieu khien
Mach giai ma
chon thiet b
Bus a ch
Inputs
(3-state buffer)
Outputs
EN

P
STB
Bus d lieu


Luong d lieu
Cac tn hieu nhap
t cac TB ngoai
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 15
Khi P can trao oi d lieu vi mot thiet b I/O nao o, no phat tn hieu a ch cua thiet
b len bus a ch. Mot so trong cac tn hieu a ch nay c at vao mach giai ma chon
thiet b. Mach giai ma nay se kch hoat ch mot tn hieu chon chip tng ng vi thiet b
c chon, do o ch co bo em d lieu cua thiet b nay c noi vi bus d lieu e trao
oi vi P. Trong qua trnh nay, tn hieu ieu khien oc hay ghi cung c phat tren bus
ieu khien e xac nh thao tac tng ng.
b. I/O c anh xa nh bo nh
- P xem cac thiet b I/O nh cac v tr bo nh. Cac v tr nay khong c trung vi cac
a ch co trong cac thiet b nh nh ROM va RAM.
- P khong co cac tn hieu ieu khien oc va ghi rieng cho I/O.

Sau ay la hai v du minh hoa viec tao ra cac tn hieu oc/ghi I/O t cac ng ieu khien
oc/ghi bo nh:

V du 1: Gia s P co 16 ng a ch, tn hieu oc/ghi I/O tch cc mc 0:

Trong v du nay ng a ch A15 c dung nh la bit chon oc/ghi bo nh hay I/O.
Neu A15 = 1, ngo ra IOR va IOW luon la mc 1 nen thao tac c chon la oc/ghi bo
nh. Ngc lai khi A15 = 0, ngo ra IOR hay IOW se la mc 0 khi co tn hieu RD hay
WR tng ng t bo x ly.
V du 2: Mc tch cc cua cac tn hieu oc/ghi I/O la mc 1:

CSx : tn hieu chon thiet b I/O t mach giai ma a ch.
3. Cac phng phap ieu khien I/O
Co 3 phng phap c ban: hoi vong hay kiem tra tuan t (polling), ieu khien ngat (interrupt)
va DMA (Direct Access Memory). Ngoai ra cung co the ket hp cac phng phap tren.

) RD (
) WR (
MEMR
IOR
IOW
MEMW
A15
0: bo nh
1: I/O
P
Tch cc
mc 0

Hnh 1.21
RD
WR
X
CS
IOR
IOW
Hnh 1.22
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 16
a. Polling (Hoi vong)
- P lan lt kiem tra tng I/O xem co yeu cau dch vu khong thong qua cac c (flag).
- Tat ca cac viec chuyen d lieu en va t cac thiet b I/O c thc hien bang chng
trnh polling la c che ong bo (synchronous) vi viec thc thi chng trnh.
- Ky thuat polling co cac han che:
+ Mat thi gian cua P (do kiem tra trang thai cua tat ca cac ngoai vi thng xuyen).
+ Cham trong cac he thong thi gian thc (real-time), khong thoa man cho cac thiet
b yeu cau toc o ap ng nhanh.
+ Ngi s dung co the gap kho khan trong trong van e lap trnh v phai luon canh
chng I/O.
- Lu o hoat ong cua polling:


P
I/O
0
I/O
1
I/O
n

Memory
Bus
?
? ?
Hnh 1.23
I/O
0
yeu cau
dch vu?
Trnh dch vu cho I/O
0

I/O
1
yeu cau
dch vu?
Trnh dch vu cho I/O
1

I/O
n
yeu cau
dch vu?
Trnh dch vu cho I/O
n


Y
N
Y
N
Y
N
Hnh 1.24
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 17
b. Interrupt (Ngat)

Ngt l mt qu trnh x l thng tin ca vi x l tng t nh con ngi x l thng tin. V d khi
bn ang ni chuyn vi mt ngi. Ngi th ba n v gi tn bn. y l du hiu rng c mt
ngi khc yu cu s quan tm ca bn. Ngi th ba ny c th c coi nh l mt yu cu
ngt bn ngoi (external interrupt request).
Ngi ny yu cu bn ngt cuc ni chuyn ca mnh. Bn c th x l yu cu ny bng cc cch
nh sau:
1. Bn c th b qua yu cu v coi nh ngi th ba l khng tn ti.
2. Bn c th dng mt cch thch hp i thoi ang din ra, ri bt u quan tm n ngi
th ba. Lc ny bn bt u ni chuyn vi ngi ny ch khng ni chuyn vi ngi u
tin na.
3. Bn tc khc dng ni chuyn vi ngi th nht v bt u ni chuyn ngay vi ngi th
ba.
Khi bn ni chuyn xong vi ngi th ba, bn mun quay li tip tc cuc i thoi vi ngi th
nht ti im m yu cu ngt xut hin.
Qu trnh trn din ra tng t vi k thut ngt trong h thng vi x l.
Lc ny CPU ng vai tr ca bn. Ngi th nht l chng trnh chnh ang c thc hin.
Ngi th ba l mt yu cu ngt bn ngoi. y l mt thit b phn cng bn ngoi yu cu CPU
quan tm n n. CPU phi x l yu cu ngt ny bng cch no . C nhiu cch x l ngt, cc
cch c nu v d trn l cc cch x l thng dng nht.

V d nh ta c mt cm bin bo chy. Thng thng khi khng c la th cm bin xut ra s 1,
lc c la th cm bin xut s 0 bo cho vi x l kch hot chng trnh bo ng. Vi x l c th
lun lun c trng thi ca cm bin bng lnh IN t cng ni vi cm bin. Sau vi x l kim
tra trng thi cm bin v gi chng trnh bo ng khi trng thi cm bin l 0. Tuy vy y l
mt thao tc lp i lp li nhiu ln mt cch khng hiu qu, v phn ln thi gian cm bin khng
bo chy. Mt cch x l hiu qu hn l a tn hiu ca cm bin vo chn yu cu ngt ca vi
x l. Ch khi chn yu cu ngt ny c kch hot th vi x l mi gi chng trnh bo ng.
[LQ p.100]

- Ngat la c che bat ong bo (asynchronous) vi viec thc thi chng trnh. No c
dung vi muc ch la tranh toi a hoac loai bo han c che hoi vong e kiem tra trang
thai thiet b.
Hnh 1.25

P
I/O
0
I/O
1
I/O
n

Memory
Bus
INT
0 INT
1
INT
n
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 18
- Moi thiet b I/O hay bo ieu khien cua no c noi vi mot ng interrupt.
- Khi I/O co yeu cau trao oi d lieu no se phat ra mot tn hieu bao cho P. Tn hieu o
c goi la tn hieu yeu cau ngat IRQ (interrupt request). Khi P nhan c yeu cau
ngat o, neu ong y trao oi thong tin vi I/O, no se tra li vi bo ieu khien nhap/xuat
bang tn hieu chap nhan ngat INTA (interrupt acknownledge) ong thi ngng chng
trnh ang lam va goi chng trnh phuc vu ngat cho I/O. Sau khi phuc vu xong, no quay
ve tiep tuc thc hien chng trnh ang lam tai ni b ngat.
- Khi co nhieu I/O yeu cau ngat ong thi can co mach ieu khien u tien ngat.
- Lu o hoat ong cua ngat:

- Thu tuc interrupt ve nguyen tac tng t vi goi chng trnh con, ngoai tr:
1. Interrupt c khi ong t 1 tn hieu ben trong hoac ben ngoai thay v t nhng
thc thi lenh.
2. a ch cua chng trnh phuc vu interrupt c xac nh bang thu tuc hardware
thay v t vung a ch cua lenh. (bang vector ngat c xac nh trc cua tng
loai vi x ly).
3. Khi ap ng 1 interrupt can lu tat ca cac thong tin nh ngha trang thai hien
hanh cua he thong thay v ch lu tr bo em chng trnh PC.

Nh vy thc hin thao tc ngt vi x l cn c mt phn cng bo ngt v mt phn mm
gi l chng trnh phc v ngt (interrupt service routines). Phn cng bo ngt to tn hiu
in thng bo cho vi x l yu cu ngt. Phn mm phc v ngt thc hin thao tc cn thit nh
l cu tr li cho yu cu ngt.

c. DMA (Direct Memory Access)
- Thong thng khi chng trnh muon chuyen mot byte d lieu t ngoai vi vao bo nh,
no phai thc hien thong qua P gom mot thao tac nhap va sau o la thao tac ghi bo nh.
Hoac ngc lai, khi muon a thong tin t bo nh ra ngoai vi, P phai lam thao tac oc
bo nh roi xuat ra ngoai vi. Trong trng hp nay, chc nang cua P ch la chuyen d
lieu ma khong x ly g ca. ieu nay lap i lap lai nhieu lan se lam lang ph viec s dung
P v chc nang chu yeu cua P la x ly d lieu.
Yeu cau
ngat?
Thc thi lenh
Y
N
Chng trnh phuc
vu ngat (ISR)
Lenh ke
Hnh 1.26
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 19

- DMA la c che ieu khien cho phep truy xuat bo nh trc tiep, khong thong qua P.
- C che DMA c thc hien bi mot mach phan cng c goi la bo ieu khien DMA
(DMAC - DMA Controller).
- DMA giup rut ngan thi gian truy xuat gia bo nh va I/O. C che nay rat tien dung
cho cac thiet b ngoai vi co khoi lng thong tin trao oi ln (trao oi mot khoi d lieu
ln trong mot thi gian ngan) v du nh card man hnh, a cng trong may tnh.
- Qua trnh DMA bat au khi co tn hieu yeu cau DMA (DRQ) t thiet b I/O en
DMAC. DMAC tiep tuc gi tn hieu yeu cau P nhng bus (HRQ) en chan HOLD cua
P e no thc thi viec trao oi d lieu trc tiep gia bo nh va I/O. Khi P ong y
nhng bus, no tra li cho DMAC bang tn hieu chap nhan nhng bus (HLDA) ong
thi tam ngng moi hoat ong, t tach ra khoi he thong. en lt DMAC gi tn hieu
thong bao cho phep trao oi d lieu theo kieu DMA (DACK) en thiet b I/O. Khi
DMAC chuyen het d lieu, no tra quyen ieu khien cac bus lai cho P, qua trnh DMA
ket thuc.
- Trong thc te, viec s dung c che DMA kha phc tap va qua nhieu cong oan v
DMAC khong thi hanh bat k lenh nao, chng trnh nao (khong thc thi phan mem) e
chuyen d lieu ma no thc hien hoan toan bang phan cng nen can phai co trc ay u
cac thong tin ve v tr d lieu cua I/O, v tr bo nh cha d lieu va so lng byte can
chuyen e P nap cho DMAC. Ngoai ra, DMAC con phai co kha nang tao ra cac tn hieu
ieu khien can thiet giong nh cac tn hieu cua P.

VI. VI X LY VA VI IEU KHIEN
- Ve cau truc phan cng:
+ Vi x ly: la mot CPU n chip (nh trong s o khoi tren).
+ Vi ieu khien: gom CPU va mot so thanh phan khac nh bo nh ROM, RAM,
cac port I/O va mot so mach chc nang nh mach nh thi (timer), mach ieu khien
ngat (interrupt controller), mach giao tiep noi tiep (serial interface)
- Ve ng dung:
+ Vi x ly: thng dung lam CPU trong cac may vi tnh.
+ Vi ieu khien: thng dung trong cac thiet ke nho, hng ieu khien.
- ac trng ve tap lenh:
+ Vi x ly: manh ve cac kieu nh a ch, so lenh nhieu.
+ Vi ieu khien: co the thao tac vi tng bit n (nh hng bit).
Hnh 1.27

P
I/O
0
I/O
n

Memory
Bus
HOLD
DMAC
HLDA
HRQ HACK
DACK
0
DACK
n
DRQ
0
DRQ
n

7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 20




CAU HOI VA BAI TAP CHNG 1

1.1. Hay neu cac thanh phan c ban trong mot he vi x ly? Chc nang cua tng thanh phan?
1.2. Vi x ly la g? Cac thanh phan c ban trong mot chip vi x ly?
1.3. Phan biet bo nh ROM va RAM?
1.4. Phan biet bo nh DRAM va SRAM?
1.5. Cau truc tieu bieu cua mot port nhap/xuat?
1.6. So sanh cac phng phap ieu khien I/O?
1.7. Cac thiet b/linh kien 3 trang thai la g? Tai sao chung lai can thiet trong cac he thong
dung bus?
1.8. Can bao nhieu byte e lam thanh mot word (t) 32 bit?
1.9. Co bao nhieu v tr bo nh co the c nh a ch bi mot P co 20 ng a ch?
1.10. Neu mot chip bo nh co kch thc la1024 x 4 bit th phai can bao nhieu chip nh vay e
tao 2K (2048) byte bo nh?
1.11. Neu mot chip bo nh co kch thc la 256 x 1 bit th phai can bao nhieu chip nh vay e
tao 1 KB bo nh?
1.12. Can phai co bao nhieu ng a ch tren mot chip bo nh co kch thc 2K x 8 bit?
1.13. Mot chip nh 4 KB co a ch bat au la 2000H trong bang a ch bo nh. Xac nh a
ch cuoi cung cua chip va so trang trong chip (gia s chon kch thc mot trang la 256 byte)?
7ol qlooq 79 7 1[ Chacoq 1: Qlcl thlea ol aa lq
http://www.ebook.edu.vn 21
1.14. Trong bo giai ma 4 sang 16 hnh a, ngo ra nao xuong mc thap neu cac ngo vao cua bo
giai ma co gia tr nh hnh ve?
1.15. Trong hnh b, hay tm ngo ra nao xuong mc thap neu cac gia tr vao (bao gom cac
ng cho phep) cua bo giai ma 3 sang 8 (74LS138) la:

A7 A6 A5 A4 A3 A2 A1 A0
1 1 1 1 0 1 1 1


0
1
0
4-to-16 decoder
74LS154
LSB
MSB
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
A
B
C
D
G1
G2
1
0
Hnh a)
A2
A5
A7
A6
A0
A4
3-to-8 decoder
74LS138
A
B
C
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
G1
G2A
G2B
A1
A3
Hnh b)

You might also like