ARM嵌入式系统启动架构研究
目前在嵌入式开发的过程中,开发者往往把大量精力投入到嵌入式微处理器MPU(Micro Processing Unit)与众多外设的连接方式以及应用代码的开发之中,而忽视了对嵌入式系统最基本、最核心部分的研究。
启动架构是嵌入式系统的关键技术。掌握启动架构对于了解嵌入式系统的运行原理有着重要的意义。嵌入式系统在启动时,引导代码、操作系统的运行和应用程序的加载主要有两种架构,一种是直接从Nor Flash启动的架构,另一种是直接从Nand Flash启动的架构。
需要注意的是,在嵌入式系统启动引导的过程中会有多种情况出现,如vxWorks的启动代码BootRom就有压缩和非压缩,驻留和非驻留方式之分,而操作系统本身也多以压缩映象方式存储,所以启动代码在执行和加载过程中需要根据不同的情况,作出相应的处理。
1从Nor Flash启动
Nor Flash具有芯片内执行(XIP,eXecute In Place)的特点,在嵌入式系统中常做为存放启动代码的首选。从Nor Flash启动的架构又可细分为只使用Nor Flash的启动架构和Nor Flash与Nand Flash配合使用的启动架构。图5 给出了这两种启动架构的原理框图。
1.1单独使用Nor Flash
在该架构中,引导代码、操作系统和应用代码共存于同一块Nor Flash中。系统上电后,引导代码首先在Nor Flash中执行,然后把操作系统和应用代码加载到速度更高的SDRAM中运行。另一种可行的架构是,在Nor Flash中执行引导代码和操作系统,而只将应用代码加载到SDRAM中执行。
该架构充分利用了Nor Flash芯片内执行的特点,可有效提升系统性能。不足在于随着操作系统和应用代码容量的增加,需要更大容量昂贵的Nor Flash来支撑。
1.2 Nor Flash和Nand Flash配合使用
Nor Flash的单独使用对于代码量较大的应用程序会增加产品的成本投入,一种的改进的方式是采用Nor Flash 和Nand Flash配合使用的架构。在该架构中附加了一块Nand Flash,Nor Flash(2M或4M)中存放启动代码和操作系统(操作系统可以根据代码量的大小选择存放于Nor Flash或者Nand Flash),而Nand Flash中存放应用代码,根据存放的应用代码量的大小可以对Nand Flash容量做出相应的改变。
系统上电后,引导代码直接在Nor Flash中执行,把Nand Flash中的操作系统和应用代码加载到速度更高的SDRAM中执行。也可以在Nor Flash中执行引导代码和操作系统,而只将Nand Flash中的应用代码加载到SDRAM中执行。该架构是当前嵌入式系统中运用最广泛的启动架构之一。
1.3从Nand Flash启动
有些处理器如SamSung公司的arm920T系列处理器S3C2410支持从Nand Flash启动的模式,它的工作原理是将NandFlash中存储的前4KB代码装入一个称为Steppingstone(BootSRAM)的地址中,然后开始执行该段引导代码,从而完成对操作系统和应用程序的加载。该方式需要处理器内部有NAND控制器,同时还要提供一定大小额外的SRAM空间,有一定的使用局限性,在实际开发中较少使用。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云完善“云渲染”运营模块,携手渲云共绘渲染业务蓝图
2018年,云计算迎来井喷发展之年,云服务厂商继续保持高速增长。从政策来看,2019年云计算产业规模将达到4300亿,云计算已成为国家新一代信息产业发展的重要战略。在政策推动以及云计算发展浪潮下,云计算经历了百家争鸣到巨头格局逐渐明朗的演变,IDC报告显示,阿里云目前在中国公共云市场占有率为47.6%,市场占有率超过第2-5名总和,已成为中国市场最大的平台及服务(PAAS)供应商。而在全球范围内,阿里云市场规模仅次于亚马逊AWS和微软Azure,排在市场前三位。阿里云通过超过100+的产品覆盖和全行业覆盖的解决方案来助力企业用户在公有云环境下应用程序的自动化部署与水平扩展升级。其中值得一提的是,阿里云和国内顶尖云渲染平台渲云之间的合作共赢,翻开了公有云系统架构下云渲染服务的新篇章。 2016年,阿里云与渲云展开初步合作,开始进行公有
- 下一篇
【资料下载】2018南京云栖大会:企业研发云专场——企业如何提升研发效能,实现业务价值?
讲师PDF材料下载 IaaS后时代, 企业如何玩转云上的业务开发 云效助力企业走向敏捷之路 让价值顺畅流动 云效助力新零售运维效能提升之路 WLA-云鹰计划 加速千家创新创业企业成为独角兽 容器助力企业数字化转型 静态代码扫描体系在阿里移动研发的应用 AIOps智能故障管理在阿里巴巴集团的成功实践 >>视频回顾 互联网时代,软件和系统成为一切商业的基础设施,“Every company is a software company”,“Every business will be a software business”。这对企业的软件研发、产品交付提出了全新挑战。企业选用IaaS服务只是第一步,更关键的是如何充分利用IaaS交付软件。本论坛将分享企业级研发交付方式及其工具支撑体系,并通过阿里客户和内部实践,阐述如何打通研发流
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装