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

嵌入式Linux
嵌入式linux和物聯(lián)網(wǎng),嵌入式Linux或RTOS:用于物聯(lián)網(wǎng)

嵌入式linux一個簡單的hello程序編譯及運行示例

嵌入式linux系統(tǒng)和嵌入式android系統(tǒng)的區(qū)別和聯(lián)系

嵌入式linux和物聯(lián)網(wǎng),嵌入式Linux或RTOS:用于物聯(lián)網(wǎng)

【嵌入式Linux(基礎篇)】從標準Linux到嵌入式Linux + 嵌入式Linux知識架構

嵌入式Linux

嵌入式Linux network

嵌入式Linux路線

嵌入式軟件與生態(tài)系統(tǒng):為嵌入式開發(fā)者提供必要的組件

評論