为什么在使用分频因子为80的ALTTEMP_SENSE宏功能时,我会获得最小脉冲宽度违规?

使用ALTTEMP_SENSE宏功能时,必须确保应用于IP的时钟小于或等于1.0MHz。当使用更高频率的时钟时,宏功能允许您选择除以40或除以80因子以将时钟频率降低到小于或等于1.0MHz。

但是,当使用时钟分频因子80时,TimeQuest时序分析器可能会发出最小脉冲宽度违规。当使用任何一个分频因子时,TimeQuest时序分析器将仅分析除以40选择的时钟。因此,如果您的输入时钟大于40MHz,并选择除以80选项,则TimeQuest时序分析器将计算ALTTEMP_SENSE宏功能的输入时钟频率将大于1.0MHz。

解决/修复方法

您可以添加Synopsys设计约束(SDC)来覆盖不正确的时钟频率计算。以下示例约束基于来自ALTPLL宏功能(inst3)的输出CLK0,其驱动ALTTEMP_SENSE宏功能(inst5)的CLK输入端口。

create_generated_clock -name {inst5 | tsdadc_alttemp_sense_vps_component | SD1 | CLK} \
-source [get_pins {inst3 | altpll_component | auto_generated | pll1 | clk [0]}] \
-divide_by 80 -multiply_by 1-duty_cycle 50.00 \
[get_pins {inst5 | tsdadc_alttemp_sense_vps_component | sd1 | clk}]

这将在Quartus®II软件的未来版本中修复。

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-08-04 14:36:19 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它