**对比文件名称**:2009-06-18_US2009158012A_发明申请_US20090158012A1 Method and Apparatus for Performing Improved Group Instructions
**目标专利名称**:335优化用于上下文相关指令的性能CN105190540B
**本次调用模型名称**:gpt-4o
根据目标专利权利要求的技术特征划分,结合目标专利说明书及对比文件内容,进行特征比对分析如下:
### **特征比对表格**
| 技术特征描述与公开性判断结果 | 对比文件原文引用 | 公开性论述 |
| **技术特征A**:《隐含公开》<br>处理具有寄存器字段的配置值的行为的指令。 | 对比文件说明书第[0127]段:“向量指令(或操作)在一或多个数据向量上操作以得到结果,其中所述结果还可为向量。向量指令还可称为SIMD(单一指令多个数据)操作。”<br>第[0128]段:“具有管线化且乱序的执行架构的微处理器需要建构具有高性能的取决于上下文的指令。”<br>第[0250]-[0252]段:“由向量指令消耗的向量长度、步幅及各种其它参数存储在一或多个控制寄存器中。此类控制寄存器的实例在图1中标记为124,且被称作FPSCR(浮点状态及控制寄存器)124。将参数写入(复制)到FPSCR 124的指令被插入到依靠所需参数的向量指令之前(以编程次序)的代码块中。因而存在这些向量指令对到FPSCR 124的写入指令的相依性。... 这些一或多个字段在图1中标记为125。为了易于论述,且不损失普遍性的前提下,我们将125称作字段,但其可能横跨一个以上位及FPSCR 124的一个以上字段。” | **隐含公开**。对比文件明确指出向量指令(SIMD操作)的行为取决于控制寄存器(如FPSCR)中字段(如字段125)的值。处理此类指令即意味着处理其行为由寄存器字段配置值决定的指令。虽然对比文件未使用“处理...行为的指令”这一措辞,但其核心思想(指令行为由寄存器字段值配置)已明确公开。本领域技术人员可以毫无疑义地理解,要执行此类向量指令,必然需要“处理”它,即对其进行解码、调度、执行等操作。因此,该技术特征被对比文件隐含公开。 |
| **技术特征B**:《隐含公开》<br>所述指令相依于在编程次序上先于所述指令的写入指令。 | 对比文件说明书第[0250]段:“将参数写入(复制)到FPSCR 124的指令被插入到依靠所需参数的向量指令之前(以编程次序)的代码块中。因而存在这些向量指令对到FPSCR 124的写入指令的相依性。” | **隐含公开**。对比文件明确说明了向量指令依赖于(“依靠”)在程序次序上位于其之前的、将参数写入FPSCR的写入指令。这直接对应于“指令相依于在编程次序上先于所述指令的写入指令”这一特征。虽然对比文件用“依靠”一词,但其表达的依赖关系与“相依于”含义相同。因此,该特征被对比文件直接公开。 |
| **技术特征C**:《直接公开》<br>所述写入指令将所述配置值写入到所述寄存器字段。 | 对比文件说明书第[0250]段:“将参数写入(复制)到FPSCR 124的指令...”。<br>第[0252]段:“举例来说,写入到字段125的非零值可定义其中向量指令执行为未定义的指令的上下文...” | **直接公开**。对比文件多次提及将参数/值“写入”到FPSCR的字段(如字段125)中的指令。这明确公开了“写入指令将配置值写入到寄存器字段”这一动作。因此,该技术特征被对比文件直接公开。 |
| **技术特征D**:《隐含公开》<br>在所述写入指令执行之前处理的所述指令在基于处理所述指令时的所述寄存器字段的当前值的上下文内执行。 | 对比文件说明书第[0031]段:“为改进性能,实施例执行推测性处理及相关指令的执行。... 更特定而言,实施例开始在通过FPSCR 124的当前值确定的上下文内处理向量指令。如果写入指令尚未提交且在飞行中,但后续的(在程序次序中)相关向量指令可用以开始处理,那么随后基于FPSCR 124在其处理时间中的现状处理相关向量指令。”<br>第[0052]段:“当处理取决于写入指令的向量指令时,可能发生的是,在处理向量指令时FPSCR 124的本上下文(也就是配置字段125的值)不是正确的上下文。” | **隐含公开**。对比文件详细描述了推测性执行机制:即使在先前的写入指令(如VMSR)尚未提交(即未执行完成)时,后续相关的向量指令(如Vopp)也可以开始处理。处理时所依据的上下文,正是开始处理该指令时FPSCR字段的“当前值”(对比文件称为“本上下文”或“现状”)。这完全对应于技术特征D所描述的情形。因此,该技术特征被对比文件隐含公开。 |
| **技术特征E**:《直接公开》<br>在队列中的条目中存储所述指令。 | 对比文件说明书第[0034]段:“为了促进恢复处理,实施例借助推测性指令信息队列(SIIQ)122。... 当管线102开始处理指令Vopp 127时,其被放入推测性指令信息队列122中。如标记为132的条目所示,标记为130的箭头指示放置到推测性指令信息队列122中。条目132包括两个零件,标记为132a的零件包含向量指令及上下文字段133...”<br>图1明确示出了指令Vopp 127被放入SIIQ 122的条目132中。 | **直接公开**。对比文件明确公开了使用“推测性指令信息队列(SIIQ)122”来存储推测性处理的指令(如Vopp)。并且具体描述了指令被放入队列的“条目”中(如条目132)。因此,“在队列中的条目中存储所述指令”这一技术特征被对比文件直接公开。 |
| **技术特征F**:《直接公开》<br>在所述条目中存储所述寄存器字段的所述当前值。 | 对比文件说明书第[0034]段:“条目132包括两个零件,标记为132a的零件包含向量指令及上下文字段133... 条目132中的上下文字段133指示上下文(用于条目132的相关联的指令Vopp 127于其中处理)。当处理指令时在通过配置字段125的值确定的上下文内处理指令。”<br>第[0037]段:“条目132中的上下文字段133指示上下文(用于条目132的相关联的指令Vopp 127于其中处理)。” | **直接公开**。对比文件明确指出,在SIIQ的条目(如条目132)中,不仅存储了指令本身,还存储了一个“上下文字段133”。该上下文字段的值等于处理该指令时配置字段125的值。这直接对应于“在所述条目中存储所述寄存器字段的所述当前值”。因此,该技术特征被对比文件直接公开。 |
| **技术特征G**:《直接公开》<br>在所述写入指令执行之后,搜索所述队列以查找所述条目。 | 对比文件说明书第[0038]段:“在写入指令(“写入”是指写入至FPSCR 124)在飞行中的某个时间点,作出关于是否在不正确的上下文中处理任何相关向量指令的确定。... 对于一些实施例,在写入指令提交时作出用于正确的上下文的确定。... 当指令VMSR 126处于重新排序缓冲器120的顶端(或顶部)时且准备好提交时,将指令VMSR 126写入至配置字段125的值与用于具有相关飞行中向量指令的推测性指令信息队列122中的每一条目的上下文字段进行比较。”<br>第[0040]段:“对于一些实施例,在指令VMSR 126执行时(此处,指令VMSR 126的执行意指写入至FPSCR 124的值为已知的),搜索推测性指令信息队列122以查找不正确地处理的相关向量指令(即使指令VMSR 126未准备好提交)。” | **直接公开**。对比文件明确描述了在写入指令(如VMSR)执行后(无论是“提交时”还是“执行时”),会搜索推测性指令信息队列(SIIQ)以查找相关的条目(即查找可能被不正确处理的向量指令)。这直接公开了“在写入指令执行之后,搜索所述队列以查找所述条目”这一步骤。因此,该技术特征被对比文件直接公开。 |
| **技术特征H**:《直接公开》<br>及在所述写入指令执行之后,将存储在所述条目中的所述当前值与所述配置值进行比较。 | 对比文件说明书第[0038]段:“...将指令VMSR 126写入至配置字段125的值与用于具有相关飞行中向量指令的推测性指令信息队列122中的每一条目的上下文字段进行比较。”<br>图2A中的确定211也体现了这一比较步骤。 | **直接公开**。对比文件明确指出,在搜索到相关条目后,会将条目中存储的上下文字段(即“当前值”)与写入指令要写入(或已写入)配置字段的新值(即“配置值”)进行比较。这精确对应了技术特征H。因此,该技术特征被对比文件直接公开。 |
| **技术特征I**:《隐含公开》<br>其进一步包括:假如存储在所述条目中的所述当前值并不与所述配置值匹配,那么清洗所有飞行中指令的管线,且将程序计数器设定到以编程次序在所述写入指令之后的下一指令的地址。 | 对比文件说明书第[0039]段:“对于一些实施例,在指令VMSR 126准备好提交但发现已在不正确的上下文中处理推测性指令信息队列122中的相关向量指令的情况下,收回指令VMSR 126(暗示在指令VMSR 126之前的所有指令也已收回),所有指令从管线及重新排序缓冲器120清洗,且程序计数器134立即将指令的地址随后以程序次序装载至指令VMSR 126。”<br>图2A中的框212:“如果指令在不正确的上下文中处理,那么采取各种行动以使处理器100从在不正确的上下文中处理指令恰当地恢复。在框212中,从管线102及重新排序缓冲器120清洗所有飞行中指令,且设定程序计数器134,使得紧随着(以编程次序)写入指令的指令被提取。” | **隐含公开**。对比文件描述了当比较发现不匹配(即在不正确上下文中处理了指令)时的一种恢复措施:清洗所有飞行中指令,并将程序计数器设置为紧随写入指令之后的指令地址。这完全符合技术特征I的描述。虽然对比文件提及“收回指令VMSR 126”作为前导动作,但核心的恢复操作(清洗管线、重设PC)与技术特征I一致。因此,该技术特征被对比文件隐含公开。 |
| **技术特征J**:《隐含公开》<br>处理所述指令进一步包括:如果所述当前值为第一值,那么将所述指令处理为定义的。 | 对比文件说明书第[0252]段:“举例来说,写入到字段125的非零值可定义其中向量指令执行为未定义的指令的上下文,从而导致处理器100在尝试向量指令执行的情况下执行中断处理程序。对于一些实施例,如果字段125被设定成非零值,那么仅向量指令集的恰当子集变为未定义的。” | **隐含公开**。对比文件指出,配置字段(125)的值决定了向量指令是被定义为“未定义”(可能引发异常)还是“定义”(正常执行)。例如,非零值可能导致未定义行为,而零值(或特定值)则对应定义的行为。这隐含了基于“当前值”(即字段125的值)来决定将指令处理为“定义的”或“未定义的”逻辑。技术特征J描述了“如果当前值为第一值,那么将指令处理为定义的”,这与对比文件公开的逻辑相符,第一值可以是例如零值。因此,该特征被隐含公开。 |
| **技术特征K**:《隐含公开》<br>及如果所述当前值不是所述第一值,那么将所述指令处理为未定义的。 | 同上(第[0252]段)。 | **隐含公开**。基于与技术特征J相同的理由,对比文件公开了配置字段为非零值(即“不是第一值”)时,指令可能被处理为“未定义的”。这完全对应于技术特征K的描述。因此,该技术特征被对比文件隐含公开。 |
| **技术特征L**:《隐含公开》<br>其进一步包括:假如存储在所述条目中的所述当前值并不与所述配置值匹配,那么清洗所述指令及以编程次序跟随所述指令的所有飞行中指令的管线,且将程序计数器设定到所述指令的地址。 | 对比文件说明书第[0041]-[0042]段:“在另一实施例中,当SIIQ 122中的指令(例如指令Vopp 127)准备好收回...时,指令Vopp 127将上下文字段133与配置字段125中的架构上下文相比较。如果上下文字段133与配置字段125并不匹配,那么执行恢复步骤。举例来说,管线及重新排序缓冲器清洗相关指令Vopp 127及跟随相关指令的所有指令,且设定程序计数器134以提取相关指令Vopp 127...”<br>图2B中的框214:“在框214中,指令及紧随着(以程序次序)指令的所有飞行中指令从管线102及重新排序缓冲器120中清洗,且设定程序计数器134使得指令为有待提取的下一指令...” | **隐含公开**。对比文件公开了另一种恢复机制(与特征I不同):当比较发现不匹配时,仅清洗出问题的指令(如Vopp)及其后所有指令的管线,并将程序计数器设定回该指令本身(以便重新正确执行)。这精确对应于技术特征L的描述。因此,该技术特征被对比文件隐含公开。 |
| **技术特征M**:《直接公开》<br>其进一步包括:在所述条目中存储处理器的状态信息,所述状态信息是当处理所述指令时的状态信息。 | 对比文件说明书第[0034]段:“条目132包括两个零件,标记为132a的零件包含向量指令及上下文字段133,且标记为132b的零件包含状态信息。”<br>第[0034]段:“对于一些实施例,还可包含状态信息以有助于在恢复处理期间将处理器100放入正确状态中,所述状态信息包含但不限于指令Vopp 127的地址及需要在所需提取地址处恢复执行的任何其它非上下文相关的信息。” | **直接公开**。对比文件明确说明,在SIIQ的条目(如条目132)中,除了指令和上下文,还可以存储“状态信息”(标记为132b),该状态信息是处理指令时的处理器状态。这直接公开了技术特征M。因此,该技术特征被对比文件直接公开。 |
| **技术特征N**:《隐含公开》<br>及假如存储在所述条目中的所述当前值并不与所述配置值匹配,那么从所述条目检索所述状态信息,且将所述处理器恢复到所述状态信息所指示的状态。 | 对比文件说明书第[0042]段:“...设定程序计数器134以提取相关指令Vopp 127,且状态信息132b用于恢复正确的状态。”<br>图2B中的框214:“...设定程序计数器134使得指令为有待提取的下一指令,且存储在具有指令的条目中的状态信息用于将处理器100的状态恢复到正确状态以用于处理指令。” | **隐含公开**。对比文件描述了在使用技术特征L的恢复方案时,会利用存储在条目中的状态信息来恢复处理器状态。这包含了“从条目检索状态信息”和“将处理器恢复到该状态”两个动作。因此,技术特征N被对比文件隐含公开。 |
| **技术特征O**:《直接公开》<br>其中所述指令为向量指令。 | 对比文件说明书第[0127]段:“向量指令(或操作)在一或多个数据向量上操作以得到结果,其中所述结果还可为向量。向量指令还可称为SIMD(单一指令多个数据)操作。”<br>全文多处以向量指令作为实施例的核心示例,例如第[0031]段、第[0034]段等。 | **直接公开**。对比文件通篇以“向量指令”作为其优化的主要对象和实施例的示例。因此,“指令为向量指令”这一特征被对比文件直接公开。 |
| **技术特征P**:《直接公开》<br>其中所述寄存器字段包括一个或多个字段。 | 对比文件说明书第[0250]段:“由向量指令消耗的向量长度、步幅及各种其它参数存储在一或多个控制寄存器中。”<br>第[0252]段:“这些一或多个字段在图1中标记为125。...但其可能横跨一个以上位及FPSCR 124的一个以上字段。” | **直接公开**。对比文件明确指出,用于配置指令行为的参数存储在“一或多个控制寄存器”中,并且配置字段“125”可能横跨“一个以上字段”。这直接公开了“寄存器字段包括一个或多个字段”。因此,该技术特征被对比文件直接公开。 |
| **技术特征Q**:《隐含公开》<br>处理所述指令进一步包括:如果所述当前值为第一值,那么将所述指令处理为定义的。 | 同技术特征J的引用及论述。此为重复特征。 | **隐含公开**。同技术特征J。 |
| **技术特征R**:《隐含公开》<br>及如果所述当前值不是所述第一值,那么将所述指令处理为未定义的。 | 同技术特征K的引用及论述。此为重复特征。 | **隐含公开**。同技术特征K。 |
| **技术特征S**:《隐含公开》<br>其进一步包括:当所述指令提交时,从所述队列移除所述条目。 | 对比文件说明书第[0036]段:“当与条目相关联的向量指令提交或被清洗时,随后从推测性指令信息队列122移除条目。” | **隐含公开**。对比文件明确说明了当队列中的指令提交(或清洗)后,对应的条目会被从队列中移除。这对应于“当指令提交时,从队列移除所述条目”。因此,该技术特征被对比文件隐含公开。 |
### **结论与代码输出**
根据上述分析,对比文件公开了目标专利权利要求的大部分技术特征。其中,部分特征被直接公开,部分特征被隐含公开。具体代码输出如下:
- 技术特征C、E、F、G、H、M、O、P被**直接公开**。
- 技术特征A、B、D、I、J、K、L、N、Q、R、S被**隐含公开**。
<<<C>>><<<E>>><<<F>>><<<G>>><<<H>>><<<M>>><<<O>>><<<P>>>
<<<a>>><<<b>>><<<d>>><<<i>>><<<j>>><<<k>>><<<l>>><<<n>>><<<q>>><<<r>>><<<s>>>