JPH04256017A - 乗算回路 - Google Patents
乗算回路Info
- Publication number
- JPH04256017A JPH04256017A JP1661891A JP1661891A JPH04256017A JP H04256017 A JPH04256017 A JP H04256017A JP 1661891 A JP1661891 A JP 1661891A JP 1661891 A JP1661891 A JP 1661891A JP H04256017 A JPH04256017 A JP H04256017A
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- input
- bits
- serially
- 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.)
- Granted
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、例えばシリアルに入力
されるデータに所定の係数を乗算して得られた結果をシ
リアルに出力する乗算回路に関する。
されるデータに所定の係数を乗算して得られた結果をシ
リアルに出力する乗算回路に関する。
【0002】
【従来の技術】例えば第1の語長の入力数(‥‥,Ii
+1 ,Ii ,‥‥)と第2の語長の係数との積を求
める乗算回路として、従来は図15に示すように夫々キ
ャリセイブアダー構造の加算器1A,1B,‥‥をその
入力数の語長の個数だけ重ねた構造の乗算回路が知られ
ている。例えば、加算器1Aの最小桁の和出力Si0は
そのままその積の一部となり、その最小桁より上の和出
力Si1〜Sin及び全ての桁上げ出力CAi0〜CA
inは夫々上段の加算器1Bに供給され、この加算器1
Bでは加算器1Aから供給されたデータに入力数のビッ
トIi+1 と係数との部分積を加算することにより、
その積の1桁上の値が求められる。しかしながら、図1
5の乗算回路では入力語長が長ければ長い程に加算器1
A,1B,‥‥の段数が増加して、動作速度が遅くなる
。
+1 ,Ii ,‥‥)と第2の語長の係数との積を求
める乗算回路として、従来は図15に示すように夫々キ
ャリセイブアダー構造の加算器1A,1B,‥‥をその
入力数の語長の個数だけ重ねた構造の乗算回路が知られ
ている。例えば、加算器1Aの最小桁の和出力Si0は
そのままその積の一部となり、その最小桁より上の和出
力Si1〜Sin及び全ての桁上げ出力CAi0〜CA
inは夫々上段の加算器1Bに供給され、この加算器1
Bでは加算器1Aから供給されたデータに入力数のビッ
トIi+1 と係数との部分積を加算することにより、
その積の1桁上の値が求められる。しかしながら、図1
5の乗算回路では入力語長が長ければ長い程に加算器1
A,1B,‥‥の段数が増加して、動作速度が遅くなる
。
【0003】これに対して、図16は動作速度を向上す
るため図15例をパイプライン化した乗算回路を示し、
この図16において、例えば加算器1A,1B,‥‥の
入出力部には夫々パイプライン用のレジスタ群3,4,
5,‥‥が接続されている。この構造により1回の乗算
時間は全加算器1個分程度の処理時間となり、動作速度
は極めて高速化される。ただし、パイプライン化したこ
とにより入力データの上位ビットほど入力を遅らせて前
段の加算器出力との同期をとる必要がある。
るため図15例をパイプライン化した乗算回路を示し、
この図16において、例えば加算器1A,1B,‥‥の
入出力部には夫々パイプライン用のレジスタ群3,4,
5,‥‥が接続されている。この構造により1回の乗算
時間は全加算器1個分程度の処理時間となり、動作速度
は極めて高速化される。ただし、パイプライン化したこ
とにより入力データの上位ビットほど入力を遅らせて前
段の加算器出力との同期をとる必要がある。
【0004】
【発明が解決しようとする課題】また、システムによっ
ては入力データが1個又は複数の信号ラインを介して時
分割的に伝送され、そのデータレートが全加算器の数個
分程度の処理時間と同等の場合がある。しかしながら、
図16の乗算回路において、入力データレートが例えば
全加算器3個分程度の処理時間と同等とすると、この乗
算回路では演算速度が必要な仕様の3倍になるため、処
理能力が充分に活かされないと共に回路構成に無駄があ
る不都合がある。即ち、演算速度をその入力データレー
トに応じて低くすれば、回路規模をより小型化できる見
込みがある。
ては入力データが1個又は複数の信号ラインを介して時
分割的に伝送され、そのデータレートが全加算器の数個
分程度の処理時間と同等の場合がある。しかしながら、
図16の乗算回路において、入力データレートが例えば
全加算器3個分程度の処理時間と同等とすると、この乗
算回路では演算速度が必要な仕様の3倍になるため、処
理能力が充分に活かされないと共に回路構成に無駄があ
る不都合がある。即ち、演算速度をその入力データレー
トに応じて低くすれば、回路規模をより小型化できる見
込みがある。
【0005】入力データを時分割的に伝送するシステム
の一例につき図17を参照して説明する。先ず図17A
の例は、1本の信号線で語長が3ビットのデータ列A,
B,C,‥‥を順次伝送するものである。即ち、3ビッ
トのデータを夫々A=(A2,A1,A0),B=(B
2,B1,B0),C=(C2,C1,C0),‥‥と
すると、その1本の信号線を1サイクルに1ビットずつ
の伝送速度でA0,A1,A2,B0,B1,B2,C
0,‥‥の順序でデータが伝送される。
の一例につき図17を参照して説明する。先ず図17A
の例は、1本の信号線で語長が3ビットのデータ列A,
B,C,‥‥を順次伝送するものである。即ち、3ビッ
トのデータを夫々A=(A2,A1,A0),B=(B
2,B1,B0),C=(C2,C1,C0),‥‥と
すると、その1本の信号線を1サイクルに1ビットずつ
の伝送速度でA0,A1,A2,B0,B1,B2,C
0,‥‥の順序でデータが伝送される。
【0006】また、図17Bの例は、語長6ビットのデ
ータ列A,B,C,‥‥を上位3ビットと下位3ビット
とに分けて2本の信号線で伝送するものである。即ち、
6ビットのデータを夫々A=(A5,A4,A3,A2
,A1,A0),B=(B5,B4,B3,B2,B1
,B0),C=(C5,C4,C3,C2,C1,C0
),‥‥とすると、その2本の内の第1の信号線を1サ
イクルに1ビットずつの伝送速度でA0,A1,A2,
B0,B1,B2,C0,‥‥の順序でデータが伝送さ
れ、第2の信号線をその第1の信号線に対して3サイク
ル遅れてA3,A4,A5,B3,B4,B5,C3,
‥‥の順序でデータが伝送される。
ータ列A,B,C,‥‥を上位3ビットと下位3ビット
とに分けて2本の信号線で伝送するものである。即ち、
6ビットのデータを夫々A=(A5,A4,A3,A2
,A1,A0),B=(B5,B4,B3,B2,B1
,B0),C=(C5,C4,C3,C2,C1,C0
),‥‥とすると、その2本の内の第1の信号線を1サ
イクルに1ビットずつの伝送速度でA0,A1,A2,
B0,B1,B2,C0,‥‥の順序でデータが伝送さ
れ、第2の信号線をその第1の信号線に対して3サイク
ル遅れてA3,A4,A5,B3,B4,B5,C3,
‥‥の順序でデータが伝送される。
【0007】同様に、図17Cの例は夫々が語長9ビッ
トのデータ列A,B,C,‥‥を上位3ビット、中位3
ビット及び下位3ビットに分けて3本の信号線で伝送す
るものである。例えば、データAを(A8,‥‥,A1
,A0)とすると、下位3ビット(A0,A1,A2)
が第1の信号線で伝送され、それから3サイクル遅れて
中位3ビット(A3,A4,A5)が第2の信号線で伝
送され、それから更に3サイクル遅れて上位3ビット(
A6,A7,A8)が第3の信号線で伝送される。 また、データBを(B8,‥‥,B1,B0)とすると
、データ(Aj,Aj+1,Aj+2)に続いて各信号
線でデータ(Bj,Bj+1,Bj+2)が伝送され、
それに続いてデータCの各ビットが伝送される。
トのデータ列A,B,C,‥‥を上位3ビット、中位3
ビット及び下位3ビットに分けて3本の信号線で伝送す
るものである。例えば、データAを(A8,‥‥,A1
,A0)とすると、下位3ビット(A0,A1,A2)
が第1の信号線で伝送され、それから3サイクル遅れて
中位3ビット(A3,A4,A5)が第2の信号線で伝
送され、それから更に3サイクル遅れて上位3ビット(
A6,A7,A8)が第3の信号線で伝送される。 また、データBを(B8,‥‥,B1,B0)とすると
、データ(Aj,Aj+1,Aj+2)に続いて各信号
線でデータ(Bj,Bj+1,Bj+2)が伝送され、
それに続いてデータCの各ビットが伝送される。
【0008】図17の伝送方式を一般化すると、nを3
の整数倍として、語長nのデータ列A,B,C,‥‥を
n/3本の信号線で時分割的に伝送することができる。 この場合のデータ列のデータ構造は次の数1のようにな
っている。ただし、An−1,Bn−1等が最大桁(M
SB)であり、A0,B0等が最小桁(LSB)である
。
の整数倍として、語長nのデータ列A,B,C,‥‥を
n/3本の信号線で時分割的に伝送することができる。 この場合のデータ列のデータ構造は次の数1のようにな
っている。ただし、An−1,Bn−1等が最大桁(M
SB)であり、A0,B0等が最小桁(LSB)である
。
【0009】
【数1】
A=(An−1,An−2,‥‥,A1,A0)B=(
Bn−1,Bn−2,‥‥,B1,B0)C=(Cn−
1,Cn−2,‥‥,C1,C0)‥‥‥‥‥‥
Bn−1,Bn−2,‥‥,B1,B0)C=(Cn−
1,Cn−2,‥‥,C1,C0)‥‥‥‥‥‥
【0010】また、数1のデータ列を図18に示すよう
に、2×n/6本の信号線を用いて時分割的に伝送する
こともできる。図18Aは、語長6ビットのデータ列A
,B,C,‥‥を2本の信号線を用いて伝送する場合を
示し、図18Bは、語長12ビットのデータ列A,B,
C,‥‥を4本の信号線で伝送する場合を示し、図18
Cは、語長18ビットのデータ列A,B,C,‥‥を6
本の信号線で伝送する場合を示す。この外にも例えばn
を4の整数倍として、語長nビットのデータ列をn/4
本の信号線で伝送するような方式等も考えることができ
る。
に、2×n/6本の信号線を用いて時分割的に伝送する
こともできる。図18Aは、語長6ビットのデータ列A
,B,C,‥‥を2本の信号線を用いて伝送する場合を
示し、図18Bは、語長12ビットのデータ列A,B,
C,‥‥を4本の信号線で伝送する場合を示し、図18
Cは、語長18ビットのデータ列A,B,C,‥‥を6
本の信号線で伝送する場合を示す。この外にも例えばn
を4の整数倍として、語長nビットのデータ列をn/4
本の信号線で伝送するような方式等も考えることができ
る。
【0011】本発明は斯かる点に鑑み、図17及び図1
8に示すように入力データが1本又は複数の信号線を用
いて時分割的に供給されるようなシステムにおいて、こ
のシステムのデータレートに応じた演算速度を有する回
路規模の小さな乗算回路を提供することを目的とする。
8に示すように入力データが1本又は複数の信号線を用
いて時分割的に供給されるようなシステムにおいて、こ
のシステムのデータレートに応じた演算速度を有する回
路規模の小さな乗算回路を提供することを目的とする。
【0012】
【課題を解決するための手段】本発明による乗算回路は
、例えば図1及び図2に示す如く、シリアルに入力され
る一方の数の各ビットのデータa0と予め設定されてい
る他方の数(Cj+2,Cj+1,Cj)との乗算結果
を順次桁上げ出力をフィードバックしながら累加算して
最小桁のデータq0をシリアルに出力する1段又は並列
接続された複数段の演算ユニット(6)と、この1段又
は複数段の演算ユニット(6)の最小桁を除く累加算結
果をシリアル変換するパラレル/シリアル変換回路(7
,8)と、このパラレル/シリアル変換回路(7,8)
よりシリアルに出力されるデータb0,b1を順次桁上
げ出力をフィードバックしながら累加算して最小桁のデ
ータq1をシリアルに出力する加算回路(9,10)と
を有するものである。
、例えば図1及び図2に示す如く、シリアルに入力され
る一方の数の各ビットのデータa0と予め設定されてい
る他方の数(Cj+2,Cj+1,Cj)との乗算結果
を順次桁上げ出力をフィードバックしながら累加算して
最小桁のデータq0をシリアルに出力する1段又は並列
接続された複数段の演算ユニット(6)と、この1段又
は複数段の演算ユニット(6)の最小桁を除く累加算結
果をシリアル変換するパラレル/シリアル変換回路(7
,8)と、このパラレル/シリアル変換回路(7,8)
よりシリアルに出力されるデータb0,b1を順次桁上
げ出力をフィードバックしながら累加算して最小桁のデ
ータq1をシリアルに出力する加算回路(9,10)と
を有するものである。
【0013】
【作用】斯かる本発明によれば、シリアルに入力される
一方の数の語長がmビット、予め設定されている他方の
数の語長がnビットであるとすると、その一方の数が1
ビット入力される毎にn個の部分積(a0・Cj等)が
発生すると共に、その部分積の桁は前のサイクルの部分
積よりも1桁高い。そこで、その演算ユニット(6)で
各部分積を1ビット下側にシフトしたデータを新たに得
られた部分積に順次加算することにより、全体の積の下
位ビット側が計算される。この場合、その演算ユニット
(6)は(n−1)ビットの数同士をパイプライン方式
で加算するだけでよいため、例えば(n−1)個の全加
算器で構成することができる。
一方の数の語長がmビット、予め設定されている他方の
数の語長がnビットであるとすると、その一方の数が1
ビット入力される毎にn個の部分積(a0・Cj等)が
発生すると共に、その部分積の桁は前のサイクルの部分
積よりも1桁高い。そこで、その演算ユニット(6)で
各部分積を1ビット下側にシフトしたデータを新たに得
られた部分積に順次加算することにより、全体の積の下
位ビット側が計算される。この場合、その演算ユニット
(6)は(n−1)ビットの数同士をパイプライン方式
で加算するだけでよいため、例えば(n−1)個の全加
算器で構成することができる。
【0014】また、そのシリアルに入力される一方の数
の入力が完了した後に全体の積の上位ビット側がその加
算回路(9,10)により順次計算されるが、この加算
回路は例えば1個の全加算器で構成することができ、全
体として例えばn個の全加算器で乗算回路を構成するこ
とができる。これに対して従来の図16の回路構成では
n×m個の全加算器が必要であり、本発明によれば時分
割されて伝送される入力データをそのままのデータレー
トで処理できると共に、回路規模を略1/m程度にする
ことができる。
の入力が完了した後に全体の積の上位ビット側がその加
算回路(9,10)により順次計算されるが、この加算
回路は例えば1個の全加算器で構成することができ、全
体として例えばn個の全加算器で乗算回路を構成するこ
とができる。これに対して従来の図16の回路構成では
n×m個の全加算器が必要であり、本発明によれば時分
割されて伝送される入力データをそのままのデータレー
トで処理できると共に、回路規模を略1/m程度にする
ことができる。
【0015】
【実施例】以下、本発明の第1実施例につき図1〜図6
を参照して説明しよう。この第1実施例は、順次シリア
ルに供給される語長3ビットの入力データと語長3ビッ
トの係数データとを乗算して語長6ビットの積を得て、
この積をその入力データに同期して順次シリアルに出力
するものであり、その入力データは図17Aに示す形式
で時分割されて供給されるものとする。
を参照して説明しよう。この第1実施例は、順次シリア
ルに供給される語長3ビットの入力データと語長3ビッ
トの係数データとを乗算して語長6ビットの積を得て、
この積をその入力データに同期して順次シリアルに出力
するものであり、その入力データは図17Aに示す形式
で時分割されて供給されるものとする。
【0016】図1は本例の乗算回路を示し、この図1に
おいて、6は基本ユニットであり、この基本ユニット6
の入力端子INに各3ビットの入力データa0をシリア
ルに順次供給し、この基本ユニット6の入力端子Q0,
R0,Q1及びR1に値が“0”のデータを供給する。 この基本ユニット6の出力端子OUよりその6ビットの
積の下位3ビットのデータq0がシリアルに出力される
と共に、出力端子U1,T1,U2及びT2より夫々中
間データd0,d1,d2及びd3が出力される。これ
ら中間データの内、データd0及びd2を3入力の第1
のパラレル/シリアル(P/S)変換器7の上位側の2
ビットの入力部に供給し、データd1及びd3を第2の
パラレル/シリアル(P/S)変換器8の上位側の2ビ
ットの入力部に供給し、それらP/S変換器7及び8の
最小桁の入力部に夫々“0”のデータを供給する。これ
らP/S変換器7及び8は、夫々入力部に供給されたデ
ータを上位ビット側からシリアルにデータb0及びb1
として出力する。
おいて、6は基本ユニットであり、この基本ユニット6
の入力端子INに各3ビットの入力データa0をシリア
ルに順次供給し、この基本ユニット6の入力端子Q0,
R0,Q1及びR1に値が“0”のデータを供給する。 この基本ユニット6の出力端子OUよりその6ビットの
積の下位3ビットのデータq0がシリアルに出力される
と共に、出力端子U1,T1,U2及びT2より夫々中
間データd0,d1,d2及びd3が出力される。これ
ら中間データの内、データd0及びd2を3入力の第1
のパラレル/シリアル(P/S)変換器7の上位側の2
ビットの入力部に供給し、データd1及びd3を第2の
パラレル/シリアル(P/S)変換器8の上位側の2ビ
ットの入力部に供給し、それらP/S変換器7及び8の
最小桁の入力部に夫々“0”のデータを供給する。これ
らP/S変換器7及び8は、夫々入力部に供給されたデ
ータを上位ビット側からシリアルにデータb0及びb1
として出力する。
【0017】9は全加算器(Full Adder)を
示し、この全加算器9の2個の入力端子にそれら2個の
データb0及びb1を供給し、この全加算器9の桁上げ
出力b2を1クロック遅延用のレジスタ10を介してこ
の全加算器9の残りの1個の入力端子にデータb3とし
て帰還する。この全加算器9の和出力端子Sよりその積
の上位3ビットのデータq1がシリアルに出力される。
示し、この全加算器9の2個の入力端子にそれら2個の
データb0及びb1を供給し、この全加算器9の桁上げ
出力b2を1クロック遅延用のレジスタ10を介してこ
の全加算器9の残りの1個の入力端子にデータb3とし
て帰還する。この全加算器9の和出力端子Sよりその積
の上位3ビットのデータq1がシリアルに出力される。
【0018】図2は図1で使用されている基本ユニット
6の構成例を示し、この図6において、Cj,Cj+1
及びCj+2は夫々本例の3ビットの係数データCの1
桁目,2桁目及び3桁目のビットに対応する。これら各
ビットデータは予め設定されているものであり、これら
各ビットデータCj,Cj+1及びCj+2を夫々アン
ドゲート11,12及び13の一方の入力端子に供給し
、これらアンドゲート11〜13の他方の入力端子に入
力端子INを共通に接続する。これらアンドゲート11
〜13より夫々入力データa0と係数データCの各ビッ
トとの積であるa0・Cj〜a0・Cj+2が出力され
る。
6の構成例を示し、この図6において、Cj,Cj+1
及びCj+2は夫々本例の3ビットの係数データCの1
桁目,2桁目及び3桁目のビットに対応する。これら各
ビットデータは予め設定されているものであり、これら
各ビットデータCj,Cj+1及びCj+2を夫々アン
ドゲート11,12及び13の一方の入力端子に供給し
、これらアンドゲート11〜13の他方の入力端子に入
力端子INを共通に接続する。これらアンドゲート11
〜13より夫々入力データa0と係数データCの各ビッ
トとの積であるa0・Cj〜a0・Cj+2が出力され
る。
【0019】14〜17は夫々2入力のデータセレクタ
を示し、アンドゲート11及びデータセレクタ14,1
5の出力端子を夫々一方の全加算器18の3個の入力端
子に接続し、データセレクタ14及び15の一方の入力
端子に夫々入力端子Q0及びR0を接続し、アンドゲー
ト12及びデータセレクタ16,17の出力端子を夫々
他方の全加算器19の3個の入力端子に接続し、データ
セレクタ16及び17の一方の入力端子に入力端子Q1
及びR1を接続する。また、一方の全加算器18の桁上
げ出力c0をレジスタ20Aを介して中間データd0と
して出力端子U1及びデータセレクタ14の他方の入力
端子に供給し、この全加算器18の和出力を出力端子O
Uに供給し、他方の全加算器19の和出力c1をレジス
タ20Bを介して中間データd1として出力端子T1及
びデータセレクタ15の他方の入力端子に供給する。そ
して、この全加算器19の桁上げ出力c2をレジスタ2
0Cを介して中間データd2として出力端子U2及びデ
ータセレクタ16の他方の入力端子に供給し、アンドゲ
ート13の出力データc3をレジスタ20Dを介して中
間データd3として出力端子T2及びデータセレクタ1
7の他方の入力端子に供給する。
を示し、アンドゲート11及びデータセレクタ14,1
5の出力端子を夫々一方の全加算器18の3個の入力端
子に接続し、データセレクタ14及び15の一方の入力
端子に夫々入力端子Q0及びR0を接続し、アンドゲー
ト12及びデータセレクタ16,17の出力端子を夫々
他方の全加算器19の3個の入力端子に接続し、データ
セレクタ16及び17の一方の入力端子に入力端子Q1
及びR1を接続する。また、一方の全加算器18の桁上
げ出力c0をレジスタ20Aを介して中間データd0と
して出力端子U1及びデータセレクタ14の他方の入力
端子に供給し、この全加算器18の和出力を出力端子O
Uに供給し、他方の全加算器19の和出力c1をレジス
タ20Bを介して中間データd1として出力端子T1及
びデータセレクタ15の他方の入力端子に供給する。そ
して、この全加算器19の桁上げ出力c2をレジスタ2
0Cを介して中間データd2として出力端子U2及びデ
ータセレクタ16の他方の入力端子に供給し、アンドゲ
ート13の出力データc3をレジスタ20Dを介して中
間データd3として出力端子T2及びデータセレクタ1
7の他方の入力端子に供給する。
【0020】入力データa0として3ビットの入力デー
タI(=(I2,I1,I0))を供給し、3ビットの
係数Cとして係数(C2,C1,C0)を設定した場合
の本例の乗算回路における計算過程につき説明するに、
その乗算で得られる積Oは次のような6ビットの数とな
る。
タI(=(I2,I1,I0))を供給し、3ビットの
係数Cとして係数(C2,C1,C0)を設定した場合
の本例の乗算回路における計算過程につき説明するに、
その乗算で得られる積Oは次のような6ビットの数とな
る。
【0021】
【数2】
O=C×I=(O5,O4,O3,O2,O1,O0)
その入力データIと係数Cとの乗算は図3のように3個
の部分積の和で表すことができる。また、本例では、図
4Aに示すように入力データa0として3ビットの入力
データIがシリアルに供給され、図4Bに示すように下
位3ビットの出力データq0として積Oの下位3ビット
がシリアルに出力され、それに続いて図4Cに示すよう
に上位3ビットの出力データq1として積Oの上位3ビ
ットがシリアルに出力される。本例では図3の計算を図
5A〜Fに示す計算に分解して実行するが、先ず、図3
の計算が図5A〜Fに示す計算と等価であることを示す
。
その入力データIと係数Cとの乗算は図3のように3個
の部分積の和で表すことができる。また、本例では、図
4Aに示すように入力データa0として3ビットの入力
データIがシリアルに供給され、図4Bに示すように下
位3ビットの出力データq0として積Oの下位3ビット
がシリアルに出力され、それに続いて図4Cに示すよう
に上位3ビットの出力データq1として積Oの上位3ビ
ットがシリアルに出力される。本例では図3の計算を図
5A〜Fに示す計算に分解して実行するが、先ず、図3
の計算が図5A〜Fに示す計算と等価であることを示す
。
【0022】即ち、図5Aの計算は図3の最初の部分積
(C2・I0,C1・I0,C0・I0)に単に(0,
0)と(0,0)とを加算したものである。この場合に
は値は変化しないが、形式的に3ビット目及び2ビット
目への桁上げの対を(Z2,X1)とする。また、桁上
げを除いた和の最小桁が積Oの最小桁(LSB)である
O0であるため、その和を(C2・I0,Y1,O0)
と置くことができる。このように加算結果を桁上げと和
とに分離して表現することを冗長な表現という。そして
、その冗長な表現の上位2ビットを、図5Bに示すよう
に図3の中間の部分積(C2・I1,C1・I1,C0
・I1)に加算して、この加算結果も桁上げ(Z3,X
2)と和(C2・I1,Y2,O1)とで冗長に表現す
る。この和のLSBは積Oの2ビット目のデータに等し
い。
(C2・I0,C1・I0,C0・I0)に単に(0,
0)と(0,0)とを加算したものである。この場合に
は値は変化しないが、形式的に3ビット目及び2ビット
目への桁上げの対を(Z2,X1)とする。また、桁上
げを除いた和の最小桁が積Oの最小桁(LSB)である
O0であるため、その和を(C2・I0,Y1,O0)
と置くことができる。このように加算結果を桁上げと和
とに分離して表現することを冗長な表現という。そして
、その冗長な表現の上位2ビットを、図5Bに示すよう
に図3の中間の部分積(C2・I1,C1・I1,C0
・I1)に加算して、この加算結果も桁上げ(Z3,X
2)と和(C2・I1,Y2,O1)とで冗長に表現す
る。この和のLSBは積Oの2ビット目のデータに等し
い。
【0023】また、この冗長な表現の上位2ビットを、
図5Cに示すように図3の最後の部分積(C2・I2,
C1・I2,C0・I2)に加算して、この加算結果も
桁上げ(Z4,X3)と和(C2・I2,Y3,O2)
とで冗長に表現する。この和のLSBが積Oの3ビット
目であるが、積Oの上位3ビットが冗長に表現されてい
るため、この冗長な表現を通常の表現に戻す必要がある
。そこで、図5Cの桁上げのLSBであるX3と和の2
ビット目であるY3とを抜きだして、図5Dに示すよう
に“0”に加算して、2ビットの和(W4,O3)を得
る。更に、この2ビットの和の2ビット目であるW4と
図5CのデータC2・I2及びZ4とを、図5Eに示す
ように加算して2ビットの和(W5,O4)を得た後に
、この和の2ビット目であるW5に形式的に図5Fに示
すように2個の“0”を加算することにより和(0,O
5)を得る。最後の和の2ビット目の“0”はダミービ
ットである。図5D〜Fで得られた和のLSBが夫々積
Oの4ビット目〜6ビット目である。
図5Cに示すように図3の最後の部分積(C2・I2,
C1・I2,C0・I2)に加算して、この加算結果も
桁上げ(Z4,X3)と和(C2・I2,Y3,O2)
とで冗長に表現する。この和のLSBが積Oの3ビット
目であるが、積Oの上位3ビットが冗長に表現されてい
るため、この冗長な表現を通常の表現に戻す必要がある
。そこで、図5Cの桁上げのLSBであるX3と和の2
ビット目であるY3とを抜きだして、図5Dに示すよう
に“0”に加算して、2ビットの和(W4,O3)を得
る。更に、この2ビットの和の2ビット目であるW4と
図5CのデータC2・I2及びZ4とを、図5Eに示す
ように加算して2ビットの和(W5,O4)を得た後に
、この和の2ビット目であるW5に形式的に図5Fに示
すように2個の“0”を加算することにより和(0,O
5)を得る。最後の和の2ビット目の“0”はダミービ
ットである。図5D〜Fで得られた和のLSBが夫々積
Oの4ビット目〜6ビット目である。
【0024】図6を参照して図1及び図2の乗算回路が
図5に示す計算を実行する動作について説明するに、図
2の係数Cj,Cj+1,Cj+2として夫々C0,C
1,C2を設定する。先ず1サイクル目に入力データa
0(図6A)としてデータI0が基本ユニット6に供給
され、アンドゲート11,12,13より夫々C0・I
0,C1・I0,C2・I0が出力される。2入力のデ
ータセレクタ14〜17には夫々外部からコントロール
信号を与えて入力端子Q0〜R1側を選択するようにす
る。入力端子Q0〜R1には夫々“0”が供給されてい
るので、全加算器18及び19では図5Aの加算が実行
され、図6B〜Fに示すように基本ユニット6の出力デ
ータq0,全加算器18の桁上げ出力c0,全加算器1
9の和出力c1,全加算器19の桁上げ出力c2及びア
ンドゲート13の出力c3は夫々O0,X1,Y1,Z
2,C2・I0になる。
図5に示す計算を実行する動作について説明するに、図
2の係数Cj,Cj+1,Cj+2として夫々C0,C
1,C2を設定する。先ず1サイクル目に入力データa
0(図6A)としてデータI0が基本ユニット6に供給
され、アンドゲート11,12,13より夫々C0・I
0,C1・I0,C2・I0が出力される。2入力のデ
ータセレクタ14〜17には夫々外部からコントロール
信号を与えて入力端子Q0〜R1側を選択するようにす
る。入力端子Q0〜R1には夫々“0”が供給されてい
るので、全加算器18及び19では図5Aの加算が実行
され、図6B〜Fに示すように基本ユニット6の出力デ
ータq0,全加算器18の桁上げ出力c0,全加算器1
9の和出力c1,全加算器19の桁上げ出力c2及びア
ンドゲート13の出力c3は夫々O0,X1,Y1,Z
2,C2・I0になる。
【0025】2サイクル目には、出力c0〜c3が夫々
レジスタ20A〜20Dに保持されて出力d0〜d3と
なり、入力データa0としてデータI1が基本ユニット
6に供給され、アンドゲート11,12,13より夫々
C0・I1,C1・I1,C2・I1が出力される。こ
れ以後のサイクルでは2入力のデータセレクタ14〜1
7には夫々外部からコントロール信号を与えてレジスタ
20A〜20Dの出力を選択するようにする。これによ
り全加算器18及び19では図5Bの加算が実行され、
出力データq0として積Oの2ビット目であるO1が出
力され、出力c0〜c3は夫々X2,Y2,Z3,C2
・I1になる。同様に3サイクル目には、出力データq
0として積Oの3ビット目であるO2が出力され、出力
c0〜c3は夫々X3,Y3,Z4,C2・I2になる
。
レジスタ20A〜20Dに保持されて出力d0〜d3と
なり、入力データa0としてデータI1が基本ユニット
6に供給され、アンドゲート11,12,13より夫々
C0・I1,C1・I1,C2・I1が出力される。こ
れ以後のサイクルでは2入力のデータセレクタ14〜1
7には夫々外部からコントロール信号を与えてレジスタ
20A〜20Dの出力を選択するようにする。これによ
り全加算器18及び19では図5Bの加算が実行され、
出力データq0として積Oの2ビット目であるO1が出
力され、出力c0〜c3は夫々X2,Y2,Z3,C2
・I1になる。同様に3サイクル目には、出力データq
0として積Oの3ビット目であるO2が出力され、出力
c0〜c3は夫々X3,Y3,Z4,C2・I2になる
。
【0026】4サイクル目には、P/S変換器7及び8
の入力部の上位2ビットにレジスタ20A〜20Dを介
してX3,Y3,Z4,C2・I2が供給され、P/S
変換器7及び8の入力部のLSBに“0”が供給される
(図6G〜I及び図6K〜M参照)。従って、P/S変
換器7からの出力データb0は図6Jに示すように、4
サイクル目,5サイクル目及び6サイクル目に夫々X3
,Z4及び“0”となり、P/S変換器8からの出力デ
ータb1は図6Nに示すように、4サイクル目,5サイ
クル目及び6サイクル目に夫々Y3,C2・I2及び“
0”となる。そして、その4サイクル目には出力データ
b0及びb1が夫々X3及びY3になると共に、レジス
タ10の保持値は“0”であるため、全加算器9では図
5Dの計算が実行され、全加算器9の和出力q1として
積Oの4ビット目のデータO3が得られる。
の入力部の上位2ビットにレジスタ20A〜20Dを介
してX3,Y3,Z4,C2・I2が供給され、P/S
変換器7及び8の入力部のLSBに“0”が供給される
(図6G〜I及び図6K〜M参照)。従って、P/S変
換器7からの出力データb0は図6Jに示すように、4
サイクル目,5サイクル目及び6サイクル目に夫々X3
,Z4及び“0”となり、P/S変換器8からの出力デ
ータb1は図6Nに示すように、4サイクル目,5サイ
クル目及び6サイクル目に夫々Y3,C2・I2及び“
0”となる。そして、その4サイクル目には出力データ
b0及びb1が夫々X3及びY3になると共に、レジス
タ10の保持値は“0”であるため、全加算器9では図
5Dの計算が実行され、全加算器9の和出力q1として
積Oの4ビット目のデータO3が得られる。
【0027】同様に、全加算器9においては5サイクル
目及び6サイクル目に夫々図5E及びFに示す計算が実
行され、出力b1,b3,q1,b2は図6N〜Qに示
すように変化する。なお、6サイクル目には全加算器9
において、(W5+0+0)が実行されるが、この計算
では桁上げは発生しないので、桁上げ出力b2は乗算が
終了した時点で常に“0”にリセットされている。従っ
て、次の乗算の4サイクル目ではレジスタ10に常に“
0”が保持されることになる。
目及び6サイクル目に夫々図5E及びFに示す計算が実
行され、出力b1,b3,q1,b2は図6N〜Qに示
すように変化する。なお、6サイクル目には全加算器9
において、(W5+0+0)が実行されるが、この計算
では桁上げは発生しないので、桁上げ出力b2は乗算が
終了した時点で常に“0”にリセットされている。従っ
て、次の乗算の4サイクル目ではレジスタ10に常に“
0”が保持されることになる。
【0028】本例の乗算回路の動作で注目すべき点は、
基本ユニット6は1〜3サクル目でのみ使用され、全加
算器9は4〜6サイクル目でのみ使用されていることで
ある。これにより、図17Aに示すように連続的に入力
されて来る語長3ビットの入力データに次々と語長3ビ
ットの係数Cを乗算し、この乗算結果である6ビットの
積Oを2本の信号ラインを介して連続的に出力すること
ができる。
基本ユニット6は1〜3サクル目でのみ使用され、全加
算器9は4〜6サイクル目でのみ使用されていることで
ある。これにより、図17Aに示すように連続的に入力
されて来る語長3ビットの入力データに次々と語長3ビ
ットの係数Cを乗算し、この乗算結果である6ビットの
積Oを2本の信号ラインを介して連続的に出力すること
ができる。
【0029】次に、本発明の第2実施例につき図7〜図
10を参照して説明する。この第2実施例は、順次2本
の入力ラインを介してシリアルに供給される語長6ビッ
トの入力データI(I5,I4,‥‥,I0)と語長3
ビットの係数データC(C2,C1,C0)とを乗算し
て語長9ビットの積O(O8,O7,‥‥,O0)を得
て、この積をその入力データに同期して3本の出力ライ
ンを介して順次シリアルに出力するものであり、その入
力データは図17Bに示す形式で2本の信号ラインを介
して時分割されて供給されるものとする。また、図7に
おいて図1と対応する部分には同一符号を付してその詳
細説明を省略する。
10を参照して説明する。この第2実施例は、順次2本
の入力ラインを介してシリアルに供給される語長6ビッ
トの入力データI(I5,I4,‥‥,I0)と語長3
ビットの係数データC(C2,C1,C0)とを乗算し
て語長9ビットの積O(O8,O7,‥‥,O0)を得
て、この積をその入力データに同期して3本の出力ライ
ンを介して順次シリアルに出力するものであり、その入
力データは図17Bに示す形式で2本の信号ラインを介
して時分割されて供給されるものとする。また、図7に
おいて図1と対応する部分には同一符号を付してその詳
細説明を省略する。
【0030】図7は本例の乗算回路を示し、この図7に
おいて、6A及び6Bは夫々図1の基本ユニット6と同
一構成の基本ユニットである。そして、基本ユニット6
A及び6Bの入力端子INに夫々入力データa0及びa
1を供給し、第1の基本ユニット6Aの入力端子Q0,
R0,Q1,R1に“0”のデータを供給し、この基本
ユニット6Aの出力端子U1,T1,U2,T2を夫々
第2の基本ユニット6Bの入力端子Q0,R0,Q1,
R1に接続し、この基本ユニット6Bの出力端子U1及
びU2を第1のP/S変換器7の上位2ビットの入力端
子に接続し、この基本ユニット6Bの出力端子T1及び
T2を第2のP/S変換器8の上位2ビットの入力端子
に接続する。他の構成は図1と同じである。
おいて、6A及び6Bは夫々図1の基本ユニット6と同
一構成の基本ユニットである。そして、基本ユニット6
A及び6Bの入力端子INに夫々入力データa0及びa
1を供給し、第1の基本ユニット6Aの入力端子Q0,
R0,Q1,R1に“0”のデータを供給し、この基本
ユニット6Aの出力端子U1,T1,U2,T2を夫々
第2の基本ユニット6Bの入力端子Q0,R0,Q1,
R1に接続し、この基本ユニット6Bの出力端子U1及
びU2を第1のP/S変換器7の上位2ビットの入力端
子に接続し、この基本ユニット6Bの出力端子T1及び
T2を第2のP/S変換器8の上位2ビットの入力端子
に接続する。他の構成は図1と同じである。
【0031】図8A〜Eに示すように、本例では最初の
3サイクルにデータa0として入力データIの下位3ビ
ット(I0,I1,I2)が供給され、それに続く3サ
イクルにデータa1として入力データIの上位3ビット
(I3,I4,I5)が供給され、最初の3サイクルに
基本ユニット6Aの出力端子OUよりデータq0として
積Oの下位3ビット(O0,O1,O2)が出力され、
それに続く3サイクルに基本ユニット6Bの出力端子O
Uよりデータq1として積Oの中位3ビット(O3,O
4,O5)が出力され、それに続く3サイクルに全加算
器9の和出力端子Sよりデータq2として積Oの上位3
ビット(O6,O7,O8)が出力される。この積Oは
、図9に示すように、入力データIと係数Cとを乗算す
ることにより求められるものである。
3サイクルにデータa0として入力データIの下位3ビ
ット(I0,I1,I2)が供給され、それに続く3サ
イクルにデータa1として入力データIの上位3ビット
(I3,I4,I5)が供給され、最初の3サイクルに
基本ユニット6Aの出力端子OUよりデータq0として
積Oの下位3ビット(O0,O1,O2)が出力され、
それに続く3サイクルに基本ユニット6Bの出力端子O
Uよりデータq1として積Oの中位3ビット(O3,O
4,O5)が出力され、それに続く3サイクルに全加算
器9の和出力端子Sよりデータq2として積Oの上位3
ビット(O6,O7,O8)が出力される。この積Oは
、図9に示すように、入力データIと係数Cとを乗算す
ることにより求められるものである。
【0032】本例でも、図9の演算が図10A〜Iに示
す部分積の加算に分解されて実行される。この場合、図
10A〜Fまでの加算結果は和と桁上げとにより冗長に
表現され、その和のLSBが夫々その積OのビットO0
〜O5になり、図10G〜Iに示す演算により積Oのビ
ットO6〜O8が求められる。具体的に、1サイクル目
〜3サイクル目までは第1の基本ユニット6Aにおいて
図10A等に示す加算が実行され、4サイクル目には基
本ユニット6Aの出力端子U1,T1,U2,T2を介
して基本ユニット6Bに中間データX3,Y3,Z4,
C2・I2が供給される。この中間データを初期値とし
て4サイクル目〜6サイクル目までは基本ユニット6B
において図10F等に示す加算が実行される。そして、
6サイクル目の終わりには基本ユニット6Bの出力端子
U1,T1,U2,T2より夫々図10Fの計算結果で
あるX6,Y6,Z7,C2・I5が出力されるので、
それに続く7サイクル目〜9サイクル目において、全加
算器9は図10G〜Iの加算を実行する。
す部分積の加算に分解されて実行される。この場合、図
10A〜Fまでの加算結果は和と桁上げとにより冗長に
表現され、その和のLSBが夫々その積OのビットO0
〜O5になり、図10G〜Iに示す演算により積Oのビ
ットO6〜O8が求められる。具体的に、1サイクル目
〜3サイクル目までは第1の基本ユニット6Aにおいて
図10A等に示す加算が実行され、4サイクル目には基
本ユニット6Aの出力端子U1,T1,U2,T2を介
して基本ユニット6Bに中間データX3,Y3,Z4,
C2・I2が供給される。この中間データを初期値とし
て4サイクル目〜6サイクル目までは基本ユニット6B
において図10F等に示す加算が実行される。そして、
6サイクル目の終わりには基本ユニット6Bの出力端子
U1,T1,U2,T2より夫々図10Fの計算結果で
あるX6,Y6,Z7,C2・I5が出力されるので、
それに続く7サイクル目〜9サイクル目において、全加
算器9は図10G〜Iの加算を実行する。
【0033】次に、本発明の第3実施例につき図11〜
図13を参照して説明する。この第3実施例は、図12
Aに示すようにシリアルにデータa0として供給される
語長3ビットの入力データI(I2,I1,I0)と語
長6ビットの係数データC(C5,C4,‥‥,C0)
とを乗算して語長9ビットの積O(O8,O7,‥‥,
O0)を得て、図12B〜Dに示すように、この積をそ
の入力データに同期して3本の出力ラインを介してデー
タq0〜q2として順次シリアルに出力するものである
。また、図11において図7と対応する部分には同一符
号を付してその詳細説明を省略する。
図13を参照して説明する。この第3実施例は、図12
Aに示すようにシリアルにデータa0として供給される
語長3ビットの入力データI(I2,I1,I0)と語
長6ビットの係数データC(C5,C4,‥‥,C0)
とを乗算して語長9ビットの積O(O8,O7,‥‥,
O0)を得て、図12B〜Dに示すように、この積をそ
の入力データに同期して3本の出力ラインを介してデー
タq0〜q2として順次シリアルに出力するものである
。また、図11において図7と対応する部分には同一符
号を付してその詳細説明を省略する。
【0034】図11は本例の乗算回路を示し、この図1
1において、22は2入力のデータセレクタであり、第
1の基本ユニット6Aの入力端子INとそのデータセレ
クタ22の一方の入力端子とを3個のレジスタ21A〜
21Cを介して接続し、そのデータセレクタ22の出力
端子を第2の基本ユニット6Bの入力端子に接続する。
1において、22は2入力のデータセレクタであり、第
1の基本ユニット6Aの入力端子INとそのデータセレ
クタ22の一方の入力端子とを3個のレジスタ21A〜
21Cを介して接続し、そのデータセレクタ22の出力
端子を第2の基本ユニット6Bの入力端子に接続する。
【0035】そして、その第1の基本ユニット6Aの入
力端子IN及び先頭のレジスタ21Aに共通に入力デー
タa0を供給し、データセレクタ22の他方の入力端子
に入力データa1を供給する。他の構成は図7と同様で
ある。この場合、データセレクタ22で入力データa1
を選択すると、図11の乗算回路は図7の乗算回路と同
じ動作を実行する。以下ではデータセレクタ22でレジ
スタ21Cの出力を選択する場合の動作につき説明する
。
力端子IN及び先頭のレジスタ21Aに共通に入力デー
タa0を供給し、データセレクタ22の他方の入力端子
に入力データa1を供給する。他の構成は図7と同様で
ある。この場合、データセレクタ22で入力データa1
を選択すると、図11の乗算回路は図7の乗算回路と同
じ動作を実行する。以下ではデータセレクタ22でレジ
スタ21Cの出力を選択する場合の動作につき説明する
。
【0036】3ビットの入力データIと6ビットの係数
Cとの乗算は、図13に示すように3個の部分積N1〜
N3の加算で表すことができるが、本例ではその3個の
部分積の加算を更に6個の部分積の加算で表す。即ち、
図13に示すように、最初の6ビットの部分積N1を3
ビットの小部分積N5とN6とに分け、同様に他の6ビ
ットの部分積N2及びN3も夫々2個の3ビットの小部
分積に分け、(0,0)と(0,0)とよりなるデータ
N4を初期値としてこれら6個の小部分積を桁の小さい
順序で加算する。この図13の下段の演算は図9の演算
と同じであるため、この図13の演算は実質的に図7の
乗算回路で実行することができる。
Cとの乗算は、図13に示すように3個の部分積N1〜
N3の加算で表すことができるが、本例ではその3個の
部分積の加算を更に6個の部分積の加算で表す。即ち、
図13に示すように、最初の6ビットの部分積N1を3
ビットの小部分積N5とN6とに分け、同様に他の6ビ
ットの部分積N2及びN3も夫々2個の3ビットの小部
分積に分け、(0,0)と(0,0)とよりなるデータ
N4を初期値としてこれら6個の小部分積を桁の小さい
順序で加算する。この図13の下段の演算は図9の演算
と同じであるため、この図13の演算は実質的に図7の
乗算回路で実行することができる。
【0037】ただし、図13の演算では入力データIi
は3サイクル遅れて繰り返して使用されているので、図
11の乗算回路では入力データa0をレジスタ21A〜
21Cを介して3サイクル遅らせてなるデータを第2の
基本ユニット6Bに供給するようにしている。また、図
11の乗算回路では、第1の基本ユニット6Aの内部の
係数Cj,Cj+1,Cj+2として夫々C0,C1,
C2が設定され、第2の基本ユニット6Bの内部の係数
Cj,Cj+1,Cj+2として夫々C3,C4,C5
が設定される。
は3サイクル遅れて繰り返して使用されているので、図
11の乗算回路では入力データa0をレジスタ21A〜
21Cを介して3サイクル遅らせてなるデータを第2の
基本ユニット6Bに供給するようにしている。また、図
11の乗算回路では、第1の基本ユニット6Aの内部の
係数Cj,Cj+1,Cj+2として夫々C0,C1,
C2が設定され、第2の基本ユニット6Bの内部の係数
Cj,Cj+1,Cj+2として夫々C3,C4,C5
が設定される。
【0038】また、入力データIの語長が6ビットで係
数データCの語長が6ビットである場合には、その係数
データを上位3ビットと下位3ビットとに分けて、6ビ
ット×6ビットの演算を6ビット×上位3ビットの小演
算と6ビット×下位3ビットの小演算とに分解する。そ
して、これら2個の小演算を夫々図7の乗算回路で実行
して、夫々の演算結果を加算するようにすればよい。
数データCの語長が6ビットである場合には、その係数
データを上位3ビットと下位3ビットとに分けて、6ビ
ット×6ビットの演算を6ビット×上位3ビットの小演
算と6ビット×下位3ビットの小演算とに分解する。そ
して、これら2個の小演算を夫々図7の乗算回路で実行
して、夫々の演算結果を加算するようにすればよい。
【0039】上述の実施例は入力データが図17の形式
で伝送されるシステムに本発明を適用したものであるが
、入力データが図18の形式で伝送されるシステムに本
発明を適用した場合には、図14に示す基本ユニットを
使用する。この図14において、入力端子IN1及びI
N2には夫々入力データの偶数ビット及び奇数ビットの
データをシリアルに供給し、第1の入端子IN1をアン
ドゲート23〜26の一方の入力端子に共通に接続し、
これらアンドゲート23〜26の他方の入力端子に夫々
係数データCj〜Cj+3を供給する。また、2入力の
データセレクタ27〜32の一方の入力端子に夫々入力
端子Q0,R0,Q1,R1,Q2,R2を接続し、デ
ータセレクタ27,28及びアンドゲート23の出力を
全加算器33の入力部に供給し、データセレクタ29,
30及びアンドゲート24の出力を全加算器34の入力
部に供給し、データセレクタ31,32及びアンドゲー
ト25の出力を全加算器35の入力部に供給する。
で伝送されるシステムに本発明を適用したものであるが
、入力データが図18の形式で伝送されるシステムに本
発明を適用した場合には、図14に示す基本ユニットを
使用する。この図14において、入力端子IN1及びI
N2には夫々入力データの偶数ビット及び奇数ビットの
データをシリアルに供給し、第1の入端子IN1をアン
ドゲート23〜26の一方の入力端子に共通に接続し、
これらアンドゲート23〜26の他方の入力端子に夫々
係数データCj〜Cj+3を供給する。また、2入力の
データセレクタ27〜32の一方の入力端子に夫々入力
端子Q0,R0,Q1,R1,Q2,R2を接続し、デ
ータセレクタ27,28及びアンドゲート23の出力を
全加算器33の入力部に供給し、データセレクタ29,
30及びアンドゲート24の出力を全加算器34の入力
部に供給し、データセレクタ31,32及びアンドゲー
ト25の出力を全加算器35の入力部に供給する。
【0040】また、第2の入力端子IN2をアンドゲー
ト36〜39の一方の入力端子に共通に接続し、これら
アンドゲート36〜39の他方の入力端子に夫々係数デ
ータCj〜Cj+3を供給する。そして、全加算器33
の桁上げ出力,全加算器34の和出力及びアンドゲート
36の出力を全加算器40の入力部に供給し、全加算器
34の桁上げ出力,全加算器35の和出力及びアンドゲ
ート37の出力を全加算器41の入力部に供給し、全加
算器35の桁上げ出力,アンドゲート26の出力及びア
ンドゲート38の出力を全加算器42の入力部に供給し
、全加算器33及び40の和出力を夫々第1の出力端子
OU1及び第2の出力端子OU2に供給する。また、全
加算器40の桁上げ出力,全加算器41の和出力及び桁
上げ出力,全加算器42の和出力及び桁上げ出力並びに
アンドゲート39の出力を夫々レジスタ43A〜43F
を介して出力端子U2,T2,U3,T3,U4及びT
4に供給し、これら出力端子U2〜T4を夫々データセ
レクタ27〜32の他方の入力端子にも接続する。
ト36〜39の一方の入力端子に共通に接続し、これら
アンドゲート36〜39の他方の入力端子に夫々係数デ
ータCj〜Cj+3を供給する。そして、全加算器33
の桁上げ出力,全加算器34の和出力及びアンドゲート
36の出力を全加算器40の入力部に供給し、全加算器
34の桁上げ出力,全加算器35の和出力及びアンドゲ
ート37の出力を全加算器41の入力部に供給し、全加
算器35の桁上げ出力,アンドゲート26の出力及びア
ンドゲート38の出力を全加算器42の入力部に供給し
、全加算器33及び40の和出力を夫々第1の出力端子
OU1及び第2の出力端子OU2に供給する。また、全
加算器40の桁上げ出力,全加算器41の和出力及び桁
上げ出力,全加算器42の和出力及び桁上げ出力並びに
アンドゲート39の出力を夫々レジスタ43A〜43F
を介して出力端子U2,T2,U3,T3,U4及びT
4に供給し、これら出力端子U2〜T4を夫々データセ
レクタ27〜32の他方の入力端子にも接続する。
【0041】この図14の基本ユニットも初段では入力
端子Q0〜R2に夫々“0”のデータを供給し、2段目
以降では入力端子Q0〜R2に夫々前段の基本ユニット
の出力端子U2〜T4を接続するようにする。この図1
4の基本ユニットは、加算器2段毎にパイプライン化し
た乗算回路を時分割多重したものである。また、図14
の乗算回路を一般化すると、k段の加算器毎にパイプラ
イン化した乗算回路を時分割多重した回路を使用するこ
とにより、ln/k本の信号線を使用して語長nビット
のデータが伝送されて来るシステム用の乗算回路も容易
に構成することができる。
端子Q0〜R2に夫々“0”のデータを供給し、2段目
以降では入力端子Q0〜R2に夫々前段の基本ユニット
の出力端子U2〜T4を接続するようにする。この図1
4の基本ユニットは、加算器2段毎にパイプライン化し
た乗算回路を時分割多重したものである。また、図14
の乗算回路を一般化すると、k段の加算器毎にパイプラ
イン化した乗算回路を時分割多重した回路を使用するこ
とにより、ln/k本の信号線を使用して語長nビット
のデータが伝送されて来るシステム用の乗算回路も容易
に構成することができる。
【0042】このように、本発明は上述実施例に限定さ
れず本発明の要旨を逸脱しない範囲で種々の構成を取り
得ることは勿論である。
れず本発明の要旨を逸脱しない範囲で種々の構成を取り
得ることは勿論である。
【0043】
【発明の効果】本発明によれば、予め演算ユニット内に
設定されている他方の数のビット数を調整することによ
り、演算速度をそのシステムに合う最適の速度に設定で
きると共に、演算ユニットを繰り返して使用するように
しているので、回路規模を小さくすることができる利益
がある。
設定されている他方の数のビット数を調整することによ
り、演算速度をそのシステムに合う最適の速度に設定で
きると共に、演算ユニットを繰り返して使用するように
しているので、回路規模を小さくすることができる利益
がある。
【図1】本発明による乗算回路の第1実施例を示す構成
図である。
図である。
【図2】第1実施例中の基本ユニットを示す構成図であ
る。
る。
【図3】第1実施例の3ビット×3ビットの乗算の一例
を示す線図である。
を示す線図である。
【図4】第1実施例の入出力データの一例を示すタイミ
ングチャート図である。
ングチャート図である。
【図5】図3の計算を分解した計算の流れを示す線図で
ある。
ある。
【図6】図5の計算を実行するときの第1実施例の動作
の説明に供するタイミングチャート図である。
の説明に供するタイミングチャート図である。
【図7】本発明による乗算回路の第2実施例を示す構成
図である。
図である。
【図8】第2実施例の入出力データの一例を示すタイミ
ングチャート図である。
ングチャート図である。
【図9】第2実施例の6ビット×3ビットの乗算の一例
を示す線図である。
を示す線図である。
【図10】図9の乗算を分解した計算の流れを示す線図
である。
である。
【図11】本発明による乗算回路の第3実施例を示す構
成図である。
成図である。
【図12】第3実施例の入出力データの一例を示す線図
である。
である。
【図13】第3実施例の3ビット×6ビットの乗算の一
例を示す線図である。
例を示す線図である。
【図14】基本ユニットの他の例を示す構成図である。
【図15】従来の乗算回路の一例の要部を示す構成図で
ある。
ある。
【図16】従来の乗算回路の他の例の要部を示す構成図
である。
である。
【図17】信号を時分割的に伝送するシステムの一例を
示すタイミングチャート図である。
示すタイミングチャート図である。
【図18】信号を時分割的に伝送するシステムの他の例
を示すタイミングチャート図である。
を示すタイミングチャート図である。
6 基本ユニット
7,8 パラレル/シリアル変換器
9 全加算器
10 レジスタ
11〜13 アンドゲート
18,19 全加算器
20A〜20D レジスタ
a0 入力データ
q0,q1 出力データ
Claims (1)
- 【請求項1】 シリアルに入力される一方の数の各ビ
ットのデータと予め設定されている他方の数との乗算結
果を順次桁上げ出力をフィードバックしながら累加算し
て最小桁のデータをシリアルに出力する1段又は並列接
続された複数段の演算ユニットと、該1段又は複数段の
演算ユニットの最小桁を除く累加算結果をシリアル変換
するパラレル/シリアル変換回路と、該パラレル/シリ
アル変換回路よりシリアルに出力されるデータを順次桁
上げ出力をフィードバックしながら累加算して最小桁の
データをシリアルに出力する加算回路とを有する乗算回
路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP01661891A JP3237122B2 (ja) | 1991-02-07 | 1991-02-07 | 乗算回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP01661891A JP3237122B2 (ja) | 1991-02-07 | 1991-02-07 | 乗算回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04256017A true JPH04256017A (ja) | 1992-09-10 |
| JP3237122B2 JP3237122B2 (ja) | 2001-12-10 |
Family
ID=11921326
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP01661891A Expired - Fee Related JP3237122B2 (ja) | 1991-02-07 | 1991-02-07 | 乗算回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3237122B2 (ja) |
-
1991
- 1991-02-07 JP JP01661891A patent/JP3237122B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP3237122B2 (ja) | 2001-12-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4994997A (en) | Pipeline-type serial multiplier circuit | |
| JPS6131658B2 (ja) | ||
| EP0152702B1 (en) | Arithmetic circuit of finite field | |
| US9928035B2 (en) | Multiply-and-accumulate unit in carry-save adder format and application in a feedback loop equalizer | |
| US5185714A (en) | Arithmetic operation processing apparatus | |
| KR100354285B1 (ko) | 패스트 하다마드 변환 디바이스 | |
| EP0281132A2 (en) | Vector calculation circuit capable of rapidly carrying out vector calculation of three input vectors | |
| JPH10307706A (ja) | 半及び全加算器を用いたウォレスツリー乗算器 | |
| US4142242A (en) | Multiplier accumulator | |
| JPH0795667B2 (ja) | トランスバーサルフィルタ | |
| US5262975A (en) | Serial input multiplier apparatus | |
| US5189635A (en) | Digital data processing circuit | |
| JPH0330877B2 (ja) | ||
| JP3237122B2 (ja) | 乗算回路 | |
| US5150321A (en) | Apparatus for performing serial binary multiplication | |
| JPS58162120A (ja) | トランスバ−サルフイルタ | |
| JP2864597B2 (ja) | ディジタル演算回路 | |
| JPH04257025A (ja) | シリアル入力の乗算回路 | |
| JPH04257026A (ja) | シリアル入出力の乗算回路 | |
| WO2000034853A1 (en) | A serial-parallel binary multiplier | |
| JPS63163927A (ja) | 乗算回路 | |
| JP2026516144A (ja) | 複数命令複数データ処理ユニット | |
| JP3851024B2 (ja) | 乗算器 | |
| JPH05299973A (ja) | デシメーションフィルタ | |
| Makarenko et al. | A VLSI multiprecision matrix multiplier and polynomial evaluator |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |