SHREG_EXTRACT常用于移位寄存器中,以节省资源
module top(
input clk_i,
input data_i,
output data_o);
parameter SHIFT = 4;
(*shreg_extract = "yes"*) reg[SHIFT-1:0] reg_shift;
always @(posedge clk_i)
begin
reg_shift <={data_i,reg_shift[SHIFT-1:1]};
end
assign data_o = reg_shift[0];
endmodule