CA2044896A1 - Pipelined processor with simultaneous instruction execution - Google Patents

Pipelined processor with simultaneous instruction execution

Info

Publication number
CA2044896A1
CA2044896A1 CA2044896A CA2044896A CA2044896A1 CA 2044896 A1 CA2044896 A1 CA 2044896A1 CA 2044896 A CA2044896 A CA 2044896A CA 2044896 A CA2044896 A CA 2044896A CA 2044896 A1 CA2044896 A1 CA 2044896A1
Authority
CA
Canada
Prior art keywords
instruction
information
executed
data determination
instruction execution
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
CA2044896A
Other languages
French (fr)
Other versions
CA2044896C (en
Inventor
Takahiko Uesugi
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of CA2044896A1 publication Critical patent/CA2044896A1/en
Application granted granted Critical
Publication of CA2044896C publication Critical patent/CA2044896C/en
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/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3863Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
    • 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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • 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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution

Abstract

An information processing apparatus includes a data control circuit, an information holding register, and a selector. The data control circuit has control information corresponding to instructions which can be simultaneously executed, and performs control, even if a result of a preceding instruction is not stored in a general register, so as to execute a subsequent instruction to update the same general register. The information holding register holds data determination information based on an instruction preceding a branch instruction immediately before the branch instruction is executed. The selector replaces data determination information, for an instruction which is not executed upon a branch success, with data determination information held by the information holding register.
CA002044896A 1990-06-19 1991-06-18 Pipelined processor with simultaneous instruction execution Expired - Fee Related CA2044896C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP160208/90 1990-06-19
JP2160208A JP2845578B2 (en) 1990-06-19 1990-06-19 Instruction control method

Publications (2)

Publication Number Publication Date
CA2044896A1 true CA2044896A1 (en) 1991-12-20
CA2044896C CA2044896C (en) 1999-02-23

Family

ID=15710097

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002044896A Expired - Fee Related CA2044896C (en) 1990-06-19 1991-06-18 Pipelined processor with simultaneous instruction execution

Country Status (5)

Country Link
US (1) US5644745A (en)
EP (1) EP0463539B1 (en)
JP (1) JP2845578B2 (en)
CA (1) CA2044896C (en)
DE (1) DE69128169T2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158870A (en) * 1998-05-18 2000-12-12 Ramirez; John A. Combination musical and lightable baby bottle

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4514804A (en) * 1981-11-25 1985-04-30 Nippon Electric Co., Ltd. Information handling apparatus having a high speed instruction-executing function
AU553416B2 (en) * 1984-02-24 1986-07-17 Fujitsu Limited Pipeline processing
JPH0769818B2 (en) * 1984-10-31 1995-07-31 株式会社日立製作所 Data processing device
JPH081601B2 (en) * 1984-12-07 1996-01-10 株式会社日立製作所 Information processing device
JPH0754461B2 (en) * 1985-02-08 1995-06-07 株式会社日立製作所 Information processing equipment
JPH0789319B2 (en) * 1985-04-22 1995-09-27 株式会社日立製作所 Prior control device in data processing device
DE3650578T2 (en) * 1985-06-17 1997-03-06 Nec Corp Information processing system with a control circuit for waiting for a register renewal and a receiving means of the register to be renewed
US4755966A (en) * 1985-06-28 1988-07-05 Hewlett-Packard Company Bidirectional branch prediction and optimization
US4974155A (en) * 1988-08-15 1990-11-27 Evans & Sutherland Computer Corp. Variable delay branch system

Also Published As

Publication number Publication date
EP0463539B1 (en) 1997-11-12
EP0463539A2 (en) 1992-01-02
US5644745A (en) 1997-07-01
JP2845578B2 (en) 1999-01-13
CA2044896C (en) 1999-02-23
EP0463539A3 (en) 1994-11-02
DE69128169D1 (en) 1997-12-18
JPH0449424A (en) 1992-02-18
DE69128169T2 (en) 1998-06-25

Similar Documents

Publication Publication Date Title
EP0263447A3 (en) A method and apparatus for implementing a branch and return on address instruction in a digital data processing system
JPS56149646A (en) Operation controller
EP0378425A3 (en) Branch instruction execution apparatus
EP0377994A3 (en) Apparatus for performing floating point arithmetic operations
EP0264216A3 (en) Implied domain addressing
EP0378415A3 (en) Multiple instruction dispatch mechanism
EP0130381A3 (en) Mechanism for implementing one machine cycle executable branch-on-any-bit-in-any-register instructions in a primitive instruction set computing system
CA2261084A1 (en) A data processing system having an apparatus for exception tracking during out-of-order operation and method therefor
EP0331191A3 (en) Information processing system capable of carrying out advanced execution
CA2003004A1 (en) Apparatus and method for executing a conditional branch instruction
JPS5663650A (en) Program change system of electronic apparatus
CA2044896A1 (en) Pipelined processor with simultaneous instruction execution
JPS57182257A (en) Data interchange system of data processing system
JPS57168350A (en) Information processor
JPS55119747A (en) Microprogram control unit
JPS5423343A (en) Microprogram controller
JPS5481045A (en) Data processor
JPS57155675A (en) Input system of symbol command
JPS57164343A (en) Check point save system
JPS6468838A (en) Level processing information processor
JPS54127624A (en) Electronic apparatus
JPS5794849A (en) Microprogram controller
WO1996008948A3 (en) Method and apparatus for fast microcontroller context switching
JPS57168345A (en) Data processing device
JPS6436349A (en) Address developing circuit

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed