国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

FPGA雜記之安路TD中chipwatcher工具的使用注意事項(xiàng)

潤(rùn)欣科技Fortune ? 來(lái)源:潤(rùn)欣科技 ? 作者:潤(rùn)欣科技Fortune ? 2021-05-22 17:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上海潤(rùn)欣科技股份有限公司創(chuàng)研社

一、什么是chipwatcher

編程開(kāi)發(fā)過(guò)程的調(diào)試階段,可以借助一些編譯環(huán)境集成的工具幫助我們更好地定位問(wèn)題。當(dāng)我們完成一份工程代碼但是觀測(cè)不到我們想要的結(jié)果時(shí),我們需要進(jìn)一步確認(rèn)是哪部分的代碼出現(xiàn)了偏差導(dǎo)致得不到我們想要的結(jié)果。

對(duì)于MCU來(lái)說(shuō),我們可以借助JLINK仿真器來(lái)實(shí)現(xiàn)斷點(diǎn)測(cè)試,進(jìn)而觀察每一步的數(shù)據(jù)變化,從而定位到問(wèn)題所在;對(duì)于FPGA而言,想要觀察內(nèi)部信號(hào)的變化,也有對(duì)應(yīng)的工具可以使用。

這些工具,不同的芯片廠(chǎng)商根據(jù)自家的編譯環(huán)境集成了他們各自的工具,例如,XilinxISE的chipscope,alteraquartusII的SignalProbe等。本文中安路TD的chipwatcher也是用于觀測(cè)電路內(nèi)部信號(hào)變化的工具,可以認(rèn)為這是一款類(lèi)似于邏輯分析儀的工具,只不過(guò)觀測(cè)的信號(hào)不是芯片引腳上面的信號(hào),而是電路內(nèi)部的信號(hào)。

當(dāng)我們需要定位問(wèn)題的時(shí)候,可以在工具中添加我們想要查看的信號(hào),通過(guò)抓取波形來(lái)確認(rèn)信號(hào)是否在根據(jù)我們的需求進(jìn)行變化。

二、Chipwatcher使用流程

首先,一個(gè)FPGA工程常見(jiàn)的構(gòu)成如下:

1.功能代碼文件:后綴為.v的文件,通俗地講就是我們自己寫(xiě)的代碼。

2.例化的IP文件:通過(guò)編譯軟件來(lái)例化的IP的代碼,不同廠(chǎng)商例化后的IP文件名后綴有差異,安路的TD中直接將例化完畢后的.v文件加入工程即可。這類(lèi)文件不是必須的,有用到需要的IP就加,沒(méi)有不加。

3.IO約束文件:用來(lái)定義整個(gè)工程的輸入輸出信號(hào)對(duì)應(yīng)的具體芯片引腳是哪個(gè)。這類(lèi)文件可以不加,不加的話(huà)編譯工具會(huì)自動(dòng)分配IO口。

4.時(shí)鐘約束文件:即SDC文件。同IO約束文件,不加的話(huà)編譯器會(huì)自己約束,因此當(dāng)工程較大時(shí)序較為復(fù)雜時(shí)通常需要我們自己約束。

以上四種文件通過(guò)編譯后一起生成的整個(gè)工程的bit文件燒錄進(jìn)FPGA芯片后,假設(shè)代碼功能正常,則芯片開(kāi)始工作。

假設(shè)功能不正常,當(dāng)我們想要觀察電路內(nèi)部信號(hào)的時(shí)候,我們還需要在工程中加入另一類(lèi)文件,即第五類(lèi)文件,然后將這五類(lèi)文件統(tǒng)一打包成bit文件后下載進(jìn)FPGA,此時(shí)才可以利用工具觀測(cè)和抓取到我們想看的信號(hào)。

這第五類(lèi)文件,在TD中,即為Chipwatcher工具生成的.cwc文件。

下圖展示了一個(gè)加入.cwc文件后的工程目錄(該工程中未加入時(shí)序約束文件):

o4YBAGAXc4CAdrzsAABD9K6z_nQ544.png

生成cwc文件的過(guò)程如下:

Tools->DebugTools->chipwatcher

pIYBAGAXc46AUcqjAABwEVEtDSA187.png

進(jìn)入到chipwatcher頁(yè)面:

pIYBAGAXc5mAUPJYAAECEOXz33Q146.png

如上圖,①區(qū)是選擇采樣時(shí)鐘和采樣深度,采樣時(shí)鐘的選擇注意要選擇全局時(shí)鐘中頻率最高的時(shí)鐘,采樣深度越深(即數(shù)值越大),最終生成的bit文件所占用的芯片資源越多。

②區(qū)是添加想觀察的信號(hào)的區(qū)域,添加方法:在該區(qū)域右鍵后,選擇addnodes進(jìn)入到信號(hào)選擇的頁(yè)面,如下:

pIYBAGAXc7CACbupAACbQZz-ClU853.png

如圖可以選擇想要觀察的信號(hào)至右側(cè),全部選擇完畢后,點(diǎn)擊OK即可。

需要注意的是,有些信號(hào)會(huì)自動(dòng)被編譯器優(yōu)化,而在list中不被顯示,此時(shí)若是想觀測(cè)對(duì)應(yīng)的信號(hào),可以回到我們的代碼中加上如下關(guān)鍵詞即可:

pIYBAGAXc7-AOzj9AABYZeRBP-c561.png

添加完想要觀察的信號(hào)后,設(shè)置觸發(fā)條件。

pIYBAGAXc9KAYnI5AABLEQdtn2c352.png

如圖,在triggerenable欄選擇觸發(fā)信號(hào),在riggercondition欄選擇觸發(fā)條件(右鍵)

觸發(fā)條件共有以下幾種:

pIYBAGAXc_eATtHaAABINWgXmqY136.png

分別表示低電平觸發(fā)、高電平觸發(fā)、上升沿觸發(fā)、下降沿觸發(fā)和邊沿觸發(fā)。

pIYBAGAXdBOAaJ5lAABLgudfBmk251.png

在如上圖處設(shè)置觸發(fā)信號(hào)之間的關(guān)系。圖中設(shè)置為或,即只要其中一個(gè)信號(hào)滿(mǎn)足條件即可。

上圖中的整體觸發(fā)條件設(shè)置完畢后可敘述為:當(dāng)int_mem_we信號(hào)或int_mem_re信號(hào)其中之一為高電平時(shí),抓取當(dāng)前int_mem_wdata[31:0]、int_mem_addr[10:0]、int_mem_rdata[31:0]、int_mem_we和int_mem_re的波形。

編輯完畢后即可保存文件。

pIYBAGAXdCqAKP4TAACW9QzLSSE933.png

保存后生成對(duì)應(yīng)的cwc文件,同時(shí)將文件加入工程,最后編譯下載至開(kāi)發(fā)板。

pIYBAGAXdEGAatuhAAH1ZJkaMmI099.png

(注釋?zhuān)孩贋閷⑸傻腸wc文件加入工程,②為編譯工程,③為將bit文件下載至開(kāi)發(fā)板)

下載成功后,返回chipwatcher設(shè)置頁(yè)面,如下圖選擇singletrigger,即單次觸發(fā)。

pIYBAGAXdFGAQLzVAACeSrxoWFM916.png

當(dāng)程序運(yùn)行并滿(mǎn)足觸發(fā)條件時(shí),chipwatcher會(huì)抓取到波形,如下:

pIYBAGAXdGWAdYmkAABhyg8VC10070.png

三、FPGA調(diào)試與MCU調(diào)試的一些思路差異

Chipwatcher的調(diào)試過(guò)程大體如第二章中所示,但是很長(zhǎng)一段時(shí)間,我并沒(méi)有在chipwatcher中觀察到任何波形,究其原因是沒(méi)有從MCU調(diào)試的思維轉(zhuǎn)變過(guò)來(lái)。

MCU的斷點(diǎn)調(diào)試,可以認(rèn)為是一步一步執(zhí)行的,沒(méi)有點(diǎn)擊下一步之前,程序會(huì)一直停留在當(dāng)前位置(除非程序跑飛)。

而FPGA調(diào)試沒(méi)有這種機(jī)制,當(dāng)bit文件下載至芯片后,程序是一直執(zhí)行的,而點(diǎn)擊singletrigger后只不過(guò)是當(dāng)滿(mǎn)足觸發(fā)條件時(shí)抓取當(dāng)前波形而已。抓取完畢會(huì)顯示波形,程序卻依舊在繼續(xù)執(zhí)行,不會(huì)停留在抓取完畢的那一刻。

當(dāng)我使用chipwatcher觀察AHB協(xié)議傳輸時(shí),沒(méi)有在數(shù)據(jù)線(xiàn)和地址線(xiàn)上面觀察到波形就是沒(méi)有意識(shí)到這點(diǎn)。在bit文件下載進(jìn)芯片時(shí)傳輸就已經(jīng)開(kāi)始了(對(duì)比MCU的調(diào)試,通常MCU調(diào)試開(kāi)始時(shí),環(huán)境一般會(huì)在main函數(shù)起始自動(dòng)設(shè)置斷點(diǎn)),假設(shè)傳輸在我開(kāi)啟觸發(fā)按鍵前就已經(jīng)完成,則傳輸線(xiàn)上就會(huì)一直觀察不到數(shù)據(jù),觸發(fā)條件也會(huì)一直不成立。

因此,為了確保能夠順利抓取到傳輸?shù)臄?shù)據(jù),需要在傳輸前設(shè)置相應(yīng)的延時(shí),保證當(dāng)點(diǎn)擊singletrigger,chipwatcher開(kāi)始根據(jù)設(shè)置的觸發(fā)條件抓取波形時(shí),數(shù)據(jù)的傳輸還沒(méi)有開(kāi)始。

例程是MCU和FPGA根據(jù)AHB協(xié)議進(jìn)行通信,因此后來(lái)我在MCU的工程中添加了一段延時(shí):

pIYBAGAXdH2AYjZoAAAJl1uA8HY172.png

確保留出足夠的時(shí)間來(lái)操作chipwatcher。
fqj

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

    關(guān)注

    1660

    文章

    22412

    瀏覽量

    636317
  • 芯片
    +關(guān)注

    關(guān)注

    463

    文章

    54010

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    請(qǐng)問(wèn)CW32F030的硬件注意事項(xiàng)有哪些?

    CW32F030的硬件注意事項(xiàng)有哪些
    發(fā)表于 12-25 08:20

    請(qǐng)問(wèn)IAP功能升級(jí)流程中有哪些注意事項(xiàng)

    IAP 功能升級(jí)流程中有哪些注意事項(xiàng)
    發(fā)表于 12-23 07:55

    BNC轉(zhuǎn)接頭接線(xiàn)注意事項(xiàng)

    本文從工程角度總結(jié)BNC轉(zhuǎn)接頭接線(xiàn)過(guò)程的關(guān)鍵注意事項(xiàng),涵蓋阻抗匹配、接線(xiàn)規(guī)范、工藝選擇及檢測(cè)要點(diǎn),幫助用戶(hù)避免常見(jiàn)接線(xiàn)問(wèn)題。
    的頭像 發(fā)表于 12-19 14:04 ?401次閱讀
    BNC轉(zhuǎn)接頭接線(xiàn)<b class='flag-5'>注意事項(xiàng)</b>

    CW32時(shí)鐘運(yùn)行失效檢測(cè)的流程是什么?CW32時(shí)鐘運(yùn)行失效檢測(cè)注意事項(xiàng)有哪些呢?

    CW32時(shí)鐘運(yùn)行失效檢測(cè)的流程是什么?CW32時(shí)鐘運(yùn)行失效檢測(cè)注意事項(xiàng)有哪些?
    發(fā)表于 12-10 07:22

    迅為RK3588開(kāi)發(fā)板Android系統(tǒng)燒寫(xiě)及注意事項(xiàng)

    迅為RK3588開(kāi)發(fā)板Android系統(tǒng)燒寫(xiě)及注意事項(xiàng)
    的頭像 發(fā)表于 12-03 15:17 ?7169次閱讀
    迅為RK3588開(kāi)發(fā)板Android系統(tǒng)燒寫(xiě)及<b class='flag-5'>注意事項(xiàng)</b>

    驅(qū)動(dòng)板PCB布線(xiàn)的注意事項(xiàng)

    PCB Layout 注意事項(xiàng) 1)布局注意事項(xiàng): ●● 整體布局遵循功率回路與小信號(hào)控制回路分開(kāi)布局原則,功率部分和控制部分的 GND 分開(kāi)回流到輸入 GND。 ●● 芯片的放置方向優(yōu)先考慮驅(qū)動(dòng)
    發(fā)表于 12-02 07:40

    CW32F030在使用注意事項(xiàng)有哪些?

    CW32F030在使用注意事項(xiàng)有哪些?
    發(fā)表于 11-18 06:20

    車(chē)載OBC全橋變換器功率MOS管的應(yīng)用及注意事項(xiàng)

    隨著電動(dòng)汽車(chē)的發(fā)展,功率MOS管在汽車(chē)電子的應(yīng)用也日益增多,本文就車(chē)載OBC全橋變換器功率MOS管應(yīng)用及注意事項(xiàng)做簡(jiǎn)單記要。
    的頭像 發(fā)表于 10-21 11:24 ?5714次閱讀
    車(chē)載OBC<b class='flag-5'>中</b>全橋變換器功率MOS管的應(yīng)用及<b class='flag-5'>注意事項(xiàng)</b>

    emWin AppWizard 開(kāi)發(fā)注意事項(xiàng)有哪些?

    emWin AppWizard 開(kāi)發(fā)注意事項(xiàng)
    發(fā)表于 09-04 06:18

    別讓這些細(xì)節(jié)毀了PCBA!焊接注意事項(xiàng)清單

    一站式PCBA加工廠(chǎng)家今天為大家講講PCBA加工電子元器件焊接注意事項(xiàng)有哪些?PCBA加工電子元器件焊接注意事項(xiàng)。 電子元器件焊接關(guān)鍵注意事項(xiàng)
    的頭像 發(fā)表于 07-23 09:26 ?1203次閱讀

    智多晶PLL使用注意事項(xiàng)

    FPGA設(shè)計(jì),PLL(鎖相環(huán))模塊作為核心時(shí)鐘管理單元,通過(guò)靈活的倍頻、分頻和相位調(diào)整功能,為系統(tǒng)提供多路高精度時(shí)鐘信號(hào)。它不僅解決了時(shí)序同步問(wèn)題,還能有效消除時(shí)鐘偏移,提升系統(tǒng)穩(wěn)定性。本文將深入探討智多晶PLL在實(shí)際應(yīng)用
    的頭像 發(fā)表于 06-13 16:37 ?1574次閱讀
    智多晶PLL使用<b class='flag-5'>注意事項(xiàng)</b>

    美國(guó)Odyssey奧德賽電池充電注意事項(xiàng)全解析

    Odyssey奧德賽電池充電注意事項(xiàng)全解析 奧德賽電池作為高性能的深循環(huán)鉛酸電池,廣泛應(yīng)用于汽車(chē)啟動(dòng)、摩托車(chē)、船舶以及備用電源系統(tǒng)。正確的充電方法不僅能夠延長(zhǎng)電池壽命,還能保障其性能穩(wěn)定發(fā)揮
    的頭像 發(fā)表于 05-19 16:31 ?1094次閱讀
    美國(guó)Odyssey奧德賽電池充電<b class='flag-5'>注意事項(xiàng)</b>全解析

    IGBT器件的防靜電注意事項(xiàng)

    IGBT作為功率半導(dǎo)體器件,對(duì)靜電極為敏感。我將從其靜電敏感性原理入手,詳細(xì)闡述使用過(guò)程防靜電的具體注意事項(xiàng)與防護(hù)措施,確保其安全穩(wěn)定運(yùn)行。
    的頭像 發(fā)表于 05-15 14:55 ?1822次閱讀

    設(shè)置射頻網(wǎng)絡(luò)分析儀的測(cè)試條件有哪些注意事項(xiàng)

    建議: 使用矢量誤差校正(VEC)技術(shù)補(bǔ)償頻率響應(yīng)誤差。 3. 連接器與線(xiàn)纜 注意事項(xiàng): 高頻測(cè)試需使用低損耗、高穩(wěn)定性的連接器(如3.5mm、2.92mm)。 損耗對(duì)比: [td]連接器類(lèi)型損耗
    發(fā)表于 05-06 16:02

    掃描電鏡的日常維護(hù)有哪些注意事項(xiàng)

    掃描電鏡日常維護(hù)的注意事項(xiàng)
    的頭像 發(fā)表于 03-24 11:38 ?1175次閱讀
    掃描電鏡的日常維護(hù)有哪些<b class='flag-5'>注意事項(xiàng)</b>?