[发明专利]数据处理系统和用于预取数据和/或指令的方法无效
申请号: | 200780006966.4 | 申请日: | 2007-02-26 |
公开(公告)号: | CN101390047A | 公开(公告)日: | 2009-03-18 |
发明(设计)人: | 米林德·M·库尔卡尼 | 申请(专利权)人: | NXP股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 中科专利商标代理有限责任公司 | 代理人: | 朱进桂 |
地址: | 荷兰艾*** | 国省代码: | 荷兰;NL |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理系统 用于 数据 指令 方法 | ||
技术领域
本发明涉及一种数据处理系统、一种用于预取数据和/或指令的方法、一种将数据和/或指令加载到存储器中的方法以及一种电子设备。
背景技术
现今的数据处理系统或处理器是基于特定分级存储器体系(memoryhierarchy)的,所述分级存储器体系包括具有不同速度和大小的存储器。然而,由于快速的存储器价格较高,所以分级存储器体系被组织为多个等级,其中对于每个字节,每个等级都比下一个较低的等级更小、更快且价格更高。通常,一个等级中的所有数据也可在下面的等级中找到,而且较低等级中的所有数据可在低于该等级的等级中找到,直到达到该分级体系的底部。
高速缓冲存储器可构成分级存储器体系的第一等级,即,所述高速缓冲存储器是与中央处理器CPU或处理单元最接近的处理器。如果CPU请求可在高速缓存中找到的数据项,则所谓的高速缓存命中就会出现。然而,如果由CPU请求的数据项不能在高速缓存中找到,则所谓的高速缓存未命中(miss)就会出现。用于校正高速缓存未命中和获取所请求数据项所需的时间取决于存储器的等待时间(latency)和带宽。等待时间与用于检索块的第一个字的时间相对应,带宽与用于检索块的剩余部分的时间有关。高速缓存的基本思想是:获取在数据项的实际处理之前的即将来临的处理周期期间需要的数据项。
如果发生高速缓存未命中,则可以通过每次替换整个高速缓存行来充分利用存储器带宽。然而,为了提供可用的存储器带宽,这种方法还会增加高速缓存行的大小。较大的高速缓存行对于预取而言是尤其有利的。然而,如果高速缓存行的大小增加,则在程序不具有足够的空间局部性且高速缓存未命中频繁发生的情况下,系统性能可能会降低。
在“Dynamically Variable Line-Size Cache Exploiting High On-ChipMemory Bandwidth of Merged DRAM/Logic LSIs”’,K.Inoue等,Proceedingsof HPCA-5.5 International Conference on High Performance Computing,Jan.1999中,描述了根据当前正在执行的应用程序的特点在运行时间改变高速缓存行的大小。
可在数据处理系统内处理的算法在针对指令以及数据的参考局部性(locality of reference)方面有所不同。参考局部性构成在处理器上运行的应用程序的属性。参考局部性指示不同的存储区域是如何被应用程序所访问的。此处,参考局部性可指空间参考局部性和时间参考局部性。如果在不远的将来有很大的可能性会访问与最近访问的数据位置距离很近的数据位置,则应用程序具有较好的空间参考局部性。时间参考局部性指示对最近数据位置的访问将会在不远的将来再次发生。所以,一些算法具有较好的参考局部性(空间、时间或两者),而另一些算法具有较差的参考局部性。相应地,一些算法具有较好的高速缓存命中率,而另一些算法具有相当差的高速缓存命中率。应当注意,高速缓存未命中不能避免。然而,为了降低高速缓存未命中损失,高速缓存未命中率应降低到最小。如果处理后的数据包括充足的空间局部性,则可以使用更大的高速缓存行。
发明内容
本发明的目的是提供降低高速缓存未命中损失量的一种数据处理系统以及一种用于预取数据和/或指令的方法。
由根据权利要求1所述的数据处理系统、根据权利要求5所述的用于将数据和/或指令加载到存储器中的方法、根据权利要求6所述的用于预取数据和/或指令的方法以及根据权利要求8所述的电子设备来实现该目的。
所以,提供了一种用于处理至少一个应用程序的数据处理系统。所述数据处理系统包括用于执行所述应用程序的处理器。所述系统还包括与处理器相关联的高速缓冲存储器,所述高速缓冲存储器用于对存储器的数据和/或指令进行存储。所述系统还包括用于对应用程序的数据和/或指令进行存储的存储单元。存储单元包括多个存储分区。具有相似数据属性的数据被存储在相同的存储分区中。预定义预取模式与存储分区的每一个相关联。
根据本发明的一方面,高速缓冲存储器包括多个寄存器,所述多个寄存器的每一个都与存储器的存储分区之一相关联。寄存器用于对与存储分区相关联的预定义预取模式进行存储。根据存储在寄存器中的预取模式来预取数据和/或指令。因此,对于数据项,尤其对于数据项的数据属性可以自定义对该具体数据项的预取。
根据本发明的另一方面,具有相似的参考局部性的数据被存储在相同的存储分区中。相应地,由于仅预取所需数据项,所以高速缓存未命中损失会降低。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于NXP股份有限公司,未经NXP股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780006966.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电抗器部件
- 下一篇:采用二维定位设备产生一维信号的方法及装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置