欢迎来到天天文库
浏览记录
ID:37454043
大小:185.00 KB
页数:7页
时间:2019-05-24
《ARM LINUX在EP7312上的移植》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ARMLINUX在EP7312上的移植摘要:Linux是一种支持多种体系结构处理器的操作系统,有很强的移植性。描述了将ARMLinux移植到基于EP7312处理器的目标板上的方法与过程。首先介绍了EP7312处理器和ARMLinux,并简单说明了如何搭建移植环境,然后着重讨论了在该开发板上bootloader的设计实现以及ARMLinux内核的移植的方法,最后对在这种基于Linux的嵌入式系统环境下如何开发应用程序作了探索和展望。1 引言 ARM处理器是一种32位的嵌入式RISC处理器。在众多同种
2、类型的处理器中,ARM系列已经成为了当今应用范围最广的嵌入式芯片。第1枚ARM芯片诞生于1983年1O月到1985年4月之问的英国,当时属于Acorn公司,是AcornRISCMachine的简写。为了扩展市场,ARM产品线在成为Acorn公司的核心之后,被独立分割出来,成立了ARM公司,变成了AdvancedRISCMachine的缩写。 根据市场调查,2001年初,ARM的32位处理器的市场占有率已经超过了75%。 ARM公司是知识产权(IntellectualProperly)供应商,它
3、负责ARM处理器的芯片设计,转让设计许可,由合作伙伴公司来生产使用ARM处理器核的各具特色的芯片。 ARM公司在全世界范围内有超过100个这样的合作伙伴。在芯片特点上,ARM处理器核耗电少,成本低,功能强,还特有16/32位双指令集,这使得ARM成为了移动通信、手持计算、多媒体数字消费等嵌入式解决方案的RISC标准。ARM的产品线主要包括ARM7Thumb家族和ARM9Thumb家族、ARM10Thumb家族以及StrongARM家族。2基于ARM的EP7312处理器和ARMLinux 在本文
4、中使用的目标平台EP7312是CirrusLogic公司使用ARM7Thumb家族中ARM720T处理器内核开发的一块SoC(System-on-Chip)嵌入式微处理器。 EP7312专门为PDA、Internet设备、移动电话和手持设备等设计成超低功耗和高性能的微处理器。它的核心逻辑部件ARM720T采用了具有8K字节的4路集合关联(set-associative)独立cache和一个写缓存,并且还包含了一块加强的MMU(内存管理部件)。这些特性使得开发人员可以将WindowsCE和Linux
5、等操作系统移植到基于这块微处理器的目标系统中。 Linux是一种被广泛移植到各种嵌入式平台的开放源代码操作系统。ARMLinux是一个将Linux内核移植到各种基于ARM处理器的目标系统的项目,由RussellKing主持,已经为超过100种不同的目标机器成功完成了移植工作,包括有基于AKM的计算机、网络设备和目标板等。 本文的工作主要包括bootloader的设计实现、ARMLinux内核移植、嵌入式系统应用开发方法探索3个部分。3移植环境的建立
6、 嵌入式系统的开发与一般的应用开发最大的差别就在于:前者需要建立特殊的硬件环境,而后者一般基于特定的操作系统或者分布式平台。后者的平台已经对硬件或者网络媒质做了抽象,从而不需要由系统开发者来完成这些工作。而在嵌入式系统开发中,这也由开发者完成。 嵌入式系统开发环境一般分成主机端(HOST)和目标板(TARGET)两个部分。主机端是开发平台,用于运行开发过程中的各种工具;目标板是运行和测试平台,是嵌入式系统的最终驻留环境。在主机端和目标板之间需要通过某种方式进行通信,如使用RS232C串口。这种通
7、信的目的在于发送控制指令和传输数据,同时获得反馈信息。图1是本文中系统移植工作的硬件环境: 图1 系统移植工作的硬件环境 主机端的PC使用COM1和EP7312的UART1相连接,因为RS232C和UART的电气特性不同,在连接两者的串口线上使用了一块HIN232CP芯片完成电平转换。通过RS232C串口完成对目标板的必要控制功能。 EP7312开发板上配备有一块CS8900A以太网卡芯片,和主机端建立原始(raw)IP连接,使用链路层地址(以太网MAC地址)完成大批量数据的传送。
8、硬件环境建立之后,就需要创建软件开发环境。软件环境主要是指ARM体系结构的交叉编译环境,在主机端使用RedHatLinux7.1操作系统,并在其上建立gcc的ARM体系结构的交叉开发环境。交叉编译环境所需的源代码软件包有下面这些:1. binutils-2.11.2.tar.gz binutils里面包括GNU的链接器ld、汇编代码编译器as、用来将文件打包重组的ar以及为ar打包的文件建立符号表的ranlib等工具。2. linux-2.4
此文档下载收益归作者所有