CN101120310A - 一种电子并行处理电路 - Google Patents

一种电子并行处理电路 Download PDF

Info

Publication number
CN101120310A
CN101120310A CNA2006800047092A CN200680004709A CN101120310A CN 101120310 A CN101120310 A CN 101120310A CN A2006800047092 A CNA2006800047092 A CN A2006800047092A CN 200680004709 A CN200680004709 A CN 200680004709A CN 101120310 A CN101120310 A CN 101120310A
Authority
CN
China
Prior art keywords
instruction
circuit
processing unit
condition
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2006800047092A
Other languages
English (en)
Other versions
CN101120310B (zh
Inventor
R·P·克莱霍斯特
A·A·阿博
S·F·莫于
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN101120310A publication Critical patent/CN101120310A/zh
Application granted granted Critical
Publication of CN101120310B publication Critical patent/CN101120310B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Image Processing (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

一种包含多个处理单元(10)的电子电路,其中把受公共程序流控制的指令提供给该多个处理单元(10),该电子电路典型地用于SIMD操作,其中,把相同的指令应用到所有的处理单元,并且把该指令的不同操作数数据应用到各自的处理单元(10)。在该指令的控制之下,每个处理单元(10)确定是否发生了取决于操作数数据的条件。该处理单元根据所述确定输出条件信号。把条件信号相加,以形成和信号。通过取决于该和信号所表示的值的条件跳转来控制程序流。

Description

一种电子并行处理电路
技术领域
本发明涉及一种包括多个并行指令处理单元的电子电路。
背景技术
具有多个并行指令处理单元的处理器电路的典型实例是SIMD(单指令多数据)处理器,其中,所有的处理单元执行公共的指令周期。在每个指令周期中,这些SIMD处理单元执行相同的程序指令,每个处理单元使用它们自己的操作数数据。典型地,这类SIMD处理器具有中央程序计数器,用于对提供给所有处理单元的共有指令进行寻址。
在计算机程序中,除了最简单的程序,通常所有程序都包括一些条件流控制形式,以便如果被处理数据的值满足了某条件,则从程序的一部分跳转到另一部分,从而实现例如高级程序中的if-then-else结构。把这类跳转实现为对程序计数器的条件更新。
还希望在SIMD处理器中实现条件执行。使用了各种方法。欧洲专利申请号0035647描述了一种结构,在该结构中每个处理器单元判决是否对提供给所有处理器单元的共有指令进行执行。可替换的方案是使用跳转,来实现为所有处理元件集体选择后续指令。已知为这种跳转使用跳转条件,其包括检测是否所有处理单元发出用于表示它们检测到特定条件的信号,或者是否没有处理单元发出用于表示其检测到特定条件的信号。典型地,这是通过使用OR电路或AND电路来实现的,其中该OR或XOR电路的输入端连接到处理单元的标志输入端,该OR/AND电路的输出用于对是否执行跳转进行控制。考虑到更多种条件,还已知对来自可选择的处理单元的标志信号进行屏蔽。
这类条件跳转仅可以承担程序流中非常有限的取决于数据的控制。只有在诸如“没有处理单元设置了它们的标志”或“所有的处理单元都设置了它们的标志”这样的条件下才有可能跳转。这对于例如当(数据包含噪声且)需要取决于统计条件的跳转时没有什么用。
发明内容
其中,本发明的目的是为了使得能够在更复杂的条件下在处理器电路中执行跳转指令,其中在该处理器电路中,多个处理单元执行具有公共程序流的程序。
其中,本发明的目的是为了提供具有多个并行处理单元的处理器电路,其支持在统计条件下的集体程序跳转。
权利要求1中描述了根据本发明的电子电路。根据本发明,使用了加法器电路,其输入端连接到处理单元的标志输出端,并且其和输出端连接到公共流控制电路。这样,程序跳转条件可以基于设置了标志的处理单元数量的计数来实现。
附图说明
将通过非限制性实例,来说明本发明的各个有利的方面,其中该实例使用以下附图。
图1示出处理电路;
图2示出进一步的处理电路。
具体实施方式
图1示出了处理电路,其包括多个处理单元10、操作数存储电路12、加法器电路14、控制存储器16、程序计数器18,以及指令提供电路19。尽管仅示出了三个处理单元10,应该明白,在实践中可以出现大得多的数量。处理单元10具有连接到操作数存储电路12的操作数输入端和输出端,并且具有连接到加法器电路14的输入端的标志输出端。加法器电路14的和输出端连接到控制处理器16。指令提供电路19具有连接到程序计数器18的输入端,并且具有连接到处理单元10、操作数存储电路12以及控制处理器16的输出端。控制处理器16具有连接到程序计数器18的控制输出端。在简单的实现中,指令提供电路19是指令存储器,其返回由程序计数器18所寻址的存储器位置的内容,但是可以使用更复杂的电路,用于实现例如高速缓冲存储、流水线操作和/或初步指令解码。在结构上,程序计数器18可以被看做是指令提供电路19的一部分,但是为了清楚起见,单独将其示出。
在操作中,程序计数器18把指令地址提供给指令提供电路19。在通常情况下,程序计数器18在连续的指令周期中递增指令地址,使得在连续的指令周期中寻址连续的程序指令。响应于每个指令地址,指令提供单元19把指令信息提供给处理单元10、操作数存储电路12以及控制处理器16。响应于指令信息,操作数存储电路12把操作数数据输出到处理单元10,并且处理单元10执行受指令控制的操作,每个操作使用操作数数据中的不同部分作为操作数。作为执行结果,每个处理单元10产生一个结果,并且把这些处理单元10的组合结果写回到操作数存储电路12中由指令提供电路19的指令所控制的地址上。
响应于至少一类指令,处理单元10在它们的标志输出端输出取决于操作数的标志数据。在一个实例中,处理单元10支持“比较”指令,并且一旦执行了这个指令,每个处理单元10在其标志输出端输出针对其特定操作数所获得的比较结果。在另一个实例中,在计算结果的期间,作为副作用产生标志输出端的信号,该信号指示出,例如,该结果是表示大于零的数,还是表示溢出等等。
加法器电路14把标志输出端的信号进行相加。即,其形成了对标志输出端的数量的计数,其中在标志输出端的标志信号具有预定的逻辑电平。因此,如果仅有一个处理单元输出了这种标志信号,加法器电路14就输出用于表示数量“1”的信号,如果仅有两个处理器单元输出了这种标志信号,加法器电路14就输出用于表示数量“2的信号,依次类推,直到处理单元的数量“N”。
控制处理器16从指令提供电路19接收它自己的取决于程序计数器的指令,并且从加法器电路14接收和信号。响应于这些指令,控制存储器16可以执行各种类型的动作。这些指令包括条件跳转指令(在本文中该术语与术语“分支指令“可互换地使用)。响应于这种指令,控制处理器16对是否满足指令中所指定的条件进行测试,并且如果满足了该条件,那么控制存储器16把信号发送给程序计数器18,以改变该指令地址。所需要的改变可以是例如绝对改变(程序所选择的地址),又例如相对改变(旧的指令地址加上程序所选择的偏移量)。
在一个实施例中,控制处理器16被设计为通过使用取决于来自加法器电路14的和信号的条件,对至少一类指令做出响应。在一个实施例中,这类指令通过门限数量来指定该条件,从而如果来自加法器电路的和信号超过了这个门限数量(和/或可选择地等于这个数量),那么控制处理器16响应于该指令,促使程序计数器18根据相对或绝对跳转来更新指令地址。在另一个实施例中,如果来自加法器电路的和信号低于或等于这个门限数量,那么控制处理器16响应于这个指令来促使跳转。最好把控制处理器16设计为支持各个指令当各个来自加法器电路的和信号低于(和/或等于)和高于(和/或等于)这个门限数量时促使跳转。
在一个实例中,这类指令用来在信号处理(例如处理音频信号,其中处理单元10处理各自的音频抽样、或各自的傅立叶系数,和/或处理视频信号,其中处理单元10处理各自的像素抽样、或各自的傅立叶系数(此处所用的“抽样”不仅涉及直接测量到的物理值,还涉及对这种测量序列进行处理所产生的序列))期间做统计判决。在这类任务的程序中,例如可以提供有普通的程序流,还可以提供特殊程序部分用于多于最小数量的抽样值超过门限的情况。在这种情况下,该程序可以包含用于跳转到特殊程序部分的指令,比如,一旦5%的处理单元10检测到其操作数超过了门限,就进行该跳转。
在进一步的实施例中,该电路可以被配置为支持标志的屏蔽,以便加法器电路14仅形成来自程序所选择的处理单元10的标志信号的和。可以以各种方式来实现屏蔽。在一个实施例中,处理单元10中支持屏蔽。在这种情况下,例如每个处理单元10可以被设计为:如果在该特定处理单元10中的一个指令的第一操作数的条件不满足,并且在该特定处理单元10中的该指令的第二操作数中的控制标志具有预定值,则响应于该指令而输出零标志信号(即对和没有贡献的信号)。在这种情况下,处理单元10只有当满足该条件并且该控制标志没有预定值时才输出非零标志信号。
在另一个实施例中,通过指令提供电路19提供给控制寄存器(未示出)的屏蔽向量来支持屏蔽。可以从指令提供电路19直接提供这个屏蔽向量,或者经由控制处理器16来提供。
图2示出了一个实施例,其中以处理单元10和加法器电路14之间所提供的AND门20的形式,把屏蔽电路示出在处理单元10之外。每个处理单元10的标志输出端连接到各自AND门的第一输入端,从屏蔽寄存器22提供控制标志到第二输入端。AND门20的输出端连接到加法器电路14。在这个实施例中,控制寄存器22的各个输出端连接到AND门20的输入端,以提供控制标志。在这个实施例中,经由控制处理器16来提供屏蔽向量,可以用一个或多个用于设置控制寄存器各个部分的指令来实现该屏蔽向量。然而,本发明并不限于这个实施例,例如类似于AND门的功能可以是处理单元10固有的,在此情况下,控制寄存器22连接到处理单元10;或者可以使用作为处理单元10的部件的控制寄存器。类似地,如果从指令提供电路19提供控制标志,该电路可以连接到控制寄存器22,或者如果控制标志来自操作数存储单元12,则控制寄存器22将会是该电路的部件。
在另一个实施例中,处理单元10被构造为输出多个不同的标志信号(发出信号来表示例如不同条件,例如,操作数相等、第一操作数大于第二操作数、第一操作数小于第二操作数、或者操作结果分别大于零、等于零以及小于零)。在这个实施例中,可以在处理单元10和控制处理器16之间提供多个加法器电路14,每个用于对各自类型的标志信号进行求和。在这种情况下,控制处理器16优选被构造为对不同类型的指令做出响应,该不同类型的指令响应于不同类型的和来实现跳转。在另一个实施例中,把多个种类型的标志信号提供给一个法器电路14,并且每个复用器(未示出)连接在各个处理单元10的一组标志输出端和加法器电路14的相应输入端之间,控制处理器16具有连接到这些复用器的控制输入端的输出端,用于选择在控制处理器16的指令控制之下必须被求和的标志信号的类型;可选择地,处理单元可以被配置为在它们的指令的控制之下来选择标志类型。
在一个实施例中,加法器电路14是饱和加法器电路,其被设计为仅累计到预定的最大值,返回表示该最大值的数字,或者如果该实际的和超过了最大值则返回以该实际和为模的数。这在许多情况中满足要求。然而,优选把加法器电路14设计为累加到所有可能的和值。可以使用各种类型的加法器电路。优选使用树形结构加法器电路14,其中提供了各个子加法器(未示出)以形成处理单元子集的标志信号的各自部分和,并且一个或多个后续加法器对这些部分和进行求和。这减小了标志信号的生成和跳转的执行之间等待时间。应该明白的是,在任何情况下,都可以使用某种流水线操作形式,使得在一个指令周期内处理单元10所输出的标志信号的和,影响在稍后的指令周期内的跳转,该跳转导致程序计数器地址改变,例如对于最初指令周期偏移在流水线化的加法器电路14中所使用的多个周期。
优选使用一比特的标志。但是在进一步的实施例中可以使用多比特标志(例如两比特标志,以指示处理单元10的操作数之间的比较导致四个种类中哪一个)。在进一步的实施例中,把加法器电路14设计为将这些多比特标志作为数字来求和。要强调的是,如果使用多比特标志,则该多比特标志的大小最好很小,典型地,比处理单元10的操作数中的比特数量小得多,以避免标志的输出和跳转的执行之间有过大的等待时间。
该处理电路优选是SIMD(单指令多数据)电路,其意味着指令提供电路19在每个指令周期把相同指令提供给所有处理单元10。这样,以简单的方式确保了将由处理单元10输出可比较的标志信号,可以明显地对该信号进行求和。然而,本发明不限于SIMD处理器。本发明还可应用于MIMD处理器,即其中的指令提供电路19能够把彼此不同的指令提供给处理单元10的处理器。典型地,在这种情况下,以标志信号的和为条件的跳转指令仅用于当把相等的或至少相似的指令提供给所有处理单元10(或者至少那些没有屏蔽在和之外的处理单元10)时产生的标志输出。
此外,尽管本发明所描述的优选实施例中使用加法器电路14的输出来执行条件跳转(分支)指令,但是应该明白的是,此外或者可替换地,本发明可以应用于中断或异常处理。在中断的情况下,当发生了取决于该和的条件时,控制处理器16促使跳转到预定的地址。例如,固定地通过硬接线或响应于“激活中断”指令,可以为后续的指令预先设置条件和/或预定的地址。在这类处理器中,程序计数器18跟随正常程序流,除非在正常程序流期间执行了任一指令之后该和满足了条件。如果满足了条件,控制跳转到异常处理指令。
此处描述了一个实施例中,控制处理器16被构造为与处理单元10来步调一致地执行指令,包括用于改变程序计数器的跳转指令,该程序计数器对处理单元10和控制处理器16的指令选择进行控制。典型地,控制处理器16被构造为还能够执行其它类型的指令,例如以便控制将信号数据捕获到操作数存储电路12中或者更新该电路的输出结果等等。然而应该明白的是本发明不限于这个实施例。在不同的实施例中,控制处理器16仅仅用来监视条件,以便实现取决于这些条件的程序计数器的更新。在这个情况下,控制处理器的“指令”仅仅包含跳转目标地址(或偏移量)以及可选择的条件指定,例如和的门限值以及/或者如果该和高于或低于该门限值时是否需要跳转。
此外,尽管只详细描述了使用标志信号的和来指定跳转条件,应该明白的是,控制处理器16此外可以构造为还促使在其它条件下的跳转,例如取决于(标志输出的可选择屏蔽部分的)一些逻辑函数(是否为真)。为此,可以把相应的逻辑电路与加法器电路14并行连接在标志输出端和控制处理器16之间。在这个情况下,控制处理器的指令优选指定用哪个电路来判决是否实现跳转。然而,应该注意的是,对于标志输出信号的一些简单的逻辑函数(例如逻辑AND、逻辑OR,以及奇偶函数)的结果之上的跳转,可以使用加法器电路14的输出信号:如果和大于零,则逻辑OR的值为真;如果该和等于最大可能值,则逻辑AND的值为真;并且奇偶性对应于该和的最低有效位。
通过结合对所选择的标志信号进行屏蔽,求和电路的输出还可以用来计算纠错校验子值的比特。典型地,这包括多个不同的屏蔽,以及和的最低有效位的使用。可替换地,可以并行地提供多个不同的求和电路(其中某些仅具有最低有效位输出)以及多个屏蔽寄存器,以并行地计算校验子的不同比特。

Claims (9)

1.一种电子电路,包括:
多个并行指令处理单元(10),每个处理单元(10)都具有标志输出端,用于提供条件信号,以表示在由该处理单元(10)执行指令的期间是否发生了取决于数据的条件;
指令提供电路(18、19),其输出端连接到所述处理单元(10)
具有输入端以及和输出端的加法器电路(14),所述输入端连接到所述标志输出端;
控制电路(16),其连接到所述指令提供电路(18、19)以控制所提供指令的程序流,所述控制电路(16)具有连接到所述和输出端的条件输入端,所述控制电路(16)被配置为根据在所述和输出端所提供的和的值,实现所述指令提供电路(18、19)的条件程序控制跳转。
2.如权利要求1所述的电子电路,包括:屏蔽电路(20、22),用于消除所述条件信号对从根据屏蔽选择的处理单元(10)而来的取决于数据的条件的依赖性。
3.如权利要求1所述的电子电路,用包含跳转指令的程序对其进行编程,以根据与大于一并且小于处理单元(10)的总数减一的数相对的所述和结果的值,强制程序跳转。
4.如权利要求1所述的电子电路,其中,所述电子电路具有SIMD结构,所述指令提供电路(18、19)被配置为对所有处理单元共同提供相同指令信息。
5.如权利要求1所述的电子电路,其中,所述控制电路(16)是指令处理电路,所述指令提供电路(18、19)被配置为在向所述处理单元(10)提供所述指令信息的同时,向所述控制电路(16)提供与用于所述处理单元(10)的各个指令相关联的控制指令,所述控制电路的控制指令集包括用于实现条件程序控制跳转的条件跳转指令。
6.如权利要求1所述的电子电路,其中,通过所述加法器电路来相加的所述条件信号是一比特信号,所述和是多比特和信号。
7.如权利要求1所述的电子电路,其中,所述处理单元(10)的指令集包括比较指令,用于定义该取决于数据的条件是如何取决于所述指令的操作数数据的。
8.如权利要求1所述的电子电路,其中,所述控制电路(16)被配置为:根据所述和的值是否低于所述控制电路的控制指令中指定的门限值以及/或者根据所述和的值是否高于所述控制电路的控制指令中指定的门限值,来实现所述条件程序控制跳转。
9.一种用于并行地处理多个操作数的方法,所述方法包括:
把指令提供给多个并行的处理单元(10);
把所述指令的各个操作数数据提供给各个处理单元(10);
在每个特定的处理单元(10)中,确定在由该特定的处理单元(10)执行指令的期间,是否发生了取决于操作数数据的条件;
根据所述确定,从每个特定的处理单元(10)输出条件信号;
对所述条件信号进行求和,以形成和信号;
在包含所述指令的程序中实现条件程序控制跳转,该跳转根据所述和信号表示的值来实现。
CN2006800047092A 2005-02-14 2006-02-09 一种用于并行地处理多个操作数的电子电路 Expired - Fee Related CN101120310B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP05101051.0 2005-02-14
EP05101051 2005-02-14
PCT/IB2006/050422 WO2006085277A2 (en) 2005-02-14 2006-02-09 An electronic parallel processing circuit

Publications (2)

Publication Number Publication Date
CN101120310A true CN101120310A (zh) 2008-02-06
CN101120310B CN101120310B (zh) 2010-06-09

Family

ID=36499314

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800047092A Expired - Fee Related CN101120310B (zh) 2005-02-14 2006-02-09 一种用于并行地处理多个操作数的电子电路

Country Status (6)

Country Link
US (1) US7904698B2 (zh)
EP (1) EP1851619A2 (zh)
JP (1) JP4469896B2 (zh)
KR (1) KR20070105325A (zh)
CN (1) CN101120310B (zh)
WO (1) WO2006085277A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577254A (zh) * 2012-07-19 2014-02-12 三星电子株式会社 用于高速处理应用的算术处理设备和方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110620636B (zh) * 2018-06-20 2022-05-17 富联精密电子(天津)有限公司 数据传输校验装置及方法
CN109214273A (zh) * 2018-07-18 2019-01-15 平安科技(深圳)有限公司 人脸图像比对方法、装置、计算机设备及存储介质
CN108985232A (zh) * 2018-07-18 2018-12-11 平安科技(深圳)有限公司 人脸图像比对方法、装置、计算机设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56127266A (en) 1980-03-10 1981-10-05 Ibm Method of executing and controlling command stream
JPH01153189A (ja) 1987-12-11 1989-06-15 Matsushita Electric Ind Co Ltd アイロン収納ケースのロック装置
JP2793342B2 (ja) 1990-08-09 1998-09-03 株式会社東芝 演算処理装置
US5581778A (en) * 1992-08-05 1996-12-03 David Sarnoff Researach Center Advanced massively parallel computer using a field of the instruction to selectively enable the profiling counter to increase its value in response to the system clock
US5659722A (en) * 1994-04-28 1997-08-19 International Business Machines Corporation Multiple condition code branching system in a multi-processor environment
US5923862A (en) * 1997-01-28 1999-07-13 Samsung Electronics Co., Ltd. Processor that decodes a multi-cycle instruction into single-cycle micro-instructions and schedules execution of the micro-instructions
US5881274A (en) * 1997-07-25 1999-03-09 International Business Machines Corporation Method and apparatus for performing add and rotate as a single instruction within a processor
US6366999B1 (en) 1998-01-28 2002-04-02 Bops, Inc. Methods and apparatus to support conditional execution in a VLIW-based array processor with subword execution
WO2000078120A2 (en) * 1999-06-21 2000-12-28 Bops Incorporated Methods and apparatus for initiating and resynchronizing multi-cycle simd instructions
US20020083311A1 (en) * 2000-12-27 2002-06-27 Paver Nigel C. Method and computer program for single instruction multiple data management
US7127593B2 (en) 2001-06-11 2006-10-24 Broadcom Corporation Conditional execution with multiple destination stores
US6944744B2 (en) * 2002-08-27 2005-09-13 Advanced Micro Devices, Inc. Apparatus and method for independently schedulable functional units with issue lock mechanism in a processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577254A (zh) * 2012-07-19 2014-02-12 三星电子株式会社 用于高速处理应用的算术处理设备和方法
CN103577254B (zh) * 2012-07-19 2018-11-02 三星电子株式会社 用于高速处理应用的算术处理设备和方法

Also Published As

Publication number Publication date
JP4469896B2 (ja) 2010-06-02
CN101120310B (zh) 2010-06-09
KR20070105325A (ko) 2007-10-30
JP2008530679A (ja) 2008-08-07
WO2006085277A2 (en) 2006-08-17
EP1851619A2 (en) 2007-11-07
US7904698B2 (en) 2011-03-08
WO2006085277A3 (en) 2007-01-11
US20080189515A1 (en) 2008-08-07

Similar Documents

Publication Publication Date Title
US20070239975A1 (en) Programmable backward jump instruction prediction mechanism
JP5668143B2 (ja) データ処理装置のデバッグ
US7043679B1 (en) Piggybacking of ECC corrections behind loads
CA2040304C (en) Compounding preprocessor for cache
US7975130B2 (en) Method and system for early instruction text based operand store compare reject avoidance
US8041901B2 (en) Performance monitoring device and method thereof
US6304960B1 (en) Validating prediction for branches in a cluster via comparison of predicted and condition selected tentative target addresses and validation of branch conditions
EP0380849B1 (en) Method and data processing unit for preprocessing implied specifiers in a pipelined processor
US20080072011A1 (en) SIMD type microprocessor
KR20010023991A (ko) 필터링에 근거하는 명령 예측 발생 시스템 및 방법
US6230261B1 (en) Method and apparatus for predicting conditional branch instruction outcome based on branch condition test type
CN101120310B (zh) 一种用于并行地处理多个操作数的电子电路
CN107851007B (zh) 宽数据类型的比较的方法和装置
US20070050602A1 (en) Partially decoded register renamer
US6725450B1 (en) Program conversion apparatus, processor, and record medium
US5859994A (en) Apparatus and method for modifying instruction length decoding in a computer processor
US6934903B1 (en) Using microcode to correct ECC errors in a processor
KR100974401B1 (ko) 주소 레지스터의 내용을 스와핑하기 위한 방법 및 장치
US20120221838A1 (en) Software programmable hardware state machines
US7809928B1 (en) Generating event signals for performance register control using non-operative instructions
US6990569B2 (en) Handling problematic events in a data processing apparatus
JP7377208B2 (ja) データ処理
US6944745B2 (en) Exception handling for single instructions with multiple data
CN101601011B (zh) 用于对计算机架构条件码设置进行有效仿真的方法和装置
US6453412B1 (en) Method and apparatus for reissuing paired MMX instructions singly during exception handling

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100609

Termination date: 20120209