(57)【要約】  【課題】  浮動小数点数のベクトル積演算に必要な処理が軽減され、固定小数点型ＤＳＰによる演算処理が適用できるようにした浮動小数点数のベクトル演算方法を提供すること。  【解決手段】  Ｎ次の行ベクトルＸとＮ次の列ベクトルＹからなるベクトル積ＸＹを求める浮動小数点数のベクトル演算方法において、入力端子１のバッファに格納するベクトルＸの成分である各データｘ1〜ｘN の仮数部ｍ1〜ｍN に対して、その指数部については予め各データｘ1〜ｘN で共通の指数ｅにしておき、ベクトルＹの成分である各データｙ1〜ｙN の仮数部ｌ1〜ｌN に対しても、その指数部については予め各データｙ1〜ｙN でこれも共通の指数ｅ′にしておいてベクトル積ＸＹを演算するようにしたもの。  予めベクトルの指数部を共通化しておくと演算処理量が軽減される。【選択図】  図１
2007079696.tif 000002
【特許請求の範囲】
【請求項１】
受信装置の復調処理に用いられるＲＬＳアルゴリズムの中で行われる浮動小数点数のベクトル演算方法において、
処理すべきベクトルの各成分の指数部を予め前記各成分の全てについて共通化する処理を実行した後、当該ベクトルの演算処理を開始させることを特徴とする浮動小数点数のベクトル演算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、浮動小数点数をベクトル演算する方法に係り、特に、デジタル信号の変復調処理における浮動小数点数のベクトル演算方法に関する。
【背景技術】
【０００２】
近年、デジタル無線機器にも浮動小数点型ＤＳＰ(Digital Signal Processor)が適用されるようになっているが、このとき、主としてデジタル信号の変復調処理に使用されている。そこで、近年、例えば伝送系でのマルチパス対策のため、受信側の復調処理に、この浮動小数点型ＤＳＰによる適応等化技術を適用し、受信データ系列に対して伝送路の歪みの補償が与えられるようにし、送信ビット系列が精度良く推定できるようにしている。
【０００３】
そして、このとき、補償最適値を伝送路の変化に追従して算出するため、ＲＬＳアルゴリズムが用いられているが、このアルゴリズムでは、その中でベクトル積演算処理を行なう際、浮動小数点数のベクトル演算が必要である(例えば、特許文献１〜特許文献３など参照)。
【０００４】
そこで、次に、このＲＬＳアルゴリズムの中で行われる浮動小数点数のベクトル演算について説明する。なお、ここでは、一例として、Ｎ次の行ベクトルＸとＮ次の列ベクトルＹからなるベクトル積ＸＹを求める際の演算方法について説明することにする。
【０００５】
そうすると、この場合、ベクトルの各成分は式(1)に示す通りになる。そして、このための演算処理には、例えば図３の論理ブロック構成が適用でき、このとき入力端子１にはデータｘ1〜ｘN が入力され、入力端子２にはデータｙ1〜ｙN が入力され、各々バッファに格納されることになる。
【数１】
2007079696.tif 000003
【０００６】
このとき、図示のように、ベクトルＸの成分である各データｘ1〜ｘN の仮数部は各々ｍ1〜ｍN で、その指数部は各々ｅ1〜ｅN であり、ベクトルＹの成分である各データｙ1〜ｙN の仮数部は各々ｌ1〜ｌN で、その指数部は各々ｅ1′〜ｅN′であり、従って、詳細は図４に示すようになっている。
【０００７】
そして、この場合のベクトル積ＸＹは、上記した入力データｘ1〜ｘN と入力データｙ1〜ｙN の各成分の積(ｘ1ｙ1，ｘ2ｙ2，ｘ3ｙ3，……，ｘNｙN)を求めた上で、これらの各積の加算結果(ｘ1＋ｙ1，ｘ2＋ｙ2，ｘ3＋ｙ3，……，ｘN＋ｙN)として得ることができ、従って、このときの演算回路(図３)演算手順は次の通りになる。
【０００８】
・手順１
ベクトルＸの各成分の仮数部ｍ1〜ｍN とベクトルＹの各成分の仮数部
ｌ1〜ｌN を各々の乗算部３1〜３N により演算し、各成分の仮数部の積
ｍ1ｌ1，ｍ2ｌ2，ｍ3ｌ3，……，ｍNｌN とする。
【０００９】
・手順２
ベクトルＸの各成分の指数部ｅ1〜ｅN とベクトルＹの各成分の指数部
ｅ1′〜ｅN′を各々の加算部４1〜４N により演算し、各成分の指数部の和
ｅ1＋ｅ1′，ｅ2＋ｅ2′，ｅ3＋ｅ3′，……，ｅN＋ｅN′とする。
【００１０】
・手順３
各指数部の和ｅ1＋ｅ1′〜ｅN＋ｅN′を最大値検出部５に入力し、それら
の中から最大値を検索してｅmax とする。
【００１１】
・手順４
同じく各指数部の和ｅ1＋ｅ1′〜ｅN＋ｅN′を各加算部６1〜６N に入力し、
最大値ｅmax を減算して、各々の指数部の和の減算値(ｅ1＋ｅ1′)−ｅmax ，
(ｅ2＋ｅ2′)−ｅmax，(ｅ3＋ｅ3′)−ｅmax，……，(ｅN＋ｅN′)−ｅmax
とする。
【００１２】
・手順５
各減算値(ｅ1＋ｅ1′)−ｅmax〜(ｅN＋ｅN′)−ｅmax を夫々のシフタ７1
〜７N によりべき乗処理し、べき乗値２(e1+e1′)-emax，２(e2+e2′)-emax，
２(e3+e3′)-emax，……，２(eN+eN′)-emax とする。
【００１３】
・手順６
各々のべき乗値２(e1+e1′)-emax〜２(eN+eN′)-emaxを乗算器８1〜８N に入
力し、これらの各々に積ｍ1ｌ1〜ｍNｌN を乗算する。そして指数部が共通化さ
れた演算結果ｍ1ｌ1×２(e1+e1′)-emax，ｍ2ｌ2×２(e2+e2′)-emax，
ｍ3ｌ3×２(e3+e3′)-emax，……，ｍNｌN×２(eN+eN′)-emax を得る。
【００１４】
・手順７
手順６の演算結果を加算器９で処理し、処理結果ｍ1ｌ1×２(e1+e1′)-emax＋
ｍ2ｌ2×２(e2+e2′)-emax＋Λ＋ｍNｌN×２(eN+eN′)-emax を新たな仮数部Ａと
し、最大値検出部５で求めたｅmax を共通の指数部ＢとしてＸＹ＝ＡB を得る。
【００１５】
従って、これらの手順による演算処理を数式で表わすと、次の式(2)となり、これが従来のＲＬＳアルゴリズムの中で行われる浮動小数点数のベクトル演算である。
【数２】
2007079696.tif 000004
【特許文献１】特開平  ６−１３１１６１号公報
【特許文献２】特開平  ９−１２８２１８号公報
【特許文献２】特開平１０−１８７４１６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上記従来技術は、演算処理量の低減に配慮がされておらず、固定小数点型ＤＳＰによる処理に問題があった。
【００１７】
前述のベクトル演算方法は、浮動小数点数によるベクトル積の演算処理に指数部の共通化処理が含まれている。このため処理量が増加し、固定小数点型ＤＳＰによる処理が困難になってしまうのである。
【００１８】
本発明の目的は、浮動小数点数のベクトル積演算に必要な処理が軽減され、固定小数点型ＤＳＰによる演算処理が適用できるようにした浮動小数点数のベクトル演算方法を提供することにある。
【課題を解決するための手段】
【００１９】
上記目的は、  受信装置の復調処理に用いられるＲＬＳアルゴリズムの中で行われる浮動小数点数のベクトル演算方法において、処理すべきベクトルの各成分の指数部を予め前記各成分の全てについて共通化する処理を実行した後、当該ベクトルの演算処理を開始させることにより達成される。
【発明の効果】
【００２０】
本発明によれば、演算処理量が抑えられるので、固定小数点型ＤＳＰによる処理が可能になり、演算規模の増大を抑えることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明による浮動小数点数のベクトル積演算方法について、図示の実施の形態により詳細に説明する。
【００２２】
図１は、本発明の一実施形態が適用された論理ブロックを示したものであるが、このとき比較のため、ここでも上記した従来技術の場合と同じく、式(1)に示すＮ次の行ベクトルＸとＮ次の列ベクトルＹからなるベクトル積ＸＹを求める際の演算方法について説明することにする。
【００２３】
そうすると、この図１の論理ブロックでも、入力端子１には、式(1)に示すＮ次の行ベクトルＸの各成分のデータｘ1〜ｘN が入力され、入力端子２には列ベクトルＹの各成分のデータｙ1〜ｙN が入力され、各々バッファに格納されることになるが、しかし、この実施形態では、このとき予めベクトルＸの各データｘ1〜ｘN とベクトルＹの各データｙ1〜ｙN の各々の指数部についての共通化処理が施されていて、その後で各入力端子１、２から各々のバッファに格納されるようになっている。
【００２４】
詳しく説明すると、この場合も、ベクトルＸの各データｘ1〜ｘN とベクトルＹの各データｙ1〜ｙN は、元々は図４に示す通りで、指数部も、仮数部と同じく各データ毎に独立して異なったものになっていたのであるが、各入力端子１、２から入力して各々のバッファに格納される前に指数部の共通化処理を施しておくのである。なお、このときの指数部の共通化処理は、従来技術で説明した手順１から手順６までの処理と同じで良い。
【００２５】
従って、このときベクトルＸの成分である各データｘ1〜ｘN の仮数部は、図示のように、各々ｍ1〜ｍN であるが、その指数部は、例えばｅで、各データｘ1〜ｘN で共通になっている。また、ベクトルＹについて見ても、その成分である各データｙ1〜ｙN の仮数部は各々ｌ1〜ｌN であるが、その指数部は、これも例えばｅ′で、各データｙ1〜ｙN で共通になっている。よって、このとき各々のバッファに格納されるデータの詳細は図２に示すようになる。
【００２６】
そして、ベクトル積ＸＹは、この実施形態の場合も、上記の従来技術の場合と同様にして求める。すなわち、ベクトルＸの各成分の仮数部ｍ1〜ｍN とベクトルＹの各成分の仮数部ｌ1〜ｌN の積ｍ1ｌ1，ｍ2ｌ2，ｍ3ｌ3，……，ｍNｌN に、ベクトルＸの各成分の指数部ｅ1〜ｅN とベクトルＹの各成分の指数部ｅ1′〜ｅN′の各々の２のべき乗値、すなわち２(e1+e1′)-emax〜２(eN+eN′)-emax を乗算して求めるのであるが、しかし、この実施形態では、これらベクトルＸの各成分とベクトルＹの各成分の指数部は、事前に各々で共通化されている。
【００２７】
従って、このときの全成分の加算は、この実施形態の場合、仮数部同士の積の和であるｍ1ｌ1＋ｍ2ｌ2＋ｍ3ｌ3＋Λ＋ｍNｌN に、各指数部の和の２のべき乗２(e+e′)を乗算するだけで求まることになる。
【００２８】
そこで、以上の実施形態による処理について、図１の論理ブロックにより説明すると、以下の通りになる。
【００２９】
・手順Ｉ
ベクトルＸの各成分の仮数部ｍ1〜ｍN とベクトルＹの各成分の仮数部
ｌ1〜ｌN を各々の乗算部３1〜３N により演算し、各成分の仮数部の積
ｍ1ｌ1，ｍ2ｌ2，ｍ3ｌ3，……，ｍNｌN とする。
【００３０】
・手順II
ベクトルＸの成分データｘ1の指数部ｅとベクトルＹの成分データｙ
の指数部ｅ′を加算部４ により演算し、指数部の和ｅ＋ｅ′とする。
【００３１】
・手順III
各成分の仮数部の積ｍ1ｌ1，ｍ2ｌ2，ｍ3ｌ3，……，ｍNｌN を加算部
９により演算し、仮数部の積の和ｍ1ｌ1＋ｍ2ｌ2＋ｍ3ｌ3＋Λ＋ｍNｌN
を得る。
【００３２】
・手順IV
仮数部の積の和ｍ1ｌ1＋ｍ2ｌ2＋ｍ3ｌ3＋Λ＋ｍNｌN を新たな仮数部
Ａとし、指数部の和ｅ＋ｅ′の２のべき乗２(e+e′)を共通の指数部Ｂとし
て、ＸＹ＝Ａ×Ｂを得る。
【００３３】
そこで、以上の処理を数式で表わすと、次の式(3)に示すようになるり、従って、この実施形態によれば、予めベクトルの指数部を共通化しておくことにより、式(2)に示した従来の演算方法よりも演算処理量が減らせることができ、この結果、固定小数点型ＤＳＰで演算した場合の処理負荷を軽減させることができる。
【数３】
2007079696.tif 000005
【図面の簡単な説明】
【００３４】
【図１】本発明による浮動小数点数のベクトル演算方法の一実施形態を示す演算ブロック図である。
【図２】本発明の一実施形態においてバッファに格納されたデータの配置図である。
【図３】従来技術による浮動小数点数のベクトル演算方法の一例を示す演算ブロック図である。
【図４】従来技術の一例においてバッファに格納されたデータの配置図である。
【符号の説明】
【００３５】
１：入力端子(バッファ)
２：入力端子(バッファ)
３：乗算器
４：加算器
５：最大値検出器
６：加算器
７：シフタ
８：乗算器
９：加算器
【図１】
2007079696.tif 000006
【図２】
2007079696.tif 000007
【図３】
2007079696.tif 000008
【図４】
2007079696.tif 000009