JPH029366B2 - - Google Patents

Info

Publication number
JPH029366B2
JPH029366B2 JP56082114A JP8211481A JPH029366B2 JP H029366 B2 JPH029366 B2 JP H029366B2 JP 56082114 A JP56082114 A JP 56082114A JP 8211481 A JP8211481 A JP 8211481A JP H029366 B2 JPH029366 B2 JP H029366B2
Authority
JP
Japan
Prior art keywords
addition
subtraction
circuit
multiplication result
output
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 - Lifetime
Application number
JP56082114A
Other languages
English (en)
Other versions
JPS57197650A (en
Inventor
Norishige Tanaka
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP56082114A priority Critical patent/JPS57197650A/ja
Publication of JPS57197650A publication Critical patent/JPS57197650A/ja
Publication of JPH029366B2 publication Critical patent/JPH029366B2/ja
Granted 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/527Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
    • G06F7/5272Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features
    • G06F2207/3884Pipelining
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding

Landscapes

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

Description

【発明の詳細な説明】
本発明は、乗算結果の誤差を改善する乗算丸め
機能を有する演算回路に関する。 従来、音声合成器に用いられるような格子形デ
ジタルフイルタに利用される演算回路では、乗算
器が乗算結果の下位数ビツトを切り捨てるように
しているので、乗算結果が負の時には非常に小さ
な負の値の誤差が大きくなつてしまう。その結
果、精度が低下し、フイルタの安定性が悪くなる
といつた欠点を有していた。 本発明は上記の事情に鑑びてなされたもので、
2の補数表現された2進データを乗算するパイプ
ライン乗算器と、このパイプライン乗算器で切り
捨てられた乗算結果の下位ビツト救済のために乗
算結果の正負の値にかかわらずその絶対値を小さ
くするように設定した初期キヤリにて並列の加減
算を行なつて、上記乗算結果の絶対値の誤差を小
さく丸め込む加減算回路とを設け、演算結果の誤
差精度を改善し、格子形デジタルフイルタの安定
性向上等に好適な演算回路を提供することを目的
とする。 以下、図面を参照して本発明の一実施例を説明
する。 第1図は音声合成器に用いられる一般的な格子
形デジタルフイルタを示すもので、図示のような
フイルタ要素Fo,Fo-1およびこのフイルタ要素
Fo-1と同様のフイルタ要素Fo-2,…F1よりなる。
入力端子INに入力される信号u(i)は初段のフイ
ルタ要素Foの加減算器1に導かれ、ここで上記
入力信号から乗算器2の出力が減算され、その演
算結果ao(i)は次段のフイルタ要素Fo-1に送出され
る。遅延回路3は、フイルタ要素F2からのフイ
ードバツク出力bo(i)を1サイクル遅延してbo(i
1)出力を得る。また、上記乗算器2は、この
遅延回路3の出力bo(i−1)に定数Ko(i−1)に
定数Koを乗じてその出力を上記加減算器1に入
力する。フイルタ要素Fo-1では、フイルタ要素Fo
からの出力ao(i)から乗算器21(乗算定数Ko-1)の
出力を加減算器11で減算して演算出力ao-1(i)を
得る。上記乗算器21は、フイルタ要素Fo-2から
フイードバツクされた出力bo-1(i)を1サイクル遅
延する遅延回路31の出力bo-1(i−1)に定数
Ko-1を乗じてその演算出力を加減算器11に入力
する。同様に、この加減算器11の出力ao-1(i)は
乗算器22にて定数Ko-1と乗ぜられ、その結果は
加減算器12に入力される。この加減算器12
は、乗算器22の出力と遅延回路31の出力bo-1
(i−1)とが加算され、その結果、出力bo(i)が前
段のフイルタ要素Foにフイードバツクされる。
以下、同様なフイルタ要素Fo-2,Fo-3,F1の動作
により、最終段のフイルタ要素F1からは出力a1(i)
が取り出される。 つまり、任意のフイルタ要素出力aj(i)、bj(i)は
次式で示される。 aj(i)=aj+1(i)−Kj・bj(i−1) J
1〜o、ao+1(i)=u(i) aj(i)=aj+1(i)−Kj・bj(i−1) J
1〜o、ao+1(i)=u(i) bj(i)=bj-1(i−1)+Kj-1・aj-1(i) j=2〜o、b1(
i)=a1(i)………(1) 上記デジタルフイルタでは1サイクルの間に乗
算、加算がそれぞれ(2n−1)回行なわれる。こ
の演算を1サイクルの間に行なうには回路の高速
性が要求される。このため、乗算器としては高速
化に有利なパイプライン乗算器が使用される。 ここで、このパイプライン乗算器における演算
方法について簡単に説明する。 被乗数X=−2m-1xn+2m-2xn-1+…2x2++x1 乗数Y=−2n-1yo+2n-2yo-1+…2y2+y1(但し
nは偶数)とすると、 X・Y=X(y1+2y2+…2n-2yo-1 −2n-1yo)=X{(y1−2y2)+22(y2+Y3 −2Y4)+24(y4+y5−2y6)+… +2n-2(yo-2+yo-1−2yoとなる。ここで、Pi=y2i+y2i+1−2y2i+2である。
上式からPiの取り得る値は0、±1、±2であるか
らX・Piの値は0、±X、±2Xとなる。 第2図は上式においてm=14、n=10の場合の
パイプライン乗算器の一例を示すもので、被乗数
Xが14ビツト、乗数Yが10ビツトの演算を処理で
きるようになつている。図において、ブロツクa
のYデコーダはy1〜y10のデータを受けて上記Pi
のの演算を行なう。すなわち、Yデコーダ50
y1、y2を受けてP0の演算を行ない、Yデコーダ5
はy2、y3、y4を受けてP1の演算を行ない、同様
にYデコーダ52はP2を、Yデコーダ53はP3を、
Yデコーダ54はP4の演算を行なう。また、ブロ
ツク60はx1〜x14のデータとYデコーダ5Jの出
力P0を受けてX・P0の演算を行ない、ブロツク
1ではYデコーダ51の出力P1を受けてX・P1
演算を、ブロツク62ではYデコーダ52の出力P2
を受けてX・P2の演算を、ブロツク63ではYデ
コーダ53の出力P3を受けてX・P3の演算を、ブ
ロツク64ではYデコーダ54の出力P4を受けて
X・P4の演算をそれぞれ行なう。また、ブロツ
ク71〜74ではoi=0 X・Pi+X・Po+1の演算を行な
う。すなわち、ブロツク71ではブロツク60の出
力X・P0とブロツク61の出力X・P1との加算演
算〔X・P0+X・P1〕が実行され、同様にブロ
ツク72ではブロツク71の出力X・P0+X・P1
ブロツク62の出力X・P2との加算演算〔(X・
P0,X・P1)+X・P2〕が、ブロツク73では
〔(X・P0+X・P1+X・P2)+X・P3〕の演算
が、ブロツク74では〔(X・P0+X・P1+X・
P2+X・P3)+X・P4〕の演算がそれぞれ実行さ
れる。ここで、上記oi=0 X・Pi+X・Po+1の演算で
は桁合わせを行ない、oi=0 X・Piの下位2ビツト
は切り捨てるようにしている。 一般に2の補数表現による2進データ、例えば Z=−2n-1Zo+2n-2Zo-1+2n-3Zo
-2
+…2Z2+Z1 とすると、その補数は −Z=−2n-1 o+2n-2 o-1+2n-3
o-2+…221+1……(2) と表わすことができる。このような2の補数表現
による2進データにおいて、下位ビツトの切捨て
は正の数では絶対値が小さくなり、負の数では絶
対値が大きくなる。その結果、フイルタとしては
実際の値に対して負の側へかたよつた値となる。
そこで、本発明はこのパイプライン乗算器におけ
る下位2ビツトの切り捨てに対して、新たな乗算
結果丸め込み機能を有する加減算回路を適用して
乗算結果の正負にかかわらずその絶対値を小さく
せんとするものである。 先ず、前記第1図に示すデジタルフイルタに適
用される加減算回路を第3図に示す。この回路の
初段のフルアダーFA1ではデータA1とデータB1
とを加算し、かつキヤリC0を加えて演算結果出
力S1とその時の上位桁へのキヤリC1を出力する。
同様に、次の桁のフルアダーFA2ではデータA2
とB2と下位桁からのキヤリC1とを加算して演算
結果S2とキヤリC2を出力する。このようなフル
アダーがn桁直列接続されて加減算回路が構成さ
れている。この加減算回路の任意桁jにおける動
作結果を表1に示す。
【表】 ここで、Ajは前記(1)式に示す右辺第1項のaj+1
(i)あるいはbj-1(i−1)を表わし、Bjは右辺第2
項の−Kj・bj(i−1)あるいはKj-1・aj-1(i)を表
わし、Sjは加減算の結果を示し、Cjは次の桁への
キヤリーを示し、またCj-1は下位桁からのキヤリ
ーを表わす。 なお、従来の加減算回路では表2に示すような
演算方法により加減算を行なつている。
【表】 すなわち、上記表2に示すように減算(A−
Z)時にはBj項をj、初期キヤリC0を1とし、加
算(A+Z)時にはBj項をZj、初期キヤリC0を0
として演算を行なつていた。しかし、乗算器の出
力(Zj)は前述したように切り捨て論理であるか
ら、上記表2の演算方法を用いると乗算結果
(Zj)が正の時はますます演算結果の絶対値は小
さく、負の時はますます絶対値は大きくなつてし
まう。そこで、本発明では第3図の加減算回路の
演算方法を表3に示すような方法により実行させ
ている。
【表】 すなわち、パイプライン乗算器の各乗算結果?
Zj)が正の時には表2で示す従来と同じ演算を行
なう。しかし、乗算結果Zjが負の時には加算時に
初期C0を「1」にして乗算結果Zjの値を小さく
し、また減算時には初期キヤリC0を「0」にし
て乗算結果−Zjの値を小さくするような丸め機能
演算を第3図の加減算回路にて行なわしめるよう
にしている。このような加減算回路とするため
に、乗算結果Zjと加減算内容とにより上記表3の
ような初期キヤリC0を得る初期キヤリ設定回路
を第4図に示す。この回路11は乗算結果Zoと演
算内容E(加算の場合はE=“1”、減算の場合は
E=“0”)との両入力を受けて論理動作をする排
他的NOR回路である。この排他的NOR回路では
出力C0は下記表4に示すようになる。
【表】 この表4から判るように論理出力C0を前記表
3の初期キヤリとすれば、乗算結果が負の時は演
算内容にかかわらず、乗算結果の値が小さくなる
ように初期キヤリC0の値が決定される。 したがつて、上述したパイプライン乗算器と加
減算回路とを有する演算回路をデジタルフイルタ
に適用すれば、乗算器の乗算結果の正負の値にか
かわらず、その絶対値を小さくするように初期キ
ヤリを設定して加減算することにより乗算器の切
り捨て論理に対してその誤差を最小にできるの
で、フイルタの安定性を図ることができる。しか
も、パイプライン乗算器等の高速性を有する演算
回路を利用しているので、音声合成器等の格止形
デジタルフイルタ等の演算回路には好適である。 以上説明したように本発明によれば、2の補数
表現された2進データを乗算するパイプライン乗
算器と、このパイプライン乗算器で切り捨てられ
た乗算結果の下位ビツト救済のために乗算結果の
正負の値にかかわらず、その絶対値を小さくする
ように設定した初期キヤリにて並列の加減算を行
なう加減算回路とを設け、上記乗算結果の絶対値
の誤差を小さく丸めるようにしているので、演算
結果の誤差精度を改善でき、音声合成器用の格子
形デジタルフイルタの安定性向上等に好適な演算
回路を提供できる。
【図面の簡単な説明】
第1図は音声合成器に適用される格子形デジタ
ルフイルタの構成図、第2図は第1図のフイルタ
に適用されるパイプライン乗算器の構成図、第3
図は本発明の演算回路においてパイプライン乗算
器と共に用いられる加減算回路の一例を示す構成
図、第4図は第3図の加減算回路に用いる初期キ
ヤリ設定回路の構成図である。 11……初期キヤリ設定回路、FA1〜FAo……
フルアダー(加減算回路)。

Claims (1)

  1. 【特許請求の範囲】 1 2の補数表現された2進データを乗算しその
    下位ビツトを切捨て処理するパイプライン乗算器
    と、このパイプライン乗算器で得られた乗算結果
    が加算入力あるいは減算入力として導かれ、上記
    乗算結果が正の場合で加算の時は論理“0”、減
    算の時は論理“1”となり、乗算結果が負の場合
    で加算の時は論理“1”、減算の時は論理“0”
    に設定されるキヤリーを用いて乗算結果の正負に
    かかわらずその絶対値を小さくするように並列の
    加減算を行う加減算回路とを具備し、この加減算
    回路は、複数の全加算器を縦続接続して成り、こ
    れら全加算器のうちの最下位ビツトの演算に対応
    する全加算器に前記キヤリーを入力することによ
    り、前記乗算結果の絶対値の誤差を小さく丸め込
    むようにしたことを特徴とする演算回路。 2 上記キヤリーは乗算結果の正負および加減算
    回路の演算内容の2入力を受け入れて論理処理す
    る排他的NOR回路により得られることを特徴と
    する特許請求の範囲第1項記載の演算回路。
JP56082114A 1981-05-29 1981-05-29 Operation circuit Granted JPS57197650A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56082114A JPS57197650A (en) 1981-05-29 1981-05-29 Operation circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56082114A JPS57197650A (en) 1981-05-29 1981-05-29 Operation circuit

Publications (2)

Publication Number Publication Date
JPS57197650A JPS57197650A (en) 1982-12-03
JPH029366B2 true JPH029366B2 (ja) 1990-03-01

Family

ID=13765374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56082114A Granted JPS57197650A (en) 1981-05-29 1981-05-29 Operation circuit

Country Status (1)

Country Link
JP (1) JPS57197650A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4589084A (en) * 1983-05-16 1986-05-13 Rca Corporation Apparatus for symmetrically truncating two's complement binary signals as for use with interleaved quadrature signals
JPS62260227A (ja) * 1986-05-06 1987-11-12 Yamaha Corp 乗算回路

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4827648A (ja) * 1971-05-05 1973-04-12
JPS5213741A (en) * 1975-07-23 1977-02-02 Hitachi Ltd Digital signal processing circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4827648A (ja) * 1971-05-05 1973-04-12
JPS5213741A (en) * 1975-07-23 1977-02-02 Hitachi Ltd Digital signal processing circuit

Also Published As

Publication number Publication date
JPS57197650A (en) 1982-12-03

Similar Documents

Publication Publication Date Title
US5500812A (en) Multiplication circuit having rounding function
US7043520B2 (en) High-speed/low power finite impulse response filter
JPH0713742A (ja) 乗算装置
US5177703A (en) Division circuit using higher radices
JP2608165B2 (ja) ディジタル信号処理システムにおける実時間2の補数コードの乗算方法及び装置
US4677583A (en) Apparatus for decimal multiplication
US4785412A (en) Double precision approximate quotient network
JP3537378B2 (ja) 加算器および集積回路
US4823300A (en) Performing binary multiplication using minimal path algorithm
JPH0519170B2 (ja)
JPH029366B2 (ja)
US6202078B1 (en) Arithmetic circuit using a booth algorithm
EP0472030A2 (en) Method and apparatus for modifying two's complement multiplier to perform unsigned magnitude multiplication
JP2645422B2 (ja) 浮動小数点演算処理装置
JP2578482B2 (ja) 浮動小数点演算器
JPH0793134A (ja) 乗算器
KR0176883B1 (ko) 복소수 승산기
JPH11126157A (ja) 乗算方法および乗算回路
JP2777265B2 (ja) 高基数開平演算装置
JPH0635673A (ja) 乗算方法及び回路
JP2608090B2 (ja) 高基数非回復型除算装置
KR920006324B1 (ko) 실시간 2's콤플리멘트 코드 승산기의 최적화방법
JP2003223316A (ja) 演算処理装置
KR950006583B1 (ko) 승산방법 및 회로
JPS61118835A (ja) ハ−ドウエア除算器