Bài giảng Thiết kế logic số - Chương 2: Ngôn ngữ VHDL (Tiết 1)
Thiết kế logic số
(VLSI design)
TS. Hoàng Văn Phúc
Bộ môn KT Xung, số, Vi xử lý
02/2017
Mục đích, nội dung
Nội dung: Mô phỏng trên ModelSim, Configuration,
Đối tượng dữ liệu, kiểu dữ liệu
Thời lượng: 3 tiết bài giảng
2
Mô phỏng thiết kế VHDL trên Modelsim
Xem thêm tài liệu đi kèm về Modelsim
Chú ý: Nên sử dụng script để chạy mô phỏng
3
Adder 4 bit
b2
a2
b1
a1
b0
a0
b3
a3
C(1)
C(0)
CI
C(2)
FULL_ADDER
FULL_ADDER
FULL_ADDER
FULL_ADDER
CO
S2
S1
S0
S3
4
Configuration
Một thực thể có bao nhiêu kiến trúc ?
Kiến trúc nào được biên dịch vào thư viện Work?
Kiến trúc nào sẽ được mô phỏng bằng lệnh Vsim?
5
Configuration
Dataflow
ADDER4 = 4 Full_adder
Behavioral
configuration behav of adder4 is
for structure -- one of architecture
for all: full_adder
use entity work.full_adder(behavioral);
end for;
end for;
end configuration;
-- select architecture
for u0: full_adder use entity work.full_adder(behavioral);
for u1: full_adder use entity work.full_adder(behavioral);
for u2: full_adder use entity work.full_adder(dataflow);
for u3: full_adder use entity work.full_adder(dataflow);
6
Object Types (Đối tượng dữ liệu)
Object types
Variable
Constant
Signal
7
Object Types
Hằng là những đối tượng dữ liệu dùng khởi tạo để
chứa các giá trị xác định trong quá trình thực hiện.
Hằng có thể được khai báo trong các gói, thực thể,
kiến trúc, chương trình con, các khối và process.
Biến là những đối tượng dữ liệu dùng để chứa các kết
quả trung gian, biến chỉ có thể được khai báo bên
trong các process hoặc chương trình con.
Tín hiệu là các đối tượng dữ liệu dùng để kết nối
giữa các process(khối logic) hoặc để đồng bộ các
process
8
Data types (Kiểu dữ liệu)
Data types
Pre-defined
User defined
Record
Array
BIT
STD_LOGIC
Numeric
Enum
(charter, filetype…)
(integer, real…)
9
Data types
Kiểu std_logic trong thư viện STD_LOGIC_1164
Name
‘U’
Value
Driver Strength
Unsolved
-
'X'
'0'
'1'
'Z'
X
Strong
Strong
Strong
-
0
1
High
impedance
'W'
'L'
X
Weak
Weak
Weak
-
0
'H'
'-'
1
Don’t care
10
Trắc nghiệm
Câu 1: Kiểu dữ liệu tiền định nghĩa nào được xem là kiểu
dữ liệu cơ bản nhất trong VHDL
A. Kiểu BIT và NUMERIC
B. Kiểu BIT và STD_LOGIC
C. Kiểu STD_LOGIC
D. Kiểu NUMERIC và STD_LOGIC
11
Trắc nghiệm
Câu 2: Phát biểu sau nào sau đây không chính xác:
A. Biến là đối tượng dữ liệu dùng để lưu trữ các giá trị trung
gian trong quá trình tính toán.
B. Biến thường không tương ứng với một thực thể vật lý nào
trong vi mạch mô tả.
C. Hằng số là đối tượng dữ liệu dùng để lưu trữ các giá trị
không đổi trong chương trình
D. Giá trị của một tín hiệu được xác định từ nhiều điều kiện
logic độc lập với nhau..
12
Trắc nghiệm
Câu 3: Mục đích của khai báo cấu hình là:
A. Quy định về sử dụng kiến trúc cụ thể của các thiết kế
B. Quy định về cấu hình các cổng vào ra của một thiết
kế.
C. Thiết lập các tham số tĩnh cho thiết kế
D. Cấu hình cho các dữ liệu vào ra của một thiết kế.
13
Trắc nghiệm
Câu 4: Mục đích của việc sử dụng các giá trị 9 mức
logic của kiểu dữ liệu STD_LOGIC
A. Đảm bảo mô tả đầy đủ các trạng thái vật lý của mạch số
B. Đảm bảo có thể mô phỏng được chính xác chức năng
của vi mạch số.
C. Đảm bảo mô tả đầy đủ các dạng tín hiệu thật trong
mạch và phục vụ mục đích mô phỏng kiểm tra
D. Phục vụ yêu cầu mở rộng cho đặc tính của vi mạch tích
hợp số so với các mạch thông thường
14
Tìm lỗi sai ở đoạn code sau
entity logic_expample is
port(
A : in std_ulogic_vector(8 downto 0);
U : out std_ulogic_vector(8 downto 0)
);
end logic_expample;
-----------------------------------------
architecture dataflow of logicexpample is
Begin
A <= “XXXX01ZWLH";
U <= A;
U <= "X01ZWLH-1";
end dataflow;
15
Ví dụ: Viết mô tả thực thể cho khối thiêt kế sau
Cin
B(N-bit)
A(N-bit)
Cout
Σ
Sum (N-bit)
16
library ieee;
use ieee.std_logic_1164.all
entity Adder
generic (N: natural:=4)
port is
( A: in std_logic_vector(N-1 downto 0);
B: in std_logic_vector(N-1 downto 0)
Cin: in std_logic;
Sum: out std_logic_vector (N-1 downto 0);
Cout: out std_logic
);
end Adder;
Bạn đang xem tài liệu "Bài giảng Thiết kế logic số - Chương 2: Ngôn ngữ VHDL (Tiết 1)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_thiet_ke_logic_so_chuong_2_ngon_ngu_vhdl_tiet_2.pdf

