<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 運用智能的調(diào)試和綜合技術(shù)隔離FPGA設(shè)計中的錯誤

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

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

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

          本文引用地址:http://www.ex-cimer.com/article/189548.htm

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

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

          精確找到開發(fā)板上的問題

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

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

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

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

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

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

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

          時序和功能性錯誤的可視檢查

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

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

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

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

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

          大型設(shè)計的調(diào)試

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

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

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

          我的設(shè)計無法綜合

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

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

          在Synplify Premier 軟件中啟用門控時鐘選項:

          – 選擇Project->Implementation Options

          – 在GCC Prototyping Tools 標(biāo)簽中點擊Clock Conversion checkbox

          或在TCL中使用以下命令

          set_option -fix_gated_and_generated_ clocks 1

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


          上一頁 1 2 3 下一頁

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

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();