source: HDLQ/TestBenches/TBLBMEM.v @ 1

Revision 1, 1.3 KB checked in by ttvmrc00, 13 years ago (diff)

upload iniziale

  • Property svn:executable set to *
Line 
1//`timescale 10ns/100ps
2module test_benchLBMEM;
3reg al,bl,fault1,fault0,x, Zpexl,clk1,clk2,clk3,cl,xl,y,yl,Zpi;
4wor Z,Zp;
5reg c,d;
6
7MajorityVoter_bi MV (
8        .forward(nforward),
9        .A(al),
10        .B(bl),
11        .Z(Z),
12        .Zp(Zp),
13        .fault1(fault1),
14        .fault0(fault0)
15        );
16Wire_bi wire_1(
17.A(c),
18.B(xx),
19.bi(Z), 
20.forward(forward) )     ;
21//assign Z= forward? c : 1'bz;
22assign nforward=(clk2 && clk1);
23assign forward = ~nforward;
24Wire_bi wire_2(
25.A(Zpi),
26.B(Zpex),
27.bi(Zp), 
28.forward(nforward) )    ;
29//assign Zp= forward? 1'bz:d;
30assign a= xl;
31assign b= yl;
32initial 
33begin     
34        x =0;     
35        y =0;
36        xl=0;
37        yl=0;//try with zs
38        Zpexl=0;
39        Zpi=0;
40        al=0;
41        bl=0;
42        c=0;
43        d=1;
44        fault1 = 0;
45        fault0 = 0;
46        clk1 <= #125 0;
47        clk2=1;
48        clk3=1;
49end     
50
51always
52
53begin
54     #3000 x = ~x;
55end
56
57always
58     #5000 y = ~y;
59
60
61
62always@(posedge clk1)
63//violet!
64        begin
65                clk1 <= #1000 ~clk1;   
66                Zpi<=Zpexl      ;
67                xl <= x;
68                yl <= y;
69        end
70always@(negedge clk1)
71        begin
72                yl=1'bZ;       
73                Zpi=1'bz;
74                xl=1'bZ;
75                clk1 <= #1000 ~clk1;
76        end
77
78always@(posedge clk2)
79//blue
80        begin
81                cl=c;
82                al=a;
83                bl=b;
84                clk2 <= #1250 ~clk2;
85        end
86       
87always@(negedge clk2)
88        begin
89                al=1'bZ;
90                bl=1'bZ;
91                cl=1'bZ;
92                clk2 <= #750 ~clk2;
93        end
94       
95always@(posedge clk3)
96//white
97        begin
98                c <= xx;
99                Zpexl<=Zpex;
100                clk3 <= #500 ~clk3;
101        end
102       
103always@(negedge clk3)
104        begin
105                c<= 1'bz;
106                Zpexl <=1'bz;
107                clk3 <= #500 ~clk3;
108        end
109       
110endmodule
111
112
113
114
Note: See TracBrowser for help on using the repository browser.