JP6577450B2 - 水平置換を用いるベクトル間接要素垂直アドレッシングモード - Google Patents
水平置換を用いるベクトル間接要素垂直アドレッシングモード Download PDFInfo
- Publication number
- JP6577450B2 JP6577450B2 JP2016501361A JP2016501361A JP6577450B2 JP 6577450 B2 JP6577450 B2 JP 6577450B2 JP 2016501361 A JP2016501361 A JP 2016501361A JP 2016501361 A JP2016501361 A JP 2016501361A JP 6577450 B2 JP6577450 B2 JP 6577450B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- register
- element data
- data values
- permute control
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
-
- 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/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/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/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30109—Register structure having multiple operands in a single register
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/834,785 | 2013-03-15 | ||
| US13/834,785 US9639503B2 (en) | 2013-03-15 | 2013-03-15 | Vector indirect element vertical addressing mode with horizontal permute |
| PCT/US2014/023849 WO2014150636A1 (en) | 2013-03-15 | 2014-03-12 | Vector indirect element vertical addressing mode with horizontal permute |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2016511491A JP2016511491A (ja) | 2016-04-14 |
| JP2016511491A5 JP2016511491A5 (enExample) | 2017-08-03 |
| JP6577450B2 true JP6577450B2 (ja) | 2019-09-18 |
Family
ID=50942769
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016501361A Active JP6577450B2 (ja) | 2013-03-15 | 2014-03-12 | 水平置換を用いるベクトル間接要素垂直アドレッシングモード |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US9639503B2 (enExample) |
| EP (1) | EP2972792B1 (enExample) |
| JP (1) | JP6577450B2 (enExample) |
| KR (1) | KR101778175B1 (enExample) |
| CN (1) | CN105009075B (enExample) |
| ES (1) | ES2688878T3 (enExample) |
| HU (1) | HUE040269T2 (enExample) |
| WO (1) | WO2014150636A1 (enExample) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9645820B2 (en) | 2013-06-27 | 2017-05-09 | Intel Corporation | Apparatus and method to reserve and permute bits in a mask register |
| US10445092B2 (en) * | 2014-12-27 | 2019-10-15 | Intel Corporation | Method and apparatus for performing a vector permute with an index and an immediate |
| US11544214B2 (en) * | 2015-02-02 | 2023-01-03 | Optimum Semiconductor Technologies, Inc. | Monolithic vector processor configured to operate on variable length vectors using a vector length register |
| GB2540939B (en) * | 2015-07-31 | 2019-01-23 | Advanced Risc Mach Ltd | An apparatus and method for performing a splice operation |
| TWI724066B (zh) * | 2015-12-24 | 2021-04-11 | 美商英特爾股份有限公司 | 分散縮減指令 |
| EP3394720A4 (en) | 2015-12-24 | 2019-11-06 | Intel Corporation | SPREAD REDUCTION INSTRUCTIONS |
| CN111580863B (zh) * | 2016-01-20 | 2024-05-03 | 中科寒武纪科技股份有限公司 | 一种向量运算装置及运算方法 |
| US10762164B2 (en) | 2016-01-20 | 2020-09-01 | Cambricon Technologies Corporation Limited | Vector and matrix computing device |
| WO2018158603A1 (en) * | 2017-02-28 | 2018-09-07 | Intel Corporation | Strideshift instruction for transposing bits inside vector register |
| EP3602276A1 (en) * | 2017-03-31 | 2020-02-05 | Intel Corporation | Method and apparatus for converting scatter control elements to gather control elements used to sort vector data elements |
| US11900111B2 (en) | 2021-09-24 | 2024-02-13 | Qualcomm Incorporated | Permutation instruction |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7197625B1 (en) | 1997-10-09 | 2007-03-27 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
| US5933650A (en) | 1997-10-09 | 1999-08-03 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
| US6233671B1 (en) * | 1998-03-31 | 2001-05-15 | Intel Corporation | Staggering execution of an instruction by dividing a full-width macro instruction into at least two partial-width micro instructions |
| US5996057A (en) * | 1998-04-17 | 1999-11-30 | Apple | Data processing system and method of permutation with replication within a vector register file |
| US6446198B1 (en) * | 1999-09-30 | 2002-09-03 | Apple Computer, Inc. | Vectorized table lookup |
| US6665790B1 (en) * | 2000-02-29 | 2003-12-16 | International Business Machines Corporation | Vector register file with arbitrary vector addressing |
| US7739319B2 (en) | 2001-10-29 | 2010-06-15 | Intel Corporation | Method and apparatus for parallel table lookup using SIMD instructions |
| JP3845711B2 (ja) | 2001-11-08 | 2006-11-15 | 独立行政法人 日本原子力研究開発機構 | ベクトル計算機上での間接アドレス参照を含む加算の高速処理方法、プログラム及びそれを用いたベクトル計算機 |
| US20030167460A1 (en) | 2002-02-26 | 2003-09-04 | Desai Vipul Anil | Processor instruction set simulation power estimation method |
| JP2008513903A (ja) * | 2004-09-21 | 2008-05-01 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | シャッフル演算のためのマイクロプロセッサデバイス及び方法 |
| US8161271B2 (en) | 2007-07-11 | 2012-04-17 | International Business Machines Corporation | Store misaligned vector with permute |
| US8140932B2 (en) | 2007-11-26 | 2012-03-20 | Motorola Mobility, Inc. | Data interleaving circuit and method for vectorized turbo decoder |
| GB2456775B (en) | 2008-01-22 | 2012-10-31 | Advanced Risc Mach Ltd | Apparatus and method for performing permutation operations on data |
| US9513905B2 (en) | 2008-03-28 | 2016-12-06 | Intel Corporation | Vector instructions to enable efficient synchronization and parallel reduction operations |
| JP5633122B2 (ja) | 2009-06-16 | 2014-12-03 | 富士通セミコンダクター株式会社 | プロセッサ及び情報処理システム |
| US20120047344A1 (en) | 2010-08-17 | 2012-02-23 | Sheaffer Gad S | Methods and apparatuses for re-ordering data |
| US20120060016A1 (en) | 2010-09-07 | 2012-03-08 | International Business Machines Corporation | Vector Loads from Scattered Memory Locations |
| US20120260062A1 (en) | 2011-04-07 | 2012-10-11 | International Business Machines Corporation | System and method for providing dynamic addressability of data elements in a register file with subword parallelism |
| WO2013095672A1 (en) | 2011-12-23 | 2013-06-27 | Intel Corporation | Multi-register gather instruction |
| WO2013095669A1 (en) * | 2011-12-23 | 2013-06-27 | Intel Corporation | Multi-register scatter instruction |
| US9348601B2 (en) * | 2012-12-26 | 2016-05-24 | Intel Corporation | Coalescing adjacent gather/scatter operations |
-
2013
- 2013-03-15 US US13/834,785 patent/US9639503B2/en active Active
-
2014
- 2014-03-12 HU HUE14730231A patent/HUE040269T2/hu unknown
- 2014-03-12 ES ES14730231.9T patent/ES2688878T3/es active Active
- 2014-03-12 EP EP14730231.9A patent/EP2972792B1/en active Active
- 2014-03-12 WO PCT/US2014/023849 patent/WO2014150636A1/en not_active Ceased
- 2014-03-12 CN CN201480012924.1A patent/CN105009075B/zh active Active
- 2014-03-12 JP JP2016501361A patent/JP6577450B2/ja active Active
- 2014-03-12 KR KR1020157029038A patent/KR101778175B1/ko active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2016511491A (ja) | 2016-04-14 |
| ES2688878T3 (es) | 2018-11-07 |
| CN105009075A (zh) | 2015-10-28 |
| US20140281372A1 (en) | 2014-09-18 |
| KR20150132364A (ko) | 2015-11-25 |
| HUE040269T2 (hu) | 2019-02-28 |
| EP2972792A1 (en) | 2016-01-20 |
| EP2972792B1 (en) | 2018-07-25 |
| KR101778175B1 (ko) | 2017-09-13 |
| US9639503B2 (en) | 2017-05-02 |
| WO2014150636A1 (en) | 2014-09-25 |
| CN105009075B (zh) | 2018-04-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6577450B2 (ja) | 水平置換を用いるベクトル間接要素垂直アドレッシングモード | |
| EP3602278B1 (en) | Systems, methods, and apparatuses for tile matrix multiplication and accumulation | |
| US20210026634A1 (en) | Apparatus with reduced hardware register set using register-emulating memory location to emulate architectural register | |
| US8051226B2 (en) | Circular buffer support in a single instruction multiple data (SIMD) data processor | |
| US20190108029A1 (en) | Systems, apparatuses, and methods for blending two source operands into a single destination using a writemask | |
| JP2013175218A5 (enExample) | ||
| JP2014532231A (ja) | Fifoロード命令 | |
| JP2013543175A5 (enExample) | ||
| JP2012119009A5 (ja) | 選択演算を実行するプロセッサ | |
| CN111563281A (zh) | 一种支持多种加解密算法的处理器及其实现方法 | |
| JP6933263B2 (ja) | データ処理装置、ループ制御装置、データ処理方法、ループ制御方法およびプログラム | |
| US10481795B2 (en) | Hardware interface component for processing write access requests that identify a register using lesser significant bits of a target address and identify an arithmetic operation to be performed using greater significant bits of the target address | |
| JP2001005675A (ja) | プログラム変換装置及びプロセッサ | |
| KR101283423B1 (ko) | 표 내에 있는 엘리먼트의 주소를 결정하는 시스템과 방법 | |
| WO2013036950A1 (en) | Instruction packet including multiple instructions having a common destination | |
| CN107851022B (zh) | 向量长度查询指令 | |
| CN110914801B (zh) | 在数据处理设备中的向量交叉 | |
| CN117785287A (zh) | 多线程计算中的私有存储器模式顺序存储器访问 | |
| EP3060981B1 (en) | Method and processor for executing instructions, method and apparatus for encoding instructions, and recording medium therefor | |
| US20180081803A1 (en) | Data storage at contiguous memory addresses | |
| JP2013517576A5 (enExample) | ||
| US20070106884A1 (en) | Hybrid memory system for a microcontroller | |
| CN100395700C (zh) | 限制指令宽度处理器中增加寄存器寻址空间的系统与方法 | |
| CN116633363A (zh) | 针对ldpc编译码的数据处理方法及相关设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A529 | Written submission of copy of amendment under article 34 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A529 Effective date: 20150910 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170222 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170222 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170620 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20170620 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170703 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170710 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20171010 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171206 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180226 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190613 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190822 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6577450 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |