Bài giảng Thiết kế logic số (VLSI design) - Chương II: Ngôn ngữ VHDL (Phần 4)
Bạn đang xem tài liệu "Bài giảng Thiết kế logic số (VLSI design) - Chương II: Ngôn ngữ VHDL (Phần 4)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_thiet_ke_logic_so_vlsi_design_chuong_ii_ngon_ngu_v.pptx
Nội dung text: Bài giảng Thiết kế logic số (VLSI design) - Chương II: Ngôn ngữ VHDL (Phần 4)
- Thiết kế logic số (VLSI design) Bộ môn KT Xung, số, VXL quangkien82@gmail.com 08/2012
- Mục đích, nội dung • Nội dung: Phát biểu tuần tự • Thời lượng: 3 tiết bài giảng Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 2/16
- VHDL statements VHDL statements Concurrent Sequential Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 3/16
- Sequential statements Đn: Phát biểu thực thi phụ thuộc vào vị trí xuất hiện trong chương trình. Vị trí: Trong khối quá trình Trong chương trình con Ứng dụng: Dùng mô tả cho mạch tuần tự Dùng mô tả mạch tổ hợp (not recommended) Dùng cho các cấu trúc mô phỏng kiểm tra Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 4/16
- Sequential statements 1. IF, CASE 2. WAIT, ASSERT, REPORT 3. LOOP 4. Sequential Signal Assignment Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 5/16
- PROCESS [label]: Process (sensitive list) Begin sequential statements End process [label]; SENSITIVE LIST? Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 6/16
- Lệnh IF IF condition1 THEN sequence-of-statements ELSIF condition2 THEN [sequence-of-statements ] ELSIF condition3 THEN [sequence-of-statements ] ELSE [sequence-of-statements END IF; Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 7/16
- IF Example 1-D-FlipFlop D SET Q CLK CLR Q Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 8/16
- IF Example 2 - Register D clk, reset REG1 Q Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 9/16
- IF Example 3 - Simple Counter Counter enable? Kd #= 2N Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 10/16
- Lệnh CASE CASE expression IS WHEN choice1 => [sequence-of-statements] WHEN choice2 => [sequence-of-statements] WHEN others => optional if all choices covered [sequence-of-statements] END CASE; Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 11/16
- CASE – Example: Multiplexer IN2(n-bit) IN1(n-bit) Sel MUX Dout(n-bit) Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 12/16
- Trắc nghiệm Câu 1: Điểm đặc trưng nhất của câu lệnh tuần tự trong VHDL A. Câu lệnh được thực thi một cách tuần tự theo thứ tự xuất hiện B. Lệnh tuần tự được biên dịch thành mã máy giống như câu lệnh của phần mềm. C. Lệnh tuần tự chỉ xuất hiện trong khối quá trình hoặc chương trình con D. Câu lệnh tuần tự dùng để mô tả mạch tuần tự Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 13/16
- Trắc nghiệm Câu 2: Đặc điểm khác biệt giữa lệnh IF và lệnh CASE A. Không có sự khác biệt, hai lệnh này có thể sử dụng thay thế lẫn nhau. B. Điều kiện trong câu lệnh CASE là điều kiện cùng cấp còn điều kiện trong câu lệnh IF là điều kiện phân cấp C. Lệnh CASE thường dùng cho các khối tổ hợp, còn lệnh IF sử dụng cho khối mạch tuần tự. D. Không có sự khác biệt rõ rệt giữa hai câu lệnh Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 14/16
- Trắc nghiệm Câu 3: Cơ chế ảnh hưởng của sensitive list trong khối Process A. Giống như danh sách các tham biến đầu vào của khối thiết kế B. Danh sách sensitive list kích thích cho quá trình thực hiện C. Bất kỳ sự thay đổi nào của các đối tượng trong danh sách sensitive list đều làm cho quá trình tương ứng được thực thi. D. Giá trị của các tín hiệu trong danh sách sensitive list quy định giá trị của các tín hiệu đầu ra của khối quá trình Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 15/16
- Trắc nghiệm Câu 4: Phát biểu nào sau đây không đúng A. Lệnh Loop chỉ có ý nghĩa sử dụng trong mô phỏng thiết kế B. Lệnh IF và lệnh CASE có thể thay thế nhau trong một số trường hợp C. Lệnh WAIT, ASSERT chỉ sử dung cho mục đích mô phỏng kiểm tra thiết kế. D. Phần tử nhớ chỉ có thể mô tả bằng câu lệnh tuần tự Chương II: Ngôn ngữ VHDL quangkien82@gmail.com 16/16