Bài giảng HDL & FPGA - Chương 4: Ngôn ngữ mô tả phần cứng VHDL
Số trang: 98
Loại file: pdf
Dung lượng: 2.61 MB
Lượt xem: 17
Lượt tải: 0
Xem trước 10 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng HDL & FPGA - Chương 4: Ngôn ngữ mô tả phần cứng VHDL. Chương này cung cấp cho sinh viên những nội dung kiến thức gồm: giới thiệu về VHDL; tín hiệu và các kiểu dữ liệu; các phép toán số học và logic; các lệnh song song và tuần tự; các cấu trúc tuần tự; chương trình con; GENERATE statement; Test Bench;... Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng HDL & FPGA - Chương 4: Ngôn ngữ mô tả phần cứng VHDL207 Chương 4. Ngôn ngữ mô tả phần cứng VHDL4.1 Giới thiệu về VHDL4.2 Tín hiệu và các kiểu dữ liệu4.3 Các phép toán số học và logic4.4 Các lệnh song song và tuần tự4.5 Các cấu trúc tuần tự4.6 Chương trình con4.7 GENERATE statement4.8 Test Bench208 4.1 Giới thiệu về VHDL• VHDL = VHSIC Hardware Description Language• VHSIC = Very High Speed Integrated Circuit• Là ngôn ngữ lập trình dùng để mô tả hoạt động của hệ thống số• Được quy định trong chuẩn IEEE 1076 từ năm 1983• Các ngôn ngữ mô tả phần cứng khác: Verilog Abel209 library IEEE; -- Su dung thu vien chuan IEEE use IEEE.STD_LOGIC_1164.ALL; --Su dung tat ca cac thanh phan trong goi STD_LOGIC_1164 entity hex2led is Port ( HEX : in std_logic_vector(3 downto 0); LED : out std_logic_vector(6 downto 0)); end hex2led; -- Khai bao hoat dong cua hex2Led architecture Behavioral of hex2led is begin with HEX SELect LED 4.1 Giới thiệu về VHDL Ví dụ 1• Thiết kế mạch ‘Test’ với 3 đầu vào 8-bit (In1, In2, In3) và hai đầu ra 1 bit (Out1, Out2). Out1=‘1’ khi In1=In2 và Out2=‘1’ khi In1 = In3 Test Compare In1 Out1 A EQ B In2 Compare A In3 EQ Out2 B211 Test là một khối gồm 2 bản copy của khối compare 4.1 Giới thiệu về VHDL Ví dụ 1Thiết kế khối compare dùng mạch tổ hợp Compare A[0] XNOR A B[0] A[1] AND EQ B[1] EQ B A[7] B[7]212 4.1 Giới thiệu về VHDL Ví dụ 1• Thiết kế khối Compare dùng VHDL ‘Entity’ xác định giao diện với bên ngoài của khối cần thiết kế - -Eight bit comparator: Bộ so sánh 8 bit entity Compare is port( A,B: in bit_vector(0 to 7); EQ: out bit); end Compare; đầu vào và ra được gọi là port architecture Behav1 of Compare is begin ‘Architecture’ miêu tả hoạt động EQ 4.1 Giới thiệu về VHDL Component và Instantiation• Biểu diễn Test bằng VHDL entity Test is port( In1,In2,In3: in bit_vector(0 to 7); Out1,Out2: out bit); end Test; architecture Struct1 of Test is component Compare is port( A,B: in bit_vector(0 to 7); 2 bản copy của cùng một EQ: out bit); component end component; ‘Compare’ begin Compare1: Compare port map (A=>In1,B=>In2,EQ=>Out1); Compare2: Compare port map (A=>In1,B=>In3,EQ=>Out2); end Struct1;Chú ý: - Hai bản comparator chạy song song với nhau !!! - Đây là architecture miêu tả cấu trúc của entity Test214 4.1 Giới thiệu về VHDL Cấu hình (Configuration)• Khi một entity có nhiều architectures, ta sẽ xử dụng architecture nào?• Làm thế nào để gắn ‘Components’ với ‘Entities’? -- Configuration information: architecture selection -- and component-entity binding configuration Build1 of Test is for Struct1 for Compare1: Comparator use entity Compare(Behav1) port map (A => X, B => Y, EQ => Z); end for; for others: Comparator use entity Compare(Behav1) port map (A => X, B => Y, EQ => Z); end for; end for; end Build1;215 4.1 Giới thiệu về VHDL Khai báo Entity và Architecture ENTITY: entity Entity_name is port(Signal_name: in Signal_type; Signal_name: out Signal_type); end Entity_name; ARCHITECTURE: architecture Architecture_name of Entity_name is Khai báo các tín hiệu cục bộ; Khai báo các components; begin Các câu lệnh; end Architecture_name;216 4.1 Giới thiệu về VHDL Khai báo component COMPONENT: component Component_name is ...
Nội dung trích xuất từ tài liệu:
Bài giảng HDL & FPGA - Chương 4: Ngôn ngữ mô tả phần cứng VHDL207 Chương 4. Ngôn ngữ mô tả phần cứng VHDL4.1 Giới thiệu về VHDL4.2 Tín hiệu và các kiểu dữ liệu4.3 Các phép toán số học và logic4.4 Các lệnh song song và tuần tự4.5 Các cấu trúc tuần tự4.6 Chương trình con4.7 GENERATE statement4.8 Test Bench208 4.1 Giới thiệu về VHDL• VHDL = VHSIC Hardware Description Language• VHSIC = Very High Speed Integrated Circuit• Là ngôn ngữ lập trình dùng để mô tả hoạt động của hệ thống số• Được quy định trong chuẩn IEEE 1076 từ năm 1983• Các ngôn ngữ mô tả phần cứng khác: Verilog Abel209 library IEEE; -- Su dung thu vien chuan IEEE use IEEE.STD_LOGIC_1164.ALL; --Su dung tat ca cac thanh phan trong goi STD_LOGIC_1164 entity hex2led is Port ( HEX : in std_logic_vector(3 downto 0); LED : out std_logic_vector(6 downto 0)); end hex2led; -- Khai bao hoat dong cua hex2Led architecture Behavioral of hex2led is begin with HEX SELect LED 4.1 Giới thiệu về VHDL Ví dụ 1• Thiết kế mạch ‘Test’ với 3 đầu vào 8-bit (In1, In2, In3) và hai đầu ra 1 bit (Out1, Out2). Out1=‘1’ khi In1=In2 và Out2=‘1’ khi In1 = In3 Test Compare In1 Out1 A EQ B In2 Compare A In3 EQ Out2 B211 Test là một khối gồm 2 bản copy của khối compare 4.1 Giới thiệu về VHDL Ví dụ 1Thiết kế khối compare dùng mạch tổ hợp Compare A[0] XNOR A B[0] A[1] AND EQ B[1] EQ B A[7] B[7]212 4.1 Giới thiệu về VHDL Ví dụ 1• Thiết kế khối Compare dùng VHDL ‘Entity’ xác định giao diện với bên ngoài của khối cần thiết kế - -Eight bit comparator: Bộ so sánh 8 bit entity Compare is port( A,B: in bit_vector(0 to 7); EQ: out bit); end Compare; đầu vào và ra được gọi là port architecture Behav1 of Compare is begin ‘Architecture’ miêu tả hoạt động EQ 4.1 Giới thiệu về VHDL Component và Instantiation• Biểu diễn Test bằng VHDL entity Test is port( In1,In2,In3: in bit_vector(0 to 7); Out1,Out2: out bit); end Test; architecture Struct1 of Test is component Compare is port( A,B: in bit_vector(0 to 7); 2 bản copy của cùng một EQ: out bit); component end component; ‘Compare’ begin Compare1: Compare port map (A=>In1,B=>In2,EQ=>Out1); Compare2: Compare port map (A=>In1,B=>In3,EQ=>Out2); end Struct1;Chú ý: - Hai bản comparator chạy song song với nhau !!! - Đây là architecture miêu tả cấu trúc của entity Test214 4.1 Giới thiệu về VHDL Cấu hình (Configuration)• Khi một entity có nhiều architectures, ta sẽ xử dụng architecture nào?• Làm thế nào để gắn ‘Components’ với ‘Entities’? -- Configuration information: architecture selection -- and component-entity binding configuration Build1 of Test is for Struct1 for Compare1: Comparator use entity Compare(Behav1) port map (A => X, B => Y, EQ => Z); end for; for others: Comparator use entity Compare(Behav1) port map (A => X, B => Y, EQ => Z); end for; end for; end Build1;215 4.1 Giới thiệu về VHDL Khai báo Entity và Architecture ENTITY: entity Entity_name is port(Signal_name: in Signal_type; Signal_name: out Signal_type); end Entity_name; ARCHITECTURE: architecture Architecture_name of Entity_name is Khai báo các tín hiệu cục bộ; Khai báo các components; begin Các câu lệnh; end Architecture_name;216 4.1 Giới thiệu về VHDL Khai báo component COMPONENT: component Component_name is ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng HDL & FPGA HDL & FPGA Ngôn ngữ mô tả phần cứng VHDL Phép toán số học Cấu trúc tuần tự Chương trình con Thiết kế bộ MUX 4-1Tài liệu liên quan:
-
Bài giảng Lập trình C căn bản: Chương 4 - Phạm Thế Bảo
34 trang 153 0 0 -
ĐỀ CƯƠNG THI TRẮC NGHIỆM MÔN LẬP TRÌNH CÓ CẤU TRÚC
43 trang 68 0 0 -
Ứng dụng thiết kế FPGA: Phần 2
95 trang 60 0 0 -
Bài giảng Kiến trúc máy tính - Chương 3: Phép toán số học trên máy tính (tt)
32 trang 45 1 0 -
Giáo trình Học và thực hành Visual Basic căn bản: Phần 2
371 trang 38 0 0 -
Bài giảng Tin học đại cương: Bài 6 - Nguyễn Văn Đồng
36 trang 35 0 0 -
Bài giảng Lập trình cơ bản: Bài 6 - Chu Thị Hường
38 trang 33 0 0 -
Bài giảng Tin học đại cương (Phần 3) - Chương 6: Hàm
27 trang 32 0 0 -
Bài giảng Kiến trúc máy tính: Chương 3 - ThS. Hà Lê Hoài Trung
49 trang 29 0 0 -
Giáo trình Thiết kế logic số: Phần 1
312 trang 29 0 0