summaryrefslogtreecommitdiffstats
path: root/translated_examples/expr.v
blob: f039f6ceb44cdd4e9634c60474f03a607f422d22 (plain)
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
// no timescale needed

module expr(
input wire reset,
input wire sysclk,
input wire ival
);

parameter [31:0] SIZE=2 ** 8 - 1;



parameter SIZE_OF = 2 ** 8 - 1;
reg [13:0] foo;
wire [2:0] baz;
reg [22:0] bam;
wire [5:3] out_i;
wire [8:0] input_status;
wire enable; wire debug; wire aux; wire outy; wire dv; wire value;
wire [2 ** 3 - 1:0] expo;

  // drive input status
  assign input_status = {foo[9:4],(baz[2:0] & foo[3:0]) | ( ~baz[2:0] & bam[3:0])};
  // drive based on foo
  assign out_i[4] = (enable & (aux ^ outy)) | (debug & dv &  ~enable) | ( ~debug &  ~enable & value);
  // not drive
  always @(negedge reset, negedge sysclk) begin
    if((reset != 1'b0)) begin
      foo <= {14{1'b0}};
    end else begin
      foo[3 * (2 - 1)] <= baz[1 * (1 + 2) - 2];
      bam[13:0] <= foo;
    end
  end

  assign expo = 2 ** 4;

endmodule
OpenPOWER on IntegriCloud