JP4252406B2 - データ変換装置 - Google Patents

データ変換装置 Download PDF

Info

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
Application number
JP2003313395A
Other languages
English (en)
Other versions
JP2005084766A (ja
Inventor
大輔 鈴木
豊広 鶴丸
充 松井
善之 大崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003313395A priority Critical patent/JP4252406B2/ja
Publication of JP2005084766A publication Critical patent/JP2005084766A/ja
Application granted granted Critical
Publication of JP4252406B2 publication Critical patent/JP4252406B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、データ変換装置に関し、メモリに分割されて格納された多倍長データを、効率よく連結する装置に関する。
図17は従来のデータ変換回路の一例のブロック図を示す。図17の場合、メモリのバス幅であるubit毎にデータを入力用メモリ部1701から読み出し、逐次シフトレジスタ1702へ入力する。初段のレジスタへ格納されたデータは、次のクロックで右隣のレジスタへ順次シフトしながら入力する。nクロック後に分割されたデータに対して読み出しを完了し、この時点で各レジスタ1702からデータを読み出すことで結合した多倍長データを得ることができる。次に複数種類のデータに対して連続して多倍長データを得るためには、上記の構成をn個用意し、出力側をn−1セレクタ1703で選択して出力する構成をとる。次に各シフトレジスタへの入力をそれぞれ異なるデータ毎に1クロック毎ずらして入力する。この場合、出力がそそろうタイミングも1クロックずつずれるため、そろったものから出力し、再び別のデータを入力することで、複数の異なる多倍長データの結合が可能となる。
次に図13に従来の可変シフト回路の構成例を示す。図に示すように可変シフトは、2つの入出力のデータ幅が同じであるバレルシフタと、1つのXORで実現できる。
また、関連する技術として、特開2001−136076号公報に開示された「シリアルパラレル変換器」がある。この「シリアルパラレル変換器」は、直列接続したフリップフロップFFA1〜FFMからなるシフトレジスタの出力の一部のデータを保持する保持回路を、そのスイッチ端子SWのH/Lの信号レベルによって入力信号を選択できるスイッチ付フリップフロップFFS1〜FFSNで構成し、スイッチ端子SWには、シフトレジスタを構成するフリップフロップFFA1〜FFMのうち第1のNビットデータを反映させるかあるいは第2のNビットデータを反映させるかを決定するビットに対応する位置を構成するフリップフロップFFCの出力端子Qを接続する。スイッチ付フリップフロップFFS1〜FFSNの第1および第2のデータ入力端子D、DTを、第1および第2のNビットデータに対応する位置のフリップフロップの出力端子Qに接続する。
特開2001−136076号公報
図17のシフトレジスタは各レジスタの値を同時に読み出し可能な構成である必要がある。このように、同時に読み出しが必要なシフトレジスタは、ハードウェア実装を行う場合において回路コストが大きい(必要素子数、配線数が大きい)。また、図17中のn−1セレクタは多倍長データの大きさに対して指数関数的に回路コストが増大するため、従来の実装方法では実装効率が悪く、多倍長データサイズによっては連続して結合することができないという問題点があった。
本発明は上述した従来技術の問題点を解決し、小規模な回路構成で所望のデータ変換を高速に行うデータ変換装置を提供することを目的とする。
本発明に係るデータ変換装置は、
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は、本実施の形態に係るデータ変換装置を含む回路構成図である。図において、データ変換装置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は、可変巡回シフト回路101、データ変換用メモリ102、可変巡回シフト回路103から構成される。可変巡回シフト回路101は第1の入出力部の例に相当し、データ変換用メモリ102は記憶部の例に相当し、可変巡回シフト回路103は第2の入出力部の例に相当する。また、データ変換用メモリ102は、例えばDual−Access LUT(Look Up Table)−Based RAM(Random Access Memory)である。
可変巡回シフト回路101は、uビットのデータであるDATA1(i)〜DATAn(i)(n個のuビットデータ)をクロックごとにバッファ用メモリ部2から連続して入力するとともに、DATA1(i)〜DATAn(i)の入力の度に、DATA1(i)〜DATAn(i)に対して所定の巡回シフト処理を行ってDATA1(i)〜DATAn(i)をデータ変換用メモリ102に出力する。また、可変巡回シフト回路101は、巡回シフト処理の度にシフト数を変化させて巡回シフト処理を行う。
データ変換用メモリ102は 2portの(Read非同期、 Write同期)データ幅uビット、深さnのメモリをn個備える。つまり、データ変換用メモリ102は、n個の記憶ブロックを有し、各記憶ブロックに計n個のuビットデータを記憶することが可能である。uビットデータの書き込み時には、可変巡回シフト回路101の巡回シフトにより、DATA1(i)〜DATAn(i)を各記憶ブロックに分散させて記憶する。また、データ変換用メモリ102は、1クロックに1つのアドレスに対応するデータを読み出すことが可能である。つまり、データ読み出し時には、n個の記憶ブロックのそれぞれからuビットデータを1個ずつ抽出して計n個のuビットデータを可変巡回シフト回路103に出力する。また、アドレスが異なればリードライトは同時に可能である。
可変巡回シフト回路103は、データ変換用メモリ102から出力されたn個のuビットデータを入力し、所定の巡回シフト処理を行ってn個のuビットデータを結合し、u×nビットデータを出力する。また、可変巡回シフト回路103は、巡回シフト処理の度にシフト数を変化させて巡回シフト処理を行う。
つぎに、動作について説明する。
まず、可変巡回シフト回路101は、バッファ用メモリ部2からシーケンシャルに入力されるn個のuビットデータDATA1(i)〜DATAn(i)に対して巡回シフト処理を行って、DATA1(i)〜DATAn(i)をデータ変換用メモリ102の各記憶ブロックに分散して書き込む。データ変換用メモリ102では、可変巡回シフト回路101により分散されたDATA1(i)〜DATAn(i)を各記憶ブロックに記憶する。出力時にはn個の各記憶ブロックから同時にDATAiに属するデータを読み出し、可変巡回シフト回路103に出力し、可変巡回シフト回路103では、入力したn個のuビットデータに対して巡回シフト処理を行ってu×nビットのデータを出力する。データ変換用メモリ102に連続してデータを入力することで、連続してu×nビットの出力を得ることができる。
例として、u=8、n=64の場合における回路の挙動について説明する。まず、図2に示すように各データの1バイト目をデータ変換用メモリ102に書き込む。ここで、図2は、データ変換用メモリ102へのuビットデータの書き込み状況を示しており、図2の各行はn=64個の記憶ブロックを示し、各列は各記憶ブロックの深さ、つまり各記憶ブロックがn=64個のuビットデータ(ここでは、8ビットデータ)を記憶可能なことを示している。また、添字iは各uビットデータの分割元のデータを示し、添字jは当該分割元のデータからのj番目のバイトデータであることを示す。例えば、図2のM0 0は、図1のDATA1から分割された1バイト目のデータであり、1番目の記憶ブロックに記憶されたことを示しており、M63 0は、図1のDATAn(=64)から分割された1バイト目のデータであり、n(=64)番目の記憶ブロックに記憶されたことを示している。図3以降も同様である。なお、図2の場合は、可変巡回シフト回路101は、巡回シフトを行っていない(0バイトシフト)。
次に、各データの2バイト目を図3のように1バイトシフトしてメモリに書き込む。1バイトシフトする巡回シフト処理は可変巡回シフト回路101により実施される。なお、図4以降に示すように、可変巡回シフト回路101は、各記憶ブロックが毎回異なるデータ属性のuビットデータを入力できるように(各記憶ブロックが毎回分割元のデータが異なるuビットデータを入力できるように)順次シフト回数を増やしながら巡回シフト処理を行う。図3に示す状態の後は、巡回シフトのシフト回数を順次増やしながら、図4のように全てのuビットデータをデータ変換用メモリ102に書き込む。次に図4に示すように、i=0のデータ、すなわちM0 0〜M0 63のn個のuビットデータを同時に各ブロックから読み出すとともに、図5に示すように、読み出された領域に次のデータM64 0〜M127 0を書き込む。また同様にして、次のM1 0〜M1 63を読み出すとともに、読み出した領域に次のデータM64 1〜M127 1を書き込む(図6)。そして、図6の動作を繰り返すことで図4と図7の状態が繰り替えされる。図4の状態では図中斜め方向にR/Wを行い、図7の状態では縦方向にR/Wを行う。それぞれリードしたデータは可変巡回シフト回路103で巡回シフトすることでn個のuビットデータを所定の順序に並び替えてu×nビットのデータに変換することができる。例えば、図8に示すようにM1 63、M1 0・・・M1 61、M1 62という順序でデータ変換用メモリ102から出力された場合に、可変巡回シフト回路103がこれらのデータを1バイトシフトすることによりM1 0、M1 1・・・M1 62、M1 63の順序に並び替えることができ、正しい順序でu×nビットのデータを出力することができる。
このように本実施の形態に係るデータ変換装置では、可変巡回シフト回路101(第1の入出力部)がuビットのuビットデータをn個ずつ連続して入力するとともに、uビットデータの入力の度に、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを出力し、データ変換用メモリ102(記憶部)はn個の記憶ブロックを有し、各記憶ブロックにn個のuビットデータを記憶することが可能であり、可変巡回シフト回路101からn個のuビットデータが出力される度に各記憶ブロックにuビットデータを1個ずつ記憶して各記憶ブロックにn個のuビットデータを記憶し、データ出力時に、共通のデータ属性を有する(共通のデータから分割された)uビットデータを各記憶ブロックから1個ずつ抽出してデータ属性が共通する(共通のデータから分割された)n個のuビットデータを出力し、可変巡回シフト回路103(第2の入出力部)がデータ変換用メモリ102から出力されたデータ属性が共通するn個のuビットデータを入力し、入力したn個のuビットデータに対して所定の巡回シフト処理を行ってn個のuビットデータを結合し、データ属性が共通するn個のuビットデータからなるu×nビットのデータを出力する。
また、本実施の形態に係るデータ変換装置では、データ変換用メモリ102が、記憶ブロックからのuビットデータの抽出及び抽出されたn個のuビットデータの出力を一定周期ごとに行い、各周期において共通のデータ属性を有する(共通のデータから分割された)uビットデータを各記憶ブロックから1個ずつ抽出するとともに抽出の対象にするデータ属性(分割元のデータ)を周期ごとに変化させ、各周期において、周期ごとにデータ属性(分割元のデータ)が相違しているn個のuビットデータを可変巡回シフト回路103に出力し、可変巡回シフト回路103は、n個のuビットデータの入力及びu×nビットのデータの出力を一定周期ごとに行い、各周期において、周期ごとにデータ属性が相違しているn個のuビットデータをデータ変換用メモリ102から入力するとともに周期ごとにデータ属性が相違しているu×nビットのデータを出力する。
本実施の形態に係るデータ変換装置によれば、従来技術において同時に読み出しが必要なシフトレジスタで構成する必要があった部分を1クロックあたり1アドレスのみ読み出し可能なレジスタで構成することが可能になる。同時に読み出しが必要な場合、レジスタはラッチもしくはフリップフロップで構成する必要があるが、1クロックあたり1アドレスのみ読み出し可能なレジスタはSRAMもしくはDRAMで構成可能となる。この場合、同一の記憶容量を実現するために、ラッチもしくはフリップフロップと比較して、SRAMもしくはDRAMは1/5以下の素子数で構成することが可能となる。また、読み出しに必要な配線数は従来技術の場合、各レジスタから読み出すため、n本必要であったが、本実施の形態に係るデータ変換装置の場合、1クロックあたり1アドレスのみの読み出しであるため1本となり、配線コストは1/nになる。また、従来技術で必要であったn−1セレクタが不必要となり、本実施の形態に係るデータ変換装置においては2つの巡回シフト回路が必要となる。回路コストを比較すると、n−1セレクタはO(n)の個数の2−1セレクタが必要であるのに対して、巡回シフト回路はO(log n)個の2−1セレクタで構成可能なため、従来技術よりも回路コストが減少し、より大きな多倍長データのサイズに対応可能となる。このよに、本実施の形態に係るデータ変換装置によれば、小規模な回路構成で高速なデータ変換が可能となるため、従来に比べてより大きなサイズの多倍長データに対応することができる。
実施の形態2.
本実施の形態では、実施の形態1のデータ変換装置1を用いた応用例を図9を参照して説明する。図中ハッシュ関数(SHA―1)処理部3は暗号化通信や認証等に用いられるアルゴリズムを処理する手段であり、多倍長のデータ(512bit)を処理することを特徴とする。ハッシュ関数を高速に処理する際のボトルネックとして、アルゴリズム自体の処理の他に、多倍長のデータを連続して供給するインターフェースが挙げられる。実施の形態1に示したデータ変換装置1を利用することで高速処理が可能となる。図9中外部からバースト転送等で連続して同一メモリ内に複数の多倍長データが分割して格納される。このとき処理するデータが512bitの倍数とは限らないため、その場合はパディング処理が必要となる。SHA−1のパディング処理は仕様上byte単位もしくはword単位等の少ないデータ長単位での処理が望ましいため、バッファ用メモリ部2からの読み出し直後に行う。このデータをデータ変換装置1にて連続して結合し、ハッシュ関数(SHA−1)処理部3へ入力することが可能となる。
実施の形態3.
本実施の形態では、実施の形態1の変換装置を用いた暗号化装置を図10を参照して説明する。図中ブロック暗号処理部4は、AES、Camellia等のブロック暗号処理を行う。一般的なブロック暗号は128bit単位で処理を行う。一方、暗号化の対象となるデータは文字コード(8bit等)や画像データ(16bit、32bit)であり、128bitよりも小さい単位で表されることが多い。そのため、暗号化前にパディング処理、圧縮処理、符号化等を行う場合は、そのデータ幅で処理することが望ましい。パディング処理等と暗号化処理を並列に処理する場合、メモリから小さいデータ幅(図10の場合8bit)で読み出されたデータを、連続して128bitのデータに結合する必要がある。パディング処理後のデータに対してデータ変換装置1を用いることで上述の問題点を解決することが可能となる。
実施の形態4.
図11、図12に外部入力バスとしてシリアルバスを用いた場合の例を示す。図中シリアル転送を行うクロックCLK1とデータ変換を行うクロックCLK2の関係はCLK1>>CLK2であるものとする。この場合、外部からシリアル転送で入力されるデータは、その属するデータ(DATA1〜DATAn)毎にバッファ用2portメモリ5に格納する。例えばDATA1に属するデータの場合、一番上に表記されているバッファ用2portメモリ内に格納され(図中○で囲まれた部分の一番上)、他のメモリには書き込まれない。○で囲まれた部分内においても書き込み制御を行い、転送されるデータのビットに対応するメモリに書き込みを行う。データ変換装置1はバッファ用2portメモリ5から所望のデータを読み出し、変換を行う。それと同時に、外部からは読み出しに使用しているアドレス以外の番地に対して新規データを格納する。これを各アドレスに対して交互に行うことで、連続して所望の多倍長データを得ることが可能となる。
CLK1<CLK2においても、一度転送したデータに対して複数回処理を行う場合、もしくは外部からの転送速度と比較して処理が遅い場合は上記の方式は有効になる。
また、上記の方式は、入力データ幅が処理データ幅と比較して小さければ(例えば入力データ幅32bit、処理データ幅512bit)有効性が保たれ、転送方式をシリアル転送に限定する必要はない(PCI等でも有効)。
実施の形態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を構成することとしている。
図16は1段毎に2i回巡回シフトしたデータとシフトしないデータを選択し、最終的に可変巡回シフトデータを得る方式による回路構成例である。つまり、巡回シフト数が相互に異なる複数の固定巡回シフタと、固定巡回シフタにより巡回シフト処理が行われたデータと巡回シフト処理の行われていないデータとのいずれかを選択して出力する複数の2−1セレクタと、2−1セレクタから出力されたデータを保持し、所定の場合に、保持しているデータを固定巡回シフタに出力するとともに、保持しているデータを固定巡回シフタを介さずに他の2−1セレクタに出力する複数の記憶素子(フリップフロップ:FF)とを用いて可変巡回シフト回路101、可変巡回シフト回路103を構成することとしている。図16の構成では、2iシフト実施後のデータとシフトなしのデータとを2−1セレクタで選択し、2−1セレクタを通過毎にフリップフロップに格納し、所望のシフト回数まで繰り返すことで実施の形態1に示した巡回シフト処理を実現する。1回(もしくは数回)の選択毎にフリップフロップに格納するパイプライン方式により、図13と比較して回路コストは増加するが、高速に動作可能となる。
ここで、以上の実施の形態1〜5に示したデータ変換装置の特徴を以下にて再言する。
実施の形態1〜4に示すデータ変換装置は、ubit毎にメモリ内に分割して格納された複数種類の異なる多倍長データをそれぞれu×nbitに結合するデータ変換装置であって、可変巡回シフト回路を用いて前記の入力データをubit単位で巡回シフトするデータの拡散手段と、前記の拡散手段による出力データを記憶するn個の深さn、データ幅ubitの記憶手段を有し、前記n個の記憶手段から各記憶手段毎に読み出しアドレスの制御を行い、記憶手段からの出力データを得る手段と、前記記憶手段からの出力データを可変巡回シフト回路を用いてデータを所望のデータに成形する手段を有することを特徴とする。
実施の形態5に示すデータ変換装置は、2つの可変巡回シフト回路を、それぞれn×u bit入力、2×(n×u)bit出力のバレルシフタと、n×u bitの2−1セレクタで構成することを特徴とする。
実施の形態5に示すデータ変換装置は、2つの可変巡回シフト回路を2iシフトとシフトなしを2−1セレクタで選択し、2−1セレクタを通過毎に記憶素子に格納し、所望のシフト回数まで繰り返すことで実現する構成としたことを特徴とする。
実施の形態1に係るデータ変換装置を含む回路構成図。 データ変換用メモリへのuビットデータの書き込み状況を示す図。 データ変換用メモリへのuビットデータの書き込み状況を示す図。 データ変換用メモリへのuビットデータの書き込み及び読み出し状況を示す図。 データ変換用メモリへのuビットデータの書き込み及び読み出し状況を示す図。 データ変換用メモリへのuビットデータの書き込み及び読み出し状況を示す図。 データ変換用メモリへのuビットデータの書き込み及び読み出し状況を示す図。 巡回シフトの例を示す図。 実施の形態2に係るデータ変換装置をハッシュ関数処理に応用した例を示す図。 実施の形態3に係るデータ変換装置をブロック暗号処理に応用した例を示す図。 実施の形態4に係るデータ変換装置を高速シリアルバスに接続した例を示す図。 実施の形態4に係るデータ変換装置を高速シリアルバスに接続した例を示す図。 従来の可変シフト回路の構成を示す図。 実施の形態5に係る可変巡回シフト回路の構成例を示す図。 実施の形態5に係る可変巡回シフト回路の処理例を示す図。 実施の形態5に係る可変巡回シフト回路の構成例を示す図。 従来のデータ変換回路の構成を示す図。
符号の説明
1 データ変換装置、2 バッファ用メモリ部、3 ハッシュ関数(SHA−1)処理部、4 ブロック暗号処理部、5 バッファ用2portメモリ、101 可変巡回シフト回路、102 データ変換用メモリ、103 可変巡回シフト回路。

Claims (9)

  1. 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の入出力部とを有することを特徴とするデータ変換装置。
  2. 前記記憶部は、
    記憶ブロックからのuビットデータの抽出及び抽出されたn個のuビットデータの出力を一定周期ごとに行い、各周期において共通のデータ属性を有するuビットデータを各記憶ブロックから1個ずつ抽出するとともに抽出の対象にするデータ属性を周期ごとに変化させ、各周期において、周期ごとにデータ属性が相違しているn個のuビットデータを前記第2の入出力部に出力し、
    前記第2の入出力部は、
    n個のuビットデータの入力及びu×nビットのデータの出力を一定周期ごとに行い、各周期において、周期ごとにデータ属性が相違しているn個のuビットデータを前記記憶部から入力するとともに周期ごとにデータ属性が相違しているu×nビットのデータを出力することを特徴とする請求項1に記載のデータ変換装置。
  3. 前記第1の入出力部は、
    n個のデータから分割されたn個のuビットデータを連続して入力し、
    前記記憶部は、
    データ出力時に、共通のデータから分割されたuビットデータを各記憶ブロックから1個ずつ抽出して共通のデータから分割されたn個のuビットデータを前記第2の入出力部に出力し、
    前記第2の入出力部は、
    共通のデータから分割されたn個のuビットデータを前記記憶部から入力し、共通のデータから分割されたn個のuビットデータからなるu×nビットのデータを出力することを特徴とする請求項1に記載のデータ変換装置。
  4. 前記記憶部は、
    記憶ブロックからのuビットデータの抽出及び抽出されたn個のuビットデータの出力を一定周期ごとに行い、各周期において共通のデータから分割されたuビットデータを各記憶ブロックから1個ずつ抽出するとともに抽出の対象にする分割元のデータを周期ごとに変化させ、各周期において、周期ごとに分割元のデータが相違しているn個のuビットデータを前記第2の入出力部に出力し、
    前記第2の入出力部は、
    n個のuビットデータの入力及びu×nビットのデータの出力を一定周期ごとに行い、各周期において、周期ごとに分割元のデータが相違しているn個のuビットデータを前記記憶部から入力するとともに周期ごとに分割元のデータが相違しているu×nビットのデータを出力することを特徴とする請求項3に記載のデータ変換装置。
  5. 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
    n個のuビットデータに対する巡回シフト処理の度にシフト数を変化させて巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。
  6. 前記第1の入出力部は、
    前記記憶部の各記憶ブロックが毎回異なるデータ属性のuビットデータを入力できるようにn個のuビットデータに対する巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。
  7. 前記第2の入出力部は、
    入力したn個のuビットデータが所定の順序で並ぶようにn個のuビットデータに対する巡回シフト処理を行うことを特徴とする請求項1に記載のデータ変換装置。
  8. 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
    入力がu×nビット、出力が2×(u×n)ビットのバレルシフタと、
    前記バレルシフタから出力された2×(u×n)ビットのデータについて上位u×nビットのデータと下位u×nビットのデータとのいずれかを選択して出力する2−1セレクタとから構成されていることを特徴とする請求項1に記載のデータ変換装置。
  9. 前記第1の入出力部及び前記第2の入出力部の少なくともいずれかは、
    巡回シフト数が相互に異なる複数の固定巡回シフタと、
    固定巡回シフタにより巡回シフト処理が行われたデータと巡回シフト処理の行われていないデータとのいずれかを選択して出力する複数の2−1セレクタと、
    2−1セレクタから出力されたデータを保持し、所定の場合に、保持しているデータを固定巡回シフタに出力するとともに、保持しているデータを固定巡回シフタを介さずに他の2−1セレクタに出力する複数の記憶素子から構成されたことを特徴とする請求項1に記載のデータ変換装置。
JP2003313395A 2003-09-05 2003-09-05 データ変換装置 Expired - Fee Related JP4252406B2 (ja)

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)

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) 半導体記憶装置
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
JP6219631B2 (ja) 論理演算装置
CN115220694A (zh) 随机数据生成电路及读写训练电路
JP2008140104A (ja) メモリシステム及びメモリアクセス方法
US20080079459A1 (en) Integrated circuit and input data controlling method for reconfigurable circuit
US5621337A (en) Iterative logic circuit
CN107222304B (zh) 一种多体并行s盒的电路结构
US20190268137A1 (en) Method and device for performing substitution table operations
US6170077B1 (en) Method for encoding a digital communication channel
KR100555190B1 (ko) 디지털영상처리장치
JP2005057452A (ja) プログラマブル論理回路
KR20060014420A (ko) 암호화/암호 해독용 장치, 메모리 요구량 감소 방법 및컴퓨터 프로그램 제품
JP3818863B2 (ja) 不揮発性半導体記憶装置
CN117725002A (zh) 数据传输方法、数据传输装置和电子设备
CN116150046B (zh) 一种高速缓存电路
KR0183171B1 (ko) 인터리버 및 디인터리버와 그 방법

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