论文部分内容阅读
近年来,DSP应用领域日益广泛,性能也不断提升,但处理器和访存系统的性能差距却越发明显,“存储墙”问题成为制约DSP性能进一步提升的瓶颈。多层次存储结构能有效改善“存储墙”问题,其中“两级Cache+RAM”存储结构是当前的主流形式之一,然而,Cache失效引起的访存等待又严重影响了处理器执行效率。研究表明,预取技术可以明显减少Cache失效率或失效代价,国内外的相关研究也不断推陈出新,但至今仍没有得到广泛认可的高性能预取结构问世,其主要原因便是成本和效率的均衡。因此,如何设计一种工程上易实现的有效的预取结构,是当前DSP设计中一个被不断探讨的热门问题。“YHFT-XDSP”是国防科技大学在研的一款高性能多核32位DSP,其主频可达1GHz。采用“两级Cache+RAM”存储结构,用户可以灵活地配置每一级Cache与RAM的比例。内核与外部接口包括扩展存储控制器(XMC)和外部存储控制器(ERI),其中,XMC是二级存储器(L2)到外部公共存储控制器(PMC)的主要存储访问通路,此外,XMC还负责完成地址位扩展并提供存储保护机制。本文基于“YHFT-XDSP”的XMC接口特点,围绕预取结构的设计进行研究,主要完成以下几方面工作:首先,根据Cahce失效行为的特点,结合“YHFT-XDSP”的四种L2失效请求模式,设计了附加数据过滤层的分离式预取机制。该预取策略为失效率较高、空间局部性差异较大的数据Cahce失效设计了数据过滤层,以过滤空间局部性不好情况下的无效预取,增强了预取的准确率。此外,该策略还针对四种L2失效请求模式,设计了预取辅助失效读功能,提高了访存带宽的利用率。其次,基于“YHFT-XDSP”的XMC接口实现了可流水化的预取结构,以及它与XMC接口配合工作的控制逻辑。当L2失效请求到达XMC接口时,如果失效请求命中预取结构,则直接从预取缓存中读取数据,失效代价明显减小。由于接口级硬件的速度要求低于缓存级,因此,相比于基于Cache的预取结构设计,基于XMC接口的设计保证了其实现的较低成本和设计的可扩展性。最后,综合应用模拟验证和FPGA仿真验证的方法,对上述实现的预取结构的功能和性能进行了验证和分析,并对预取结构的RLT级代码进行了综合优化。实验结果表明,预取结构能减少几类典型测试用例FPGA仿真执行时间最高达9%,有效提升处理器访存性能。