我现在用的是V5—330T
代码有一个模块用一个250M的时钟分时读5个FIFO的数据,每1/5的时间读一个FIFO的十个数据,这样轮流读取;
同时类似用这个250M读一个深度为100 RAM的数据 ,读100个数前50个到一个RAM 后50个到另外一个RAM ;
FIFO的输出用一级寄存器寄存然后整合到一个RAM
RAM的输出没有寄存,直接分别写入两个深度50的RAM
现在出现约束不满足 感觉是跨时钟域的问题
Timing constraint: TS_clock_instance2_CLKFX_BUF_0 = PERIOD TIMEGRP "clock_instance2_CLKFX_BUF_0" TS_clock_instance1_CLK0_BUF / 2.5 HIGH 50%;
9115 paths analyzed, 5771 endpoints analyzed, 458 failing endpoints 458 timing errors detected. (458 setup errors, 0 hold errors, 0 component switching limit errors) Minimum period is 5.814ns.约束报告里面有3个叉,两个是从RAM 到寄存器,一个是从寄存器到RAM
setup path 里面分别的叉显示的是 -1.814 ns
-1.655 ns
-1.569 ns
希望懂的人指点下,我这个写法怎么能够改进,加特定的约束或者优化代码?求指教:handshake |