Xem mẫu

  1. dce 2009 Thiết kế mạch số dùng HDL Chương 2: Thiết kế mạch luận lý tổ hợp
  2. Computer Engineering 2009 Nội dung chính • Luận lý tổ hợp và đại số Boole • Qui tắc tối giản đại số Boole • Biểu diễn mạch luận lý tổ hợp • Đơn giản hóa biểu thức Boole • Glitch và Hazard • Các khối cơ bản cho thiết kế luận lý Advanced Digital Design with the Verilog HDL – 2 chapter 2 ©2009, Pham Quoc Cuong
  3. Computer Engineering 2009 Nội dung chính • Luận lý tổ hợp và đại số Boole • Qui tắc tối giản đại số Boole • Biểu diễn mạch luận lý tổ hợp • Đơn giản hóa biểu thức Boole • Glitch và Hazard • Các khối cơ bản cho thiết kế luận lý Advanced Digital Design with the Verilog HDL – 3 chapter 2 ©2009, Pham Quoc Cuong
  4. Computer Engineering 2009 Mạch tổ hợp – mạch tuần tự • Combinational circuit a y1  Trạng thái ngõ ra của b Combinational y2 mạch tại thời điểm t chỉ c phụ thuộc vào trạng thái Logic y3 d ngõ vào tại thời điểm t • Sequential circuit  Trạng thái ngõ ra phụ a y1 thuộc vào “lịch sử” ngõ b ra và ngõ vào hiện tại Sequential y2 c Circuit y3 Advanced Digital Design with the Verilog HDL – 4 chapter 2 ©2009, Pham Quoc Cuong
  5. Computer Engineering 2009 Điện áp nguồn • GND = 0V • Năm 1980 VDD = 5V • VDD ngày càng giảm trong các bộ xử lý hiện đại  VDD cao làm hư các Transistor  VDD thấp tiết kiệm năng lượng • VDD = 3.3, 2.5, 1.8, 1.5, 1.2, 1.0,… Advanced Digital Design with the Verilog HDL – 5 chapter 2 ©2009, Pham Quoc Cuong
  6. Computer Engineering 2009 Transistor • nMos • pMos Advanced Digital Design with the Verilog HDL – 6 chapter 2 ©2009, Pham Quoc Cuong
  7. Computer Engineering 2009 Công nghệ CMOS pMos • Complementary metal- Pull-up network oxide semiconductor Input • Output của các cổng Output CMOS luôn là 0 hoặc 1 nMos Pull-down network Invert gate NAND gate NOR gate Advanced Digital Design with the Verilog HDL – 7 chapter 2 ©2009, Pham Quoc Cuong
  8. Computer Engineering 2009 Example: O3AI • Y ( A  B  C)  D A B C D Y D A B C Advanced Digital Design with the Verilog HDL – 8 chapter 2 ©2009, Pham Quoc Cuong
  9. Computer Engineering 2009 Đại số Boole – Định nghĩa (1) • Đại số Boole gồm một tập giá trị B = {0, 1} và hai phép toán “+” và “” • Mỗi biến Boole nhận một trong hai giá trị 0 hoặc 1 • Mỗi biến Boole a có phần bù kí hiệu a’ • Một không gian nhiều chiều được bao phủ bởi một tập hợp n biến Boole được biểu diễn bằng Bn • Mỗi điểm trong không gian Bn được gọi là đỉnh và được biểu diễn bởi một vector nhị phân n chiều Advanced Digital Design with the Verilog HDL – 9 chapter 2 ©2009, Pham Quoc Cuong
  10. Computer Engineering 2009 Đại số Boole – Định nghĩa (2) • Một biến Boole được biểu diễn bằng một ký tự (a, b, c’…) • Một biểu thức Boole được biểu diễn bằng một chuỗi các biến và các phép toán Boole (abc’, a + b’c…) • Một tích của các biến được gọi là 1 cube (abc’, a’b…) • Một cube chứa một hay nhiều đỉnh • Một hàm Boole đầy đủ n ngõ nhập là một ánh xạ f : Bn   B m • Một hàm Boole không đầy đủ là ánh xạ f : Bn  {0,1,*} * don’t-care Advanced Digital Design with the Verilog HDL – 10 chapter 2 ©2009, Pham Quoc Cuong
  11. Computer Engineering 2009 Đại số Boole – Định nghĩa (3) • On_Set của một hàm Boole là tập hợp các đỉnh mà tại đó hàm khẳng định (đúng) On_Set = {x:x Bn and f(x) = 1} • Off_Set của một hàm Boole là tập hợp các đỉnh mà tại đó hàm không khẳng định (sai) Off_Set = {x:x Bn and f(x) = 0} • Don’t_care_Set là tập hợp các đỉnh mà tại đó không quan tâm đến giá trị hàm Advanced Digital Design with the Verilog HDL – 11 chapter 2 ©2009, Pham Quoc Cuong
  12. Computer Engineering 2009 Đại số Boole – Tính chất Tính chất Tổng các tích Tích các tổng a+0=a a1 = a Kết hợp với 0, 1 a+1=1 a0 = 0 Giao hoán a+b=b+a ab = ba Kết hợp a+b+c = (a+b)+c abc = (ab)c = = a+(b+c) a(bc) Phân phối a(b+c) = ab+ac a+bc = (a+b)(a+c) a+a=a aa = a (a’)’ = a a + a’ = 1 aa’ = 0 Advanced Digital Design with the Verilog HDL – 12 chapter 2 ©2009, Pham Quoc Cuong
  13. Computer Engineering 2009 Định lý De-Morgan a’ b’ a’ b’ a’.b’ (a.b)’ a+b a’+b’ (a+b)’ (a+b+c+…)’ = a’b’c’… Phủ định của một tổng bằng tích các phủ định (abc…)’ = a’+b’+c’+… Phủ định của một tích bằng tổng các phủ định Advanced Digital Design with the Verilog HDL – 13 chapter 2 ©2009, Pham Quoc Cuong
  14. Computer Engineering 2009 Nội dung chính • Luận lý tổ hợp và đại số Boole • Qui tắc tối giản đại số Boole • Biểu diễn mạch luận lý tổ hợp • Đơn giản hóa biểu thức Boole • Glitch và Hazard • Các khối cơ bản cho thiết kế luận lý Advanced Digital Design with the Verilog HDL – 14 chapter 2 ©2009, Pham Quoc Cuong
  15. Computer Engineering 2009 Các qui tắc tối giản đại số Boole Tổng các tích Tích các tổng ab+ab’ = a (a+b)(a+b’) = a a+ab = a a(a+b) = a ab’+b = a+b (a+b’)b = ab a+a’b = a+b (a’+b)a = ab (a+b)(a’+c) = ac + a’b ab+a’c = (a+c)(a’+b) ab+bc+a’c = ab+a’c (a+b)(b+c)(a’+c) = (a+b)(a’+c) Advanced Digital Design with the Verilog HDL – 15 chapter 2 ©2009, Pham Quoc Cuong
  16. Computer Engineering 2009 Phần phụ đại số của hàm Boole (co-factor) • Một hàm boole f(x1, x2, x3,…,xn) có phần phụ đại số với biến xi là fxi = f(x1, x2, x3,…xi-1, 1, xi+1,…,xn) • Phần phụ đại số với biến xi’ là fxi’ = f(x1, x2, x3,…xi-1, 0, xi+1,…,xn) • Khai triển Shannon hàm f theo phần phụ đại số của biến xi f = xi.fxi + xi’.fxi’ = (xi + fxi’)(xi’ + fxi) f • Vi phân của một hàm boole  fx  fx ' xi i i Advanced Digital Design with the Verilog HDL – 16 chapter 2 ©2009, Pham Quoc Cuong
  17. Computer Engineering 2009 Nội dung chính • Luận lý tổ hợp và đại số Boole • Qui tắc tối giản đại số Boole • Biểu diễn mạch luận lý tổ hợp • Đơn giản hóa biểu thức Boole • Glitch và Hazard • Các khối cơ bản cho thiết kế luận lý Advanced Digital Design with the Verilog HDL – 17 chapter 2 ©2009, Pham Quoc Cuong
  18. Computer Engineering 2009 Biểu diễn mạch luận lý tổ hợp • Biểu diễn dưới dạng sơ đồ kết nối (schematic) • Bảng sự thật (Truth table) • Biểu thức boole • BDD (binary decision diagram)  Sử dụng trong các phần mềm thiết kế tự động  Hiệu quả và dễ tính toán hơn bảng sự thật  Hỗ trợ phát hiện hazard Advanced Digital Design with the Verilog HDL – 18 chapter 2 ©2009, Pham Quoc Cuong
  19. Computer Engineering 2009 Các thuật ngữ (1) • Implicant của một hàm boole một số hạng trong biểu thức boole ở dạng tổng các tích (SOP) • Minterm là một cube trong đó tất cả các biến đều xuất hiện  abcd là một minterm của hàm f(a, b, c, d)  a’bd không là một minterm của hàm f(a, b, c, d)  Minterm được biểu diễn bằng mi, ví dụ m7 = a’bcd • Một hàm boole ở dạng SOP được gọi là chuẩn tắc (canonical) nếu mọi cube có biểu diễn duy nhất mà trong đó các biến ở dạng khẳng định hay phủ định  abcd + a’bcd là một canonical Advanced Digital Design with the Verilog HDL – 19 chapter 2 ©2009, Pham Quoc Cuong
  20. Computer Engineering 2009 Các thuật ngữ (2) • Một hàm boole ở dạng POS được gọi là chuẩn tắc (canonical) nếu mọi thừa số có biểu diễn duy nhất mà trong đó các biến ở dạng khẳng định hay phủ định  (a+b+c)(a+b’+c) là một canonical • Maxterm là một tổng các biến mà trong đó mỗi biến xuất hiện một lần ở dạng khẳng định hoặc phủ định • Một cube được gọi là dư thừa (redundant) nếu tập hợp các đỉnh mà nó biểu diễn là con của tập hợp các đỉnh được biểu diễn bởi một cube khác • Một biểu thức boole không dư thừa (irredundant) nếu không có cube nào chứa cube khác (không có cube dư thừa) Advanced Digital Design with the Verilog HDL – 20 chapter 2 ©2009, Pham Quoc Cuong
nguon tai.lieu . vn