[发明专利]采用可配置的片上存储装置实现访存操作的系统及方法有效
申请号: | 201010256400.0 | 申请日: | 2010-08-17 |
公开(公告)号: | CN101930357A | 公开(公告)日: | 2010-12-29 |
发明(设计)人: | 范灵俊;林伟;张浩;范东睿 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F9/34 | 分类号: | G06F9/34;G06F12/02 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 采用 配置 存储 装置 实现 操作 系统 方法 | ||
技术领域
本发明涉及处理器设计领域,特别是涉及采用可配置的片上存储装置实现访存操作的系统及方法。
背景技术
制造工艺的进步、应用软件的驱动以及单核处理器的功耗、散热问题,都促使了多核处理器的出现,然而,它并没有解决影响传统处理器性能的关键问题之一——存储墙(Memory Wall)问题。即,处理器的速度每年增长60%,而存储器存取延迟每年仅改善7%,导致处理器的计算速度和存储器的访问速度差距越来越大。因此,一种更加有效的存储结构组织,对于处理器的设计至关重要。
Cache结构的引入正是为了缓解访存的压力,包括多核结构中的私有Cache和共享Cache。如SUN SPARC T1/T2处理器采用的私有一级Cache和共享二级Cache;而为了更好的利用程序访存的局部性,减少片外访存,也可以设置程序员可控的片上存储(Scratchpad Memory,SPM),如IBM Cell处理器中的SPE Local Stores。但是,单一采用Cache的方式,虽然可以缓存内存中的所有内容,却不可避免会发生替换,依然带来了片外访存的延迟。而只有程序员可控的片上存储,无法将更多的内容映射到片上,更多的时候还是需要片外访存。
所以,如果一个存储装置对于Cache和SPM的优点兼而有之,就是一种比较好的实现方式。
发明内容
本发明的目的在于提供一种采用可配置的片上存储装置实现访存操作的系统及方法,其能够更好的发挥片上存储的功能,减少片外访存,降低小核计算部件等待数据的时间,进而更好的体现出多核处理器计算能力强的优势,提高程序运行的性能。
为实现本发明的目的而提供的一种可配置的片上存储装置,其特征在于,所述片上存储能够根据应用程序的计算特点作为Cache或者SPM使用,所述片上存储,包括:
配置模块,用于根据不同应用程序的计算特点和对SPM或Cache的空间大小的要求,多模式地配置所述片上存储。
所述配置模块,包括:
配置判断模块,用于根据应用程序的计算特点,判断是否需要对片上存储装置进行配置,若是,则触发模式判断模块;否则,不对所述片上存储装置进行配置,而将其作为Cache使用;
模式判断模块,用于判断对SPM或Cache的空间大小的要求是否严格,若是,则触发细粒度配置模块;否则,触发粗粒度配置模块;
粗粒度配置模块,用于以路为单位对所述片上存储进行配置,每一路对应一位标志位,标志位为1表示是SPM,标志位为0表示是Cache;
细粒度配置模块,用于以缓冲行为单位对所述片上存储进行配置。
所述粗粒度配置模块,将一片4路组相联的SRAM中1路,2路或3路配置成SPM使用,并至少要留一路作为Cache使用。
所述粗粒度配置模块,将MIPS指令集体系结构中保留的21号CP0寄存器作为配置寄存器,低四位代表标志位。
所述细粒度配置模块,是将一片4路组相联的SRAM,每路设置一个标志寄存器,用低七位来代表本路有多少缓冲行为单位被配置成SPM,同时,也遵循配置空间连续、从第0路开始配置的原则。
为实现本发明的目的还提供一种可配置的片上存储装置的配置方法,所述配置方法,包括下列步骤:
步骤010.根据应用程序的计算特点,判断是否需要对片上存储进行配置,若是,则执行步骤020;否则,不对所述片上存储进行配置,而将其作为Cache使用;
步骤020.判断对SPM或Cache的空间大小的要求是否严格,若是,则执行步骤030;否则,执行步骤340;
步骤030.细粒度配置:以缓冲行为单位对所述片上存储进行配置;
步骤040.粗粒度配置:以路为单位对所述片上存储进行配置,每一路对应一位标志位,标志位为1表示是SPM,标志位为0表示是Cache。
所述步骤040中,将一片4路组相联的SRAM中1路,2路或3路配置成SPM使用,并至少要留一路作为Cache使用。
所述步骤040中,将MIPS指令集体系结构中保留的21号CP0寄存器作为配置寄存器,低四位代表标志位。
所述步骤030中,将一片4路组相联的SRAM,每路设置一个标志寄存器,用低七位来代表本路有多少缓冲行为单位被配置成SPM,同时,也遵循配置空间连续、从第0路开始配置的原则。
所述标志位默认状态下为0000,需要进行配置的时候,使用专门写CP0寄存器的MTC0指令,将标志位置成0001,0011,0111;当作为SPM使用完后,还需要将标志寄存器清零,再次执行MTC0指令,写入的数据为0。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010256400.0/2.html,转载请声明来源钻瓜专利网。