JPH0580984A - 掛算装置 - Google Patents

掛算装置

Info

Publication number
JPH0580984A
JPH0580984A JP3243377A JP24337791A JPH0580984A JP H0580984 A JPH0580984 A JP H0580984A JP 3243377 A JP3243377 A JP 3243377A JP 24337791 A JP24337791 A JP 24337791A JP H0580984 A JPH0580984 A JP H0580984A
Authority
JP
Japan
Prior art keywords
bits
memory
bit
multiplication
multiplying
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
JP3243377A
Other languages
English (en)
Inventor
Yoshinobu Katae
善暢 片江
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP3243377A priority Critical patent/JPH0580984A/ja
Publication of JPH0580984A publication Critical patent/JPH0580984A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】高いビット数同士の掛算を高速で行う掛算装置
を低コストで提供する。 【構成】DSP1はメモリXから測長データの上位ビッ
トX1と下位ビットX0を入力すると共に、メモリYか
ら係数データの上位ビットY1と下位ビットY0を入力
し、X0×Y0の上位24ビットとX1×Y0+X0×Y
1とを加算し、その上位24ビットを第1のラッチ回路R
1 にラッチする。DSP2はX1×Y1と第1のラッチ
回路R1 にラッチされたX0×Y0+X1×Y0+X0
×Y1の上位24ビットとを加算し、その結果を第2のラ
ッチ回路R2 の上位ビットR21と下位ビットR20にラッ
チする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ビット数の大きいデジ
タル値同士を高速で掛算する装置に関する。
【0002】
【従来の技術】例えば、33ビット以上のデジタル値同士
を掛算する装置を実現する場合、従来は、デジタル値を
上位ビットと下位ビットとに分け、下位ビット同士,上
位ビットと下位ビット,上位ビット同士の各掛算を現存
する32ビットの掛算器を4個用いて行い、各掛算で得ら
れた値 (積) を32ビットの加算器を3個使用して実現す
ることができる。
【0003】また、33ビット以上の掛算器を特注によ
り、IC化 (ASIC) して得ることも可能である。
【0004】
【発明が解決しようとする課題】しかしながら、33ビッ
トの掛算器は高価であり、それを4個も使用することは
コストアップが大きく、回路的にも複雑になっていた。
また、ASICによる方法は、開発に数千万円以上を必
要とし、多品種少量の製品設計には向かなかった。
【0005】本発明は、上記従来の実状に鑑みなされた
もので、高速の積和演算機能を有するデジタルシグナル
プロセッサを複数用いた低コストな回路構成により、高
ビットデジタル値同士の掛算を高速で実行できるように
した掛算器を提供することを目的とする。
【0006】
【課題を解決するための手段】このため本発明に係る掛
算装置は、一組のデジタルシグナルプロセッサと、一組
のラッチ回路と、2つのデジタル値を夫々上位ビットと
下位ビットとに分けて記憶するメモリと、を含んで構成
され、一方のデジタルシグナルプロセッサに、前記2つ
のデジタル値の下位ビット同士を掛算し得られた値の上
位ビットのみを選択する第1の掛算手段と、2つのデジ
タル値の上位ビットと下位ビットの掛算を行う第2の掛
算手段と、これら第1の掛算手段及び第2の掛算手段に
よって掛算された各値を加算する第1の加算手段と、加
算して得られた値の上位ビットを選択して第1のラッチ
回路にラッチする第1のラッチ手段と、を設け、他方の
デジタルシグナルプロセッサに、前記2つのデータの上
位ビット同士の掛算を行う第3の掛算手段と、前記第1
のラッチ回路にラッチされた値と前記第3の掛算手段で
掛算された値とを加算する第2の加算手段と、該第2の
加算手段で加算された値を上位ビットと下位ビットに分
けて第2のラッチ回路にラッチする第2のラッチ手段
と、を備えたことを特徴とする掛算装置。
【0007】
【作用】一方のデジタルシグナルプロセッサ (以下DS
Pという) は、第1の掛算手段によりメモリから入力し
た2つのデジタル値の下位ビット同士を掛算し、その上
位ビットのみを選択すると共に、第2の掛算手段により
2つのデジタル値の上位ビットと下位ビットを掛算し、
前記選択された上位ビットと第2の乗算手段の各掛算値
が第1の加算手段により加算し、第1のラッチ手段によ
り前記加算値の上位ビットを第1のラッチ回路にラッチ
する。これにより、元のデジタル値のメモリに記憶され
る上位ビットと同じビット数の上位ビットがラッチされ
ることとなる。
【0008】他方のDSPは、第3の掛算手段によりメ
モリから入力した2つのデジタル値の上位ビット同士を
掛算し、第2の加算手段により前記第1のラッチ回路に
ラッチされた値と第3の掛算手段で掛算された値とを加
算し、第2のラッチ手段により第2の加算手段で加算さ
れた値を上位ビットと下位ビットに分けて第2のラッチ
回路にラッチする。これにより、最終結果がメモリの上
位ビットと下位ビットを合わせたビット数でラッチさ
れ、必要に応じて出力される。
【0009】
【実施例】以下に本発明をレーザー測長器に応用した実
施例について図に基づいて説明する。レーザー測長器の
分解能は0.6 オングストローム単位であり、1メートル
を測長すると1010≒233つまり33ビットのデータ長が必
要となり、32ビットでは不足する。データ長を最大48ビ
ットとし、これを桁落ちのないように同じく48ビットの
データで掛算により単位交換等の補正を行い、リアルタ
イムで出力するためには4MHz以上のスループットが
要求される。
【0010】図1は、本実施例のハードウエアの構成を
示す。DSPとしては、モトローラDSP56001が
2個使用される。前記レーザー測長器により測長された
データは有効33ビットの下位に0ビットを付与されて48
ビットに整えられ、上位24ビットと下位24ビットが、メ
モリXの領域X1,X0に分けて記憶される。該メモリ
Xの領域X1,X0は一方のDSP1(第1のデジタル
シグナルプロセッサ)と接続され、領域X1は他方のD
SP2 (第2のデジタルシグナルプロセッサ)にも接続
されている。また、前記測長データに掛算される温度補
正用等の計数データも同じく48ビットに整えられて上位
24ビットと下位24ビットが、メモリYの領域Y1,Y0
に分けて記憶され、領域Y1, Y0はDSP1に接続さ
れ、領域Y1 はDSP2にも接続されている。
【0011】また、DSP1には演算途中の結果を一時
記憶するための48ビットの2つのメモリA1,1 が内蔵
され、DSP2にも演算途中の結果を一時記憶するため
の48ビットの2つのメモリA2,2 が内蔵されている。
更に、DSP1の演算結果の上位24ビットをラッチする
第1のラッチ回路R1 と、DSP2の演算結果の上位24
ビットと下位24ビットを分けてラッチする第2のラッチ
回路R2 が設けられる。
【0012】次に、前記構成からなる掛算器の演算を図
, 図3のフローチャートに従い、図4, 図5を参照し
て説明する。図2は、DSP1側の演算ルーチンを示
す。ステップ (図ではSと記す。以下同様)1では、初
期設定を行う。ステップ2では、メモリYから係数デー
タの上位ビットY1と下位ビットY0を入力する。
【0013】ステップ3では、メモリXから入力した測
長データの下位ビットX0とメモリYから入力した係数
データの下位ビットY0とを掛算し、その結果をDSP
1のメモリB1 に記憶する。これと平行してDSPのメ
モリA1 に記憶されている前回の演算結果の上位24ビッ
トを第1のラッチ回路R1 にラッチする。この機能が第
1のラッチ手段に相当する。尚、下位48ビットは物理学
の数値計算上無効データであり意味をなさないので予め
切捨てておくのである。
【0014】ステップ4では、メモリXから入力した測
長データの上位ビットX1とメモリYから入力した係数
データの下位ビットY0とを掛算し、その結果をDSP
1のメモリA1 に記憶する。これと平行してメモリB1
に記憶されていた前記X0×Y0の結果をメモリB1
下位ビットB1 0に記憶し直し、メモリB1 の上位ビッ
トを0とする。これは、X0×Y0の上位ビットと後述
するX1×Y0+X0×Y1の下位ビットとの桁を一致
して加算するための処理である。このステップ4の後段
の機能と前記ステップ3のX0×Y0の演算機能とが第
1の掛算手段に相当する。
【0015】ステップ5では、メモリXから入力した測
長データの下位ビットX0とメモリYから入力した係数
データの上位ビットY1とを掛算し、その結果と前記メ
モリA1 に記憶されたX1×Y0とを加算してメモリA
1の記憶値を更新する。これと平行してメモリXから新
たな測長データの下位ビットX0を入力する。ステップ
6では、前記メモリB1 の下位ビットに記憶されたX0
×Y0に前記メモリA1 に記憶されたX1×Y0+X0
×Y1の値を加算し、その結果でメモリA1 の記憶値を
更新する。この中の上位ビットが次回のステップ3の後
段の機能で第1のラッチ回路R1 にラッチされるのであ
る。この機能が第1の加算手段に相当する。これと平行
してメモリXから新たな測長データの上位ビットX1を
入力する。
【0016】ステップ7では、同一の係数データY1,
Y0に対して、所定数のデータの掛算が完了したか否か
を判定し、完了するまではステップ3に戻って掛算を繰
り返し、完了するとステップ2へ戻って新たな係数デー
タY1,Y0を入力して掛算を行う。図3は、前記DS
P1による演算と平行して行われるDSP2の演算ルー
チンを示す。ステップ11では初期設定を行う。
【0017】ステップ12では、メモリYから係数データ
の上位ビットY1を入力する。ステップ13では、メモリ
Xから測長データの上位ビットX1を入力する。ステッ
プ14では、前記第1のラッチ回路R1 にラッチされたX
0×Y0+X1×Y0+X0×Y1の結果の上位ビット
をDSP2のメモリA2 の下位ビットに記憶する。これ
と平行して前記メモリA2 の上位ビットを0にする。
【0018】ステップ15では、DSP2のメモリB2
記憶されたX1X0×Y1Y0の掛算値の上位ビットを
第2のラッチ回路R2 の上位ビットR21にラッチする。
ステップ16では、測長データの上位ビットX1と係数デ
ータの上位ビットY1とを掛算し、その結果X1×Y1
に前記メモリA2 に記憶されたX0×Y0+X1×Y0
+X0×Y1の結果の上位ビットを加算してメモリB2
に記憶する。この機能が第3の掛算手段と第2の加算手
段に相当する。これと平行してメモリB 2 の下位ビット
を第2のラッチ回路R2 の下位ビットR20にラッチす
る。この機能と前記ステップ15の機能とが第2のラッチ
手段に相当する。
【0019】ステップ17では、同一の係数データY1に
対して、所定数のデータの掛算が完了したか否かを判定
し、完了するまではステップ13に戻って掛算を繰り返
し、完了するとステップ12へ戻って新たな係数データY
1を入力して掛算を行う。このようにして48ビット同士
の掛算の結果は有効長48ビットに整えられる。図4は、
演算サイクルを示し、DSP1では、データの入力 (サ
ンプル) 及びラッチが掛算と平行処理される結果4サイ
クルで演算, ラッチを終了し、DSP2ではラッチと掛
算とが平行処理されてやはり4サイクルで演算, ラッチ
を終了し、DSP1, DSP2は平行して演算を行うた
め、全体として4サイクルで演算, ラッチを終了する。
したがって、1サイクルが60msで実行されるので60ms×
4=240ms となり、約4MHz のスループットが得られ、
極めて高速の掛算機能が得られるのである。
【0020】
【発明の効果】以上説明したように本発明によれば、一
組のDSPとラッチ回路とを用いただけの簡易で低コス
トな回路構成でありながら、DSPの持つ平行処理機能
と無効ビットの切捨てにより高いビット数同士の掛算を
高速で演算処理することができるものである。
【図面の簡単な説明】
【図1】本発明の一実施例のハードウエアの構成を示す
ブロック図
【図2】同上実施例のDSP1側の演算処理を示すフロ
ーチャート
【図3】同上実施例のDSP2側の演算処理を示すフロ
ーチャート
【図4】同上実施例の演算サイクルを示すタイムチャー
【図5】同上実施例の演算過程を示す図
【符号の説明】
DSP1 第1のデジタルシグナルプロセッサ DSP2 第2のデジタルシグナルプロセッサ A1 DSP1のメモリ B1 DSP1のメモリ A2 DSP2のメモリ B2 DSP2のメモリ X 測長データ用メモリ Y 係数データ用メモリ R1 第1のラッチ回路 R2 第2のラッチ回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】2つのデジタル値を掛算する掛算装置にお
    いて、一組のデジタルシグナルプロセッサと、一組のラ
    ッチ回路と、2つのデジタル値を夫々上位ビットと下位
    ビットとに分けて記憶するメモリと、を含んで構成さ
    れ、一方のデジタルシグナルプロセッサに、前記2つの
    デジタル値の下位ビット同士を掛算し得られた値の上位
    ビットのみを選択する第1の掛算手段と、2つのデジタ
    ル値の上位ビットと下位ビットの掛算を行う第2の掛算
    手段と、これら第1の掛算手段及び第2の掛算手段によ
    って掛算された各値を加算する第1の加算手段と、加算
    して得られた値の上位ビットを選択して第1のラッチ回
    路にラッチする第1のラッチ手段と、を設け、他方のデ
    ジタルシグナルプロセッサに、前記2つのデータの上位
    ビット同士の掛算を行う第3の掛算手段と、前記第1の
    ラッチ回路にラッチされた値と前記第3の掛算手段で掛
    算された値とを加算する第2の加算手段と、該第2の加
    算手段で加算された値を上位ビットと下位ビットに分け
    て第2のラッチ回路にラッチする第2のラッチ手段と、
    を備えたことを特徴とする掛算装置。
JP3243377A 1991-09-24 1991-09-24 掛算装置 Pending JPH0580984A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3243377A JPH0580984A (ja) 1991-09-24 1991-09-24 掛算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3243377A JPH0580984A (ja) 1991-09-24 1991-09-24 掛算装置

Publications (1)

Publication Number Publication Date
JPH0580984A true JPH0580984A (ja) 1993-04-02

Family

ID=17102949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3243377A Pending JPH0580984A (ja) 1991-09-24 1991-09-24 掛算装置

Country Status (1)

Country Link
JP (1) JPH0580984A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6557954B1 (en) 1998-09-29 2003-05-06 Tomitaro Hattori Crawler pad for the tread board of a crawler track shoe

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6557954B1 (en) 1998-09-29 2003-05-06 Tomitaro Hattori Crawler pad for the tread board of a crawler track shoe

Similar Documents

Publication Publication Date Title
US6209017B1 (en) High speed digital signal processor
US4635292A (en) Image processor
EP0411491B1 (en) Method and apparatus for performing division using a rectangular aspect ratio multiplier
US4525796A (en) Pipelined operation unit for vector data
US20100198894A1 (en) Digital Signal Processor Having Instruction Set With An Exponential Function Using Reduced Look-Up Table
JPH0612229A (ja) 乗累算回路
US6505288B1 (en) Matrix operation apparatus and digital signal processor capable of performing matrix operations
JPH0368416B2 (ja)
US9069686B2 (en) Digital signal processor having instruction set with one or more non-linear functions using reduced look-up table with exponentially varying step-size
US9223752B2 (en) Digital signal processor with one or more non-linear functions using factorized polynomial interpolation
JP3529622B2 (ja) 演算回路
EP0605885A2 (en) Method and apparatus for automatically designing logic circuit, and multiplier
JPH0580984A (ja) 掛算装置
US20100138468A1 (en) Digital Signal Processor Having Instruction Set With One Or More Non-Linear Complex Functions
JP2737933B2 (ja) 除算装置
EP0888586B1 (en) Array indexing
US20050246406A9 (en) Emod a fast modulus calculation for computer systems
FR2773231A1 (fr) Procede de production ameliore d'un parametre jo associe a la mise en oeuvre d'operations modulaires selon la methode de montgomery
US5941942A (en) Method for multiplying a multiplicand and a multiplier according to the booth method in interactive steps
JP2508286B2 (ja) 平方根演算装置
KR19980084342A (ko) 2 사이클 파이프라인 방식으로 부동 소수점 데이터를 곱셈 처리하는 방법 및 장치
JP3850150B2 (ja) デジタル信号処理動作を実行する方法およびデジタル信号プロセッサ
JPH0535773A (ja) ベクトル除算方式とその装置
Kumar et al. Implementation and Performance Analysis of Reconfigurable Montgomery Modular Multiplier
JPS6259828B2 (ja)