今天我們來(lái)學(xué)習(xí)一下Innovus中分析clock tree的小工具——CCOPT Clock Tree Debugger,簡(jiǎn)稱(chēng)CTD 看這名字就知道,這工具是用來(lái)Debug clock tree。大家知道,CTS在PR流程中,占據(jù)著極其重要的地位,tree build好以后,你的design就完成了一半。通常這是一個(gè)需要反復(fù)嘗試的過(guò)程,我們需要根據(jù)clock tree現(xiàn)在的狀況,去調(diào)整各個(gè)參數(shù)。如果能有一個(gè)圖形化的工具幫助我們更加形象直觀地觀察到整個(gè)clock tree的狀況,那對(duì)我們的Debug是非常有幫助的。而這次要介紹的Clock Tree Debugger就是起到這個(gè)作用。 話(huà)不多說(shuō),切入正題,我們可以通過(guò)打開(kāi)GUI上Clock下面的CCOPT Clock Tree Debugger來(lái)打開(kāi)它,
或者輸入命令ctd_win,
Window ID Name代表內(nèi)部CTD的窗口標(biāo)記,只是一個(gè)記號(hào),CTD默認(rèn)可以打開(kāi)六個(gè)窗口,大概是起到防止重復(fù)的作用吧。Window Title則可以顯性地指定CTD窗口的顯示名字。Unit Delay Mode在后文會(huì)提到。 使用CTD之前,我們必須首先創(chuàng)建clock tree的spec,如果沒(méi)有創(chuàng)建,CTD會(huì)彈出一個(gè)warning窗口
進(jìn)入到CTD的主界面窗口,整個(gè)工具可以分為7個(gè)部分:MenuBar(菜單欄),ToolBar(工具欄),Key Panel(按鍵板),Control Panel(控制板),Browser(瀏覽器),Clock Tree Viewer(時(shí)鐘樹(shù)視角),World Viewer(全局視角),下面我們來(lái)分別學(xué)習(xí)一下這每個(gè)部分的作用。
Clock Tree Viewer
首先來(lái)看Clock Tree Viewer, 這是最主要的部分,顯示了Clock Tree的結(jié)構(gòu)。在CTD中,Clock tree以倒Y字形結(jié)構(gòu)不斷地往下分叉,直到trace到clock sink端為止。結(jié)構(gòu)顯示也分為兩種模式。Unit Delay和Real Delay,可以在菜單欄Visibility中選擇切換。如下圖所示:
Unit Delay按照clock tree中的level劃分排列,左邊的縱坐標(biāo)顯示clock tree上所有cell的級(jí)數(shù),同一個(gè)level的clock cell處在同一水平線上。Unit Delay只能從層級(jí)上簡(jiǎn)單地反應(yīng)整個(gè)tree的結(jié)構(gòu),并不能按照真實(shí)的clock tree的指標(biāo)參數(shù)顯示。 Real Delay按照clock tree的實(shí)際insertion delay來(lái)顯示clock tree的信息,這是默認(rèn)的顯示設(shè)置,相對(duì)而言更加真實(shí),左邊的縱坐標(biāo)顯示著clock tree上cell的insertion delay信息。因此path的長(zhǎng)短不一,也讓我們可以很直觀地觀察出整個(gè)tree的skew情況。 我們來(lái)看具體insertion delay是如何計(jì)算顯示的。前面說(shuō)過(guò),整個(gè)tree以倒Y字形向下分叉,下左圖中,看似平整的直線其實(shí)放大了看也是有斜度的。那一段Y字形分別代表著Gate Delay和Wire Delay,如下右圖紅圈所示。鼠標(biāo)移至對(duì)應(yīng)的clock cell,左邊縱坐標(biāo)軸上就會(huì)顯示對(duì)應(yīng)的insertion delay數(shù)值,如下圖黃色箭頭所示,如果你想在CTD上查詢(xún)具體的Gate Delay和Wire Delay,暫時(shí)我們沒(méi)有直接顯示的方式,只能通過(guò)Ruler工具去縱坐標(biāo)上量取對(duì)應(yīng)的值。 我們也可以選中clock buffer, 右鍵將sink collapse起來(lái),這樣,所有所有clock sink便會(huì)以數(shù)字的形式簡(jiǎn)單顯示在CTD上,當(dāng)然它會(huì)將最長(zhǎng)和最短的path以實(shí)虛線的形式分隔開(kāi)來(lái),如右下圖藍(lán)圈所示:
如果鼠標(biāo)長(zhǎng)時(shí)間停留在某個(gè)clock cell上,CTD就會(huì)自動(dòng)彈出一個(gè)小窗口,顯示該clock cell的名字以及insertion delay等數(shù)值
Menu Bar
Menu Bar(菜單欄):CTD上菜單欄并不多,一共有4列,Help選項(xiàng)就不介紹了
先看View菜單,它主要控制CTD上整個(gè)界面上的顯示要素 (1)Clock path browser:主要控制Clock path browser的顯示位置,默認(rèn)在顯示在主界面下方,Clock path browser的功能后面會(huì)介紹到
Min/Max level代表著顯示到Clock path browser中的多少個(gè)skew group的數(shù)值信息,默認(rèn)只顯示Skew最大的skew group,level越大,可以顯示的skew group也越多,如下圖所示:
(2)Zoom:就是平常使用放大縮小功能,不過(guò)多介紹了
(3)Simplify:該功能可以將clock tree的顯示簡(jiǎn)單化,將一些不想看的東西用縮略圖表示。
Collapse可以將Sink,ICG,Buffer等cell不展開(kāi)顯示,只以一個(gè)簡(jiǎn)單數(shù)字和虛線表示連接關(guān)系,下圖藍(lán)圈表示該buffer驅(qū)動(dòng)了100個(gè)clock sink
Expand就起相反作用,將前面收縮顯示的東西又全部展開(kāi)
Abstract則是一種各簡(jiǎn)單抽象的顯示圖了,它放棄了倒Y字形的叉狀顯示圖,而是直接采用類(lèi)似飛線的連接方式,在這種情況下,它并不關(guān)注clock tree上insertion delay了。
(4)Delay corner:該選項(xiàng)很簡(jiǎn)單,就是切換不同的corner下面,tree的顯示情況。可以按快捷鍵"d"切換至下一corner,按“D”則是切回defalut的corner。需要注意的是CCOPT默認(rèn)只工作在你的primary corner下面
(5)Select: 該功能能實(shí)現(xiàn)一些特殊的“選擇”功能
Select minimum和Select Maximum:分別可以選擇當(dāng)前control菜單下,最小和最大的sink,比如我選擇了Transition time的control界面,那么點(diǎn)擊Select Minimum或Select Maximum,工具就會(huì)自動(dòng)地幫我們選中最小或者最大的transition sink。如下圖中的黃色虛線所示:
Enable crossprobing: crossprobing是一個(gè)非常好用的功能,從名字就能知道,它起著交叉顯示的作用。它很好地同步了CTD,innovus layout和Schematic view三個(gè)顯示界面。在CTD上執(zhí)行Selection,Highlight等操作,會(huì)自動(dòng)在Layout和Schematic view上同步執(zhí)行相同的操作,我們看下面三張圖: CTD上選中一個(gè)buffer,Innovus layout界面和schematic view界面上也會(huì)選中該buffer
CTD上Highlight這個(gè)選中的buffer,Innovus layout界面和schematic view界面上也會(huì)Highlight該buffer
Enable Zoom Selected:打開(kāi)該功能的話(huà),在CTD上選中某個(gè)Object后,Innovus layout界面會(huì)自動(dòng)放大該Object.
(6)Find窗口就是平時(shí)經(jīng)常使用的搜索Object界面 【圖形界面介紹
(8)Dump view:可以講當(dāng)前的clocktree截圖下來(lái),這個(gè)很簡(jiǎn)單就可以理解 (9)Control panel,Key panel,Browser則分別可以控制三個(gè)面板的顯示與否。后面會(huì)分別介紹這三個(gè)面板 (10)Preference: 設(shè)置選項(xiàng),大部分前面都介紹過(guò)。
Enable update synchronously:當(dāng)你對(duì)clock tree上的net或者cell做eco時(shí),clock tree viewer上會(huì)直接更新。Show connection line:打開(kāi)后可以顯示飛線Rectangular selection mode:在clock tree上框選一塊區(qū)域時(shí),指定在layout view上應(yīng)該顯示instance或者netDisplay leaf pins in each bar:在柱狀圖中顯示每個(gè)柱條的實(shí)際數(shù)值,Linear是代表Y軸顯示數(shù)字線性增長(zhǎng),Log是代表Y軸顯示數(shù)字指數(shù)增長(zhǎng)。Linear:
Log:
-
CTD
+關(guān)注
關(guān)注
1文章
3瀏覽量
2597
原文標(biāo)題:心似雙絲網(wǎng),中有千千結(jié)——Clock Tree Debugger(一)
文章出處:【微信號(hào):IC_Physical_Design,微信公眾號(hào):數(shù)字后端IC芯片設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論