JPH063580B2 - Logarithmic conversion method - Google Patents

Logarithmic conversion method

Info

Publication number
JPH063580B2
JPH063580B2 JP59193293A JP19329384A JPH063580B2 JP H063580 B2 JPH063580 B2 JP H063580B2 JP 59193293 A JP59193293 A JP 59193293A JP 19329384 A JP19329384 A JP 19329384A JP H063580 B2 JPH063580 B2 JP H063580B2
Authority
JP
Japan
Prior art keywords
value
information
coefficient
register
input
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
JP59193293A
Other languages
Japanese (ja)
Other versions
JPS6172335A (en
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.)
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 JP59193293A priority Critical patent/JPH063580B2/en
Publication of JPS6172335A publication Critical patent/JPS6172335A/en
Publication of JPH063580B2 publication Critical patent/JPH063580B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

〔産業上の利用分野〕 この発明は対数変換方式、特にディジタル情報を対数変
換する場合等に用いて好適な対数変換方式に関する。 〔従来の技術〕 近年、音声信号のアナログ信号をディジタル的に演算処
理することが、分析,測定等の分野で多く行なわれるよ
うになって来ている。ディジタルフィルタや高速フーリ
エ変換(FFT)等がその一例である。 中でも例えば音声認識装置では、音声の特徴を抽出する
前処理の段階で対数の計算を必要とすることがある。そ
のような場合、従来は変換テーブルを参照したり、或い
の如き級数展開で近似する方法が行なわれていた。 しかしながら、このような従来法の場合、変換テーブル
の参照による方法では莫大なメモリを必要とするので構
成が複雑になると共に高価となり、一方級数展開による
方法では計算量の割に精度が得にくい等の問題があっ
た。 〔発明が解決しようとする問題点〕 この発明は斯る点に鑑みてなされたもので、少ない手順
で精度のすぐれた対数変換方式を提供するものである。 〔問題点を解決するための手段〕 この発明は、入力されたX情報データに対して、Y=lo
g aXの対数変換を行う対数変換方式において、複数ビッ
トから成るY情報の所定ビットにウィンドウを設け(ス
テップ(ハ))、入力されたX情報データを第1のレジ
スタに入力し(ステップ(ニ))、X情報の初期値を第
2のレジスタに入力し(ステップ(ヘ))、a情報に関
連した係数が予め記憶されているメモリの係数ポインタ
を初期設定し(ステップ(ト))、上記係数ポインタに
対応する係数及び上記第2のレジスタに保持されている
値との乗算値と上記第1のレジスタに保持されているX
情報データの値とを比較し(ステップ(チ))、上記乗
算値が上記X情報データの値より大きければこの乗算値
を上記第2のレジスタに入力し(ステップ(リ))、上
記ウィンドウの設けられているY情報の所定ビットに特
定ビットをたて(ステップ(ヌ))、上記乗算値が上記
X情報データの値より小さければ上記ウィンドウをシフ
トすると共に上記係数を変え上記比較動作を繰り返す
(ステップ(ル)〜(カ),(チ))ように構成してい
る。 〔作用〕 ステップ(ハ)でY情報の所定ビットにウィンドウを設
けることにより何ビット目の情報を求めるかが決定さ
れ、ステップ(ニ)で第1のレジスタに入力されたX情
報を入力することにより入力データが準備され、ステッ
プ(ヘ)で第2のレジスタにX情報の最大値を初期値と
して入力することによりX情報は最大どの位の値を有す
るかが設定され、ステップ(ト)でa情報に関連した係
数ポインタを初期設定することにより、0番地に対応す
るa情報に関連した係数が設定される。 ステップ(チ)でX情報の保持値及び初期設定時の係数
の積が入力データより大きいか否かを判断し、若し大き
ければステップ(リ)でその積の値をX情報の保持値に
代えて第2のレジスタに入力し、ステップ(ヌ)でウィ
ンドウの設けられているY情報の所定ビットに特定ビッ
ト例えば“1”をたて、若し大きくなければステップ
(ル)でウィンドウをシフトすると共にステップ(ヲ)
で係数ポインタを1個インクリメントして係数を変えて
上述の比較動作を繰り返す。 〔実施例〕 以下、この発明の一実施例を第1図〜第4図に基づいて
詳しく説明する。 Y=logXのグラフは通常第2図のように表わされる。対
数の底がeであっても、10であっても、また他の数値で
あってもグラフの形は相似である。 ここで、入力としてのX情報は0<X<1の範囲とし、
例えば24ビットで与えられるものとすると、その最大値
は、2′sコンプリメントコードで表わせば、011111111
‥‥111(“1”が連続23個)である。一方、Yは便宜
上Y=−logXとして計算することとし、16ビット精度で
得るものとする。また、0<Y<1でその最大値は、同
様に2′sコンプリメントコードで表わせば、0111‥‥11
(“1”が連続15個)である。 とすると、Y=−logXから となる。つまり、Yを求めることはAnが“0”であるか
“1”であるかを求めることに他ならない。 その方法は、後述されるように、e-1/2,e-1/4,e
-1/8‥‥‥を順次乗じながらXと比較してゆく逐次比較
法を用いる。ここで対数の底はeとしたが、一般的には
aでよい。例えばX情報が24ビットで与えられ、0<X
<1、0<Y<1としたとき、Xの範囲を1〜2-24
すれば、 Y=−log a(2-24)=1 から、a-1=2-24、よってa=224が求められる。そ
してこのとき、上述のAnが0か1かを求めるためのビッ
ト毎の係数は、 即ち a-1/2、a-1/4、a-1/8、a-1/16‥‥ となる。従って、順次乗じる数としては(224-1/2
-12,(224-1/4=2-6,(224-1/8=2-3,‥
‥ となり、第3の表の如くなる。 そこで、Y=log aXの求め方を第1図及び第2図を参照
し乍ら説明する。なお、ここでは、X,Yは共に一例と
して8ビットで表現されている場合を示している。 ステップ(イ)の開始状態よりステップ(ロ)にすす
み、最終的に求められるYの情報として、先ず結果レジ
スタ(図示せずも後述のデータメモリ(1)内にあり)に
TECHNICAL FIELD The present invention relates to a logarithmic conversion method, and more particularly to a logarithmic conversion method suitable for logarithmic conversion of digital information. [Prior Art] In recent years, digital processing of analog signals of voice signals has become popular in fields such as analysis and measurement. Digital filters and fast Fourier transforms (FFT) are examples. Among them, for example, a voice recognition device may require logarithmic calculation at the stage of preprocessing for extracting a voice feature. In such a case, conventionally, the conversion table is referred to, or The method of approximation by the series expansion such as was performed. However, in the case of such a conventional method, the method by referring to the conversion table requires a huge amount of memory, which complicates the configuration and is expensive. On the other hand, the method by series expansion makes it difficult to obtain accuracy for the amount of calculation. There was a problem. [Problems to be Solved by the Invention] The present invention has been made in view of the above problems, and provides a logarithmic conversion method having excellent accuracy with a small number of steps. [Means for Solving Problems] The present invention relates to Y = lo for input X information data.
In the logarithmic conversion method of performing logarithmic conversion of g aX, a window is provided at a predetermined bit of Y information consisting of a plurality of bits (step (c)), and the input X information data is input to the first register (step (d). )), The initial value of the X information is input to the second register (step (f)), and the coefficient pointer of the memory in which the coefficient related to the a information is stored in advance is initialized (step (to)), The multiplication value of the coefficient corresponding to the coefficient pointer and the value held in the second register and X held in the first register
The value of the information data is compared (step (h)), and if the multiplied value is larger than the value of the X information data, the multiplied value is input to the second register (step (re)), and the window A specific bit is set to a predetermined bit of the provided Y information (step (nu)), and if the multiplication value is smaller than the value of the X information data, the window is shifted and the coefficient is changed, and the comparison operation is repeated. (Steps (L) to (F), (H)) are configured. [Operation] In step (c), it is determined which bit of information is to be obtained by providing a window in a predetermined bit of Y information, and in step (d), the X information input to the first register is input. The input data is prepared by, and the maximum value of the X information is set as the initial value by inputting the maximum value of the X information to the second register in the step (f). By initializing the coefficient pointer associated with the a information, the coefficient associated with the a information corresponding to address 0 is set. In step (h), it is determined whether the product of the held value of X information and the coefficient at the time of initialization is larger than the input data, and if it is larger, the value of the product is set as the held value of X information in step (re). Instead, input to the second register, and in step (nu), set a specific bit, for example "1", to the predetermined bit of the Y information provided with the window, and shift the window in step (ru) if not larger. Do and step (wo)
Then, the coefficient pointer is incremented by 1, the coefficient is changed, and the above comparison operation is repeated. [Embodiment] An embodiment of the present invention will be described below in detail with reference to FIGS. 1 to 4. The graph of Y = logX is usually represented as shown in FIG. The shape of the graph is similar whether the logarithmic base is e, 10 or any other numerical value. Here, the X information as input is in the range of 0 <X <1,
For example, if it is given with 24 bits, its maximum value is 0111111111 when expressed by the 2's complement code.
... 111 (23 consecutive "1" s). On the other hand, Y is calculated as Y = -logX for the sake of convenience, and is obtained with 16-bit precision. When 0 <Y <1, the maximum value is 011 ... 11 if similarly expressed by the 2's complement code.
(15 consecutive "1" s). Then, from Y = -logX Becomes In other words, the determination of Y is nothing but the determination of whether An is "0" or "1". The method is, as will be described later, e −1/2 , e −1/4 , e
-1/8 The successive approximation method is used by sequentially multiplying by 1 and comparing with X. Here, the base of the logarithm is e, but it may be a in general. For example, X information is given in 24 bits and 0 <X
When <1, 0 <Y <1, and the range of X is 1 to 2 -24 , Y = -log a (2 -24 ) = 1 to a -1 = 2 -24 , so a = 2 24 is required. Then, at this time, the coefficient for each bit for determining whether the above An is 0 or 1 is That is a -1/2, a -1/4, a -1/8 , become a -1/16 ‥‥. Therefore, as the number to be multiplied in sequence, (2 24 ) -1/2 =
2 -12 , (2 24 ) -1/4 = 2 -6 , (2 24 ) -1/8 = 2 -3 , ...
And becomes as shown in the third table. Therefore, a method of obtaining Y = log aX will be described with reference to FIGS. 1 and 2. Note that, here, as an example, both X and Y are represented by 8 bits. From the start state of step (a), proceed to step (b), and as the finally obtained information of Y, first, in a result register (not shown, it is also in the data memory (1) described later).

〔00000000〕の8ビットを入れておく。次にス
テップ(ハ)において、1ビット目は“0”であること
が既に判明しているので2ビット目が“1”又は“0”
のいずれであるかを求めるべく2ビット目にウィンドウ
を設ける。すなわち〔01000000〕とする。次に
ステップ(ニ)において、X情報の入力データとして或
る値x1(第2図参照)を第1のレジスタ(図示せずも
後述するデータメモリ(1)内にあり)に入力する。次に
ステップ(ホ)において、ループカウンタ(図示せず)
のN値をY情報の最大ビット数7に設定する。次にステ
ップ(ヘ)において、X情報の最大値、すなわちこの場
合〔01111111〕を初期値(A)として第2のレ
ジスタ(図示せずも後述するデータメモリ(1)内にあ
り)に入力する。次にステップ(ト)において、係数ポ
インタKPを初期設定する。すなわちこの場合第3図に
おけるアドレス0の設定である。この実施例においては
X情報のビット数が8ビットであるため、係数Kは となる。また、Y情報が8ビットであるため、アドレス
が0から7までの8ワードの係数テーブルとなる。従っ
てこのときK=2-4が選択される。 次にステップ(チ)において、第2のレジスタに入力さ
れたX情報の初期値〔01111111〕と係数K=2
-4の積(これをPとする)が第1のレジスタに入力され
ているデータx1より大きいか否かを判断する。この第
1回目の試みでは、第2図からもわかるように、上述の
積Pはx1より小さいのでステップ(ル)にすすむ。そ
して、ここで2ビット目に設けられているウィンドウを
3ビット目に右シフトする。すなわち第2図に示すよう
に、〔00100000〕とする。また、ステップ
(ヲ)において、係数ポインタKPを1つだけインクリ
メントする。すなわち、第3図におけるアドレス1にす
すむ。これによって係数K=2-2が選択される。また、
ステップ(ワ)において、ループカウンタN値を1だけ
デクリメントする。すなわちいままで7であった所を6
とする。そして、ステップ(カ)にすすみ、ここでNの
値が0であるか否かを判断し、この場合0でないのでス
テップ(チ)に戻り、第2回目の試みに入る。 ステップ(チ)において、再びX情報の保持値〔011
11111〕と係数K=2-2の積(これをP1とする)
が第1のレジスタに入力されているデータx1より大き
いか否かを判断する。この第2回目の試みでは、第2図
からもわかるように、上述の積P1はx1より大きいので
ステップ(リ)にすすむ。そして、ここで、第2のレジ
スタに入力されているX情報の保持値〔0111111
1〕に代って、これと係数K=2-2との積P1の値を入
力する。また、次のステップ(ヌ)において、ウィンド
ウの設けられていた3ビット目に“1”をたてる。これ
によって、Yの値は第2図に示すように〔001・・・
・・〕と3ビット目までは確定したことになる。 次にステップ(ル)にすすみ、3ビット目に設けられて
いたウィンドウを4ビット目に右シフトする。すなわち
〔00010000〕とする。また、ステップ(ニ)に
おいて、係数ポインタKPを1つだけインクリメントす
る。すなわち、第3図におけるアドレス2にすすむ。こ
れによって係数K=2-1が選択される。またステップ
(ワ)において、ループカウンタのN値を1だけデクリ
メントする。すなわち6を5とする。そして、ステップ
(カ)にすすみ、N値は0でないのでステップ(チ)に
戻り、第3回目の試みに入る。 ステップ(チ)において、再び上述の積P1と係数K=
-1の積(これをP2とする)が第1のレジスタに入力
されているデータx1より大きいか否かを判断する。こ
の第3回目の試みでは、第2図からもわかるように、上
述の積P2はx1より小さいのでステップ(ル)にすす
む。そして、ここで、上述同様4ビット目に設けられて
いるウィンドウを5ビット目に右シフトする。すなわち
〔00001000〕とする。また、ステップ(ヲ)に
おいて、係数ポインタKPを更に1つだけインクリメン
トする。すなわち、第3図におけるアドレス3にすす
む。これによって、係数K=2-0.5が選択される。ま
た、ステップ(ワ)において、ループカウンタのN値を
1だけデクリメントする。すなわち5を4とする。そし
て、ステップ(カ)にすすみ、N値は0でないのでステ
ップ(チ)に戻り、第4回目の試みに入る。なお、第3
回目の試みまでによってYの値は第2図に示すように
〔0010・・・・〕と4ビット目までは確定したこと
になる。 ステップ(チ)において、再び上述の積P1と係数K=
-0.5の積(これをP3とする)が第1のレジスタに入
力されているデータx1より大きいか否かを判断する。
この第4回目の試みでは、第2図からもわかるように、
上述の積P3はx1より小さいのでステップ(ル)にすす
む。そして、ここで、上述同様5ビット目に設けられて
いるウィンドウを6ビット目に右シフトする。また、ス
テップ(ヲ)において、係数ポインタKPを更に1つだ
けインクリメントする。すなわち、第3図におけるアド
レス4にすすむ。これによって、係数K=2-0.25が選
択される。また、ステップ(ワ)において、ループカウ
ンタのN値を1だけデクリメントする。すなわち4を3
とする。そして、ステップ(カ)にすすみ、N値は0で
ないのでステップ(チ)に戻り、第5回目の試みに入
る。 以下同様にして逐次比較を行い、ステップ(ワ)におい
てループカウンタのN値が0になると、ステップ(カ)
においてN=0が判断され、ステップ(ヨ)で終了す
る。この時逐次比較により収歛して入力データx1に対
応するYの値が、求める真のY情報である。 なお、上述の処理は第4図に示すようなディジタル信号
処理器(Digital Signal Processer)によって行われ
る。すなわち、同図において、(1)はデータメモリ、(2)
は係数メモリ、(3)はアドレスレジスタ、(4)は乗算器、
(5)は加減算を行う算術論理ユニット、(6)はプログラム
が記憶されている命令メモリ、(7)は命令メモリ(6)から
のプログラムに従って乗算器(4)及び算術論理ユニット
(5)を制御するシーケンサである。 データメモリ(1)にアドレスレジスタ(8)の制御のもとに
X情報、Y情報の初期値が取り込まれ、その内容とアド
レスレジスタ(3)により指定された係数メモリ(2)からの
係数が乗算器(4)または算術論理ユニット(5)へ供給さ
れ、そこで乗算または加減算が行われる。これ等の乗算
または加減算の手順は命令メモリ(6)のプログラムに従
ってシーケンサ(7)の制御のもとに行われる。 〔発明の効果〕 上述の如くこの発明によれば、ディジタル信号処理器の
プログラムによる逐次比較アルゴリズムを実行すること
で対数変換を行うようにしたので、少ない手順で高精度
の計算結果が得られ、よって高速信号処理が可能とな
る。 また、変換テーブルが少なくてすむので構成が簡略化さ
れてコスト的にも安価となり、近年注目されているディ
ジタル信号処理器における計算方法として優れている。
Insert the 8 bits of [00000000]. Next, in step (c), it is already known that the first bit is "0", so the second bit is "1" or "0".
A window is provided in the second bit in order to determine which of the two. That is, [01000000] is set. Next, in step (d), a certain value x 1 (see FIG. 2) is input as input data for the X information to the first register (not shown but in the data memory (1) described later). Next, in step (e), a loop counter (not shown)
The N value of is set to the maximum number of bits 7 of Y information. Next, in step (f), the maximum value of the X information, that is, [01111111] in this case is input as the initial value (A) to the second register (not shown but in the data memory (1) described later). . Next, in step (g), the coefficient pointer KP is initialized. That is, in this case, the address 0 is set in FIG. In this embodiment, since the number of bits of X information is 8 bits, the coefficient K is Becomes Further, since the Y information is 8 bits, the coefficient table has 8 words of addresses 0 to 7. Therefore, at this time, K = 2 −4 is selected. Next, in step (h), the initial value [01111111] of the X information input to the second register and the coefficient K = 2.
It is determined whether the product of -4 (which is P) is larger than the data x 1 input to the first register. In this first attempt, as can be seen from FIG. 2, since the product P is smaller than x 1 , the process proceeds to step (l). Then, the window provided for the second bit is right-shifted to the third bit. That is, as shown in FIG. 2, it is [00100000]. Further, in step (2), the coefficient pointer KP is incremented by one. That is, it proceeds to address 1 in FIG. This selects the coefficient K = 2 -2 . Also,
In step (wa), the loop counter N value is decremented by 1. That is, 6 instead of 7
And Then, the process proceeds to step (f), where it is judged whether or not the value of N is 0. In this case, since it is not 0, the process returns to step (h) to start the second trial. In step (h), the retained value of the X information [011
11111] and the coefficient K = 2 -2 (this is P 1 )
Is larger than the data x 1 input to the first register. In this second attempt, as can be seen from FIG. 2, the above product P 1 is larger than x 1 and therefore step (i) is proceeded to. Then, here, the held value of the X information input to the second register [0111111
1] instead, enter the value of the product P 1 of this and the coefficient K = 2 −2 . In the next step (nu), "1" is set to the 3rd bit provided with the window. As a result, the value of Y is [001 ...
・ ・] And up to the 3rd bit are fixed. Next, in step (l), the window provided in the 3rd bit is shifted to the 4th bit to the right. That is, it is set to [00010000]. In step (d), the coefficient pointer KP is incremented by one. That is, it proceeds to address 2 in FIG. This selects the coefficient K = 2 −1 . In step (W), the N value of the loop counter is decremented by 1. That is, 6 is set to 5. Then, the process proceeds to step (f), and since the N value is not 0, the process returns to step (h) to start the third trial. In step (h), again the product P 1 and the coefficient K =
It is determined whether or not the product of 2 −1 (this is P 2 ) is larger than the data x 1 input to the first register. In this third attempt, as can be seen from FIG. 2, the above product P 2 is smaller than x 1 and therefore step (l) is proceeded to. Then, here, the window provided in the 4th bit is right-shifted to the 5th bit, as described above. That is, [00001000] is set. Further, in step (2), the coefficient pointer KP is further incremented by one. That is, it proceeds to address 3 in FIG. This selects the coefficient K = 2-0.5 . Also, in step (W), the N value of the loop counter is decremented by 1. That is, 5 is set to 4. Then, the process proceeds to step (f), and since the N value is not 0, the process returns to step (h) to start the fourth attempt. The third
By the first attempt, the value of Y has been set to [0010 ...] As shown in FIG. 2 up to the 4th bit. In step (h), again the product P 1 and the coefficient K =
It is determined whether or not the product of 2 −0.5 (this is P 3 ) is larger than the data x 1 input to the first register.
In this fourth attempt, as you can see from Figure 2,
Since the above product P 3 is smaller than x 1 , the process proceeds to step (l). Then, here, the window provided in the 5th bit is right-shifted to the 6th bit as described above. Further, in step (2), the coefficient pointer KP is further incremented by one. That is, it proceeds to address 4 in FIG. This selects the coefficient K = 2-0.25 . Also, in step (W), the N value of the loop counter is decremented by 1. Ie 4 to 3
And Then, the process proceeds to step (f), and since the N value is not 0, the process returns to step (h) to start the fifth attempt. The subsequent successive comparisons are performed in the same manner, and when the N value of the loop counter becomes 0 in step (W), step (F)
At N = 0, it is judged, and the process ends at step (Yo). At this time, the Y value corresponding to the input data x 1 converged by the successive comparison is the true Y information to be obtained. The above-described processing is performed by a digital signal processor as shown in FIG. That is, in the figure, (1) is a data memory, (2)
Is a coefficient memory, (3) is an address register, (4) is a multiplier,
(5) is an arithmetic logic unit that performs addition and subtraction, (6) is an instruction memory in which a program is stored, (7) is a multiplier (4) and an arithmetic logic unit according to the program from the instruction memory (6)
It is a sequencer that controls (5). Under the control of the address register (8), the data memory (1) fetches the initial values of X information and Y information, and the contents and the coefficient from the coefficient memory (2) specified by the address register (3) are stored. It is supplied to a multiplier (4) or an arithmetic logic unit (5), where multiplication or addition / subtraction is performed. These procedures of multiplication or addition / subtraction are performed under the control of the sequencer (7) according to the program of the instruction memory (6). As described above, according to the present invention, since the logarithmic conversion is performed by executing the successive approximation algorithm by the program of the digital signal processor, a highly accurate calculation result can be obtained with a small number of steps. Therefore, high-speed signal processing becomes possible. Further, since the number of conversion tables is small, the configuration is simplified and the cost is low, which is an excellent calculation method in a digital signal processor which has been receiving attention in recent years.

【図面の簡単な説明】[Brief description of drawings]

第1図はこの発明の一実施例を示すフローチャート、第
2図及び第3図はこの発明の説明に供するための図、第
4図はこの発明で使用されるディジタル信号処理器の一
例を示すブロック図である。 (1)はデータメモリ、(2)は係数メモリ、(3),(8)はアド
レスレジスタ、(4)は乗算器、(5)は算術論理ユニット、
(6)は命令メモリ、(7)はシーケンサである。
FIG. 1 is a flow chart showing an embodiment of the present invention, FIGS. 2 and 3 are diagrams for explaining the present invention, and FIG. 4 is an example of a digital signal processor used in the present invention. It is a block diagram. (1) is data memory, (2) is coefficient memory, (3) and (8) are address registers, (4) is multiplier, (5) is arithmetic logic unit,
(6) is an instruction memory, and (7) is a sequencer.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】入力されたX情報データに対し、Y=loga
Xの対数変換を行う対数変換方式において、 複数ビットから成るY情報の所定ビットにウィンドウを
設け、上記入力されたX情報データを第1のレジスタに
入力し、X情報の初期値を第2のレジスタに入力し、a
情報に関連した係数が予め記憶されているメモリの係数
ポインタを初期設定し、 上記係数ポインタに対応する係数及び上記第2のレジス
タに保持されている値との乗算値と上記第1のレジスタ
に保持されているX情報のデータの値とを比較し、 上記乗算値が上記X情報データの値より大きければ該乗
算値を上記第2のレジスタに入力し、上記ウィンドウの
設けられているY情報の所定ビットに特定ビットをた
て、 上記乗算値が上記X情報データの値より小さければ上記
ウィンドウをシフトすると共に上記係数を変え上記比較
動作を繰り返すようにしたことを特徴とする対数変換方
式。
1. Y = log a for input X information data
In a logarithmic conversion method for performing logarithmic conversion of X, a window is provided at a predetermined bit of Y information consisting of a plurality of bits, the input X information data is input to a first register, and an initial value of X information is set to a second value. Input to the register, a
The coefficient pointer of the memory in which the coefficient related to the information is stored in advance is initialized, and the multiplication value of the coefficient corresponding to the coefficient pointer and the value held in the second register is stored in the first register. The value of the held X information data is compared, and if the multiplied value is larger than the value of the X information data, the multiplied value is input to the second register, and the Y information provided with the window is compared. The logarithmic conversion method is characterized in that a specific bit is added to a predetermined bit of, and if the multiplication value is smaller than the value of the X information data, the window is shifted and the coefficient is changed to repeat the comparison operation.
JP59193293A 1984-09-14 1984-09-14 Logarithmic conversion method Expired - Fee Related JPH063580B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59193293A JPH063580B2 (en) 1984-09-14 1984-09-14 Logarithmic conversion method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59193293A JPH063580B2 (en) 1984-09-14 1984-09-14 Logarithmic conversion method

Publications (2)

Publication Number Publication Date
JPS6172335A JPS6172335A (en) 1986-04-14
JPH063580B2 true JPH063580B2 (en) 1994-01-12

Family

ID=16305503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59193293A Expired - Fee Related JPH063580B2 (en) 1984-09-14 1984-09-14 Logarithmic conversion method

Country Status (1)

Country Link
JP (1) JPH063580B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006527088A (en) * 2003-06-13 2006-11-30 アドヴァル テク ホールディング アーゲー Transfer device in press

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0241045B2 (en) * 1983-02-16 1990-09-14 Toyo Communication Equip DEETA * TEEBURUNOSAKUSEIOYOBISAKUINHOHO

Also Published As

Publication number Publication date
JPS6172335A (en) 1986-04-14

Similar Documents

Publication Publication Date Title
US5752001A (en) Method and apparatus employing Viterbi scoring using SIMD instructions for data recognition
US11029962B2 (en) Execution unit
US7634524B2 (en) Arithmetic method and function arithmetic circuit for a fast fourier transform
CN107894979B (en) Compound word processing method, device and equipment for semantic mining
US4727483A (en) Loop control system for digital processing apparatus
US5339267A (en) Preprocessor of division device employing high radix division system
US4816805A (en) Residue number system shift accumulator decoder
JPH063580B2 (en) Logarithmic conversion method
US4750190A (en) Apparatus for using a Leroux-Gueguen algorithm for coding a signal by linear prediction
JPH10283340A (en) Arithmetic processor
US5886911A (en) Fast calculation method and its hardware apparatus using a linear interpolation operation
KR19990085924A (en) Trigonometric function generator and method
JPH11110395A (en) Device and method for retrieving similar document
JPH0734228B2 (en) A pattern recognition device using the composite similarity method.
JPH05324921A (en) Method and device for forming curve
JPH0535773A (en) Method and system for vector division
JPH0721012A (en) Divider
JPH01276237A (en) Selector for candidate term to be unified
JP6347023B1 (en) Recording medium with code automatic description 2 software recorded
JP3121609B2 (en) Digital signal processor
JPH10333883A (en) Multiplying method and circuit therefor
JPH04507023A (en) Binary floating point arithmetic rounding compliant with IEEE 754-1985 standard
JP2518871B2 (en) Pattern comparator
JP3374946B2 (en) Search device
SU750487A1 (en) Device for multiplying by n-digit factor

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees