日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > > 艾思后端實現(xiàn)

眾所周知,Cadence的Virtuoso是模擬設(shè)計領(lǐng)域的核心工具,市占率達到75%,隨著近些年來Cadence在數(shù)字版圖設(shè)計(APR)領(lǐng)域的崛起,invs,PVS等一眾工具也都成了很多公司的首選后端流程工具。依照強強聯(lián)合的邏輯,將數(shù)模實現(xiàn)工具進行協(xié)同部署看起來就是那么的水到渠成,這里就以O(shè)A數(shù)據(jù)為起點,簡單介紹一下MSOT的簡單流程。閑言少敘,ICer GO!

通常而言,數(shù)據(jù)交互是跨工具的主要問題,所以常用的LEF/DEF/V/UPF/SDC etc.便成為了數(shù)字流程的主要交互文件,但是對于Virtuoso,由于是模擬的設(shè)計理念,上述的方法不是很合適,這里就需要引入Cadence的**OA(OpenAccess)**數(shù)據(jù)平臺。

數(shù)?;旌显O(shè)計(Mixed-Signal Design)概略

從Virtuoso IC61開始,數(shù)據(jù)都是以O(shè)A為數(shù)據(jù)保存格式的,尤其到了OA2.2,已經(jīng)可以實現(xiàn)很多公司/工具的數(shù)據(jù)互通, 包括Synopsys,mentor,TSMC等大廠的工具,譬如S家的Laker就可以和C家的virtuoso通過OA做數(shù)據(jù)互通;Calibre也可以打開Virtuoso的OA數(shù)據(jù)庫等。

類似的,innovus也提供OA數(shù)據(jù)創(chuàng)建、讀取和存儲,這樣就可以實現(xiàn)innovus和virtuoso的數(shù)據(jù)溝通。有了這種數(shù)據(jù)溝通,就可以解決一定的芯片設(shè)計需求。

對于現(xiàn)代的MS(mixed-signal)的芯片設(shè)計無外乎以下兩種設(shè)計方法:

  • Ad(大數(shù)小模,下左圖)結(jié)構(gòu):virtuoso 做top-design,頂層以及大部分工作在virtuoso完成,剩余的一小部分digital在innovus完成,兩者通過OA協(xié)同,最后使用virtuoso 完成TO

  • Da(大數(shù)小模,下右圖)結(jié)構(gòu):innovus做top-design,頂層以及大部分工作在innovus完成,剩余的一小部分analog在virtuoso完成,兩者通過OA協(xié)同,最后使用innovus 完成TO

在這里插入圖片描述

如果,對于模擬數(shù)字交融的更為深入的情形,那么無論是使用vitruoso還是innovus完成最終的TO,二者都可以在數(shù)據(jù)的任何階段進行交互(PS:top的流程需要在項目初期定義完成,避免反復(fù)迭代)?;诖薈adence提出了(MSOT)的流程理念,這樣可以進一步淡化/模糊數(shù)模邊界,對于一個完整的設(shè)計也可以相對比較靈活,Cadence相信這樣可以更有利于設(shè)計的實現(xiàn)效果:

在這里插入圖片描述

所以,無論是上述Da,Ad抑或MSOT,這個流程都需要對virtuoso和innovus兩個工具使用統(tǒng)一的設(shè)計數(shù)據(jù)平臺:OA數(shù)據(jù)。從不同的工具角度去看,OA數(shù)據(jù)也有些微的差異:

  • 下左圖:virtuoso工具對于設(shè)計庫的需求(PDK):techdb, techfile.tf,pcell etc.

  • 下右圖:virtuoso工具對于設(shè)計庫的需求(LEF):techlef,std-cell lef ,macro lef

在這里插入圖片描述

OA DB 的創(chuàng)建和使用

如上所述,如果一個OA可以包含PDK和所有庫的LEF,那么就可以在virtuoso兩個工具在做平滑切換。這里有一個點要明確,對于virtuoso通常關(guān)注在模擬設(shè)計、版圖和仿真。而innovus需要關(guān)注的更多的是place,CTS和route,這個可能會在除去基礎(chǔ)的OA外用戶需要額外關(guān)注的。

綜上Cadence給出的解決方案就是:MSOA PDK (MixedSignal OpenAccess Process Design Kit ),這個OA的數(shù)據(jù)結(jié)構(gòu)是包含了上述virtuoso和innovus兩者都需要的東東。

  • Foundry rules (from PDK)
    • DR: default routing rules
    • Spacing/pitch/width
  • Tech LEF:
    • NDR: none default routing rules
    • Antenna
  • Std-cell LEF
  • IP LEF

Cadence提供一個流程幫助用戶在innovus里邊創(chuàng)建OA數(shù)據(jù)庫,來作為數(shù)據(jù)的起點(PS:類似的用戶也可以在virtuoso作為數(shù)據(jù)起點

OA庫通常是由三個部分組成(從底到頂?shù)拇涡颍?/span>

  • Technology DB:工藝相關(guān)的rule,layer等信息
  • Library DB: IP/pcell/std-cell等基礎(chǔ)設(shè)計單元和對于的view管理
  • Design DB:原理圖,版圖,網(wǎng)表等

考慮到工作數(shù)據(jù)維護的便利性,OA提供了refLib的理念,這個refLib通常只囊括工藝(technology)相關(guān)的信息,對于實際的設(shè)計庫,用戶可以對其進行對應(yīng)的設(shè)計(design)和基礎(chǔ)設(shè)計單元(library)的添加和維護??梢院唵卫斫鈘efLIb就是basic OA,設(shè)計的OA都可以將以這個refLib作為起點。

這里呈現(xiàn)一個以innovus為數(shù)據(jù)起點的簡化版的OA lib常見流程。依照上述講解,一個OA的lib的創(chuàng)建至少是需要兩個步驟的。具體流程見下圖:

在這里插入圖片描述
  1. 打開任意一個已經(jīng)完成init design的invs數(shù)據(jù)庫
restoreDesign DBS/design.init.enc.dat design 
  1. 導(dǎo)出OA tech file

這個可以理解為將invs的tech.lef轉(zhuǎn)換成virtuoso的的基礎(chǔ)技術(shù)文件:techfile.tf ,但是由于invs是一個簡化的設(shè)計環(huán)境(相較模擬設(shè)計而言),所以這里的數(shù)據(jù)量會較少,但是使用這個的好處是,用戶不用去花費大量的時間去解決techfile.tf和tech.lef的沖突。

write_oa_techfile oa.tf 
  1. 創(chuàng)建OA的reference lib

基于上述的oa.tf創(chuàng)建的reference lib,可以理解為一個帶入了fab設(shè)計規(guī)則OA lib

techLoadDump -l-createLib oa.ref.lib oa.tf 

基于OA系統(tǒng)數(shù)據(jù)規(guī)則,任何對于OA lib的創(chuàng)建都會在當(dāng)前目錄下的cds.lib添加OA lib的信息,如果cds.lib文件不存在則會自動重建。(PS:由于virtuoso和invs在調(diào)用OA lib的時候,都會使用這個文件,不建議手動修改/移除這個文件,

# file cds.lib # indication libname libpath  DEFINE oa.ref.lib oa.ref.lib 
  1. 準(zhǔn)備LEF文件

在一個完成init_design的invs數(shù)據(jù)庫中,是可以方便的管理所有的LEF文件的。包括tefh.lef。所以invs提供了一個簡單的命令,可以將LEF分類別導(dǎo)出

# dump tech LEF write_lef_library -tech_only tech.lef  # dump ALL IP/std-cell/antenna LEF write_lef_library -macro_only macr.lef 
  1. 創(chuàng)建OA lib

有了上述的結(jié)果,此處可以創(chuàng)建OA lib了,此處分兩步

  • 基于OA ref lib創(chuàng)建design的OA lib
lef2oa -pnrLibDataOnly\ -lef tech.lef \ -techRefs oa.ref.lib \ -lib design.oa.basic.lib 
  • 基于macro LEF 對OA lib進行增量調(diào)整
lef2oa -lef maco.lef \ -lib design.oa.basic.lib 

這里創(chuàng)建了新的OA lib,所以cds.lib就會增加一個條目

# file cds.lib # indication libname libpath  DEFINE oa.ref.lib oa.ref.lib DEFINE design.oa.basic.lib design.oa.basic.lib 

到此design的OA lib就創(chuàng)建好了,這個OA lib和DBS/design.init.enc.dat相比,除過沒有實際的design(netlist)外,其他的fab、tech、IP等信息是完全一致的。

用戶可以把這個OA DB作為一個新的起點,對實際的設(shè)計進行導(dǎo)入,就可以完成design OA lib的部署:

Note:由于cds.lib的控制,下面的動作需要和上述命令在同一目錄下

使用OA數(shù)據(jù)庫構(gòu)建floorplan:

1:配置basic OA lib

set init_oa_ref_lib design.oa.basic.lib  

2:配置netlist

set init_verilog design.dc.v 

3:配置top cell name

set init_top_cell design 

4:配置mmmc

set init_mmmc_file design.viewDefinition.tcl 

5:初始化design

init_design 

6:導(dǎo)入floorplan DEF

defIn design.fp.def 

7: 用OA數(shù)據(jù)結(jié)構(gòu)保存數(shù)據(jù): {lib_name top-cell view}

saveDesign -cellview{design.oa.floorplan.lib design floorplan} 

同樣,cds.lib再一次添加了新條目

# file cds.lib # indication libname libpath  DEFINE oa.ref.lib oa.ref.lib DEFINE design.oa.basic.lib design.oa.basic.lib DEFINE design.oa.floorplan.lib design.oa.floorplan.lib 

在invs里邊,打開OA數(shù)據(jù)庫,并完成place

1:打開floorplan OA 數(shù)據(jù)庫

restoreDesign -cellview{design.oa.floorplan.lib design floorplan} 

2:完成place

place_opt_design 

3: 保存place數(shù)據(jù)庫

saveDesign -cellview{design.oa.floorplan.lib design floorplan} 

cds.lib再次加入一個新的條目

# file cds.lib # indication libname libpath  DEFINE oa.ref.lib oa.ref.lib DEFINE design.oa.basic.lib design.oa.basic.lib DEFINE design.oa.place.lib design.oa.place.lib 

這里對同一個OA DB(design.oa.place.lib)分別使用invs和virtuoso打開,作為跨工具工作的一個注腳

在這里插入圖片描述

這里以invs數(shù)據(jù)庫為起點,完成一個OA lib的創(chuàng)建,這個和Traditional MSOA PDK相比,少了tech rule (techfile.tf , 通常來自于PDK)的帶入,簡化的原因是由于tech.lef和techfile.tf通常有一些沖突/差異,其他的步驟都是一樣的。完整的Traditional MSOA PDK如下,可以作為參考理解其中的原理

在這里插入圖片描述

到此,用戶已經(jīng)使用OA的數(shù)據(jù)庫完成了在invs里邊的place步驟,此時用戶如果需要,這個OA數(shù)據(jù)是可以直接傳遞給virtuoso(或者laker)用戶,完成后續(xù)的和模擬相關(guān)設(shè)計動作,然后可以再次返回invs進行后續(xù)的處置。用戶可以根據(jù)實際情況基于同一數(shù)據(jù)庫靈活選擇設(shè)計工具,從而推進Da或者Ad的設(shè)計。感謝Cadence的偉大創(chuàng)舉,感謝OA平臺,打通了數(shù)模設(shè)計的數(shù)據(jù)平移。

【敲黑板劃重點】

基于OA數(shù)據(jù)庫,發(fā)揮innovus和virtuoso的工具優(yōu)勢和特長,打破數(shù)模設(shè)計的阻隔,發(fā)揮不同工具的優(yōu)勢,完成芯片設(shè)計的訴求。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
關(guān)閉