TW201612743A - Bit group interleave processors, methods, systems, and instructions - Google Patents

Bit group interleave processors, methods, systems, and instructions

Info

Publication number
TW201612743A
TW201612743A TW104127009A TW104127009A TW201612743A TW 201612743 A TW201612743 A TW 201612743A TW 104127009 A TW104127009 A TW 104127009A TW 104127009 A TW104127009 A TW 104127009A TW 201612743 A TW201612743 A TW 201612743A
Authority
TW
Taiwan
Prior art keywords
bit group
operand
data
processors
instructions
Prior art date
Application number
TW104127009A
Other languages
English (en)
Other versions
TWI567645B (zh
Inventor
Roger Espasa
David Guillen
Guillem Sole
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of TW201612743A publication Critical patent/TW201612743A/zh
Application granted granted Critical
Publication of TWI567645B publication Critical patent/TWI567645B/zh

Links

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/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/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/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • 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
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields

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)
  • Advance Control (AREA)
  • Complex Calculations (AREA)
TW104127009A 2014-09-25 2015-08-19 位元群組交錯處理器、方法、系統及指令 TWI567645B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP14382360.7A EP3001306A1 (en) 2014-09-25 2014-09-25 Bit group interleave processors, methods, systems, and instructions

Publications (2)

Publication Number Publication Date
TW201612743A true TW201612743A (en) 2016-04-01
TWI567645B TWI567645B (zh) 2017-01-21

Family

ID=51730475

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104127009A TWI567645B (zh) 2014-09-25 2015-08-19 位元群組交錯處理器、方法、系統及指令

Country Status (7)

Country Link
US (1) US20170308383A1 (zh)
EP (1) EP3001306A1 (zh)
JP (1) JP6508850B2 (zh)
KR (1) KR20170036022A (zh)
CN (1) CN106605206A (zh)
TW (1) TWI567645B (zh)
WO (1) WO2016048630A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI771373B (zh) * 2017-05-25 2022-07-21 南韓商三星電子股份有限公司 向量處理器的序列對齊方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018154273A1 (en) * 2017-02-23 2018-08-30 Arm Limited Element by vector operations in a data processing apparatus
US10191740B2 (en) * 2017-02-28 2019-01-29 Intel Corporation Deinterleave strided data elements processors, methods, systems, and instructions
CN110825312B (zh) * 2018-08-10 2023-06-23 昆仑芯(北京)科技有限公司 数据处理装置、人工智能芯片及电子设备
US10990396B2 (en) 2018-09-27 2021-04-27 Intel Corporation Systems for performing instructions to quickly convert and use tiles as 1D vectors
EP4009183B1 (en) * 2018-10-18 2026-05-06 Shanghai Cambricon Information Technology Co., Ltd Network-on-chip data processing method and device
CN109947391B (zh) * 2019-03-11 2023-08-01 合芯科技(苏州)有限公司 一种数据处理方法和装置
US20190220278A1 (en) * 2019-03-27 2019-07-18 Menachem Adelman Apparatus and method for down-converting and interleaving multiple floating point values
US11327761B2 (en) * 2019-05-24 2022-05-10 Texas Instruments Incorporated Processing device with vector transformation execution
US11567555B2 (en) * 2019-08-30 2023-01-31 Intel Corporation Software assisted power management
CN114586002A (zh) * 2019-11-07 2022-06-03 英特尔公司 改变数据格式的交织数据转换
US12112167B2 (en) 2020-06-27 2024-10-08 Intel Corporation Matrix data scatter and gather between rows and irregularly spaced memory locations
US12474928B2 (en) 2020-12-22 2025-11-18 Intel Corporation Processors, methods, systems, and instructions to select and store data elements from strided data element positions in a first dimension from three source two-dimensional arrays in a result two-dimensional array
US20220197652A1 (en) * 2020-12-22 2022-06-23 Intel Corporation Processors, methods, systems, and instructions to merge portions of two source two-dimensional arrays without explicit per-portion control

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0795155B1 (en) * 1994-12-01 2003-03-19 Intel Corporation A microprocessor having a multiply operation
KR100329338B1 (ko) * 1994-12-02 2002-07-18 피터 엔. 데트킨 복합피연산자의팩연산을수행하는마이크로프로세서
GB9509989D0 (en) * 1995-05-17 1995-07-12 Sgs Thomson Microelectronics Manipulation of data
GB9509987D0 (en) * 1995-05-17 1995-07-12 Sgs Thomson Microelectronics Manipulation of data
US7197625B1 (en) * 1997-10-09 2007-03-27 Mips Technologies, Inc. Alignment and ordering of vector elements for single instruction multiple data processing
JP2000020486A (ja) * 1998-06-29 2000-01-21 Ricoh Co Ltd Simd型演算器
US6629115B1 (en) * 1999-10-01 2003-09-30 Hitachi, Ltd. Method and apparatus for manipulating vectored data
US6922472B2 (en) * 2000-05-05 2005-07-26 Teleputers, Llc Method and system for performing permutations using permutation instructions based on butterfly networks
AU2001259555A1 (en) * 2000-05-05 2001-11-20 Ruby B. Lee A method and system for performing subword permutation instructions for use in two-dimensional multimedia processing
CA2375058A1 (en) * 2000-05-05 2001-11-22 Ruby B. Lee A method and system for performing permutations using permutation instructions based on modified omega and flip stages
US6760822B2 (en) * 2001-03-30 2004-07-06 Intel Corporation Method and apparatus for interleaving data streams
US7017032B2 (en) * 2001-06-11 2006-03-21 Broadcom Corporation Setting execution conditions
US7631025B2 (en) * 2001-10-29 2009-12-08 Intel Corporation Method and apparatus for rearranging data between multiple registers
GB2411975B (en) * 2003-12-09 2006-10-04 Advanced Risc Mach Ltd Data processing apparatus and method for performing arithmetic operations in SIMD data processing
US9557994B2 (en) * 2004-07-13 2017-01-31 Arm Limited Data processing apparatus and method for performing N-way interleaving and de-interleaving operations where N is an odd plural number
US7681014B2 (en) * 2005-02-04 2010-03-16 Mips Technologies, Inc. Multithreading instruction scheduler employing thread group priorities
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US9086872B2 (en) * 2009-06-30 2015-07-21 Intel Corporation Unpacking packed data in multiple lanes
JP2011134042A (ja) * 2009-12-24 2011-07-07 Ricoh Co Ltd Simd型マイクロプロセッサおよびsimd型マイクロプロセッサのデータ整列方法
CN102253824A (zh) * 2010-05-18 2011-11-23 江苏芯动神州科技有限公司 一种字节内比特数据混洗的方法
JP2012033032A (ja) * 2010-07-30 2012-02-16 Sony Corp 情報処理装置および情報処理方法
GB2485774A (en) * 2010-11-23 2012-05-30 Advanced Risc Mach Ltd Processor instruction to extract a bit field from one operand and insert it into another with an option to sign or zero extend the field
US20130185540A1 (en) * 2011-07-14 2013-07-18 Texas Instruments Incorporated Processor with multi-level looping vector coprocessor
US9411593B2 (en) * 2013-03-15 2016-08-09 Intel Corporation Processors, methods, systems, and instructions to consolidate unmasked elements of operation masks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI771373B (zh) * 2017-05-25 2022-07-21 南韓商三星電子股份有限公司 向量處理器的序列對齊方法

Also Published As

Publication number Publication date
CN106605206A (zh) 2017-04-26
US20170308383A1 (en) 2017-10-26
WO2016048630A1 (en) 2016-03-31
JP2017529597A (ja) 2017-10-05
JP6508850B2 (ja) 2019-05-08
EP3001306A1 (en) 2016-03-30
KR20170036022A (ko) 2017-03-31
TWI567645B (zh) 2017-01-21

Similar Documents

Publication Publication Date Title
TW201612743A (en) Bit group interleave processors, methods, systems, and instructions
ZA201904095B (en) Data storage system with multiple durability levels
WO2016022822A3 (en) Knowledge automation system
EP3469486A4 (en) MULTI-PORT INTERPOSER ARCHITECTURES IN DATA STORAGE SYSTEMS
HUE057843T2 (hu) Tároló és visszakeresõ rendszer
EP3655326C0 (en) SPACE SYSTEM BASED ON REFORMABLE, RECONSTITUTABLE, RECONFIGURABLE, MUTUAL LOCKING CELLS
EP3050048A4 (en) Vector indexed memory access plus arithmetic and/or logical operation processors, methods, systems, and instructions
GB201310169D0 (en) A method for attesting a plurality of data processing systems
GB2514275A (en) Identifying and ranking solutions from multiple data sources
GB2510762A (en) A method and device to distribute code and data stores between volatile memory and non-volatile memory
EP3186713A4 (en) Routing direct memory access requests in a virtualized computing environment
MX346496B (es) Instrucción de calcular la distancia a una frontera de memoria especificada.
EP3067815C0 (en) ACCESS RELATIONSHIPS IN A COMPUTER SYSTEM
IL247888B (en) Address expansion and contraction in a multithreading computer system
GB2526984A (en) Secure digital artifact storage and access
GB2512728B (en) Multiple data element-to-multiple data element comparison processors, methods, systems, and instructions
WO2017052811A3 (en) Secure modular exponentiation processors, methods, systems, and instructions
IL247858B (en) Start virtual execution instruction for dispatching multiple threads in a computer
WO2014123982A3 (en) Routine estimation
IN2014MU01682A (zh)
BR112015032864A2 (pt) método , sistema de computação , e meio de armazenamento legível por computador não transitório armazenando as instruções que mediante a execução causam um sistema
WO2014165208A3 (en) Meter reading data validation
IL227982B (en) Missile system with navigation capability based on image processing
FI20155955L (fi) Mikrobinen polttokenno, sen käyttö ja mikrobinen polttokennojärjestelmä
GB2520862A (en) Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees