File: t_trace_ascendingrange.v

package info (click to toggle)
verilator 5.038-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 162,552 kB
  • sloc: cpp: 139,204; python: 20,931; ansic: 10,222; yacc: 6,000; lex: 1,925; makefile: 1,260; sh: 494; perl: 282; fortran: 22
file content (97 lines) | stat: -rw-r--r-- 2,274 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
// DESCRIPTION: Verilator: Verilog Test module
//
// This file ONLY is placed under the Creative Commons Public Domain, for
// any use, without warranty, 2020 by Geza Lore.
// SPDX-License-Identifier: CC0-1.0

module t #(
           parameter [0:7] P = 8'd10
           )(/*AUTOARG*/
   // Inputs
   clk
   );
   input clk;
   int   cyc = 0;

   localparam [0:7] Q = 8'd20;

   logic [   0:  0] v_a = '0;
   logic [   0:  1] v_b = '0;
   logic [   0:  7] v_c = '0;
   logic [   0:  8] v_d = '0;
   logic [   0: 15] v_e = '0;
   logic [   0: 16] v_f = '0;
   logic [   0: 31] v_g = '0;
   logic [   0: 32] v_h = '0;
   logic [   0: 63] v_i = '0;
   logic [   0: 64] v_j = '0;
   logic [   0:127] v_k = '0;
   logic [   0:128] v_l = '0;
   logic [   0:255] v_m = '0;
   logic [   0:256] v_n = '0;
   logic [   0:511] v_o = '0;
   logic [  -1:  1] v_p = '0;
   logic [  -7:  7] v_q = '0;
   logic [ -15: 15] v_r = '0;
   logic [ -31: 31] v_s = '0;
   logic [ -63: 63] v_t = '0;
   logic [-127:127] v_u = '0;
   logic [-255:255] v_v = '0;

   always @(posedge clk) begin
      if (cyc == 0) begin
         v_a <= '1;
         v_b <= '1;
         v_c <= '1;
         v_d <= '1;
         v_e <= '1;
         v_f <= '1;
         v_g <= '1;
         v_h <= '1;
         v_i <= '1;
         v_j <= '1;
         v_k <= '1;
         v_l <= '1;
         v_m <= '1;
         v_n <= '1;
         v_o <= '1;
         v_p <= '1;
         v_q <= '1;
         v_r <= '1;
         v_s <= '1;
         v_t <= '1;
         v_u <= '1;
         v_v <= '1;
      end else begin
         v_a <= v_a << 1;
         v_b <= v_b << 1;
         v_c <= v_c << 1;
         v_d <= v_d << 1;
         v_e <= v_e << 1;
         v_f <= v_f << 1;
         v_g <= v_g << 1;
         v_h <= v_h << 1;
         v_i <= v_i << 1;
         v_j <= v_j << 1;
         v_k <= v_k << 1;
         v_l <= v_l << 1;
         v_m <= v_m << 1;
         v_n <= v_n << 1;
         v_o <= v_o << 1;
         v_p <= v_p << 1;
         v_q <= v_q << 1;
         v_r <= v_r << 1;
         v_s <= v_s << 1;
         v_t <= v_t << 1;
         v_u <= v_u << 1;
         v_v <= v_v << 1;
      end

      cyc <= cyc + 1;
      if (cyc == 2) begin
         $write("*-* All Finished *-*\n");
         $finish;
      end
   end

endmodule