嵌入式系统硬件:内存与通信的深度解析
1. 内存系统的多样特性
1.1 内存层次结构与持久存储
在嵌入式系统和计算服务器中,小容量内存的架构需确保可预测的实时性能。将存储常用数据和指令的小容量内存与存储其余数据和指令的大容量内存相结合,通常比单一的大容量内存更节能。目前介绍的内存通常采用易失性内存技术,为实现持久存储,则需使用不同的内存技术。对于嵌入式系统而言,闪存往往是最佳选择;在其他情况下,也可使用硬盘或基于互联网的存储解决方案(如云存储)。
1.2 寄存器文件的特性
存储容量对访问时间和能耗的影响,在诸如寄存器文件这样的小容量内存中同样存在。寄存器文件的循环时间和功耗是其大小的函数,由于频繁访问寄存器,其功耗问题需要特别关注,否则可能会导致温度过高。
1.3 缓存的工作机制与影响
缓存的硬件需要检查缓存中是否存在与特定地址相关的有效信息副本,这一过程涉及比较缓存的标签字段(包含相关地址位的子集)。若缓存中没有有效副本,缓存信息会自动更新。缓存最初是为提高运行时效率而引入的,其名称源于法语“cacher”(隐藏),意味着程序员无需关注缓存,因为缓存信息的更新是自动进行的。然而,当需要访问大量信息时,缓存就不再那么“隐形”了。
以Drepper的分析为例,他研究了遍历线性列表条目的程序执行时间。每个条目包含一个指向后续条目的64位指针以及NPAD个64位字。对于Pentium P4处理器,其一级缓存为16 kB,每次访问需4个处理器周期;二级缓存为1 MB,每次访问需14个处理器周期;主内存每次访问则需200个处理器周期。当列表较小时,每个列表元素访问约需4个周期,这表明几乎总是在访问一