Xây dựng các Hệ thống nhúng
1
HC VIN CÔNG NGH BƯU CHÍNH VIỄN THÔNG
Khoa Công ngh thông Tin
B môn Khoa hc máy Tính
XÂY DNG CÁC
H THNG NHÚNG
Hà Ni, tháng 11 m 2013
(bn sa và b sung)
PTIT
Xây dựng các Hệ thống nhúng
2
Lời nói đầu
Dạy học hệ thống nhúng đề cập tới một chủ đề phạm vi rộng bao gồm thiết kế,
môi trường ứng dụng, loại hình công nghệ, qui tắc cần thiết để tiếp cận một cách hệ thống.
Lĩnh vực thiết kế ứng dụng các hệ thống nhúng bao gồm : các hệ thống vi điều khiển (micro-
controller) nhỏ đơn giản, c hthống điều khiển, hệ thống nhúng phân tán, hệ thống trên
chip, mạng máy tính (có dây và không dây), các hệ thống PC nhúng, các hệ thống ràng buộc thời
gian, robotic, các thiết bị ngoài của máy tính, xtín hiệu, hệ thống lệnh điều khiển… Nền
tảng công nghệ hiện đại k thuật vi điện tử với mật độ tích hợp lớn rất lớn. Khi muốn thiết
kế hệ thống nhúng, nhiều yếu tố cần tuân thủ giống như khi thiết kế máy tính, nhưng lại bị
ràng buộc bởi đặc thù ứng dụng. Thêm vào đó sự đan chéo của các kỹ năng rất cần thiết cho
thiết kế hệ thống nhúng, độc lập vận hành, thiết kế với tiêu chí tiêu hao năng lượng thấp, công
nghệ phần cứng, công nghệ phần mềm (hệ thống ứng dụng), hệ thời gian thực, tương c
người y đôi khi cả vấn đề an ninh hệ thống. Như vậy đào tạo học hệ thống nhúng cần
một khối lượng kiến thức tập hợp ít nhất từ các bộ môn khác như khoa học y tính (computer
science), khoa học truyền thông (communication), kỹ thuật thiết kế điện tử: các mạch tương tự và
số, sử dụng tốt các phần mềm thiết kế bo mạch (như Protel, Proteus, DXP…), kiến thức về chế
tạo bán dẫn. bộ môn công nghệ tính ứng dụng cao với bài toán cụ thể, nên lại cần
chuyên môn của ngành nghề, đó hệ thống nhúng sẽ ứng dụng. Tóm lại đây một chủ đề
hợp nhất và việc thực hiện chủ đề này thực không dễ dàng.
Với lượng thời gian nhất định, môn học XÂY DỰNG CÁC HỆ THỐNG NHÚNG sẽ
mang lại cho người học những vấn đề bản nhất về hệ thống nhúng Chương 1. Chương 2 đề
cập tới kiến trúc phần cứng hệ thống, cách thiết kế một số khối chức năng sở tính thực tế
cao. Chương 3 chủ yếu giới thiệu về phần mềm cài đặt trên hệ thống nhúng, bao gồm các trình
điều khiển thiết bị, các phần mềm trung gian, và phần mềm hệ thống được cài đặt . Đặc biệt nhắc
lại một số yêu cầu về khái niệm của các hệ thống thời gian thực hệ điều hành thời gian thực.
Chương 4 giới thiệu các tiêu chí và phương pháp thiết kế hệ thông nhúng. Cuối chương là một số
các bài tập lớn kiểu Dự án thiết kế, có thể lựa chọn cho thực hành với các kiểu kiến trúc hệ thống
nhúng khác nhau.
Như đã nêu, đây là chủ đề rộng, mang tính kỹ thuật và kiến thức lại được tổng hợp từ các
môn khác, nên tài liệu này chắc không thể thật sự đầy đủ. Các phần kiến thức nào không được đ
cập sâu ở đây, người học cần tham khảo thêm các tài liệu khác, hay từ các môn học liên quan.
Tác giả xin chân thành cám ơn các cán bộ, giảng viên Khoa Công nghệ thông tin bộ
môn Khoa học máy tính, Học viện Công nghệ BCVT Hà Nội đã góp ý để tác giả hoàn thành giáo
trình. Tác giả cũng xin đón nhận các ý kiến đóng góp, phê bình từ người đọc, người học, sao cho
tài liệu này có ích hơn. Địa chỉ theo e-mail: htcuoc@ioit.ac.vn.
PTIT
Xây dựng các Hệ thống nhúng
3
Hà Nội, tháng 10 năm 2013
Huỳnh Thúc Cước,
Viện Công nghệ thông tin, VAST, 18, Hoàng Quốc Việt, Hà Nội.
PTIT
Xây dựng các Hệ thống nhúng
4
Lời nói đầu ..................................................................................................................................................... 2
Mt s ch viết tt .......................................................................................................................................... 7
Danh sách các hình v .................................................................................................................................... 9
Chương 1. GII THIU CHUNG V CÁC H THNG NHÚNG ........................................................... 15
1.1 KHÁI NIM V H THNG NHÚNG (HTN) ................................................................. 15
1.2 ĐẶC ĐIM CA HTN ....................................................................................................... 15
1.3 CÁC YÊU CU VI HTN ............................................................................................... 18
1.4 MÔ HÌNH TNG TH HTN .............................................................................................. 19
1.4.1 Mô hình cu trúc phn cứng của máy tính ........................................................................... 19
1.4.2 Kiến trúc ca CPU ............................................................................................................... 23
1.4.3 Mô hình tng quát ca mt HTN ......................................................................................... 25
1.4 PHÂN LOI HTN ............................................................................................................... 27
1.5 KẾT CHƯƠNG ................................................................................................................... 32
1.6 CÂU HI CUỐI CHƯƠNG ................................................................................................ 33
Chương 2. CÁC THÀNH PHẦN PHN CNG CA H THNG NHÚNG .......................................... 34
2.1 B X TRUNG TÂM (Central Processing Unit-CPU)................................................. 34
2.2.1 Các loi CPU và nguyên lí hoạt động .................................................................................. 34
2.2.2 Ví d v mt CPU và nguyên lí hoạt động .......................................................................... 35
2.2 CPU 8085 VÀ H THNG BUS ........................................................................................ 44
2.2.1 Khái nim và bn cht vt lý ca các BUS .......................................................................... 45
2.2.2 Khuyếch đại BUS (bus driver)............................................................................................. 47
2.2.3 Bus đồng b (Synchronous bus): ......................................................................................... 48
2.2.4 Bus không đồng b (Asynchronous bus) ............................................................................. 50
2.2.5 Trng tài BUS (bus arbitration) .......................................................................................... 51
2.2.6 Bus m rng (Expansion bus) EISA, MCA, Bus cc b, PCI ............................................. 54
2.2.7 Bus SPI (Serial Peripheral Interface ) .................................................................................. 55
2.2.8 Bus I2C (Inter-Integrated Circuit) ....................................................................................... 56
2.2.9 Thc hiện kĩ thuật ca BUS ................................................................................................. 62
2.3 BO MCH mt HTN VI CU HÌNH TI THIU ......................................................... 66
2.4 HTN VI CÁC CPU KHÁC NHAU .................................................................................. 69
2.4.1 CPU đa năng 16 bit .............................................................................................................. 69
2.4.2 Bo mch vi CPU HARVARD (microcontroller Unit-MCU) h Intel 8051/8052/8xC25173
PTIT
Xây dựng các Hệ thống nhúng
5
2.4.3 Vi mch H thng kh trình trong mt Chip (Programmable System on chip-PsoC) và
Máy tính thông minh kh trình (Programmable Intelligent Computer-PIC) ...................... 84
2.5 B NH VÀ THIT K B NH .................................................................................... 98
2.5.1 Mt s thông s chính ca mch nh .................................................................................. 99
2.5.2 Phân loi b nh ................................................................................................................ 101
2.5.3 Phân cp b nh ................................................................................................................. 108
2.5.4 T chc b nh vt lý và thiết kế b nh .......................................................................... 110
2.6 GHÉP NI VI THIT B NGOI VI ............................................................................ 121
2.6.1 Tng quan .......................................................................................................................... 121
2.6.2 Ghép ni CPU ch động .................................................................................................... 125
2.6.3 Ghép ni I/O ch động ...................................................................................................... 130
2.6.4 Cng vào/ra ........................................................................................................................ 144
2.6.5 Ghép ni vi tín hiệu tương tự (analog signal) .................................................................. 150
2.6.6 Biến đổi tương tự thành s (sa) ................................................................................... 152
2.6.7 Biến đổi s thành tương tự (DAC)..................................................................................... 153
2.7 KẾT CHƯƠNG ................................................................................................................................ 153
2.8 CÂU HI VÀ BÀI TP ................................................................................................................. 153
2.8.1 Câu hi cuối chương .......................................................................................................... 153
2.8.2 Bài tp cuối chương ........................................................................................................... 154
Chương 3. CÁC THÀNH PHẦN PHN MM CA H THNG NHÚNG .......................................... 156
3.1 TRÌNH ĐIỀU KHIN THIT B ( viết tắt: TĐKTB) ....................................................... 156
3.1.1 Tng quan .......................................................................................................................... 156
3.1.2 Các loại TĐKTB ................................................................................................................ 160
3.1.3 3.1.3 Hoạt động của TĐKTB ............................................................................................. 161
3.1.4 Phát triển TĐKTB .............................................................................................................. 161
3.1.5 Mt s ví d v TĐKTB .................................................................................................... 163
3.2 H THNG NHÚNG THI GIAN THC ...................................................................... 165
3.2.1 H điều hành đa nhiệm (multitasking) ............................................................................... 165
3.2.2 H thng thi gian thc ..................................................................................................... 184
3.2.3 H điều hành thi gian thc (RTOS) ................................................................................. 189
3.2.4 H thi gian thc không có h điều hành thi gian thc ................................................... 195
3.3 PHN MM TRUNG GIAN (middleware) ...................................................................... 198
3.4 PHN MM NG DNG ............................................................................................... 200
PTIT