vivado中最好不要出现两个always在同一时刻访问同一个数组,例如
reg [15:0]buffer[99:0][99:0]
reg [7:0]data_ch1;
reg [7:0]data_ch2;
reg x1,y1;
reg x2,y2;
always @(posedge sys_clk)
begin
......
data_ch1<=buffer[x][y][7:0];
......
end
always @(posedge sys_clk)
begin
......
data_ch2<=buffer[x2][y2][7:0];
......
end
两个always语句在同一个时钟上升沿读取同一个数组的值会导致VIVADO的SYNTHESIS时间不固定大幅延长。同一份代码不做改动,在VIVADO2023中进行SYNTHESIS,时间最短为10分钟左右,最长可达三小时以上。
5112

被折叠的 条评论
为什么被折叠?



