首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
Linux资讯 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>编程开发>嵌入式开发>正文

Linux嵌入应用:ARM体系结构的技术特征

http://www.oklinux.cn  2008-01-20  来源: 赛迪网 skid  会员收藏  游客收藏  【 】 

在开发设计第一个ARM芯片时,当时的一些机器如Digital PDP-8、Cray-1和IBM 801在设计时早就提出了RISC的概念,并且在其后发展中有了许多RISC的特征,但RISC惟一的例子仍只有Berkeley的RISC I和II及Stanford的MIPS(Microprocessor without Interlocking Pipeline Stages, 无互锁流水线处理器),而它们当时仅仅用于教学和研究。ARM处理器是第一个为商业用途而开发的RISC微处理器。ARM所采用的体系结构,对于当时的RISC体系结构既有继续,又有抛弃,即完全根据实际设计的需要仔细研究,没有机械照搬。ARM的体系结构中采用了若干Berkeley RISC处理器设计的特征,但也放弃了其他若干特征。这些采用的特征有:

·Load/Store体系结构

·固定的32位指令

·3地址指令格式

在Berkeley RISC设计采用的特征中被ARM设计者放弃的RISC的技术特征有:

·寄存器窗口

在早期的RISC中,由于Berkeley原型机中包含了寄存器窗口,使得寄存器窗口的机制密切地伴随着RISC的概念,成为一般RISC的一大特征。Berkeley RISC处理器的寄存器堆中使用寄存器窗口,使得任何时候总有32个寄存器是可见的。进程进入和退出都访问新的一组寄存器,因此减少了因寄存器保存和恢复导致的处理器和存储器之间的数据拥塞和时间开销。这是拥有寄存器窗口的优点。但是寄存器窗口的存在以大量寄存器占用较多的芯片资源为代价,使得芯片成本增加,因此在ARM处理器设计时未采用寄存器窗口。尽管在ARM中用来处理异常的影子(shadow)寄存器和窗口寄存器在概念上基本相同,但是在异常模式下对进程进行处理时,影子寄存器的数量是很少的。

·延迟转移

由于转移中断了指令流水线的平滑流动而造成了流水线的“断流”问题,多数RISC处理器采用延迟转移来改善这一问题,即在后续指令执行后才进行转移。在原来的ARM中延迟转移并没有采用,因为它使异常处理过程更加复杂。

·所有指令单周期执行

ARM被设计为使用最少的时钟周期来访问存储器,但并不是所有指令都单周期执行。如在低成本的ARM应用领域中普遍使用的ARM7TDMI,数据和指令占有同一总线,使用同一存储器时,即使最简单的Load和Store指令也最少需要访问2次存储器(1次取指令,1次数据读/写)。当访问存储器需要超过一个周期时,就多用一个周期。因此,并不是所有ARM指令都在单一时钟周期内执行的,少数指令需要多个时钟周期。高性能的ARM9TDMI使用分开的数据和指令寄存器,才有可能把Load和Store指令的指令存储器和数据访问存储器操作单周期执行。

最初的ARM设计最关心的是必须保持设计的简单性。ARM的简单性在ARM的硬件组织和实现上比指令集的结构上体现得更明显。把简单的硬件和指令集结合起来,这是RISC体系的思想基础;但是ARM仍然保留一些CISC的特征,并且因此达到了比纯粹的RISC更高的代码密度,使得ARM在开始时就获得其功率效率和较小的核面积的优势。


上一篇:天造地设的绝配 Linux和嵌入式系统应用   下一篇:Linux攻略 嵌入式系统的开发流程概括介绍


收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Linux攻略 嵌入式系统的开发流程概括介绍
·天造地设的绝配 Linux和嵌入式系统应用
·嵌入式Linux系统名词解释及资源大全
·嵌入式基础 当今常用的开源协议详细解析
·高手进阶 2.6内核的Linux嵌入式系统应用
·基于2.6.19内核小型Linux系统制作与移植
·嵌入式Linux攻略 ACE程序移植过程详细解析
·嵌入式Linux系统学习规划
·嵌入式Linux系统软件开发学习思路详细介绍
·嵌入式Linux的文件系统及其存储机制分析
·系统学习嵌入式Linux 几点非常实用的建议
·嵌入式系统编程中的代码优化
·疯狂DIY! 在iPod上安装Linux系统
·新主张:移动操作系统的未来是Linux的!
·嵌入式Linux系统下的网页浏览器 WebKit
·虚拟机Linux系统下连接ARM开发板的方法
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·在嵌入式Linux系统中应用的GTK 和X分析
·使用虚拟机嵌入式Linux开发前的必要准
·用NFS服务开发ARM Linux程序的方法介绍
·虚拟机Linux系统下连接ARM开发板的方法
·嵌入式Linux系统下的网页浏览器 WebKit
·系统学习嵌入式Linux 几点非常实用的建
·嵌入式Linux攻略 ACE程序移植过程详细
·嵌入式基础 当今常用的开源协议详细解
·Linux攻略 嵌入式系统的开发流程概括介
·天造地设的绝配 Linux和嵌入式系统应用
·嵌入式Linux系统名词解释及资源大全
·高手进阶 2.6内核的Linux嵌入式系统应
  阅读排行
· 嵌入式linux下常见的文件系统
·Linux and symmetric multiprocessing
·深入浅出 嵌入式中文Linux系统详细解析
·嵌入式Linux系统图形及图形用户界面
·Linux设备驱动框架、配置文件及加载
·概述Linux系统的驱动框架及驱动加载
·为系统处理器编写Linux设备驱动程序
· 构建嵌入式Linux系统平台
·Linux高手进阶 嵌入式系统设计开发过程
· 在Ubuntu上建立Arm Linux的开发环境
·嵌入式Linux操作系统学习规划
·详述嵌入式系统下Microwindows的实现
·嵌入式系统开发学习如何起步、如何深入
·U-Boot的常用命令详解
· Linux 2.6 内核的嵌入式系统应用
网摘收藏: