亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Peta Linux操作系統在Micro Blaze系統中的移植※

        2010-06-25 02:45:06張元銅向勇鄭志國
        單片機與嵌入式系統應用 2010年7期
        關鍵詞:源碼內核命令

        張元銅,向勇,鄭志國

        (1.重慶通信學院,重慶 400035; 2.重慶師范大學; 3.總參通信部駐廣州地區(qū)軍事代表室)

        張元銅(講師),主要研究方向為數字系統設計與嵌入式系統;向勇(碩士研究生),主要研究方向為計算機技術;鄭志國,主要研究方向為數字通信技術。

        FPGA生產商Xilin x公司提供了全面的嵌入式處理器解決方案,包括PowerPC、Micro Blaze和PicoBlaze三款RISC結構的處理器核。其中,Micro Blaze是32位嵌入式軟核處理器解決方案,支持Core Connect總線的標準外設集合,具有兼容性、可配置性以及重復利用性,能夠根據成本和性能要求提供高性價比的處理性能。

        支持Micro Blaze處理器的嵌入式操作系統很多,比如μC/OS-II、BuleCat ME Linux 、RTA MB 、ThreadX 、PetaL-inux等等。本文介紹了Peta Logix公司發(fā)布的Peta Linux操作系統,并分析了Xilinx公司所使用BSP自動生成技術,最后總結出Peta Linux操作系統在Micro Blaze平臺上的移植方法和步驟。

        1 Peta Linux操作系統介紹

        Peta Linux操作系統是面向Micro Blaze軟核處理器的全功能嵌入式Linux操作系統。其發(fā)布采用了“all in one”的整合方式,將針對Micro Blaze處理器定制的Linux2.4/2.6內核源碼、U-boot源碼、相關的開發(fā)工具以及開發(fā)板參考硬件平臺配置,集成在一個壓縮包內發(fā)行,極大地方便了開發(fā)人員的使用。該操作系統主要具有以下幾大特點:

        ①針對FPGA嵌入式開發(fā)的特點采用了板級支持包。

        ②自動生成工具,可以根據用戶定義的嵌入式硬件平臺信息自動生成板級支持包,簡化了操作系統的移植。

        ③Peta Linux發(fā)布的源碼樹中包含了部分常用IP核的驅動程序(如GPIO 、EthernetLite、UartLite 等),減少了用戶移植、編寫驅動程序的工作量。

        ④根據設計的不同需求,可以通過配置菜單將Peta Linux配置成without MMU support和MM U support兩種版本,即μClinux和標準 Linux。

        Peta Linux包含了大量的腳本命令(如petalinux-copy-autoconfig、petalinux-new-platform、petalinux-new-app等),給用戶的使用提供了便捷條件。

        頂級目錄下各子目錄的結構和功能如圖1所示。在Peta Linux的目錄結構中有硬件、軟件和工具3個頂級目錄,分別包含與之相關的文件和代碼。針對宿主機操作系統不同的 shell類型,具有 C shell和 Bash shell兩種Peta Linux環(huán)境變量設置腳本。

        圖1 Peta Linux操作系統目錄結構

        2 基于MLD的BSP生成技術

        在嵌入式系統中,BSP(Board Support Package,板級支持包)是指給目標板提供特定操作系統支持的代碼,介于底層硬件和操作系統之間,是完成嵌入式操作系統移植和相關驅動程序開發(fā)的關鍵。

        Xilinx公司在嵌入式開發(fā)軟件XPS中采用了以MLD(Microprocessor Library Definition,微處理器庫定義)專有格式為基礎的動態(tài)可定制的BSP生成技術,實現了BSP和軟件庫的自動化生成。每個操作系統和庫都有各自唯一的MLD文件和與之相關的TCL(Tool Command Language,工具命令語言)文件。MLD文件是數據定義文件,通過XPS中設置的一組參數來定義庫和操作系統。這些參數值將保存在XPS內部數據庫中,在輸出生成時供腳本文件使用。TCL文件是腳本文件,包含了一組可以訪問整個設計數據庫的程序。XPS軟件通過調用它來創(chuàng)建定制BSP。利用MLD生成BSP的流程如圖2所示。

        圖2 BSP生成流程

        3 Peta Linux內核的移植方法

        3.1 搭建交叉開發(fā)環(huán)境

        為了便于在Windows平臺下開發(fā)基于 Peta Linux的嵌入式系統,本文利用VMWare虛擬機軟件來搭建交叉開發(fā)環(huán)境,如圖3所示。首先,在主機的Windows平臺上安裝虛擬機軟件,然后通過虛擬機來安裝紅帽子企業(yè)版Red Hat Enterprise 4,最后在桌面Linux系統中安裝Peta Linux源碼樹。Windows和Linux兩種系統間的數據交換通過設置共享目錄來實現。

        圖3 搭建交叉開發(fā)環(huán)境

        Peta Linux操作系統采用整合方式發(fā)布,下載的壓縮包內已經包含了完整的交叉開發(fā)工具鏈,安裝方法非常簡單。

        (1)建立工作目錄

        在Linux操作系統的終端模式下運行“mkdir/home/embed”命令,新建embed文件夾作為嵌入式開發(fā)的工作目錄。

        (2)解壓壓縮包

        通過共享目錄把Peta Logix公司發(fā)布的壓縮包petalinux-v0.40-rc2.tar.gz拷貝到embed工作目錄中。然后在終端模式下運行“tar-zxvfpetalinux-v0.40-rc2.tar.gz”解壓縮命令。解壓縮完成后,在工作目錄中會生成一個與壓縮包相同名稱的文件夾,Peta Linux內核源碼、U-boot源碼以及開發(fā)工具等資源均在其中的各個目錄中。

        (3)設置環(huán)境變量

        Peta Linux系統已經為用戶編寫好了設置環(huán)境變量的腳本文件settings.sh和settings.csh。用戶只需要根據宿主機操作系統shell的類型,運行相應的環(huán)境變量配置腳本即可完成Peta Linux開發(fā)環(huán)境的設置。需要注意的是,每次進入終端模式都必須運行一次環(huán)境變量配置腳本。

        (4)查看交叉編譯器版本

        在終端模式下運行microblaze-uclinux-gcc-v命令,查看編譯器的版本信息。如果交叉開發(fā)工具鏈安裝沒有問題,運行命令后在終端窗口將出現圖4所示的版本信息。

        圖4 交叉編譯器版本信息

        3.2 為目標板創(chuàng)建BSP

        在XPS軟件中生成板級支持包的具體方法如下:

        (1)安裝板級支持包自動生成工具

        Peta Linux在發(fā)布時已經提供了完備的MLD和TCL文件,位于壓縮包hardware/edk_user_respository目錄下。安裝的方法非常簡單,直接將edk_user_resposito ry目錄下的petalinux_v1_00_a和petalinux_v1_00_b兩個文件夾,拷貝到EDK安裝路徑X:Xilinx10.1EDKswlibsp下即可(其中,X指Windows系統中的磁盤盤符)。當重新啟動XPS時,Peta Linux操作系統選項便出現在Software>Software Platform Settings>Software Platform>OS下拉列表框中。

        (2)構建基于Micro Blaze的嵌入式硬件平臺

        利用XPS軟件中的BSB向導能夠快速構建簡單的嵌入式系統,而且可以通過添加IP Catalog中提供的IP核,或者用戶根據需求自己設計的IP核來進一步完善嵌入式系統的功能,完成基于Micro Blaze的SOPC硬件系統的設計。

        (3)配置軟件平臺

        在XPS軟件界面中,選擇 Software菜單中Software Platform Setting s選項。彈出的對話框中有 Software Platform、OS and Libraries和 Drivers三個選項卡。在Software Platform選項卡的OS下拉列表框中選擇Peta Linux操作系統,在Version下拉列表框中選擇1.00.b版本,如圖5所示。當僅限于使用Linux2.4內核時,也可以選擇1.00.a版本。

        圖5 嵌入式操作系統的選擇

        在OS and Libraries選項卡中根據目標板的實際情況為操作系統設置相關參數。相關參數的設置情況如表1所列。

        表1 XPS軟件中Peta Linux參數設置情況

        (4)生成板級支持包

        在XPS軟件中,選擇Software菜單中的Generate Libraries and BSPs選項,系統調用庫生成工具Libgen依據用戶定義的硬件平臺自動生成板級支持包,并保存在工程目錄microblaze_0libsrcpetalinux_v1_00_bsrc下。同時,在上一級目錄中將生成包含了硬件平臺完整描述信息的配置文件,即用于2.4內核的auto-config.in文件和用于2.6內核的Kconfig.auto文件。

        當硬件平臺發(fā)生更改時,必須再次運行Generate lib raries and BSPs選項,重新生成BSP。

        3.3 為Peta Linux操作系統傳遞配置信息

        Peta Linux操作系統中的AutoConfig結構允許將硬件配置信息傳遞到Bootloader和Linux內核配置中,并利用EDK工程目錄中的MSS文件為特定硬件平臺自動配置內核和Bootloader。下面介紹具體實現方法。

        (1)創(chuàng)建并配置新平臺

        這里以用戶使用自行設計的目標板為例,首先為目標板建立一個新的設計平臺,在終端模式下運行以下命令。

        cd /home/embed/petalinux-v0.40-rc2/software/petalinux-dist petalinux-new-platform-k 2.6-v Xilinx-p new 1800 make menuconfig

        命令執(zhí)行后,將創(chuàng)建一個名稱為new1800的平臺,同時進入終端式內核配置菜單。利用上下光標鍵選擇Vendor/Product Selection選項,單擊回車鍵進入下一級菜單。在該菜單中選擇供應商和產品,如圖6所示。

        圖6 Vendor/Product Selection菜單

        (2)拷貝EDK工程文件

        拷貝EDK工程文件到/hardware/use-platform路徑下,該路徑是腳本工具默認的操作位置。通過共享文件夾將整個工程文件夾拷貝到Linux環(huán)境中。

        (3)傳遞配置信息

        系統配置過程中將利用auto-config.in文件、或者Kconfig.auto文件中硬件信息為內核構建Makefile文件。Peta Linux提供的腳本命令可以快速地將該文件拷貝到Peta Linux源碼樹中。直接在終端模式下運行petalinuxcopy-autoconfig腳本命令即可。

        3.4 配置和編譯Peta Linux內核

        Linux內核支持多種配置方法,其中“make menuconfig”方法基于文本圖形化終端來顯示配置菜單,是目前使用最廣泛的配置方法。在終端模式下運行“make menuconfig”命令即可進入配置界面,再選擇Kernel/Library/Default Selection選項,設置內核版本為 linux-2.6.x。同時,選中customize kernel settings和 customize vendor/user settings選項,即可進行內核設置和用戶功能設置。

        Linux內核配置選項眾多,實際上大部分選項可以使用默認值,只有少部分需要用戶根據所使用硬件平臺的實際情況以及對操作系統的功能需求來進行選擇。內核配置完成后,選擇保存退出。在終端模式下運行“make all”命令,系統便開始編譯內核及相關應用。編譯過程時間比較長,通過觀察終端上顯示的編譯信息,可以了解編譯的進度、出現的錯誤和警告信息等。如果內核配置沒有問題,則編譯成功后,在/software/petalinux-dist/images目錄下將生成各種不同格式的鏡像文件。

        3.5 下載內核

        生成的內核文件是否正確,需要通過在實際硬件環(huán)境中運行來檢驗。在調試階段下載內核到目標板一般可以通過JTAG、串口、以太網和USB接口來進行數據傳輸。為了方便調試,這里通過JTAG接口采取XMD調試方式,動態(tài)加載和啟動PetaLinu x。具體步驟如下:

        (1)連接硬件調試環(huán)境

        通過JTAG電纜連接PC機和目標板的JTAG接口,作為內核下載通路;通過串行電纜連接PC機串口和目標板串口,作為控制臺通路;通過5類網絡電纜連接 PC機網口和目標板網口,作為以太網測試通路。

        (2)設置軟件環(huán)境

        使用Windows XP自帶的超級終端工具作為控制臺軟件??刂婆_參數設置為:波特率115 200 b/s,8位數據位,1位停止位,無奇偶校驗,無流量控制。PC機的IP地址設置為192.168.0.1,同時關閉Windows XP的防火墻。

        (3)配置FPGA

        啟動XPS開發(fā)平臺,選擇Device Configuration菜單中的Download Bitstream選項,下載硬件比特流文件dow nload.bit。

        (4)利用XMD加載內核鏡像到外部存儲器

        將/software/petalinux-dist/images目錄下的二進制格式的image.bin文件復制到Windows主機中的EDK工程目錄下。啟動XMD命令行界面,輸入以下命令

        dow-data imge.bin 0x86000000

        其中,0x86000000是外部存儲器的起始地址。當內核鏡像加載到存儲器之后,在XMD命令行中繼續(xù)輸入

        con 0x86000000

        如果內核文件沒有錯誤,Micro Blaze將啟動Peta Linux操作系統,系統的啟動信息將輸出到超級終端上。

        (5)登錄系統

        內核啟動完成后將顯示“uClinux login:”,提示用戶輸入用戶名和密碼登錄系統。輸入用戶名root和密碼root,即可登錄Peta Linux操作系統。此時串口作為Peta Linux操作系統的控制臺,通過超級終端軟件來接收串口數據和發(fā)送串口數據。在超級終端上運行l(wèi)s命令,即可顯示根文件系統下的目錄結構。

        結 語

        Xilinx公司的Micro Blaze軟核處理器一直處于不斷發(fā)展和完善的狀態(tài),應用范圍也將越來越廣泛。本文詳細介紹了Peta Linux操作系統,并總結出了Peta Linux操作系統的移植方法,這對設計基于Micro Blaze處理器的嵌入式系統具有重要的指導意義。

        本文為期刊縮略版,全文見本刊網站www.mesnet.com.cn。

        [1]楊強浩,等.基于EDK的 FPGA嵌入式系統開發(fā)[M].北京:機械工業(yè)出版社,2008.

        [2]http://www.xilinx.com/ise/embedded/epartners/listing.htm.

        [3]Peta Logix Corporation.Embedded Linux on Xilinx MicroB-laze Lab Manual,2008.

        [4]http://www.petalogix.com/resources/documentation/petalinux.

        [5]Rick Moleres.Generating Efficient Board Support Packages[J].Xilinx Xcell Journal,2006(56):48-51.

        [6]Derek Palmer.Lowering the cost of Linux[J].Xilinx Embedded magazine,2006(11):11-13.

        猜你喜歡
        源碼內核命令
        基于網頁源碼結構理解的自適應爬蟲代碼生成方法
        計算機應用(2023年6期)2023-07-03 14:11:56
        基于圖神經網絡的軟件源碼漏洞檢測方法
        計算機時代(2023年6期)2023-06-15 17:49:09
        萬物皆可IP的時代,我們當夯實的IP內核是什么?
        現代裝飾(2022年4期)2022-08-31 01:41:24
        只聽主人的命令
        強化『高新』內核 打造農業(yè)『硅谷』
        企業(yè)如何保護源碼
        基于嵌入式Linux內核的自恢復設計
        Linux內核mmap保護機制研究
        移防命令下達后
        基于數據結構教輔系統的實驗課程改革
        計算機教育(2016年4期)2016-05-20 02:36:05
        欧美亚洲国产精品久久高清| 中文天堂一区二区三区| 久久迷青品着产亚洲av网站| 国产91极品身材白皙| 国产精品美女一区二区视频| 欧美大屁股xxxxhd黑色| 国产精品久久久av久久久| 亚洲人妻无缓冲av不卡| 精品视频一区二区杨幂| 亚洲午夜经典一区二区日韩| 亚洲精品乱码久久久久久不卡| 无码精品人妻一区二区三区影院| 亚洲中文欧美日韩在线人| 国产噜噜亚洲av一二三区| 国产免费av手机在线观看片| 国产精品ⅴ无码大片在线看| 欧美极品美女| 2021国内精品久久久久精免费| 一二三四中文字幕日韩乱码| 麻婆视频在线免费观看| 国产99久久久国产精品~~牛| 屁屁影院ccyy备用地址 | 亚洲一区二区在线视频播放| 中文字幕人妻少妇美臀| 日本国产一区二区在线观看| 亚洲自偷自拍另类第1页| 麻豆亚洲av永久无码精品久久| 国产主播福利一区二区| 亚洲中文字幕在线第二页| 少妇被猛烈进入中文字幕 | 成人激情视频一区二区三区| 女优av一区二区三区| 桃花色综合影院| 加勒比在线一区二区三区| 日本免费看一区二区三区| 24小时日本在线视频资源| 久久综合精品国产一区二区三区无码| 97SE亚洲国产综合自在线不卡| 激情五月开心五月av| 久久97久久97精品免视看| 亚洲国产毛片|