ARM9微控制器LPC3180的软硬件平台设计

发布者:笑脸猫最新更新时间:2006-10-25 来源: 单片机及嵌入式系统应用关键字:嵌入式  平台  ARM9 手机看文章 扫描二维码
随时随地手机看文章
嵌入式应用系统设计包括硬件平台和软件平台两部分。前者是以嵌入式微控制器/微处理器为核心的硬件系统;后者则是围绕嵌入式操作系统构建的软件系统。两者在设计上是密不可分的,并且需要在设计之间进行权衡优化,根据实际应用进行外扩和裁剪。 

基于ARM926EJS内核的LPC3180内部集成了丰富的外设资源,为嵌入式系统构建提供了很大的设计空间。本文结合笔者开发LPC3180嵌入式平台的实际经验,将具体介绍该系统的实现、结构组成和实验结果。
      
1  LPC3180芯片特性介绍 

LPC3180是Philips公司新推出的一款ARM9微控制器。它采用90nm工艺技术,片内集成ARM9EJS处理器内核,具有高计算性能、低功耗的特性,这使得在很多对功耗敏感的嵌入式应用场合中仍能使用高性能的ARM9微控制器。LPC3180内核正常工作电压为1.2V,在低功耗模式下可降至0.9 V;同时,LPC3180作为一款新型的32位微控制器,其新特性还包括: 

◆  片内集成向量浮点(VFP)协处理器。LPC3180的浮点运算单元有3条独立的流水线,支持并行单精度或双精度浮点加/减、乘/除以及乘累积运算,完全兼容IEEE754标准,适用于高速浮点运算场合。 
◆ 片内集成USB OTG控制模块,同时支持与便携USB主设备或USB外设相连,可用于与PDA、读卡器和打印机等设备直接相连,而无需PC机介入。 
◆ LPC3180采用多层的AHB总线系统,为各个主模块提供独立的总线,包括CPU的指令总线和数据总线、2套DMA控制器数据总线以及1套USB控制器数据总线。
        
    LPC3180的内部架构如图1所示。

图1  LPC3180内部架构
        
LPC3180的其他特性包括: 内部集成MLC/SLCNAND控制器、SDR/DDR SDRAM控制器、SD卡接口,UART、SPI、I2C外围通信模块,以及高速/毫秒定时器、RTC、看门狗定时器、10位ADC等其他功能模块。
      
2  硬件平台设计 

以LPC3180为核心的硬件平台设计框架如图2所示。

        图2  LPC3180硬件平台设计框图 

(1)  存储器系统 

NAND Flash存储器。通过LPC3180内部集成的MLC/SLC NAND控制器直接外接多级或单级NAND Flash器件。本系统选用ST NAND256R3A,其32 MB存储空间可满足存放系统引导程序、嵌入式操作系统内核和文件系统的大小要求。 

SDRAM存储器。系统选用2片16位MICRON SDRAM,并联构建32位SDRAM存储器系统。32 MB SDRAM空间,可满足嵌入式操作系统以及上层应用程序的运行要求。
        
SD卡插槽。系统通过LPC3180内部集成的SD卡接口,提供SD卡插槽,可用于SD存储卡外扩,作为外部存储空间。
      
(2)  外围通信接口 
UART接口。LPC3180内部集成了标准UART模块和高速UART模块,符合550工业标准。系统外扩了UART1/7、UART2和UART5,用于实现基本的串行通信功能;同时,UART5可用于系统启动时的外部程序下载。
        
USB接口。LPC3180内部集成了USB host、USB device以及USB OTG控制器,通过外部USB收发模块Philips ISP1301外扩USB host接口A、USB device接口B以及USB OTG接口AB。 
      
(3)  其他外围模块 

系统通过I2C接口外扩了一个简易的字符型LCD显示模块,用于应用程序运行结果显示;同时,为了简化硬件系统设计,系统的以太网模块通过USB host接口A以软件方式实现外扩。
      
3  系统关键模块设计
      
3.1  NAND Flash存储器模块 

LPC3180内部集成了MLC/SLC NAND控制器,通过外部引脚可直接外接多级或单级NAND Flash器件,如图3所示。需要注意的是MLC和SLC NAND控制器通过引脚复用,使用相同的接口与NAND Flash相连,且同一时刻只允许开启其中一个控制器,因此在系统上电后必须通过配置FLASH_CTRL寄存器选择要使用的NAND控制器。在闲置状态时,也可通过写寄存器关闭NAND控制器,以降低功耗。NAND Flash存储器模块是整个系统主要的静态数据存储空间,用于存储系统启动过程中的加载程序,因此在LPC3180系统设计中是必不可少的。

图3  NAND Flash接口连接图
      
3.2  USB接口模块 

LPC3180内部集成USB控制模块,但不包括USB物理层,系统通过外接USB收发模块ISP1301实现USB的物理层接口。图4是USB接口连接图。LPC3180内部通过AHB从设备总线配置USB控制器,可工作在全速(12 Mb/s)和低速(1.5 Mb/s)两种模式下。


图4  USB接口连接图
     
 4  软件系统设计 

软件系统组成包括系统引导程序Bootloader,嵌入式操作系统以及上层应用程序。其中Bootloader是运行于操作系统之前的引导程序,主要任务是完成系统启动之前必要的硬件初始化和操作系统加载;操作系统是整个嵌入式平台的核心程序,主要功能是高效地管理和分配底层硬件资源,并为上层应用程序提供与硬件细节无关的系统调用接口。
        
软件系统设计必须与硬件平台紧密结合。LPC3180采用NAND Flash作为整个系统的程序存储区域,在系统启动时通过片上ROM的bootstrap程序,从NAND Flash加载并执行外部引导程序来实现整个系统的启动步骤。因此,整个软件系统采取了图5所示的设计结构。

图5  软件系统结构框图
     
(1)  系统引导程序Bootloader
     由于启动过程首先从片内的bootstrap程序开始,因此系统采取二级Bootloader设计,包括第一级Sibl和第二级Uboot。

其中Sibl是bootstrap加载并执行的第一个引导程序,在程序大小上受到bootstrap加载的限制,因此设计上尽量做到了小型化和功能专一。它除了完成最基本的硬件初始化以外,主要功能是实现其他程序(包括Uboot)从NAND Flash的加载,完成下一级Bootloader运行之前的内存地址空间分布。
        
第二级Bootloader采用功能强大的sourceforge开源软件Uboot。Uboot的主要功能是完成嵌入式操作系统启动前的底层硬件初始化,并为Linux内核提供启动参数,最终引导操作系统Linux内核启动。另外,为了实现程序镜像文件编程写入NAND Flash,Uboot嵌入了一个NAND子系统,通过Uboot的用户命令行实现对NAND Flash的读/写操作,可将程序镜像写入NAND Flash指定的地址空间。
     
(2)  嵌入式操作系统

LPC3180内部集成了ARM926EJS处理器内核,带存储器管理单元MMU,支持多数主流嵌入式操作系统。系统通过编写板级支持代码,移植了Linux2.6.10作为平台操作系统,利用稳定的Linux2.6内核实现任务调度、进程管理、内存管理等功能,同时,针对Linux的可配置性,对内核进行裁剪和硬件驱动代码添加,系统实现了一个小型但功能强大的内核程序,适应了嵌入式系统存储资源相对紧缺的状况。
     
5  系统启动流程分析

由上面的软件结构组成分析可知,整个系统启动流程分为3个步骤:
        
①  系统上电后,首先从片上ROM固化的bootstrap程序执行。bootstrap用于完成外部引导程序下载并跳入执行。bootstrap运行过程首先读输入引脚GPIO_01。如果GPIO_01置为高,则从NAND Flash下载程序引导系统启动;如果置为低,则依次检测USB接口和UART5接口,通过外部连接下载引导程序。系统通过设置GPIO_IO跳线来控制bootstrap启动过程,本例将GPIO_01置为高,从NAND Flash下载程序。
        
②  系统启动的第二阶段是运行bootstrap下载的引导程序Sibl。Sibl完成系统必要的初始化后,从NAND Flash加载镜像程序到指定的SDRAM空间。镜像程序在起始位置添加了64字节的头信息,用于Sibl识别和加载,头信息数据结构如下:
      struct image_header {
        uint32_tih_magic;/*镜像头信息同步字,Sibl通过该字识别程序*/
        uint32_tih_hcrc;/*镜像头信息CRC校验码*/
        uint32_tih_time;/*存储镜像创建时间*/
        uint32_tih_size;/*镜像数据大小*/
        uint32_tih_load;/*镜像加载地址*/
        uint32_tih_ep;/*镜像入口地址*/
        uint32_tih_dcrc;/*镜像数据CRC校验码*/
        uint8_tih_os;/*操作系统信息*/
        uint8_tih_arch;/*CPU体系结构类型*/
        uint8_tih_type;/*镜像类型*/
        uint8_tih_comp;/*压缩类型*/
        uint8_tih_name[32];/*镜像名称*/
      }
        
Sibl从NAND Flash起始地址开始搜索。如果读到镜像同步字ih_magic,则识别镜像程序,并根据偏移地址读取程序大小ih_size和加载地址ih_load,将程序加载到指定的SDRAM空间;加载完成后根据CRC校验码ih_dcrc对SDRAM数据进行CRC检测;最后根据镜像类型ih_type判断镜像是否可执行,若可执行,则跳入镜像入口地址ih_ep,否则Sibl继续搜索NAND Flash镜像程序。
        
镜像程序使用U-boot提供的工具mkimage添加头信息,命令格式如下:
  
mkimage-A arch-O os-T type-C comp-a addr-e ep-n name-d data_file image

图6  系统启动过程内存空间分布图
        
③   完成Sibl加载后,内存空间分布如图6所示,系统进入启动流程的第三阶段U-boot。U-boot完成Linux内核镜像的解压缩和操作系统启动前的初始化,最终跳入内核入口地址,完成对Linux的引导。
      
6  系统性能分析 

系统构建提供了一个完整的LPC3180嵌入式软硬件平台,下面对LPC3180浮点运算能力进行测试和分析。测试方法是使用一个浮点运算密集的算法,用ADS编译器分别编译使能硬件VFP和软浮点运算两个版本的测试程序,并在不同的CPU时钟频率下比较运行时间,结果如表1所列。 

分析实验数据,可以得出结论:VFP协处理器在相同时钟频率下,提高了5倍左右的浮点运算性能。因此,LPC3180平台结合VFP协处理器,能够实现复杂的浮点运算密集算法。在微控制器中集成硬件浮点运算单元,这使得微控制器的数据处理能力大大提高,能够胜任多数的数字信号处理应用。

       表1  浮点运算结果


结语 

本文介绍了以LPC3180微控制器为核心的嵌入式软硬件平台的设计与实现,并测试、验证了LPC3180的浮点运算性能。该平台对于LPC3180的应用开发具有借鉴意义。目前LPC3180在医疗器械、工业控制、POS机、数字信号处理等领域有着广泛的应用。
      
参考文献 
[1]  LPC3180 User Manual. http://standardics.philips.com. 
[2]  ISP1301 User Manual. http://semiconductors.philips.com.
关键字:嵌入式  平台  ARM9 引用地址:ARM9微控制器LPC3180的软硬件平台设计

上一篇:手机自动售货机的嵌入式系统设计
下一篇:MPC850中复位逻辑和CPM协议切换的CPLD实现

推荐阅读最新更新时间:2024-05-02 20:26

基于嵌入式系统的能谱型核测井仪器
1 引言 民用非动力核技术是国家鼓励发展的高新技术,其中核测井技术是随着当代科技的发展以及它在石油、煤炭、铀矿等地质矿产勘探领域的应用而迅速发展起来的尖端测井技术之一。目前, 适用于铀矿核测井的国产仪器较少, 主要有成都理工大学研制的HFC-1 型γ 能谱测井仪器、核工业北京地质研究院研制的HD-4002 型综合测井仪等。这些仪器多数采用笔记本电脑为测井仪器系统的控制核心,为了能够更好适应野外测量工作的复杂环境,便于野外携带使用,本文将采用基于32 位处理器ARM 的嵌入式系统为测井仪系统的控制核心,并在此基础上开发相应的软硬件。 2 能谱型核测井仪的理论基础 众所周知,地壳的岩石和土壤中都有一定数量的放射性元
[工业控制]
基于<font color='red'>嵌入式</font>系统的能谱型核测井仪器
飞利浦0.14微米嵌入式闪存/EEPROM量产,应用广泛
飞利浦日前宣布其0.18微米CMOS嵌入式闪存/EEPROM技术现已完全符合Grade-1汽车电子应用的需求,其0.14微米嵌入式闪存/EEPROM已开始在位于荷兰奈梅亨市的晶圆厂进行量产,这也是飞利浦第二家符合这一工艺生产要求的工厂。 飞利浦称,嵌入式闪存和EEPROM存储器已成为当今许多片上系统解决方案的一个重要组成部分。它不但提供了在生产线上用不同的软件对这些芯片进行编程或进行现场软件升级的能力,还实现了对重要的本地数据例如PIN密码或地址簿信息的存储,并且可以在设备断电的时候保留这些数据。典型的应用包括手机、电视机、MP3播放器和智能卡、以及电线驱动的汽车电子系统。 飞利浦半导体嵌入式存储器技术战略规划经理Frans
[新品]
采用嵌入式S3C2410芯片的电话短信模块设计
引言   随着嵌入式技术和通信技术的发展,在手机领域,智能手机已成为手机发展的主流趋势。目前在智能手机领域,从处理器选型、操作系统选择以及应用程序开发都是研究的热点。在高校计算机相关专业的课程中也越来越多地涉及到智能手机的相关内容,越来越多的学生也都投入到智能手机的学习和开发阵营中来。因此,为这些学生提供相关的实验设备显得很必要。本文提出基于三星S3C2410芯片为核心构建智能手机硬件实验平台,并结合无线通信模块实现智能手机电话短消息功能。为学生进行智能手机相关的实验提供了平台,通过本平台,学生可以自己动手完成智能手机设计时的各种软件开发,改变了传统的验证式的实验平台模式,有利于学生创新能力的培养。   1 智能手机软硬件实
[单片机]
采用<font color='red'>嵌入式</font>S3C2410芯片的电话短信模块设计
构建基于RTLinux的嵌入式系统研究与开发
引 言   Linux或经过简单改进的Linux都是不能运行实时任务,这是因为Linux的“公平”时间分配的调度算法要保证分配给每一个用户程序占用CPU时间,然而实时任务对执行时间要求很严格,如每隔200ns从传感器取样的实时任务。Linux系统的虚拟内存的内存管理使得任何用户进程的页面在任何时刻都能被交换到硬盘或外存储器中,这样在Linux中将需要的页面返回到RAM中也需要花费一段不确定的时间。另外,对任务执行的时间和任务完成时间都是没有精确的可预知性的。Linux操作系统的“天生”缺陷使得 Linux无法满足实时嵌入式系统的实时系统要求。在本文中我们主要讨论实时操作系统RTLinux和Linux有机集成在一起,构成了一个全新的实
[嵌入式]
嵌入式技能-51单片机仿真芯片调试
程序是调出来的!!经常有小伙伴在知乎里面提问,说怎么实现花样流水灯,怎么实现按键控制LED灯,还有C语言的一些例子怎么输出的和自己想的不一样等等诸如此类的问题,我想说的是机器是个死东西,程序的写法有千千万种,各路知乎大神不可能涵盖所有问题,只能提供指导思路,重要的还是自己要掌握排除问题的方法,其中调试程序就是让程序一步一步的执行,当出现疑难杂症时我们可以用这种方法去查看单片机寄存器和数据变量是否按照正常的逻辑运行,当我们慢慢掌握了这个技能,就算再大的问题也能排查出来,甚至能让我们少走很多弯路,话不多说,老铁们开始干吧✌✌ 实验环境 :Keil软件,版本:C51 V9.54 STC-ISP综合下载软件,版本:V6.88 仿真芯
[单片机]
<font color='red'>嵌入式</font>技能-51单片机仿真芯片调试
建设世界级储能材料研发平台 重庆储能研究院加快打造新质生产力
2月26日,记者从重庆新型储能材料与装备研究院获悉,目前研究院研制出工业级镁基固态储氢材料与装备,创制了世界首款安时级镁离子电池,成功开发了镁合金一体化超大压铸件,正加快建设明月湖实验室,助力重庆打造新材料科创高地。重庆新型储能材料与装备研究院。创 ...
[新能源]
物联网无线传感平台 M2.COM中国正式发布
全球智能系统(Intelligent Systems)领导厂商 研华 科技在中国(上海)国际传感器技术与应用展览会(Sensor China)期间举办了IoT无线传感平台—— M2.COM 新闻发布会暨合作伙伴会议,在国内首次官方发布无线传感标准平台——M2.COM。会中邀请传感器、无线通信与系统制造商等产业界领导者——ARM、博世、Sensirion、dust networks、 TI、Semtech、意法半导体、PNI共同参与,携手推广M2.COM平台标准,拓展无缝的物联网传感器发展蓝图。 今年2月,M2.COM首次在德国纽伦堡嵌入式电子与工业计算机应用展中亮相,吸引了业界的广泛关注。而今,该平台在国内正式发布,也是研华在推动
[嵌入式]
合见工软发布了一站式电子设计数据管理平台UniVista EDMPro
上海合见工业软件集团有限公司(简称合见工软)近日推出一款融合电子系统研制流程、技术与管理实践的差异化一站式电子设计数据管理平台及应用解决方案UniVista EDMPro(简称:EDMPro)。 EDMPro致力于帮助系统级行业客户克服来自技术更新和研发管理的双重严峻挑战,为技术开发到产品上市提供一站式高效的研发管理保证。多层次复合性管理、设计研发协同、可靠性与质量保障、知识管理是保证研发管理的关键需求;提升产品差异化能力、缩短上市周期、降低产品成本,是保持企业竞争力的基础和核心。EDMPro帮助企业有效提升管理成熟度并使管理信息化应用迅速落地,切实践行“技术之上,管理先行”。EDMPro包含四款核心产品RMS(资源库管理系统)、
[手机便携]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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