-
公开(公告)号:CN101114216A
公开(公告)日:2008-01-30
申请号:CN200610088937.4
申请日:2006-07-27
Applicant: 中国科学院计算技术研究所
Abstract: 根据本发明,提出了一种复杂指令系统中TLBR内部例外的处理方法,包括:从内存中获取复杂指令流,对指令流进行长度划分和基本译码;缓存指令流中的复杂指令及所述复杂指令的长度及部分译码信息;根据缓存的复杂指令及所述复杂指令的长度及部分译码信息,产生与复杂指令相对应的微码;以及在检测到一微码在执行时发生TLBR内部例外时,保持例外以前已经完成的部分微码的执行结果,并取消例外微码之后的所有微码,并进行TLB替换,在TLB替换成功之后,重新生成发生例外的微码及其后面的微码并从发生例外的微码处开始执行。
-
公开(公告)号:CN100545806C
公开(公告)日:2009-09-30
申请号:CN200610171521.9
申请日:2006-12-30
Applicant: 中国科学院计算技术研究所
IPC: G06F9/38
Abstract: 本发明涉及一种新的基于局部相联查找解决访存相关的方法,包括:一种局部相联查找机制,即当一个取数指令进入访存队列时,只需要向前访存队列的一个子集,看是否可以从查询过的存数指令那里获得最新版本的值,同理当一个存数指令进入访存队列时只向后查询访存队列的一个子集,看是否有提前执行并写回的取数指令;一个访存相关预测器,当一个取数指令在重命名的时候查询该访存相关预测器索引出一个访存距离,如果访存距离是有效的,那么发射模块在发射该取数指令之前必须确保其前面和访存距离相应的存数指令已经执行完毕,然后才能发射该取数指令。
-
公开(公告)号:CN100520710C
公开(公告)日:2009-07-29
申请号:CN200610088937.4
申请日:2006-07-27
Applicant: 中国科学院计算技术研究所
Abstract: 根据本发明,提出了一种复杂指令系统中TLBR内部例外的处理方法,包括:从内存中获取复杂指令流,对指令流进行长度划分和基本译码;缓存指令流中的复杂指令及所述复杂指令的长度及部分译码信息;根据缓存的复杂指令及所述复杂指令的长度及部分译码信息,产生与复杂指令相对应的微码;以及在检测到一微码在执行时发生TLBR内部例外时,保持例外以前已经完成的部分微码的执行结果,并取消例外微码之后的所有微码,并进行TLB替换,在TLB替换成功之后,重新生成发生例外的微码及其后面的微码并从发生例外的微码处开始执行。
-
公开(公告)号:CN101211257A
公开(公告)日:2008-07-02
申请号:CN200610171521.9
申请日:2006-12-30
Applicant: 中国科学院计算技术研究所
IPC: G06F9/38
Abstract: 本发明涉及一种新的基于局部相联查找解决访存相关的方法,包括:一种局部相联查找机制,即当一个取数指令进入访存队列时,只需要向前访存队列的一个子集,看是否可以从查询过的存数指令那里获得最新版本的值,同理当一个存数指令进入访存队列时只向后查询访存队列的一个子集,看是否有提前执行并写回的取数指令;一个访存相关预测器,当一个取数指令在重命名的时候查询该访存相关预测器索引出一个访存距离,如果访存距离是有效的,那么发射模块在发射该取数指令之前必须确保其前面和访存距离相应的存数指令已经执行完毕,然后才能发射该取数指令。
-
-
-