CN103718157B - 使用掩码寄存器跳转的系统、装置和方法 - Google Patents

使用掩码寄存器跳转的系统、装置和方法 Download PDF

Info

Publication number
CN103718157B
CN103718157B CN201180069925.6A CN201180069925A CN103718157B CN 103718157 B CN103718157 B CN 103718157B CN 201180069925 A CN201180069925 A CN 201180069925A CN 103718157 B CN103718157 B CN 103718157B
Authority
CN
China
Prior art keywords
instruction
bit
writemask
register
operand
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 - Fee Related
Application number
CN201180069925.6A
Other languages
English (en)
Chinese (zh)
Other versions
CN103718157A (zh
Inventor
J·C·三额詹
B·托尔
R·C·凡伦天
M·B·吉尔卡尔
A·T·福塞斯
G·Z·克里斯沃斯
E·T·格罗科斯基
D·布拉德福德
L·K·吴
E·乌尔德-阿迈德-瓦尔
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN103718157A publication Critical patent/CN103718157A/zh
Application granted granted Critical
Publication of CN103718157B publication Critical patent/CN103718157B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/324Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address using program counter relative addressing
    • 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
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G06F9/30038Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30058Conditional branch instructions
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/323Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for indirect branch instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Complex Calculations (AREA)
CN201180069925.6A 2011-04-01 2011-12-12 使用掩码寄存器跳转的系统、装置和方法 Expired - Fee Related CN103718157B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/078,901 US20120254593A1 (en) 2011-04-01 2011-04-01 Systems, apparatuses, and methods for jumps using a mask register
US13/078,901 2011-04-01
PCT/US2011/064487 WO2012134561A1 (en) 2011-04-01 2011-12-12 Systems, apparatuses, and methods for jumps using a mask register

Publications (2)

Publication Number Publication Date
CN103718157A CN103718157A (zh) 2014-04-09
CN103718157B true CN103718157B (zh) 2017-05-24

Family

ID=46928903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180069925.6A Expired - Fee Related CN103718157B (zh) 2011-04-01 2011-12-12 使用掩码寄存器跳转的系统、装置和方法

Country Status (8)

Country Link
US (1) US20120254593A1 (enExample)
JP (1) JP5947879B2 (enExample)
KR (1) KR101618669B1 (enExample)
CN (1) CN103718157B (enExample)
DE (1) DE112011105123T5 (enExample)
GB (1) GB2502754B (enExample)
TW (1) TWI467478B (enExample)
WO (1) WO2012134561A1 (enExample)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3422178B1 (en) * 2011-04-01 2023-02-15 Intel Corporation Vector friendly instruction format and execution thereof
CN104011670B (zh) 2011-12-22 2016-12-28 英特尔公司 用于基于向量写掩码的内容而在通用寄存器中存储两个标量常数之一的指令
EP2883133A4 (en) * 2012-08-08 2016-03-23 Intel Corp ISA BREAKDOWN WITH SUPPORT FOR VIRTUAL CALL TO OVERRIDING FEATURES
JP6187478B2 (ja) * 2013-01-11 2017-08-30 日本電気株式会社 インデックスキー生成装置及びインデックスキー生成方法並びに検索方法
US9207942B2 (en) * 2013-03-15 2015-12-08 Intel Corporation Systems, apparatuses,and methods for zeroing of bits in a data element
US9411600B2 (en) * 2013-12-08 2016-08-09 Intel Corporation Instructions and logic to provide memory access key protection functionality
US9715432B2 (en) * 2014-12-23 2017-07-25 Intel Corporation Memory fault suppression via re-execution and hardware FSM
CN112083954B (zh) * 2019-06-13 2024-09-06 华夏芯(北京)通用处理器技术有限公司 一种gpu中显式独立掩码寄存器的掩码操作方法
CN117591184B (zh) * 2023-12-08 2024-05-07 超睿科技(长沙)有限公司 Risc-v向量压缩乱序执行的实现方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488084A (zh) * 2007-12-27 2009-07-22 英特尔公司 执行屏蔽加载和存储操作的指令和逻辑
US20100125720A1 (en) * 2008-11-14 2010-05-20 Jan Sheng-Yuan Instruction mode identification apparatus and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4084226A (en) * 1976-09-24 1978-04-11 Sperry Rand Corporation Virtual address translator
JPS57101938A (en) * 1980-12-18 1982-06-24 Fujitsu Ltd Operation controlling system by first read of mask
JP2928680B2 (ja) * 1992-03-30 1999-08-03 株式会社東芝 複合条件処理方式
JPH0683858A (ja) * 1992-06-02 1994-03-25 Nec Corp ベクトル命令処理装置
JP3565314B2 (ja) * 1998-12-17 2004-09-15 富士通株式会社 分岐命令実行制御装置
US20100274988A1 (en) * 2002-02-04 2010-10-28 Mimar Tibet Flexible vector modes of operation for SIMD processor
TWI244035B (en) * 2004-01-30 2005-11-21 Ip First Llc A mechanism and a microprocessor apparatus for performing an indirect near jump operation
US7409535B2 (en) * 2005-04-20 2008-08-05 International Business Machines Corporation Branch target prediction for multi-target branches by identifying a repeated pattern
US9952864B2 (en) * 2009-12-23 2018-04-24 Intel Corporation System, apparatus, and method for supporting condition codes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488084A (zh) * 2007-12-27 2009-07-22 英特尔公司 执行屏蔽加载和存储操作的指令和逻辑
US20100125720A1 (en) * 2008-11-14 2010-05-20 Jan Sheng-Yuan Instruction mode identification apparatus and method

Also Published As

Publication number Publication date
TWI467478B (zh) 2015-01-01
GB2502754A (en) 2013-12-04
US20120254593A1 (en) 2012-10-04
JP5947879B2 (ja) 2016-07-06
KR20130140143A (ko) 2013-12-23
GB2502754B (en) 2020-09-02
DE112011105123T5 (de) 2014-03-06
KR101618669B1 (ko) 2016-05-09
JP2014510351A (ja) 2014-04-24
GB201316934D0 (en) 2013-11-06
WO2012134561A1 (en) 2012-10-04
CN103718157A (zh) 2014-04-09
TW201250585A (en) 2012-12-16

Similar Documents

Publication Publication Date Title
CN105359052B (zh) 用于积分图像计算指令的方法、装置、设备、系统及机器可读介质
CN103562856B (zh) 用于数据元素的跨步图案聚集及数据元素的跨步图案分散的系统、装置及方法
CN104823156B (zh) 用于确定直方图的指令
CN104011649B (zh) 用于在simd/向量执行中传播有条件估算值的装置和方法
CN104025020B (zh) 用于执行掩码位压缩的系统、装置以及方法
CN103718157B (zh) 使用掩码寄存器跳转的系统、装置和方法
TWI524266B (zh) 用以偵測向量暫存器內相等元素之裝置及方法
JP6466388B2 (ja) 方法及び装置
CN104025022B (zh) 用于具有推测支持的向量化的装置和方法
CN104025019B (zh) 用于执行双块绝对差求和的系统、装置和方法
CN104011671B (zh) 用于执行置换操作的设备和方法
CN104126172B (zh) 用于掩码寄存器扩充操作的装置和方法
CN104011673A (zh) 向量频率压缩指令
CN104011664A (zh) 使用三个标量项的超级乘加(超级madd)指令
CN108701028A (zh) 用于执行用于置换掩码的指令的系统和方法
JP5806748B2 (ja) 書き込みマスク・レジスタの末尾の最下位マスキング・ビットを判定するためのシステム、装置、および方法
CN104126171A (zh) 用于基于两个源写掩码寄存器生成依赖向量的系统、装置和方法
US20220318014A1 (en) Method and apparatus for data-ready memory operations
TWI697836B (zh) 處理包括高功率及標準指令之指令集的方法與處理器
CN104025038A (zh) 用于执行置换操作的装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170524

Termination date: 20191212