JP5072558B2 - データ処理装置 - Google Patents

データ処理装置 Download PDF

Info

Publication number
JP5072558B2
JP5072558B2 JP2007313053A JP2007313053A JP5072558B2 JP 5072558 B2 JP5072558 B2 JP 5072558B2 JP 2007313053 A JP2007313053 A JP 2007313053A JP 2007313053 A JP2007313053 A JP 2007313053A JP 5072558 B2 JP5072558 B2 JP 5072558B2
Authority
JP
Japan
Prior art keywords
data
value
valid flag
flag
valid
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
JP2007313053A
Other languages
English (en)
Other versions
JP2009140040A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007313053A priority Critical patent/JP5072558B2/ja
Publication of JP2009140040A publication Critical patent/JP2009140040A/ja
Application granted granted Critical
Publication of JP5072558B2 publication Critical patent/JP5072558B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数の入力データから、必要なデータのみを選択し、これを高速に任意の間隔に配置して記憶装置に記憶するデータ処理装置に関するものである。
複数の入力データから必要なデータのみを取り出して、記憶装置に順番に詰めて書き込む間引き処理が必要とされることがある。通常行われるのは、対象となる入力データについて1つづつ順番に、要/不要を判断し、必要と判断された入力データをその前に書き込まれた入力データの次のアドレスに書き込む方法である。この処理をハードウェアで行う従来の方法として、図15に示すFIFOメモリ100を用いる方法がある。
この方法では、まず、各入力データとその入力データの要/不要を示す有効フラグとを組にして1組づつ順番に入力する。このとき、有効フラグの値が有効を示す「1」である入力データのみ、入力順にFIFOメモリ100に詰めて記憶する。図15の例では、入力データD1、D2、D3、D4、D5の内、D1、D4のみFIFOメモリ100に詰めて記憶する手順を示したものである。D1、D2、D3、D4、D5の順に入力データが入力され、各入力データが入力されるごとに有効フラグが「1」か「0」かを判断し、「1」であるD1、D4のみをFIFOメモリ100に記憶する。この結果、記憶すべき入力データD1、D4のみをFIFOメモリ100に詰めて記憶することができる。
別の従来技術として、特許文献1には、シリアル入力データの内、必要な入力データのみを詰めてパラレルに出力し、これをレジスタに書き込む方法が記載されている。この方法では、シリアルデータをパラレルデータに変換する際に、必要な入力データを、その直前の不要な入力データの数だけシフトレジスタによってデータ位置をシフトさせる。これによって、要/不要の入力データが混在して飛び飛びであったシリアルデータを、必要な入力データのみが詰めて配置されたパラレルデータに変換できる。
特開平8−123683号公報
しかしながら、FIFOメモリ100に詰めて記憶する方法では、入力データを1つづつ逐次的に処理せざるを得ないため、データ処理の高速化をはかることが出来ないという問題がある。また、特許文献1に記載の方法でも、シリアル入力のデータ1つづに対して、逐次そのシフト量を判定して、格納場所を決めていかなければならないため、処理速度を速くすることができないという問題がある。
さらに、対象のデータをレジスタではなく、RAM等のメモリに書き込む場合には、1回に1ワード単位(1ワードの大きさはそのメモリによる)でしか書き込めないという制限があるため、常に1ワード分データを詰めた状態になるまで蓄積しておいてから書き込まねばならないという問題も生じる。例えば、1ワード4ビットのメモリに書き込む場合を考えると、1回目の書き込みで、1ビットだけデータを書き込み、2回目の書き込みで残りの3ビット分を書き込むということができない。そのため、この従来技術の方法を使うと、4ビット分データが集まるまで、これをバッファしておいてから書き込まねばならないという問題がある。
本発明は、複数データから必要なデータのみ選択し、これを任意の幅に詰めてメモリに記憶する処理を、複数データに対して並列に行うことにより、高速にデータ処理を実施することを目的とする。
上記目的を達成するために、請求項1にかかる発明のデータ処理装置は、無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前の全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスを前記メモリの数で割算した際の「余り」に対応する番号のメモリの「商」に対応するアドレスに書き込まれる記憶装置と、を備え、前記有効を示す有効フラグを「1」以外の正又は負の整数値に設定することを特徴とする。
請求項2にかかる発明は、請求項1に記載のデータ処理装置において、前記複数のメモリに対して、前記有効フラグで有効と指定された各入力データを、前記入力アドレスを先頭アドレスとし、そこから有効フラグの値の数だけのメモリ位置に書き込むことを特徴とする。
請求項3にかかる発明は、無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前の全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、前記有効フラグ積算器で得られた有効フラグ積算値に拡大倍率をかけて新たな有効フラグ積算値として出力する乗算手段と、複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスを前記メモリの数で割算した際の「余り」に対応する番号のメモリの「商」に対応するアドレスに書き込まれる記憶装置と、を備えることを特徴とする。
請求項4にかかる発明は、請求項3に記載のデータ処理装置において、前記複数のメモリに対して、前記有効フラグで有効と指定された各入力データを、前記入力アドレスを先頭アドレスとし、そこから有効フラグの値と前記拡大倍率との積の値の数だけのメモリ位置に書き込むことを特徴とする。
請求項5にかかる発明は、無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前であってなおかつ当該データと同一サイクル内に処理される全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、前記サイクル数をカウントするサイクル数カウンタと、複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスに対応する番号のメモリの前記サイクル数カウンタに示される前記サイクル数に対応するアドレスに書き込まれる記憶装置と、を備えることを特徴とする。
本発明によれば、複数のデータから任意のデータを選択し、これを任意の幅に詰めてメモリに記憶する処理を、複数データに対して並列に行なうことが可能になる。これにより、例えば、画像や音声などの情報データの圧縮や拡大などの処理も高速に実行することができる。
<発明の概要>
図1A、1Bは、本発明のデータ処理装置によるデータ処理の流れを示したものである。この図では、例として、8個のデータD0、D1、D2、D3、D4、D5、D6、D7のうち、D0、D3、D4〜D7の6個のデータを選択して、データ番号の順番に詰めて記憶する場合を示す。データを4個づつ同時に入力し、記憶装置10の4つのメモリM0〜M3のアドレスの若い方からメモリM0、M1、M2、M3の順番に詰めて配置し、同時に書き込む。このようにすると、1回の書き込み処理で、1つのメモリに2つ以上のデータが同時に書き込まれることはないので、最大4つのデータを同時並行処理で書き込んでいくことが可能である。
図1Aでは最初の4つの入力データD0〜D3の処理について示している。各データは、その要/不要を1ビットで示す有効フラグ(「1」が有効、「0」が無効)を持ち、本データ処理装置では、この有効フラグによってデータの要/不要を判断する。入力データD0〜D3のうち、データD0、D3の有効フラグが「1」、残りのD1、D2の有効フラグが「0」となっている。すでに、メモリM0、M1、M2のアドレスAD0には、データが書き込まれているとすると、データD0は、この次のメモリM3のアドレスAD0に、データD3は、メモリM0のアドレスAD1にそれぞれ書き込む。
次の入力データD4〜D7の処理を図1Bに示す。入力データD4〜D7はすべて記憶対象であるので、それらの有効フラグはすべて「1」となっている。そして、入力データD4はメモリM1のアドレスAD1に、入力データD5はメモリM2のアドレスAD1に、入力データD6はメモリM3のアドレスAD1に、データD7はメモリM0のアドレスAD2にそれぞれ書き込む。
このようにして、8個の入力データD0〜D7のうち、記憶すべき6個の入力データD0、D3、D4〜D7が、メモリM0〜M3にアドレスの若い方からに詰めて書き込まれる。
図2A,2Bは、本発明のデータ処理装置によるデータ処理の動作説明図である。本データ処理装置では、入力データ線DATA0〜DATA3と、各入力データごとに要/不要を1ビットで示す有効フラグV0〜V3が接続される。そして、そこに入力するデータと有効フラグを組にして、4組づつ同時に入力し、並列処理する。
図2Aでは、1回目の入力データとして入力データ線DATA0〜DATA3に、それぞれデータD0〜D3が入力され、このうち、記憶すべきデータD0、D3の有効フラグV0、V3を「1」、残りのデータD1、D2の有効フラグV1、V2を「0」と設定している。図2Bは、2回目の入力に対する処理を示している。入力データ線DATA0〜DATA3に、それぞれデータD4〜D7が入力される。データD4〜D7のすべてを記憶するので、データD4〜D7に対する有効フラグV0〜V3はすべて「1」である。
入力されたデータは、有効フラグ積算器20によって、各データごとにそれより順番が前の全てのデータの有効フラグ値を合計した積算値をそれぞれ計算し、これを有効フラグ積算値として出力する。有効フラグ積算器20は、有効フラグ積算先頭値格納部21と、有効フラグ値同士を加算する3個の加算器22と、この加算器22の加算結果と有効フラグ積算先頭値格納部21の有効フラグ積算先頭値とを加算する4個の加算器23とを備える。
この例では、すでに3つのデータがメモリM0、メモリM1、メモリM2のアドレスAD0に書き込まれているので、有効フラグ積算値の先頭値である有効フラグ積算先頭値として「3」を与える。そして、データD0〜D3に対する有効フラグ積算値、および次計算サイクル(データD4〜D7に対する計算サイクル)で用いる有効フラグ積算先頭値を次のように計算する。
D0の有効フラグ積算値=有効フラグ積算先頭値
D1の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値
D2の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値
D3の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値+D2の有効フラグ値
次計算サイクルの有効フラグ積算先頭値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値+D2の有効フラグ値+D3の有効フラグ値
その結果、図2Aに示すように、データD0、D1、D2、D3に対する有効フラグ積算値はそれぞれ「3」、「4」、「4」、「4」となり、次計算サイクルの有効フラグ積算先頭値は「5」となる。
図2Bは、次サイクルのデータD4〜D7に対する計算処理を示している。有効フラグ積算先頭値として、前の計算サイクルで計算した値「5」を用いて、同様に以下の通り計算する。
D4の有効フラグ積算値=有効フラグ積算先頭値
D5の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値
D6の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値
D7の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値+D6の有効フラグ値
次計算サイクルの有効フラグ積算先頭値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値+D6の有効フラグ値+D7の有効フラグ値
この結果、図2Bに示すように、データD4、D5、D6、D7に対する有効フラグ積算値はそれぞれ「5」、「6」、「7」、「8」となり、次計算サイクルの有効フラグ積算先頭値は「9」となる。
こうして得られた有効フラグ積算値は、そのデータが有効フラグ「1」の全データのうち先頭から何番目にあるかを示すことになる。ただし、メモリM0のアドレスAD0にある先頭データを0番目として数えている。従って、データD0は3番目となる。一方、図2A、2Bの例では、有効フラグが「1」であるデータをメモリM0〜メモリM3のアドレスに順番に書き込んで行く。
従って、各データの有効フラグ積算値を4で割った「余り」がメモリM0〜メモリM3のどのメモリに書き込むかを示し、有効フラグ積算値を4で割った「商」が書き込むべきメモリのアドレスを示している。さらに、この例では、有効フラグ積算値を2進数で書いた場合、下位2ビットが有効フラグ積算値を4で割った「余り」にあたり、3ビット目以上の数値が有効フラグ積算値を4で割った「商」になるから、各データの有効フラグ積算値が、そのデータをどのメモリのどのアドレスに書き込むかを示すことになる。
例えば、図2BのデータD4に対する有効フラグ積算値は「5」で、これを2進数で表示すると「0101」となる。このうちの下位2ビットは「01」で10進数表示すると「1」であり、3ビット目以上は「01」で10進数表示すると「1」である。従って、データD4はメモリM1のアドレスAD1に書き込む。
このようにして、各データの有効フラグ積算値を計算した上で、有効フラグが「1」であるデータについて、有効フラグ積算値の下位2ビット値によってメモリを選択し、3ビット目以上の数値を当該メモリのアドレスとしてデータをメモリに書き込む。この方法によれば、4個の入力データに対して、書き込むべきデータを選択して、メモリに順番に詰めて書き込むという処理を同時に並行処理することができる。
以上の説明では、データを4個ずつ入力する構成で説明した。これは、通常、デジタル回路のデータ単位として、4バイト、8バイト、16バイトなどの2のn乗バイトが使用されるということ、および入力データ数が2、4、8、16のような2のn乗である方が構成が簡単であるということからこの例で説明したものであり、入力データ数が3、5、6等のように2のn乗でない数であっても、本発明を適用可能である。
入力データ数が2のn乗である方が構成が簡単になる理由は、次の通りである。実施例で、有効フラグ積算値を入力データ数(上記例では4)で割った「余り」と「商」を求める必要があるが、入力データ数が2のn乗個であるときは、割算回路を設ける必要がない。有効フラグ積算値は2進数で表されるので、例えば、入力データ数が4のとき、有効フラグ積算値の下2桁が「余り」、第3桁目以上が「商」となる。入力データ数が8の場合は、有効フラグ積算値を8で割った「余り」と「商」を求める必要があるが、有効フラグ積算値の下3桁が「余り」、第4桁目以上の部分が「商」となり、この場合も割算回路を設ける必要がない。
一方、入力データ数が2のn乗でない数である場合も、有効フラグ積算値を入力数で割った「余り」と「商」を計算すれば、同様に処理できるので、本発明を適用することができる。ただし、この場合は、入力データ数で有効フラグ積算値を割る割算回路を設ける必要がある。この例については、後記する。
<実施例1>
図3A、3Bは、本発明のデータ処理装置を用いて、複数の入力データのうち、必要なデータのみ選択して、レジスタ等の記憶装置10に詰めて書き込むようにした実施例1を示したものである。図2A,2Bの例と同じく、1回目の入力データD0〜D3、2回目の入力データD4〜D7のうち、6個のデータD0、D3、D4〜D7をメモリM0〜メモリM3にアドレスの若い方からに詰めて書き込む場合について説明する。
まず、本データ処理装置の構成を説明する。有効フラグ積算器20によって算出した各データの有効フラグ積算値のうち、下位2ビットの値をそれぞれAD0_X〜AD3_Xとして出力する。このAD0_X〜AD3_Xと、有効フラグV0〜V3をセレクタ制御信号生成回路30に入力する。一方、各データの有効フラグ積算値のうち、3ビット目以上の値をそれぞれAD0_Y〜AD3_Yとして出力する。このAD0_Y〜AD3_Yと、各入力データ線DATA0〜DATA3をデータセレクタ40に接続する。セレクタ制御信号生成回路30から、データセレクタ40の制御信号SEL0_S〜SEL3_Sを出力し、データセレクタ40に入力する。データセレクタ40からは、データ信号OUT_DATA0〜OUT_DATA3、データ書込アドレス信号OUT_AD0〜OUT_AD3、データ書込制御信号OUT_WE0〜OUT_WE3が出力し、それぞれメモリM0〜M3に入力する。
図4にセレクタ制御信号生成回路30の構成を示す。本モジュールは、複数の比較器31とアンド回路32からなり、有効フラグV0〜V3と、有効フラグ積算値の下位2ビット値であるAD0_X〜AD3_Xを入力し、データセレクタ制御信号SEL0_S〜SEL3_Sを出力する。このデータセレクタ制御信号SEL0_S〜SEL3_Sは、それぞれ4ビット幅の信号であり、次のように計算する。
SELn_S[0]=(AD0_X=n)&V0
SELn_S[1〕=(AD1_X=n)&V1
SELn_S[2]=(AD2_X=n)&V2
SELn_S〔3]=(AD3_X=n)&V3
ただし、n=0〜3
上記の式「 SELn_S[0]=(AD0_X=n)&V0 」の意味は、AD0_X=n且つV0=Trueのとき、SELn_S[0]=Trueを意味する。[0]は0ビット目を示す。
例えば、図3Aの例では、AD0_X=3、AD1_X=0、AD2_X=0、AD3_X=0であり、V0=1、V1=0、V2=0、V3=1であるので、SEL0_Sは、
SEL0_S[0]=0
SEL0_S[1〕=0
SEL0_S[2]=0
SEL0_S〔3]=1
となる。つまり、SEL0_S=1000となる。同様に、SEL1_S=0000、SEL2_S=0000、SEL3_S=0001と出力する。
図5にデータセレクタ40の構成を示す。データセレクタ40には、入力データ線DATA0〜DATA3と、各データの有効フラグ積算値の3ビット目以上の値AD0_Y〜AD3_Yが入力する。DATA0とAD0_X、DATA1とAD1_X、DATA2とAD2_X、DATA3とAD3_Xがそれぞれ組になって、データセレクタ40の4つのセレクタSEL0〜SEL3のすべてに入力する。そして、セレクタSEL0〜SEL3はそれぞれ、セレクタ制御信号生成回路30からの制御信号SEL0_S〜SEL3_Sに応じて、下記のように出力信号を切り替える。
SELn_S=0001のとき
OUT_DATAn←DATA0
OUT_ADn←AD0_Y
OUT_WEn←True
SELn_S=0010のとき
OUT_DATAn←DATA1
OUT_ADn←AD1_Y
OUT_WEn←True
SELn_S=0100のとき
OUT_DATAn←DATA2
OUT_ADn←AD2_Y
OUT_WEn←True
SELn_S=1000のとき
OUT_DATAn←DATA3
OUT_ADn←AD3_Y
OUT_WEn←True
SELn_Sが上記以外の値のとき
OUT_DATAn←Don’t care(任意の値を設定してよい)
OUT_ADn←Don’t care(任意の値を設定してよい)
OUT_WEn←False
ただし、n=0〜3
ここで、OUT_WEnは、メモリMnのライトイネーブル信号で、Trueのとき書込動作するものとする。
例えば、図3Aの例では、上記したように、
SEL0_S=1000
であるので、セレクタSEL0の出力は、OUT_DATA0=D3(=DATA3)、OUT_AD0=1(=AD3_Y)、OUT_WE0=True(=V3)となる。同様に、
OUT_DATA1=Don’t care、OUT_AD1=Don’t care、OUT_WE1=False
OUT_DATA2=Don’t care、OUT_AD2=Don’t care、OUT_WE2=False
OUT_DATA3=D0(=DATA0)、OUT_AD3=0(=AD0_Y)、OUT_WE3=True(=V0)
となる。
このような構成にすることにより、各入力データのうち、有効フラグ値が「1」であるデータのみが、その有効フラグ積算値の下位2ビット値ADn_Xで指定されるメモリの、ADn_Yで指定されるアドレスに書き込まれる。
本発明の有効フラグ積算器20は、有効フラグ同士を加算する加算器22と、その加算器22の加算結果と有効フラグ積算先頭値とを加算する加算器23からなる簡単な構造であるため、並列度の規模や加算器の性能にもよるが、有効フラグ積算値の計算、データのメモリヘの書込処理を通常1クロックづつで行うことも可能である。そして、複数の入力データに対して同時に並列処理することができるので、非常に高速にデータ処理を行うことが出来る。
<実施例2>
上記の実施例1では、入力データを4つづつ同時に入力して、記憶装置10の4個のメモリM0〜M3に書き込むようにしたが、本実施例2は、図6に示すように、入力データを4つづつ同時に入力して、記憶装置10Aの8個のメモリM0〜M7に書き込むようにしたものである。この場合には、各データの有効フラグ積算値を8で割った「余り」がメモリM0〜M7のどのメモリに書き込むかを示し、有効フラグ積算値を8で割った「商」が書き込むべきメモリのアドレスを示している。
従って、この例では、各データの有効フラグ積算値の下位3ビットをそれぞれAD0_X〜AD3_Xとし、有効フラグ積算値の4ビット目以上の値をAD0_Y〜AD3_Yとして、この値の示すアドレスに書き込むようにすればよい。
<実施例3>
本実施例3は、図7に示すように、入力データを4つづつ同時に入力して、これを記憶装置10Bの6個のメモリM0〜M5に書き込むようにしたものである。本装置は、各データの有効フラグ積算値を「6」で割り算する割算器50をもつ。そして、有効フラグ積算値を6で割った「余り」に応じてメモリM0〜M5のどのメモリに書き込むかを判断し、有効フラグ積算値を「6」で割った「商」によって書き込むべきメモリのアドレスを決定している。
<実施例4>
図2A、2B、図3A、3Bに示した有効フラグ積算器20では、各データの有効フラグ積算値として、そのデータより前にあるすべてのデータの有効フラグを合計して求めた。これに対して、図8A、8Bに示す本実施例4では、各データの有効フラグ積算値を、そのデータより前のすべてデータの有効フラグとそのデータ自身の有効フラグを加算することで求める構成にしている。その一方、有効フラグ積算先頭値を図2A,2B、図3A、3Bの方法より、「1」だけ小さい値を設定するようにする。このような本実施例の方法によっても、実施例1と同様の有効フラグ積算値を算出することが出来、有効フラグが「1」であるデータのみを選択して順に詰めて書き込むことが可能になる。
図8A、8Bは、実施例1(図3A、3B)と同じ入力データを入力した場合の、本実施例4によるデータ処理方法および構成を示している。まず、図8Aにおいては、有効フラグ積算先頭値の初期値として「2」を与える。そして、入力データD0〜D3に対する有効フラグ積算値、および次計算サイクル(D4〜D7に対する計算サイクル)で用いる有効フラグ積算先頭値を次のように計算する。
D0の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値
D1の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値
D2の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値+D2の有効フラグ値
D3の有効フラグ積算値=有効フラグ積算先頭値+D0の有効フラグ値+D1の有効フラグ値+D2の有効フラグ値+D3の有効フラグ値
次計算サイクルの有効フラグ積算先頭値=D3の有効フラグ積算値
その結果、図8Aに示すように、入力データD0〜D3に対する有効フラグ積算値はそれぞれ「3」、「3」、「3」、「4」となり、次計算サイクルめ有効フラグ積算先頭値は「4」となる。
図8Bは、次サイクルの入力データD4〜D7に対する計算処理を示している。有効フラグ積算先頭値として、前の計算サイクルで計算した値4を用いて、同様に以下の通り計算する。
D4の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値
D5の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値
D6の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値+D6の有効フラグ値
D7の有効フラグ積算値=有効フラグ積算先頭値+D4の有効フラグ値+D5の有効フラグ値+D6の有効フラグ値+D7の有効フラグ値
次計算サイクルの有効フラグ積算先頭値=D7の有効フラグ積算値
この結果、図8Bに示すように、入力データD4〜D7に対する有効フラグ積算値はそれぞれ「5」、「6」、「7」、「8」となり、次計算サイクルの有効フラグ積算先頭値は「8」となる。
このように本実施例4の方法によっても、有効フラグが「1」であるデータの有効フラグ積算値は、実施例1で得られる値と同じ値が算出できる。この得られた有効フラグ積算値を用いて、実施例1と同様の方法により、記憶装置10のメモリM0〜M3にデータを詰めて書き込むことができる。
<実施例5>
本実施例は、大きさが異なる入力データに対して、本発明の方法を適用した場合である。図9A、9Bに示した例では、入力データD0、D1、D3は1バイト、D2は2バイト、D4は3バイトとし、このうち、網掛け表示したD0、D2、D4のみ選択して順に詰めて記憶装置10に記憶した場合を示している。各データとも、単位データ量である1バイトに1つづつ有効フラグを持つようにしている。すなわち、2バイトのD2は2つ、3バイトのD4は3つの有効フラグをもつ。そして、記憶装置10に記憶したいデータの有効フラグは対応する有効フラグを「1」にする。このような入力データと有効フラグのペアに対して、実施例1〜4と同様の計算により、各データの1バイトごとに有効フラグ積算値を算出する。
図9Aでは、データD0の有効フラグ積算値が「0」であり、データD2の1バイト目、2バイト目の有効フラグ積算値は、それぞれ「1」、「2」となる。これから、D0、D2の1バイト目、D2の2バイト目をそれぞれメモリM0、M1、M2のアドレスAD0に書き込む。これによって、D0、D2を詰めてメモリM0、M1、M2に書き込むことが出来る。
同様に、図9Bでは、記憶すべきデータD4の1バイト目、2バイト目、3バイト目の有効フラグ積算値はそれぞれ「3」、「4」、「5」と求められるので、それぞれメモリM3のアドレスAD0、メモリM0のアドレスAD1、メモリM1のアドレスAD1に書き込む。この結果、1バイトのデータD0、2バイトのデータD2、3バイトのデータD4のみ取り出して、図9Bに示すように、メモリに順に詰めて記憶する処理を4バイトづつ高速に実行することが出来る。
<実施例6>
以上の実施例1〜5では、各データの有効フラグ値を「0」又は「1」に設定した。これに対して、本実施例6では、各データの有効フラグ値を例えば「0」又は「2」、「3」などのように、「1」以外の値に設定することにより、データの間隔をもとの入力時の間隔より広げる処理を可能にするものである。
図10Aに示した例では、入力データD0〜D3に対する有効フラグ値を全て「2」と設定して、実施例1と同様の方法で、有効フラグ積算値を算出する。すると、データD0〜D3に対する有効フラグ積算値は、それぞれ「0」、「2」、「4」、「6」となる。これらの値から、各データD0、D1、D2、D3を記憶装置10AのメモリM0、M2、M4、M6のアドレスAD0に書き込む。これにより、図10Aに示すように、データD0〜D3が記憶装置10Aの1つおきのメモリに書き込まれ、データ間隔を拡げて書くことが出来る。
ただし、この例において、書込先のメモリが1度に1つのアドレスヘの書込しかできないタイプのメモリである場合は、入力データの数(この場合4)の2倍の8個ないしそれ以上の個数のメモリを用意する必要がある。8個未満の場合、同一のメモリの異なるアドレスに同時に書込動作が行われる可能性があるためであり、注意が必要である。
図10Aに示した例では、メモリM1、M3、M5、M7にはデータを書き込まず空白としていた。これに対して、図10Bの例は、メモリM0とM1にデータD0、メモリM2とM3にデータD1、メモリM4とM5にデータD2、メモリM6とM7にデータD3を、それぞれ書き込むようにすることも出来る。各データに対して、その有効フラグ積算値を先頭アドレスとして、そこから有効フラグ値の数だけのメモリ位置に各データを書き込むようにする。これにより、例えば、画像データをより面積の広い画像に拡大処理することなどにも応用できる。
図10Cに示すように、入力データのうち、任意のデータのみ選んで、これを指定した間隔で並べることも可能である。図10Cの例では、入力データD0〜D3のうち、D0、D2、D3の有効フラグを「2」、D1の有効フラグを「0」と設定する。実施例1などと同様の計算により、D0〜D3の各データの有効フラグ積算値を算出すると、それぞれ、「0」、「2」、「2」、「4」となる。このうち、有効フラグが「0」でないD0、D2、D3を、その有効フラグ積算値をアドレスとして記憶装置に書き込むと、図10Cのように、D0、D2、D3がメモリM0、M2、M4のアドレスAD0に書き込まれる。
図10Dは、図10Cと入力データ、有効フラグ値、算出された有効フラグ積算値は同じだが、図10Bと同じように、各データ間を空白とせず、その前のデータで埋めるようにしたものである。各データに対して、その有効フラグ積算値を先頭アドレスとして、そこから有効フラグ値の数だけのメモリ位置に各データを書き込むようにする。これにより、例えば、画像データをより面積の広い画像に拡大処理することも可能になる。図10Bの場合は一律にデータを拡大することができたが、図10Dのようにすれば、画像データの任意の領域を選んでこれを拡大するということも可能になる。
図10Eのように、各データの有効フラグ値を任意に設定して、データ選択およびデータ間隔を任意に設定することもできる。入力データD0〜D3に対する有効フラグ値をそれぞれ「2」、「0」、「3」、「2」に設定すると、有効フラグ積算値はそれぞれ「0」、「2」、「2」、「5」となる。このうち、有効フラグ値が「0」でないデータD0、D2、D3をそれぞれの有効フラグ積算値に応じて、それぞれメモリM0、M2、M5のアドレスAD0に書き込まれる。
このように、有効フラグを「0」に設定したデータD1を除き、さらにその他のデータD0、D2、D3を、それぞれ設定した有効フラグ値の間隔で記憶装置10Aに書き込むことが可能になる。この場合も、図9A、9Bと同様、データ間の空白領域にその前後のデータ等を書き込むことも可能であることは言うまでもない。本実施例に示したように、本発明の方法により、有効フラグ値の設定によって、任意のデータを選択して、これを任意の間隔に配置することが可能になる。
<実施例7>
上記実施例6においては、各データの有効フラグ値として、「2」や「3」などのデータ拡大率を設定することによって、入力時の間隔より広げて出力する方法を示した。これに対し、本実施例は、有効フラグ積算器20において、入力された有効フラグ値に拡大倍率をかけた値を積算するようにしたものである。
図11Aに示す例では、入力データD0、D1、D2、D3と、それぞれの有効フラグ値「1」、「0」、「1」、「1」が入力されている。これに対して、有効フラグ積算器20で、各有効フラグ値をデータ拡大倍率2をかけた値を積算するようにしている。この結果、出力される有効フラグ積算値は、それぞれ「0」、「2」、「2」、「4」となる。このうち、有効フラグ積算値が「0」でないデータD0、D2、D3を、その有効フラグ積算値をもとに実施例1などの方法に基づき、記憶装置10Aの各メモリに書き込む。その結果、データD1を除くデータD0、D2、D3が、メモリM0、M2、M4のアドレスAD0に書き込まれ、指定した間隔「2」に拡大して記憶装置10A上に配置することが出来る。
図11Bは、本実施例の有効フラグ積算器20周辺の構成を示したものである。図3Aに示した実施例1の有効フラグ積算器10の出力値を、データ拡大倍率だけ乗じる乗算器60に入力し、その結果を出力するように構成されている。
図11Cは、乗算器60を用いる代わりにシフト演算器60Aを用いたものである。例えば、データ拡大倍率を2倍、4倍とするときは、入力値を左にそれぞれ1シフト、2シフトすればよい。図11A、11Bでは、入力データに対して一律のデータ拡大倍率を乗じる場合を示したが、各データごとにデータ拡大倍率を可変に設定できるように構成してもよい。また、図10A〜図10Eに示した実施例6と同様に、データ間の空白領域にその前後のデータ等を書き込むように構成してもよい。
<実施例8>
以上の実施例1〜7では、入力データのうち有効フラグ値が「0」でないデータ全てを順番に詰めて並べるため、全入力データの有効フラグ値を積算していく構成としていた。これに対して、本実施例では、有効フラグ積算器20Bにおいて、1回の入力データごとの有効フラグ積算値を算出して記憶装置10のメモリに書き込んでいく。このために、有効フラグ積算先頭値は、毎回同じ固定値を設定する。
図12Aの例は、各入力データのうち、有効フラグ値が「1」のデータのみ左詰めにして出力し、これをFIFOメモリを使用した記憶装置10Cに書き込んでいくように構成したものである。まず、最初の入力データ0(=D0、D1、D2、D3、有効フラグ=「1」、「0」、「0」、「1」)に対して、有効フラグ積算先頭値を「0」として、各データの有効フラグ積算値を算出し、それぞれ「0」、「1」、「1、「1」を得る。このうち、有効フラグ値が「1」であるデータD0とD3をその有効フラグ積算値の値に従って左から順に並べて出力する。これにより、有効フラグ値が「1」であるD0とD3が左詰めで出力される。
次に、2回目の入力データ1(=D4、D5、D6、D7、有効フラグ=「1」、「0」、「1」、「0」)に対しても、有効フラグ積算先頭値を「0」として、各データの有効フラグ積算値を算出する。その結果、それぞれ「0」、「1」、「1」、「2」を得る。このうち、有効フラグ値が「1」であるD4、D6をその有効フラグ積算値の値に従って左から順に並べて出力する。そして、出力したデータを、記憶装置10の2つのメモリFIFO_0、FIFO_1に書き込むようにする。このように構成することにより、選択したデータのみ2つのメモリFIFO_0、FIFO_1に順に詰めて書き込んでいくことが可能になる。
図12Bの例は、図12Aの構成において、2つのメモリFIFO_0、FIFO_1を有する記憶装置10Cの代わりに、アドレス指定して書き込むメモリM0、メモリM1を有する記憶装置10D用い、さらに、有効フラグ積算器20B内に、データの入力回数を数えるカウンタ24を備えていて、このカウンタ値が示す値を記憶装置10Dヘの書込アドレスとして利用するものである。
まず、最初の入力データ0に対して、有効フラグ値が「1」であるデータD0とD3の有効フラグ積算値はそれぞれ「0」、「1」と算出されるので、それぞれメモリM0、M1に書き込む。書き込むアドレスAD_Yは、データ数カウンタ値に従いAD0とする。
次に、2回目の入力データ1に対しては、有効フラグ値が「1」であるデータD4とD6の有効フラグ積算値はそれぞれ「0」、「1」で、データ数カウンタ値は「1」となるので、それぞれメモリM0、M1の次のアドレスAD1に書き込む。このように構成することにより、選択したデータのみを2つのメモリM0、M1に順に詰めて書き込んでいくことが可能になる。
図12A、図12Bに示した有効フラグ積算器20Bでは、各データの有効フラグ積算値を、各入力ごとにそのデータより前のデータの有効フラグを合計して求めるようにしている。この代わりに、図12Cに示す構造の有効フラグ積算器20Cを用いても良い。図12Cに示す有効フラグ積算器20Cでは、各データの有効フラグ積算値を、各入力ごとにそのデータより前のデータの有効フラグの合計値とそのデータ自身の有効フラグを加算することで求める構成にしている。その一方、有効フラグ積算値を「−1」に設定するようにする。このように構成した有効フラグ積算器20Cの出力値を用いても、図12A、12Bと同様の機能を得ることができる。
なお、この実施例8では、有効フラグが「1」であるデータが2つ以内である必要がある。これ以外のときは、エラー処理するような手段を設ける。また、以上の説明では、有効フラグ積算先頭値として「0」(図12A、12B)又は「−1」(図12C)に固定した場合を例に説明したが、この値は「0」、「−1」以外の値に設定してもよいし、さらに各入力ごとにこの値を可変に設定できるようにしてもよい。これによって、各入力ごとに先頭の有効なデータの出力先メモリを変えることが可能となる。
<実施例9>
上記の実施例1〜8の有効フラグ積算器20、20A、20B、20Cでは、有効フラグ値を外部から入力するようにしたが、図13に示すように、各入力データに対する有効フラグ値を、内部で設定するようにした有効フラグ積算器20Dとしてもよい。このとき、設定する有効フラグ値は固定値でもよいし、各データごとに動的に設定してもよい。
<実施例10>
以上の実施例1〜9では、有効フラグ値として、「0」又は「正の整数値」をとる場合を例に説明したが、その代わりに、「0」又は「負の整数値」をとるようにしてもよい。このとき、算出される有効フラグ積算値は、「0」、「−1」、「−2」などとなるが、それぞれに対応するデータを記憶装置のアドレスAD0、AD1、AD2に書き込むようにすることで、同様のデータ処理を行うことができる。
<実施例11>
また、有効フラグ値は、「0」又は「正の整数値」、あるいは「0」又は「負の整数値」のどちらかに限定されるわけではない。有効フラグ値として、「0」、「正の整数値」、「負の整数値」をとるようにすることで、入力データの順番を入れ替えることができる。
図14A、14Bは本実施例11を説明する図である。この例では、図8A、8Bで示した実施例4の構造の有効フラグ積算器20Aを用い、有効フラグ先頭値を「−1」に設定している。まず、1組目の入力として、有効フラグ値がそれぞれ「1」、「2」、「−1」、「2」である入力データD0〜D3を入力している。(図14A)。こらから有効フラグ積算値を求めると、それぞれ「0」、「2」、「1」、「3」となる。これに従って、有効フラグ値が「0」でない入力データD0〜D3をその有効フラグ積算値に従って、それぞれ記憶装置10のメモリM0、M2、M3に書き込む。この結果、データD0、D1、D2、D3の順で入力されたデータを、D0、D2、D1、D3と、D2の順番を入れ替えて、メモリに書き込むことができる。
続いて、2組目の入力データD4〜D7の処理を説明したのが図14Bである。この例では、入力データD4〜D7の有効フラグ値は、それぞれ「3」、「0」、「−1」、「−1」となっている。これから有効フラグ積算値を求めると、それぞれ「6」、「6」、「5」、「4」となる。このうち有効フラグ値が「0」でない入力データD4、D6、D7をその有効フラグ積算値に従って、それぞれメモリM2、M1、M0に書き込む。この結果、入力データD4〜D7からD5を除いた3つのデータを、D7、D6、D4と順番を入れ替えて、詰めてメモリに書き込むことが出来る。以上のように、本実施例11によれば、選択したデータのみを任意の順番に入れ替えて、記憶装置のメモリに書き込んでいくことが可能になる。
本発明のデータ処理の概略説明図である。 本発明のデータ処理の概略説明図である。 本発明のデータ処理装置の動作説明図である。 本発明のデータ処理装置の動作説明図である。 本発明の実施例1のデータ処理装置の動作説明図である。 本発明の実施例1のデータ処理装置の動作説明図である。 本発明の実施例1のデータ処理装置のセレクタ制御信号生成回路の構成を示す回路図である。 本発明の実施例1のデータ処理装置のデータセレクタの構成を示す回路図である。 本発明の実施例2のデータ処理の概略説明図である。 本発明の実施例3のデータ処理の概略説明図である。 本発明の実施例4のデータ処理装置の動作説明図である。 本発明の実施例4のデータ処理装置の動作説明図である。 本発明の実施例5のデータ処理の概略説明図である。 本発明の実施例5のデータ処理の概略説明図である。 本発明の実施例6のデータ処理の概略説明図である。 本発明の実施例6のデータ処理の概略説明図である。 本発明の実施例6のデータ処理の概略説明図である。 本発明の実施例6のデータ処理の概略説明図である。 本発明の実施例6のデータ処理の概略説明図である。 本発明の実施例7のデータ処理の概略説明図である。 本発明の実施例7のデータ処理装置の動作説明図である。 本発明の実施例7のデータ処理装置の動作説明図である。 本発明の実施例8のデータ処理装置の動作説明図である。 本発明の実施例8のデータ処理装置の動作説明図である。 本発明の実施例8のデータ処理装置の動作説明図である。 本発明の実施例9のデータ処理装置の動作説明図である。 本発明の実施例11のデータ処理装置の動作説明図である。 本発明の実施例11のデータ処理装置の動作説明図である。 従来のデータ処理装置の動作説明図である。
符号の説明
10、10A、10B、10C、10D:記憶装置
20、20A、20B、20C、20D:有効フラグ積算器
30:セレクタ制御信号生成回路
40:データセレクタ
50:割算器
60:乗算器
70:シフト演算器

Claims (5)

  1. 無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、
    前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前の全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、
    複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスを前記メモリの数で割算した際の「余り」に対応する番号のメモリの「商」に対応するアドレスに書き込まれる記憶装置と、
    を備え
    前記有効を示す有効フラグを「1」以外の正又は負の整数値に設定する
    ことを特徴とするデータ処理装置。
  2. 請求項1に記載のデータ処理装置において、
    前記複数のメモリに対して、前記有効フラグで有効と指定された各入力データを、前記入力アドレスを先頭アドレスとし、そこから有効フラグの値の数だけのメモリ位置に書き込む
    ことを特徴とするデータ処理装置。
  3. 無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、
    前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前の全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、
    前記有効フラグ積算器で得られた有効フラグ積算値に拡大倍率をかけて新たな有効フラグ積算値として出力する乗算手段と、
    複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスを前記メモリの数で割算した際の「余り」に対応する番号のメモリの「商」に対応するアドレスに書き込まれる記憶装置と、
    を備えることを特徴とするデータ処理装置。
  4. 請求項3に記載のデータ処理装置において、
    前記複数のメモリに対して、前記有効フラグで有効と指定された各入力データを、前記入力アドレスを先頭アドレスとし、そこから有効フラグの値と前記拡大倍率との積の値の数だけのメモリ位置に書き込む
    ことを特徴とするデータ処理装置。
  5. 無効を示す「0」、又は有効を示す正の整数値、又は有効を示す負の整数値を持つ有効フラグと対になり、且つ順序関係をもって連続して入力する複数の入力データを、1サイクル毎に処理するデータ処理装置において、
    前記入力データを前記1サイクル毎に前記順序関係に沿って所定数ずつ取り込み、当該データより順序が前であってなおかつ当該データと同一サイクル内に処理される全てのデータの有効フラグの値の合計値、又はこれに当該データの有効フラグの値を加算した値を当該データの有効フラグ積算値として出力する有効フラグ積算器と、
    前記サイクル数をカウントするサイクル数カウンタと、
    複数のアドレスを有する複数のメモリからなり、前記有効フラグで有効と指定されたデータが、当該データに対応する前記有効フラグ積算値を入力アドレスとし、該入力アドレスに対応する番号のメモリの前記サイクル数カウンタに示される前記サイクル数に対応するアドレスに書き込まれる記憶装置と、
    を備える
    ことを特徴とするデータ処理装置。
JP2007313053A 2007-12-04 2007-12-04 データ処理装置 Expired - Fee Related JP5072558B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007313053A JP5072558B2 (ja) 2007-12-04 2007-12-04 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007313053A JP5072558B2 (ja) 2007-12-04 2007-12-04 データ処理装置

Publications (2)

Publication Number Publication Date
JP2009140040A JP2009140040A (ja) 2009-06-25
JP5072558B2 true JP5072558B2 (ja) 2012-11-14

Family

ID=40870616

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007313053A Expired - Fee Related JP5072558B2 (ja) 2007-12-04 2007-12-04 データ処理装置

Country Status (1)

Country Link
JP (1) JP5072558B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014116448A1 (de) * 2014-11-11 2016-05-12 Infineon Technologies Ag Verfahren und Vorrichtung zur Verarbeitung von Radarsignalen

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62254248A (ja) * 1986-04-25 1987-11-06 Omron Tateisi Electronics Co Icカ−ド書込読取装置
JP3726971B2 (ja) * 1994-10-27 2005-12-14 ソニー株式会社 並列プロセツサ装置
JPH1011354A (ja) * 1996-06-19 1998-01-16 Olympus Optical Co Ltd アドレスデータ生成装置
JP2002050172A (ja) * 2000-08-03 2002-02-15 Nec Eng Ltd Fifo制御回路
JP4920559B2 (ja) * 2007-11-15 2012-04-18 日本電信電話株式会社 データ処理装置

Also Published As

Publication number Publication date
JP2009140040A (ja) 2009-06-25

Similar Documents

Publication Publication Date Title
JPH0612487A (ja) 画像データのためのサンプルレート変換器
JP5549442B2 (ja) Fft演算装置
KR930001689A (ko) 이미지 버퍼를 이용한 전자 주밍 시스템
JP5072558B2 (ja) データ処理装置
JP4920559B2 (ja) データ処理装置
CN115908132A (zh) 基于三次卷积插值法的图像缩放处理方法及装置
JP2541758B2 (ja) 剰余算出回路
US20210082082A1 (en) Data processing method and processing circuit
JP4748007B2 (ja) Ldpc復号器の演算制御データ生成方法及びldpc復号器
JP2001056806A (ja) 高速フーリエ変換装置
JPH0767063B2 (ja) デジタル信号処理回路
KR100235537B1 (ko) 디지털 필터의 가변탭 구조 및 그의 곱셈회로
JP4156538B2 (ja) 行列演算装置
JPS58151644A (ja) デイジタル演算装置
JP2001160736A (ja) デジタルフィルタ回路
WO2020084694A1 (ja) 演算処理装置及び演算処理装置の制御方法
JP3288273B2 (ja) 除算回路及びこれに用いる部分除算器
JP4197245B2 (ja) 楕円曲線演算装置及び変換装置及び楕円曲線演算装置の楕円曲線演算方法及びプログラム及びコンピュータ読み取り可能な記録媒体
JP2005165502A (ja) Lut符号化方法及びlut符号化装置並びにlutカスケード論理回路
JP2001177378A (ja) Firデジタルフィルタ
JPH1153344A (ja) 行列演算装置及びそれを有する数値演算プロセッサ
JPH09147097A (ja) データ補間装置
JPH1049347A (ja) 乗算器
KR950005801B1 (ko) 그래픽 시스템의 영상데이타 전송 회로
JPH0743698B2 (ja) 並列デ−タ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120802

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: 20120821

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: 20120821

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: 20150831

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees