電子產(chǎn)品面板控制芯片的后端設(shè)計
本課題所設(shè)計的電子產(chǎn)品面板控制芯片能夠自動完成刷新,是一種帶鍵盤掃描接口的LED驅(qū)動控制專用電路。內(nèi)部集成有MCU輸入輸出控制數(shù)字接口、數(shù)據(jù)鎖存器、LED驅(qū)動、鍵盤掃描、輝度調(diào)節(jié)等電路,因此它可以減少編程量以及CPU使用率。自帶的灰度調(diào)節(jié)提高動態(tài)LED數(shù)碼管的顯示效果。主要應(yīng)用于各種音視頻終端產(chǎn)品,具有廣泛的應(yīng)用前景。因此根據(jù)實(shí)際需要,研究自主的、具有價格競爭優(yōu)勢、可靠性高、性能好同時擁有自主知識產(chǎn)權(quán)的電子產(chǎn)品面板控制芯片具有實(shí)際意義。
1 版圖設(shè)計流程
電子產(chǎn)品面板控制芯片采用華虹NEC0.35μmCZ6H 1P3AL工藝進(jìn)行設(shè)計,設(shè)計的目標(biāo)在滿足功能的前提下,盡量減少芯片面積降低成本。在前端綜合生成網(wǎng)表之后,接下來的任務(wù)就是把網(wǎng)表轉(zhuǎn)變成版圖。本項目的設(shè)計要求:工作頻率12 MHz,芯片尺寸(包括Pad)要盡可能小、功耗不超過3 mW,根據(jù)項目要求選擇ASIC設(shè)計常用的后端布局布線工具SOC Encounter進(jìn)行版圖設(shè)計。由于該芯片驅(qū)動數(shù)字電視機(jī)頂盒中的LED需要80 mA灌電流,而CZ6H工藝中提供的標(biāo)準(zhǔn)IO PAD達(dá)不到要求,需要自行設(shè)計。另外要求芯片的工作時鐘由內(nèi)部產(chǎn)生,因此需要自行設(shè)計50 MHz的振蕩器,經(jīng)過4分頻作為工作頻率。將這兩個自行設(shè)計模塊采用Cadence公司Abstract Generator工具轉(zhuǎn)變成硬宏單元后開始進(jìn)行版圖設(shè)計?;赟oC Encounter的電子產(chǎn)品面板控制芯片設(shè)計流程,如圖1所示。
2 版圖設(shè)計
根據(jù)版圖設(shè)計流程對電子產(chǎn)品面板控制芯片進(jìn)行版圖設(shè)計,并針對設(shè)計中出現(xiàn)的問題提出具體解決辦法。
2.1 設(shè)計輸入
設(shè)計輸入是版圖設(shè)計前的準(zhǔn)備工作,需要輸入下列4種文件:由前端綜合生成的網(wǎng)表文件、時序約束文件、硬宏單元相關(guān)文件和由芯片制造廠家提供華虹NEC 0.35 μm CZ6H 1P3AL工藝庫相關(guān)文件。
工藝庫中含有工藝數(shù)據(jù)、自動布局布線用的庫單元物理信息及其時序信息(定義了標(biāo)準(zhǔn)單元和輸入輸出單元的時延信息用于靜態(tài)時序分析)等。標(biāo)準(zhǔn)單元工藝庫由華虹NEC提供,但對于所提供的CZ6H_IO_3AL.lef文件,電源VDD PAD(HQIV5A1B)和GNDPAD(QIC0A00)無法與Core中的電源網(wǎng)絡(luò)相連,因此需要修改lef文件:在HQIV5A1B中PIN VDD的定義中加入一行Class Core,在QIG0A00中PIN GND的定義中也加入一行Class Core即可實(shí)現(xiàn)連接。
另外利用版圖設(shè)計工具Virtuoso Layout Editor畫的振蕩器和大驅(qū)動電流IO PAD版圖,需要采用Abstract Generator工具將版圖轉(zhuǎn)變成SoC Encounter所需的LEF文件和時序信息文件。但對于振蕩器會出現(xiàn)電源/地?zé)o法與Core中的電源網(wǎng)絡(luò)相連,因此需要手動修改lef文件:在PIN VDD的定義中加入一行Use Power,在PIN GND的定義中加入一行Use Ground即可實(shí)現(xiàn)連接。
由DC綜合工具生成網(wǎng)表用的SoC Encounter工具進(jìn)行版圖設(shè)計時,需在該網(wǎng)表中加入電源/地PAD單元和為不同側(cè)PAD電源環(huán)提供電源網(wǎng)絡(luò)連接的PADComer單元等。另外,在DC綜合后將導(dǎo)出1個時間約束文件,該文件用于SoC Encounter 工具約束布局布線階段的時序信息。
2.2 平面規(guī)劃
平面規(guī)劃是對電子產(chǎn)品面板控制芯片的結(jié)構(gòu)做出整體規(guī)劃,包括定義Core面積、設(shè)置Row結(jié)構(gòu)、擺放端口Pad位置、在Core中放置振蕩器和設(shè)計電源網(wǎng)絡(luò)等。
本設(shè)計為PAD限制,而且對芯片封裝時引腳的排列順序是固定,另外自行設(shè)計具有80 mA灌電流的I/O PAD和標(biāo)準(zhǔn)I/O PAD寬度不同,因此要對PAD的擺放進(jìn)行認(rèn)真研究,以達(dá)到芯片的面積最小。本設(shè)計采用編寫I/O分配文件,提供偏移量(Offset)直接指定所有I/O PAD的精確位置,實(shí)現(xiàn)PAD間以及Comers與鄰近PAD間都是緊密相連,中間不插入任何PAD Filler單元,從而達(dá)到芯片面積最小。
在以往的電源網(wǎng)絡(luò)設(shè)計中,由于沒有合適的方法,通常是根據(jù)經(jīng)驗(yàn)進(jìn)行,而且對電源網(wǎng)絡(luò)的分析和驗(yàn)證,通常放在版圖設(shè)計完成之后,這樣帶來的問題是假如電源網(wǎng)絡(luò)設(shè)計不能滿足要求,就會導(dǎo)致版圖設(shè)計的不斷反復(fù),延長芯片的設(shè)計周期,推遲芯片上市時間。因此,本芯片電源網(wǎng)絡(luò)設(shè)計采用剛開始時在不考慮電路的時序收斂等條件下快速的完成版圖設(shè)計流程,進(jìn)行功耗分析得到芯片Core功耗為2.873 4 mW,然后根據(jù)芯片Core功耗來設(shè)計電源網(wǎng)絡(luò)。由于本設(shè)計為PAD限制,經(jīng)計算并留出較大的余量將電源環(huán)的寬度設(shè)為15 μm,中間放置一條寬度為10 μm水平電源條。
將振蕩器移到Core內(nèi)部將其位置固定并給它加電源環(huán)后,在進(jìn)行電源網(wǎng)絡(luò)連接時會出現(xiàn)如圖2所示打上“×”的錯誤標(biāo)記,對這種問題的解決辦法是執(zhí)行addHaloToBlock命令,用Ruler去測量振蕩器到4邊的外圍的距離進(jìn)行設(shè)置即可解決該問題。[!--empirenews.page--]
2.3 布局
布局就是放置電子產(chǎn)品面板控制芯片中各個標(biāo)準(zhǔn)單元位置的過程,在布局期間要求優(yōu)化一個特定的目標(biāo)函數(shù),這個目標(biāo)函數(shù)通常包括時序、連線長度、擁塞等。本設(shè)計采用時序驅(qū)動布局將關(guān)鍵路徑上的單元放得很近,以縮短連線長度來減小關(guān)鍵路徑時延。但為了減少擁塞度,要把連線均勻地分布在版圖上,以避免局部擁塞的現(xiàn)象,因此對布局時的最大密度設(shè)置為50%。通過對時序分析和阻塞分析,可知這種做法既達(dá)到時序收斂,又不會出現(xiàn)擁塞,布局效果良好。
2.4 時鐘樹綜合
由于同步設(shè)計電路中所有的操作都需要時鐘控制來實(shí)現(xiàn)同步,而時鐘網(wǎng)絡(luò)在所有信號網(wǎng)絡(luò)中負(fù)載最大、走線最長、要求最苛刻,因此時鐘樹綜合的質(zhì)量直接影響芯片的性能。時鐘樹綜合的目的在于控制時鐘傳播延遲、時鐘偏移和跳變時間。較大的時鐘延遲對解決電路的建立時間問題不利,較大的時鐘偏移會增加寄存器鎖存不穩(wěn)定數(shù)據(jù)的幾率,而控制好跳變時間有利于優(yōu)化時鐘樹的功耗。本設(shè)計先采用在自動CTS模式下,根據(jù)時鐘樹規(guī)格文件中的時序約束自動決定級別數(shù)和緩沖器數(shù),然后根據(jù)設(shè)計中的具體情況用手動方式修改級別數(shù)、緩沖器類型以及所連接的寄存器,以達(dá)到盡可能好的效果。通過比較時鐘樹綜合報告文件可知,在自動模式下,時鐘偏移為0.13 ns,通過手動修改后時鐘偏移為0.078 ns,時鐘樹綜合結(jié)果顯示,如圖3所示。
2.5布線
SOC Encounter在布線時分為兩個階段完成:預(yù)布線和詳細(xì)布線。預(yù)布線時布線工具把整個芯片劃分為多個較小的區(qū)域,布線器只是估算各個小區(qū)域的信號之間最短的連線長度,并以此來計算連線延遲和每個區(qū)域的布線擁塞程度,這個階段并沒有生成真正的版圖連線。詳細(xì)布線時考慮信號完整性和時序驅(qū)動,同時可修復(fù)天線效應(yīng)、串?dāng)_影響和設(shè)計規(guī)則違反。詳細(xì)布線工具尋找并修復(fù)短路和開路的線,同時完成布線后優(yōu)化。在詳細(xì)布線時,Routing Track定義,布圖規(guī)劃,setNanoRouteMode命令參數(shù)設(shè)置的沖突會引起線的開路。出現(xiàn)開路情況后使用verifyTracks命令可以診斷標(biāo)準(zhǔn)單元的線的開路問題,能報告出在Blockage內(nèi)部引腳的距離太遠(yuǎn),引腳未對齊,引腳在Stripes下面等問題。通過對報告分析,了解原因后進(jìn)行布局調(diào)整直到解決問題。
2.6 可制造性設(shè)計
可制造性設(shè)計包括消除天線效應(yīng)(NEC0.35CZ6H工藝不需要)、加Core填充單元(FILL1,F(xiàn)ILL2)、優(yōu)化接觸孔、加金屬填充滿足金屬密度要求。
默認(rèn)情況下是使用單孔進(jìn)行上下層之間的連接,在空間允許的情況下可使用雙孔或多孔進(jìn)行連接,使用雙孔或多孔的目的是減少過孔電阻、減少電遷移引起的失效,有利于時序收斂和提高良率。布線工具會利用:Multiple-cut Vias或Fat Vias替換掉信號過孔達(dá)到優(yōu)化過孔的目的。詳細(xì)布線時利用插入Multi-Cut Via或Fat Vias修復(fù)串?dāng)_。
版圖是由一行行等高Row組成,由于Row放置標(biāo)準(zhǔn)單元的利用率不可能達(dá)到100%,因此在Row中標(biāo)準(zhǔn)單元之間可能會有大小不等的間隙,這些間隙若不用填充單元進(jìn)行填充,則在物理驗(yàn)證工具進(jìn)行設(shè)計規(guī)則檢查時會產(chǎn)生大量DRC違規(guī),解決辦法是加Core填充單元(FILL2,F(xiàn)IL-L1)。
根據(jù)CZ6H工藝中的金屬密度填充規(guī)則對所有金屬層加入考慮時序的金屬填充,這樣可盡量避免在時鐘和信號線周圍加入金屬填充,而更多的是加在電源和地線周圍。[!--empirenews.page--]
2.7 驗(yàn)證
對執(zhí)行可制造設(shè)計后的版圖進(jìn)行連線驗(yàn)證和時序驗(yàn)證。連線驗(yàn)證包括:線是否連上(Verify Connectivity)、網(wǎng)格是否正確(Verify Geometry)、金屬密度是否達(dá)到20%等等,運(yùn)行后可以檢查報告文件,發(fā)現(xiàn)金屬填充后存在的線與線間距的違規(guī),需要手工進(jìn)行調(diào)整。
時序驗(yàn)證產(chǎn)生報告來檢查建立時間、保持時間、最大電容和最大過渡時間是否滿足要求,本設(shè)計滿足要求。
2.8 功耗、電壓降和電遷移分析
對設(shè)計好的版圖進(jìn)行功率、電壓降和電遷移分析結(jié)果如圖4所示,從中可知使電源/地PAD數(shù)量、電源環(huán)、電源條的設(shè)計符合功耗、電壓降、電遷移要求。
2.9 輸出
版圖設(shè)計完成后,要從版圖中提取進(jìn)行后端驗(yàn)證所需的信息,如用于形式驗(yàn)證、物理驗(yàn)證、靜態(tài)時序分析和后仿真的Verilog網(wǎng)表文件,用于物理驗(yàn)證工具進(jìn)行。DRC,LVS和LPE的經(jīng)過各單元GDS文件Merge后輸出的GDS文件。將產(chǎn)生的GDS文件導(dǎo)入Virtuoso Layout Editor工具加入Cover單元并在相應(yīng)的位置打上Labe1標(biāo)號,最終電子產(chǎn)品面板控制芯片的版圖,如圖5所示。
3 結(jié)束語
對SoC Encounter輸出的版圖和網(wǎng)表,用Formality工具進(jìn)行形式驗(yàn)證,用Star-RCXT工具提取寄生參數(shù)后用PrimeTime工具進(jìn)行靜態(tài)時序分析,用物理驗(yàn)證工具Calibre進(jìn)行DRC和LVS,采用Modesim進(jìn)行流片之前的后仿真,本設(shè)計通過上述的所有驗(yàn)證,成功試制小規(guī)模樣片,利用搭建的測試臺對樣片進(jìn)行驗(yàn)證證明達(dá)到了設(shè)計的要求。