-
公开(公告)号:CN104424117B
公开(公告)日:2017-09-05
申请号:CN201310364417.1
申请日:2013-08-20
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F12/1009
CPC classification number: G06F12/1045 , G06F12/0842 , G06F12/0862 , G06F12/1009 , G06F12/1027 , G06F2212/1016 , G06F2212/1021 , G06F2212/6022 , G06F2212/654 , G06F2212/68 , G06F2212/681
Abstract: 本发明提供一种内存物理地址查询方法和装置。该方法包括:将备用缓存器中存储的待寻址的第二线程的页表项存储至预取缓存器中,备用缓存器中存储旁路转换缓存器中设定时间内未被查询的页表项;接收第二线程发送的携带虚拟地址的内存寻址请求消息;根据虚拟地址在旁路转换缓存器和预取缓存器中查询对应的物理地址。本发明提供的内存物理地址查询方法和装置,根据待寻址第二线程的虚拟地址在旁路转换缓存器和预取缓存器中同时进行查询,且预取缓存器中存储有旁路转换缓存器中设定时间内未被查询的第二线程的页表项,从而提高对虚拟地址对应的物理地址的查询命中几率,缩短寻址时间。
-
公开(公告)号:CN104252425B
公开(公告)日:2017-07-28
申请号:CN201310269557.0
申请日:2013-06-28
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F9/54
CPC classification number: G06F12/0875 , G06F9/3802 , G06F9/3851 , G06F12/0842
Abstract: 本发明实施例提供一种指令缓存的管理方法和处理器,实际计算机领域,能够扩大硬件线程的指令缓存容量,降低指令缓存的缺失率,提高系统性能。该处理器的共享指令缓存中的硬件线程标识用于识别共享指令缓存中的缓存行对应的硬件线程,私有指令缓存用于存储从共享指令缓存中替换出的指令缓存行,还包括缺失缓存,当处理器的硬件线程在从指令缓存中获取指令时,同时访问指令缓存中的共享指令缓存和硬件线程对应的私有指令缓存,确定共享指令缓存和硬件线程对应的私有指令缓存是否存在指令,并根据判断结果从共享指令缓存或硬件线程对应的私有指令缓存中获取指令。本发明实施例用于管理处理器的指令缓存。
-
公开(公告)号:CN104423929B
公开(公告)日:2017-07-14
申请号:CN201310367653.9
申请日:2013-08-21
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F9/38
CPC classification number: G06F9/3806
Abstract: 本发明实施例公开了一种分支预测方法及相关装置,应用于处理器中,上述处理器包括:存储寄存器标识与预测目标跳转地址的一一对应关系信息的第一BTAC,和存储程序计数器的字段与预测目标跳转地址的一一对应关系信息的第二BTAC,其中,一种分支预测方法包括:从指令缓存中读取指令;若确定该指令满足寄存器预测条件,则:根据该指令的寄存器标识,从第一BTAC中获取该指令的预测目标跳转地址;若确定该指令不满足寄存器预测条件,则根据该指令的程序计数器,从第二BTAC中获取该指令的预测目标跳转地址,本发明提供的技术方案能够有效解决在共享BTAC时影响分支预测的准确率的问题。
-
公开(公告)号:CN104252334B
公开(公告)日:2017-07-07
申请号:CN201310270207.6
申请日:2013-06-29
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F9/38
CPC classification number: G06F9/3804
Abstract: 本发明实施例提供一种分支目标地址获取方法和装置,通过根据当前分支指令的程序计数PC值的中位确定第一分支目标地址缓存BTAC中与当前分支指令对应的第一条目;判断当前分支指令的进程号和当前分支指令的程序计数PC值的高位是否与当前分支指令对应的第一条目中的标签字段中存储的分支指令的进程号和分支指令的PC的高位相同;若相同,则获取与当前分支指令对应的第一条目中的目标PC字段中的分支目标地址作为当前分支指令的分支目标地址。本发明相当于将第一分支目标地址缓存BTAC中与当前分支指令的进程号、程序计数PC值的高位和中位都相同的分支指令的分支目标地址作为了当前分支指令的分支目标地址,因此,避免了进程间干扰的问题。
-
公开(公告)号:CN104424032A
公开(公告)日:2015-03-18
申请号:CN201310386082.3
申请日:2013-08-29
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F9/50
CPC classification number: G06F9/3851 , G06F9/3844
Abstract: 本发明实施例涉及计算机技术领域,公开了一种多线程处理器中分支预测资源的调度方法、系统和多线程处理器。其中,所述多线程处理器能够同时执行至少二个线程,所述多线程处理器包括至少一个分支预测部件,该方法包括:设置所述至少二个线程与所述至少一个分支预测部件的对应关系;将第一分支预测部件分配给第一线程独享使用;所述至少一个分支预测部件的数量小于所述至少二个线程的数量,所述至少一个分支预测部件包括所述第一分支预测部件,所述至少二个线程包括所述第一线程。实施本发明实施例,可以减少分支预测资源的硬件开销,提高分支预测的准确性。
-
公开(公告)号:CN104298552A
公开(公告)日:2015-01-21
申请号:CN201310295546.X
申请日:2013-07-15
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
Abstract: 本发明实施例涉及处理器技术领域,公开了一种多线程处理器的线程取指调度方法、系统和多线程处理器。其中,该方法包括:为第一线程进行取指;判断当前取到的指令是否包括第一类指令,如果是,暂停为所述第一线程在所述第一类指令之后的取指;所述第一类指令为能改变指令流且无法预知目标地址的指令。实施本发明实施例,可以节省处理器功耗,提高取指单元为其它线程取指的机会。
-
公开(公告)号:CN104239236A
公开(公告)日:2014-12-24
申请号:CN201310239646.0
申请日:2013-06-17
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F12/10
Abstract: 本发明实施例提供一种旁路转换缓冲缺失的处理方法及旁路转换缓冲,该方法包括:当当前访存操作发生TLB缺失异常时,TLB查询历史信息库以确定当前访存操作所使用的VA是否曾被使用,若在历史信息库中查找到该VA,则无需等到指令提取阶段再处理该TLB缺失异常,而是直接从内存中获取与当前VA对应的物理地址PA并进行相应的处理,实现对TLB缺失异常的快速处理,从而提升处理器的性能。
-
公开(公告)号:CN111459856B
公开(公告)日:2022-02-18
申请号:CN202010200676.0
申请日:2020-03-20
Applicant: 中国科学院计算技术研究所
Abstract: 本发明提供一种数据传输装置,包括:控制逻辑,其用于根据配置信息产生相应的控制信号以控制其他模块的动作;其中,存储体接口逻辑用于从存储体中读取数据或向存储体写入数据;第一选择逻辑用于选择与正向传输模式对应的数据传输路径或与反向传输模式对应的数据接收路径;数据对齐逻辑用于对传输的数据进行对齐操作;重组模块用于对传输的数据进行重组操作以将存储体中读出的数据块拆分成数据分量的形式并重组成新的数据块后传递给片上存储结构进行处理,或将片上存储结构处理后的数据块拆分成数据分量形式并重组成数据块写入存储体;第二选择逻辑用于选择与正向传输模式对应的数据接收路径或与反向传输模式对应的数据传输路径;数据路由逻辑用于确定数据传输的目的地址。
-
公开(公告)号:CN107608912B
公开(公告)日:2020-10-16
申请号:CN201710708313.6
申请日:2013-08-20
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F12/0862 , G06F12/1009 , G06F12/1045
Abstract: 本发明提供一种内存物理地址查询方法和装置。该方法包括:将备用缓存器中存储的待寻址的第二线程的页表项存储至预取缓存器中,备用缓存器中存储旁路转换缓存器中设定时间内未被查询的页表项;接收第二线程发送的携带虚拟地址的内存寻址请求消息;根据虚拟地址在旁路转换缓存器和预取缓存器中查询对应的物理地址。本发明提供的内存物理地址查询方法和装置,根据待寻址第二线程的虚拟地址在旁路转换缓存器和预取缓存器中同时进行查询,且预取缓存器中存储有旁路转换缓存器中设定时间内未被查询的第二线程的页表项,从而提高对虚拟地址对应的物理地址的查询命中几率,缩短寻址时间。
-
公开(公告)号:CN111459856A
公开(公告)日:2020-07-28
申请号:CN202010200676.0
申请日:2020-03-20
Applicant: 中国科学院计算技术研究所
Abstract: 本发明提供一种数据传输装置,包括:控制逻辑,其用于根据配置信息产生相应的控制信号以控制其他模块的动作;其中,存储体接口逻辑用于从存储体中读取数据或向存储体写入数据;第一选择逻辑用于选择与正向传输模式对应的数据传输路径或与反向传输模式对应的数据接收路径;数据对齐逻辑用于对传输的数据进行对齐操作;重组模块用于对传输的数据进行重组操作以将存储体中读出的数据块拆分成数据分量的形式并重组成新的数据块后传递给片上存储结构进行处理,或将片上存储结构处理后的数据块拆分成数据分量形式并重组成数据块写入存储体;第二选择逻辑用于选择与正向传输模式对应的数据接收路径或与反向传输模式对应的数据传输路径;数据路由逻辑用于确定数据传输的目的地址。
-
-
-
-
-
-
-
-
-