Professional Documents
Culture Documents
Gioi Thieu Verilog
Gioi Thieu Verilog
2008
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
M phng
Kim tra: thit k ng yu cu cha? Chc nng: Hnh vi I/O Mc thanh ghil (Kin trcl) Mc lun l (Cng) Mc transistor (in t) Timing: Waveform Behavior
Tng hp
nh x c t thnh cc hin thc
Tng t lp trnh hp ng
Verilog HDL
Verilog l mt ngn ng ln
C nhiu tnh nng cho tng hp v m phng phn cng C th biu din nhng c trng mc thp
Transistor
Cc cng c m phng chp nhn ton b khi nim ca Verilog Cc cng c tng hp ch chp nhn mt phn cc khi nim ca Verilog Ch tp trung nghin cu mt phn
S dng mt mc thch hp Tp trung trn nhng cu trc tng hp c Tp trung trnh nhng cu trc gy li khi tng hp
Advanced Digital Design with the Verilog HDL chapter 4 9
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
10
M hnh mch t hp
Mt m hnh Verilog ca mt mch tm tt cc m t chc nng bng gc nhn cu trc hay hnh vi trn nhng mi quan h ng vo-ng ra Mt m hnh cu trc l mt cu trc kt ni (netlist) cha
Cc cng Cc khi chc nng
Mt m hnh hnh vi l
Cc biu thc Boolean n gin M hnh chuyn i mc thanh ghi (Register Transfer Level RTL) Mt gii thut
Advanced Digital Design with the Verilog HDL chapter 4 11
12
Verilog primitives
Primitives l cc i tng c bn c th c s dng trong thit k 26 i tng chc nng c nh ngha trc
n-input and nand or nor xor xnor n-output 3-states buf not bufif0 bufif1 notif0 notif1 nand N1(y, a, b, c);
instance name (optional)
13
14
V d
Module ports port modes Internal wires Instantiated primitives
15
V d khc
Module ports
Giao tip vi mi trng bn ngoi Kiu ca port quyt nh chiu truyn d liu
Mt chiu (Unidirectional)
input output
Kiu ca module port phi c khai bo tng minh v khng cn theo th t xut hin trong port list
Advanced Digital Design with the Verilog HDL chapter 4 17
identifiers
Cc module lng nhau trong Verilog h tr thit k t trn xung Module tham kho n module khc c gi l module cha, module c module khc tham kho n gi l module con su ca cc module lng nhau khng gii hn Mi module con phi c tn duy nht trong phm vi module cha (tr cc primitives)
Advanced Digital Design with the Verilog HDL chapter 4 20
sum
c_out
21
Tt c cc module c t trong mt hay nhiu tp tin khc nhau Cng c m phng tch hp cc module t cc tp tin
Advanced Digital Design with the Verilog HDL chapter 4 22
Add_rca_16
c_out
sum[15:0]
a[15:12]
b[15:12]
a[11:8] b[11:8]
a[7:4]
b[7:4]
a[3:0]
b[3:0] c_in
Add_rca_4 c_out M4
Add_rca_4 M3 c_in12
Add_rca_4 M2 c_in8
Add_rca_4 M1 c_in4
sum[15:12]
sum[11:8]
sum[7:4]
sum[3:1]
23
or
xor
or
xor
25
Bit tri nht l MSB Bit phi nht l LSB C th truy xut tng bit hay tng dy bit trong vector
sum[1] bit th 2 t phi sang ca sum sum[2:1] bit th 2 v 3 t phi sang ca sum
Kiu wire
Khai bo bng t kha wire
wire y_out
Cc ng vo v ra mc nh l kiu wire (tr khi c khai bo kiu khc) Kt ni gia port hnh thc v port thc t
Theo th t trong danh sch cc port .tn_hnh_thc(tn_thc_t)
half_adder (.b(b), .Cout(w2), .a(a), .sum(w1));
Advanced Digital Design with the Verilog HDL chapter 4 27
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
28
y b
x x z x x z x
z x z x
x z
a
x x z
x x
x x x
29
M phng lun l
Xy dng cc testbench a vo mch v hin th dng sng ca kt qu B m phng
Kim tra m ngun Bo li M phng hnh vi ca mch thng qua cc tn hiu vo trong testbench
Khng c li c php
Stimulus Generator
unit_under_test (UUT)
Response Monitor
# <integer> <statement>
iu khin tr truyn Cc pht biu pha sau phi i
32
wire ; parameter time_out = 100; UUT_name U1 (port_list); initial $monitor(); initial #time_out $finish initial begin end endmodule
Advanced Digital Design with the Verilog HDL chapter 4
33
V d
34
Kch thc s
Ch ra s lng bit dng lu tr s <num_of_bit> <base> <value>
8b1000_0001 3d2987 16h24ce 3o7
Nhng s khng khai bo kch thc c hiu dng integer (thng thng 32 bits) Mc nh cc s dng decimal Khng phn bit hoa thng trong khai bo s Du _ c b qua
Advanced Digital Design with the Verilog HDL chapter 4 35
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
36
V d `timescale
38
=4
tpd = 2
=4
t=3
t=5
Ni dung chnh
Gii thiu v HDLs v verilog M hnh cu trc cho mch lun l t hp M phng lun l, kim chng thit k v phng php lun kim tra Thi gian tr truyn lan M hnh bng s tht cho mch lun l t hp v tun t vi Verilog
40
Mch tun t
<input_list>:<state>:<output/next_state> Ng ra phi c khai bo kiu thanh ghi Dng k hiu - biu din ng ra khng thay i
Advanced Digital Design with the Verilog HDL chapter 4 41