chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

利用MicroBlaze除錯(cuò)模塊實(shí)現(xiàn)FPGA嵌入式處理器的除錯(cuò)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-05-23 08:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目前,越來越多的FPGA設(shè)計(jì)開始采用嵌入式處理器,如PowerPC和賽靈思(Xilinx)的MicroBlaze處理器來完成控制任務(wù),采用C語言等軟件語言描述這些控制任務(wù),要比使用VHDL或Verilog等硬件語言描述更加容易。

當(dāng)進(jìn)行嵌入式系統(tǒng)設(shè)計(jì)時(shí),絕大部份的設(shè)計(jì)時(shí)間可能花費(fèi)在除錯(cuò)階段,因此縮短發(fā)現(xiàn)問題并解決問題的時(shí)間非常重要。作為一款整合除錯(cuò)器,Computex公司的F-Sight同時(shí)具備硬件和軟件除錯(cuò)能力。一方面,它支持FPGA內(nèi)部嵌入式處理器的全方位軟件除錯(cuò)。另一方面,它還支持監(jiān)視FPGA硬件訊號(hào)。本文將介紹如何利用F-Sight提高除錯(cuò)效率。

啟動(dòng)除錯(cuò)器

Computex公司的除錯(cuò)器非常適合用來實(shí)現(xiàn)FPGA內(nèi)部嵌入式處理器的除錯(cuò)。對(duì)于MicroBlaze處理器來說,工程師可以利用MicroBlaze除錯(cuò)模塊(MDM)控制處理器的執(zhí)行過程并進(jìn)行除錯(cuò),也可以利用賽靈思公司的MicroBlaze追蹤核心(XMTC)以非侵入方式監(jiān)控處理器程序的執(zhí)行情況。

由于FPGA的接腳限制,減少輸出到接腳的訊號(hào)數(shù)量非常重要。XMTC提供了編碼指令和數(shù)據(jù)追蹤功能,所需要的接腳數(shù)量?jī)H為非編碼訊號(hào)所需的10%。

為了使除錯(cuò)器實(shí)現(xiàn)追蹤功能,只需要將MDM和XMTC核心分別連接到MicroBlaze處理器的除錯(cuò)和追蹤接口,然后將編碼后的追蹤訊號(hào)引到FPGA接腳以便F-Sight收集數(shù)據(jù)。完成FPGA設(shè)計(jì)后,再將F-Sight除錯(cuò)器連接到電路板的Mictor連接器。如果使用賽靈思不帶Mictor連接器的ML400系列、ML500系列或Sparta-3E/3A/3AN FPGA板,那么在Computex F-Sight配接器幫助下仍可以使用F-Sight中的處理器追蹤功能。圖1是利用F-Sight配接器將F-Sight連接到Spartan-3板上的照片。

圖1:F-Sight透過配接器連接到Spartan-3電路板。

使用處理器追蹤功能

處理器追蹤功能可以在不中斷處理器執(zhí)行的情況下監(jiān)控程序執(zhí)行情況,因此用戶可以長(zhǎng)時(shí)間對(duì)程序進(jìn)行分析,以確定程序代碼中的問題,而不會(huì)改變處理器的執(zhí)行狀態(tài)。Computex F-Sight提供的處理器追蹤能力已證明適用在許多情況。

試想一段程序總是不停地產(chǎn)生例外。例外可能產(chǎn)生在程序的任何位置;工程師面臨的挑戰(zhàn)在于找出并厘清例外之處。為了解決這個(gè)問題,可以在例外產(chǎn)生之前或在例外向量中設(shè)置斷點(diǎn),這樣當(dāng)程序到達(dá)斷點(diǎn)時(shí)就會(huì)暫停。當(dāng)程序停止時(shí),可查看F-Sight記錄的執(zhí)行歷史數(shù)據(jù),可從中發(fā)現(xiàn)在進(jìn)入例外處理前執(zhí)行了哪些指令。

在嵌入式系統(tǒng)中堆棧溢出也是一個(gè)常見的問題。程序突然開始從看起來不太正常的地方執(zhí)行。堆??赡苡捎谝绯龆黄茐?。如果懷疑產(chǎn)生了這樣的問題,可以透過設(shè)計(jì)觸發(fā)器來開始或停止追蹤數(shù)據(jù)的采集。透過設(shè)置觸發(fā)器條件進(jìn)行堆棧指針和堆棧上限之間的比較,當(dāng)條件滿足時(shí),程序?qū)⒓皶r(shí)中止,然后用戶就可以很容易地確認(rèn)堆棧溢出以及產(chǎn)生的地方。

在某些實(shí)時(shí)系統(tǒng)中,為了除錯(cuò)目的而停止處理器的執(zhí)行過程并非很好的選擇,因?yàn)橥V箞?zhí)行本身可能會(huì)改變程序行為。有時(shí)候問題可能極少出現(xiàn),因此可能需要長(zhǎng)時(shí)間監(jiān)控程序執(zhí)行情況。F-Sight可以用來設(shè)置復(fù)雜的觸發(fā)條件并收集追蹤數(shù)據(jù),然后透過事后分析來除錯(cuò)問題。

探測(cè)內(nèi)部訊號(hào)

FPGA除錯(cuò)經(jīng)常從設(shè)計(jì)模擬開始。盡管仿真器能夠發(fā)現(xiàn)設(shè)計(jì)中的錯(cuò)誤,但卻不能發(fā)現(xiàn)與技術(shù)指標(biāo)相關(guān)的問題。而且還經(jīng)常產(chǎn)生設(shè)計(jì)在模擬時(shí)通過了所有測(cè)試、但在FPGA中實(shí)現(xiàn)時(shí)卻無法工作的情況。產(chǎn)生這種情況時(shí),設(shè)計(jì)人員將被迫利用邏輯分析儀在實(shí)際的目標(biāo)系統(tǒng)中進(jìn)行除錯(cuò)。

當(dāng)試圖將訊號(hào)從FPGA中引出以便讓邏輯分析儀監(jiān)視其波形時(shí),問題就出現(xiàn)了。對(duì)于大規(guī)模嵌入式系統(tǒng)設(shè)計(jì)來說,在大多數(shù)情況下即使只有很小的修改(例如將所需要的訊號(hào)引到組件外部接腳),也可能需要很長(zhǎng)時(shí)間才能完成FPGA的重新合成和實(shí)體建置。此外,還可能會(huì)由于不同的布局和布線而帶來時(shí)序問題。執(zhí)行實(shí)體建置工具所需要的實(shí)際時(shí)間依賴于電路的規(guī)模以及主計(jì)算機(jī)的性能,但很可能一天內(nèi)只夠完成幾次除錯(cuò)。

幸運(yùn)的是,Computex F-sight提供了一項(xiàng)非常有用的功能,它不需要重新執(zhí)行合成和實(shí)體實(shí)現(xiàn)工具就能透過設(shè)計(jì)修改把內(nèi)部FPGA訊號(hào)引到組件外部接腳。這一功能被稱為‘探測(cè)’(Probing)。只需在顯示HDL原始程序代碼的視圖中簡(jiǎn)單地選擇內(nèi)部FPGA訊號(hào)(圖2),F(xiàn)-Sight將自動(dòng)完成其余工作,并根據(jù)上述選擇為測(cè)試接腳分配合適的布線資源。這是透過利用Xilinx ISE軟件工具中包含的FPGA編輯器實(shí)現(xiàn)的。有了這一功能,除錯(cuò)時(shí)必須花在邏輯合成和布局布在線的時(shí)間被縮到了最短,因而可以有更多時(shí)間用在監(jiān)視訊號(hào)波形上。

圖2:F-Sight探測(cè)。

協(xié)同除錯(cuò)

當(dāng)系統(tǒng)工作不正常時(shí),唯一能做的就是根據(jù)實(shí)際產(chǎn)生的事件檢查問題產(chǎn)生的原因。在有些情況下,利用硬件來實(shí)現(xiàn)事件追蹤會(huì)更容易;而在其它情況下,利用軟件可能更容易一些。例如,在使用硬件的情況中,如果能夠確定顯示例外的訊號(hào),那么可以將這個(gè)訊號(hào)設(shè)為觸發(fā)訊號(hào)。在使用軟件的情況中,如果例外處理被調(diào)用,那么可以在例外處理程序處設(shè)置斷點(diǎn)并執(zhí)行用戶程序。這樣事件產(chǎn)生的過程將被擷取進(jìn)F-Sight的追蹤緩沖器中。

然而,這兒的問題是即使擷取了事件的產(chǎn)生過程,確定原因仍然需要很長(zhǎng)的時(shí)間,除非了解硬件和軟件之間的相關(guān)性。針對(duì)這一點(diǎn),Computex實(shí)現(xiàn)了協(xié)同除錯(cuò)功能,即可以在F-Sight中實(shí)現(xiàn)硬件(分析儀)和軟件(追蹤)歷史之間的同步。利用這一功能,可以在相同時(shí)間軸上檢查事件產(chǎn)生時(shí)的波形和程序行為。當(dāng)在分析儀窗口中滾動(dòng)顯示波形時(shí),程序執(zhí)行歷史和原始程序代碼視圖也相應(yīng)滾動(dòng)(圖3)。協(xié)同除錯(cuò)功能的強(qiáng)大之處在于能夠透過硬件和軟件協(xié)同除錯(cuò)快速確定問題原因。

利用MicroBlaze除錯(cuò)模塊實(shí)現(xiàn)FPGA嵌入式處理器的除錯(cuò)

圖3:F-Sight協(xié)同除錯(cuò)。

對(duì)閃存除錯(cuò)

FPGA內(nèi)部存儲(chǔ)器經(jīng)常被用來儲(chǔ)存嵌入式處理器程序。然而,如果程序太大,內(nèi)部存儲(chǔ)器的容量經(jīng)常不夠用。一種可行的方法是利用外部閃存來儲(chǔ)存用戶程序。

雖然有些除錯(cuò)器不支持閃存寫入功能,但F-Sight卻能夠像除錯(cuò)位于內(nèi)部存儲(chǔ)器中的程序一樣,全面對(duì)外部閃存中的程序除錯(cuò)。例如,它可以用來下載用戶程序,對(duì)內(nèi)存的某部份加上外掛程序,或在閃存中設(shè)置軟件斷點(diǎn)。

F-Sight支持1000多種類型的閃存。即使所使用的閃存不在已支持列表中,也可以透過圖形化用戶接口方便地手工增加相應(yīng)項(xiàng)目。


聲明:本文內(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)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235208
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618450
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317550
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    利用 SoM 實(shí)現(xiàn)嵌入式微處理器/FPGA 組合設(shè)計(jì)和項(xiàng)目的快速運(yùn)行

    作者:Jacob Beningo 很多嵌入式設(shè)計(jì)使用基于微處理器和微控制的單板計(jì)算機(jī) (SBC) 和模塊化系統(tǒng) (SoM)(例如,請(qǐng)參閱“使用 Raspberry Pi 3構(gòu)建低成本
    的頭像 發(fā)表于 10-03 14:20 ?1344次閱讀
    <b class='flag-5'>利用</b> SoM <b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>嵌入式微處理器</b>/<b class='flag-5'>FPGA</b> 組合設(shè)計(jì)和項(xiàng)目的快速運(yùn)行

    嵌入式處理器硬件設(shè)計(jì)

    ,Zynq UltraScale +?MPSoC或MicroBlaze?處理器設(shè)計(jì)和調(diào)試基于微處理器的系統(tǒng)和嵌入式軟件應(yīng)用。Table of ContentsRevision Hist
    發(fā)表于 11-15 10:34

    如何提高FPGA嵌入式處理器的系統(tǒng)除錯(cuò)率?

    硬件和軟件除錯(cuò)能力。一方面,它支持FPGA內(nèi)部嵌入式處理器的全方位軟件除錯(cuò)。另一方面,它還支持監(jiān)視FPG
    發(fā)表于 09-17 07:42

    MicroBlaze處理器的PetaLinux操作系統(tǒng)怎么移植?

    )作為一種特殊的嵌入式微處理器系統(tǒng),已逐漸成為一個(gè)新興的技術(shù)方向。SOPC融合了SoC和FPGA各自的優(yōu)點(diǎn),并具備軟硬件在系統(tǒng)可編程、可裁減、可擴(kuò)充、可升級(jí)的功能。其核心是在FPGA實(shí)現(xiàn)
    發(fā)表于 03-16 06:37

    嵌入式系統(tǒng)能解決哪方面的除錯(cuò)問題?

    現(xiàn)在可用的嵌入式硬體硅智財(cái)權(quán)(intellectual property ,IP),以及該 IP 能解決哪方面的除錯(cuò)問題。
    發(fā)表于 04-09 08:30

    【正點(diǎn)原子FPGA連載】第一章MicroBlaze簡(jiǎn)介--摘自【正點(diǎn)原子】達(dá)芬奇之Microblaze 開發(fā)指南

    處理器IP核,將會(huì)大大減少開發(fā)人員的工作量,從而對(duì)于提升工作效率,節(jié)約項(xiàng)目成本具有重大意義。采用FPGAMicroBlaze進(jìn)行嵌入式系統(tǒng)設(shè)計(jì),可
    發(fā)表于 10-16 16:28

    怎么利用FPGA嵌入式處理器實(shí)現(xiàn)低成本智能顯示模塊

    怎么利用FPGA嵌入式處理器實(shí)現(xiàn)低成本智能顯示模塊?
    發(fā)表于 04-28 07:10

    如何利用F-Sight提高除錯(cuò)效率?

    如何利用F-Sight提高FPGA嵌入式處理器的系統(tǒng)除錯(cuò)率?
    發(fā)表于 05-07 06:04

    基于Xilinx MicroBlaze多核嵌入式系統(tǒng)的設(shè)計(jì)

    MicroBlaze 核是嵌入在Xilinx FPGA之中的屬于32位RISC Harvard架構(gòu)軟處理器核。針對(duì)Xilinx MicroBlaze
    發(fā)表于 07-20 17:22 ?68次下載
    基于Xilinx <b class='flag-5'>MicroBlaze</b>多核<b class='flag-5'>嵌入式</b>系統(tǒng)的設(shè)計(jì)

    基于FPGA嵌入式PLC微處理器設(shè)計(jì)

    目前利用FPGA設(shè)計(jì)高性能的嵌入式處理器已經(jīng)成為SOC設(shè)計(jì)的重要部分,對(duì)一種基于FPGA芯片的嵌入式
    發(fā)表于 09-28 18:19 ?2068次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>嵌入式</b>PLC微<b class='flag-5'>處理器</b>設(shè)計(jì)

    嵌入式系統(tǒng)的除錯(cuò)策略分析

    嵌入式系統(tǒng)除錯(cuò)的工作量,可望占了嵌入式軟體專案工作量的一半以上。了解硬體除錯(cuò)功能以及它們所能解決的問題,是選擇正確的晶片、建立除錯(cuò)系統(tǒng)以及提
    發(fā)表于 10-20 10:01 ?0次下載
    <b class='flag-5'>嵌入式</b>系統(tǒng)的<b class='flag-5'>除錯(cuò)</b>策略分析

    MicroBlaze 處理器為內(nèi)核的嵌入式系統(tǒng)開發(fā)過程詳解

    系統(tǒng)應(yīng)用,圍繞Xilinx 公司的MicroBlaze處理器,對(duì)其體系結(jié)構(gòu)、設(shè)計(jì)流程和相關(guān)開發(fā)工具一一做出介紹,并且通過一個(gè)簡(jiǎn)單的實(shí)例來說明以MicroBlaze 處理器為內(nèi)核的
    發(fā)表于 07-17 11:49 ?2602次閱讀
    以<b class='flag-5'>MicroBlaze</b> <b class='flag-5'>處理器</b>為內(nèi)核的<b class='flag-5'>嵌入式</b>系統(tǒng)開發(fā)過程詳解

    基于構(gòu)造的的嵌入式微處理器MicroBlaze的開發(fā)與應(yīng)用

    MicroBlaze處理器,在不同產(chǎn)品系列間實(shí)現(xiàn)方便的轉(zhuǎn)換,具有很高的靈活性。但是,MicroBlaze系統(tǒng)設(shè)計(jì)不僅要在70多種參數(shù)中選擇,而且還要借助一系列功能強(qiáng)大的
    發(fā)表于 11-24 19:09 ?1315次閱讀
    基于構(gòu)造的的<b class='flag-5'>嵌入式微處理器</b><b class='flag-5'>MicroBlaze</b>的開發(fā)與應(yīng)用

    關(guān)于嵌入式處理器的在線調(diào)試方法

    FPGA 設(shè)計(jì)中使用嵌入式處理器軟核( 如MicroBlaze、PicoBlaze 等) 構(gòu)成可編程片上系統(tǒng)( SystemOn Programmable Chip,SOPC) ,相
    發(fā)表于 07-09 11:47 ?1419次閱讀
    關(guān)于<b class='flag-5'>嵌入式</b><b class='flag-5'>處理器</b>的在線調(diào)試方法

    關(guān)于如何提高FPGA嵌入式處理器的系統(tǒng)除錯(cuò)

    目前,越來越多的FPGA設(shè)計(jì)開始采用嵌入式處理器,如PowerPC和賽靈思(Xilinx)的MicroBlaze處理器來完成控制任務(wù),采用C
    發(fā)表于 03-23 08:55 ?554次閱讀