JPH01293436A - 加算器 - Google Patents
加算器Info
- Publication number
- JPH01293436A JPH01293436A JP12441788A JP12441788A JPH01293436A JP H01293436 A JPH01293436 A JP H01293436A JP 12441788 A JP12441788 A JP 12441788A JP 12441788 A JP12441788 A JP 12441788A JP H01293436 A JPH01293436 A JP H01293436A
- Authority
- JP
- Japan
- Prior art keywords
- carry
- signal
- terminal
- output
- gate
- 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
【発明の詳細な説明】
[産業上の利用分野]
この発明は加算器に関し、特にノーマル動作およびリバ
ース動作が可能な加算器に関する。
ース動作が可能な加算器に関する。
[従来の技術]
第5図は、通常の加算動作(ノーマル動作)およびビッ
トリバース加算動作(リバース動作)が可能な従来の加
算器の構成を示す回路図である。
トリバース加算動作(リバース動作)が可能な従来の加
算器の構成を示す回路図である。
第5図に示される加算器20は、排他的論理和ゲート(
以下、ExORゲートという)21,22、インバータ
2B、24,25、ORゲート26、ANDゲート27
、およびトランスファゲートT21〜T24を含む。ト
ランスファゲートT21〜T24はNチャネルMO3)
ランジスタからなる。入力端子aには被加算信号である
入力信号Aが与えられ、入力端子すには被加算信号であ
る入力信号Bが与えられる。制御端子qには制御信号Q
が与えられ、キャリ端子ciにはキャリ信号CIが与え
られる。和出力端子Sからは加算結果である和出力信号
Sが出力される。キャリ伝播端子pからはキャリ伝播信
号(Carry Propaga t e)Pが出力
され、キャリ端子COからは桁上げを示すキャリ信号C
Oが出力される。
以下、ExORゲートという)21,22、インバータ
2B、24,25、ORゲート26、ANDゲート27
、およびトランスファゲートT21〜T24を含む。ト
ランスファゲートT21〜T24はNチャネルMO3)
ランジスタからなる。入力端子aには被加算信号である
入力信号Aが与えられ、入力端子すには被加算信号であ
る入力信号Bが与えられる。制御端子qには制御信号Q
が与えられ、キャリ端子ciにはキャリ信号CIが与え
られる。和出力端子Sからは加算結果である和出力信号
Sが出力される。キャリ伝播端子pからはキャリ伝播信
号(Carry Propaga t e)Pが出力
され、キャリ端子COからは桁上げを示すキャリ信号C
Oが出力される。
ExORゲート21の一方の入力端子は入力端子aに接
続され、他方の入力端子は入力端子すに接続されている
。また、キャリ端子ciとキャリ端子COとの間には、
トランスファゲートT21およびT22が直列に接続さ
れ、かつ、トランスファゲートT23およびT24が直
列に接続されている。ExORゲート21の出力はイン
バータ23を介してANDゲート27の一方の入力端子
に与えられる。ANDゲート27の他方の入力端子には
制御端子qから制御信号Qが与えられる。
続され、他方の入力端子は入力端子すに接続されている
。また、キャリ端子ciとキャリ端子COとの間には、
トランスファゲートT21およびT22が直列に接続さ
れ、かつ、トランスファゲートT23およびT24が直
列に接続されている。ExORゲート21の出力はイン
バータ23を介してANDゲート27の一方の入力端子
に与えられる。ANDゲート27の他方の入力端子には
制御端子qから制御信号Qが与えられる。
ANDゲート27の出力はトランスファゲートT23の
ゲートに与えられかつインバータ24を介してトランス
ファゲートT21のゲートに与えられる。また、ExO
Rゲート21の出力はORゲート26の一方の入力端子
に与えられる。ORゲート26の他方の入力端子には制
御端子qから制御信号Qが与えられる。ORゲート26
の出力はトランスファゲートT22のゲートに与えられ
かつインバータ25を介してトランスファゲートT24
のゲートに与えられる。
ゲートに与えられかつインバータ24を介してトランス
ファゲートT21のゲートに与えられる。また、ExO
Rゲート21の出力はORゲート26の一方の入力端子
に与えられる。ORゲート26の他方の入力端子には制
御端子qから制御信号Qが与えられる。ORゲート26
の出力はトランスファゲートT22のゲートに与えられ
かつインバータ25を介してトランスファゲートT24
のゲートに与えられる。
また、ExORゲート21の出力はExORゲート22
の一方の入力端子およびキャリ伝播端子pに与えられる
。ExORゲート22の他方の入力端子はトランスファ
ゲートT21およびT22間の接続点に接続されている
。ExORゲート22の出力は和出力端子Sに与えられ
る。さらに、入力端子すはトランスファゲート723お
よび124間の接続点に接続されている。
の一方の入力端子およびキャリ伝播端子pに与えられる
。ExORゲート22の他方の入力端子はトランスファ
ゲートT21およびT22間の接続点に接続されている
。ExORゲート22の出力は和出力端子Sに与えられ
る。さらに、入力端子すはトランスファゲート723お
よび124間の接続点に接続されている。
次に、表1および表2を参照しながら第5図の加算器の
動作について説明する。
動作について説明する。
表1
表2
表1は、加算器20のノーマル動作時の真理値表である
。ノーマル動作時には、キャリ端子ciにキャリ信号C
Iが入力され、キャリ端子COがらキャリ信号COが出
力される。ノーマルモード時には制御信号QはrOJ
(rLJレベル)に固定される。
。ノーマル動作時には、キャリ端子ciにキャリ信号C
Iが入力され、キャリ端子COがらキャリ信号COが出
力される。ノーマルモード時には制御信号QはrOJ
(rLJレベル)に固定される。
表1に示すように、入力信号AおよびBが共に「0」の
ときには、入力されるキャリ信号CIに関係なく出力さ
れるキャリ信号COは「0」となる。すなわち、キャリ
信号COが“K11l“される。したがって、入力信号
AおよびBが共に「0」のときには、入力信号Aまたは
Bがキャリ信号COとして出力される。
ときには、入力されるキャリ信号CIに関係なく出力さ
れるキャリ信号COは「0」となる。すなわち、キャリ
信号COが“K11l“される。したがって、入力信号
AおよびBが共に「0」のときには、入力信号Aまたは
Bがキャリ信号COとして出力される。
入力信号AおよびBが共にrlJ (rHJレベル)
のときには、人力されるキャリ信号CIに関係なく出力
されるキャリ信号COは「1」となる。
のときには、人力されるキャリ信号CIに関係なく出力
されるキャリ信号COは「1」となる。
すなわち、キャリ信号COが’Generate”され
る。したがって、入力信号AおよびBが共に「1」のと
きは、入力信号AまたはBがキャリ信号COとして出力
される。
る。したがって、入力信号AおよびBが共に「1」のと
きは、入力信号AまたはBがキャリ信号COとして出力
される。
入力信号AおよびBの和が「1」のとき、すなわち入力
信号AおよびBのいずれか一方が「1」でありかつ他方
が「0」であるときには、キャリ信号CIが「1」なら
ばキャリ信号COも「1」となり、キャリ信号CIが「
0」ならばキャリ信号COも「0」となる。すなわち、
キャリ信号CIがそのまま“Propagate”され
る。したがって、入力信号AおよびBの和が「1」のと
きには、キャリ信号CIがそのままキャリ信号COとし
て出力される。
信号AおよびBのいずれか一方が「1」でありかつ他方
が「0」であるときには、キャリ信号CIが「1」なら
ばキャリ信号COも「1」となり、キャリ信号CIが「
0」ならばキャリ信号COも「0」となる。すなわち、
キャリ信号CIがそのまま“Propagate”され
る。したがって、入力信号AおよびBの和が「1」のと
きには、キャリ信号CIがそのままキャリ信号COとし
て出力される。
第5図において、ノーマル動作時には制御端子qに与え
られる制御信号QはrLJレベルであるので、ANDゲ
ート27の出力はrLJレベルとなり、トランスファゲ
ートT21がオンしトランスファゲートT23がオフす
る。入力信号AおよびBが共に「0」のとき、ExOR
ゲート21の出力はrLJ レベルとなる。したがって
、キャリ伝播信号Pは「0」となる。また、ORゲート
26の出力はrLJレベルとなり、トランスファゲート
T22がオフしトランスファゲートT24がオンする。
られる制御信号QはrLJレベルであるので、ANDゲ
ート27の出力はrLJレベルとなり、トランスファゲ
ートT21がオンしトランスファゲートT23がオフす
る。入力信号AおよびBが共に「0」のとき、ExOR
ゲート21の出力はrLJ レベルとなる。したがって
、キャリ伝播信号Pは「0」となる。また、ORゲート
26の出力はrLJレベルとなり、トランスファゲート
T22がオフしトランスファゲートT24がオンする。
その結果、入力信号BがトランスファゲートT24を介
してキャリ端子Coからキャリ信号COとして出力され
る。したがって、キャリ信号COは「0」となる。この
とき、ExORゲート22の一方の入力端子にはExO
Rゲート21からのrLJレベルの出力が与えられ、他
方の入力端子にはトランスファゲートT21を介してキ
ャリ信号CIが与えられる。したがって、キャリ信号C
Iが「0」のときには和出力信号Sは「0」となり、キ
ャリ信号CIが「1」のときには和出力信号Sは「1」
となる。
してキャリ端子Coからキャリ信号COとして出力され
る。したがって、キャリ信号COは「0」となる。この
とき、ExORゲート22の一方の入力端子にはExO
Rゲート21からのrLJレベルの出力が与えられ、他
方の入力端子にはトランスファゲートT21を介してキ
ャリ信号CIが与えられる。したがって、キャリ信号C
Iが「0」のときには和出力信号Sは「0」となり、キ
ャリ信号CIが「1」のときには和出力信号Sは「1」
となる。
入力信号AおよびBが共に「1」のときにも同様に、E
xORゲート21の出力はrLJレベルとなる。したが
って、キャリ伝播信号Pも同様に「0」となり、また、
同様にトランスファゲートT22がオフしトランスファ
ゲートT24がオンする。その結果、入力信号Bがトラ
ンスファゲートT24を介してキャリ端子COからキャ
リ信号COとして出力される。したがって、キャリ信号
COは「1」となる。このとき、ExORゲート22の
一方の入力端子にはExORゲート21からのrLJレ
ベルの出力が与えられ、他方の入力端子にはトランスフ
ァゲートT21を介してキャリ信号CIが与えられる。
xORゲート21の出力はrLJレベルとなる。したが
って、キャリ伝播信号Pも同様に「0」となり、また、
同様にトランスファゲートT22がオフしトランスファ
ゲートT24がオンする。その結果、入力信号Bがトラ
ンスファゲートT24を介してキャリ端子COからキャ
リ信号COとして出力される。したがって、キャリ信号
COは「1」となる。このとき、ExORゲート22の
一方の入力端子にはExORゲート21からのrLJレ
ベルの出力が与えられ、他方の入力端子にはトランスフ
ァゲートT21を介してキャリ信号CIが与えられる。
したがって、キャリ信号CIがrOJのときには和出力
信号Sは「0」となり、キャリ信号CIが「1」のとき
には和出力信号Sは「1」となる。
信号Sは「0」となり、キャリ信号CIが「1」のとき
には和出力信号Sは「1」となる。
人力信号AおよびBのいずれか一方が「0」であり他方
が「1」のときには、E x ORゲート21の出力は
rHJレベルとなる。したがって、キャリ伝播信号Pは
「1」となる。また、ORゲート26の出力がrHJレ
ベルとなり、トランスファゲートT22がオンしトラン
スファゲートT24がオフする。すなわち、トランスフ
ァゲートT21およびT22がオンするので、キャリ端
子C1に人力されるキャリ信号CIはそのままキャリ端
子COに伝播される。したがって、キャリ信号COはキ
ャリ信号CIと同じになる。このとき、ExORゲート
22の一方の入力端子にはExORゲート21からのr
HJレベルの出力が与えられ、他方の入力端子にはトラ
ンスファゲートT21を介してキャリ信号CIが与えら
れる。したがって、キャリ信号CIがrOJのときには
和出力信号Sは「1」となり、キャリ信号CIが「1」
のときには和出力信号SはrOJとなる。
が「1」のときには、E x ORゲート21の出力は
rHJレベルとなる。したがって、キャリ伝播信号Pは
「1」となる。また、ORゲート26の出力がrHJレ
ベルとなり、トランスファゲートT22がオンしトラン
スファゲートT24がオフする。すなわち、トランスフ
ァゲートT21およびT22がオンするので、キャリ端
子C1に人力されるキャリ信号CIはそのままキャリ端
子COに伝播される。したがって、キャリ信号COはキ
ャリ信号CIと同じになる。このとき、ExORゲート
22の一方の入力端子にはExORゲート21からのr
HJレベルの出力が与えられ、他方の入力端子にはトラ
ンスファゲートT21を介してキャリ信号CIが与えら
れる。したがって、キャリ信号CIがrOJのときには
和出力信号Sは「1」となり、キャリ信号CIが「1」
のときには和出力信号SはrOJとなる。
表2は、加算器20のリバース動作時の真理値表である
。リバース動作時には、キャリ端子c。
。リバース動作時には、キャリ端子c。
にキャリ信号COが入力され、キャリ端子cih1らキ
ャリ信号CIが出力される。また、リバース動作時には
、制御信号Qは「1」に固定される。
ャリ信号CIが出力される。また、リバース動作時には
、制御信号Qは「1」に固定される。
表2が表1と異なるのは、制御信号Qが「1」となって
いる点、およびキャリ信号CIとキャリ信号COとが入
替わっている点である。
いる点、およびキャリ信号CIとキャリ信号COとが入
替わっている点である。
第5図において、リバース動作時には、制御端子qに与
えられる制御信号QはrHJレベルであるので、ORゲ
ート26の出力はrHJレベルとなり、トランスファゲ
ートT22がオンしトランスファゲートT24がオフす
る。入力信号AおよびBが共に「0」のとき、ExOR
ゲート21の出力はrLJレベルとなる。したがって、
キャリ伝播信号Pは「0」となる。また、ANDゲート
27の出力がrHJ レベルとなり、トランスファゲー
トT21がオフしトランスファゲートT2Bがオンする
。その結果、入力信号BがトランスファゲートT23を
介してキャリ端子ciからキャリ信号CIとして出力さ
れる。したがって、キャリ信号CIは「O」となる。こ
のとき、ExORゲート22の一方の入力端子にはEx
ORゲート21からのrLJレベルの出力が与えられ、
他方の入力端子にはトランスファゲートT22を介して
キャリ信号COが与えられる。したがって、キャリ信号
COが「0」のときには和出力信号Sは「0」となり、
キャリ信号COが「1」のときには和出力信号Sは「1
」となる。
えられる制御信号QはrHJレベルであるので、ORゲ
ート26の出力はrHJレベルとなり、トランスファゲ
ートT22がオンしトランスファゲートT24がオフす
る。入力信号AおよびBが共に「0」のとき、ExOR
ゲート21の出力はrLJレベルとなる。したがって、
キャリ伝播信号Pは「0」となる。また、ANDゲート
27の出力がrHJ レベルとなり、トランスファゲー
トT21がオフしトランスファゲートT2Bがオンする
。その結果、入力信号BがトランスファゲートT23を
介してキャリ端子ciからキャリ信号CIとして出力さ
れる。したがって、キャリ信号CIは「O」となる。こ
のとき、ExORゲート22の一方の入力端子にはEx
ORゲート21からのrLJレベルの出力が与えられ、
他方の入力端子にはトランスファゲートT22を介して
キャリ信号COが与えられる。したがって、キャリ信号
COが「0」のときには和出力信号Sは「0」となり、
キャリ信号COが「1」のときには和出力信号Sは「1
」となる。
入力信号AおよびBが共に「1」のときにも同様に、E
xORゲート21の出力はrLJレベルとなる。したが
って、キャリ伝播信号PはrOJとなる。また、AND
ゲート27の出力がrHJとなり、トランスファゲート
T21がオフしトランスファゲートT23がオンする。
xORゲート21の出力はrLJレベルとなる。したが
って、キャリ伝播信号PはrOJとなる。また、AND
ゲート27の出力がrHJとなり、トランスファゲート
T21がオフしトランスファゲートT23がオンする。
その結果、人力信号BがトランスファゲートT23を介
してキャリ端子c1からキャリ信号CIとして出力され
る。したがって、キャリ信号CIは「1」となる。
してキャリ端子c1からキャリ信号CIとして出力され
る。したがって、キャリ信号CIは「1」となる。
このとき、ExORゲート22の一方の入力端子にはE
xORゲート21からのrLJレベルの出力が与えられ
、他方の入力端子にはトランスファゲートT22を介し
てキャリ信号COが与えられる。したがって、キャリ信
号CIが「0」のときには和出力信号Sは「0」となり
、キャリ信号CIが「1」のときには和出力信号Sは「
1」となる。
xORゲート21からのrLJレベルの出力が与えられ
、他方の入力端子にはトランスファゲートT22を介し
てキャリ信号COが与えられる。したがって、キャリ信
号CIが「0」のときには和出力信号Sは「0」となり
、キャリ信号CIが「1」のときには和出力信号Sは「
1」となる。
入力信号AおよびBのいずれか一方が「0」であり他方
が「1」であるときには、ExORゲート21の出力は
rHJ レベルとなる。したがって、キャリ伝播信号P
は「1」となる。また、ANDゲート27の出力がrL
Jレベルとなり、トランスファゲートT21がオンしト
ランスファゲートT23がオフする。すなわち、トラン
スファゲートT22およびT21がオンするので、キャ
リ端子COに人力されるキャリ信号COはそのままキャ
リ端子ciに伝播される。したがって、キャリ信号CI
はキャリ信号COと同じになる。このとき、ExORゲ
ート22の一方の入力端子にはExORゲート21から
のrHJレベルの出力が与えられ、他方の入力端子には
トランスファゲートT22を介してキャリ信号COが与
えられる。したがって、キャリ信号COが「0」のとき
には和出力信号Sは「1」となり、キャリ信号COが「
1」のときには和出力信号Sは「0」となる。
が「1」であるときには、ExORゲート21の出力は
rHJ レベルとなる。したがって、キャリ伝播信号P
は「1」となる。また、ANDゲート27の出力がrL
Jレベルとなり、トランスファゲートT21がオンしト
ランスファゲートT23がオフする。すなわち、トラン
スファゲートT22およびT21がオンするので、キャ
リ端子COに人力されるキャリ信号COはそのままキャ
リ端子ciに伝播される。したがって、キャリ信号CI
はキャリ信号COと同じになる。このとき、ExORゲ
ート22の一方の入力端子にはExORゲート21から
のrHJレベルの出力が与えられ、他方の入力端子には
トランスファゲートT22を介してキャリ信号COが与
えられる。したがって、キャリ信号COが「0」のとき
には和出力信号Sは「1」となり、キャリ信号COが「
1」のときには和出力信号Sは「0」となる。
このように、ノーマル動作においてもリバース動作にお
いても、入力信号AおよびBが互いに異なるときには、
キャリ伝播信号Pが「1」となり、入力されたキャリ信
号は2段のトランスファゲートを介して一方のキャリ端
子から他方のキャリ端子に伝播されそのまま出力される
。
いても、入力信号AおよびBが互いに異なるときには、
キャリ伝播信号Pが「1」となり、入力されたキャリ信
号は2段のトランスファゲートを介して一方のキャリ端
子から他方のキャリ端子に伝播されそのまま出力される
。
第6図は、第5図の加算器20を用いて構成された4ビ
ツトのキャリ・ルック・アヘッド(Carry Lo
ok Ahead)方式の加算回路を示す図である。
ツトのキャリ・ルック・アヘッド(Carry Lo
ok Ahead)方式の加算回路を示す図である。
第6図の加算回路は、4つの加算器20.から構成され
ている。ここで、kは0〜3の整数である。1桁目の加
算器20oのキャリ端子ciはNチャネルMOSトラン
ジスタN31を介して端子iに接続されている。各加算
器20o 、20+ 。
ている。ここで、kは0〜3の整数である。1桁目の加
算器20oのキャリ端子ciはNチャネルMOSトラン
ジスタN31を介して端子iに接続されている。各加算
器20o 、20+ 。
202のキャリ端子COはそれぞれ次桁の加算器20+
、202.20aのキャリ端子ciに接続されている
。4桁目の加算器20.のキャリ端子coはNチャネル
MoSトランジスタN32を介して端子0に接続されて
いる。各加算器20、のキャリ伝播端子pはNANDゲ
ート31の入力端子に接続されている。NANDゲート
31の出力はANDゲート32の一方の入力端子および
ANDゲート33の一方の入力端子に与えられる。制御
信号Qは各加算器20にの制御端子qに与えられる。ま
た、制御信号Qは、ANDゲート33の他方の入力端子
に与えられかつインバータ34を介してANDゲート3
2の他方の入力端子に与えられる。ANDゲート32の
出力はトランジスタN31のゲートに与えられ、AND
ゲート33の出力はトランジスタN32のゲートに与え
られる。
、202.20aのキャリ端子ciに接続されている
。4桁目の加算器20.のキャリ端子coはNチャネル
MoSトランジスタN32を介して端子0に接続されて
いる。各加算器20、のキャリ伝播端子pはNANDゲ
ート31の入力端子に接続されている。NANDゲート
31の出力はANDゲート32の一方の入力端子および
ANDゲート33の一方の入力端子に与えられる。制御
信号Qは各加算器20にの制御端子qに与えられる。ま
た、制御信号Qは、ANDゲート33の他方の入力端子
に与えられかつインバータ34を介してANDゲート3
2の他方の入力端子に与えられる。ANDゲート32の
出力はトランジスタN31のゲートに与えられ、AND
ゲート33の出力はトランジスタN32のゲートに与え
られる。
さらに、端子iと端子0とはNチャネルMOSトランジ
スタN33を介して接続され、そのトランジスタN33
のゲートにはNANDゲート31の出力がインバータ3
5を介して与えられる。
スタN33を介して接続され、そのトランジスタN33
のゲートにはNANDゲート31の出力がインバータ3
5を介して与えられる。
各加算器20.の入力端子a、 bにはそれぞれ入力
信号A (k) 、 B (k)が与えられる。また
、各加算器20 kの和出力端子Sからはそれぞれ和出
力信号S (k)が出力される。
信号A (k) 、 B (k)が与えられる。また
、各加算器20 kの和出力端子Sからはそれぞれ和出
力信号S (k)が出力される。
各加算器20.において、2つの入力信号A(k)およ
びB (k)が互いに異なる場合には、キャリ伝播端子
pから出力されるキャリ伝播信号Pは「1」となる。4
つの加算器20、から出力されるキャリ伝播信号Pのう
ちいずれかが「0」であるときには、NANDゲート3
1の出力はrHJレベルとなる。ノーマル動作時には、
制御信号QはrLJレベルであるので、ANDゲート3
2の出力はrHJレベルとなり、ANDゲート33の出
力はrLJレベルとなる。したがって、トランジスタN
31がオンし、トランジスタN32がオフする。この場
合、端子iに与えられるキャリ信号が1桁目の加算器2
0oのキャリ端子C1に入力され、各加算器20.のキ
ャリ端子c。
びB (k)が互いに異なる場合には、キャリ伝播端子
pから出力されるキャリ伝播信号Pは「1」となる。4
つの加算器20、から出力されるキャリ伝播信号Pのう
ちいずれかが「0」であるときには、NANDゲート3
1の出力はrHJレベルとなる。ノーマル動作時には、
制御信号QはrLJレベルであるので、ANDゲート3
2の出力はrHJレベルとなり、ANDゲート33の出
力はrLJレベルとなる。したがって、トランジスタN
31がオンし、トランジスタN32がオフする。この場
合、端子iに与えられるキャリ信号が1桁目の加算器2
0oのキャリ端子C1に入力され、各加算器20.のキ
ャリ端子c。
から出力されるキャリ信号が順次上位桁の加算器20、
ヤ、のキャリ端子ciに与えられる。
ヤ、のキャリ端子ciに与えられる。
リバース動作時には、制御信号QがrHJレベルである
ので、ANDゲート32の出力はrLJレベルとなり、
ANDゲート33の出力は「H」レベルとなる。これに
より、トランジスタN31がオフし、トランジスタN3
2がオンする。この場合、端子0に与えられるキャリ信
号が4桁目の加算器20.のキャリ端子Coに入力され
、各加算器20.のキャリ端子ciから出力されるキャ
リ信号が順次下位桁の加算器20に−+のキャリ端子C
Oに与えられる。
ので、ANDゲート32の出力はrLJレベルとなり、
ANDゲート33の出力は「H」レベルとなる。これに
より、トランジスタN31がオフし、トランジスタN3
2がオンする。この場合、端子0に与えられるキャリ信
号が4桁目の加算器20.のキャリ端子Coに入力され
、各加算器20.のキャリ端子ciから出力されるキャ
リ信号が順次下位桁の加算器20に−+のキャリ端子C
Oに与えられる。
一方、4つの加算器20iから出力されるキャリ伝播信
号Pがすべて「1」であるときには、NANDゲート3
1の出力はrLJレベルとなる。
号Pがすべて「1」であるときには、NANDゲート3
1の出力はrLJレベルとなる。
これにより、ANDゲート32および33の出力はrL
]レベルとなり、トランジスタN31およびN32はオ
フする。このとき、インバータ35の出力はrHJ レ
ベルとなり、トランジスタN33がオンする。これによ
り、端子iと端子0とが接続されることになる。したが
って、ノーマル動作時には、端子iに与えられるキャリ
信号がトランジスタN33を介してそのまま端子0から
出力される。また、リバース動作時には、端子0に与え
られるキャリ信号がトランジスタN33を介してそのま
ま端子iから出力される。すなわち、キャリ伝播信号P
がすべて「1」となるときには、キャリ信号は4つの加
算器20.を飛越してそのまま出力されることになるの
で、高速化が図られる。
]レベルとなり、トランジスタN31およびN32はオ
フする。このとき、インバータ35の出力はrHJ レ
ベルとなり、トランジスタN33がオンする。これによ
り、端子iと端子0とが接続されることになる。したが
って、ノーマル動作時には、端子iに与えられるキャリ
信号がトランジスタN33を介してそのまま端子0から
出力される。また、リバース動作時には、端子0に与え
られるキャリ信号がトランジスタN33を介してそのま
ま端子iから出力される。すなわち、キャリ伝播信号P
がすべて「1」となるときには、キャリ信号は4つの加
算器20.を飛越してそのまま出力されることになるの
で、高速化が図られる。
このような方式を、キャリ・ルック・アヘッド方式また
は桁上げ先見方式という。
は桁上げ先見方式という。
[発明が解決しようとする課題]
第5図の従来の加算器20においては、キャリ信号がキ
ャリ端子ciおよびCO間の2段のトランスファゲート
を通らなければならないので、キャリ信号の伝播速度が
遅くなり演算速度が遅くなるという問題点があった。
ャリ端子ciおよびCO間の2段のトランスファゲート
を通らなければならないので、キャリ信号の伝播速度が
遅くなり演算速度が遅くなるという問題点があった。
この発明の目的は、キャリ信号が通過するトランスファ
ゲートを1段にすることにより高速動作が可能な加算器
を提供することである。
ゲートを1段にすることにより高速動作が可能な加算器
を提供することである。
[3題を解決するための手段]
この発明に係る加算器は、第1の被加算信号を受ける第
1の入力端子、第2の被加算信号を受ける第2の入力端
子、加算結果を出力するための出力端子、キャリ信号を
受ける第1のキャリ入力端子、キャリ信号を受ける第2
のキャリ入力端子、第1のキャリ入力端子に対応して設
けられる第1のキャリ出力端子、第2のキャリ入力端子
に対一応して設けられる第2のキャリ出力端子、選択信
号を受ける選択端子、第1のゲート手段、第2のゲート
手段、選択手段、演算手段、およびキャリ制御手段を備
えたものである 第1のゲート手段は、第1のキャリ入力端子と第1のキ
ャリ出力端子との間に結合され、選択的に導通状態また
は非導通状態にされる。第2のゲート手段は、第2のキ
ャリ入力端子と第2のキャリ出力端子との間に結合され
、選択的に導通状態または非導通状態にされる。選択手
段は、選択端子に与えられる選択信号に応答して、第1
のキャリ入力端子または第2のキャリ入力端子を選択す
る。演算手段は、第1の被加算信号、第2の被加算信号
、および選択手段により選択されたキャリ入力端子に与
えられるキャリ信号を加算し、その加算結果を出力端子
に与える。
1の入力端子、第2の被加算信号を受ける第2の入力端
子、加算結果を出力するための出力端子、キャリ信号を
受ける第1のキャリ入力端子、キャリ信号を受ける第2
のキャリ入力端子、第1のキャリ入力端子に対応して設
けられる第1のキャリ出力端子、第2のキャリ入力端子
に対一応して設けられる第2のキャリ出力端子、選択信
号を受ける選択端子、第1のゲート手段、第2のゲート
手段、選択手段、演算手段、およびキャリ制御手段を備
えたものである 第1のゲート手段は、第1のキャリ入力端子と第1のキ
ャリ出力端子との間に結合され、選択的に導通状態また
は非導通状態にされる。第2のゲート手段は、第2のキ
ャリ入力端子と第2のキャリ出力端子との間に結合され
、選択的に導通状態または非導通状態にされる。選択手
段は、選択端子に与えられる選択信号に応答して、第1
のキャリ入力端子または第2のキャリ入力端子を選択す
る。演算手段は、第1の被加算信号、第2の被加算信号
、および選択手段により選択されたキャリ入力端子に与
えられるキャリ信号を加算し、その加算結果を出力端子
に与える。
キャリ制御手段は、第1の被加算信号と第2の被加算信
号とが異なる場合に、第1および第2のゲート手段のう
ち、少なくとも選択手段により選択されたキャリ入力端
子に結合される全一ト手段を導通状態にし、第1の被加
算信号と第2の被加算信号とが同じ場合には、第1およ
び第2のキャリ出力端子のうち、少なくとも選択された
キャリ入力端子に対応するキャリ出力端子にその被加算
信号と同じ信号を与える。
号とが異なる場合に、第1および第2のゲート手段のう
ち、少なくとも選択手段により選択されたキャリ入力端
子に結合される全一ト手段を導通状態にし、第1の被加
算信号と第2の被加算信号とが同じ場合には、第1およ
び第2のキャリ出力端子のうち、少なくとも選択された
キャリ入力端子に対応するキャリ出力端子にその被加算
信号と同じ信号を与える。
[作用]
この発明に係る加算器によれば、ノーマル動作時には、
選択信号により第1のキャリ入力端子が選択される。第
1の被加算信号と第2の被加算信号とが異なる場合には
、第1のキャリ入力端子に与えられるキャリ信号が第1
のゲート手段を介して第1のキャリ出力端子から出力さ
れる。第1の被加算信号と第2の被加算信号とが同じ場
合には、第1の被加算信号または第2の被加算信号と同
じ信号が第1のキャリ出力端子から出力される。また、
第1の被加算信号、第2の被加算信号および第1のキャ
リ入力端子に与えられるキャリ信号が加算され、その加
算結果が出力端子から出力される。
選択信号により第1のキャリ入力端子が選択される。第
1の被加算信号と第2の被加算信号とが異なる場合には
、第1のキャリ入力端子に与えられるキャリ信号が第1
のゲート手段を介して第1のキャリ出力端子から出力さ
れる。第1の被加算信号と第2の被加算信号とが同じ場
合には、第1の被加算信号または第2の被加算信号と同
じ信号が第1のキャリ出力端子から出力される。また、
第1の被加算信号、第2の被加算信号および第1のキャ
リ入力端子に与えられるキャリ信号が加算され、その加
算結果が出力端子から出力される。
一方、リバース動作時には、選択信号により第2のキャ
リ入力端子が選択される。第1の被加算信号と第2の被
加算信号とが異なる場合には、第2のキャリ入力端子に
与えられるキャリ信号が第2のゲート手段を介して第2
のキャリ出力端子から出力される。第1の被加算信号と
第2の被加算信号とが同じ場合には、第1の被加算信号
または第2の被加算信号と同じ信号が第2のキャリ出力
端子から出力される。また、第1の被加算信号、第2の
被加算信号および第2のキャリ入力端子に与えられるキ
ャリ信号が加算され、その加算結果が出力端子から出力
される。
リ入力端子が選択される。第1の被加算信号と第2の被
加算信号とが異なる場合には、第2のキャリ入力端子に
与えられるキャリ信号が第2のゲート手段を介して第2
のキャリ出力端子から出力される。第1の被加算信号と
第2の被加算信号とが同じ場合には、第1の被加算信号
または第2の被加算信号と同じ信号が第2のキャリ出力
端子から出力される。また、第1の被加算信号、第2の
被加算信号および第2のキャリ入力端子に与えられるキ
ャリ信号が加算され、その加算結果が出力端子から出力
される。
このように、ノーマル動作時においてもリバース動作時
においても、キャリ信号は1段のゲート手段を通ること
になる。
においても、キャリ信号は1段のゲート手段を通ること
になる。
[実施例]
以下、この発明の一実施例を図面を用いて説明する。
第1図は、この発明の一実施例による加算器の構成を示
す回路図である。第1図に示される加算器10は、Ex
ORゲート1,2、インバータ3、マルチプレクサ4、
NチャネルMOSトランジスタN1〜N4、およびPチ
ャネルMO6I−ランジスタP1〜P4を含む。トラン
ジスタNl、PL、トランジスタN2.P2、トランジ
スタN3.P3、トランジスタN4.P4がそれぞれト
ランスファゲートT1、トランスファゲートT2、トラ
ンスファゲートT3、トランスファゲートT4を構成し
ている。
す回路図である。第1図に示される加算器10は、Ex
ORゲート1,2、インバータ3、マルチプレクサ4、
NチャネルMOSトランジスタN1〜N4、およびPチ
ャネルMO6I−ランジスタP1〜P4を含む。トラン
ジスタNl、PL、トランジスタN2.P2、トランジ
スタN3.P3、トランジスタN4.P4がそれぞれト
ランスファゲートT1、トランスファゲートT2、トラ
ンスファゲートT3、トランスファゲートT4を構成し
ている。
入力端子aには被加算信号である入力信号Aが与えられ
、入力信号すには被加算信号である入力信号Bが与えら
れる。制御端子mには制御信号Mが与えられる。第1の
キャリ入力端子cioにはキャリ信号C10が与えられ
、第2のキャリ入力端子C1,にはキャリ信号CI、が
与えられる。
、入力信号すには被加算信号である入力信号Bが与えら
れる。制御端子mには制御信号Mが与えられる。第1の
キャリ入力端子cioにはキャリ信号C10が与えられ
、第2のキャリ入力端子C1,にはキャリ信号CI、が
与えられる。
和出力端子Sから和出力信号Sが出力され、キャリ伝播
端子pからキャリ伝播信号Pが出力される。
端子pからキャリ伝播信号Pが出力される。
第1のキャリ出力端子CO0からキャリ信号CO0が出
力され、第2のキャリ出力端子COtからキャリ信号C
O0が出力される。
力され、第2のキャリ出力端子COtからキャリ信号C
O0が出力される。
ExORゲート1の一方の入力端子は入力端子aに接続
され、他方の入力端子は入力端子すに接続されている。
され、他方の入力端子は入力端子すに接続されている。
入力端子すは、トランスファゲートT1を介して第1の
キャリ出力端子co、)に接続され、かつ、トランスフ
ァゲートT4を介して第2のキャリ出力端子CO,に接
続されている。
キャリ出力端子co、)に接続され、かつ、トランスフ
ァゲートT4を介して第2のキャリ出力端子CO,に接
続されている。
また、第1のキャリ入力端子ci0はトランスファゲー
トT2を介して第1のキャリ出力端子c。
トT2を介して第1のキャリ出力端子c。
。に接続されている。第2のキャリ入力端子ci、はト
ランスファゲートT3を介して第2のキャリ出力端子C
OIに接続されている。マルチプレクサ4の一方の入力
端子は第1のキャリ入力端子cioに接続され、他方の
入力端子は第2のキャリ入力端子C1,に接続されてい
る。マルチプレクサ4の制御端子は制御端子mに接続さ
れている゛。
ランスファゲートT3を介して第2のキャリ出力端子C
OIに接続されている。マルチプレクサ4の一方の入力
端子は第1のキャリ入力端子cioに接続され、他方の
入力端子は第2のキャリ入力端子C1,に接続されてい
る。マルチプレクサ4の制御端子は制御端子mに接続さ
れている゛。
ExORゲート2の一方の入力端子はExORゲート1
の出力端子に接続され、他方の入力端子はマルチプレク
サ4の出力端子に接続されている。
の出力端子に接続され、他方の入力端子はマルチプレク
サ4の出力端子に接続されている。
ExORゲート2の出力端子は出力端子Sに接続されて
いる。一方、ExORゲート1の出力端子はキャリ伝播
端子pに接続されている。また、ExORゲート1の出
力端子は、トランジスタP1゜N2.N3.P4のゲー
トに接続され、かつ、インバータ3を介してトランジス
タNl、 P2. P3、N4のゲートに接続され
ている。
いる。一方、ExORゲート1の出力端子はキャリ伝播
端子pに接続されている。また、ExORゲート1の出
力端子は、トランジスタP1゜N2.N3.P4のゲー
トに接続され、かつ、インバータ3を介してトランジス
タNl、 P2. P3、N4のゲートに接続され
ている。
第1図に含まれるマルチプレクサ4の具体的な回路図を
第2図に示す。マルチプレクサ4は、NチャネルMOS
トランジスタN5とPチャネルMOSトランジスタP5
とからなるトランスファゲートT5、NチャネルMOS
トランジスタN6とPチャネルMOSトランジスタP6
とからなるトランスファゲートT6、およびインバータ
41を含む。第1のキャリ入力端子cioに接続される
第1の入力端子10はトランスファゲートT5を介して
出力端子0に接続されている。第2のキャリ入力端子c
i+に接続される第2の入力端子11はトランスファゲ
ートT6を介して出力端子0に接続されている。制御信
号Mが与えられる制御端子mは、トランジスタP5およ
びN6のゲートに接続され、かつ、インバータ41を介
してトランジスタN5およびP6のゲートに接続されて
いる。制御信号MがrLJレベルのときには、トランス
ファゲートT5がオンし、第1の入力端子1゜に与えら
れるキャリ信号CIoがトランスファゲートT5を介し
て出力端子0に伝達される。制御信号MがrHJレベル
のときには、トランスファゲートT6がオンし、第2の
入力端子ci、に与えられるキャリ信号C■1がトラン
スファゲートT6を介して出力端子0に伝達される。
第2図に示す。マルチプレクサ4は、NチャネルMOS
トランジスタN5とPチャネルMOSトランジスタP5
とからなるトランスファゲートT5、NチャネルMOS
トランジスタN6とPチャネルMOSトランジスタP6
とからなるトランスファゲートT6、およびインバータ
41を含む。第1のキャリ入力端子cioに接続される
第1の入力端子10はトランスファゲートT5を介して
出力端子0に接続されている。第2のキャリ入力端子c
i+に接続される第2の入力端子11はトランスファゲ
ートT6を介して出力端子0に接続されている。制御信
号Mが与えられる制御端子mは、トランジスタP5およ
びN6のゲートに接続され、かつ、インバータ41を介
してトランジスタN5およびP6のゲートに接続されて
いる。制御信号MがrLJレベルのときには、トランス
ファゲートT5がオンし、第1の入力端子1゜に与えら
れるキャリ信号CIoがトランスファゲートT5を介し
て出力端子0に伝達される。制御信号MがrHJレベル
のときには、トランスファゲートT6がオンし、第2の
入力端子ci、に与えられるキャリ信号C■1がトラン
スファゲートT6を介して出力端子0に伝達される。
次に、表3および表4を参照しながら第1図の表3
表4
表3は加算器10のノーマル動作時の真理値表であり、
表4は加算器10のリバース動作時の真理値表である。
表4は加算器10のリバース動作時の真理値表である。
ノーマル動作時には、制御信号Mは「0」に固定される
。また、ノーマル動作時には、第1のキャリ入力端子C
1oにキャリ信号CIoが入力され、第1のキャリ出力
端子CO(、からキャリ信号COoが出力される。逆に
、リバース動作時には、制御信号Mは「1」に固定され
る。
。また、ノーマル動作時には、第1のキャリ入力端子C
1oにキャリ信号CIoが入力され、第1のキャリ出力
端子CO(、からキャリ信号COoが出力される。逆に
、リバース動作時には、制御信号Mは「1」に固定され
る。
また、リバース動作時には、第2のキャリ入力端子ci
1にキャリ信号CI、が入力され、第2のキャリ出力端
子CO,からキャリ信号CO4が出力される。
1にキャリ信号CI、が入力され、第2のキャリ出力端
子CO,からキャリ信号CO4が出力される。
表3に示すように、入力信号AおよびBが共に「0」の
ときは、入力されるキャリ信号CIoに関係なく、出力
されるキャリ信号COoは「0」となる。したがって、
入力信号AまたはBがキャリ信号COoとして出力され
る。入力信号AおよびBが共に「1」のときは、入力さ
れるキャリ信号CIoに関係なく、出力されるキャリ信
号CO8は「1」となる。したがって、入力信号Aまた
はBがキャリ信号COoとして出力される。入力信号A
およびBの和が「1」のとき、すなわち入力信号Aおよ
びBのいずれか一方が「1」であり他方が「0」である
ときには、キャリ信号CI0が「1」ならばキャリ信号
COoも「1」となり、キャリ信号CIoが「0」なら
ばキャリ信号CO8も「0」となる。したがって、キャ
リ信号CI。がキャリ信号COoとしてそのまま出力さ
れる。
ときは、入力されるキャリ信号CIoに関係なく、出力
されるキャリ信号COoは「0」となる。したがって、
入力信号AまたはBがキャリ信号COoとして出力され
る。入力信号AおよびBが共に「1」のときは、入力さ
れるキャリ信号CIoに関係なく、出力されるキャリ信
号CO8は「1」となる。したがって、入力信号Aまた
はBがキャリ信号COoとして出力される。入力信号A
およびBの和が「1」のとき、すなわち入力信号Aおよ
びBのいずれか一方が「1」であり他方が「0」である
ときには、キャリ信号CI0が「1」ならばキャリ信号
COoも「1」となり、キャリ信号CIoが「0」なら
ばキャリ信号CO8も「0」となる。したがって、キャ
リ信号CI。がキャリ信号COoとしてそのまま出力さ
れる。
同様にリバース動作時には、表4に示すように、入力信
号AおよびBが共に「0」のときは、入力信号Aまたは
Bがキャリ信号CO5として出力される。入力信号Aお
よびBが共に「1」のときも、入力信号AまたはBがキ
ャリ信号CO4として出力される。入力信号AおよびB
の和が「1」のときは、キャリ信号CI、がそのままキ
ャリ信号CO4として出力される。
号AおよびBが共に「0」のときは、入力信号Aまたは
Bがキャリ信号CO5として出力される。入力信号Aお
よびBが共に「1」のときも、入力信号AまたはBがキ
ャリ信号CO4として出力される。入力信号AおよびB
の和が「1」のときは、キャリ信号CI、がそのままキ
ャリ信号CO4として出力される。
第1図において、ノーマル動作時には、制御端子mに与
えられる制御信号MはrLJレベルであるので、マルチ
プレクサ4は第1のキャリ入力端子cioに与えられる
キャリ信号CIoを選択しExORゲート2に与える。
えられる制御信号MはrLJレベルであるので、マルチ
プレクサ4は第1のキャリ入力端子cioに与えられる
キャリ信号CIoを選択しExORゲート2に与える。
入力信号AおよびBが共に「0」のとき、ExORゲー
ト1の出力はrLJレベルとなる。したがって、キャリ
伝播信号PはrOJとなる。また、トランスファゲート
T1およびT4がオンし、トランスファゲートT2およ
びT3がオフする。その結果、入力信号Bがトランスフ
ァゲートT1を介して第1のキャリ出力端子coOから
出力されるとともに、トランスファゲートT4を介して
第2のキャリ出力端子CO,から出力される。したがっ
て、キャリ信号COoは「0」となる。このとき、Ex
ORゲート2の一方の入力端子にはExORゲート1か
らのrLJレベルの出力が与えられ、他方の入力端子に
はマルチプレクサ4を介してキャリ信号CI。が与えら
れる。したがって、キャリ信号Cl。
ト1の出力はrLJレベルとなる。したがって、キャリ
伝播信号PはrOJとなる。また、トランスファゲート
T1およびT4がオンし、トランスファゲートT2およ
びT3がオフする。その結果、入力信号Bがトランスフ
ァゲートT1を介して第1のキャリ出力端子coOから
出力されるとともに、トランスファゲートT4を介して
第2のキャリ出力端子CO,から出力される。したがっ
て、キャリ信号COoは「0」となる。このとき、Ex
ORゲート2の一方の入力端子にはExORゲート1か
らのrLJレベルの出力が与えられ、他方の入力端子に
はマルチプレクサ4を介してキャリ信号CI。が与えら
れる。したがって、キャリ信号Cl。
が「0」のときには和出力信号Sは「0」となり、キャ
リ信号CIoが「1」のときには和出力信号Sは「1」
となる。
リ信号CIoが「1」のときには和出力信号Sは「1」
となる。
入力信号AおよびBが共に「1」のときにも同様に、E
xORゲート1の出力はrLJレベルとなる。したがっ
て、キャリ伝播信号Pは「0」となる。また、同様に、
トランスファゲートT1およびT4がオンし、トランス
ファゲートT2およびT3がオフする。その結果、入力
信号BがトランスファゲートT1を介して第1のキャリ
出力端子Cooから出力されるとともに、トランスファ
ゲートT4を介して第2のキャリ出力端子COIから出
力される。したがって、キャリ信号CO8は「1」とな
る。このとき、ExORゲート2の一方の入力端子には
ExORゲート1からのrLJレベルの出力が与えられ
、他方の入力端子にはマルチプレクサ4を介してキャリ
信号CIoが与えられる。したがって、キャリ信号CI
oが「0」のときには和出力信号Sは「0」となり、キ
ャリ信号CIoが「1」のときには和出力信号Sは「1
」となる。
xORゲート1の出力はrLJレベルとなる。したがっ
て、キャリ伝播信号Pは「0」となる。また、同様に、
トランスファゲートT1およびT4がオンし、トランス
ファゲートT2およびT3がオフする。その結果、入力
信号BがトランスファゲートT1を介して第1のキャリ
出力端子Cooから出力されるとともに、トランスファ
ゲートT4を介して第2のキャリ出力端子COIから出
力される。したがって、キャリ信号CO8は「1」とな
る。このとき、ExORゲート2の一方の入力端子には
ExORゲート1からのrLJレベルの出力が与えられ
、他方の入力端子にはマルチプレクサ4を介してキャリ
信号CIoが与えられる。したがって、キャリ信号CI
oが「0」のときには和出力信号Sは「0」となり、キ
ャリ信号CIoが「1」のときには和出力信号Sは「1
」となる。
入力信号AおよびBのいずれか一方が「0」であり他方
が「1」であるときには、ExORゲート1の出力はr
HJレベルとなる。したがって、キャリ伝播信号Pは「
1」となる。また、トランスフアゲートT2およびT3
がオンし、トランスファゲートT1およびT4がオフす
る。その結果、第1のキャリ入力端子cioに与えられ
るキャリ信号C1oはトランスファゲートT2を介して
第1のキャリ出力端子coOに伝達され、キャリ信号C
Ooとして出力される。このとき、ExORゲート2の
一方の入力端子にはExORゲート1からの「H」レベ
ルの出力が与えられ、他方の入力端子にはマルチプレク
サ4を介してキャリ信号CI。が与えられる。したがっ
て、キャリ信号CI0が「0」のときには和出力信号S
は「1」となり、キャリ信号CI。が「1」のときには
和出力信号Sは「0」となる。
が「1」であるときには、ExORゲート1の出力はr
HJレベルとなる。したがって、キャリ伝播信号Pは「
1」となる。また、トランスフアゲートT2およびT3
がオンし、トランスファゲートT1およびT4がオフす
る。その結果、第1のキャリ入力端子cioに与えられ
るキャリ信号C1oはトランスファゲートT2を介して
第1のキャリ出力端子coOに伝達され、キャリ信号C
Ooとして出力される。このとき、ExORゲート2の
一方の入力端子にはExORゲート1からの「H」レベ
ルの出力が与えられ、他方の入力端子にはマルチプレク
サ4を介してキャリ信号CI。が与えられる。したがっ
て、キャリ信号CI0が「0」のときには和出力信号S
は「1」となり、キャリ信号CI。が「1」のときには
和出力信号Sは「0」となる。
リバース動作時には、制御端子mに与えられる制御信号
MはrHJレベルであるので、マルチプレクサ4は第2
のキャリ入力端子ciIに与えられるキャリ信号CI、
を選択してExORゲート2に与える。入力信号Aおよ
びBが共に「0」のときには、ノーマル動作時と同様に
、キャリ伝播信号Pが「0」となり、また、トランスフ
ァゲートT1およびT4がオンしトランスファゲートT
2およびT3がオフする。その結果、入力信号Bがトラ
ンスファゲートT4を介して第2のキャリ出力端子co
、からキャリ信号CO4として出力される。したがって
、キャリ信号CO1は「0」となる。このとき、ExO
Rゲート2の一方の入力端子にはExORゲート1から
のrLJレベルの出力が与えられ、他方の入力端子には
マルチプレクサ4を介してキャリ信号CI、が与えられ
る。
MはrHJレベルであるので、マルチプレクサ4は第2
のキャリ入力端子ciIに与えられるキャリ信号CI、
を選択してExORゲート2に与える。入力信号Aおよ
びBが共に「0」のときには、ノーマル動作時と同様に
、キャリ伝播信号Pが「0」となり、また、トランスフ
ァゲートT1およびT4がオンしトランスファゲートT
2およびT3がオフする。その結果、入力信号Bがトラ
ンスファゲートT4を介して第2のキャリ出力端子co
、からキャリ信号CO4として出力される。したがって
、キャリ信号CO1は「0」となる。このとき、ExO
Rゲート2の一方の入力端子にはExORゲート1から
のrLJレベルの出力が与えられ、他方の入力端子には
マルチプレクサ4を介してキャリ信号CI、が与えられ
る。
したがって、キャリ信号CI、がrOJのときには和出
力信号Sは「0」となり、キャリ信号C11が「1」の
ときには和出力信号Sは「1」となる。
力信号Sは「0」となり、キャリ信号C11が「1」の
ときには和出力信号Sは「1」となる。
入力信号AおよびBが共に「1」のときにも同様に、キ
ャリ伝播信号Pは「0」となり、また、トランスファゲ
ートT1およびT4がオンしトランスファゲートT2お
よびT3がオフする。その結果、入力信号Bがトランス
ファゲートT4を介して第2のキャリ出力端子CO,か
らキャリ信号CO4として出力される。したがって、キ
ャリ信号CO4は「1」となる。このとき、キャリ信号
CI、が「0」のときには和出力信号Sは「0」となり
、キャリ信号CI、が「1」のときには和出力信号Sは
「1」となる。
ャリ伝播信号Pは「0」となり、また、トランスファゲ
ートT1およびT4がオンしトランスファゲートT2お
よびT3がオフする。その結果、入力信号Bがトランス
ファゲートT4を介して第2のキャリ出力端子CO,か
らキャリ信号CO4として出力される。したがって、キ
ャリ信号CO4は「1」となる。このとき、キャリ信号
CI、が「0」のときには和出力信号Sは「0」となり
、キャリ信号CI、が「1」のときには和出力信号Sは
「1」となる。
入力信号AおよびBのいずれか一方がrOJであり他方
が「1」であるときには、ノーマル動作時と同様に、キ
ャリ伝播信号Pは「1」となり、また、トランスファゲ
ートT2およびT3がオンしトランスファゲートT1お
よびT4がオフする。
が「1」であるときには、ノーマル動作時と同様に、キ
ャリ伝播信号Pは「1」となり、また、トランスファゲ
ートT2およびT3がオンしトランスファゲートT1お
よびT4がオフする。
その結果、第2のキャリ入力端子ci、に与えられるキ
ャリ信号CI、がトランスファゲートT3を介して第2
のキャリ出力端子Co、に伝達され、キャリ信号CO2
として出力される。このとき、キャリ信号CI、が「0
」のときには和出力信号Sは「1」となり、キャリ信号
CI、が「1」のときには和出力信号Sは「0」となる
。
ャリ信号CI、がトランスファゲートT3を介して第2
のキャリ出力端子Co、に伝達され、キャリ信号CO2
として出力される。このとき、キャリ信号CI、が「0
」のときには和出力信号Sは「1」となり、キャリ信号
CI、が「1」のときには和出力信号Sは「0」となる
。
このように、ノーマル動作時には、第1のキャリ入力端
子cioに与えられるキャリ信号CI。
子cioに与えられるキャリ信号CI。
が1段のトランスファゲートを介して第1のキャリ出力
端子COQに伝達され、キャリ信号CO8として出力さ
れる。また、リバース動作時には、第2のキャリ入力端
子C1,に与えられるキャリ信号CI、が1段のトラン
スファゲートを介して第2のキャリ出力端子COIに伝
達され、キャリ信号CO4として出力される。したがっ
て、キャリ信号の伝播速度が高速化され、演算速度の高
速化が図られる。
端子COQに伝達され、キャリ信号CO8として出力さ
れる。また、リバース動作時には、第2のキャリ入力端
子C1,に与えられるキャリ信号CI、が1段のトラン
スファゲートを介して第2のキャリ出力端子COIに伝
達され、キャリ信号CO4として出力される。したがっ
て、キャリ信号の伝播速度が高速化され、演算速度の高
速化が図られる。
第3図は、第1図の加算器を用いて構成された4ビツト
のキャリ・ルック・アヘッド方式の加算回路を示す図で
ある。
のキャリ・ルック・アヘッド方式の加算回路を示す図で
ある。
第3図の加算回路は、4つの加算器10kから構成され
る。ここでkは0〜3の整数である。1桁目の加算器1
00の第1のキャリ入力端子ci。は接地されていると
ともにインバータ9を介してマルチプレクサ5bの第2
の入力端子X、に接続されている。各加算器10o 、
10+ 、102の第1のキャリ出力端子COQは次桁
の加算器1O+、1O□、10.の第1のキャリ入力端
子C10に接続されている。4桁目の加算器10.の第
1のキャリ出力端子COoはインバータ8を介してマル
チプレクサ5bの第1の入力端子X。に接続されている
。一方、4桁目の加算器10.の第2のキャリ入力端子
C11は接地されているとともにインバータ7を介して
マルチプレクサ5aの第2の入力端子X、に接続されて
いる。各加算器103,102,101の第2のキャリ
出力端子CO,はそれぞれ下位の桁の加算器10□、1
01.100の第2のキャリ入力端子C1,に接続され
ている。1桁目の加算器10゜の第2のキャリ出力端子
COIはインバータ6を介してマルチプレクサ5aの第
1の入力端子x0に接続されている。各加算器10.の
キャリ伝播端子pはNANDゲート12の入力端子に接
続されている。
る。ここでkは0〜3の整数である。1桁目の加算器1
00の第1のキャリ入力端子ci。は接地されていると
ともにインバータ9を介してマルチプレクサ5bの第2
の入力端子X、に接続されている。各加算器10o 、
10+ 、102の第1のキャリ出力端子COQは次桁
の加算器1O+、1O□、10.の第1のキャリ入力端
子C10に接続されている。4桁目の加算器10.の第
1のキャリ出力端子COoはインバータ8を介してマル
チプレクサ5bの第1の入力端子X。に接続されている
。一方、4桁目の加算器10.の第2のキャリ入力端子
C11は接地されているとともにインバータ7を介して
マルチプレクサ5aの第2の入力端子X、に接続されて
いる。各加算器103,102,101の第2のキャリ
出力端子CO,はそれぞれ下位の桁の加算器10□、1
01.100の第2のキャリ入力端子C1,に接続され
ている。1桁目の加算器10゜の第2のキャリ出力端子
COIはインバータ6を介してマルチプレクサ5aの第
1の入力端子x0に接続されている。各加算器10.の
キャリ伝播端子pはNANDゲート12の入力端子に接
続されている。
NANDゲート12の出力はマルチプレクサ5aおよび
5bの制御端子τに与えられるとともにインバータ11
を介してマルチプレクサ5aおよび5bの制御端子Cに
与えられる。
5bの制御端子τに与えられるとともにインバータ11
を介してマルチプレクサ5aおよび5bの制御端子Cに
与えられる。
各加算器10.の入力端子a、bにはそれぞれ入力信号
A (k) 、 B (k)が与えられる。また、各
加算器10にの制御端子mには制御信号Mが与えられる
。各加算器10.の和出力端子Sからはそれぞれ和出力
信号S (k)が出力される。各加算器10.のキャリ
伝播端子pからはそれぞれキャリ伝播信号Pが出力され
る。
A (k) 、 B (k)が与えられる。また、各
加算器10にの制御端子mには制御信号Mが与えられる
。各加算器10.の和出力端子Sからはそれぞれ和出力
信号S (k)が出力される。各加算器10.のキャリ
伝播端子pからはそれぞれキャリ伝播信号Pが出力され
る。
第3図に含まれるマルチプレクサ5aおよび5bの具体
的な回路構成を第4図に示す。このマルチプレクサは、
NチャネルMOSトランジスタN7とPチャネルMO9
)ランジスタP7とからなるトランスファゲートT7お
よびNチャネルMOSトランジスタN8とPチャネルM
OSトランジスタP8とからなるトランスファゲートT
8を含む。第1の入力端子X0はトランスファゲートT
7を介して出力端子yに接続されている。第2の入力端
子X、はトランスファゲートT8を介して出力端子yに
接続されている。制御端子CはトランスファゲートP7
およびN8のゲートに接続されている。制御端子τはト
ランジスタN7およびP8のゲートに接続されている。
的な回路構成を第4図に示す。このマルチプレクサは、
NチャネルMOSトランジスタN7とPチャネルMO9
)ランジスタP7とからなるトランスファゲートT7お
よびNチャネルMOSトランジスタN8とPチャネルM
OSトランジスタP8とからなるトランスファゲートT
8を含む。第1の入力端子X0はトランスファゲートT
7を介して出力端子yに接続されている。第2の入力端
子X、はトランスファゲートT8を介して出力端子yに
接続されている。制御端子CはトランスファゲートP7
およびN8のゲートに接続されている。制御端子τはト
ランジスタN7およびP8のゲートに接続されている。
制御端子Cに与えられる信号がrLJレベルでありかつ
制御端子丁に与えられる信号がrHJレベルであるとき
には、トランスファゲートT7がオンし、第1の入力端
子X。に与えられる信号がトランスファゲートT7を介
して出力端子yに伝達される。制御端子Cに与えられる
信号がrHJレベルでありかつ制御端子τに与えられる
信号がrLJレベルであるときには、トランスファゲー
トT8がオンし、第2の入力端子X、に与えられる信号
がトランスファゲートT8を介して出力端子yに伝達さ
れる。
制御端子丁に与えられる信号がrHJレベルであるとき
には、トランスファゲートT7がオンし、第1の入力端
子X。に与えられる信号がトランスファゲートT7を介
して出力端子yに伝達される。制御端子Cに与えられる
信号がrHJレベルでありかつ制御端子τに与えられる
信号がrLJレベルであるときには、トランスファゲー
トT8がオンし、第2の入力端子X、に与えられる信号
がトランスファゲートT8を介して出力端子yに伝達さ
れる。
次に、第3図の加算回路の動作について説明する。各加
算器10kにおいて、2つの入力信号A(k)およびB
(k)が互いに異なる場合にはキャリ伝播信号Pは「
1」となる。4つの加算器10、から出力されるキャリ
伝播信号Pのうちいずれかが「0」であるときには、N
ANDゲート12の出力はrHJレベルとなる。これに
より、マルチプレクサ5aおよび5bは、第1の入力端
子x0に与えられる信号を出力端子yから導出する。
算器10kにおいて、2つの入力信号A(k)およびB
(k)が互いに異なる場合にはキャリ伝播信号Pは「
1」となる。4つの加算器10、から出力されるキャリ
伝播信号Pのうちいずれかが「0」であるときには、N
ANDゲート12の出力はrHJレベルとなる。これに
より、マルチプレクサ5aおよび5bは、第1の入力端
子x0に与えられる信号を出力端子yから導出する。
したがって、マルチプレクサ5bは、4桁目の加算器1
0.の第1のキャリ出力端子Cooから出力される信号
の反転信号を出力する。また、マルチプレクサ5aは、
1桁目の加算器100の第2のキャリ出力端子CO,か
ら出力される信号の反転信号を出力する。
0.の第1のキャリ出力端子Cooから出力される信号
の反転信号を出力する。また、マルチプレクサ5aは、
1桁目の加算器100の第2のキャリ出力端子CO,か
ら出力される信号の反転信号を出力する。
ノーマル動作時には、1桁目の加算器10゜の第1のキ
ャリ出力端子COQからキャリ信号が出力され、2桁目
の加算器101の第1のキャリ入力端子cioに与えら
れる。各加算器10.の第1のキャリ出力端子co(、
から出力されるキャリ信号は順次上位桁の加算器10.
ヤ1の第1のキャリ入力端子ciaに与えられる。4桁
目の加算器103の第1のキャリ出力端子coOから出
力されるキャリ信号は、インバータ8およびマルチプレ
クサ5bを介して出力される。リバース動作時には、4
桁目の加算器10.の第2のキャリ出力端子CO,から
キャリ信号が出力され、3桁目の加算器102の第2の
キャリ入力端子ci、に与えられる。各加算器10にの
第2のキャリ出力端子co、から出力されるキャリ信号
は順次下位桁の加算器Lot−+の第2のキャリ入力端
子C11に与えられる。1桁目の第2のキャリ出力端子
C0、から出力されるキャリ信号はインバータ6および
マルチプレクサ5aを介して出力される。
ャリ出力端子COQからキャリ信号が出力され、2桁目
の加算器101の第1のキャリ入力端子cioに与えら
れる。各加算器10.の第1のキャリ出力端子co(、
から出力されるキャリ信号は順次上位桁の加算器10.
ヤ1の第1のキャリ入力端子ciaに与えられる。4桁
目の加算器103の第1のキャリ出力端子coOから出
力されるキャリ信号は、インバータ8およびマルチプレ
クサ5bを介して出力される。リバース動作時には、4
桁目の加算器10.の第2のキャリ出力端子CO,から
キャリ信号が出力され、3桁目の加算器102の第2の
キャリ入力端子ci、に与えられる。各加算器10にの
第2のキャリ出力端子co、から出力されるキャリ信号
は順次下位桁の加算器Lot−+の第2のキャリ入力端
子C11に与えられる。1桁目の第2のキャリ出力端子
C0、から出力されるキャリ信号はインバータ6および
マルチプレクサ5aを介して出力される。
一方、4つの加算器10kから出力されるキャリ伝播信
号Pがすべて「1」であるときには、NANDゲート1
2の出力はrLJレベルとなる。
号Pがすべて「1」であるときには、NANDゲート1
2の出力はrLJレベルとなる。
これにより、マルチプレクサ5aおよび5bは、第2の
入力端子X、に与えられる信号を出力端子yから導出す
る。したがって、マルチプレクサ5bは、1桁目の加算
器10゜の第1のキャリ入力端子C1oに与えられる信
号の反転信号をそのまま出力する。また、マルチプレク
サ5aは、4桁目の加算器10.の第2のキャリ入力端
子at。
入力端子X、に与えられる信号を出力端子yから導出す
る。したがって、マルチプレクサ5bは、1桁目の加算
器10゜の第1のキャリ入力端子C1oに与えられる信
号の反転信号をそのまま出力する。また、マルチプレク
サ5aは、4桁目の加算器10.の第2のキャリ入力端
子at。
に与えられる信号の反転信号をそのまま出力する。
したがって、ノーマル動作時においても、リバース動作
時においても、キャリ伝播信号Pがすべて「1」のとき
には、キャリ信号は4つの加算器10kを飛越してその
まま出力され、したがって、キャリ信号の伝播速度が高
速化される。
時においても、キャリ伝播信号Pがすべて「1」のとき
には、キャリ信号は4つの加算器10kを飛越してその
まま出力され、したがって、キャリ信号の伝播速度が高
速化される。
このように、第1図の実施例の加算器を用いてキャリ・
ルック・アヘッド方式の加算回路を構成した場合にも、
各加算器においてキャリ信号は1段のトランスファゲー
トしか通らないことになるので、キャリ信号の伝播速度
が高速化され、演算速度の高速化が図られる。
ルック・アヘッド方式の加算回路を構成した場合にも、
各加算器においてキャリ信号は1段のトランスファゲー
トしか通らないことになるので、キャリ信号の伝播速度
が高速化され、演算速度の高速化が図られる。
なお、第1図の実施例においては、トランスファゲート
をCMOSトランスミッションゲートとインバータとに
より構成したが、NチャネルMOSトランジスタよりな
るトランスファゲートその他のゲートを用いてもよい。
をCMOSトランスミッションゲートとインバータとに
より構成したが、NチャネルMOSトランジスタよりな
るトランスファゲートその他のゲートを用いてもよい。
しかしながら、第1図の実施例のように構成した方が、
素子数が少なくなり、動作速度も速くなると思われる。
素子数が少なくなり、動作速度も速くなると思われる。
[発明の効果コ
以上のようにこの発明によれば、通常動作時とリバース
動作時に対応してキャリ信号の経路をそれぞれ設け、各
経路に1段のゲート手段を設けたので、より少ない素子
数で高速動作が可能なビットリバース機能付加算器を得
ることができる。
動作時に対応してキャリ信号の経路をそれぞれ設け、各
経路に1段のゲート手段を設けたので、より少ない素子
数で高速動作が可能なビットリバース機能付加算器を得
ることができる。
第1図はこの発明の一実施例による加算器の構成を示す
回路図である。第2図は第1図の加算器に含まれるマル
チプレクサの構成を示す回路図である。第3図は第1図
の加算器を用いて構成した4ビツトのキャリ・ルック・
アヘッド方式の加算回路を示す図である。第4図は第3
図の加算回路に含まれるマルチプレクサの構成を示す回
路図である。第5図は従来の加算器の構成を示す回路図
である。第6図は第5図の加算器を用いて構成した4ビ
ツトのキャリ・ルック中アヘッド方式の加算回路を示す
図である。 図において、1,2はExORゲート、3はインバータ
、4はマルチプレクサ、T1〜T4はトランスファゲー
ト、a、bは入力端子、mは制御端子、C1oは第1の
キャリ入力端子、C1,は第2のキャリ入力端子、Sは
和出力端子、pはキャリ伝播端子、COQは第1のキャ
リ出力端子、CO,は第2のキャリ出力端子である。 なお、各図中、同一符号は同一または相当部分を示す。 81図 4、:マ;し千)”レクブ 築2図 渠3図 S八 吊4図 、。 萬5図
回路図である。第2図は第1図の加算器に含まれるマル
チプレクサの構成を示す回路図である。第3図は第1図
の加算器を用いて構成した4ビツトのキャリ・ルック・
アヘッド方式の加算回路を示す図である。第4図は第3
図の加算回路に含まれるマルチプレクサの構成を示す回
路図である。第5図は従来の加算器の構成を示す回路図
である。第6図は第5図の加算器を用いて構成した4ビ
ツトのキャリ・ルック中アヘッド方式の加算回路を示す
図である。 図において、1,2はExORゲート、3はインバータ
、4はマルチプレクサ、T1〜T4はトランスファゲー
ト、a、bは入力端子、mは制御端子、C1oは第1の
キャリ入力端子、C1,は第2のキャリ入力端子、Sは
和出力端子、pはキャリ伝播端子、COQは第1のキャ
リ出力端子、CO,は第2のキャリ出力端子である。 なお、各図中、同一符号は同一または相当部分を示す。 81図 4、:マ;し千)”レクブ 築2図 渠3図 S八 吊4図 、。 萬5図
Claims (1)
- 【特許請求の範囲】 第1の被加算信号を受ける第1の入力端子、第2の被加
算信号を受ける第2の入力端子、加算結果を出力するた
めの出力端子、 キャリ信号を受ける第1のキャリ入力端子、キャリ信号
を受ける第2のキャリ入力端子、前記第1のキャリ入力
端子に対応して設けられる第1のキャリ出力端子、 前記第2のキャリ入力端子に対応して設けられる第2の
キャリ出力端子、 選択信号を受ける選択端子、 前記第1のキャリ入力端子と前記第1のキャリ出力端子
との間に結合され、選択的に導通状態または非導通状態
にされる第1のゲート手段、前記第2のキャリ入力端子
と前記第2のキャリ出力端子との間に結合され、選択的
に導通状態または非導通状態にされる第2のゲート手段
、前記選択端子に与えられる選択信号に応答して、前記
第1のキャリ入力端子または前記第2のキャリ入力端子
を選択する選択手段、 前記第1の被加算信号、前記第2の被加算信号、および
前記選択手段により選択されたキャリ入力端子に与えら
れるキャリ信号を加算し、その加算結果を前記出力端子
に与える演算手段、および前記第1の被加算信号と前記
第2の被加算信号とが異なる場合に、前記第1および第
2のゲート手段のうち、少なくとも前記選択手段により
選択されたキャリ入力端子に結合されるゲート手段を導
通状態にし、前記第1の被加算信号と前記第2の被加算
信号とが同じ場合には、前記第1および第2のキャリ出
力端子のうち、少なくとも前記選択されたキャリ入力端
子に対応するキャリ出力端子にその被加算信号と同じ信
号を与えるキャリ制御手段を備えた、加算器。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12441788A JPH0679269B2 (ja) | 1988-05-20 | 1988-05-20 | 加算器 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12441788A JPH0679269B2 (ja) | 1988-05-20 | 1988-05-20 | 加算器 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01293436A true JPH01293436A (ja) | 1989-11-27 |
| JPH0679269B2 JPH0679269B2 (ja) | 1994-10-05 |
Family
ID=14884962
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP12441788A Expired - Lifetime JPH0679269B2 (ja) | 1988-05-20 | 1988-05-20 | 加算器 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0679269B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04230521A (ja) * | 1990-12-29 | 1992-08-19 | Nec Corp | ビット反転演算器 |
| KR100306108B1 (ko) * | 1992-09-04 | 2001-11-30 | 가나이 쓰도무 | 자리수올림선견회로 |
| US6781412B2 (en) | 2001-04-13 | 2004-08-24 | Fujitsu Limited | Logic circuit for fast carry/borrow |
-
1988
- 1988-05-20 JP JP12441788A patent/JPH0679269B2/ja not_active Expired - Lifetime
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04230521A (ja) * | 1990-12-29 | 1992-08-19 | Nec Corp | ビット反転演算器 |
| KR100306108B1 (ko) * | 1992-09-04 | 2001-11-30 | 가나이 쓰도무 | 자리수올림선견회로 |
| US6781412B2 (en) | 2001-04-13 | 2004-08-24 | Fujitsu Limited | Logic circuit for fast carry/borrow |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0679269B2 (ja) | 1994-10-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4953115A (en) | Absolute value calculating circuit having a single adder | |
| GB2172129A (en) | Adder/subtractor | |
| CA1246234A (en) | Circuitry for complementing binary numbers | |
| US4761760A (en) | Digital adder-subtracter with tentative result correction circuit | |
| JPH04230521A (ja) | ビット反転演算器 | |
| US6285300B1 (en) | Apparatus and method for reducing power and noise through reduced switching recording in logic devices | |
| US4831578A (en) | Binary adder | |
| JPS60116034A (ja) | 加算回路 | |
| US7170317B2 (en) | Sum bit generation circuit | |
| JPH01293436A (ja) | 加算器 | |
| US4675838A (en) | Conditional-carry adder for multibit digital computer | |
| JPS61110236A (ja) | マルチビツト・デイジタル加算器 | |
| JPH0160856B2 (ja) | ||
| US4890127A (en) | Signed digit adder circuit | |
| US6711633B2 (en) | 4:2 compressor circuit for use in an arithmetic unit | |
| JPH01228023A (ja) | 全加算器 | |
| Gundi | Implementation of 32 bit Brent Kung Adder using complementary pass transistor logic | |
| US7444366B2 (en) | Faster shift value calculation using modified carry-lookahead adder | |
| JPS648857B2 (ja) | ||
| JP2681968B2 (ja) | 演算処理装置 | |
| JP3540136B2 (ja) | データ分割並列シフタ | |
| JPS60140425A (ja) | キヤリ−回路 | |
| JPH04326617A (ja) | 信号切替回路 | |
| JPH07118630B2 (ja) | 乗算用信号処理回路 | |
| JP3162519B2 (ja) | 算術論理演算回路装置 |