1 module shregmap_static_test(input i, clk, output [1:0] q);
3 reg [3:0] shift1 = 4'b0000;
4 reg [3:0] shift2 = 4'b0000;
6 always @(posedge clk) begin
8 shift1 <= {shift1[2:0], head};
9 shift2 <= {shift2[2:0], head};
12 assign q = {shift2[3], shift1[3]};
15 module $__SHREG_DFF_P_(input C, D, output Q);
17 parameter [DEPTH-1:0] INIT = {DEPTH{1'b0}};
18 reg [DEPTH-1:0] r = INIT;
20 r <= { r[DEPTH-2:0], D };
21 assign Q = r[DEPTH-1];
24 module shregmap_variable_test(input i, clk, input [1:0] l1, l2, output [1:0] q);
26 reg [3:0] shift1 = 4'b0000;
27 reg [3:0] shift2 = 4'b0000;
29 always @(posedge clk) begin
31 shift1 <= {shift1[2:0], head};
32 shift2 <= {shift2[2:0], head};
35 assign q = {shift2[l2], shift1[l1]};
38 module $__XILINX_SHREG_(input C, D, input [1:0] L, output Q);
42 parameter [DEPTH-1:0] INIT = {DEPTH{1'b0}};
43 reg [DEPTH-1:0] r = INIT;
44 wire clk = C ^ CLKPOL;
46 r <= { r[DEPTH-2:0], D };