十多年來,電路與系統(tǒng)尺寸、復(fù)雜性和運(yùn)行速度都得到了極大改進(jìn)。隨著系統(tǒng)級芯片(SOC)應(yīng)用增加,電子設(shè)計各部分與現(xiàn)實世界聯(lián)系更加緊密,因而對PCB數(shù)字和模擬信號仿真也提出了越來越多要求。
設(shè)計工程師所需考慮不僅僅是SOC,還須考慮同一系統(tǒng)內(nèi)多個芯片如何通過多種技術(shù)協(xié)調(diào)配合來實現(xiàn)相應(yīng)功能,因而除了混合信號之外,問題還涉及到光學(xué)、水力學(xué)、電機(jī)學(xué)、傳感器和激勵器等多種技術(shù)。
另外,知識產(chǎn)權(quán)(IP)使用方式也應(yīng)予以考慮。過去,IP是以封裝好組件形式被設(shè)計工程師采用。對半導(dǎo)體設(shè)計工程師而言,它是一種晶體管級原始單元?,F(xiàn)在,通過數(shù)字HDL(VHDL和Verilog)實現(xiàn)軟IP形式數(shù)字IP已經(jīng)出現(xiàn)。
基于此,仿真技術(shù)采用不但能顯著提高設(shè)計質(zhì)量,而且還可大大降低產(chǎn)品面市時間。在數(shù)字方面,Verilog和VHDL提供了很好從門級到行為級描述仿真和建模方案;在模擬方面,長期以來各種形式Spice已得到廣泛應(yīng)用,但其主要缺點是無法滿足高級建模需求。
仿真標(biāo)準(zhǔn)問題在于業(yè)界標(biāo)準(zhǔn)太多, SOC和IP開發(fā)方式存在不同之處,設(shè)計人員可能需要掌握所有標(biāo)準(zhǔn)。盡管利用現(xiàn)有點解決方案,從仿真角度看,這個問題可以解決,但考慮到時間和手工劃分難度,這有可能是令人感到痛苦過程。利用開放結(jié)構(gòu)產(chǎn)生單內(nèi)核可為混合信號、混合語言以及支持系統(tǒng)設(shè)計混合級仿真環(huán)境創(chuàng)建提供一種理想解決方案。
混合信號問題
為了解決混合信號問題,大部分EDA供應(yīng)商采用一種協(xié)同仿真方法,通過一個“底板”將仿真器連接起來。有些可支持多個仿真引擎連接,但大部分卻只能連接一個模擬仿真器和一個數(shù)字仿真器。盡管底板可提供兩個仿真器間同步功能,但該方法卻忽視了混合信號建模主要問題,迫使用戶人工地在兩個仿真器間進(jìn)行混合信號模型劃分。Analogy公司采用與眾不同方法,通過創(chuàng)建一個包含了數(shù)字和模擬算法混合信號仿真內(nèi)核,從而解決了內(nèi)核混合信號邊界問題。
但任何事物都不會一成不變。真正混合信號語言標(biāo)準(zhǔn),如VHDL-AMS和Verilog-AMS及其純數(shù)字版本,并不僅僅要求增加一個仿真器,而是需要一種新思維方式。任何實際解決方案都必須支持多種語言。設(shè)計者可從多種來源得到模型/設(shè)計且須將它們用于設(shè)計之中。當(dāng)然,在一個底板上使用多個仿真引擎可以解決問題,但這樣成本很高。
解決這個問題最佳方案是建立開放仿真環(huán)境,其內(nèi)部有一個單核仿真引擎。采用這個方案,單一內(nèi)核就能有效地解決設(shè)計中模擬和數(shù)字部分問題且使它們保持完全同步。然而,這個內(nèi)核應(yīng)該能夠支持多種描述語言,包括VHDL-AMS標(biāo)準(zhǔn)、Verilog-AMS、MAST和Spice等現(xiàn)有語言。它也應(yīng)該便于新語言和標(biāo)準(zhǔn)相互配合。通過大學(xué)研究機(jī)構(gòu)和專業(yè)第三方公司積極參與,這種開放仿真環(huán)境不但可改進(jìn)性能,而且也有助于保護(hù)以前投資。
采用一個單內(nèi)核仿真引擎可支持多種語言,但是仍有問題,其中之一即是VHDL-AMS語言沒有對仿真算法實現(xiàn)作任何規(guī)定,而且好解決方案也需要時間點同步和信號接口以保持基本速度和精度優(yōu)勢。
人們已嘗試?yán)酶鞣N方法來解決這一問題。一種方法是強(qiáng)制實施極小模擬時間步進(jìn)(time-step),以保證得到一個足以接近數(shù)字門輸入閾值模擬解,其*近程度可以由一個用戶誤差控制軟件(user error control)來設(shè)置。這個方法問題在于速度慢,因為仿真內(nèi)核模擬部分有很高工作負(fù)荷,其取整誤差(rounding error)高,使得極限點很難精確*近。在高頻設(shè)計中,即使1ns誤差都是很大誤差。
第二種方法是采用數(shù)字?jǐn)?shù)學(xué)引擎來控制時間步進(jìn),而且強(qiáng)制模擬求解機(jī)(analog solver)為每一個數(shù)字事件求出一個答案。這一方法表明模擬方案不再是誤差有限或受時間步進(jìn)預(yù)測控制,因而也不精確。而且采用這種方法也不可能用封閉反饋環(huán)對設(shè)計進(jìn)行分析。對于高度反饋電路來說,往往需要在同一時間點上進(jìn)行模擬和數(shù)字間重復(fù)迭代以得到正確結(jié)果。
時間后向跟蹤
最有效方法是采用一種模擬時間后向跟蹤(backtracking)機(jī)理。如果模擬求解機(jī)檢測到它放過了一個重要數(shù)字點時,就放棄剛剛得到解,馬上返回到前一時間點以保證對正確同步點進(jìn)行預(yù)測。
單內(nèi)核方法還須能夠?qū)⑥D(zhuǎn)換Hyper模型插入到模擬和數(shù)字間邊界,并可訪問現(xiàn)有模型擴(kuò)展庫。但是除模型轉(zhuǎn)換之外,仿真器還需對邊界進(jìn)行尋址,因為模型轉(zhuǎn)換時引入了額外延遲。
那些在混合信號設(shè)計中采用標(biāo)準(zhǔn)數(shù)字仿真器公司在處理這一額外延遲時會比較困難,因為只有調(diào)整標(biāo)準(zhǔn)數(shù)字算法才能解決問題。只有數(shù)字門開始變換后,轉(zhuǎn)換模型才開始工作。由于轉(zhuǎn)換模型是模擬轉(zhuǎn)換,信號具有時實上升沿,因而存在一個附加延遲。為了對這種情況進(jìn)行校正,數(shù)字算法必須知道轉(zhuǎn)換模型工作狀況并調(diào)整其內(nèi)部時延。
如前所述,與單內(nèi)核同樣重要是一個開放結(jié)構(gòu)。例如,Analog已經(jīng)發(fā)布了其解決方案具體規(guī)范。AIRE擴(kuò)展版本可用于將語言編譯器從其語言內(nèi)核中分離出來。這將使得編譯技術(shù)復(fù)用成為可能,并且鼓勵新工具如系統(tǒng)設(shè)計語言開發(fā),可由第三方供應(yīng)商在新內(nèi)核之上實現(xiàn)。AIRE目前支持VHDL-AMS、MAST和Spice,將來它還會支持Verilog-AMS。有了應(yīng)用編程接口(API),它還有可能支持對仿真內(nèi)核控制功能直接訪問,并支持其它仿真器編程接口標(biāo)準(zhǔn),如Verilog's PLI 2.0。此外,其它工具如用于混合信號測試Testify、混合信號統(tǒng)計分析工具Inspecs以及設(shè)計優(yōu)化工具也能通過該接口連接。
上一篇: PCB板焊錫絲和助焊劑
下一篇PCB中常見錯誤歸類說明
溫馨提示:
凡在本公司進(jìn)行電路板克隆業(yè)務(wù)的客戶,必須有合法的PCB設(shè)計版權(quán)來源聲明,以保護(hù)原創(chuàng)PCB設(shè)計版權(quán)所有者的合法權(quán)益;