-
公开(公告)号:CN104583956A
公开(公告)日:2015-04-29
申请号:CN201380042998.5
申请日:2013-06-13
申请人: 索夫特机械公司
CPC分类号: G06F9/3005 , G06F8/443 , G06F8/445 , G06F9/30032 , G06F9/30043 , G06F9/30145 , G06F9/3017 , G06F9/3826 , G06F9/3834 , G06F9/3855 , G06F9/3861
摘要: 一种用于在乱序处理器中从存储指令向对应的加载指令转发数据的方法。该方法包括访问传入的指令的序列,在指令的所述序列之中,将存储指令分离成存储地址指令和存储数据指令,其中存储地址执行地址计算和取读,并且其中存储数据执行寄存器内容到存储器地址的加载。该方法还包括:在指令的所述序列之中,将加载指令分离成加载地址指令和加载数据指令,其中加载地址执行地址计算和取读,并且其中加载数据执行存储器地址内容到寄存器中的加载,以及将存储地址指令和加载地址指令重新排序得比LD/SD指令序列更早并且距LD/SD指令序列更远,以实现加载和存储的较早的分派和执行。
-
公开(公告)号:CN104040491A
公开(公告)日:2014-09-10
申请号:CN201180076248.0
申请日:2011-11-22
申请人: 索夫特机械公司
发明人: M·阿布达拉
CPC分类号: G06F9/3887 , G06F9/30145 , G06F9/30174 , G06F9/38 , G06F9/3838 , G06F9/3853
摘要: 一种用于加速微处理器的代码优化的方法。该方法包括使用指令提取部件来提取传入的微指令序列并且向解码部件传送所提取的宏指令用于解码成微指令。通过将微指令序列重排序成包括多个依赖代码组的优化的微指令序列来执行优化处理。向微处理器流水线输出优化的微指令序列用于执行。优化的微指令序列的副本存储到序列高速缓存中,用于在后续命中优化的微指令序列时的后续使用。
-
公开(公告)号:CN103562866A
公开(公告)日:2014-02-05
申请号:CN201280024054.0
申请日:2012-03-23
申请人: 索夫特机械公司
发明人: M·阿布达拉
CPC分类号: G06F9/5077 , G06F9/30043 , G06F9/30123 , G06F9/3834 , G06F9/3836 , G06F9/3838 , G06F9/5016 , G06F9/505 , G06F12/0848 , G06F13/1657 , G06F2212/282
摘要: 一种用于使用用于处理器的多个寄存器文件片段来执行指令的系统。该系统包括:全局前端调度器,用于接收传入指令序列,其中全局前端调度器将传入指令序列分割成指令的多个代码块并且生成描述在代码块的指令之间的相互依赖性的多个继承性矢量。该系统还包括:处理器的多个虚拟核,被耦合用于接收全局前端调度器分配的代码块,其中每个虚拟核包括多个可分割引擎的资源的相应子集,其中根据虚拟核模式并且根据相应的继承性矢量通过使用可分割引擎来执行代码块。多个寄存器文件段耦合到可分割引擎用于提供数据存储。
-
公开(公告)号:CN103282874A
公开(公告)日:2013-09-04
申请号:CN201180057070.5
申请日:2011-10-12
申请人: 索夫特机械公司
发明人: M·阿卜杜拉
CPC分类号: G06F9/3861 , G06F9/30058 , G06F9/3808 , G06F9/3844
摘要: 一种用于输出可替换指令序列的方法。该方法包括追踪重复命中以确定微处理器的频繁命中指令序列的集合。标识频繁错失预测的分支指令,其中该分支指令的预测结果经常是错误的。将分支指令目标的可替换指令序列存储到缓冲器中。对于在分支指令的预测结果错误的情况下针对分支指令的后续命中,从缓冲器输出可替换指令序列。
-
公开(公告)号:CN101449256A
公开(公告)日:2009-06-03
申请号:CN200780017317.4
申请日:2007-04-12
申请人: 索夫特机械公司
发明人: M·A·阿卜杜拉
IPC分类号: G06F15/00
CPC分类号: G06F15/8007 , G06F7/483 , G06F7/5318 , G06F7/5338 , G06F7/5443 , G06F9/3001 , G06F9/30109 , G06F9/3012 , G06F9/30123 , G06F9/30141 , G06F9/3016 , G06F9/30181 , G06F9/30189 , G06F9/3824 , G06F9/3828 , G06F9/3838 , G06F9/3851 , G06F9/3853 , G06F9/3867 , G06F9/3885 , G06F9/3887 , G06F9/3889 , G06F9/3891 , G06F15/80
摘要: 执行块的矩阵形成多行和多列。多行支持指令的并行执行,多列支持依赖指令的执行。执行块矩阵处理载明并行指令和依赖指令的单个指令块。
-
公开(公告)号:CN101627365B
公开(公告)日:2017-03-29
申请号:CN200780046679.6
申请日:2007-11-14
申请人: 索夫特机械公司
发明人: M·阿卜杜拉
IPC分类号: G06F9/30
CPC分类号: G06F9/30123 , G06F9/30043 , G06F9/3009 , G06F9/30134 , G06F9/30138 , G06F9/3016 , G06F9/34 , G06F9/342 , G06F9/3808 , G06F9/3824 , G06F9/3826 , G06F9/383 , G06F9/3838 , G06F9/384 , G06F9/3851 , G06F9/3853 , G06F9/3857 , G06F9/3885 , G06F9/3891 , G06F9/462 , G06F9/4843
摘要: 用于复杂指令格式的动态生成、执行、同步以及并行的统一架构包括虚拟寄存器文件、寄存器缓存以及寄存器文件层级。自生成和同步动态和静态线程的架构提供了高效的上下文切换。
-
公开(公告)号:CN105210040A
公开(公告)日:2015-12-30
申请号:CN201480024528.0
申请日:2014-03-12
申请人: 索夫特机械公司
发明人: 穆罕默德·阿布达拉
IPC分类号: G06F9/46
CPC分类号: G06F9/4881 , G06F9/30094 , G06F9/3824 , G06F9/3836 , G06F9/3838 , G06F9/3851 , G06F9/48 , G06F9/4887 , G06F9/50 , G06F9/5005 , G06F9/5011 , G06F9/5016 , G06F9/5027 , G06F9/5038 , G06F9/52 , G06F9/524
摘要: 用于执行分组成块的多线程指令的方法。该方法包括使用全局前端接收进入的指令序列;将指令分组以形成指令块,其中所述指令块的指令与多个线程交错;调度所述指令块的指令以依照所述多个线程执行;以及跟踪对所述多个线程的执行以强制执行管线中的公正性。
-
公开(公告)号:CN105190579A
公开(公告)日:2015-12-23
申请号:CN201480024465.9
申请日:2014-03-13
申请人: 索夫特机械公司
发明人: 穆罕默德·阿布达拉
CPC分类号: G06F9/3885 , G06F9/3004 , G06F9/3853 , G06F9/462 , G06F12/00 , G06F12/0853 , G06F12/0886 , G06F13/00 , G06F15/17318 , G06F2212/1041 , G06F2212/1056 , H04L12/28 , H04L49/1523
摘要: 一种用于线路速度互连处理的方法。该方法包括从输入通信路径接收初始输入,通过利用第一阶段互连并行处理器,执行对所述初始输入的预分类,以创建中间输入,以及通过利用第二阶段互连并行处理器,执行对所述中间输入的最终组合和分割,以创建结果输出。该方法还包括以线路速度将所述结果输出传输出所述第二阶段。
-
公开(公告)号:CN105122211A
公开(公告)日:2015-12-02
申请号:CN201480021706.4
申请日:2014-03-14
申请人: 索夫特机械公司
发明人: 尼尔森·N·陈
IPC分类号: G06F9/46
CPC分类号: G06F9/3855 , G06F9/3836 , G06F9/3867 , G06F9/3875 , G06F9/4881
摘要: 公开了用于实施乱序微处理器管线中的指令调度的方法。所述方法包括,选择指令的第一集合以从调度器分派到执行模块,其中所述执行模块包括两种类型的执行单元。第一类型执行单元执行第一类型指令和第二类型指令两者并且其中第二类型执行单元仅执行第二类型指令。接下来,方法包括,选择指令的第二集合以进行分派,所述第二集合是第一集合的子集并且仅包括第二类型指令。接下来,方法包括:确定指令的第三集合,所述第三集合包括没有选中作为第二集合的一部分的指令。最后,方法包括,分派第二集合用于使用第二类型执行单元执行,并且分派第三集合用于使用第一类型执行单元执行。
-
公开(公告)号:CN104583957A
公开(公告)日:2015-04-29
申请号:CN201380043003.7
申请日:2013-06-10
申请人: 索夫特机械公司
发明人: M·阿布达拉
CPC分类号: G06F9/30043 , G06F9/30032 , G06F9/30047 , G06F9/3017 , G06F9/30185 , G06F9/3826 , G06F9/3834 , G06F9/3842 , G06F9/3855 , G06F9/3857
摘要: 在处理器中,一种无消歧乱序加载存储队列方法。该方法包括:实现能够被多个异步核心访问的存储器资源;实现存储退出缓冲器,其中来自存储队列的存储具有按照原始程序顺序的存储退出缓冲器中的条目;以及实现推测性执行,其中能够将推测性执行的结果保存在存储退出/重新排序缓冲器中作为推测性状态。该方法还包括:在分派来自加载队列的后续加载时,在存储退出缓冲器中搜索地址匹配;以及在其中存在多个地址匹配的情况下,通过针对第一匹配扫描存储退出缓冲器来定位正确的转发条目,并且将来自第一匹配的数据转发至后续加载。一旦已知推测性结果,则使推测性状态退出至存储器。
-
-
-
-
-
-
-
-
-