www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 工業(yè)控制 > 電路設(shè)計(jì)項(xiàng)目集錦
[導(dǎo)讀]當(dāng)然,我們可以嘗試通過遵循良好的FPGA開發(fā)過程來減少這種情況,從而實(shí)現(xiàn)結(jié)構(gòu)化方法。這樣的方法可以完成高質(zhì)量的設(shè)計(jì)。通常,該開發(fā)過程將包含幾個(gè)不同的階段、過程和審查,以執(zhí)行結(jié)構(gòu)化方法

最有趣的行業(yè)統(tǒng)計(jì)數(shù)據(jù)之一是,84%的FPGA設(shè)計(jì)至少存在一個(gè)錯(cuò)誤。

當(dāng)然,我們可以嘗試通過遵循良好的FPGA開發(fā)過程來減少這種情況,從而實(shí)現(xiàn)結(jié)構(gòu)化方法。這樣的方法可以完成高質(zhì)量的設(shè)計(jì)。通常,該開發(fā)過程將包含幾個(gè)不同的階段、過程和審查,以執(zhí)行結(jié)構(gòu)化方法,包括:

?系統(tǒng)需求評(píng)審——評(píng)審系統(tǒng)需求和驗(yàn)證方法,以及符合/不符合矩陣。

?初步設(shè)計(jì)評(píng)審——根據(jù)要求對(duì)建筑設(shè)計(jì)進(jìn)行評(píng)審,以確保滿足要求。審查架構(gòu)的可行性和技術(shù)風(fēng)險(xiǎn)。

?關(guān)鍵設(shè)計(jì)評(píng)審——根據(jù)需求和體系結(jié)構(gòu)評(píng)審已實(shí)現(xiàn)的設(shè)計(jì)及其驗(yàn)證包、仿真和定時(shí)關(guān)閉/實(shí)現(xiàn)報(bào)告。

遵循這個(gè)過程,當(dāng)然,需要審查階段的檢查表和與供應(yīng)商規(guī)則一致的優(yōu)秀編碼/設(shè)計(jì)指南,例如超快編碼方法。

一旦FPGA設(shè)計(jì)完成,項(xiàng)目離完成還有很長的路要走。

設(shè)計(jì)必須集成到硬件中,與現(xiàn)實(shí)世界的傳感器、執(zhí)行器、驅(qū)動(dòng)器和應(yīng)用軟件接口。

在此階段,在產(chǎn)品發(fā)布之前,有幾個(gè)技術(shù)挑戰(zhàn)/風(fēng)險(xiǎn)可能導(dǎo)致需要在硬件上執(zhí)行調(diào)試。

在硬件上進(jìn)行調(diào)試需要能夠理解邏輯設(shè)計(jì)、應(yīng)用軟件和現(xiàn)實(shí)世界之間的交互——不幸的是,有時(shí)現(xiàn)實(shí)世界與驗(yàn)證設(shè)計(jì)的方式是不同的——例如,不同的時(shí)序、操作模式或意想不到的硬件/軟件交互。

當(dāng)這種情況發(fā)生時(shí),我們需要能夠找到問題的根本原因并采取糾正措施。在集成過程中發(fā)現(xiàn)的任何東西都應(yīng)該反饋到模擬中,以確保未來的產(chǎn)品更新/回歸測試不會(huì)忘記實(shí)驗(yàn)室的慘痛教訓(xùn)。

為了做到這一點(diǎn),作為工程師,我們有幾個(gè)工具-從簡單的萬用表測量電壓和電流,到邏輯分析儀/模式發(fā)生器和示波器。

然而,有時(shí)我們想要內(nèi)部查看我們的SoC/FPGA,以了解IP核或嵌入式硬核和軟核處理器之間的交互。

AMD ChipScope是集成到Vivado設(shè)計(jì)套件中的片上調(diào)試和驗(yàn)證工具包。它使開發(fā)人員能夠?qū)崟r(shí)觀察,捕獲FPGA或SoC設(shè)計(jì)的內(nèi)部信號(hào)并與之交互,而無需外部探針或邏輯分析儀。

ChipScope工具包的關(guān)鍵要素之一是集成邏輯分析儀。

什么是ILA

集成邏輯分析儀(ILA)是嵌入在AMD fpga和soc中的硬件調(diào)試工具,允許工程師捕獲和分析內(nèi)部數(shù)字信號(hào)。

ILA提供實(shí)時(shí)硬件調(diào)試功能,允許用戶設(shè)置觸發(fā)條件并直接在FPGA結(jié)構(gòu)上捕獲信號(hào)數(shù)據(jù)。ILA能夠捕獲具有一系列接口定義的信號(hào),從簡單的邏輯信號(hào)和矢量到AXI和AXI流接口。

System ILA是一個(gè)增強(qiáng)版本,可以跨多個(gè)接口和時(shí)鐘域進(jìn)行更全面的系統(tǒng)級(jí)調(diào)試。它提供監(jiān)視AXI接口、內(nèi)存控制器和其他系統(tǒng)互連的功能。

與基本ILA相比,系統(tǒng)ILA可以捕獲更長的跟蹤緩沖區(qū),支持更復(fù)雜的觸發(fā)條件,并同時(shí)監(jiān)視更多數(shù)量的信號(hào)。這使得它對(duì)于調(diào)試復(fù)雜的片上系統(tǒng)(SoC)設(shè)計(jì)特別有價(jià)值,其中多個(gè)組件通過不同的接口和協(xié)議相互交互。

調(diào)試方法

在調(diào)試應(yīng)用程序時(shí),我們需要采用邏輯方法。因此,在使用System ILA或ILA時(shí),我們應(yīng)該理解FPGA設(shè)計(jì)是一個(gè)迭代過程,如果我們從邏輯上解決問題,這是最成功的。

最好的方法是:

?把問題分解成更小的部分

?通過減少變量和變化來簡化

?做一個(gè)預(yù)測,然后驗(yàn)證結(jié)果

?在設(shè)計(jì)周期的早期計(jì)劃如何以及在哪里進(jìn)行調(diào)試

插裝方法

當(dāng)在實(shí)際設(shè)計(jì)中使用集成邏輯分析儀(ILA)時(shí),重要的是要有策略地使用儀器來平衡調(diào)試可見性和FPGA資源使用。

ILAs消耗邏輯和塊RAM,這在已經(jīng)接近容量的設(shè)備中成為一個(gè)關(guān)鍵問題。

捕獲深度和被監(jiān)測信號(hào)的寬度直接影響B(tài)RAM的使用——更寬的探針和更長的捕獲窗口會(huì)迅速耗盡可用內(nèi)存。

在早期的版本中,遵循上面概述的方法,重點(diǎn)關(guān)注關(guān)鍵控制信號(hào)、重置線和狀態(tài)或錯(cuò)誤指示器,因?yàn)檫@些通常提供對(duì)系統(tǒng)行為的直接洞察,并幫助在調(diào)試周期的早期識(shí)別問題。

系統(tǒng)內(nèi)的關(guān)鍵AXI總線,特別是那些最接近處理系統(tǒng)接口的總線,如Zynq UltraScale+ mpsoc上的M_AXI_HPM_FPD(高性能主)和S_AXI_HP_FPD(高性能從),也應(yīng)該考慮用于儀器儀表。

雖然這些寬總線是資源密集型的,但它們承載著可編程邏輯和處理系統(tǒng)之間的基本流量,并且可以揭示數(shù)據(jù)處理和系統(tǒng)集成中的微妙問題。

從精心選擇的控制、復(fù)位、狀態(tài)/錯(cuò)誤和這些關(guān)鍵AXI接口的混合開始,在適當(dāng)?shù)牟东@深度提供了對(duì)系統(tǒng)級(jí)行為的有價(jià)值的可見性,同時(shí)為迭代調(diào)試改進(jìn)保留了空間。

演示項(xiàng)目

為了演示如何在FPGA設(shè)計(jì)中利用ila提供的功能,我們將創(chuàng)建一個(gè)簡單的演示項(xiàng)目。

該項(xiàng)目將針對(duì)安富利ZU板,并連接到Digilent ZMod AWG以生成簡單的模擬輸出。

在這個(gè)項(xiàng)目中,我將使用兩種不同的ILA來幫助確保正確的操作。

?ILA -用于監(jiān)控時(shí)鐘向?qū)фi定信號(hào)、DAC初始化信號(hào)和DAC錯(cuò)誤信號(hào)

?系統(tǒng)ILA -監(jiān)控系統(tǒng)中的AXI和AXI流數(shù)據(jù)

第一步是創(chuàng)建一個(gè)新項(xiàng)目。如果未安裝ZU板,則使用Vivado中的Boards選項(xiàng)卡下載。

一旦創(chuàng)建了項(xiàng)目,下一步就是創(chuàng)建Vivado設(shè)計(jì)。要做到這一點(diǎn),第一步是創(chuàng)建一個(gè)塊設(shè)計(jì)。

隨著塊設(shè)計(jì)的開放,添加Zynq UltraScale+ MPSoC處理系統(tǒng)。

運(yùn)行塊自動(dòng)化配置處理系統(tǒng)為ZU板定義。

在配置了處理系統(tǒng)之后,我們可以從Vivado庫中添加ZMod AWG控制器。

雙擊IP并選擇“將IP添加到塊設(shè)計(jì)”。

ZMod AWG需要一個(gè)軸流輸入,而處理系統(tǒng)有一個(gè)AXI4輸出。然而,Vivado能夠?qū)崿F(xiàn)必要的內(nèi)存映射到流轉(zhuǎn)換架構(gòu)。連接ZMod AWG輸入數(shù)據(jù)流端口到處理系統(tǒng)的h0 - fpd端口。

這將打開一個(gè)連接自動(dòng)化對(duì)話框。對(duì)于時(shí)鐘,從處理系統(tǒng)中選擇100 MHz輸出時(shí)鐘。

這將生成如下圖所示的圖表。將系統(tǒng)時(shí)鐘連接到與DAC I/O時(shí)鐘相同的時(shí)鐘,因?yàn)閮烧叨紝⑻幱?00?MHz。

重新定義軸流FIFO并取消啟用傳輸控制選項(xiàng)。

添加一個(gè)新的時(shí)鐘向?qū)Р慈缦滤具M(jìn)行配置;我們想要一個(gè)100?MHz的輸出偏移距輸入90度。

如圖所示,將時(shí)鐘連接到ZMod AWG的DAC CLK輸入端。

連接復(fù)位。

增加一個(gè)常數(shù)塊設(shè)置為DAC使能的邏輯高。

添加一個(gè)常數(shù)塊設(shè)置為邏輯低禁用測試模式。

除了ZMod AWG塊上的頂部兩個(gè)端口,并將它們標(biāo)記為外部。

添加系統(tǒng)ILA;我們將使用它來監(jiān)視系統(tǒng)中的AXI和axis - stream數(shù)據(jù)。

按如下方式配置System ILA屬性;啟用其觸發(fā)輸入和輸出端口。這將使我們能夠與Vitis Unified的軟件開發(fā)進(jìn)行交叉探索。

0號(hào)槽位保持當(dāng)前配置不變。

改變槽1的屬性來監(jiān)控軸流。

如下所示連接System ILA插槽0和插槽1,以及時(shí)鐘和復(fù)位。

重新定制處理系統(tǒng)以禁用HPM1,并啟用PS到PL和PL到PS的交叉觸發(fā)。這種交叉觸發(fā)允許ILA和Vitis Unified環(huán)境相互觸發(fā)。

輸出觸發(fā)是指在Vitis中遇到斷點(diǎn)時(shí),也可以同時(shí)觸發(fā)所連接的ILA,以觀察斷點(diǎn)觸發(fā)時(shí)硬件的行為。

輸入觸發(fā)是指當(dāng)ILA到達(dá)它的觸發(fā)器時(shí),處理器上的軟件執(zhí)行也停止,使得軟件的狀態(tài)也可以被觀察到。

如圖所示連接Trigger端口。

添加一個(gè)ILA;我們將用它來監(jiān)測設(shè)計(jì)中的一些簡單的邏輯信號(hào)。

用三個(gè)輸入探針配置ILA,如下所示。

如下所示連接ILA;我們將監(jiān)視時(shí)鐘向?qū)фi定信號(hào),DAC初始化信號(hào)和DAC錯(cuò)誤信號(hào)。

最終的設(shè)計(jì)應(yīng)該如下所示。

驗(yàn)證設(shè)計(jì),創(chuàng)建包裝器,并使用下面提供的XDC文件構(gòu)建比特流。

HW設(shè)置

確保硬件設(shè)置如下所示,將ZU板通過PL HSIO端口連接到ZMod DAC。DAC通道1 SMA的輸出應(yīng)使用SMA- bnc電纜連接到示波器。

此外,確保ZU板通過USB- c連接供電,并通過USB JTAG連接到開發(fā)機(jī)器。

SW設(shè)計(jì)

為了開始軟件設(shè)計(jì),我們首先需要確保ZU板上的啟動(dòng)模式設(shè)置為JTAG。我們將使用JTAG端口訪問ILAs。如果您正在使用PetaLinux,您也可以通過以太網(wǎng)進(jìn)行訪問,如本項(xiàng)目所示;然而,這超出了本項(xiàng)目的范圍。

在Vitis Unified中,基于剛剛導(dǎo)出的XSA創(chuàng)建一個(gè)新的硬件平臺(tái)。

選擇剛剛從Vivado導(dǎo)出的XSA。

選擇一個(gè)獨(dú)立的操作系統(tǒng)和第一個(gè)A53處理器。

完成平臺(tái)的創(chuàng)建。

下一步是創(chuàng)建應(yīng)用程序項(xiàng)目。對(duì)于這個(gè)項(xiàng)目,我們將使用Hello World模板,并將其命名為AWG_Example。

選擇剛剛創(chuàng)建的平臺(tái)。

按照指示離開域。

完成應(yīng)用程序的創(chuàng)建。

下一步是構(gòu)建應(yīng)用程序并使用應(yīng)用程序的啟動(dòng)配置交叉探測。json文件。

要添加交叉探測(我們需要添加兩個(gè),每個(gè)方向一個(gè)),選擇add Item選項(xiàng)。

我們將設(shè)置的第一個(gè)交叉探針使觸發(fā)器能夠使用FTM從A53-0處理器轉(zhuǎn)到可編程邏輯,從而轉(zhuǎn)到系統(tǒng)ILA。

一旦設(shè)置了第一個(gè)交叉探測,我們需要添加另一個(gè)從可編程邏輯到A53處理器的交叉探測。

現(xiàn)在,我們可以調(diào)試標(biāo)準(zhǔn)的Hello World應(yīng)用程序,以確保該流程按預(yù)期工作,并提前查看ZMod AWG狀態(tài)。

我們將在終端中看到輸出;這有助于證明我們有一個(gè)具有基本功能的構(gòu)建。

在開發(fā)主應(yīng)用軟件之前,下一步是確認(rèn)ZMod AWG已被正確配置和初始化。這里的任何錯(cuò)誤都表明時(shí)鐘或控制信號(hào)映射有問題。

在Vivado中,打開硬件管理器,并在ILA1上,仔細(xì)檢查時(shí)鐘向?qū)欠癖绘i定并且DAC已初始化。由于這些是靜態(tài)信號(hào),我們可以立即觸發(fā)ILA。

如果我們看到一個(gè)配置錯(cuò)誤,我們將需要進(jìn)一步研究ZMod AWG的接口和時(shí)鐘。

下一步是在系統(tǒng)ILA上啟用觸發(fā)器并武裝它。

然后我們可以開發(fā)主應(yīng)用軟件,對(duì)于本例,它將向DAC中寫入一個(gè)斜坡計(jì)數(shù)。這是一種通常在集成早期執(zhí)行的測試,以確保DAC沒有丟失的位或卡住的代碼。

應(yīng)用程序代碼如下:

下一步是使用System ILA檢查數(shù)據(jù)是否正確地傳輸?shù)捷S流FIFO。

在for循環(huán)中添加一個(gè)斷點(diǎn)來執(zhí)行寫操作。

當(dāng)遇到斷點(diǎn)時(shí),ILA也將觸發(fā),并且可以觀察到AXI寫入。

這證明數(shù)據(jù)正在寫入軸流FIFO?,F(xiàn)在我們需要檢查數(shù)據(jù)是否從FIFO輸出。

在Vivado中,更改System ILA觸發(fā)器,并將其設(shè)置為在axis - stream上有效的數(shù)據(jù)上升沿觸發(fā),然后武裝ILA。

重新啟動(dòng)應(yīng)用程序軟件,ILA將隨著軟件的停止而觸發(fā),就像在斷點(diǎn)處一樣。我們可以看到數(shù)百個(gè)數(shù)據(jù)包正在輸出。

放大后,您可以看到斜坡的值和值按預(yù)期增加。

在Vitis中,您還將看到該軟件已被停止。

當(dāng)我們將輸出驅(qū)動(dòng)到DAC時(shí),這應(yīng)該會(huì)導(dǎo)致DAC輸出端出現(xiàn)模擬輸出。然而,在連接到硬件的示波器上,沒有觀察到任何信號(hào)。

我們知道處理系統(tǒng)正在生成數(shù)據(jù),我們知道它正在被發(fā)送到ZMod DAC驅(qū)動(dòng)程序,我們知道ZMod被正確初始化-但是作用域中沒有出現(xiàn)任何東西。

讓我們看看ZMod AWG用戶指南,看看我們是否遺漏了什么。該指南的鏈接在這里。

閱讀文檔,我們看到了這個(gè)問題:目前,測試波形被放置在較低的位,但ZMod AWG期望它在較高的位。

糾正這個(gè)錯(cuò)誤(很有幫助,這是一個(gè)軟件修復(fù))可以再次在ILA中驗(yàn)證;但是,我們現(xiàn)在可以在作用域輸出中看到結(jié)果。

由于DAC代碼是有簽名的,因此將計(jì)數(shù)器從0調(diào)到最大刻度將導(dǎo)致作用域顯示一個(gè)正斜坡,然后在設(shè)置MSB后顯示一個(gè)負(fù)斜坡。

總結(jié)

本項(xiàng)目展示了我們?nèi)绾问褂肁MD ChipScope調(diào)試解決方案、ILAs和System ILAs在實(shí)時(shí)項(xiàng)目中發(fā)現(xiàn)問題并快速識(shí)別它們。該項(xiàng)目還概述了如何通過使用交叉探測功能來調(diào)試硬件和軟件交互,從而可以輕松地分析集成問題。

ChipScope, ILA和System ILA是開發(fā)人員可以用來快速輕松地調(diào)試應(yīng)用程序的重要元素。

本文編譯自hackster.io

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在數(shù)字化浪潮席卷全球的今天,F(xiàn)PGA技術(shù)正成為驅(qū)動(dòng)創(chuàng)新的核心引擎。2025年8月21日,深圳將迎來一場聚焦FPGA技術(shù)與產(chǎn)業(yè)應(yīng)用的盛會(huì)——2025安路科技FPGA技術(shù)沙龍。本次沙龍以“定制未來 共建生態(tài)”為主題,匯聚行業(yè)...

關(guān)鍵字: FPGA 核心板 開發(fā)板

在現(xiàn)代電子系統(tǒng)中,現(xiàn)場可編程門陣列(FPGA)憑借其開發(fā)時(shí)間短、成本效益高以及靈活的現(xiàn)場重配置與升級(jí)等諸多優(yōu)點(diǎn),被廣泛應(yīng)用于各種產(chǎn)品領(lǐng)域。從通信設(shè)備到工業(yè)控制,從汽車電子到航空航天,F(xiàn)PGA 的身影無處不在。為了充分發(fā)揮...

關(guān)鍵字: 可編程門陣列 FPGA 數(shù)字電源

2025年8月4日 – 提供超豐富半導(dǎo)體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿(mào)澤電子 (Mouser Electronics) 即日起開售Altera?的Agilex? 3 FPGA C系列開發(fā)套件。此開...

關(guān)鍵字: FPGA 邊緣計(jì)算 嵌入式應(yīng)用

內(nèi)窺鏡泛指經(jīng)自然腔道或人工孔道進(jìn)入體內(nèi),并對(duì)體內(nèi)器官或結(jié)構(gòu)進(jìn)行直接觀察和對(duì)疾病進(jìn)行診斷的醫(yī)療設(shè)備,一般由光學(xué)鏡頭、冷光源、光導(dǎo)纖維、圖像傳感器以及機(jī)械裝置等構(gòu)成。文章介紹了一款基于兩片圖像傳感器和FPGA組成的微型3D內(nèi)...

關(guān)鍵字: 微創(chuàng) 3D內(nèi)窺鏡 OV6946 FPGA

運(yùn)用單片機(jī)和FPGA芯片作為主控制器件 , 單片機(jī)接收從PC機(jī)上傳過來的顯示內(nèi)容和顯示控制命令 , 通過命令解釋和數(shù)據(jù)轉(zhuǎn)換 , 生成LED顯示屏所需要的數(shù)據(jù)信號(hào)和同步的控制信號(hào)— 數(shù)據(jù)、時(shí)鐘、行同步和面同步 。FPGA芯...

關(guān)鍵字: 單片機(jī) FPGA LED顯示屏

在異構(gòu)計(jì)算系統(tǒng)中,ARM與FPGA的協(xié)同工作已成為高性能計(jì)算的關(guān)鍵架構(gòu)。本文基于FSPI(Fast Serial Peripheral Interface)四線模式,在150MHz時(shí)鐘頻率下實(shí)現(xiàn)10.5MB/s的可靠數(shù)據(jù)...

關(guān)鍵字: ARM FPGA FSPI

在全球FPGA市場被Xilinx(AMD)與Intel壟斷的格局下,國產(chǎn)FPGA廠商高云半導(dǎo)體通過構(gòu)建自主IP核生態(tài)與智能時(shí)序約束引擎,走出差異化高端化路徑。本文深入解析高云半導(dǎo)體FPGA工具鏈的兩大核心技術(shù)——全棧IP...

關(guān)鍵字: FPGA 高云半導(dǎo)體

2025年6月12日,由安路科技主辦的2025 FPGA技術(shù)沙龍?jiān)谀暇┱秸匍_,深圳市米爾電子有限公司(簡稱:米爾電子)作為國產(chǎn)FPGA的代表企業(yè)出席此次活動(dòng)。米爾電子發(fā)表演講,并展出米爾基于安路飛龍派的核心板和解決方案...

關(guān)鍵字: FPGA 核心板 開發(fā)板

高 I/O、低功耗及先進(jìn)的安全功能,適用于成本敏感型邊緣應(yīng)用

關(guān)鍵字: FPGA I/O 機(jī)器視覺

本文討論如何為特定應(yīng)用選擇合適的溫度傳感器。我們將介紹不同類型的溫度傳感器及其優(yōu)缺點(diǎn)。最后,我們將探討遠(yuǎn)程和本地檢測技術(shù)的最新進(jìn)展如何推動(dòng)科技進(jìn)步,從而創(chuàng)造出更多更先進(jìn)的溫度傳感器。

關(guān)鍵字: 溫度傳感器 CPU FPGA
關(guān)閉