Bài giảng Thiết kế logic số - Chương 2, Phần 2 - Hoàng Văn Phúc

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

 

pdf 17 trang kimcuc 4580
Bạn đang xem tài liệu "Bài giảng Thiết kế logic số - Chương 2, Phần 2 - Hoàng Văn Phúc", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Thiết kế logic số - Chương 2, Phần 2 - Hoàng Văn Phúc

Bài giảng Thiết kế logic số - Chương 2, Phần 2 - Hoàng Văn Phúc
TS. Hoàng Văn Phúc 
Bộ môn KT Xung, số, Vi xử lý 
02/2017 
Thiết kế logic số 
(VLSI design) 
https://sites.google.com/site/phucvlsi/teaching 
2 
 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 
Mục đích, nội dung 
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 
FULL_ADDER
b0 a0
CI
S0
FULL_ADDER
b3 a3
C(2)
S3
FULL_ADDER
b2 a2
C(1)
S2
FULL_ADDER
b1 a1
C(0)
S1CO
Adder 4 bit 
4 
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? 
Configuration 
5 
ADDER4 = 4 Full_adder 
Behavioral 
Dataflow 
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); 
Configuration 
6 
Object types 
Constant Variable Signal 
Object Types (Đối tượng dữ liệu) 
7 
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 
Object Types 
8 
Data types 
Pre-defined 
BIT STD_LOGIC 
Numeric 
(integer, real) 
Enum 
(charter, filetype) 
User defined 
Record Array 
Data types (Kiểu dữ liệu) 
9 
Name Value Driver Strength 
‘U’ Unsolved - 
'X' X Strong 
'0' 0 Strong 
'1' 1 Strong 
'Z' High 
impedance 
- 
'W' X Weak 
'L' 0 Weak 
'H' 1 Weak 
'-' Don’t care - 
Kiểu std_logic trong thư viện STD_LOGIC_1164 
Data types 
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 
Σ
A(N-bit) Cin
Cout
Sum (N-bit)
B(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; 

File đính kèm:

  • pdfbai_giang_thiet_ke_logic_so_chuong_2_phan_2_hoang_van_phuc.pdf