JP3279462B2 - ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路 - Google Patents

ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路

Info

Publication number
JP3279462B2
JP3279462B2 JP25346495A JP25346495A JP3279462B2 JP 3279462 B2 JP3279462 B2 JP 3279462B2 JP 25346495 A JP25346495 A JP 25346495A JP 25346495 A JP25346495 A JP 25346495A JP 3279462 B2 JP3279462 B2 JP 3279462B2
Authority
JP
Japan
Prior art keywords
bits
circuit
digital
partial product
multiplier
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
JP25346495A
Other languages
English (en)
Other versions
JPH0997166A (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP25346495A priority Critical patent/JP3279462B2/ja
Publication of JPH0997166A publication Critical patent/JPH0997166A/ja
Application granted granted Critical
Publication of JP3279462B2 publication Critical patent/JP3279462B2/ja
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/52Multiplying; Dividing

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)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディジタル信号処
理用のディジタル乗算器、ディジタルトランスバーサル
型等化器およびディジタル積和演算回路に関し、特に、
高速に、乗算または積和演算をすることを可能とした、
ディジタル乗算器、ディジタルトランスバーサル型等化
器、ディジタル積和演算回路およびそれらを使用したデ
ィジタル信号処理装置に関する。
【0002】
【従来の技術】従来のディジタル信号処理における乗算
の構成は、例えば、電子情報通信学会編の「ディジタル
信号処理ハンドブック」の243〜244項に記載され
ている、キャリーセーブアダー方式並列乗算器や、部分
積の生成に2次のBoothのアルゴリズムを用いた並列乗
算器、部分積の加算にWallace Treeの方法を用いた並列
乗算器などがある。また、特公平5−84530号公報
には、Boothの方式とWallace Treeの方法を組み合わせ
た場合の構成が最高速乗算方式であることが、述べられ
ている。また、Wallace Treeの方法は、加算器の段数を
合わせることで、パイプラインの手法を適用するのが容
易である。
【0003】6ビット×7ビットの乗算の従来の構成に
よる構成例として、図9の2次のBoothの方法による部
分積の生成とWallace Treeの方法を用いた構成、図10
の並列乗算の方法による部分積の生成とWallace Treeの
方法を用いた構成を示す。図11には、図9で使用する
2次のBoothの方法による部分積の生成回路を、また、
図12には、並列乗算による部分積の生成回路を示す。
【0004】また、表1は、図9と図10の構成を回路
規模と演算遅延時間の観点で比較したものである。表1
の構成指針の回路規模削減の欄は、回路規模を最少にし
た場合の構成であり、演算遅延時間は考慮されていない
構成である。また、構成指針の演算遅延短縮の欄は、演
算遅延を最小にした場合の構成であり、回路規模はいく
らか増加する構成である。
【0005】
【表1】
【0006】図9に示す様にBoothの方法は、多くの回
路を必要とし、Wallace Treeの方法の加算部分での回路
規模削減量を上回り、全体として規模が大きくなる。ま
た、遅延時間についても、図11からもわかるように、
部分積生成のためにも回路遅延が比較的多く必要で、ま
た、負の値の計算が必要なため(この例では、1の補数
に1を加算する方法をとっている)、最下位ビット側に
部分積のビットが多くなり、ビットの収束に時間がかか
っている。
【0007】図10では、並列乗算の方法であるため
に、図12からも解るように、部分積生成のための回路
が少なく、回路遅延時間も少なくてすみ、また、最下位
ビットを直接出力し、最下位ビット側に部分積のビット
が特に多くなることもないので、ビットの収束も速くな
る。ただし、全体として部分積のビット数が多いので、
Wallace Treeの方法の回路規模は、大きくなるが、乗算
器全体としては、図9の乗算器よりも小さくなってい
る。しかし、まだ回路規模は、大きい。
【0008】トランスバーサル型等化器では、図9や図
10の乗算器を幾つか組み合わせて使用し、乗算結果を
求め、それらを加算して演算結果を求めている。図15
に乗数7ビット、被乗数6ビット、7タップのトランス
バーサル型等化器の従来例を示す。これは、図10に示
した乗算器とWallace Tree回路とを組み合わせた回路で
ある。乗算器の構成が、大規模で高速化に対応できない
回路である場合には、これを用いてトランスバーサル型
等化器を構成しても、トランスバーサル型等化器の回路
規模削減や高速化は、困難である。従って、トランスバ
ーサル型等化器でも、個々の乗算器の構成の改善が必要
不可欠である。
【0009】Wallace Tree回路に使う1ビットのフルア
ダーは、図13(a)に示すように、3入力に対し2出
力であることから、1ビットのフルアダー1個で1ビッ
トのビット削減が可能であることが分かる。また、ハー
フアダー(回路規模、回路遅延とも、フルアダーのほぼ
半分)は、同じく図13(b)に示すように、2入力に
対し2出力であることから、ビット削減には、直接の効
果はなく、桁上がりを生じさせるための効果があるだけ
である。従って、ハーフアダーを使わずに構成すること
が回路規模を小さく抑えることになる。但し、ハーフア
ダーを多用することで、桁上がりを早くさせ、ビット収
束を早めることが、いくらか可能である。従って、Wall
ace Tree回路の最小の回路規模は、入力ビット数と出力
ビット数から、次の様に概算することができる。
【0010】
【数1】
【0011】この式から分かるように、Wallace Tree回
路の回路規模を小さくするには、入力する部分積のビッ
ト数を減らすこと、出力ビット数を増すこと、フルアダ
ーの回路規模を減らすことが考えられる。
【0012】出力ビット数は、通常、乗数と被乗数のビ
ット数から決まり、増すのは困難である。また、実際に
は、丸めを施して出力することもあり、出力ビット数
は、減る傾向にある。
【0013】次に、フルアダーの回路規模を減らすこと
は、加算機能を実現する基本回路であるため、回路の削
減にも限界がある。
【0014】
【発明が解決しようとする課題】そこで回路規模を小さ
くするための残りの構成としては、入力する部分積のビ
ット数を減らすことが考えられる。本発明では、ディジ
タル乗算器、ディジタルトランスバーサル型等化器およ
びディジタル積和演算回路において、乗算部分で生じる
部分積のビット数を減らすことで、回路規模を削減す
る。それにより、高速に、乗算または積和演算をするこ
とも可能とした、ディジタル乗算器、ディジタルトラン
スバーサル型等化器およびディジタル積和演算回路を提
供することにある。同時に、部分積のビット数削減によ
り生じる誤差を補正する構成も提供する。
【0015】
【課題を解決するための手段】本発明では、乗算におけ
る部分積のビット生成のための部分積生成回路と部分積
を加算するためのWallace Tree回路から成るディジタル
乗算器、ディジタルトランスバーサル型等化器およびデ
ィジタル積和演算回路について、その乗算過程において
生成される部分積のビット数を削減することにより、部
分積のビットの加算における収束性を速くすることで動
作の高速化を図り、しかも、回路規模も同時に小さくす
ることが出来る。また、加算回路としてWallace Tree回
路を用いることで、パイプライン処理適用が容易で、さ
らに、高速化が可能である。
【0016】乗算過程において生成される部分積のビッ
ト数を削減する第一の構成は、最下位ビット側の部分積
のビットを生成させないで切り捨てて削除することであ
る。部分積の加算回路としてWallace Tree回路を使用す
る場合には、特に、加算結果が、下位ビット側から決定
されていくので、高速化のためにも、最下位ビット側の
部分積のビットを生成させないで切り捨てて削除するこ
とは、有用である。例えば、最下位ビット側の3桁分を
生成させないで切り捨てて削除するとすると、1回の乗
算で6ビットの部分積のビットが削減できる。これは、
6×7ビットの乗算(被乗数が6ビット)で約14%の
回路規模削減になり、また、加算の収束性においては、
およそフルアダー1段の遅延時間分だけ速く収束する。
また、このときのビット切り捨てによって生じる誤差
は、乗算器の出力レンジに対して0.4%程度である。
【0017】上記の部分積のビット数削減の構成におい
て、下位ビットを切り捨てることで、演算に誤差が発生
する。その発生する誤差分を補正することで、演算精度
を維持することが可能である。その誤差を補正するため
の第一の構成例は、補正量を固定値として加えるように
するものである。例えば、切り捨てられるビットの最大
値の1/2の値のビットを加えることで、誤差の大きさ
を減らすことができる。補正値が固定値であることか
ら、例えば、図14に示すように、ハーフアダーと同程
度の簡単な回路で、補正することが可能である。
【0018】誤差を補正するための第二の構成例は、補
正量を乗数によって可変するようにするものである。切
り捨てられるビットの大きさは、乗数に依存するからで
ある。乗数に応じて補正量を求め、その値を部分積のビ
ットと同じように加算することで、さらに、発生する誤
差を小さくしようというものである。乗数から補正値を
求めるのは、比較的容易であり、回路遅延および回路規
模についても、気にならない程度である。
【0019】誤差を補正するための第三の構成例は、補
正量を任意に設定できるようにするものである。上記の
構成例では、補正値を求める変わりに、レジスタ等を設
け、任意の値を設定することにより、補正するものであ
る。
【0020】前記したような第一、第二及び第三の構成
例は、切り捨てによる誤差分を補正するばかりでなく、
任意の値を加えることも可能であり、例えば、回路のオ
フセットなどを補正することも可能であるし、また、任
意の値を加算する演算回路としても機能する。
【0021】トランスバーサル型等化器において、その
乗算過程において生成される部分積のビット数を削減す
る第一の構成は、乗算器と同じように、乗算過程におい
て生成される部分積のビット数を削減することである。
特に、部分積の加算回路としてWallace Tree回路を使用
する場合には、加算結果は、下位ビット側から決定され
ていくので、高速化のためにも、最下位ビット側の部分
積のビットを生成させないで切り捨てて削除することで
ある。例えば、7タップのトランスバーサル型等化器
で、各タップが6×7ビットの乗算器(被乗数が6ビッ
ト)から成り、各タップの最下位ビット側の3桁分を生
成させないで切り捨てて削除するとすると、1タップの
乗算で6ビットの部分積のビットが削減でき、全体で
は、42ビットの削減となる。これは、約14%の回路
規模削減になり、また、加算の収束性も速くする。ま
た、このときのビット切り捨てによって生じる誤差は、
最大で、乗算器の出力レンジに対して2.5%程度であ
る。
【0022】上記の第一の構成によるトランスバーサル
型等化器においても、乗算器と同様に、下位ビットを切
り捨てることで、演算に誤差が発生する。その発生する
誤差分を補正することで、演算精度を維持することが可
能である。その場合、各タップ毎に誤差分を補正するの
ではなく、各タップの補正量を予め加算して求めて、ま
とめて補正することで、補正のためのビット数を削減
し、回路規模を小さくする。誤差の補正の構成例は、乗
算器と同様に、補正量を固定値として加える構成例や乗
数によって可変する構成例、任意に設定できるようにす
る構成例が考えられる。
【0023】また、トランスバーサル型等化器の各タッ
プの乗数(係数値)の符号(極性)が、一般に交番性を
持ち、係数の符号は決まっている。その特徴を用いて、
トランスバーサル型等化器の各タップの乗数(係数値)
の符号(極性)を固定することによって、符号ビットの
演算によって生じる部分積のビットを生成させないで切
り捨てて削除することである。これが部分積のビット数
削減の第二の構成である。例えば、7タップのトランス
バーサル型等化器で、各タップが6×7ビットの乗算器
(被乗数が6ビット)から成り、各タップの係数ビット
を固定すると、1タップ分の乗算で係数ビットの演算分
として6ビットの部分積のビットが削減できる。これ
は、約14%の回路規模削減になり、また、加算の収束
性も部分積のビットが減った分、いくらか速く収束する
様になる(回路規模が減ったことによる配線長の改善分
程度)。
【0024】乗算過程において生成される部分積のビッ
ト数を削減する第三の構成は、トランスバーサル型等化
器の中心タップから遠くはなれたタップの係数値の設定
範囲を狭く(ダイナミックレンジを小さくする)制限す
ることで、生成される部分積のビット数を削減する。一
般に、トランスバーサル型等化器では、中心タップから
遠くはなれたタップ程、絶対値の小さな値の乗数(係数
値)になる。そこで、中心タップから遠くはなれたタッ
プの係数値の設定範囲を小さく抑えることで、生成され
る部分積のビット数を削減する。例えば、7タップのト
ランスバーサル型等化器で、各タップが6×7ビットの
乗算器(被乗数が6ビット)から成る回路で、両端の2
つのタップの乗数のダイナミックレンジを1/4の範囲
と制限すると、乗数のビットは、2ビット少なくて済
む。従って、その場合の1回の乗算での係数ビットの演
算分として12ビットの部分積のビットが削減できる。
これは、回路全体で24ビットの部分積の削減になり、
約8%の回路規模削減となる。また、加算の収束性の改
善は、あまり期待できず、幾分か速く収束する程度(回
路規模が減ったことによる配線長の改善分程度)であ
る。
【0025】トランスバーサル型等化器の構成上の一般
的な特徴は、各タップの乗数の符号が交番性を持ち、係
数の符号は、決まっていること、また、中心タップから
遠くはなれたタップ程、係数値の大きさ(絶対値)が小
さいことであることを前述し、その特徴を用いた回路規
模削減の構成を示した。しかし、トランスバーサル型等
化器では、その扱う波形により、両端のタップ係数は、
前述の特徴に従わず、係数値の大きさ(絶対値)は小さ
いが、係数の符号が定まらない場合もある。そのため、
両端のタップ係数の符号を固定せず、両極性を持つよう
にする構成もある。この場合に回路規模の削減効果は減
少するが、この第三の構成を適用できる機会が増える。
【0026】また、トランスバーサル型等化器のタップ
の中で、常に乗数の等しいタップがある場合、その乗算
過程において生成される部分積のビット数を削減するた
めの構成として、被乗数を先に加算し、その後に乗数を
掛けることで、部分積の生成を削減することが可能であ
る。例えば、7タップのトランスバーサル型等化器で、
各タップが6×7ビットの乗算器(被乗数が6ビット)
から成り、常に乗数の等しいタップが1組ある場合、6
ビットの被乗数を先に加算し、7ビットの被乗数と7ビ
ットの乗数の乗算としても、部分積は、35ビット削減
される。但し、被乗数を先に加算するための加算回路
と、加算した被乗数を保持するためのラッチ回路が必要
となるので、回路規模の削減の効果は、少なくなる。加
算の収束性は、確実に良くなり、高速になる。
【0027】乗算の最下位ビット側の部分積ビットを生
成させないで切り捨てて削除することで回路規模を削減
する構成は、トランスバーサル型等化器のように決まっ
た形態のない積和演算回路にも適用できる。最下位ビッ
ト側の部分積ビットを生成させないで切り捨てて削除す
ることによる誤差も、トランスバーサル型等化器と同様
に、まとめて補正することが可能である。
【0028】以上のような構成を用いて、乗算過程にお
いて生成する部分積のビット数を削減することにより、
部分積のビットの加算における収束性を速くすることが
可能となる。それにより、乗算の高速化、または、積和
演算を有するトランスバーサル型等化器の高速化が、実
現できる。さらに、同時に、回路規模を小さく抑えるこ
とも可能であって、消費電力も抑えられる利点がある。
また、加算回路としてWallace Tree回路を用いること
で、パイプライン処理適用が容易で、さらに、高速化へ
の対応が可能である。
【0029】
【発明の実施の形態】図1を用い、本発明の第1の実施
例について、その基本動作を説明する。
【0030】図1は、6ビット×7ビットの乗算器の並
列乗算の方法による部分積の生成を示す図(a)とビッ
トの流れを示した図(b)からなる。本来ならば、44
ビットの部分積(2の補数のための補正ビットを含む)
が生成されるところを、最下位ビット側の3桁分の6ビ
ットの部分積を生成しないで切り捨てて削除することに
より、38ビットの部分積だけが生成される。このた
め、部分積を加算するWallace Tree回路に入力されるビ
ット数は、6ビット少ない38ビットとなる。従って、
部分積の生成のための回路およびWallace Tree回路の回
路規模が小さくなり、ビットの収束も速くなる。表2か
らわかるように、回路規模は、約13〜16%の削減で
あり、演算結果が出力されるまでの演算遅延は、フルア
ダーで1/2〜1段分の削減がされ、高速になる。表2
の構成指針の回路規模削減の欄は、回路規模を最少にし
た場合の構成であり、演算遅延時間は考慮されていない
構成である。また、構成指針の演算遅延短縮の欄は、演
算遅延を最小にした場合の構成であり、回路規模はいく
らか増加する構成である。
【0031】
【表2】
【0032】図2を用い、本発明の第2の実施例につい
て、その基本動作を説明する。
【0033】図2は、上記の第1の実施例に対して、最
下位側ビットを切り捨てたことによる誤差分を補正する
様子を示したものであり、6ビット×7ビットの乗算器
の並列乗算の方法による部分積の生成を示す図(a)と
ビットの流れを示した図(b)からなる。最下位ビット
の1ビットの大きさを1[LSB]とすると、切り捨てられ
るビットの最大と最小は、それぞれ17[LSB]、0[LSB]
であり、ここでは、8[LSB]分を固定値として補正して
いる。従って、部分積のビット数は、補正ビットが加わ
り、39ビットとなる。このときの回路規模、演算結果
が出力されるまでの演算遅延は、表2に示すように、図
1の回路に対して、回路規模、演算遅延共に変化しな
い。
【0034】図3を用い、本発明の第3の実施例につい
て、その基本動作を説明する。
【0035】図3は、上記の第1の実施例に対して、最
下位側ビットを切り捨てたことによる誤差分を補正する
様子を示したものであり、6ビット×7ビットの乗算器
の並列乗算の方法による部分積の生成を示す図(a)と
ビットの流れを示した図(b)および乗数X、Y、Zに応じ
て得られる補正値の例を示した図(c)からなる。補正
ビットP、Q、R、Sは、乗数X、Y、Zから求める。ここで
は、4ビットと2ビットで補正するときの値について示
した。補正ビットQ、R、Sは、乗数から求めるので、演
算遅延には影響を与えない。また、補正ビットPは、部
分積と共に加算されるが、回路規模は、Wallace Tree回
路で3ゲート増加することと、補正値を求めるために数
ゲート増加するだけであり、演算遅延は変わらない。
【0036】また、補正ビットP、Q、R、Sは、任意に外
部から与えることも可能である。そのときの回路規模
は、任意の値を与えるためのレジスタ等のための増加分
であり、演算遅延は図3の構成と変わらない。
【0037】図4は、本発明の構成によるトランスバー
サル型等化器の第1の実施例である。この例では、7タ
ップで、各タップの乗数が7ビット、被乗数が6ビット
の乗算をし、それを加算したものが出力結果となる。ま
た、TAP:C−1とTAP:C+1とは、常に乗数が
等しい構成である。ここでは、Dフリップフロップ12
3と、Dフリップフロップ125の出力の値を演算すべ
きところを、Dフリップフロップ122とDフリップフロ
ップ124の、1クロック前の値を用いて演算(加算)
し、その結果をDフリップフロップ128で保持した後
のデータと乗算する。このようにすることで、乗算器以
降の回路構成を同じにできるため、パイプライン処理等
の適応が容易になる。最下位ビット側から3桁分の部分
積を生成させないで切り捨てて削除するようにし、符号
も固定し、範囲も限定している。
【0038】各タップの乗数の設定範囲は、 TAP:C−3 -1/4-1[LSB] 〜 0 TAP:C−2 0 〜 +1/2-1[LSB] TAP:C0 +1のみ(固定値) TAP:C±1 -1-1[LSB] 〜 0 TAP:C+2 0 〜 +1/2-1[LSB] TAP:C+3 -1/4-1[LSB] 〜 0 とした。タップC0は、1倍のみで固定の構成である。
従って、各タップの部分積のみのビット数は、図4に示
すように、それぞれ18ビット、24ビット、6ビッ
ト、36ビット、24ビット、18ビットとなり、補正
値を含めた合計は、131ビットである。
【0039】また、各タップの補正値は、まとめてあら
かじめ演算して値を求めることで、ビット数を減らすこ
とができる。ここでは、図4に示すように、全体を5ビ
ットにすることができる。
【0040】図4の各タップの部分積の生成の様子は、
図5に示す通りである。
【0041】表3には、各タップの切り捨てられる値と
補正量を示した。ここでは、切り捨てられる値の最大値
と最小値の1/2の値を補正しようとしたものである
が、補正するビット数も考慮して、64[LSB]の値
を1ビットで補正した。これにより、誤差は、−42〜
+43[LSB]となり、低減される。
【0042】
【表3】
【0043】この構成による回路規模等は、表4に従来
の構成と対比して示してある。表の見方は、表1、2と
同じである。回路規模は、約50%に削減され、演算遅
延も、フルアダーで1〜2段分の削減がされ、高速化が
実現できることがわかる。
【0044】
【表4】
【0045】図6は、本発明の構成によるトランスバー
サル型等化器の第2の実施例である。図4の例と同様
に、7タップで、各タップの乗数が7ビット、被乗数が
6ビットの乗算をし、それを加算したものが出力結果と
なる。また、TAP:C−1とTAP:C+1とは、常
に乗数が等しい構成である。ここでは、Dフリップフロ
ップ153と、Dフリップフロップ155の出力の値を
演算すべきところを、Dフリップフロップ152とDフリ
ップフロップ154の、1クロック前の値を用いて演算
(加算)し、その結果をDフリップフロップ158で保
持した後のデータと乗算する。最下位ビット側から3桁
分の部分積を生成させないで切り捨てて削除するように
し、両端のタップを除いて符号も固定し、範囲も限定し
ている。両端のタップは、符号ビットを持ち、両極性の
係数値が設定可能であり、ここだけが図4と異なる。
【0046】従って、各タップの乗数の設定範囲は、 TAP:C−3 -1/4 〜 +1/4-1[LSB] TAP:C−2 0 〜 +1/2-1[LSB] TAP:C0 +1のみ(固定値) TAP:C±1 -1-1[LSB] 〜 0 TAP:C+2 0 〜 +1/2-1[LSB] TAP:C+3 -1/4 〜 +1/4-1[LSB] とした。タップC0は、1倍のみで固定の構成である。
従って、各タップの部分積のみのビット数は、図6に示
すように、それぞれ24ビット、24ビット、6ビッ
ト、36ビット、24ビット、24ビットとなり、補正
値を含めた合計は、142ビットである。
【0047】また、各タップの補正値は、まとめてあら
かじめ演算して値を求めることで、ビット数を減らすこ
とができる。ここでは、図6に示すように、全体を4ビ
ットにすることができる。
【0048】図6の各タップの部分積の生成の様子は、
図7に示す通りである。TAP:C−3とTAP:C+
3の部分積は、符号ビットがあるので、係数値を2ビッ
ト左シフトして乗算をして、乗算結果を2ビット右シフ
トするようにしている。こうすることで、係数ビット1
ビットのみの増加で対応できて、回路規模が削減でき
る。
【0049】表5には、各タップの切り捨てられる値と
補正量を示した。ここでは、切り捨てられる値の最大値
と最小値の1/2の値を補正しようとしたものである
が、補正するビット数も考慮して、48[LSB]の値
を2ビットで補正した。これにより、誤差は、−44〜
+41[LSB]となり、低減される。
【0050】
【表5】
【0051】この構成による回路規模等は、表6に示し
てある。表の見方は、表1、2と同じである。回路規模
は、両端のタップに両極性を持たせることで、図4の構
成と比べ、部分積が11ビット多くなり、その分として
81ゲートの回路規模増加になっている。回路規模削減
の効果は減少する。演算遅延時間は、図4の構成と同等
である。回路増加分の81ゲートの内訳は、部分積の生
成に12ゲート、部分積の加算のために69ゲートであ
る。数1によれば、部分積が11ビット増加すると、フ
ルアダーも11個必要となる。この例では、部分積が1
1ビット増加することで、フルアダーが11.5個増加
したことになり、数1による概算と良く合うことがわか
る。
【0052】
【表6】
【0053】図8は、本発明による積和演算を説明する
図である。この例では、部分積を求める複数の乗算回路
の部分201,202と、そこで生じる部分積のビット
を加算するための加算回路部203からなる。加算回路
部には、Wallace Tree回路を使用している。乗算部分
は、2回路以上の乗算器があり、各々の乗算器の乗数お
よび被乗数は、トランスバーサル型等化器の様に、互い
に関係のあるものでなくてもよい。各々の乗算回路は、
部分積のビットを出力し、その部分積は、加算回路部に
入力される。また、その乗算回路は、最下位ビット側の
部分積を切り捨てて出力しない構成になっているもので
ある。さらに、前述の構成と同様に、部分積が切り捨て
られて出力されないことによって生じる誤差分をまとめ
て、補正ビットとして加算回路部に入力している。
【0054】このように、乗算による最下位ビット側の
部分積を削減することで、回路の高速化、小規模化が実
現できる。
【0055】
【発明の効果】本発明により、高速動作が可能で、従来
に比べて小規模な回路のディジタル乗算器、ディジタル
トランスバーサル型等化器およびディジタル積和演算回
路が実現できる。また、本発明によるディジタル乗算
器、ディジタルトランスバーサル型等化器およびディジ
タル積和演算回路を適用した信号処理装置も、高速動作
に対応できる。
【図面の簡単な説明】
【図1】本発明の構成による第1の構成例を説明する図
である。
【図2】本発明の構成による第2の構成例を説明する図
である。
【図3】本発明の構成による第3の構成例を説明する図
である。
【図4】本発明の構成によるトランスバーサル型等化器
の第1の実施例を説明する図である。
【図5】図4の構成の部分積の生成の様子を示す図であ
る。
【図6】本発明の構成によるトランスバーサル型等化器
の第2の実施例を説明する図である。
【図7】図6の構成の部分積の生成の様子を示す図であ
る。
【図8】本発明の構成による積和演算回路の構成例を説
明する図である。
【図9】従来の構成による構成例(1)を説明する図で
ある。
【図10】従来の構成による構成例(2)を説明する図
である。
【図11】2次のBoothの方法の部分積の生成回路を示
す図である。
【図12】並列乗算の方法の部分積の生成回路を説明す
る図である。
【図13】加算器の構成を説明する図である。
【図14】入力"1"を含む加算器の構成を示す図であ
る。
【図15】従来の構成によるトランスバーサル型等化器
を説明する図である。
【符号の説明】
121〜128 Dフリップフロップ 129 6ビット加算器 131〜132 乗算器の部分積生成回路 134〜137 乗算器の部分積生成回路 138,168 Wallace Tree 回路 151〜158 Dフリップフロップ 159 6ビット加算器 161〜162 乗算器の部分積生成回路 164〜167 乗算器の部分積生成回路
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/52 310 G06F 17/10

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】 mビット×nビット(m,nは自然数)
    のディジタルデータの乗算を行うディジタル乗算器であ
    って、 部分積の最下位ビット側から少なくとも1桁分を生成す
    ることなく切り捨てて上位ビット側から(m×n)ビッ
    ト未満の部分積だけを生成する部分積生成回路部と、 Wallace Tree回路を用いて前記生成した部分積のビット
    を加算する加算回路部と、を備えた ことを特徴とするデ
    ィジタル乗算器。
  2. 【請求項2】 請求項1において、前記加算回路部は、部分積の最下位ビット側から少なく
    とも1桁分を生成することなく切り捨てて上位ビット側
    から(m×n)ビット未満の部分積だけを生成すること
    により生じる誤差分を補正する補正値と、前記部分積生
    成回路部で生成された部分積と、が入力される ことを特
    徴とするディジタル乗算器。
  3. 【請求項3】 被乗数(mビット)と乗数(nビット)
    のディジタルデ−タの乗算を行うディジタル乗算回路を
    用いた複数タップのディジタルトランスバ−サル型等化
    器であって、各タップにおいて部分積の最下位ビット側から少なくと
    も1桁分を生成することなく切り捨てて上位ビット側か
    ら(m×n)ビット未満の部分積だけを生成する部分積
    生成回路部と、 Wallace Tree回路を用いて前記生成した部分積のビット
    をまとめて加算する加算回路部と、を備えた ことを特徴
    とするディジタルトランスバーサル型等化器。
  4. 【請求項4】 請求項3において、部分積の最下位ビット側から少なくとも1桁分を生成す
    ることなく切り捨てて上位ビット側から(m×n)ビッ
    ト未満の部分積だけを生成することにより生じる誤差分
    をまとめて補正することを特徴とするディジタルトラン
    スバーサル型等化器。
  5. 【請求項5】 請求項3または4において、 各タップの乗数(係数値)の符号(極性)を固定するこ
    とによって、符号ビットの演算により生じる部分積のビ
    ットを生成させないことを特徴とするディジタルトラン
    スバーサル型等化器。
  6. 【請求項6】 請求項3、4または5において、 各タップの乗数(係数値)の設定範囲(ダイナミックレ
    ンジ)を、中心タップから離れる程小さく(狭く)する
    ことによって、生成される部分積のビット数を削減する
    ことを特徴とするディジタルトランスバーサル型等化
    器。
  7. 【請求項7】 請求項3乃至6のいずれか1つの項にお
    いて、 各タップの乗数(係数値)の中に常に等しい乗数(係数
    値)のタップがある場合には、先にそのタップのデータ
    を加算し、その後に乗算することを特徴とするディジタ
    ルトランスバーサル型等化器。
  8. 【請求項8】 ディジタル信号処理用の回路中にmビッ
    ト×nビット(m,nは自然数)の乗算において部分積
    を求めるような乗算方法を用いるディジタル乗算回路と
    ディジタル加算回路とを有し、2つ以上の乗算演算の結
    果について、直ちに加算演算を実施するような積和演算
    をする回路であって、前記ディジタル乗算回路は、部分積の最下位ビット側か
    ら少なくとも1桁分を生成することなく切り捨てて上位
    ビット側から(m×n)ビット未満の部分積だけを生成
    するものであり、 前記ディジタル加算回路は、前記生成した部分積のビッ
    トをまとめて加算するものである ことを特徴とするディ
    ジタル積和演算回路。
  9. 【請求項9】 請求項8において、部分積の最下位ビット側から少なくとも1桁分を生成す
    ることなく切り捨てて上位ビット側から(m×n)ビッ
    ト未満の部分積だけを生成することにより生じる誤差分
    をまとめて補正することを特徴とするディジタル積和演
    算回路。
JP25346495A 1995-09-29 1995-09-29 ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路 Expired - Fee Related JP3279462B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25346495A JP3279462B2 (ja) 1995-09-29 1995-09-29 ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25346495A JP3279462B2 (ja) 1995-09-29 1995-09-29 ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路

Publications (2)

Publication Number Publication Date
JPH0997166A JPH0997166A (ja) 1997-04-08
JP3279462B2 true JP3279462B2 (ja) 2002-04-30

Family

ID=17251757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25346495A Expired - Fee Related JP3279462B2 (ja) 1995-09-29 1995-09-29 ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路

Country Status (1)

Country Link
JP (1) JP3279462B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100430526B1 (ko) * 2001-12-14 2004-05-10 한국전자통신연구원 수정된 부스 디코더를 적용한 고정 길이 승산기 및 그승산 방법
KR100768088B1 (ko) * 2005-12-09 2007-10-18 한국전자통신연구원 고속 저전력 고정계수 곱셈기 및 그 방법
US7912891B2 (en) 2005-12-09 2011-03-22 Electronics And Telecommunications Research Institute High speed low power fixed-point multiplier and method thereof
CN101553984A (zh) * 2006-08-08 2009-10-07 松下电器产业株式会社 数字滤波器、其合成装置、合成程序及合成程序记录介质
JP2010238011A (ja) * 2009-03-31 2010-10-21 Nec Computertechno Ltd ベクトル乗算処理装置および方法ならびにプログラム

Also Published As

Publication number Publication date
JPH0997166A (ja) 1997-04-08

Similar Documents

Publication Publication Date Title
US7395304B2 (en) Method and apparatus for performing single-cycle addition or subtraction and comparison in redundant form arithmetic
US5796645A (en) Multiply accumulate computation unit
US6754689B2 (en) Method and apparatus for performing subtraction in redundant form arithmetic
JP3276444B2 (ja) 除算回路
JP3279462B2 (ja) ディジタル乗算器、ディジタルトランスバーサル型等化器及びディジタル積和演算回路
JPH04205026A (ja) 除算回路
JPH09325955A (ja) 二乗和の平方根演算回路
US7477171B2 (en) Binary-to-BCD conversion
WO1991018355A1 (en) Integrated interpolator and method of operation
US20080225937A1 (en) Method and system of providing a high speed tomlinson-harashima precoder
JPH0519170B2 (ja)
US6684236B1 (en) System of and method for efficiently performing computations through extended booth encoding of the operands thereto
US6549924B1 (en) Function generating interpolation method and apparatus
US7003538B2 (en) Process and apparatus for finite field multiplication (FFM)
JP3190826B2 (ja) 積和演算装置
JPH0635673A (ja) 乗算方法及び回路
JPH0793134A (ja) 乗算器
JP3456450B2 (ja) 固定小数点乗算器および方法
JP3264603B2 (ja) デジタル信号処理装置
JP2953918B2 (ja) 演算装置
JP3201097B2 (ja) 乗算器における乗算処方方法
JP2002244843A (ja) 逆数を計算するための方法および装置
JP3612950B2 (ja) 演算装置およびその方法
Lavanya et al. A novel VLSI architecture for convolution and deconvolution using higher radix algorithm
JPH0637592A (ja) ディジタルフィルタ設計法

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080222

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090222

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees