当前位置: 首页 > 专利查询>ARM有限公司专利>正文

指针之外的写入制造技术

技术编号:39566736 阅读:13 留言:0更新日期:2023-12-03 19:17
公开了数据处理装置和数据处理的方法,其中处理元件维持存储器中的缓冲器以支持该处理元件执行的数据处理。写入指针指示该缓冲器中的当前写入位置。高速缓存保持经受该数据处理操作的该数据的副本,并且在高速缓存行数据单元中执行从该存储器到该高速缓存中的分配以及从该高速缓存到该存储器的回写。当该处理元件在由该写入指针确定的位置处执行对该缓冲器的数据写入时,该处理器在与该缓冲器中的数据写入的前进方向相对应的更新方向上更新该写入指针,并且该缓冲器中的该前进方向上由该写入指针指示的该位置和边界位置之间的另外的位置被发信号通知用预定值来写入。外的位置被发信号通知用预定值来写入。外的位置被发信号通知用预定值来写入。

【技术实现步骤摘要】
指针之外的写入
[0001]本技术涉及数据处理。具体地,它们涉及数据处理装置的操作,该数据处理装置在由写入指针指示的位置处维持并写入存储器中的缓冲器。
[0002]对数据执行数据处理操作的数据处理装置可维持存储器中的缓冲器,该数据处理装置将数据值写入缓冲器中。为了跟踪下一数据值应当被写入缓冲器中的何处,数据处理装置可设置有存储写入指针的寄存器,该写入指针指示缓冲器中的当前写入位置。然后,当新的数据值被写入缓冲器,写入指针对应地更新。
[0003]至少一些示例提供了一种数据处理装置,该数据处理装置包括:
[0004]处理元件,该处理元件被配置为执行数据处理操作;
[0005]存储器,该存储器被配置为存储经受该数据处理操作的数据,其中作为该数据处理操作的一部分,处理电路被配置为维持该存储器中的缓冲器;
[0006]寄存器,该寄存器被配置为保持指示该缓冲器中的当前写入位置的写入指针;以及
[0007]高速缓存,该高速缓存被配置为高速缓存经受由该处理电路进行的该数据处理操作的该数据的副本,其中该数据的该副本被存储在高速缓存行中,其中该高速缓存被配置为在高速缓存行数据单元中执行从该存储器到该高速缓存中的分配以及从该高速缓存到该存储器的回写,
[0008]并且其中该处理元件被配置为使得,当该处理元件在由该写入指针确定的位置处执行对该缓冲器的数据写入时,该处理器在与该缓冲器中的数据写入的前进方向相对应的更新方向上更新该写入指针,并且该缓冲器中的该前进方向上由该写入指针指示的该位置和边界位置之间的另外的位置被发信号通知用预定值来写入。
[0009]至少一些示例提供了一种数据处理的方法,该方法包括:
[0010]执行数据处理操作;
[0011]将经受该数据处理操作的数据存储在存储器中,其中该数据处理操作包括维持该存储器中的缓冲器;
[0012]在寄存器中保持指示该缓冲器中的当前写入位置的写入指针;以及
[0013]将经受该数据处理操作的该数据的副本高速缓存在高速缓存中,其中该数据的该副本被存储在高速缓存行中,并且其中从该存储器到该高速缓存中的分配以及从该高速缓存到该存储器的回写是在高速缓存行数据单元中执行的;
[0014]并且当在由该写入指针确定的位置处执行对该缓冲器的数据写入时,在与该缓冲器中的数据写入的前进方向相对应的更新方向上更新该写入指针,并且发信号通知该缓冲器中的该前进方向上由该写入指针指示的该位置和边界位置之间的另外的位置要用预定值写入。
[0015]将参考如附图所示的本专利技术的实施方案,结合以下描述阅读,仅以举例的方式进一步描述本技术,其中:
[0016]图1A示意性地示出了根据一些公开示例的数据处理装置;
[0017]图1B示出了根据一些公开示例将样本数据写入缓冲器;
[0018]图2示意性地示出了根据一些公开示例的包括统计剖析电路的数据处理装置;
[0019]图3示意性地示出了根据一些公开示例的包括跟踪生成电路的数据处理装置;
[0020]图4A示出了根据一些公开示例的硬件影子栈机制的操作;
[0021]图4B示出了根据一些公开示例的软件栈;
[0022]图4C示出了根据一些公开示例的递降栈;
[0023]图5A至图5D示出了根据一些公开示例的在将新数据项推入到缓冲器中时和在从缓冲器弹出条目时的本技术;
[0024]图6示出了根据本技术细分为保持缓冲器的存储页面的存储器的区域;
[0025]图7A至图7D示出了根据一些公开示例的在将新数据项推入到缓冲器中时和在从缓冲器弹出条目时的本技术;
[0026]图8示出了其中根据本技术实现循环缓冲器的存储器的区域;
[0027]图9示意性地示出了根据一些公开示例的数据处理装置;并且
[0028]图10是显示根据一些公开示例的方法所采取的步骤序列的流程图。
[0029]在本文公开的一个示例中,存在一种数据处理装置,该数据处理装置包括:
[0030]处理元件,该处理元件被配置为执行数据处理操作;
[0031]存储器,该存储器被配置为存储经受该数据处理操作的数据,其中作为该数据处理操作的一部分,该处理电路被配置为维持该存储器中的缓冲器;
[0032]寄存器,该寄存器被配置为保持指示该缓冲器中的当前写入位置的写入指针;以及
[0033]高速缓存,该高速缓存被配置为高速缓存经受由该处理电路进行的该数据处理操作的该数据的副本,其中该数据的该副本被存储在高速缓存行中,其中该高速缓存被配置为在高速缓存行数据单元中执行从该存储器到该高速缓存中的分配以及从该高速缓存到该存储器的回写,
[0034]并且其中该处理元件被配置为使得,当该处理元件在由该写入指针确定的位置处执行对该缓冲器的数据写入时,该处理器在与该缓冲器中的数据写入的前进方向相对应的更新方向上更新该写入指针,并且该缓冲器中的该前进方向上由该写入指针指示的该位置和边界位置之间的另外的位置被发信号通知用预定值来写入。
[0035]使用高速缓存来保持经受处理电路的数据处理操作的数据的临时副本通过在很大程度上避免与从存储器读取数据和向存储器写入数据相关联的等待时间来提高处理元件的效率。因此,在存储器中建立缓冲器的情况下,该缓冲器的更有效使用通常是由于高速缓存处理元件当前正在从缓冲器读取和写入缓冲器的数据项而产生的。此外,当高速缓存被组织为在高速缓存行数据单元中执行从存储器到高速缓存中的分配以及从高速缓存到存储器的回写时,这提高了高速缓存的存储器系统交互的效率。然而,这种基于高速缓存行的方法还意味着一般而言关于给定高速缓存行中的缓冲器内容的动作将意味着整个高速缓存行将首先需要由处理元件读取,之后处理元件可修改该高速缓存行中的任何数据项。本技术是基于以下认识:当参考写入指针来引导缓冲器使用时,并且当在缓冲器中存在数据写入的限定前进方向时,这意味着在写入指针之外的原本在写入指针到达该位置之前不访问的位置可通过整个基于高速缓存行的将数据移入和移出高速缓存的方法而不必要地带入高速缓存中。因此,本技术提出了一种方法,根据该方法,当处理元件执行对缓冲器的
数据写入(如由写入指针导引的)时,缓冲器中由写入指针指示的位置和边界位置(在用于缓冲器的使用的写入前进方向上)之间的位置被发信号通知用预定值写入。此“发信号通知用预定值写入”一方面可涉及用预定值显式填充的对应高速缓存位置。在适当的过程中,包括预定值的高速缓存行随后可被写回到存储器(如果在此期间没有进一步修改的话)。另一方面,“发信号通知用预定值写入”可涉及被指示为(临时地)与预定值相关联的对应高速缓存位置。换句话说,对应的高速缓存位置(还)没有被显式修改。如下文将更详细讨论的,此技术可通过正式正确地注意这些位置的修改(覆盖它们确实必须在高速缓存行和/或存储器中被对应地修改的可能性)来支持缓冲器的使用,诸如相对快速连续地推入和弹出数据项,但同时通过不实际修改那些位置来节省功率/处理支出,因为知道修改本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理装置,所述数据处理装置包括:处理元件,所述处理元件被配置为执行数据处理操作;存储器,所述存储器被配置为存储经受所述数据处理操作的数据,其中作为所述数据处理操作的一部分,处理电路被配置为维持所述存储器中的缓冲器;寄存器,所述寄存器被配置为保持指示所述缓冲器中的当前写入位置的写入指针;和高速缓存,所述高速缓存被配置为高速缓存经受由所述处理电路进行的所述数据处理操作的所述数据的副本,其中所述数据的所述副本被存储在高速缓存行中,其中所述高速缓存被配置为在高速缓存行数据单元中执行从所述存储器到所述高速缓存中的分配以及从所述高速缓存到所述存储器的回写,并且其中所述处理元件被配置为使得,当所述处理元件在由所述写入指针确定的位置处执行对所述缓冲器的数据写入时,处理器在与所述缓冲器中的数据写入的前进方向相对应的更新方向上更新所述写入指针,并且所述缓冲器中的所述前进方向上由所述写入指针指示的所述位置和边界位置之间的另外的位置被发信号通知用预定值来写入。2.根据权利要求1所述的数据处理装置,所述数据处理装置还包括:存储元件,所述存储元件与所述高速缓存相关联并且被配置为存储与所述高速缓存的每个高速缓存行相关联的指示符值,其中指示符值的相应位指示高速缓存行的哪些数据项被发信号通知为具有所述预定值。3.根据权利要求2所述的数据处理装置,其中发信号通知所述缓冲器中的所述前进方向上由所述写入指针指示的所述位置和所述边界位置之间的所述另外的位置将用所述预定值来写入包括:设定与和所述另外的位置相关联的至少一个高速缓存行相关联的至少一个指示符值的位。4.根据权利要求1至3中任一项所述的数据处理装置,其中所述处理电路被配置为以后进先出方式维持所述存储器中的所述缓冲器,其中添加到所述缓冲器的被推入数据项条目写入在由所述写入指针确定的所述位置处,其中被弹出数据项从所述缓冲器的移除包括在与所述前进方向相反的方向上从与由所述写入指针确定的所述位置相邻的弹出位置弹出所述被弹出数据项,并且其中所述弹出位置被发信号通知用所述预定值来写入。5.根据从属于权利要求3的权利要求4所述的数据处理装置,其中所述被弹出数据项从所述缓冲器的所述移除包括取消设定与和所述另外的位置相关联的所述至少一个高速缓存行相关联的所述至少一个指示符值的所述位以及取消设定与所述弹出位置相关联的指示符值的位。6.根据权利要求1至5所述的数据处理装置,其中所述边界位置与高速缓存行极限相对应。7.根据权利要求6所述的数据处理装置,其中所述高速缓存行极限与高速缓存行末端相对应。8.根据权利要求6所述的数据处理装置,其中所述边界位置与高速缓存行开端相对应。9.根据权利要求1至8中任一项所述的数据处理装置,其中所述处理元件被配置为在与所述缓冲器中的数据写入的递升前进方向相对应的递升方向上更新所述写入指针。10.根据权利要求1至8中任一项所述的数据处理装置,其中所述处理元件被配置为在
与所述缓冲器中的数据写入的递降前进方向相对应的递降方向上更新所述写入指针。11.根据权利要求1至10中任一项所述的数据处理装置,其中由所述处理元件执行的所述数据处理操作包括数据样本,并且其中所述存储器中的所述缓冲器是样本数据缓冲器。12.根据权利要求1至10中任一项所述的数据处理装置,其中由所述处理元件执行的所述数据处理操作包括程序流跟踪数据的生成,并且其中所述存储器中的所述缓冲器是跟踪缓冲器。13.根据权利要求1至10中任一项所述的数据处理装置,其中由所述处理元件执行的所述数据处理操作包括分支指令和返...

【专利技术属性】
技术研发人员:迈克尔
申请(专利权)人:Arm有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1