<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的SoC驗證平臺實(shí)現電路仿真偵錯

基于FPGA的SoC驗證平臺實(shí)現電路仿真偵錯

作者: 時(shí)間:2011-09-13 來(lái)源:網(wǎng)絡(luò ) 收藏

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

本文引用地址:http://dyxdggzs.com/article/150219.htm

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

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

  

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

  與眾不同的作法

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

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

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

  

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

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

DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY



上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>