Global Sources
電子工程專輯
 
電子工程專輯 > 測試與測量
 
 
測試與測量  

採用虛擬原型和混合級建模技術縮短SoC開發周期

上網時間: 2005年03月26日     打印版  Bookmark and Share  字型大小:  

關鍵字:虛擬原型  可預測性  驗證  電子系統級  抽象 

本文探討論了單晶片系統的可測性設計和驗證所要求的方法與工具本文,指出了實現設計/驗證流程自動化的電子系統級工具的關鍵要素,並介紹如何組織這些要素才能使它們更好地發揮作用。

採用虛擬原型和混合級建模技術縮短SoC開發周期

本文探討論了單晶片系統的可測性設計和驗證所要求的方法與工具本文,指出了實現設計/驗證流程自動化的電子系統級工具的關鍵要素,並介紹如何組織這些要素才能使它們更好地發揮作用。

許多人已經認識到電子系統級(ESL)解決方案的必要性,它能滿足RTL以上抽象層次的設計與驗證複雜性要求。然而,究竟是什麼樣的關鍵技術和方法形成了這些ESL解決方案仍在爭論中。

本文將介紹這些內含大型、複雜系統單晶片系統(SoC)設計的產品,其成功應用的策略和經驗。討論涵蓋以下4個關鍵點進行:規範、架構設計、軟體以及再使用與知識產權。本文還會介紹正成為中心角色的功能驗證,明確可以幫助實現設計/驗證流程自動化的電子系統級工具的關鍵成功要素,並介紹如何組織這些要素才能使它們更好地發揮作用。

單晶片系統設計特點

內含複雜SoC的許多產品都具有以下一些共同特點:


* 具有通過複雜協議收發多個高速數據串流的能力。一般是基於無線(包括3G)、或有線(如USB2.0、RapidIO和乙太網路)解決方案方面的競爭性和創新標準。


* 包含擴展系統軟體。像Symbian、嵌入式Linux和Windows CE等標準作業系統在許多無線元件中已經很常見。另外,一些特殊功能應用需要大型、複雜的軟體系統。


* 音頻、靜止圖形和視頻等高解析多媒體應用已經成為元件功能中不可或缺的部份。如何編碼這些數據取決於具體的競爭性標準,如MP3和MPEG4。

這些產品的競爭優勢常常來自於更高的容量、吞吐量、影像或視頻品質和易用性,反過來這些性能又要求標準軟體和特殊產品應用軟體。對大多數元件來說,功耗也是一個重要因素。功耗與產品成本一起最終將轉換成對SoC的晶片要求。

確定SoC的規範和架構

在減小功率和矽面積的最佳化解決方案中,將高層次產品要求轉換成可以提供所需功能、性能和容量的架構是系統架構師的主要工作。

在專案的早期階段,對處理器或DSP用途、晶片上互連解決方案、介面控制器、記憶體設計等進行架構選擇,將極大地影響到晶片的成功與否。系統架構師面臨艱鉅的任務,既要權衡來自軟體和硬體的所有要求,還要決定什麼可以再使用,什麼需要從頭開發,同時還要對業務進行最佳化。即使可以利用靜態分析作出一些選擇,但由於系統太過複雜,仍需要採用基於模擬的動態技術才能完全理解那些共享的關鍵元件的性能和要求。

執行這樣的模擬需要在設計的早期階段組裝這些整合軟硬體系統的系統級模型。這些系統級模型應該能與已有的硬體和軟體模組協同工作,並允許新設計的其它高層硬體和軟體模組加入。以下舉出了不同模組的一些典型例子:

現有硬體模組* 嵌入式處理器


* DSP核心(用於音頻/視頻處理)


* 周邊IP核心(如USB、RapidIO和乙太網路)


* 晶片上匯流排(如AMBA、OCP和專用匯流排)


* 音頻/視頻編解碼器


* 無線數據機


* 音頻/視頻處理

新的硬體模組

* 處理器、DSP、安全


* 晶片上互連


* 附加功能

現有軟體模組

*高層作業系統(如Symbian、Linux和PALM-OS)


*嵌入式無線通訊軟體(如EDGE、CDMA、WCDMA、GSP、藍芽和802.11)


*嵌入式音頻和視頻


*多媒體簡訊服務


*3D遊戲用嵌入式軟體和中介軟體


*安全性軟體

新的軟體模組

*應用


*電源管理


*附加功能

能夠整合所有這些模組並有效地對軟硬體進行模擬的系統級模型被稱為虛擬原型(virtual prototypes)。它們的工作原理與硬體原型十分相似 ,但它們產生的時間比硬體原型早得多,修改方面也更靈活,在專案小組成員間複製也更經濟方便。

虛擬原型要求

虛擬原型需要在諸如重要設計目標能否達到等問題方面提供足夠準確的答案。不過,虛擬原型對最終系統的建模精度在整個設計空間無需做到統一。

一般來說,關鍵的某些功能需要加以明確,如晶片上的關鍵數據路徑、視頻解碼模組或高速介面。這些部份的設計可能需要以較高的精度建模。在許多情況下,這些關鍵元件與晶片上互連結構或處理器/DSP及相關緩衝記憶體等共享資源有關。

從軟體角度看,需要完整的虛擬原型。現有的套裝軟體必須能夠原封不動地執行。消除軟體功能以創建更簡單的包是很困難的,需要耗費可觀的時間,如果沒主動程式碼的話幾乎不可能。另外,執行實際的軟體允許已設計完成的虛擬原型能在硬體原型出來的幾個月前就分發給大型的軟體開發團隊。

儘管早提供虛擬原型的理由主要有二個。首先是縮短產品周轉期,即從開始測試到獲得結果之間的時間。對許多測試來說,虛擬原型需要進入一個通常包含作業系統啟動的重置過程,因此許多架構師要求這個‘啟動時間’只有幾分鐘。

需要高性能虛擬原型的第二大理由來自於現實世界的互連。理想情況下,如同硬體原型一樣,實際的數據串流可以與虛擬原型連接起來。然後再由系統架構師分析實際激勵的效果。

圖1:在不同的抽象層次為SoC建模。

架構師需要快速地建立這樣的虛擬原型(和變量)。在SoC專案中,這個階段應該在3到6個月時間內完成,不過顯然這要取決於特定專案的性能特性。對於可從以前的晶片設計中再使用許多成果的衍生專案,所需的時間可能要短一些,而許多新設計的專案時間就要長一些。

這個架構開發階段的成果還會在下游的設計流程中使用。它為下游的硬體開發提供參考模型,並允許平行開發嵌入式軟體。由於快速發展的軟體需要在硬體平台上獲得驗證,新的軟體也需要開發,因此後者已變得越來越重要。如果沒有平行開發,軟體開發將成為產品成功發佈的門檻。

混合級建模(Mixed-level modeling)

以上全部要求形成了工具環境下使用的動態、混合級建模技術。根據具體測試對問題作出的回答,系統架構師利用該技術就能夠很容易地對精度和速度作出權衡。在單個測試過程期間動態作出這種權衡的能力是非常有優勢,因為這樣做能夠極大地縮短啟動時間。

在這種動態、混合級建模環境中,可以根據具體的測試目的按不同的抽象層次和精度對SoC的各個部份進行建模。對某些測試來說,架構師可能希望分析某種用途下的匯流排特性,例如一個周邊元件和解碼模組之間的平行數據傳送,或者對時間敏感的從記憶體流向顯示器的視頻串流的保持。

對於其它測試來說,某種應用下的記憶體存取過程可能需要被捕獲。第一種情況下需要循環精確(或許是循環接近)的匯流排模型,第二種測試則可以使用精度稍差的模型。

在提供基礎架構以結合多個抽象層次模型方面SystemC被證明是非常有效的,它已成為架構化建模和創建硬體設計用參考模型的事實標準。同時,高性能功能性建模正越來越多地被用來創建處理器、子系統和完整晶片的純功能模型。這些模型能夠以50MHz以上的速度執行未經修改的軟體,而這樣的速度足夠提供實際產品的互連。

混合級建模的條件是在單個整合環境中必須提供上述二種建模類型。圖1所示的SoC設計建模時就採用了功能元件、循環精確的事務處理級元件和二者的混合。

在單次測試中,動態、混合級建模技術允許元件動態地從一個模型視窗切換到另一個模型視窗。這樣做可以動態地旁路掉某些元件(如匯流排作業細節),從而使測試快速定位於感興趣的地方。

混合級建模和IP

在混合級建模技術的應用中,工作於建模環境中的IP模組是非常關鍵的。每次設計新SoC的架構時都重新開始設計和驗證是不切實際的。混合級建模技術應採用具有相應的功能模組和晶片上互連的IP策略。

處理器、DSP和介面IP(例如USB或RapidIO)等IP(內核)實現的可能性很大程度上取決於構建SoC的組建模組。這些在RTL、閘或版圖級得到實現和最佳化的IP模組需要配備更抽象的模型,這樣架構師才能在開發周期的早期在各個IP模組之間作出有效地權衡。這種抽象模型由功能預覽以及可能一個以上的事務處理級介面組成。

對處理器來說這樣做已經成為慣例了;循環精確處理器模型和指令集模型一般是由處理器IP供應商提供的。這些處理器模型可以附加除錯器,並且可以執行軟體。在如今基於平台的設計方法時代,像TI公司的OMAPA平台這樣的完整子系統也都有現成的功能模型。

周邊模組以及組成SoC的其它關鍵元件的高層功能模型也需要準備好。這樣系統架構師就能快速組裝出完整的系統模型來。只有SoC的所有功能完善後,才能使完整的作業系統和應用軟體不加修改地執行於這些虛擬原型之上。

連接這些模型的互連IP也是很重要的。晶片上基礎架構是晶片上關鍵的共享資源,必須認真進行設計。匹配功能模組介面的互連IP標準介面是混合級建模技術成功的關鍵要素。能夠擷取關鍵特性、吞吐量和延時的快速、高層模型有助於對最終實現作出選擇。

混合級建模和驗證

支援架構開發的混合級建模技術在整個設計流程中有二個主要成果:用於下游RTL設計的參考模型和用於軟體開發的功能平台。隨著設計實現的開展,RTL模型也可得到。

單個統一的驗證環境對確保參考模型、軟體平台和RTL之間的功能一致性是非常重要的。該環境必須提供一個測試平台架構,以便SoC小組開發出一整套測試案例,並應用於設計的任何(混合級)描述。這套測試案例定義的回歸套件能夠作為‘黃金參考’而確保整個開發周期內不同設計抽象之間的一致性。

創建這樣一個測試平台是很有挑戰性的。首先需要有效地創建各種參數來驅動架構模型,此時需要與在設計上執行的軟體進行交互,例如某個特殊中斷產生時的控制。

測試平台必須能夠處理最終SoC的RTL模型驗證所需的訊號層細節。最終還必須能夠與實際元件協同工作。

圖2給出了一個帶測試平台的混合級模型,它能執行軟體、產生激勵和檢查響應,並與實際數據進行交互。與只關注RTL驗證的傳統方法相比,該方案支援範圍寬多得的驗證方法。

圖2:統一的測試平台可以保持硬體和軟體的同步預覽。

混合級建模和軟體開發

虛擬原型對軟體開發來說具有無可比擬的優點-模擬性能和早期可用性,這是抽象層建模的直接結果。對於執行像現代作業系統或多媒體解碼器這樣的大型軟體來說,模擬性能是很關鍵的。早期可用性對於極早地啟動軟體開發也意義重大,因為軟體開發任務通常出現在產品發佈的關鍵路徑上。

軟體開發的關鍵要求是虛擬原型要與公共軟體除錯器相接並一起工作。軟體開發人員有不同的除錯參數選擇,因此混合級驗證平台必須提供連接多個軟體除錯器的介面,而且這些介面必須能在硬體和驗證方面協同工作。

採用虛擬原型取代實際的硬體原型有許多附加的優點:1.它們非常容易升級和分發。特別是對於地理上分散的設計小組非常有益;2.由於它們的實際執行速度要比基於FPGA硬體的原型和模擬要快,因此能夠在更少的時間內做更多的事;3.由於提高了硬體和軟體的可見性,因此它們能提供更好的除錯功能。

虛擬原型有助於更早地完成軟體開發和除錯任務,並實質性地縮短整個開發周期。

混合級建模技術實踐

新思公司和Virio公司透過緊密合作成功創建了一個整合化的工具和IP環境,並最終促成了在新思統一的驗證環境中進行混合級建模和虛擬原型的開發。

作了一個例子,我們實現了LSI Logic CoreWare平台的混合級模型。該平台基於由Virtio公司的精確指令指令集模擬器(ISS)建模的ARM926EJ-S內核。所有周邊元件都是採用Virtio的功能建模技術實現的。

我們在ISS和周邊元件之間插入了ARM AHB匯流排的循環精確SystemC時序模型。對匯流排來說,ISS是主元件,所有功能性周邊模型是從元件。我們選擇只在數據匯流排上連接AHB匯流排模型,而指令匯流排仍保留在高層功能模型中。這是為了減小匯流排事務處理對整體性能影響的要求之一。

另外我們又做了一個開關,它能使我們在執行啟動作業系統等高性能任務時脫離SystemC AHB匯流排模型,在作業系統正常執行後執行特殊測試時再加入SystemC匯流排模型。為了保證功能性行為和循環精確行為之間轉換的可預測性,我們只允許這個開關在兩個模型的狀態都是已知的情況下(如匯流排空閑時)起作用。

當SystemC AHB模型脫離時,系統可以在22秒內完成Linux的啟動,當AHB模型加入時同樣的任務需要花21分鐘。所有測試都執行於2.0GHz x86 Linux機器上。我們使用的Linux映像在啟動過程中執行了4.5億條指令,對功能模型來說相當於20MIPS,對循環精確AHB時序模型來說相當於357KIPS。

即使這些性能數位還比較原始,我們的整合設計還需要進一步最佳化,但結果足以說明以前所述的性能區別。這樣的結果還表示需要更先進的混合級建模技術,特別是能用來在任何數量的軟體面前驗證硬體模型。

結論

ESL是一種技術、工具和IP,它能幫助設計師為日益複雜的通常包含多個處理器、DSP和複雜介面邏輯的SoC創建架構。

本文討論了動態的混合級建模技術,允許設計師混合使用功能模型和詳細的時序模型建立虛擬原型。透過有選擇地利用事務處理級或暫存器傳輸級(RTL)的介面擴展功能建模方法,可以幫助設計師減小對整個模擬速度的影響,並確保足夠的性能執行軟體開發任務。

這種混合級建模技術成功應用的關鍵是要確保軟體開發用的功能模型與最終的硬體(RTL)模型保持一致。利用目前使用測試平台(用來驅動模型和檢查相應行為)的驗證技術可以獲得這種一致性。

這種設計和驗證流程的推廣需要大量的IP,以允許系統架構師能在開發過程的早期執行作業系統和應用。這樣做還可以極早地分析硬體和軟體之間的相互依賴性,並透過架構的精確調整來滿足性能和功耗要求。

基於混合級建模技術的虛擬原型加上先進的驗證技術可以形成可預測的、平行的軟硬體開發流程,最終可實質性地減少目前複雜SoC的開發周期。

作者簡介

Markus Wloka是新思驗證部研發總監。Wloka於1996年加入新思,主要成果是COSSAP和System Studio系統級設計工具。先前(1991年)他曾在Motorola SPS工作,主要負責Entice標準訊號特徵化軟體的開發。該軟體的重點是分散式Spice和功率特徵化。

Guy Shaviv是Virtio公司的工程副總裁,在軟體開發和市場化方面有15多年的豐富經驗。他曾在Inteval Research、NASA Ames研究中心、SORBA公司及LAF公司任過職。

作者: Markus Wloka


新思科技驗證部研發總監


Guy Shaviv


Virtio公司工程副總裁





投票數:   加入我的最愛
我來評論 - 採用虛擬原型和混合級建模技術縮短SoC...
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首