如果您正在执行时序分析并且使用由逻辑单元(LE)寄存器提供输入的异步RAM块,则可能会在Quartus软件中收到此错误消息。
这种设计的一个例子是,如果写入使能信号( WREN )和数据输入( DATA )到异步RAM块是由LE寄存器的输出馈送的。假设寄存器由一个名为clk的信号计时,Quartus软件计算的数据延迟将是:
clk_path_to_data_reg + tco + REG2DIN
Quartus计算的时钟延迟为:
clk_path_to_wren_reg + tco + REG2WE
Quartus软件假定WREN信号是RAM的异步时钟信号。 |
当这些寄存器位于LE中时,数据延迟变得比WREN信号延迟短,从而产生RAM总是写入错误数据的情况。
解决方案是将寄存器放入嵌入式系统块(ESB)本身,并使RAM功能同步。这是通过将RAM函数的LPM_INDATA和LPM_ADDRESS_CONTROL参数设置为REGISTERED 。如果这样做,时钟偏差将足够小,以便始终使用有效数据写入RAM。





没有回复内容