PetaLinux操作系统在MicroBlaze系统中的移植解析
大多使用linux的人都对WINE程序比较熟悉,WINE程序是可以在不需要Windows的情况下使用Windows的软件。下面是小编整理的关于PetaLinux操作系统在MicroBlaze系统中的移植,希望大家认真阅读!
FPGA生产商Xilinx公司提供了全面的嵌入式处理器解决方案,包括PowerPC、MicroBlaze和PicoBlaze三款RISC结构的处理器核。其中,MicroBlaze是32位嵌入式软核处理器解决方案,支持CoreConnect总线的标准外设集合,具有兼容性、可配置性以及重复利用性,能够根据成本和性能要求提供高性价比的处理性能。
支持MicroBlaze处理器的嵌入式操作系统很多,比如uc/os—II、BuleCat ME Linux、RTA MB、ThreadX、PetaLinux等等。本文介绍了PetaLogix公司发布的PetaLinux操作系统,并分析了Xilinx公司所使用BSP自动生成技术。最后总结出PetaLinux操作系统在MicroBlaze平台上的移植方法和步骤。
1 PetaLinux操作系统介绍
PetaLinux操作系统是面向MicroBlaze软核处理器的全功能嵌入式Linux操作系统。其发布采用了“all inone”的整合方式,将针对MicroBlaze处理器定制的Linux2.4/z.6内核源码、U—boot源码、相关的开发工具以及开发板参考硬件平台配置,集成在一个压缩包内发行,极大地方便了开发人员的使用。该操作系统主要具有以下几大特点:
①针对FPGA嵌入式开发的特点采用了板级支持包。
②自动生成工具,可以根据用户定义的嵌入式硬件平台信息自动生成板级支持包,简化了操作系统的移植。
③PetaLinux发布的源码树中包含了部分常用IP核的驱动程序(如GPIO、EthernetLite、UartLite等),减少了用户移植、编写驱动程序的工作量。
④根据设计的不同需求,可以通过配置菜单将PetaLinux配置成without MMU support和MMU support两种版本,即ttClinux和标准Linux。
PetaLinux包含了大量的脚本命令(如petalinux-copy-autoconfig、petalinux-new-platform、petalinux-new—app等),给用户的使用提供了便捷条件。
顶级目录下各子目录的结构和功能如图1所示。在PetaLinux的目录结构中有硬件、软件和工具3个顶级目录,分别包含与之相关的文件和代码。针对宿主机操作系统不同的shell类型,具有C shell和Bash shell两种PetaLinux环境变量设置脚本。
2 基于MLD的BSP生成技术
在嵌入式系统中,BSP(Board Support Package,板级支持包)是指给目标板提供特定操作系统支持的`代码,介于底层硬件和操作系统之间,是完成嵌入式操作系统移植和相关驱动程序开发的关键。
Xilinx公司在嵌入式开发软件)a玲中采用了以MLD(Microprocessor Library Definition,微处理器库定义)专有格式为基础的动态可定制的BSP生成技术,实现了BSP和软件库的自动化生成。每个操作系统和库都有各自唯一的MLD文件和与之相关的1℃L(Tool Command Language,工具命令语言>文件。MLD文件是数据定义文件,通过XPS中设置的一组参数来定义库和操作系统。这些参数值将保存在XPS内部数据库中,在输出生成时供脚本文件使用。TCL文件是脚本文件,包含了一组可以访问整个设计数据库的程序。XPS软件通过调用它来创建定制BSP。
3 PetaLinux内核的移植方法
3.1搭建交叉开发环境
为了便于在Windows平台下开发基于PetaLinux的嵌入式系统,本文利用VMWare虚拟机软件来搭建交叉开发环境。首先,在主机的Windows平台上安装虚拟机软件,然后通过虚拟机来安装红帽子企业版Red Hat Enterprise 4,最后在桌面Linux系统中安装PetaLinux源码树。Windows和Linux两种系统间的数据交换通过设置共享目录来实现。
PetaIJnux操作系统采用整合方式发布,下载的压缩包内已经包含了完整的交叉开发工具链,安装方法非常简单。
(1)建立工作目录
在Linux操作系统的终端模式下运行“mkdir/home/embed”命令,新建embed文件夹作为嵌入式开发的工作目录。