<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è) > EDA/PCB > 設計應用 > 運用智能的調試和綜合技術(shù)隔離FPGA設計中的錯誤

運用智能的調試和綜合技術(shù)隔離FPGA設計中的錯誤

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

如果您的設計無(wú)法綜合或者沒(méi)能按預期在開(kāi)發(fā)板上正常工作,原因往往不明,要想在數以千計的RTL和約束源文件中找出故障根源相當困難,而且很多這些文件還可能是其他設計人員編寫(xiě)的??紤]到設計迭代和運行時(shí)間的延長(cháng),設計人員應該在設計流程的早期階段就找出可能存在的諸多錯誤,并想方設法重點(diǎn)對設計在開(kāi)發(fā)板上進(jìn)行驗證。

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

在特定條件下采用更智能的技術(shù)來(lái)特定錯誤,找到問(wèn)題電路的源頭并漸進(jìn)式修復錯誤,這很重要。為了節省時(shí)間,您可以對時(shí)鐘、約束和模塊級接口進(jìn)行初步設置檢查以確保符合設計規范,這樣就不必在綜合與布局布線(xiàn)(PR)時(shí)浪費大量時(shí)間。

Synopsys公司的Synplify Premier 和Synplify Pro 設計工具以及Identify RTLDebugger 等產(chǎn)品能幫助設計人員完成上述工作。這些工具的特性使得設計人員能快速錯誤,有效縮短運行時(shí)間,并減少開(kāi)發(fā)板啟動(dòng)所需的迭代次數。

精確找到開(kāi)發(fā)板上的問(wèn)題

如果開(kāi)發(fā)板出現明顯的功能性錯誤,要縮小查找問(wèn)題根源的范圍可能會(huì )相當困難。為了進(jìn)行設計,我們應當創(chuàng )建附加電路并保留某些節點(diǎn),以便我們對設計運行時(shí)得到的數據進(jìn)行探測、檢查和分析。下面我們就看看如何用板級軟件來(lái)查找錯誤。

按下列四步法并利用RTL器,您能精確查找問(wèn)題,并對信號和關(guān)注的條件采樣,然后將觀(guān)察結果關(guān)聯(lián)至原始RTL,從而將問(wèn)題鎖定在RTL規范或約束設置范圍內。

第一步:指定探測。在RTL中明確要監控哪些信號和條件。在此要聲明您所感興趣的觀(guān)察點(diǎn)(要觀(guān)察的信號或節點(diǎn))和斷點(diǎn)(RTL控制流程聲明,如IF、THEN 和CASE 等)。

第二步:通過(guò)探測構建設計。利用附加的監控電路——即用于根據您的監控要求捕捉并導出調試數據的智能內部電路仿真器(IICE)——對FPGA設計進(jìn)行綜合。

第三步:分析和調試。設計綜合完成之后,運行設計并用RTL調試器觀(guān)察數據。在開(kāi)發(fā)板上運行測試時(shí),觀(guān)察點(diǎn)和斷點(diǎn)共同觸發(fā)數據采樣,使您能在您所關(guān)注的非常明確的條件下觀(guān)察并調試特定節點(diǎn)的電路的行為。您可將觀(guān)察到的采

樣數據寫(xiě)入VCD 文件并將其關(guān)聯(lián)到RTL。

第四步:漸進(jìn)性修復錯誤(incrementaLfix)。一旦找到了錯誤所在,就可以通過(guò)分級、漸進(jìn)式流程在RTL或約束中漸進(jìn)地進(jìn)行修復。

時(shí)序和功能性錯誤的可視檢查

FPGA設計和調試工具還有一大優(yōu)點(diǎn),就是能顯示RTL和網(wǎng)表級原理圖。舉例來(lái)說(shuō),具有互動(dòng)調試功能的原理圖查看器能夠顯示設計的RTL和網(wǎng)表原理圖,便于您進(jìn)行觀(guān)察并將時(shí)序報告和VCD 數據(設計在開(kāi)發(fā)板上運行時(shí)產(chǎn)生)關(guān)聯(lián)至RTL源文件。查看器包含一個(gè)RTL視圖,用來(lái)以圖示的方式描述設計。該視圖在綜合RTL編譯階段后提供,由技術(shù)獨立的加法器、寄存器、大型多路選擇器和狀態(tài)機等組件構成。通過(guò)RTL原理圖,您可以交叉探測原始RTL,對不符合預定規范的設計進(jìn)行調整,同時(shí)也可以探測到約束編輯器,從而更簡(jiǎn)便地更新和指定約束(圖1)。

用智能的調試與綜合技術(shù)隔離FPGA設計中的錯誤

要將錯誤操作的源頭追溯到RTL,您可以利用RTL調試器在RTL原理圖上方實(shí)時(shí)插入觀(guān)察到的操作數據。

原理圖查看器包括一個(gè)網(wǎng)表級技術(shù)視圖,用于顯示綜合后的實(shí)際設計實(shí)現情況。在HDLAnalyst 原理圖查看器中,該視圖基于查找表、寄存器和DSP slice 等基本的賽靈思器件原語(yǔ)。您可在原理圖中對路徑進(jìn)行交叉探測,追溯到原始的RTL以及綜合后和布局布線(xiàn)后的最終時(shí)序報告,以便分析和提高整體性能。

在FPGA中原型設計的ASIC 門(mén)控時(shí)鐘結構并非FPGA實(shí)現中的必要環(huán)節,這會(huì )導致FPGA資源使用效率低下。解決該問(wèn)題的有效辦法就是用FPGA綜合軟件轉換時(shí)鐘。

大型設計的調試

在大型設計中探測所有信號是不可能,因為生成的數據量極為龐大,而且探測數據所需的額外調試邏輯也太大。片上調試方法的一個(gè)常見(jiàn)弊病是難以提前預測需要對哪些信號進(jìn)行探測和監控。

一些調試軟件通過(guò)分治法能夠在一定程度上解決這個(gè)問(wèn)題。利用多路復用的采樣組,設計人員可以有選擇性地進(jìn)行采樣并通過(guò)多路復用的路徑和共享的IICE 在信號組之間切換。這種方法增加了可觀(guān)察的信號和條件,而且不會(huì )增加數據存儲要求。您可以即時(shí)切換感興趣的信號組,不必花時(shí)間進(jìn)行重新調整或重新綜合新的設計。

不幸的是,在探測和采樣數據時(shí)用使的調試IICE 邏輯會(huì )占用包括存儲器BRAM 在內的芯片資源。您可在SRAM 存儲卡中對IICE 采樣數據進(jìn)行片外存儲,以減少片上BRAM 的使用。這種方法的另一個(gè)好處是能增加采樣數據的深度。

我的設計無(wú)法綜合

設計錯誤的出現可能導致無(wú)法實(shí)現有效綜合或布局布線(xiàn)。由于存在成千上萬(wàn)的RTL和約束源文件,因此可能需要幾個(gè)星期才能完成首次綜合與布局布線(xiàn)。進(jìn)行FPGA原型設計時(shí),應讓ASIC 設計源文件處于“FPGA就緒”狀態(tài)。舉例來(lái)說(shuō),就是要進(jìn)行門(mén)時(shí)鐘轉換。

在FPGA中原型設計的ASIC門(mén)控時(shí)鐘結構并非FPGA實(shí)現中的必要環(huán)節,這會(huì )導致FPGA資源使用效率低下。解決該問(wèn)題的有效辦法就是用FPGA綜合軟件轉換時(shí)鐘。例如,門(mén)控或生成時(shí)鐘轉換功能可將生成時(shí)鐘和門(mén)控時(shí)鐘邏輯從順序組件的時(shí)鐘引腳轉移到使能引腳,這樣您就能將順序組件直接綁定到源時(shí)鐘,消除偏移問(wèn)題,并減少設計中所需的時(shí)鐘源數量,進(jìn)而節約資源。

在Synplify Premier 軟件中啟用門(mén)控時(shí)鐘選項:

– 選擇Project->Implementation Options

– 在GCC Prototyping Tools 標簽中點(diǎn)擊Clock Conversion checkbox

或在TCL中使用以下命令

set_option -fix_gated_and_generated_ clocks 1

在Synplify Pro/Premier 中執行門(mén)控和生成時(shí)鐘轉換,而set_option -conv_mux_xor_gated_clocks 1則針對基于Synopsys HAPS 的設計在Synplify Premier 時(shí)鐘樹(shù)的多路選擇器或OR 門(mén)上執行門(mén)控時(shí)鐘轉換。


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

關(guān)鍵詞: FPGA 調試 隔離

評論


相關(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>