摘 要 數(shù)模混合芯片是電子市場上增長最快的部分之一。隨著芯片的規(guī)模越來越大,整個芯片的驗證難度增加,導(dǎo)致驗證的不完整性和覆蓋率的不確定性。在小規(guī)模的芯片驗證中,模擬或數(shù)字模塊,我們都假設(shè)它們是已經(jīng)充分驗證過的,對于頂層來說,只關(guān)心模塊的輸入輸出信號,而不關(guān)心內(nèi)部的任何信號。對于大規(guī)模數(shù)模混合芯片來說,由于它包含多個反饋通路和更復(fù)雜的模擬數(shù)字交互行為,傳統(tǒng)的黑盒測試模式已經(jīng)不能滿足驗證的要求。還有一個是電路的抽象層次問題,一個能夠支持各種抽象層次的驗證平臺,對于驗證效率大有幫助。在這篇文章中,我們將會涉及到數(shù)模混合芯片驗證的難點,驗證模型的編寫,混合接口的連接等問題,提出解決大型數(shù)模混合芯片驗證的可能方法。
【關(guān)鍵詞】數(shù)模混合芯片 驗證 建模 混合接口
1 數(shù)模混合芯片驗證的難點
集成電路芯片驗證的工作量根據(jù)芯片復(fù)雜度的增加指數(shù)級增長。對于數(shù)模混合電路芯片來說,任務(wù)變得更為復(fù)雜,包括仿真器的速度問題,數(shù)字和模擬電路的接口問題,模擬電路的建模問題等等.
數(shù)字電路的驗證已經(jīng)有了規(guī)則的方法學(xué):驗證計劃,有約束的隨機(jī)激勵測試,驗證平臺的自動化,驗證插入檢測和驗證覆蓋率測試。模擬電路一直是使用傳統(tǒng)的對于某個關(guān)注點的特定測試,驗證的計劃和覆蓋率測試很少被用到。
一般來說,模擬電路的驗證仍然以晶體管級模擬作為流片的標(biāo)準(zhǔn),SPICE提供了高精確度,但是它在頂層仿真中實在太慢,除非非常必要,否則不建議在頂層仿真中使用SPICE仿真。為了提高仿真速度,許多混合信號驗證都需要用到模擬行為的建模,這樣可以大大提高仿真速度。建模語言可以使用,verilog-ams,Verilog-a,vhdl-AMS或systemverilog等等。
對于模擬電路的建模,可以分為3種,性能模型需要精確的描述電路的行為,功能模型只需要細(xì)化到能夠描述電路的正確功能就可以了,還有一種模型更為復(fù)雜,如果工藝不夠成熟的話,還可以在模型中添加工藝參數(shù)來更加細(xì)致的對電路進(jìn)行仿真。
2 數(shù)模混合芯片驗證模型
模擬電路的行為模型,主要是對模擬電路的行為作出數(shù)學(xué)抽象,這種抽象可以分為幾個層次,下面我們可以以放大器作為例子。
最簡單的功能模型:
A:放大倍數(shù)。
Input vin_p, vin_n
Output vout
-ε 更詳細(xì)一點,增加一些參數(shù): 輸入電阻:Ri 輸出電阻:Ro 信號源內(nèi)阻:Rs 負(fù)載電阻:Rl -ε Vi = (vin_p-vin_n) * Ri/(Rs+Ri) 再詳細(xì)一些的模型,我們需要增加更多的參數(shù): 放大倍數(shù): gain 頻率單位增益: freq_unitygain 輸入電阻: rin 輸入偏移:vin_offset 電流偏置:ibias 轉(zhuǎn)換速度:slew_rate 輸出電阻:rout 輸出限制電壓:vsoft 輸入端電容:c1 跨導(dǎo):gm_nom 最大電流:iin_max 輸入端內(nèi)阻:r1 最大輸入電壓: vmax_in 源端電阻:rsrc 輸出電容:cout 以下模型摘自cadence公司軟件自帶代碼。篇幅所限,有興趣的讀者可以在$cadence_install/tools.lnx86/dfII/samples/artist/spectreHDL/Verilog-A/analog目錄下自行閱讀完整代碼。 analog begin @ ( initial_step or initial_step("dc") ) begin c1 = iin_max/(rsrc); … // Input stage. I(vin_p, vin_n) <+ (V(vin_p, vin_n) + vin_offset)/ rin; … // GM stage with slewing … // Dominant Pole. … // Output Stage. … // Soft Output Limiting. … end 從上面的例子我們可以看出,模擬電路的建模,根據(jù)模型的細(xì)致程度,分為多個層次。需要花費的時間,也從幾個小時,到幾天不等。如果還要加入工藝參數(shù),那將會是一件更加復(fù)雜的工作。 3 數(shù)模混合芯片接口 對數(shù)字電路來說,仿真器需要能夠分辨0,1,X和Z。對于模擬電路來說,仿真器需要能識別連續(xù)的值。在2種電路的接口處需要有連接模塊,這種模塊能夠把數(shù)字信號翻譯成相應(yīng)的模擬電壓值,并且能夠把模擬電壓值翻譯成0,1,X和Z中的一個。這種雙向的連接模塊在驗證仿真的時候是自動插入數(shù)模接口的,設(shè)計驗證人員需要做的就是選擇正確的連接模塊規(guī)則。 4 結(jié)論 數(shù)模混合信號的SOC的驗證是一個復(fù)雜的任務(wù)。當(dāng)集成電路的復(fù)雜度增加的時候,舊的頂層黑盒測試已經(jīng)不能夠滿足需要,數(shù)字和模擬之間復(fù)雜的交互導(dǎo)致了驗證難度的增加。我們開始使用建模和混合仿真來解決這個問題,這樣不僅能夠提高仿真速度,而且能夠提高驗證覆蓋率。 參考文獻(xiàn) [1]Chen J,Henrie M,Nizic M,et al.Mixed-signal methodology guide[J].2012. [2]Delorme N.Mixed-signal verification challenges[C]// Conference on Ph.d. Research in Microelectronics and Electronics.2014:1-1. [3]Chern J H.Challenges of analog/mixed-signal SoC design and verification[C]// International Symposium on Physical Design.ACM, 2005:102-102. 作者簡介 呂珣(1980-),女,四川省瀘州市人。現(xiàn)為恩智浦(中國)管理有限公司工程師。研究方向為集成電路。 作者單位 恩智浦(中國)管理有限公司 上海市 200070