KR102161682B1 - 이미디에이트 핸들링 및 플래그 핸들링을 위한 프로세서 및 방법 - Google Patents

이미디에이트 핸들링 및 플래그 핸들링을 위한 프로세서 및 방법 Download PDF

Info

Publication number
KR102161682B1
KR102161682B1 KR1020167013469A KR20167013469A KR102161682B1 KR 102161682 B1 KR102161682 B1 KR 102161682B1 KR 1020167013469 A KR1020167013469 A KR 1020167013469A KR 20167013469 A KR20167013469 A KR 20167013469A KR 102161682 B1 KR102161682 B1 KR 102161682B1
Authority
KR
South Korea
Prior art keywords
flag
mapping table
bit
instructions
flags
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
KR1020167013469A
Other languages
English (en)
Korean (ko)
Other versions
KR20160075639A (ko
Inventor
애쇼크 벤카타차
카티크 푸누콜루
스리칸스 아레카푸디
사미르 에이. 치트니스
에밀 탈페스
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
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 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20160075639A publication Critical patent/KR20160075639A/ko
Application granted granted Critical
Publication of KR102161682B1 publication Critical patent/KR102161682B1/ko
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/30094Condition code generation, e.g. Carry, Zero 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/30098Register arrangements
    • 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
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • 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
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • 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
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • G06F9/384Register renaming
    • 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/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 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/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3865Recovery, e.g. branch miss-prediction, exception handling using deferred exception handling, e.g. exception flags

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)
KR1020167013469A 2013-10-25 2014-10-24 이미디에이트 핸들링 및 플래그 핸들링을 위한 프로세서 및 방법 Active KR102161682B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361895715P 2013-10-25 2013-10-25
US61/895,715 2013-10-25
PCT/US2014/062180 WO2015061687A1 (en) 2013-10-25 2014-10-24 Processor and methods for immediate handling and flag handling

Publications (2)

Publication Number Publication Date
KR20160075639A KR20160075639A (ko) 2016-06-29
KR102161682B1 true KR102161682B1 (ko) 2020-10-05

Family

ID=52993620

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167013469A Active KR102161682B1 (ko) 2013-10-25 2014-10-24 이미디에이트 핸들링 및 플래그 핸들링을 위한 프로세서 및 방법

Country Status (6)

Country Link
US (1) US20150121041A1 (enExample)
EP (1) EP3060979B1 (enExample)
JP (1) JP6491655B2 (enExample)
KR (1) KR102161682B1 (enExample)
CN (1) CN105765522B (enExample)
WO (1) WO2015061687A1 (enExample)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798593B1 (en) * 2016-07-06 2017-10-24 Workday, Inc. Synchronization of code execution
US10761849B2 (en) * 2016-09-22 2020-09-01 Intel Corporation Processors, methods, systems, and instruction conversion modules for instructions with compact instruction encodings due to use of context of a prior instruction
US10713213B2 (en) * 2016-12-21 2020-07-14 Intel Corporation Systems and methods for multi-architecture computing
US11275709B2 (en) 2017-05-02 2022-03-15 Intel Corporation Systems and methods for multi-architecture computing
US10318298B2 (en) * 2017-09-29 2019-06-11 Intel Corporation Apparatus and method for shifting quadwords and extracting packed words
US10481910B2 (en) * 2017-09-29 2019-11-19 Intel Corporation Apparatus and method for shifting quadwords and extracting packed words
CN112114874B (zh) * 2020-08-20 2021-10-15 北京百度网讯科技有限公司 数据处理方法、装置、电子设备和存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047369A (en) * 1994-02-28 2000-04-04 Intel Corporation Flag renaming and flag masks within register alias table
US5632023A (en) * 1994-06-01 1997-05-20 Advanced Micro Devices, Inc. Superscalar microprocessor including flag operand renaming and forwarding apparatus
US5649225A (en) * 1994-06-01 1997-07-15 Advanced Micro Devices, Inc. Resynchronization of a superscalar processor
US5933618A (en) * 1995-10-30 1999-08-03 Advanced Micro Devices, Inc. Speculative register storage for storing speculative results corresponding to register updated by a plurality of concurrently recorded instruction
US6338132B1 (en) * 1998-12-30 2002-01-08 Intel Corporation System and method for storing immediate data
US20050071518A1 (en) * 2003-09-30 2005-03-31 Intel Corporation Flag value renaming
US7587585B1 (en) * 2005-10-26 2009-09-08 Sun Microsystems, Inc. Flag management in processors enabled for speculative execution of micro-operation traces
US7421529B2 (en) * 2005-10-20 2008-09-02 Qualcomm Incorporated Method and apparatus to clear semaphore reservation for exclusive access to shared memory
US7822948B2 (en) * 2008-01-03 2010-10-26 International Business Machines Corporation Apparatus, system, and method for discontiguous multiple issue of instructions
US8250346B2 (en) * 2009-06-04 2012-08-21 Arm Limited Register renaming of a partially updated data granule
US9088594B2 (en) * 2011-02-07 2015-07-21 International Business Machines Corporation Providing to a parser and processors in a network processor access to an external coprocessor
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
EP2508980B1 (en) * 2011-04-07 2018-02-28 VIA Technologies, Inc. Conditional ALU instruction pre-shift-generated carry flag propagation between microinstructions in read-port limited register file microprocessor
US8972701B2 (en) * 2011-12-06 2015-03-03 Arm Limited Setting zero bits in architectural register for storing destination operand of smaller size based on corresponding zero flag attached to renamed physical register
US9189236B2 (en) * 2012-12-21 2015-11-17 Intel Corporation Speculative non-faulting loads and gathers

Also Published As

Publication number Publication date
JP6491655B2 (ja) 2019-03-27
EP3060979A4 (en) 2017-07-05
EP3060979A1 (en) 2016-08-31
CN105765522B (zh) 2020-05-19
WO2015061687A1 (en) 2015-04-30
EP3060979B1 (en) 2020-08-05
US20150121041A1 (en) 2015-04-30
JP2016534430A (ja) 2016-11-04
KR20160075639A (ko) 2016-06-29
CN105765522A (zh) 2016-07-13

Similar Documents

Publication Publication Date Title
KR102161682B1 (ko) 이미디에이트 핸들링 및 플래그 핸들링을 위한 프로세서 및 방법
CN108369511B (zh) 用于基于通道的跨步存储操作的指令和逻辑
TWI507980B (zh) 最佳化暫存器初始化操作
JP6351682B2 (ja) 装置および方法
CN107077321B (zh) 用于执行融合的单个周期递增-比较-跳转的指令和逻辑
KR102478874B1 (ko) 비순차적 하드웨어 소프트웨어 공동 설계된 프로세서에서 스택 동기화 명령어를 갖는 술어 값의 스택을 구현하고 유지하기 위한 방법 및 장치
CN102754069B (zh) 用于处理加载/存储分离指令的方法和系统
CN102792265B (zh) 基于机器状态的指令破解
US9459872B2 (en) High-word facility for extending the number of general purpose registers available to instructions
US20190012171A1 (en) Read and Write Masks Update Instruction for Vectorization of Recursive Computations Over Independent Data
US20160055004A1 (en) Method and apparatus for non-speculative fetch and execution of control-dependent blocks
KR101851439B1 (ko) 충돌 검출을 수행하고, 레지스터의 콘텐츠를 다른 레지스터의 데이터 구성요소 위치들로 브로드캐스트하기 위한 시스템들, 장치들 및 방법들
US20150227366A1 (en) Processor with granular add immediates capability & methods
US9652234B2 (en) Instruction and logic to control transfer in a partial binary translation system
US20140095828A1 (en) Vector move instruction controlled by read and write masks
EP3260978B1 (en) System and method of merging partial write result during retire phase
US20140189331A1 (en) System of improved loop detection and execution
KR101285072B1 (ko) 실행 관련 명령어
US20090182985A1 (en) Move Facility and Instructions Therefore
US20150106600A1 (en) Execution of condition-based instructions
CN119226682A (zh) 向量紧缩矩阵乘法和累加处理器、方法、系统和指令
EP1220088A2 (en) Circuit and method for supporting misaligned accesses in the presence of speculative load instructions
KR101635856B1 (ko) 데이터 요소에 있는 비트들의 제로화를 위한 시스템, 장치, 및 방법
CN116339489A (zh) 处理器中微操作的扼制融合的系统、装置和方法

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E90F Notification of reason for final refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6