原文恕删...
我把独立出来的那一段module拿去做TR好像也是同样结果...
code大概长这样:
module regFile(dataout, clk, clear, read, write, datain);
input clk, clear, read, write;
input [2:0] datain;
output[2:0] dataout;
reg [2:0] dataout;
reg [2:0] mem[0:4];
reg [2:0] fptr, rptr;
integer i;
always@(posedge clk) begin
if(clear)
begin
for(i = 0;i < 5;i = i + 1)
mem[i] <= 3'd0;
fptr <= 3'd0;
rptr <= 3'd0;
end
else if(read) begin // output to dataout
if(fptr != rptr) begin
dataout <= mem[fptr];
fptr <= (fptr + 1) % 5;
end
else;
end
else if(write) begin // store into mem
if( (rptr+1) % 5 != fptr) begin
mem[rptr] <= datain;
rptr <= (rptr + 1) % 5;
end
end
else;
end
endmodule
TR建到mem的时候就很花时间了...
所有的顺序我也都试过,好像没什么差别。
是不是要把整个module拿掉?