吴忠躺衫网络科技有限公司

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FPGA開發(fā)在線調試和配置過程

電子工程師 ? 來源:百度文庫 ? 作者:百度文庫 ? 2020-11-01 10:00 ? 次閱讀

在線調試

在線調試也稱作板級調試,它是將工程下載FPGA芯片上后分析代碼運行的情況。有人會以為,我們不是已經做了仿真了,甚至是時序仿真都通過了,還會存在問題么?在實際中,存在這么些情況我們需要用到在線調試:

仿真不全面而沒有發(fā)現(xiàn)的FPGA設計錯誤。很多情況下,由于太復雜,無法做到100%的代碼覆蓋率;

在板級交互中,存在異步事件,很難做仿真,或者仿真起來時間很長,無法運行;

除了本身FPGA外,還可能存在板上互連可靠性問題、電源問題和IC之間的信號干擾問題,都可能導致系統(tǒng)運行出錯;

其他潛在問題:

在線調試的方式主要有兩種,一種是利用外部測試設備,把內部信號傳送到FPGA針腳上,然后用示波器或者邏輯分析儀觀察信號;另一種就是利用嵌入式邏輯分析儀,在設計中插入邏輯分析儀,利用JTAG邊緣數(shù)據(jù)掃描和開發(fā)工具完成數(shù)據(jù)交互。

嵌入式邏輯分析儀的原理相當于在FPGA中開辟一個環(huán)形存儲器,存儲器的大小決定了能夠查看的數(shù)據(jù)的深度,是可以人為設定的,但是不得超出資源。在FPGA內部,根據(jù)設置的需要查看的信號節(jié)點信息和驅動的采樣時鐘,對信息進行采樣,并放置到設定的存儲空間里,存儲空間是環(huán)形的,內容隨時間更新。然后通過判斷觸發(fā)點來檢查采集數(shù)據(jù),一旦滿足觸發(fā)條件,這個時候會停止掃描,然后將觸發(fā)點前后的一些數(shù)據(jù)返回給PC端的測試工具進行波形顯示,供開發(fā)者進行調試。

目前的調試工具都是和本身的FPGA開發(fā)平臺掛鉤的,不同F(xiàn)PGA廠商都會有開發(fā)軟件平臺,嵌入式邏輯分析儀也就不同。Altera 廠家提供的是SignalTapII,而 Xilinx廠家提供的是 ChipScope,這些工具的具體使用在后面工具中詳解。

當然這里除了嵌入式邏輯分析儀外,各廠家還提供了一些其他的在線調試工具,例如SignalProbe等等,但是或多或少的用的人不是很多,有興趣的可以找到該功能使用的說明手冊。

配置及固化

好了,到了我們最后一個環(huán)節(jié)就可以完成FPGA的流程了。這一部分我們分四個小節(jié)來講,首先是針對大家很多人不是太清楚的FPGA配置過程安排的,隨后一節(jié)為了更加深理解,舉了altera 的FPGA敘述配置全過程,第三小節(jié)是探討FPGA主要的配置模式,最后一節(jié)就是針對這些配置模式展開的對比選擇探討。

FPGA配置過程

在FPGA正常工作時,配置數(shù)據(jù)存儲在SRAM中,這個SRAM單元也被稱為配置存儲器(configure RAM)。由于SRAM是易失性存儲器,因此在FPGA上電之后,外部電路需要將配置數(shù)據(jù)重新載入到芯片內的配置RAM中。在芯片配置完成之后,內部的寄存器以及I/O管腳必須進行初始化(initialization),等到初始化完成以后,芯片才會按照用戶設計的功能正常工作,即進入用戶模式。

FPGA上電以后首先進入配置模式(configuration),在最后一個配置數(shù)據(jù)載入到FPGA以后,進入初始化模式(initialization),在初始化完成后進入用戶模式(user-mode)。在配置模式和初始化模式下,F(xiàn)PGA的用戶I/O處于高阻態(tài)(或內部弱上拉狀態(tài)),當進入用戶模式下,用戶I/O就按照用戶設計的功能工作。

舉例——altera FPGA配置全過程

一個器件完整的配置過程將經歷復位、配置和初始化等3個過程。FPGA正常上電后,當其nCONFIG管腳被拉低時,器件處于復位狀態(tài),這時所有的配置RAM內容被清空,并且所有I/O處于高阻態(tài),F(xiàn)PGA的狀態(tài)管腳nSTATUS和CONFIG_DONE管腳也將輸出為低。當FPGA的nCONFIG管腳上出現(xiàn)一個從低到高的跳變以后,配置就開始了,同時芯片還會去采樣配置模式(MSEL)管腳的信號狀態(tài),決定接受何種配置模式。隨之,芯片將釋放漏極開路(open-drain)輸出的nSTATUS管腳,使其由片外的上拉電阻拉高,這樣,就表示FPGA可以接收配置數(shù)據(jù)了。在配置之前和配置過程中,F(xiàn)PGA的用戶I/O均處于高阻態(tài)。

在接收配置數(shù)據(jù)的過程中,配置數(shù)據(jù)由DATA管腳送入,而配置時鐘信號由DCLK管腳送入,配置數(shù)據(jù)在DCLK的上升沿被鎖存到FPGA中,當配置數(shù)據(jù)被全部載入到FPGA中以后,F(xiàn)PGA上的CONF_DONE信號就會被釋放,而漏極開路輸出的CONF_DONE信號同樣將由外部的上拉電阻拉高。因此,CONF_DONE管腳的從低到高的跳變意味著配置的完成,初始化過程的開始,而并不是芯片開始正常工作。

INIT_DONE是初始化完成的指示信號,它是FPGA中可選的信號,需要通過Quartus II工具中的設置決定是否使用該管腳。在初始化過程中,內部邏輯、內部寄存器和I/O寄存器將被初始化,I/O驅動器將被使能。當初始化完成以后,器件上漏極開始輸出的INIT_DONE管腳被釋放,同時被外部的上拉電阻拉高。這時,F(xiàn)PGA完全進入用戶模式,所有的內部邏輯以及I/O都按照用戶的設計運行,這時,那些FPGA配置過程中的I/O弱上拉將不復存在。不過,還有一些器件在用戶模式下I/O也有可編程的弱上拉電阻。在完成配置以后,DCLK信號和DATA管腳不應該被浮空(floating),而應該被拉成固定電平,高或低都可以。

如果需要重新配置FPGA,就需要在外部將nCONFIG重新拉低一段時間,然后再拉高。當nCONFIG被拉低后,nSTATUS和CONF_DONE也將隨即被FPGA芯片拉低,配置RAM被清,所有I/O都變成三態(tài)。當nCONFIG和nSTATUS都變?yōu)楦邥r,重新配置就開始了。

配置模式

這一塊分成兩部分,一部分是在線調試配置,另一塊是固化,即將工程配置到相應存儲單元中,上電后,通過存儲在存儲器中的內容配置FPGA。

1)在線配置

第一部分在線調試配置過程是通過JTAG模式完成的,如下圖所示,在JTAG模式中,PC和FPGA通信的時鐘為JTAG接口的TCLK,數(shù)據(jù)直接從TDI進入FPGA,完成相應功能的配置。

JTAG接口是一個業(yè)界標準接口,主要用于芯片測試等功能。FPGA基本上都可以支持JTAG命令來配置FPGA的方式,而且JTAG配置方式比其他任何方式優(yōu)先級都高。JTAG接口由4個必需的信號TDI, TDO, TMS和TCK以及1個可選信號TRST構成,其中:

TDI,用于測試數(shù)據(jù)的輸入;

TDO,用于測試數(shù)據(jù)的輸出;

TMS,模式控制管腳,決定JTAG電路內部的TAP狀態(tài)機的跳變;

TCK,測試時鐘,其他信號線都必須與之同步;

TRST,可選,如果JTAG電路不用,可以將其連到GND。

2)固化

第二部分固化程序到存儲器中的過程可以分為兩種方式,主模式和從模式。主模式下FPGA器件引導配置操作過程,它控制著外部存儲器和初始化過程;從模式下則由外部計算機或控制器控制配置過程。主、從模式從傳輸數(shù)據(jù)寬度上,又分別可以分為串行和并行。

I)主串模式

主串模式是最簡單的固化模式,如下圖所示,這個模式過程不需要為外部存儲器提供一系列地址。它利用簡單的脈沖信號來表明數(shù)據(jù)讀取的開始,接著由FPGA提供給存儲器時鐘,存儲器在時鐘驅動下,將數(shù)據(jù)輸入到FPGA Cdata_in端口。

II)主并模式

主并模式其實和主串模式的一樣機理,只不過是在主串的基礎上,同周期數(shù)內傳送的數(shù)據(jù)變成8位,或者更高,如下圖。這樣一來,主并行相比主串行的速度要優(yōu)先了。現(xiàn)代有些地方已采用這種方式來配置FPGA的了。

III)從并模式

從上面看到,主模式下的連接還是很簡單的。但是有時候,系統(tǒng)可能用其他微處理器來對FPGA進行配置。這里的微處理器可以指FPGA內嵌的處理器,比如說Nios。微處理器控制著何時配置FPGA,從哪讀取配置文件。如下圖,這種方式的優(yōu)點是處理器可以靈活隨時變更FPGA配置,同時配置的速度也快。微處理器先從外部存儲設備里讀取一個字節(jié)的數(shù),然后寫到FPGA里。

IV)從串模式

理解了從并模式,從串模式就不用很多解釋了,它的特點就是節(jié)約FPGA管腳I/O。

V)多片級聯(lián)

多片模式有兩種,一種是采用菊花鏈的思想,多片F(xiàn)PGA共享一個存儲器,另外一個是可以使用其他存儲器配置不同的FPGA。如果所示是一個共享型的結構,顯示啟動了。這里分主FPGA和從FPGA,主FPGA和存儲器是使用串行主模式來配置,而后面那個的配置是通過第一配置好的FPGA上微處理器進行協(xié)調的。

模式選擇

現(xiàn)今FPGA應該可以支持上面五種配置模式,是通過3個模式引腳來實現(xiàn)的,具體的映射如下表,在今后模式還是有可能增加的。

在PS模式下,如果你用電纜線配置板上的FPGA芯片,而這個FPGA芯片已經有配置芯片在板上,那你就必須隔離纜線與配置芯片的信號。一般平時調試時不會把配置芯片焊上的,這時候用纜線下載程序。只有在調試完成以后,才把程序燒在配置芯片中, 然后將芯片焊上.或者配置芯片就是可以方便取下焊上的那種。這樣出了問題還可以方便地調試.。

對FPGA芯片的配置中,可以采用AS模式的方法,如果采用EPCS的芯片,通過一條下載線進行燒寫的話,那么開始的”nCONFIG,nSTATUS”應該上拉,要是考慮多種配置模式,可以采用跳線設計。讓配置方式在跳線中切換,上拉電阻的阻值可以采用10K一般在做FPGA實驗板的時候,用AS+JTAG方式,這樣可以用JTAG方式調試,而最后程序已經調試無誤了后,再用AS模式把程序燒到配置芯片里去。

責任編輯人:CC

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

    關注

    1630

    文章

    21796

    瀏覽量

    605991
  • FPGA開發(fā)
    +關注

    關注

    1

    文章

    43

    瀏覽量

    15039

原文標題:詳解FPGA開發(fā)在線調試&配置及固化

文章出處:【微信號:HK-FPGA_Dep,微信公眾號:FPGA技術支持】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    FPGA實戰(zhàn)演練邏輯篇69:基于FPGA在線系統(tǒng)調試概述

    在線調試方式大都是通過FPGA器件引出的JTAG接口,同時使用了一些FPGA片內固有的邏輯、存儲器或布線資源就能夠實現(xiàn)的。這些調試功能通常也
    發(fā)表于 09-02 18:39

    Xilinx FPGA在線更新配置數(shù)據(jù)交流

    DSP從外部存儲設備讀取配置數(shù)據(jù)配置FPGA,如果需要升級配置數(shù)據(jù)的話只需要DSP來燒寫外部存儲設備就實現(xiàn)了在線升級功能。不知道可行不,希望
    發(fā)表于 01-17 20:00

    玩轉Zynq連載5——基于Vivado的在線板級調試概述

    更加獨特的調試手段。在FPGA器件支持并且剩余邏輯資源足夠的情況下,設計者往往習慣于使用開發(fā)軟件提供的在線邏輯分析儀進行調試,如Vivado
    發(fā)表于 05-24 15:16

    FPGA在線配置模塊和自動測試模塊實現(xiàn)過程

    數(shù)據(jù)的分析來診斷故障。因此,用于FPGA測試的儀器或系統(tǒng)的關鍵技術在于:如何加快單次配置的時間,以節(jié)省測試過程中的配置時間開銷;如何實現(xiàn)自動重復配置
    發(fā)表于 05-14 07:00

    基于USART接口的STM32F2xx如何開發(fā)在線應用編程

    本應用筆記適用于STM32F2xx產品線,介紹如何開發(fā)在線應用編程的應用。
    發(fā)表于 12-01 06:40

    在線升級的FPGA并行配置方法的實現(xiàn)

    針對基于SRAM 結構的FPGA,詳細介紹了一種采用可在線升級的SST89V564RD微處理器對其進行上電PPA(被動并行異步)配置,不僅實現(xiàn)了FPGA
    發(fā)表于 09-15 16:27 ?23次下載

    簡化Xilinx和Altera FPGA調試過程

    簡化Xilinx和Altera FPGA調試過程:通過FPGAViewTM 解決方案,如混合信號示波器(MSO)和邏輯分析儀,您可以在Xilinx 和Altera FPGA 內部迅速移
    發(fā)表于 11-20 17:46 ?27次下載

    FPGA開發(fā)板使用和配置方式

    本節(jié)旨在通過給定的工程實例“按鍵開關控制LED”來熟悉Xilinx ISE軟件的基本操作、設計、編譯及仿真流程。同時使用基于Xilinx FPGA開發(fā)板將該實例進行下載、驗證及調試,完成工程設計的硬件實現(xiàn),熟悉Xilinx
    發(fā)表于 11-22 15:31 ?6827次閱讀

    chipscope使用教程以及FPGA在線調試的方法

    本文檔內容介紹了基于chipscope使用教程以及FPGA在線調試的方法,供參考
    發(fā)表于 03-02 14:09 ?9次下載

    STM32內部RAM在線調試配置方法及詳細說明 (基于Keil開發(fā)工具)

    STM32內部RAM在線調試配置方法及詳細說明(基于Keil開發(fā)工具)
    的頭像 發(fā)表于 03-24 14:01 ?8288次閱讀
    STM32內部RAM<b class='flag-5'>在線</b><b class='flag-5'>調試</b><b class='flag-5'>配置</b>方法及詳細說明 (基于Keil<b class='flag-5'>開發(fā)</b>工具)

    STM8S 使用IAR在線調試配置

    STM8S103單片機使用IAR進行程序開發(fā)調試1.在程序調試沒有錯誤后 選擇 “Options” 進行配置2.選擇“Debugger”選項“ST-LINK”3.選擇其中一個進行
    發(fā)表于 12-03 10:21 ?15次下載
    STM8S 使用IAR<b class='flag-5'>在線</b><b class='flag-5'>調試</b><b class='flag-5'>配置</b>

    RISC-V MCU開發(fā) (五):調試配置

    RISC-V MCU開發(fā) (五):調試配置在嵌入式開發(fā)中,除了編譯配置外,工程的調試
    發(fā)表于 12-07 19:21 ?14次下載
    RISC-V MCU<b class='flag-5'>開發(fā)</b> (五):<b class='flag-5'>調試</b><b class='flag-5'>配置</b>

    FPGA在線調試的方法簡單總結

    Xilinx被AMD收購的事情把我震出來了,看了看上上一篇文章講了下仿真的文件操作,這篇隔了很久遠,不知道該從何講起,就說說FPGA在線調試的一些簡單的操作方法總結。
    發(fā)表于 06-19 15:52 ?2118次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>在線</b><b class='flag-5'>調試</b>的方法簡單總結

    7.22在線研討會 | 基于高層級設計的FPGA開發(fā)快速迭代

    本次研討會將對高層級FPGA開發(fā)方式進行重點介紹,包括各開發(fā)方式的優(yōu)勢以及其適用場景,與您共同探討高層級設計的FPGA開發(fā)在嵌入式部署領域中
    的頭像 發(fā)表于 07-16 09:30 ?773次閱讀
    7.22<b class='flag-5'>在線</b>研討會 | 基于高層級設計的<b class='flag-5'>FPGA</b><b class='flag-5'>開發(fā)</b>快速迭代

    介紹FPGA在線調試的一大利器—VIO

    之前的文章介紹了FPGA在線調試的方法,包括選定抓取信號,防止信號被優(yōu)化的方法等等。
    發(fā)表于 06-20 10:38 ?7344次閱讀
    介紹<b class='flag-5'>FPGA</b><b class='flag-5'>在線</b><b class='flag-5'>調試</b>的一大利器—VIO
    网上百家乐公| 鼎龙百家乐官网的玩法技巧和规则 | 豪华百家乐官网人桌| 富田太阳城二期| 网址百家乐官网的玩法技巧和规则| 金凤凰平台| 什么事百家乐的路单| 奔驰百家乐官网游戏电玩| 大发888心水论坛| CEO百家乐现金网| 百家乐官网视频聊天游戏| 新百家乐.百万筹码| 百家乐官网小钱赢钱| 投注网| 百家乐赌博策略大全| 百家乐官网牌九| 金宝博滚球| 百家乐技巧平注常赢法| 方形百家乐官网筹码| 百家乐官网娱乐城主页| 大发888网页版下载| 网上百家乐博彩正网| 百家乐官网水晶筹码| bet365官网bet365gwylc| 百家乐PK| 将军百家乐官网的玩法技巧和规则 | 百家乐威尼斯人| 免佣百家乐官网的玩法| 新时代娱乐城| 免费百家乐追号工具| 百家乐模拟投注器| 百家乐官网家居 | 百家乐官网筹码币方形| 玩百家乐新澳门娱乐城| 皇冠平台| 百家乐龙虎斗扎金花| 皇冠网文学网址| 百家乐方法技巧| 百家乐新台第二局| 百家乐官网太阳城菲律宾| 新疆|