DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 116|回复: 0
打印 上一主题 下一主题

ARM的嵌入式Linux移植体验之基本概念

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 18:41:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                      引言
  ARM是Advanced RISC Machines(高级精简指令系统处理器)的缩写,是ARM公司提供的一种微处理器知识产权(IP)核。
  ARM的应用已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。基于ARM 技术的微处理器应用约占据了32位RISC 微处理器75%以上的市场份额。揭开你的手机、MP3、 PDA,嘿嘿,里面多半藏着一个基于ARM的微处理器!
  ARM内核的数个系列(ARM7、ARM9、ARM9E、ARM10E、SecurCore、Xscale、STrONgARM),各自满足不同应用领域的需求,无孔不入的渗入嵌入式系统各个角落的应用。这是一个ARM的时代!
  有人的地方就有江湖(《武林外传》),有嵌入式系统的地方就有ARM。
  构建一个复杂的嵌入式系统,仅有硬件是不够的,我们还需要进行操作系统的移植。我们通常在ARM平台上构建Windows CE、Linux、Palm OS等操作系统,其中Linux具有开放源代码的优点。
  日前,笔者作为某嵌入式ARM(硬件)/Linux(软件)系统的项目负责人,带领项目组成员进行了下述工作:
  (1)基于ARM920T内核S3C2410A CPU的电路板设计;
  (2)ARM处理下底层软件平台搭建:
  a.Bootloader的移植;
  b.嵌入式Linux操作系统内核的移植;
  c.嵌入式Linux操作系统根文件系统的创建;
  d.电路板上外设Linux驱动程序的编写。
  本文将真实地再现本项目开发过程中作者的心得,以便与广大读者共勉。第一章将简单地介绍本ARM开发板的硬件设计,第二章分析Bootloader的移植方法,第三章叙述嵌入式mizi Linux的移植及文件系统的构建方法,第四章讲解外设的驱动程序设计,第五章给出一个已构建好的软硬件平台上应用开发的实例。
  如果您有嵌入式系统的开发基础,您将非常容易领会本文讲解地内容。即便是您从来没有嵌入式系统的开发经历,本文读起来也不会生涩。
  2.ARM体系结构
  作为一种RISC体系结构的微处理器,ARM微处理器具有RISC体系结构的典型特征。还具有如下增强特点:
  (l)在每条数据处理指令当中,都控制算术逻辑单元(ALU)和移位器,以使ALU和移位器获得最大的利用率;
  (2)自动递增和自动递减的寻址模式,以优化程序中的循环;
  (3)同时Load和Store多条指令,以增加数据吞吐量;
  (4)所有指令都条件执行,以增大执行吞吐量。
  ARM体系结构的字长为32位,它们都支持Byte(8位)、Halfword(16位)和Word(32位)3种数据类型。
  大部分应用程序都在User模式下运行。当处理器处于User模式下时,执行的程序无法访问一些被保护的系统资源,也不能改变模式,否则就会导致一次异常。对系统资源的使用由操作系统来控制。
  User模式之外的其它几种模式也称为特权模式,它们可以完全访问系统资源,可以自由地改变模式。其中的FIQ、IRQ、supervisor、Abort和undefined 5种模式也被称为异常模式。在处理特定的异常时,系统进入这几种模式。这5种异常模式都有各自的额外的寄存器,用于避免在发生异常的时候与用户模式下的程序发生冲突。
  还有一种模式是system模式,任何异常都不会导致进入这一模式,而且它使用的寄存器和User模式下基本相同。它是一种特权模式,用于有访问系统资源请求而又需要避免使用额外的寄存器的操作系统任务。
??????欢迎转载,信息来自维库电子市场网(www.dzsc.com)
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-8-4 06:54 , 耗时 0.080888 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表