论文部分内容阅读
近年来,数字信号处理器(DSP)得到越来越广泛的应用,但DSP性能的提升同样面临“存储墙”问题带来的设计瓶颈,解决这个问题的重要途径就是设置多级存储结构。在当今DSP设计中,“cache+RAM”的二级存储体系结构已成为片内存储结构的主要选择,它不仅担任片内存储器的职责,同时还负责DSP核与外存之间的通信任务。因此,如何设计一种高效的“cache+RAM”片内二级存储结构,特别是一种高效的二级cache工作机制,是DSP设计中的一个关键问题。“银河飞腾-DX”DSP是我院自主研发的高性能定点DSP,采用超长指令字结构(VLIW),每个取值包由8条指令组成,最多可在一拍内完成8条指令的分配与执行。采用片内二级存储体系结构,二级存储器为总容量为1MB的共享“cache+RAM”的可配置结构,用户可根据实际应用程序的需要灵活调整二级存储器中cache和RAM的比例。本文围绕高效二级cache的设计实现进行研究,主要包括以下几方面工作。首先,分析了一般的Cache的设计方法,全面考察了主流DSP芯片中cache的性能要求和实现技术,设计实现了“银河飞腾-DX”DSP中L2 cache的缺失流水线结构。L2 cache的缺失流水线能够流水地处理L1的缺失请求,能够有效隐藏L1缺失请求在L2 cache中的命中时间,在“银河飞腾-DX”DSP平台上的RTL级模拟测试表明,L2 cache缺失流水线对处理访问L2存储器的缺失请求最多可达到1.31的加速比。其次,分析了实际应用程序对于cache的访存行为,总结出两种可以进行预测的访存失效地址序列类型,并针对这两种访存失效地址序列类型设计了一种步长自适应二级cache预取机制。该机制针对二级cache的工作特点,使用访存失效地址的cache块地址作为查询预取表的索引,简化了在cache基础上设计添加预取结构的硬件实现。同时,预取机制引入信心系统机制,能够有效地降低cache的失效率。对SPEC2006测试程序的运行结果表明,步长自适应二级cache预取机制对程序访存的失效率最多可降低4.5%,对程序的加速比最大可达1.3。最后,结合L2 cache缺失流水线结构和步长自适应二级cache预取机制,在“银河飞腾-DX“DSP平台上设计了带有预取结构的L2 cache缺失流水线。该结构综合了缺失流水线和步长自适应二级cache预取机制的优势,能够进一步提升“银河飞腾-DX”DSP的系统访存性能。