Có thể nói, nền tảng của kỹ thuật số là các mạch logic số dựa trên sự kết hợp của các cổng logic cơ bản mà ngày nay đã được tích hợp trong các IC số.
THIẾT KẾ LOGIC SỐ2010Bộ môn Kỹ thuật xung, số, vi xử lýKhoa VTĐT – HV Kỹ thuật Quân sự9/1/2010 Thiết kế logic số 2Mục lụcMục lục 2Chương mở đầu . 81.Các khái niệm chung 81.1 Transitor 81.2 Vi mạch số tích hợp 91.3. Cổng logic . 101.4 Phần tử nhớ . 121.5 Mạch logic tổ hợp 151.6 Mạch logic tuần tự . 161.7 Các phương pháp thể hiện thiết kế 172. Yêu cầu đối với một thiết kế logic . 193. Các công nghệ thiết kế mạch logic số 204. Kiến trúc của các IC khả trình 234.1. Kiến trúc PROM, PAL, PLA, GAL . 244.2 Kiến trúc CPLD, FPGA . 28Câu hỏi ôn tập chương I 32Chương II: Ngôn ngữ mô tả phần cứng VHDL 331. Giới thiệu về VHDL 332. Cấu trúc của chương trình mô tả bằng VHDL 342.1. Khai báo thư viện 352.2. Mô tả thực thể 362.2. Mô tả kiến trúc . 392.3 Khai báo cấu hình . 443. Chương trình con và gói 473.1. Thủ tục 473.2. Hàm 49 Thiết kế logic số 33.3. Gói 504. Đối tượng dữ liệu, kiểu dữ liệu . 524.1. Đối tượng dữ liệu 524.2. Kiểu dữ liệu . 535. Toán tử và biểu thức . 605.1 Toán tử logic 615.2 Các phép toán quan hệ 625.3 Các phép toán dịch 625.4 Các phép toán cộng trừ và hợp 645.5 Các phép dấu . 655.6 Các phép toán nhân chia, lấy dư 655.6 Các phép toán khác 666. Phát biểu tuần tự 666.1. Phát biểu đợi 676.2. Phát biểu xác nhận và báo cáo 706.3. Phát biểu gán biến 706.4. Phát biểu gán tín hiệu . 716.5. Lệnh rẽ nhánh và lệnh lặp . 737. Phát biểu đồng thời 777.1. Phát biểu khối . 787.2. Phát biểu quá trình . 797.3. Phát biểu gán tín hiệu đồng thời . 827.4. Phát biểu generate 857.5. Phát biểu cài đặt module con 878. Phân loại mã nguồn VHDL . 899. Mô tả VHDL của một số khối logic tổ hợp và tuần tự thường gặp 919.1. Khối cộng/trừ 91 Thiết kế logic số 49.2. Thanh ghi 959.3. Bộ cộng tích lũy . 969.4. Bộ đếm . 989.6. Bộ dịch và thanh ghi dịch. . 1019.7. Bộ nhớ RAM 1049.8. Bộ nhớ ROM . 1079.9. Máy trạng thái hữu hạn 10910. Kiểm tra thiết kế bằng VHDL. 11110.1.1. Kiểm tra nhanh 11210.1.1. Kiểm tra tự động nhiều tổ hợp đầu vào . 114Các bài tập thực hành VHDL. 1211. Bài tập cơ sở. . 1212. Bài tập năng cao . 123Câu hỏi ôn tập lý thuyết 126Chương III: Thiết kế vi mạch số trên FPGA . 1281 Tổng quan về kiến trúc FPGA . 1281.2 Khái niệm FPGA 1281.2 Các công nghệ tái cấu trúc FPGA 1301.3 Kiến trúc tổng quan 1312. Kiến trúc chi tiết Xilinx FPGA Spartan-3E . 1322.1 Configurable Logic Block 1342.2 Input/Output Block 1512.3 Progammable Interconnects 1552.4. Các phần tử khác của FPGA . 1573. Quy trình thiết kế FPGA 1633.1 Mô tả thiết kế 1643.2 Tổng hợp thiết kế . 166 Thiết kế logic số 53.3. Hiện thực hóa thiết kế 1713.4. Cấu hình FPGA 1773.5. Kiểm tra thiêt kế trên FPGA 177Bài tập thực hành trên FPGA 1801 Bài tập cơ sở . 1802 Bài tập nâng cao 1803. Câu hỏi ôn tập lý thuyết . 181Chương IV: Thiết kế vi mạch số trên thư viện cổng chuẩn . 1831. Công nghệ chế tạo IC 1832. Tổng quan về công nghệ ASIC trên thư viện cell chuẩn . 1852.1 Khái niệm thư viện phần tử logic chuẩn . 1852.2 Các đặc trưng của cell 1862.3 Khái niệm thiết kế ASIC trên thư viện cell chuẩn 1872.4 So sánh giữa ASIC và FPGA . 1883. Quy trình thiết kế ASIC trên thư viện cổng chuẩn. 1904. Tổng hợp thiết kế bằng Synopsys Design Compiler . 1924.4. Thiết lập điều kiện làm việc, mục tiêu thiết kế (Constraint design) . 1934.2 Tổng hợp logic . 2014.3. Kiểm tra sau tổng hợp logic 2035. Thiết kế vật lý (Physical design) . 203Bài tập chương 4 . 206Bài tập . 206Nội dung ôn tập lý thuyết 210Phục lục I: Thực hành mô phỏng VHDL trên ModelSim 2111. Giới thiệu về chương trình mô phỏng Modelsim. . 2112. Viết mã nguồn VHDL . 2123. Biên dịch thiết kế. . 218 Thiết kế logic số 64. Kiểm tra và mô phỏng thiết kế 2204.1 Kiểm tra nhanh . 2204.2 Kiểm tra toàn bộ 2235. Tạo file TCL script 227Phụ lục 2: Hướng dẫn thực hành FPGA bằng Xilin ISE và Kit SPARTAN 3E 2291. Cấu hình chương trình Modelsim để hỗ trợ các thư viện UNISIM, SIMPRIM.2292 Tạo Project và mã nguồn VHDL 2333 Mô phỏng kiểm tra chức năng thiết kế. . 2404 Tổng hợp thiết kế . 2414.1 Check syntax 2414.1 Synthesis 2424.3. Đọc kết quả tổng hợp. 2434.4 Kết xuất sơ đồ công nghệ, và sơ đồ RTL (optional) 2464.5. Kiểm tra thiết kế sau tổng hợp 2474.6. Gán chân vào ra sau tổng hợp . 2495 Hiện thực hóa thiết kế . 2515.1 Translate 2515.2 Mapping . 2525.3 Routing 2536. Tạo file cấu hình FPGA 2547. Nạp cấu hình vào FPGA . 254Phụ lục 3: Thực hành tổng hợp trên thư viện cell chuẩn 2601 Bài toán cộng hai số thực . 2602 Thiết lập cài đặt thư viện. 2682. Đọc file mô tả RTL. 2703 Tổng hợp thiết kế . 2714. Đọc kết quả tổng hợp sơ bộ 272 Thiết kế logic số 75. Tối ưu hóa thiết kế, xuất kết quả và netlist . 274Tài liệu tham khảo . 279 Thiết kế logic số 8Chương mở đầu1.Các khái niệm chung1.1 TransitorLà linh kiện bán dẫn có khả năng làm việc như một công tắc bật tắt hoặc dùng để khuếch đại tín hiệu. Transitor là phần tử cơ bản của mọi vi mạch số tích hợp, từ các cổng logic đơn giản AND, OR, NOT . đến các loại phức tạp như các mạch điều khiển ngoại vi, vi điều khiển, vi xử lý…Transitor được làm từ vật liệu bán dẫn (sermiconductor), là vật liệu vừa có khả năng dẫn điện vừa có khả năng làm việc như những vật liệu cách điện, khả năng này thay đổi tùy theo kích thích từ bên ngoài như nhiệt độ, ánh sáng, trường điện từ, dòng điện… Chất bán dẫn dùng để cấu tạo transitor thường là Germany (Ge) hoặc Silicon (Si) được kích tạp một lượng nhỏ Photpho(P) hoặc Boron (B) với mục đích tăng mật độ electron (kiểu N) tự do hoặc tăng mật độ lỗ trống (kiểu P) tương ứng trong tinh thể bán dẫn. Cấu trúc nguyên lý của các dạng transitor được trình bày ở hình dưới đây:Hình 1.1: Cấu trúc transitor lưỡng cực BJTS, đơn cực FETs, diodeTransitor lưỡng cực BJT (Bipolar Junction Transitor) sử dụng nhiều trong thập kỷ 80s, đặc điểm của BJT là tốc độ chuyển mạch nhanh nhưng nhược điểm là mức tiêu thụ năng lượng lớn ngay cả trong trạng thái nghỉ và chiếm nhiều diện tích.Sau đó BJTs dần được thay thế bằng transitor đơn cực FETs(Field Effect Transitors) làm việc trên hiệu ứng trường và kênh dẫn chỉ dùng một loại bán dẫn loại p hoặc n. MOSFETs (Metal-oxide-sermiconductor Field-Effect-Transitors) là transitor FETs nhưng dùng cực Cổng metal (về sau Thiết kế logic số 9lớp metal được thay bằng polysilicon) phủ trên một lớp oxide cách điện và lớp này phủ trên vật liệu bán dẫn, tùy theo loại vật liệu bán dẫn mà transitor này có tên gọi là NMOS (kênh dẫn n) và PMOS (kênh dẫn p).CMOS (Complementary-Symmetry Metal-Oxide Sermiconductor) là transitor tạo thành từ việc ghép cặp bù PMOS và NMOS, có nhiều ưu điểm so với các dòng transitor cũ như hiệu điện thế làm việc thấp, độ chống nhiễu cao, tiêu tốn ít năng lượng và cho phép tích hợp trong IC số với mật độ cao. CMOS là công nghệ transitor được sử dụng rộng rãi nhất hiện nay.1.2 Vi mạch số tích hợpCòn được gọi là IC – Intergrated Circuits, chip, là cấu trúc mạch điện được thu nhỏ bằng cách tích hợp chủ yếu từ các transitor với mật độ cao, ngoài ra còn có thể có các linh kiện điện thụ động khác trên một khối bán dẫn mỏng.Các vi mạch tích hợp đều có một số lượng tín hiệu đầu vào và đầu ra để thực hiện một chức năng cụ thể nào đó. Trong khuôn khổ giáo trình này chủ yếu nghiên cứu về vi IC số, tức là dạng IC chỉ làm việc với các tín hiệu số. a) b)Hình 1.2: a) Mô hình Vi mạch số tích hợp. b) Vi mạch tích hợp thực tế.Vi mạch tích hợp ra đời từ những năm 1960s và được ứng dụng rộng rãi trong thực tế, đã và đang tạo ra cuộc cách mạng trong lĩnh vực điện tử. Ví dụ về vi mạch tích hợp như các IC đa dụng (general purposes IC) họ 7400, 4000, các dòng vi xử lý 80x86 dùng trong máy vi tính, chíp xử lý dùng cho điện thoại di động, máy ảnh kỹ thuật số, các vi điều khiển dùng trong các thiết bị dân dụng, ti vi, máy giặt, lò vi sóng… Các vi mạch này có mật độ tích hợp từ hàng vài chục đến hàng trăm triệu, và hiện nay đã đến hàng tỷ transitor trong một miếng bán dẫn có kích cỡ xỉ đồng xu. Mật độ tích hợp được định nghĩa là tổng Thiết kế logic số 10số những phần tử tích cực (transitor hoặc cổng logic) chứa trên một đơn vị diện tích của khối tinh thể bán dẫn. Theo mật độ tích hợp chia ra các loại vi mạch sau:- Vi mạch cỡ nhỏ SSI (Small scale integration), có hàng chục transitor trong một vi mạch.- Vi mạch cỡ vừa MSI (Medium scale integration), có hàng trăm transitor trong một vi mạch.- Vi mạch cỡ lớn LSI (Large scale integration), có hàng ngàn đến hàng chục ngàn transitor trong một vi mạch.- Vi mạch cực lớn VLSI (Very large scale integration), có hàng vạn, hàng triệu, hàng chục triệu transitor và lớn hơn trong một vi mạch, tới thời điểm hiện nay đã xuất hiện nhưng vi mạch có độ tích hợp đến hàng tỷ transitor.- Vi mạch siêu lớn (ULSI – Ultra large scale intergration), vi mạch có độ tích hợp với mức độ hàng triệu transitor trở lên.- WSI (Wafer-scale-Intergration) là giải pháp tích hợp nhiều vi mạch chức năng trên một tấm silicon (wafer) để tăng hiệu suất cũng như giảm giá thành sản phẩm, ví dụ hệ vi xử lý nhiều nhân được tích hợp bằng WSI.- SoC (System-on-a-Chip) Khái niệm chỉ một hệ tính toán, xử lý mà tất cả các khối chức năng số và cả tương tự được thiết kế để tích hợp vào trong một chip đơn.Trong khuôn khổ chương trình này sẽ dành thời lượng chính cho việc nghiên cứu cơ bản về công nghệ, phương pháp, quá trình thiết kế các vi mạch cỡ LSI, VLSI.1.3. Cổng logic Cổng logic hay logic gate là cấu trúc mạch điện (sơ đồ khối hình ) được lắp ráp từ các linh kiện điện tử để thực hiện chức năng của các hàm logic cơ bản y = f(xn, xn-1, ., x1, x0). Trong đó các tín hiệu vào xn-1, xn-2, ., x1, x0của mạch tương ứng với các biến logic xn-1, xn-2, ., x1, x0của hàm . Tín hiệu ra y của mạch tương ứng với hàm logic y. Với các cổng cơ bản thường giá trị n ≤ 4.Hình 1.3: Mô hình cổng logic cơ bản [...]... tả thiết kế thiết kế logic độc lập. Cấu trúc tổng thể của một module VHDL gồm ba phần, phần khai báo thư viện, phần mô tả thực thể và phần mô tả kiến trúc. Thiết kế logic số 2 Mục lục Mục lục 2 Chương mở đầu 8 1.Các khái niệm chung 8 1.1 Transitor 8 1.2 Vi mạch số tích hợp 9 1.3. Cổng logic 10 1.4 Phần tử nhớ 12 1.5 Mạch logic tổ hợp 15 1.6 Mạch logic tuần tự 16 1.7 Các phương pháp thể hiện thiết kế. .. xuất thiết bị cũng như nhiều nhà cung cấp công cụ thiết kế mô phỏng hệ thống, hầu như tất cả các công cụ thiết kế của các hãng phần mềm lớn nhỏ đều hỗ trợ biên dịch VHDL. Thiết kế logic số 5 3.3. Hiện thực hóa thiết kế 171 3.4. Cấu hình FPGA 177 3.5. Kiểm tra thiêt kế trên FPGA 177 Bài tập thực hành trên FPGA 180 1 Bài tập cơ sở 180 2 Bài tập nâng cao 180 3. Câu hỏi ôn tập lý thuyết 181 Chương IV: Thiết. .. thước của IC thiết kế. Yêu cầu về mặt khả năng làm việc: là yêu cầu về các tham số thời gian của mạch bao gồm độ trễ cổng vào, độ trễ cổng ra, độ trễ logic với mạch tổ hợp, các xung nhịp làm việc, số lượng xung nhịp cho một chu trình xử lý dữ liệu. Yêu cầu về mức tiêu hao năng lượng (power consumtion). Yêu cầu về chi phí cho quá trình thiết kế và chế tạo (design cost). Thiết kế logic số 13 Hình... đầu ra Y ổn định giá trị. Thiết kế logic số 39 LIBRARY ieee; USE ieee.std _logic_ 1164.ALL; ENTITY bidir IS PORT( bidir : inout STD _LOGIC_ VECTOR (7 DOWNTO 0); oe, clk : in STD _LOGIC; inp : in STD _LOGIC_ VECTOR (7 DOWNTO 0); outp : out STD _LOGIC_ VECTOR (7 DOWNTO 0) ); END bidir; ARCHITECTURE maxpld OF bidir IS SIGNAL a : STD _LOGIC_ VECTOR (7 DOWNTO 0); SIGNAL b : STD _LOGIC_ VECTOR (7 DOWNTO 0); BEGIN ... phép hỗ trợ kiểm tra các thiết kế bằng VHDL hay Verilog. 2. Yêu cầu đối với một thiết kế logic Yêu cầu đối với một thiết kế IC bao gồm: Yêu cầu chức năng: mạch gồm có các đầu vào đầu ra như thế nào, thực hiện nhiệm vụ gì… u cầu về mặt cơng nghệ: Mạch thiết kế sử dụng nền công nghệ bán dẫn nào PLD, ASIC, FPGA… Yêu cầu về mặt tài nguyên: Giới hạn về số lượng cổng, số lượng transitors, về diện... (Simple Programmable Logic Devices) những IC này có ưu điểm là thiết kế đơn giản, chi phí thấp cho sản xuất cũng như thiết kế, có thể chuyển dễ dàng từ công nghệ này sang công nghệ khác tuy vậy nhược điểm là tốc độ làm việc thấp, số cổng logic tương đương nhỏ do đó khơng đáp ứng được những thiết kế phức tạp đòi hỏi nhiều về tài nguyên và tốc độ. CPLD (Complex Programmable Logic Devices) được Altera... file mô tả RTL. 270 3 Tổng hợp thiết kế 271 4. Đọc kết quả tổng hợp sơ bộ 272 Thiết kế logic số 19 việc thiết kế những vi mạch tích hợp chuyên dụng (ASICs). VHDL cũng được IEEE chuẩn hóa vào các năm 1987, 1991, 2002, và 2006(Draft). VHDL được phát triển dựa trên cấu trúc của ngôn ngữ lập trình Ada. Cấu trúc của mơ tả VHDL tuy phức tạp hơn Verilog nhưng mang tính logic chặt chẽ và gần với phần cứng... VHDL được chuẩn hóa giúp cho việc trao đổi các thiết kế giữa các nhà thiết kế độc lập trở nên hết sức dễ dàng. Bản thiết kế VHDL được mô phỏng và kiểm tra có thể được tái sử dụng trong các thiết kế khác mà khơng phải lặp lại các q trình trên. Giống như phần mềm thì các mơ tả HDL cũng có một cộng đồng mã nguồn mở cung cấp, trao đổi miễn phí các thiết kế chuẩn có thể ứng dụng ở nhiều hệ thống khác... 192 4.4. Thiết lập điều kiện làm việc, mục tiêu thiết kế (Constraint design) 193 4.2 Tổng hợp logic 201 4.3. Kiểm tra sau tổng hợp logic 203 5. Thiết kế vật lý (Physical design) 203 Bài tập chương 4 206 Bài tập 206 Nội dung ôn tập lý thuyết 210 Phục lục I: Thực hành mô phỏng VHDL trên ModelSim 211 1. Giới thiệu về chương trình mơ phỏng Modelsim. 211 2. Viết mã nguồn VHDL 212 3. Biên dịch thiết kế. 218 Thiết. .. std _logic; out1 : out std _logic) ; end XOR2; architecture model_conc2 of XOR2 is begin out1 <= in1 xor in2; end model_conc2; Sau khi đã có các cổng trên có thể thực hiện viết mơ tả cho full_adder như sau architecture structure of full_adder is signal t1, t2, t3: std _logic; component AND2 port ( in1, in2 : in std _logic; out1 : out std _logic ); end component; component OR2 Thiết kế logic số . THIẾT KẾ LOGIC SỐ2010Bộ môn Kỹ thuật xung, số, vi xử lýKhoa VTĐT – HV Kỹ thuật Quân sự9/1/2010 Thiết kế logic số 2Mục lụcMục lục................................................................................................................... nghệ thiết kế mạch logic sốVi mạch số có thể được thiết kế bằng tay (Manual IC design), hoặc bằng sự trợ giúp của các chương trình trợ giúp thiết kế