KR101753900B1 - 스칼라 레지스터 데이터 값에 기초하는 벡터 레지스터 어드레싱 및 기능들 - Google Patents
스칼라 레지스터 데이터 값에 기초하는 벡터 레지스터 어드레싱 및 기능들 Download PDFInfo
- Publication number
- KR101753900B1 KR101753900B1 KR1020157025988A KR20157025988A KR101753900B1 KR 101753900 B1 KR101753900 B1 KR 101753900B1 KR 1020157025988 A KR1020157025988 A KR 1020157025988A KR 20157025988 A KR20157025988 A KR 20157025988A KR 101753900 B1 KR101753900 B1 KR 101753900B1
- Authority
- KR
- South Korea
- Prior art keywords
- register
- vector
- processor
- registers
- instruction
- 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
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/30098—Register arrangements
- G06F9/30105—Register structure
-
- 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/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/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30109—Register structure having multiple operands in a single register
-
- 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/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/3013—Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30163—Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
-
- 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/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
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/777,297 | 2013-02-26 | ||
| US13/777,297 US9632781B2 (en) | 2013-02-26 | 2013-02-26 | Vector register addressing and functions based on a scalar register data value |
| PCT/US2014/017713 WO2014133895A2 (en) | 2013-02-26 | 2014-02-21 | Vector register addressing and functions based on a scalar register data value |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20150122195A KR20150122195A (ko) | 2015-10-30 |
| KR101753900B1 true KR101753900B1 (ko) | 2017-07-04 |
Family
ID=50272743
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020157025988A Expired - Fee Related KR101753900B1 (ko) | 2013-02-26 | 2014-02-21 | 스칼라 레지스터 데이터 값에 기초하는 벡터 레지스터 어드레싱 및 기능들 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US9632781B2 (enExample) |
| EP (1) | EP2962187B1 (enExample) |
| JP (1) | JP6293795B2 (enExample) |
| KR (1) | KR101753900B1 (enExample) |
| CN (1) | CN104981771B (enExample) |
| WO (1) | WO2014133895A2 (enExample) |
Families Citing this family (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10001995B2 (en) | 2015-06-02 | 2018-06-19 | Intel Corporation | Packed data alignment plus compute instructions, processors, methods, and systems |
| US20170177355A1 (en) * | 2015-12-18 | 2017-06-22 | Intel Corporation | Instruction and Logic for Permute Sequence |
| US11243958B2 (en) | 2015-12-31 | 2022-02-08 | Teradata Us, Inc. | Implementing contract-based polymorphic and parallelizable SQL user-defined scalar and aggregate functions |
| US10762164B2 (en) | 2016-01-20 | 2020-09-01 | Cambricon Technologies Corporation Limited | Vector and matrix computing device |
| CN111580863B (zh) * | 2016-01-20 | 2024-05-03 | 中科寒武纪科技股份有限公司 | 一种向量运算装置及运算方法 |
| US10296337B2 (en) * | 2016-03-21 | 2019-05-21 | International Business Machines Corporation | Preventing premature reads from a general purpose register |
| GB2548600B (en) * | 2016-03-23 | 2018-05-09 | Advanced Risc Mach Ltd | Vector predication instruction |
| CN107315718B (zh) * | 2016-04-26 | 2020-08-21 | 中科寒武纪科技股份有限公司 | 一种用于执行向量内积运算的装置和方法 |
| US20180217838A1 (en) * | 2017-02-01 | 2018-08-02 | Futurewei Technologies, Inc. | Ultra lean vector processor |
| KR102343652B1 (ko) | 2017-05-25 | 2021-12-24 | 삼성전자주식회사 | 벡터 프로세서의 서열 정렬 방법 |
| CN114008604A (zh) * | 2020-07-28 | 2022-02-01 | 深圳市汇顶科技股份有限公司 | 具有专用寄存器的risc处理器 |
| CN114816769B (zh) * | 2022-06-08 | 2025-11-14 | 中科南京智能技术研究院 | 一种向量处理器处理方法及系统 |
| US12373210B2 (en) * | 2022-12-02 | 2025-07-29 | SiFive, Inc. | Transfer buffer between a scalar pipeline and vector pipeline |
| CN119847945B (zh) * | 2025-03-19 | 2025-06-06 | 极芯通讯技术(安吉)有限公司 | 向量寄存器装置、向量寄存器寻址方法及电子设备 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030163667A1 (en) | 2001-10-31 | 2003-08-28 | Alphamosaic Limited | Vector processing system |
| JP2004519768A (ja) | 2001-02-20 | 2004-07-02 | エイアールエム リミテッド | コプロセッサを使用したデータ処理 |
| US20050125640A1 (en) | 2003-12-09 | 2005-06-09 | Arm Limited | Data processing apparatus and method for moving data between registers and memory |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5922066A (en) | 1997-02-24 | 1999-07-13 | Samsung Electronics Co., Ltd. | Multifunction data aligner in wide data width processor |
| US5933650A (en) * | 1997-10-09 | 1999-08-03 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
| US7197625B1 (en) | 1997-10-09 | 2007-03-27 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
| US7376812B1 (en) | 2002-05-13 | 2008-05-20 | Tensilica, Inc. | Vector co-processor for configurable and extensible processor architecture |
| WO2004015563A1 (en) * | 2002-08-09 | 2004-02-19 | Intel Corporation | Multimedia coprocessor control mechanism including alignment or broadcast instructions |
| US6986023B2 (en) * | 2002-08-09 | 2006-01-10 | Intel Corporation | Conditional execution of coprocessor instruction based on main processor arithmetic flags |
| US7574409B2 (en) | 2004-11-04 | 2009-08-11 | Vericept Corporation | Method, apparatus, and system for clustering and classification |
| US7620797B2 (en) | 2006-11-01 | 2009-11-17 | Apple Inc. | Instructions for efficiently accessing unaligned vectors |
| US8255446B2 (en) * | 2006-12-12 | 2012-08-28 | Arm Limited | Apparatus and method for performing rearrangement and arithmetic operations on data |
| GB2444744B (en) | 2006-12-12 | 2011-05-25 | Advanced Risc Mach Ltd | Apparatus and method for performing re-arrangement operations on data |
| US7783860B2 (en) | 2007-07-31 | 2010-08-24 | International Business Machines Corporation | Load misaligned vector with permute and mask insert |
| US20090172348A1 (en) * | 2007-12-26 | 2009-07-02 | Robert Cavin | Methods, apparatus, and instructions for processing vector data |
| US10387151B2 (en) | 2007-12-31 | 2019-08-20 | Intel Corporation | Processor and method for tracking progress of gathering/scattering data element pairs in different cache memory banks |
| US7865693B2 (en) | 2008-10-14 | 2011-01-04 | International Business Machines Corporation | Aligning precision converted vector data using mask indicating offset relative to element boundary corresponding to precision type |
| US8607033B2 (en) | 2010-09-03 | 2013-12-10 | Lsi Corporation | Sequentially packing mask selected bits from plural words in circularly coupled register pair for transferring filled register bits to memory |
| US8904153B2 (en) | 2010-09-07 | 2014-12-02 | International Business Machines Corporation | Vector loads with multiple vector elements from a same cache line in a scattered load operation |
| US20120254589A1 (en) * | 2011-04-01 | 2012-10-04 | Jesus Corbal San Adrian | System, apparatus, and method for aligning registers |
-
2013
- 2013-02-26 US US13/777,297 patent/US9632781B2/en active Active
-
2014
- 2014-02-21 KR KR1020157025988A patent/KR101753900B1/ko not_active Expired - Fee Related
- 2014-02-21 CN CN201480008139.9A patent/CN104981771B/zh active Active
- 2014-02-21 WO PCT/US2014/017713 patent/WO2014133895A2/en not_active Ceased
- 2014-02-21 JP JP2015558998A patent/JP6293795B2/ja not_active Expired - Fee Related
- 2014-02-21 EP EP14709827.1A patent/EP2962187B1/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004519768A (ja) | 2001-02-20 | 2004-07-02 | エイアールエム リミテッド | コプロセッサを使用したデータ処理 |
| US20030163667A1 (en) | 2001-10-31 | 2003-08-28 | Alphamosaic Limited | Vector processing system |
| US20050125640A1 (en) | 2003-12-09 | 2005-06-09 | Arm Limited | Data processing apparatus and method for moving data between registers and memory |
Also Published As
| Publication number | Publication date |
|---|---|
| US20140244967A1 (en) | 2014-08-28 |
| KR20150122195A (ko) | 2015-10-30 |
| EP2962187A2 (en) | 2016-01-06 |
| CN104981771A (zh) | 2015-10-14 |
| CN104981771B (zh) | 2018-05-04 |
| US9632781B2 (en) | 2017-04-25 |
| EP2962187B1 (en) | 2018-03-28 |
| WO2014133895A3 (en) | 2014-10-23 |
| JP6293795B2 (ja) | 2018-03-14 |
| WO2014133895A2 (en) | 2014-09-04 |
| JP2016511470A (ja) | 2016-04-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101753900B1 (ko) | 스칼라 레지스터 데이터 값에 기초하는 벡터 레지스터 어드레싱 및 기능들 | |
| US11714642B2 (en) | Systems, methods, and apparatuses for tile store | |
| US11645135B2 (en) | Hardware apparatuses and methods for memory corruption detection | |
| EP3588281B1 (en) | Apparatus and method for a tensor permutation engine | |
| US11221762B2 (en) | Common platform for one-level memory architecture and two-level memory architecture | |
| TWI574156B (zh) | 具有獨立的使用者和監管者域的記憶體保護鑰結構 | |
| US11494078B2 (en) | Translation lookaside buffer in memory | |
| US9858140B2 (en) | Memory corruption detection | |
| CN104025020B (zh) | 用于执行掩码位压缩的系统、装置以及方法 | |
| KR101839479B1 (ko) | 더 넓은 레지스터에의 모드 의존형 부분 폭 로드 프로세서들, 방법들, 및 시스템들 | |
| GB2514882A (en) | Instruction emulation processors, methods, and systems | |
| EP3644179A2 (en) | Apparatus and method for tile gather and tile scatter | |
| US9959939B2 (en) | Granular cache repair | |
| CN107924442B (zh) | 用于轻量级虚拟化上下文的方法和设备 | |
| US12135643B2 (en) | Sequestered memory for selective storage of metadata corresponding to cached data | |
| CN111752863A (zh) | 用于专用地址映射的系统、设备和方法 | |
| US11360766B2 (en) | System and method for processing large datasets |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| PA0105 | International application |
St.27 status event code: A-0-1-A10-A15-nap-PA0105 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| A201 | Request for examination | ||
| A302 | Request for accelerated examination | ||
| 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 |
|
| 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 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20210629 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20210629 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |