新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 通過高級C模型驗證管理設計的復雜性

通過高級C模型驗證管理設計的復雜性

作者:■ Mentor Graphics公司 SoC 驗證部 Mike Andrews 時間:2005-04-27 來源:eaw 收藏

設計復雜性的增加,以及產(chǎn)品生命周期的縮短和競爭態(tài)勢的加強,將嵌入式設計技術不斷推向極限。復雜設計包含更多器件以及更強的互操作性,因此需要更多仿真、更高吞吐量以及更好的綜合測試。為解決復雜性問題,在設計過程中,設計團隊需要另外一套方法,以減少系統(tǒng)驗證運行時間,及早進行驗證。一種策略是通過C或HDL編寫的高級行為模型來提高建模抽象的級別。

本文引用地址:http://butianyuan.cn/article/5366.htm

用抽象的C模型方法,建立的結(jié)構(gòu)化開發(fā)
在系統(tǒng)抽象的較高級,結(jié)構(gòu)化決策很少需要考慮細節(jié)。因此,抽象的C模型很少需要詳細的功能性。這些高級C模型可以快速建立,并比傳統(tǒng)的RTL模型仿真更快。原來用RTL花費數(shù)月時間編寫的模型用高級C模型建立只需要幾周。
高級模型的速度和相對簡單性允許工程師在設計過程的早期階段就可以進行更全面的驗證。設計流程的更改在該階段不僅可以及早實施,降低成本,而且早些完成這些工作能降低風險、提高設計產(chǎn)出、增強設計性能的可靠性。早期驗證和分析還減少了工程師必須用在調(diào)試復雜問題的時間。
一種動態(tài)參數(shù)化的C模型環(huán)境使在仿真期間可以修改設計特性,進一步突出了早期驗證的優(yōu)點。仿真運行不需要編輯、重編譯、重連接和重載模型。例如,利用這一性能特點,用戶可以根據(jù)算法第一次通過的結(jié)果,進行設計修改的仿真。重復這樣做,仿真會自動收斂于一特定的設計要求。
利用高速仿真的優(yōu)點、簡化的模型建立及動態(tài)參數(shù)化,可以使設計者研究各種設計選擇,驗證功能性,在設計過程中及早優(yōu)化系統(tǒng)性能。高級系統(tǒng)模型的建立也可同時由硬件和軟件團隊使用。例如,硬件工程師可以在早期向軟件組提供硬件觀點的確切表達。這樣,從整體效果上增加了協(xié)同驗證的機會,并減少了驗證運行時間。
 由于高級C模型的效率,工程師可以用更多的時間改進其設計。功能性、性能和設計差異性會大大增強優(yōu)化體系結(jié)構(gòu)的潛力。抽象化C模型允許工程師在設計流程中早些決定哪些產(chǎn)品創(chuàng)意值得追求,哪些不值得。
由于在高級抽象對行為進行了可行性測試,因而很少會發(fā)生錯誤,公司可以避免在不可行項目中投入大量的金錢、時間和精力。系統(tǒng)設計者甚至可以在現(xiàn)有設計進行的同時研究未來設計的可能性。例如,路由器總線和存儲架構(gòu)的優(yōu)化。一旦高層體系結(jié)構(gòu)建立,作為基準,工程師可以開始功能塊集成測試。利用這種抽象觀點,除作為獨立單元測試外,一個或多個RTL塊可以在整個系統(tǒng)中關聯(lián)驗證。這樣可以使多功能塊的集成測試更快。

利用“無縫C橋”優(yōu)化總線判決
“無縫C橋”協(xié)同驗證環(huán)境是實現(xiàn)這種快速抽象建模的一種工具。另外,“無縫V5”版本包含一新的性能分析特性。通過精確的記錄與顯示信息,如總線利用與判決延遲、代碼描述、存儲器用法等,工程師可以很好地了解設計的性能特性。結(jié)合基于C硬件建模的動態(tài)參數(shù)更改能力,性能分析使設計研究明顯地更具效率。
“無縫V5”提供了設計變更效果的即時反饋,得到了一個實用的、有競爭力的優(yōu)點,設計組可以確定性能要求和滿足要求的數(shù)據(jù)。
“無縫C橋”接口增加了無縫環(huán)境的靈活性,可以利用比基于RTL工具更高級的抽象模型和接口,在設計工作的早期進行協(xié)同驗證?!盁o縫”可以使嵌入式代碼以中的硬件方式運行;“C橋”允許硬件通過事務級連接成為抽象的C模型。“無縫”協(xié)同驗證環(huán)境處理器支持包(PSP)可由ARM處理器系列,包括ARM7,ARM9,ARM10及ARM 11系列處理器提供。這些模型可直接插入設計環(huán)境,不需要重建接口及環(huán)境。
“C橋”技術可以混合和匹配編寫于不同抽象級的C和HDL模型。由于它們從嚴格運行的抽象C模型轉(zhuǎn)移到更詳細的實現(xiàn)中,工程師們可以用簡單取代RTL的特定C模型運行系統(tǒng)仿真。這允許在單一環(huán)境內(nèi),從高級C建模環(huán)境到更詳細的RTL實現(xiàn)進行逐步轉(zhuǎn)換。隨著轉(zhuǎn)換增加,測試版可保存復用。圖1為用閃存卡作圖像存儲器的簡單圖像顯示器的框圖。
該設計全部用C語言建模,其處理器采用系統(tǒng)C測試版建模,其他所有塊作為C橋事務級模型編寫。對于這樣一個簡單設計,所有C模型幾周之內(nèi)就可建立完成,而如果用純粹的RTL設計編寫,將會用數(shù)月時間才能完成。除通過降低模型復雜度節(jié)省了時間外,在C橋設計中,地址解碼及總線協(xié)議處理等工作也得以簡化甚至消除。
用戶接口控制存儲在閃存中的各種圖像的打印。直接存儲器存取控制器(DMAC)對移出CF卡和進入RAM的數(shù)據(jù)進行管理。當圖像需要顯示時,DMAC程序啟動,將圖像數(shù)據(jù)傳到RAM中,一旦DMAC處理開始,ARM嵌入式代碼就訪問RAM,取出圖像數(shù)據(jù)。將數(shù)據(jù)處理、打包成圖像閱讀器能識別的格式后,ARM微處理器發(fā)送像素顏色和坐標數(shù)據(jù)到閱讀器屏幕。
這個簡單模型仿真的最初用途是查看在附加定時信息,如加入等待狀態(tài)后,系統(tǒng)的功能是否還正常。“無縫C橋”工具的調(diào)試與分析能力用于驗證功能,以及用于為達到優(yōu)化功能設計的設計參數(shù)試驗,特別是改善此情況下的總線判決方案。該例中,“無縫”工具發(fā)現(xiàn)設計不能正確實現(xiàn)功能,因為只有圖像的第一行打印正確?!盁o縫V5”總線負載圖揭示了問題出在DMAC傳輸上(見圖2)。
圖2顯示DMAC占用總線時間超過75%(圖2中,DMAC是“其他”),因此圖形顯示程序已經(jīng)優(yōu)化,使每次總線存取時裝載盡可能多的數(shù)據(jù)。這表示總線判決方案不允許DMAC控制器足夠快地從閃存中取出圖像數(shù)據(jù)送到S-RAM中、放在圖像顯示程序前。當此發(fā)生時,就會形成局部圖像。DMAC需要保證總線有足夠多的周期?!盁o縫C橋”應用可以用于解決動態(tài)改善總線判決方案問題。
采用具有擴展控制功能的工具與抽象模型一起工作,可以更容易、高效地研究各種可能性和設想。由于采用C橋模型,有些特性可以通過發(fā)指令到判決器模型使其動態(tài)改變。在抽象建模級實施,可以極大簡化,不需要進入RTL設計中,給很多管腳賦特殊值,工程師簡單發(fā)個指令讓高速判決器按不同方式動作即可。通過改變判決器的參數(shù),DMAC在ARM926接回總線控制之前允許保持總線最小周期數(shù)。該值在1~16間可變。最保險的做法是將初始值設在最大值16,看是否可以解決顯示問題。即使能夠解決,由于DMAC占用了太多總線,也會引起圖像顯示刷新太慢的問題。
在這種抽象級,基于“無縫V5”(見圖3)性能分析能力中提到的,用戶可以用其他值快速試驗。在判決延遲方面,0~10ms期間代表顯示圖像的初始試驗。沒有看到判決延遲影響CPU,圖像也沒有正確顯示。下一期間從10~20ms,顯示了最大值用于判決器參數(shù)時的圖像顯示過程??梢钥吹揭粋€大的判決延遲峰值引起圖像運算明顯減慢。最后一段,20~30ms之間,顯示參數(shù)降到4的情況,引起判決延時成比例降低,圖像也類似減慢。這些效果的視覺顯示,可以得到某一特定設計選擇結(jié)果的即時反饋,而不需要掃描一個長文本的輸出文件。
由于這一過程的速度,其他值可以逐一試驗,以得到最適合的總線判決方案。所有這些都可以實現(xiàn),因為驗證改善優(yōu)化是動態(tài)實現(xiàn)的,在同一環(huán)境中,以高吞吐量運行。原來在RTL方式下花費數(shù)小時的一個進程,不包括改進和再匯編時間,現(xiàn)在仿真一次只需要5到10分鐘。

結(jié)語
通過C建模提高抽象級,是解決嵌入式系統(tǒng)設計復雜性增加問題的一種新型設計方法,“無縫C橋”技術使設計者在設計過程早期實現(xiàn)高仿真速度驗證功能和分析系統(tǒng)性能??焖佟⒊橄蠼:汀盁o縫”性能分析引擎減少了總體校驗時間,同時,有利于創(chuàng)造最佳設計?!盁o縫”協(xié)同驗證環(huán)境也使塊級和系統(tǒng)級的綜合測試提前??傊@一方法降低了風險,增加了設計產(chǎn)出量,提高了復雜的多成分系統(tǒng)的設計可靠性。由于明導公司和ARM的成功合作,“無縫C橋”方案特別適用于包含ARM微處理器核的設計。■ (李硯泉譯)



評論


相關推薦

技術專區(qū)

關閉