错误:“某些寄存器由时钟控制时钟偏差大于数据延迟 – 电路不工作。“(QuartusTM version 1999.06)-Altera-Intel社区-FPGA CPLD-ChipDebug

错误:“某些寄存器由时钟控制时钟偏差大于数据延迟 – 电路不工作。“(QuartusTM version 1999.06)

如果您正在执行时序分析并且使用由逻辑单元(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_INDATALPM_ADDRESS_CONTROL参数设置为REGISTERED 。如果这样做,时钟偏差将足够小,以便始终使用有效数据写入RAM。

请登录后发表评论

    没有回复内容