JP2002063022A - データ変換装置、データ記憶装置とその方法 - Google Patents

データ変換装置、データ記憶装置とその方法

Info

Publication number
JP2002063022A
JP2002063022A JP2000248857A JP2000248857A JP2002063022A JP 2002063022 A JP2002063022 A JP 2002063022A JP 2000248857 A JP2000248857 A JP 2000248857A JP 2000248857 A JP2000248857 A JP 2000248857A JP 2002063022 A JP2002063022 A JP 2002063022A
Authority
JP
Japan
Prior art keywords
data
bits
bit
shift
amount
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
Application number
JP2000248857A
Other languages
English (en)
Inventor
Hidenobu Noda
英伸 野田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2000248857A priority Critical patent/JP2002063022A/ja
Publication of JP2002063022A publication Critical patent/JP2002063022A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】絶対値の小さいデータを精度劣化を抑制しなが
らビット幅の削減を行なってデータを記憶すデータ記憶
装置を提供する。 【解決手段】データ記憶装置1に入力されたAビットの
データの上位n+1ビットが連続ビット検出回路13に
入力され、同じ値のビットが連続しているか否かがチェ
ックされる。上位n+1ビットに同じ値のビットが連続
している場合には、入力レジスタ11に記憶されている
データをMSB側にnビットシフトさせ、シフトさせた
ことを示す1ビットのフラグを生成する。シフトさせた
データの上位QビットおよびフラグをRAM19に記憶
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、絶対値の小さいデ
ータの精度劣化を重点的に抑制し、これによりデジタル
データ全体の精度劣化を効果的に抑制することができる
ように、処理対象のデータを変換するデータ変換装置、
そのように変換されたデータを元のデータに戻すデータ
変換装置、および、絶対値の小さいデータを精度劣化を
抑制しながら記憶するデータ記憶装置およびデータ記憶
方法に関する。
【0002】
【従来の技術】任意のデジタルデータ処理回路において
各種演算やデータの保持を行なうにあたり、与えられた
デジタルデータの最上位から最下位までの全ビットの有
効性をまったく失わせずに、各種演算やデータの保持を
行なおうとすると、大規模あるいは無限大の回路規模を
要する。そのため、実際に回路を設計する場合、求めら
れる計算の精度に応じて、下位データの切り捨てや、い
わゆる丸めを行なったり、ビット長を制限した各種演算
回路が用いたりすることが多い。この時、ビット長を短
くすると計算の精度が劣化し、ビット長を長くすると回
路規模が増大する。したがって、実際にレジスタやメモ
リ、さらには乗算回路や加算回路などの構成要素のビッ
ト長をどれくらいにするかは、デジタルデータ処理回路
の設計の際の重要なパラメータである。特に、順次入力
されるデータ列に対して所望の処理を行なういわゆるデ
ジタルフィルタにおいては、単一の構成要素に対し、さ
まざまな値のデジタルデータが繰り返して与えられる。
したがって、データの切り捨てや丸めの際に、計算精度
の劣化を抑制しながら回路規模を削減することが非常に
重要である。
【0003】
【発明が解決しようとする課題】しかしながら、そのよ
うなデータの切り捨てや丸めあるいは演算回路のビット
長制限を、データの値に関係なく単純に行なうと、絶対
値の大きい値のデータよりも0に近い絶対値の小さい値
ほど精度上大きな影響を受け、その結果、全体的なデジ
タルデータの精度の劣化を招くという問題がある。たと
えば6ビットの2進数である011111b(bは2進
数表示であることを示す)と000111bに対し、下
位2ビットを切り捨てたとすると、値はそれぞれ011
100bおよび000100bと同じ値に変化するが、
切り捨てたことによるデータの大きさの変化分は、それ
ぞれ3/31および3/7となり、0に近い00011
1bの方が顕著に影響を受けることになる。これは、換
言すれば、0に近い小さい値のデジタルデータの精度劣
化を抑制すれば、デジタルデータ全体の精度劣化を効果
的に抑制できると言える。
【0004】したがって本発明の目的は、絶対値の小さ
いデータを、データの切り捨てや丸めあるいは演算回路
のビット長制限を行なってもデータの精度劣化を抑制す
ることができるデータ形式に変換するデータ変換装置を
提供することにある。また本発明の他の目的は、そのよ
うに変換されたデータを元のデータに戻すデータ変換装
置を提供することにある。さらに本発明の他の目的は、
絶対値の小さいデータを精度劣化を抑制しながらビット
長制限を行なって記憶するデータ記憶装置とその方法を
提供することにある。
【0005】
【課題を解決するための手段】前記課題を解決するため
に、本発明のデータ変換装置は、入力されるビット幅A
のデータについて、MSBと同一の値のビットのMSB
からの連続を検出する連続ビット検出手段と、前記検出
したMSBと同一の値のビットの連続に基づいて、その
連続ビット量pを検出する連続ビット量検出手段と、前
記検出した同一の値のビットの連続量pに基づいて決定
される所定のシフト量、前記入力データをMSB側にシ
フトするシフト手段と、前記シフトされたデータのMS
B側から、入力データのビット幅Aより小さい所定のビ
ット幅Q(Q<A)を選択し出力するデータ出力手段
と、前記シフト量が0でない場合に、前記出力されるデ
ータがシフトされたデータであることを示すフラグデー
タを出力するフラグ出力手段とを有する。
【0006】このような構成のデータ変換装置において
は、入力されるビット幅Aのデータに対して、まず連続
ビット検出手段において、MSBと同一の値のビットの
MSBからの連続を検出し、この検出結果に基づいて、
連続ビット量検出手段において、その連続ビット量pを
検出する。次に、この連続ビット量pに基づいて、前記
入力データをMSB側にシフトするシフト量を決定し、
シフト手段において実際に入力データをシフトする。そ
して、シフトされたデータのMSB側から、入力データ
のビット幅Aより小さい所定のビット幅Q(Q<A)を
選択することによりデータのビット幅の削減を行い、さ
らに出力されるデータがシフトされたデータであるか否
かを示すフラグデータを付加して、データ出力手段およ
びフラグ出力手段より各々出力する。
【0007】特定的には、前記シフト手段は、前記検出
した同一の値のビットの連続量pが、所定のシフト量q
に対して(q+1)以上であった場合に、前記入力デー
タをMSB側にqビットシフトする。また特定的には、
前記シフト手段は、前記検出した同一の値のビットの連
続量pに基づいて、シフト量qを決定するシフト量決定
手段と、前記決定されたシフト量q、前記入力データを
MSB側にシフトするシフト手段とを有し、前記フラグ
出力手段は、前記シフト量qを示すデータを出力する。
また特定的には、前記シフト手段は、前記検出した同一
の値のビットの連続量pに基づいて、前記入力データを
MSB側に(p−1)ビットシフトし、前記フラグ出力
手段は、前記シフト量(p−1)を出力する。
【0008】また、本発明の他のデータ変換装置は、入
力されるビット幅QのデータのデータのLSB側に必要
に応じて値0のビットを挿入し、当該ビット幅Qよりも
大きいビット幅A(A>Q)のデータに変換するビット
拡張手段と、前記変換されたビット幅Aのデータを、前
記データに対応して入力される当該データがシフトされ
たデータであることを示すフラグデータに基づいて、所
定のシフト量LSB側にシフトするシフト手段とを有す
る。
【0009】また、本発明のデータ記憶装置は、入力さ
れるビット幅Aのデータについて、MSBと同一の値の
ビットのMSBからの連続を検出する連続ビット検出手
段と、前記検出したMSBと同一の値のビットの連続に
基づいて、その連続ビット量pを検出する連続ビット量
検出手段と、前記検出した同一の値のビットの連続量p
に基づいて決定される所定のシフト量、前記入力データ
をMSB側にシフトするシフト手段と、前記シフトされ
たデータのMSB側から、入力データのビット幅Aより
小さい所定のビット幅Q(Q<A)のデータを選択し記
憶するデータ記憶手段と、前記シフト手段におけるシフ
ト量が0でない場合に、前記記憶されるデータがシフト
されたデータであることを示すフラグデータを前記記憶
されるデータと対応付けて記憶するフラグ記憶手段とを
有する。
【0010】特定的には、要求に応じて、前記記憶され
たビット幅Qのデータおよび前記記憶されたフラグデー
タを読み出す読み出し手段と、前記読み出されたのデー
タのLSB側に必要に応じて値0のビットを挿入し、当
該ビット幅Qよりも大きいビット幅A(A>Q)のデー
タに変換するビット拡張手段と、前記変換されたビット
幅Aのデータを、前記読み出されたフラグデータに基づ
いて、所定のシフト量LSB側にシフトするシフト手段
とをさらに有する。
【0011】また、本発明のデータ記憶方法は、入力さ
れるビット幅Aのデータについて、MSBと同一の値の
ビットのMSBからの連続を検出し、前記検出したMS
Bと同一の値のビットの連続に基づいて、その連続ビッ
ト量pを検出し、前記検出した同一の値のビットの連続
量pに基づいて決定される所定のシフト量、前記入力デ
ータをMSB側にシフトし、前記シフトされたデータの
MSB側から、入力データのビット幅Aより小さい所定
のビット幅Q(Q<A)を選択して記憶し、前記シフト
量が0でない場合に、前記記憶されるデータがシフトさ
れたデータであることを示すフラグを前記記憶されるデ
ータと対応付けて記憶する。
【0012】
【発明の実施の形態】本発明の実施の形態について説明
する。本実施の形態においては、順次入力されるデータ
に対して、切り捨て処理を行なってメモリに記憶するデ
ータ記憶装置を例示して本発明を説明する。
【0013】まず、本実施の形態のデータ記憶装置にお
ける、基本的な処理の考え方について説明する。デジタ
ルデータの2進数での表現形式にはいくつかの種類があ
り、たとえば、正負双方の値を持つものとそうでないも
のがある。これらの形式は、詳細部分で違いはあるが、
大半の形式では、絶対値の小さい値ほど、MSB側の各
ビットに0または1の値のビットが連続するという特徴
がある。
【0014】このようなデジタルデータは、連続した上
位の0または1をnビット抜き取り、それより下位のデ
ータを上位へシフトするとともに、上位シフトによって
データがなくなった下位ビットには0を詰めるという一
連の操作によって、デジタルデータとしての値は2n
になる。また逆に、最上位ビットの0、1と一致するn
ビットの連続した0または、連続した1を上位から割り
込ませ、元の各ビットは下位へシフトする、あるいは、
nビットの連続した0を上位から割り込ませ、元の各ビ
ットは下位へシフトするという一連の操作によって、2
進数のデータ形式により詳細部分で差異はあるが、基本
的にデジタルデータとしての値は、2-n(=1/2n
倍になる。
【0015】そこで、記憶対象のデータの、最上位以下
のnビットまたは(n+1)ビットに0または1が連続
していることを検出することで、ある基準より絶対値の
小さい、すなわち0に近い小さい値のデータを検出す
る。そして、そのようなデータは、所定ビットMSB側
にシフトさせることで2n倍する操作を施し、その上
で、上位側の所定のビット幅のデータを選択して切り捨
て処理を行い、メモリに記憶する。そして、データ復元
時には、データ毎にシフト操作の有無を検出し、それに
応じてデータをLSB側にシフトさせることで、データ
を1/2n 倍して値をもとにもどす。
【0016】このような処理により、本来、切り捨てや
丸めの影響を受けやすい絶対値が0に近い小さい値で、
下位nビット分が、その影響から解放されることが可能
となる。そして、さまざまな大きさのデジタルデータが
格納される単一の有限ビット長のレジスタ、メモリへの
データ書き込み回路で切り捨てや丸めを行なうにあた
り、このような操作を行なう回路と、その操作の有無を
保持する回路を付加することで、顕著に影響を受ける値
の小さいデジタルデータへの影響を重点的に削減し、デ
ジタルデータ全体の精度の劣化を抑制することができ
る。なお、絶対値の大きいデジタルデータに対しては、
切り捨てや丸めによる値の変化があっても、基本的にそ
の影響は比較的に小さい。
【0017】以下、具体的な構成例について、第1〜第
4の実施の形態として説明する。第1の実施の形態 図1は、本発明の第1の実施の形態のデータ記憶装置1
の構成を示すブロック図である。データ記憶装置1は、
入力されるAビットのデータを、Qビット(Q<A)に
ビット削減して記憶するメモリ装置である。なお、本実
施の形態においては、入力データのビット幅Aは32ビ
ット、記憶データのビット幅Qは24ビットとする。ま
た、扱うデジタルデータの形式は、2'sコンプリメント
とする。
【0018】まず、データ記憶装置1の構成について説
明する。データ記憶装置1は、入力レジスタ11、連続
ビット検出回路13、シフト回路15、アドレス生成回
路17、RAM19、および、出力レジスタ21を有す
る。
【0019】入力レジスタ11は、データ記憶装置1に
順次入力される32ビット(Aビット)のデータを順に
記憶し、シフト回路15に出力する。
【0020】連続ビット検出回路13は、データ記憶装
置1に順次入力されるデータの、上位の9ビット(n+
1ビット(請求項のpおよびq+1に対応する。以下同
じ。))をチェックし、それら9ビットのに同じ値が連
続しているか否か、すなわち、全てが0または全てが1
か否かをチェックする。そして、チェック結果を示す1
ビットのデータを生成し、1サイクル保持した後、シフ
ト回路15およびRAM19に出力する。
【0021】シフト回路15は、連続ビット検出回路1
3から入力される連続性のチェック結果が、入力データ
の上位9ビットが連続した値であること示していた場合
に、入力レジスタ11より入力される32ビットのデー
タを、8ビット(nビット(請求項のqに対応する。以
下同じ。))MSB側にシフトする。連続ビット検出回
路13から入力されるチェック結果が、入力データの上
位9ビットが連続した値でないことを示していた場合に
は、何らシフトを行なわない。そして、この必要に応じ
てシフトされたデータの上位24ビット(Qビット)を
選択して、RAM19に出力する。
【0022】アドレス生成回路17は、図示せぬ制御装
置により制御され、RAM19にデータを記憶するアド
レス、あるいは、RAM19よりデータを読み出すアド
レスを生成して、RAM19に印加する。
【0023】RAM19は、図示せぬ制御装置より入力
されるリードライト信号を初めとする制御信号に基づい
て、アドレス生成回路17より入力されるアドレスに対
する、データの書き込みまたはデータの読み出しを行な
う。RAM19には、シフト回路15より入力される2
4ビットのデータ、および、連続ビット検出回路13よ
り入力される連続性のチェック結果であり記憶データが
シフトされたデータであるか否かを示す1ビットのデー
タが入力されるので、この25ビットのデータを記憶す
る。また、データの読み出しの際には、この25ビット
のデータを読み出し、出力レジスタ21に出力する。
【0024】出力レジスタ21は、RAM19より読み
出されたデータを一時的に記憶し、24ビットの出力デ
ータ、および、1ビットのシフトの有無を示すフラグデ
ータとして出力する。
【0025】次に、このような構成のデータ記憶装置1
の動作について説明する。データ記憶装置1に入力され
た32ビットのデータは、入力レジスタ11に記憶され
るとともに、その上位9ビットが連続ビット検出回路1
3に入力され、同じ値のビットが連続しているか否かが
チェックされる。チェック結果は、データのシフトを行
なうか否かを示す1ビットのデータとして保持された
後、シフト回路15に出力されてシフト回路15におけ
るデータのシフトの制御に供される。すなわち、入力デ
ータの上位9ビットに同じ値のビットが連続している場
合には、絶対値が小さいデータと言えるので、入力レジ
スタ11に記憶されているデータをMSB側に8ビット
シフトさせ、入力データの上位9ビットが同じ値のビッ
トでない場合には、シフトを行なわない。
【0026】このように選択的にシフトされた結果のデ
ータの上位24ビットと、連続ビット検出回路13より
出力されるシフトを行なったデータか否かを示す1ビッ
トのデータとが、RAM19の、アドレス生成回路17
において生成されたアドレスに記憶される。RAM19
に記憶されたデータは、適宜読み出され、出力レジスタ
21に一旦記憶された後、24ビットのデータおよびシ
フト状態を示す1ビットのフラグとして出力される。
【0027】このように、本実施の形態のデータ記憶装
置1によれば、メモリに記憶するデータのビット長を制
限する際に、本来、切り捨てや丸めによる影響を顕著に
受ける絶対値が0に近い小さい値のデータに対し、その
精度劣化をなくすことができ、デジタルデータ全体の精
度劣化を効率的に抑制できる。
【0028】第2の実施の形態 前述した第1の実施の形態のデータ記憶装置1より出力
されたデータは、後段の回路において任意の演算処理な
どに用いられる。通常な、その演算処理の際に適宜デー
タのシフト状態を示すフラグが参照されて、各データの
桁などの調整がなされる場合が多い。すなわち、このよ
うなシフトを行なってデータの桁の変換を行なったとし
ても、その復元、すなわち桁を揃える処理は、特段の回
路を追加しなくとも、後段の処理の中で効率よく行なわ
れる場合が多い。しかしながら、データ記憶装置を完結
した1つの単なるメモリ回路と考えた場合には、記憶の
際にシフトしたデータは、元に戻して出力することが好
ましい。そのような形態のデータ記憶装置を、第2の実
施の形態として説明する。
【0029】図2は、第2の実施の形態のデータ記憶装
置2の構成を示すブロック図である。データ記憶装置2
は、入力レジスタ11、連続ビット検出回路13、シフ
ト回路15、アドレス生成回路17、RAM19、出力
レジスタ21およびシフト回路23を有する。入力レジ
スタ11〜出力レジスタ21の各構成部は、前述した第
1の実施の形態の対応する各部と同一の機能なので、そ
の説明は省略する。
【0030】シフト回路23は、出力レジスタ21より
出力される24ビットのデータを、28ビット(A’ビ
ット)のデータに拡張し、データ記憶装置2からの読み
出しデータとして外部に出力する。その際にシフト回路
23は、出力レジスタ21より出力データがシフトされ
たデータであるか否かを示すフラグに基づいてビット拡
張の処理を行なう。すなわち、出力データがシフトされ
ていないデータの場合には、出力データ24ビットをビ
ット拡張分の4ビットLSB側にシフトして、28ビッ
トのLSB側に配置し、上位の4ビットは、出力データ
のMSBと同じ値のビットで埋める。また、出力データ
がシフトされているデータの場合には、LSB側の、デ
ータシフト分の8ビットからビット拡張4ビットを引い
た4ビット分のデータを削除し、残りの20ビットのデ
ータをデータシフト分の8ビットLSB側にシフトし
て、28ビットのLSB側に配置し、上位の8ビット
は、出力データのMSBと同じ値のビットで埋める。
【0031】このような構成とすることで、データ記憶
装置2は、通常のメモリにデータを書き込み、書き込ん
だデータを読み出すのと同様の動作を行なうことにな
る。そして同時に、32ビットのデータを25ビット
(24+1ビット)幅のRAMに記憶し、最終的に28
ビットのデータを得るというビット削減の処理を行なっ
ているが、この時、絶対値の小さいデータについては、
28ビットのRAMを用いたのと同様の精度でデータを
得ている。したがって、そのような絶対値の小さいデー
タの精度の劣化を抑え、高精度な処理が行なえる。な
お、このデータ記憶装置2は、RAMの構成を基準とす
ると少ないビット数で精度の劣化を防ぐことのできるデ
ータ記憶装置2と考えることができ、また、データの精
度を基準とすると、同じ精度を小さいRAM構成で実現
したデータ記憶装置2と考えることができる。
【0032】第3の実施の形態 前述した第1の実施の形態のデータ記憶装置1は、入力
データのMSB側の9ビットが同一か否かを検査し、同
一の場合にはデータを8ビットシフトするようにしてい
た。すなわち、この検査ビット数およびシフト量はただ
一通りに固定されていた。しかし、これは入力データに
応じて適応的に設定することができる。入力データのビ
ットの連続量に応じて、いくつかのシフト量を設定でき
る構成のデータ記憶装置について、第3の実施の形態と
して説明する。
【0033】図3は、第3の実施の形態のデータ記憶装
置3の構成を示すブロック図である。なおデータ記憶装
置3では、入力される32ビットのデータを、20ビッ
トにビット削減して記憶するものとする。
【0034】まず、データ記憶装置3の構成について説
明する。データ記憶装置3は、入力レジスタ31、連続
ビット検出回路33、シフト量検出回路35、シフト回
路37、アドレス生成回路39、RAM41および出力
レジスタ43を有する。
【0035】入力レジスタ31は、データ記憶装置3に
順次入力される32ビット(Aビット)のデータを順に
記憶し、シフト回路37に出力する。
【0036】連続ビット検出回路33は、データ記憶装
置3に順次入力されるデータについてMSBより順に走
査して、MSBと同じ値のビットが連続している領域を
検出し、検出した連続量nをシフト量検出回路35に出
力する。なお、同じ値のビットの連続の検出は、最大1
3ビットまで行なうものとする。
【0037】シフト量検出回路35は、連続ビット検出
回路33より入力される同一の値のビットの連続量nに
基づいて、シフト量検出回路35内に保持するたとえば
表1に示すようなテーブルに基づいてデータのシフト量
Sを検出し、シフト回路37に出力する。また、そのテ
ーブルに基づいてそのシフト量を示すラベル値Lを検出
して、シフト回路37からRAM41へのデータの書き
込みに同期してRAM41に出力する。
【0038】
【表1】(表1)
【0039】シフト回路37は、シフト量検出回路35
から入力されるシフト量だけ、入力レジスタ11より入
力される32ビットのデータをMSB側にシフトし、上
位20ビット(Qビット)を選択して、RAM19に出
力する。
【0040】アドレス生成回路39は、図示せぬ制御装
置により制御され、RAM41にデータを記憶するアド
レス、あるいは、RAM41よりデータを読み出すアド
レスを生成し、RAM41に印加する。
【0041】RAM41は、図示せぬ制御装置より入力
される制御信号に基づいて、アドレス生成回路17より
入力されるアドレスに対する、データの書き込みまたは
データの読み出しを行なう。RAM41には、シフト回
路37より入力される20ビットのデータ、および、デ
ータのシフト量を示すラベルである2ビットのデータが
入力され、この22ビットのデータを記憶する。また、
データの読み出しの際には、この22ビットのデータを
読み出し、出力レジスタ43に出力する。
【0042】出力レジスタ43は、RAM41より読み
出されたデータを一時的に記憶し、20ビットの出力デ
ータ、および、2ビットのシフト量を示すラベルを出力
する。
【0043】次に、このような構成のデータ記憶装置3
の動作について説明する。データ記憶装置3に入力され
た32ビットのデータは、入力レジスタ31に記憶され
るとともに、連続ビット検出回路33に入力され、MS
Bからの同じ値のビットの連続量nが検出される。この
連続量nに基づいて、シフト量検出回路35において表
1に示したようなテーブルが参照され、シフト量Sおよ
びそのシフト量を示すラベル値Lが決定される。そし
て、シフト回路37において、シフト量検出回路35に
おいて決定されたシフト量Sにより、入力レジスタ31
に記憶されている入力データをMSB側にシフトし、上
位の20ビットを選択してRAM41に出力する。
【0044】RAM41は、シフト回路37より入力さ
れる20ビットのデータ、および、シフト量検出回路3
5より入力される2ビットのシフト量Sを示すラベル値
Lが、RAM19の、アドレス生成回路17において生
成されたアドレスに記憶される。RAM19に記憶され
たデータは、適宜読み出され、出力レジスタ43に一旦
記憶された後、20ビットのデータおよびシフト量を示
す2ビットのラベル値として出力される。なお、出力し
たデータの最終的な桁合わせ、調整は、データ記憶装置
3の後段に配置される所望のデータ処理回路において、
表1に相当するテーブルを参照することによりそのシフ
ト量を検出し行なわれることになる。
【0045】このように、本実施の形態のデータ記憶装
置3によれば、MSB側の同一ビット値の連続量に応じ
て、換言すればデータの絶対値の小ささに応じて、複数
のシフト量より適切なシフト量を選択してデータのシフ
トを行なうようにしている。したがって、メモリに記憶
するデータのビット長を制限する際の、絶対値が0に近
い小さいデータに対する精度劣化を、より適切に削減す
ることができ、デジタルデータ全体の精度劣化を効率的
に抑制できる。また、RAM41にデータとともに記憶
するデータのシフト量を示すデータは、ラベルを用いた
2ビットの情報なので、このような処理を行なうことに
よるRAM41の記憶容量の増大を極力抑えることがで
きる。
【0046】第4の実施の形態 前述した第3の実施の形態のデータ記憶装置3において
は、入力データのMSB側のビットの連続状態に基づい
て、適切なシフト量を選択してデータのシフトを行うよ
うにしている。しかし、ビットの連続状態に基づいて決
定される最適なシフト量でシフトを行なうようにするの
が、精度劣化を抑える点からは最も好ましい。そのよう
な構成のデータ記憶装置について、第4の実施の形態と
して説明する。
【0047】図4は、第4の実施の形態のデータ記憶装
置4の構成を示すブロック図である。データ記憶装置4
は、入力レジスタ31、連続ビット検出回路33、エン
コーダ45、シフト回路37、アドレス生成回路39、
RAM41および出力レジスタ43を有する。入力レジ
スタ31、連続ビット検出回路33、シフト回路37、
アドレス生成回路39および出力レジスタ43の構成お
よび動作は、前述した第3の実施の形態の構成および動
作と同じなので、その説明は省略する。
【0048】エンコーダ45は、連続ビット検出回路3
3より出力される同一値ビットの連続量nに対して、n
−1の値を算出し、その値をエンコードしてデータのシ
フト量を示す数値データを生成して、シフト回路37お
よびRAM41に出力する。前述したように、連続ビッ
ト検出回路33からは、1〜13の値が出力されるの
で、エンコーダ45でエンコードしたデータは4ビット
のデータとなる。
【0049】RAM41は、シフト回路37より入力さ
れる20ビットのデータ、および、エンコーダ45より
入力される4ビットのシフト量Sを、アドレス生成回路
17において生成されたアドレスに記憶する。
【0050】このような構成のデータ記憶装置4におい
ては、連続ビット検出回路33において入力データに対
してMSBからの同じ値のビットの連続量nが検出さ
れ、エンコーダ45においてn−1の値がエンコードさ
れてシフト量Sを直接に示す数値データが生成される。
そして、シフト回路37において、このシフト量Sによ
り、入力レジスタ31に記憶されている入力データをM
SB側にシフトし、上位の20ビットを選択してRAM
41に出力する。またRAM41は、シフト回路37よ
り入力される20ビットのデータ、および、エンコーダ
45より入力される4ビットのシフト量Sをアドレス生
成回路17において生成されたアドレスに記憶する。R
AM19に記憶されたデータは、適宜読み出され、出力
レジスタ43に一旦記憶された後、20ビットのデータ
および4ビットのシフト量Sとして出力される。
【0051】このように、本実施の形態のデータ記憶装
置4によれば、MSB側の同一ビット値の連続量に応じ
た最適なシフト量によりデータのシフトを行なうように
している。したがって、メモリに記憶するデータのビッ
ト長を制限する際の、絶対値が0に近い小さいデータに
対する精度劣化を、最適に抑えることができる。
【0052】変形例 なお、本発明は本実施の形態に限られるものではなく、
任意好適な種々の改変が可能である。たとえば、前述し
た各実施の形態で仮に設定した入力データのビット幅
A、RAMの記憶データビット幅Q、検出する同じ値の
ビットの連続量n、その最大検出範囲などは、回路の仕
様および求められる計算精度に応じて決められるべきも
のであって、何ら限定されるものではない。また、デジ
タルデータの形式として、2'sコンプリメント形式の場
合で説明したが、これに限定されるものではなく、同様
の上位シフトが可能なすべてのデータ形式での採用が可
能である。また、ビットを削減する方法として、切り捨
ての場合で説明しているが、切り捨てではなく、いわゆ
る丸めを併用することもありうる。
【0053】
【発明の効果】このように本発明によれば、絶対値の小
さいデータを、データの切り捨てや丸めあるいは演算回
路のビット長制限を行なってもデータの精度劣化を抑制
することができるデータ形式に変換するデータ変換装置
を提供することができる。また、そのように変換された
データを元のデータに戻すデータ変換装置を提供するこ
とができる。さらに、絶対値の小さいデータを精度劣化
を抑制しながらビット長制限を行なって記憶するデータ
記憶装置とその方法を提供することができる。そして、
これらの各装置および方法を用いることにより、処理す
るデジタルデータ全体の精度劣化を効果的に抑制でき
る。
【図面の簡単な説明】
【図1】図1は、本発明の第1の実施の形態のデータ記
憶装置の構成を示すブロック図である。
【図2】図2は、本発明の第2の実施の形態のデータ記
憶装置の構成を示すブロック図である。
【図3】図3は、本発明の第3の実施の形態のデータ記
憶装置の構成を示すブロック図である。
【図4】図4は、本発明の第4の実施の形態のデータ記
憶装置の構成を示すブロック図である。
【符号の説明】
1,2,3,4…データ記憶装置、11…入力レジス
タ、13…連続ビット検出回路、15…シフト回路、1
7…アドレス生成回路、19…RAM、21…出力レジ
スタ、23…シフト回路、31…入力レジスタ、33…
連続ビット検出回路、35…シフト量検出回路、37…
シフト回路、39…アドレス生成回路、41…RAM、
43…出力レジスタ、45…エンコーダ

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】入力されるビット幅Aのデータについて、
    MSBと同一の値のビットのMSBからの連続を検出す
    る連続ビット検出手段と、 前記検出したMSBと同一の値のビットの連続に基づい
    て、その連続量pを検出する連続ビット量検出手段と、 前記検出した同一の値のビットの連続量pに基づいて決
    定される所定のシフト量、前記入力データをMSB側に
    シフトするシフト手段と、 前記シフトされたデータのMSB側から、入力データの
    ビット幅Aより小さい所定のビット幅Q(Q<A)を選
    択し出力するデータ出力手段と、 前記シフト量が0でない場合に、前記出力されるデータ
    がシフトされたデータであることを示すフラグデータを
    出力するフラグ出力手段とを有するデータ変換装置。
  2. 【請求項2】前記シフト手段は、前記検出した同一の値
    のビットの連続量pが、所定のシフト量qに対して(q
    +1)以上であった場合に、前記入力データをMSB側
    にqビットシフトする請求項1に記載のデータ変換装
    置。
  3. 【請求項3】前記シフト手段は、 前記検出した同一の値のビットの連続量pに基づいて、
    シフト量qを決定するシフト量決定手段と、 前記決定されたシフト量q、前記入力データをMSB側
    にシフトするシフト手段とを有し、 前記フラグ出力手段は、前記シフト量qを示すデータを
    出力する請求項1に記載のデータ変換装置。
  4. 【請求項4】前記シフト手段は、前記検出した同一の値
    のビットの連続量pに基づいて、前記入力データをMS
    B側に(p−1)ビットシフトし、 前記フラグ出力手段は、前記シフト量(p−1)を出力
    する請求項1に記載のデータ変換装置。
  5. 【請求項5】入力されるビット幅Qのデータのデータの
    LSB側に必要に応じて値0のビットを挿入し、当該ビ
    ット幅Qよりも大きいビット幅A’(A’>Q)のデー
    タに変換するビット拡張手段と、 前記変換されたビット幅A’のデータを、前記データに
    対応して入力される当該データがシフトされたデータで
    あることを示すフラグデータに基づいて、所定のシフト
    量LSB側にシフトするシフト手段とを有するデータ変
    換装置。
  6. 【請求項6】入力されるビット幅Aのデータについて、
    MSBと同一の値のビットのMSBからの連続を検出す
    る連続ビット検出手段と、 前記検出したMSBと同一の値のビットの連続に基づい
    て、その連続ビット量pを検出する連続ビット量検出手
    段と、 前記検出した同一の値のビットの連続量pに基づいて決
    定される所定のシフト量、前記入力データをMSB側に
    シフトするシフト手段と、 前記シフトされたデータのMSB側から、入力データの
    ビット幅Aより小さい所定のビット幅Q(Q<A)のデ
    ータを選択し記憶するデータ記憶手段と、 前記シフト手段におけるシフト量が0でない場合に、前
    記記憶されるデータがシフトされたデータであることを
    示すフラグデータを前記記憶されるデータと対応付けて
    記憶するフラグ記憶手段とを有するデータ記憶装置。
  7. 【請求項7】前記シフト手段は、前記検出した同一の値
    のビットの連続量pが、所定のシフト量qに対して(q
    +1)以上であった場合に、前記入力データをMSB側
    にqビットシフトする請求項6に記載のデータ記憶装
    置。
  8. 【請求項8】前記シフト手段は、 前記検出した同一の値のビットの連続量pに基づいて、
    シフト量qを決定するシフト量決定手段と、 前記決定されたシフト量q、前記入力データをMSB側
    にシフトするシフト手段とを有し、 前記フラグ出力手段は、前記シフト量qを示すデータを
    出力する請求項6に記載のデータ記憶装置。
  9. 【請求項9】前記シフト手段は、前記検出した同一の値
    のビットの連続量pに基づいて、前記入力データをMS
    B側に(p−1)ビットシフトし、 前記フラグ出力手段は、前記シフト量(p−1)を出力
    する請求項6に記載のデータ記憶装置。
  10. 【請求項10】要求に応じて、前記記憶されたビット幅
    Qのデータおよび前記記憶されたフラグデータを読み出
    す読み出し手段と、 前記読み出されたのデータのLSB側に必要に応じて値
    0のビットを挿入し、 当該ビット幅Qよりも大きいビット幅A(A>Q)のデ
    ータに変換するビット拡張手段と、 前記変換されたビット幅Aのデータを、前記読み出され
    たフラグデータに基づいて、所定のシフト量LSB側に
    シフトするシフト手段とをさらに有する請求項6に記載
    のデータ記憶装置。
  11. 【請求項11】入力されるビット幅Aのデータについ
    て、MSBと同一の値のビットのMSBからの連続を検
    出し、 前記検出したMSBと同一の値のビットの連続に基づい
    て、その連続ビット量pを検出し、 前記検出した同一の値のビットの連続量pに基づいて決
    定される所定のシフト量、前記入力データをMSB側に
    シフトし、 前記シフトされたデータのMSB側から、入力データの
    ビット幅Aより小さい所定のビット幅Q(Q<A)を選
    択して記憶し、 前記シフト量が0でない場合に、前記記憶されるデータ
    がシフトされたデータであることを示すフラグを前記記
    憶されるデータと対応付けて記憶するデータ記憶方法。
JP2000248857A 2000-08-18 2000-08-18 データ変換装置、データ記憶装置とその方法 Pending JP2002063022A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000248857A JP2002063022A (ja) 2000-08-18 2000-08-18 データ変換装置、データ記憶装置とその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000248857A JP2002063022A (ja) 2000-08-18 2000-08-18 データ変換装置、データ記憶装置とその方法

Publications (1)

Publication Number Publication Date
JP2002063022A true JP2002063022A (ja) 2002-02-28

Family

ID=18738686

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000248857A Pending JP2002063022A (ja) 2000-08-18 2000-08-18 データ変換装置、データ記憶装置とその方法

Country Status (1)

Country Link
JP (1) JP2002063022A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012057258A1 (ja) * 2010-10-29 2012-05-03 株式会社オーディオテクニカ デジタル伝送システム、デジタル伝送方法およびデジタル伝送プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012057258A1 (ja) * 2010-10-29 2012-05-03 株式会社オーディオテクニカ デジタル伝送システム、デジタル伝送方法およびデジタル伝送プログラム

Similar Documents

Publication Publication Date Title
US6900747B2 (en) Method of compressing lookup table for reducing memory, non-linear function generating apparatus having lookup table compressed using the method, and non-linear function generating method
JP5366363B2 (ja) Mをnより小さいとしてnビット語をmビット語にトランスコードする方法および装置
JP2006227939A (ja) 演算装置
US5936870A (en) Arithmetic operating device for digital signal processing and method therefor
TW538372B (en) Zero digital sum value control device and method
JP2002063022A (ja) データ変換装置、データ記憶装置とその方法
JPH0566921A (ja) データシフト回路
JP2002063023A (ja) 演算装置および演算方法
US20050010632A1 (en) Digital signal processor based on jumping floating-point arithmetic
JP2803506B2 (ja) 除算器
CN114840175B (zh) 一种实现取余运算的装置、方法及运算芯片
US5374776A (en) System for processing musical sound data having overflow/underflow compensation
US20050160122A1 (en) Joint adaptive fixed-point representation and related arithmetic and processor thereof
JP2008112522A (ja) 誤り検出装置および誤り検出方法
JP3595449B2 (ja) 累積加算回路
JPH0883263A (ja) ディジタル信号処理装置
CN114895868A (zh) 基于两位商计算的除法运算单元及除法器
JPH01212921A (ja) A/d変換回路
JP2006155102A (ja) 演算処理装置
JP2003303096A (ja) 除算回路
JPH05191297A (ja) シリアル/パラレル変換回路
JP3521558B2 (ja) 伝送装置
US7277906B2 (en) Method for determining an output value having a lowest error value from an input value
KR940007925B1 (ko) 부호처리 기능을 가진 누산기
JP2004088157A (ja) データ変換方法、データ変換回路及びデータ変換プログラム