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
instruction
data
execution
numerical value
programmed 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.)
Expired - Lifetime
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.)
ARM 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
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824—Operand accessing
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824—Operand accessing
    • G06F9/3826—Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
    • G06F9/3828—Bypassing 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867—Concurrent 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 超标量处理器内的指令发出控制 Expired - Lifetime CN100538627C (zh)

Applications Claiming Priority (2)

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

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

Country Status (4)

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

Families Citing this family (12)

* 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设计方法和装置
US11803387B2 (en) 2020-12-29 2023-10-31 Shanghai Zhaoxin Semiconductor Co., Ltd. System for executing new instructions and method for executing new instructions
US11803381B2 (en) 2020-12-29 2023-10-31 Shanghai Zhaoxin Semiconductor Co., Ltd. Instruction simulation device and method thereof
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
EP1124181B8 (en) * 2000-02-09 2012-03-21 Texas Instruments Incorporated Data processing apparatus
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
CN1761940B (zh) * 2003-03-19 2010-06-16 皇家飞利浦电子股份有限公司 指令处理设备,指令执行方法和装置,指令编译方法和装置
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
US7774582B2 (en) 2010-08-10
JP2006331399A (ja) 2006-12-07
JP5031256B2 (ja) 2012-09-19
GB2426605B (en) 2010-06-30
US20060271768A1 (en) 2006-11-30
CN1869920A (zh) 2006-11-29
GB0606086D0 (en) 2006-05-03
GB2426605A (en) 2006-11-29

Similar Documents

Publication Publication Date Title
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
KR20100003309A (ko) 파이프라인 프로세서에서 조건 명령 실행을 촉진시키기 위해 로컬 조건 코드 레지스터를 이용하기 위한 방법 및 장치
JPH03116236A (ja) 例外処理方法及び例外処理装置
WO1997024661A1 (en) Apparatus for concurrent processing of pipelined instructions having register dependencies
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) 演算処理装置及び演算処理装置の制御方法
US7774582B2 (en) Result bypassing to override a data hazard within a superscalar processor
US20160110201A1 (en) Flexible instruction execution in a processor pipeline
KR20060029614A (ko) 오퍼랜드 의존성으로 인한 기능 정지를 감소시키는 방법 및데이터 프로세서
US8127114B2 (en) System and method for executing instructions prior to an execution stage in a processor
JP3756410B2 (ja) 述語データを提供するシステム
US8051275B2 (en) Result path sharing between a plurality of execution units within a processor
JP2006517322A (ja) パイプライン化ディジタルプロセッサにおけるハザード検出および管理のための方法および装置
US6092184A (en) Parallel processing of pipelined instructions having register dependencies
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
US20090006823A1 (en) Design structure for single hot forward interconnect scheme for delayed execution pipelines
US7437544B2 (en) Data processing apparatus and method for executing a sequence of instructions including a multiple iteration instruction
JP2824484B2 (ja) パイプライン処理計算機
JP3933679B2 (ja) 命令処理装置

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: ARM TECHNOLOGY (CHINA) Co.,Ltd.

Patentee after: ARM Ltd.

Address before: Cambridge County

Patentee before: ARM Ltd.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20090909