如果要對相同工藝節點下進行性能評估,可以嘗試將一個廠商的GDS文件轉換到另一個廠商,不過要注意的是不同廠商(比如SMIC和TSMC)之間的DRC規則,盡量采用兩個DRC中的約束較為緊張的廠商進行設計,以免轉換到另外一家廠商時出現DRC違例。其次是需要采用相同的層數/頂層金屬厚度/RDL層厚度等。
以下采用Cadence Virtuoso IC61進行GDS文件的格式轉換。轉換方向為TSMC 65nm GDS --> SMIC 65nm GDS。
需要準備的文件有:
(1)TSMC 65nm PDK(包括tsmcN65_layermap
,文件命名可能不同);
(2)SMIC 65nm PDK(包括smicN65_layermap
,文件命名可能不同);
(3)TSMC 65nm GDS文件(假設為Synopsys ICC或Cadence Innovus導出的數字集成電路版圖tsmcN65_icc_innovus.gds
);
(4)手動編寫從TSMC到SMIC的層映射文件tsmcN65_smicN65_layermap
(第3部分講解)。
1. Virtuoso導入PDK并新建Library
1、導入TSMC/SMIC 65nm PDK,庫文件為tsmcN65
和smicN65
。
2、分別新建一個library,命名為mylib_tsmcN65
和mylib_smicN65
,然后分別Attach 每個自建庫到對應的tsmcN65
和smicN65
technology library上。
2. Virtuoso導入GDS文件
這一步導入Synopsys ICC或Cadence Innovus生成的數字集成電路版圖tsmcN65_icc_innovus.gds
。
1、在CIW界面點擊File -> Import -> Stream。
2、導入設置:
(1)選擇導入的gds版圖文件tsmcN65_icc_innovus.gds
;
(2)選擇導入的庫mylib_tsmcN65
;
(3)選擇Attach的Tech LibrarytsmcN65
,然后系統會自動選擇tsmcN65_layermap
。
點擊Translate
進行轉譯,將GDS文件轉換為layout。
3、查看頂層模塊的layout:
3. 編寫庫切換的層映射文件
由于Virtuoso是采用Layer Stream Number識別層的,因此主要針對Layer Stream Number進行修改。
Layermap文件中,一共分為四列:
(1)layer name
(2)layer purpose
(3)layer stream number
(4)datatype stream number
打開兩個工藝的layermap文件進行對比,以下圖中,左側為TSMC,右側為SMIC:
# tsmcN65_layermap
OD drawing 6 0
OD dummy 6 1
OD drawing2 6 2
OD drain 6 3
OD pin 6 6
OD test1 6 11
OD test2 6 12
OD test3 6 13PO drawing 17 0
PO dummy 17 1
PO drawing2 17 2
PO test1 17 11
PO test2 17 12
PO test3 17 13
PO rule1 17 51
# smicN65_layermap
GT drawing 30 0
AA drawing 10 0
可以發現(1)層名和(3)層掩膜ID在不同工藝下存在差異,比如:
TSMC Layer Name | TSMC Layer ID | SMIC Layer Name | SMIC Layer ID |
---|---|---|---|
OD | 6 | AA | 10 |
PO | 17 | GT | 30 |
… | … | … | … |
我們需要修改層掩膜ID,以提供tsmcN65頂層layout導出為中間狀態gds時,層掩膜ID的初步映射(雖然層名依然tsmcN65中的,但是后續操作Virtuoso能自動識別層掩膜ID并映射到smicN65)。
因此復制tsmcN65_layermap
中用到的層到新建的layermap文件tsmcN65_smicN65_layermap
中。
然后修改第三列的值為SMIC中對應的層掩膜ID。
例如:
# tsmcN65_smicN65_layermap
OD drawing 10 0
OD dummy 10 1
OD drawing2 10 2
OD drain 10 3
OD pin 10 6
OD test1 10 11
OD test2 10 12
OD test3 10 13PO drawing 30 0
PO dummy 30 1
PO drawing2 30 2
PO test1 30 11
PO test2 30 12
PO test3 30 13
PO rule1 30 51
4. 從virtuoso layout導出映射中間態的GDS
這一步從tsmcN65工藝下導出smicN65工藝下掩膜ID的中間態GDS文件。
1、點擊File->Export->Stream。
2、修改導出設置:
(1)填寫導出gds的名稱為tsmcN65_smicN65_mapping.gds
(2)選擇Library:為剛才導入的gds所在的庫mylib_tsmcN65
。
(3)設置頂層文件TOP_ASIC。
(4)Technology Library:不要選擇任何技術庫。
(5)Layer Map:選擇上一步編寫的層映射文件tsmcN65_smicN65_layermap
。
點擊Translate,導出GDS文件。
5. Virtuoso導入映射中間態GDS
這一步導入包含smicN65層掩膜ID的中間態GDS文件并由軟件自動映射到smicN65工藝上。
1、在CIW界面點擊File -> Import -> Stream。
2、導入設置:
(1)選擇導入的gds版圖文件tsmcN65_smicN65_mapping.gds
;
(2)選擇導入的庫mylib_smicN65
;
(3)選擇Attach的Tech LibrarysmicN65
,然后系統會自動選擇smicN65_layermap
。
點擊Translate
進行轉譯,將中間態GDS文件轉換為smicN65工藝庫下的layout。
3、打開頂層模塊的layout,查看是否能正確顯示各個層:
至此,從TSMC 65nm到SMIC 65nm的GDS轉換完成。
6. (可選)導出smicN65工藝下的版圖文件
這一步導出完整的smicN65工藝下的GDS文件。
1、點擊File->Export->Stream。
2、修改導出設置:
(1)填寫導出gds的名稱為smicN65_virtuosoOut.gds
(2)選擇Library:為剛才導入的gds所在的庫mylib_smicN65
。
(3)設置頂層文件TOP_ASIC。
(4)Technology Library選擇smicN65
。
(5)Layer Map:選擇smicN65_layermap
。
點擊Translate,導出GDS文件。
3、當然,擔心出問題的話,還可以把smicN65_virtuosoOut.gds文件導入進來看看層數是否正確。
參考文章:
不同工藝轉換 https://bbs.eetop.cn/thread-768170-1-1.html
(出處: EETOP 創芯網論壇 (原名:電子頂級開發網))