Quartus中添加时序约束

 

1、sdc文件也是要添加到Quartus 软件中,这样在执行Read SDC File命令时才能读到相应的文件。

2、在TimeQuest打开的条件下,重新编译工程之后要Update Timing Netlist,这样TimeQuest分析器会得到最新的

 网表文件进行时钟分析。

转载地址http://www.cnblogs.com/pejoicen/p/4194380.html

PLL时钟约束

# Uncommenting one of the following derive_pll_clocks lines

# will instruct the TimeQuest Timing Analyzer to automatically

# create derived clocks for all PLL outputs for all PLLs in a

# Quartus design.

# If the PLL inputs are constrained elsewhere, uncomment the

# next line to automatically constrain all PLL output clocks.

derive_pll_clocks

# If the PLL inputs are not constrained elsewhere, uncomment

# the next line to automatically constrain all PLL input and

# output clocks.

# derive_pll_clocks -create_base_clocks

 

方法 1 – 自动创建基时钟和 PLL 输出时钟
这一方法使您能够自动地约束 PLL 的输入和输出时钟。ALTPLL megafunction 中指定的
所有 PLL 参数都用于约束 PLL 的输入和输出时钟。自动更新了 ALTPLL megafunction
的修改。当创建 PLL 的输入和输出时钟时,不必跟踪 PLL 参数的更改或指定正确的值。
为了自动约束所有输入和输出 , 要将 derive_pll_clocks 命令和 -create_base_clocks
选项一起使用。基于 PLL 的 MegaWizard TM  Plug-In Manager 例化,TimeQuest
analyzer 确定正确的设置。


derive_pll_clocks -create_base_clocks

 

方法 2 – 手动创建基时钟和自动创建 PLL 输出时钟
通过这种方法 , 可以手动约束 PLL 的输入时钟并且使 TimeQuest analyzer 能够自动
约束 PLL 的输出时钟。除此之外 , 与 ALTPLL megafunction 中指定的输入时钟频率相
反,您可以指定一个不同的输入时钟频率。通过使用 ALTPLL megafunction 中指定的
参数自动创建 PLL 输出时钟。您可以尝试不同的输入时钟频率 , 同时保持相同的 PLL
输出时钟参数。
确保指定的所有输入时钟频率与当前配置的 PLL 相兼容
可以将此方法与 derive_pll_clocks 命令一起使用并且手动创建 PLL 的输入时钟。


create_clock -period 10.000 -name clk [get_ports {clk}]
derive_pll_clocks

 

方法 3 – 手动创建基时钟和 PLL 输出时钟
通过这种方法 , 可以手动约束 PLL 的输入时钟和输出时钟。指定了所有的 PLL 参数并
且参数值可以不同于 ALTPLL megafunction 中指定的参数值。除此之外 , 您可以尝试
各种 PLL 输入和输出频率以及参数。
您可以将该方法与 create_clock 和 create_generate_clock 命令的组合一起使用。


create_clock -period 10.000 -name clk [get_ports {clk}]
create_generated_clock \
-name PLL_C0 \
-source [get_pins {PLL|altpll_component|pll|inclk[0]}] \
[get_pins {PLL|altpll_component|pll|clk[0]}]
create_generated_clock \
-name PLL_C1 \
-multiply_by 2 \
-source [get_pins {PLL|altpll_component|pll|inclk[0]}] \
[get_pins {PLL|altpll_component|pll|clk[1]}]

 

 

时钟约束出错

 

Warning (332174): Ignored filter at SDC1.sdc(1): CPU_clk could not be matched with a port

Warning (332049): Ignored create_clock at SDC1.sdc(1): Argument <targets> is an empty collection

Warning (332060): Node: SYS_clk was determined to be a clock but was found without an associated clock assignment.

没有对时钟进行约束设置

Node: <Node name> was determined to be a clock but was found without an associated clock assignment. (ID: 332060)

 

CAUSE: This can be caused in two ways: 1) A clock assignment was determined to be invalid, so its source objects no longer have a clock associated with them. 2) When analyzing the netlist, the node was found feeding a clock port with no other clocks feeding it.

ACTION: Use the derive_clocks command to automatically find all clock nodes in the design. Also, for any clocks that were ignored, review the warning or error message associated with the command to prevent the clock from being ignored.

 

Timequest timing analyzer使用方法

 

步骤1:执行初始编译

在应用时序约束设计之前,通过表1创建一个初始数据库。初始数据库从设计的post-map结过中生成。

 

表 1-1. 执行初始编译 (1)

Quartus II软件GUI

命令行

在Processing菜单上,指向Start,点击Start Analysis & Synthesis。

输入: quartus_map filtrefr

  • 8
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值