JPH07248898A - スケールファクタ算出方法 - Google Patents

スケールファクタ算出方法

Info

Publication number
JPH07248898A
JPH07248898A JP6038965A JP3896594A JPH07248898A JP H07248898 A JPH07248898 A JP H07248898A JP 6038965 A JP6038965 A JP 6038965A JP 3896594 A JP3896594 A JP 3896594A JP H07248898 A JPH07248898 A JP H07248898A
Authority
JP
Japan
Prior art keywords
scale factor
code
data
bits
quantization code
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.)
Withdrawn
Application number
JP6038965A
Other languages
English (en)
Inventor
Kiyoshi Utsugi
潔 宇都木
Masato Ito
正人 伊藤
Rika Nishiike
理香 西池
Hiroshi Obara
洋 小原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP6038965A priority Critical patent/JPH07248898A/ja
Publication of JPH07248898A publication Critical patent/JPH07248898A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 固定小数点形式の演算の際の、データの指数
部を最大値のデータの指数部に合わせるためのスケール
ファクタの算出方法に関し、テーブルを使用せず、又、
算出に伴う処理量の増加を防止でき、且つデータを区切
るステップの変更に柔軟に対応できるスケールファクタ
算出方法を提供する。 【構成】 物理量のデータを一定の範囲に区切ってステ
ップ化し、量子化したコードとして物理量が最小のステ
ップに対して0を与え、ステップの物理量が大きくなる
順に大きな量子化コードmを与え、量子化コードが0の
時のスケールファクタをS0 とし、同じスケールファク
タを持つステップ数をnとし、量子化コードが0である
ステップを含む、同じスケールファクタを持つステップ
を、量子化コードが最も大きなステップを0として数え
た時に、量子化コードが0のステップに与えられる数を
kとし、(S0 ×n+k−m)/nの整数部を求めてス
ケールファクタとする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、固定小数点形式の演算
の際の、データの指数部を最大値のデータの指数部に合
わせるためのスケールファクタの算出方法に係り、特
に、テーブルを使用せず、且つ算出に伴う処理量の増加
を防止できるスケールファクタ算出方法に関する。
【0002】固定小数点形式のプロセッサによる積和演
算を行う際、取り扱うデータのダイナミックレンジが広
く、各データの桁が一致していないと、演算の度に桁合
わせを必要とし、全体の演算量が増加するので、当然、
各データの桁を合わせて演算を行なう。この際、最大値
を持つデータの仮数部が、小数点上第一位に有効数字を
有するように桁をシフトし、他のデータは同じ桁だけシ
フトさせる。このシフトする桁を示すのがスケールファ
クタである。
【0003】このスケールファクタを算出する際に、プ
ロセッサの処理量を増すことがないようにすることは重
要である。
【0004】
【従来の技術】従来は、物理量を表わすデータを量子化
したコードを用いて、テーブルを参照してスケールファ
クタを求める方法を採用していた。
【0005】図5は、データが信号電力である場合の、
信号電力とスケールファクタの対応表の例である。信号
電力は−60dBm 以下を除いて、4dBステップで区
切られており、各々の電力範囲に対応してスケールファ
クタが決められている。図5の例では、信号電力が最も
低い−60dBm 以下を除いて、3ステップずつに同じ
スケールファクタが割りつけられている。又、電力コー
ドは信号電力を量子化したコードで、信号電力値に対応
するスケールファクタを求めるために設定されている。
【0006】図6は、従来のスケールファクタを求める
方法で、(イ)はフローチャート、(ロ)はスケールフ
ァクタのテーブルの構成を示す。スケールファクタを求
める原理は、スケールファクタは読出し専用メモリ(R
OM)に格納しておき、電力コードを利用して読み出す
アドレスを決定するということである。即ち、まずベー
スアドレスB0 を設定する。この場合、スケールファク
タ11が格納されているアドレスがベースアドレスとし
て定義されており、これを1番地とする。次に電力コー
ドをインデックスアドレスとして、インデックスアドレ
スを設定する。今、スケールファクタを求める電力範囲
が−48dBm より大きく、−44dBm 以下の電力範
囲であれば、電力コードは4であるから、インデックス
アドレスは4である。最後に、ベースアドレスとインデ
ックスアドレスを加算して、読み出すべき番地を求め
る。今の場合、加算結果は5であるので、5番地に格納
されている内容を読み出すと、スケールファクタとして
9が求められる。
【0007】上記の方法は、スケールファクタを求める
のにアドレスを決定する加算を行なって、求められたア
ドレスを参照して格納されている内容を読み出すだけな
ので、プロセッサの処理量は少ない。しかし、信号電力
のステップを細かく設定すると、スケールファクタを格
納するテーブルが大きくなり、必要なROMの容量が増
加するという問題がある。又、プロセッサが16ビット
であれば、スケールファクタを格納するメモリにも16
ビットが準備されるので、4ビットで表現できる図5の
スケールファクタであれば、ROMの容量が効率よく利
用されないことになる。
【0008】更に、信号電力のステップを変更する度
に、メモリの格納内容を変更する必要があることも問題
である。
【0009】
【発明が解決しようとする課題】本発明は、かかる問題
に対処して、スケールファクタを求めるための処理量は
従来の方法と同程度で、テーブルを使用しなくてもよ
く、且つ、信号電力のステップの変更に対して柔軟に対
応できるスケールファクタの算出方法を提供することを
目的とする。
【0010】
【課題を解決するための手段】図1は、本発明のスケー
ルファクタの算出方法を説明する図で、(イ)はフロー
チャート、(ロ)は算出の条件で、電力コードが0の時
のスケールファクタが11であることと、信号電力範囲
(電力コード)の3ステップの間は同じスケールファク
タとなることと、電力コードが0の時の補助情報が0で
あることが与えられている。これは、図5の表に対応し
ている。
【0011】先ず、電力コードが0の時のスケールファ
クタに、同じスケールファクタを持つステップ数を掛
け、それに補助情報を加えてワークデータを算出する。
今の場合11×3+0より、結果は33である。これ
を、電力コードが0の時のワークデータとし、電力コー
ドがmの時のワークデータは33−mとする(1)。従
って、電力コードが5の時には、ワークデータは28で
ある。
【0012】次に、ワークデータを同じスケールファク
タになるステップ数で割算して、答をtmpとする。今
の場合には、tmp=28/3=9.33333・・で
ある(2)。
【0013】最後に、このtmpの整数部を抽出する。
今の場合には、tmpの整数部は9である。これが求め
るスケールファクタである(3)。以上の演算を図とし
て表したのが図2である。
【0014】ここでは、電力コードが5の時だけを示し
たが、電力コードを0から15まで変化させて、上と同
じ方法でスケールファクタを求めれば、図5の表と同じ
値になることは容易に判る。即ち、図1の算出条件か
ら、決められているスケールファクタを全て求めること
ができる。
【0015】
【作用】電力コードが0の時にスケールファクタが11
で、補助情報が0であり、同じスケールファクタとなる
ステップ数が3であるから、11×3+0=33より、
電力コードが0の時のワークデータは必ず3で割り切れ
て、しかも答は11である。従って、上記の算出方法は
算出条件である電力コードが0の時のスケールファクタ
を与える。
【0016】電力コードが正の整数mの時には、上記の
算出方法によれば、tmpは(33−m)/3=11−
m/3となる。このtmpの第二項のm/3は、mが1
から3の間は1以下である。従って、tmpはmが1か
ら3の間は10以上であるので、その整数部は10とな
る。そして、mが4から6の間はm/3は2以下である
ので、tmpの整数部は9となる。このようにして、算
出条件となる3つの値によってスケールファクタを求め
ることができる。
【0017】上述のように、スケールファクタが簡単な
算術演算で与えられるので、算出に必要な処理量は少な
く、又、テーブルを使用する必要がなくなる。又、算出
条件が変更にならない限り、信号電力のステップが変更
になっても、スケールファクタを求めることができる。
【0018】
【実施例】上では、補助情報が与えられているものとし
て説明したが、ここで改めて補助情報の決め方を説明す
る。
【0019】上の例では、同じスケールファクタになる
信号電力のステップ数が3であるので、同じスケールフ
ァクタになるステップの組の中で、整数を3で割った時
に余りになる数、即ち2、1、0を電力コードが小さい
方から順に割り振る。そして、電力コードが0の時のよ
うに1ステップしかない時には、このステップを最も電
力コードが小さいステップであるとして、補助情報は0
とする。実際に用いる補助情報は、上記のように、電力
コードが0の時の補助情報である。
【0020】図3のように、電力コードが0と1の時に
スケールファクタが11で、以下は3ステップずつ同じ
スケールファクタとなる例について説明する。この場
合、電力コードが0の時は、3ステップの内の二番目の
ステップであるとして、補助情報には1を割り振るか
ら、電力コードが0の時のワークデータは11×3+1
=34となる。従って、電力コードが0の時にはtmp
は11+1/3で、その整数部よりスケールファクタは
11となって、算出条件と同じになる。電力コードが1
の時にはtmpは(34−1)/3=11で、この時に
もスケールファクタは11として求められる。次に電力
コードが2から4の間の整数mである時には、tmpは
(34−m)/3={33−(m−1)}/3であるの
で、第二項はmが2から4の間は1以下となり、従っ
て、mが2から4の間はtmpの整数部は10となる。
【0021】即ち、補助情報は、電力コードが0の時の
スケールファクタと同じスケールファクタとなるステッ
プの数を決める情報である。一般に、同じスケールファ
クタを持つ信号電力のステップ数がnである時、電力コ
ードが最小側のnステップで同じスケールファクタを持
つならば、補助情報には(n−1)を割り振り、電力コ
ードが最小側で同じスケールファクタになるステップ数
がnより少ない区間では、該区間の中で電力コードが最
大のステップに0を割り振り、順次電力コードが小さく
なるにつれて1、2、・・と割り振って、電力コードが
0のステップに割り振られた値を補助情報とすればよ
い。
【0022】以上は、十進法の表現による原理の説明で
あった。しかし、このような演算を行なうプロセッサに
おいては、二進法を基本として演算を行なう。以下にお
いては、二進法に基づく演算方法について説明する。
【0023】例は、電力コードが0の時にスケールファ
クタが11で、補助情報が0で、同じスケールファクタ
を持つ信号電力のステップ数が3の、最初に説明した場
合である。この場合、ワークデータは、電力コードをm
として(33−m)である。からスケールファクタを求
めようとしているのは電力コードが5の場合にはワーク
データは28である。
【0024】ここで、この演算を行なうプロセッサは1
6ビットであるし、図4に図2の演算の16ビット表現
を示す。上記ワークデータ28を2進数表現すると11
100であるので、16ビットで表現すれば、0000
000000011100となる。これを4ビットずつ
に区切って16進数表現で表せば、001cと表現でき
る。これに16ビット表現であることを示す0xを付し
て表せば、ワークデータ28は0x001cとして表現
できる。
【0025】次に、同じスケールファクタを持つ信号電
力のステップ数は3であるので、tmpを求めるには2
8÷3の演算をすることになる。しかし、3で割算する
より、1/3=0.333333・・を掛算する方が、
演算に要するサイクル数が少くて済むので、実際には1
/3=0.333333・・を掛算する。この1/3を
2進数表現すると、0.01010101・・・・とな
るので、最上位ビットに符号を表わすビットの0を付し
て、これを16ビットの固定小数点形式で表示すると、
0x1555となる。
【0026】この両者間で乗算を実行すると、乗算結果
は32ビットになり、16進表現で0x0002554
cである。そして、この時の乗算は一方が整数形式で、
もう一方が固定小数点形式であるため、乗算結果の仮想
固定小数点位置は、図4(ハ)のように、LSB側から
13ビット目と14ビット目の間になっている。
【0027】一方、この乗算結果を格納するアキュミュ
レータにおいては、仮想固定小数点の位置は、32ビッ
トのレジスタを16ビットずつに分割した境界にあり、
上位16ビットが整数部を表わす。このために、整数形
式のデータと固定小数点形式のデータの乗算結果0x0
002554cを2ビット上位にシフトして、固定小数
点の位置を合わすと、乗算結果は16ビット表現で0x
00095530となるので、整数部は0x0009で
ある。即ち、スケールファクタは9となる。
【0028】
【発明の効果】以上述べた如く、本発明により、テーブ
ルを使用せずに、簡単な算術演算でスケールファクタを
求めることができる算出方法が提供される。これによ
り、データのステップ数が多いとテーブルの容量が増加
すること、テーブルを構成するROMの容量を効率よく
利用できないこと、及び、データのステップ数の変更に
柔軟に対応できないことなどの、テーブルの使用に伴う
問題点を一挙に解決できる。更に、スケールファクタを
求めるための処理量も、従来のテーブルを使用する方法
と同等である。従って、本発明がデジタル信号処理技術
にもたらす効果は絶大なものがある。
【図面の簡単な説明】
【図1】 本発明のスケールファクタの算出方法。
【図2】 電力コード=5の時のスケールファクタの算
出。
【図3】 電力コードとスケールファクタの対応が異な
る例。
【図4】 図2の演算の16ビット表現。
【図5】 信号電力とスケールファクタの対応表の例。
【図6】 従来のスケールファクタを求める方法。
【符号の説明】
1 ワークデータの算出 2 ワークデータ/整数の算出(tmp) 3 tmpの整数部を抽出
フロントページの続き (72)発明者 小原 洋 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 物理量のデータを一定の範囲に区切って
    ステップ化し、 量子化したコードとして物理量が最小のステップに対し
    て0を与え、ステップの物理量が大きくなる順に大きな
    量子化コードm(mは0及び正の整数)を与え、 量子化コードが0の時のスケールファクタをS0 (S0
    は正の整数)とし、 同じスケールファクタを持つステップ数をn(nは正の
    整数)とし、 量子化コードが0であるステップを含む、同じスケール
    ファクタを持つステップの組において、量子化コードが
    最も大きなステップを0として数えた時に、量子化コー
    ドが0のステップに与えられる数をk(kは0及び正の
    整数で、n>k)とし、 (S0 ×n+k−m)/nの整数部を求めてスケールフ
    ァクタとすることを特徴とするスケールファクタ算出方
    法。
  2. 【請求項2】 請求項1記載のスケールファクタ算出方
    法であって、 (S0 ×n+k−m)をpビットの整数形式で表現し、
    1/nをpビットの固定小数点形式で表現して、(S0
    ×n+k−m)×(1/n)を計算し、 2pビットで与えられる該計算結果の仮想固定小数点
    と、上位pビットが整数部である2pビットの数におけ
    る仮想固定小数点とを一致させるように該計算結果の桁
    をシフトし、 該シフトされた計算結果の上位pビットをスケールファ
    クタとすることを特徴とするスケールファクタ算出方
    法。
JP6038965A 1994-03-10 1994-03-10 スケールファクタ算出方法 Withdrawn JPH07248898A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6038965A JPH07248898A (ja) 1994-03-10 1994-03-10 スケールファクタ算出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6038965A JPH07248898A (ja) 1994-03-10 1994-03-10 スケールファクタ算出方法

Publications (1)

Publication Number Publication Date
JPH07248898A true JPH07248898A (ja) 1995-09-26

Family

ID=12539883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6038965A Withdrawn JPH07248898A (ja) 1994-03-10 1994-03-10 スケールファクタ算出方法

Country Status (1)

Country Link
JP (1) JPH07248898A (ja)

Similar Documents

Publication Publication Date Title
US4823301A (en) Method and circuit for computing reciprocals
US7188133B2 (en) Floating point number storage method and floating point arithmetic device
JPH0934693A (ja) 指数対数変換回路
JPS60229140A (ja) 倍精度乗算器
JPH0145649B2 (ja)
JPH05134851A (ja) 乗算回路出力方式
US4758975A (en) Data processor capable of processing floating point data with exponent part of fixed or variable length
GB2376773A (en) Display and/or precision operations of numerical values in binary systems
JPH11212768A (ja) 対数値算出回路
JPH07248898A (ja) スケールファクタ算出方法
US4737925A (en) Method and apparatus for minimizing a memory table for use with nonlinear monotonic arithmetic functions
JPH0833809B2 (ja) 浮動小数点表示データの演算方法
JP2578482B2 (ja) 浮動小数点演算器
JP2645422B2 (ja) 浮動小数点演算処理装置
JP4163967B2 (ja) 浮動小数点演算装置
JPH0831024B2 (ja) 演算プロセッサ
US6128636A (en) Method for interfacing floating point and integer processes in a computer system
US5751623A (en) Digital computer for adding and subtracting
JP2606580B2 (ja) 数値データ演算方法
JP4428778B2 (ja) 演算装置及び演算方法並びに計算装置
JP2624738B2 (ja) 丸め処理方式
JP2870018B2 (ja) 積和演算回路
JP3078696B2 (ja) 逆数演算装置
GB2372353A (en) Method and apparatus for calculating a reciprocal
JPS61258521A (ja) デイジタルフイルタ−

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010605