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

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

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

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

問(wèn)題陳述

在KR260上開(kāi)發(fā)FPGA應(yīng)用時(shí),通常需要:

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

?快速原型和測(cè)試硬件設(shè)計(jì),沒(méi)有冗長(zhǎng)的編譯周期

?在與更復(fù)雜的應(yīng)用程序集成之前驗(yàn)證硬件功能

?準(zhǔn)備與RPU固件或自定義Linux驅(qū)動(dòng)程序集成的硬件設(shè)計(jì)

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

?編寫(xiě)HDL代碼或使用IP積分器

?綜合和實(shí)現(xiàn)設(shè)計(jì)

?生成比特流

?閃爍SD卡或手動(dòng)加載比特流

?編寫(xiě)C/ c++應(yīng)用程序與硬件交互

這個(gè)項(xiàng)目通過(guò)以下方式簡(jiǎn)化了這個(gè)工作流程:

?使用Vivado的IP Integrator進(jìn)行視覺(jué)設(shè)計(jì)

?利用PYNQ進(jìn)行基于python的硬件交互

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

系統(tǒng)架構(gòu)

硬件體系結(jié)構(gòu)

PL設(shè)計(jì)包括:

軟件架構(gòu)

設(shè)計(jì)組件

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

?M_AXI_HPM0_LPD: PL訪(fǎng)問(wèn)的低功率域主端口

?PL_CLK0: 100mhz時(shí)鐘輸出到PL

?PL_RESETN0:復(fù)位信號(hào)到PL

AXI SmartConnect:用于AXI總線(xiàn)路由的互連IP

?連接PS主站到PL從站

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

axis GPIO:通用I/O IP核

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

?AXI4-Lite從接口

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

Processor System Reset:復(fù)位控制器

?同步復(fù)位信號(hào)

?提供重置到PL邏輯

先決條件

以前的項(xiàng)目設(shè)置

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

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

?PYNQ 3.1.2 runtime

?XRT和ZOCL支持

?在端口9090上的Jupyter Notebook服務(wù)器

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

循序漸進(jìn)的指導(dǎo)

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

?啟動(dòng)Vivado并選擇Create Project

?項(xiàng)目設(shè)置:項(xiàng)目名稱(chēng):gpio_led

?項(xiàng)目位置:選擇您的工作空間目錄項(xiàng)目類(lèi)型:RTL項(xiàng)目(默認(rèn))

?添加源:?jiǎn)螕鬘ext(我們將使用IP Integrator創(chuàng)建設(shè)計(jì))

?添加約束:?jiǎn)螕鬘ext(稍后我們將添加約束)

?默認(rèn)部件:選擇“KR260”的“Boards”選項(xiàng)卡,選擇“KR260 Robotics Starter kit”,單擊“Next”,完成

步驟2:創(chuàng)建塊設(shè)計(jì)

?在流程導(dǎo)航器中,單擊創(chuàng)建塊設(shè)計(jì)名稱(chēng):gpio_led

?單擊OK

?添加Zynq UltraScale+ PS:?jiǎn)螕魣D中的“+”按鈕搜索Zynq UltraScale+ ps雙擊添加“zynq_ultra_pse_0”

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

步驟3:添加AXI GPIO IP

?添加AXI GPIO:點(diǎn)擊+按鈕搜索AXI GPIO雙擊添加ax_gpio_0

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

?運(yùn)行連接自動(dòng)化:

?單擊“運(yùn)行連接自動(dòng)化”

?選擇全部自動(dòng)化

?這將:連接PS M_AXI_HPM0_LPD到AXI smartconnect連接AXI SmartConnect到AXI GPIOConnect時(shí)鐘和復(fù)位信號(hào)

?單擊OK

步驟4:使GPIO外部

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

?驗(yàn)證設(shè)計(jì):?jiǎn)螕趄?yàn)證設(shè)計(jì)(F6)確保沒(méi)有錯(cuò)誤或嚴(yán)重警告

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

步驟5:添加引腳約束

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

?單擊OK并完成

添加引腳約束:打開(kāi)gpio_led。XDC并添加:

?保存約束文件

步驟6:綜合設(shè)計(jì)

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

?評(píng)審綜合結(jié)果:檢查是否有錯(cuò)誤或嚴(yán)重警告,驗(yàn)證資源利用是否合理

步驟7:執(zhí)行設(shè)計(jì)

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

?檢查實(shí)現(xiàn)結(jié)果:檢查定時(shí)關(guān)閉驗(yàn)證無(wú)嚴(yán)重警告

步驟8:生成比特流

?生成比特流:?jiǎn)螕簟吧杀忍亓鳌?,等待比特流生?PC機(jī)不同,需要5-10分鐘)。

?校驗(yàn)輸出文件:生成比特流后,校驗(yàn)這些文件是否存在: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:導(dǎo)出硬件

?導(dǎo)出硬件:在Flow Navigator中,進(jìn)入File→Export→Export HardwareSelect Include bitstreamClick NextExport位置:Default(項(xiàng)目目錄)文件名:gpio_led.xsa

?單擊“完成”。xsa文件將在下一個(gè)項(xiàng)目中用于RPU與Vitis的集成。

步驟10:將文件復(fù)制到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服務(wù)器上(/nfsroot掛載的地方):

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

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

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

步驟12:在KR260上驗(yàn)證

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

預(yù)期的行為:

?預(yù)期行為: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)重復(fù)5次,循環(huán)之間暫停0.5s

了解守則

PYNQ疊加加載

PYNQ的Overlay類(lèi):

?將比特流加載到FPGA中

?解析。了解HWH文件的硬件結(jié)構(gòu)

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

AXI GPIO訪(fǎng)問(wèn)

?axi_gpio_0是來(lái)自于Vivado塊設(shè)計(jì)的實(shí)例名

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

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

LED控制

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

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

設(shè)計(jì)注意事項(xiàng)

PS-PL接口選擇

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

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

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

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

時(shí)鐘域

?PL時(shí)鐘:100 MHz(來(lái)自PS PL_CLK0)

?AXI總線(xiàn)時(shí)鐘:100mhz(與PL時(shí)鐘同步)

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

GPIO配置

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

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

?I/O標(biāo)準(zhǔn):LVCMOS18(兼容KR260 HP bank)

地址空間

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

?地址范圍:64 KB(標(biāo)準(zhǔn)的AXI4-Lite slave)

?可以通過(guò)PYNQ從Linux用戶(hù)空間訪(fǎng)問(wèn)

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

下一個(gè)步驟

該項(xiàng)目為更高級(jí)的PL開(kāi)發(fā)提供了基礎(chǔ):

?增加更多的GPIO:擴(kuò)展到控制額外的led或讀開(kāi)關(guān)

?自定義IP集成:在設(shè)計(jì)中添加自定義AXI IP內(nèi)核

?中斷支持:為事件驅(qū)動(dòng)控制配置GPIO中斷

?RPU集成:將LED控制邏輯移動(dòng)到RPU(見(jiàn)下一個(gè)項(xiàng)目)

?下一步:RPU與FreeRTOS集成

本系列的下一個(gè)項(xiàng)目將演示:

?使用賽靈思Vitis Unified IDE為RPU構(gòu)建FreeRTOS應(yīng)用程序

?使用XRT從APU加載PL位流

?使用remoteproc框架加載RPU固件

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

?APU、RPU和PL之間的共享內(nèi)存

?實(shí)時(shí)LED控制從RPU,而APU處理高級(jí)任務(wù)

這將展示KR260的完整異構(gòu)計(jì)算能力,結(jié)合:

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

?RPU:用于實(shí)時(shí)、確定性任務(wù)的FreeRTOS

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

本文編譯自hackster.io

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

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

關(guān)鍵字: 驅(qū)動(dòng)電源

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

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

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

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

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

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

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

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

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

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

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

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

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

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

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

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉