SE520511C2 - Processor och förfarande för instruktionsavkodning - Google Patents

Processor och förfarande för instruktionsavkodning

Info

Publication number
SE520511C2
SE520511C2 SE9704475A SE9704475A SE520511C2 SE 520511 C2 SE520511 C2 SE 520511C2 SE 9704475 A SE9704475 A SE 9704475A SE 9704475 A SE9704475 A SE 9704475A SE 520511 C2 SE520511 C2 SE 520511C2
Authority
SE
Sweden
Prior art keywords
translation
instruction
digital processor
value
state signal
Prior art date
Application number
SE9704475A
Other languages
English (en)
Swedish (sv)
Other versions
SE9704475D0 (sv
SE9704475L (sv
Inventor
Tobias Roos
Dan Halvarsson
Tomas Jonsson
Original Assignee
Ericsson Telefon Ab L M
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 Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Priority to SE9704475A priority Critical patent/SE520511C2/sv
Publication of SE9704475D0 publication Critical patent/SE9704475D0/xx
Priority to US09/201,855 priority patent/US6611909B1/en
Priority to AU15810/99A priority patent/AU1581099A/en
Priority to BR9815119-3A priority patent/BR9815119A/pt
Priority to JP2000523600A priority patent/JP2001525568A/ja
Priority to CA002313013A priority patent/CA2313013C/en
Priority to PCT/SE1998/002205 priority patent/WO1999028817A2/en
Priority to EP98960140A priority patent/EP1034472A2/de
Publication of SE9704475L publication Critical patent/SE9704475L/xx
Publication of SE520511C2 publication Critical patent/SE520511C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/261Microinstruction address formation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30181Instruction operation extension or modification
    • G06F9/30196Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
SE9704475A 1997-12-02 1997-12-02 Processor och förfarande för instruktionsavkodning SE520511C2 (sv)

Priority Applications (8)

Application Number Priority Date Filing Date Title
SE9704475A SE520511C2 (sv) 1997-12-02 1997-12-02 Processor och förfarande för instruktionsavkodning
US09/201,855 US6611909B1 (en) 1997-12-02 1998-12-01 Method and apparatus for dynamically translating program instructions to microcode instructions
AU15810/99A AU1581099A (en) 1997-12-02 1998-12-02 An instruction decoder
BR9815119-3A BR9815119A (pt) 1997-12-02 1998-12-02 Processador digital, e, processo de traduzir códigos de operação de instruções de programa para microinstruções em um processador digital
JP2000523600A JP2001525568A (ja) 1997-12-02 1998-12-02 命令デコーダ
CA002313013A CA2313013C (en) 1997-12-02 1998-12-02 An instruction decoder
PCT/SE1998/002205 WO1999028817A2 (en) 1997-12-02 1998-12-02 An instruction decoder
EP98960140A EP1034472A2 (de) 1997-12-02 1998-12-02 Instruktionsdekodierer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9704475A SE520511C2 (sv) 1997-12-02 1997-12-02 Processor och förfarande för instruktionsavkodning

Publications (3)

Publication Number Publication Date
SE9704475D0 SE9704475D0 (sv) 1997-12-02
SE9704475L SE9704475L (sv) 1999-06-23
SE520511C2 true SE520511C2 (sv) 2003-07-22

Family

ID=20409221

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9704475A SE520511C2 (sv) 1997-12-02 1997-12-02 Processor och förfarande för instruktionsavkodning

Country Status (8)

Country Link
US (1) US6611909B1 (de)
EP (1) EP1034472A2 (de)
JP (1) JP2001525568A (de)
AU (1) AU1581099A (de)
BR (1) BR9815119A (de)
CA (1) CA2313013C (de)
SE (1) SE520511C2 (de)
WO (1) WO1999028817A2 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9336180B2 (en) 2011-04-07 2016-05-10 Via Technologies, Inc. Microprocessor that makes 64-bit general purpose registers available in MSR address space while operating in non-64-bit mode
US9292470B2 (en) 2011-04-07 2016-03-22 Via Technologies, Inc. Microprocessor that enables ARM ISA program to access 64-bit general purpose registers written by x86 ISA program
US9043580B2 (en) 2011-04-07 2015-05-26 Via Technologies, Inc. Accessing model specific registers (MSR) with different sets of distinct microinstructions for instructions of different instruction set architecture (ISA)
US9176733B2 (en) 2011-04-07 2015-11-03 Via Technologies, Inc. Load multiple and store multiple instructions in a microprocessor that emulates banked registers
US8880851B2 (en) * 2011-04-07 2014-11-04 Via Technologies, Inc. Microprocessor that performs X86 ISA and arm ISA machine language program instructions by hardware translation into microinstructions executed by common execution pipeline
US9128701B2 (en) 2011-04-07 2015-09-08 Via Technologies, Inc. Generating constant for microinstructions from modified immediate field during instruction translation
US9244686B2 (en) 2011-04-07 2016-01-26 Via Technologies, Inc. Microprocessor that translates conditional load/store instructions into variable number of microinstructions
US8880857B2 (en) 2011-04-07 2014-11-04 Via Technologies, Inc. Conditional ALU instruction pre-shift-generated carry flag propagation between microinstructions in read-port limited register file microprocessor
US8924695B2 (en) * 2011-04-07 2014-12-30 Via Technologies, Inc. Conditional ALU instruction condition satisfaction propagation between microinstructions in read-port limited register file microprocessor
US9317288B2 (en) 2011-04-07 2016-04-19 Via Technologies, Inc. Multi-core microprocessor that performs x86 ISA and ARM ISA machine language program instructions by hardware translation into microinstructions executed by common execution pipeline
US9032189B2 (en) 2011-04-07 2015-05-12 Via Technologies, Inc. Efficient conditional ALU instruction in read-port limited register file microprocessor
US9146742B2 (en) 2011-04-07 2015-09-29 Via Technologies, Inc. Heterogeneous ISA microprocessor that preserves non-ISA-specific configuration state when reset to different ISA
US9378019B2 (en) 2011-04-07 2016-06-28 Via Technologies, Inc. Conditional load instructions in an out-of-order execution microprocessor
US9274795B2 (en) 2011-04-07 2016-03-01 Via Technologies, Inc. Conditional non-branch instruction prediction
EP2508979B1 (de) * 2011-04-07 2018-10-10 VIA Technologies, Inc. Effiziente konditionale arithmetik- und logikeinheit- (alu) -anweisung in leseanschlussbegrenztem registerdatei-mikroprozessor
US9645822B2 (en) 2011-04-07 2017-05-09 Via Technologies, Inc Conditional store instructions in an out-of-order execution microprocessor
US9898291B2 (en) 2011-04-07 2018-02-20 Via Technologies, Inc. Microprocessor with arm and X86 instruction length decoders
US9141389B2 (en) 2011-04-07 2015-09-22 Via Technologies, Inc. Heterogeneous ISA microprocessor with shared hardware ISA registers
US8892958B2 (en) 2012-06-15 2014-11-18 International Business Machines Corporation Dynamic hardware trace supporting multiphase operations
US9262163B2 (en) * 2012-12-29 2016-02-16 Intel Corporation Real time instruction trace processors, methods, and systems
US9697074B2 (en) * 2014-12-11 2017-07-04 Internatioanl Business Machines Corporation Non-local error detection in processor systems
US10157057B2 (en) * 2016-08-01 2018-12-18 Syntel, Inc. Method and apparatus of segment flow trace analysis
JP2019095952A (ja) * 2017-11-21 2019-06-20 ソニーセミコンダクタソリューションズ株式会社 プロセッサ、情報処理装置および処理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3522589A (en) * 1968-10-31 1970-08-04 Honeywell Inc Data processing apparatus
US3634883A (en) * 1969-11-12 1972-01-11 Honeywell Inc Microinstruction address modification and branch system
US4063310A (en) * 1973-07-25 1977-12-13 Pye Limited Sampler control system for chromatograph analytical apparatus
US3949370A (en) * 1974-06-06 1976-04-06 National Semiconductor Corporation Programmable logic array control section for data processing system
US4459666A (en) * 1979-09-24 1984-07-10 Control Data Corporation Plural microcode control memory
US4587611A (en) * 1980-09-04 1986-05-06 Amdahl Corporation Multiple module control store for use in a data processing system
US4472772A (en) * 1981-08-03 1984-09-18 Burroughs Corporation High speed microinstruction execution apparatus
US4509114A (en) * 1982-02-22 1985-04-02 International Business Machines Corporation Microword control mechanism utilizing a programmable logic array and a sequence counter
EP0159699A3 (de) * 1984-04-23 1988-09-28 Nec Corporation Datenverarbeitungsanlage zur Ausführung von Mikroprogrammen entsprechend einer Vielzahl von Systemarchitekturen
JPS62164133A (ja) * 1986-01-16 1987-07-20 Toshiba Corp マイクロプログラム制御装置
US5617574A (en) 1989-05-04 1997-04-01 Texas Instruments Incorporated Devices, systems and methods for conditional instructions
WO1992002883A1 (en) 1990-08-03 1992-02-20 Du Pont Pixel Systems Limited Parallel-processing systems
US5452423A (en) * 1991-06-13 1995-09-19 Chips And Technologies, Inc. Two-ROM multibyte microcode address selection method and apparatus

Also Published As

Publication number Publication date
EP1034472A2 (de) 2000-09-13
AU1581099A (en) 1999-06-16
WO1999028817A3 (en) 1999-07-22
WO1999028817A2 (en) 1999-06-10
BR9815119A (pt) 2000-10-10
SE9704475D0 (sv) 1997-12-02
SE9704475L (sv) 1999-06-23
US6611909B1 (en) 2003-08-26
CA2313013A1 (en) 1999-06-10
CA2313013C (en) 2005-03-29
JP2001525568A (ja) 2001-12-11

Similar Documents

Publication Publication Date Title
SE520511C2 (sv) Processor och förfarande för instruktionsavkodning
US4430706A (en) Branch prediction apparatus and method for a data processing system
JP6807383B2 (ja) 転送プレフィックス命令
JP2550213B2 (ja) 並列処理装置および並列処理方法
US5692167A (en) Method for verifying the correct processing of pipelined instructions including branch instructions and self-modifying code in a microprocessor
JP2796797B2 (ja) ディジタル命令プロセッサ制御装置によってインターラプトルーチンを処理する方法
CA1212476A (en) Data processing apparatus and method employing instruction flow prediction
US4991078A (en) Apparatus and method for a pipelined central processing unit in a data processing system
US7065632B1 (en) Method and apparatus for speculatively forwarding storehit data in a hierarchical manner
US5461722A (en) Parallel processing apparatus suitable for executing in parallel a plurality of instructions including at least two branch instructions
KR100266424B1 (ko) 롬(rom)용량을 저감한 데이타 프로세서
US5398321A (en) Microcode generation for a scalable compound instruction set machine
US4954943A (en) Data processing system
JPS586173B2 (ja) チャネル制御方式
JPH064282A (ja) 命令データのストリームから複数の命令を選択する回路
WO2000014628A1 (en) A method and apparatus for branch prediction using a second level branch prediction table
US20040030860A1 (en) Conditional execution control head in a vliw processor
US10338923B2 (en) Branch prediction path wrong guess instruction
US5961632A (en) Microprocessor with circuits, systems, and methods for selecting alternative pipeline instruction paths based on instruction leading codes
KR100603067B1 (ko) 분기 예측의 타입을 분류하기 위해 복귀 선택 비트들을 이용하는 분기 예측
JP2006522398A (ja) パイプライン型命令プロセッサにおけるバイパスの使用
US5619667A (en) Method and apparatus for fast fill of translator instruction queue
KR100374401B1 (ko) 마이크로 명령을 기초로 프로그램 가능한 명령을 실행하는하드웨어 장치
US5404471A (en) Method and apparatus for switching address generation modes in CPU having plural address generation modes
US7774582B2 (en) Result bypassing to override a data hazard within a superscalar processor

Legal Events

Date Code Title Description
NUG Patent has lapsed