|
剛接觸,看不懂,希望先進們可以解說一下程式,還有一直編譯錯誤,我不懂為什麼錯誤,如果可以也想請教一下
( [9 q( |9 L5 b+ Y* ~5 C# v) A# f' I( S" o) ^, v, U
'timescale 1ns/1ns
, y( ^0 v, O B, A8 W3 E( n
/ {. b- x y# j2 W2 Rmodule the_2-4_decoder_testing_and_certification_program;$ [7 Q6 t8 P9 i
: T8 B- N0 Q8 M, E% N: B
wire[3:0]y;: A: h! [7 r" V' `; D( |' |
reg a;! J r- ?4 I0 t
reg b;
. f0 S5 K, b" L0 c9 }" b. g0 x
8 R4 K; s' O M; rdeco2_4g UUT(
: I0 N) i6 e# C. e" n* C7 h .y(y),
% N$ H8 Q" u( S" U8 |1 Z- i/ x F .a(a),
0 {3 n1 W$ g; D. g) z .b(b));7 K" W2 x3 r( h) m- Y; a2 B- {+ r
# L$ E) h. D5 b* Y4 R" ?/ C/ f
integer TX_FILE;- {- h# ?4 Z" ^/ \& E9 D R
integer TX_ERROR;
6 u3 m: _' E g' a% C9 i. R0 x. o8 `4 v8 z. W2 r
initial
, ~1 W2 \% Y3 ^+ k: ~* j# n5 I) Kbegin! a$ t3 G9 P! c# Q# \; E5 b# d6 L
TX_ERROR=0;
6 d; S" R! [) V+ o# F TX_FILE=$fopen("result.txt");
6 I7 \ f- g6 j + o' z( \0 Y" j6 `$ |5 l8 S4 H
a=1'b0; , S; V/ A: }, m* G" h, a
b=1'b0;
0 M- r* T% A0 n& B% { # o- \# h: d1 x# ~) b
#100
4 S( J$ a7 e$ J9 j5 S a=1'b1;
$ k6 q' E7 y1 C# S8 H, X9 k" t
* m+ D7 D1 I( w ? ~8 f3 V# F6 T #100
% b* ^7 A _4 @: R. Y7 ~. y! g a=1'b0; 1 {/ i" Z" X! D; ]: b" ^- o
b=1'b1;% _% P) i1 Q) M x! ^# X9 L
+ `, C2 f; E# ^4 X4 l #100
- }# a$ U. `- h) G1 t b=1'b1;* F4 B+ D2 x! U! c; m
- Q/ H3 X8 r% l9 ?0 x #150% l- T+ K5 i( H9 `
if(TX_ERROR==0)( x+ l' ~5 H( u9 S
begin, ~2 a* Q3 r" y0 S4 n
$display("No errors or warning");! M9 [7 i( B* z6 X: s4 Q
$display(TX_FILE,"No errors or warning");
" D, t$ [& s' ?" g$ H9 F& m end else begin9 B' I$ p& b& T/ H4 b; V
$display("%d errors found in simulation",TX_ERROR);( r; W9 j/ q: f6 P( ]! o2 k$ Q/ m
$display(TX_FILE,"%d errors found in simulation",TX_ERROR);
2 [8 B( w1 h0 o) W! P- ~# F* ? end ! N* ^: F7 P6 M1 E
$fclose(TX_FILE);
4 s1 Y$ S" F3 F3 x" ]4 N9 } $stop;
- e7 ]" y3 a8 r. S end / V7 ~9 V- Y5 \1 i* g
! }- Z% L' b( ]. ^
task CHECK_y;. {0 x5 k" p, L' M
input[3:0]NEXT_y;4 v4 d1 y1 F0 ~6 E' J
#0 begin- R' M& v9 l- c- G7 |% c, ] c& l% [
if(NEXT_y!==y)begin
* G; d: F5 g' ` $display("Error at time=%dns y=%b,expected=%b",/ X: U( z- @3 ~6 ?4 h
$time,y,NEXT_y); k2 b3 w+ w; c8 E
$fdisplay(TX_FILE,"Error at time=%dns y=%b,expected=%b",
( f7 B# e2 B6 k* t3 Q $time,y,NEXT_y);' R. ~; r7 H" A8 k) q
TX_ERROR=TX_ERROR+1;
$ m, B, C) C2 j# i end : Q! N8 y' A+ x. `/ m
end
: {$ h& t4 E9 Lendtask
. J# ]' w6 Z8 m3 F' H# a7 l+ Eendmodule |
|