TW202403546A - 用於可擴縮向量指令集架構的子向量支援指令 - Google Patents
用於可擴縮向量指令集架構的子向量支援指令 Download PDFInfo
- Publication number
- TW202403546A TW202403546A TW112105151A TW112105151A TW202403546A TW 202403546 A TW202403546 A TW 202403546A TW 112105151 A TW112105151 A TW 112105151A TW 112105151 A TW112105151 A TW 112105151A TW 202403546 A TW202403546 A TW 202403546A
- Authority
- TW
- Taiwan
- Prior art keywords
- vector
- subvector
- instruction
- sub
- instructions
- Prior art date
Links
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/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/3001—Arithmetic 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
- 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/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- 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/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
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- 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
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
- G06F9/38873—Iterative single instructions for multiple data lanes [SIMD]
-
- 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
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
- G06F9/38873—Iterative single instructions for multiple data lanes [SIMD]
- G06F9/38875—Iterative single instructions for multiple data lanes [SIMD] for adaptable or variable architectural vector length
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB2203431.8 | 2022-03-11 | ||
| GB2203431.8A GB2616601B (en) | 2022-03-11 | 2022-03-11 | Sub-vector-supporting instruction for scalable vector instruction set architecture |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| TW202403546A true TW202403546A (zh) | 2024-01-16 |
Family
ID=81254804
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW112105151A TW202403546A (zh) | 2022-03-11 | 2023-02-14 | 用於可擴縮向量指令集架構的子向量支援指令 |
Country Status (9)
| Country | Link |
|---|---|
| US (1) | US20250156184A1 (https=) |
| EP (1) | EP4490612A1 (https=) |
| JP (1) | JP2025507837A (https=) |
| KR (1) | KR20240159595A (https=) |
| CN (1) | CN118829969A (https=) |
| GB (1) | GB2616601B (https=) |
| IL (1) | IL314882A (https=) |
| TW (1) | TW202403546A (https=) |
| WO (1) | WO2023170373A1 (https=) |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4745547A (en) * | 1985-06-17 | 1988-05-17 | International Business Machines Corp. | Vector processing |
| US9557995B2 (en) * | 2014-02-07 | 2017-01-31 | Arm Limited | Data processing apparatus and method for performing segmented operations |
| EP3125108A1 (en) * | 2015-07-31 | 2017-02-01 | ARM Limited | Vector processing using loops of dynamic vector length |
| GB2540939B (en) * | 2015-07-31 | 2019-01-23 | Advanced Risc Mach Ltd | An apparatus and method for performing a splice operation |
| US10108581B1 (en) * | 2017-04-03 | 2018-10-23 | Google Llc | Vector reduction processor |
-
2022
- 2022-03-11 GB GB2203431.8A patent/GB2616601B/en active Active
- 2022-12-15 WO PCT/GB2022/053244 patent/WO2023170373A1/en not_active Ceased
- 2022-12-15 EP EP22826607.8A patent/EP4490612A1/en active Pending
- 2022-12-15 US US18/844,296 patent/US20250156184A1/en active Pending
- 2022-12-15 KR KR1020247033147A patent/KR20240159595A/ko active Pending
- 2022-12-15 CN CN202280093265.3A patent/CN118829969A/zh active Pending
- 2022-12-15 JP JP2024551945A patent/JP2025507837A/ja active Pending
- 2022-12-15 IL IL314882A patent/IL314882A/en unknown
-
2023
- 2023-02-14 TW TW112105151A patent/TW202403546A/zh unknown
Also Published As
| Publication number | Publication date |
|---|---|
| US20250156184A1 (en) | 2025-05-15 |
| EP4490612A1 (en) | 2025-01-15 |
| JP2025507837A (ja) | 2025-03-21 |
| GB2616601B (en) | 2024-05-08 |
| WO2023170373A1 (en) | 2023-09-14 |
| GB202203431D0 (en) | 2022-04-27 |
| KR20240159595A (ko) | 2024-11-05 |
| CN118829969A (zh) | 2024-10-22 |
| IL314882A (en) | 2024-10-01 |
| GB2616601A (en) | 2023-09-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI883234B (zh) | 用於資料傳輸指令之暫存器定址資訊 | |
| Reshadi et al. | Instruction set compiled simulation: A technique for fast and flexible instruction set simulation | |
| KR100230105B1 (ko) | 간략화된 명령 세트 프로세서의 성능 개선 방법 및 그 프로세서 시스템 | |
| KR100218572B1 (ko) | 고성능 프로세서의 번역버퍼에 대해 세분성 힌트를 이용하는 프로세서 동작 방법 및 장치 | |
| CN102792265B (zh) | 基于机器状态的指令破解 | |
| US9495163B2 (en) | Address generation in a data processing apparatus | |
| US7065631B2 (en) | Software controllable register map | |
| US20110320773A1 (en) | Function virtualization facility for blocking instruction function of a multi-function instruction of a virtual processor | |
| Clark et al. | Liquid SIMD: Abstracting SIMD hardware using lightweight dynamic mapping | |
| CN116724291A (zh) | 加载区块指令和存储区块指令 | |
| US12277420B2 (en) | Masked-vector-comparison instruction | |
| US20250156182A1 (en) | Technique for performing memory access operations | |
| TW202403546A (zh) | 用於可擴縮向量指令集架構的子向量支援指令 | |
| JP2024503638A (ja) | メモリコピーサイズ判定命令及びデータ転送命令 | |
| JP7799703B2 (ja) | ケイパビリティを使用してメモリへのアクセスを制約するための技法 | |
| TW202514357A (zh) | 縮窄向量儲存指令 | |
| Burcham | An X86 emulator written using Java | |
| HK1180804B (en) | Function virtualization facility for blocking instruction function of a multi-function instruction of a virtual processor |