OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [common/] [opencores.org/] [Testbench/] [bfms/] [clock_gen/] [rtl/] [verilog/] [clock_gen_sim] - Blame information for rev 134

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 134 jt_eaton
reg           task_reset;
2
reg           task_FAIL;
3
reg           task_FINISH;
4
 
5
 
6
always@(posedge clk or negedge START)
7
  if(!START)  FINISH <= 0;
8
  else        FINISH <= (|STOP) || FINISH || task_FINISH;
9
 
10
 
11
 
12
always@(posedge clk or negedge START)
13
  if(!START)  FAIL <= 0;
14
  else        FAIL <= task_FAIL || (|BAD);
15
 
16
 
17
always@(posedge clk or negedge START)
18
  if(!START)  reset <= 1'b1;
19
  else        reset <= task_reset;
20
 
21
 
22
 
23
 
24
 
25
task automatic next;
26
  input [31:0] num;
27
  repeat (num)       @ (posedge clk);
28
endtask // next
29
 
30
 
31
 
32
 
33
 
34
initial
35
  begin
36
     task_FINISH <= 0;
37
     task_FAIL   <= 0;
38
     task_reset  <= 0;
39
  end
40
 
41
 
42
 
43
task reset_on;
44
  task_reset = 1;
45
endtask // reset_on
46
 
47
task reset_off;
48
  begin
49
  task_reset = 0;
50
  end
51
endtask // reset_off
52
 
53
 
54
 
55
 
56
task automatic fail;
57
  input [799:0] message;
58
  begin
59
  task_FAIL   <= 1;
60
  $display("%t  Simulation FAILURE:  %s ",$realtime,message  );
61
  @(posedge clk);
62
  task_FAIL   <= 0;
63
  end
64
endtask
65
 
66
task exit;
67
   begin
68
      @(posedge clk);
69
      task_FINISH <= 1;
70
      @(posedge clk);
71
      @(posedge clk);
72
      @(posedge clk);
73
      @(posedge clk);
74
     end
75
endtask
76
 
77
 
78
 
79
 
80
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.