[发明专利]运算处理装置、信息处理装置、以及运算处理装置的存储器访问方法有效
| 申请号: | 200680040941.1 | 申请日: | 2006-01-20 |
| 公开(公告)号: | CN101300555A | 公开(公告)日: | 2008-11-05 |
| 发明(设计)人: | 木村启昭 | 申请(专利权)人: | 富士通株式会社 |
| 主分类号: | G06F12/10 | 分类号: | G06F12/10;G06F12/08 |
| 代理公司: | 北京三友知识产权代理有限公司 | 代理人: | 黄纶伟 |
| 地址: | 日本神*** | 国省代码: | 日本;JP |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 运算 处理 装置 信息处理 以及 存储器 访问 方法 | ||
技术领域
本发明涉及具有MMU(Memory Management Unit-存储器管理单元)等高速缓冲存储器和TLB(Translation Lookaside Buffer-转换后援缓冲区)的信息处理装置,并涉及在发生MMU-MISS-TRAP(TLB失败)时向高速缓冲存储器进行数据预取的技术。
背景技术
一般,与CPU(Central Processing Unit-中央处理器)的工作速度相比,主存储部的工作速度较慢,并且,由于CPU与主存储部的距离也较远,因此,CPU为了从主存储部取得数据,当发生主存储访问时,耗费处理时间。
因此,在CPU内部的执行处理命令控制和运算控制的命令运算部与主存储部之间安装高速缓冲存储器的系统已成为当前的主流。
高速缓冲存储器与主存储部比较,其可存储的容量小,但能以高速进行工作,并且,由于其与命令运算部之间的距离也比其与主存储部之间的距离近,因此,命令运算部可以用比访问主存储部远为短暂的时间将数据取出。
接着,对MMU(Memory Management Unit)进行描述,例如,在SPARC(注册商标)体系结构中,OS(Oprating System-操作系统)管理着从虚拟地址到物理地址的转换表,将其一部分项目存储到主存储部上的TSB(Translation Storage Buffer:转换存储缓冲区;地址转换用表)中,该项目由称为TTE(Translation Table Entry-转换表项目)的虚拟地址(TTE-Tag)和物理地址(TTE-Data)的对构成。
另外,还将其一部分项目存储在MMU内的TLB(TranslationLookaside Buffer)中。
此处,TSB虽然容量大,但来自命令运算部的访问相当耗费时间,而TLB虽然容量小,但能够从命令运算部进行高速的访问。
在具有这样的TSB和TLB的系统中,在所指定的虚拟地址没有被登记到位于MMU内的TLB中的情况下,就会产生MMU-MISS-TRAP(MMU失败;TLB失败)。
此时,命令运算部将该MMU-MISS-TRAP报告给OS,接收报告后的OS向CPU内部的命令运算部请求存储器访问处理,由此CPU内部的命令运算部按照图9的流程(步骤S100~S118)和图10的时间图(T1~T33)所示执行该存储器访问处理。并且,图10所示的T1~T33表示CPU内部的命令运算部的处理单位时间。
即,命令运算部根据虚拟地址,开始进行存储器访问(图9的步骤S100),从TLB中检索采用该虚拟地址和对应该虚拟地址的物理地址的对的项目(参照图9的步骤S101、图10的T1)。
此处,如果包含该虚拟地址的项目被登记在TLB中(即,在没有发生MMU-MISS-TRAP的情况下;图9的步骤S102的否分支),命令运算部为了取得与所检索的该虚拟地址对应的物理地址所表示的数据,而使用该物理地址检索高速缓冲存储器(图9的步骤S103)。
并且,若高速缓冲存储器中登记了包含该数据的高速缓冲项目(图9的步骤S104的是分支),则通过命令运算部读出该数据,完成存储器访问(步骤S105),结束处理。
另外,在高速缓冲存储器中没有登记采用该物理地址与数据的对的高速缓冲项目的情况下(图9的步骤S104的否分支),则命令运算部使用该物理地址进行主存储访问,将该物理地址的数据登记到高速缓冲存储器中(图9的步骤S106),再次开始基于该虚拟地址的处理(图9的步骤S107;即,返回到上述步骤S100)。
另一方面,在TLB中没有登记采用进行了检索的该虚拟地址的对的项目的情况下(即,发生MMU-MISS-TRAP的情况;参照图9的步骤S102的是分支,图10的T2),接收到MMU-MISS-TRAP报告后的OS向命令运算部请求后述的图9的步骤S108~S118的处理。
即,命令运算部将发生了MMU失败的该虚拟地址设定在寄存器中,并且根据该虚拟地址生成与该虚拟地址对应的TSB上的虚拟地址(以下称为TSB虚拟地址),将其设定在寄存器中之后,从寄存器中读出这些虚拟地址和TSB虚拟地址(参照图9的步骤S108、S109以及图10的T3~T8)。
并且,将该虚拟地址设定在寄存器中的处理以及生成TSB虚拟地址并将其设定在寄存器中的处理,在图10的T2到T3期间被执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于富士通株式会社,未经富士通株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680040941.1/2.html,转载请声明来源钻瓜专利网。





