JP4252406B2 - データ変換装置 - Google Patents
データ変換装置 Download PDFInfo
- Publication number
- JP4252406B2 JP4252406B2 JP2003313395A JP2003313395A JP4252406B2 JP 4252406 B2 JP4252406 B2 JP 4252406B2 JP 2003313395 A JP2003313395 A JP 2003313395A JP 2003313395 A JP2003313395 A JP 2003313395A JP 4252406 B2 JP4252406 B2 JP 4252406B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit data
- input
- output
- bit
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
u(u≧1)ビットのuビットデータをn(n≧2)個ずつ連続して入力するとともに、uビットデータの入力の度に、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを出力する第1の入出力部と、
n個の記憶ブロックを有し、各記憶ブロックにn個のuビットデータを記憶することが可能であり、前記第1の入出力部からn個のuビットデータが出力される度に各記憶ブロックにuビットデータを1個ずつ記憶して各記憶ブロックにn個のuビットデータを記憶し、データ出力時に、共通のデータ属性を有するuビットデータを各記憶ブロックから1個ずつ抽出してデータ属性が共通するn個のuビットデータを出力する記憶部と、
前記記憶部から出力されたデータ属性が共通するn個のuビットデータを入力し、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを結合し、データ属性が共通するn個のuビットデータからなるu×nビットのデータを出力する第2の入出力部とを有することを特徴とする。
図1は、本実施の形態に係るデータ変換装置を含む回路構成図である。図において、データ変換装置1は、それぞれu(u≧1)ビットのデータであるDATA1(i)〜DATAn(i)をクロックごとにバッファ用メモリ部2から連続して入力するとともに、n(n≧2)個のuビットのデータからなるu×nビットのデータを出力する。バッファ用メモリ部2は、DATA1〜DATAnをそれぞれuビットのデータに分割し、uビットデータであるDATA1(i)〜DATAn(i)をクロックごとにデータ変換装置1に連続して出力する。
本実施の形態では、実施の形態1のデータ変換装置1を用いた応用例を図9を参照して説明する。図中ハッシュ関数(SHA―1)処理部3は暗号化通信や認証等に用いられるアルゴリズムを処理する手段であり、多倍長のデータ(512bit)を処理することを特徴とする。ハッシュ関数を高速に処理する際のボトルネックとして、アルゴリズム自体の処理の他に、多倍長のデータを連続して供給するインターフェースが挙げられる。実施の形態1に示したデータ変換装置1を利用することで高速処理が可能となる。図9中外部からバースト転送等で連続して同一メモリ内に複数の多倍長データが分割して格納される。このとき処理するデータが512bitの倍数とは限らないため、その場合はパディング処理が必要となる。SHA−1のパディング処理は仕様上byte単位もしくはword単位等の少ないデータ長単位での処理が望ましいため、バッファ用メモリ部2からの読み出し直後に行う。このデータをデータ変換装置1にて連続して結合し、ハッシュ関数(SHA−1)処理部3へ入力することが可能となる。
本実施の形態では、実施の形態1の変換装置を用いた暗号化装置を図10を参照して説明する。図中ブロック暗号処理部4は、AES、Camellia等のブロック暗号処理を行う。一般的なブロック暗号は128bit単位で処理を行う。一方、暗号化の対象となるデータは文字コード(8bit等)や画像データ(16bit、32bit)であり、128bitよりも小さい単位で表されることが多い。そのため、暗号化前にパディング処理、圧縮処理、符号化等を行う場合は、そのデータ幅で処理することが望ましい。パディング処理等と暗号化処理を並列に処理する場合、メモリから小さいデータ幅(図10の場合8bit)で読み出されたデータを、連続して128bitのデータに結合する必要がある。パディング処理後のデータに対してデータ変換装置1を用いることで上述の問題点を解決することが可能となる。
図11、図12に外部入力バスとしてシリアルバスを用いた場合の例を示す。図中シリアル転送を行うクロックCLK1とデータ変換を行うクロックCLK2の関係はCLK1>>CLK2であるものとする。この場合、外部からシリアル転送で入力されるデータは、その属するデータ(DATA1〜DATAn)毎にバッファ用2portメモリ5に格納する。例えばDATA1に属するデータの場合、一番上に表記されているバッファ用2portメモリ内に格納され(図中○で囲まれた部分の一番上)、他のメモリには書き込まれない。○で囲まれた部分内においても書き込み制御を行い、転送されるデータのビットに対応するメモリに書き込みを行う。データ変換装置1はバッファ用2portメモリ5から所望のデータを読み出し、変換を行う。それと同時に、外部からは読み出しに使用しているアドレス以外の番地に対して新規データを格納する。これを各アドレスに対して交互に行うことで、連続して所望の多倍長データを得ることが可能となる。
次に、データ変換装置1内の可変巡回シフト回路101、可変巡回シフト回路103の構成例を図14、図16に示す。図15は図14の詳細説明図である。従来例では、図13に示すようにバレルシフタを2つ必要としたが、図14では出力を入力の2倍に拡張し、セレクタを用いることで、バレルシフタを1つだけ用いることで実現可能としてる。つまり、入力がx(=u×n)ビット、出力が2x(=2×(u×n))ビットのバレルシフタと、バレルシフタから出力された2xビットのデータについて上位xビットのデータと下位xビットのデータのいずれかを選択して出力するセレクタとを用いて可変巡回シフト回路101、可変巡回シフト回路103を構成することとしている。
Claims (9)
- u(u≧1)ビットのuビットデータをn(n≧2)個ずつ連続して入力するとともに、uビットデータの入力の度に、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを出力する第1の入出力部と、
n個の記憶ブロックを有し、各記憶ブロックにn個のuビットデータを記憶することが可能であり、前記第1の入出力部からn個のuビットデータが出力される度に各記憶ブロックにuビットデータを1個ずつ記憶して各記憶ブロックにn個のuビットデータを記憶し、データ出力時に、共通のデータ属性を有するuビットデータを各記憶ブロックから1個ずつ抽出してデータ属性が共通するn個のuビットデータを出力する記憶部と、
前記記憶部から出力されたデータ属性が共通するn個のuビットデータを入力し、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを結合し、データ属性が共通するn個のuビットデータからなるu×nビットのデータを出力する第2の入出力部とを有することを特徴とするデータ変換装置。 - 前記記憶部は、
記憶ブロックからのuビットデータの抽出及び抽出されたn個のuビットデータの出力を一定周期ごとに行い、各周期において共通のデータ属性を有するuビットデータを各記憶ブロックから1個ずつ抽出するとともに抽出の対象にするデータ属性を周期ごとに変化させ、各周期において、周期ごとにデータ属性が相違しているn個のuビットデータを前記第2の入出力部に出力し、
前記第2の入出力部は、
n個のuビットデータの入力及びu×nビットのデータの出力を一定周期ごとに行い、各周期において、周期ごとにデータ属性が相違しているn個のuビットデータを前記記憶部から入力するとともに周期ごとにデータ属性が相違しているu×nビットのデータを出力することを特徴とする請求項1に記載のデータ変換装置。 - 前記第1の入出力部は、
n個のデータから分割されたn個のuビットデータを連続して入力し、
前記記憶部は、
データ出力時に、共通のデータから分割されたuビットデータを各記憶ブロックから1個ずつ抽出して共通のデータから分割されたn個のuビットデータを前記第2の入出力部に出力し、
前記第2の入出力部は、
共通のデータから分割されたn個のuビットデータを前記記憶部から入力し、共通のデータから分割されたn個のuビットデータからなるu×nビットのデータを出力することを特徴とする請求項1に記載のデータ変換装置。 - 前記記憶部は、
記憶ブロックからのuビットデータの抽出及び抽出されたn個のuビットデータの出力を一定周期ごとに行い、各周期において共通のデータから分割されたuビットデータを各記憶ブロックから1個ずつ抽出するとともに抽出の対象にする分割元のデータを周期ごとに変化させ、各周期において、周期ごとに分割元のデータが相違しているn個のuビットデータを前記第2の入出力部に出力し、
前記第2の入出力部は、
n個のuビットデータの入力及びu×nビットのデータの出力を一定周期ごとに行い、各周期において、周期ごとに分割元のデータが相違しているn個のuビットデータを前記記憶部から入力するとともに周期ごとに分割元のデータが相違しているu×nビットのデータを出力することを特徴とする請求項3に記載のデータ変換装置。 - 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
n個のuビットデータに対する巡回シフト処理の度にシフト数を変化させて巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。 - 前記第1の入出力部は、
前記記憶部の各記憶ブロックが毎回異なるデータ属性のuビットデータを入力できるようにn個のuビットデータに対する巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。 - 前記第2の入出力部は、
入力したn個のuビットデータが所定の順序で並ぶようにn個のuビットデータに対する巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。 - 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
入力がu×nビット、出力が2×(u×n)ビットのバレルシフタと、
前記バレルシフタから出力された2×(u×n)ビットのデータについて上位u×nビットのデータと下位u×nビットのデータとのいずれかを選択して出力する2−1セレクタとから構成されていることを特徴とする請求項1に記載のデータ変換装置。 - 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
巡回シフト数が相互に異なる複数の固定巡回シフタと、
固定巡回シフタにより巡回シフト処理が行われたデータと巡回シフト処理の行われていないデータとのいずれかを選択して出力する複数の2−1セレクタと、
2−1セレクタから出力されたデータを保持し、所定の場合に、保持しているデータを固定巡回シフタに出力するとともに、保持しているデータを固定巡回シフタを介さずに他の2−1セレクタに出力する複数の記憶素子から構成されたことを特徴とする請求項1に記載のデータ変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003313395A JP4252406B2 (ja) | 2003-09-05 | 2003-09-05 | データ変換装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003313395A JP4252406B2 (ja) | 2003-09-05 | 2003-09-05 | データ変換装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005084766A JP2005084766A (ja) | 2005-03-31 |
JP4252406B2 true JP4252406B2 (ja) | 2009-04-08 |
Family
ID=34414329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003313395A Expired - Fee Related JP4252406B2 (ja) | 2003-09-05 | 2003-09-05 | データ変換装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4252406B2 (ja) |
-
2003
- 2003-09-05 JP JP2003313395A patent/JP4252406B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005084766A (ja) | 2005-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0342832B1 (en) | Dynamic feedback arrangement scrambling technique keystream generator | |
US7106860B1 (en) | System and method for executing Advanced Encryption Standard (AES) algorithm | |
JPH08179690A (ja) | プロダクト暗号装置 | |
JP5359569B2 (ja) | メモリのアクセス方法 | |
JPH03105789A (ja) | 半導体記憶装置 | |
CN115220694A (zh) | 随机数据生成电路及读写训练电路 | |
JP4808318B2 (ja) | メモリアプリケーション用のハイブリッドデータi/oのデータ転送方法 | |
CN112350819B (zh) | 一种全流水线sms4加解密方法及系统 | |
JP4252406B2 (ja) | データ変換装置 | |
US5325332A (en) | Dual port semiconductor memory device | |
US7370046B2 (en) | Sort processing method and sort processing apparatus | |
JP4863279B2 (ja) | メモリシステム及びメモリアクセス方法 | |
WO2015015905A1 (ja) | 論理演算装置 | |
US8451022B2 (en) | Integrated circuit and input data controlling method for reconfigurable circuit | |
US5621337A (en) | Iterative logic circuit | |
CN107222304B (zh) | 一种多体并行s盒的电路结构 | |
KR100555190B1 (ko) | 디지털영상처리장치 | |
US6170077B1 (en) | Method for encoding a digital communication channel | |
JP2005057452A (ja) | プログラマブル論理回路 | |
CN116150046B (zh) | 一种高速缓存电路 | |
JP3818863B2 (ja) | 不揮発性半導体記憶装置 | |
CN117725002A (zh) | 数据传输方法、数据传输装置和电子设备 | |
KR0183171B1 (ko) | 인터리버 및 디인터리버와 그 방법 | |
JP3837136B2 (ja) | プログラマブル論理回路 | |
JP2824976B2 (ja) | 2次元配列データ回転装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060725 |
|
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: 20090120 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090121 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120130 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |