嵌入式应用中存储器类型的选择技巧.
嵌入式应用中存储器类型的选择技巧
存储器的类型将决定整个嵌入式系统的操作和性能,因此存储器的选择是一个非常重要的决策。无论系统是采用电池供电还是由市电供电,应用需求将决定存储器的类型(易失性或非易失性)以及使用目的(存储代码、数据或者两者兼有)。另外,在选择过程中, 存储器的尺寸和成本也是需要考虑的重要因素。对于较小的系统,微控制器自带的存储器就有可能满足系统要求,而较大的系统可能要求增加外部存储器。为嵌入式系统选择存储器类型时,需要考虑一些设计参数,包括微控制器的选择、电压范围、电池寿命、读写速度、存储器尺寸、存储器的特性、擦除/ 写入的耐久性以及系统总成本。
图1 列出了在嵌入式应用系统中最常用的存储器类型。下面讨论在选择存储器时应遵循的基本原则。
选择存储器时应遵循的基本原则
1.内部存储器与外部存储器
一般情况下,当确定了存储程序代码和数据所需要的存储空间之后,设计工程师将决定是采用内部存储器还是外部存储器。通常情况下,内部存储器的性价比最高但灵活性最低,因此设计工程师必须确定对存储的需求将来是否会增长,以及是否有某种途径可以升级到代码空间更大的微控制器。基于成本考虑,人们通常选择能满足应用要求的存储器容量最小的微控制器,因此在预测代码规模的时候要必须特别小心,因为代码规模增大可能要求更换微控制器。
目前市场上存在各种规模的外部存储器器件,我们很容易通过增加存储器来适应代码规模的增加。有时这意味着以封装尺寸相同但容量更大的存储器替代现有的存储器,或者在总线上增加存储器。即使微控制器带有内部存储器,也可以通过增加外部串行EEPR 0或闪存来满足系统对非易失性存储器的需求。
2.引导存储器
在较大的微控制器系统或基于处理器的系统中,设计工程师可以利用引导代码进行初始化。应用本身通常决定了是否需要引导代码,以及是否需要专门的引导存储器。例如,如果没有外部的寻址总线或串行引导接口,通常使用内部存储器,而不需要专门的引导器件。但在一些没有内部程序存储器的系统中,初始化是操作代码的一部分,因此所有代码都将驻留在同一个外部程序存储器中。某些微控制器既有内部存储器也有外部寻址总线,在这种情况下,引导代码将驻留在内部存储器中,而操作代码在外部存储器中。这很可能是最安全的方法,因为改变操作代码时不会出现意外地修改引导代码。在所有情况下,引导存储器都必须是非易失性存储器。
3.配置存储器对于现场可编程门阵列(FPGA或片上系统(SoC),人们使用存储器来存储配置信息。这种存储器必须是非易失性EPRO M EEPRO或闪存。大多数情况下,
FPGA采用SPI接口,但一些较老的器件仍采用FPGA串行接口。串行EEPRO或闪存器件最为常用,EPRO用得较少。
4.程序存储器
所有带处理器的系统都采用程序存储器,但设计工程师必须决定这个存储器是
位于处理器内部还是外部。在做出了这个决策之后,设计工程师才能进一步确
定存储器的容量和类型。当然有的时候,微控制器既有内部程序存储器也有外部寻址总线,此时设计工程师可以选择使用它们当中的任何一个,或者两者都使用。这就是为什么为某个应用选择最佳存储器的问题,常常由于微控制器的选择变得复杂起来,以及为什么改变存储器的规模也将导致改变微控制器的选择的原因。
如果微控制器既利用内部存储器也利用外部存储器,则内部存储器通常被用来存储不常改变的代码,而外部存储器用于存储更新比较频繁的代码和数据。设计工程师也需要考虑存储器是否将被在线重新编程或用新的可编程器件替代。
对于需要重编程功能的应用,人们通常选用带有内部闪存的微控制器,但带有内部OTP或ROM和外部闪存或EEPRO的微控制器也满足这个要求。为降低成本,外部闪存可用来存储代码和数据,但在存储数据时必须小心避免意外修改代码。
在大多数嵌入式系统中,人们利用闪存存储程序以便在线升级固件。代码稳定的较老的应用系统仍可以使用ROM和OTP存储器,但由于闪存的通用性,越来越多的应用系统正转向闪存。表1 给出了程序存储器类型的参数比较。
5.数据存储器
与程序存储器类似,数据存储器可以位于微控制器内部,或者是外部器件,但这两种情况存在一些差别。有时微控制器内部包含SRAM易失性)和EEPROM(易失)两种数据存储器,但有时不包含内部EEPRO,M在这种情况下,当需要存储大量数据时,设计工程师可以选择外部的串行EEPRO或串行闪存器件。当然,也可以使用并行EEPR O或闪存,但通常它们只被用作程序存储器。
当需要外部高速数据存储器时,通常选择并行SRA研使用外部串行EEPROI器件来满足对非易失性存储器的要求。一些设计还将闪存器件用作程序存储器,但保留一个扇区作为数据存储区。这种方法可以降低成本、空间并提供非易失性数据存储器。
针对非易失性存储器要求,串行EEPRO器件支持l2C SPI或微线(Microwire)通讯总线,而串行闪存通常使用SPI总线。由于写入速度很快且带有l2C和SPI 串行接口,FRAM在一些系统中得到应用。表2比较了各类数据存储器的优缺点。
6.易失性和非易失性存储器
存储器可分成易失性存储器或者非易失性存储器,前者在断电后将丢失数据,
而后者在断电后仍可保持数据。设计工程师有时将易失性存储器与后备电池一
起使用,使其表现犹如非易失性器件,但这可能比简单地使用非易失性存储器更加昂贵。然而,对要求存储器容量非常大的系统而言,带有后备电池的DRAM 可能是满足设计要求且性价比很高的一种方法。
在有连续能量供给的系统中,易失性或非易失性存储器都可以使用,但必须基于断电的可能性做出最终决策。如果存储器中的信息可以在电力恢复时从另一个信源中恢复出来,则可以使用易失性存储器。
选择易失性存储器与电池一起使用的另一个原因是速度。尽管非易失存储器件可以在断电时保持数据,但写入数据(一个字节、页或扇区)的时间较长。
7.串行存储器和并行存储器
在定义了应用系统之后,微控制器的选择是决定选择串行或并行存储器的一个
因素。对于较大的应用系统,微控制器通常没有足够大的内部存储器,这时必
须使用外部存储器,因为外部寻址总线通常是并行的,外部的程序存储器和数据存储器也将是并行的。
较小的应用系统通常使用带有内部存储器但没有外部地址总线的微控制器。如
果需要额外的数据存储器,外部串行存储器件是最佳选择。大多数情况下,这个额外的外部数据存储器是非易失性的。
根据不同的设计,引导存储器可以是串行也可以是并行的。如果微控制器没有
内部存储器,并行的非易失性存储器件对大多数应用系统而言是正确的选择。
但对一些高速应用,可以使用外部的非易失性串行存储器件来引导微控制器,并允许主代码存储在内部或外部高速SRAM中o
8. EEPRO与闪存
存储器技术的成熟使得RASH ROM之间的界限变得很模糊,如今有一些类型的存储器(如EEPRO和闪存)组合了两者的特性。这些器件像RAM一样进行读写, 并像ROM一样在断电时保持数据,它们都可电擦除且可编程,但各自有它们优缺点。
从软件角度看,独立的EEPRO和闪存器件是类似的,两者主要差别是EEPROM 器件可以逐字节地修改,而闪存器件只支持扇区擦除以及对被擦除单元的字、页或扇区进行编程。对闪存的重新编程还需要使用S …… 此处隐藏:2983字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [求职职场]加法运算定律的运用练习题
- [求职职场]大型石油化工工业过程节能新技术
- [求职职场]2015-2020年中国箱纸板行业分析与投资
- [求职职场]NADEX-IWC5A点焊机故障代码
- [求职职场]英语阅读 非常有用
- [求职职场]鲁卫疾控发〔2012〕2号(联合,印发山东
- [求职职场]2014年莆田公务员行测技巧:数字推理的
- [求职职场]基于最近发展区理论的高中数学课堂有效
- [求职职场]与贸易有关的知识产权协议
- [求职职场]【王风范】微演说·职场演说三
- [求职职场]新时代国珍健康大课堂
- [求职职场]群论期末考试复习题
- [求职职场]施工现场消防安全专项施工方案(范本)-
- [求职职场]初中物理光学知识点归纳完美版
- [求职职场]毕业设计总结与体会范文
- [求职职场]江南大学2018年上半年展示设计第1阶段
- [求职职场]景尚乡民兵参战支前保障方案
- [求职职场]【优质】2019年工会职工之家建设工作总
- [求职职场]数据库技术与应用—SQL Server 2008(第
- [求职职场]汽车变速箱构造与工作原理
- 首钢工业区工业遗产资源保护与再利用研
- 第4课 《大学》节选
- 2016程序文件——检验检测结果发布程序
- 2011年高考试题文言文阅读全解释__2011
- 化学是一门基础的自然科学
- 海外做市商制度的借鉴意义
- 外国建筑史复习资料(
- 七年级下思想品德期末综合测试(二)
- 思政课部2013年上学期教学工作总结
- 电大国际公法任务3 0004
- 《圆的认识》教学设计
- 中国轨道交通牵引变流器行业市场发展调
- 中泰证券#定期报告:坚守时代硬科技和
- 浅论企业财务管理与企业经营投资风险的
- 大功率半导体激光器光纤耦合技术调研报
- 中国传统家具的现状与发展探讨
- Broadcom数字电视芯片助海尔扩展高清电
- 新HSK4词汇练习 超全(五)
- 2013届高考数学单元考点复习12
- 雨霖铃精品课件




