如何理解ScanDef的概念
文章目錄
- 背景:reorder和repartition的概念
- DEF文件的結構
- 寫出sdf文件
- 一些好文鏈接
Scan Def文件是在我們insert DFT之后write out出來,本篇博文對Scan Def的基本概念,以及def文件的格式進行介紹。
版權所有,請勿隨意轉載
作者:ciscomonkey
背景:reorder和repartition的概念
因為scan insert 會增加很多額外的路徑,為了符合die的大小和時序需求,我們應該盡可能地減小這些路徑,其中一種優化方式就是基于物理信息來優化。
什么是Scan Reorder
如下圖所示,在一條scan chain里面,交換s’can cell的順序,就是Scan reorder。從而解決了一些route太長的問題。
什么是Scan Repartition
如下圖所示,在Scan chain與Scan chain之間,互相交換Scan cell,叫做Scan Repartition。必須要補充說明的是這里我所說的交換,是只在report里面的內容上面的交換,并是這兩個cell的位置交換,記住,我們的任務是要減少routing。如下,我將繼續用swap來說明,但始終注意并不是交換scan cell的物理位置,只是,交換chain 的scan element。
在Scan reordering 和repartition的時候,也不是任意可以交換的。需要考慮的因素有clock mixing, DFT partitions ,multivotage regions和 multiple test modes。所以傳達這個信息的方式,我們用DEF來描述,只需要告訴Layout 工具哪些是可以reordering 哪些可以repartition,后端工具無需去理解DFT 的約束。
DEF文件的結構
def文件采用了stub chain來定義,stub chain并不等同于Scan chain,他是Scan chain 的element。另外def文件的cell并不包含所有的cell,不能優化的cell,不會出現。例子如下:
DEF文件如上圖所示,總共有8條chain,列舉了產生的前3條,stub chain的內容。
**START 和STOP:**指的是stub chain的邊界。邊界可能是I/O ports,logic gates,latch, buffer等
**FLOATING:**指的是unordered list ,可以被后端用來自由的reorder。當然是在當前這個stub chain內。
**ORDERED: ** 描述了在該組內不能reorder的scan cell,但可以整體在stub chain里面進行reorder,換句話說就是order里面的內容是捆綁在一起的,不能對捆綁的內容進行改變了,只能對整體在該stub chain內進行order。
BIST: bist的屬性,這里暫不介紹,可能與LBIST測試有關,這里暫不介紹,實際工程中暫時沒有找到該屬性。
PARTITION: 指的是stub chain可以被repartitioned(swap)標志,只有相同partition的才能swap 斯stub chain elements,partition name是獨一無二或者沒有partition的 stub chain將不能夠實現swap。關于,partition name, 官方的解釋如下,并沒有說ORDER里面的內容。
關于這個stub chain elements的表述方法,我有兩個理解,一個是交換stub chain里面的元素,一個是以stub chain 為單位來交換。關于前者,我存在的疑慮是已經捆綁好的ORDER部分,能否進行SWAP, 經討論后,如果支持后者,我又思考,如果是以stub chain為單位的話,那么如果stub chain的長度不一致怎么辦?還能否做到chain length的長度一致的基本原則。所以,經過考慮后,我認為支持前者的意思,這樣長度不會改變,但已經捆綁后的為什么能夠交換呢?因為有相同的PARTITION的identify。
一條stub chain包含0個或多個 ordered section, 但是只會有0個或者1個floating section, 因為在一個stub chain里面多個FLOATING section是沒有意義的。
所以綜上所述,我形成了下面的想法:
寫出sdf文件
change_names -heri -rules verilog write_scan_def -output [formate "%s%s" ./$TOP_design _scan.def]一些好文鏈接
1
2
總結
以上是生活随笔為你收集整理的如何理解ScanDef的概念的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数字IC设计bilibili-Desig
- 下一篇: DFTug - Getting Star