发明名称 执行条件指令之装置及方法
摘要 本发明提供一种用于微处理器之条件执行装置。该条件执行装置包括一转译逻辑与一延伸执行逻辑。该转译逻辑将一延伸指令转译为对应之微指令。该延伸指令具有一延伸前置码与一延伸前置码标记。该延伸前置码指定一条件,而该延伸指令所指定之运算是否执行,系决定于该条件是否满足。该延伸前置码标记指出该延伸前置码,且系微处理器指令集内另一架构化地指定之运算码。该延伸执行逻辑耦接至转译逻辑,用以接收该对应之微指令,并评估该条件。若条件未满足,则延伸执行逻辑即排除该运算之执行。
申请公布号 TW569136 申请公布日期 2004.01.01
申请号 TW091116958 申请日期 2002.07.30
申请人 智慧第一公司 发明人 葛兰 亨利;罗德 胡克;泰瑞 派克斯
分类号 G06F9/22 主分类号 G06F9/22
代理机构 代理人 何文渊 台北市信义区松德路一七一号二楼
主权项 1.一种用于一微处理器中之条件执行装置,包含:一转译逻辑,用以将一延伸指令转译成对应之微指令,其中该延伸指令包含:一延伸前置码,用以指定一条件,而该延伸指令所指定之运算是否执行,系依该条件有否满足而定;以及一延伸前置码标记,用以指出该延伸前置码,其中该延伸前置码标记系该微处理器之一指令集内另一架构化地指定之运算码;以及一延伸执行逻辑,耦接至该转译逻辑,用以接收该对应之微指令,并评估该条件,其中若该条件未满足,则该延伸执行逻辑便排除该运算之执行。2.如申请专利范围第1项所述之条件执行装置,其中该延伸指令更包含该指令集根据架构所指定之复数个项目。3.如申请专利范围第2项所述之条件执行装置,其中该些根据架构所指定之项目包含一运算码项目,用以指定该运算。4.如申请专利范围第1项所述之条件执行装置,其中该延伸前置码包含复数个位元,且其中该些位元之每一逻辑状态系对应到复数个结果条件之一子集合。5.如申请专利范围第4项所述之条件执行装置,其中该些结果条件包含溢位、进位、等于零、低于、带负号、同位、大于以及小于。6.如申请专利范围第5项所述之条件执行装置,其中该些结果条件系储存于该微处理器之一旗标暂存器中。7.如申请专利范围第1项所述之条件执行装置,其中该延伸前置码包含8个位元。8.如申请专利范围第1项所述之条件执行装置,其中该指令集包含x86指令集。9.如申请专利范围第8项所述之条件执行装置,其中该延伸前置码标记包含x86指令集之运算码FI(ICE BKPT)。10.如申请专利范围第1项所述之条件执行装置,其中该对应之微指令包含一微运算码栏位与一微运算码延伸项栏位。11.如申请专利范围第10项所述之条件执行装置,其中该延伸执行逻辑使用该微运算码延伸项栏位,以决定该条件,且其中该延伸执行逻辑使用该微运算码栏位以决定该运算。12.如申请专利范围第11项所述之条件执行装置,其中该延伸执行逻辑包含:一条件执行控制器,组态为评估该条件,并依据该条件致能/除能该运算的执行。13.如申请专利范围第1项所述之条件执行装置,其中该转译逻辑包含:一逸出指令侦测逻辑,用于侦测该延伸前置码标记;以及一延伸前置码解码逻辑,耦接至该逸出指令侦测逻辑,用以转译该延伸前置码,并对该对应微指令内之一微运算码延伸项栏位进行组态,该微运算码延伸项栏位则指定该条件。14.如申请专利范围第13项所述之条件执行装置,其中该转译逻辑更包含:一指令解码逻辑,用以组态该对应微指令内之其他栏位,该其他栏位系依据该指令集指定该运算。15.一种为一既有微处理器指令集增添条件执行特征之延伸机制,包含:一延伸指令,组态为指定一复数个条件码之子集合,以作为一指定运算是否执行之判断依据,其中该延伸指令包含该既有微处理器指令集之其中一指令,其后则为一n位元延伸特征前置码,该指令指出该延伸指令,而该n位元延伸特征前置码则指出该子集合;一转译器,组态为接收该延伸指令,并产生一微指令序列,以依据该子集合指导该指定运算之条件执行;以及一条件执行控制逻辑,耦接至该转译器,组态为评估对应该子集合之条件码,并于该子集合满足时,执行该指定运算。16.如申请专利范围第15项所述之延伸机制,其中该延伸指令更包含:复数个指令部分,组态为指定该指定运算。17.如申请专利范围第16项所述之延伸机制,其中该些指令部分系依照该既有微处理器指令集加以格式化。18.如申请专利范围第15项所述之延伸机制,其中该些条件码包含溢位、进位、等于零、低于、带负号、同位、大于以及小于。19.如申请专利范围第15项所述之延伸机制,其中该n位元延伸特征前置码包含8个位元。20.如申请专利范围第15项所述之延伸机制,其中该既有微处理器指令集系x86微处理器指令集。21.如申请专利范围第20项所述之延伸机制,其中该指令包括x86微处理器指令集中之ICE BKPT指令(即运算码F1)。22.如申请专利范围第15项所述之延伸机制,其中该转译器包含:一逸出指令侦测器,用以侦测该指令;以及一延伸前置码解码器,耦接至该逸出指令侦测器,用以转译该n位元之延伸特征前置码,并产生指定该子集合之该微指令序列内之一微运算码延伸项栏位。23.一种为一既有微处理器指令集补充条件执行之能力的指令集延伸模组,包含:一逸出标记,由一转译逻辑接收,用以指出一对应指令之附随部分来指定一微处理器将要条件执行之一延伸运算,其中该逸出标记为该既有微处理器指令集内之一第一运算码项目;以及一条件指定元,耦接至该逸出标记,且为该伴随部分其中之一,用以指定一条件码状态,该条件码状态系该延伸运算是否执行之判断依据,且被送至一条件执行控制逻辑,其中该条件执行控制逻辑组态为致能/除能该延伸运算的执行。24.如申请专利范围第23项所述之指令集延伸模组,其中该附随部分之其余部分包含一第二运算码项目与选用之复数个位址指定元项目。25.如申请专利范围第23项所述之指令集延伸模组,其中该条件指定元包含一8位元的资料项目。26.如申请专利范围第23项所述之指令集延伸模组,其中该既有微处理器指令集系x86微处理器指令集。27.如申请专利范围第26项所述之指令集延伸模组,其中该第一运算码项目包含x86微处理器指令集中之ICE BKPT运算码项目(即运算码F1)。28.如申请专利范围第23项所述之指令集延伸模组,其中该转译逻辑将该逸出标记与该附随部分转译成对应的微指令,该对应的微指令系指示一延伸执行逻辑去执行该延伸运算。29.如申请专利范围第28项所述之指令集延伸模组,其中该条件执行控制逻辑评估一条件码项目,以判断该条件码状态是否为真,且若该条件码状态为假,则该条件执行控制逻辑指示该延伸执行逻辑排除该延伸运算之执行。30.如申请专利范围第23项所述之指令集延伸模组,其中该转译逻辑包含:一逸出标记侦测逻辑,用以侦测该逸出标记,并指示该附随部分的转译动作需依据延伸转译常规(conventions);以及一解码逻辑,耦接至该逸出标记侦测逻辑,用以依据该既有微处理器指令集之常规,执行微处理器指令的转译动作,并依据该延伸转译常规执行该对应指令之转译,以致能该延伸运算。31.一种扩充一微处理器指令集的方法,以提供可程式化之条件执行能力,该方法包含:提供一延伸指令,该延伸指令包括一延伸标记及一条件指定元前置码,其中该延伸标记系该微处理器指令集之其中一运算码;透过该条件指定元前置码与该延伸指令之其余部分指定所要执行之一运算,其中该运算是否执行系决定于该条件指定元前置码所指定之一条件是否满足;以及评估条件码项目以判断该条件是否满足,若该条件满足,即执行该运算,若不满足,便排除该执行动作。32.如申请专利范围第31项所述之方法,其中该指定所要执行之运算的动作包含:首先指定该运算,该首先指定之动作使用了该微处理器指令集中另一不同的运算码。33.如申请专利范围第31项所述之方法,其中该提供延伸指令之动作包含使用一8位元大小之条件指定元前置码。34.如申请专利范围第33项所述之方法,其中该提供延伸指令之动作包含使用x86微处理器指令集中之该不同的运算码作为该延伸标记。35.如申请专利范围第34项所述之方法,其中该使用x86微处理器指令集中之该不同运算码的动作包含选取x86 ICE BKPT运算码(即运算码F1)作为该延伸标记。36.如申请专利范围第31项所述之方法,更包含:将该延伸指令转译成微指令,其中该微指令系在执行该延伸运算前,指示一延伸执行逻辑去判断该条件是否满足。37.如申请专利范围第36项所述之方法,其中该转译延伸指令的动作包含:于一转译逻辑内,侦测该延伸标记;以及依照条件执行转译规则解码该条件指定元前置码与该延伸指令之其余部分。图式简单说明:图一系为一相关技术之微处理器指令格式的方块图;图二系为一表格,其描述一指令集架构之指令,如何对应至图一指令格式内一运算码位元组中之位元逻辑状态;图三系为本发明之延伸指令格式的方块图;图四系为一表格,其显示依据本发明,延伸架构特征如何对应至一8位元延伸前置码实施例中位元的逻辑状态;图五系为解说本发明用以条件执行指令之一管线化微处理器之方块图;图六系为本发明用于条件执行之延伸前置码之一具体实施例的方块图;图七系为显示由表六延伸前置码之値所指定条件之表格;图八系为图五之微处理器内转译阶段逻辑细部的方块图;图九系为图五之微处理器内延伸执行逻辑之方块图;图十系为一表格,其对于常用之IF-THEN-ELSE叙述,比较条件执行之流程与习用执行之流程;以及图十一系为描述本发明用以转译与执行条件指令的方法之运作流程图。
地址 美国