DE3586899T2 - Instruktionsvorgriffsystem fuer bedingte sprungbefehle in einer zentralen verarbeitungseinrichtung. - Google Patents

Instruktionsvorgriffsystem fuer bedingte sprungbefehle in einer zentralen verarbeitungseinrichtung.

Info

Publication number
DE3586899T2
DE3586899T2 DE8585400967T DE3586899T DE3586899T2 DE 3586899 T2 DE3586899 T2 DE 3586899T2 DE 8585400967 T DE8585400967 T DE 8585400967T DE 3586899 T DE3586899 T DE 3586899T DE 3586899 T2 DE3586899 T2 DE 3586899T2
Authority
DE
Germany
Prior art keywords
processing device
central processing
prevention system
conditional jump
jump commands
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
DE8585400967T
Other languages
English (en)
Other versions
DE3586899D1 (de
Inventor
William F Bruckert
Tryggve Fossum
Rosa De Jr
Richard E Glackemeyer
Allan E Helenius
John C Manton
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of DE3586899D1 publication Critical patent/DE3586899D1/de
Application granted granted Critical
Publication of DE3586899T2 publication Critical patent/DE3586899T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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
    • G06F9/3802Instruction prefetching
    • G06F9/3804Instruction prefetching for branches, e.g. hedging, branch folding
DE8585400967T 1984-05-21 1985-05-15 Instruktionsvorgriffsystem fuer bedingte sprungbefehle in einer zentralen verarbeitungseinrichtung. Expired - Fee Related DE3586899T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/612,621 US4742451A (en) 1984-05-21 1984-05-21 Instruction prefetch system for conditional branch instruction for central processor unit

Publications (2)

Publication Number Publication Date
DE3586899D1 DE3586899D1 (de) 1993-01-28
DE3586899T2 true DE3586899T2 (de) 1993-07-15

Family

ID=24453941

Family Applications (1)

Application Number Title Priority Date Filing Date
DE8585400967T Expired - Fee Related DE3586899T2 (de) 1984-05-21 1985-05-15 Instruktionsvorgriffsystem fuer bedingte sprungbefehle in einer zentralen verarbeitungseinrichtung.

Country Status (9)

Country Link
US (1) US4742451A (de)
EP (1) EP0162778B1 (de)
JP (1) JPS6158044A (de)
AU (1) AU576858B2 (de)
CA (1) CA1226958A (de)
DE (1) DE3586899T2 (de)
DK (1) DK221585A (de)
FI (1) FI851738L (de)
IE (1) IE851252L (de)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0776917B2 (ja) * 1984-12-29 1995-08-16 ソニー株式会社 マイクロコンピユ−タ
CA1285657C (en) * 1986-01-29 1991-07-02 Douglas W. Clark Apparatus and method for execution of branch instructions
US4991080A (en) * 1986-03-13 1991-02-05 International Business Machines Corporation Pipeline processing apparatus for executing instructions in three streams, including branch stream pre-execution processor for pre-executing conditional branch instructions
JPS6393041A (ja) * 1986-10-07 1988-04-23 Mitsubishi Electric Corp 計算機
JPS63245525A (ja) * 1987-03-31 1988-10-12 Toshiba Corp マイクロプログラム処理装置
US5134561A (en) * 1987-07-20 1992-07-28 International Business Machines Corporation Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries
US5251322A (en) * 1987-08-13 1993-10-05 Digital Equipment Corporation Method of operating a computer graphics system including asynchronously traversing its nodes
US5097411A (en) * 1987-08-13 1992-03-17 Digital Equipment Corporation Graphics workstation for creating graphics data structure which are stored retrieved and displayed by a graphics subsystem for competing programs
JP2583525B2 (ja) * 1987-09-30 1997-02-19 健 坂村 データ処理装置
JP2723238B2 (ja) * 1988-01-18 1998-03-09 株式会社東芝 情報処理装置
US5522053A (en) * 1988-02-23 1996-05-28 Mitsubishi Denki Kabushiki Kaisha Branch target and next instruction address calculation in a pipeline processor
JPH01283635A (ja) * 1988-05-11 1989-11-15 Nec Corp バッファ制御回路
GB8817912D0 (en) * 1988-07-27 1988-09-01 Int Computers Ltd Data processing apparatus
US5101341A (en) * 1988-08-25 1992-03-31 Edgcore Technology, Inc. Pipelined system for reducing instruction access time by accumulating predecoded instruction bits a FIFO
US5050068A (en) * 1988-10-03 1991-09-17 Duke University Method and apparatus for using extracted program flow information to prepare for execution multiple instruction streams
EP0402524B1 (de) * 1988-11-25 1996-10-02 Nec Corporation Mikrorechner, geeignet zur Schnellverarbeitung eines Verzweigungsbefehlskodes
EP0375339A3 (de) * 1988-12-20 1992-02-19 Fujitsu Limited Vorrichtung zur Bildverarbeitung und Verfahren zu deren Verwendung
US5127091A (en) * 1989-01-13 1992-06-30 International Business Machines Corporation System for reducing delay in instruction execution by executing branch instructions in separate processor while dispatching subsequent instructions to primary processor
JPH02306341A (ja) * 1989-02-03 1990-12-19 Nec Corp マイクロプロセッサ
JP2680899B2 (ja) * 1989-08-28 1997-11-19 日本電気株式会社 情報処理装置及びその制御方法
EP0471888B1 (de) * 1989-08-28 1999-01-13 Nec Corporation Mikroprozessor zum verbesserten Startvorgang der Befehlsausführung nach der Ausführung eines bedingten Verzweigungsbefehls
US5329621A (en) * 1989-10-23 1994-07-12 Motorola, Inc. Microprocessor which optimizes bus utilization based upon bus speed
US5230068A (en) * 1990-02-26 1993-07-20 Nexgen Microsystems Cache memory system for dynamically altering single cache memory line as either branch target entry or pre-fetch instruction queue based upon instruction sequence
JPH0460720A (ja) * 1990-06-29 1992-02-26 Hitachi Ltd 条件分岐命令制御方式
US5226138A (en) * 1990-11-27 1993-07-06 Sun Microsystems, Inc. Method for selectively transferring data instructions to a cache memory
JPH04263322A (ja) * 1991-02-18 1992-09-18 Mitsubishi Electric Corp マイクロコンピュータ
JP2761688B2 (ja) * 1992-02-07 1998-06-04 三菱電機株式会社 データ処理装置
US5423048A (en) * 1992-08-27 1995-06-06 Northern Telecom Limited Branch target tagging
US5659722A (en) * 1994-04-28 1997-08-19 International Business Machines Corporation Multiple condition code branching system in a multi-processor environment
GB9412487D0 (en) * 1994-06-22 1994-08-10 Inmos Ltd A computer system for executing branch instructions
JPH08171491A (ja) * 1994-07-29 1996-07-02 Sun Microsyst Inc ディスパッチされた制御転送命令状態に基づきより高速で命令を先取りするための方法及び装置
US6092186A (en) * 1996-05-07 2000-07-18 Lucent Technologies Inc. Apparatus and method for aborting un-needed instruction fetches in a digital microprocessor device
JPH10214188A (ja) * 1997-01-30 1998-08-11 Toshiba Corp プロセッサの命令供給方法及び装置
JPH1124929A (ja) * 1997-06-30 1999-01-29 Sony Corp 演算処理装置およびその方法
US5951678A (en) * 1997-07-25 1999-09-14 Motorola, Inc. Method and apparatus for controlling conditional branch execution in a data processor
US7546444B1 (en) 1999-09-01 2009-06-09 Intel Corporation Register set used in multithreaded parallel processor architecture
ATE396449T1 (de) 1999-09-01 2008-06-15 Intel Corp Registersatz zur verwendung in einer parallellen mehrfachdrahtprozessorarchitektur
US6910123B1 (en) * 2000-01-13 2005-06-21 Texas Instruments Incorporated Processor with conditional instruction execution based upon state of corresponding annul bit of annul code
US6636960B1 (en) * 2000-02-16 2003-10-21 Hewlett-Packard Development Company, L.P. Method and apparatus for resteering failing speculation check instructions
US7681018B2 (en) 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US7225281B2 (en) * 2001-08-27 2007-05-29 Intel Corporation Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms
US6868476B2 (en) 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7487505B2 (en) * 2001-08-27 2009-02-03 Intel Corporation Multithreaded microprocessor with register allocation based on number of active threads
US7216204B2 (en) 2001-08-27 2007-05-08 Intel Corporation Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment
US7610451B2 (en) * 2002-01-25 2009-10-27 Intel Corporation Data transfer mechanism using unidirectional pull bus and push bus
US7003649B2 (en) * 2002-03-08 2006-02-21 Hitachi, Ltd. Control forwarding in a pipeline digital processor
US7437724B2 (en) 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
EP1367493A1 (de) * 2002-05-30 2003-12-03 STMicroelectronics Limited Vorausholungspuffer
US20030233530A1 (en) * 2002-06-14 2003-12-18 International Business Machines Corporation Enhanced instruction prefetch engine
US7337275B2 (en) * 2002-08-13 2008-02-26 Intel Corporation Free list and ring data structure management
US6941438B2 (en) 2003-01-10 2005-09-06 Intel Corporation Memory interleaving
US9304898B2 (en) * 2011-08-30 2016-04-05 Empire Technology Development Llc Hardware-based array compression
US11733972B2 (en) 2020-10-06 2023-08-22 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by providing random load data as a result of execution of a load operation that does not have permission to access a load address
US11797673B2 (en) * 2020-08-27 2023-10-24 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by expeditiously initiating flushing of instructions dependent upon a load instruction that causes a need for an architectural exception
US11868469B2 (en) 2020-08-27 2024-01-09 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by preventing all dependent instructions from consuming architectural register result produced by instruction that causes a need for an architectural exception
US11907369B2 (en) 2020-08-27 2024-02-20 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by preventing cache memory state from being affected by a missing load operation by inhibiting or canceling a fill request of the load operation if an older load generates a need for an architectural exception
US11734426B2 (en) 2020-10-06 2023-08-22 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by prevents cache line data implicated by a missing load address from being filled into a data cache memory when the load address specifies a location with no valid address translation or no permission to read from the location
US11853424B2 (en) 2020-10-06 2023-12-26 Ventana Micro Systems Inc. Processor that mitigates side channel attacks by refraining from allocating an entry in a data TLB for a missing load address when the load address misses both in a data cache memory and in the data TLB and the load address specifies a location without a valid address translation or without permission to read from the location

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3609700A (en) * 1970-02-24 1971-09-28 Burroughs Corp Data processing system having an improved fetch overlap feature
JPS4979744A (de) * 1972-12-08 1974-08-01
JPS5339032A (en) * 1976-09-22 1978-04-10 Fujitsu Ltd Branch control system
AU529675B2 (en) * 1977-12-07 1983-06-16 Honeywell Information Systems Incorp. Cache memory unit
US4200927A (en) * 1978-01-03 1980-04-29 International Business Machines Corporation Multi-instruction stream branch processing mechanism
US4236206A (en) * 1978-10-25 1980-11-25 Digital Equipment Corporation Central processor unit for executing instructions of variable length
JPS5943786B2 (ja) * 1979-03-30 1984-10-24 パナフアコム株式会社 記憶装置のアクセス方式
JPS56149646A (en) * 1980-04-21 1981-11-19 Toshiba Corp Operation controller
CA1174370A (en) * 1980-05-19 1984-09-11 Hidekazu Matsumoto Data processing unit with pipelined operands
US4430708A (en) * 1981-05-22 1984-02-07 Burroughs Corporation Digital computer for executing instructions in three time-multiplexed portions
JPS5890245A (ja) * 1981-11-25 1983-05-28 Nec Corp デ−タ処理装置
US4435756A (en) * 1981-12-03 1984-03-06 Burroughs Corporation Branch predicting computer
US4439827A (en) * 1981-12-28 1984-03-27 Raytheon Company Dual fetch microsequencer
JPS5875260A (ja) * 1982-09-24 1983-05-06 Hitachi Ltd メモリアクセス制御方式

Also Published As

Publication number Publication date
EP0162778A2 (de) 1985-11-27
AU4266085A (en) 1985-11-28
EP0162778A3 (en) 1988-02-24
US4742451A (en) 1988-05-03
DK221585D0 (da) 1985-05-20
CA1226958A (en) 1987-09-15
IE851252L (en) 1985-11-21
FI851738L (fi) 1985-11-22
DE3586899D1 (de) 1993-01-28
FI851738A0 (fi) 1985-05-02
JPH0585926B2 (de) 1993-12-09
JPS6158044A (ja) 1986-03-25
EP0162778B1 (de) 1992-12-16
DK221585A (da) 1985-11-22
AU576858B2 (en) 1988-09-08

Similar Documents

Publication Publication Date Title
DE3586899T2 (de) Instruktionsvorgriffsystem fuer bedingte sprungbefehle in einer zentralen verarbeitungseinrichtung.
ES543778A0 (es) Sistema de control para un aparato manipulador
IT8424021A0 (it) Sistema a microprocessore.
DE3681080D1 (de) Belichtungskontrolle fuer eine pseudotelephotokamera.
IT1152580B (it) Controllo di richiusore basato su un microprocessore
DE3784210T2 (de) Unterbrechungssteuerungsverfahren in einem mehrprozessorsystem.
DE3585481D1 (de) Fernsteuerungssystem fuer hoerhilfen.
DE3581630D1 (de) Verarbeitungssystem fuer wettspiel.
DE3683508D1 (de) Wegfuehrungssystem fuer einen beweglichen automaten.
DE3586563D1 (de) Regelsystem fuer beschleunigung-verlangsamung.
DE3583132D1 (de) Robotsteuerungssystem.
DE3884579D1 (de) Urladekontrollsystem in einem mehrprozessorsystem.
ES525389A0 (es) Mejoras introducidas en un control de sistema de procesadores multiples
DE3382227D1 (de) Zustandsabhaengiges regelsystem.
NO853807L (no) Styreenhet for en mikroprogrammert prosessor.
DE3687684D1 (de) Automatischer pegelregler in einer digitalen datenverarbeitungsanlage.
ES555235A0 (es) Un sistema de proceso de datos
DE3687893T2 (de) Steuersystem fuer programmsprungoperation.
ES548696A0 (es) Un sistema de tratamiento de datos.
NO164696C (no) Bleieanordning for menn.
DE3583973D1 (de) Informationsverarbeitungsanlage mit instruktionsvorabrufschaltung.
DE3688629T2 (de) System zur Ausführung einer sehr schnellen Videoanimierung.
DE3381549D1 (de) Steueranlage in einem traktor.
ES556757A0 (es) Un sistema de tratamiento de datos
DE3585030D1 (de) Schweissregelungssystem in einer selbsttaetigen schweissvorrichtung.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee