32位DSP两级cache的结构设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
32 位DSP 两级cache 的结构设计
1 引言随着半导体技术的发展,DSP 性能不断提高,被广泛应用在控制,通信,家电等领域中。
DSP 内部核心部件ALU 具有极高的处理速度,而外部存储器的速度相对较低,存储系统已成为制约DSP 发展的一个瓶颈。
本文参照计算机存储结构,利用虚拟存储技术,对存储系统的结构进行了改进。
在DSP 中引入二级Cache 存储器结构,在较小的硬件开销下提高了DSP 的工作速度。
结合高性能低功耗DSP cache 设计这个项目,对两级cache 的结构和算法做了探讨。
2 cache 总体设计传统的存储器主要由Dram 组成,它的工作速度较慢,cache 存储器主要由SRAM 组成。
在DSP 中,存储系统可分层设计,将之分为两部分:容量较小的cache 存储器和容量较大的主存储器,cache 中存放着和主存中一致的较常用的指令与数据。
DSP 执行操作时可先向
速度较快的cache 取指令或数据,如果不命中则再从主存取指令或数据。
通过
提高cache 的命中率可以大大加快DSP 的整体运行速度,从而缓解由存储系统引起的瓶颈问题。
图1 cache 的结构及互连简图基于上述原理,我们设计了DSP 的cache 总体结构,如图1 所示。
图中设计采用了两级cache 设计,第一级cache 采用分立结构,将指令cache 和数据cache 分开设计,这样CPU 可以对数据和指令进行平行操作,结合DSP 取址,译码,读数,执行的四级流水线结构,充分提高系统效率。
二级cache 采用统一结构,数据和指令共用一个cache,此时可以根据程序执行的具体情况,二级cache 自动平衡指令和数据间的负载,从
而提高命中率。
DSP 若在一级cache 中未找到需要的指令和数据,则可在二级cache 中寻找。
此结构下,一级cache 找不到的数据和指令多数可在二级cache。