SlideShare a Scribd company logo
1 of 72
1
GIỚI THIỆU TỔNG QUAN
VI XỬ LÝ – VI ĐIỀU KHIỂN
CHƯƠNG 1
2
NỘI DUNG
VI xử lý và Hệ thống vi xử lý1
Vi điều khiển2
Ôn tập hệ thống số học3
3
VI XỬ LÝ ỨNG DỤNG VÀO ĐÂU ?
4
VI XỬ LÝ LÀ GÌ ?
Sự kết hợp của 2 kỹ thuật:
Máy tính kỹ thuật số và
Các mạch vi điện tử.
5
LỊCH SỬ PHÁT TRIỂN VI XỬ LÝ
Lịch sử phát triển gắn liền với sự phát triển của
các vi mạch điện tử.
Giai đoạn 1 (1971 - 1973) đây là giai đoạn khởi
đầu của vi xử lý. Các vi xử lý này đều có độ dài
từ dữ liệu ngắn, tốc độ làm việc thấp, tập lệnh
đơn giản như 4004, 8008.
Giai đoạn 2 (1974 - 1977) tập lệnh phong phú
hơn và có khả năng phân biệt địa chỉ bộ nhớ và
dung lượng đến 64 K byte, tốc độ xử lý tăng lên
vài Mhz. Đại diện cho giai đoạn này như 6800,
6809 của Motorola; 8085, 8080 của Intel và Z80
của Zilog.
6
LỊCH SỬ PHÁT TRIỂN VI XỬ LÝ
Giai đoạn 3 (1978 - 1982) các bộ vi xử lý
giai đoạn này là các vi xử lý 16 Bit tốc độ
làm việc lên đến 10 Mhz.
Giai đoạn 4 (1984 đến nay)
VXL 32 bit 80386/80486 và 64 bit Pentium/
Pentium II / Pentium III của Intel, Core Duo..
VXL 32 bit 68020/ 68030/ 68040/ 68060 của
Motorola.
Đặc điểm của VXL trong giai đoạn này là bus
địa chỉ đều là 32 bit và có khả năng làm việc
với bộ nhớ ảo.
7
HỆ THỐNG VI XỬ LÝ LÀ GÌ?
Để sử dụng vi xử lý cần phải thiết kế hệ
thống gồm có các thành phần sau:
 Vi xử lý
 Các bộ nhớ
 Các IC ngoại vi
Để thiết kế được hệ thống vi xử lý cần
phải biết yêu cầu điều khiển là gì!
8
HỆ THỐNG VI XỬ LÝ
Vi Xöû Lyù: thöïc hieän chöông trình
vaø ñieàu khieån
Boä nhô:ù chöùa chöông trình vaø döõ
lieäu.
Ngoaïi vi: duøng ñeå xuaát nhaäp döõ
lieäu vôùi beân ngoaøi.
 Caùc khoái naøy lieân keát vôùi nhau taïo
thaønh moät heä thoáng vi xöû lyù.
 Yeâu caàu ñieàu khieån caøng nhieàu thì
heä thoáng caøng phöùc taïp
 Duø nhu caàu ñieàu khieån ñôn giaûn – thì
heä thoáng cuõng phaûi coù ñaày ñuû caùc
khoái treân.
9
SƠ ĐỒ KHỐI HỆ THỐNG VI XỬ LÝ
CPU
ROM RAM Mạch giao tiếp
ngoại vi (IO)
Bus dữ liệu (Data Bus)
Bus địa chỉ (Address Bus)
Bus điều khiển (Control Bus)
Input Output
10
Năng Lực Của Vi Xử Lý
 Chiều dài của từ dữ liệu của VXL:
 Mỗi vxl làm việc với các từ dữ liệu có độ
dài cố định.
 Từ dữ liệu thường dùng 8 bit ứng với 1
byte.
 Độ dài từ dữ liệu trong bộ nhớ bằng độ
dài từ dữ liệu trong vxl.
11
Năng Lực Của Vi Xử Lý
Số lượng ô nhớ mà VXL có thể truy
xuất:
 Mỗi từ dữ liệu chứa trong 1 ô nhớ
 Mỗi ô nhớ trong bộ nhớ có một địa chỉ.
• VXL muốn truy xuất dữ liệu trong ô nhớ phải tạo
địa chỉ của ô nhớ đó.
 VXL có thể giao tiếp với bộ nhớ có dung
lượng càng lớn thì vxl đó càng mạnh.
Ví Dụ:
• 8 bit có 16 đường địa chỉ: 216
= 65.536 ô nhớ
• 16 bit có 20 đường địa chỉ: 220
= 1.024.000 ô nhớ
• 32 bit (386) truy xuất 4G ô nhớ.
12
Năng Lực Của Vi Xử Lý
Tốc độ làm việc của vi xử lý:
Tần số xung clock quyết định.
Tần số xung clock được nhà sản
xuất qui định
Tốc độ càng nhanh khả năng xử
lý lệnh càng nhanh.
13
CẤU TRÚC CỦA VI XỬ LÝ
Đơn vị xử lý logic số học ALU:
Arithmetic Logic Unit:
 Các thanh ghi:
Accumulator,
PC: Program Counter,
SR: Status Register,
SP: Stack Pointer,
Thanh ghi địa chỉ ô nhớ,
Thanh ghi lệnh (IR: Instruction Register)
 Khối điều khiển logic (Control logic) và
khối giải mã lệnh (Instruction Decoder).
14
CÁC THANH GHI QUAN TRỌNG
Thanh ghi là gì?
Thanh ghi: phần quan trọng trong vxl.
Dùng để xử lý dữ liệu, có chiều dài
theo từng chức năng trong vxl.
 Số lượng thanh ghi càng lớn người
lập trình càng dễ dàng, tốc độ xử lý
chương trình nhanh.
Mỗi loại vxl có số lượng thanh ghi và
chức năng thanh ghi khác nhau.
15
THANH GHI DỊCH
Thanh ghi có cấu tạo gồm các trigger nối
tiếp với nhau
Chức năng:
Để lưu trữ tạm thời thông tin
Dịch chuyển thông tin
Lưu ý: cả thanh ghi và bộ nhớ đều dùng
để lưu trữ thông tin, nhưng thanh ghi có
chức năng dịch chuyển thông tin.
16
PHÂN LOẠI THANH GHI DỊCH
Vào nối tiếp ra nối tiếp
SIPI
Vào nối tiếp ra song song
SIPO
Vào song song ra nối tiếp
PISO
Vào song song ra song song
PIPO
0 1 0 1 0 0 11
0 1 0 1 0 0 11
0 1 0 1 0 0 11
0 1 0 1 0 0 11
17
CẤU TRÚC VÀ NGUYÊN LÝ LÀM VIỆC CỦA THANH GHI DỊCH
18
THANH GHI A
Thanh ghi A (Accumulator: thanh chứa)
Quan trọng, luôn có trong mọi vxl, chứa dữ
liệu khi tính toán và xử lý.
Các phép toán số học, logic đều xảy ra giữa ALU
và A
Truyền dữ liệu từ bộ nhớ hay từ các thanh
ghi bên trong vxl ra các thiết bị ngoại vi thì
dữ liệu phải chứa trong thanh ghi A.
Số bit của thanh ghi A là đơn vị đo của vxl,
nếu vxl 8 bit thì thanh ghi A có độ dài là 8 bit.
19
THANH GHI PC (Program Counter)
PC: thanh ghi quan trọng nhất của vi xử lý
Quản lý lệnh mà vxl đang thực hiện và
điều khiển việc lấy lệnh thực hiện kế tiếp.
Thanh ghi PC trong vxl có độ dài lớn hơn
chiều dài từ dữ liệu của vxl.
Nội dung chứa trong thanh ghi PC chính
là nội dung chứa trong thanh ghi địa chỉ.
Trước khi vxl thực hiện chương trình thì
PC phải được nạp 1 con số.
Số đó là: địa chỉ của ô nhớ chứa lệnh đầu tiên
của chương trình.
20
Thao tác tìm nạp lệnh và thực hiện lệnh
NPC
Mã lệnh
Mã lệnh
Mã lệnh N
N+1
N+2
IR
Vi Xử Lý
(CPU)
Bộ Nhớ (ROM)
Bus địa chỉ
Bus dữ liệu
Mã lệnh
TGĐC N
21
THANH GHI IR
Thanh ghi IR dùng để chứa lệnh vxl
đang thực hiện.
Một chu kỳ lệnh bao gồm đón lệnh từ
bộ nhớ và thực hiện lệnh.
Trong quá trình thực hiện lệnh, bộ giải
mã lệnh đọc nội dung của thanh ghi
lệnh IR.
Maõ leänh töø thanh ghi IR
ñöôïc ñöa vaøo ñôn vò giaûi maõ
leänh vaø ñieàu khieån.
22
THANH GHI SR (Status Rigester)
 Thanh ghi SR là thanh ghi cờ, dùng để lưu kết quả của
một số lệnh kiểm tra.
 Zero bit: bit Z = 1 khi kết quả là 0, ngược lại Z =0
 Negative bit: bit N=1 khi bit MSB của thanh ghi =1
 Carry/Borrow bit: là bit carry khi thực hiện phép cộng C =1 khi tràn
ngược lại C = 0.
Là bit Borrow khi thực hiện phép trừ, borrow=0 khi số bị trừ lớn hơn
số trừ
 Intermediate carry: giống bit C nhưng có tác dụng với cộng /trừ 4 bit
thấp.
 Interrupt Flag: Bit IF =1 khi người lập trình cho phép ngắt.
 Overflow: bit này bằng 1 khi bit tràn của phép cộng với bit dấu của dữ
liệu.
 Parity: bit P=1 khi cho phép kiểm tra chẳn.
Z N C I IF O P 1
23
THANH GHI CON TRỎ (STACK POINTER)
Chức năng của thanh ghi SP gần giống
với PC, dùng để quản lý bộ nhớ ngăn
xếp khi muốn lưu trữ dữ liệu tạm thời
vào ngăn xếp.
SP tự động di chuyển đến ô nhớ kế
tiếp
Người lập trình phải thiết lập giá trị ban
đầu cho SP.
Tổ chức SP là LIFO: LAST IN FIRST
OUT.
24
HỆ THỐNG BUS
Bus ñòa chæ (Address bus):
 Ñeå chuyeån taûi caùc bit ñòa chæ.
 Laø loaïi bus 1 chieàu (CPU-MEM hay
I/O).
 Ñeå xaùc ñònh boä nhôù hoaëc thieát
bò ngoaïi vi maø CPU caàn trao ñoåi
thoâng tin.
 Ñeå xaùc ñònh dung löôïng boä nhôù
hoaëc ngoaïi vi maø CPU coù khaû
naêng truy xuaát.
25
HỆ THỐNG BUS
Bus döõ lieäu (Data bus):
 Ñeå chuyeån taûi caùc bit döõ lieäu.
 Laø loaïi bus 2 chieàu (CPU ↔
MEM-I/O).
 Ñeå xaùc ñònh soá bit döõ lieäu
maø CPU coù khaû naêng xöû lyù
cuøng moät luùc.
26
HỆ THỐNG BUS
 Bus ñieàu khieån (Control bus):
Ñeå chuyeån taûi caùc bit ñieàu
khieån (moãi ñöôøng daây laø moät
tín hieäu ñieàu khieån khaùc nhau).
Laø loaïi bus 1 chieàu (CPU →
MEM-I/O hoaëc MEM-I/O → CPU).
Đeå ñieàu khieån caùc khoái khaùc
trong heä vaø nhaän tín hieäu ñieàu
khieån töø caùc khoái ñoù ñeå phoái
27
SUY NGHĨ
Mu n vxl làm vi c gì ng i dùngố ệ ườ
ph i l p trình (viả ậ t ch ng trình)ế ươ .
 Ch ng trình l u âu vxlươ ư ở đ để
l y l nh và th c hi n l nh ó?ấ ệ ự ệ ệ đ
Trong lúc làm vi c vxl c n c tệ ầ ấ
t m các d li u, khi c n vxl dạ ữ ệ để ầ ữ
li u l y ra th c hi n ti p cácệ ấ ự ệ ế
công vi c.ệ
Nh v y các d li u này ph iư ậ ữ ệ ả
c l u âuđượ ư ở đ ?
28
BỘ NHỚ BÁN DẪN
ROM: bộ nhớ chương trình, lưu trữ
chương trình điều khiển hoạt động của
toàn hệ thống.
RAM: bộ nhớ dữ liệu, lưu trữ dữ liệu
tạm thời, các ứng dụng và kết quả tính
toán.
29
Hoạt Động Của Bộ Nhớ
Nhận địa chỉ để chọn ô nhớ cần truy
xuất.
Nhận tín hiệu điều khiển để thực
hiện việc truy xuất (xuất / nhập).
Nhập dữ liệu để lưu vào ô nhớ (GHI:
WRITE)
Xuất dữ liệu ra (ĐỌC:READ)
Kiểm tra tín hiệu cho phép để biết bộ
nhớ có được phép truy xuất không.
30
Bố Trí Chân Theo Chức Năng Bộ Nhớ
I7 I6 I5 I4 I3 I2 I1 I0
DATA INPUT
A0
A1
A2
A3
A4
A5
A6
ĐIA CHỈ
O7 O6 O5 O4 O3 O2 O1 O0
DATA OUTPUT
READ / WRITE
CS (CHỌN CHIP)
31
Bố Trí Chân Theo Chức Năng Bộ Nhớ
OE  RW 
ĐIA CHỈ
A0
A1
A2
A3
A4
A5
A6
DATA
D0
D1
D2
D3
D4
D5
D6
CS
32
Cách Xác Định Bộ Nhớ
Dựa vào số đường địa chỉDựa vào số đường địa chỉ
 VD: Bộ nhớ có 10 đường địa chỉVD: Bộ nhớ có 10 đường địa chỉ
• 221010
=1024bit = 1KBIT=1024bit = 1KBIT
Dựa vào mã số bộ nhớ; Mã số: XX YYYYDựa vào mã số bộ nhớ; Mã số: XX YYYY
XX: loại bộ nhớXX: loại bộ nhớ
27: UV-EPROM27: UV-EPROM 28: EEPROM28: EEPROM
61,62: SRAM61,62: SRAM 40,41: DRAM40,41: DRAM
YYYY: dung lượng của bộ nhớYYYY: dung lượng của bộ nhớ
Dung lượng = YYYY (Kbit) hoacDung lượng = YYYY (Kbit) hoac
Dung lượng = YYYY / 8 (KByte)Dung lượng = YYYY / 8 (KByte)..
33
Cách Xác Định Bộ Nhớ
VD: Bộ nhớ 27256,VD: Bộ nhớ 27256,
 27 Bộ nhớ UV-EPROM27 Bộ nhớ UV-EPROM
256 Dung lượng = 256 (Kbit) = 32 (KB)256 Dung lượng = 256 (Kbit) = 32 (KB)
 15 Đường địa chỉ15 Đường địa chỉ..
34
BỘ NHỚ ROM
Phaân loaïi bộ nhớ ROM:
PROM (Programmable ROM): ROM laäp
trình ñöôïc
EPROM (Eraseable PROM): ROM laäp trình
vaø xoùa ñöôïc
UV-EPROM (Ultra Violet EPROM): ROM
laäp trình, xoùa baèng tia cöïc tím
EEPROM (Electric EPROM): ROM laäp trình
vaø xoùa baèng tín hieäu ñieän
Flash ROM: ROM laäp trình vaø xoùa baèng
tín hieäu ñieän.
35
EPROM
2716
A0
A1
A2
A3
A4
A5
A6
A7
A9
A10
CE
OE
VPP
D0
D1
D2
D3
D4
D5
D6
D7
36
EPROM
2716
A0
A1
A2
A3
A4
A5
A6
A7
A9
A10
CE
OE
VPP
D0
D1
D2
D3
D4
D5
D6
D7
OE : (output enable) [0] điều khiển
cho phép bộ nhớ xuất dữ liệu ra bên
ngoài.
CE : (chip enable) [0] điều khiển cho
phép bộ nhớ làm việc.
VPP: [1] nạp dữ liệu, chương trình vào
bộ nhớ
Chế độ CE OE Data
Đọc 0 0 Dout
Chờ 1 XX High Z
Lập trình
EPROM
0 XX Vpp [1]
Din
37
BỘ NHỚ RAM
RAM(Random Access Memory): bộ
nh d li uớ ữ ệ
SRAM (Static RAM): RAM t nhĩ
DRAM (Dynamic RAM): RAM ngđộ
Các chân Data k t h p I/Oế ợ .
38
Sơ Đồ Chân Bộ Nhớ Ram
6116
A0
A1
A2
A3
A4
A5
A6
A7
A9
A10
WR
OE
CS
D0
D1
D2
D3
D4
D5
D6
D7
39
Bảng Trạng Thái
Chế độ WR CS OE Data
Không chọn X 1 X Tổng trở cao
Cấm xuất 1 0 1 Tổng trở cao
Đọc Data 1 0 0 Dout
Ghi Data 0 0 1 Din
A0
A1
A2
A3
A4
A5
A6
A7
A9
A10
WR
OE
CS
D0
D1
D2
D3
D4
D5
D6
D7
40
Kết Nối Bộ Nhớ Và VXL
µPµPµPµP
IC NHỚ
ROM
IC NHỚ
ROM
IC NHỚ
RAM
IC NHỚ
RAM
BUS ĐỊA CHỈ
BUS DỮ LIỆU
BUS ĐIỀU KHIỂN
41
Hoạt Động Ghi Dữ Liệu
µPµPµPµP
IC NHỚ RAMIC NHỚ RAM
BUS ĐỊA CHỈ
BUS DỮ LIỆU
BUS ĐIỀU KHIỂN
1.Tạo địa chỉ cần lưu, đặt lên bus địa chỉ
2. Đưa data cần lưu lên bus dữ liệu
3. VXL tác động tín hiệu điều khiển ghi
4. IC nhớ xác định địa chỉ
ô nhớ cần lưu
5. Data từ bus truyền vào ô nhớ
WRData
42
Hoạt Động Đọc Dữ Liệu
µPµPµPµP
IC NHỚ RAM / ROMIC NHỚ RAM / ROM
BUS ĐỊA CHỈ
BUS DỮ LIỆU
BUS ĐIỀU KHIỂN
1.Tạo địa chỉ cần đọc, đặt lên bus địa chỉ
5. Đưa dữ liệu cần đọc vào VXL
2. VXL tác động tín hiệu điều khiển đọc
3. IC nhớ xác định địa chỉ
ô nhớ cần đọc
4. Data từ ô nhớ đặt lên bus
OEData
43
Sơ Đồ Nguyên Lý Kết Nối
D
74LS373ALE
P0.0
P0.7
PSEN
A0
A7
D0
D7
P2.0
P2.7
A8
A15
OE
CE
EA
G
8031 ROM
44
BUS ĐA HỢP
45
Hoạt Động Xuất Địa Chỉ Tới ROM
D
74LS373ALE
P0.0
P0.7
PSEN
A0
A7
D0
D7
P2.0
P2.7
A8
A12
OE
CE
EA
G
8051 ROM
1. Gửi địa chỉ tới ROM
2. 74373 chốt địa chỉ
và gửi sang ROM
Địa chỉ
46
Hoạt Động Đọc Dữ Liệu Từ ROM
D
74LS373ALE
P0.0
P0.7
PSEN
A0
A7
D0
D7
P2.0
P2.7
A8
A12
OE
CE
EA
G
8051 ROM
Address
3. ROM gửi lệnh về
VĐK
47
VXL Kết Nối Nhiều Bộ Nhớ
µP
74138
74138
A10 ÷ A0
D7÷D0
CS1
OE
2716
ROM1
CS8
OE
2716
ROM8
6116
Ram1
6116
Ram8
CS8CS1
OE OE
WR WRWR
RD RDRDRD
WR
Đến CS1 Ram1
Đến CS8 Ram8
Đến CS1 Rom1
Đến CS1 Rom8
A
B
C
A
B
C
A11
A12
A13
48
SƠ ĐỒ KHỐI MÁY TÍNH PC
49
Hệ thống VXL có phù hợp điều khiển trong công
nghiệp không?
Vxl xử lý dữ liệu theo byte, word.
• Hệ thống Vi Xử Lý : Vi xử lý + Bộ Nhớ + Thiết bị ngoại vi
Các đối tượng điều khiển trong công nghiệp
theo từng bit.
1 Relay, 1 động cơ, 1 tiếp điểm…
Caùc nhaø cheá taïo ñaõ tích hôïp:
o Boä nhôù vaø
o Caùc thieát bò ngoaïi vi
o VXL – caûi tieán cho phuø hôïp vôùi ñieàu
khieån CN
Taïo thaønh moät IC goïi laø vi ñieàu khieån
(Microcontroller).
50
VI ĐIỀU KHIỂN
Vi Xử Lý
Bộ Nhớ
Thiết bị
ngọai vi
Vi Điều Khiển
51
ƯU ĐIỂM CỦA VI ĐIỀU KHIỂN
Deã söû duïng trong caùc öùng duïng.
Khoâng ñoøi hoûi ngöôøi söû duïng phaûi
hieåu bieát löôïng kieán thöùc quaù
nhieàu nhö ngöôøi söû duïng VXL.
Vôùi ngöôøi baét ñaàu thì söû duïng VXL
laø ñieàu raát khoù, maát nhieàu thôøi
gian, trong khi ñoù mong muoán laø söû
duïng ñöôïc ngay.
52
CÁC HỌ VI ĐIỀU KHIỂN THÔNG DỤNG
Haõng ATMEL:
AT89C51, AT89S51, AT89S8252, AT89S52
AVR: 8515, ATMega8, ATMega16...…
Haõng PHILIPS: 89V51RD1, 89V51RD2
Haõng MICROCHIP:
PIC: 16F84, 16F877A, 18F452...
53
HỆ THỐNG SỬ DỤNG VI ĐIỀU KHIỂN
CPU
ROM RAM ngoại vi (IO)
Bus dữ liệu (Data Bus)
Bus địa chỉ (Address Bus)
Bus điều khiển (Control Bus)
Input Output
54
ĐẶC TRƯNG CÁC HỌ VI ĐIỀU KHIỂN
Nguồn cung cấp
Xung clock
Bộ định thời (timer)
Watchdog
Reset
Ngắt
ADC
Truyền thông nối tiếp
Bộ so sánh analog
PWM.
55
KIẾN TRÚC VI ĐIỀU KHIỂN
Von Neumann
56
KIẾN TRÚC VI ĐIỀU KHIỂN
HARVARD
57
ÔN TẬP HỆ THỐNG SỐ
Các hệ thống số học:
Thập phân (decimal)
Nhị phân (binary)
Bát phân (octal)
Thập lục phân (hexadecimal)
BCD
Chuyển đổi giữa các số:
Decbinary
Binary hex
Hex binary
Hex dec
Dec hex.
58
CÁCH BIỂU DIỄN
Thập phân: (D)
VD: 82510 = 8x102
+ 2 x101
+ 5x100
Nhị phân: (B)
VD: 11102 = 1x 23
+ 1x 22
+ 1x 21
+ 0x 20
100011102
Bát phân:(O)
VD: 2378 = 2x 82
+3x 81
+ 7x 80
Thập lục phân: (H)
VD: 2AC16 = 2x 162
+ 10x 161
+ 12x 160
.
59
CHUYỂN ĐỔI
Binary  Dec
Dec  Binary
3 2 1 0
2 101011 1 2 0 2 1 2 1 2 11= × + × + × + × =
28/2 → 14 dư 0 (LSB)
14/2 → 7 dư 0
7/2 → 3 dư 1
3/2 → 1 dư 1
1/2 → 0 dư 1 (MSB)
 111002
.
60
CHUYỂN ĐỔI
61
CHUYỂN ĐỔI
Binary  Hexadecimal
100111112 = 1001 1111
9 F
BT: 11101111000011102
Hexadecimal  Binary
FE3C16
• F = 11112
• E = 11102
• 3 = 00112
• C = 11002
 11111110001111002.
62
CHUYỂN ĐỔI
63
CHUYỂN ĐỔI
Hexadecimal  Dec
2AC16 = 2 x 162
+ 10 x 161
+ 12 x 160
= 512 + 160 + 12
= 684
Dec  Hexadecimal
• 238/16 → 14 dư 14 (E) (LSB)
• 14/16 → 0 dư 14 (E) (MSB)
 EE16.
64
CHUYỂN ĐỔI
Octal  Binary
1778
• 1 = 0012
• 7 = 1112
• 7 = 1112
 0011111112
Binary  Octal
1101110012
110111001 = 110 111 001
6 7 1
 6718.
65
CÁC PHÉP TOÁN HAI SỐ NHỊ PHÂN
Số âm
Cộng số nhị phân
Trừ số nhị phân
Nhân số nhị phân
Chia số nhị phân.
66
Số Âm
Số âm và dương 4 bit
67
Cách Tìm Số Âm
VD: -6
0110 +6
1001 bù
1 cộng 1
––––
1010 là số - 6.
68
Cộng 2 Số Nhị Phân
Công thức:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10 tạo ra một bit nhớ là (1)
1 + 1 + 1 = 11 tạo ra một bit nhớ là (1).
69
Cộng 2 Số Nhị Phân
VD: 01000011 và 00100010
01000011 cột 1: 1 + 0 = 1
+ 00100010 cột 2 : 1 + 1 = 10
––––––––– cột 3: 0 + nhớ = 1
01100101 cột 4 : 0 + 0 = 0
cột 5 : 0 + 0 = 0
cột 6 : 0 + 1 = 1
cột 7 : 1 + 0 = 1
cột 8 : 0 + 0 = 0.
70
Trừ 2 Số Nhị Phân
Chuyển số bị trừ thành số âm
Cộng hai số với nhau
VD: 0110 trừ cho số 0010
0010 số bị trừ
1101 bù
1 cộng 1
––––
1110
Cộng lại:
0110 số trừ
+ 1110 số âm của số bị trừ
––––––
0100.
71
Nhân và Chia 2 Số Nhị Phân
Công thức nhân:
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1
Nhân bình thường như nhân số thập phân
Chia: Tương tự như chia 2 số thập phân.
72

More Related Content

What's hot

Bài tập kiến trúc máy tính
Bài tập kiến trúc máy tínhBài tập kiến trúc máy tính
Bài tập kiến trúc máy tínhHa Nguyen
 
Cấu tạo và nguyên lý hoạt động cpu
Cấu tạo và nguyên lý hoạt động cpuCấu tạo và nguyên lý hoạt động cpu
Cấu tạo và nguyên lý hoạt động cpubeu09vn
 
Tim hieu thanh ghi in asm
Tim hieu thanh ghi in asmTim hieu thanh ghi in asm
Tim hieu thanh ghi in asmMy Đá
 
Vi xử lý cấu trúc máy tính
Vi xử lý cấu trúc máy tínhVi xử lý cấu trúc máy tính
Vi xử lý cấu trúc máy tínhleeduy
 
Chuong02
Chuong02Chuong02
Chuong02na
 
BGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhBGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhCao Toa
 
Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Nhóc Nhóc
 
Kiến trúc máy tính
Kiến trúc máy tínhKiến trúc máy tính
Kiến trúc máy tínhLE The Vinh
 
kiến trúc máy tính và hợp ngữ Bài 00
kiến trúc máy tính và hợp ngữ Bài 00kiến trúc máy tính và hợp ngữ Bài 00
kiến trúc máy tính và hợp ngữ Bài 00Nhóc Nhóc
 
249340669 bao-cao-ktmt
249340669 bao-cao-ktmt249340669 bao-cao-ktmt
249340669 bao-cao-ktmtĐũa Mốc
 
Họ vi xử lí 8086 intel
Họ vi xử lí 8086 intelHọ vi xử lí 8086 intel
Họ vi xử lí 8086 inteldark_valley
 
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềuThiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềunataliej4
 
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệm
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệmĐề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệm
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệmNgananh Saodem
 

What's hot (20)

Bài tập kiến trúc máy tính
Bài tập kiến trúc máy tínhBài tập kiến trúc máy tính
Bài tập kiến trúc máy tính
 
Cấu tạo và nguyên lý hoạt động cpu
Cấu tạo và nguyên lý hoạt động cpuCấu tạo và nguyên lý hoạt động cpu
Cấu tạo và nguyên lý hoạt động cpu
 
Ktmt chuong 3
Ktmt chuong 3Ktmt chuong 3
Ktmt chuong 3
 
Ktmt chuong 5
Ktmt chuong 5Ktmt chuong 5
Ktmt chuong 5
 
Ktmt chuong 1
Ktmt chuong 1Ktmt chuong 1
Ktmt chuong 1
 
Tim hieu thanh ghi in asm
Tim hieu thanh ghi in asmTim hieu thanh ghi in asm
Tim hieu thanh ghi in asm
 
Vi xử lý cấu trúc máy tính
Vi xử lý cấu trúc máy tínhVi xử lý cấu trúc máy tính
Vi xử lý cấu trúc máy tính
 
Chuong02
Chuong02Chuong02
Chuong02
 
BGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhBGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tính
 
Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05
 
Cau truc may tinh
Cau truc may tinhCau truc may tinh
Cau truc may tinh
 
Assembly
AssemblyAssembly
Assembly
 
Kiến trúc máy tính
Kiến trúc máy tínhKiến trúc máy tính
Kiến trúc máy tính
 
kiến trúc máy tính và hợp ngữ Bài 00
kiến trúc máy tính và hợp ngữ Bài 00kiến trúc máy tính và hợp ngữ Bài 00
kiến trúc máy tính và hợp ngữ Bài 00
 
249340669 bao-cao-ktmt
249340669 bao-cao-ktmt249340669 bao-cao-ktmt
249340669 bao-cao-ktmt
 
Họ vi xử lí 8086 intel
Họ vi xử lí 8086 intelHọ vi xử lí 8086 intel
Họ vi xử lí 8086 intel
 
Ktmt chuong 6
Ktmt chuong 6Ktmt chuong 6
Ktmt chuong 6
 
Chuong6 hoạt động ngắt
Chuong6 hoạt động ngắtChuong6 hoạt động ngắt
Chuong6 hoạt động ngắt
 
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềuThiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
 
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệm
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệmĐề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệm
Đề cương Vi xử lý - Hệ cao đẳng - Trắc nghiệm
 

Similar to vxl.vdk.TranThanhPhong

Tìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcTìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcDan Vu
 
Chương 2 CPU và tập lệnh máy tính.ppt
Chương 2 CPU và tập lệnh máy tính.pptChương 2 CPU và tập lệnh máy tính.ppt
Chương 2 CPU và tập lệnh máy tính.pptDuongTranTrong
 
đề Cương ôn tập
đề Cương ôn tậpđề Cương ôn tập
đề Cương ôn tậphuynguyenvan19
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picCu Bi
 
Chương 3. Dịch ngược mã độc.pdf
Chương 3.  Dịch ngược mã độc.pdfChương 3.  Dịch ngược mã độc.pdf
Chương 3. Dịch ngược mã độc.pdfdong55
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucmster_dang
 
Bai 01 tong quan ve phan cung may tinh
Bai 01  tong quan ve phan cung may tinhBai 01  tong quan ve phan cung may tinh
Bai 01 tong quan ve phan cung may tinhQuang Nguyễn Thái
 
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xa
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xaĐề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xa
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xaViết thuê trọn gói ZALO 0934573149
 
Bai01tongquanvephancungmaytinh 121223194355-phpapp01
Bai01tongquanvephancungmaytinh 121223194355-phpapp01Bai01tongquanvephancungmaytinh 121223194355-phpapp01
Bai01tongquanvephancungmaytinh 121223194355-phpapp01Pj Yêu
 
Bao cao thuc tap pic18 f4520
Bao cao thuc tap pic18 f4520Bao cao thuc tap pic18 f4520
Bao cao thuc tap pic18 f4520Yến Thanh Thanh
 
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfĐồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfNuioKila
 
Chuong 2 gioi thieu ve cau truc ho vdk 8051
Chuong 2 gioi thieu ve cau truc ho vdk 8051Chuong 2 gioi thieu ve cau truc ho vdk 8051
Chuong 2 gioi thieu ve cau truc ho vdk 8051Bút Chì
 
Chuong04
Chuong04Chuong04
Chuong04na
 
Tổng quan Vi điều khiển - Chức năng các chân 8951
Tổng quan Vi điều khiển - Chức năng các chân 8951Tổng quan Vi điều khiển - Chức năng các chân 8951
Tổng quan Vi điều khiển - Chức năng các chân 8951Ngananh Saodem
 
Cấu Trúc Máy Tính.pdf
Cấu Trúc Máy Tính.pdfCấu Trúc Máy Tính.pdf
Cấu Trúc Máy Tính.pdfPhamThao955982
 

Similar to vxl.vdk.TranThanhPhong (20)

Tìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcTìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bước
 
Atmel avr
Atmel avrAtmel avr
Atmel avr
 
Bao cao vdk_va_pic
Bao cao vdk_va_picBao cao vdk_va_pic
Bao cao vdk_va_pic
 
Chương 2 CPU và tập lệnh máy tính.ppt
Chương 2 CPU và tập lệnh máy tính.pptChương 2 CPU và tập lệnh máy tính.ppt
Chương 2 CPU và tập lệnh máy tính.ppt
 
Chuong1 tổng quan 8051
Chuong1 tổng quan 8051Chuong1 tổng quan 8051
Chuong1 tổng quan 8051
 
đề Cương ôn tập
đề Cương ôn tậpđề Cương ôn tập
đề Cương ôn tập
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-pic
 
Chương 3. Dịch ngược mã độc.pdf
Chương 3.  Dịch ngược mã độc.pdfChương 3.  Dịch ngược mã độc.pdf
Chương 3. Dịch ngược mã độc.pdf
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautruc
 
Bai 01 tong quan ve phan cung may tinh
Bai 01  tong quan ve phan cung may tinhBai 01  tong quan ve phan cung may tinh
Bai 01 tong quan ve phan cung may tinh
 
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xa
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xaĐề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xa
Đề tài giáo trình: Lập trình hệ thống và điều khiển thiết bị từ xa
 
Bai01tongquanvephancungmaytinh 121223194355-phpapp01
Bai01tongquanvephancungmaytinh 121223194355-phpapp01Bai01tongquanvephancungmaytinh 121223194355-phpapp01
Bai01tongquanvephancungmaytinh 121223194355-phpapp01
 
Bao cao thuc tap pic18 f4520
Bao cao thuc tap pic18 f4520Bao cao thuc tap pic18 f4520
Bao cao thuc tap pic18 f4520
 
Vi dieu khien_pic
Vi dieu khien_picVi dieu khien_pic
Vi dieu khien_pic
 
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfĐồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
 
câu 1.docx
câu 1.docxcâu 1.docx
câu 1.docx
 
Chuong 2 gioi thieu ve cau truc ho vdk 8051
Chuong 2 gioi thieu ve cau truc ho vdk 8051Chuong 2 gioi thieu ve cau truc ho vdk 8051
Chuong 2 gioi thieu ve cau truc ho vdk 8051
 
Chuong04
Chuong04Chuong04
Chuong04
 
Tổng quan Vi điều khiển - Chức năng các chân 8951
Tổng quan Vi điều khiển - Chức năng các chân 8951Tổng quan Vi điều khiển - Chức năng các chân 8951
Tổng quan Vi điều khiển - Chức năng các chân 8951
 
Cấu Trúc Máy Tính.pdf
Cấu Trúc Máy Tính.pdfCấu Trúc Máy Tính.pdf
Cấu Trúc Máy Tính.pdf
 

More from Long Tran Huy (20)

dccthp nmcntt
dccthp nmcnttdccthp nmcntt
dccthp nmcntt
 
NMCNTT.DuongVanHieu
NMCNTT.DuongVanHieuNMCNTT.DuongVanHieu
NMCNTT.DuongVanHieu
 
Dccthp vxlvdk
Dccthp vxlvdkDccthp vxlvdk
Dccthp vxlvdk
 
KTS.NguyenVanThanh
KTS.NguyenVanThanhKTS.NguyenVanThanh
KTS.NguyenVanThanh
 
DCCTHP NON
DCCTHP NONDCCTHP NON
DCCTHP NON
 
DCCTHP MKD
DCCTHP MKDDCCTHP MKD
DCCTHP MKD
 
MKD.HoangHuuDuy
MKD.HoangHuuDuyMKD.HoangHuuDuy
MKD.HoangHuuDuy
 
Dccthp ktdt
Dccthp ktdtDccthp ktdt
Dccthp ktdt
 
ktdt1.PhanThiThuyMy
ktdt1.PhanThiThuyMyktdt1.PhanThiThuyMy
ktdt1.PhanThiThuyMy
 
Dccthp nnl1
Dccthp nnl1Dccthp nnl1
Dccthp nnl1
 
dlcmcdcsvn
dlcmcdcsvndlcmcdcsvn
dlcmcdcsvn
 
DLCM.LeMinhTan
DLCM.LeMinhTanDLCM.LeMinhTan
DLCM.LeMinhTan
 
Dccthp tthcm
Dccthp tthcmDccthp tthcm
Dccthp tthcm
 
TTHCM.NguyenThiThao
TTHCM.NguyenThiThaoTTHCM.NguyenThiThao
TTHCM.NguyenThiThao
 
Dccthp qth
Dccthp  qthDccthp  qth
Dccthp qth
 
Qth.LeHongPhuong
Qth.LeHongPhuongQth.LeHongPhuong
Qth.LeHongPhuong
 
Dccthp LHSPDL
Dccthp LHSPDLDccthp LHSPDL
Dccthp LHSPDL
 
LHSPDL.HoDoanThuyMyChau
LHSPDL.HoDoanThuyMyChauLHSPDL.HoDoanThuyMyChau
LHSPDL.HoDoanThuyMyChau
 
PLDC.NguyenThiKhuyen
PLDC.NguyenThiKhuyenPLDC.NguyenThiKhuyen
PLDC.NguyenThiKhuyen
 
DCCTHP Qtkd
DCCTHP QtkdDCCTHP Qtkd
DCCTHP Qtkd
 

vxl.vdk.TranThanhPhong

  • 1. 1 GIỚI THIỆU TỔNG QUAN VI XỬ LÝ – VI ĐIỀU KHIỂN CHƯƠNG 1
  • 2. 2 NỘI DUNG VI xử lý và Hệ thống vi xử lý1 Vi điều khiển2 Ôn tập hệ thống số học3
  • 3. 3 VI XỬ LÝ ỨNG DỤNG VÀO ĐÂU ?
  • 4. 4 VI XỬ LÝ LÀ GÌ ? Sự kết hợp của 2 kỹ thuật: Máy tính kỹ thuật số và Các mạch vi điện tử.
  • 5. 5 LỊCH SỬ PHÁT TRIỂN VI XỬ LÝ Lịch sử phát triển gắn liền với sự phát triển của các vi mạch điện tử. Giai đoạn 1 (1971 - 1973) đây là giai đoạn khởi đầu của vi xử lý. Các vi xử lý này đều có độ dài từ dữ liệu ngắn, tốc độ làm việc thấp, tập lệnh đơn giản như 4004, 8008. Giai đoạn 2 (1974 - 1977) tập lệnh phong phú hơn và có khả năng phân biệt địa chỉ bộ nhớ và dung lượng đến 64 K byte, tốc độ xử lý tăng lên vài Mhz. Đại diện cho giai đoạn này như 6800, 6809 của Motorola; 8085, 8080 của Intel và Z80 của Zilog.
  • 6. 6 LỊCH SỬ PHÁT TRIỂN VI XỬ LÝ Giai đoạn 3 (1978 - 1982) các bộ vi xử lý giai đoạn này là các vi xử lý 16 Bit tốc độ làm việc lên đến 10 Mhz. Giai đoạn 4 (1984 đến nay) VXL 32 bit 80386/80486 và 64 bit Pentium/ Pentium II / Pentium III của Intel, Core Duo.. VXL 32 bit 68020/ 68030/ 68040/ 68060 của Motorola. Đặc điểm của VXL trong giai đoạn này là bus địa chỉ đều là 32 bit và có khả năng làm việc với bộ nhớ ảo.
  • 7. 7 HỆ THỐNG VI XỬ LÝ LÀ GÌ? Để sử dụng vi xử lý cần phải thiết kế hệ thống gồm có các thành phần sau:  Vi xử lý  Các bộ nhớ  Các IC ngoại vi Để thiết kế được hệ thống vi xử lý cần phải biết yêu cầu điều khiển là gì!
  • 8. 8 HỆ THỐNG VI XỬ LÝ Vi Xöû Lyù: thöïc hieän chöông trình vaø ñieàu khieån Boä nhô:ù chöùa chöông trình vaø döõ lieäu. Ngoaïi vi: duøng ñeå xuaát nhaäp döõ lieäu vôùi beân ngoaøi.  Caùc khoái naøy lieân keát vôùi nhau taïo thaønh moät heä thoáng vi xöû lyù.  Yeâu caàu ñieàu khieån caøng nhieàu thì heä thoáng caøng phöùc taïp  Duø nhu caàu ñieàu khieån ñôn giaûn – thì heä thoáng cuõng phaûi coù ñaày ñuû caùc khoái treân.
  • 9. 9 SƠ ĐỒ KHỐI HỆ THỐNG VI XỬ LÝ CPU ROM RAM Mạch giao tiếp ngoại vi (IO) Bus dữ liệu (Data Bus) Bus địa chỉ (Address Bus) Bus điều khiển (Control Bus) Input Output
  • 10. 10 Năng Lực Của Vi Xử Lý  Chiều dài của từ dữ liệu của VXL:  Mỗi vxl làm việc với các từ dữ liệu có độ dài cố định.  Từ dữ liệu thường dùng 8 bit ứng với 1 byte.  Độ dài từ dữ liệu trong bộ nhớ bằng độ dài từ dữ liệu trong vxl.
  • 11. 11 Năng Lực Của Vi Xử Lý Số lượng ô nhớ mà VXL có thể truy xuất:  Mỗi từ dữ liệu chứa trong 1 ô nhớ  Mỗi ô nhớ trong bộ nhớ có một địa chỉ. • VXL muốn truy xuất dữ liệu trong ô nhớ phải tạo địa chỉ của ô nhớ đó.  VXL có thể giao tiếp với bộ nhớ có dung lượng càng lớn thì vxl đó càng mạnh. Ví Dụ: • 8 bit có 16 đường địa chỉ: 216 = 65.536 ô nhớ • 16 bit có 20 đường địa chỉ: 220 = 1.024.000 ô nhớ • 32 bit (386) truy xuất 4G ô nhớ.
  • 12. 12 Năng Lực Của Vi Xử Lý Tốc độ làm việc của vi xử lý: Tần số xung clock quyết định. Tần số xung clock được nhà sản xuất qui định Tốc độ càng nhanh khả năng xử lý lệnh càng nhanh.
  • 13. 13 CẤU TRÚC CỦA VI XỬ LÝ Đơn vị xử lý logic số học ALU: Arithmetic Logic Unit:  Các thanh ghi: Accumulator, PC: Program Counter, SR: Status Register, SP: Stack Pointer, Thanh ghi địa chỉ ô nhớ, Thanh ghi lệnh (IR: Instruction Register)  Khối điều khiển logic (Control logic) và khối giải mã lệnh (Instruction Decoder).
  • 14. 14 CÁC THANH GHI QUAN TRỌNG Thanh ghi là gì? Thanh ghi: phần quan trọng trong vxl. Dùng để xử lý dữ liệu, có chiều dài theo từng chức năng trong vxl.  Số lượng thanh ghi càng lớn người lập trình càng dễ dàng, tốc độ xử lý chương trình nhanh. Mỗi loại vxl có số lượng thanh ghi và chức năng thanh ghi khác nhau.
  • 15. 15 THANH GHI DỊCH Thanh ghi có cấu tạo gồm các trigger nối tiếp với nhau Chức năng: Để lưu trữ tạm thời thông tin Dịch chuyển thông tin Lưu ý: cả thanh ghi và bộ nhớ đều dùng để lưu trữ thông tin, nhưng thanh ghi có chức năng dịch chuyển thông tin.
  • 16. 16 PHÂN LOẠI THANH GHI DỊCH Vào nối tiếp ra nối tiếp SIPI Vào nối tiếp ra song song SIPO Vào song song ra nối tiếp PISO Vào song song ra song song PIPO 0 1 0 1 0 0 11 0 1 0 1 0 0 11 0 1 0 1 0 0 11 0 1 0 1 0 0 11
  • 17. 17 CẤU TRÚC VÀ NGUYÊN LÝ LÀM VIỆC CỦA THANH GHI DỊCH
  • 18. 18 THANH GHI A Thanh ghi A (Accumulator: thanh chứa) Quan trọng, luôn có trong mọi vxl, chứa dữ liệu khi tính toán và xử lý. Các phép toán số học, logic đều xảy ra giữa ALU và A Truyền dữ liệu từ bộ nhớ hay từ các thanh ghi bên trong vxl ra các thiết bị ngoại vi thì dữ liệu phải chứa trong thanh ghi A. Số bit của thanh ghi A là đơn vị đo của vxl, nếu vxl 8 bit thì thanh ghi A có độ dài là 8 bit.
  • 19. 19 THANH GHI PC (Program Counter) PC: thanh ghi quan trọng nhất của vi xử lý Quản lý lệnh mà vxl đang thực hiện và điều khiển việc lấy lệnh thực hiện kế tiếp. Thanh ghi PC trong vxl có độ dài lớn hơn chiều dài từ dữ liệu của vxl. Nội dung chứa trong thanh ghi PC chính là nội dung chứa trong thanh ghi địa chỉ. Trước khi vxl thực hiện chương trình thì PC phải được nạp 1 con số. Số đó là: địa chỉ của ô nhớ chứa lệnh đầu tiên của chương trình.
  • 20. 20 Thao tác tìm nạp lệnh và thực hiện lệnh NPC Mã lệnh Mã lệnh Mã lệnh N N+1 N+2 IR Vi Xử Lý (CPU) Bộ Nhớ (ROM) Bus địa chỉ Bus dữ liệu Mã lệnh TGĐC N
  • 21. 21 THANH GHI IR Thanh ghi IR dùng để chứa lệnh vxl đang thực hiện. Một chu kỳ lệnh bao gồm đón lệnh từ bộ nhớ và thực hiện lệnh. Trong quá trình thực hiện lệnh, bộ giải mã lệnh đọc nội dung của thanh ghi lệnh IR. Maõ leänh töø thanh ghi IR ñöôïc ñöa vaøo ñôn vò giaûi maõ leänh vaø ñieàu khieån.
  • 22. 22 THANH GHI SR (Status Rigester)  Thanh ghi SR là thanh ghi cờ, dùng để lưu kết quả của một số lệnh kiểm tra.  Zero bit: bit Z = 1 khi kết quả là 0, ngược lại Z =0  Negative bit: bit N=1 khi bit MSB của thanh ghi =1  Carry/Borrow bit: là bit carry khi thực hiện phép cộng C =1 khi tràn ngược lại C = 0. Là bit Borrow khi thực hiện phép trừ, borrow=0 khi số bị trừ lớn hơn số trừ  Intermediate carry: giống bit C nhưng có tác dụng với cộng /trừ 4 bit thấp.  Interrupt Flag: Bit IF =1 khi người lập trình cho phép ngắt.  Overflow: bit này bằng 1 khi bit tràn của phép cộng với bit dấu của dữ liệu.  Parity: bit P=1 khi cho phép kiểm tra chẳn. Z N C I IF O P 1
  • 23. 23 THANH GHI CON TRỎ (STACK POINTER) Chức năng của thanh ghi SP gần giống với PC, dùng để quản lý bộ nhớ ngăn xếp khi muốn lưu trữ dữ liệu tạm thời vào ngăn xếp. SP tự động di chuyển đến ô nhớ kế tiếp Người lập trình phải thiết lập giá trị ban đầu cho SP. Tổ chức SP là LIFO: LAST IN FIRST OUT.
  • 24. 24 HỆ THỐNG BUS Bus ñòa chæ (Address bus):  Ñeå chuyeån taûi caùc bit ñòa chæ.  Laø loaïi bus 1 chieàu (CPU-MEM hay I/O).  Ñeå xaùc ñònh boä nhôù hoaëc thieát bò ngoaïi vi maø CPU caàn trao ñoåi thoâng tin.  Ñeå xaùc ñònh dung löôïng boä nhôù hoaëc ngoaïi vi maø CPU coù khaû naêng truy xuaát.
  • 25. 25 HỆ THỐNG BUS Bus döõ lieäu (Data bus):  Ñeå chuyeån taûi caùc bit döõ lieäu.  Laø loaïi bus 2 chieàu (CPU ↔ MEM-I/O).  Ñeå xaùc ñònh soá bit döõ lieäu maø CPU coù khaû naêng xöû lyù cuøng moät luùc.
  • 26. 26 HỆ THỐNG BUS  Bus ñieàu khieån (Control bus): Ñeå chuyeån taûi caùc bit ñieàu khieån (moãi ñöôøng daây laø moät tín hieäu ñieàu khieån khaùc nhau). Laø loaïi bus 1 chieàu (CPU → MEM-I/O hoaëc MEM-I/O → CPU). Đeå ñieàu khieån caùc khoái khaùc trong heä vaø nhaän tín hieäu ñieàu khieån töø caùc khoái ñoù ñeå phoái
  • 27. 27 SUY NGHĨ Mu n vxl làm vi c gì ng i dùngố ệ ườ ph i l p trình (viả ậ t ch ng trình)ế ươ .  Ch ng trình l u âu vxlươ ư ở đ để l y l nh và th c hi n l nh ó?ấ ệ ự ệ ệ đ Trong lúc làm vi c vxl c n c tệ ầ ấ t m các d li u, khi c n vxl dạ ữ ệ để ầ ữ li u l y ra th c hi n ti p cácệ ấ ự ệ ế công vi c.ệ Nh v y các d li u này ph iư ậ ữ ệ ả c l u âuđượ ư ở đ ?
  • 28. 28 BỘ NHỚ BÁN DẪN ROM: bộ nhớ chương trình, lưu trữ chương trình điều khiển hoạt động của toàn hệ thống. RAM: bộ nhớ dữ liệu, lưu trữ dữ liệu tạm thời, các ứng dụng và kết quả tính toán.
  • 29. 29 Hoạt Động Của Bộ Nhớ Nhận địa chỉ để chọn ô nhớ cần truy xuất. Nhận tín hiệu điều khiển để thực hiện việc truy xuất (xuất / nhập). Nhập dữ liệu để lưu vào ô nhớ (GHI: WRITE) Xuất dữ liệu ra (ĐỌC:READ) Kiểm tra tín hiệu cho phép để biết bộ nhớ có được phép truy xuất không.
  • 30. 30 Bố Trí Chân Theo Chức Năng Bộ Nhớ I7 I6 I5 I4 I3 I2 I1 I0 DATA INPUT A0 A1 A2 A3 A4 A5 A6 ĐIA CHỈ O7 O6 O5 O4 O3 O2 O1 O0 DATA OUTPUT READ / WRITE CS (CHỌN CHIP)
  • 31. 31 Bố Trí Chân Theo Chức Năng Bộ Nhớ OE RW ĐIA CHỈ A0 A1 A2 A3 A4 A5 A6 DATA D0 D1 D2 D3 D4 D5 D6 CS
  • 32. 32 Cách Xác Định Bộ Nhớ Dựa vào số đường địa chỉDựa vào số đường địa chỉ  VD: Bộ nhớ có 10 đường địa chỉVD: Bộ nhớ có 10 đường địa chỉ • 221010 =1024bit = 1KBIT=1024bit = 1KBIT Dựa vào mã số bộ nhớ; Mã số: XX YYYYDựa vào mã số bộ nhớ; Mã số: XX YYYY XX: loại bộ nhớXX: loại bộ nhớ 27: UV-EPROM27: UV-EPROM 28: EEPROM28: EEPROM 61,62: SRAM61,62: SRAM 40,41: DRAM40,41: DRAM YYYY: dung lượng của bộ nhớYYYY: dung lượng của bộ nhớ Dung lượng = YYYY (Kbit) hoacDung lượng = YYYY (Kbit) hoac Dung lượng = YYYY / 8 (KByte)Dung lượng = YYYY / 8 (KByte)..
  • 33. 33 Cách Xác Định Bộ Nhớ VD: Bộ nhớ 27256,VD: Bộ nhớ 27256,  27 Bộ nhớ UV-EPROM27 Bộ nhớ UV-EPROM 256 Dung lượng = 256 (Kbit) = 32 (KB)256 Dung lượng = 256 (Kbit) = 32 (KB)  15 Đường địa chỉ15 Đường địa chỉ..
  • 34. 34 BỘ NHỚ ROM Phaân loaïi bộ nhớ ROM: PROM (Programmable ROM): ROM laäp trình ñöôïc EPROM (Eraseable PROM): ROM laäp trình vaø xoùa ñöôïc UV-EPROM (Ultra Violet EPROM): ROM laäp trình, xoùa baèng tia cöïc tím EEPROM (Electric EPROM): ROM laäp trình vaø xoùa baèng tín hieäu ñieän Flash ROM: ROM laäp trình vaø xoùa baèng tín hieäu ñieän.
  • 36. 36 EPROM 2716 A0 A1 A2 A3 A4 A5 A6 A7 A9 A10 CE OE VPP D0 D1 D2 D3 D4 D5 D6 D7 OE : (output enable) [0] điều khiển cho phép bộ nhớ xuất dữ liệu ra bên ngoài. CE : (chip enable) [0] điều khiển cho phép bộ nhớ làm việc. VPP: [1] nạp dữ liệu, chương trình vào bộ nhớ Chế độ CE OE Data Đọc 0 0 Dout Chờ 1 XX High Z Lập trình EPROM 0 XX Vpp [1] Din
  • 37. 37 BỘ NHỚ RAM RAM(Random Access Memory): bộ nh d li uớ ữ ệ SRAM (Static RAM): RAM t nhĩ DRAM (Dynamic RAM): RAM ngđộ Các chân Data k t h p I/Oế ợ .
  • 38. 38 Sơ Đồ Chân Bộ Nhớ Ram 6116 A0 A1 A2 A3 A4 A5 A6 A7 A9 A10 WR OE CS D0 D1 D2 D3 D4 D5 D6 D7
  • 39. 39 Bảng Trạng Thái Chế độ WR CS OE Data Không chọn X 1 X Tổng trở cao Cấm xuất 1 0 1 Tổng trở cao Đọc Data 1 0 0 Dout Ghi Data 0 0 1 Din A0 A1 A2 A3 A4 A5 A6 A7 A9 A10 WR OE CS D0 D1 D2 D3 D4 D5 D6 D7
  • 40. 40 Kết Nối Bộ Nhớ Và VXL µPµPµPµP IC NHỚ ROM IC NHỚ ROM IC NHỚ RAM IC NHỚ RAM BUS ĐỊA CHỈ BUS DỮ LIỆU BUS ĐIỀU KHIỂN
  • 41. 41 Hoạt Động Ghi Dữ Liệu µPµPµPµP IC NHỚ RAMIC NHỚ RAM BUS ĐỊA CHỈ BUS DỮ LIỆU BUS ĐIỀU KHIỂN 1.Tạo địa chỉ cần lưu, đặt lên bus địa chỉ 2. Đưa data cần lưu lên bus dữ liệu 3. VXL tác động tín hiệu điều khiển ghi 4. IC nhớ xác định địa chỉ ô nhớ cần lưu 5. Data từ bus truyền vào ô nhớ WRData
  • 42. 42 Hoạt Động Đọc Dữ Liệu µPµPµPµP IC NHỚ RAM / ROMIC NHỚ RAM / ROM BUS ĐỊA CHỈ BUS DỮ LIỆU BUS ĐIỀU KHIỂN 1.Tạo địa chỉ cần đọc, đặt lên bus địa chỉ 5. Đưa dữ liệu cần đọc vào VXL 2. VXL tác động tín hiệu điều khiển đọc 3. IC nhớ xác định địa chỉ ô nhớ cần đọc 4. Data từ ô nhớ đặt lên bus OEData
  • 43. 43 Sơ Đồ Nguyên Lý Kết Nối D 74LS373ALE P0.0 P0.7 PSEN A0 A7 D0 D7 P2.0 P2.7 A8 A15 OE CE EA G 8031 ROM
  • 45. 45 Hoạt Động Xuất Địa Chỉ Tới ROM D 74LS373ALE P0.0 P0.7 PSEN A0 A7 D0 D7 P2.0 P2.7 A8 A12 OE CE EA G 8051 ROM 1. Gửi địa chỉ tới ROM 2. 74373 chốt địa chỉ và gửi sang ROM Địa chỉ
  • 46. 46 Hoạt Động Đọc Dữ Liệu Từ ROM D 74LS373ALE P0.0 P0.7 PSEN A0 A7 D0 D7 P2.0 P2.7 A8 A12 OE CE EA G 8051 ROM Address 3. ROM gửi lệnh về VĐK
  • 47. 47 VXL Kết Nối Nhiều Bộ Nhớ µP 74138 74138 A10 ÷ A0 D7÷D0 CS1 OE 2716 ROM1 CS8 OE 2716 ROM8 6116 Ram1 6116 Ram8 CS8CS1 OE OE WR WRWR RD RDRDRD WR Đến CS1 Ram1 Đến CS8 Ram8 Đến CS1 Rom1 Đến CS1 Rom8 A B C A B C A11 A12 A13
  • 48. 48 SƠ ĐỒ KHỐI MÁY TÍNH PC
  • 49. 49 Hệ thống VXL có phù hợp điều khiển trong công nghiệp không? Vxl xử lý dữ liệu theo byte, word. • Hệ thống Vi Xử Lý : Vi xử lý + Bộ Nhớ + Thiết bị ngoại vi Các đối tượng điều khiển trong công nghiệp theo từng bit. 1 Relay, 1 động cơ, 1 tiếp điểm… Caùc nhaø cheá taïo ñaõ tích hôïp: o Boä nhôù vaø o Caùc thieát bò ngoaïi vi o VXL – caûi tieán cho phuø hôïp vôùi ñieàu khieån CN Taïo thaønh moät IC goïi laø vi ñieàu khieån (Microcontroller).
  • 50. 50 VI ĐIỀU KHIỂN Vi Xử Lý Bộ Nhớ Thiết bị ngọai vi Vi Điều Khiển
  • 51. 51 ƯU ĐIỂM CỦA VI ĐIỀU KHIỂN Deã söû duïng trong caùc öùng duïng. Khoâng ñoøi hoûi ngöôøi söû duïng phaûi hieåu bieát löôïng kieán thöùc quaù nhieàu nhö ngöôøi söû duïng VXL. Vôùi ngöôøi baét ñaàu thì söû duïng VXL laø ñieàu raát khoù, maát nhieàu thôøi gian, trong khi ñoù mong muoán laø söû duïng ñöôïc ngay.
  • 52. 52 CÁC HỌ VI ĐIỀU KHIỂN THÔNG DỤNG Haõng ATMEL: AT89C51, AT89S51, AT89S8252, AT89S52 AVR: 8515, ATMega8, ATMega16...… Haõng PHILIPS: 89V51RD1, 89V51RD2 Haõng MICROCHIP: PIC: 16F84, 16F877A, 18F452...
  • 53. 53 HỆ THỐNG SỬ DỤNG VI ĐIỀU KHIỂN CPU ROM RAM ngoại vi (IO) Bus dữ liệu (Data Bus) Bus địa chỉ (Address Bus) Bus điều khiển (Control Bus) Input Output
  • 54. 54 ĐẶC TRƯNG CÁC HỌ VI ĐIỀU KHIỂN Nguồn cung cấp Xung clock Bộ định thời (timer) Watchdog Reset Ngắt ADC Truyền thông nối tiếp Bộ so sánh analog PWM.
  • 55. 55 KIẾN TRÚC VI ĐIỀU KHIỂN Von Neumann
  • 56. 56 KIẾN TRÚC VI ĐIỀU KHIỂN HARVARD
  • 57. 57 ÔN TẬP HỆ THỐNG SỐ Các hệ thống số học: Thập phân (decimal) Nhị phân (binary) Bát phân (octal) Thập lục phân (hexadecimal) BCD Chuyển đổi giữa các số: Decbinary Binary hex Hex binary Hex dec Dec hex.
  • 58. 58 CÁCH BIỂU DIỄN Thập phân: (D) VD: 82510 = 8x102 + 2 x101 + 5x100 Nhị phân: (B) VD: 11102 = 1x 23 + 1x 22 + 1x 21 + 0x 20 100011102 Bát phân:(O) VD: 2378 = 2x 82 +3x 81 + 7x 80 Thập lục phân: (H) VD: 2AC16 = 2x 162 + 10x 161 + 12x 160 .
  • 59. 59 CHUYỂN ĐỔI Binary  Dec Dec  Binary 3 2 1 0 2 101011 1 2 0 2 1 2 1 2 11= × + × + × + × = 28/2 → 14 dư 0 (LSB) 14/2 → 7 dư 0 7/2 → 3 dư 1 3/2 → 1 dư 1 1/2 → 0 dư 1 (MSB)  111002 .
  • 61. 61 CHUYỂN ĐỔI Binary  Hexadecimal 100111112 = 1001 1111 9 F BT: 11101111000011102 Hexadecimal  Binary FE3C16 • F = 11112 • E = 11102 • 3 = 00112 • C = 11002  11111110001111002.
  • 63. 63 CHUYỂN ĐỔI Hexadecimal  Dec 2AC16 = 2 x 162 + 10 x 161 + 12 x 160 = 512 + 160 + 12 = 684 Dec  Hexadecimal • 238/16 → 14 dư 14 (E) (LSB) • 14/16 → 0 dư 14 (E) (MSB)  EE16.
  • 64. 64 CHUYỂN ĐỔI Octal  Binary 1778 • 1 = 0012 • 7 = 1112 • 7 = 1112  0011111112 Binary  Octal 1101110012 110111001 = 110 111 001 6 7 1  6718.
  • 65. 65 CÁC PHÉP TOÁN HAI SỐ NHỊ PHÂN Số âm Cộng số nhị phân Trừ số nhị phân Nhân số nhị phân Chia số nhị phân.
  • 66. 66 Số Âm Số âm và dương 4 bit
  • 67. 67 Cách Tìm Số Âm VD: -6 0110 +6 1001 bù 1 cộng 1 –––– 1010 là số - 6.
  • 68. 68 Cộng 2 Số Nhị Phân Công thức: 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 tạo ra một bit nhớ là (1) 1 + 1 + 1 = 11 tạo ra một bit nhớ là (1).
  • 69. 69 Cộng 2 Số Nhị Phân VD: 01000011 và 00100010 01000011 cột 1: 1 + 0 = 1 + 00100010 cột 2 : 1 + 1 = 10 ––––––––– cột 3: 0 + nhớ = 1 01100101 cột 4 : 0 + 0 = 0 cột 5 : 0 + 0 = 0 cột 6 : 0 + 1 = 1 cột 7 : 1 + 0 = 1 cột 8 : 0 + 0 = 0.
  • 70. 70 Trừ 2 Số Nhị Phân Chuyển số bị trừ thành số âm Cộng hai số với nhau VD: 0110 trừ cho số 0010 0010 số bị trừ 1101 bù 1 cộng 1 –––– 1110 Cộng lại: 0110 số trừ + 1110 số âm của số bị trừ –––––– 0100.
  • 71. 71 Nhân và Chia 2 Số Nhị Phân Công thức nhân: 0 x 0 = 0 0 x 1 = 0 1 x 0 = 0 1 x 1 = 1 Nhân bình thường như nhân số thập phân Chia: Tương tự như chia 2 số thập phân.
  • 72. 72