求助 XIlinx ISE XST综合错误
时间:10-02
整理:3721RD
点击:
module auto_lfsr_rtl(Y,clock,reset);
parameter Length=8;
parameter initial_state=8'b1001_0001;
parameter [1ength] tap_coefficient=8'b1100_1111;
output [1:8] Y;
input clock;
input reset;
reg Y;
always@(posedge[/email] clock)
if(reset==0) Y<=8'b1001_0001;
else begin
Y[1]<=Y[8];
Y[2]<=tap_coefficient[7]?Y[1]^Y[8]:Y[1];
Y[3]<=tap_coefficient[6]?Y[2]^Y[8]:Y[2];
Y[4]<=tap_coefficient[5]?Y[3]^Y[8]:Y[3];
Y[5]<=tap_coefficient[4]?Y[4]^Y[8]:Y[4];
Y[6]<=tap_coefficient[3]?Y[5]^Y[8]:Y[5];
Y[7]<=tap_coefficient[2]?Y[6]^Y[8]:Y[6];
Y[8]<=tap_coefficient[1]?Y[7]^Y[8]:Y[7];
end
endmodule
此代码仿真通过,但综合错误,诸位大师可有解决之道?先谢谢啦。
parameter Length=8;
parameter initial_state=8'b1001_0001;
parameter [1ength] tap_coefficient=8'b1100_1111;
output [1:8] Y;
input clock;
input reset;
reg Y;
always@(posedge[/email] clock)
if(reset==0) Y<=8'b1001_0001;
else begin
Y[1]<=Y[8];
Y[2]<=tap_coefficient[7]?Y[1]^Y[8]:Y[1];
Y[3]<=tap_coefficient[6]?Y[2]^Y[8]:Y[2];
Y[4]<=tap_coefficient[5]?Y[3]^Y[8]:Y[3];
Y[5]<=tap_coefficient[4]?Y[4]^Y[8]:Y[4];
Y[6]<=tap_coefficient[3]?Y[5]^Y[8]:Y[5];
Y[7]<=tap_coefficient[2]?Y[6]^Y[8]:Y[6];
Y[8]<=tap_coefficient[1]?Y[7]^Y[8]:Y[7];
end
endmodule
此代码仿真通过,但综合错误,诸位大师可有解决之道?先谢谢啦。
Reply
语法问题。
既然Y输出是8bit,为何有“reg Y;”?
推荐解决方法: reg[7:0] Y;
先看看
正解
或 reg [1:8] Y;
跟output一致
agree with the latest floor.
