XILINX靜態時序分析專題一:setup time

好記性不如爛筆頭,記錄下vivado寄存器與寄存器之間的時序分析方法,本篇介紹vivado setup的分析方法,本篇爲個人理解,如有錯誤,望指正。
如下面幾幅圖所示,主要分爲四個部分:

  1. 從圖中可以看出這條路徑的基本信息,slack爲時序裕量,source爲源寄存器,destination爲目的寄存器,requirement爲時鐘週期,data path delay爲數據路徑延時,logic levels爲邏輯級數。Clock path skew爲時鐘到達目的寄存器的時延與時鐘到達源寄存器時延的差值,clock uncertainty爲時鐘的不確定性,與clock jitter等因素相關,個人理解與時鐘信號的質量關係最大。
    在這裏插入圖片描述
  2. source clock path源時鐘路徑,也就是時鐘從起始位置到達源寄存器時鐘輸入端的時延,本篇分析的時鐘來源於ZYNQ PS 側的FCLK,因此起始點在PS側,第一個net延時爲PS7到BUFG的延時,爲0.994ns。第二個延時爲BUFG的延時,爲0.085ns。第三個延時爲BUFG輸出經過時鐘樹到達源寄存器時鐘輸入端的延時,爲1.675ns,從時鐘信號起始到源寄存器的時鐘輸入端,一共延時2.755ns。

在這裏插入圖片描述
3.數據路徑的延時,數據路徑的延時是從時鐘信號的起始位置開始計時的,時鐘信號到達源寄存器的時延爲2.755ns, TCQ即寄存器從時鐘上升沿採樣到寄存器Q端輸出數據的時延爲0.398ns。源寄存器輸出到達目的寄存器的路徑和邏輯時延爲5.077ns,一共8.230ns。即目的寄存器的數據輸入端會在8.230ns時改變。
在這裏插入圖片描述
4. 目的時鐘路徑的時延,即時鐘從起始位置到達目的寄存器的時延,起始位置爲0+7ns,即加了一個clk週期,從起始位置到達BUFG的時延爲0.905ns。BUFG的時延爲0.077ns。BUFG輸出到達目的寄存器時鐘輸入端的時延爲1.277ns。clock pessimism爲時鐘悲觀爲0.109ns,何爲時鐘悲觀,可參考這篇連接,https://forums.xilinx.com/t5/Timing-Analysis/What-is-quot-clock-pessimism-quot/td-p/284876 。因爲STA時窮舉法分析,計算clock sknew時,時鐘到達目的寄存器輸入端的延時用最短延時路徑計算,時鐘到達源寄存器輸入端的延時用最長延時路徑計算,但實際中這種情況是不可能存在的,因爲時鐘從起始位置到達BUFG輸出這段路徑時一樣的,爲了補償這段計算過於嚴苛,超出實際情況的延時,所以在目的時鐘路徑的時延上加上clock pessimism。Clock uncertainty爲時鐘的不確定性,爲0.111ns。FDRE爲目的寄存器的setuptime,也就是寄存器的最短建立時間,即數據要領先時鐘0.479ns到達寄存器輸入端。最後的requiretime即爲數據路徑延時最長時間,與上面的實際數據路徑延時的差值即爲slack。

在這裏插入圖片描述

轉載地址:https://blog.csdn.net/weixin_43048906/article/details/103040495

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章