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

: Ki n trúc ki u c u trúc, Mô

ng d li u, ữ ệ

ấ ế ph ng trên ModelSim, Đ i t ố ượ ki u d li u

• N i dung ộ ỏ ể

ữ ệ

• Th i l

t bài gi ng

ờ ượ : 3 ti ng

ế

2/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

Object Types Đ i t

ng d li u

ố ượ

ữ ệ

6/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

Object Types

ữ ữ ệ

ố ượ ị ở ạ ự ệ

ng d li u dùng kh i t o đ H ngằ là nh ng đ i t ể ch a các giá tr xác đ nh trong quá trình th c hi n. ị c khai báo trong các gói, th c th , H ng có th đ ể ể ượ ng trình con, các kh i và quá trình. ki n trúc, ch ố ươ ứ ằ ế

ữ ứ

ể c khai báo bên ả

Bi nế là nh ng đ i t ữ ệ k t qu trung gian, bi n ch có th đ ỉ ế trong các quá trình ho c ch ươ ng d li u dùng đ ch a các ố ượ ế ể ượ 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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

Data types

8/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

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

B. Ki u BIT ể

C. Ki u STD_LOGIC

D. Ki u NUMERIC và STD_LOGIC

10/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

Tr c nghi m

A. Bi n là đ i t

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

ố ượ ế 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ý ườ ươ ể ậ ứ ự ộ ớ

C. H ng s là đ i t

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

ng d li u dùng đ l u tr các giá ố ượ ằ ố ữ ệ ể ư ữ

D. Giá tr c a m t tín hi u đ

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

c xác đ nh t nhi u đi u ị ủ ệ ộ ượ ị ừ ề ề

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

11/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

Tr c nghi m

A. Quy đ nh v s d ng ki n trúc c th c a các thi

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

t ụ ể ủ ề ử ụ ế ị ế

B. Quy đ nh v c u hình các c ng vào ra c a m t thi

kế

t ề ấ ủ ổ ộ ị ế

C. Thi

k .ế

D. C u hình cho các d li u vào ra c a m t thi

t l p các tham s tĩnh cho thi ế ậ ố t k ế ế

ữ ệ ủ ấ ộ t k . ế ế

12/15

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

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

đ y đ các tr ng thái v t lý c a m ch ả ả ả ầ ủ ủ ạ ậ ạ

B. Đ m b o có th mô ph ng đ

số

c chính xác ch c năng ể ả ả ỏ ượ ứ

C. Đ m b o mô t

c a vi m ch s . ố ủ ạ

đ y đ các d ng tín hi u th t trong ả ả ả ầ ủ ệ ậ ạ

D. Ph c v yêu c u m r ng cho đ c tính c a vi m ch tích

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

ở ộ ủ ụ ụ ầ ặ ạ

ng ố ợ ạ ườ

13/15

quangkien82@gmail.com

h p s so v i các m ch thông th ng II: Ngôn ng VHDL

Ch

ớ ữ

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ

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

quangkien82@gmail.com

Ch

ng II: Ngôn ng VHDL

ươ