Method and apparatus for partitioned pipelined execution of multiple execution threads
    32.
    发明申请
    Method and apparatus for partitioned pipelined execution of multiple execution threads 有权
    分割流水线执行多个执行线程的方法和装置

    公开(公告)号:US20080005544A1

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

    申请号:US11479245

    申请日:2006-06-29

    IPC分类号: G06F9/00

    摘要: Methods and apparatus for partitioning a microprocessor pipeline to support pipelined branch prediction and instruction fetching of multiple execution threads. A thread selection stage selects a thread from a plurality of execution threads. In one embodiment, storage in a branch prediction output queue is pre-allocated to a portion of the thread in one branch prediction stage in order to prevent stalling of subsequent stages in the branch prediction pipeline. In another embodiment, an instruction fetch stage fetches instructions at a fetch address corresponding to a portion of the selected thread. Another instruction fetch stage stores the instruction data in an instruction fetch output queue if enough storage is available. Otherwise, instruction fetch stages corresponding to the selected thread are invalidated and refetched to avoid stalling preceding stages in the instruction fetch pipeline, which may be fetching instructions of another thread.

    摘要翻译: 用于分割微处理器流水线以支持流水线分支预测和多个执行线程的指令获取的方法和装置。 线程选择阶段从多个执行线程中选择线程。 在一个实施例中,分支预测输出队列中的存储被预分配给一个分支预测阶段中的线程的一部分,以便防止分支预测流水线中后续阶段的停顿。 在另一个实施例中,指令提取阶段在与所选线程的一部分相对应的获取地址处获取指令。 如果有足够的存储可用,另一个指令获取阶段将指令数据存储在指令提取输出队列中。 否则,与所选线程相对应的指令获取阶段无效并被重新设计,以避免在指令提取流水线中停止前进阶段,这可能是获取另一线程的指令。

    Method and apparatus for partitioned pipelined fetching of multiple execution threads
    33.
    发明申请
    Method and apparatus for partitioned pipelined fetching of multiple execution threads 失效
    用于分割流水线取出多个执行线程的方法和装置

    公开(公告)号:US20080005534A1

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

    申请号:US11479345

    申请日:2006-06-29

    IPC分类号: G06F9/30

    CPC分类号: G06F9/3802 G06F9/3851

    摘要: Methods and apparatus for partitioning a microprocessor pipeline to support pipelined branch prediction and instruction fetching of multiple execution threads. A thread selection stage selects a thread from a plurality of execution threads. In one embodiment, storage in a branch prediction output queue is pre-allocated to a portion of the thread in one branch prediction stage in order to prevent stalling of subsequent stages in the branch prediction pipeline. In another embodiment, an instruction fetch stage fetches instructions at a fetch address corresponding to a portion of the selected thread. Another instruction fetch stage stores the instruction data in an instruction fetch output queue if enough storage is available. Otherwise, instruction fetch stages corresponding to the selected thread are invalidated and refetched to avoid stalling preceding stages in the instruction fetch pipeline, which may be fetching instructions of another thread.

    摘要翻译: 用于分割微处理器流水线以支持流水线分支预测和多个执行线程的指令获取的方法和装置。 线程选择阶段从多个执行线程中选择线程。 在一个实施例中,分支预测输出队列中的存储被预分配给一个分支预测阶段中的线程的一部分,以便防止分支预测流水线中后续阶段的停顿。 在另一个实施例中,指令提取阶段在与所选线程的一部分相对应的获取地址处获取指令。 如果有足够的存储可用,另一个指令获取阶段将指令数据存储在指令提取输出队列中。 否则,与所选线程相对应的指令获取阶段无效并被重新设计,以避免在指令提取流水线中停止前进阶段,这可能是获取另一线程的指令。

    Forward-pass dead instruction identification
    35.
    发明申请
    Forward-pass dead instruction identification 失效
    前进死亡指令识别

    公开(公告)号:US20070157007A1

    公开(公告)日:2007-07-05

    申请号:US11323037

    申请日:2005-12-29

    IPC分类号: G06F15/00

    CPC分类号: G06F9/3832 G06F9/3838

    摘要: Apparatuses and methods for dead instruction identification are disclosed. In one embodiment, an apparatus includes an instruction buffer and a dead instruction identifier. The instruction buffer is to store an instruction stream having a single entry point and a single exit point. The dead instruction identifier is to identify dead instructions based on a forward pass through the instruction stream.

    摘要翻译: 公开了用于死指示识别的装置和方法。 在一个实施例中,一种装置包括指令缓冲器和死指令标识符。 指令缓冲器用于存储具有单个入口点和单个出口点的指令流。 死指令标识符是基于通过指令流的向前传递来识别死指令。

    Load mechanism
    36.
    发明申请
    Load mechanism 有权
    负载机制

    公开(公告)号:US20070156990A1

    公开(公告)日:2007-07-05

    申请号:US11323000

    申请日:2005-12-30

    IPC分类号: G06F13/00

    CPC分类号: G06F9/30043 G06F9/30032

    摘要: A method is disclosed. The method includes scheduling a load operation at least twice the size of a maximum access supported by a memory device, dividing the load operation into a plurality of separate load operation segments having a size equivalent to the maximum access supported by the memory device, and performing each of the plurality of load operation segments. A further method is disclosed where a temporary register is used to minimize the number of memory accesses to support unaligned accesses.

    摘要翻译: 公开了一种方法。 该方法包括将加载操作调度至少是由存储器件支持的最大访问大小的两倍,将加载操作划分成具有等于存储器设备支持的最大访问大小的多个单独的加载操作段,以及执行 多个加载操作段中的每一个。 公开了一种另外的方法,其中使用临时寄存器来最小化用于支持未对齐访问的存储器访问的数量。

    Staggered execution stack for vector processing
    37.
    发明申请
    Staggered execution stack for vector processing 有权
    用于矢量处理的交错执行堆栈

    公开(公告)号:US20070079179A1

    公开(公告)日:2007-04-05

    申请号:US11240982

    申请日:2005-09-30

    IPC分类号: G06F11/00

    摘要: In one embodiment, the present invention includes a method for executing an operation on low order portions of first and second source operands using a first execution stack of a processor and executing the operation on high order portions of the first and second source operands using a second execution stack of the processor, where the operation in the second execution stack is staggered by one or more cycles from the operation in the first execution stack. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括一种使用处理器的第一执行堆栈来执行第一和第二源操作数的低阶部分的操作的方法,并且使用第二和第二源操作数对第一和第二源操作数的高阶部分执行操作 处理器的执行堆栈,其中第二执行堆栈中的操作与第一执行堆栈中的操作交错一个或多个周期。 描述和要求保护其他实施例。

    Passing decoded instructions to both trace cache building engine and allocation module operating in trace cache or decoder reading state
    39.
    发明授权
    Passing decoded instructions to both trace cache building engine and allocation module operating in trace cache or decoder reading state 失效
    将解码的指令传递到跟踪高速缓存构建引擎和在跟踪缓存或解码器读取状态中操作的分配模块

    公开(公告)号:US06950924B2

    公开(公告)日:2005-09-27

    申请号:US10032565

    申请日:2002-01-02

    摘要: A system and method of managing processor instructions provides enhanced performance. The system and method provide for decoding a first instruction into a plurality of operations with a decoder. A first copy of the operations is passed from the decoder to a build engine associated with a trace cache. The system and method further provide for passing a second copy of the operation from the decoder directly to a back end allocation module such that the operations bypass the build engine and the allocation module is in a decoder reading state.

    摘要翻译: 管理处理器指令的系统和方法提供增强的性能。 该系统和方法提供用解码器将第一指令解码为多个操作。 操作的第一个副本从解码器传递到与跟踪缓存相关联的构建引擎。 该系统和方法进一步提供将操作的第二副本从解码器直接传递到后端分配模块,使得操作绕过构建引擎并且分配模块处于解码器读取状态。

    Method and apparatus to control steering of instruction streams
    40.
    发明申请
    Method and apparatus to control steering of instruction streams 审中-公开
    控制指令流转向的方法和装置

    公开(公告)号:US20050149696A1

    公开(公告)日:2005-07-07

    申请号:US10745526

    申请日:2003-12-29

    IPC分类号: G06F9/30 G06F9/38

    摘要: Rather than steering one macroinstruction at a time to decode logic in a processor, multiple macroinstructions may be steered at any given time. In one embodiment, a pointer calculation unit generates a pointer that assists in determining a stream of one or more macroinstructions that may be steered to decode logic in the processor.

    摘要翻译: 不是一次指导一个宏指令来解码处理器中的逻辑,而是可以在任何给定的时间引导多个宏指令。 在一个实施例中,指针计算单元产生一个指针,该指针有助于确定一个或多个宏指令的流,该宏指令可被转向以解码处理器中的逻辑。