近年來,消費電子和個人計算市場的發展增加了對于更強大且高度集成的芯片產品的需求。低成本、低功耗、復雜功能和縮短上市時間的需要,讓越來越多的IC設計采用了SoC技術。
在這些SoC電路中,由于包含了數據轉換器、功率管理及其它模擬電路,混合信號設計不可避免并且越來越多。在混合信號SoC設計中,為了避免芯片重制,確保一次性流片成功,全芯片混合信號驗證成為關鍵一環。傳統上,在復雜的混合信號SoC設計中,不同團隊分別獨立驗證數字和模擬組件,并不進行全芯片綜合驗證,其主要原因是沒有足夠強大的EDA工具能夠完成這個重要任務。如果所有的集成和接口問題僅僅是在測試平臺中進行解決,那么就很難保證混合信號的正確連接和時序匹配。隨著高速SPICE模擬工具的出現,設計師可以在晶體管級執行整個芯片系統的驗證,這是一種較為有效的驗證方法。該方法具有很高的精確性,并能夠進行全面的功能分析,但是,此類驗證只能在設計周期的最后階段進行,那時所有的單元和定制元件都已經設計完成。此外,這種方法的模擬速度有時非常緩慢,必須動用大量的硬件資源。對于包含微處理器、ROM、RAM、PLL等的復雜系統,由于其元件數量實在過于龐大,高速SPICE模擬器幾乎不可能執行全芯片晶體管級模擬。
然而,驗證方法學應該貫穿于整個設計階段,而不能僅局限于最終的驗證階段。同時,為了實現混合信號SoC驗證在精確性和速度之間的完美平衡,設計師可能想要保持某些重要的模擬模塊(如ADC、PLL)作為SPICE網表,而其它部分為Verilog行為級模塊。這時,設計師可以選擇使用晶體管級電路去替代特定的行為模塊,并及時高效地繼續設計驗證過程。
為了實現精確而快速的全芯片驗證,全新的模擬解決方案應運而生。
AMS Designer與AMSVF
作為新一代的模擬器,AMS Designer基于Virtuoso Spectre和Ultrasim Simulator以及Incisive Unified Simulator引擎的可靠技術,是一種單一核心(Single Kernel)的混合信號模擬器。它提供了兩種模擬求解器——Spectre和Ultrasim,并支持幾乎所有的語言和SPICE網表規格。Ultrasim求解器性能較高,有著堪比SPICE的精確性,并且容量幾乎無限,因此較適合大型全芯片設計。
雖然AMS Designer為DFII流程提供了友好的圖形用戶界面,然而對于混合信號驗證,多數設計師更需要該應用在命令行模式下執行全芯片驗證。其原因不僅是因為命令行模式提供了強大而方便的批量運行功能,還因為設計本身是基于沒有原理圖的文本文檔,或沒有GUI環境。對于這種應用方式,AMSVF(AMS驗證流程)更加適合。
AMSVF的應用模式
繼承了NC-Verilog,AMSVF的使用支持ncverilog單步模式,它主要面向Verilog-XL用戶;而3步模式會調用ncvlog剖析輸入文件,調用ncelab構建電路結構,然后調用ncsim模擬器模擬電路。
目前,AMSVF可以為數字測試平臺提供支持,其應用模式如圖1所示。
圖1 AMSVF的應用模式
Verilog/VHDL頂層也可以例示SPICE subckt,對于VHDL測試平臺來說,需要提供Verilog wrapper。另外,頂層可以調用其它Verilog/VHDL模塊。這種應用模式被命名為“Verilog on top”。中層SPICE subckt也可以例示最底層的Verilog/VHDL模塊,這種應用模式被命名為“Sandwich”或“SPICE in middle”。另外,在一些復雜設計中,AMSVF還支持多個“Sandwich”應用模式,如“Verilog - SPICE - Verilog - SPICE - Verilog”。
這兩種應用模式對于用戶的全芯片驗證應用是非常方便的。對于一個純粹的數字系統設計,為了獲得精確的結果,用戶可以用SPICE網表替代一些Verilog模塊,甚至使用寄生參數以獲得更為精確的模擬結果。由于物理元件太多,模擬速度可能會變慢,這時,用戶可以在SPICE網表中對基本門電路使用Verilog/VHDL行為級模塊。那么,“Sandwich”應用模式就得以實現。這意味著用戶可以自由而簡單地切換應用模式。
?????AMSVF的應用與重要功能
AMSVF中有許多實用而重要的功能,其中某些功能可用于減少建立測試用例所需的手工時間,而另外一些功能可用于驗證性能。
自動總線連接
在HDL語言中,總線信號的使用非常普遍且不可或缺。但SPICE中并沒有類似的概念或定義,連接到SPICE支電路的Verilog總線必須被分解到每一個單獨的端口,而且必須按順序連接。例如:
module verilog;
wire [0:5] v;
analog_top xana_top ( v[0], v[1], v[2], v[3], v[4], v[5] );
endmodule
.subckt analog_top p<0> p<1> p<2> p<3> p<4> p<5>
...
.ends
為了準確地連接Verilog實例和SPICE subckt,總線信號v[0:5]必須被分離。通常,分離的過程需要極為耗時的手動編輯,尤其對于規模較大的總線更是如此。而在AMSVF中,通過自動總線連接功能,用戶可以輕松地將實例寫為:
analog_top xana_top ( v );
用戶可以在SPICE網表中設置總線界定符,告知AMSVF哪個符號用于總線信號。這里符號<> 和[ ]為默認界定符,甚至也可以支持空總線界定符。
AICM與BDR
AMS Designer嚴格遵從Verilog AMS的規范確定(Discipline Resolution)過程,它讓用戶可以依靠工具確認信號間的連通性,并能實現連接模塊的自動插入。
AICM(自動插入連接模塊)算法判定通過未聲明端口相連的線網規范,然后在模擬和數字域邊界上插入連接模塊。除了電氣到邏輯(E2L)以及邏輯到電氣(L2E)這兩個普通的連接模塊外,AICM還支持雙向的連接模塊,這對于不想明確指定線網端口方向的用戶來說是非常方便的。
在驗證大規模設計時,尤其是在ncelab階段,新的BDR(鎖定規范確定)功能能夠讓設計師應用他們的設計知識去控制并縮小規范確定的解析范圍以提升性能。此外,如果通過AMSVF驗證的設計在數字和模擬之間有清晰的界限,或其所有線網都已被明確地聲明,那么,利用“-disres none”選項甚至可以跳過規范確定過程,顯著縮短運行時間。因此,這種新功能可以大幅提高AMSVF在ncelab階段的性能和效率。
此外,BDR對于多電源設計來說是非常實用的。例如,對于同時使用5V、3.3V和1.8V供應電源的電路來說,當數字模塊用不同的供應電源連接模擬模塊時,數字信號將會有不同的數字規范,如logic5V、logic33V 和logic18V,而對于單電源設計來說,僅用缺省的logic這一個數字規范即可。因此通過這種功能,用戶可以為設計中的數字模塊設定不同的數字規范,以便模擬器更加準確地插入連接模塊。
Stub View
Stub View提供了從模擬中移除原理圖或Verilog AMS模塊的途徑。通過移除不影響模擬結果或是沒有使用到的模塊,可以幫助用戶加快模擬速度。另外,該功能可以用于確認哪個模塊是造成模擬速度降低的主要原因。
比如,電路中包含有不同激勵源的3個通道,每個通道彼此獨立,利用Stub View功能移除其中的一或兩個通道,就可以大幅加快模擬速度。
UPS求解器
一般來說,電源/地線網絡中存在大量的寄生RC,在版圖后仿真時,這些寄生RC將會大大降低性能,并侵占大量內存。對于這類模擬,AMSVF中的UPS求解器可被用于加速模擬速度,同時保持精確性。模擬器首先偵測電源網絡,然后將整個設計分離為電源網絡和信號網絡兩部分。電源網絡部分由UPS求解器處理,而信號網絡部分則由Ultrasim求解器處理。電源網絡模擬的示意圖如圖2所示。
圖2 電力網絡模擬法示意圖
使用傳統的瞬態模擬和UPS求解器分別進行電壓降分析的性能對比如表1所示。
????? VR技術
由于芯片內電源電壓不斷降低,并開始采用多電源電壓,因此,越來越多的混合信號/RF或數字電路均使用片上穩壓器來產生內部供電電壓。Ultrasim求解器通過有效的分區技術實現模擬加速,但這只能應用在電路由理想電源電壓驅動的情況下。使用傳統的分區技術,所有連接到內部穩壓源的模塊都必須包含在單個分區內,嚴重影響了模擬速度。
VR(穩壓)技術能夠克服這種限制, 讓用戶能夠方便地對由內部穩壓器供電的電路模塊進行模擬仿真。
快速包絡分析
總的來說,當被調制電路采用傳統的瞬態分析時,需要非常小的時間步長以適應高頻載波信號,并且需要長時間的持續周期覆蓋低頻基帶信號,這將使得模擬變得非常緩慢和困難。快速包絡分析主要用于解決這個難題,這些電路類型通常出現在發射器、接收器等RF電路中。
AMSVF的快速包絡分析功能提供了對模擬/混合信號電路進行模擬和設計的有效方法。任何包含已調制信號的電路或RF部分都可以通過快速包絡分析法進行模擬,而電路的其它部分則由數字求解器或傳統的瞬態模擬法進行仿真。包括數字和模擬電路在內的所有仿真都在每個時間步長進行同步,它考慮了各仿真之間的耦合,并確保解決方案的精確性。快速包絡分析可以跳過時鐘周期中的很多時點,減少大量的時間步長數,簡化計算量。
以圖3中完整的RF電路為例,它包含了發射器、接收器和ADC/DAC Verilog-AMS模塊。與瞬態分析相比,快速包絡分析可以通過極小的精確性損失讓性能提高7倍。兩種方法的波形對比如圖4所示,來自快速包絡的最后一個波形跳過了很多周期。
圖3 完整的RF電路和ADC/DAC行為模塊
結語
AMSVF已經被證明是一種針對復雜混合信號電路進行全芯片驗證的有效而強大的工具。它不僅提供了靈活的應用模式,還包括更加先進而強大的功能,能夠幫助更多的用戶在設計的初期階段發現設計錯誤,縮短設計周期,實現一次性流片成功。
評論