KR20150038328A - 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 - Google Patents
1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 Download PDFInfo
- Publication number
- KR20150038328A KR20150038328A KR1020157004840A KR20157004840A KR20150038328A KR 20150038328 A KR20150038328 A KR 20150038328A KR 1020157004840 A KR1020157004840 A KR 1020157004840A KR 20157004840 A KR20157004840 A KR 20157004840A KR 20150038328 A KR20150038328 A KR 20150038328A
- Authority
- KR
- South Korea
- Prior art keywords
- operand
- vector
- register
- processor
- registers
- 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.)
- Abandoned
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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string instructions
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
- G06F9/30038—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30065—Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30072—Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
-
- 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/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
- G06F9/325—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
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)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/630,131 US9122475B2 (en) | 2012-09-28 | 2012-09-28 | Instruction for shifting bits left with pulling ones into less significant bits |
| US13/630,131 | 2012-09-28 | ||
| PCT/US2013/047669 WO2014051782A1 (en) | 2012-09-28 | 2013-06-25 | Instruction for shifting bits left with pulling ones into less significant bits |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020167030379A Division KR101817459B1 (ko) | 2012-09-28 | 2013-06-25 | 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20150038328A true KR20150038328A (ko) | 2015-04-08 |
Family
ID=50386382
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020157004840A Abandoned KR20150038328A (ko) | 2012-09-28 | 2013-06-25 | 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 |
| KR1020167030379A Active KR101817459B1 (ko) | 2012-09-28 | 2013-06-25 | 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020167030379A Active KR101817459B1 (ko) | 2012-09-28 | 2013-06-25 | 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US9122475B2 (enExample) |
| JP (2) | JP6092400B2 (enExample) |
| KR (2) | KR20150038328A (enExample) |
| CN (1) | CN104919432B (enExample) |
| DE (1) | DE112013004800T5 (enExample) |
| GB (1) | GB2518104B (enExample) |
| WO (1) | WO2014051782A1 (enExample) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140189296A1 (en) * | 2011-12-14 | 2014-07-03 | Elmoustapha Ould-Ahmed-Vall | System, apparatus and method for loop remainder mask instruction |
| CN103946795B (zh) * | 2011-12-14 | 2018-05-15 | 英特尔公司 | 用于生成循环对齐计数或循环对齐掩码的系统、装置和方法 |
| US9606803B2 (en) * | 2013-07-15 | 2017-03-28 | Texas Instruments Incorporated | Highly integrated scalable, flexible DSP megamodule architecture |
| US20160179548A1 (en) * | 2014-12-22 | 2016-06-23 | Intel Corporation | Instruction and logic to perform an inverse centrifuge operation |
| GB2540941B (en) * | 2015-07-31 | 2017-11-15 | Advanced Risc Mach Ltd | Data processing |
| EP3125108A1 (en) * | 2015-07-31 | 2017-02-01 | ARM Limited | Vector processing using loops of dynamic vector length |
| US20180329708A1 (en) * | 2015-09-19 | 2018-11-15 | Microsoft Technology Licensing, Llc | Multi-nullification |
| JP2018124877A (ja) * | 2017-02-02 | 2018-08-09 | 富士通株式会社 | コード生成装置、コード生成方法、およびコード生成プログラム |
| US10481910B2 (en) * | 2017-09-29 | 2019-11-19 | Intel Corporation | Apparatus and method for shifting quadwords and extracting packed words |
| US20190196822A1 (en) * | 2017-12-21 | 2019-06-27 | Intel Corporation | Apparatus and method for shifting packed quadwords and extracting packed words |
| US10963253B2 (en) * | 2018-07-10 | 2021-03-30 | Arm Limited | Varying micro-operation composition based on estimated value of predicate value for predicated vector instruction |
| KR20210066843A (ko) * | 2018-09-18 | 2021-06-07 | 옵티멈 세미컨덕터 테크놀로지스 인코포레이티드 | 마스킹된 벡터 명령어 구현 시스템 및 방법 |
| US11275562B2 (en) | 2020-02-19 | 2022-03-15 | Micron Technology, Inc. | Bit string accumulation |
| CN112492473B (zh) * | 2020-11-04 | 2022-09-09 | 杭州士兰微电子股份有限公司 | Mems麦克风的信号处理电路及信号处理方法 |
| US11934327B2 (en) * | 2021-12-22 | 2024-03-19 | Microsoft Technology Licensing, Llc | Systems and methods for hardware acceleration of data masking using a field programmable gate array |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0744532A (ja) * | 1991-12-25 | 1995-02-14 | Nec Corp | ベクトル処理装置 |
| US5781457A (en) * | 1994-03-08 | 1998-07-14 | Exponential Technology, Inc. | Merge/mask, rotate/shift, and boolean operations from two instruction sets executed in a vectored mux on a dual-ALU |
| CN1149469C (zh) * | 1995-08-31 | 2004-05-12 | 英特尔公司 | 支持分组数据的处理器 |
| US5832288A (en) * | 1996-10-18 | 1998-11-03 | Samsung Electronics Co., Ltd. | Element-select mechanism for a vector processor |
| US6006315A (en) * | 1996-10-18 | 1999-12-21 | Samsung Electronics Co., Ltd. | Computer methods for writing a scalar value to a vector |
| US6446198B1 (en) * | 1999-09-30 | 2002-09-03 | Apple Computer, Inc. | Vectorized table lookup |
| JP4374363B2 (ja) * | 2006-09-26 | 2009-12-02 | Okiセミコンダクタ株式会社 | ビットフィールド操作回路 |
| JP2010204913A (ja) * | 2009-03-03 | 2010-09-16 | Nec Computertechno Ltd | ベクトル処理装置 |
| US8009682B2 (en) * | 2009-05-05 | 2011-08-30 | Citrix Systems, Inc. | Systems and methods for packet steering in a multi-core architecture |
| US8667042B2 (en) * | 2010-09-24 | 2014-03-04 | Intel Corporation | Functional unit for vector integer multiply add instruction |
| CN102884505B (zh) * | 2011-04-08 | 2016-01-20 | 松下电器产业株式会社 | 数据处理装置和数据处理方法 |
| US9400650B2 (en) * | 2012-09-28 | 2016-07-26 | Intel Corporation | Read and write masks update instruction for vectorization of recursive computations over interdependent data |
| US8953785B2 (en) * | 2012-09-28 | 2015-02-10 | Intel Corporation | Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor |
| US9128698B2 (en) * | 2012-09-28 | 2015-09-08 | Intel Corporation | Systems, apparatuses, and methods for performing rotate and XOR in response to a single instruction |
| US9378182B2 (en) * | 2012-09-28 | 2016-06-28 | Intel Corporation | Vector move instruction controlled by read and write masks |
-
2012
- 2012-09-28 US US13/630,131 patent/US9122475B2/en active Active
-
2013
- 2013-06-25 DE DE112013004800.0T patent/DE112013004800T5/de active Pending
- 2013-06-25 KR KR1020157004840A patent/KR20150038328A/ko not_active Abandoned
- 2013-06-25 GB GB1500433.6A patent/GB2518104B/en not_active Expired - Fee Related
- 2013-06-25 WO PCT/US2013/047669 patent/WO2014051782A1/en not_active Ceased
- 2013-06-25 JP JP2015534475A patent/JP6092400B2/ja not_active Expired - Fee Related
- 2013-06-25 CN CN201380045387.6A patent/CN104919432B/zh active Active
- 2013-06-25 KR KR1020167030379A patent/KR101817459B1/ko active Active
-
2017
- 2017-02-08 JP JP2017021703A patent/JP6373425B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| GB2518104B (en) | 2020-07-01 |
| US9122475B2 (en) | 2015-09-01 |
| KR20160130324A (ko) | 2016-11-10 |
| US20140095830A1 (en) | 2014-04-03 |
| JP6373425B2 (ja) | 2018-08-15 |
| CN104919432B (zh) | 2017-12-22 |
| JP2017107587A (ja) | 2017-06-15 |
| DE112013004800T5 (de) | 2015-06-03 |
| GB2518104A (en) | 2015-03-11 |
| JP2015534189A (ja) | 2015-11-26 |
| CN104919432A (zh) | 2015-09-16 |
| JP6092400B2 (ja) | 2017-03-08 |
| KR101817459B1 (ko) | 2018-01-11 |
| WO2014051782A1 (en) | 2014-04-03 |
| GB201500433D0 (en) | 2015-02-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101817459B1 (ko) | 1들을 최하위 비트들이 되도록 풀링하면서 비트들을 좌측으로 시프팅하기 위한 명령어 | |
| KR101744031B1 (ko) | 독립적 데이터 상에서의 재귀적 계산들의 벡터화를 위한 판독 및 기입 마스크들 갱신 명령어 | |
| KR101703743B1 (ko) | 가속된 레인 간 벡터 감축 명령어들 | |
| KR101723121B1 (ko) | 판독 및 기입 마스크들에 의해 제어되는 벡터 이동 명령어 | |
| KR101772299B1 (ko) | 스트라이딩된 액세스 패턴을 가진 벡터 레지스터에서 성분들을 축소하기 위한 명령어 | |
| KR101966713B1 (ko) | 마스크 레지스터에서의 비트들을 반전 및 치환하기 위한 장치 및 방법 | |
| JP2015534188A (ja) | ユーザレベルのスレッディングのために即時のコンテキスト切り替えを可能とする新規の命令および高度に効率的なマイクロアーキテクチャ | |
| US9367314B2 (en) | Converting conditional short forward branches to computationally equivalent predicated instructions | |
| KR20170001578A (ko) | 상태 의존 계산들의 성능을 개선하기 위한 시스템들, 방법들, 및 장치들 | |
| JP2018500659A (ja) | 高速ベクトルによる動的なメモリ競合検出 | |
| US20140189330A1 (en) | Optional branches |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0105 | International application |
St.27 status event code: A-0-1-A10-A15-nap-PA0105 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-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 |
|
| 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 |
|
| PA0104 | Divisional application for international application |
St.27 status event code: A-0-1-A10-A18-div-PA0104 St.27 status event code: A-0-1-A10-A16-div-PA0104 |
|
| PC1904 | Unpaid initial registration fee |
St.27 status event code: A-2-2-U10-U14-oth-PC1904 St.27 status event code: N-2-6-B10-B12-nap-PC1904 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-2-2-P10-P22-nap-X000 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-2-2-P10-P22-nap-X000 |