在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > EDA/PCB > 設計應用 > 如何快速解決隔離FPGA設計中的錯誤

      如何快速解決隔離FPGA設計中的錯誤

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

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

      本文引用地址:http://www.biyoush.com/article/189506.htm

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

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

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

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

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

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

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

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

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

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

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

      如何快速解決隔離FPGA設計中的錯誤

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

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

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

      大型設計的調試

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

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

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

      我的設計無法綜合

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

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

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

      –選擇Project->Implementation Options

      –在GCC Prototyping Tools標簽中點擊Clock Conversion checkbox

      或在TCL中使用以下命令

      set_option -fix_gated_and_generated_ clocks 1

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

      “完整”的系列時鐘約束包括在所有正確位置定義時鐘并在生成的時鐘之間定義關系。有時候,時鐘會出于某種原因與真正的源斷開關聯(lián),例如時鐘源和時鐘目標端間產生了黑盒,這樣會造成順序組件的時鐘缺失或時鐘約束放置錯誤,導致首次時鐘轉換因為缺少時鐘約束而失敗。在許多情況下,轉換失敗是由約束不完整造成的。舉例來說,門控邏輯中可能存在一個組合回路,應在時鐘轉換之前利用異常處理約束將其打破。綜合編譯階段之后會提供一個門控時鐘報告,告訴您有哪些門控和生成時鐘已被轉換以及被轉換時鐘的名稱、類型、分組和相關約束。另一個時鐘列表則顯示的是未轉換的時鐘,并包含故障信息,用于說明原因。圖2給出了報告實例。

      舉例來說,如果設計中有黑盒子,您可以在RTL中指定具體的軟件命令,用于為自動化門控時鐘轉換提供輔助。比方說,采用syn_gatedclk_clock_en指令在黑盒子中指定啟用引腳的名稱,用syn_gatedclk_clock_en_polarity指令指出黑盒子上時鐘使能端口的極性。每個轉換實例和驅動實例的時鐘引腳都被賦予一個可搜索的屬性,從而能在設計數(shù)據(jù)庫中識別,并提取到定制TLC/Find腳本生成報告中。


      上一頁 1 2 3 下一頁

      關鍵詞: FPGA 隔離

      評論


      相關推薦

      技術專區(qū)

      關閉