JP2006127505A - ベクトルを置換するためのシステムおよび方法 - Google Patents
ベクトルを置換するためのシステムおよび方法 Download PDFInfo
- Publication number
- JP2006127505A JP2006127505A JP2005302894A JP2005302894A JP2006127505A JP 2006127505 A JP2006127505 A JP 2006127505A JP 2005302894 A JP2005302894 A JP 2005302894A JP 2005302894 A JP2005302894 A JP 2005302894A JP 2006127505 A JP2006127505 A JP 2006127505A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- entry
- stages
- entries
- permutation
- 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.)
- Pending
Links
- 239000013598 vector Substances 0.000 title claims abstract description 100
- 238000000034 method Methods 0.000 title claims abstract description 16
- 238000006467 substitution reaction Methods 0.000 claims description 7
- 239000002131 composite material Substances 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000009466 transformation Effects 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/766—Generation of all possible permutations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/145—Square transforms, e.g. Hadamard, Walsh, Haar, Hough, Slant transforms
-
- 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/58—Random or pseudo-random number generators
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
Abstract
【解決手段】ベクトルを置換する(permute)方法は、置換構造の入力段に、ベクトルのエントリを提供する。該置換構造は、複数の段と、任意の入力ベクトルエントリを任意の出力ベクトルエントリにルーティングすることができるように該複数の段間でのベクトルエントリのグループの相互接続とを有する。該方法は、置換構造の制御要素(202)に、該置換構造の段間のベクトルエントリのルーティングを制御するランダムな制御ビットをロードする。該置換構造を使用し、該制御ビットに従って、該ベクトルエントリを、置換構造の入力段から出力構造までルーティングする。
【選択図】図2
Description
101〜104 段
200 バタフライ要素
201 マルチプレクサ
202 制御要素(制御レジスタ)
Claims (10)
- ベクトルを置換するための方法であって、
前記ベクトルのベクトルエントリを、置換構造の入力段に提供するステップであって、該置換構造は、複数の段(101〜104)と、任意の入力ベクトルエントリを任意の出力ベクトルエントリにルーティングすることができるように該複数の段間でのベクトルエントリのグループの相互接続と、を有するステップと、
前記置換構造の制御要素(202)に、該置換構造の段間のベクトルエントリのルーティングを制御するランダムな制御ビットをロードするステップと、
前記置換構造を使用し、前記制御ビットに従って、前記ベクトルエントリを前記置換構造の入力段から出力構造までルーティングするステップと、
を含む、方法。 - 前記置換構造は、それぞれの制御ビットによって、2つの対応するベクトルエントリを、前記置換構造の2つの段の間で交換し、または、該対応するベクトルエントリを、該2つの段の間で同じ位置に継続させる、バタフライ要素を有する、
請求項1に記載の方法。 - 前記バタフライ要素のそれぞれは、制御レジスタ(202)に結合された2つの2対1マルチプレクサ(201)を含む、
請求項2に記載の方法。 - 前記置換構造のそれぞれの段は、ベクトルエントリを、2S個のエントリのグループにグループ化し、該Sは、前記置換構造の前記段を示す、
請求項1に記載の方法。 - 前記置換構造の前記相互接続は、グループのi番目のベクトルエントリを、該グループの(2S−i番目)のベクトルエントリと交換することを可能にする、
請求項3に記載の方法。 - 前記ベクトルエントリの数は、2の累乗である、
請求項1に記載の方法。 - 前記置換構造は、log2M個の段を含み、該Mは、前記ベクトルのベクトルエントリの数を表す、
請求項5に記載の方法。 - さらに、
前記ベクトルエントリを、制御ビットに従って、後続の置換構造の入力段から、該連続置換構造の出力段にルーティングするステップを含み、
該後続の置換構造は、前記置換構造にカスケード接続されている、
請求項1に記載の方法 - 前記置換構造は、
ベクトルエントリを、前記複数の段間でルーティングするバレルシフタを含む、
請求項1に記載の方法。 - ベクトルを置換するためのシステムであって、
前記ベクトルのエントリを受け取る入力段と、該ベクトルの置換済みベクトルを出力する出力段とを有する複数の段(101〜104)であって、該複数の段のそれぞれは、前記ベクトルのエントリのうちの一部のエントリの位置を制御可能なように切り換える論理要素(200)を含む、複数の段(101〜104)と、
前記複数の段の前記論理要素間の相互接続と、
前記複数の段の前記論理要素に、ビットを、偽似ランダムなやり方でロードして、該論理要素の動作を制御する制御要素(208)と、を備え、
前記論理要素および前記相互接続は、前記ベクトルの任意のエントリを、前記出力段の任意の出力位置にルーティングすることができるように配置されている、
システム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/978,065 US20060095485A1 (en) | 2004-10-30 | 2004-10-30 | System and method for permuting a vector |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006127505A true JP2006127505A (ja) | 2006-05-18 |
JP2006127505A5 JP2006127505A5 (ja) | 2008-03-21 |
Family
ID=35458421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005302894A Pending JP2006127505A (ja) | 2004-10-30 | 2005-10-18 | ベクトルを置換するためのシステムおよび方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20060095485A1 (ja) |
JP (1) | JP2006127505A (ja) |
DE (1) | DE102005039687A1 (ja) |
GB (1) | GB2419706A (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7783690B2 (en) * | 2005-07-07 | 2010-08-24 | International Business Machines Corporation | Electronic circuit for implementing a permutation operation |
GB2456775B (en) | 2008-01-22 | 2012-10-31 | Advanced Risc Mach Ltd | Apparatus and method for performing permutation operations on data |
CN101894095B (zh) * | 2010-02-08 | 2015-08-12 | 北京韦加航通科技有限责任公司 | 快速哈达玛变换装置及方法 |
US9378017B2 (en) * | 2012-12-29 | 2016-06-28 | Intel Corporation | Apparatus and method of efficient vector roll operation |
US20240264994A1 (en) * | 2023-02-08 | 2024-08-08 | Oxla sp. z o.o. | Storage efficient multimaps for processing database queries |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5734721A (en) * | 1995-10-12 | 1998-03-31 | Itt Corporation | Anti-spoof without error extension (ANSWER) |
US5996057A (en) * | 1998-04-17 | 1999-11-30 | Apple | Data processing system and method of permutation with replication within a vector register file |
US6334176B1 (en) * | 1998-04-17 | 2001-12-25 | Motorola, Inc. | Method and apparatus for generating an alignment control vector |
US6728295B1 (en) * | 1999-06-30 | 2004-04-27 | University Of Hong Kong | Code division multiple access communication system using overlapping spread sequences |
JP2001147799A (ja) * | 1999-10-01 | 2001-05-29 | Hitachi Ltd | データ移動方法および条件付転送論理ならびにデータの配列換え方法およびデータのコピー方法 |
US6934388B1 (en) * | 1999-11-12 | 2005-08-23 | Itt Manufacturing Enterprises, Inc. | Method and apparatus for generating random permutations |
CA2437036A1 (en) * | 2001-02-24 | 2002-09-06 | International Business Machines Corporation | Efficient implementation of a multidimensional fast fourier transform on a distributed-memory parallel multi-node computer |
-
2004
- 2004-10-30 US US10/978,065 patent/US20060095485A1/en not_active Abandoned
-
2005
- 2005-08-22 DE DE102005039687A patent/DE102005039687A1/de not_active Ceased
- 2005-10-18 JP JP2005302894A patent/JP2006127505A/ja active Pending
- 2005-10-20 GB GB0521433A patent/GB2419706A/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
GB2419706A (en) | 2006-05-03 |
DE102005039687A1 (de) | 2006-05-04 |
GB0521433D0 (en) | 2005-11-30 |
US20060095485A1 (en) | 2006-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2954562T3 (es) | Aprendizaje máquina acelerado por hardware | |
JP3024702B2 (ja) | ダイナミックフィードバックスクランブル技術キーストリーム発生装置 | |
US6381690B1 (en) | Processor for performing subword permutations and combinations | |
US7639797B2 (en) | Apparatus and method of performing AES Rijndael algorithm | |
JP5532560B2 (ja) | データ変換装置、およびデータ変換方法、並びにプログラム | |
US20030103626A1 (en) | Programmable data encryption engine | |
US10007488B2 (en) | Secured pseudo-random number generator | |
US8270558B2 (en) | Electronic device, barrel shifter unit and method of barrel shifting | |
KR100377176B1 (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치 | |
JP2006127505A (ja) | ベクトルを置換するためのシステムおよび方法 | |
CN110784307B (zh) | 轻量级密码算法scenery实现方法、装置及存储介质 | |
KR20010111784A (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러 | |
US7269615B2 (en) | Reconfigurable input Galois field linear transformer system | |
US9166795B2 (en) | Device and method for forming a signature | |
JPH10240500A (ja) | 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム | |
KR20010043433A (ko) | 시퀀스 발생기 | |
JP2004151951A (ja) | アレイ型プロセッサ | |
US6622242B1 (en) | System and method for performing generalized operations in connection with bits units of a data word | |
US7587614B1 (en) | Encryption algorithm optimized for FPGAs | |
JP2006127505A5 (ja) | ||
US9389834B2 (en) | Pseudorandom number generating circuit and method | |
Sreekanth et al. | Implementation of area-efficient AES using FPGA for IOT applications | |
CN112564891B (zh) | 一种基于反馈移位寄存器阵列的序列密码算法计算系统 | |
US20140337395A1 (en) | Semiconductor memory device and random number generator | |
CN112579516B (zh) | 一种可重构处理单元阵列 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070511 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080130 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080130 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090120 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090616 |