【技术实现步骤摘要】
【国外来华专利技术】高速缓存器中的零时延预提取本专利技术大体上涉及数字数据处理且更具体地说,涉及对高速缓存器的预提取。
技术介绍
常规数字数据处理器以非常快的时钟操作,且通常执行指令的速度比从通用存储器中召回指令的速度快。对将指令提供到数字数据处理器的问题的已知解决方案称为指令高速缓存。数字数据处理系统以物理和计算接近性对需要指令控制的数据要素提供小的快速存储器。此小的快速存储器存储所需指令的子集。数字数据处理器常常循环地工作。如果指令循环的全部或大部分存储在高速缓存器中,那么数字数据处理器可保持以比从通用存储器召回要快的速率用指令馈给。由于这些高速缓存方案,在实际需要之前确定将使用何指令是有帮助的。这类预提取使得高速缓存器能够存储指令以供在需要时召回。许多预提取技术存在一些问题。预提取请求消耗资源来确定高速缓存器是否已存储待预提取的数据。因此,预提取请求的优先级通常比按需请求的优先级低。
技术实现思路
实例实施例涉及数字数据处理设备中的高速缓存系统。所述数字数据处理设备包含:中央处理单元核心;一级指令高速缓存器;和二级高速缓存器。所述中央处理单元核心响应于程序指令而执行数据处理操作。所述中央处理单元核心在需要时经由请求地址发出对额外程序指令的指令请求。所述一级指令高速缓存器将程序指令子集暂时存储于一级高速缓存行中。当所述中央处理单元请求请求地址处的指令时,所述一级指令高速缓存器确定其是否将指令存储于所述请求地址处。如果是,那么所述一级指令高速缓存器供应请求的程序指令。如果否,那么所述一级指令高速缓存器将所述请求地址供应到二级高速 ...
【技术保护点】
1.一种数字数据处理设备,其包括:/n中央处理单元核心,其响应于程序指令而执行数据处理操作,所述中央处理单元核心经由请求地址发出对额外程序指令的指令请求;/n一级指令高速缓存器,其将程序指令子集暂时存储于第一数据大小的一级高速缓存行中,所述一级指令高速缓存器连接到所述中央处理单元核心并且接收每一请求地址,在接收到请求地址后,所述一级指令高速缓存器即刻:/n确定所述一级指令高速缓存器是否将程序指令存储于所述请求地址处,/n如果所述一级指令高速缓存器将程序指令存储于所述请求地址处,那么将所述程序指令供应到所述中央处理单元核心,和/n如果所述一级指令高速缓存器不将程序指令存储于所述请求地址处,那么供应所述请求地址;/n二级高速缓存器,其将程序指令子集暂时存储于第二数据大小的二级高速缓存行中,所述第二数据大小是所述第一数据大小的两倍,所述二级高速缓存器连接到所述一级指令高速缓存器并且接收所述一级指令高速缓存器供应的每一请求地址,在接收到请求地址后,所述一级指令高速缓存器即刻:/n确定所述二级高速缓存器是否将程序指令存储于所述请求地址处,/n如果所述二级高速缓存器将程序指令存储于所述请求地址处, ...
【技术特征摘要】
【国外来华专利技术】20171012 US 15/730,8741.一种数字数据处理设备,其包括:
中央处理单元核心,其响应于程序指令而执行数据处理操作,所述中央处理单元核心经由请求地址发出对额外程序指令的指令请求;
一级指令高速缓存器,其将程序指令子集暂时存储于第一数据大小的一级高速缓存行中,所述一级指令高速缓存器连接到所述中央处理单元核心并且接收每一请求地址,在接收到请求地址后,所述一级指令高速缓存器即刻:
确定所述一级指令高速缓存器是否将程序指令存储于所述请求地址处,
如果所述一级指令高速缓存器将程序指令存储于所述请求地址处,那么将所述程序指令供应到所述中央处理单元核心,和
如果所述一级指令高速缓存器不将程序指令存储于所述请求地址处,那么供应所述请求地址;
二级高速缓存器,其将程序指令子集暂时存储于第二数据大小的二级高速缓存行中,所述第二数据大小是所述第一数据大小的两倍,所述二级高速缓存器连接到所述一级指令高速缓存器并且接收所述一级指令高速缓存器供应的每一请求地址,在接收到请求地址后,所述一级指令高速缓存器即刻:
确定所述二级高速缓存器是否将程序指令存储于所述请求地址处,
如果所述二级高速缓存器将程序指令存储于所述请求地址处,那么
确定所述请求地址的所述对应一级指令高速缓存行是对应于对应二级指令高速缓存行的上半部还是下半部
如果所述请求地址的所述对应一级指令高速缓存行对应于所述对应二级指令高速缓存行的下半部,那么将所述对应二级指令高速缓存行的所述下半部供应到所述一级指令高速缓存器,且
如果所述请求地址的所述对应一级指令高速缓存行对应于所述对应二级指令高速缓存行的上半部,那么将所述对应二级指令高速缓存行的所述上半部供应到所述一级指令高速缓存器并且在后续二级高速缓存存储器循环上,将所述对应二级指令高速缓存行的所述下半部供应到所述一级指令高速缓存器。
2.根据权利要求1所述的数字数据处理设备,其中:
所述中央处理单元核心、所述一级指令高速缓存器和所述二级高速缓存器安置于单个集成电路上;且
其中所述二级高速缓存器在确定所述二级高速缓存器不将程序指令存储于所述请求地址处后,即刻将所述请求地址供应到另一存储器以获得高速缓存服务。
3.根据权利要求2所述的数字数据处理设备,其中:
所述额外存储器包含不安置于所述单个集成电路上的三级高速缓存器。
4.根据权利要求2所述的数字数据处理设备,其中:
所述额外存储器包含不安置于所述单个集成电路上的主存储器。
5.根据权利要求1所述的数字数据处理设备,其中:
所述二级高速缓存器包含
二级高速缓存存储器,其将所述程序指令子集暂时存储于所述二级高速缓存行中,
寄存器,其存储从所述二级高速缓存存储器召回的二级高速缓存行,所述寄存器具有存储所述二级高速缓存行的所述上半部的上半部和存储所述二级高速缓存行的所述下半部的下半部,
多路复用器,其具有连接到接收所述上半部高速缓存行的所述寄存器的第一输入、连接到接收所述下半部高速缓存行的所述寄存器的第二输入、连接到所述一级指令高速缓存器的输出和控制输入,所述多路复用器取决于所述控制输入上的信号而将所述第一输入或所述第二输入中的一个供应到所述输出。
6.根据权利要求5所述的数字数据处理设备,其中:
所述二级高速缓存器另外包含
多路复用器控制器,其接收所述请求地址并且连接到所述多路复用器的所述控制输入,所述多路复用器控制器取决于所述请求地址而控制所述多路复用器的选择。
7.根据权利要求6所述的数字数据处理设备,其中:
所述多路复用器控制器
控制所述多路复用器在对应于所述第一高速缓存器大小的所述请求地址的预先确定的位是0的情况下选择存储于所述寄存器中的所述下半部高速缓存行,
控制所述多路复用器在所述请求地址的所述预先确定的位是1的情况下选择存储于所述寄存器中的所述上半部高速缓存行。
8.根据权利要求1所述的数字数据处理设备,其中:
所述中央处理单元产生程序指令存储器按需请求和依据每一存储器按需请求的第一地址的所预测连续存储器存取的数目的指示;
在接收到预提取请求地址后,所述一级指令高速缓存器即刻另外:
产生等于先前按需请求地址的预提取请求地址,所述预提取请求地址以下一个一级高速缓存行大小递增直到达到所预测连续存储器存取的所述所指示数目,
确定所述一级指令高速缓存器是否将程序指令存储于所述预提取请求地址处,且
如果所述一级指令高速缓存器不将程序指令存储于所述预提取请求地址处,那么将所述预提取请求地址供应到所述二级高速缓存器;
在接收到预提取请求地址后,所述二级高速缓存器即刻:
确定所述二级高速缓存器是否将程序指令存储于所述预提取请求地址处,
如果所述二级高速缓存器将程序指令存储于所述预提取请求地址处,那么
确定所述对应一级指令高速缓存行是对应于对应二级指令高速缓存行的上半部还是下半部,
如果所述对应一级指令高速缓存行对应于所述对应二级指令高速缓存行的下半部,那么将所述对应二级指令高速缓存行的所述下半部供应到所述一级指令高速缓存器,且
如果所述对应一级指令高速缓存行对应于所述对应二级指令高速缓存行的上半部,那么将所述对应二级指令高速缓存行的所述上半部供应到所述一级指令高速缓存器;且
所述二级高速缓存器
仅在所述请求地址是按需请求地址时,将所述对应二级指令高速缓存行的所述下半部供应到所述一级指令高速缓存器,且
仅在所述请求地址是预提取请求地址时,不将所述对应二级指令高速缓存行的所述下半部供应到所述一级指令高速缓存器。
9.根据权利要求8所述的数字数据处理设备,其中:
在从所述二级高速缓存器接收到一半高速缓存行后,所述一级指令高速缓存器即刻另外:
确定所述半高速缓存行从所述二级高速缓存器的所述供应是响应于按需请求地址还是预提取请求地址抑或是下半部高速缓存行响应于对应上半部高速缓存行的按需请求,
如果所述半高速缓存行从所述二级高速缓存器的所述供应是响应于按需请求地址,那么存储来自所述二级高速缓存器的所述半高速缓存行并且将来自所述二级高速缓存器的所述半高速缓存行供应到所述中央处理单元核心...
【专利技术属性】
技术研发人员:O·奥洛罗德,R·文卡塔苏巴拉尼亚,H·翁,
申请(专利权)人:德州仪器公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。