1. GIỚI THIỆU (tt)
n PLD là tên gọi chung cho các vi mạch số có thể lập trình để cung cấp các chức năng khác nhau.
n Một PLD có thể được xem như một “hộp đen” (black box).
53 trang |
Chia sẻ: hoang10 | Lượt xem: 669 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng môn Kỹ thuật số 2 - Chương 3: Các thiết bị logic lập trình, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 3 CÁC THIẾT BỊ LOGIC LẬP TRÌNHBài giảng mơn Kỹ thuật số 21Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆUCác chọn lựa cho việc thực hiện mạch: Bài giảng mơn Kỹ thuật số 22Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)PLD là tên gọi chung cho các vi mạch số có thể lập trình để cung cấp các chức năng khác nhau.Một PLD có thể được xem như một “hộp đen” (black box).Hình 3.1 PLD như một hộp đen.Bài giảng mơn Kỹ thuật số 23Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)Hình 3.2 Một cấu trúc lập trình đơn giản.Có thể chia thành 3 họ PLD chính: SPLD (Simple PLD), CPLD (Complex PLD) và FPGA (Field Programmable Gate Array).SPLD: ROM, PLA, PAL, GAL CPLDFPGABài giảng mơn Kỹ thuật số 24Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)Các công nghệ lập trình:Cầu chì (fusible link)Làm đứt (nóng chảy - blowing) cầu chì để ngắt một kết nối giữa các đường.Chỉ có thể lập trình một lần.Có thể tích hợp với mật độ rất cao.Hình 3.3 Công nghệ cầu chì.Bài giảng mơn Kỹ thuật số 25Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)Cầu chì nghịch (antifuse)Hình 3.4 Công nghệ cầu chì nghịch.Bài giảng mơn Kỹ thuật số 26Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)Công nghệ EPROM-BasedCác transistor nMOS được dùng để chuyển mạch cho các kết nối giữa các đường.Có thể tích hợp với mật độ tương đối cao.Hình 3.5 Công nghệ EPROM-Based.a. PROMb. EPROMBài giảng mơn Kỹ thuật số 27Giảng viên: NguyễnHữu Chân Thành1. GIỚI THIỆU (tt)Công nghệ SRAM-BasedMột bit bộ nhớ sẽ điều khiển một phần tử chuyển mạch.Có thể lập trình hay lập trình lại trên mạch (in-circuit programming).Không giữ thông tin khi tắt nguồn (volatile).Hình 3.6 Công nghệ SRAM-Based.Bài giảng mơn Kỹ thuật số 28Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (Programmable Logic Array)Bao gồm hai tầng cổng logic: một mảng cổng AND lập trình theo sau là một mảng cổng OR lập trình.Các thông số:Số ngõ vào (n)Số ngõ ra (m)Số hạng tích (k) Hình 3.7 Cấu trúc tổng quát của một PLA.Bài giảng mơn Kỹ thuật số 29Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.1: Hình 3.8 là sơ đồ chi tiết của một PLA nhỏ với 3 ngõ vào, 4 số hạng tích và 2 ngõ ra.Hình 3.8 Sơ đồ mức cổng của 1 PLA.Hình 3.9 Sơ đồ nguyên lý của PLA hình 3.8Bài giảng mơn Kỹ thuật số 210Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ngoài ra, cực tính ngõ ra cũng có thể lập trình bằng cách nối thêm một cổng EX-OR vào mỗi ngõ ra. Hình 3.10 Cấu trúc của PLA 4x8x4 với cực tính ngõ ra lập trình được.Bài giảng mơn Kỹ thuật số 211Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.2: Thực hiện mạch cộng đủ dùng PLA 4x8x4 trên hình 3.10.Hình 3.11 Mạch cộng đủ dùng PLA.Bài giảng mơn Kỹ thuật số 212Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.3: Thực hiện hàm sau dùng PLA 4x8x4 trên hình 3.10:Hình 3.12 Mạch cho ví dụ 3.3Bài giảng mơn Kỹ thuật số 213Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.3: (tt) Một cách khác để thực hiện hàm trên là rút gọn hàm trước. Hàm sau khi rút gọn:Hình 3.13 Mạch dạng khác cho ví dụ 3.3.Bài giảng mơn Kỹ thuật số 214Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Trường hợp thực hiện nhiều hàm trên một PLA cố gắng dùng lại các số hạng tích trùng lặp các hàm có thể ở dạng không tối giản. Ví dụ 3.4: Xét bốn hàm 4 biến được mô tả ở hình 3.14:Hình 3.14 Các hàm cần thực hiện trên PLA.Bài giảng mơn Kỹ thuật số 215Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.4: (tt) → cần 14 số hạng tích (cho cả 2 trường hợp) Hình 3.15 Lập trình với: (a) Các minterm; (b) Các thành phần rút gọn.Bài giảng mơn Kỹ thuật số 216Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.4: (tt) Dùng chung các số hạng tích trùng lặp :Hình 3.16 Phủ bốn hàm với 11 thành phần tích.Bài giảng mơn Kỹ thuật số 217Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Bài tập: Xác định hàm F1 và F2 trong cài đặt PLA hình sau:Hình 3.17Bài giảng mơn Kỹ thuật số 218Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Trường hợp thực hiện mạch tuần tự: dùng PLA thực hiện mạch logic tổ hợp trạng thái kế tiếp và ngõ ra, kết hợp với các FF để làm các phần tử nhớ. Hình 3.18 Sơ đồ khối thực hiện mạch tuần tự dùng PLA và D-FF.Bài giảng mơn Kỹ thuật số 219Giảng viên: NguyễnHữu Chân Thành2. THIẾT KẾ MẠCH DÙNG PLA (tt)Ví dụ 3.5: Thực hiện ASM cho ở ví dụ 2.4 dùng PLA và D-FF:Hình 3.19 Dùng các biểu thức đơn giản hóa.Hình 3.20 Dùng trực tiếp các đường nối từ lưu đồ.Bài giảng mơn Kỹ thuật số 220Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (Programmable Array Logic)Cấu trúc của PAL tương tự như PLA nhưng chỉ có mảng AND lập trình được, mảng OR thì cố định. Ưu điểm:Mảng OR nhanh hơn và nhỏ hơn Giá thành giảmThường có sẵn các FF → các thiết kế mạch tuần tự.Khuyết điểm:Chức năng bị hạn chếKhông thể dùng chung các số hạng tích. Bài giảng mơn Kỹ thuật số 221Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt)Ví dụ 3.6: PAL với 3 ngõ vào, 2 ngõ ra và 4 số hạng tích như ở hình 3.21 thực hiện các hàm sau: Hình 3.21 Thực hiện hàm với PAL của ví dụ 3.6. Bài giảng mơn Kỹ thuật số 222Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt)Ví dụ 3.7: Thực hiện các hàm sau dùng PAL được cho trên hình 3.22a: Hình 3.22 Thực hiện hàm với PAL của ví dụ 3.7. b) a) XXXBài giảng mơn Kỹ thuật số 223Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt)Trường hợp dùng PAL thực hiện mạch tuần tự: tương tự PLA.Ví dụ 3.8: Thực hiện mạch tuần tự Moore phát hiện chuỗi 101 dùng PAL và các D-FF:Hình 3.23 Thực hiện mạch tuần tự với PAL và D-FF của ví dụ 3.8. Bài giảng mơn Kỹ thuật số 224Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt)Trường hợp dùng PAL thực hiện mạch tuần tự: tương tự PLA.Ví dụ 3.8: Thực hiện mạch tuần tự Moore phát hiện chuỗi 101 dùng PAL và các D-FF:Hình 3.23 Thực hiện mạch tuần tự với PAL và D-FF của ví dụ 3.8. Bài giảng mơn Kỹ thuật số 225Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt) Hình 3.24 Sơ đồ logic của PAL 16L8.Giới thiệu một số loại PAL: Bài giảng mơn Kỹ thuật số 226Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt) Hình 3.25 Sơ đồ logic của PAL 16R4.Bài giảng mơn Kỹ thuật số 227Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt) Hình 3.26 Sơ đồ logic của PAL 16R6.Bài giảng mơn Kỹ thuật số 228Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG PAL (tt) Hình 3.27 Sơ đồ logic của PAL 16R8.Bài giảng mơn Kỹ thuật số 229Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG GAL (Generic Array Logic)GAL: có thêm các mạch phụ ở sau ngõ ra cổng OR cho phép lập trình với các cấu hình khác nhau → macrocell. Hình 3.28 Cấu trúc tiêu biểu của một macrocell.Bài giảng mơn Kỹ thuật số 230Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG GAL (tt) Hình 3.29 Sơ đồ logic của GAL 16V8C (cấu hình “Complex”).Giới thiệu một số loại GAL: Bài giảng mơn Kỹ thuật số 231Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG GAL (tt) Hình 3.30 Sơ đồ logic của GAL 16V8R (cấu hình “Registered”).Bài giảng mơn Kỹ thuật số 232Giảng viên: NguyễnHữu Chân Thành3. THIẾT KẾ MẠCH DÙNG GAL (tt) Hình 3.31 Sơ đồ logic của GAL 22V10.Bài giảng mơn Kỹ thuật số 233Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLDMột CPLD gồm nhiều khối mạch trên 1 vi mạch đơn với các khối nối dây bên trong kết nối các khối mạch với nhau.Mỗi khối mạch thường có cấu trúc tương tự PLA hay PAL. Hình 3.32 Cấu trúc của một CPLD.Bài giảng mơn Kỹ thuật số 234Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.33 Cấu trúc một phần của CPLD.Bài giảng mơn Kỹ thuật số 235Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.34a Cấu trúc CPLD Altera Max 7000 series.Giới thiệu một số loại CPLDLAB: Logic Array BlocksPIA : Programmable Interconnect ArrayBài giảng mơn Kỹ thuật số 236Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.34b Cấu trúc LAB của Altera Max 7000 series.Giới thiệu một số loại CPLDBài giảng mơn Kỹ thuật số 237Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.34c Cấu trúc macrocell của Altera Max 7000 series.Giới thiệu một số loại CPLDBài giảng mơn Kỹ thuật số 238Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.35a Cấu trúc CPLD Xilinx XC9500 series.Giới thiệu một số loại CPLDBài giảng mơn Kỹ thuật số 239Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.35b Cấu trúc khối tạo hàm (FB) của Xilinx XC9500.Giới thiệu một số loại CPLDBài giảng mơn Kỹ thuật số 240Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.35c Cấu trúc khối phân phối số hạng tích và macrocell của Xilinx XC9500.Giới thiệu một số loại CPLDBài giảng mơn Kỹ thuật số 241Giảng viên: NguyễnHữu Chân Thành4. GIỚI THIỆU VỀ CPLD (tt)Hình 3.35d Cấu trúc khối I/O của Xilinx XC9500 series.Bài giảng mơn Kỹ thuật số 242Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGAFPGA không chứa các mảng AND và OR mà nó cung cấp các khối logic khả cấu hình CLB (Configurable Logic Block) để cài đặt các hàm mong muốn. Hình 3.36 Cấu trúc tổng quát của một FPGA.Bài giảng mơn Kỹ thuật số 243Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Mỗi khối logic trong FPGA tiêu biểu có một số ít các ngõ vào và 1 ngõ ra.Có nhiều loại khối logic, loại thường được sử dụng nhiều nhất là bảng tra LUT (lookup table) chứa các ô nhớ lưu trữ (storage cell) dùng để cài đặt các hàm logic nhỏ. Hình 3.37 LUT 2 ngõ vào.Bài giảng mơn Kỹ thuật số 244Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.38 LUT 3 ngõ vào.Bài giảng mơn Kỹ thuật số 245Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.39 Một phần của FPGA được lập trình. Bài giảng mơn Kỹ thuật số 246Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.40a Cấu trúc khối CLB của Xilinx XC4000.Giới thiệu một số loại FPGABài giảng mơn Kỹ thuật số 247Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.40b Cấu trúc khối I/O của Xilinx XC4000.Giới thiệu một số loại FPGABài giảng mơn Kỹ thuật số 248Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.40c Cấu trúc khối kết nối của Xilinx XC4000.Bài giảng mơn Kỹ thuật số 249Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.41a Cấu trúc của FPGA Altera Flex 8000 series.Giới thiệu một số loại FPGABài giảng mơn Kỹ thuật số 250Giảng viên: NguyễnHữu Chân Thành5. GIỚI THIỆU VỀ FPGA (tt)Hình 3.41b Cấu trúc khối LAB và LE của Altera Flex 8000 series.Giới thiệu một số loại FPGABài giảng mơn Kỹ thuật số 251Giảng viên: NguyễnHữu Chân Thành6. THIẾT KẾ MẠCH DÙNG ROMTham khảo giáo trình (trang 92-100). Bài giảng mơn Kỹ thuật số 252Giảng viên: NguyễnHữu Chân ThànhQ&ABài giảng mơn Kỹ thuật số 253Giảng viên: NguyễnHữu Chân Thành