《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > 基于FPGA的SoC驗證平臺實現(xiàn)電路仿真?zhèn)慑e

基于FPGA的SoC驗證平臺實現(xiàn)電路仿真?zhèn)慑e

2011-09-13
關(guān)鍵詞: FPGA SOC 電路仿真?zhèn)慑e

臺灣工業(yè)技術(shù)研究院提出一種能夠顯著提升客制化FPGA原型板驗證效率的創(chuàng)新方法,自動化現(xiàn)有的電路仿真(in-circuit emulation)偵錯功能,,并提供更高的FPGA能見度,。這個以FPGA為基礎(chǔ)的SoC驗證平臺對工研院而言是前景看好的嶄新領(lǐng)域,。

  案例研究:高效能的多媒體SoC平臺

  這款SoC設(shè)計是高效能的Android兼容多媒體SoC平臺,。配置了AXI,、AHB與APB總線,,供通訊使用;由工研院(PACDSPs,、EMDMA 與 DDR2控制器)設(shè)計的高效能客制化IP組件連結(jié)至AXI 總線,加速H.264視訊編譯碼器(video codec)等多媒體應(yīng)用軟件的執(zhí)行,。包括ARM,、SDRAM、DMA,、SRAM,、Ethernet與LCD在內(nèi)的標(biāo)準(zhǔn)IP組件連結(jié)至AHB總線,適合于一般應(yīng)用,。最后,,UART、Timer,、I2S,、I2C與Watchdog等低頻率的IP區(qū)塊(block)則連結(jié)至APB總線,。

  

 

  下列案例研究說明了工研院與思源科技工程師如何合作,,使用思源科技ProtoLink Probe Visualizer,克服工研院SoC設(shè)計中出現(xiàn)的驗證挑戰(zhàn),。這個與音效功能相關(guān)的問題是:在 FPGA原型板未激活OS的狀況下,,功能正常運作 (可錄音與播放);但如果在原型板上啟用Linux,功能就無法正常運作,。在FPGA原型環(huán)境中,,要使用傳統(tǒng)的偵錯方法排除這類問題是相當(dāng)困難的。FPGA的能見度僅局限在少數(shù)的訊號與時脈周期內(nèi),無法提供足夠的信息找出錯誤所在,。而因為激活OS(例如 Linux)耗費的時間相當(dāng)長,,想透過緩存器轉(zhuǎn)換階層(RTL) 仿真來解決問題也行不通。由于問題的成因可能在于軟件,、硬件或驅(qū)動程序,,因此要確實找出問題的根本原因是一項考驗。

  與眾不同的作法

  要簡化偵錯作業(yè),,就需要更高效率的驗證方法,。ProtoLink Probe Visualizer是新的原型驗證環(huán)境,采用以軟件為基礎(chǔ)的方法,,可以從RTL設(shè)計階段開始到最終的設(shè)計實現(xiàn)階段,,都提供高水平的設(shè)計能見度,可全面加速偵錯作業(yè)的進行,。

  工研院起初擔(dān)心其客制化原型板可能無法符合思源科技ProtoLink Probe Visualizer的接口需求,,而思源科技工程師在進行幾項快速測試之后,證明工研院客制化原型板上的標(biāo)準(zhǔn) J連接器可順利地與執(zhí)行Probe Visualizer軟件的工作站連結(jié),。只需在原型板上新增鎖相回路(PLL),,提供所需的取樣時脈(sampling clock)即可。FPGA的設(shè)置流程相當(dāng)簡單,,可輕松整合至現(xiàn)有的程序(script) 中,,自動選取大約100個探測訊號(probed signal),就能見度來說,,已比過去的方法提升6倍之多,。此外,所有的探測資料都可儲存在外接的2GB探測訊號內(nèi)存中而不占用FPGA資源,,真正額外需要的探測邏輯(probe logic)也僅占用FPGA的2%,,可說相當(dāng)?shù)纳佟M饨觾?nèi)存的資料容量可儲存充足長度的時脈周期,,讓工程師能夠確實掌握軟件,、硬件與驅(qū)動程序間的關(guān)系。

  工研院團隊透過思源科技Verdi自動偵錯系統(tǒng)的進階觀察,、追蹤與分析功能,,來使用儲存的探測資料進行偵錯作業(yè)。在經(jīng)過多次重復(fù)偵錯之后,,發(fā)現(xiàn)了兩個問題:1) USB中斷 (USB interrupt)長時間鎖住ARM,,因此I2S內(nèi)的FIFO是空的,因而造成問題; 2)定時中斷(Timer interrupt)的優(yōu)先級高于DMA中斷,,因此再一次造成I2S內(nèi)的FIFO是空的,。工研院工程師使用思源科技軟件的偵錯功能,,進一步分析設(shè)計行為,僅管表現(xiàn)出來是共通的錯誤征兆,,工程師還是能夠迅速發(fā)現(xiàn)這些錯誤的根本成因是源于兩種不同的情況,。

  

 

  此外,觀察額外的關(guān)鍵訊號是偵錯時必需的,,但這些訊號多半不在原始探測清單中,。工研院工程師透過Probe Visualizer迅速的探測ECO流程,在10分鐘內(nèi)就可新增10個新訊號,,而且不用重新編譯整個設(shè)計,。相對傳統(tǒng)的偵錯方法需要在RTL拖曳新訊號,并且針對這個特定的設(shè)計重新執(zhí)行合成(synthesis )以及布局與繞線作業(yè),,約需花上2至3個小時,,因此這方面的革新省下了大量的時間。

  工程師能夠輕松地將所需額外的RTL探測訊號由Verdi偵錯環(huán)境拖曳至ProbeVisualizer,。這套系統(tǒng)會自動建立RTL至邏輯閘層(RTL-to-gate level)的訊號對應(yīng)關(guān)系,所以可直接在 FPGA 布局與繞線檔案上迅速執(zhí)行部份繞線作業(yè)來看到新增的探測訊號,,大幅縮短偵錯作業(yè)時間,所以能在短時間內(nèi)處理多重偵錯工作階段 (debug session),。而對設(shè)計中使用的“黑盒子”IP區(qū)塊,,也只需EDIF名稱,就可以進行探測ECO流程,。評估結(jié)果

 

  工研院工程師在修正問題并成功試產(chǎn)設(shè)計之后,,檢討了項目實際耗費的時間,并評估了這個新的FPGA SoC原型驗證方法的成果,。

  進行RTL設(shè)計,、仿真、通訊協(xié)議驗證與FPGA設(shè)計實現(xiàn)的時間約為2個月,。在驅(qū)動程序移植(driver porting )上所花費的時間則短了許多,,大約只有2個星期。工程師隨后又花了2個月的時間進行驗證作業(yè),,試圖透過硬件邏輯分析器檢查 FPGA 內(nèi)部訊號解決音效問題,,同時也在音效驅(qū)動程序中增加觀察點,以連結(jié)并企圖找出問題,。這種傳統(tǒng)的FPGA偵錯方法,,需要的時間和設(shè)計研發(fā)的時間一樣長,然而對工研院團隊而言,,相當(dāng)令人沮喪的是結(jié)果仍然一無所獲,。不過,,在經(jīng)過思源科技提供的應(yīng)用軟件教育訓(xùn)練/支持課程及一星期的實作經(jīng)驗后,,工研院工程師使用ProtoLink Probe Visualizer,,在短短一星期的時間內(nèi)就厘清了兩大問題!

  對工研院而言,ProtoLink Probe Visualizer是一種相當(dāng)有效的FPGA原型板偵錯方法,。工程師再也不必局限在傳統(tǒng)的偵錯方法,,而且在實時應(yīng)用軟件中增加觀察點也可能會造成其它問題。透過維持原有軟件并監(jiān)測更多FPGA訊號在數(shù)百萬時脈周期內(nèi)的實時RTL行為,,使用者可以獲得所需的能見度,,更完美的掌握、更輕松地偵錯設(shè)計的問題,。

  

 

  總合來說,,思源科技Probe Visualizer透過以軟件為基礎(chǔ)的創(chuàng)新方法,改變了原型板驗證的方法,,實現(xiàn)豐富,、實時的設(shè)計能見度,并且讓原型板能使用Verdi的偵錯威力,,使原型板偵錯時間比傳統(tǒng)的方法大幅縮短一半,。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。