Khi đọc qua tài liệu này, nếu phát hiện sai sót hoặc nội dung kém chất lượng xin hãy thông báo để chúng tôi sửa chữa hoặc thay thế bằng một tài liệu cùng chủ đề của tác giả khác. Tài liệu này bao gồm nhiều tài liệu nhỏ có cùng chủ đề bên trong nó. Phần nội dung bạn cần có thể nằm ở giữa hoặc ở cuối tài liệu này, hãy sử dụng chức năng Search để tìm chúng.
Bạn có thể tham khảo nguồn tài liệu được dịch từ tiếng Anh tại đây:
http://mientayvn.com/Tai_lieu_da_dich.html
Thông tin liên hệ:
Yahoo mail: [email protected]
Gmail: [email protected]
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
TỔNG QUAN HỆ VI XỬ LÝ
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Giới thiệu về hệ vi xử lý.
Lịch sử phát triển và phân loại các bộ vi xử lý
Các thành phần của hệ vi xử lý
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Giới thiệu
Máy tính
Lưu trữ, xử lý và liên lạc các thông tin dưới dạng số
Đơn vị đo thông tin: bit, byte, word, MB,GB
Các bộ phận căn bản
Bộ xử lý trung tâm CPU
Bộ nhớ
Vào ra
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Giới thiệu
• Phần cứng
– CPU
– Thanh ghi (register)
– Buýt
– RAM,ROM
– Vào/Ra (Imput/Output)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Giới thiệu
• Phần mềm
– Chương trình
– Ngôn ngữ máy
– Trình dịch
– Ngôn ngữ lập trình
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Phân loại máy tính
Máy tính lớn
(Mainframe)
Xử lý khối lượng lớn
dữ liệu: thống kê,
giao dịch tài chính
Máy tính con
(Minicomputer)
Phục vụ nhu cầu tính
toán vừa
IBM Z800
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Phân loại máy tính
Máy ví tính (Microcomputer): phục vụ nhu cầu tính
toán cá nhân
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Phân loại máy tính
• CISC: Máy tính với tập lệnh phức tạp
– Tập lệnh lớn, nhiều lệnh phức tạp (chu kỳ, định dạng lệnh)
– Đơn giản hoá trình dịch
– Chương trình nhỏ và nhanh hơn
– Song song hoá phức tạp
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Phân loại máy tính
• RISC: Máy tính với tập lệnh rút gọn
– Một lệnh cho 1 chu kỳ
– Định dạng lệnh đơn giản (Độ dài lệnh cố định)
– Chế độ địa chỉ đơn giản
– Chú trọng các thao tác với thanh ghi
– Song song hoá thuận tiện
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Đánh giá hiệu năng
Vi xử lý
MIPS (millions of instructions per second)
• (Số lệnh/1 xung nhịp) * xung_nhịp
FLOPS (FLoating-point Operations Per Second)
Hệ thống
Bài thử nghiệm (Benchmark)
Thao tác vào/ra
Tốc độ giao dịch
…
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Vi xử lý Intel
• 1970
– Intel 4004 : 4 bit, 2300 transitor,
tốc độ 108KHz
– Intel 8008: 8 bit, 3500 transistor
3500, tốc độ 200KHz
Intel 8080: 6000 transistor, tốc độ
2MHz
Intel 8086-8088 29,000 transistor,
tốc độ 5MHz, 8MHz, 10MHz
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Vi xử lý Intel
1980
1982: Intel 286 16 bit
–134,000 transitor, tốc độ 6MHz,
8MHz, 10MHz, 12.5MHz
1985: Intel386™, 32 bit
–275,000 transistors, tốc độ:
16MHz, 20MHz, 25MHz,
33MHz
1989: Intel486™ DX CPU, 32
bit đầy đủ
–1.2 tr transistors, tốc độ
25MHz, 33MHz, 50MHz
–Tính hợp bộ xứ lý toán học
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Vi xử lý Intel
• 1990
– 1993: Intel® Pentium® Processor
– 3.1 tr. Transistor, 60MHz, 66MHz
– 64 bít, hỗ trợ
– Hỗ trợ xử lý hình ảnh, âm thanh
– 1997: Pentium II Processor
– 7.5 tr.Transistor, 200MHz, 233MHz,
266MHz, 300MHz
– Tăng cường xử lý hình ảnh, âm thanh,
video.
– 1999: Pentium III Processor
– 9.5 tr. transistors, 650MHz đến 1.2GHz,
– Tích hợp SIMD hỗ trợ xử lý hình ảnh,
âm thanh, 3D nâng cao
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Vi xử lý Intel
• 2000
– 2000: Pentium 4 Processor
–42 tr. Transistors, 1.30, 1.40, 1.50, 1.70, 1.80 GHz
–Hỗ trợ xử lý hình ảnh, âmthanh, đồ hoạ 3D thời gian thực
– 2002: Intel Pentium 4 Processor with Hyper-Threading
– 2005: Intel Pentium D hainhân
– 2006:
–Intel Core 2 Duo
–Intel Core 2 Quad: 4 nhân
Pentium D 2 nhâm
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Kiến trúc căn bản
Địa chỉ
Dữ liệu
Điều khiển
CPU RAM
ROM
Vào
Ra
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Bộ xử lý trung tâm CPU
Thực hiện các lệnh và các thao tác số học, lô-
gíc với dữ liệu
Xung nhịp (Clock)
Quá trình thực hiện lệnh tiêu biểu
Nạp Giải mã Thực thi Ghi
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Phân luồng (pipeline)
Việc thực hiện lệnh được chia nhỏ thành các giai đoạn
Các giai đoạn được thực hiện kẽ nhau
Phân luồng lệnh
Phân luồng tính toán
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
Phân luồng lệnh
Nạp Giải mã Thực
thi
Ghi kq
Nạp Giải mã Thực
thi
Ghi kq
Nạp Giải mã Thực
thi
Ghi kq
Nạp Giải mã Thực
thi
Ghi kq
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
Bộ xử lý trung tâm CPU
Các thanh ghi cơ bản
Thanh ghi lệnh
Đếm chương trình chứa địa chỉ của câu lệnh kế
Thanh ghi địa chỉ: chứa địa chỉ dữ liệu
Các thanh ghi đa năng: chứa dữ liệu hoặc kết quả xử lý
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 21
Bộ xử lý trung tâm CPU
Đơn vị điều khiển
Đọc và giải mã các lệnh từ bộ nhớ chương trình
Sinh ra các tín hiệu điều khiển các bộ phận khác trong hệ
VXL.
Đơn vị xử lý số học và lôgíc
Thực hiện các thao tác xử lý dữ liệu
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 22
Hệ thống buýt
Truyền thông tin giữa CPU và các bộ phận khác
Ghi: dữ liệu truyền từ CPU tới bộ nhớ/thiết bị vào ra
Đọc: dữ liệu truyền từ bộ nhớ/thiết bị vào ra tới CPU
Các loại buýt
Buýt địa chỉ truyền thông tin từ CPU tới bộ nhớ/thiết bị vào
ra
Buýt dữ liệu truyền dữ liệu theo 2 chiều
Buýt điều khiển chứa các tín hiệu đồng bộ hoạt động của
các bộ phận trong hệ VXL
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 23
Hệ thống buýt
Buýt địa chỉ truyền thông tin từ CPU tới bộ nhớ/thiết bịvào ra
Độ rộng buýt xác định kích cỡ bộ nhớ tối đa cho chươngtrình
Buýt dữ liệu truyền dữ liệu theo 2 chiều
Độ rộn buýt xác định khối lượng dữ liệu tối đa cho 1 thaotác đọc/ghi
Buýt điều khiển chứa các tín hiệu đồng bộ hoạt độngcủa các bộ phận trong hệ VXL
Tín hiệu đồng hồ
Đọc/Ghi
Ngắt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 24
Hệ thống buýt
Industry Standard Architecture:8-16 bits,4-
8MHz,16MB/s
Extended Industry Standard Architecture : 32 bit,
8MHz, 32MB/s
Accelerated Graphics Port: 32 bit, 66Mhz,
264MB/s(x1)
Peripheral Component Interconnect : 32 bit,
33MHz, 132MB/s
PCI-Express: x1,1.25GHz,250MB/s (PCIe 1.x)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 25
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 26
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 27
Bộ nhớ
Lưu trữ các lệnh và dữ liệu
RAM bộ nhớ truy cập ngẫu
nhiên
RAM tĩnh
RAM động
ROM bộ nhớ chỉ đọc
PROM: Programmable
ROM
EFROM: Erasable PROM
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 28
Vào/Ra
• Truyền dữ liệu giữa CPU
và các thiết bị ngoại vi
thông qua cổng vào/ra
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 29
Modem cạc
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 30
Video cạc
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
BIỂU DIỄN DỮ LIỆU VÀ CÁC
THAO TÁC SỐ HỌC
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội Dung
Các hệ đếm và chuyển đổi
Các thao tác số học và lô gíc
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Các hệ đếm
• Hệ thập phân:
– Định trị: 0,1,2,3…9
– Cơ số : 10
– 90=9*101+0*100
• Hệ nhị phân:
– Định trị: 0,1
– Cơ số: 2
– 10 = 1*21+0*20
• Hệ thập lục phân:
– Định trị: 0,1,2..9,A,B,…F
– Cơ số: 16
– F0 = 15*161+0*160
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Chuyển đổi hệ 10 hệ 2
Số nguyên:
Chia 2 đến khi thương số = 0,
Đảo ngược số dư thu đc số hệ 2
67 ?
1000011
33 16 8 4 2 1 0
1 1 0 0 0 0 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Chuyển đổi hệ 10 hệ 2
Phân số:
Nhân 2 đến khi kết quả = 0 hoặc đạt độ chính xác cần thiết
Phần nguyên của kết quả chứa bít chuyển đổi
0.575 ?
10010
0.150 0.3 0.6 0.2 0.4 ….
1 0 0 1 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Các phép toán số học
Cộng
3 + 5 = ???
3 0 1 1
5 1 0 1
1 0 0 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Các phép toán số học
• Trừ= Cộng với số bù 2
– Số bù 2:
• x+y=0 x,y là 2 số bù
• -3: 011 100 + 1 101
5 0 1 0 1
-3 1 1 0 1
1 0 0 1 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Các phép toán số học
• Nhân = Cộng & dịch trái
5 = 1 0 1
6 = 1 1 0
1 0 1 1 1 0
0 0 0 0
<< 1 1 0 1
+ 1 0 1 0
<< 1 1 0 1
+ 1 1 1 1 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Các phép toán số học
Chia= Dịch & Trừ X/Y= T*Y+D
1. A=X-Y
A>0: Ti = 1
A<0: Ti = 0 & A=A+Y
2. Dịch trái A 1 bít
3. Lặp bước 1 : A >Y & A0
1010 100
-Y 1 1 0 0 T
A 0 1 0 1 0
-Y 1 1 0 0
A = 0 0 0 1 1
<
<
0 0 1 0
-Y 1 1 0 0
A = 1 1 1 0 1 0
Y + 0 1 0 0
= 0 0 1 0 1 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Biểu diễn số thực
Cộng/Trừ = Qui đồng số mũ + cộng/trừ định trị
X1Ym X2Y
n = (X1’ X2’)Ymax(m,n)
Nhân/Chia = Cộng/Trừ số mũ + Nhân/Chia phần định trị
X1Ym / X2Y
n = X1/ X2Y
mn
Dấu Số mũ Phần định trị
X= (Dấu)(Phần định trị )*(Cơ số) Số mũ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Các phép toán logic
OR
XOR
AND
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
LẬP TRÌNH HỢP NGỮ VỚI 8088
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Giới thiệu hợp ngữ
Các câu lệnh căn bản 8088
Các cấu trúc điều khiển
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Câu hỏi
Xây dựng lưu đồ
Các câu lệnh xử lý dữ liệu
Các cấu trúc điều khiển
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Hợp ngữ
Cú pháp câu lệnh
Tên Mã lệnh Toán hạng Chú giải
Cộng: ADD AH 30H AH=AH+30H
• Định nghĩa biến và hằng số
Tên Độ dài Giá trị Chú giải
X DB 1FH Khởi tạo 1 byte
Y DW FFFFH Khởi tạo 1 word
str DB ‘string’ Chuỗi
M DB DUP(?) Mảng
Hang EQU 1 Hằng số
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Định nghĩa các đoạn
.Stack kích_cỡ
Định nghĩa đoạn ngăn
xếp
.Data
Định nghĩa đoạn dữ liệu
.Code
Định nghĩa đoạn mã lệnh
1. .Stack 100
2. .Data
3. ….
4. .Code
5. ….
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Lưu đồ thuật toán
Bắt đầu/Kết thúc
• Điều kiện
• Thao tác
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Các thao tác số học
Dịch trái
SHL Đích,CL
• MOV CL,2
• MOV AX,5
• SHL AX,CL
Dịch phải
SHR Đích,CL
Tăng
INC DX; DX++
Giảm
DEC DX;DX--
• A=A+B ADD A, B
– VD. 3+5
– MOV AX,3
– ADD AX,5
• A=A-B SUB A, B
– A=5-3
– MOV BX,5
– SUB BX,3
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Các thao tác số học
A=A*B
MOV AX/AL,A;
MUL B
B = 1 byte: AX = tích
B = 2 byte: DXAX = tích
A=A/B
MOV [AX,DX],A
DIV B
B = 1 byte: AL thương số, AH số dư
B = 2 byte: AX thương số, DX số dư
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Các thao tác lôgic
A = A B AND A,B
A = A B OR A,B
A = A xor B XOR A,B
A > B CMP A,B
A = B; ZF = 1
A > B; ZF = 0, CF = 0
A < B; ZF = 0,CF =1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Rẽ nhánh
Ví dụ
1. CMP AX,10; kiểm tra điều kiện
2. JXX yyy; rẽ nhánh
JMP XX; Jump
JL XX; Jump if less - SF <> OF
JG XX; Jump if greater - SF = OF
JE XX; Jump if equal - ZF = 1
JA XX; Jump if above - (CF = 0) and (ZF = 0)
JB XX; Jump if below - CF = 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Cấu trúc IF …. THEN
1. CMP X,Y ; Điều kiện
2. Jmp Điều_kiện_2; Rẽ
nhánh
3. …… ; Điều kiện 1
4. JMP Thoat
5. Điều_kiện_2:
6. …
7. Thoat:
Điều
kiện ?
Điều kiện 1Điều _kiện_2
Điều kiện 2 Điều kiện 1
Thoat
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Cấu trúc IF … THEN
IF điều kiện THEN thao tác
Gán BX giá trị tuyệt đối AX
1. CMP AX,0
2. JNL GAN
3. NEG AX
4. GAN: MOV BX, AX
AX <
0
BX AX
SaiAX = - AX
Đúng
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Cấu trúc lặp FOR
Sử dụng lệnh LOOP
Số lần lặp CX
1. MOV CX,10
2. MOV AH,2
3. MOV DL,’$’
4. Hien: INT 21H
5. LOOP Hien
CX=XX
Câu lệnh
Giảm bộ đếm
Bộ đếm
= 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Cấu trúc lặp REPEAT UNTIL
1. …
2. Tiep:…
3. ….
4. CMP X,Y; điều kiện
5. JMP điều_kiện=sai;
Câu lệnh
Điều_kiện?
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Emu8086
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Bài tập
Kỹ thuật VXL, Văn Thế Minh
Ví dụ 1-11 (tr126)
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
Ghép nối 8088 với bộ nhớ
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Các loại bộ nhớ bán dẫn
Giải mã địa chỉ
Bộ nhớ kiểm tra chẵn lẻ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Bộ nhớ bán dẫn
Bộ nhớ ROM
Bộ nhớ EPROM
Bộ nhớ RAM
RAM tĩnh
RAM động
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Sơ đồ chức năng của IC nhớ
A1-Am: Địa chỉ
D0-D7: Dữ liệu
WE: Cho phép ghi
OE: Cho phép ra
CS: Kích hoạt
A0
A1
A2
Am
WE
CS
OE
D0
D1
D2
D7
WR
RD
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
EFROM Intel 2176(2Kx8)
A0-A10: Địa chỉ
CS: chọn chíp(0-đọc,1-
ghi)
PD/PGM: Duy trì/Lập
trình Vpp = 25V
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
SRAM
Hitachi HM62864 - 64K8
Tốc độ 50-85ns
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
DRAM
TMS 4464
64K4
64K = {RA0
RA7}+{CA0CA7}
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Giải mã địa chỉ
Ánh xạ các tín hiệu địa chỉ
thành tín hiệu chọn (kính
hoạt) chíp nhớ
A19A18..An CS0,CS1,…,CSn
Giải mã đầy đủ
Sử dụng A19A18..A0
Giải mã rút gọn
Sử dụng A19A18..An;n>0
A19
A18
A17
An
CS0
Các tín
hiệu điều
khiển
CS1
CSn
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Các phương pháp thực hiện giải mã
Mạch lôgic cơ bản AND/OR
Mạch giải mã tích hợp
Bộ nhớ ROM
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Mạch lôgic cơ bản AND/OR
Chíp nhớ ROM 2K8
Địa chỉ cấp: FF800FFFFF
Tín hiệu địa chỉ dùng kích hoạt chíp
A19…A16A15A12A11
1111 1111 1000 0000 0000 1111 1111 1111 1111 1111
CS = RD OR NOT(A19…A16A15A12A11)
NOT AND
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Mạch lôgic cơ bản AND/OR
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Mạch giải mã tích hợp
74-138 mạch giải mã 38
74-139 mạch giải mã 24
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Bảng dữ liệu 74-138
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Mạch giải mã dùng 74-138
Bộ giải mã không
gian nhớ 32K8
Địa chỉ F8000H-
FFFFFH
A0-A11: Tín hiệu địa
chỉ của chíp nhớ
A12-A19: Sinh ra tín
hiệu kích hoạt chíp
nhớ
A19-A16 A15 A14 A13 A12
F8 1111 1 0 0 0
F9 1111 1 0 0 1
FA 1111 1 0 1 0
FB 1111 1 0 1 1
FC 1111 1 1 0 0
FD 1111 1 1 0 1
FE 1111 1 1 1 0
FF 1111 1 1 1 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Giải mã dùng 74-138
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Giải mã dùng ROM
G A7A6A5A4A3A2A1A0
_O0
_O1
_O2
_O3
_O4
_O5
_O6
_O7
0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1
0 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1
0 1 1 1 1 1 0 1 0 1 1 0 1 1 1 1 1
0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1
0 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1
0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1
0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
Từ điều khiển kích hoạt chíp nhớ được lưu vào ROM địa chỉ 00-F7
O0=A7*..A3*~A2*~A1*~A0
O1=A7*..A3*~A2*~A1* A0
O2=A7*..A3*~A2* A1 *~A0
O3=A7*..A3*~A2* A1* A0
O4=A7*..A3* A2* ~A1* ~A0
O5=A7*..A3* A2* ~A1* A0
O6=A7*..A3* A2* A1* ~A0
O7=A7*..A3* A2* A1* A0
Các từ khác trong ROM được đặt về FF
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Giải mã dùng ROM
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
Vi mạch kiểm tra chẵn lẻ 74-280
Tổng số bít 1 luôn chẵn (EVEN) hoặc lẻ (ODD)
1010 0000 Parity = 1 (lẻ)
1010 0000 Parity = 0 (chẵn)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
Bộ nhớ kiểm tra lỗi chẵn lẻ
Dữ liệu: 2 đoạn 32K8
622562
Bít chẵn lẻ 64K1
6287
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
GHÉP NỐI 8088 VỚI THIẾT BỊ
VÀO/RA
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Phân loại
Giải mã địa chỉ
Phương pháp lập trình vào ra
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Ghép nối thiết bị vào ra
CPU
Giao tiếp
bộ nhớ
Giao tiếp
vào/ra
Bộ nhớ
Thế giới bên
ngoài
Dữ liệu
Địa chỉ
Địa chỉ
&
Điều
khiển
Địa chỉ IO
&
Điều
khiển
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Phân loại thiết bị vào/ra
Thiết bị vào/ra có không
gian địa chỉ tách biệt Thiết bị vào/ra dùng
chung không gian địa
chỉ với bộ nhớ
Địa chỉ bộ
nhớĐịa chỉ bộ
nhớ
Địa chỉ vào/
ra
Vào ra
00000 0000
FFFFF
FFFF
00000
FFFFF
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Phân loại thiết bị vào/ra
Thao tác đọc/ghi dữ
liệu
IN AX,[Địa chỉ cổng]
OUT [Địa chỉ cổng], AX
Địa chỉ cổng vào/ra
0000-FFFF: Lưu trong
DX
00-FF: địa chỉ trực tiếp
Thao tác đọc/ghi dữ
liệu
MOV [địa chỉ cổng],AX
Đọc: MOV AX,[Địa chỉ
cổng]
Địa chỉ cổng vào/ra
00000-FFFFF
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Giải mã địa chỉ
Tổ hợp các tín hiệu địa chỉ
và điều khiển thành xung
đọc/ghi
Địa chỉ riêng
• IO + RD~ + Ai…Aj = IN
• IO + WR~ + Ai…Aj = OUT
Địa chỉ chung với bộ nhớ
• M~ + RD~ + Ai…Aj = IN
• M~ + WR~ + Ai…Aj = OUT
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Bài tập
Xây dựng mạch giải mã cho thiết bị đọc có địa chỉ cổng:
8000H
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Ví dụ 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Ví dụ 2
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Ví dụ 3
G A7A6A5A4A3A2A1A0
_O0
_O1
_O2
_O3
_O4
_O5
_O6
_O7
0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1
0 1 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1
0 1 0 0 0 0 0 1 0 1 1 0 1 1 1 1 1
0 1 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1
0 1 0 0 0 0 1 0 0 1 1 1 1 0 1 1 1
0 1 0 0 0 0 1 0 1 1 1 1 1 1 0 1 1
0 1 0 0 0 0 1 1 0 1 1 1 1 1 1 0 1
0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Giao tiếp vào ra
Điều khiển IO
Thanh ghi đệm
dữ liệu
Thanh ghi trạng
thái
Điều khiển giao
thức vào/ra
Dữ liệu
Địa chỉ
Điều
khiển
Phía CPU
Cổng vào
Cổng ra
Phía thiết
bị
Đệm dữ liệu
Thực hiện giao
thức điều khiển
thiết bị
Chuyển đổi định
dạng dữ liệu
Phát hiện và sửa
lỗi
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Phương pháp lập trình vào ra
Vào ra lập trình
CPU thăm dò trạng thái thiết bị vào/ra
Thực hiện các thao tác đọc/ghi số liệu
Vào ra sử dụng ngắt
Thiết bị vào ra thông báo cho CPU về tình trạng hoạt động
CPU thực hiện thao tác đọc/ghi số liệu
Vào ra trực tiếp bộ nhớ
Yêu cầu phần cứng đặc biệt
CPU không phải thực hiện thao tác số liệu
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Ví dụ ghép nối bàn phím
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Chương trình đọc bàn phím
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Chương trình đọc bàn phím
Biết cổng ghi A
Biết cổng đọc B
Trễ ~4000 NOP
Chương trình =??
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Ghép nối hiển thị số
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Ghép nối hiển thị số
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
Ghép nối hiển thị số
Cổng A: chọn số
Cổng B: giá trị
Chương trình!!!
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
Điều khiển đèn báo hiệu
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
GHÉP NỐI 8088 VỚI BỘ ĐIỀU
KHIỂN NGẮT
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Khái niệm ngắt
Xử lý ngắt
PIC 8259A
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Ngắt
Tạm dừng thao tác hiện thời của CPU để chuyển sang
thao tác khác
Trao đổi dữ liệu với thiết bị ngoại vi
Báo lỗi
Phục vụ yêu cầu khẩn
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Phân loại ngắt
Ngắt cứng: sinh ra do các tín hiệu INTR hay NMI
Ngắt che được: chịu tác động của cờ cho phép ngắt
Ngắt không che được
Ngắt mềm: sinh ra do câu lệnh INT
Ngắt tự động (ngoại lệ): sinh do thực hiện các lệnh của
CPU như chia 0, đặt cờ ngắt, ..
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Một số lệnh liên quan ngắt
CLI: Xóa cờ ngắt
STI: Đặt cờ ngắt
INT XX: Gọi ngắt mềm số XX
IRET: Câu lệnh trờ về khi kết thúc chương trình xử lý
ngắt
HLT: Treo CPU cho đến khi có ngắt hoặc khởi động lại
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Quá trình xử lý ngắt
1. Lưu thanh ghi cờ
2. Cấm ngắt
3. Lưu đoạn lệnh
4. Lưu con trỏ lệnh
5. Nạp đoạn lệnh và con trỏ
lệnh mới
6. Thực hiện chương trình
ngắt
7. Khôi phục lại các thanh
ghi trước khi ngắt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Xử lý yêu cầu ngắt
Các ngắt cứng dùng để quản lý các thiết bị ngoại vi, đặc
biệt hiệu quả đối với các thao tác vào/ra
Tín hiệu ngắt không che được NMI dùng trong tình trạng
khẩn cấp như lỗi phần cứng
Tín hiệu ngắt thông thường INTR dùng để điều khiển
thiết bị, CPU có thể chậm trễ khi xử lý tín hiệu này
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Xử lý ngắt
Khi nhiều tín hiệu ngắt đồng thời xảy ra, tín hiệu ngắt
nào có độ ưu tiên cao nhất sẽ được đưa tới CPU
Kiểu ngắt Độ ưu tiên
Ngắt tự động Cao nhất
Ngắt không che được NMI
Ngắt che được INTR
Ngắt chạy từng lệnh Thấp nhất
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Bảng véc tơ ngắt (PC BIOS)
Số thứ tự Chức năng
0H Lỗi phép chia
1H Chạy từng bước
2H NMI
3H Dừng (break point)
8H Ngắt đồng hồ (thời gian)
10H Ngắt dùng điều khiển màn hình
13H Ngắt đọc ghi đĩa
16H Ngắt điều khiển bàn phím
21H Ngắt của DOS
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Bộ điều khiển ngắt PIC-8259A
D0-D7 Dữ liệu
RD,WR Đọc, Ghi (mức thấp)
A0 Địa chỉ thanh ghi
CS Chọn chip
CAS0-2 Ghép tầng với PIC khác
SP Xác định PIC chủ (master SP=1) thợ (slave
SP=0)
EN Mở đệm dữ liệu
INT Yêu cầu ngắt
INTA Chấp nhận ngắt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Ghép nối
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Ghép nối
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Kiến trúc 8259A
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Kiến trúc 8259
Data bus buffer: đệm dữ liệu (3 trạng thái)
R/W logic: đọc/ghi các thông tin điều khiển và trạng thái
IMR: ghi nhớ mặt nạ ngắt với các yêu cầu ngắt
IRR: Lưu trạng thái hiện thời của các yêu cầu ngắt
Priority resolver: xác định thứ tự ưu tiên của các yêu
cầu ngắt
ISR: lưu giữ các yêu cầu ngắt được phục vụ
Cascade buffer/comparator: giao tiếp giữa PIC chủ/thợ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Lập trình PIC-8259A
PIC được lập trình thông qua nạp các giá trị thích hợp
cho 7 thanh ghi (ô nhớ trong) của 8259A:
4 từ khởi tạo ICW
3 từ điều khiển hoạt động OCW
ICW xác lập chế độ hoạt động PIC-8259A
OCW điều khiển 8259A hoạt động ở các chế độ khác
nhau
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Xác lập chế độ làm việc
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
ICW1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
ICW2
Xác định số hiệu ngắt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
ICW2 với 8088/8086
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 21
ICW3
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 22
ICW4
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 23
Ví dụ
8259 kết nối với 8088, hoạt động ở chế độ độc lập, yêu
cầu ngắt kích hoạt bằng mức, có đệm dữ liệu, sử dụng
chế độ ưu tiên bình thường. Xác định từ khởi tạo cho
8259?
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 24
Từ điều khiển hoạt động OCW
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 25
OCW2
Xác định cách PIC xử lý yêu cầu ngắt
Chế độ ưu tiên cố định:
• IR0>…>IR7
Đổi mức ưu tiên tự động:
• Quay vòng
Ưu tiên đích danh
• Gán mức độ ưu tiên cho từng yêu cầu ngắt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 26
Quay vòng ưu tiên
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 27
OCW2
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 28
OCW3
Chọn các thanh ghi để đọc
Thăm dò trạng thái yêu cầu ngắt
Thao tác với thanh ghi mặt nạ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 29
Thăm dò & IRR&ISR
0 = Yêu cầu ngắt IRi không được phục vụ
1 = Yêu cầu ngắt IRi đang được phục vụ
D7 D6 D5 D4 D3 D2 D1 D0
1: có
ngắt
X x X x Số hiệu yêu cầu ngắt
IS7 IS6 IS5 IS4 IS3 IS2 IS1 IS0
D7 D6 D5 D4 D3 D2 D1 D0
0 = Có yêu cầu ngắt
1 = Không có yêu cầu ngắt
IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
D7 D6 D5 D4 D3 D2 D1 D0
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 30
Ví dụ
Cho phép ngắt tại các đầu vào IR012
Đặt 8259 hoạt động ở chế độ ưu tiên quay vòng tự động
Đặt yêu cầu ngắt IR 1 có độ ưu tiên cao nhất
Đặt yêu cầu ngắt IR 2 có độ ưu tiên cao nhất
Thực hiện kiểm tra yêu cầu ngắt bằng phần mềm (Đặt
mặt nạ ngắt, Sử dụng lệnh Poll thăm dò, đọc thanh ghi
yêu cầu ngắt)?
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 31
Trình tự sự kiện (8088)
Các tín hiệu yêu cầu ngắt do thiết bị vào/ra gửi tới PIC làm cho các bít tương ứng trong IRR được bật lên
PIC xem xét các yêu cầu ngắt và báo hiệu cho CPU khicần (INTR)
CPU xác nhận ngắt bằng cách đưa ra INTA
Khi nhận được INTA, PIC xóa bít tương ứng trong IRR và bít ưu tiên cao nhất của ISR được bật
CPU đưa ra INTA thứ 2, PIC đưa ra 1 byte dữ liệu về sốhiệu ngắt
Kết thúc chu kỳ ngắt. Nếu dùng AEOI thì bit ISR bị xóavào cuối xung INTA thứ 2. Nếu không, bít ISR giữnguyên cho đến khi có câu lệnh EOI
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
GHÉP NỐI 8088 VỚI BỘ ĐIỀU
KHIỂN VÀO RA TRỰC TIẾP BỘ
NHỚ
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
NỘI DUNG
Ghép nối vào ra trực tiếp bộ nhớ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Nội dung
Khái niệm DMA
Bộ điều khiển DMA 8237
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Truy nhập trực tiếp bộ nhớ - DMA
Truy nhập trực tiếp bộ nhớ là quá trình các thiết
bị vào/ra chiếm quyền điều khiển hệ thống buýt
của CPU
Truy nhập trực tiếp bộ nhớ thường dùng để
truyền dữ liệu với tốc độ cao như ổ cứng,
CDROM …
Ý tưởng cơ bản của DMA là truyền dữ liệu theo từng khối trực tiếp giữa bộ nhớ và thiết bị ngoại vi mà không đi qua CPU
Tốc độ truyền dữ liệu lệ thuộc vào tốc độ truy nhập của bộ nhớ và thiết bị
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Truy nhập trực tiếp bộ nhớ - DMA
Bình thường CPU toàn quyền kiểm soát buýt hệ thống.
Trong quá trình DMA, các thiết bị lấy quyền điều khiển
Các tín hiệu HOLD và HLDA được sử dụng để nhận
và xác nhận yêu cầu treo CPU
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Truy nhập trực tiếp bộ nhớ - DMA
CPU
HOLD
Bộ nhớ
Thiết bị
vào/raBộ điều khiển
DMAHLDA
DRQ
DACK
Buýt hệ thống
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Bộ điều khiển DMA – Intel 8237
Hỗ trợ 4 kênh DMA độc lập
Tự động khởi tạo độc lập cho tất cả các kênh
Điều khiển cho phép hoặc cấm từng yêu cầu DMA riêng
lẻ
Truyền từ bộ nhớ tới bộ nhớ
Khởi tạo các khối bộ nhớ
Tự động tăng/giảm địa chỉ
Tốc độ truyền dữ liệu tới 1.6MB/s với 8237A ở 5MHz
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Các tín hiệu 8237
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Sơ đồ khối 8237
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Sơ đồ khối 8237
Timing Control
Sinh ra các tín hiệu định thời bên trong và tín hiệu điều
khiển bên ngoài cho 8237
Program Command Control
Giải mã các câu lệnh gửi tới 8237 trước khi phục vụ yêu
cầu DMA
Giải mã từ điều khiển chế độ xác định kiểu DMA trong khi
phục vụ yêu cầu DMA
Priority Encoder
Giải quyết xung đột yêu cầu DMA đồng thời
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Sơ đồ khối 8237
Tên thanh ghi Kích
cỡ
(bít)
Số
lượng
A3..A0
Địa chỉ cơ sở 16 4
Đếm từ cơ sở 16 4
Địa chỉ hiện thời 16 4
Đếm từ hiện thời 16 4
Địa chỉ tạm 16 1
Đếm từ tạm 16 1
Trạng thái 8 1
Lệnh 8 1
Tạm 8 1
Chế độ 6 4
Mặt nạ 4 1
Yêu cầu 4 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Ghép nối với CPU
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Biểu đồ thời gian
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Hoạt động của 8237
Bao gồm 2 chu kỳ: rỗi và hoạt động
Chu kỳ rỗi
Kiểm tra các tín hiệu DREQ xem có thiết bị nào yêu cầu
DMA
Kiểm tra CS nếu CPU có yêu cầu đọc/ghi các thanh ghi
bên trong
Chu kỳ hoạt động
Diễn ra khi có yêu cầu DREQ từ thiết bị
Gửi tín hiệu HRQ tới CPU
Hoạt động ở 1 trong 4 chế độ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Các chế độ hoạt động
Chế độ truyền đơn
Chế độ truyền theo khối
Chế độ truyền theo yêu cầu
Chế độ xếp tầng
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Chế độ truyền đơn
Thiết bị được lập trình để chỉ thực hiện 1 thao tác truyền.
Từ đếm giảm dần, địa chỉ giảm dần (hoặc tăng) sau mỗi
thao tác truyền. Khi từ đếm giảm từ 0 sang FFFFH, quá
trình truyền kế thúc
DREQ phải giữ ở mức tích cực cho đến khi DACK được
xác nhận. Nếu DREQ giữ ở mức tích cực trong suốt quá
trình truyền đơn thì HRQ sẽ chuyển sang mức thụ động
và giải phóng buýt cho hệ thống. Quá trình tiếp tục cho
đến nhận được tín hiệu HLDA mới và, thao tác truyền
được tiếp tục
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Chế độ truyền theo khối
Bộ điều khiển DMA được kích hoạt bởi DREQ và liên tục
truyền trong quá trình phục vụ yêu cầu cho đến khi kết
thúc do bộ đếm từ chuyển từ 0 về FFFFH hoặc do tín
hiệu EOP từ bên ngoài.
DREQ chỉ cần giữ tích cực cho đến khi nhận được
DACK.
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
Chế độ truyền theo yêu cầu
Thực hiện việc truyền liên tục cho đến khi bộ đếm
chuyển sang FFFFH hoặc nhận được EOP hoặc DREQ
chuyển sang thụ động.
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
Chế độ xếp tầng
Dùng để mở rộng
hệ thống
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 21
Các kiểu truyền dữ liệu
Từ bộ nhớ tới bộ nhớ
Tự động khởi tạo
Ưu tiên
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 22
Từ bộ nhớ tới bộ nhớ
Cho phép tiết kiệm thời gian truyền dữ liệu từ không
gian nhớ này sang không gian nhớ khác
Sử dụng 2 kênh của bộ điều khiển DMA
Quá trình truyền được khởi xướng bằng cách đặt DREQ
cho kênh 0. Sau khi nhận được HLDA, bộ điều khiển
thực hiện việc truyền theo khối
Thanh ghi địa chỉ hiện thời trên kênh 0 gán vào địa chỉ bắt
đầu của không gian nhớ cần đọc
Dữ liệu được đọc vào thanh ghi tạm
Kênh 1 truyền dữ liệu từ thanh ghi tạm vào bộ nhớ. Địa chỉ
được xác định bằng thanh ghi địa chỉ hiện thời của kênh 1
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 23
Tự động khởi tạo
Trong quá trình xác lập, các giá trị của thanh ghi địa chỉ
hiện thời và đếm từ hiện thời được khôi phục từ giá trị
của thanh ghi địa chỉ cơ sở và đếm từ cơ sở của kênh
khi có tín hiệu EOP
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 24
Truyền ưu tiên
Ưu tiên cố định
Kênh 0 > ..> Kênh 3
Khi có nhiều yêu cầu DMA, kênh nào có độ ưu tiên cao
hơn được đáp ứng trước
Ưu tiên quay vòng
Kênh nào được phục vụ thì sẽ chuyển xuống độ ưu tiên
thấp nhất
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 25
Cấu trúc các thanh ghi
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 26
Cấu trúc các thanh ghi
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 27
Cấu trúc các thanh ghi
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 28
Các câu lệnh phần mềm
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 29
Mã lệnh thanh ghi đếm từ và địa chỉ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 30
Lập trình 8237
Xóa mạch lật
Cấm kênh
Đặt địa chỉ thấp (LSB), địa chỉ cao (MSB)
Đặt từ đếm thấp, từ đếm cao
Có thể đặt thêm chế độ hoạt động
Kiểm tra trạng thái kết thúc
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 31
Ví dụ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 32
Ví dụ lập trình
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
GHÉP NỐI TRUYỀN DỮ LIỆU
SONG SONG
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Giới thiệu
8255A- Giao tiếp song song
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Truyền dữ liệu nối tiếp và song song
Máy tính có thể kết nối với thiết bị theo kiểu song song
hoặc nối tiếp
Truyền dữ liệu song song cần tối thiểu 8 dây cho 8 bít
dữ liệu trong 1 byte
Các dây khác dùng cho giao thức liên lạc như thăm dò
trạng thái, xác nhận dữ liệu
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Truyền dữ liệu nối tiếp và song song
Truyền nối tiếp thường truyền dữ liệu trên 1 dây, từng
bít một. Giao tiếp vào ra sẽ chuyển đổi byte dữ liệu
thành chuỗi bít
Kết nối nối tiếp thường dùng để truyền dữ liệu đi xa.
Chuẩn nối tiếp phổ biến là RS232
Cổng song song thường nhanh hơn nối tiếp
Ví dụ: Cổng máy in, cổng nối tiếp (chuột)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
IC điều khiển song song lập trình được
8255A là thiết bị giao tiếp ngoại vi lập trình được PPI
dùng cho hệ thống máy tính Intel. Thiết bị có thể được
lập trình mà không cần thiết bị logic ngoài để giao tiếp
với thiết bị
Đệm dữ liệu: Hỗ trợ bộ đệm 8 bít, 3 trạng thái
Loogic điều khiển và đọc/ghi:
Quản lý truyền dữ liệu trong/ngoài PPI
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Tín hiệu 8255A
Tín hiệu Chức năng
CS Chọn chíp (mức thấp)
RD Đọc (mức thấp)
WR Ghi (mức thấp)
A0A1 Chọn cổng
PA7-PA0 Cổng A
PB7-PB0 Cổng B
PC7-PC0 Cổng C
D7-D0 Dữ liệu
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Sơ đồ chức năng
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Chế độ làm việc
Ba chế độ làm việcchọn bằng phầnmềm
Chế độ 0: Vào/ra cơsở
Chế độ 1: Vào/rathăm dò
Chế độ 2: Vào/rahai chiều
Chế độ làm việcđược chọn riêng rẽtrên cổng A, B
Cổng C có thể táchlàm 2 cổng riêng
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Chế độ cơ sở
Cung cấp thao tác vào/ra đơn giản cho từng cổng
Không có tín hiệu kết nối
Có thể dùng 2 cổng 8 bít và 2 cổng 4 bít
Bất kỳ cổng nào có thể dùng làm cổng vào/ra
Các tín hiệu vào ra được chốt
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Chế độ vào/ra thăm dò
Cung cấp tín hiệu kết nối qua cổng C
2 nhóm cổng A, B
Mỗi nhóm bao gồm 8 bít dữ liệu và 4 bít điều khiển
Các bít dữ liệu có thể vao/ra
4 bít điều khiển dùng để kiểm tra trạng thái dữ liệu
Đầu vào Đầu ra
STB: Kiểm tra đầu vào
(mức thấp)
IBF: Dữ liệu sẵn sàng (Mức
cao)
INTR: Báo ngắt CPU (mức
cao)
OBF: Dữ liệu ra sẵn sàng
(mức thấp)
ACK: Nhận xong dữ liệu
(mức thấp)
INTR: Báo ngắt CPU (Mức
cao)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Cổng A, B kết hợp
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Biểu đồ thời gian cổng ra
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Biểu đồ thời gian cổng vào
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Chế độ vào ra 2 chiều
Cung cấp vào/ra 2 chiều cho
kênh dữ liệu 8 bít
Các tín hiệu kết nối dùng như
trong chế độ 1.
Chỉ dùng nhóm A
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Biểu đồ thời gian
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Lập trình PPI
Từ khóa điều khiển chế độ
Từ khóa điều khiển trạng thái (cổng C)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Từ khóa điều khiển chế độ
A1 A0 Chức năng
0 0 Cổng A
0 1 Cổng B
1 0 Cổng C
1 1 Điều khiển
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 19
Từ khóa điều khiển trạng thái cổng C
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 20
Từ điều khiển trạng thái
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 21
Một số ví dụ
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI GIẢNG MÔN
Kỹ Thuật Vi Xử Lý
Giảng viên: TS. Phạm Hoàng Duy
Điện thoại/E-mail: [email protected]
Bộ môn: Khoa Học Máy Tính- Khoa CNTT1
Học kỳ/Năm biên soạn:2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 2
NỘI DUNG
Ghép nối dữ liệu nối tiếp
Giảng viên: TS. Phạm Hoàng Duy
E-mail: [email protected]
Năm biên soạn: 2009
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 3
Nội dung
Giới thiệu
8251
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 4
Truyền dữ liệu nối tiếp
Truyền nối tiếp thường truyền dữ liệu trên 1 dây, từng
bít một. Giao tiếp vào ra sẽ chuyển đổi byte dữ liệu
thành chuỗi bít
Kết nối nối tiếp thường dùng để truyền dữ liệu đi xa.
Chuẩn nối tiếp phổ biến là RS232
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 5
Truyền dữ liệu nối tiếp
Truyền dữ liệu nối tiếp đồng bộ
Truyền dữ liệu nối tiếp dị bộ
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 6
Truyền đồng bộ
Dữ liệu được truyền thành các khối với khối bắt đầu và
kết thúc. Các ký tự riêng lẻ trong khối không có các các
bit khởi đầu và kết thúc.
Ví dụ khung truyền
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 7
Truyền dữ liệu dị bộ
Không có các bít đồng bộ khối. Các ký tự được nhận
biết thông qua các bít khởi đầu (start) và kết thúc (stop).
Các bít khởi đầu, kết thúc được chèn vào đầu và cuối ký
tự
Ví dụ đoạn dữ liệu
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 8
Tín hiệu kết nối RS232
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 9
Truyền dữ liệu
Start
bitB0 B1 B2 B3 B4 B5 B6
ParityStop bits
clk
data
B0 B1 B2 B3 B4 B5
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 10
Intel 8251
Điều khiển truyền thông đồng bộ và dị bộ
Đồng bộ hỗ trợ:
Định dạng 5-8 bít/ ký tự
Tự động chèn ký tự đồng bộ
Tốc độ 64K baud
Dị bộ
Định dạng 5-8 bít/ ký tự
1,2 bít stop
Tốc độ 19.2K baud
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 11
Intel 8251 Các tín hiệu kết nối
VXL D0-D7
C/D~: Control/Data
RD~, WR~,CS~
Tín hiệu đ/k modem RS-232
Tín hiệu đườngtruyền TxD,RxD: Thu,
phát
TxRDY,RxRDY: sẵn sàng
TxE:đệm rỗng
SynDET/BD: pháthiện đồngbộ/Gián đoạn
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 12
Ghép nối
A7A6A5A4A3A2A1
IO/M
D[7:0]
RD RD
WR WR
A0 C/D
CLK CLKTxC
RxC
TxD
RxD
8251 RS232
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 13
Lập trình 8251
Các thanh ghi chế độ
Các thanh ghi trạng thái
C/D
(A0)
RD WR Thanh ghi
0 0 1 Thanh ghi đệm thu (Đọc)
0 1 0 Thanh ghi đệm phát (Ghi)
1 0 1 Thanh ghi trạng thái (Đọc)
1 1 0 Thanh ghi điều khiển (Ghi)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 14
Thanh ghi chế độ (Dị bộ)
S2 S1 EP PEN L2 L1 B2 B1 Thanh ghi chế độ
Số bít Stop
00: XX
01: 1 bit
10: 1.5 bits
11: 2 bits
Parity
0: Lẻ
1: Chẵn
Dùng Parity
0: Không
1: Có
Độ dài ký tự
00: 5 bits
01: 6 bits
10: 7 bits
11: 8 bits
Baud Rate
00: Đồng bộ
01: x1
10: x16
11: x64
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 15
Thanh ghi chế độ (Đồng bộ)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 16
Thang ghi lệnh
EH IR RTS ER SBRK RxE DTR TxE Thanh ghi lệnh
TxE: Cho phép truyền(=1)
DTR: Đầu cuối dữ liệu sẵn sàng(=1)
RxE: Cho phép nhận (=1)
SBPRK:Gửi ký tự gián đoạn(1)
ER: Xóa cờ(=1)
RTS: Yêu cầu gửi (=1)
IR: Khởi động lại(=1)
EH: Tìm ký tự đồng bộ(=1)
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 17
Thanh ghi trạng thái
BÀI GIẢNG MÔN
KỸ THUẬT VI XỬ LÝ
www.ptit.edu.vn GIẢNG VIÊN: TS. Phạm Hoàng Duy
BỘ MÔN: KHMT-Khoa CNTT1Trang 18
Lưu đồ đọc ghi đơn giản