370 likes | 608 Views
Auto Placement and Route. 使用 Compass Cell Lib. 則要用它的 Technology file 。 為了要在 CIC 下晶片,必需要“依序”產生以下的 view name 在自建的 design 上。 在自己的 design 上,一定要建一個名為“ CHIP”( 大寫 ) 的新 design 。 在 CHIP 下依序產生 : schematic autoLayout Floorplanned Placed Routed. CIC 規定的 Cell Name.
E N D
Auto Placement and Route • 使用Compass Cell Lib. 則要用它的Technology file。 • 為了要在CIC 下晶片,必需要“依序”產生以下的view name 在自建的design 上。 • 在自己的 design 上,一定要建一個名為“CHIP”(大寫)的新design。 • 在 CHIP 下依序產生: • schematic • autoLayout • Floorplanned • Placed • Routed
CIC 規定的Cell Name CHIP [schematic view creation (I) ]
按此icon 由Library Browser 來幫助選填元件 按此icon 直接add 元件 選好之後將Mouse 指標移到 主視窗就看到可移動的cell CHIP[schematic view creation (II)]
CHIP [schematic power pad adding(I)] • External Power Pad 供給Pad電源,使 I/O pad 正常工作。 • I/O pad 消耗電能不可忽視。 • Internal Power Pad 供給晶片內元件電源。 • 為防止電源noise干擾,可適當的多加 External/Internal Power Pad,惟考量成本與實際需求。 • 耗電小且 I/O 腳數不多的的晶片,可以考慮直接把 External / Interal Power Pad 接在一起。
與先前步驟相同從 Compass Cell Lib. 中選出Power Pad (cb60io420d). Internal Power Pad 本例中 Internal Power Pad 選用pvdi, pv0i External Power Pad 選用pvdo,pv0o External Power Pad CHIP [schematic power pad adding(II)]
由Compass Cell Lib.中選出 I/O Pad (cb60io420d). CHIP [schematic I/O pad adding]
在剛加完Pad之後接著就 • 要在Pad端點加上“pin”。 欲改成output pin 按住此符號 將指標拖到output位置放掉。 採用連續指定的方式比較方便, 一次就先敲入pin name。 CHIP [schematic I/O pin adding(I)]
Input pad • Output pad • 加完 I/O pin之後再 • 用wire 連接I/O Pad CHIP [schematic I/O pin adding(II)]
CHIP [change I/O pad property(I)] • 改變I/O Pad 的屬性是為了使 I/O Pad • 能看起來像定義Bus線一樣,一個I/O • Pad 就代表了數個連號的Pad Symbol。 • 此步驟是為了使Schematic 看起來比 • 較簡潔。獨立的不同Pad就不用再行 • 此步驟了。
先用Mouse 點選到欲更換的I/O Pad • 再到出現的視窗中修改屬性值。 • <3:0> 是Bus 形式的宣告文法。 CHIP [change I/O pad property(II)]
CHIP [schematic check & save ] • CHIP 的schematic view • 最後應如右圖示。 • 建好schematic view 之 • 後必需行Check&Save • 的動作。 • 如有錯誤出現,修改 • 後再Check&Save 。
按下Floorplan/Schematics • 之後Tool Bar 上就會多出 • “Floorplan” 功能。 CHIP [autoLayout view creation (I)]
叫出此dialog box,裡面預設值 • 可以不用改,直接按“OK”。 CHIP [autoLayout view creation (II)]
做完Genertate Physical • Hierarchy之後,到CIW • 視窗應看到如左圖的 • 顯示。 CHIP [autoLayout view creation (III)]
autoLayout view • 完成了autoLayout view的所有步驟之後,可到Library Browser 裡找到剛 • 產生出來的autoLayout view。 • 可以關閉所有schematic Design 的視窗。 CHIP [autoLayout view check]
如果電路中有用到任何的Pull-up or Pull-down 則一定要加pull cell。 Pull-up Pull-down 電路中應用到 pull up/down CAD tool 自動執行後結果 pull cell CHIP [adding pull cell(I)]
先開出autoLayout view 的design 視窗 回到OPUS 的 ciw 視窗,同時在命令列key in如下 注意所屬環境的search path load(“/ee10-6/Librarys/compass0.6um/LIB06spdm/Opus/CIC-CMP.ile”) 填入 CIC-CMP.ile 所在位置的路徑例: load(“/ee10-6/Librarys/compass0.6um/LIB06spdm/Opus/CIC-CMP.ile”) CHIP [adding pull cell(II)]
執行完load skill code 後應出現 “CIC Tools” 接下來開出的視窗 預設了一些值,用 於Compass Cell Lib 可以不用修改。 直接按“OK”即可。 加過 pull cell 後, 在 CIW 會顯示加 pull cell 的統計數 字。 CHIP [adding pull cell(III)]
選Floorplan P&R的Cell Ensemble Tool Bar 會多出 P & R 功能。 CHIP [Floorplan invoking cell ensemable]
Reinitialize 開出視窗,設定 如下,約是預設值即可。 CHIP [initializing Floorplan]
Floorplan 最後會產生如圖的view。 注意: 要Save as “Floorplanned” CHIP [Floorplaned view]
.iof 檔相關位置圖示 .iof 檔例示 • 用編輯器產生一個 • I/O pad自動輸入的 • 檔。 • Save檔名為xxxx.iof 依 Schematic 設定的 Pad 名稱編輯 CHIP[editing I/O pads file] |IPAD_b(3) top 0 |I1 top 1 |OPAD_s(2) top 2 |OPAD_s(3) top 3 |OPAD_co left 0 |I8 left 1 |IPAD_a(0) left 2 |IPAD_a(1) left 3 |IPAD_a(2) left 4 |IPAD_a(3) bottom 0 |I2 bottom 1 |OPAD_s(0) bottom 2 |OPAD_s(1) bottom 3 |IPAD_ci right 0 |I9 right 1 |IPAD_b(0) right 2 |IPAD_b(1) right 3 |IPAD_b(2) right 4
填入 .iof 檔 加入 .iof 檔後 autoLayout view 會變成右圖 CHIP [placing I/O pads]
填入 cb60io420d 填入 CORNER 加入 CORNER後變成右圖(注意四邊) CHIP[placing Corner pads]
在自動Placement standard cell • 之前先設定feedthrough 。 填入 cb60hp230d 填入 FEEDTHROUGH CHIP[placing Standard Cell(I)]
先前設定feedthrough 且按“OK”後,就算是開始 auto placing Standard Cell。 • 一段時間後,在CIW 視窗上會出現完成訊息。 出現 faults 訊息,可以不用理會 CHIP[placing Standard Cell(II)]
若發現有overlap 則會在該處打叉,且閃動。 • 按下“OK” 之後進行overlap check。 CHIP[check I/O overlaps]
若先前檢查沒有overlap, • 則此步驟可以不用執行。 • 設定I/O spacing之後按“OK”。 • 它自動會調整好距離。 CHIP[remove overlaps]
做完以上的動作,工作視窗上應出現如下的 Placed view。 • 看過無誤後,應隨即 save as “Placed”。 CHIP[save as Placed view]
此步驟是建立Routing 的通道 • 按下“OK” 之後應出現如右圖示。 CHIP[creating channels for routing]
在未Routing 之前設定幾條 • 重要 net 的 Width。 欲調整的 net name 如:vdd! gnd! VDD! VSS!....等等,把它分別 key in 設定。 視需要,填入適當的Net Width 此以 um 為單位。 CHIP [modifying nets properties for routing]
接著進入 auto Routing 的程序。 選用Sequencer CHIP[routing nets (I)]
Channel 先前以經建好了,不要再設定 • 完成此步驟,則Routing 工作。 global 及 detail 要再設定 設定 設定 設成 0.075 CHIP[routing nets (II)]
做完這個步驟才看得到剛 • auto Routing 完的線路。 直接按“OK” CHIP[exploding channel for routing]
完成了以上的各步驟之後,應該可以看到以下的 Routed view。 • 最後再 save as “Routed” CHIP[Routed view]