Data processing system using multiple addressing modes for SIMD operations and method thereof
    1.
    发明授权
    Data processing system using multiple addressing modes for SIMD operations and method thereof 有权
    使用SIMD操作的多种寻址模式的数据处理系统及其方法

    公开(公告)号:US07275148B2

    公开(公告)日:2007-09-25

    申请号:US10657797

    申请日:2003-09-08

    IPC分类号: G06F9/312 G06F15/80

    摘要: Various load and store instructions may be used to transfer multiple vector elements between registers in a register file and memory. A cnt parameter may be used to indicate a total number of elements to be transferred to or from memory, and an rcnt parameter may be used to indicate a maximum number of vector elements that may be transferred to or from a single register within a register file. Also, the instructions may use a variety of different addressing modes. The memory element size may be specified independently from the register element size such that source and destination sizes may differ within an instruction. With some instructions, a vector stream may be initiated and conditionally enqueued or dequeued. Truncation or rounding fields may be provided such that source data elements may be truncated or rounded when transferred. Also, source data elements may be sign- or unsigned-extended when transferred.

    摘要翻译: 可以使用各种加载和存储指令在寄存器文件和存储器中的寄存器之间传送多个向量元素。 可以使用cnt参数来指示要传送到存储器或从存储器传送的元素的总数,并且可以使用rcnt参数来指示可以传送到寄存器文件中的单个寄存器的向量元素的最大数量 。 此外,指令可以使用各种不同的寻址模式。 可以独立于寄存器元件大小指定存储器元件大小,使得源和目标大小在指令内可能不同。 通过一些指令,可以启动向量流并有条件地排队或出队。 可以提供截断或舍入字段,使得源数据元素在被传送时可以被截断或舍入。 此外,源数据元素在传输时可以是符号或无符号扩展的。

    Streaming vector processor with reconfigurable interconnection switch
    2.
    发明授权
    Streaming vector processor with reconfigurable interconnection switch 失效
    具有可重配置互连交换机的流媒体向量处理器

    公开(公告)号:US07159099B2

    公开(公告)日:2007-01-02

    申请号:US10184583

    申请日:2002-06-28

    IPC分类号: G06F15/00

    摘要: A re-configurable, streaming vector processor (100) is provided which includes a number of function units (102), each having one or more inputs for receiving data values and an output for providing a data value, a re-configurable interconnection switch (104) and a micro-sequencer (118). The re-configurable interconnection switch (104) includes one or more links, each link operable to couple an output of a function unit (102) to an input of a function unit (102) as directed by the micro-sequencer (118). The vector processor may also include one or more input-stream units (122) for retrieving data from memory. Each input-stream unit is directed by a host processor and has a defined interface (116) to the host processor. The vector processor also includes one or more output-stream units (124) for writing data to memory or to the host processor. The defined interface of the input-stream and output-stream units forms a first part of the programming model. The instructions stored in a memory, in the sequence that direct the re-configurable interconnection switch, form a second part of the programming model.

    摘要翻译: 提供了可重新配置的流向量处理器(100),其包括多个功能单元(102),每个功能单元(102)具有用于接收数据值的一个或多个输入和用于提供数据值的输出,可重新配置的互连开关 104)和微定序器(118)。 可重配置互连开关(104)包括一个或多个链路,每个链路可操作以在功能单元(102)的输出端与微定序器(118)指导的功能单元(102)的输入耦合。 向量处理器还可以包括用于从存储器检索数据的一个或多个输入流单元(122)。 每个输入流单元由主处理器引导,并且具有到主机处理器的定义的接口(116)。 矢量处理器还包括用于将数据写入存储器或主处理器的一个或多个输出流单元(124)。 输入流和输出流单元的定义接口形成编程模型的第一部分。 存储在存储器中的指令以指导可重新配置的互连交换机的顺序形成编程模型的第二部分。

    Method of programming linear graphs for streaming vector computation
    3.
    发明授权
    Method of programming linear graphs for streaming vector computation 失效
    用于流矢量计算的线性图的编程方法

    公开(公告)号:US06934938B2

    公开(公告)日:2005-08-23

    申请号:US10184743

    申请日:2002-06-28

    CPC分类号: G06F8/314

    摘要: A method for producing a formatted description of a computation representable by a data-flow graph and computer for performing a computation so described. A source instruction is generated for each input of the data-flow graph, a computational instruction is generated for each node of the data-flow graph, and a sink instruction is generated for each output of the data-flow graph. The computational instruction for a node includes a descriptor of an operation performed at the node and a descriptor of each instruction that produces an input to the node. The formatted description is a sequential instruction list comprising source instructions, computational instructions and sink instructions. Each instruction has an instruction identifier and the descriptor of each instruction that produces an input to the node is the instruction identifier. The computer is directed by a program of instructions to implement a computation representable by a data-flow graph.

    摘要翻译: 一种用于产生由数据流图和计算机表示的计算的格式化描述的方法,用于执行如此描述的计算。 为数据流图的每个输入生成源指令,为数据流图的每个节点生成计算指令,并为数据流图的每个输出生成汇编指令。 节点的计算指令包括在节点处执行的操作的描述符和产生到该节点的输入的每条指令的描述符。 格式化的描述是包括源指令,计算指令和汇指令的顺序指令列表。 每个指令都有一个指令标识符,并且每个指令的描述符产生一个到该节点的输入是指令标识符。 计算机由指令程序引导以实现由数据流图表示的计算。

    Scheduler of program instructions for streaming vector processor having interconnected functional units
    4.
    发明授权
    Scheduler of program instructions for streaming vector processor having interconnected functional units 失效
    具有互连功能单元的流媒体处理器的程序指令调度器

    公开(公告)号:US07140019B2

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

    申请号:US10184772

    申请日:2002-06-28

    IPC分类号: G06F9/50 G06F9/44

    CPC分类号: G06F8/445

    摘要: A method for scheduling a computation for execution on a computer with a number of interconnected functional units. The computation is representable by a data-flow graph with a number of nodes connected by edge. A loop-period of the computation is calculated and the nodes are scheduled for throughput by assigning an execution cycle and a functional unit to each node of the data-flow graph. The scheduling of flexible nodes is adjusted to minimize the number of interconnections required in each execution cycle. The edges of the data-flow graph are allocated to one or more of the interconnections between functional units. The scheduling method may be used, for example, to optimize the interconnection fabric design for an ASIC or as part of a compiler for a re-configurable streaming vector processor.

    摘要翻译: 一种用于在具有多个互连的功能单元的计算机上调度用于执行的计算的方法。 该计算可以由具有多个通过边缘连接的节点的数据流图形表示。 计算计算的循环周期,并通过为数据流图的每个节点分配执行周期和功能单元来调度节点的吞吐量。 调整灵活节点的调度以最小化每个执行周期中所需的互连数量。 数据流图的边缘被分配给功能单元之间的一个或多个互连。 例如,可以使用调度方法来优化ASIC的互连结构设计或作为用于可重新配置的流向量处理器的编译器的一部分。

    Interconnection device with integrated storage
    5.
    发明授权
    Interconnection device with integrated storage 失效
    具有集成存储的互连设备

    公开(公告)号:US06850536B2

    公开(公告)日:2005-02-01

    申请号:US10184609

    申请日:2002-06-28

    CPC分类号: H04L49/103 H04L49/30

    摘要: An interconnection device (300) with a number of links (306, 308, 310, 312 and 314), each link having a number of link input ports (302), link output ports (304) and storage registers (316). An input selection switch (402) is coupled to a selected link input port to receive an input data token. The storage registers (316) may be used to store input data tokens. A storage access switch (404) is coupled to the input selection switch (402) and to the storage registers (316) and may be used to select the current input data token or a token from the storage registers as an output data token. An output selection switch (406) receives the output data token and provides it to a selected link output port. The interconnection device may, for example, be used to connect the inputs and outputs of the processing elements of a vector processor or digital signal processor.

    摘要翻译: 具有多个链路(306,308,310,312和314)的互连设备(300),每个链路具有多个链路输入端口(302),链路输出端口(304)和存储寄存器(316)。 输入选择开关(402)耦合到所选择的链接输入端口以接收输入数据令牌。 存储寄存器(316)可用于存储输入数据令牌。 存储访问开关(404)耦合到输入选择开关(402)和存储寄存器(316),并且可以用于从存储寄存器中选择当前输入数据令牌或令牌作为输出数据令牌。 输出选择开关(406)接收输出数据令牌并将其提供给所选择的链路输出端口。 互连装置可以例如用于连接矢量处理器或数字信号处理器的处理元件的输入和输出。

    Method and apparatus for parallel computations with incomplete input operands
    6.
    发明授权
    Method and apparatus for parallel computations with incomplete input operands 有权
    具有不完整输入操作数并行计算的方法和装置

    公开(公告)号:US07475393B2

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

    申请号:US10993971

    申请日:2004-11-19

    IPC分类号: G06F9/45

    CPC分类号: G06F9/3001 G06F9/3842

    摘要: A method and apparatus for performing pipelined computations that include cross-iteration computations. The apparatus includes a functional unit having at least one input and an output, each input being operable to receive an input data value and an associated input data validity tag indicative of the validity of the input data value and the output being operable to provide an output data value and an associated output data validity tag indicative of the validity of the output data value. The first functional unit is operable in a first mode in which an output data value from the first functional unit is valid if all of the input data values are valid, and in a second mode in which the output data value from the first functional unit is valid if any of the input data values is valid.

    摘要翻译: 一种用于执行包括交叉迭代计算的流水线计算的方法和装置。 该装置包括具有至少一个输入和输出的功能单元,每个输入可操作以接收输入数据值和指示输入数据值的有效性的相关联的输入数据有效标签,并且该输出可操作以提供输出 数据值和指示输出数据值的有效性的相关联的输出数据有效性标签。 第一功能单元可以在第一模式中操作,其中如果所有输入数据值都有效,来自第一功能单元的输出数据值有效,并且在第二模式中,来自第一功能单元的输出数据值 任何输入数据值有效时有效。