YHFT-DX片内二级Cache控制器的优化设计
发布时间:2020-08-15 19:35
【摘要】: 数字信号处理器(DSP)在近年来得到了快速的发展和广泛的应用。片内存储系统的优劣直接影响DSP的性能。存储器层次结构有效的降低了CPU访存开销,“Cache+RAM”层次结构普遍应用在DSP处理器存储系统中,片内二级存储器(L2)是CPU和外设交换数据的中枢,存储器访存时间开销中L2处理数据的时间开销占有很大比例。L2是提高存储系统性能的主要突破口,设计一个高性能的片内二级存储器具有重要意义。 YHFT-DX是我们自主研发的一款高频高性能DSP,采用0.13umCMOS工艺,设计主频600MHz,片上存储器(L2)容量高达1MB,采用“Cache+RAM”结构,可以灵活配置Cache容量大小,具有可扩展性好的特点。该芯片的技术路线是对已有同样采用0.13umCMOS工艺、主频为350MHz的芯片进行优化设计。在深入分析原设计的基础上,本文对二级Cache控制器进行了设计优化,实现主频600MHz,并提高处理缺失效率、降低功耗。主要工作和贡献有: 一、针对二级Cache缺失流水线处理单个缺失请求的不足,设计实现了二级Cache预取结构——Stream Buffer,命中预取缓存的缺失请求可以提前2拍得到数据,在YHFT-DX一级Cache中连续发送读缺失的概率大约为0.14%,同时使得L2原本串行的两条数据通路可以并行执行,提高了总线资源的利用率,所以对Cache系统性能有极大的提升,这一改进使L2处理L1缺失的效率提高了6%以上。 二、为了把实现高频带来的功耗增大的危害降到最低,在二级Cache控制器中设计Tag行预取结构——Filter,但是Filter缓存行数较少缺失率较高。为了弥补这一缺点采用了Tag路预测结构。在体系结构级单条路径命中Filter或者Tag路预测准确时,L2的Tag体就处于休眠状态,所以L2的功耗要比同时读取四路Tag降低5%。 三、对原设计进行关键路径分析,发现二级Cache是影响性能的最关键模块,本文采用优化接口协议、平衡流水栈之间逻辑、关键信号提前处理、合理层次化等方法优化逻辑结构。对关键路径中结构规整的但延时较大的逻辑采用定制设计,为9到512位译码器建立时序模型。片内二级Cache经过时序优化设计后,达到了600MHz的设计目标。 四、为了充分的验证二级Cache控制器的功能正确性,在全芯片级验证中使用了大型的测试程序,使用CCS调试了针对于MP4视屏解码程序——Xvid,生成激励作为Benchmark。并且介绍了RTL级逻辑仿真的流程和准确定位设计缺陷的方法。 五、提出了压缩L2行大小增加相对存储容量、数据体纵向划分减小功耗优化L2数据体的先进方法,并且评估了其设计实现的可行性。
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2009
【分类号】:TP332
【图文】:
构内只使用 RAM,没有 Cache 配置,用于存放程序和/O 接口从片外加载,如 ADSP-21161N。的分层结构内使用一级 Cache/RAM 结构,Cache/RAM 的大小可编以存放所有程序或数据时,可以使用 Cache 方式与片外1[11]。结构内使用两级 Cache 结构,其二级 Cache 是可部分或全部层次程序的需要,如 TI C6416[12]。内 Cache 技术的重要性和发展趋势位于 CPU 和主存之间快速且小容量的存储器,一般由 的提高了 CPU 访问主存的平均速度,缩小了 CPU 和主问局部性原理为 Cache 技术提供了理论基础[13],如图
置搬移数据的负担,而 Cache 有两个明显的缺点:一是容量小存放的数据是有的,如果 Cache 不命中 CPU 从外存中读取数据带来的延迟很大,而且 Cache 失的时间也是不确定的,所以 Cache 中的数据是一种灵活的数据形式。二是数据致性的维护,Cache 中的数据必须和主存的数据保持一致,硬件资源限制了 Cache写的方式,这是一个相当复杂的过程,程序员对程序进行干预的情况会更加多且更加难以把握。显然对早期的 DSP 芯片来说“CPU 核+片内 RAM”的平板构更加适合,如上述的片内存储器非分层结构,片内只使用 RAM,用于存放程和数据。RAM 中的数据通过 I/O 接口和 DMA 从片外加载,如图 1-2 所示 ADSP21161N[14]。
图 1-3 TIC6416 的片内二级存储器结构程序员可以将一些核心代码和数据结构全部放入 RAM 中,需要处理的实时数通过 DMA 控制器进行搬移,以此来完成 DSP 的“确定性”要求。而对于那些核心的代码和数据结构则放在片外,利用 Cache 而不是 DMA 来进行片内外数据交换,这样既满足了 DSP 的“实时性”要求[17],也减少了程序员的手工干预。外,Cache 还可以很好地适用于那些“实时性”要求不太高的程序。可配置 Cache 容量大小的“Cache+RAM”存储架构是目前高性能 DSP 片内存结构的一个发展方向[18]。DSP 性能越来越高,片内存储器的容量越来越大,对che 性能也随之增加,针对“减小 Cache 失效频率”,“降低 Cache 失效的时间,“减小 Cache 命中时间”专家学者提出了很多的优化措施[19]。其中包括增加che 容量,优化关联度算法,路预测和行预取,利用编译器优化代码提高 Cache性能等等。而且现今 DSP 的片内存储器有由 SRAM 向 DRAM 转变的趋势[20]。管是 MIMD 还是多 DSP 核,乃至 DSP-RAM,基本上都是基于“DRAM+Cache”储架构的。值得注意的是,AD 公司的 TigerSHARC 系列 DSP 采用了 IBM 公司[21]
本文编号:2794551
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2009
【分类号】:TP332
【图文】:
构内只使用 RAM,没有 Cache 配置,用于存放程序和/O 接口从片外加载,如 ADSP-21161N。的分层结构内使用一级 Cache/RAM 结构,Cache/RAM 的大小可编以存放所有程序或数据时,可以使用 Cache 方式与片外1[11]。结构内使用两级 Cache 结构,其二级 Cache 是可部分或全部层次程序的需要,如 TI C6416[12]。内 Cache 技术的重要性和发展趋势位于 CPU 和主存之间快速且小容量的存储器,一般由 的提高了 CPU 访问主存的平均速度,缩小了 CPU 和主问局部性原理为 Cache 技术提供了理论基础[13],如图
置搬移数据的负担,而 Cache 有两个明显的缺点:一是容量小存放的数据是有的,如果 Cache 不命中 CPU 从外存中读取数据带来的延迟很大,而且 Cache 失的时间也是不确定的,所以 Cache 中的数据是一种灵活的数据形式。二是数据致性的维护,Cache 中的数据必须和主存的数据保持一致,硬件资源限制了 Cache写的方式,这是一个相当复杂的过程,程序员对程序进行干预的情况会更加多且更加难以把握。显然对早期的 DSP 芯片来说“CPU 核+片内 RAM”的平板构更加适合,如上述的片内存储器非分层结构,片内只使用 RAM,用于存放程和数据。RAM 中的数据通过 I/O 接口和 DMA 从片外加载,如图 1-2 所示 ADSP21161N[14]。
图 1-3 TIC6416 的片内二级存储器结构程序员可以将一些核心代码和数据结构全部放入 RAM 中,需要处理的实时数通过 DMA 控制器进行搬移,以此来完成 DSP 的“确定性”要求。而对于那些核心的代码和数据结构则放在片外,利用 Cache 而不是 DMA 来进行片内外数据交换,这样既满足了 DSP 的“实时性”要求[17],也减少了程序员的手工干预。外,Cache 还可以很好地适用于那些“实时性”要求不太高的程序。可配置 Cache 容量大小的“Cache+RAM”存储架构是目前高性能 DSP 片内存结构的一个发展方向[18]。DSP 性能越来越高,片内存储器的容量越来越大,对che 性能也随之增加,针对“减小 Cache 失效频率”,“降低 Cache 失效的时间,“减小 Cache 命中时间”专家学者提出了很多的优化措施[19]。其中包括增加che 容量,优化关联度算法,路预测和行预取,利用编译器优化代码提高 Cache性能等等。而且现今 DSP 的片内存储器有由 SRAM 向 DRAM 转变的趋势[20]。管是 MIMD 还是多 DSP 核,乃至 DSP-RAM,基本上都是基于“DRAM+Cache”储架构的。值得注意的是,AD 公司的 TigerSHARC 系列 DSP 采用了 IBM 公司[21]
【参考文献】
相关期刊论文 前1条
1 陈书明;李振涛;万江华;胡定磊;郭阳;汪东;扈啸;孙书为;;“银河飞腾”高性能数字信号处理器研究进展[J];计算机研究与发展;2006年06期
本文编号:2794551
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2794551.html