CN100538627C - 超标量处理器内的指令发出控制 - Google Patents

超标量处理器内的指令发出控制 Download PDF

Info

Publication number
CN100538627C
CN100538627C CN200610092423.6A CN200610092423A CN100538627C CN 100538627 C CN100538627 C CN 100538627C CN 200610092423 A CN200610092423 A CN 200610092423A CN 100538627 C CN100538627 C CN 100538627C
Authority
CN
China
Prior art keywords
execution
instruction
program instructions
data
program instruction
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.)
Active
Application number
CN200610092423.6A
Other languages
English (en)
Chinese (zh)
Other versions
CN1869920A (zh
Inventor
D·J·威廉逊
G·A·哈里斯
S·J·希尔
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.)
Anne Science And Technology (china) Co Ltd
ARM Ltd
Original Assignee
Advanced Risc Machines Ltd
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 Risc Machines Ltd filed Critical Advanced Risc Machines Ltd
Publication of CN1869920A publication Critical patent/CN1869920A/zh
Application granted granted Critical
Publication of CN100538627C publication Critical patent/CN100538627C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3826Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
    • G06F9/3828Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage with global bypass, e.g. between pipelines, between clusters
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

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)
CN200610092423.6A 2005-05-26 2006-05-25 超标量处理器内的指令发出控制 Active CN100538627C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/137792 2005-05-26
US11/137,792 US7774582B2 (en) 2005-05-26 2005-05-26 Result bypassing to override a data hazard within a superscalar processor

Publications (2)

Publication Number Publication Date
CN1869920A CN1869920A (zh) 2006-11-29
CN100538627C true CN100538627C (zh) 2009-09-09

Family

ID=36384248

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610092423.6A Active CN100538627C (zh) 2005-05-26 2006-05-25 超标量处理器内的指令发出控制

Country Status (4)

Country Link
US (1) US7774582B2 (https=)
JP (1) JP5031256B2 (https=)
CN (1) CN100538627C (https=)
GB (1) GB2426605B (https=)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055636A1 (en) * 2007-08-22 2009-02-26 Heisig Stephen J Method for generating and applying a model to predict hardware performance hazards in a machine instruction sequence
US8990543B2 (en) * 2008-03-11 2015-03-24 Qualcomm Incorporated System and method for generating and using predicates within a single instruction packet
US7921279B2 (en) * 2008-03-19 2011-04-05 International Business Machines Corporation Operand and result forwarding between differently sized operands in a superscalar processor
JP2011177203A (ja) 2010-02-26 2011-09-15 Nintendo Co Ltd オブジェクト制御プログラムおよびオブジェクト制御装置
US9858077B2 (en) 2012-06-05 2018-01-02 Qualcomm Incorporated Issuing instructions to execution pipelines based on register-associated preferences, and related instruction processing circuits, processor systems, methods, and computer-readable media
JP2014164659A (ja) * 2013-02-27 2014-09-08 Renesas Electronics Corp プロセッサ
US10417152B2 (en) * 2016-06-03 2019-09-17 International Business Machines Corporation Operation of a multi-slice processor implementing datapath steering
CN111736900B (zh) * 2020-08-17 2020-11-27 广东省新一代通信与网络创新研究院 一种并行双通道的cache设计方法和装置
CN114691206A (zh) * 2020-12-29 2022-07-01 上海兆芯集成电路有限公司 执行新增指令的方法及系统
US12379932B2 (en) * 2023-12-22 2025-08-05 Arm Limited Execution of instructions requiring access to an array register

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01296345A (ja) * 1988-05-24 1989-11-29 Hitachi Ltd 情報処理装置
US5471593A (en) * 1989-12-11 1995-11-28 Branigin; Michael H. Computer processor with an efficient means of executing many instructions simultaneously
US5488729A (en) * 1991-05-15 1996-01-30 Ross Technology, Inc. Central processing unit architecture with symmetric instruction scheduling to achieve multiple instruction launch and execution
KR100309566B1 (ko) * 1992-04-29 2001-12-15 리패치 파이프라인프로세서에서다중명령어를무리짓고,그룹화된명령어를동시에발행하고,그룹화된명령어를실행시키는방법및장치
US6073231A (en) * 1993-10-18 2000-06-06 Via-Cyrix, Inc. Pipelined processor with microcontrol of register translation hardware
US6101597A (en) 1993-12-30 2000-08-08 Intel Corporation Method and apparatus for maximum throughput scheduling of dependent operations in a pipelined processor
JP3745450B2 (ja) * 1996-05-13 2006-02-15 株式会社ルネサステクノロジ 並列処理プロセッサ
JP3578883B2 (ja) * 1997-01-31 2004-10-20 三菱電機株式会社 データ処理装置
US5958041A (en) * 1997-06-26 1999-09-28 Sun Microsystems, Inc. Latency prediction in a pipelined microarchitecture
JP4006887B2 (ja) 1999-06-03 2007-11-14 松下電器産業株式会社 コンパイラ、プロセッサおよび記録媒体
US6408381B1 (en) * 1999-10-01 2002-06-18 Hitachi, Ltd. Mechanism for fast access to control space in a pipeline processor
US6587940B1 (en) * 2000-01-18 2003-07-01 Hewlett-Packard Development Company Local stall/hazard detect in superscalar, pipelined microprocessor to avoid re-read of register file
ATE529802T1 (de) * 2000-02-09 2011-11-15 Texas Instruments Inc Datenverarbeitungsvorrichtung
EP1199629A1 (en) * 2000-10-17 2002-04-24 STMicroelectronics S.r.l. Processor architecture with variable-stage pipeline
JP2002333978A (ja) * 2001-05-08 2002-11-22 Nec Corp Vliw型プロセッサ
US7051191B2 (en) * 2001-12-26 2006-05-23 Intel Corporation Resource management using multiply pendent registers
US6944751B2 (en) * 2002-02-11 2005-09-13 Hewlett-Packard Development Company, L.P. Register renaming to reduce bypass and increase apparent physical register size
US7200738B2 (en) * 2002-04-18 2007-04-03 Micron Technology, Inc. Reducing data hazards in pipelined processors to provide high processor utilization
JP3769249B2 (ja) * 2002-06-27 2006-04-19 富士通株式会社 命令処理装置および命令処理方法
US6922760B2 (en) * 2002-12-05 2005-07-26 Lsi Logic Corporation Distributed result system for high-performance wide-issue superscalar processor
WO2004084065A2 (en) * 2003-03-19 2004-09-30 Koninklijke Philips Electronics N.V. Pipelined instruction processor with data bypassing
US7290121B2 (en) * 2003-06-12 2007-10-30 Advanced Micro Devices, Inc. Method and data processor with reduced stalling due to operand dependencies
US20060095732A1 (en) * 2004-08-30 2006-05-04 Tran Thang M Processes, circuits, devices, and systems for scoreboard and other processor improvements
US7409520B2 (en) * 2005-01-25 2008-08-05 International Business Machines Corporation Systems and methods for time division multiplex multithreading
US7454598B2 (en) * 2005-05-16 2008-11-18 Infineon Technologies Ag Controlling out of order execution pipelines issue tagging

Also Published As

Publication number Publication date
JP5031256B2 (ja) 2012-09-19
GB2426605A (en) 2006-11-29
US20060271768A1 (en) 2006-11-30
CN1869920A (zh) 2006-11-29
JP2006331399A (ja) 2006-12-07
GB2426605B (en) 2010-06-30
GB0606086D0 (en) 2006-05-03
US7774582B2 (en) 2010-08-10

Similar Documents

Publication Publication Date Title
US5764943A (en) Data path circuitry for processor having multiple instruction pipelines
JP4829541B2 (ja) マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置
EP1569090B1 (en) Apparatus and method for performing a load operation in a pipeline microprocessor
US9658853B2 (en) Techniques for increasing instruction issue rate and reducing latency in an out-of order processor
JP2010532063A (ja) 条件命令を無条件命令および選択命令へと拡張する方法およびシステム
KR20100003309A (ko) 파이프라인 프로세서에서 조건 명령 실행을 촉진시키기 위해 로컬 조건 코드 레지스터를 이용하기 위한 방법 및 장치
JPH03116236A (ja) 例外処理方法及び例外処理装置
EP0651331B1 (en) A write buffer for a superpipelined, superscalar microprocessor
US10445101B2 (en) Controlling processing of instructions in a processing pipeline
US7734897B2 (en) Allocation of memory access operations to memory access capable pipelines in a superscalar data processing apparatus and method having a plurality of execution threads
JP2018005488A (ja) 演算処理装置及び演算処理装置の制御方法
CN100538627C (zh) 超标量处理器内的指令发出控制
US20160110201A1 (en) Flexible instruction execution in a processor pipeline
US8127114B2 (en) System and method for executing instructions prior to an execution stage in a processor
JP3756410B2 (ja) 述語データを提供するシステム
JP2006517322A (ja) パイプライン化ディジタルプロセッサにおけるハザード検出および管理のための方法および装置
US8051275B2 (en) Result path sharing between a plurality of execution units within a processor
US8464030B2 (en) Instruction cracking and issue shortening based on instruction base fields, index fields, operand fields, and various other instruction text bits
US6769057B2 (en) System and method for determining operand access to data
US6260133B1 (en) Processor having operating instruction which uses operation units in different pipelines simultaneously
US7984272B2 (en) Design structure for single hot forward interconnect scheme for delayed execution pipelines
EP0912927B1 (en) A load/store unit with multiple pointers for completing store and load-miss instructions
JPH0667879A (ja) パイプライン処理計算機
JP3933679B2 (ja) 命令処理装置
EP0912930A1 (en) A functional unit with a pointer for mispredicted branch resolution, and a superscalar microprocessor employing the same

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180611

Address after: cambridge

Co-patentee after: Anne science and Technology (China) Co., Ltd.

Patentee after: Advanced Risc Machines Ltd.

Address before: Cambridge County

Patentee before: Advanced Risc Machines Ltd.