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中给出了两种常用的接口办法。