JPH0637644A - データ変換回路及びデータ変換方法 - Google Patents

データ変換回路及びデータ変換方法

Info

Publication number
JPH0637644A
JPH0637644A JP19402192A JP19402192A JPH0637644A JP H0637644 A JPH0637644 A JP H0637644A JP 19402192 A JP19402192 A JP 19402192A JP 19402192 A JP19402192 A JP 19402192A JP H0637644 A JPH0637644 A JP H0637644A
Authority
JP
Japan
Prior art keywords
coefficient
input data
coefficients
data
divided
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
JP19402192A
Other languages
English (en)
Other versions
JP3091574B2 (ja
Inventor
Mitsuyoshi Fukuda
光芳 福田
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP04194021A priority Critical patent/JP3091574B2/ja
Publication of JPH0637644A publication Critical patent/JPH0637644A/ja
Application granted granted Critical
Publication of JP3091574B2 publication Critical patent/JP3091574B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 入力データを指数関数に基づくデータに変換
するために、近似直線を表す直線方程式の係数をROM
に記憶しておくデータ変換回路及びデータ変換方法にお
いて、係数の数を少なくし、簡単な変換ができる方法を
提供する。 【構成】 入力データの取り得る範囲をN個の範囲に分
割し、各分割された範囲に対応して係数cj(j=1・
2・・・N)を設定し、更に、各分割された範囲を各々
M個に分割し、該分割された範囲に対応する指数関数曲
線を直線Y=cj(aiX+bi)(i=1・2・・・
M)で近似し、前記係数cj、係数ai、及び、係数bi
を記憶するメモリ1と、該メモリ1から入力データに応
じて前記係数cj、係数ai、及び、係数biを読み出す
アドレスカウンタ2と、前記メモリ1から読み出された
係数cj、係数ai、及び、係数biと前記入力データに
基づきY=cj(aiX+bi)を演算する演算回路5と
を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、入力データに対して指
数関数の関係にある出力データを得るデジタルデータの
変換回路及び変換方法に関する。
【0002】
【従来の技術】近年、アナログ信号をデジタル信号に変
換して、DSP(デジタル・シグナル・プロセッサ)に
よって信号処理を行う技術が盛んに行われている。例え
ば、オーディオ装置でDSPを利用すると、グラフィッ
クイコライザや残響音等の処理が音質の劣化無しにデジ
タルで簡単に行えるようになった。
【0003】オーディオ信号を処理する場合には、入力
信号に対して指数関数の関係にある出力信号に変換する
処理がしばしば行われている。このような変換を行うた
めに、指数関数をテーラー近似あるいはチェビシェフ近
似等の近似式に基づいた計算をしなければならない。し
かし、この計算をするためには非常に多くのプログラム
ステップを必要とし、また、処理時間も多くなるため、
他のプログラムに与える影響が大きかった。
【0004】そこで、従来は上述の近似計算を行わず
に、ROMテーブルを参照する方法が採用されていた。
図4に示すように、入力データの取り得る範囲を細かく
均等に分割し、分割された各入力に対する指数関数曲線
の最小値(あるいは平均値でもよい)を、入力データを
アドレスとしてメモリに各々記憶しておき、変換すべき
入力データをアドレスとしてROMテーブルから変換デ
ータを読み出す方法である。しかし、この方法によると
変換は、簡単に行えるが、図4の如く、分割された一つ
の範囲内にある入力データに対しては全て同一データに
変換されるため、真の指数関数の変換値との誤差が大き
くなる、特に、入力データが大きい場合にはその誤差は
より大きくなる。そのために、入力データの分割数をよ
り細かくしなければならないが、この場合にはデータ数
が増大し、大きい容量をもったROMが必要になり、R
OMの利用効率が悪化するというジレンマがある。
【0005】そこで、更に改良された方法として、図5
の方法が考えられた。入力データの取り得る範囲をNに
分割し、この分割点に対応する指数関数曲線の点を直線
で結び近似する方法である。即ち、分割された各範囲の
直線をYi=aiX+bi(i=1・2・・・N)と表
し、N本の直線の係数ai及び係数biをROMに記憶し
ておく。そして、変換の際には、入力データに対応する
係数ai及び係数biをROMから読み出して、Y=ai
X+biを演算して変換出力を得る方法である。この方
法によれば、入力データの取り得る範囲を分割する数を
少なくしても、指数関数曲線と近似直線の誤差が少なく
なり、ROMに記憶する係数の数も少なくなる。
【0006】
【発明が解決しようとする課題】図5に示されたデータ
変換方法によると、確かにROMテーブルに記憶する係
数の数は従来に比べて減少しているが、それでも、例え
ば入力データの範囲の分割数が32である場合には、係
数の数は64個になり、まだその数が多い。
【0007】
【課題を解決するための手段】本発明は上述した点に鑑
みて創作されたものであり、入力データの取り得る範囲
をN個の範囲に分割し、各分割された範囲に対応して係
数cj(j=1・2・・・N)を設定し、更に、各分割
された範囲を各々M個に分割し、該分割された範囲に対
応する指数関数曲線を直線Y=cj(aiX+bi)(i
=1・2・・・M)で近似し、前記係数cj、係数ai
及び、係数biを記憶するメモリと、該メモリから入力
データに応じて前記係数cj、係数ai、及び、係数bi
を読み出すアドレスカウンタと、前記メモリから読み出
された係数cj、係数ai、及び、係数biと前記入力デ
ータに基づきY=cj(aiX+bi)を演算する演算手
段とを備えたデータ変換回路を提供するものである。
【0008】また、上記データ変換回路を用いて、入力
データの上位pビットを前記アドレスカウンタにセット
して前記係数cjを読み出し、前記入力データの上位p
ビットから次のrビットを前記アドレスカウンタにセッ
トして前記係数ai及び係数biを読み出したのち、前記
入力データの残余のビットのデータと前記読み出された
係数cj、係数ai、及び、係数biによってY=cj(a
iX+bi)を前記演算手段で演算するデータ変換方法を
提供するものである。
【0009】
【作用】上述した手段によれば、入力データの範囲をN
個に分割した各々の範囲に係数cjが設定され、また、
分割された範囲が更にM個に分割され、そのM個の各々
に近似直線が設けられ、その直線の式をY=cj(ai
+bi)とすることにより、係数ai及び係数biがN個
の範囲の各々に共通になるため、ROMに記憶すべき係
数の数は、N+2M個となり、図5の従来例よりも少な
くすることができる。
【0010】更に、入力データの上位pビットを係数c
jの読み出しアドレスとし、上位pビットに続くrビッ
トを係数ai及び係数biの読み出しアドレスとすること
ができ、読み出された係数cj、係数ai、及び、係数b
iに基ずきY=cj(aiX+bi)を演算する際に、Xの
値に入力データの上位pビットとこれに続くrビットを
除くデータを使用することができるので演算が簡単にな
る。
【0011】
【実施例】図1は本発明の実施例を示すブロック図であ
る。1は、係数cj、係数ai、及び、係数biを固定的
に記憶するROM、2はROM1のアドレスを指定する
アドレスカウンタ、3は変換すべき入力データを保持す
る16ビットのレジスタ、4はレジスタ3の上位pビッ
トとこれに続くrビットを切り替えてアドレスカウンタ
2にセットする切り替え回路、5はROM1から読み出
された係数cj、係数ai、及び、係数biとレジスタ3
に保持された入力データに基づいてY=cj(aiX+b
i)の計算を行う演算回路である。
【0012】ROM1に保持される係数cj、係数ai
及び、係数biは、指数関数によって決定される。そこ
で、図2を用いて係数cj、係数ai、及び、係数bi
ついて説明する。図2において、横軸は入力データ、縦
軸は変換後の出力データであり、指数関数は、Y=2X
/2で表される。ここで、係数cj、係数ai、及び、係
数biを判り易くするためにNを2、Mを2としてい
る。即ち、横軸の入力データが取り得る範囲「8」を2
等分し、「0」から「4」までの範囲の係数をc1
「4」から「8」までの範囲の係数をc2とする。更に
「0」から「4」までの範囲及び「4」から「8」まで
の範囲を各々2等分する。そして、各々等分された範囲
の指数関数曲線を直線Y1、Y2、Y3、Y4で近似する。
この直線を式で表すとき、Y軸が各々入力「0」、
「2」、「4」、「6」にあると仮定して表現すると、 Y1=X/2+1 Y2=X +2 Y3=2X +4=4(X/2+1) Y4=4X +8=4(X +2) となり、これはY=cj(aiX+bi)という形にな
る。
【0013】従って、図2の場合、係数c1は1、係数
2は4となり、また、係数a1は1/2、係数a2
1、係数b1は1、係数b2は2となり、係数の数は合計
6個になる。図2は、4本の直線で近似した場合を示し
たが、4本より多数の直線で近似した場合、Nの数値に
よって係数の数が変わってくる。例えば、32本の直線
で近似した場合、図3に示すように、Nが2のときは、
係数cjは2個、係数ai及び係数biは各々16個にな
り、合計34個の係数となる。係数の数が最小になるの
は、Nが8の場合であり、この場合には、係数cjは8
個、係数ai及び係数b iは各々4個になり、合計16個
になる。従って、指数関数の近似精度は、直線の数が多
くなればそれだけ良くなるが、同じ近似精度では、Nの
選び方によって係数の数が変わってくるため、係数の数
が最小になるようにNを設定する必要がある。
【0014】図1の実施例に示されたROM1には、上
述のように曲線を32本の直線で近似し、Nを8とした
場合の係数16個が記憶されている。例えば、アドレス
「0」からアドレス「7」には、順次係数c1、c2、・
・・c8が記憶され、アドレス「8」から「15」に
は、係数a1、b1、a2、b2、・・・a4、b4が順次記
憶されている。
【0015】そこで、図1の変換回路における変換動作
を説明する。まず、変換すべき入力データ(16ビット
とする)は、レジスタ3に保持される。そして、切り替
え回路4によって、この入力データの上位3ビット(p
=3)がアドレスカウンタ2の下位ビットB0、B1、B
2にセットされ、残りのビットは“0”にセットされ
る。これにより、ROM1のアドレス「0」からアドレ
ス「7」のいずれかがアクセスされ、入力データの上位
3ビットに応じた係数c jが読み出され、演算回路5に
出力される。即ち、入力データの上位3ビットは、8分
割された横軸のどの範囲に相当するかを示しているので
ある。
【0016】次に、切り替え回路4は、レジスタ3に保
持された入力データの上位ビットから4ビット目と5ビ
ット目の2ビット(r=2)を選択し、アドレスカウン
タ2のビットB1とB2にセットするとともに、ビットB
3には“1”がセットされ、ビットB0を含む残りのビッ
トは“0”にセットされる。これによってROM1のア
ドレスは「8」、「10」、「12」、「14」のいず
れかがアクセスされるため、係数aiがROM1から読
み出され、演算回路5に出力される。次に、アドレスカ
ウンタ2をインクリメントすることにより、アドレスが
1つ進むため、このアドレスでROM1をアクセスする
と、係数biが読み出され、演算回路2に出力される。
【0017】演算回路5はROM1から読み出された係
数cj、係数ai、及び、係数biとレジスタ3に保持さ
れた入力データの下位11ビットにより、Y=cj(ai
X+bi)の計算を行う。通常、DSPなどでは乗算器
とALUを有しているため、Y=cj(aiX+bi)の
計算は、簡単に行うことができる。計算結果は変換デー
タとして出力され、図示しないRAM等に記憶され、そ
の後の信号処理に利用される。
【0018】尚、本実施例では、最初に係数cjを読み
出し、その後、係数ai及び係数biを読み出したが、最
初に係数ai及び係数biを読み出して、その後、係数c
jを読み出すようにしてもよい。
【0019】
【発明の効果】上述の如く、本発明によれば、ROMに
記憶される係数の数が従来に比べて大幅に少なくなる。
例えば、図5に示された方法では、32本の直線で指数
関数曲線を近似した場合には、64個の係数を記憶しな
ければならないが、本発明によれば、16個の係数を記
憶するだけでよい。従って、ROMの利用効率が更に向
上する利点を有している。
【0020】また、入力データの上位pビットをアドレ
スとして係数cjが読み出され、上位pビットに続くr
ビットによって係数ai及び係数biが読み出されるの
で、ROMのアクセスが簡単となる。さらに、Y=cj
(aiX+bi)の計算に際しては、入力データの上位p
ビット及びこれに続くrビットを除いたデータと係数c
j、係数ai、及び、係数biの演算が簡単となる利点が
ある。
【図面の簡単な説明】
【図1】本発明の実施例を示すブロック図である。
【図2】入力データに対する出力データの関数を示す図
である。
【図3】係数の数を示す図である。
【図4】従来の近似方法を示す図である。
【図5】改良された近似方法を示す図である。
【符号の説明】
1 ROM 2 アドレスカウンタ 3 レジスタ 4 切り替え回路 5 演算回路

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 線形の入力データを指数関数の出力デー
    タに変換する方法において、入力データの取り得る範囲
    をN個の範囲に分割し、各分割された範囲に対応して係
    数cj(j=1・2・・・N)を設定し、更に、各分割
    された範囲を各々M個に分割し、該分割された範囲に対
    応する指数関数曲線を直線Y=cj(aiX+bi)(i
    =1・2・・・M)で近似し、前記係数cj、係数ai
    及び、係数biを記憶するメモリと、該メモリから入力
    データに応じて前記係数cj、係数ai、及び、係数bi
    を読み出すアドレスカウンタと、前記メモリから読み出
    された係数cj、係数ai、及び、係数biと前記入力デ
    ータに基づきY=cj(aiX+bi)を演算する演算手
    段とを備えたデータ変換回路。
  2. 【請求項2】 前記入力データの上位pビットを前記ア
    ドレスカウンタにセットして前記係数cjを読み出し、
    前記入力データの上位pビットから次のrビットを前記
    アドレスカウンタにセットして前記係数ai及び係数bi
    を読み出したのち、前記入力データの残余のビットのデ
    ータと前記読み出された係数cj、係数ai、及び、係数
    iによってY=cj(aiX+bi)を前記演算手段で演
    算することを特徴とする請求項1記載のデータ変換回路
    を用いたデータ変換方法。
JP04194021A 1992-07-21 1992-07-21 データ変換回路及びデータ変換方法 Expired - Fee Related JP3091574B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04194021A JP3091574B2 (ja) 1992-07-21 1992-07-21 データ変換回路及びデータ変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04194021A JP3091574B2 (ja) 1992-07-21 1992-07-21 データ変換回路及びデータ変換方法

Publications (2)

Publication Number Publication Date
JPH0637644A true JPH0637644A (ja) 1994-02-10
JP3091574B2 JP3091574B2 (ja) 2000-09-25

Family

ID=16317627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04194021A Expired - Fee Related JP3091574B2 (ja) 1992-07-21 1992-07-21 データ変換回路及びデータ変換方法

Country Status (1)

Country Link
JP (1) JP3091574B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132495A (ja) * 2000-10-19 2002-05-10 Burr-Brown Japan Ltd 指数変換の方法および装置
JP2005197989A (ja) * 2004-01-07 2005-07-21 Mega Chips Corp べき乗演算回路、量子化回路および方法
JP2010246318A (ja) * 2009-04-09 2010-10-28 Fuji Electric Systems Co Ltd 誘導電動機の制御装置
JP2013214305A (ja) * 2012-03-30 2013-10-17 Apple Inc 級数展開を使用する超越的及び非直線的コンポーネント
JP2019075003A (ja) * 2017-10-18 2019-05-16 国立大学法人横浜国立大学 近似計算装置、近似計算方法及びプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132495A (ja) * 2000-10-19 2002-05-10 Burr-Brown Japan Ltd 指数変換の方法および装置
JP2005197989A (ja) * 2004-01-07 2005-07-21 Mega Chips Corp べき乗演算回路、量子化回路および方法
JP2010246318A (ja) * 2009-04-09 2010-10-28 Fuji Electric Systems Co Ltd 誘導電動機の制御装置
JP2013214305A (ja) * 2012-03-30 2013-10-17 Apple Inc 級数展開を使用する超越的及び非直線的コンポーネント
US9015217B2 (en) 2012-03-30 2015-04-21 Apple Inc. Transcendental and non-linear components using series expansion
JP2019075003A (ja) * 2017-10-18 2019-05-16 国立大学法人横浜国立大学 近似計算装置、近似計算方法及びプログラム

Also Published As

Publication number Publication date
JP3091574B2 (ja) 2000-09-25

Similar Documents

Publication Publication Date Title
US4715257A (en) Waveform generating device for electronic musical instruments
EP0113275B1 (en) Spectrum display device for audio signals
EP0159546A1 (en) Digital graphic equalizer
JPH0562495A (ja) サンプリング周波数変換器
JPH0637644A (ja) データ変換回路及びデータ変換方法
WO1991010955A1 (en) Address processor for a signal processor
JPH04282969A (ja) 偏向補正波形発生回路
JPS5853217A (ja) デジタルフイルタ回路
JPH01176113A (ja) ディジタル信号処理装置
JP2001211349A (ja) 伝達関数を実現する方法及び装置
JPH09312549A (ja) レート変換回路
JP2517702B2 (ja) イコライザ装置
JP3591451B2 (ja) データ処理装置およびデータ処理方法
JPH06202752A (ja) 指数関数データの補間装置
JP3261729B2 (ja) 直線補間方法及びその回路
JP2589199B2 (ja) デジタルデータの非線形変換方法及びこれを用いた信号処理装置
JPS5913782B2 (ja) ディジタル演算回路
JP2778415B2 (ja) ディストーション効果装置
JP3252297B2 (ja) ディジタルフィルタ装置付波形データ出力装置
JPH07140982A (ja) 波形データ発生装置
CN115865044A (zh) 支持浮点系数的定点iir滤波器和电子设备
JPH0828646B2 (ja) ディジタルフィルタ
JPS61224039A (ja) デイジタル対数変換回路
JPH0695627B2 (ja) 低周波帯域デジタルフィルタ
JPH0844705A (ja) デジタルデータ符号化装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080721

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20080721

Year of fee payment: 8

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

Year of fee payment: 9

Free format text: PAYMENT UNTIL: 20090721

LAPS Cancellation because of no payment of annual fees