新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > MicroBlaze處理器的PetaLinux操作系統(tǒng)移植

MicroBlaze處理器的PetaLinux操作系統(tǒng)移植

作者: 時間:2011-04-15 來源:網(wǎng)絡(luò) 收藏

2.2 建立硬件平臺
為每個應(yīng)用工程建立一個文件夾,里面保存該工程的硬件配置。在移植時,只需選擇相應(yīng)的硬件平臺,內(nèi)核就會讀取該工程文件夾下的配置文件。使用-new-platform命令建立硬件平臺,如果使用MMU(虛擬內(nèi)存管理單元),則在此命令后添加-m選項。硬件平臺建立起來后,運行make menuconfig命令,在Vendor/Product Seletion選項中,選擇該硬件平臺。
另外,還需將在EDK下生成的配置文件轉(zhuǎn)換成Linux可以識別的格式。在工程文件夾下運行PetaLinux-copy-autoconfig命令,自動完成格式轉(zhuǎn)換,并拷貝配置文件到已選擇的工程文件夾下。
2.3 添加自定義設(shè)備驅(qū)動
本系統(tǒng)自定義了IP核,因此必須開發(fā)驅(qū)動程序并將其添加到PetaLinux配置中。添加自定義設(shè)備驅(qū)動主要步驟如下:
①在平臺配置目錄下Makefile文件中添加語句platobj-$(CONFIG_PETALOGIX_DDC)+=ddc.o和$(obj)/ddc.o:.config使設(shè)備初始化函數(shù)ddc.C與內(nèi)核配置相關(guān)聯(lián);
②在驅(qū)動程序所在目錄下的Makefile文件中添加obj-$(CONFIG_PETALOGIX_DDC)+=ddc_adapter.o使設(shè)備驅(qū)動程序ddc_adapter.c與內(nèi)核配置相關(guān)聯(lián);
③修改設(shè)備驅(qū)動程序所在目錄下的Kconfig文件,使配置內(nèi)核時可以選擇該設(shè)備驅(qū)動,并添加以下語句:
b.JPG
通過以上文件的修改,就可以在配置PetaLinux內(nèi)核時選擇自定義的設(shè)備驅(qū)動。
2.4 配置PetaLinux內(nèi)核
由于Linux內(nèi)核的可裁減性,能夠方便地對內(nèi)核進行修改、裁減、編譯,最終移植到一個嵌入式系統(tǒng)中。運行圖形編輯工具make menuc-onfig命令,對內(nèi)核和系統(tǒng)環(huán)境進行配置。
在內(nèi)核配置的設(shè)備驅(qū)動選項中,一定要選擇與系統(tǒng)硬件配置一致的硬件設(shè)備驅(qū)動,否則內(nèi)核編譯時就會出錯。針對本系統(tǒng)的硬件配置,主要配置以下幾項驅(qū)動:
①[Block devices]塊設(shè)備。選擇Xilinx SystemACEsupport。
②[Misc device]混雜設(shè)備。選擇FSL FIFO driver,然后進入FSL Channel Selection,選擇FIFO on FSLO,并選擇自添加設(shè)備驅(qū)動Pet-aLogix DDC101 Driver。
③[Network device support]網(wǎng)絡(luò)設(shè)備。選擇Ethernet(1000Mbit)子菜單中的Xilinx 10/100/1000 LLTEMAC support。
④[Character devices]字符設(shè)備。選擇Serial drivers子菜單中的8250/16550 and compatible serial support和Console on 8250/16550 and compatible serial port。
文件系統(tǒng)選項中,默認(rèn)選擇了ext2、romfs和cramfs文件系統(tǒng),其他文件系統(tǒng)可以根據(jù)需要自行選擇。本系統(tǒng)需要掛載DOS文件系統(tǒng)的CF卡,因此進行以下配置:
①[DOS/FAT/NT Filesystems]。選擇MSDOS fssupport。
②[Native Language Support]。選擇Codepage 437(United States,Canada)。
內(nèi)核配置中的其他配置可以根據(jù)目標(biāo)系統(tǒng)的不同靈活配置,配置完成后保存退出,自動進入系統(tǒng)環(huán)境配置菜單。系統(tǒng)環(huán)境配置是對Peta-Linux的屬性、命令進行配置,主要有以下幾個選項:
①[System Settings]系統(tǒng)設(shè)置。配置系統(tǒng)的網(wǎng)絡(luò)地址、默認(rèn)用戶名、默認(rèn)登陸密碼和所用根文件系統(tǒng)等內(nèi)容。
②Core Applications]內(nèi)核應(yīng)用。主要配置內(nèi)核的常用特性。
③[Network Applications]網(wǎng)絡(luò)應(yīng)用。配置網(wǎng)絡(luò)應(yīng)用時的相關(guān)命令。
④[Miscellaneous Applications]混雜應(yīng)用。配置系統(tǒng)內(nèi)核中的命令。
⑤[BusyBox]。配置系統(tǒng)內(nèi)核中的命令。
PetaLinux已經(jīng)設(shè)置好了編譯規(guī)則,因此配置完成后,依次執(zhí)行命令make dep、make clean、make all,建立文件依賴關(guān)系,清除舊的文件,編譯內(nèi)核,生成內(nèi)核image。

3 PetaLinux啟動方案
經(jīng)過編譯的PetaLinux內(nèi)核image文件主要有image.bin、image.elf、image.ub。根據(jù)選擇image文件的不同,PetaLinux有4種啟動方案:XMD下載啟動、TFTP網(wǎng)絡(luò)下載啟動、Flash啟動和SysACE CF卡啟動。其中,XMD和TFTP網(wǎng)絡(luò)下載啟動方案,在每次系統(tǒng)上電后都必須重新下載,適用于系統(tǒng)調(diào)試;Flash啟動方案在系統(tǒng)上電后自動從Flash中讀取配置文件,但Flash燒寫速度較慢,更改系統(tǒng)配置較為不便。因此,本系統(tǒng)選用SysACECF卡啟動方案。
使用SysACE CF卡啟動PetaLinux,先將硬件比特流文件和image.elf制作成ACE文件,再復(fù)制到CF卡中,配置CF卡啟動PetaLinux。制作ACE文件,可在EDKShell窗口運行命令:
xmd-tcl genace.tcl(命令工具)
-jprog-board m1402(所需的開發(fā)板)
-hw implementation/download.bit(生成的比特流文件)
-elf image.elf(編譯Linux內(nèi)核生成的可執(zhí)行網(wǎng)表文件)
-ace system.a(chǎn)ce(需生成的ACE文件)
成功后,適合于ML-402開發(fā)板的ACE文件就生成了。
Linux運行需要根文件系統(tǒng)的支持,啟動時必須加載文件系統(tǒng)以支持系統(tǒng)的運行,而image.elf中不包含文件系統(tǒng)。因此,使用SysACE CF卡啟動時必須手動加載文件系統(tǒng)。在編譯PetaLinux內(nèi)核時,已經(jīng)生成了以romfs文件夾為名稱的文件系統(tǒng),所以只需將CF卡分區(qū)和格式化,然后掛載此文件系統(tǒng)。具體步驟如下:
①將CF卡掛載到Linux系統(tǒng)中,運行命令fdisk/dev/sda把CF卡分成3個區(qū)。第1分區(qū)存放system.a(chǎn)ce文件,第2分區(qū)為Linux Swap交換分區(qū),第3分區(qū)存放根文件系統(tǒng)。
②Linux下格式化第3分區(qū)為ext2文件系統(tǒng),運行命令mke2fs/dev/sda3。在/ete/fstab下輸入命令/dev/sda3/mnt/rootfs auto defaults,user,noauto 0 0。把設(shè)備sda3掛在/mnt/rootfs文件下,文件系統(tǒng)為默認(rèn)的ext2,普通用戶,能掛載,不轉(zhuǎn)儲,啟動時不掃描文件系統(tǒng)。通過命令mount/mnt/rootfs掛載該目錄,這樣就可以把根文件系統(tǒng)rootfs拷貝到CF卡的該分區(qū)上。
③Windows下格式化第1分區(qū)為FAT32文件系統(tǒng),把system.a(chǎn)ce復(fù)制到這個分區(qū)。
④Linux下格式化第2分區(qū)為交換分區(qū),運行命令mkswap/dev/sda2。
一切準(zhǔn)備就緒后,插入CF卡,開啟電源,就可以從CF卡啟動PetaLinux。

結(jié)語
本文介紹了一種可用于的嵌入式Linux——PetaLinux,并詳細討論了其內(nèi)核配置和啟動方案。通過移植Peta-Linux,本文開發(fā)的SOPC可以直接用于實際工程。該嵌入式移植快速、簡單,由于其基于Linux2.6內(nèi)核,可以保證較高的穩(wěn)定性。因此,在SOPC應(yīng)用日益復(fù)雜的背景下具有較高的實用價值。
本文創(chuàng)新點:實現(xiàn)了PetaLinux在的移植,并成功實現(xiàn)PetaLinux中自定義硬件設(shè)備驅(qū)動的添加和SysACE CF卡的啟動方案。

本文引用地址:http://m.butianyuan.cn/article/191233.htm
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉