基于ARM的嵌入式最小系统研究

发布者:Zhenai5201314最新更新时间:2018-02-19 来源: 21ic关键字:嵌入式最小系统  ARM  S3C44B0  SDRAM 手机看文章 扫描二维码
随时随地手机看文章

 1.引言

随着嵌入式相关技术的迅速发展,嵌入式系统的功能越来越强大,应用接口更加丰富,根据实际应用的需要设计出特定的嵌入式最小系统和应用系统,是嵌入式系统设计的关键。目前在嵌入式系统开发的过程中,开发者往往把大量精力投入到嵌入式微处理器MPU(Micro Processing Unit)与众多外设的连接方式以及应用代码的开发之中,而忽视了对嵌入式系统最基本、最核心部分的研究。

当前在嵌入式领域中,ARM(Advanced RISC Machines)处理器被广泛应用于各种嵌入式设备中。由于ARM嵌入式体系结构类似并且具有通用的外围电路,同时ARM内核的嵌入式最小系统的设计原则及方法基本相同,这使得对嵌入式最小系统的研究在整个系统的开发中具有着至关重要的意义。本文以基于ARM的嵌入式最小系统为平台,从硬件和软件两方面对嵌入式最小系统的架构进行了研究,硬件方面主要介绍了ARM处理器与典型外部存储器的接口技术,软件方面重点就嵌入式最小系统的启动架构做了详细分析。

2. 嵌入式最小系统

嵌入式最小系统即是在尽可能减少上层应用的情况下,能够使系统运行的最小化模块配置。对于一个典型的嵌入式最小系统,以ARM处理器为例,其构成模块及其各部分功能如图1所示,其中ARM微处理器、FLASH和SDRAM模块是嵌入式最小系统的核心部分。

 

时钟模块——通常经ARM内部锁相环进行相应的倍频,以提供系统各模块运行所需的时钟频率输入
Flash存储模块——存放启动代码、操作系统和用户应用程序代码
SDRAM模块——为系统运行提供动态存储空间,是系统代码运行的主要区域
JTAG模块——实现对程序代码的下载和调试
UART模块——实现对调试信息的终端显示
复位模块——实现对系统的复位

3. 外存储器接口技术

ARM处理器与外部存储器(Flash和SDRAM)的接口技术是嵌入式最小系统硬件设计的关键。根据需要选择合理的接口方式,可以有效的提升嵌入式系统的整体性能。

3.1常用外存储器简介

(1)Nor Flash与Nand Flash

Nor Flash也称为线性Flash,可靠性高、随机读取速度快,具有芯片内执行(XIP, eXecute In Place)的特点,这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。常用在擦除和编程操作较少而直接执行代码的场合。

Nand Flash则是高数据存储密度的理想解决方案,一般用于数据存储和文件存储,以块为单位进行擦除,具有擦除速度快的优点。

(2)同步动态存储器SDRAM

SDRAM(Synchronous Dynamic Random Access Memory)是在早期DRAM的基础上改进而来的,它是同步内存,并在接口信号中引入了CLK信号,所有数据、地址和控制信号都是和CLK上升沿对齐的。此外SDRAM还在内部引入了一个命令控制器,处理器访问SDRAM都是通过向命令控制器发送命令来实现的。

3.2 ARM处理器与Flash接口技术

3.2.1ARM处理器与Nor Flash接口技术

Nor Flash 带有SRAM接口,有足够的地址引脚,可以很容易的对存储器内部的存储单元进行直接寻址。在实际的系统中,可以根据需要选择ARM处理器与Nor Flash的连接方式。图2给出了嵌入式最小系统在包含两块Nor Flash的情况下,ARM处理器与Nor Flash两种不同的连接方式。

 

1)双Flash独立片选

该方式是把两个Nor Flash芯片各自作为一个独立的单元进行处理。根据不同的应用需要,可以在一块Flash中存放启动代码,而在另一块Flash中建立文件系统,存放应用代码。该方式操作方便,易于管理。

(2)双Flash统一片选

该方式是把两个Nor Flash芯片合为一个单元进行处理,ARM处理器将它们作为一个并行的处理单元来访问,本例是将两个8bit的Nor Flash芯片SST39VF1601用作一个16bit单元来进行处理。对于N(N>2)块Flash的连接方式可以此作为参考。

3.2.2ARM处理器与Nand Flash接口技术

Nand Flash接口信号比较少,地址,数据和命令总线复用。Nand Flash的接口本质上是一个I/O接口,系统对Nand Flash进行数据访问的时候,需要先向Nand Flash发出相关命令和参数,然后再进行相应的数据操作。ARM处理器与Nand Flash的连接主要有三种方式,如图3所示:

运用GPIO管脚方式去控制Nand Flash的各个信号,在速度要求相对较低的时候,能够较充分的发挥NAND设备的性能。它在满足NAND设备时域需求方面将会有很大的便利,使得ARM处理器可以很容易的去控制NAND设备。该方式需要处理器提供充足的GPIO。

 

 

(2)运用逻辑运算方式进行连接

在该方式下,处理器的读和写使能信号通过与片选信号CS进行逻辑运算后去驱动NAND设备对应的读和写信号。图3中b例为SamSung公司ARM7TDMI系列处理器S3C44B0与Nand Flash K9F2808U0C的连接方式。

(3)直接芯片使能

有些ARM处理器如S3C2410内部提供对NAND设备的相应控制寄存器,通过控制寄存器可以实现ARM处理器对NAND设备相应信号的驱动。该方式使得ARM处理器与NAND设备的连接变得简单规范,图3中c例给出了ARM处理器S3C2410与Nand Flash K9F2808U0C的连接方式。

3.3 ARM处理器与SDRAM接口技术

嵌入式最小系统的外部动态存储器模块一般采用SDRAM。现在的大多数ARM处理器内部都集成有SDRAM控制器,通过它可以很容易的访问SDRAM内部的每一个字节。在实际开发中可以根据需要选用一片或多片SDRAM。图4中给出了两种常用的接口方式。

(1)单片SDRAM

图4 中a例为 ARM处理器S3C44B0与一个16bit的SDRAM K4S641632d的连接方式。在对尺寸有严格限制且对动态存储器容量要求不高的嵌入式系统中常采用此种连接方式。

(2)双片16bit SDRAM结合使用

在双片16bit SDRAM合成一个32bit SDRAM使用时,ARM处理器的地址线A2接SDRAM的地址线A0,其余地址依次递增,这是因为在SDRAM中字节是存储容量的惟一单位,而此时SDRAM为32bit位宽。

SDRAM的BA地址线是其内部Bank的地址线,代表了SDRAM内存的最高位。在图4中b例的SDRAM总大小是64M(64M= ),需要A25-A0引脚来寻址,所以BA1-BA0连接到了A25-A24引脚上。还需注意的是SDRAM内存行地址和列地址是复用的,所以地址线的数目一般少于26条,具体连接需要参考ARM处理器和SDRAM的相关手册。

值得注意的是,有些ARM处理器如SamSung公司的ARM940T系列处理器S3C2510 ,其地址总线与其它标准ARM处理器不太一样,它的地址线分为内部地址线和外部地址线两种类型。根据所连接的存储器数据总线宽度,内部地址线进行相应的移位,对应到外部地址线A23-A0,从而对外提供固定的地址线A23-A0。其实质与典型的ARM处理器是一致的。                                                                          

4. 嵌入式系统启动架构

启动架构是嵌入式系统的关键技术。掌握启动架构对于了解嵌入式系统的运行原理有着重要的意义。嵌入式系统在启动时,引导代码、操作系统的运行和应用程序的加载主要有两种架构,一种是直接从Nor Flash启动的架构,另一种是直接从Nand Flash启动的架构。

需要注意的是,在嵌入式系统启动引导的过程中会有多种情况出现,如vxWorks的启动代码BootRom就有压缩和非压缩,驻留和非驻留方式之分,而操作系统本身也多以压缩映象方式存储,所以启动代码在执行和加载过程中需要根据不同的情况,作出相应的处理。

4.1从Nor Flash启动

Nor Flash具有芯片内执行(XIP,eXecute In Place)的特点,在嵌入式系统中常做为存放启动代码的首选。从Nor Flash启动的架构又可细分为只使用Nor Flash的启动架构和Nor Flash与Nand Flash配合使用的启动架构。图5 给出了这两种启动架构的原理框图。

4.1.1单独使用Nor Flash

在该架构中,引导代码、操作系统和应用代码共存于同一块Nor Flash中。系统上电后,引导代码首先在Nor Flash中执行,然后把操作系统和应用代码加载到速度更高的SDRAM中运行。另一种可行的架构是,在Nor Flash中执行引导代码和操作系统,而只将应用代码加载到SDRAM中执行。

该架构充分利用了Nor Flash芯片内执行的特点,可有效提升系统性能。不足在于随着操作系统和应用代码容量的增加,需要更大容量昂贵的Nor Flash来支撑。

4.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中执行。该架构是当前嵌入式系统中运用最广泛的启动架构之一。

4.1.2从Nand Flash启动

有些处理器如SamSung公司的ARM920T系列处理器S3C2410支持从Nand Flash启动的模式,它的工作原理是将NandFlash中存储的前4KB代码装入一个称为Steppingstone(BootSRAM)的地址中,然后开始执行该段引导代码,从而完成对操作系统和应用程序的加载。该方式需要处理器内部有NAND控制器,同时还要提供一定大小额外的SRAM空间,有一定的使用局限性,在实际开发中较少使用。

5. 结束语

本文作者创新点:根据ARM体系结构的相通性,以基于ARM的嵌入式最小系统为平台,从硬件和软件两方面对其架构进行了研究。硬件方面就ARM处理器与常用外部存储器的接口方式进行了阐述,软件方面给出了嵌入式最小系统典型的启动架构及其选择标准。


关键字:嵌入式最小系统  ARM  S3C44B0  SDRAM 引用地址:基于ARM的嵌入式最小系统研究

上一篇:嵌入式网络监控系统的研究
下一篇:基于Linux的传感器网络网关系统设计

推荐阅读最新更新时间:2024-03-16 15:55

基于ARM平台的钢琴游戏 实现琴键按下效果
本阶段任务与步骤 ================ 1,设置好共享文件夹 2,编译这些代码: make 3,将编译好的示例程序piano丢到开发板,观察运行效果 注意:要将所有的bmp文件也要上传到开发板(已经上传过了就不用重复上传了) 4,修改piano.c,使得钢琴12个琴键均能按下去。 单片机源程序如下: /*********************************************** // // Copyright(C), 2013-2016, GEC Tech. Co., Ltd. // // 作者: 林世霖 // 微信公众号:秘籍酷 // 日期: 2016-6 /
[单片机]
基于<font color='red'>ARM</font>平台的钢琴游戏 实现琴键按下效果
英伟达已向欧盟做出初步让步 确保540亿美元收购Arm交易获批
据国外媒体报道,欧盟委员会于当地时间周三公布的文件显示,为确保欧盟反垄断部门批准其以540亿美元价格收购英国芯片设计公司Arm的交易,英伟达已做出初步让步。但是,欧盟委员会并没有透露英伟达做出了什么让步。 2020年9月份,软银集团和英伟达宣布,双方已达成确定性协议。根据协议,软银将把ARM出售给英伟达。自从英伟达宣布收购Arm以来,它就陷入了反对、审查以及安全担忧的旋涡之中。    此前,欧盟委员会公布的文件显示,英伟达在今年9月8日向欧盟反垄断部门申请批准其以540亿美元收购Arm的交易。当时,报道称,欧盟将于10月13日就是否批准这笔交易作出决定。    如今,欧盟委员会将做出决定的最后期限延长至10月27日。外媒报道称
[半导体设计/制造]
ARM920T基于Linux平台下的FPGA驱动开发
Linux操作系统的全称是GNU/Linux,它是由GNU工程和Linux内核两个部分共同组成的一个操作系统。该系统中所有组件的源代码都是自由的,可以有效保护学习成果,因而在嵌入式领域得到了广泛的应用。 FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,该器件是作为专用集成电路ASIC (Application Specific Integrated Circuit)领域中的一种半定制电路而出现的,它的出现既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。在通信行业、传输网、医疗仪器、各种电子仪器、安防监控、电力系统、汽车电子以及消费类电子中都大面积使用。随着产品研
[单片机]
<font color='red'>ARM</font>920T基于Linux平台下的FPGA驱动开发
专家齐聚MCU技术创新与应用大会论道产业
2009年11月16日,高交会电子展系列技术会议之一的MCU技术创新与应用大会2009在深圳马哥孛罗好日子酒店拉开帷幕,超过500名业界精英齐聚一堂,和iSuppli、 恩智浦、ARM、意法半导体、中国软件行业协会、康佳、金凯博、盛扬,以及海尔集成电路的专家一起,分享了MCU最新产品、技术及发展趋势。 2009年,中国MCU市场受到国际金融危机的影响,现近年来的首个负增长。但即使在这样的产业寒冬之下,绝大多数MCU厂商仍对市场发展态势寄予希望,热切盼望中国市场转暖。iSuppli也乐观预测,随着全球经济复苏和电子设备需求的回升,中国MCU市场将在2010年复苏。那时,中国MCU市场的销售额将增长到23亿美元,比200
[单片机]
arm-linux-gcc裸机程序开发(三)
一. 中断问题 中断对编写程序非常的重要,所以程序对中断处理的好坏将直接影响程序的优劣,对实时性要求较高的系统更是如此。对于ADS2.0,在编写中断处理程序的时候,只需要在程序前面加上 _irq 这个关键字,ADS就会自动为我们保存中断现场,等程序返回的时候自动恢复现场,细节无须我们关心。当然,也可以不加这个关键字,如果这样就得自己保存与恢复中断现场,考虑的问题就多了。arm-linux-gcc开发环境下,目前我还没有发现类似“_irq”这样的关键字可以通知编译器自动处理中断过程。因此,如果使用arm-linux-gcc编译带有中断的程序,就必须自己处理中断现场。除了保护中断现场外,程序还需要做的就是设置正确的中断向量表,
[单片机]
ARM宣布速度更快、能效更高的Mali-T7x0系列GPU
    业务让ARM最出名的还是其Cortex A系列处理器内核授权业务,因为很多厂商都争相采用。但是很多人有忘了,该公司在GPU领域也不容小觑。据ARM副总裁和媒体处理首席Pete Hutton表示:在过去的几年里,采用该公司Mali GPU设计的芯片,其出货量已经增长超过10倍——并且,Mali GPU现在支撑着超过50%的Android平板、以及超过20%的Android智能手机。 由于前景大好,所以ARM也没打算止步不前。该公司已经为Mali家族推出了两款新品——Mali-T760和Mali-720——前者面向高端平板和智能手机,而后者则面向入门级Android设备。 此外,尽管T760主要面向的是平板电脑和手机,但它却拥
[手机便携]
第一批明星AI公司为何正面临倒闭ing?
一场疫情,加速了资本经济海浪的退潮,大批裸泳者被迫上岸:美股大崩盘、中概股被做空、投资巨咖软银集团跌落凡尘…… 一切都发生的都太快了! 然而,真正令人始料未及的却是 AI 科技浪潮还未到巅峰之际,就有媒体爆出投资人已经很长时间不看 AI 项目了,而且作为一度被评为全球最有前途的全球知名 AI 芯片企业,Wave Computing,而今也正面临即将破产重组的窘境,成为疫情中第一家申请破产的 AI 明星公司。 至于这一悲剧产生的背后,是资本博弈的错?还是过度神化 AI 的祸?答案也许并不是一两句就能说得清楚的。 AI 芯片企业的暗淡,独角兽的缩影 早在申请破产前,Wave Computing 其实是一家名副其实的 AI
[嵌入式]
第一批明星AI公司为何正面临倒闭ing?
基于ARM7的蓝牙接入点的硬件系统结构和软件流程
  本文着重介绍了蓝牙接入点的硬件系统结构和软件流程,并针对在工业现场上使用蓝牙接入点将阀门、流量计、温度变送器等几个蓝牙设备连接到工业以太网中,实现了带蓝牙通信模块的工业设备和现有的有线网络的通信。   1引言   在工业现场中,由于有些环境比较恶劣,布线不方便等因素可以采用蓝牙无线通信技术来实现数据的通信。同时,工业现场中有很多以不同方式互连的设备,其中包括非智能化简单数据连接单元 (I/O)、智能化设备 (比如智能传感器、单回路控制器和 PLC)和监控系统 (作为 HMI使用,用于数据记录和监控 )等。这些设备大都是以各种不同的通信协议和媒介来互连的,其中有些就可以用蓝牙无线技术代替。本文以 AT91R40008为例,结
[网络通信]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved