KR101618669B1 - 마스크 레지스터를 이용한 점프를 위한 시스템, 장치, 및 방법 - Google Patents

마스크 레지스터를 이용한 점프를 위한 시스템, 장치, 및 방법 Download PDF

Info

Publication number
KR101618669B1
KR101618669B1 KR1020137026009A KR20137026009A KR101618669B1 KR 101618669 B1 KR101618669 B1 KR 101618669B1 KR 1020137026009 A KR1020137026009 A KR 1020137026009A KR 20137026009 A KR20137026009 A KR 20137026009A KR 101618669 B1 KR101618669 B1 KR 101618669B1
Authority
KR
South Korea
Prior art keywords
instruction
write mask
bit
pointer
field
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
KR1020137026009A
Other languages
English (en)
Korean (ko)
Other versions
KR20130140143A (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 KR20130140143A publication Critical patent/KR20130140143A/ko
Application granted granted Critical
Publication of KR101618669B1 publication Critical patent/KR101618669B1/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/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)
KR1020137026009A 2011-04-01 2011-12-12 마스크 레지스터를 이용한 점프를 위한 시스템, 장치, 및 방법 Active KR101618669B1 (ko)

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
KR20130140143A KR20130140143A (ko) 2013-12-23
KR101618669B1 true KR101618669B1 (ko) 2016-05-09

Family

ID=46928903

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137026009A Active KR101618669B1 (ko) 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
JP5739055B2 (ja) * 2011-04-01 2015-06-24 インテル コーポレイション ベクトルフレンドリ命令フォーマット及びその実行
CN104011670B (zh) 2011-12-22 2016-12-28 英特尔公司 用于基于向量写掩码的内容而在通用寄存器中存储两个标量常数之一的指令
JP5976930B2 (ja) * 2012-08-08 2016-08-24 インテル コーポレイション バーチャルファンクションを無効にするコールのためのサポートを含むisaブリッジング
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向量压缩乱序执行的实现方法及装置

Family Cites Families (11)

* 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
US9529592B2 (en) * 2007-12-27 2016-12-27 Intel Corporation Vector mask memory access instructions to perform individual and sequential memory access operations if an exception occurs during a full width memory access operation
TWI379230B (en) * 2008-11-14 2012-12-11 Realtek Semiconductor Corp Instruction mode identification apparatus and instruction mode identification method
US9952864B2 (en) * 2009-12-23 2018-04-24 Intel Corporation System, apparatus, and method for supporting condition codes

Also Published As

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

Similar Documents

Publication Publication Date Title
KR101610691B1 (ko) 기입 마스크를 이용하여 2개 소스 피연산자를 하나의 목적지 내에 블렌딩하기 위한 시스템, 장치, 및 방법
KR101607161B1 (ko) 데이터 요소들의 스트라이드 패턴 수집 및 데이터 요소들의 스트라이드 패턴 분산을 위한 시스템, 장치 및 방법
KR101851487B1 (ko) 메모리 소스를 목적지 레지스터 내로 확장하고 소스 레지스터를 목적지 메모리 위치 내로 압축하기 위한 시스템, 장치, 및 방법
KR101618669B1 (ko) 마스크 레지스터를 이용한 점프를 위한 시스템, 장치, 및 방법
KR101817034B1 (ko) 반복 종속 조건을 갖는 반복들의 벡터 루프들을 구현하기 위한 명령어
KR101722346B1 (ko) 적분 이미지 계산 명령어를 위한 방법 및 장치
KR101592079B1 (ko) 레지스터 정렬을 위한 시스템, 장치 및 방법
TWI564733B (zh) 快速向量動態記憶衝突檢測
KR20170098806A (ko) 벡터 비트 수집을 수행하기 위한 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

Patent event date: 20131001

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20150225

Patent event code: PE09021S01D

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

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20160129

PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20160429

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20160502

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20190328

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20190328

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20200327

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20210329

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20220329

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20230329

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20231205

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20241128

Start annual number: 10

End annual number: 10