• 时序裕量计算之一:ASIC时序裕量计算的一般方法


    clip_image002

    一、Clock Setup Slack

            Data Arrival Time 简记为 DataA;

            Data Required Time 简记为 DataR;其他的类似,例如clkA。

            Clock Setup Slack = DataR – DataA;                                                                  (1)

            DataA = Launch + uTco + Td-S + Td;                                                                (2)

            其中,Launch 为 Launch Edge; uTco 为内部寄存器 clock-to-output 时间;Td-S为时钟源到源端的时钟延迟,S表示Source;Td某寄存器输出端到另一寄存器输入端的路径延时。

            DataR = clkA – uTsu – stUn;                                                                                (3)

            其中stUn表示 Clock Setup Uncertainty。Clock Uncertainty用来模拟jitter、skew或者建立一个时钟的保护区。… Clock Uncertainty can be used to model jitter, skew and/or create a guard band for the analysis. 根据等式(1),考虑最坏情况,Latch的时候时钟沿倾向于左偏,所以要减掉stUn。

            clkA = Latch + Td-D;                                                                                          (4)

            其中,Latch为 Latch Edge;Td-D为时钟源到目的端的时钟延时,D表示Destination。

           考虑最坏的情况,

              Clock Setup Slack

           = DataR – DataA

           = Latch + Td-D – uTsu –stUn – ( Launch + uTco + Td-S + Td )

           = Latch + Td-D(min) – uTsu – stUn – ( Launch + uTco + Td-S(max) + Td(max) )       

           = (Latch - Launch) + (Td-D(min) – Td-S(max)) – uTsu –Td(max) – stUn - uTco        (5)

    二、Clock Hold Slack

           Clock Hold Slack = DataA – DataR                                                                       (6)

           Hold Check时的DataA和clkA计算方法同等式(2)和等式(4),DataR的计算方法略有不同。

           DataR = clkA + uThd + hdUn                                                                                 (7)

           其中,hdUn表示Clock Hold Uncertainty。考虑最坏情况,Hold Check的时候Latch时钟沿倾向于右偏,所以加上hdUn。

               Clock Hold Slack

            = DataA – DataR

            = Launch + uTco + Td-S + Td – ( Latch + Td-D + uThd + hdUn )

            = Launch + uTco + Td-S(min) + Td(min) – ( Latch + Td-D(max) + uThd + hdUn )    

            = –(Latch - Launch) - (Td-D(max) – Td-S(min)) – uThd + Td(min) – hdUn + uTco    (8)

  • 相关阅读:
    WindowXP 下Android 开发环境搭建
    机房收费系统个人版——DataGridView控件怎么用?
    IOS开发(64)之GCD任务最多只执行一次
    第八学 linux内核——内存寻址——段机制(2)
    Git clone远程仓库
    vi中如何跳转到指定行数
    _STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/f8995a0e1afcdadc637612fae5a3b585.php
    git 报错:没有权限 remote: error: unable to unlink old 'README.md' (Permission denied)
    mytop安装,使用mytop监控MySQL性能 (总结)
    一起谈.NET技术,如何解决“呈现控件时出错”的问题 狼人:
  • 原文地址:https://www.cnblogs.com/freshair_cnblog/p/2647896.html
Copyright © 2020-2023  润新知