verilator/test_regress/t/t_func_rand.v

34 lines
720 B
Coq
Raw Normal View History

// $Id$
// DESCRIPTION: Verilator: Verilog Test module
//
// This file ONLY is placed into the Public Domain, for any use,
// without warranty, 2006 by Wilson Snyder.
module t (clk, Rand);
input clk;
output reg [31:0] Rand;
`ifdef verilator
`systemc_interface
unsigned int QxRandTbl (unsigned int tbl, unsigned int idx) { return 0xfeed0fad; }
`verilog
`endif
function [31:0] QxRand32;
/* verilator public */
input [7:0] tbl;
input [7:0] idx;
begin
`ifdef verilator
QxRand32 = $c ("QxRandTbl(",tbl,",",idx,")");
`else
QxRand32 = 32'hfeed0fad;
`endif
end
endfunction
always @(posedge clk) begin
Rand <= #1 QxRand32 (8'h0, 8'h7);
end
endmodule