日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 工業(yè)控制 > 電路設計項目集錦
[導讀]本項目演示了如何在Vivado中創(chuàng)建一個簡單的PL設計來控制KR260載波板上的用戶定義LED (DS7和DS8)。該設計使用了一個通過AXI SmartConnect連接到Zynq UltraScale+處理系統(tǒng)(PS)的AXI GPIO IP核,實現(xiàn)了在APU上運行的Linux對led的軟件控制。

本項目演示了如何在Vivado中創(chuàng)建一個簡單的PL設計來控制KR260載波板上的用戶定義LED (DS7和DS8)。該設計使用了一個通過AXI SmartConnect連接到Zynq UltraScale+處理系統(tǒng)(PS)的AXI GPIO IP核,實現(xiàn)了在APU上運行的Linux對led的軟件控制。

這是針對Xilinx KR260的自定義Yocto Linux和網(wǎng)絡啟動的后續(xù)項目,該文章提供了具有PYNQ、XRT和網(wǎng)絡啟動功能的基礎Linux環(huán)境。

問題陳述

在KR260上開發(fā)FPGA應用時,通常需要:

?創(chuàng)建與PS交互的定制PL設計

?快速原型和測試硬件設計,沒有冗長的編譯周期

?在與更復雜的應用程序集成之前驗證硬件功能

?準備與RPU固件或自定義Linux驅動程序集成的硬件設計

傳統(tǒng)FPGA開發(fā)工作流程要求:

?編寫HDL代碼或使用IP積分器

?綜合和實現(xiàn)設計

?生成比特流

?閃爍SD卡或手動加載比特流

?編寫C/ c++應用程序與硬件交互

這個項目通過以下方式簡化了這個工作流程:

?使用Vivado的IP Integrator進行視覺設計

?利用PYNQ進行基于python的硬件交互

?通過網(wǎng)絡引導和動態(tài)比特流加載實現(xiàn)快速迭代

系統(tǒng)架構

硬件體系結構

PL設計包括:

軟件架構

設計組件

Zynq UltraScale+ PS: ARM Cortex-A53內核的處理系統(tǒng)

?M_AXI_HPM0_LPD: PL訪問的低功率域主端口

?PL_CLK0: 100mhz時鐘輸出到PL

?PL_RESETN0:復位信號到PL

AXI SmartConnect:用于AXI總線路由的互連IP

?連接PS主站到PL從站

?處理協(xié)議轉換和地址映射

axis GPIO:通用I/O IP核

?2位輸出通道(GPIO[1:0])

?AXI4-Lite從接口

?基址:由Vivado分配(通常在LPD地址空間0x80000000-0x9FFFFFFF中)

Processor System Reset:復位控制器

?同步復位信號

?提供重置到PL邏輯

先決條件

以前的項目設置

本項目假設您已經(jīng)完成了Custom Yocto Linux & Network Boot項目,該項目提供:

?可網(wǎng)絡引導的Yocto Linux鏡像

?PYNQ 3.1.2 runtime

?XRT和ZOCL支持

?在端口9090上的Jupyter Notebook服務器

?掛載在/nfsroot的NFS根文件系統(tǒng)

循序漸進的指導

步驟1:創(chuàng)建Vivado項目

?啟動Vivado并選擇Create Project

?項目設置:項目名稱:gpio_led

?項目位置:選擇您的工作空間目錄項目類型:RTL項目(默認)

?添加源:單擊Next(我們將使用IP Integrator創(chuàng)建設計)

?添加約束:單擊Next(稍后我們將添加約束)

?默認部件:選擇“KR260”的“Boards”選項卡,選擇“KR260 Robotics Starter kit”,單擊“Next”,完成

步驟2:創(chuàng)建塊設計

?在流程導航器中,單擊創(chuàng)建塊設計名稱:gpio_led

?單擊OK

?添加Zynq UltraScale+ PS:單擊圖中的“+”按鈕搜索Zynq UltraScale+ ps雙擊添加“zynq_ultra_pse_0”

?配置PS:雙擊PS塊在PS配置窗口,導航到PS- pl配置→GeneralEnable M_AXI_HPM0_LPD(低功耗域主端口)單擊運行塊自動化這將啟用M_AXI_HPM0_LPD, PL_CLK0和pl_resetn0單擊確定

步驟3:添加AXI GPIO IP

?添加AXI GPIO:點擊+按鈕搜索AXI GPIO雙擊添加ax_gpio_0

?配置AXI GPIO:雙擊GPIO blockGPIO:Check All OutputsGPIO Width: 2單擊OK

?運行連接自動化:

?單擊“運行連接自動化”

?選擇全部自動化

?這將:連接PS M_AXI_HPM0_LPD到AXI smartconnect連接AXI SmartConnect到AXI GPIOConnect時鐘和復位信號

?單擊OK

步驟4:使GPIO外部

?創(chuàng)建外部端口:右鍵單擊ax_gpio_0 GPIO端口選擇Make ExternalRename the Port to led_output

?驗證設計:單擊驗證設計(F6)確保沒有錯誤或嚴重警告

?創(chuàng)建HDL包裝器:右鍵單擊源代碼中的gpio_led塊設計,選擇創(chuàng)建HDL包裝器,選擇讓Vivado管理包裝器并自動更新,單擊OK

步驟5:添加引腳約束

?創(chuàng)建約束文件:在“源”中,右鍵單擊“約束”→“約束”,選擇“添加源”→“添加或創(chuàng)建約束”,單擊“創(chuàng)建文件”,文件名:gpio_led.xdc

?單擊OK并完成

添加引腳約束:打開gpio_led。XDC并添加:

?保存約束文件

步驟6:綜合設計

?運行合成:在Flow Navigator中單擊Run Synthesis等待合成完成(5-10分鐘取決于PC)

?評審綜合結果:檢查是否有錯誤或嚴重警告,驗證資源利用是否合理

步驟7:執(zhí)行設計

?運行實現(xiàn):點擊運行實現(xiàn)等待實現(xiàn)完成(10-20分鐘,取決于PC)

?檢查實現(xiàn)結果:檢查定時關閉驗證無嚴重警告

步驟8:生成比特流

?生成比特流:單擊“生成比特流”,等待比特流生成(PC機不同,需要5-10分鐘)。

?校驗輸出文件:生成比特流后,校驗這些文件是否存在:gpio_led.runs/impl_1/gpio_led_wrapper.bit - bitstream filegpio_led.gen/sources_1/bd/gpio_led/ hw_handdoff /gpio_led. gen/hwh -硬件描述

步驟9:導出硬件

?導出硬件:在Flow Navigator中,進入File→Export→Export HardwareSelect Include bitstreamClick NextExport位置:Default(項目目錄)文件名:gpio_led.xsa

?單擊“完成”。xsa文件將在下一個項目中用于RPU與Vitis的集成。

步驟10:將文件復制到NFS共享

?定位生成文件:Bitstream: gpio_led_runs /impl_1/gpio_led_wrapper.bit

?硬件描述:gpio_led.gen/sources_1/bd/gpio_led/hw_handoff/gpio_led.hwh

?拷貝到NFS根目錄:在你的NFS服務器上(/nfsroot掛載的地方):

步驟11:創(chuàng)建PYNQ筆記本

?創(chuàng)建筆記本文件:創(chuàng)建led_blink_pynq?!?nfsroot/home/xilinx/Notebook/”目錄下的ipynb

?或者將其創(chuàng)建為Python腳本并進行轉換,或者使用Jupyter的web界面。

步驟12:在KR260上驗證

?運行Notebook:執(zhí)行第一個cell以重置pl_execute第二個cell以加載比特流并運行KR260板上的LED patternObserve LEDs DS7和DS8

預期的行為:

?預期行為:LED0 (DS8)和LED1 (DS7)將以行走模式閃爍:模式1:LED0 ON, LED1 OFF (0x1)模式2:LED0 OFF, LED1 ON (0x2)模式3:Both LEDs ON (0x3)模式4:LED0 OFF, LED1 ON (0x2)重復5次,循環(huán)之間暫停0.5s

了解守則

PYNQ疊加加載

PYNQ的Overlay類:

?將比特流加載到FPGA中

?解析。了解HWH文件的硬件結構

?為每個IP核創(chuàng)建Python對象(例如,overlay.axi_gpio_0)

AXI GPIO訪問

?axi_gpio_0是來自于Vivado塊設計的實例名

?channel1是GPIO通道(channel1是第一個通道)

?GPIO對象提供read()和write()方法

LED控制

?pattern:要寫的值(0x0到0x3為2位)

?mask:表示要影響哪位的位掩碼(0x3 =兩個位)

設計注意事項

PS-PL接口選擇

?使用M_AXI_HPM0_LPD(低功率域)代替FPD(全功率域)

?原理:GPIO控制需要低帶寬,使LPD理想的功率效率

?LPD為GPIO操作提供了足夠的性能,同時功耗更低

?FPD端口更適合高帶寬應用(視頻處理、DMA等)。

時鐘域

?PL時鐘:100 MHz(來自PS PL_CLK0)

?AXI總線時鐘:100mhz(與PL時鐘同步)

?GPIO更新速率:受Python循環(huán)速度限制(本例中為~ 4hz)

GPIO配置

?所有輸出:GPIO配置為僅輸出(無輸入能力)

?寬度:2位(匹配兩個led)

?I/O標準:LVCMOS18(兼容KR260 HP bank)

地址空間

?AXI GPIO基址:0x80000000 (LPD地址空間)

?地址范圍:64 KB(標準的AXI4-Lite slave)

?可以通過PYNQ從Linux用戶空間訪問

注:LPD (Low Power Domain)使用0x80000000地址范圍,適用于GPIO和其他低帶寬外設

下一個步驟

該項目為更高級的PL開發(fā)提供了基礎:

?增加更多的GPIO:擴展到控制額外的led或讀開關

?自定義IP集成:在設計中添加自定義AXI IP內核

?中斷支持:為事件驅動控制配置GPIO中斷

?RPU集成:將LED控制邏輯移動到RPU(見下一個項目)

?下一步:RPU與FreeRTOS集成

本系列的下一個項目將演示:

?使用賽靈思Vitis Unified IDE為RPU構建FreeRTOS應用程序

?使用XRT從APU加載PL位流

?使用remoteproc框架加載RPU固件

?通過libmetal和OpenAMP實現(xiàn)APU-RPU通信

?APU、RPU和PL之間的共享內存

?實時LED控制從RPU,而APU處理高級任務

這將展示KR260的完整異構計算能力,結合:

?APU:用于高級控制和網(wǎng)絡的Linux

?RPU:用于實時、確定性任務的FreeRTOS

?PL:定制硬件加速器和I/O

本文編譯自hackster.io

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

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據(jù)LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉