赛灵思
直播中

陈嘉宁

7年用户 182经验值
私信 关注
[问答]

DDR2时序约束错误是怎么回事

我在附件中实现了ddr2,theclk0,clk90,clk200,clkdiv modelsimpic。
什么原因?
请帮助,谢谢。
出现以下错误:
错误:包装:1653 - 至少有一个时序约束是不可能满足的,因为单独的组件延迟超过了约束。
下面的时序约束摘要显示了失败的约束(以星号(*)开头)。
请将时序分析器(GUI)或TRCE(命令行)与映射的NCD和PCF文件一起使用,以确定哪些约束和路径因单独的组件延迟而失败。
如果故障路径按预期映射到Xilinx组件,请考虑放宽约束。
如果未按预期映射到组件,请重新评估HDL以及合成如何优化路径。
要允许工具绕过此错误,请将环境变量XIL_tiMING_ALLOW_IMPOSSIBLE设置为1。
派生约束ReportDerived约束TS_SYS_CLK + ------------------------------- + ------------
- + ------------- ------------- + ------------- + ------ +
------- + ------------- ------------- + + |
|
期间|
实际期间|
时序错误|
路径分析||
约束|
要求| ------------- + ------------- | ------------- + ------
------- | ------------- ------------- + ||
|
|
直接|
衍生物|
直接|
衍生物|
直接|
衍生物| + ------------------------------- + ------------- + -
------------ + ------------- ------------- + --------- +
---- + ------------- + ------------- + | TS_SYS_CLK |
3.750ns |
2.334ns |
18.000ns |
4 |
10267 |
0 |
11963 ||
TS_u_ddr2_infrastructure_clk0_ |
0.417ns |
2.000ns |
N / A |
2571 |
0 |
0 |
0 ||
bufg_in |
|
|
|
|
|
|
||
TS_u_ddr2_infrastructure_clk90 |
0.417ns |
2.000ns |
N / A |
552 |
0 |
0 |
0 ||
_bufg_in |
|
|
|
|
|
|
||
TS_u_ddr2_infrastructure_clkdi |
0.833ns |
1.401ns |
N / A |
206 |
0 |
0 |
0 ||
v0_bufg_in |
|
|
|
|
|
|
||
TS_MC_RD_DATA_SEL |
15.000ns |
0.702ns |
N / A |
128 |
0 |
192 |
0 ||
TS_MC_RDEN_SEL_MUX |
15.000ns |
0.501ns |
N / A |
0 |
0 |
64 |
0 ||
TS_MC_PHY_INIT_DATA_SEL_0 |
15.000ns |
1.151ns |
N / A |
85 |
0 |
141 |
0 ||
TS_MC_PHY_INIT_DATA_SEL_90 |
15.000ns |
N / A |
N / A |
0 |
0 |
0 |
0 ||
TS_MC_GATE_DLY |
15.000ns |
0.624ns |
N / A |
20 |
0 |
20 |
0 ||
TS_MC_RDEN_DLY |
15.000ns |
0.624ns |
N / A |
5 |
0 |
5 |
0 ||
TS_MC_CAL_RDEN_DLY |
15.000ns |
0.624ns |
N / A |
5 |
0 |
5 |
0 ||
TS_u_ddr2_infrastructure_idly_ |
0.625ns |
1.055ns |
N / A |
100 |
0 |
24 |
0 ||
clk_200 |
|
|
|
|
|
|
||
TS_u_ddr2_infrastructure_clk0_ |
0.417ns |
2.000ns |
N / A |
4856 |
0 |
3369 |
0 ||
bufg_in_0 |
|
|
|
|
|
|
||
TS_u_ddr2_infrastructure_clk90 |
0.417ns |
2.000ns |
N / A |
909 |
0 |
360 |
0 ||
_bufg_in_0 |
|
|
|
|
|
|
||
TS_u_ddr2_infrastructure_clkdi |
0.833ns |
2.127ns |
N / A |
830 |
0 |
7783 |
0 ||
v0_bufg_in_0 |
|
|
|
|
|
|
| + ------------------------------- + ------------- + -
----------- ------------- + ------------- + ---------- +
--- + ------------- ------------- + +
没有达到13个限制。

回帖(8)

高原

2020-6-3 13:20:33
请附上时间报告。
也许有人可以帮助你。
举报

杨玲

2020-6-3 13:36:08
看起来你已经指定了266 MHz的SYS_CLK,然后是其他约束
是基于这个频率的倍数。
当你这个时候会自动发生
使用DCM创建新频率,DCM的输入频率已知。
例如,TS_u_ddr2_infrastructure_clk90_bufg_in是通过除以创建的
SYS_CLK周期为9,表明至少时序分析器认为你
我们试图将输入时钟频率266 MHz乘以9,最终得到a
周期为0.4166 ns或频率为2400 MHz。
因为我假设你意识到
这种频率是不可能实现的,约束中必定存在错误
(即DCM的输入比266 MHz慢得多)或者是错误
在DCM连接中,即您混合了FX除法和乘法值。
HTH,
的Gabor
- Gabor
举报

王莹

2020-6-3 13:45:25
None
举报

高原

2020-6-3 13:58:38
嗨,
你如何在UCF中定义sys_clk?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分