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: Kiến trúc kiểu cấu trúc, Mô

phỏng trên ModelSim, Đối tượng dữ liệu, kiểu dữ liệu

• Thời lượng: 3 tiết bài giảng

2/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Adder 4 bit

A

4

B Cin 4

Cout

Σ

4

Sum

b3

a3

b2

a2

b1

a1

b0

a0

C(2)

C(1)

C(0)

CI

FULL_ADDER

FULL_ADDER

FULL_ADDER

FULL_ADDER

CO

S2

S1

S0

S3

3/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

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?

4/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

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);

5/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Object Types Đối tượng dữ liệu

6/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

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à quá trình.

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 quá trình 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 quá trình (khối logic) hoặc để đồng bộ các quá trình

7/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Data types

8/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Data types

Name

‘U’ 'X' '0' '1' 'Z' Driver Strength - Strong Strong Strong -

STD_LOGIC_11 64 Value Unsolved X 0 1 High impedance

'W' 'L' 'H' '-' X 0 1 Don’t care Weak Weak Weak -

9/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Trắc nghiệm

Câu 1: Kiểu dữ liệu tiền định nghĩa nào được xem

A. Kiểu BIT và NUMERIC

B. Kiểu BIT

C. Kiểu STD_LOGIC

D. Kiểu NUMERIC và STD_LOGIC

là kiểu dữ liệu cơ bản nhất trong VHDL

10/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Trắc nghiệm

A. Biến là đối tượng dữ liệu dùng để lưu trữ các giá trị

Câu 2: Phát biểu sau nào sau đây không chính xác:

B. Biến thường không tương ứng với một thực thể vật lý

trung gian trong quá trình tính toán.

C. Hằng số là đối tượng dữ liệu dùng để lưu trữ các giá

nào trong vi mạch mô tả.

D. Giá trị của một tín hiệu được xác định từ nhiều điều

trị không đổi trong chương trình

kiện logic độc lập với nhau..

11/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Trắc nghiệm

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

Câu 3: Mục đích của khai báo cấu hình là:

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ế.

kế.

12/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

Trắc nghiệm

Câu 4: Mục đích của việc sử dụng các giá trị 9 mức

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

logic của kiểu dữ liệu STD_LOGIC

C. Đảm bảo mô tả đầy đủ các dạng tín hiệu thật trong mạch

của vi mạch số.

D. Phục vụ yêu cầu mở rộng cho đặc tính của vi mạch tích

và phục vụ mục đích mô phỏng kiểm tra

hợp số so với các mạch thông thường

13/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

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;

14/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com

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)

15/15

Chương II: Ngôn ngữ VHDL quangkien82@gmail.com