JP3891609B2 - 並べ換え装置 - Google Patents
並べ換え装置 Download PDFInfo
- Publication number
- JP3891609B2 JP3891609B2 JP20138496A JP20138496A JP3891609B2 JP 3891609 B2 JP3891609 B2 JP 3891609B2 JP 20138496 A JP20138496 A JP 20138496A JP 20138496 A JP20138496 A JP 20138496A JP 3891609 B2 JP3891609 B2 JP 3891609B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- contents
- rearrangement
- reordering
- input register
- 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
- 230000008707 rearrangement Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 230000008878 coupling Effects 0.000 claims description 2
- 238000010168 coupling process Methods 0.000 claims description 2
- 238000005859 coupling reaction Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 239000010410 layer Substances 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/762—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data having at least two separately controlled rearrangement levels, e.g. multistage interconnection networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/509,867 US6381690B1 (en) | 1995-08-01 | 1995-08-01 | Processor for performing subword permutations and combinations |
US509,867 | 1995-08-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09106342A JPH09106342A (ja) | 1997-04-22 |
JP3891609B2 true JP3891609B2 (ja) | 2007-03-14 |
Family
ID=24028413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20138496A Expired - Fee Related JP3891609B2 (ja) | 1995-08-01 | 1996-07-31 | 並べ換え装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6381690B1 (fr) |
EP (1) | EP0757312A1 (fr) |
JP (1) | JP3891609B2 (fr) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742840A (en) * | 1995-08-16 | 1998-04-21 | Microunity Systems Engineering, Inc. | General purpose, multiple precision parallel operation, programmable media processor |
US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
GB9727400D0 (en) * | 1997-12-29 | 1998-02-25 | Sgs Thomson Microelectronics | Decoding apparatus |
GB9727399D0 (en) | 1997-12-29 | 1998-02-25 | Sgs Thomson Microelectronics | Data manipulation |
WO1999048025A2 (fr) | 1998-03-18 | 1999-09-23 | Koninklijke Philips Electronics N.V. | Dispositif de traitement de donnees et procede de calcul de la transformee en cosinus discrets d'une matrice |
US6041404A (en) * | 1998-03-31 | 2000-03-21 | Intel Corporation | Dual function system and method for shuffling packed data elements |
US6952478B2 (en) * | 2000-05-05 | 2005-10-04 | Teleputers, Llc | Method and system for performing permutations using permutation instructions based on modified omega and flip stages |
US6922472B2 (en) * | 2000-05-05 | 2005-07-26 | Teleputers, Llc | Method and system for performing permutations using permutation instructions based on butterfly networks |
WO2001089098A2 (fr) | 2000-05-05 | 2001-11-22 | Lee Ruby B | Procede et systeme de realisation de permutations avec des instructions de permutation de bits |
US7620832B2 (en) * | 2000-09-20 | 2009-11-17 | Mips Technologies, Inc. | Method and apparatus for masking a microprocessor execution signature |
US7711763B2 (en) | 2001-02-21 | 2010-05-04 | Mips Technologies, Inc. | Microprocessor instructions for performing polynomial arithmetic operations |
US7237097B2 (en) * | 2001-02-21 | 2007-06-26 | Mips Technologies, Inc. | Partial bitwise permutations |
US7162621B2 (en) * | 2001-02-21 | 2007-01-09 | Mips Technologies, Inc. | Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration |
US7181484B2 (en) * | 2001-02-21 | 2007-02-20 | Mips Technologies, Inc. | Extended-precision accumulation of multiplier output |
US7318145B1 (en) | 2001-06-01 | 2008-01-08 | Mips Technologies, Inc. | Random slip generator |
US7739319B2 (en) * | 2001-10-29 | 2010-06-15 | Intel Corporation | Method and apparatus for parallel table lookup using SIMD instructions |
US7624138B2 (en) | 2001-10-29 | 2009-11-24 | Intel Corporation | Method and apparatus for efficient integer transform |
US7818356B2 (en) | 2001-10-29 | 2010-10-19 | Intel Corporation | Bitstream buffer manipulation with a SIMD merge instruction |
US7631025B2 (en) * | 2001-10-29 | 2009-12-08 | Intel Corporation | Method and apparatus for rearranging data between multiple registers |
US7725521B2 (en) * | 2001-10-29 | 2010-05-25 | Intel Corporation | Method and apparatus for computing matrix transformations |
US20040054877A1 (en) | 2001-10-29 | 2004-03-18 | Macy William W. | Method and apparatus for shuffling data |
US7685212B2 (en) * | 2001-10-29 | 2010-03-23 | Intel Corporation | Fast full search motion estimation with SIMD merge instruction |
US7039795B2 (en) * | 2002-06-14 | 2006-05-02 | Texas Instruments Incorporated | System and method for using a two-stage multiplexing architecture for performing combinations of passing, rearranging, and duplicating operations on data |
US7202872B2 (en) * | 2003-10-29 | 2007-04-10 | Via Technologies, Inc. | Apparatus for compressing data in a bit stream or bit pattern |
US7783690B2 (en) * | 2005-07-07 | 2010-08-24 | International Business Machines Corporation | Electronic circuit for implementing a permutation operation |
WO2007057832A2 (fr) * | 2005-11-15 | 2007-05-24 | Nxp B.V. | Appareil et procede de traitement de donnees |
US20070226469A1 (en) * | 2006-03-06 | 2007-09-27 | James Wilson | Permutable address processor and method |
US8156310B2 (en) * | 2006-09-11 | 2012-04-10 | International Business Machines Corporation | Method and apparatus for data stream alignment support |
GB2443439B (en) * | 2006-10-30 | 2009-06-03 | Imagination Tech Ltd | Digital electronic binary rotator and reverser |
US8285766B2 (en) | 2007-05-23 | 2012-10-09 | The Trustees Of Princeton University | Microprocessor shifter circuits utilizing butterfly and inverse butterfly routing circuits, and control circuits therefor |
US7673120B2 (en) * | 2007-06-27 | 2010-03-02 | Texas Instruments Incorporated | Inter-cluster communication network and heirarchical register files for clustered VLIW processors |
US8078836B2 (en) | 2007-12-30 | 2011-12-13 | Intel Corporation | Vector shuffle instructions operating on multiple lanes each having a plurality of data elements using a common set of per-lane control bits |
WO2011121795A1 (fr) * | 2010-03-31 | 2011-10-06 | Telefonaktiebolaget L M Ericsson (Publ) | Décaleur de données et son procédé de commande, multiplexeur, tamiseur de données et trieur de données |
US20120278591A1 (en) * | 2011-04-27 | 2012-11-01 | Advanced Micro Devices, Inc. | Crossbar switch module having data movement instruction processor module and methods for implementing the same |
US20140013082A1 (en) * | 2011-12-30 | 2014-01-09 | Intel Corporation | Reconfigurable device for repositioning data within a data word |
US20170161069A1 (en) * | 2015-12-08 | 2017-06-08 | Knuedge, Inc. | Microprocessor including permutation instructions |
US20170185413A1 (en) * | 2015-12-23 | 2017-06-29 | Intel Corporation | Processing devices to perform a conjugate permute instruction |
US10255462B2 (en) | 2016-06-17 | 2019-04-09 | Arm Limited | Apparatus and method for obfuscating power consumption of a processor |
US20190272175A1 (en) * | 2018-03-01 | 2019-09-05 | Qualcomm Incorporated | Single pack & unpack network and method for variable bit width data formats for computational machines |
US11204738B1 (en) * | 2020-06-03 | 2021-12-21 | Arm Limited | Apparatus and method for performing bit permutation operations |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3810112A (en) * | 1972-12-18 | 1974-05-07 | Bell Lab Inc | Shift-shuffle memory system with rapid sequential access |
US4085447A (en) * | 1976-09-07 | 1978-04-18 | Sperry Rand Corporation | Right justified mask transfer apparatus |
US4545032A (en) * | 1982-03-08 | 1985-10-01 | Iodata, Inc. | Method and apparatus for character code compression and expansion |
US4567572A (en) * | 1983-02-22 | 1986-01-28 | The United States Of America As Represented By The Director Of The National Security Agency | Fast parallel sorting processor |
US4816817A (en) * | 1985-06-28 | 1989-03-28 | Hewlett-Packard Company | Line mover for bit-mapped display |
GB2189970B (en) * | 1986-05-01 | 1990-03-28 | British Broadcasting Corp | Data conversion |
JPS6398729A (ja) | 1986-10-15 | 1988-04-30 | Fujitsu Ltd | バレルシフタ |
JPS63292185A (ja) | 1987-05-25 | 1988-11-29 | 日本電気株式会社 | デジタル入出力回路 |
US4980853A (en) * | 1988-03-04 | 1990-12-25 | Chips And Technologies, Inc. | Bit blitter with narrow shift register |
JP2527458B2 (ja) * | 1988-03-04 | 1996-08-21 | 富士通株式会社 | デ―タ転送制御装置 |
DE3832328A1 (de) * | 1988-09-23 | 1990-03-29 | Broadcast Television Syst | Speicheranordnung fuer digitale signale |
JP2633331B2 (ja) * | 1988-10-24 | 1997-07-23 | 三菱電機株式会社 | マイクロプロセッサ |
US5268858A (en) * | 1991-08-30 | 1993-12-07 | Cyrix Corporation | Method and apparatus for negating an operand |
US5471628A (en) * | 1992-06-30 | 1995-11-28 | International Business Machines Corporation | Multi-function permutation switch for rotating and manipulating an order of bits of an input data byte in either cyclic or non-cyclic mode |
US5524256A (en) * | 1993-05-07 | 1996-06-04 | Apple Computer, Inc. | Method and system for reordering bytes in a data stream |
US5390135A (en) * | 1993-11-29 | 1995-02-14 | Hewlett-Packard | Parallel shift and add circuit and method |
FR2721463A1 (fr) * | 1994-06-17 | 1995-12-22 | Trt Telecom Radio Electr | Système de transmission comportant au moins deux liaisons pour relier un émetteur et un récepteur et récepteur convenant à un tel système. |
-
1995
- 1995-08-01 US US08/509,867 patent/US6381690B1/en not_active Expired - Lifetime
-
1996
- 1996-07-15 EP EP96305187A patent/EP0757312A1/fr not_active Withdrawn
- 1996-07-31 JP JP20138496A patent/JP3891609B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6381690B1 (en) | 2002-04-30 |
JPH09106342A (ja) | 1997-04-22 |
EP0757312A1 (fr) | 1997-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3891609B2 (ja) | 並べ換え装置 | |
US5175862A (en) | Method and apparatus for a special purpose arithmetic boolean unit | |
KR100996888B1 (ko) | 앨리어싱 데이터 처리 레지스터 | |
US4141005A (en) | Data format converting apparatus for use in a digital data processor | |
JP5393643B2 (ja) | Simd処理における定数の生成 | |
JP4689621B2 (ja) | レジスタとメモリとの間でデータを移動するためのデータ処理装置および方法 | |
JP4689622B2 (ja) | レジスタとメモリとの間でデータを移動するためのデータ処理装置および方法 | |
EP2603851B1 (fr) | Appareil de traitement de données ayant une instruction de manipulation de champ binaire et procédé | |
US6816961B2 (en) | Processing architecture having field swapping capability | |
EP1073950B1 (fr) | Procede et appareil permettant d'effectuer des operations de decalage sur des donnees condensees | |
EP0424618A2 (fr) | Système d'entrée et de sortie | |
US5555429A (en) | Multiport RAM based multiprocessor | |
WO2001035224A1 (fr) | Acces memoire en serie par bit avec des grands elements de traitement pour matrices simd | |
US20050125476A1 (en) | Data processing apparatus and method for performing arithmetic operations in SIMD data processing | |
US9400652B1 (en) | Methods and apparatus for address translation functions | |
JP4584673B2 (ja) | データ処理システム内部のテーブル検索操作 | |
KR19990077230A (ko) | 이미지-처리 프로세서 | |
JP2005174296A (ja) | Simdデータ処理システムにおけるエンディアンの補償 | |
US20050024983A1 (en) | Providing a register file memory with local addressing in a SIMD parallel processor | |
JP2005174300A (ja) | 異なるレジスタデータ記憶装置のレジスタ間のデータ移動 | |
US4792894A (en) | Arithmetic computation modifier based upon data dependent operations for SIMD architectures | |
JP2005174292A (ja) | データシフト操作 | |
EP0483967A2 (fr) | Appareil pour augmenter le nombre de registres dans un processeur d'ordinateur | |
US3681763A (en) | Semiconductor orthogonal memory systems | |
EP0227900A2 (fr) | Appareil de traitement de données à instructions à trois adresses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050506 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050719 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060228 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060530 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060602 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060607 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061205 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101215 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |