對于Zynq這樣一個“ARM+可編程邏輯”異構(gòu)處理系統(tǒng)我們已經(jīng)不陌生,其創(chuàng)新性大家也有目共睹。不過想要讓更多的應(yīng)用享受到這一“創(chuàng)新”帶來的紅利,讓其真正“落地”則需要大量系統(tǒng)性的工作,去營造一個完善的生態(tài)系統(tǒng)。從之前幾篇文章中,我們已經(jīng)看到Xilinx在這方面做出的努力,特別是不斷迭代的先進(jìn)的硬件開發(fā)(Vivado)和軟件開發(fā)(Xilinx SDK)工具。而在嵌入式開發(fā)中,還有一個非常重要的環(huán)節(jié)需要關(guān)注,這就是操作系統(tǒng)。
對于日益智能和復(fù)雜的嵌入式系統(tǒng)來說,通過一個嵌入式操作系統(tǒng)來統(tǒng)領(lǐng)軟硬件資源的調(diào)度和控制是必然之選,如果需要更為全面的功能,開發(fā)者就要考慮嵌入式Linux這樣體量更“大”更復(fù)雜的OS。而面對Zynq這樣一個大家都想“嘗鮮”的創(chuàng)新硬件處理平臺,如果能有一種便捷的方式,讓嵌入式Linux在它上面“跑”起來,當(dāng)然是開發(fā)者的福利。
圖1,基于Zynq平臺的嵌入式系統(tǒng)結(jié)構(gòu)
這樣的事兒,Xilinx早已想到并著手布局了,最終呈現(xiàn)在開發(fā)者面前的就是Petalinux。PetaLinux是一個工具集,包括了Linux, u-boot的源代碼、庫,以及Yocto Recipes,可以讓客戶很方便地配置、Build以及Deploy Linux。PetaLinux支持Zynq UltraScale+ MPSoC、 Zynq-7000全可編程SoC,以及MicroBlaze,可與Xilinx硬件設(shè)計工具Vivado協(xié)同工作,大大簡化了Linux系統(tǒng)的開發(fā)。
使用PetaLinux工具,開發(fā)人員可以定制u-boot、Linux內(nèi)核或Linux應(yīng)用,開發(fā)者還可以通過網(wǎng)絡(luò)或JTAG在隨附的全系統(tǒng)仿真器 (QEMU) 或物理硬件上添加新的內(nèi)核、器件驅(qū)動程序、應(yīng)用和庫,以及啟動并測試軟件協(xié)議棧,完成從系統(tǒng)啟動到執(zhí)行的所有操作。在主機(jī)端提供的PetaLinux工具包括:
命令行接界面
應(yīng)用、器件驅(qū)動程序、庫生成器以及開發(fā)模板
可引導(dǎo)的系統(tǒng)鏡像生成器
調(diào)試代理程序
GCC工具
集成的QEMU全系統(tǒng)仿真器
自動化工具
支持Xilinx系統(tǒng)調(diào)試器
圖2,Petalinux工具
值得一提的是,為了能夠讓PetaLinux這一“簡便”工具的使用變得更為簡便,Avnet在近日舉辦的MiniZed Speedway培訓(xùn)活動中,專門設(shè)置了一個培訓(xùn)模塊,從如何安裝PetaLinux開始,全方位講解如何使用PetaLinux在MiniZed板上創(chuàng)建一個嵌入式Linux,并進(jìn)行應(yīng)用開發(fā)。培訓(xùn)中重點(diǎn)的知識點(diǎn)包括:
Petalinux概覽
Petalinux設(shè)計流程介紹
Yacto項(xiàng)目概述
設(shè)備樹(Device Tree)基礎(chǔ)
Petalinux用戶應(yīng)用開發(fā)
定制化Petalinux
這次PetaLinux工具培訓(xùn)相關(guān)的實(shí)驗(yàn)環(huán)節(jié),更突出實(shí)操性,學(xué)員可以學(xué)習(xí)到如何使用PetaLinux工具導(dǎo)入自己的FPGA硬件設(shè)計,集成用戶應(yīng)用程序,以及配置和定制化Linux。在實(shí)驗(yàn)中,還特別通過一個具體的物聯(lián)網(wǎng)應(yīng)用范例,指導(dǎo)用戶使用范例提供的應(yīng)用代碼通過TE Connectivity的HTU21D I2C傳感器獲取數(shù)據(jù),并將周期性發(fā)布的傳感器數(shù)據(jù)利用MQTT協(xié)議將其傳送至云端。通過實(shí)驗(yàn),學(xué)員可以掌握的開發(fā)技能包括:
工具安裝:安裝虛擬機(jī)-VirtualBox、Ubuntu、Vivado、SDK和Petalinux
使用Petalinux創(chuàng)建、配置和創(chuàng)建最小化的Linux
使用MiniZed經(jīng)過Wi-Fi鏈接至LAN
使用Xilinx SDK為MiniZed創(chuàng)建Linux應(yīng)用
IoT應(yīng)用實(shí)例:將MQTT集成到一個Linux 應(yīng)用中
可以說,PetaLinux為Zynq應(yīng)用開發(fā)提供了有力的助推,“讀”懂了TA,就可讓Zynq去應(yīng)對更多應(yīng)用場景的需要,也讓更多基于嵌入式 Linux的用戶應(yīng)用在Zynq上暢快地奔跑起來!
-
ARM
+關(guān)注
關(guān)注
134文章
9030瀏覽量
366539 -
Linux
+關(guān)注
關(guān)注
87文章
11213瀏覽量
208737 -
嵌入式開發(fā)
+關(guān)注
關(guān)注
18文章
1019瀏覽量
47474
原文標(biāo)題:讀懂 PetaLinux:讓 Linux 在 Zynq 上輕松起“跑”
文章出處:【微信號:AvnetAsia,微信公眾號:安富利】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論