复杂指令集体系结构中的深度优先异常处理方法

    公开(公告)号:CN101114218A

    公开(公告)日:2008-01-30

    申请号:CN200610088939.3

    申请日:2006-07-27

    Inventor: 段振中 范东睿

    Abstract: 本发明提出了一种复杂指令集体系结构中的深度优先异常处理方法,包括以下步骤:在发生异常时,1)指令重排序缓冲器发出异常信息给各个模块,各个模块将自身寄存器置为无效,从而刷空流水线;2)译码部件将所述异常信息转换为预先定义的指令;3)译码部件根据所述预先定义的指令,索引只读存储器,找出与之相应的微指令,并将所述微指令送入发射部件;4)发射部件将没有数据相关的微指令送入执行部件执行;5)执行部件执行所述微指令,并将执行结果写入指令重排序缓冲器;6)检查指令重排序缓冲器中的第一条微指令是否异常;7)如果指令重排序缓冲器中的第一条微指令异常,则返回1)流水线刷空步骤;8)如果指令重排序缓冲器中的第一条微指令未发生异常,则指令重排序缓冲器将已经写回的第一条微指令提交,完成处理。

    对状态寄存器进行重命名的方法和使用该方法的处理器

    公开(公告)号:CN100524208C

    公开(公告)日:2009-08-05

    申请号:CN200610150338.0

    申请日:2006-10-26

    Abstract: 根据本发明,提出了一种在具有超标量流水线结构的处理器中对状态寄存器进行重命名的方法,其中所述状态寄存器是由从标志寄存器的所有标志位中选择的多个标志位组成的寄存器,所述方法包括以下步骤:在对指令译码后的微码到达所述处理器的寄存器重命名模块时,确定所述微码是否要读状态寄存器;如果确定所述微码要读状态寄存器,则为所述状态寄存器分配最近映射到的物理寄存器;否则,则不为所述状态寄存器分配物理寄存器;确定所述微码是否要写状态寄存器;如果确定所述微码要写状态寄存器,则为所述状态寄存器分配新的状态为空的物理寄存器;否则,则不为所述状态寄存器分配物理寄存器。

    对预处理微指令发生异常多层嵌套进行处理的设备及方法

    公开(公告)号:CN101075184A

    公开(公告)日:2007-11-21

    申请号:CN200610011927.0

    申请日:2006-05-18

    Inventor: 段振中 范东睿

    Abstract: 本发明涉及复杂指令集计算机内部异常处理技术,尤其涉及对预处理微指令发生异常多层嵌套进行处理的设备及方法,所述方法包括:A、微指令在执行过程中发生异常,译码部件缓存异常信息,并对缓存的异常信息进行译码产生微指令地址;B、译码部件按产生的微指令地址索引微指令存储器获取异常预处理微指令,并将获取的异常预处理微指令发送给后端部件,后端部件在执行接收的异常预处理微指令时如果再次发生异常,则执行步骤C;如果不发生异常,则执行步骤D;C、后端部件刷空计算机的指令流水线,译码部件缓存再次发生的异常信息,并对再次发生的异常信息进行译码产生微指令地址,转而执行步骤B;D、后端部件跳转并执行异常处理程序。

    对预处理微指令发生异常多层嵌套进行处理的设备及方法

    公开(公告)号:CN100495322C

    公开(公告)日:2009-06-03

    申请号:CN200610011927.0

    申请日:2006-05-18

    Inventor: 段振中 范东睿

    Abstract: 本发明涉及复杂指令集计算机内部异常处理技术,尤其涉及对预处理微指令发生异常多层嵌套进行处理的设备及方法,所述方法包括:微指令在执行过程中发生异常,译码部件缓存异常信息,并对缓存的异常信息进行译码产生微指令地址;B、译码部件按产生的微指令地址索引微指令存储器获取异常预处理微指令,并将获取的异常预处理微指令发送给后端部件,后端部件在执行接收的异常预处理微指令时如果再次发生异常,则执行步骤C;如果不发生异常,则执行步骤D;C、后端部件刷空计算机的指令流水线,译码部件缓存再次发生的异常信息,并对再次发生的异常信息进行译码产生微指令地址,转而执行步骤B;D、后端部件跳转并执行异常处理程序。

    复杂指令集体系结构中的深度优先异常处理方法

    公开(公告)号:CN100495324C

    公开(公告)日:2009-06-03

    申请号:CN200610088939.3

    申请日:2006-07-27

    Inventor: 段振中 范东睿

    Abstract: 本发明提出了一种复杂指令集体系结构中的深度优先异常处理方法,包括以下步骤:在发生异常时,1)指令重排序缓冲器发出异常信息给受影响的模块,受影响的模块将自身寄存器置为无效,从而刷空流水线;2)译码部件将所述异常信息转换为预先定义的指令;3)译码部件根据所述预先定义的指令,索引只读存储器,找出与之相应的微指令,并将所述微指令送入发射部件;4)发射部件将没有数据相关的微指令送入执行部件执行;5)执行部件执行所述微指令,并将执行结果写入指令重排序缓冲器;6)检查指令重排序缓冲器中的第一条微指令是否异常;7)如果指令重排序缓冲器中的第一条微指令异常,则返回1)流水线刷空步骤;8)如果指令重排序缓冲器中的第一条微指令未发生异常,则指令重排序缓冲器将已经写回的第一条微指令提交,完成处理。

    对状态寄存器进行重命名的方法和使用该方法的处理器

    公开(公告)号:CN101169710A

    公开(公告)日:2008-04-30

    申请号:CN200610150338.0

    申请日:2006-10-26

    Abstract: 根据本发明,提出了一种在具有超标量流水线结构的处理器中对状态寄存器进行重命名的方法,其中所述状态寄存器是由从标志寄存器的所有标志位中选择的多个标志位组成的寄存器,所述方法包括以下步骤:在对指令译码后的微码到达所述处理器的寄存器重命名模块时,确定所述微码是否要读状态寄存器;如果确定所述微码要读状态寄存器,则为所述状态寄存器分配最近映射到的物理寄存器;否则,则不为所述状态寄存器分配物理寄存器;确定所述微码是否要写状态寄存器;如果确定所述微码要写状态寄存器,则为所述状态寄存器分配新的状态为空的物理寄存器;否则,则不为所述状态寄存器分配物理寄存器。

Patent Agency Ranking