ATE118628T1 - Rechnersteuerung mit verzweigung in einem einzigen zyklus. - Google Patents

Rechnersteuerung mit verzweigung in einem einzigen zyklus.

Info

Publication number
ATE118628T1
ATE118628T1 AT86306269T AT86306269T ATE118628T1 AT E118628 T1 ATE118628 T1 AT E118628T1 AT 86306269 T AT86306269 T AT 86306269T AT 86306269 T AT86306269 T AT 86306269T AT E118628 T1 ATE118628 T1 AT E118628T1
Authority
AT
Austria
Prior art keywords
instruction
branch
processor
pipeline
condition
Prior art date
Application number
AT86306269T
Other languages
English (en)
Inventor
Brian Case
Rod Fleck
Ole Moller
Cheng-Gang Kong
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Application granted granted Critical
Publication of ATE118628T1 publication Critical patent/ATE118628T1/de

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/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30058Conditional branch instructions
    • 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

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)
  • Executing Machine-Instructions (AREA)
  • Hardware Redundancy (AREA)
AT86306269T 1985-08-30 1986-08-14 Rechnersteuerung mit verzweigung in einem einzigen zyklus. ATE118628T1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/771,327 US4777587A (en) 1985-08-30 1985-08-30 System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses

Publications (1)

Publication Number Publication Date
ATE118628T1 true ATE118628T1 (de) 1995-03-15

Family

ID=25091461

Family Applications (1)

Application Number Title Priority Date Filing Date
AT86306269T ATE118628T1 (de) 1985-08-30 1986-08-14 Rechnersteuerung mit verzweigung in einem einzigen zyklus.

Country Status (5)

Country Link
US (1) US4777587A (de)
EP (1) EP0219203B1 (de)
JP (2) JP2640454B2 (de)
AT (1) ATE118628T1 (de)
DE (1) DE3650232T2 (de)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1250667A (en) * 1985-04-15 1989-02-28 Larry D. Larsen Branch control in a three phase pipelined signal processor
US4777587A (en) 1985-08-30 1988-10-11 Advanced Micro Devices, Inc. System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses
US5440704A (en) * 1986-08-26 1995-08-08 Mitsubishi Denki Kabushiki Kaisha Data processor having branch predicting function
US4942520A (en) * 1987-07-31 1990-07-17 Prime Computer, Inc. Method and apparatus for indexing, accessing and updating a memory
JPH0766326B2 (ja) * 1987-11-12 1995-07-19 松下電器産業株式会社 情報処理装置
JPH0760387B2 (ja) * 1987-11-12 1995-06-28 松下電器産業株式会社 情報処理装置
US5247628A (en) * 1987-11-30 1993-09-21 International Business Machines Corporation Parallel processor instruction dispatch apparatus with interrupt handler
JP2723238B2 (ja) * 1988-01-18 1998-03-09 株式会社東芝 情報処理装置
JPH0769808B2 (ja) * 1988-02-23 1995-07-31 三菱電機株式会社 データ処理装置
JPH0769817B2 (ja) * 1988-02-29 1995-07-31 日本電気株式会社 条件ジャンプ実行制御方式
US4890221A (en) * 1988-04-01 1989-12-26 Digital Equipment Corporation Apparatus and method for reconstructing a microstack
GB8815042D0 (en) * 1988-06-24 1988-08-03 Int Computers Ltd Data processing apparatus
US5136696A (en) * 1988-06-27 1992-08-04 Prime Computer, Inc. High-performance pipelined central processor for predicting the occurrence of executing single-cycle instructions and multicycle instructions
US5159680A (en) * 1988-07-28 1992-10-27 Sun Microsystems, Inc. Risc processing unit which selectively isolates register windows by indicating usage of adjacent register windows in status register
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
US5155818A (en) * 1988-09-28 1992-10-13 Data General Corporation Unconditional wide branch instruction acceleration
DE68927218T2 (de) * 1988-10-18 1997-02-06 Hewlett Packard Co Verfahren und Vorrichtung für Zustandskode in einem Zentralprozessor
EP0378415A3 (de) * 1989-01-13 1991-09-25 International Business Machines Corporation Verteilungsmechanismus für mehrere Befehle
JPH02212936A (ja) * 1989-02-14 1990-08-24 Matsushita Electron Corp パイプライン構造を有する半導体装置
US5072364A (en) * 1989-05-24 1991-12-10 Tandem Computers Incorporated Method and apparatus for recovering from an incorrect branch prediction in a processor that executes a family of instructions in parallel
EP0404068A3 (de) * 1989-06-20 1991-12-27 Fujitsu Limited Vorrichtung zur Ausführung eines Verzweigungsbefehls
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
US5210841A (en) * 1990-01-30 1993-05-11 Advanced Micro Devices, Inc. External memory accessing system
EP0442116A3 (en) * 1990-02-13 1993-03-03 Hewlett-Packard Company Pipeline method and apparatus
US5163140A (en) * 1990-02-26 1992-11-10 Nexgen Microsystems Two-level branch prediction cache
US5226130A (en) * 1990-02-26 1993-07-06 Nexgen Microsystems Method and apparatus for store-into-instruction-stream detection and maintaining branch prediction cache consistency
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
EP0450658B1 (de) * 1990-04-06 2001-08-01 Nec Corporation Parallelfliessband-Befehlsverarbeitungssystem für sehr lange Befehlswörter
JPH0437927A (ja) * 1990-06-01 1992-02-07 Sony Corp プロセッサの処理方法
CA2045791A1 (en) * 1990-06-29 1991-12-30 Richard Lee Sites Branch performance in high speed processor
WO1992006426A1 (en) * 1990-10-09 1992-04-16 Nexgen Microsystems Method and apparatus for parallel decoding of instructions with branch prediction look-up
US5454090A (en) * 1990-10-12 1995-09-26 Siemens Aktiengesellschaft Apparatus for furnishing instructions in a microprocessor with a multi-stage pipeline processing unit for processing instruction phase and having a memory and at least three additional memory units
EP0488819B1 (de) * 1990-11-30 1999-01-13 Kabushiki Kaisha Toshiba Ausführungsvorrichtung für bedingte Verzweigungsbefehle
US5265213A (en) * 1990-12-10 1993-11-23 Intel Corporation Pipeline system for executing predicted branch target instruction in a cycle concurrently with the execution of branch instruction
US5454089A (en) * 1991-04-17 1995-09-26 Intel Corporation Branch look ahead adder for use in an instruction pipeline sequencer with multiple instruction decoding
US5450585A (en) * 1991-05-15 1995-09-12 International Business Machines Corporation Compiler with delayed conditional branching
US5434986A (en) * 1992-01-09 1995-07-18 Unisys Corporation Interdependency control of pipelined instruction processor using comparing result of two index registers of skip instruction and next sequential instruction
JP2761688B2 (ja) * 1992-02-07 1998-06-04 三菱電機株式会社 データ処理装置
US5442756A (en) * 1992-07-31 1995-08-15 Intel Corporation Branch prediction and resolution apparatus for a superscalar computer processor
US5692167A (en) * 1992-07-31 1997-11-25 Intel Corporation Method for verifying the correct processing of pipelined instructions including branch instructions and self-modifying code in a microprocessor
US5410660A (en) * 1992-12-24 1995-04-25 Motorola, Inc. System and method for executing branch on bit set/clear instructions using microprogramming flow
US5634025A (en) * 1993-12-09 1997-05-27 International Business Machines Corporation Method and system for efficiently fetching variable-width instructions in a data processing system having multiple prefetch units
US5604909A (en) * 1993-12-15 1997-02-18 Silicon Graphics Computer Systems, Inc. Apparatus for processing instructions in a computing system
US5539888A (en) * 1993-12-23 1996-07-23 Unisys Corporation System and method for processing external conditional branch instructions
US5706459A (en) * 1994-01-06 1998-01-06 Fujitsu Limited Processor having a variable number of stages in a pipeline
GB9412487D0 (en) 1994-06-22 1994-08-10 Inmos Ltd A computer system for executing branch instructions
EP0715251B1 (de) * 1994-11-29 2000-07-26 International Business Machines Corporation Einzel-Zyklus-Prozessor zur Echtzeitsverarbeitung
JPH08212075A (ja) * 1995-01-31 1996-08-20 Nec Corp 情報処理装置
US6003127A (en) 1995-10-04 1999-12-14 Nippondenso Co., Ltd. Pipeline processing apparatus for reducing delays in the performance of processing operations
US5905881A (en) * 1995-11-30 1999-05-18 Unisys Corporation Delayed state writes for an instruction processor
US5867699A (en) * 1996-07-25 1999-02-02 Unisys Corporation Instruction flow control for an instruction processor
AU3666697A (en) * 1996-08-20 1998-03-06 Idea Corporation A method for identifying hard-to-predict branches to enhance processor performance
US5935238A (en) * 1997-06-19 1999-08-10 Sun Microsystems, Inc. Selection from multiple fetch addresses generated concurrently including predicted and actual target by control-flow instructions in current and previous instruction bundles
US5964869A (en) * 1997-06-19 1999-10-12 Sun Microsystems, Inc. Instruction fetch mechanism with simultaneous prediction of control-flow instructions
JPH1165840A (ja) * 1997-08-11 1999-03-09 Sony Corp 演算処理装置およびその方法
US6112299A (en) * 1997-12-31 2000-08-29 International Business Machines Corporation Method and apparatus to select the next instruction in a superscalar or a very long instruction word computer having N-way branching
US6243805B1 (en) * 1998-08-11 2001-06-05 Advanced Micro Devices, Inc. Programming paradigm and microprocessor architecture for exact branch targeting
US6289442B1 (en) 1998-10-05 2001-09-11 Advanced Micro Devices, Inc. Circuit and method for tagging and invalidating speculatively executed instructions
EP1236092A4 (de) * 1999-09-01 2006-07-26 Intel Corp Verzweigungsbefehl für einen prozessor
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
US7191309B1 (en) 1999-09-01 2007-03-13 Intel Corporation Double shift instruction for micro engine used in multithreaded parallel processor architecture
US7308686B1 (en) 1999-12-22 2007-12-11 Ubicom Inc. Software input/output using hard real time threads
JP4693326B2 (ja) * 1999-12-22 2011-06-01 ウビコム インコーポレイテッド 組込み型プロセッサにおいてゼロタイムコンテクストスイッチを用いて命令レベルをマルチスレッド化するシステムおよび方法
US7120783B2 (en) 1999-12-22 2006-10-10 Ubicom, Inc. System and method for reading and writing a thread state in a multithreaded central processing unit
US7047396B1 (en) * 2000-06-22 2006-05-16 Ubicom, Inc. Fixed length memory to memory arithmetic and architecture for a communications embedded processor system
US7010612B1 (en) 2000-06-22 2006-03-07 Ubicom, Inc. Universal serializer/deserializer
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
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
US7020871B2 (en) * 2000-12-21 2006-03-28 Intel Corporation Breakpoint method for parallel hardware threads in multithreaded processor
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
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
US6868476B2 (en) 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US7610451B2 (en) 2002-01-25 2009-10-27 Intel Corporation Data transfer mechanism using unidirectional pull bus and push bus
US7437724B2 (en) * 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
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
US7822950B1 (en) 2003-01-22 2010-10-26 Ubicom, Inc. Thread cancellation and recirculation in a computer processor for avoiding pipeline stalls
US7765388B2 (en) * 2003-09-17 2010-07-27 Broadcom Corporation Interrupt verification support mechanism
US7278014B2 (en) * 2004-12-02 2007-10-02 International Business Machines Corporation System and method for simulating hardware interrupts
US7478228B2 (en) * 2006-08-31 2009-01-13 Qualcomm Incorporated Apparatus for generating return address predictions for implicit and explicit subroutine calls
JP2008165589A (ja) * 2006-12-28 2008-07-17 Fujitsu Ltd 情報処理装置
CN102117198B (zh) * 2009-12-31 2015-07-15 上海芯豪微电子有限公司 一种分支处理方法
KR20170089973A (ko) 2013-03-15 2017-08-04 인텔 코포레이션 회선 속도 상호 연결 구조를 구현하는 방법
US9817666B2 (en) * 2013-03-15 2017-11-14 Intel Corporation Method for a delayed branch implementation by using a front end track table
US9753691B2 (en) 2013-03-15 2017-09-05 Intel Corporation Method for a stage optimized high speed adder
US11003459B2 (en) 2013-03-15 2021-05-11 Intel Corporation Method for implementing a line speed interconnect structure
US20170277539A1 (en) * 2016-03-24 2017-09-28 Imagination Technologies Limited Exception handling in processor using branch delay slot instruction set architecture

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52120640A (en) * 1976-04-02 1977-10-11 Toshiba Corp Micro program control system
US4240105A (en) * 1979-08-20 1980-12-16 Yves C. Faroudja Method and apparatus for separation of chrominance and luminance with adaptive comb filtering in a quadrature modulated color television system
US4398244A (en) * 1980-05-07 1983-08-09 Fairchild Camera & Instrument Corporation Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same
JPS57162034A (en) * 1981-03-31 1982-10-05 Fujitsu Ltd Data processing system
US4399507A (en) * 1981-06-30 1983-08-16 Ibm Corporation Instruction address stack in the data memory of an instruction-pipelined processor
US4471431A (en) * 1982-09-27 1984-09-11 Data General Corporation Encachement apparatus
US4498136A (en) * 1982-12-15 1985-02-05 Ibm Corporation Interrupt processor
JPS59183434A (ja) * 1983-04-01 1984-10-18 Nippon Telegr & Teleph Corp <Ntt> 命令先取り制御方式
JPH0644238B2 (ja) * 1983-12-29 1994-06-08 株式会社日立製作所 命令再実行制御方法
EP0208181A1 (de) * 1985-06-28 1987-01-14 Hewlett-Packard Company Befehlszählerwarteschlange für einen Pipeline-Prozessor
US4777587A (en) 1985-08-30 1988-10-11 Advanced Micro Devices, Inc. System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses

Also Published As

Publication number Publication date
JPS6254342A (ja) 1987-03-10
EP0219203B1 (de) 1995-02-15
JP2796797B2 (ja) 1998-09-10
DE3650232T2 (de) 1995-08-10
US4777587A (en) 1988-10-11
DE3650232D1 (de) 1995-03-23
JPH09171463A (ja) 1997-06-30
EP0219203A2 (de) 1987-04-22
EP0219203A3 (en) 1989-07-19
JP2640454B2 (ja) 1997-08-13

Similar Documents

Publication Publication Date Title
DE3650232T2 (de) Rechnersteuerung mit Verzweigung in einem einzigen Zyklus.
ES8402954A1 (es) Unidad para tratamiento de informacion.
DE60044752D1 (de) Verzweigungsbefehl für einen mehrfachverarbeitungsprozessor
DE69916962D1 (de) Datenverarbeitungssystem mit bedingter Ausführung von erweiterten Verbundbefehlen
JPS56123041A (en) Information processor
WO1996008762A3 (en) Processing system with word-aligned branch target
DE3585972D1 (de) Rechner-vektorregisterverarbeitung.
JPS5759253A (en) Branch instruction prefetch system
EP0324952A3 (de) Verzweigungsschaltung für einen Pipeline-Prozessor
JPS5760441A (en) Information processing equipment
JPS5566028A (en) Information processing unit
JPS5794999A (en) Protection system for microinstruction control memory
JPS57209542A (en) Microprogram controlling system
JPS56157538A (en) Data processing system of advanced mode control
JPS6491253A (en) Data processor
JPS5212536A (en) Buffer memory control system
JPS5734253A (en) Brunch instruction controlling circuit
JPS5556253A (en) Data processor
JPS5633746A (en) Arithmetic processor having logging function
JPS5374857A (en) Data processor
JPS57191758A (en) System for storing test program in main storage
EP0365187A3 (de) Vorrichtung zur selektiven Ausführung von einem Verzweigungsbefehl folgenden Befehlen
SE8500156L (sv) Forfarande for behandling av maskinkodade instruktionsord och dataprocessor for utforande av forfarandet
JPS57212545A (en) Microprogram controlling system
EP0270873A3 (de) Rechnersystem mit einer einzelnen Arithmetik-Logik-Einheit

Legal Events

Date Code Title Description
UEP Publication of translation of european patent specification
REN Ceased due to non-payment of the annual fee