微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于时序约束和时序仿真的问题,大侠们进

关于时序约束和时序仿真的问题,大侠们进

时间:10-02 整理:3721RD 点击:

各位大侠,我在一个设计碰到一个比较奇怪的问题,我在ISE里加了时钟约束,约束到75MHz,ISE最终报告符合约束,没有问题,我在ModelSim里做时序仿真,却报告有些寄存器时序不满足(75MHz仿真):
# ** Error: D:/Xilinx/12.3/ISE_DS/ISE/verilog/src/simprims/X_SFF.v(115): $setup( posedge SRST &&& (srst_clk_enable1 != 0):514309 ps, posedge CLK:514713 ps, 477 ps );
#    Time: 514713 ps  Iteration: 2  Instance: /testb_bench/uut/\recordmachine_inst0/record_inst0/rec_fifo_din_dd_31
比如:这个错误,在ISE的时序报告了没有说不满足setup的,为什么在modelsim里却出现问题,另外,/rec_fifo_din_dd_31 这个寄存器我感觉无法再优化了,因为需要将输入的32位数据打3拍给FIFO,纯粹的三组寄存器相互级联,没有什么中间逻辑了。

另外,我试了将约束改到100Mhz,ISE也没有报时序错误,但Modelsim后仿(75MHz)还是会报这一类错误。
不知道怎么处理这个问题,请大侠指正一二



    从报告来看,仿真报错的是reset的复位路径。而你综合所加的时钟约束是约束不到复位信号的。可能把复位信号在输入模块之前打两拍。这样ISE才会正确的分析这个reset的时序。事实上,从仿真报的错误来看,你前端约束有问题,只约束了时钟,IO呢?是不是所有的时序路径都报告到了呢。

非常感谢小编,确实是我没加IO约束,而且testbench激励的位置上也不对,更改后完全没有错误,非常感谢,学习了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top