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