0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SignalTapII ELA調(diào)試工具實(shí)現(xiàn)對(duì)FPGA設(shè)計(jì)缺陷的實(shí)時(shí)分析和修正

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-01-08 08:29 ? 次閱讀

在設(shè)計(jì)基于FPGA電子系統(tǒng)時(shí),一般需要用示波器、邏輯分析儀等外部測(cè)試設(shè)備進(jìn)行輸入輸出信號(hào)的測(cè)試,借助測(cè)試探頭把信號(hào)送到測(cè)試設(shè)備上進(jìn)行觀察分析。當(dāng)然,前提是需要保留足夠多的引腳,以便能選擇信號(hào)來驅(qū)動(dòng)I/O進(jìn)行測(cè)試。但是外部的測(cè)試設(shè)備在測(cè)試FPGA系統(tǒng)時(shí),常會(huì)遇到這樣的情況:FPGA的I/O引腳數(shù)量不夠豐富,PCB布線和封裝丁藝復(fù)雜導(dǎo)致I/O引腳引出困難,外部測(cè)試探頭有影響FPGA信號(hào)時(shí)序和完整性的可能。

如果能在FPGA內(nèi)部嵌入具有外部測(cè)試設(shè)備功能的邏輯測(cè)試模塊,那么以上問題就可以一一解決。SignalTapII就是這樣一種嵌入式邏輯分析器(embedded logicanaIyzer),簡(jiǎn)稱為SignalTapII ELA。它是QuartusII軟件中集成的內(nèi)部邏輯分析軟件,使用它可以實(shí)時(shí)觀察內(nèi)部信號(hào)波形,方便用戶查找設(shè)計(jì)的缺陷。

1 SignalTapII ELA的原理

SignalTapII ELA是Quartus軟件中第二代系統(tǒng)級(jí)調(diào)試工具。將SignalTapII ELA代碼和系統(tǒng)邏輯代碼組合交由QuartusII編譯、綜合、布局布線,生成sol文件中內(nèi)含SignalTapII ELA,把sof文件配置到FPGA內(nèi)。FPGA運(yùn)行時(shí),一旦滿足待測(cè)信號(hào)的觸發(fā)條件,SignalTapII ELA就立即啟動(dòng),按照采樣時(shí)鐘的頻率捕獲待測(cè)信號(hào)數(shù)據(jù)并暫存于FPGA片內(nèi)的RAM中,采樣數(shù)據(jù)不斷刷新片內(nèi)存儲(chǔ)器,最后通過JTAG口將捕獲的信號(hào)從片內(nèi)RAM傳至Quartus II實(shí)時(shí)顯示。SignalTapII ELA的原理流程如圖1所示。

SignalTapII ELA調(diào)試工具實(shí)現(xiàn)對(duì)FPGA設(shè)計(jì)缺陷的實(shí)時(shí)分析和修正

實(shí)際工程中,加入SignalTapII ELA不會(huì)影響系統(tǒng)原有的邏輯功能。

2 SignalTapII ELA的配置

SignalTapII ELA基本配置過程如下:

①添加采樣時(shí)鐘。SignalTaplI ELA在時(shí)鐘的上升沿進(jìn)行采樣,可以使用設(shè)計(jì)系統(tǒng)中的任何信號(hào)作為采樣時(shí)鐘,根據(jù)Altera公司的建議最好使用同步系統(tǒng)全局時(shí)鐘作為采樣時(shí)鐘。但是在實(shí)際應(yīng)用中,多數(shù)使用獨(dú)立的采樣時(shí)鐘,這樣能采樣到被測(cè)系統(tǒng)中的慢速信號(hào),或與工作時(shí)鐘相關(guān)的信號(hào)。當(dāng)然采樣時(shí)鐘的頻率要大于被測(cè)信號(hào)的最高頻率,否則被測(cè)信號(hào)波形會(huì)有較大誤差。

②定義采樣深度。采樣深度決定了待測(cè)信號(hào)采樣存儲(chǔ)的大小,而可以采樣的深度是根據(jù)設(shè)計(jì)中剩余的RAM塊容量和待測(cè)信號(hào)的個(gè)數(shù)決定的。若待測(cè)信號(hào)較多,則在同樣I/O Bank個(gè)數(shù)情況下采樣深度較淺。待測(cè)信號(hào)個(gè)數(shù)的增減和采樣深度的深淺會(huì)直接改變RAM塊的占用情況,采樣深度的范圍為0~128 KB。

③定義RAM類型。設(shè)置占用片內(nèi)何種RAM塊資源,隨著采樣深度的改變,RAM塊的數(shù)據(jù)線和地址線寬度可以分割成多種組合。例如:采樣深度是1 KB,RAM數(shù)據(jù)線、地址線可以分割成2×512或4×256等多種組合。依此類推。

④定義觸發(fā)位置。Pre trigger position表示采樣到的數(shù)據(jù)12%為觸發(fā)前,88%為觸發(fā)后;Center trigger position表示采樣的數(shù)據(jù)處于觸發(fā)前后各一半;Post trigger position表示采樣到的數(shù)據(jù)88%為觸發(fā)前,12%為觸發(fā)后。

SignalTapII ELA調(diào)試工具實(shí)現(xiàn)對(duì)FPGA設(shè)計(jì)缺陷的實(shí)時(shí)分析和修正

⑤觸發(fā)條件級(jí)數(shù)設(shè)置。SignalTapII ELA支持多觸發(fā)級(jí)的觸發(fā)方式,最多可支持10級(jí)觸發(fā),幫助濾除不相干的數(shù)據(jù),更快地找到需要的數(shù)據(jù)。若有多級(jí)觸發(fā)條件,首先分析第一級(jí)觸發(fā)條件。若第一級(jí)為TRUE,則轉(zhuǎn)到分析第二級(jí)是否滿足,直到分析完所有觸發(fā)條件均為TRUE才最終觸發(fā)時(shí)鐘采樣數(shù)據(jù)。

⑥觸發(fā)條件。設(shè)定約束性的觸發(fā)條件??梢栽试S單個(gè)信號(hào)的獨(dú)立觸發(fā)條件Basic,直接采用單個(gè)外部或設(shè)計(jì)模塊內(nèi)部的信號(hào);也可以允許多個(gè)節(jié)點(diǎn)信號(hào)的組合觸發(fā)條件Advanced,構(gòu)成觸發(fā)函數(shù)的觸發(fā)條件方程。例如:使能信號(hào)ENA與4位輸出信號(hào)Q相與后觸發(fā),觸發(fā)條件=ENA&(Q=15)。

⑦添加待測(cè)信號(hào)??梢允褂肗ode Finder中的SignalTapII ELA Filter查找所有預(yù)綜合和布局布線后的SignalTapII ELA節(jié)點(diǎn),添加待測(cè)的中間信號(hào)和端口信號(hào)。SignalTapII ELA不可測(cè)試的信號(hào)包括:邏輯單元的進(jìn)位信號(hào)、PLL的時(shí)鐘輸出、JTAG引腳信號(hào)、LVDS(低壓差分)信號(hào)等。

SignalTapII ELA調(diào)試工具實(shí)現(xiàn)對(duì)FPGA設(shè)計(jì)缺陷的實(shí)時(shí)分析和修正

完成STP配置,將sof文件配置到FPGA,運(yùn)行SignalTapII ELA,當(dāng)待測(cè)信號(hào)條件滿足時(shí),數(shù)據(jù)捕獲開始,捕獲的數(shù)據(jù)以波形的形式表示出來。SignalTapII ELA也可將捕獲數(shù)據(jù)通過多余的I/O引腳輸出,以供外部的測(cè)試設(shè)備使用。

3 實(shí)例分析

本文以一個(gè)基于DDR SDRAM高速數(shù)據(jù)采集IP核的設(shè)計(jì)為例,具體說明如何用SignalTapII ELA來進(jìn)行FPGA在線調(diào)試。使用Altera公司的器件CyclonelI系列FPGA EP2C5F256C6,該器件支持SignalTap II ELA。

當(dāng)前需要測(cè)試來自3個(gè)模塊的信號(hào):外部存儲(chǔ)器DDR SDRAM與FPGA的接口信號(hào)、FPGA內(nèi)部輸入輸出PIO寄存器信號(hào)、FPGA內(nèi)部RAM接口信號(hào)。

先關(guān)閉增量編譯,設(shè)置采樣時(shí)鐘為外部獨(dú)立時(shí)鐘CLK=50 MHz;采樣深度為256;RAM類型為M4K,數(shù)據(jù)寬度分割為256×1;觸發(fā)位置為Pre trigger position;觸發(fā)信號(hào)為DDR SDRAM讀操作信號(hào);觸發(fā)條件為Basic單信號(hào)觸發(fā);觸發(fā)條件級(jí)數(shù)為1級(jí)。從圖2可知,該觸發(fā)信號(hào)設(shè)置為上升沿觸發(fā)有效。重新編譯后將包含SignalTapIIELA的sof配置文件下載到FPGA中,圖3即是從SignalTap II ELA數(shù)據(jù)窗觀察到的來自FPGA內(nèi)部實(shí)時(shí)信號(hào)的捕獲波形。

如果設(shè)計(jì)文件中添加SignalTapII ELA后編譯時(shí)間顯著增加,可以考慮使用Start Analysis&Elaboration代替Start Analysis&Synthesis,這樣可以顯著縮短編譯時(shí)間。

加入SignalTapII ELA后,如果發(fā)現(xiàn)一些用于調(diào)試的邏輯(比如調(diào)試用的計(jì)數(shù)器)被優(yōu)化掉,不能出現(xiàn)在波形中,可以嘗試這樣解決:在HDL設(shè)計(jì)文件中對(duì)要調(diào)試的信號(hào)添加保持或保護(hù)屬性。

保持屬性主要用于信號(hào)和網(wǎng)絡(luò)節(jié)點(diǎn)。代碼如下(以VHDL為例):

signal my_signal:bit;

attribute syn_keep:boolean;

attribute syn_keep of my_signal signal is true;

保護(hù)屬性主要用于寄存器。代碼如下(以VHDL為例):

signal my_reg:std_logic;

attribute preserve:boolean;

attribute preserve of my_signal:signal is true;

通過改變待測(cè)信號(hào)的觸發(fā)方式和條件,可以捕獲到其他相類似的信號(hào)波形,這里就不一一列舉。

需要注意的是,SignalTapII ELA本身是一塊獨(dú)立邏輯資源,需要占據(jù)FPGA資源。比如RAM、LE等,資源消耗量與需采集的數(shù)據(jù)量成正比,采集存儲(chǔ)的數(shù)據(jù)深度由設(shè)計(jì)中的內(nèi)部RAM剩余大小決定。在調(diào)試完成后,需將SignalTapII ELA從系統(tǒng)邏輯設(shè)計(jì)中移除,以免浪費(fèi)資源和影響設(shè)計(jì)的性能。

結(jié) 語

通過對(duì)FPGA內(nèi)部信號(hào)的捕獲測(cè)試,可以實(shí)現(xiàn)對(duì)系統(tǒng)設(shè)計(jì)缺陷的實(shí)時(shí)分析和修正。與外部測(cè)試設(shè)備相比,可以總結(jié)出SignalTapII ELA的幾點(diǎn)優(yōu)越性:不占用額外的I/O引腳,不占用PCB上的空間,不破壞信號(hào)的時(shí)序和完整性,不需額外費(fèi)用;從多方面證實(shí),該測(cè)試手段可以減少調(diào)試時(shí)間,縮短設(shè)計(jì)周期。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598930
  • pcb
    pcb
    +關(guān)注

    關(guān)注

    4295

    文章

    22776

    瀏覽量

    393242
  • 示波器
    +關(guān)注

    關(guān)注

    113

    文章

    6104

    瀏覽量

    183395
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何對(duì)DSP設(shè)計(jì)進(jìn)行實(shí)時(shí)分析?

    隨著 FPGA 在數(shù)字通信設(shè)計(jì)領(lǐng)域(蜂窩基站、衛(wèi)星通信和雷達(dá))的高性能信號(hào)處理電路中成為可行的選擇,分析調(diào)試工具必須包括能幫助您在最短時(shí)間內(nèi)得到電路最佳性能的新技術(shù)。
    發(fā)表于 11-01 07:54

    FPGA調(diào)試工具-chipscope

    FPGA調(diào)試工具chipscope,學(xué)習(xí)與使用FPGA必用的工具。。
    發(fā)表于 03-23 09:45 ?86次下載

    實(shí)用FPGA調(diào)試工具—ChipScope Pro

    實(shí)用FPGA調(diào)試工具—ChipScope Pro ChipScope Pro應(yīng)用于FPGA調(diào)試階段,它具有傳統(tǒng)邏輯分析儀的功能,可以觀察
    發(fā)表于 02-09 15:10 ?95次下載

    FPGA動(dòng)態(tài)探頭與數(shù)字VSA對(duì)DSP設(shè)計(jì)實(shí)時(shí)分析

    FPGA動(dòng)態(tài)探頭與數(shù)字VSA對(duì)DSP設(shè)計(jì)實(shí)時(shí)分   隨著 FPGA 在數(shù)字通信設(shè)計(jì)領(lǐng)域(蜂窩基站、衛(wèi)星通信和雷達(dá))的高性能信號(hào)處理電路中成為可行的選擇,分析
    發(fā)表于 01-07 10:09 ?681次閱讀
    用<b class='flag-5'>FPGA</b>動(dòng)態(tài)探頭與數(shù)字VSA對(duì)DSP設(shè)計(jì)<b class='flag-5'>實(shí)時(shí)分析</b>

    SignalTapII ELA設(shè)計(jì)的FPGA在線調(diào)試技術(shù)

    在設(shè)計(jì)基于FPGA的電子系統(tǒng)時(shí),一般需要用示波器、邏輯分析儀等外部測(cè)試設(shè)備進(jìn)行輸入輸出信號(hào)的測(cè)試,借助測(cè)試探頭把信號(hào)送到測(cè)試設(shè)備上進(jìn)行觀察分析。當(dāng)然,前提是需要保
    發(fā)表于 05-28 16:27 ?829次閱讀
    <b class='flag-5'>SignalTapII</b> <b class='flag-5'>ELA</b>設(shè)計(jì)的<b class='flag-5'>FPGA</b>在線<b class='flag-5'>調(diào)試</b>技術(shù)

    串口調(diào)試工具

    串口調(diào)試工具 便于單片機(jī)下載 串口調(diào)試工具 串口調(diào)試工具
    發(fā)表于 11-20 16:35 ?41次下載

    串口調(diào)試工具

    串口調(diào)試工具
    發(fā)表于 12-28 10:16 ?171次下載

    SignalTapII ELAFPGA在線調(diào)試技術(shù)介紹

    在設(shè)計(jì)基于FPGA的電子系統(tǒng)時(shí),一般需要用示波器、邏輯分析儀等外部測(cè)試設(shè)備進(jìn)行輸入輸出信號(hào)的測(cè)試,借助測(cè)試探頭把信號(hào)送到測(cè)試設(shè)備上進(jìn)行觀察分析。當(dāng)然,前提是需要保留足夠多的引腳,以便能選擇信號(hào)來驅(qū)動(dòng)
    發(fā)表于 02-14 09:19 ?721次閱讀

    介紹Lauterbach調(diào)試工具的應(yīng)用

    該演示由Lauterbach中國(guó)團(tuán)隊(duì)提供,展現(xiàn)您如何通過Lauterbach強(qiáng)大的嵌入式調(diào)試工具Trace32來調(diào)試分析運(yùn)行在Altera Cyclone V SoC芯片上面的軟件。Lauterbach
    的頭像 發(fā)表于 06-26 08:09 ?5496次閱讀

    常用藍(lán)牙調(diào)試工具分享

    該部分主要分享一下常用的藍(lán)牙調(diào)試工具,方便后續(xù)藍(lán)牙抓包及分析。
    的頭像 發(fā)表于 07-25 10:16 ?6257次閱讀

    串口調(diào)試工具

    串口調(diào)試工具免費(fèi)下載。
    發(fā)表于 09-13 17:41 ?33次下載

    調(diào)試工具檢測(cè)

    調(diào)試工具檢測(cè)
    發(fā)表于 01-31 15:01 ?0次下載

    Xilinx FPGA獨(dú)立的下載和調(diào)試工具LabTools下載、安裝、使用教程

    Xilinx LabTools工具是Xilinx FPGA單獨(dú)的編程和調(diào)試工具,是從ISE或Vivado中獨(dú)立出來的實(shí)驗(yàn)室工具,只能用來下載FPGA
    的頭像 發(fā)表于 03-28 10:46 ?6432次閱讀

    modbus調(diào)試工具

    modbus調(diào)試工具
    發(fā)表于 04-28 13:50 ?89次下載

    串口調(diào)試工具

    串口調(diào)試工具
    發(fā)表于 04-28 13:53 ?7次下載