Bài giảng: Kỹ thuật số Nguyễn Trọng Hải

271 50 0
Bài giảng: Kỹ thuật số  Nguyễn Trọng Hải

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Môn học này cung cấp cho sinh viên kiến thức về kiến trúc vi xử lý, kiến trúc vi điều khiển, hệ thống bộ nhớ, kỹ thuật giao tiếp vi xử lý, kỹ thuật truyền dữ liệu, lập trình hợp ngữ/C cho vi điều khiển. Sau khi học môn này, sinh viên có khả năng phân tích và thiết kế hệ thống dựa trên vi xử lý, phát triển các kỹ thuật giao tiếp vi xử lý cơ bản, phát triển các kỹ thuật truyền dữ liệu cơ bản và lập trình cho hệ thống vi điều khiển sử dụng hợp ngữ và ngôn ngữ C. Nội dung Chương 1–Giới thiệu hệ vi xử lý tổng quát 1. Giới thiệu sự phát triển của các hệ vi xử lý 2. Sơ đồ khối một hệ vi xử lý cơ bản 3. CPU 4. Bộ nhớ 5. Ngoại vi 6. Bus hệ thống 7. Giải mã địa chỉ 8. Định thì 9. Chương trình 10. Vi xử lý và vi điều khiển Chương 2–Kiến trúc CPU và tập lệnh 1. Sơ đồ khối CPU 8 bit cơ bản 2. Tổ chức các thanh ghi 3. Tổ chức bộ nhớ 4. Ghép nối bus hệ thống 5. Chu kỳ bus, chu kỳ máy 6. Tăng tốc độ CPU 7. Các phương pháp định vị địa chỉ 8. Tập lệnh 9. Khảo sát vi xử lý‎ Z80 Chương 3–Họ vi điều khiển 8051 1. Giới thiệu tóm tắt họ vi điều khiển 8051 2. Kiến trúc phần cứng 8051 3. Các phương pháp định địa chỉ 4. Tập lệnh 5. Bộ định thì 6. Cổng nối tiếp 7. Ngắt 8. Lập trình hợp ngữ 8051 Chương 4–Họ vi xử lý‎ 80x86 1. Giới thiệu 2. Kiến trúc phần cứng 3. Các phương pháp định địa chỉ 4. Tập lệnh 5. Ngắt 6. DMA 7. Chế độ làm việc min/max 8. Lập trình hợp ngữ Chương 5–Thiết kế hệ vi xử lý‎ 1. Giải mã địa chỉ 2. Giao tiếp bộ nhớ 3. Giao tiếp ngoại vi song song 4. Giao tiếp ngoại vi nối tiếp 5. Giao tiếp bàn phím 6. Giao tiếp bộ hiển thị LED 7 đoạn và LCD 7. Giao tiếp ADC và DAC 8. Điều khiển động cơ DC, động cơ bước 9. Giao tiếp bus I2C 10. Thiết kế một kit vi xử lý tiêu biểu Chương 6–Giới thiệu họ vi xử lý‎ 68000 1. Giới thiệu 2. Kiến trúc phần cứng 3. Các phương pháp định địa chỉ 4. Tập lệnh Chương 7–Đa xử lý‎ 1. Giới thiệu về hệ đa xử lý 2. Đa xử lý ghép song song 3. Đa xử lý ghép DPRAM 4. Đa xử lý ghép nối tiếp 5. Các vấn đề cần lưu ý trong thiết kế đa xử lý Nội dung chính: - Nguyên tắc cơ bản của hệ thống vi xử lý: CPU (kiến trúc, phân loại), bộ nhớ (ROM và RAM, sắp thứ tự byte trong bộ nhớ, thiết bị ngoại vi, bus hệ thống, giải mã địa chỉ, qui ước trong giản đồ định thì. - Nghiên cứu của một vi điều khiển 8 bit điển hình (Intel MCS 51): kiến trúc Harvard, giao tiếp bộ nhớ, kết nối hệ thống bus, chu kỳ bus và chu kỳ máy, các cách định địa chỉ, tập lệnh, lập trình hợp ngữ, ngắt và thiết bị ngoại vi có sẵn (định thì /bô đếm, cổng nối tiếp, các cổng I/O). - Phân tích và thiết kế hệ thống số dựa trên 8051: giải mã địa chỉ bộ nhớ và I/O, I/O song song 1/9(phím nhấn/bàn phím, ADC/DAC, PIO, LED đơn, LED 7 đoạn, màn hình LCD), I/O nối tiếp (RS232, LCD loại nối tiếp ), ngắt ngoài, điều khiển động cơ DC, và thí dụ thiết kế. - Lập trình C cho vi điều khiển 8051: trình biên dịch Keil C, các loại dữ liệu, phát biểu, các cấu trúc lập trình, lập trình I/O song song, lập trình mạch định thì /bộ đếm, lập trình cổng nối tiếp và các thí dụ ứng dụng.

BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHỆ THÀNH PHỐ HỒ CHÍ MINH BÀI GIẢNG KỸ THUẬT SỐ Ths NGUYỄN TRỌNG HẢI LƯU HÀNH NỘI BỘ 05/2006 CuuDuongThanCong.com https://fb.com/tailieudientucntt MỤC LỤC TỔNG QUAN Trang CHƯƠNG HỆ THỐNG SỐ ĐẾM 1.1 Cơ số – chuyển đổi số 1.2 Caùc mã hóa số hệ mười thông dụng 14 CHƯƠNG ĐẠI SỐ BOOLEAN VÀ CÁC CỔNG LOGIC 24 2.1 Khái niệm logic hai trạng thái 24 2.2 Bảng thaät 24 2.3 Các phép toán .25 2.4 Mô tả mạch logic theo phương pháp đại số .25 2.5 Thực mạch logic từ biểu thức Boolean 25 2.6 Cổng NOR NAND .26 2.7 Phép toán XOR phép toán tương đương 27 2.8 Các định lý đại số Boolean 27 2.9 Logic dương âm 31 2.10 Các hàm phương pháp biểu diễn 23 2.11 Tối thiểu hàm logic bìa K 38 CHƯƠNG MẠCH LOGIC TỔ HÔÏP 45 3.1 Giới thiệu 45 3.2 Thieát kế mạch logic tổ hợp .45 3.3 Kỹ thuật cực tiểu Quine-Mc Cluskey .47 3.4 Thiết kế mạch không sử dụng bảng thật 49 3.5 Mạch giải maõ 53 3.6 Mạch mã hóa 59 3.7 Bộ chọn kênh 62 3.8 Boä phân kênh 65 3.9 Mạch số học 67 3.10 Mạch chuyển mã 69 CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƯƠNG HỆ TUẦN TỰ 74 4.1 Toång quan .74 4.2 Các phần tử hai trạng thái beàn 75 4.3 FlipFlop 76 4.4 FlipFlop duøng xung clock 79 4.5 Các ứng dụng FlipFlop 83 4.6 Máy trạng thaùi 104 4.7 Lưu đồ máy trạng thái 105 4.8 Bộ nhớ bán dẫn .116 4.9 ROM – thiết kế hệ thống số dùng ROM 118 4.10 PLD tổ hợp 127 4.11 PLD .132 4.12 Caùc PLD khác 135 CHƯƠNG CÁC HỌ VI MẠCH SOÁ 146 5.1 Toång quan .146 5.2 Các đặc trưng vi mạch số .146 5.3 Hoï RTL 148 5.4 Hoï DTL .148 5.5 Hoï TTL 148 5.6 Các đặc điểm họ TTL chuaån 149 5.7 Họ TTL cải tiến 150 5.8 Hoï TTL với ngõ cực thu hở 150 5.9 Hoï TTL ba trạng thái 151 5.10 Maïch logic MOS 151 5.11 Hoï CMOS 151 5.12 Một số vi mạch thông dụng 152 CHƯƠNG GIAO TIẾP TƯƠNG TỰ - SỐ 153 6.1 Biến đổi ADC .153 6.2 Biến đổi DAC .160 PHỤ LỤC A TRA CỨU CÁC IC THÔNG DỤNG 167 PHỤ LỤC B CÔNG CỤ CAD TRONG THIẾT KẾ SỐ .251 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số Tổng quan TỔNG QUAN Các hệ thống số thường sử dụng rộng rãi tính toán xử lý data hệ thống điều khiển, thông tin, đo lường hệ thống số có khả xác cao hệ thống tương tự Trong hệ thống số, tín hiệu vật lý xem giá trị rời rạc, hệ thống tương tự đại lượng thay đổi liên tục Ví dụ, điện áp ngõ hệ thống số biến đổi cho ngõ có giá trị 1, điện áp ngõ từ hệ thống tương tự có giá trị thay đổi khoảng từ Vmin đến Vmax Do hệ thống số làm việc với đại lượng rời rạc, nhiều trường hợp thiết kế với kết ngõ vào ngõ cách xác Ví dụ, nhân số gồm chữ số sử dụng nhân digital kết số có 10 chữ số xác 10 Nói cách khác, ngõ nhân analog có khoảng sai số (%) tùy thuộc vào độ xác thành phần thiết lập nên nhân Thiết kế hệ thống số chia phần: Thiết kế hệ thống • Thiết kế Logic Thiết kế Mạch Thiết kế hệ thống (system design) bao goàm việc chia nhỏ hệ thống lớn thành hệ thống rõ đặc tính hệ thống Ví dụ, thiết kế hệ thống máy tính số bao gồm việc số dạng đơn vị nhớ, đơn vị toán học, thiết bị vào việc kết nối điều khiển hệ thống v.v • Thiết kế logic (logic design) bao gồm việc xác định làm để kết nối khối logic để hình thành hàm đặc biệt • Thiết kế mạch bao gồm việc kết nối bên thành phần điện trở, diode, transistor để hình thành cổng, flipflop khối logic khác Hầu hết thiết kế mạch thực dạng mạch tích hợp dùng công cụ thiết kế với trợ giúp máy tính để tạo kết nối thành phần chip silicon Nhiều hệ thống có dạng chuyển mạch sau: Inputs X1 X2 Switching Network Xm Z1 Z2 Outputs Zn Trang CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số Tổng quan Một mạng chuyển mạch có hay nhiều ngõ vào hay nhiều ngõ ra, loại switching network thông thường là: • Mạch tổ hợp, tín hiệu ngõ lệ thuộc vào trạng thái ngõ vào (không lệ thuộc vào giá trị ngõ vào trước đó) • Mạch tuần tự, ngõ tùy thuộc giá trị trước giá trị ngõ vào Nói cách khác, để xác định ngõ mạch tuần tự, chuỗi ngõ vào phải xác định Mạch gọi mạch có nhớ phải nhớ số trạng thái trước ngõ vào, mạch tổ hợp nhớ Tổng quát, mạch kết hợp mạch tổ hợp với phần tử nhớ Các khối sử dụng mạch tổ hợp cổng logic Khi thiết kế logic, phải xác định làm kết nối cổng để biến đổi tín hiệu ngõ vào thành tín hiệu ngõ mong muốn Mối quan hệ tín hiệu ngõ vào ngõ phải mô tả toán học, thiết kế số gọi đại số Boolean Các bước thiết kế mạch tổ hợp • Thiết lập bảng mô tả mối quan hệ ngõ tổ hợp ngõ vào • Thiết lập biểu thức logic toán học mô tả ngõ hàm ngõ vào • Rút gọn biểu thức logic mô tả ngõ dùng số phương pháp thông dụng bìa Karnaugh, Quine-McCluskey v.v • Thực mạch Các phần tử nhớ thiết kế mạch FlipFlop Các flipflop kết nối với cổng để hình thành mạch Các bước thiết kế mạch • Thiết lập bảng mô tả mối quan hệ ngõ ngõ • Thiết lập biểu thức logic toán học mô tả ngõ vào flipflop hàm ngõ • Rút gọn biểu thức logic mô tả ngõ vào dùng số phương pháp thông dụng bìa Karnaugh, Quine-McCluskey v.v • Thực mạch Phân tích cách tổng quát mạch thường dùng giản đồ thời gian, máy trạng thái graph Phần tử chuyển mạch dùng hệ thống số thường phần tử trạng thái, ngõ có giá trị rời rạc khác Ví dụ relay, diode, transistor Hai trạng thái relay đóng mở tùy thuộc vào nguồn cung cấp cho cuộn dây Trang CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số Tổng quan Hai trạng thái diode trạng thái dẫn không dẫn Hai trạng thái transistor bão hòa tắt, thường dùng số nhị phân hệ thống số Bất thiết kế logic số thực nhờ PLD (Programmable Logic Design) PLD tên gọi tổng quát IC số mà lập trình để thực hàm logic khác chip chứa cấu trúc mạch có qui luật cho phép người thiết kế tạo ứng dụng cụ thể Q trình thiết kế PLD sau Ý tưởng Trình soạn thảo mạch Trình soạn thảo văn Trình biên dịch mơ Kit nạp IC Một số công cụ phần mềm hỗ trợ thiết kế số: MAX+PLUS II, ABEL, SYNARYO Một số ngôn ngữ mô tả phần cứng: ABEL, VHDL, AHDL, Trang CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số Chương CHƯƠNG HỆ THỐNG SỐ ĐẾM 1.1 CƠ SỐ - CHUYỂN ĐỔI CƠ SỐ 1.1.1 Khái niệm Bất số nguyên dương R (R>1) chọn làm số cho hệ thống số Nếu hệ thống có số R số từ đến (R-1) sử dụng Ví dụ: R=8 chữ số cần thiết 0,1,2,3,4,5,6,7 Các hệ thống số thông dụng kỹ thuật số: • Thập phân (cơ số 10) • Nhị phân (cơ số 2) • Bát phân (cơ số 8) • Thập lục phân (cơ số 16) Một hệ thống với số R biểu diễn dạng (…a3a2a1a0 a-1a-2a-3…)R Phần ngun Phần thập phân Khai triển theo hàm mũ R N =(a3a2a1a0a-1a-2a-3)R = a3.R3 + a2.R2 + a1.R1 + a0.R0 + a-1.R-1 + a-2.R-2 + a-3.R-3 Với số lớn 10 cần phải thêm ký hiệu để biểu số lớn 10 Ví dụ hệ thập lục phân (hex) có số 16 A biểu thị 10, B biểu thị 11,…, F biểu thị 15 Đổi số Phần nguyên phần thập phân đổi cách riêng biệt Phần nguyên đổi cách sử dụng phép chia lặp cho số sử dụng chuỗi số dư phát sinh để tạo số Phép tính số học thực số hạng số cũ Phần thập phân đổi cách nhân lặp lại cho số mới, sử dụng số nguyên tạo để biểu thị phân số chuyển đổi, phép tính số học thực số cũ GV: Nguyễn Trọng Hải CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số Chương Ví dụ: Biến đổi phần nguyên hệ số 10 sang hệ số R N = (anan-1…a2a1a0)R = an.Rn + an-1.Rn-1 + … + a2.R2 + a1.R1 + a0 Nếu chia N cho R, nhận số dư a0 a N = an.Rn-1 + an-1.Rn-2 + … + a2.R1 + a1 + = Q1 + số dư a0 R R Chia Q1 cho R Q1 a = an.Rn-2 + an-1.Rn-3 + … + a3.R1 + a2 + = Q2 + số dư a1 R R Quá trình thực tiếp tục tìm tất hệ số an Ví dụ: Biến đổi phần thập phân hệ số 10 sang hệ số R F = (a-1a-2a-3…a-m)R = a-1.R-1 + a-2.R-2 + a-3.R-3 +… + a-m.R-m Nhân F với R FR = a-1 + a-2.R-1 + a-3.R-2 +… + a-m.R-m+1 = a-1 + F1 Với a-1 phần nguyên, F1 phần lẻ phép nhân Tiếp tục nhân R với F1 F1.R = a-2 + a-3.R-1 + a-4.R-2 + … + a-m.R-m+2 = a-2 + F2 Tiếp tục trình xác định hết hệ số a-m Biến đổi số khơng phải số 10 thực dễ dàng cách biến đổi sang số 10 biến đổi tiếp từ số 10 sang số 1.1.2 Hệ thập phân (hệ số 10) Hệ thập phân kết hợp 10 chữ số: 0, 1, 2, 3, 4, 5, 6, 7, 8, Một chữ số hệ thập phân biểu diễn theo số mũ 10 Trọng số 103 102 101 100 MSD 10-1 10-2 , Điểm thập phân LSD Số mang trọng số lớn gọi MSD (most significant digit) Số mang trọng số nhỏ gọi LSD (least significant digit) Ví dụ: Số 5346,72 biểu diễn nhö sau: 5346,72 = 5.103 + 3.102 + 4.10 + + 7.10-1 + 2.10-2 GV: Nguyễn Trọng Hải CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số • Chương Đếm hệ thập phân: 10 11 12 13 14 100 101 102 103 104 105 106 107 108 109 99 Tổng quát với N chữ số đếm 10N số khác nhau, bao gồm số Số thập phân lớn 10N – 1.1.3 Hệ nhị phân (hệ số 2) Hệ nhị phân dùng hai chữ số 0, Một số hệ nhị phân biểu diễn theo số mũ Trọng số 23 22 21 20 2-1 2-2 2-3 MSB 1 1 Điểm nhị phân LSB Một chữ số nhị phân gọi bit Chuỗi bit nhị phân gọi nibble Chuỗi bit gọi byte Chuỗi 16 bit gọi word Chuỗi 32 bit gọi double word Chữ số nhị phân bên phải chuỗi bit gọi bit có ý nghóa nhỏ (least significant bit – LSB) Chữ số nhị phân bên trái chuỗi bit gọi bit có ý nghóa lớn (most significant bit – MSB) Thường dùng chữ B cuối chuỗi bit để xác định số nhị phân Ví dụ: Số 1011,101B biểu diễn giá trị số: 1011,101B = 1.23 + 0.22 + 1.21 +1.20 + 1.2-1 + 0.2-2 + 1.2-3 GV: Nguyễn Trọng Hải CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Bài Giảng Kỹ Thuật Số • Chương Đếm hệ nhị phân Xét đếm bit, bắt đầu với tất bit = Trọng số 23 = 22 = 21 = 20 = 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 Cũng hệ thập phân, dùng N bit đếm 2N lần • Chuyển số nhị phân thành số thập phân: Phương pháp: Cộng trọng số bit Ví dụ: 1011,11B = 1.23 + 0.22 + 1.21 + + 1.2-1 + 1.2-2 = 11,75 • Chuyển số thập phân thành số nhị phân: Phương pháp: Phần nguyên: Chia 2, nhớ lại số dư Phần thập phân: Nhân 2, nhớ lại phần nguyên Ví dụ: Chuyển (25)10 số nhị phân 25 = 12 12 =6 =3 =1 =0 + số dư + số dư + số dư + số dư + số dư MSB 25 = GV: Nguyễn Trọng Hải CuuDuongThanCong.com LSB 1 0 Trang https://fb.com/tailieudientucntt ... a-m.R-m Nhân F với R FR = a-1 + a-2.R-1 + a-3.R-2 +… + a-m.R-m+1 = a-1 + F1 Với a-1 phần nguyên, F1 phần lẻ phép nhân Tiếp tục nhân R với F1 F1.R = a-2 + a-3.R-1 + a-4.R-2 + … + a-m.R-m+2 = a-2... 5-1 - 2-1 2-4 - 2-1 không mã 8-4 2-1 7-4 - 2-1 lại Ví dụ: Số thập phân 874 chuyển sang tương đương nhị phân sau: ↓ 1000 1011 1011 ↓ 0111 1010 1101 ↓ 0011 0011 0110 (thập phân) (BCD 8-4 - 2-1 ) (BCD 5-1 - 2-1 )... số 8,4,2,1 gọi trọng số mã gọi mã BCD 8-4 - 2-1 Đôi trọng số 8-4 - 2-1 tỏ không thuận tiện tính toán, số trọng số khác sử dụng nhö 2-4 - 2-1 , 5-4 - 2-1 , 7-4 - 2-1 … Thập phân 0 0 0 0 1 Trọng số 0 0 1 1 1

Ngày đăng: 24/08/2020, 06:14

Tài liệu cùng người dùng

Tài liệu liên quan