JP2000029668A - データ丸め方法およびデータ丸め装置 - Google Patents

データ丸め方法およびデータ丸め装置

Info

Publication number
JP2000029668A
JP2000029668A JP10198433A JP19843398A JP2000029668A JP 2000029668 A JP2000029668 A JP 2000029668A JP 10198433 A JP10198433 A JP 10198433A JP 19843398 A JP19843398 A JP 19843398A JP 2000029668 A JP2000029668 A JP 2000029668A
Authority
JP
Japan
Prior art keywords
data
rounding
bits
bit
impulse response
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.)
Granted
Application number
JP10198433A
Other languages
English (en)
Other versions
JP4196434B2 (ja
Inventor
Shigeaki Suzuki
茂明 鈴木
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 JP19843398A priority Critical patent/JP4196434B2/ja
Publication of JP2000029668A publication Critical patent/JP2000029668A/ja
Application granted granted Critical
Publication of JP4196434B2 publication Critical patent/JP4196434B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 正および負の2進数値に対して対称な丸め結
果を与え、また、丸め前のデータの正負の判断を不要に
するデータ丸め方法およびデータ丸め装置を提供する。 【解決手段】 n−mビット(n,mは整数で、n>
m)の第1のデータの最下位ビットに続けて、丸め前デ
ータの上位mビットを合成し、nビットの第2のデータ
を生成する。そして、丸め前データと第2のデータを加
算して得たnビットの第3のデータの下位mビットを切
り捨て、得られたデータを丸め結果とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディジタル化され
た数値を丸めるためのデータ丸め方法およびデータ丸め
装置に関するものである。
【0002】
【従来の技術】ディジタル計算機などにおいて、2つの
2進数値データの乗算を行う場合、その乗算結果として
得られる2進数値データを表現するために必要なビット
数は、元のデータのビット数よりも大きくなる。例え
ば、nビット計算機において乗算を行う場合、通常、乗
算前の2つの2進数値データはnビットであるが、その
乗算結果は、2nビットのデータとなる。
【0003】しかしながら、その乗算結果を記憶する場
合、ビット数をnビットに丸める必要が生じることが多
い。このようなとき、最も簡単な丸め方式は、下位nビ
ットを切り捨てる方法である。しかし、この方法では、
正および負の数値に対して対称な丸め結果が得られな
い。
【0004】図9は、単純な切り捨てによる丸めを行っ
た場合の丸め結果を示す例である。具体的には、図9
は、8ビットの2進数値を丸めて、4ビットの2進数値
を得る場合の様子を図式的に示したものである。なお、
同図において、丸め前の8ビットデータの小数点位置
が、下位4ビット目と5ビット目の間にあるものとし、
データは、2の補数形式で表現されているものとする。
【0005】図9の(a)から分かるように、丸め前の
データが正の数値3.75である場合、丸め後のデータ
は3.0となり、また、同図の(b)からは、丸め前の
データが負の数値−3.75である場合、丸め後のデー
タは−4.0となることが分かる。つまり、正および負
の数値に対して対称な丸め結果が得られない。そして、
このような丸め方式を、信号処理などでよく見られる、
一連の積和演算に用いると、丸め誤差が負の方向に蓄積
されて、著しい演算精度の劣化が生じる、という不都合
がある。
【0006】この不具合を避けるため、従来より使用さ
れている方法として、図10に示すようなデータ丸め方
式がある。図10は、特開昭64−58020号公報に
開示された「数値丸め処理方式」の流れを示すフローチ
ャートであり、あるデータAの下位kビットの丸め結果
Bを得る場合の丸め方式を説明するものである。
【0007】図10のステップS1において、丸め前の
データAに2k-1を加算し(加算結果をA´とする)、
ステップS2では、この加算後のデータA´の下位kビ
ットを切り捨てている。これは、四捨五入である。四捨
五入は、切り捨てを実施する前に、切り捨てられるビッ
ト中の最上位ビットのみが1で、他のビットが全て0で
あるデータを加算した後、切り捨てを実施するもので、
図11の(a),(b)は、この四捨五入による丸めを
行った場合の丸め結果を示す例である。
【0008】図11の(a)に示すように、丸め前のデ
ータが正の数値3.75のとき、丸め後は4.0、ま
た、(b)に示すように、丸め前のデータが負の数値−
3.75のとき、丸め後は−4.0となっている。つま
り、図11に示す方法では、正および負の数値に対して
対称な丸め結果が得られる。
【0009】しかしながら、図12に示すように、丸め
前のデータにおいて、切り捨てられるビット中の最上位
ビットのみが1で、その他が0である場合、上記の方法
には問題がある。図11を参照すると、丸め前のデータ
が正の数値3.5のとき、丸め後は4.0、また、丸め
前のデータが負の数値−3.5のとき、丸め後は−3.
0となっており、正および負の数値に対して、対称な丸
め結果が得られていない。
【0010】一方、正および負の2進数値に対して、常
に対称な丸め結果を与える方式として、例えば、特開昭
48−27648号公報に示す「丸め装置」がある。こ
の公報に示された丸め処理は、丸め前のデータが正の場
合、切り捨てを実施する前に、切り捨てられるビット中
の最上位ビットのみが1で、その他のビットが0である
データを加算した後に、切り捨てを実施する。また、こ
の処理では、丸め前のデータが負の場合、切り捨てを実
施する前に、切り捨てられるビット中の最上位ビット
と、それ以上のビットが0で、その他のビットが1であ
るデータを加算した後に、切り捨てを実施している。こ
のような丸め処理によれば、あらゆる場合において、正
および負の2進数値に対して、対称な丸め結果を与える
ことが可能となる。
【0011】
【発明が解決しようとする課題】しかしながら、上記従
来の丸め方式では、正および負の数値に対して対称な丸
め結果が得られないか、あるいは、丸め前のデータが正
の場合と負の場合とで処理が異なるため、その正負の判
断が必要となる。そして、この判断を行って、対称な丸
め結果を得ようとすると、その処理が非常に複雑とな
る、という問題がある。
【0012】また、従来の丸め方式を、例えば、適応フ
ィルタに用いた場合にも、正および負の2進数値に対し
て、対称な丸め結果が得られないため、インパルス応答
の推定精度が良くならない、という問題がある。
【0013】本発明は、上述の課題に鑑みてなされたも
ので、その目的とするところは、正および負の2進数値
に対して、対称な丸め結果を与えるとともに、丸め前の
データの正負を判断する必要のないデータ丸め方法およ
びデータ丸め装置を提供することである。
【0014】
【課題を解決するための手段】上記の目的を達成するた
め、第1の発明は、データの下位ビットに丸め処理を施
すことによって所定ビット数の丸め結果を得るデータ丸
め方法において、nビットの丸め前データを保持する工
程と、n−mビット(n,mは整数で、n>m)の第1
のデータを保持する工程と、上記第1のデータに、その
最下位ビットに続けて、上記丸め前データの上位mビッ
トを合成して、nビットの第2のデータを生成する工程
と、上記丸め前データと上記第2のデータを加算する工
程と、上記加算後のnビットデータの下位mビットを切
り捨てて第3のデータを得る工程とを備え、 この第3
のデータを上記丸め結果とするデータ丸め方法を提供す
る。
【0015】第2の発明は、上記第1の発明に記載のデ
ータ丸め方法を使用して所定データの丸め結果を算出す
るデータ丸め装置を提供する。
【0016】また、第3の発明は、未知のシステムのイ
ンパルス応答推定データと所定の参照信号とに畳み込み
演算を行って擬似応答信号を発生する手段と、上記擬似
応答信号と上記未知のシステムからの応答信号との差分
をもとに、上記インパルス応答推定データの修正量を算
出する手段と、上記修正量と上記インパルス応答推定デ
ータを加算して新たなnビットのインパルス応答推定デ
ータを算出する手段とを備える適応フィルタで使用する
データ丸め方法において、あらかじめ保持したn−mビ
ット(n,mは整数で、n>m)の第4のデータの最下
位ビットに続けて、上記新たなnビットのインパルス応
答推定データの上位mビットを合成して、nビットの第
5のデータを生成する工程と、上記新たなnビットのイ
ンパルス応答推定データと上記第5のデータを加算する
工程と、上記加算後のnビットデータの下位mビットを
切り捨てて第6のデータを得る工程とを備え、この第6
のデータを次回の処理におけるインパルス応答推定デー
タとするデータ丸め方法を提供する。
【0017】そして、第4の発明は、未知のシステムの
インパルス応答推定データと所定の参照信号とに畳み込
み演算を行って擬似応答信号を発生する手段と、上記擬
似応答信号と上記未知のシステムからの応答信号との差
分をもとに、上記インパルス応答推定データの修正量を
算出する手段と、上記修正量と上記インパルス応答推定
データを加算して新たなnビットのインパルス応答推定
データを算出する手段とを備える適応フィルタで用いる
データ丸め方法において、あらかじめ保持したn−mビ
ット(n,mは整数で、n>m)の第7のデータの最下
位ビットに続けて、上記修正量の上位mビットを合成し
て、nビットの第8のデータを生成する工程と、上記修
正量と上記第8のデータを加算する工程と、上記加算後
のnビットデータの下位mビットを切り捨てて第9のデ
ータを得る工程とを備え、この第9のデータを、上記イ
ンパルス応答推定データに加算する上記修正量とするデ
ータ丸め方法を提供する。
【0018】
【発明の実施の形態】以下、添付図面を参照して、本発
明に係る実施の形態を説明する。 実施の形態1.図1は、本発明の実施の形態1に係る、
データ丸め方式を実現する丸め処理回路の構成を示すブ
ロック図である。なお、本実施の形態に係る丸め処理回
路は、nビットのデータをn−mビットに丸める処理を
行う。
【0019】図1に示す丸め処理回路は、丸め前のデー
タを保持するレジスタ101、「0」が格納されたレジ
スタ102、nビット加算器103、そして、丸め結果
を保持するレジスタ104より構成される。
【0020】以下、本実施の形態に係る丸め処理回路の
動作について説明する。レジスタ101は、丸め前のn
ビットデータを保持する。レジスタ102は、n−mビ
ットのレジスタであり、ここでは、全てのビットに
「0」が格納されている。また、nビット加算器103
は、2つのnビットデータを加算する。その1つは、レ
ジスタ101に保持された、丸め前のデータである。も
う1つのnビットデータは、レジスタ102の出力を、
その上位n−mビットとし、レジスタ101の上位mビ
ットを、その下位mビットとする、これらn−mビット
とmビットを合成したデータである。そして、このnビ
ット加算器103が出力する加算結果は、レジスタ10
4内に保持され、その上位n−mビットが、丸め結果と
なる。
【0021】図2は、本実施の形態における丸め処理を
説明するための図である。同図は、図1の丸め処理回路
のnビット加算器103の入力データと出力を示してい
る。また、図2では、図1のnビット加算器103の1
つ目の入力データをA、もう1つの入力データをB、加
算後の出力データをCとしている。
【0022】すなわち、図2の(a)に示すように、A
は、丸め前のnビットデータ、同図の(b)に示すよう
に、加算するデータBは、その上位n−mビットが全て
「0」であり、下位mビットが、Aの上位mビットと同
じ構成をとるデータである。また、AとBとの加算結果
がC(同図の(c))であり、Cの上位n−mビット
が、丸め結果となっている。
【0023】そこで、以下、上記のようなデータ丸め方
式が、正および負のデータに対して、対称な丸め結果を
与えることを説明する。
【0024】ある正のnビットのデータXを考えてみ
る。また、簡単のためn,mは、n=2mの関係がある
とする。そして、このデータXの下位mビットをXL、
上位mビットをXHで表すと、 X=2m・XH+XL …(1) となる。そして、このXに対する、図1のnビット加算
器103の出力をYとすると、 Y=2m・XH+XL+XH …(2) となる。
【0025】従って、この丸め出力をYrとすると、Y
rは、XL+XH≧2mのとき、繰り上がりが発生し
て、 Yr=2m・XH+2m=2m・(XH+1) …(3) となり、XL+XH<2mのときは、繰り上がりが発生
せず、 Yr=2m・XH …(4) となる。
【0026】一方、Xの符号を反転したデータ「−X」
を、上記と同様、XH,XLを用いて表すと、 −X=−2m・XH−XL …(5) となる。そして、−Xに対する、図1のnビット加算器
103の出力Zは、XL≠0のとき、 Z=−2m・XH−XL+(2m−1−XH) =−2m・XH+(2m−XL−XH−1) …(6) となる。
【0027】従って、この丸め出力をZrとすると、Z
rは、XL+XH≧2mのとき、2m−XL−XH−1<
0であるから、繰り下がりが発生して、 Zr=−2m・XH−2m=−2m・(XH+1) …(7) となる。また、XL+XH<2mのときは、2m−XL−
XH−1≧0であるから、繰り下がりは発生せず、 Zr=−2m・XH …(8) となる。
【0028】このように、上記の丸め方式によれば、X
L≠0の場合、正および負のデータに対して、対称な丸
め結果が与えられることが分かる。また、XL=0の場
合は、Xに対するnビット加算器103の出力Yが、Y
=2m・XH+XHとなり、0<XH<2m-1であるか
ら、繰り上がりは発生せず、丸め出力Yrは、常に、Y
r=2m・XHとなる。
【0029】一方、データ−Xに対するnビット加算器
103の出力Zは、Z=−2m・XH+(2m−XH)と
なる。0<XH<2m-1であるから、2m-1<2m−XH
<2 mとなり、これも繰り上がり、および繰り下がりは
発生せず、丸め出力Zrは、常に、Zr=−2m・XH
となる。
【0030】以上説明したように、本実施の形態によれ
ば、0が格納されたn−mビットのレジスタと、2つの
nビットデータを加算する加算器とを備え、丸め前のデ
ータの上位mビットを下位mビットとするnビットデー
タと、丸め前のnビットデータとを加算し、その加算後
のデータの下位mビットを切り捨てたデータを丸め結果
とすることで、正および負の2進数値に対して、対称な
丸め結果が与えられるとともに、データの正負の判定を
することのないデータ丸め方式を得ることができる。
【0031】実施の形態2.以下、本発明に係る実施の
形態2について説明する。なお、上記実施の形態1に係
る処理回路は、0が格納されたn−mビットのレジスタ
を用いて、加算データを生成するよう構成されている
が、ここでは、シフト演算器を用いて加算データを生成
する。
【0032】図3は、本発明の実施の形態2に係る、デ
ータ丸め方式を実現する丸め処理回路の構成を示すブロ
ック図である。なお、図3に示す、本実施の形態に係る
丸め処理回路において、図1に示す、上記実施の形態1
に係る丸め処理回路と同一構成要素には同一符号を付
し、ここでは、それらの説明を省略する。
【0033】すなわち、図3のレジスタ101、nビッ
ト加算器103、レジスタ104は、それらに対応す
る、図1に示す丸め処理回路の構成要素と同様の動作を
する。また、図3のn−mビットシフト演算器105
は、レジスタ101に保持されている丸め前のnビット
データを入力して、n−mビットの右論理シフト演算を
行い、その演算結果をnビット加算器103に出力す
る。
【0034】このシフト演算器105によって行うシフ
ト演算は、論理シフトであるから、右シフトによって空
きとなった上位n−mビットは、“0詰め”される。従
って、このシフト演算によって得られるnビットデータ
は、上記実施の形態1に係る、図2の(b)に示したデ
ータBと同一のデータとなる。
【0035】よって、図3のnビット加算器103は、
レジスタ101に保持された、丸め前のnビットデータ
と、上記シフト演算によって得られたnビットデータと
いう、2つのnビットデータを加算する。そして、上記
実施の形態1と同様、このnビット加算器103が出力
する加算結果は、レジスタ104内に保持され、その上
位n−mビットが、丸め結果となる。
【0036】以上説明したように、本実施の形態によれ
ば、n−mビットのシフト演算器と、2つのnビットデ
ータを加算する加算器とを備え、丸め前のデータをシフ
トして得られたnビットのデータと、丸め前のnビット
データとを加算した後、その加算後のデータの下位mビ
ットを切り捨てたデータを丸め結果とすることで、正お
よび負の2進数値に対して、対称な丸め結果が与えら
れ、データの正負の判定が不要なデータ丸め方式を得る
ことができる。
【0037】実施の形態3.以下、本発明に係る実施の
形態3について説明する。上記の各実施の形態では、加
算器やレジスタという具体的なハードウエアを用いてデ
ータ丸めを実現しているが、ここでは、ソフトウェアに
よって実行されるデータの丸め方式を説明する。
【0038】図4は、本実施の形態に係るソフトウェア
を実行する、例えば、ディジタル信号処理プロセッサの
概略構成を示すブロック図である。同図に示すディジタ
ル信号処理プロセッサ(DSP)400において、メモ
リ403には、本処理の対象となるデータや演算結果が
一時的に格納され、ROM402には、本実施の形態に
係る処理の実行手順がプログラムとして格納されてい
る。また、CPU401は、上記のプログラムに従っ
て、以下に説明するデータ丸め処理を実行するととも
に、本プロセッサ全体の制御を司る中央制御部である。
なお、ここでの演算結果は、出力部404より、不図示
の外部装置へ出力される。
【0039】図5は、本実施の形態に係るデータ丸め方
式の実行手順を示すフローチャートである。同図に示す
処理では、まず、丸め前のnビットデータAを、n−m
ビット、右論理シフトしたデータBを算出する(ステッ
プST1)。次に、丸め前のデータAと、この右論理シ
フトによって得られたデータBとを加算する(ステップ
ST2)。そして、最後のステップST3で、この加算
結果の下位mビットを切り捨てる処理を行う。
【0040】このような手順によって実現される丸め処
理は、ディジタル信号処理プロセッサなどにおいて丸め
処理を実行する場合、データの正負の判断が不要になる
ため、少ないステップ数で、正および負のデータに対し
て、対称な結果を与える丸め処理を実現できる。
【0041】また、ディジタル信号処理プロセッサは、
16ビット固定小数点方式のものが大半を占めているの
で、その最上位ビットを符号ビット、下位15ビットを
振幅ビットとして扱う場合が多い。この場合、2つの1
6ビットデータの乗算結果は、その最上位ビットが符号
ビットで、下位31ビットが振幅ビットとなり、合計3
2ビットデータの下位16ビットを丸めることになる。
これは、丸め後のデータのビット長が、丸め前のデータ
のビット長の1/2となることを意味している。このよ
うにすることで、上述した各ステップは、全て16ビッ
ト単位での処理となり、一般に各ステップがより簡略に
実現できる。
【0042】以上説明したように、本実施の形態によれ
ば、丸め前のデータの右シフト、この右シフトによって
得られたデータと丸め前のデータとの加算、そして、加
算後のデータの下位mビットの切り捨てを、純粋にソフ
トウエアによって実行することで、データの正負の判断
が不要になるため、少ないステップ数で、正および負の
2進データに対して、対称な丸め結果が得られる。特
に、本プログラムをディジタル信号処理プロセッサ上で
実行した場合、各処理ステップを、より簡略に実現でき
る。
【0043】実施の形態4.以下、本発明に係る実施の
形態4について説明する。なお、本実施の形態に係るデ
ータ丸め方式は、未知のシステムを推定する適応フィル
タにおいて用いられる。
【0044】図6は、本実施の形態に係るデータ丸め方
式を用いる適応フィルタの構成を示すブロック図であ
る。同図に示す適応フィルタは、参照信号の過去のサン
プル値を格納するXレジスタ201、インパルス応答推
定値を格納するHレジスタ202、Xレジスタ201の
格納値と、Hレジスタ202の格納値との畳み込み演算
を行う畳み込み積分器203、未知のシステム250の
応答信号より畳み込み積分器203の出力を減算する減
算器204、未知のシステム250のインパルス応答を
推定して、Hレジスタ202に格納されたインパルス応
答推定値の修正量を算出するΔH生成回路205、この
修正量とHレジスタ202に格納されたインパルス応答
推定値とを加算するH+ΔH加算器206、H+ΔH加
算器206の加算結果の丸めを行う丸め処理部207に
よって構成される。
【0045】次に、本実施の形態に係る適応フィルタの
動作について説明する。本適応フィルタは、ディジタル
信号処理によって実現されるものであり、全ての信号
が、一定のサンプリング時間によってサンプリングされ
たディジタルデータである。そこで、現在のサンプリン
グ時刻をiとすると、まず、Xレジスタ201は、未知
のシステム250に対して出力される参照信号の、過去
Nサンプル分のデータX(i),X(i−1),・・
・,X(i−N+1)を保持する。そして、Hレジスタ
202には、未知のシステム250のインパルス応答推
定値h0(i),h1(i),・・・,hN−1(i)
が保持される。
【0046】畳み込み積分器203は、上記の参照信号
X(i),X(i−1),・・・,X(i−N+1)
と、インパルス応答推定値h0(i),h1(i),・
・・,hN−1(i)との畳み込み演算によって、擬似
応答信号r(i)を算出する。従って、この擬似応答信
号は、r(i)=x(i)×h0(i)+x(i−1)
×h1(i)+・・・+x(i−N+1)×hN−1
(i)となる。
【0047】減算器204は、上記の擬似応答信号r
(i)を、未知のシステム250から入力される応答信
号s(i)より減算して、残差信号e(i)を求める。
すなわち、e(i)=s(i)−r(i)となる。ま
た、ΔH生成回路205は、未知のシステム250を推
定して、上記の残差信号e(i)が小さくなるように、
Hレジスタ202に格納されるインパルス応答推定値の
修正量Δh0(i),Δh1(i),・・・,ΔhN−
1(i)を算出する。
【0048】ここで、一般的な修正アルゴリズムとして
は、最小平均二乗(LMS(Least Mean Sq
uare))法と呼ばれるものがある。この方法によれ
ば、上記の修正量Δhk(i)(k=0,1,・・・,
N−1)は、Δhk(i)=α×e(i)×X(i−
k)となる。
【0049】上記のデータの内、Δhk(i)を除く各
データが、nビットデータであったとすると、上記の修
正量Δhk(i)は、nビットデータとはならず、nビ
ット以上のビット数を持つデータとなる。演算の簡単化
のため、αには、2のべき乗値が用いられることが多い
が、仮に、これが1であるとすれば、Δhk(i)は、
2nビットデータとなる。
【0050】また、H+ΔH加算器206は、2nビッ
トのデータを加算する加算器であり、上記のインパルス
応答推定値h0(i),h1(i),・・・,hN−1
(i)と、その修正量Δh0(i),Δh1(i),・
・・,ΔhN−1(i)とを加算して、次のサンプル時
刻i+1で使用される新たなインパルス応答推定値h0
(i+1),h1(i+1),・・・,hN−1(i+
1)を算出する。すなわち、hk(i+1)=hk
(i)+Δhk(i)(k=0,1,・・・,N−1)
である。
【0051】以上のデータの内、Δhk(i)を除く各
データが、nビットデータであったとすると、上記の修
正量Δhk(i)は、nビットデータとはならず、nビ
ット以上のビット数を持つデータとなる。上記と同様、
演算の簡単化のため、αには、2のべき乗値が用いられ
ることが多いが、仮に、これが1であれば、Δhk
(i)は、2nビットデータとなる。
【0052】従って、H+ΔH加算器206は、2つの
2nビットのデータを加算し、その加算の際、nビット
のデータであるインパルス応答推定値hk(i)に対し
ては、適当なシフトが施される。そして、その小数点の
位置が、2nビットのデータであるΔhk(i)の小数
点の位置と同じになるよう調整される。
【0053】このようにして算出された、新たなインパ
ルス応答推定値h0(i+1),h1(i+1),・・
・,hN−1(i+1)は、2nビットのデータとなる
ため、丸め処理部207によって、nビットのデータに
丸められた後、Hレジスタ202に格納される。なお、
この丸め処理部207の動作は、例えば、図1に示す、
上記実施の形態1に係る丸め処理回路の動作と同様であ
る。
【0054】図7は、上述した丸め処理方式を備える、
本実施の形態に係る適応フィルタの特性を示す。すなわ
ち、同図は、上記のような適応フィルタが、未知のシス
テムのインパルス応答を推定する過程をグラフ化したも
のである。
【0055】図7のグラフにおいて、その縦軸は、未知
のシステムのインパルス応答と適応フィルタのインパル
ス応答推定値の2乗誤差(未知のシステムのインパルス
応答の2乗和で規格化してある)、横軸はサンプル数
(適応フィルタの動作時間に相当する)である。また、
曲線Aは、本実施の形態に係るデータ丸め方式を適用し
た場合のフィルタ特性であり、曲線Bは、切り捨てによ
るデータ丸めを適用した場合の特性、そして、曲線C
は、四捨五入によるデータ丸めを適用した場合の特性で
ある。
【0056】図7より明らかなように、曲線Bで示され
る特性は、サンプル数3000あたりから誤差が蓄積さ
れ始め、2乗誤差が増大している。また、曲線Cは、サ
ンプル数30000あたりから誤差が蓄積され始め、徐
々に2乗誤差が増大している。一方、曲線Aは、サンプ
ル数5000から45000あたりまでは、曲線Bより
も2乗誤差がやや大きいものの、最後まで、2乗誤差の
増大は見られず、最終的には、曲線Bよりも2乗誤差が
小さくなっていることが分かる。よって、明らかに、こ
の丸め方式によって、正および負の2進数値に対して、
対称な丸め結果が与えられ、インパルス応答推定精度が
良くなることが分かる。
【0057】以上説明したように、本実施の形態によれ
ば、適応フィルタにおいて、参照信号とインパルス応答
推定値に畳み込み演算を施して得た擬似応答信号に基づ
いて、このインパルス応答推定値の修正量を算出し、上
記インパルス応答推定値に、その修正量を加算して得た
新たなインパルス応答推定値に対して、下位ビットを切
り捨てるデータ丸め方法を適用することで、正および負
の2進数値に対して対称な丸め結果が得られるととも
に、当該適応フィルタの特性として、優れたインパルス
応答推定特性を得ることができる。
【0058】実施の形態5.以下、本発明に係る実施の
形態5について説明する。なお、上記の実施の形態4
は、H+ΔH加算器の出力に対して丸めを行う適応フィ
ルタの構成を示したが、ここでは、インパルス応答推定
値の修正量に対して丸めを行う形態を示す。
【0059】図8は、本実施の形態に係るデータ丸め方
式を用いる適応フィルタの構成を示すブロック図であ
る。なお、同図において、図6に示す、上記実施の形態
4に係る適応フィルタと同一構成要素には、同一符号を
付す。すなわち、図8のXレジスタ201には、参照信
号の過去のサンプル値を格納し、Hレジスタ202に
は、インパルス応答推定値を格納する。畳み込み積分器
203は、Xレジスタ201の格納値と、Hレジスタの
格納値との畳み込み演算を行う。また、減算器204
は、この畳み込み積分器203の出力を、未知のシステ
ム250の応答信号より減算する。
【0060】ΔH生成回路205は、未知のシステム2
50のインパルス応答を推定して、Hレジスタ202に
格納されたインパルス応答推定値の修正量を算出する。
丸め処理部207は、この修正量の丸めを行い、H+Δ
H加算器206は、丸め後の修正量とHレジスタ202
に格納されたインパルス応答推定値とを加算する。
【0061】以下、本実施の形態に係る適応フィルタの
動作を説明する。なお、図8のXレジスタ201、Hレ
ジスタ202、畳み込み積分器203、減算器204、
ΔH生成回路205は、図6に示す、実施の形態4に係
る適応フィルタと同様の動作を行う。
【0062】丸め処理部207は、ΔH生成回路205
が出力する推定インパルス応答の修正量Δh0(i),
Δh1(i),・・・,ΔhN−1(i)に対して、丸
め処理を行う。この丸め処理部207の動作は、例え
ば、図1に示す、実施の形態1に係る丸め処理回路の動
作と同じである。そこで、この丸め後のデータを、Δh
0(i)’,Δh1(i)’,・・・,ΔhN−1
(i)’とすると、これらは、Hレジスタ202に格納
されるインパルス応答推定値h0(i),h1(i),
・・・,hN−1(i)のビット数と同じビット数に丸
められたデータである。
【0063】上記のビット数をnとすると、H+ΔH加
算器206は、nビットのデータを加算する加算器であ
り、上記のインパルス応答推定値h0(i),h1
(i),・・・,hN−1(i)と、丸め後の修正量Δ
h0(i)’,Δh1(i)’,・・・,ΔhN−1
(i)’とを加算して、次のサンプル時刻i+1で使用
される新たなインパルス応答推定値h0(i+1),h
1(i+1),・・・,hN−1(i+1)を算出す
る。すなわち、hk(i+1)=hk(i)+Δhk
(i)’(k=0,1,・・・,N−1)であり、これ
が、新たにHレジスタ202に格納される。
【0064】以上説明したように、本実施の形態によれ
ば、適応フィルタにおいて、参照信号とインパルス応答
推定値に畳み込み演算を施して得た擬似応答信号に基づ
いて、このインパルス応答推定値の修正量を算出し、こ
の修正量に対して、下位ビットを切り捨てるデータ丸め
方法を適用した後、上記インパルス応答推定値に、その
丸め後の修正量を加算して新たなインパルス応答推定値
を算出することで、正および負の2進数値に対して対称
な丸め結果が得られるとともに、当該適応フィルタの特
性として、優れたインパルス応答推定特性を得ることが
できる。
【0065】
【発明の効果】以上説明したように、第1の発明によれ
ば、n−mビットの第1のデータに、その最下位ビット
に続けて、丸め前データの上位mビットを合成し、この
丸め前データと合成後のデータを加算して得たnビット
データの下位mビットを切り捨てて、それを丸め結果と
することで、正および負の2進数値に対して対称な丸め
結果が得られるとともに、丸め前のデータの正負を判断
する必要がない、という効果がある。
【0066】第2の発明によれば、上記第1の発明に記
載のデータ丸め方法を適応フィルタに使用して、所定デ
ータの丸め結果を算出することで、その適応フィルタに
おける適応の精度を向上させることができる。
【0067】また、第3の発明によれば、未知のシステ
ムからの応答信号と、この未知のシステムのインパルス
応答推定データと所定の参照信号との畳み込み演算によ
って得た擬似応答信号との差分をもとに、インパルス応
答推定データの修正量を算出し、この修正量とインパル
ス応答推定データを加算して新たなnビットのインパル
ス応答推定データを算出する適応フィルタで使用するデ
ータ丸め方法において、あらかじめ保持したn−mビッ
ト(n,mは整数で、n>m)の第4のデータの最下位
ビットに続けて、上記の新たなnビットのインパルス応
答推定データの上位mビットを合成して、nビットの第
5のデータを生成し、この新たなnビットのインパルス
応答推定データと第5のデータとの加算後のnビットデ
ータの下位mビットを切り捨てて得た第6のデータを、
次回の処理におけるインパルス応答推定データとするこ
とで、正および負の2進数値に対して対称な丸め結果が
得られるとともに、当該適応フィルタの特性として、優
れたインパルス応答推定特性を得ることができる。
【0068】第4の発明によれば、未知のシステムから
の応答信号と、この未知のシステムのインパルス応答推
定データと所定の参照信号との畳み込み演算によって得
た擬似応答信号との差分をもとに、インパルス応答推定
データの修正量を算出し、この修正量とインパルス応答
推定データを加算して新たなnビットのインパルス応答
推定データを算出する適応フィルタで使用するデータ丸
め方法において、あらかじめ保持したn−mビット
(n,mは整数で、n>m)の第7のデータの最下位ビ
ットに続けて、上記修正量の上位mビットを合成して得
たnビットの第8のデータに、この修正量を加算し、加
算後のnビットデータの下位mビットを切り捨てて得た
第9のデータを、上記インパルス応答推定データに加算
する修正量とすることで、正および負の2進数値に対し
て対称な丸め結果が得られ、同時に、適応フィルタの特
性として、優れたインパルス応答推定特性を得ることが
できる。
【図面の簡単な説明】
【図1】 本発明の実施の形態1に係る丸め処理回路の
構成を示すブロック図である。
【図2】 実施の形態1に係る丸め処理を説明するため
の図である。
【図3】 本発明の実施の形態2に係る丸め処理回路の
構成を示すブロック図である。
【図4】 本発明の実施の形態3に係るソフトウェアを
実行するディジタル信号処理プロセッサの概略構成を示
すブロック図である。
【図5】 実施の形態3に係るデータ丸め方式の実行手
順を示すフローチャートである。
【図6】 本発明の実施の形態4に係るデータ丸め方式
を用いる適応フィルタの構成を示すブロック図である。
【図7】 実施の形態4に係る適応フィルタの特性を示
す図である。
【図8】 本発明の実施の形態5に係るデータ丸め方式
を用いる適応フィルタの構成を示すブロック図である。
【図9】 単純な切り捨てによる丸めを行った場合の丸
め結果を示す図である。
【図10】 従来の丸め方式のの流れを示すフローチャ
ートである。
【図11】 四捨五入による丸めを行った場合の丸め結
果を示す図である。
【図12】 四捨五入による丸めを行った場合の、他の
丸め結果を示す図である。
【符号の説明】
101,102,104…レジスタ、103…nビット
加算器、105…n−mビットシフト演算器、201…
Xレジスタ、202…Hレジスタ、203…畳み込み積
分器、204…減算器、205…ΔH生成回路、206
…H+ΔH加算器、207…丸め処理部、250…未知
のシステム、400…ディジタル信号処理プロセッサ
(DSP)、401…CPU、402…ROM、403
…メモリ、404…出力部

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 データの下位ビットに丸め処理を施すこ
    とによって所定ビット数の丸め結果を得るデータ丸め方
    法において、 nビットの丸め前データを保持する工程と、 n−mビット(n,mは整数で、n>m)の第1のデー
    タを保持する工程と、 前記第1のデータに、その最下位ビットに続けて、前記
    丸め前データの上位mビットを合成して、nビットの第
    2のデータを生成する工程と、 前記丸め前データと前記第2のデータを加算する工程
    と、 前記加算後のnビットデータの下位mビットを切り捨て
    て第3のデータを得る工程とを備え、 この第3のデータを前記丸め結果とすることを特徴とす
    るデータ丸め方法。
  2. 【請求項2】 前記第1のデータの全ビットを0にする
    ことで、前記第2のデータの上位n−mビットを0にす
    ることを特徴とする請求項1記載のデータ丸め方法。
  3. 【請求項3】 さらに、前記丸め前データに対して、n
    −mビットの右シフトを行うシフト演算工程を備え、こ
    のシフト演算工程より得たデータを前記第2のデータと
    することを特徴とする請求項1記載のデータ丸め方法。
  4. 【請求項4】 前記nが偶数の場合、前記丸め結果のデ
    ータのビット数がn/2であることを特徴とする請求項
    1乃至3のいずれかに記載のデータ丸め方法。
  5. 【請求項5】 請求項1乃至4のいずれかに記載のデー
    タ丸め方法を使用して所定データの丸め結果を算出する
    ことを特徴とするデータ丸め装置。
  6. 【請求項6】 未知のシステムのインパルス応答推定デ
    ータと所定の参照信号とに畳み込み演算を行って擬似応
    答信号を発生する手段と、 前記擬似応答信号と前記未知のシステムからの応答信号
    との差分をもとに、前記インパルス応答推定データの修
    正量を算出する手段と、 前記修正量と前記インパルス応答推定データを加算して
    新たなnビットのインパルス応答推定データを算出する
    手段とを備える適応フィルタで使用するデータ丸め方法
    において、 あらかじめ保持したn−mビット(n,mは整数で、n
    >m)の第4のデータの最下位ビットに続けて、前記新
    たなnビットのインパルス応答推定データの上位mビッ
    トを合成して、nビットの第5のデータを生成する工程
    と、 前記新たなnビットのインパルス応答推定データと前記
    第5のデータを加算する工程と、 前記加算後のnビットデータの下位mビットを切り捨て
    て第6のデータを得る工程とを備え、 この第6のデータを次回の処理におけるインパルス応答
    推定データとすることを特徴とするデータ丸め方法。
  7. 【請求項7】 前記第4のデータの全ビットを0にする
    ことで、前記第5のデータの上位n−mビットを0にす
    ることを特徴とする請求項6記載のデータ丸め方法。
  8. 【請求項8】 さらに、前記新たなnビットのインパル
    ス応答推定データに対して、n−mビットの右シフトを
    行うシフト演算工程を備え、このシフト演算工程より得
    たデータを前記第5のデータとすることを特徴とする請
    求項6記載のデータ丸め方法。
  9. 【請求項9】 前記nが偶数の場合、前記第6のデータ
    のビット数がn/2であることを特徴とする請求項6乃
    至8のいずれかに記載のデータ丸め方法。
  10. 【請求項10】 未知のシステムのインパルス応答推定
    データと所定の参照信号とに畳み込み演算を行って擬似
    応答信号を発生する手段と、 前記擬似応答信号と前記未知のシステムからの応答信号
    との差分をもとに、前記インパルス応答推定データの修
    正量を算出する手段と、 前記修正量と前記インパルス応答推定データを加算して
    新たなnビットのインパルス応答推定データを算出する
    手段とを備える適応フィルタで用いるデータ丸め方法に
    おいて、 あらかじめ保持したn−mビット(n,mは整数で、n
    >m)の第7のデータの最下位ビットに続けて、前記修
    正量の上位mビットを合成して、nビットの第8のデー
    タを生成する工程と、 前記修正量と前記第8のデータを加算する工程と、 前記加算後のnビットデータの下位mビットを切り捨て
    て第9のデータを得る工程とを備え、 この第9のデータを、前記インパルス応答推定データに
    加算する前記修正量とすることを特徴とするデータ丸め
    方法。
  11. 【請求項11】 前記第7のデータの全ビットを0にす
    ることで、前記第8のデータの上位n−mビットを0に
    することを特徴とする請求項10記載のデータ丸め方
    法。
  12. 【請求項12】 さらに、前記修正量に対して、n−m
    ビットの右シフトを行うシフト演算工程を備え、このシ
    フト演算工程より得たデータを前記第8のデータとする
    ことを特徴とする請求項10記載のデータ丸め方法。
  13. 【請求項13】 前記nが偶数の場合、前記第9のデー
    タのビット数がn/2であることを特徴とする請求項1
    0乃至12のいずれかに記載のデータ丸め方法。
JP19843398A 1998-07-14 1998-07-14 データ丸め方法およびデータ丸め装置 Expired - Lifetime JP4196434B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19843398A JP4196434B2 (ja) 1998-07-14 1998-07-14 データ丸め方法およびデータ丸め装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19843398A JP4196434B2 (ja) 1998-07-14 1998-07-14 データ丸め方法およびデータ丸め装置

Publications (2)

Publication Number Publication Date
JP2000029668A true JP2000029668A (ja) 2000-01-28
JP4196434B2 JP4196434B2 (ja) 2008-12-17

Family

ID=16391014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19843398A Expired - Lifetime JP4196434B2 (ja) 1998-07-14 1998-07-14 データ丸め方法およびデータ丸め装置

Country Status (1)

Country Link
JP (1) JP4196434B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022168604A1 (ja) * 2021-02-05 2022-08-11 コニカミノルタ株式会社 ソフトマックス関数の近似計算装置、近似計算方法および近似計算プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022168604A1 (ja) * 2021-02-05 2022-08-11 コニカミノルタ株式会社 ソフトマックス関数の近似計算装置、近似計算方法および近似計算プログラム

Also Published As

Publication number Publication date
JP4196434B2 (ja) 2008-12-17

Similar Documents

Publication Publication Date Title
US7577699B2 (en) Apparatus and method for reducing precision of data
JPH09325955A (ja) 二乗和の平方根演算回路
JP4196434B2 (ja) データ丸め方法およびデータ丸め装置
JP3768613B2 (ja) ログの近似値の計算回路
WO2020021396A1 (en) Improved analog computing implementing arbitrary non-linear functions using chebyshev-polynomial- interpolation schemes and methods of use
JP2645422B2 (ja) 浮動小数点演算処理装置
JP3910707B2 (ja) ディジタル信号処理回路
JPH0997166A (ja) ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路
JP2828791B2 (ja) 積和演算に用いる部分和を量子化する方法
JP2008158855A (ja) 相関演算器及び相関演算方法
JP2943255B2 (ja) 逆数算出回路
JPH0883263A (ja) ディジタル信号処理装置
JPH02224516A (ja) 適応信号処理回路
JPS6165362A (ja) デジタル信号処理装置
JP2914813B2 (ja) 誤り訂正復号装置
JP2546014B2 (ja) デイジタル信号処理装置
JPS6155689B2 (ja)
JP2000137701A (ja) 積和演算誤差補正方法及び積和演算装置
JPH0433071B2 (ja)
JPH1040073A (ja) ディジタル信号処理装置
JPH0612224A (ja) 浮動小数点2進数のための演算処理方法およびその装置
JPH0612225A (ja) データ型変換装置
JPH0879083A (ja) D/a変換装置
JPH10173487A (ja) ディジタルフィルタ
JPH057120A (ja) デイジタルイコライザ装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040708

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050617

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080730

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111010

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111010

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121010

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131010

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term