zoukankan      html  css  js  c++  java
  • 时序约束命令

    时钟的约束

    关于时钟的约束命令:

    create_clock-name clk-period 10.000[get_ports{clk}]
    derive_pll_clocks        //当约束了主时钟之后加上这句话就不用逐一约束pll时钟啦
    derive_clock_uncertainty
    create_generated_clock  //当 FPGA 的引脚要向外部其他芯片提供时钟的时候 

    当出现警告: The following clock transfer have no clock uncertainty assignment. For more accurate results, apply clock uncertainty or use the derive_clock_uncertainty command.

    只要加上   derive_clock_uncertainty 这条命令就可以解决。


    output引脚约束命令

    set_output_delay-clock{clk}-min 2.5 [get_ports{reg1}] //最大
    set_output_delay-clock{clk}-max 2.5 [get_ports{reg1}] //最小
    set_output_delay-clock{clk}-  2.5 [get_ports{reg1}] //当最大和最小的值相等时

    因为 Timequest 只能约束 FPGA 的内部走线延时,但是无法知道 PCB 板上的走线延时或者外部寄存器芯片的延时, 所以这些不知道的延时都要算到 FPGA 的保持裕量和建立裕量。PCB 板的路径延时越大,建立裕量越小,保持裕量越大。反之路径延时越小,建立裕量越大,保持裕量越小。

    建立裕量考虑的是最大值

    Delay Value =  PCB最长走线的时间 + 外部芯片的建立时间 Tsu - clock skew

    保持裕量考虑的是最小值

    Delay Value =  PCB最短走线的时间 - 外部芯片的保持时间 Th - clock skew


    input引脚约束命令 

    set_input_delay-clock{clk}-min 2.5 [get_ports{reg1}] //最大
    set_input_delay-clock{clk}-max 2.5 [get_ports{reg1}] //最小
    set_intput_delay-clock{clk}-  2.5 [get_ports{reg1}] //当最大和最小的值相等时

    建立裕量考虑的是最大值

    Delay Value =  PCB最长走线的时间 + 外部芯片的建立时间 Tco - clock skew

    保持裕量考虑的是最小值

    Delay Value =  PCB最短走线的时间 + 外部芯片的保持时间 Tco - clock skew


    其余约束

    set_clock_latency //将外部时钟信号的抖动信息告诉 TimeQuest

    set_min_delay  //将有关路径延时告诉 TimeQuest

    set_max_delay

    原文链接:http://www.cnblogs.com/aslmer/p/6051814.html

  • 相关阅读:
    【转】MyEclipse快捷键大全
    【转】MOCK测试
    【转】万亿移动支付产业的难点和痛点
    【转】【CTO俱乐部走进支付宝】探索支付宝背后的那些技术 部分
    CTO俱乐部
    tomcat修改默认端口
    VS2013试用期结束后如何激活
    项目中遇到的 linq datatable select
    LINQ系列:LINQ to DataSet的DataTable操作
    C#中毫米与像素的换算方法
  • 原文地址:https://www.cnblogs.com/aslmer/p/6051814.html
Copyright © 2011-2022 走看看