FPGA 时序约束(altera timequest)

1 好的时序约束可以指导布局布线工具进行权衡,获得最优的器件性能,使设计代码最大可能的反映设计者的设计意图。时序约束的目的就是发现设计中的时序违规,然后通过改正,调整关键路径的逻辑关系实现时序收敛。

2 TimeQuest 是Altera 在6.0 版的软件中加入的具备ASIC 设计风格的静态时序分析(STA)工具。采用Synopsys Design Constraints(SDC)文件格式作为时序约束输入.

3 TimeQuest所做的就是建立时间和保持时间的检查。对于异步信号就是恢复时间和移除时间。此外还有多周期约束。

4 时序检查的目的就是确认信号跳变发生在“信号跳变抵达窗口”内,而不会发生在“信号电平采样窗口”内。

加法器的Verilog代码如图4所示。注意到代码中的注释“synthesis keep”,这个注释插入到代码中,用来命令Quartus II软件在最后的电路实现中保留指定的节点和该节点的名称。这样做可以允许我们以保留的节点作为参考。

a915fa43-89a3-4b16-b947-53942fbf4a74.jpg


图4 示例中加法器Verilog代码

6 Timequest 中常用的时序约束语句

Collections:Searches and returns from the design netlist with a list of namesmeeting criteria

           -get_ports
           -get_pins
           -get_clocks
           -all_clocks
           -all_registers
           -all_inputs
           -all_outputs

clocks: two types

absolute clock or base clock and generated clock: All clock are related by default;

Clock Constraints:

     

nCreate clock
nCreate generated clock
nPLL clocks
nAutomatic clock detection & creation
nDefault constraints
nClock latency
nClock uncertainty
nCommon clock path pessimism removal

Create a clock:
   command: create_clock  -name ? -period ? -waveform{risetime fall time} targets -add

 

nIf no clock constraints exist, default constraints  created through two commands

derive_clocks-period 1.0

derive_pll_clocks

nDefault constraints not applied if at least one clockconstraint exists
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值