JPH05158659A - 乗算器 - Google Patents
乗算器Info
- Publication number
- JPH05158659A JPH05158659A JP3323205A JP32320591A JPH05158659A JP H05158659 A JPH05158659 A JP H05158659A JP 3323205 A JP3323205 A JP 3323205A JP 32320591 A JP32320591 A JP 32320591A JP H05158659 A JPH05158659 A JP H05158659A
- Authority
- JP
- Japan
- Prior art keywords
- register
- circuit
- output
- multiplication
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/49—Computations with a radix, other than binary, 8, 16 or decimal, e.g. ternary, negative or imaginary radices, mixed radix non-linear PCM
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (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)
- Nonlinear Science (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】
【目的】 2値信号又は3値以上の4値信号などの多値
信号に対して共用でき、かつ高速で乗算を安定して行う
ことができる乗算器を提供する。 【構成】 記憶されているデ−タをシフトして複数のデ
−タを出力するレジスタ変換回路RCと、レジスタ変換
回路RCに接続されておりレジスタ変換回路RCからの
出力を乗算する乗算回路14と、乗算回路14に接続されて
おり乗算回路14から出力された乗算結果を特定の方法に
基づいて加算する加算回路15と、加算回路15に接続され
ており加算回路15からの出力をシフトして送るAND回
路素子17と、加算回路15に接続されておりAND回路素
子17に基づいてシフトされた加算回路15からの出力を記
憶するWレジスタ16と、Wレジスタ16に接続されており
Wレジスタ16からの出力をシフトして送るAND回路素
子18と、AND回路素子18に接続されておりAND回路
素子18からの出力を更にシフトするAND回路素子20
と、AND回路素子18に接続されておりシフトされたW
レジスタ16からの出力を記憶するW´レジスタ19とを備
えている。
信号に対して共用でき、かつ高速で乗算を安定して行う
ことができる乗算器を提供する。 【構成】 記憶されているデ−タをシフトして複数のデ
−タを出力するレジスタ変換回路RCと、レジスタ変換
回路RCに接続されておりレジスタ変換回路RCからの
出力を乗算する乗算回路14と、乗算回路14に接続されて
おり乗算回路14から出力された乗算結果を特定の方法に
基づいて加算する加算回路15と、加算回路15に接続され
ており加算回路15からの出力をシフトして送るAND回
路素子17と、加算回路15に接続されておりAND回路素
子17に基づいてシフトされた加算回路15からの出力を記
憶するWレジスタ16と、Wレジスタ16に接続されており
Wレジスタ16からの出力をシフトして送るAND回路素
子18と、AND回路素子18に接続されておりAND回路
素子18からの出力を更にシフトするAND回路素子20
と、AND回路素子18に接続されておりシフトされたW
レジスタ16からの出力を記憶するW´レジスタ19とを備
えている。
Description
【0001】
【産業上の利用分野】本発明は、画像処理や通信の信号
処理及びレ−ザプリンタのフォント加工等に用いること
ができる乗算器に関する。
処理及びレ−ザプリンタのフォント加工等に用いること
ができる乗算器に関する。
【0002】
【従来の技術】一般に、乗算器は計算機の算術論理演算
器の1種類であり、乗算を専用に行う回路をいう。ここ
で、乗算とは被乗数と乗数の一部分(1または複数ビッ
ト)の積として得られる部分積の形成及びこれら形成さ
れた部分積の加算を称する。
器の1種類であり、乗算を専用に行う回路をいう。ここ
で、乗算とは被乗数と乗数の一部分(1または複数ビッ
ト)の積として得られる部分積の形成及びこれら形成さ
れた部分積の加算を称する。
【0003】乗算は、最近の計算機では標準機能として
組み込まれており、演算性能を向上させるために種々の
方法によって高速化が実現されている。
組み込まれており、演算性能を向上させるために種々の
方法によって高速化が実現されている。
【0004】上記高速化の方法としては、部分積の生成
機構の数を減少させかつ個々の機構を単純な構成にした
ブ−スの方法や、部分積の加算を可能な限り並列化して
加算時間を縮小したウォリスのトリ−による方法が知ら
れている。
機構の数を減少させかつ個々の機構を単純な構成にした
ブ−スの方法や、部分積の加算を可能な限り並列化して
加算時間を縮小したウォリスのトリ−による方法が知ら
れている。
【0005】更に、超大規模集積回路(VLSI)に適
用される方法として、基本回路を規則的2次元アレイ状
に配列して構成した方法があり、この方法を利用した乗
算器としてはアレイ乗算器が知られている。
用される方法として、基本回路を規則的2次元アレイ状
に配列して構成した方法があり、この方法を利用した乗
算器としてはアレイ乗算器が知られている。
【0006】
【発明が解決しようとする課題】しかしながら、上述し
た従来の乗算方法では、理論的に時間的余裕度を作り出
して、高速で乗算を安定して行うことができないという
問題点があった。
た従来の乗算方法では、理論的に時間的余裕度を作り出
して、高速で乗算を安定して行うことができないという
問題点があった。
【0007】また、従来の直列型や並列型の乗算方法で
は、2値信号及び4値信号に対して共用でき、かつ高速
化で乗算を行うことができないという問題点があった。
は、2値信号及び4値信号に対して共用でき、かつ高速
化で乗算を行うことができないという問題点があった。
【0008】本発明は、上述した従来の乗算方法におけ
る問題点に鑑み、2値信号及び4値信号に対して共用で
き、かつ高速で乗算を安定して行うことができる乗算器
を提供する。
る問題点に鑑み、2値信号及び4値信号に対して共用で
き、かつ高速で乗算を安定して行うことができる乗算器
を提供する。
【0009】
【課題を解決するための手段】本発明は、記憶されてい
るデ−タをシフトして複数のデ−タを出力するレジスタ
変換手段と、レジスタ変換手段に接続されておりレジス
タ変換手段からの出力を乗算する乗算手段と、乗算手段
に接続されており乗算手段から出力された乗算結果を特
定の方法に基づいて加算する加算手段と、加算手段に接
続されており加算手段からの出力をシフトして送る第1
シフト手段と、加算手段に接続されておりシフト手段に
基づいてシフトされた加算手段からの出力を記憶する第
1レジスタと、第1レジスタに接続されており第1レジ
スタからの出力をシフトして送る第2シフト手段と、第
2シフト手段に接続されており第2シフト手段からの出
力を更にシフトする第3シフト手段と、第2シフト手段
に接続されておりシフトされた第1レジスタからの出力
を記憶する第2レジスタとを備えている乗算器によって
達成される。
るデ−タをシフトして複数のデ−タを出力するレジスタ
変換手段と、レジスタ変換手段に接続されておりレジス
タ変換手段からの出力を乗算する乗算手段と、乗算手段
に接続されており乗算手段から出力された乗算結果を特
定の方法に基づいて加算する加算手段と、加算手段に接
続されており加算手段からの出力をシフトして送る第1
シフト手段と、加算手段に接続されておりシフト手段に
基づいてシフトされた加算手段からの出力を記憶する第
1レジスタと、第1レジスタに接続されており第1レジ
スタからの出力をシフトして送る第2シフト手段と、第
2シフト手段に接続されており第2シフト手段からの出
力を更にシフトする第3シフト手段と、第2シフト手段
に接続されておりシフトされた第1レジスタからの出力
を記憶する第2レジスタとを備えている乗算器によって
達成される。
【0010】また、本発明は、記憶されているデ−タを
シフトしてシフトされたデ−タを出力するレジスタ変換
手段と、第1デ−タを所定の方法に基づいて出力する複
数の第1デ−タ出力手段と、レジスタ変換手段及び第1
デ−タ出力手段に接続されておりレジスタ変換手段から
の出力及び第1デ−タ出力手段からの出力を乗算する複
数の乗算手段と、第2デ−タを所定の方法に基づいて出
力する複数の第2デ−タ出力手段と、乗算手段に接続さ
れており乗算手段からの出力、第2デ−タ出力手段から
の出力、並びに特定の入力を加算して隣接して配置され
た他の第2デ−タ出力手段に出力する複数の加算手段と
を備えており、複数の加算手段のうち最端に配置された
加算手段は、乗算手段からの出力及び特定の入力を加算
して隣接して配置された第2デ−タ出力手段に出力する
乗算器によっても達成される。
シフトしてシフトされたデ−タを出力するレジスタ変換
手段と、第1デ−タを所定の方法に基づいて出力する複
数の第1デ−タ出力手段と、レジスタ変換手段及び第1
デ−タ出力手段に接続されておりレジスタ変換手段から
の出力及び第1デ−タ出力手段からの出力を乗算する複
数の乗算手段と、第2デ−タを所定の方法に基づいて出
力する複数の第2デ−タ出力手段と、乗算手段に接続さ
れており乗算手段からの出力、第2デ−タ出力手段から
の出力、並びに特定の入力を加算して隣接して配置され
た他の第2デ−タ出力手段に出力する複数の加算手段と
を備えており、複数の加算手段のうち最端に配置された
加算手段は、乗算手段からの出力及び特定の入力を加算
して隣接して配置された第2デ−タ出力手段に出力する
乗算器によっても達成される。
【0011】記憶されているデ−タが、2値信号又は3
値以上の4値信号などの多値信号であってもよい。
値以上の4値信号などの多値信号であってもよい。
【0012】
【作用】第1発明の乗算器では、レジスタ変換手段は記
憶されているデ−タをシフトして複数のデ−タを出力
し、乗算手段はレジスタ変換手段に接続されておりレジ
スタ変換手段からの出力を乗算し、加算手段は乗算手段
に接続されており乗算手段から出力された乗算結果を特
定の方法に基づいて加算し、第1シフト手段は加算手段
に接続されており加算手段からの出力をシフトして送
り、第1レジスタは加算手段に接続されておりシフト手
段に基づいてシフトされた加算手段からの出力を記憶
し、第2シフト手段は第1レジスタに接続されており第
1レジスタからの出力をシフトして送り、第3シフト手
段は第2シフト手段に接続されており第2シフト手段か
らの出力を更にシフトし、第2レジスタは第2シフト手
段に接続されておりシフトされた第1レジスタからの出
力を記憶する。
憶されているデ−タをシフトして複数のデ−タを出力
し、乗算手段はレジスタ変換手段に接続されておりレジ
スタ変換手段からの出力を乗算し、加算手段は乗算手段
に接続されており乗算手段から出力された乗算結果を特
定の方法に基づいて加算し、第1シフト手段は加算手段
に接続されており加算手段からの出力をシフトして送
り、第1レジスタは加算手段に接続されておりシフト手
段に基づいてシフトされた加算手段からの出力を記憶
し、第2シフト手段は第1レジスタに接続されており第
1レジスタからの出力をシフトして送り、第3シフト手
段は第2シフト手段に接続されており第2シフト手段か
らの出力を更にシフトし、第2レジスタは第2シフト手
段に接続されておりシフトされた第1レジスタからの出
力を記憶する。
【0013】第2発明の乗算器では、レジスタ変換手段
は記憶されているデ−タをシフトしてシフトされたデ−
タを出力し、複数の第1デ−タ出力手段は第1デ−タを
所定の方法に基づいて出力し、複数の乗算手段はレジス
タ変換手段及び第1デ−タ出力手段に接続されておりレ
ジスタ変換手段からの出力及び第1デ−タ出力手段から
の出力を乗算し、複数の第2デ−タ出力手段は第2デ−
タを所定の方法に基づいて出力し、複数の加算手段は乗
算手段に接続されており乗算手段からの出力、第2デ−
タ出力手段からの出力、並びに特定の入力を加算して隣
接して配置された他の第2デ−タ出力手段に出力し、複
数の加算手段のうち最端に配置された加算手段は、乗算
手段からの出力及び特定の入力を加算して隣接して配置
された第2デ−タ出力手段に出力する。
は記憶されているデ−タをシフトしてシフトされたデ−
タを出力し、複数の第1デ−タ出力手段は第1デ−タを
所定の方法に基づいて出力し、複数の乗算手段はレジス
タ変換手段及び第1デ−タ出力手段に接続されておりレ
ジスタ変換手段からの出力及び第1デ−タ出力手段から
の出力を乗算し、複数の第2デ−タ出力手段は第2デ−
タを所定の方法に基づいて出力し、複数の加算手段は乗
算手段に接続されており乗算手段からの出力、第2デ−
タ出力手段からの出力、並びに特定の入力を加算して隣
接して配置された他の第2デ−タ出力手段に出力し、複
数の加算手段のうち最端に配置された加算手段は、乗算
手段からの出力及び特定の入力を加算して隣接して配置
された第2デ−タ出力手段に出力する。
【0014】
【実施例】以下、図面を参照して本発明の乗算器の実施
例を詳述する。
例を詳述する。
【0015】図1は、本発明の乗算器の第1実施例であ
る2ビット並列直列型乗算器(以下、乗算器と称する)
の構成を示すブロック図である。
る2ビット並列直列型乗算器(以下、乗算器と称する)
の構成を示すブロック図である。
【0016】図1の乗算器は、Xレジスタ11、Yレジス
タ12、Yレジスタ12に接続されたAND回路素子13を含
むレジスタ手段であるレジスタ回路RC、Xレジスタ11
及びYレジスタ12に接続された乗算手段である乗算回路
14、乗算回路14に接続された加算手段である加算回路1
5、加算回路15に接続された第1レジスタであるWレジ
スタ16、Wレジスタ16に接続された第1シフト手段であ
るAND回路素子17、Wレジスタ16に接続された第2シ
フト手段であるAND回路素子18、AND回路素子18に
接続された第2レジスタであるW´レジスタ19、W´レ
ジスタ19に接続された第3シフト手段であるAND回路
素子20によって構成されている。
タ12、Yレジスタ12に接続されたAND回路素子13を含
むレジスタ手段であるレジスタ回路RC、Xレジスタ11
及びYレジスタ12に接続された乗算手段である乗算回路
14、乗算回路14に接続された加算手段である加算回路1
5、加算回路15に接続された第1レジスタであるWレジ
スタ16、Wレジスタ16に接続された第1シフト手段であ
るAND回路素子17、Wレジスタ16に接続された第2シ
フト手段であるAND回路素子18、AND回路素子18に
接続された第2レジスタであるW´レジスタ19、W´レ
ジスタ19に接続された第3シフト手段であるAND回路
素子20によって構成されている。
【0017】次に、図1の乗算器の動作を説明する。
【0018】図1の構成では、2ビット並列に乗算と加
算が時間t2i-1(i=1,2,3……,n)毎に行なわ
れるので、時間t2iにおいては、時間的余裕度φを作り
出すことができる。即ち、2φに1回だけ乗算と加算を
実行すればよい。
算が時間t2i-1(i=1,2,3……,n)毎に行なわ
れるので、時間t2iにおいては、時間的余裕度φを作り
出すことができる。即ち、2φに1回だけ乗算と加算を
実行すればよい。
【0019】直列型乗算を高速で実行するとき、乗算時
間が変ることなく安定な乗算が可能になる。Yレジスタ
12の各ビットは、Xレジスタ11の内容と乗算される間、
常に保持されており、乗算回路14によってXレジスタ11
の内容とYレジスタ12の内容が乗算された結果は、加算
回路15を介してWレジスタ16に入力される。
間が変ることなく安定な乗算が可能になる。Yレジスタ
12の各ビットは、Xレジスタ11の内容と乗算される間、
常に保持されており、乗算回路14によってXレジスタ11
の内容とYレジスタ12の内容が乗算された結果は、加算
回路15を介してWレジスタ16に入力される。
【0020】2ビット並列で行なわれる乗算と加算が終
了する毎に、Yレジスタ12は、AND回路素子13に入力
される右シフト命令によって2ビット右シフトされて、
同時にWレジスタ16は、AND回路素子17に入力される
右シフト命令により、また、W´レジスタ19はAND回
路素子20に入力される右シフト命令によってそれぞれ1
ビットシフトされる。
了する毎に、Yレジスタ12は、AND回路素子13に入力
される右シフト命令によって2ビット右シフトされて、
同時にWレジスタ16は、AND回路素子17に入力される
右シフト命令により、また、W´レジスタ19はAND回
路素子20に入力される右シフト命令によってそれぞれ1
ビットシフトされる。
【0021】上述のした動作が、n回行なわれて、Xレ
ジスタ11の内容とYレジスタ12の内容とが乗算された結
果は、Wレジスタ16とW´レジスタ19に格納されて、一
連の乗算が完了する。
ジスタ11の内容とYレジスタ12の内容とが乗算された結
果は、Wレジスタ16とW´レジスタ19に格納されて、一
連の乗算が完了する。
【0022】図2は、本発明の乗算器の第2実施例であ
る完全2ビット並列直列型乗算器(以下、乗算器と称す
る)の構成を示すブロック図である。
る完全2ビット並列直列型乗算器(以下、乗算器と称す
る)の構成を示すブロック図である。
【0023】図2の乗算器は、図1の乗算器とレジスタ
回路の構成が異なり、他の構成は基本的に同じである。
回路の構成が異なり、他の構成は基本的に同じである。
【0024】図2の乗算器は、Xレジスタ21、Xレジス
タ21に接続されたAND回路素子22,23、AND回路素
子22に接続されたOR回路素子24、AND回路素子23に
接続されたOR回路素子25、OR回路素子24に接続され
たAND回路素子26、OR回路素子25に接続されたAN
D回路素子27、OR回路素子24に接続されたXOレジス
タ28、OR回路素子25に接続されたXEレジスタ29、Y
レジスタ30、Yレジスタ30に接続されたAND回路素子
31,32、AND回路素子31に接続されたOR回路素子3
3、AND回路素子32に接続されたOR回路素子34、O
R回路素子33に接続されたAND回路素子35、OR回路
素子34に接続されたAND回路素子36、OR回路素子33
に接続されたYOレジスタ37、OR回路素子34に接続さ
れたYEレジスタ38、上記XOレジスタ28、XEレジス
タ29、YOレジスタ37、及びYEレジスタ38に接続され
た乗算回路39、乗算回路39に接続された加算回路40、加
算回路40に接続されたWレジスタ41、Wレジスタ41に接
続されたAND回路素子42,43、AND回路素子43に接
続されたW´レジスタ44、W´レジスタ44に接続された
AND回路素子45によって構成されている。
タ21に接続されたAND回路素子22,23、AND回路素
子22に接続されたOR回路素子24、AND回路素子23に
接続されたOR回路素子25、OR回路素子24に接続され
たAND回路素子26、OR回路素子25に接続されたAN
D回路素子27、OR回路素子24に接続されたXOレジス
タ28、OR回路素子25に接続されたXEレジスタ29、Y
レジスタ30、Yレジスタ30に接続されたAND回路素子
31,32、AND回路素子31に接続されたOR回路素子3
3、AND回路素子32に接続されたOR回路素子34、O
R回路素子33に接続されたAND回路素子35、OR回路
素子34に接続されたAND回路素子36、OR回路素子33
に接続されたYOレジスタ37、OR回路素子34に接続さ
れたYEレジスタ38、上記XOレジスタ28、XEレジス
タ29、YOレジスタ37、及びYEレジスタ38に接続され
た乗算回路39、乗算回路39に接続された加算回路40、加
算回路40に接続されたWレジスタ41、Wレジスタ41に接
続されたAND回路素子42,43、AND回路素子43に接
続されたW´レジスタ44、W´レジスタ44に接続された
AND回路素子45によって構成されている。
【0025】次に、図2の乗算器の動作を説明する。
【0026】2nビットからなるXレジスタ21は、奇数
ビット、偶数ビットのnビットからなる2つのレジス
タ、即ち、XOレジスタ28、XEレジスタ29に分離され
る。また、Yレジスタ30も同様に奇数ビット、偶数ビッ
トのnビットからなる2つのレジスタ、即ち、YOレジ
スタ37、YEレジスタ38に分離される。
ビット、偶数ビットのnビットからなる2つのレジス
タ、即ち、XOレジスタ28、XEレジスタ29に分離され
る。また、Yレジスタ30も同様に奇数ビット、偶数ビッ
トのnビットからなる2つのレジスタ、即ち、YOレジ
スタ37、YEレジスタ38に分離される。
【0027】そして、XOレジスタ28、XEレジスタ29
のシリアル出力X1 、X2 、及びYOレジスタ37、YE
レジスタ38のシリアル出力Y1 ,Y2 は、乗算回路39に
入力される。
のシリアル出力X1 、X2 、及びYOレジスタ37、YE
レジスタ38のシリアル出力Y1 ,Y2 は、乗算回路39に
入力される。
【0028】YOレジスタ37、YEレジスタ38の各ビッ
トは、XOレジスタ28、XEレジスタ29の内容と乗算さ
れる間、常に保持されており、レジスタ28、XEレジス
タ29の内容とYOレジスタ37、YEレジスタ38の内容と
が乗算された結果は、Wレジスタ41に入力される。完全
2ビット並列で行なわれる乗算と加算が終了する毎に、
YOレジスタ37、YEレジスタ38は、右シフト命令によ
って1ビット右シフトされて、同時にWレジスタ41、W
´レジスタ44もAND回路素子42,45にそれぞれ入力さ
れる右シフト命令によって1ビットシフトされる。
トは、XOレジスタ28、XEレジスタ29の内容と乗算さ
れる間、常に保持されており、レジスタ28、XEレジス
タ29の内容とYOレジスタ37、YEレジスタ38の内容と
が乗算された結果は、Wレジスタ41に入力される。完全
2ビット並列で行なわれる乗算と加算が終了する毎に、
YOレジスタ37、YEレジスタ38は、右シフト命令によ
って1ビット右シフトされて、同時にWレジスタ41、W
´レジスタ44もAND回路素子42,45にそれぞれ入力さ
れる右シフト命令によって1ビットシフトされる。
【0029】このようなことがn回行なわれて、Xレジ
スタ21の内容とYレジスタ30の内容とが乗算された結果
は、Wレジスタ41とW´レジスタ44に格納されて、一連
の乗算が完了する。
スタ21の内容とYレジスタ30の内容とが乗算された結果
は、Wレジスタ41とW´レジスタ44に格納されて、一連
の乗算が完了する。
【0030】図2の乗算器は、図1の乗算器と同じよう
な直列型乗算器であるが、図1の乗算器の1語長は2n
ビットなので乗算に要する時間が掛かるのに対して、図
2の乗算器では、1語長はnビットにできるので乗算に
要する時間が1/2 に短縮できる。
な直列型乗算器であるが、図1の乗算器の1語長は2n
ビットなので乗算に要する時間が掛かるのに対して、図
2の乗算器では、1語長はnビットにできるので乗算に
要する時間が1/2 に短縮できる。
【0031】図3は、本発明の乗算器の第3実施例であ
る2ビット単位全ビット並列型乗算器(以下、乗算器と
称する)の構成を示すブロック図である。
る2ビット単位全ビット並列型乗算器(以下、乗算器と
称する)の構成を示すブロック図である。
【0032】図3の乗算器は、Yレジスタ46、Yレジス
タ46に接続されたAND回路素子47,48、AND回路素
子47に接続されたOR回路素子49、AND回路素子48に
接続されたOR回路素子50、OR回路素子49に接続され
たAND回路素子51、OR回路素子50に接続されたAN
D回路素子52、OR回路素子49に接続されたYOレジス
タ51、OR回路素子50に接続されたYEレジスタ52を含
むレジスタ変換手段であるレジスタ回路RC、第1デ−
タであるX1 〜X2nを所定の方法に基づいて出力する複
数の第1デ−タ出力手段であるX1 ビット回路X1 〜X
2nビット回路X2n、レジスタ回路RC及びX1 ビット回
路X1 〜X2nビット回路X2nに接続されておりレジスタ
回路RCからの出力及びX1 ビット回路X1 〜X2nビッ
ト回路X2nからの出力を乗算する複数の乗算手段である
乗算回路M1 〜Mn 、第2デ−タであるW1 〜W2nを所
定の方法に基づいて出力する複数の第2デ−タ出力手段
であるW1 ビット回路W1 〜W2nビット回路W2n、乗算
回路M1 〜Mn に接続されており乗算回路M1 〜Mn か
らの出力、W3 ビット回路W3 〜W2nビット回路W2nか
らの出力、並びに特定の入力であるC´1 〜C´n-1 を
加算して隣接して配置された他の第2デ−タ出力手段で
あるW1 ビット回路W1 〜W2nビット回路W2nに出力す
る複数の加算手段である加算回路A1 〜An によって構
成されている。
タ46に接続されたAND回路素子47,48、AND回路素
子47に接続されたOR回路素子49、AND回路素子48に
接続されたOR回路素子50、OR回路素子49に接続され
たAND回路素子51、OR回路素子50に接続されたAN
D回路素子52、OR回路素子49に接続されたYOレジス
タ51、OR回路素子50に接続されたYEレジスタ52を含
むレジスタ変換手段であるレジスタ回路RC、第1デ−
タであるX1 〜X2nを所定の方法に基づいて出力する複
数の第1デ−タ出力手段であるX1 ビット回路X1 〜X
2nビット回路X2n、レジスタ回路RC及びX1 ビット回
路X1 〜X2nビット回路X2nに接続されておりレジスタ
回路RCからの出力及びX1 ビット回路X1 〜X2nビッ
ト回路X2nからの出力を乗算する複数の乗算手段である
乗算回路M1 〜Mn 、第2デ−タであるW1 〜W2nを所
定の方法に基づいて出力する複数の第2デ−タ出力手段
であるW1 ビット回路W1 〜W2nビット回路W2n、乗算
回路M1 〜Mn に接続されており乗算回路M1 〜Mn か
らの出力、W3 ビット回路W3 〜W2nビット回路W2nか
らの出力、並びに特定の入力であるC´1 〜C´n-1 を
加算して隣接して配置された他の第2デ−タ出力手段で
あるW1 ビット回路W1 〜W2nビット回路W2nに出力す
る複数の加算手段である加算回路A1 〜An によって構
成されている。
【0033】次に、上記各構成部分を説明する。
【0034】Yレジスタ46、Yレジスタ46に接続された
AND回路素子47,48、AND回路素子47に接続された
OR回路素子49、AND回路素子48に接続されたOR回
路素子50、OR回路素子49に接続されたAND回路素子
51、OR回路素子50に接続されたAND回路素子52、O
R回路素子49に接続されたYOレジスタ51、OR回路素
子50に接続されたYEレジスタ52、X1 ビット回路
X1 、X2 ビット回路X2 、YOレジスタ51及びYEレ
ジスタ52に接続された乗算回路M1 、X3 ビット回路X
3 、X4 ビット回路X4 、YOレジスタ51、YEレジス
タ52、及び乗算回路M1 に接続された乗算回路M2 、X
5 ビット回路X5 、X6 ビット回路X6 、YOレジスタ
51、YEレジスタ52、及び乗算回路M2 に接続された乗
算回路M3 、..、X2i-1ビット回路X2i-1、X2iビッ
ト回路X2i、YOレジスタ51、YEレジスタ52、及び乗
算回路Mi-1 に接続された乗算回路Mi 、..、X2n-3
ビット回路X2n-3、X2n-2ビット回路X2n-2、YOレジ
スタ51、YEレジスタ52、及び乗算回路Mn-2 に接続さ
れた乗算回路Mn-1 、X2n-1ビット回路X2n-1、X2nビ
ット回路X2n、YOレジスタ51、YEレジスタ52、及び
乗算回路Mn-1 に接続された乗算回路Mn 、W1 ビット
回路W1 、W2 ビット回路W2 、W3 ビット回路W3 、
W4 ビット回路W4 、及び乗算回路M1 に接続された加
算回路A1 、W3 ビット回路W3 、W4 ビット回路
W4 、W5 ビット回路W5 、W6 ビット回路W6 、及び
乗算回路M2 に接続された加算回路A2 、W5 ビット回
路W5 、W6 ビット回路W6 、W7 ビット回路W7 、W
8 ビット回路W8 、及び乗算回路M3 に接続された加算
回路A3 、..、W2iビット回路W2i、W2i-1ビット回
路W2i-1、W2i+2ビット回路W2i+2、W2i+1ビット回路
W2i+1、及び乗算回路Mi に接続された加算回路
Ai 、..、W2n-2ビット回路W2n-2、W2n-3ビット回
路W2n-3、W2nビット回路W2n、W2n-1ビット回路W
2n-1、及び乗算回路Mn-1 に接続された加算回路
An-1 、W2nビット回路W2n、W2n-1ビット回路
W2n-1、及び乗算回路Mn に接続された加算回路An に
よって構成されている。
AND回路素子47,48、AND回路素子47に接続された
OR回路素子49、AND回路素子48に接続されたOR回
路素子50、OR回路素子49に接続されたAND回路素子
51、OR回路素子50に接続されたAND回路素子52、O
R回路素子49に接続されたYOレジスタ51、OR回路素
子50に接続されたYEレジスタ52、X1 ビット回路
X1 、X2 ビット回路X2 、YOレジスタ51及びYEレ
ジスタ52に接続された乗算回路M1 、X3 ビット回路X
3 、X4 ビット回路X4 、YOレジスタ51、YEレジス
タ52、及び乗算回路M1 に接続された乗算回路M2 、X
5 ビット回路X5 、X6 ビット回路X6 、YOレジスタ
51、YEレジスタ52、及び乗算回路M2 に接続された乗
算回路M3 、..、X2i-1ビット回路X2i-1、X2iビッ
ト回路X2i、YOレジスタ51、YEレジスタ52、及び乗
算回路Mi-1 に接続された乗算回路Mi 、..、X2n-3
ビット回路X2n-3、X2n-2ビット回路X2n-2、YOレジ
スタ51、YEレジスタ52、及び乗算回路Mn-2 に接続さ
れた乗算回路Mn-1 、X2n-1ビット回路X2n-1、X2nビ
ット回路X2n、YOレジスタ51、YEレジスタ52、及び
乗算回路Mn-1 に接続された乗算回路Mn 、W1 ビット
回路W1 、W2 ビット回路W2 、W3 ビット回路W3 、
W4 ビット回路W4 、及び乗算回路M1 に接続された加
算回路A1 、W3 ビット回路W3 、W4 ビット回路
W4 、W5 ビット回路W5 、W6 ビット回路W6 、及び
乗算回路M2 に接続された加算回路A2 、W5 ビット回
路W5 、W6 ビット回路W6 、W7 ビット回路W7 、W
8 ビット回路W8 、及び乗算回路M3 に接続された加算
回路A3 、..、W2iビット回路W2i、W2i-1ビット回
路W2i-1、W2i+2ビット回路W2i+2、W2i+1ビット回路
W2i+1、及び乗算回路Mi に接続された加算回路
Ai 、..、W2n-2ビット回路W2n-2、W2n-3ビット回
路W2n-3、W2nビット回路W2n、W2n-1ビット回路W
2n-1、及び乗算回路Mn-1 に接続された加算回路
An-1 、W2nビット回路W2n、W2n-1ビット回路
W2n-1、及び乗算回路Mn に接続された加算回路An に
よって構成されている。
【0035】上述した各ビット回路は、図4に示すよう
に、1ビットの遅延回路であるD型フリップフロップ
(以下、D回路と称する)53、D回路53に接続されたO
R回路素子54、OR回路素子54に接続されておりデ−タ
保持命令が入力されるAND回路素子55、、OR回路素
子54に接続されておりシフト命令が入力されるAND回
路素子56によって構成されている。
に、1ビットの遅延回路であるD型フリップフロップ
(以下、D回路と称する)53、D回路53に接続されたO
R回路素子54、OR回路素子54に接続されておりデ−タ
保持命令が入力されるAND回路素子55、、OR回路素
子54に接続されておりシフト命令が入力されるAND回
路素子56によって構成されている。
【0036】次に、図3の乗算器の動作を説明する。
【0037】図3の乗算器では、4値論理と2値論理の
いずれでも共通に使えるようになっているが、それらを
同時に使うことはないのでいずれかを用いることにな
る。ただし、2値論理と4値論理を組合せることはでき
る。
いずれでも共通に使えるようになっているが、それらを
同時に使うことはないのでいずれかを用いることにな
る。ただし、2値論理と4値論理を組合せることはでき
る。
【0038】特に、図3の乗算器では、4値論理を用い
る場合は、2値論理に対して、入出力の信号数を半分
(1/2)にすることができる。なお、図3は、2値論理で
示されている。
る場合は、2値論理に対して、入出力の信号数を半分
(1/2)にすることができる。なお、図3は、2値論理で
示されている。
【0039】図3の乗算器では、乗数nビットと被乗数
nビットの乗算は、2nビットでその結果を求めること
ができるが、nビット以上の乗算は、2nビットでは不
足するので、更に、図5に示すように、右へシフトされ
たデータを格納して並列出力することができるレジスタ
を備える必要がある。
nビットの乗算は、2nビットでその結果を求めること
ができるが、nビット以上の乗算は、2nビットでは不
足するので、更に、図5に示すように、右へシフトされ
たデータを格納して並列出力することができるレジスタ
を備える必要がある。
【0040】通常の全ビットバイナリー並列乗算器で
は、nビット×nビットの乗算を実行するとき、一語長
はnビットで、乗算結果は2nビットになるので、演算
時間は2nビットタイムかかることになるのに対して、
図3の乗算器では、一語長がnビット同志の乗算であっ
ても、演算時間はnビット・タイムでよく、乗算速度を
2倍にすることができる。このことは、物理的なクロッ
ク周波数を半分にしても、演算速度が変らないことを意
味する。
は、nビット×nビットの乗算を実行するとき、一語長
はnビットで、乗算結果は2nビットになるので、演算
時間は2nビットタイムかかることになるのに対して、
図3の乗算器では、一語長がnビット同志の乗算であっ
ても、演算時間はnビット・タイムでよく、乗算速度を
2倍にすることができる。このことは、物理的なクロッ
ク周波数を半分にしても、演算速度が変らないことを意
味する。
【0041】従って、図3の乗算器を用いた並列演算で
は入出力の信号数も多く、4値論理を適用すれば、信号
数を1/2 にできるので大規模集積回路(LSI)化にも
有効である。
は入出力の信号数も多く、4値論理を適用すれば、信号
数を1/2 にできるので大規模集積回路(LSI)化にも
有効である。
【0042】図3の乗算器で用いられた方法を拡張して
考えると、4ビット単位=24 (16値)のときの並列乗
算では、同じnビット×nビットの乗算を実行する場
合、乗算時間が(n/4)ビット・タイム必要であり、
加算時間は(n/4)ビット・タイムになるので、全体
の時間は(n/2)ビット・タイムになる。即ち、乗算
速度を4倍にすることができる。
考えると、4ビット単位=24 (16値)のときの並列乗
算では、同じnビット×nビットの乗算を実行する場
合、乗算時間が(n/4)ビット・タイム必要であり、
加算時間は(n/4)ビット・タイムになるので、全体
の時間は(n/2)ビット・タイムになる。即ち、乗算
速度を4倍にすることができる。
【0043】冗長ビットの発生はあるが3ビット単位=
23 (8値)の並列乗算では、乗算時間が(n/3)ビ
ット・タイム必要であり、加算時間は(n/3)ビット
・タイムになるので、全体の時間は、(2n/3)ビッ
ト・タイムになる。即ち、乗算時間を3倍にすることが
できる。図6に示すように、多値に成れば成る程時間が
短くなり高速化が可能になる。
23 (8値)の並列乗算では、乗算時間が(n/3)ビ
ット・タイム必要であり、加算時間は(n/3)ビット
・タイムになるので、全体の時間は、(2n/3)ビッ
ト・タイムになる。即ち、乗算時間を3倍にすることが
できる。図6に示すように、多値に成れば成る程時間が
短くなり高速化が可能になる。
【0044】上述した本発明の乗算器によれば、2値論
理でも4値論理でも共通に使えるが、4値論理を用いる
場合は2値論理に対して入出力の信号数を半分(1/2)に
することができる。
理でも4値論理でも共通に使えるが、4値論理を用いる
場合は2値論理に対して入出力の信号数を半分(1/2)に
することができる。
【0045】まず、4値論理を用いる場合には、
【0046】
【表1】
【0047】これを表わす論理式は、次式(1)のよう
になる。
になる。
【0048】
【数1】
【0049】式(1)をロジック回路で表わすと図7の
ようになる。
ようになる。
【0050】図7でΛはAND回路、VはOR回路をそ
れぞれ表している。
れぞれ表している。
【0051】乗算器のロジック回路で使われている
X0 ,X1/3 ,X2/3 ,X1 ,Y0 ,Y1/3 ,Y2/3 ,
Y1 ,C0 ,C1/3 ,C2/3 は、それぞれ等値回路を示
しており、例えば、X入力が0,1/3 ,2/3 ,1である
ときは、それぞれの入力に対して、その出力が1になる
ような回路である。このことはYについても同じことで
ある。Cについては、0,1/3 ,2/3 の入力があるとき
は、それぞれに対して1を出力する回路である。
X0 ,X1/3 ,X2/3 ,X1 ,Y0 ,Y1/3 ,Y2/3 ,
Y1 ,C0 ,C1/3 ,C2/3 は、それぞれ等値回路を示
しており、例えば、X入力が0,1/3 ,2/3 ,1である
ときは、それぞれの入力に対して、その出力が1になる
ような回路である。このことはYについても同じことで
ある。Cについては、0,1/3 ,2/3 の入力があるとき
は、それぞれに対して1を出力する回路である。
【0052】次に、2値論理を用いる場合には、図8に
おけるX0 ,X1/3 ,X2/3 ,X1 、Y0 ,Y1/3 ,Y
2/3 ,Y1 、C0 ,C1/3 ,C2/3 は、乗算器のロジッ
ク回路で使われているX0 ,X1/3 ,X2/3 ,X1 、Y
0 ,Y1/3 ,Y2/3 ,Y1 、C0 ,C1/3 ,C2/3 は論
理的には同一であるが物理的には異なる回路である。
おけるX0 ,X1/3 ,X2/3 ,X1 、Y0 ,Y1/3 ,Y
2/3 ,Y1 、C0 ,C1/3 ,C2/3 は、乗算器のロジッ
ク回路で使われているX0 ,X1/3 ,X2/3 ,X1 、Y
0 ,Y1/3 ,Y2/3 ,Y1 、C0 ,C1/3 ,C2/3 は論
理的には同一であるが物理的には異なる回路である。
【0053】続いて、乗算器のロジック(logic) を説明
する。
する。
【0054】いま、等値論理である(X 0),(X
1/3),(X 2/3),(X 1)を、X0 ,X1/3 ,X
2/3 ,X1 で表わし、(Y 0),(Y 1/3),(Y
2/3),(Y 1)をY0 ,Y1/3 ,Y2/3 ,Y1 で表わ
し、更に(C 0),(C 1/3),(C 2/3)をC0 ,
C1/3 ,C2/3 でそれぞれ表すことにすると、乗算器の
出力Z2 ,Z1 とキャリ出力C2 ,C1 は、表2、表3
で示すことができる。
1/3),(X 2/3),(X 1)を、X0 ,X1/3 ,X
2/3 ,X1 で表わし、(Y 0),(Y 1/3),(Y
2/3),(Y 1)をY0 ,Y1/3 ,Y2/3 ,Y1 で表わ
し、更に(C 0),(C 1/3),(C 2/3)をC0 ,
C1/3 ,C2/3 でそれぞれ表すことにすると、乗算器の
出力Z2 ,Z1 とキャリ出力C2 ,C1 は、表2、表3
で示すことができる。
【0055】
【表2】
【0056】表2は、乗算器出力<Z>の論理式も表わ
している。<Z>の0,1,2,3に対応して、
(Z2 ,Z1 )は、それぞれ(0,0),(0,1),
(1,0)(1,1)になっている。また、表中のブラ
ンクは0である。
している。<Z>の0,1,2,3に対応して、
(Z2 ,Z1 )は、それぞれ(0,0),(0,1),
(1,0)(1,1)になっている。また、表中のブラ
ンクは0である。
【0057】
【表3】
【0058】表3は、キャリー出力<C>の論理式も表
わしている。<C>の0,1,2に対応して、(C2 ,
C1 )は、それぞれ(0,0),(0,1)(1,0)
になっている。また、表中のブランクは0である。
わしている。<C>の0,1,2に対応して、(C2 ,
C1 )は、それぞれ(0,0),(0,1)(1,0)
になっている。また、表中のブランクは0である。
【0059】上述した乗算器で乗算を実行するときには
加算器も必要になるが、上記第1実施例の乗算器では、
図9に示す加算器を使用する。
加算器も必要になるが、上記第1実施例の乗算器では、
図9に示す加算器を使用する。
【0060】出力<Z>と、キャリ<C>のロジックか
ら乗算器を構成すると、図10の乗算回路になる。
ら乗算器を構成すると、図10の乗算回路になる。
【0061】図10の乗算回路では、時間t2i-1(i=
1,2,3,……,n)毎に2ビット並列に乗算される
ので、表1と表2で示される乗算出力<Z>、即ち、
(Z2 ,Z1 )の論理式に、時間t2i-1が論理積され
る。
1,2,3,……,n)毎に2ビット並列に乗算される
ので、表1と表2で示される乗算出力<Z>、即ち、
(Z2 ,Z1 )の論理式に、時間t2i-1が論理積され
る。
【0062】同様に、キャリ出力<C>、即ち、
(C2 ,C1 )に対しても時間t2i-1が論理積される。
このことは図7のロジック変換回路または図8のバイナ
リ入力回路に用いられる。また、キャリ出力<C>は、
時間t2iで発生して、次の時間t2i-1の乗算出力と加算
されるので、C2 t2i、C1 t2iがOR回路素子にOR
入力される。
(C2 ,C1 )に対しても時間t2i-1が論理積される。
このことは図7のロジック変換回路または図8のバイナ
リ入力回路に用いられる。また、キャリ出力<C>は、
時間t2iで発生して、次の時間t2i-1の乗算出力と加算
されるので、C2 t2i、C1 t2iがOR回路素子にOR
入力される。
【0063】乗算出力<Z>の(Z2 ,Z1 )は、図1
1のロジック変換回路または図12のバイナリ入力回路
に入力されて、図9の加算回路に用いられる。
1のロジック変換回路または図12のバイナリ入力回路
に入力されて、図9の加算回路に用いられる。
【0064】ここで、乗算器では、図7のロジック回路
または図8のバイナリ入力回路のいずれか一方が使われ
るが、同時に使われることはない。このことは図11の
ロジック変換回路や図12のバイナリ入力回路について
も同様である。
または図8のバイナリ入力回路のいずれか一方が使われ
るが、同時に使われることはない。このことは図11の
ロジック変換回路や図12のバイナリ入力回路について
も同様である。
【0065】本発明の乗算器は、4値論理及び2値論理
に対して共通に使えるようになっているので、いずれか
を用いることになるが、4値論理及び2値論理を組合せ
て用いることもできる。加えて、2nビット目(最終ビ
ット)でキャリ出力(C2 ,C1 )が発生する場合があ
るので、C2 t2n+1やC1 t2n+1が出力(Z2,Z1 )
にOR入力されている。
に対して共通に使えるようになっているので、いずれか
を用いることになるが、4値論理及び2値論理を組合せ
て用いることもできる。加えて、2nビット目(最終ビ
ット)でキャリ出力(C2 ,C1 )が発生する場合があ
るので、C2 t2n+1やC1 t2n+1が出力(Z2,Z1 )
にOR入力されている。
【0066】上述したように4値論理の場合には、図1
1に示したロジック変換回路を用いる。また、2値論理
の場合には、図12に示したバイナリ入力回路を用いる
と共に、図12のバイナリ入力回路からの出力Wと出力
Zとの乗算結果WZを実行するために図9の加算器を用
いる。
1に示したロジック変換回路を用いる。また、2値論理
の場合には、図12に示したバイナリ入力回路を用いる
と共に、図12のバイナリ入力回路からの出力Wと出力
Zとの乗算結果WZを実行するために図9の加算器を用
いる。
【0067】上述した第1実施例の2ビット並列直列型
乗算器は、図9の加算回路と図10の乗算回路によって
構成されている。
乗算器は、図9の加算回路と図10の乗算回路によって
構成されている。
【0068】上述した第2実施例の完全2ビット並列直
列型乗算器では、図2の回路を構成しているXOレジス
タ28,XEレジスタ28,YOレジスタ37,YEレジスタ
38で示される各レジスタのビット間は、図13に示すよ
うになっている。なお、ここでは、Xo はXodd ,XE
はXEven,YO はYodd 、YEはYEvenの状態を想定し
ている。
列型乗算器では、図2の回路を構成しているXOレジス
タ28,XEレジスタ28,YOレジスタ37,YEレジスタ
38で示される各レジスタのビット間は、図13に示すよ
うになっている。なお、ここでは、Xo はXodd ,XE
はXEven,YO はYodd 、YEはYEvenの状態を想定し
ている。
【0069】4値論理を用いる場合には、図14の乗算
回路への入力は、図15に示すようになり、図16の加
算回路への入力は、図17に示すようになる。
回路への入力は、図15に示すようになり、図16の加
算回路への入力は、図17に示すようになる。
【0070】また、2値論理を用いる場合には、図14
の乗算回路への入力は、図18に示すようになり、図1
6の加算回路への入力は、図19に示すようになる。
の乗算回路への入力は、図18に示すようになり、図1
6の加算回路への入力は、図19に示すようになる。
【0071】図14の乗算回路では、時間ti において
キャリーが発生し、次のビットの乗算出力と加算される
ので、キャリ出力<C>、即ち、(C2 ,C1 )は図1
4のようになる。また、(i=1,2,3,……n)に
対して、時間tn+1 でキャリが出力される場合があるの
で、C2 tn+1 やC1 tn+1 が出力(Z2 ,Z1 )にO
R入力される。
キャリーが発生し、次のビットの乗算出力と加算される
ので、キャリ出力<C>、即ち、(C2 ,C1 )は図1
4のようになる。また、(i=1,2,3,……n)に
対して、時間tn+1 でキャリが出力される場合があるの
で、C2 tn+1 やC1 tn+1 が出力(Z2 ,Z1 )にO
R入力される。
【0072】図16の加算回路では、時間ti でキャリ
が発生し、次のビットの加算出力と加算されるので、キ
ャリ出力C″は図のようになる。また、時間tn+1 でキ
ャリが出力される場合があるので、C″tn+1 がWにO
R入力されている。
が発生し、次のビットの加算出力と加算されるので、キ
ャリ出力C″は図のようになる。また、時間tn+1 でキ
ャリが出力される場合があるので、C″tn+1 がWにO
R入力されている。
【0073】上述した第3実施例の完全2ビット並列全
ビット並列型乗算器では、4値論理を用いる場合には、
図20の乗算回路への入力は、図21のようになり、図
22の加算回路への入力は、図23のようになる。
ビット並列型乗算器では、4値論理を用いる場合には、
図20の乗算回路への入力は、図21のようになり、図
22の加算回路への入力は、図23のようになる。
【0074】また、2値論理を用いる場合には、図20
の乗算回路への入力は、図24のようになり、図22の
加算回路への入力は、図25のようになる。
の乗算回路への入力は、図24のようになり、図22の
加算回路への入力は、図25のようになる。
【0075】図22の加算回路では、最上位ビットでキ
ャリが出力される場合があるので、W2i-1にC′n がO
R入力されている。
ャリが出力される場合があるので、W2i-1にC′n がO
R入力されている。
【0076】図22の加算回路において、並列演算であ
るので、C´i-1は前段からのキャリ出力であって、C
´i は、次段のキャリ入力になっている。また、図20
の乗算回路では、図21または図24に示されるC2i-2
とC2i-3は前段からのキャリー出力であって、C2iやC
2i-1は次段へのキャリ入力になっている。そして出力<
Z>つまり(Z2i,Z2i-1)には、最終段2nと2n−
1におけるキャリ出力C2n,C2n-1がそれぞれのOR入
力されている。
るので、C´i-1は前段からのキャリ出力であって、C
´i は、次段のキャリ入力になっている。また、図20
の乗算回路では、図21または図24に示されるC2i-2
とC2i-3は前段からのキャリー出力であって、C2iやC
2i-1は次段へのキャリ入力になっている。そして出力<
Z>つまり(Z2i,Z2i-1)には、最終段2nと2n−
1におけるキャリ出力C2n,C2n-1がそれぞれのOR入
力されている。
【0077】YOレジスタとYEレジスタにおいて、各
ビット間は図26に示すようになっている。
ビット間は図26に示すようになっている。
【0078】上述した第1実施例から第3実施例までの
各乗算器に用いられている小数点方法には浮動小数点方
法と固定小数点方法がある。
各乗算器に用いられている小数点方法には浮動小数点方
法と固定小数点方法がある。
【0079】ここでは、一例として、浮動小数点方法に
ついて説明する。
ついて説明する。
【0080】いま、被演算数の仮数部Xは、Xレジスタ
の最上位桁から入っているものとし、演算数の仮数部Y
は、Yレジスタの最上位桁から入っているものとする。
また、それぞれの指数部は、xとyで示すものとする。
の最上位桁から入っているものとし、演算数の仮数部Y
は、Yレジスタの最上位桁から入っているものとする。
また、それぞれの指数部は、xとyで示すものとする。
【0081】このとき、乗算の場合には次のような処理
が行なわれる。即ち、
が行なわれる。即ち、
【0082】
【数2】
【0083】ここで、Xの符号ビットをXs ,Yの符号
ビットをYs としてx,yの符号ビットをそれぞれ
xs ,ys で示すことにすると、仮数部の符号Ws は、
ビットをYs としてx,yの符号ビットをそれぞれ
xs ,ys で示すことにすると、仮数部の符号Ws は、
【0084】
【数3】
【0085】となる。また、指数部については、表4の
ようになる。なお、x≧0,y≧0とする。
ようになる。なお、x≧0,y≧0とする。
【0086】
【表4】
【0087】ここで、pは乗算結果の仮数部Wの指数部
を示し、psは、pの符号ビットを示している。
を示し、psは、pの符号ビットを示している。
【0088】これをフローチャートにすると、図27の
ようになる。図27のフローチャートで仮数部Xと仮数
部Yとの乗算によって、最上位桁から、キャリが発生す
る場合があるので、p+1→pが実行される。図27の
フローチャート(ステップS1〜S13)及びそれぞれ
の処理を実現する回路は、通常の手段で構成できるの
で、説明を省略する。
ようになる。図27のフローチャートで仮数部Xと仮数
部Yとの乗算によって、最上位桁から、キャリが発生す
る場合があるので、p+1→pが実行される。図27の
フローチャート(ステップS1〜S13)及びそれぞれ
の処理を実現する回路は、通常の手段で構成できるの
で、説明を省略する。
【0089】上述したような処理は、固定小数点方法の
場合についても、同じように実現することができる。
場合についても、同じように実現することができる。
【0090】
【発明の効果】第1発明の乗算器は、記憶されているデ
−タをシフトして複数のデ−タを出力するレジスタ変換
手段と、レジスタ変換手段に接続されておりレジスタ変
換手段からの出力を乗算する乗算手段と、乗算手段に接
続されており乗算手段から出力された乗算結果を特定の
方法に基づいて加算する加算手段と、加算手段に接続さ
れており加算手段からの出力をシフトして送る第1シフ
ト手段と、加算手段に接続されておりシフト手段に基づ
いてシフトされた加算手段からの出力を記憶する第1レ
ジスタと、第1レジスタに接続されており第1レジスタ
からの出力をシフトして送る第2シフト手段と、第2シ
フト手段に接続されており第2シフト手段からの出力を
更にシフトする第3シフト手段と、第2シフト手段に接
続されておりシフトされた第1レジスタからの出力を記
憶する第2レジスタとを備えているので、乗算速度を2
倍にでき、クロック周波数を半分にしても乗算速度を低
下させることなく動作の安定性を向上させることができ
る。
−タをシフトして複数のデ−タを出力するレジスタ変換
手段と、レジスタ変換手段に接続されておりレジスタ変
換手段からの出力を乗算する乗算手段と、乗算手段に接
続されており乗算手段から出力された乗算結果を特定の
方法に基づいて加算する加算手段と、加算手段に接続さ
れており加算手段からの出力をシフトして送る第1シフ
ト手段と、加算手段に接続されておりシフト手段に基づ
いてシフトされた加算手段からの出力を記憶する第1レ
ジスタと、第1レジスタに接続されており第1レジスタ
からの出力をシフトして送る第2シフト手段と、第2シ
フト手段に接続されており第2シフト手段からの出力を
更にシフトする第3シフト手段と、第2シフト手段に接
続されておりシフトされた第1レジスタからの出力を記
憶する第2レジスタとを備えているので、乗算速度を2
倍にでき、クロック周波数を半分にしても乗算速度を低
下させることなく動作の安定性を向上させることができ
る。
【0091】第2発明の乗算器は、記憶されているデ−
タをシフトしてシフトされたデ−タを出力するレジスタ
変換手段と、第1デ−タを所定の方法に基づいて出力す
る複数の第1デ−タ出力手段と、レジスタ変換手段及び
第1デ−タ出力手段に接続されておりレジスタ変換手段
からの出力及び第1デ−タ出力手段からの出力を乗算す
る複数の乗算手段と、第2デ−タを所定の方法に基づい
て出力する複数の第2デ−タ出力手段と、乗算手段に接
続されており乗算手段からの出力、第2デ−タ出力手段
からの出力、並びに特定の入力を加算して隣接して配置
された他の第2デ−タ出力手段に出力する複数の加算手
段とを備えており、複数の加算手段のうち最端に配置さ
れた加算手段は、乗算手段からの出力及び特定の入力を
加算して隣接して配置された第2デ−タ出力手段に出力
するので、乗算速度を2倍にでき、クロック周波数を半
分にしても乗算速度を低下させることなく動作の安定性
を向上させることができる。
タをシフトしてシフトされたデ−タを出力するレジスタ
変換手段と、第1デ−タを所定の方法に基づいて出力す
る複数の第1デ−タ出力手段と、レジスタ変換手段及び
第1デ−タ出力手段に接続されておりレジスタ変換手段
からの出力及び第1デ−タ出力手段からの出力を乗算す
る複数の乗算手段と、第2デ−タを所定の方法に基づい
て出力する複数の第2デ−タ出力手段と、乗算手段に接
続されており乗算手段からの出力、第2デ−タ出力手段
からの出力、並びに特定の入力を加算して隣接して配置
された他の第2デ−タ出力手段に出力する複数の加算手
段とを備えており、複数の加算手段のうち最端に配置さ
れた加算手段は、乗算手段からの出力及び特定の入力を
加算して隣接して配置された第2デ−タ出力手段に出力
するので、乗算速度を2倍にでき、クロック周波数を半
分にしても乗算速度を低下させることなく動作の安定性
を向上させることができる。
【0092】上記乗算器は、2値信号又は3値以上の4
値信号などの多値信号に対しても共用でき、乗算速度を
高速化することができる。
値信号などの多値信号に対しても共用でき、乗算速度を
高速化することができる。
【図1】本発明の乗算器の第1実施例である2ビット並
列直列型乗算器の構成を示すブロック図である。
列直列型乗算器の構成を示すブロック図である。
【図2】本発明の乗算器の第2実施例である完全2ビッ
ト並列直列型乗算器の構成を示すブロック図である。
ト並列直列型乗算器の構成を示すブロック図である。
【図3】本発明の乗算器の第3実施例である2ビット単
位全ビット並列型乗算器の構成を示すブロック図であ
る。
位全ビット並列型乗算器の構成を示すブロック図であ
る。
【図4】図3の乗算器を構成するビット回路の一構成例
を示すブロック図である。
を示すブロック図である。
【図5】図3の乗算器を構成する下位2nビット回路の
一構成例を示すブロック図である。
一構成例を示すブロック図である。
【図6】本発明の乗算器による乗算時間と従来の乗算器
による乗算時間とを比較した説明図である。
による乗算時間とを比較した説明図である。
【図7】図1の乗算器に適用されるロジック変換回路の
一構成例を示すブロック図である。
一構成例を示すブロック図である。
【図8】図1の乗算器に適用されるバイナリ入力回路の
一構成例を示すブロック図である。
一構成例を示すブロック図である。
【図9】図1の乗算器に適用される加算回路の一構成例
を示すブロック図である。
を示すブロック図である。
【図10】図1の乗算器に適用される乗算回路の一構成
例を示すブロック図である。
例を示すブロック図である。
【図11】図1の乗算器に適用されるロジック変換回路
の一構成例を示すブロック図である。
の一構成例を示すブロック図である。
【図12】図1の乗算器に適用されるバイナリ入力回路
の一構成例を示すブロック図である。
の一構成例を示すブロック図である。
【図13】図2の各レジスタのビット間を説明するため
のブロック図である。
のブロック図である。
【図14】図2の乗算器に適用される乗算回路の一構成
例を示すブロック図である。
例を示すブロック図である。
【図15】図14の乗算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図16】図2の乗算器に適用される加算回路の一構成
例を示すブロック図である。
例を示すブロック図である。
【図17】図16の加算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図18】図14の乗算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図19】図16の加算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図20】図3の乗算器に適用される乗算回路の一構成
例を示すブロック図である。
例を示すブロック図である。
【図21】図20の乗算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図22】図3の乗算器に適用される加算回路の一構成
例を示すブロック図である。
例を示すブロック図である。
【図23】図22の加算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図24】図20の乗算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図25】図22の加算回路への入力を説明するための
ブロック図である。
ブロック図である。
【図26】図3の各ビット間の接続を説明するためのブ
ロック図である。
ロック図である。
【図27】本発明の乗算器による仮数部と指数部の処理
を説明するためのフロ−チャ−トである。
を説明するためのフロ−チャ−トである。
【符号の説明】 11,12,16,19 レジスタ 13,17,18,20 AND回路素子 14 乗算回路 15 加算回路 RC レジスタ変換回路
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成5年2月10日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図3
【補正方法】変更
【補正内容】
【図3】
【手続補正2】
【補正対象書類名】図面
【補正対象項目名】図9
【補正方法】変更
【補正内容】
【図9】
【手続補正3】
【補正対象書類名】図面
【補正対象項目名】図21
【補正方法】変更
【補正内容】
【図21】
Claims (3)
- 【請求項1】 記憶されているデ−タをシフトして複数
のデ−タを出力するレジスタ変換手段と、前記レジスタ
変換手段に接続されており当該レジスタ変換手段からの
出力を乗算する乗算手段と、前記乗算手段に接続されて
おり当該乗算手段から出力された乗算結果を特定の方法
に基づいて加算する加算手段と、前記加算手段に接続さ
れており当該加算手段からの出力をシフトして送る第1
シフト手段と、前記加算手段に接続されており前記シフ
ト手段に基づいてシフトされた該加算手段からの出力を
記憶する第1レジスタと、前記第1レジスタに接続され
ており当該第1レジスタからの出力をシフトして送る第
2シフト手段と、前記第2シフト手段に接続されており
当該第2シフト手段からの出力を更にシフトする第3シ
フト手段と、前記第2シフト手段に接続されており前記
シフトされた第1レジスタからの出力を記憶する第2レ
ジスタとを備えていることを特徴とする乗算器。 - 【請求項2】 記憶されているデ−タをシフトして当該
シフトされたデ−タを出力するレジスタ変換手段と、第
1デ−タを所定の方法に基づいて出力する複数の第1デ
−タ出力手段と、前記レジスタ変換手段及び前記第1デ
−タ出力手段に接続されており該レジスタ変換手段から
の出力及び該第1デ−タ出力手段からの出力を乗算する
複数の乗算手段と、第2デ−タを所定の方法に基づいて
出力する複数の第2デ−タ出力手段と、前記乗算手段に
接続されており該乗算手段からの出力、前記第2デ−タ
出力手段からの出力、並びに特定の入力を加算して隣接
して配置された他の該第2デ−タ出力手段に出力する複
数の加算手段とを備えており、前記複数の加算手段のう
ち最端に配置された該加算手段は、前記乗算手段からの
出力及び前記特定の入力を加算して隣接して配置された
前記第2デ−タ出力手段に出力することを特徴とする乗
算器。 - 【請求項3】 前記記憶されているデ−タが2値信号又
は3値以上の4値信号などの多値信号であることを特徴
とする請求項1または2に記載の乗算器。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP32320591A JP3256251B2 (ja) | 1991-12-06 | 1991-12-06 | 乗算器 |
| US07/984,695 US5289399A (en) | 1991-12-06 | 1992-12-02 | Multiplier for processing multi-valued data |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP32320591A JP3256251B2 (ja) | 1991-12-06 | 1991-12-06 | 乗算器 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH05158659A true JPH05158659A (ja) | 1993-06-25 |
| JP3256251B2 JP3256251B2 (ja) | 2002-02-12 |
Family
ID=18152219
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP32320591A Expired - Fee Related JP3256251B2 (ja) | 1991-12-06 | 1991-12-06 | 乗算器 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5289399A (ja) |
| JP (1) | JP3256251B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5467298A (en) * | 1992-11-26 | 1995-11-14 | Sharp Kabushiki Kaisha | Multivalued adder having capability of sharing plural multivalued signals |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5438533A (en) * | 1992-10-28 | 1995-08-01 | Sharp Kabushiki Kaisha | Multivalued multiplier for binary and multivalued logic data |
| JPH06161712A (ja) * | 1992-11-18 | 1994-06-10 | Sharp Corp | 多値減算器 |
| US5524088A (en) * | 1993-06-30 | 1996-06-04 | Sharp Kabushiki Kaisha | Multi-functional operating circuit providing capability of freely combining operating functions |
| US5740344A (en) * | 1996-02-08 | 1998-04-14 | Itri-Industrial Technology Research Institute | Texture filter apparatus for computer graphics system |
| WO2001011538A2 (en) * | 1999-08-09 | 2001-02-15 | Preeth Kumar Patil | Discrete computer system |
| US7562106B2 (en) * | 2004-08-07 | 2009-07-14 | Ternarylogic Llc | Multi-value digital calculating circuits, including multipliers |
| US20070239811A1 (en) * | 2006-04-05 | 2007-10-11 | Leo Bredehoft | Multiplication by one from a set of constants using simple circuitry |
| CN108268240A (zh) * | 2017-01-03 | 2018-07-10 | 胡五生 | 多值寄存器 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3617723A (en) * | 1970-02-25 | 1971-11-02 | Collins Radio Co | Digitalized multiplier |
| US3805043A (en) * | 1972-10-11 | 1974-04-16 | Bell Telephone Labor Inc | Serial-parallel binary multiplication using pairwise addition |
| JPS5938849A (ja) * | 1982-08-27 | 1984-03-02 | Fujitsu Ltd | 演算回路 |
| US4796219A (en) * | 1987-06-01 | 1989-01-03 | Motorola, Inc. | Serial two's complement multiplier |
| US5021987A (en) * | 1989-08-31 | 1991-06-04 | General Electric Company | Chain-serial matrix multipliers |
-
1991
- 1991-12-06 JP JP32320591A patent/JP3256251B2/ja not_active Expired - Fee Related
-
1992
- 1992-12-02 US US07/984,695 patent/US5289399A/en not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5467298A (en) * | 1992-11-26 | 1995-11-14 | Sharp Kabushiki Kaisha | Multivalued adder having capability of sharing plural multivalued signals |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3256251B2 (ja) | 2002-02-12 |
| US5289399A (en) | 1994-02-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5187679A (en) | Generalized 7/3 counters | |
| EP0018519B1 (en) | Multiplier apparatus having a carry-save/propagate adder | |
| US5280439A (en) | Apparatus for determining booth recoder input control signals | |
| JPS6132437Y2 (ja) | ||
| US6018758A (en) | Squarer with diagonal row merged into folded partial product array | |
| JPH0831025B2 (ja) | 乗算回路 | |
| US6370556B1 (en) | Method and arrangement in a transposed digital FIR filter for multiplying a binary input signal with tap coefficients and a method for designing a transposed digital filter | |
| JP3256251B2 (ja) | 乗算器 | |
| JP3556950B2 (ja) | 高速算術演算装置のけた上げ先見加算器段の数を減少させる構造及び方法 | |
| EP1672481B1 (en) | Division and square root arithmetic unit | |
| US4677583A (en) | Apparatus for decimal multiplication | |
| JPH02293929A (ja) | デジタルシステム乗算の方法及び装置 | |
| US5870322A (en) | Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication | |
| Al-Khaleel et al. | Fast and compact binary-to-BCD conversion circuits for decimal multiplication | |
| JP3660075B2 (ja) | 除算装置 | |
| US4118786A (en) | Integrated binary-BCD look-ahead adder | |
| JPH076024A (ja) | 十進数乗算器 | |
| JP2606326B2 (ja) | 乗算器 | |
| JP2606339B2 (ja) | 乗算器 | |
| JPH01251133A (ja) | 乗算回路及び方法 | |
| JP2777265B2 (ja) | 高基数開平演算装置 | |
| Swartzlander Jr | The negative two’s complement number system | |
| JP2864598B2 (ja) | ディジタル演算回路 | |
| JPH02114324A (ja) | 乗算器 | |
| JP2568608B2 (ja) | 乗算回路 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081130 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091130 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |