DFT - DRC
文章目錄
- 引言
- DRC
- 參考資料
引言
本章博客主要介紹DFT的DRC相關的知識,本博客知識針對本人的理解水平所記錄的筆記,對于本人的水平都覺得很簡單的東西,或者說以本人的水平完全不能理解的,就沒有記錄。
DRC
典型的DFT串Scan的的Flow如下:
其中,我們可以看到DRC其實做了兩次,一次是Pre- DFT的時候做,一次是post-DFT的時候做
可以看出做DFT DRC可以有三個階段,一個是RTL階段,一個是Pre-DFT階段(此時所有的FF已經更換成了scan-FF),還有一個階段是post-DFT階段(已經串好了scan)
如上圖所示,是在RTL階段就診斷出了D1錯誤,也就是時鐘不可控制,此時,可以通過增加一個mux,而不影響電路的實際功能。
在執行綜合的時候compile -scan時候,需要執行
set test _degault_scan_style_multiplexed_flip_flop
這樣才能保證在執行compile -scan的時候全部FF選擇scan FF
如上圖所示,如果是shift regist 類型的電路,此時可以只添加一個mux即可,這樣可以節約面積和時間。另外,如果是在compile- ultral模式的話,能自動識別到這種類型的電路結構。當然你也可以關閉這樣的功能,用下面的命令。
對于那種有SO端的cell,可以不通過Q端來連接,從而減小Q端的負載。
首先,得到scan FF之后,需要編譯,采用compile -scan 然后進行創建測試協議,然后進行串scan 做make insertion, 這個時候由于可能會增加了mux等,需要再編譯一次,并且后面增加參數 -incremental 告訴工具是在已經串好的scan上面做的編譯。
三種狀態,第一種是沒有替換成scan FF, 第二種屬于已經替換成了scan FF, 第三種代表已經串好了 scan FF
上圖代表在做scan-shift的時候可能會遇到的問題,因為我們做scan,前提條件是要保證
D1代表的是pre DFT時候的clock不可控
D2代表的是pre DFT時候的set不可控(異步時序)
D3代表的是pre DFT時候的reset不可控(異步時序)
對于如上圖所示的們門控型的DRC。通過增加兩個或門,保證再scan_mode下一定為1,從而一定會通過時鐘,而不影響function mode下面的功能
如上圖所示,對于分頻電路,由于在串scan的時候,會把分頻電路里面的clock divider也串起來,因此,需要增加一個mux,但是這樣同時也增加了skew,導致hold violation。
常見的violation如下圖:
官方資料:介紹了所有的 PRE DFT DRC
DFT Compiler RTL Test Design Rule Checking User Guide.pdf
DRC的檢查是有限的,不要盲目的依賴DRC tool
首先他們不會把門級延遲和net延遲考慮進去
他們沒有意識到時鐘樹的延遲的skew,靜態時序分析需要在測試模式和功能模式下都要滿足,所以需要在TetraMax上面跑仿真。
如上圖所示,如果在設計里面有一些ip,讀的是他的lib,但是并沒有描述他的function,所以可以將其讀作black box
加入Lockup latch之后的電路圖
CLK1低電平的時候,Lockup Latch是transparent,CLK1高電平的時候Lockup Latch一直保持上一拍的數據,這樣即使CLK2有延遲,只要不超過CLK1高電平持續時間,就能保證hold timing沒有問題。
上兩圖片轉自:
https://blog.csdn.net/NBA_kobe_24/article/details/105990121
推薦文章:
https://blog.csdn.net/NBA_kobe_24/article/details/105990121
https://xw.qq.com/cmsid/20180606A1JYAJ00?f=newdc
上圖是clock off,也就是時鐘端口關閉時候的仿真值
pin data的類型如上圖所示。
如上圖所示橫杠前面的數據X 代表clock off的值,橫杠后面的數據代表clock on的值
clock off的話就只有一個值
42:59有介紹 06 DFT DRC
下面介紹了spf文件
https://wenku.baidu.com/view/d6882120effdc8d376eeaeaad1f34693daef1093.html
https://blog.csdn.net/qq_42183548/article/details/80274479
參考資料
06 DFT DRC
總結
- 上一篇: DC使用教程系列1-.synopsys.
- 下一篇: DC使用教程系列2-时钟的概念与环境接口