[发明专利]一种提高重复程序执行性能的软硬件协同缓存装置有效
申请号: | 202010687037.1 | 申请日: | 2020-07-16 |
公开(公告)号: | CN111782273B | 公开(公告)日: | 2022-07-26 |
发明(设计)人: | 陈小文;郭阳;陈纪孝;李勇;王耀华;张洋;刘畅;李晨 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 周长清 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 重复 程序 执行 性能 软硬件 协同 缓存 装置 | ||
本发明公开了一种提高重复程序执行性能的软硬件协同缓存装置,其包括:起始寄存器,用来标识重复程序段的起始位置;结束寄存器,用来识别重复程序段的结束位置;计数寄存器,用来存储重复程序执行的次数;控制逻辑单元,用来判断重复程序段是否落入特定的地址空间,同时控制执行包缓存开始存储和派发执行包,并清除起始寄存器和结束寄存器的控制位和维护计数寄存器;执行包缓存单元,用来存储派发到功能部件的执行包信息;当将重复程序段的执行包全部缓存完后,由执行包缓存单元直接派发执行包到功能部件,同时暂停取指流水。本发明具有结构简单、原理简单、适用范围广等优点。
技术领域
本发明主要涉及到数字信号处理器技术领域,特指一种提高重复程序执行性能的软硬件协同缓存装置。
背景技术
数字信号处理器(DSP)作为数字信号处理的核心,其应用已经广泛深入到了航天、航空、雷达、声纳、通信、家用电器等各个领域,成为电子系统的心脏。高性能低功耗DSP的研制对推动这些领域技术的进步,起重要的作用。DSP可以快速的实现对信号的采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。
VLIW体系结构的DSP的指令特点是将固定长度的指令字段封装成一个取指包,执行包是由同一拍需要同时执行的指令字段组成,长度不固定,一个取指包中可能只包含一个执行包,也可能包含多个执行包。一个执行包可能只包含一个功能部件的指令,也可能包含多个功能部件的指令。
DSP应用程序的特点是重复调用一些核心算法,这体现在应用程序中存在大量的需要重复执行的程序段,最典型的是循环程序,如for循环和while循环。代码执行过程中存在大量需要重复执行的程序段对其执行效率带来了很大影响:一方面程序反复执行需要重新从执行包缓存中取指译码,将取指包译码成执行包,带来了不必要的功耗浪费;另一方面增加了对指令存储的访问次数,对于嵌入式应用而言不仅增加了访存延迟,更增大了访存功耗。
软件流水是一种提高程序执行效率的方法,软件流水通过重叠执行循环的不同迭代,来加速循环的执行和减少循环转移的次数。模调度算法是一种重要的软件流水算法,其核心思想是在为循环构建出一种迭代方式,当循环的不同迭代以一定的间隔执行时,迭代内和迭代间的指令间都没有相关性违反和资源冲突出现。
但在现有技术中存在以下问题,重复执行的程序段还是需要重新访存取指译码,无形中加大了访存延迟对程序执行效率的影响,同时也加大了程序执行时的功耗。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种结构简单、原理简单、适用范围广的提高重复程序执行性能的软硬件协同缓存装置。
为解决上述技术问题,本发明采用以下技术方案:
一种提高重复程序执行性能的软硬件协同缓存装置,其包括:
起始寄存器,用来标识重复程序段的起始位置;
结束寄存器,用来识别重复程序段的结束位置;
计数寄存器,用来存储重复程序执行的次数;
控制逻辑单元,用来判断重复程序段是否落入特定的地址空间,同时控制执行包缓存开始存储和派发执行包,并清除起始寄存器和结束寄存器的控制位和维护计数寄存器;
执行包缓存单元,用来存储派发到功能部件的执行包信息;当将重复程序段的执行包全部缓存完后,由执行包缓存单元直接派发执行包到功能部件,同时暂停取指流水。
作为本发明的进一步改进:当执行的不是重复程序时,选择正常取指译码的执行包进行派发;当执行的重复程序时,直接派发执行包缓存中的执行包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010687037.1/2.html,转载请声明来源钻瓜专利网。