Xem mẫu
- Thiết kế logic số
(VLSI design)
Bộ môn KT Xung, số, VXL
quangkien82@gmail.com
https://sites.google.com/site/bmvixuly/thiet-ke-
logic-so
08/2012
- Mục đích, nội dung
•
Nội dung: Phát biểu đồng thời
•
Thời lượng: 3 tiết bài giảng
Chương II: Ngôn ngữ VHDL 2/18
- VHDL statements
Chương II: Ngôn ngữ VHDL 3/18
- Concurrent statements
Đn: Phát biểu được thực thi không phụ
thuộc vào vị trí xuất hiện trong chương
trình.
Vị trí:
Trực tiếp trong mô tả kiến trúc
Ứng dụng:
Dùng mô tả cho mạch dạng cấu
trúc hoặc dataflow
Chương II: Ngôn ngữ VHDL 4/18
- Concurrent statements
1. PROCESS
2. COMPONENT INSTALLATION
3. GENERATE
4. Concurrent Signal Assignment
Chương II: Ngôn ngữ VHDL 5/18
- PROCESS
Ø
Mỗi khối câu lệnh PROCESS thực ra là một khối
lệnh tuần tự
Ø
Khối PROCESS không có danh sách Sensitive
list thì bắt buộc phải xuất hiện lệnh WAIT
Ø
Không giới hạn lệnh PROCESS trong một mô tả
kiến trúc
Chương II: Ngôn ngữ VHDL 6/18
- COMPONENT INSTALLATION
DECLARATION
COMPONENT component_name IS
GENERIC (generic_variable_declarations );
PORT (input and_output_variable declarations);
END COMPONENT component_name;
INSTALATION
instant_name: COMPONENT component_name
GENERIC MAP( generic_variables => generic values)
PORT MAP (input_and_output_variables => signals);
Chương II: Ngôn ngữ VHDL 7/18
- EXAMPLE: configurable counter
entity counter is
generic (
N : natural;
top_value : std_logic_vector(15 downto 0);
SETTOP : boolean := FALSE );
port (
count :out std_logic_vector(N-1 downto 0);
enable :in std_logic;
clk :in std_logic;
reset :in std_logic);
end entity;
Chương II: Ngôn ngữ VHDL 8/18
- EXAMPLE: configurable counter
-- installation of 4 bit counter
counter1: counter
generic map (4, x"000a", TRUE)
port map (cnt1, enable, clk, reset);
counter2: counter
generic map (4, x"101a", FALSE)
port map (cnt2, enable, clk, reset);
counter3: counter
generic map (8, x"101b", TRUE)
port map (cnt3, enable, clk, reset);
Chương II: Ngôn ngữ VHDL 9/18
- CONCURRENT SIGNAL ASSIGNMENT
Syntax:
target
- CONDITIONAL SIGNAL ASSIGNMENT
target
- CONDITIONAL SIGNAL ASSIGNMENT
WITH expression SELECT
target
- GENERATE
[label]:for generate_parameter_specification
generate
{ concurrent_statement }
end generate [label];
[label]: if condition
generate
{ concurrent_statement }
end generate [label];
Chương II: Ngôn ngữ VHDL 13/18
- Trắc nghiệm
Câu 1: Cấu trúc lệnh FOR .. GENERATE thường
dùng trong trường hợp nào
A. Dùng cho các cấu trúc chương trình lặp đi lặp lại gi ống
nhau trong mô tả thiết kế.
B. Dùng cho các cấu trúc mô tả lặp lại giống nhau ho ặc có
quy luật
C. Dùng để mô tả cho vòng lặp cứng trong thiết kế.
D. Dùng mô tả các cấu trúc phần cứng có tính tùy biến v ề
số lượng các khối cài đặt.
Chương II: Ngôn ngữ VHDL 14/18
- Trắc nghiệm
Câu 2: Bản chất của câu lệnh PROCESS
trong VHDL
A. Tạo một quá trình trong mô tả kiến trúc của thi ết k ế.
B. Là một khối lệnh tuần tự.
C. Là một khối lệnh chứa là các lệnh tuần tự nhưng
được xem như một cấu trúc lệnh đồng thời.
D. Là một câu lệnh đồng thời sử dụng trong mô tả các
quá trình.
Chương II: Ngôn ngữ VHDL 15/17
- Trắc nghiệm
Câu 3: Ưu điểm cơ bản của sử dụng câu lệnh
gán tín hiệu đồng thời so với sử dụng cấu trúc
tuần tự tương đương
A. Mang lại kết quả thiết kế tối ưu hơn
B. Mã chương trình đơn giản và ngắn gọn hơn
C. Mô tả sát hơn cấu trúc của mạch và giảm thiểu
khả năng gây lỗi
D. Giảm thiểu khả năng gây ra lỗi chức năng của
mạch.
Chương II: Ngôn ngữ VHDL 16/18
- Trắc nghiệm
Câu 4: Biến generic được sử dụng như thế nào
trong thiết kế VHDL
A. Là các tham biến tĩnh ví dụ độ rộng bit, quy đ ịnh c ấu hình
chức năng….
B. Sử dụng như tham biến khi thiết kế nhưng ph ải là h ằng
số khi sử dụng.
C. Là một biến phát sinh ra trong quá trình sử d ụng kh ối thi ết
kế như một khối con.
D. Sử dụng để quy định cho các đặc tính của các tham bi ến
động trong thiết kế.
Chương II: Ngôn ngữ VHDL 17/17
- Trắc nghiệm
Câu 5: Phân biệt tác dụng của lệnh IF tuần tự
và IF… GENERATE
A. Lệnh IF tuần tự chỉ tác động lên các khối mô tả tuần tự còn
lệnh IF … GENERATE tác động lên khối lệnh song song
B. Lệnh IF tuần tự chỉ tác động lên các tham biến động còn lệnh
IF … GENERATE tác động lên các tham biến tĩnh.
C. Lệnh IF tuần tự là câu lệnh rẽ nhánh có điều kiện phân cấp
còn IF… GENERATE là lệnh với một giá trị điều kiện.
D. Lệnh IF tuần tự làm thay đổi cấu trúc thiết kế hiện tại theo
điều kiện logic của tham biến cài đặt còn IF … GENERATE
cài đặt/hoặc không cài đặt theo điều kiện của tham biến tĩnh
Chươ lệ II: Ngôn ngữ VHDL
trong câu ng nh. 18/18
nguon tai.lieu . vn