CN1269029C - 流水线处理器的异常管理 - Google Patents

流水线处理器的异常管理 Download PDF

Info

Publication number
CN1269029C
CN1269029C CNB018207081A CN01820708A CN1269029C CN 1269029 C CN1269029 C CN 1269029C CN B018207081 A CNB018207081 A CN B018207081A CN 01820708 A CN01820708 A CN 01820708A CN 1269029 C CN1269029 C CN 1269029C
Authority
CN
China
Prior art keywords
unusual
streamline
instruction
execution pipeline
multistage
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.)
Expired - Fee Related
Application number
CNB018207081A
Other languages
English (en)
Other versions
CN1481529A (zh
Inventor
C·P·罗思
R·P·辛格
G·A·奥弗坎普
Original Assignee
Analog Devices Inc
Intel Corp
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 Analog Devices Inc, Intel Corp filed Critical Analog Devices Inc
Publication of CN1481529A publication Critical patent/CN1481529A/zh
Application granted granted Critical
Publication of CN1269029C publication Critical patent/CN1269029C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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, 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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3865Recovery, e.g. branch miss-prediction, exception handling using deferred exception handling, e.g. exception flags

Abstract

在一个实施例中,可编程处理器包括执行流水线和异常流水线。本发明提供了一种流水线处理器的异常管理方法和装置,包括:处理在可编程处理器的执行流水线中的指令;以及通过处理器的异常流水线,传播指令的异常;其中所述通过异常流水线传播异常的步骤包括基于与异常相关的优先权信息在异常流水线的中间级选择多个异常中的一个,所述多个异常包括从前一级获得的第一异常和从中间级获得的第二异常,并将所选的异常传播到异常流水线的后续级。

Description

流水线处理器的异常管理
技术领域
本发明涉及在处理器中的异常管理。
背景技术
可编程微处理器(例如,数字信号处理器)一般都包括异常处理硬件,该硬件主要用于处理在处理指令过程中所遇到的错误。例如,处理器可以会遇到非法的指令(不支持的操作代码),未对准的指令,访问存储器保护区域的指令,非法的存储器地址,总线错误,等等。
在检测到上述错误的事件中,异常管理器硬件一般都包括对应的软件程序,该软件程序常常称之为错误管理器,用于响应错误的条件。
发明内容
本发明提供了一种方法,它包括:处理在可编程处理器的执行流水线中的指令;以及通过处理器的异常流水线,传播指令的异常;其中所述通过异常流水线传播异常的步骤包括基于与异常相关的优先权信息在异常流水线的中间级选择多个异常中的一个,所述多个异常包括从前一级获得的第一异常和从中间级获得的第二异常,并将所选的异常传播到异常流水线的后续级。
本发明还提供了一种装置,它包括:具有能同时执行一条或多条指令的多级的执行流水线;以及具有能传播指令执行所产生异常的多级的异常流水线;其中异常流水线的多级包括至少一个中间级,它包括异常选择单元,用于从从前一级获得的第一异常和从中间级获得的第二异常中选择最高优先权的异常,并将所选的异常传播到异常流水线的后续级。
本发明提供了一种系统,它包括:闪存存储器件;以及与闪存存储器件相耦合的处理器,其中,所述处理器包括具有能同时执行一条或多条指令的多级的执行流水线,和具有能传播指令执行所产生的异常的多级的异常流水线;其中异常流水线的多级包括至少一个中间级,它包括异常选择单元,用于从从前一级获得的第一异常和从中间级获得的第二异常中选择最高优先权的异常,并将所选的异常传播到异常流水线的后续级。
附图说明
图1是根据本发明实施例所构成的可编程处理器实例的方框图。
图2是说明可编程处理器的执行流水线实例的方框图。
图3是根据本发明实施例的异常流水线的电路图。
图4是根据本发明实施例的异常流水线的另一电路图。
具体实施方式
图1是说明采用根据本发明实施例处理异常的可编程处理器实例的方框图。处理器2可以包括执行流水线4,异常流水线5和控制单元6。
异常流水线4可以具有多个适用于同时处理多条指令的流水线级。指令可以执行流水线4第一级装入并通过后续各级处理。在系统的一个周期中,数据可以在流水线4的各级之间通过。指令的结构以较快的方式出现在流水线的结束位置处。
控制单元6可以根据系统时钟控制指令和/或数据在执行流水线4中的流动。例如,在指令的处理过程中,控制单元6可以直接使流水线4的各个部分解码指令并同时执行所对应的操作,该操作可以包括,例如,将结果写回到存储器。
在错误的条件事件中,执行流水线4的各个级都可以产生一个或多个异常信号7,该信号可以采用表示特殊错误条件的异常代码的形式。异常流水线5可以具有多个流水线的级,用于接受异常流水线4的异常并且传输与所响应产生错误条件的指令同步的异常。正如以下所详细讨论的,异常流水线5是与执行流水线“互锁”的,以确保通过异常流水线5流动的异常保持着与在执行流水线4中流动的指令的同步。例如,如果在执行流水线4中出现停止条件,异常流水线5就可以停止相同数量的周期。
图2是说明在根据本发明实施例的可编程处理器执行流水线的方框图。控制单元6可以插入控制信号18,来控制通过执行流水线4的指令和数据的流动。
流水线4,例如,可以具有五级:指令输入(IF),指令解码(DEC),地址计算(AC),执行(EX)和写回(WB)。指令可以在第一级(IF)由输入单元11从存储器件输入,例如,从主存储器7或从指令高速缓存器中输入,以及在第二级(DEC)由指令解码单元12解码。在下一个时钟周期,该结果传递到第三级(AC),在该级中,数据地址发生器13可以计算执行操作的任何存储器地址。
在执行级(EX)中,执行单元15可以进行一个或多个由指令所指定的操作,例如,两个数字的相加或相乘、执行单元15可以包含进行操作的一些指定硬件,例如,一个或多个算术逻辑单元(ALU),浮点单元(FPU)和桶形移位寄存器。可以将多个数据施加到执行单元15,从而得到由数据地址发生器13产生的地址,从存储器恢复的数据或从数据寄存器14恢复的数据。在最后以及(WB)中,写回单元16可以将所有的结果写回到数据存储器或数据寄存器14。
流水线4的级可以包括存储电路,例如,流水线寄存器19,用于存储当前级的任何结果。级寄存器19一般是根据系统时钟来锁存结果。级寄存器19接受控制信号18,该信号包括一个或多个停止信号,该信号可以控制级寄存器19是否停止锁存前一级的结果。采用这种方式,控制单元6可以同步停止流水线4的一级或多级。正如以下将详细讨论的,异常流水线5(图1)也接受控制信号18并且与执行流水线4同步停止。
执行流水线4的各个级可以产生一个或多个异常信号(EXPS),用于指示在所对应级中已经检测到的错误条件。例如,当遇到未对准的指令时,输入单元11可以插入一个异常信号17。当解码不支持(非法)的指令操作代码时,解码单元12可以插入一个异常信号17。当计算出非法存储器地址时,数据地址发生器13可以插入一个异常信号17。当操作结果为错误条件(例如,溢出条件)时,执行单元就插入一个异常信号。当指令试图将结果写回回到存储器的包含区域时,写回单元16就可以插入一个异常信号。上述所列出的错误只是用于举例的目的并且仅仅表示在一条指令执行过程中可能出现错误的子集。
图3是说明具有多级的异常流水线5的实例方框图。异常流水线5可以具有:例如,指令输入(IF),指令解码(DEC),地址计算(AC),执行(EX)和写回(WB)。异常流水线5的各级(IF,DEC,AC,EX,WB)可以接受执行流水线4所对应级(IF,DEC,AC,EX,WB)的一个或多个异常(17A,17B,17C,17D,17E)。例如,异常流水线5的IF级可以接受一个或多个M异常17A,而异常流水线5中的DEC级可以接收M个异常中的一个或多个17B。各异常(例如17A)可以由N位异常代码来表示。因此,流水线寄存器32A,32B,32C,32D,32E可以具有并行存储N位的能力。
异常流水线5的各级(IF,DEC,AC,EX,WB)包括异常选择单元(31A,31B,31C,31D,31E),用于选择将进入后续级的最高优先权的异常。例如,指令输入选择单元31A选择在异常流水线5的IF级中出现的M异常中的一个异常(例如17A)。所选择的IF异常在下一个时钟周期中存储在级寄存器32A中。
根据各种异常的优先权,解码选择单元31B选择:(1)在异常流水线4的解码级中出现的M个异常中的一个异常,或者(2)异常流水线5的IF级传输的在级寄存器32A中存储的异常(例如17A)。解码选择单元31B将所选择的异常存储于流水线级寄存器32B。
采用这种方式,在异常流水线5各级中传输的异常与在执行流水线4中传输的各个指令是同步的。在指令保持在执行流水线4的写回级时,来自异常流水线5的对应异常可以出现在exc_code输出,可应用于控制单元6和包括对应错误管理软件程序的异常管理器8。在一个实施例中,用于异常的处理在出现异常WB级之前的几级开始并包括使用的服务程序。
图4是说明异常流水线5的电路35的方框图,该电路可用于控制通过图3所说明的各级异常的流动。正如以下详细讨论的,电路35传输一个和多个异常请求通过一些双稳态触发器36A,36B,36C,36D;异常请求对应于在图3所示的异常流水线5所传输的异常代码。
当异常请求采用控制信号18传播通过电路35时才被认可,而控制信号18控制通过执行流水线4的指令流。例如,第一输入异常信号限制为两个信号:(1)“删除(Kill)”信号,该信号表示由于指令流动的变化所对应的指令是否还保持在WB级,以及(2)“停止(Stall)”信号,该信号表示在执行流水线4中所对应的指令已经停止。当这些条件不存在时,触发器36A就锁存着输入异常请求信号。然而,在停止条件的事件中,触发器36A的输出由多路复用器反馈和选择,在随后的时钟周期锁存。采用这种方式,异常请求与在执行流水线4中的指令保持同步。
同样,在解码级产生的异常请求与触发器36A的输出“或”,以产生组合的解码异常请求,该请求一样限制为“删除”和“停止”条件信号。这样,异常请求信号可以输入电路35的任何一级并且传输到触发器36D,除非在执行流水线中所对应的指令被删除。在这样的事件中,异常请求可复写在电路35上和从电路35中去除。
触发器36D的输出就没有限制成写回级的停止和删除信号。电路35的输出是exception_req信号21,它被异常管理器8接受。响应之后,异常管理器8包括基于图3异常流水线5所提供的当前异常代码3所对应的异常管理软件程序。
虽然再图4中并没有说明,但是输入异常信号是事先限制指令的有效信号,以确保该异常与“valid”指令有关,例如,处理器2指令集所支持的指令。然而,与其它异常信号不同,输入异常信号就没有限制成为有效信号。这就确保了在IF级中所出现的异常可以正确的使用,而与是否输入有效指令无关。然而,在执行流水线4中传输的对应指令可标记成无效指令。
已经讨论了本发明的各种实施例。例如,已经讨论了具有传输异常请求的异常流水线的处理器。该处理器可以应用于包括通用计算系统,数字处理系统,膝上计算器,个人数字助理(PDA)和蜂窝式电话的各种系统中。在这类系统中,处理器与存储器件相耦合,该存储器件包括闪存存储器件或静态随机存储器(SRAM),可用于存储操作系统和其它软件应用程序。各种实施例都在附加权利要求的范围内。

Claims (25)

1.一种方法,其特征在于,它包括:
处理在可编程处理器的执行流水线中的指令;以及
通过处理器的异常流水线,传播指令的异常;
其中所述通过异常流水线传播异常的步骤包括基于与异常相关的优先权信息在异常流水线的中间级选择多个异常中的一个,所述多个异常包括从前一级获得的第一异常和从中间级获得的第二异常,并将所选的异常传播到异常流水线的后续级。
2.如权利要求1所述方法,其特征在于,处理执行流水线中的指令的步骤包括通过N级执行流水线传播指令,并且所述通过异常流水线传播指令的异常的步骤包括通过N级异常流水线传播指令的异常。
3.如权利要求1所述方法,其特征在于,它进一步包括接受来自执行流水线的传播异常并在异常流水线中存储传播异常。
4.如权利要求3所述方法,其特征在于,接受传播异常的步骤包括从多级执行流水线中的一级接收一个异常代码,并且存储传播异常的步骤包括在异常流水线的对应级中存储异常代码。
5.如权利要求1所述方法,其特征在于,所述通过异常流水线传播异常的步骤进一步包括在异常流水线中传播异常请求位,其中该异常请求位表示在执行流水线所对应的级中的指令的错误条件。
6.如权利要求1所述方法,其特征在于,它进一步包括当执行流水线停止时停止异常流水线。
7.如权利要求1所述方法,其特征在于,它进一步包括当执行流水线中所对应的指令不能完成执行时清除在异常流水线中的传播异常。
8.如权利要求1所述方法,其特征在于,它进一步包括当传播异常已经传输到异常流水线的最后一级时为所述传播异常提供服务。
9.如权利要求1所述方法,其特征在于,进一步包括在异常流水线的各级中对传播异常进行认证以确保所对应的指令没有中止。
10.如权利要求1所述方法,其特征在于,进一步包括在除了指令获取级之外的异常流水线的各级中,对传播异常进行认证,以确保所对应的指令有效。
11.一种装置,其特征在于,它包括:
具有能同时执行一条或多条指令的多级的执行流水线;以及
具有能传播指令执行所产生异常的多级的异常流水线;
其中异常流水线的多级包括至少一个中间级,它包括异常选择单元,用于从从前一级获得的第一异常和从中间级获得的第二异常中选择最高优先权的异常,并将所选的异常传播到异常流水线的后续级。
12.如权利要求11所述装置,其特征在于,执行流水线和异常流水线都具有N级。
13.如权利要求11所述装置,其特征在于,异常流水线的多级包括用于存储异常代码的流水线寄存器。
14.如权利要求11所述装置,其特征在于,异常流水线和执行流水线的多级是由一个或多个停止信号控制的。
15.如权利要求11所述装置,其特征在于,异常流水线包括多个用于传播异常请求位的存储电路。
16.如权利要求15所述装置,其特征在于,异常流水线的各级接受删除信号,以复位异常请求位。
17.如权利要求15所述装置,其特征在于,进一步包括从异常流水线的最后一级接收异常请求位的异常管理器。
18.如权利要求15所述装置,其特征在于,异常流水线的各级包括对异常请求位进行认证的逻辑电路,以确保指令是有效指令且没有终止。
19.如权利要求11所述装置,其特征在于,所述异常流水线的各级包括根据与异常有关的优先权信息从多个异常中选择一个异常的选择逻辑电路。
20.一种系统,其特征在于,它包括:
闪存存储器件;以及
与闪存存储器件相耦合的处理器,
其中,所述处理器包括具有能同时执行一条或多条指令的多级的执行流水线,和具有能传播指令执行所产生的异常的多级的异常流水线;
其中异常流水线的多级包括至少一个中间级,它包括异常选择单元,用于从从前一级获得的第一异常和从中间级获得的第二异常中选择最高优先权的异常,并将所选的异常传播到异常流水线的后续级。
21.如权利要求20所述的系统,其特征在于,所述执行流水线和异常流水线都具有N级。
22.如权利要求20所述的系统,其特征在于,异常流水线的多级包括用于存储异常代码的流水线寄存器。
23.如权利要求20所述的系统,其特征在于,异常流水线和执行流水线的多级是由一个或多个停止信号同步控制的。
24.如权利要求20所述系统,其特征在于,异常流水线包括多个传播异常请求位的存储电路。
25.如权利要求24所述的系统,其特征在于,处理器进一步包括从异常流水线的最后一级接收异常请求位的异常管理器。
CNB018207081A 2000-12-15 2001-12-10 流水线处理器的异常管理 Expired - Fee Related CN1269029C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/738,081 2000-12-15
US09/738,081 US6823448B2 (en) 2000-12-15 2000-12-15 Exception handling using an exception pipeline in a pipelined processor

Publications (2)

Publication Number Publication Date
CN1481529A CN1481529A (zh) 2004-03-10
CN1269029C true CN1269029C (zh) 2006-08-09

Family

ID=24966484

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018207081A Expired - Fee Related CN1269029C (zh) 2000-12-15 2001-12-10 流水线处理器的异常管理

Country Status (6)

Country Link
US (1) US6823448B2 (zh)
JP (1) JP3781419B2 (zh)
KR (1) KR100571322B1 (zh)
CN (1) CN1269029C (zh)
TW (1) TWI223196B (zh)
WO (1) WO2002048873A2 (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653710B2 (en) 2002-06-25 2010-01-26 Qst Holdings, Llc. Hardware task manager
US7962716B2 (en) 2001-03-22 2011-06-14 Qst Holdings, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US7752419B1 (en) 2001-03-22 2010-07-06 Qst Holdings, Llc Method and system for managing hardware resources to implement system functions using an adaptive computing architecture
US8843928B2 (en) 2010-01-21 2014-09-23 Qst Holdings, Llc Method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations
US7249242B2 (en) 2002-10-28 2007-07-24 Nvidia Corporation Input pipeline registers for a node in an adaptive computing engine
US6836839B2 (en) 2001-03-22 2004-12-28 Quicksilver Technology, Inc. Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements
US6577678B2 (en) 2001-05-08 2003-06-10 Quicksilver Technology Method and system for reconfigurable channel coding
US7046635B2 (en) 2001-11-28 2006-05-16 Quicksilver Technology, Inc. System for authorizing functionality in adaptable hardware devices
US6986021B2 (en) 2001-11-30 2006-01-10 Quick Silver Technology, Inc. Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements
US8412915B2 (en) 2001-11-30 2013-04-02 Altera Corporation Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements
US7215701B2 (en) 2001-12-12 2007-05-08 Sharad Sambhwani Low I/O bandwidth method and system for implementing detection and identification of scrambling codes
US7403981B2 (en) * 2002-01-04 2008-07-22 Quicksilver Technology, Inc. Apparatus and method for adaptive multimedia reception and transmission in communication environments
US6981079B2 (en) * 2002-03-21 2005-12-27 International Business Machines Corporation Critical datapath error handling in a multiprocessor architecture
US7660984B1 (en) 2003-05-13 2010-02-09 Quicksilver Technology Method and system for achieving individualized protected space in an operating system
US7328414B1 (en) 2003-05-13 2008-02-05 Qst Holdings, Llc Method and system for creating and programming an adaptive computing engine
US8108656B2 (en) 2002-08-29 2012-01-31 Qst Holdings, Llc Task definition for specifying resource requirements
US7065665B2 (en) * 2002-10-02 2006-06-20 International Business Machines Corporation Interlocked synchronous pipeline clock gating
US7937591B1 (en) 2002-10-25 2011-05-03 Qst Holdings, Llc Method and system for providing a device which can be adapted on an ongoing basis
US8276135B2 (en) 2002-11-07 2012-09-25 Qst Holdings Llc Profiling of software and circuit designs utilizing data operation analyses
US7225301B2 (en) 2002-11-22 2007-05-29 Quicksilver Technologies External memory controller node
US6856270B1 (en) 2004-01-29 2005-02-15 International Business Machines Corporation Pipeline array
US7386756B2 (en) * 2004-06-17 2008-06-10 Intel Corporation Reducing false error detection in a microprocessor by tracking instructions neutral to errors
US7555703B2 (en) * 2004-06-17 2009-06-30 Intel Corporation Method and apparatus for reducing false error detection in a microprocessor
US7370243B1 (en) * 2004-06-30 2008-05-06 Sun Microsystems, Inc. Precise error handling in a fine grain multithreaded multicore processor
KR100664922B1 (ko) * 2004-08-21 2007-01-04 삼성전자주식회사 자바 보안 기능 개선 방법
US20060168485A1 (en) * 2005-01-26 2006-07-27 Via Technologies, Inc Updating instruction fault status register
JP5245237B2 (ja) * 2006-09-29 2013-07-24 富士通セミコンダクター株式会社 エラー処理方法
US8359604B2 (en) * 2009-01-22 2013-01-22 Microsoft Corporation Propagating unobserved exceptions in a parallel system
US8688964B2 (en) * 2009-07-20 2014-04-01 Microchip Technology Incorporated Programmable exception processing latency
US8631279B2 (en) 2011-06-07 2014-01-14 Microsoft Corporation Propagating unobserved exceptions in distributed execution environments
CN103294567B (zh) * 2013-05-31 2015-10-28 中国航天科技集团公司第九研究院第七七一研究所 一种单发射五级流水处理器的精确异常处理方法
GB2595476B (en) * 2020-05-27 2022-05-25 Graphcore Ltd Exception handling

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5297263A (en) * 1987-07-17 1994-03-22 Mitsubishi Denki Kabushiki Kaisha Microprocessor with pipeline system having exception processing features
US5325495A (en) * 1991-06-28 1994-06-28 Digital Equipment Corporation Reducing stall delay in pipelined computer system using queue between pipeline stages
JPH05265739A (ja) * 1992-03-16 1993-10-15 Sankyo Seiki Mfg Co Ltd 磁気テープ装置のプログラム変更方法
JP2815236B2 (ja) 1993-12-15 1998-10-27 シリコン・グラフィックス・インコーポレーテッド スーパースカーラマイクロプロセッサのための命令ディスパッチ方法及びレジスタ競合についてのチェック方法
US5889982A (en) * 1995-07-01 1999-03-30 Intel Corporation Method and apparatus for generating event handler vectors based on both operating mode and event type
US5603047A (en) * 1995-10-06 1997-02-11 Lsi Logic Corporation Superscalar microprocessor architecture
JP3442225B2 (ja) * 1996-07-11 2003-09-02 株式会社日立製作所 演算処理装置
TW436693B (en) * 1998-08-18 2001-05-28 Ind Tech Res Inst Interrupt control device and method for pipeline processor

Also Published As

Publication number Publication date
WO2002048873A3 (en) 2002-12-05
CN1481529A (zh) 2004-03-10
US6823448B2 (en) 2004-11-23
KR100571322B1 (ko) 2006-04-17
TWI223196B (en) 2004-11-01
JP3781419B2 (ja) 2006-05-31
KR20040016829A (ko) 2004-02-25
US20020078334A1 (en) 2002-06-20
WO2002048873A2 (en) 2002-06-20
JP2004516546A (ja) 2004-06-03

Similar Documents

Publication Publication Date Title
CN1269029C (zh) 流水线处理器的异常管理
US6772355B2 (en) System and method for reducing power consumption in a data processor having a clustered architecture
US8943298B2 (en) Meta predictor restoration upon detecting misprediction
EP0372751B1 (en) Pipelined data-processing apparatus
JP3242508B2 (ja) マイクロコンピュータ
US5761467A (en) System for committing execution results when branch conditions coincide with predetermined commit conditions specified in the instruction field
EP1609058A2 (en) Method and apparatus for hazard detection and management in a pipelined digital processor
US6829700B2 (en) Circuit and method for supporting misaligned accesses in the presence of speculative load instructions
US7472264B2 (en) Predicting a jump target based on a program counter and state information for a process
US6920547B2 (en) Register adjustment based on adjustment values determined at multiple stages within a pipeline of a processor
JP2783285B2 (ja) 情報処理装置
US6807628B2 (en) System and method for supporting precise exceptions in a data processor having a clustered architecture
JPH07182165A (ja) コミット条件付き命令の処理方法およびその装置
WO2022127347A1 (en) Hardware support for software pointer authentification in computing system
US11663014B2 (en) Speculatively executing instructions that follow a status updating instruction
US7890739B2 (en) Method and apparatus for recovering from branch misprediction
US11036503B2 (en) Predicate indicator generation for vector processing operations
JP3100705B2 (ja) マイクロプロセッサ内の命令準備のための装置
KR20240038497A (ko) 프로세서 및 프로세서에서의 소프트 에러 검출 방법
US20050033942A1 (en) Distribution of architectural state information in a processor across multiple pipeline stages
EP0771442A1 (en) Instruction memory limit check in microprocessor
JP2004288203A (ja) プロセッサコア及びこれを用いたプロセッサ
JPH06222919A (ja) パイプライン情報処理装置
JPH04168526A (ja) ループ制御方式

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20090206

Address after: Massachusetts, USA

Patentee after: ANALOG DEVICES, Inc.

Address before: California, USA

Co-patentee before: ANALOG DEVICES, Inc.

Patentee before: INTEL Corp.

ASS Succession or assignment of patent right

Owner name: ANALOG DEVICES, INC.

Free format text: FORMER OWNER: INTEL CORP

Effective date: 20090206

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060809

Termination date: 20201210