JPH01276242A - 障害検出方式 - Google Patents
障害検出方式Info
- Publication number
- JPH01276242A JPH01276242A JP63105320A JP10532088A JPH01276242A JP H01276242 A JPH01276242 A JP H01276242A JP 63105320 A JP63105320 A JP 63105320A JP 10532088 A JP10532088 A JP 10532088A JP H01276242 A JPH01276242 A JP H01276242A
- Authority
- JP
- Japan
- Prior art keywords
- modulo
- carry
- output
- register
- 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.)
- Pending
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
皮五立1
本発明は障害検出方式に関し、特に乗数と被乗数とから
所要数の部分積を生成し、この部分積を加算することに
より乗数と被乗数との積を得る乗算器の障害検出方式に
関する。
所要数の部分積を生成し、この部分積を加算することに
より乗数と被乗数との積を得る乗算器の障害検出方式に
関する。
良嵐孜韮
従来、演算回路の障害検出方式としては、剰余符号の一
種であり、法を3とするモジュロ3チ工ツク方式が多用
されている。このモジュロ3チ工ツク方式については、
「情報と符号の理論」 (岩波書店刊、常用・原品・今
回共著、1983.1..1)11.212〜215)
に詳細に述べられている。
種であり、法を3とするモジュロ3チ工ツク方式が多用
されている。このモジュロ3チ工ツク方式については、
「情報と符号の理論」 (岩波書店刊、常用・原品・今
回共著、1983.1..1)11.212〜215)
に詳細に述べられている。
たとえば、第3図に示すような並列乗算回路の場合には
、リプルトモジュロ3生成回路65で生成された被乗数
レジスタ1の内容(被乗数)と乗数レジスタ2の内容(
乗数)との乗算結果のモジュロ3と、被乗数モジュロ3
生成回路60で生成された被乗数のモジュロ3と乗数モ
ジュロ3生成回路61で生成された乗数のモジュロ3と
がオペランドモジュロ3生成回路62で乗算されて得ら
れた乗算結果とが比較回路67で比較されることにより
障害が検出されている。
、リプルトモジュロ3生成回路65で生成された被乗数
レジスタ1の内容(被乗数)と乗数レジスタ2の内容(
乗数)との乗算結果のモジュロ3と、被乗数モジュロ3
生成回路60で生成された被乗数のモジュロ3と乗数モ
ジュロ3生成回路61で生成された乗数のモジュロ3と
がオペランドモジュロ3生成回路62で乗算されて得ら
れた乗算結果とが比較回路67で比較されることにより
障害が検出されている。
すなわち、この並列乗算回路においては被乗数レジスタ
1の内容が乗数レジスタ2の内容に応じてブースのエン
コーダ51\55でエンコードされて部分乗数が算出さ
れる。この部分乗数各々はトリー状に配列されたキャリ
ーセーブアダー(C8A)56〜58により加算され、
キャリーとサムとの2つのデータにまとめられる。
1の内容が乗数レジスタ2の内容に応じてブースのエン
コーダ51\55でエンコードされて部分乗数が算出さ
れる。この部分乗数各々はトリー状に配列されたキャリ
ーセーブアダー(C8A)56〜58により加算され、
キャリーとサムとの2つのデータにまとめられる。
キャリーセーブアダー56で得られたキャリーとサムと
はキャリープロパゲートアダー59で加算され、この加
算結果が最終的な乗算結果としてリザルトレジスタ64
に格納される。
はキャリープロパゲートアダー59で加算され、この加
算結果が最終的な乗算結果としてリザルトレジスタ64
に格納される。
ここで、被乗数レジスタ1の内容のモジュロ3は被乗数
モジュロ3生成回路60により生成され、乗数レジスタ
2の内容のモジュロ3は乗数モジュロ3生成回路61に
より生成される。これら被乗数レジスタ1の内容のモジ
ュロ3と乗数レジスタ2の内容のモジュロ3とがオペラ
ンドモジュロ3生成回路62で乗算されてオペランドモ
ジュロ3レジスタ63に格納される。
モジュロ3生成回路60により生成され、乗数レジスタ
2の内容のモジュロ3は乗数モジュロ3生成回路61に
より生成される。これら被乗数レジスタ1の内容のモジ
ュロ3と乗数レジスタ2の内容のモジュロ3とがオペラ
ンドモジュロ3生成回路62で乗算されてオペランドモ
ジュロ3レジスタ63に格納される。
また、キャリープロパゲートアダー59から出力される
乗算結果のモジュロ3はリプルトモジュロ3生成回路6
5で生成されてリプルトモジュロ3レジスタ66に格納
される。
乗算結果のモジュロ3はリプルトモジュロ3生成回路6
5で生成されてリプルトモジュロ3レジスタ66に格納
される。
比較回路67はオペランドモジュロ3レジスタ63に格
納された内容と、リプルトモジュロ3レジスタ66に格
納された内容とを比較し、比較回路67の比較結果によ
りこの並列乗算回路の障害が検出される。
納された内容と、リプルトモジュロ3レジスタ66に格
納された内容とを比較し、比較回路67の比較結果によ
りこの並列乗算回路の障害が検出される。
このような従来の演算回路の障害検出方式では、剰余符
号の一種であり、法を3とするモジュロ3チ工ツク方式
が多用されているので、演算回路およびその演算回路を
制御する制御回路に障害が発生したことを検出すること
はできても、演算回路および制御回路のどちらに障害が
発生したのか、あるいはどの部分に障害が発生したのか
を知ることができないという欠点がある。
号の一種であり、法を3とするモジュロ3チ工ツク方式
が多用されているので、演算回路およびその演算回路を
制御する制御回路に障害が発生したことを検出すること
はできても、演算回路および制御回路のどちらに障害が
発生したのか、あるいはどの部分に障害が発生したのか
を知ることができないという欠点がある。
演算回路が数種数枚のモジュールで構成されている場合
には、どのモジュールに障害が発生したのかを迅速に判
断する必要があるが、上述のような障害検出方式ではど
のモジュールに障害が発生したのかを特定することがで
きないため、とりあえず全モジュールを交換した後に、
あらためてそのモジュールの故障解析を行わねばならず
、どのモジュールに障害が発生したのかを判断するには
時間およびコストがかかるという問題が生ずる。
には、どのモジュールに障害が発生したのかを迅速に判
断する必要があるが、上述のような障害検出方式ではど
のモジュールに障害が発生したのかを特定することがで
きないため、とりあえず全モジュールを交換した後に、
あらためてそのモジュールの故障解析を行わねばならず
、どのモジュールに障害が発生したのかを判断するには
時間およびコストがかかるという問題が生ずる。
九肌立旦ヱ
本発明は上記のような従来のものの欠点を除去すべくな
されたもので、乗算器を構成するモジュールに対する故
障分解能を向上させることができる障害検出方式の提供
を目的とする。
されたもので、乗算器を構成するモジュールに対する故
障分解能を向上させることができる障害検出方式の提供
を目的とする。
1肌立璽羞
本発明による障害検出方式は、複数のモジュールにより
構成され、乗数と被乗数とがら所要数の部分積を生成し
、前記部分積を前記複数のモジュールで加算することに
より前記乗数と前記被乗数との積を得る乗算器の障害検
出方式であって、前記モジュールに入力されるデータか
ら前記モジュールから出力されるデータのモジュロn(
nは正の整数)の予測値を生成する予測値生成手段と、
前記モジュールから出力されるデータの前記モジュロn
を生成するモジュロn生成手段と、前記予測値生成手段
により生成された前記予測値と、前記モジュロn生成手
段により生成された前記モジュロnとを比較する比較手
段とを前記複数のモジュール各々に設け、前記比較手段
の比較結果に応じて前記複数のモジュールのうち障害が
生じたモ・ジュールを特定するようにしたことを特徴と
する。
構成され、乗数と被乗数とがら所要数の部分積を生成し
、前記部分積を前記複数のモジュールで加算することに
より前記乗数と前記被乗数との積を得る乗算器の障害検
出方式であって、前記モジュールに入力されるデータか
ら前記モジュールから出力されるデータのモジュロn(
nは正の整数)の予測値を生成する予測値生成手段と、
前記モジュールから出力されるデータの前記モジュロn
を生成するモジュロn生成手段と、前記予測値生成手段
により生成された前記予測値と、前記モジュロn生成手
段により生成された前記モジュロnとを比較する比較手
段とを前記複数のモジュール各々に設け、前記比較手段
の比較結果に応じて前記複数のモジュールのうち障害が
生じたモ・ジュールを特定するようにしたことを特徴と
する。
K旌ヱ
次に、本発明の一実施例について図面を参照して説明す
る。
る。
第1図は本発明の一実施例の構成を示すブロック図であ
る0図において、本発明の一実施例による乗算器は、被
乗数レジスタ1と、乗数レジスタ2と、ブースのエンコ
ーダ3〜5と、トリー状のキャリーセーブアダー(C3
A)6と、キャリープロパゲートアダー(CPA)7〜
10と、キャリープロバゲートアダ一出カモジュロ3生
成回路(以下出カモジュロ3生成回路とする)11〜1
4と、中間結果モジュロ3生成回路15〜18と、被乗
数モジュロ3生成回路20と、乗数モジュロ3生成回路
21と、オペランドモジュロ3生成回路22と、オペラ
ンドモジュロ3レジスタ23と、キャリープロパゲート
アダ一出カモジュロ3レジスタ(以下出力モジュロ3レ
ジスタとする) (CMR)24へ27と、中間結果
モジュロ3レジスタ(IMR)28〜31と、リプルト
モジュロ3生成回路32と、比較回路33〜37と、エ
ラーインジケータレジスタ38〜41とにより構成され
ている。
る0図において、本発明の一実施例による乗算器は、被
乗数レジスタ1と、乗数レジスタ2と、ブースのエンコ
ーダ3〜5と、トリー状のキャリーセーブアダー(C3
A)6と、キャリープロパゲートアダー(CPA)7〜
10と、キャリープロバゲートアダ一出カモジュロ3生
成回路(以下出カモジュロ3生成回路とする)11〜1
4と、中間結果モジュロ3生成回路15〜18と、被乗
数モジュロ3生成回路20と、乗数モジュロ3生成回路
21と、オペランドモジュロ3生成回路22と、オペラ
ンドモジュロ3レジスタ23と、キャリープロパゲート
アダ一出カモジュロ3レジスタ(以下出力モジュロ3レ
ジスタとする) (CMR)24へ27と、中間結果
モジュロ3レジスタ(IMR)28〜31と、リプルト
モジュロ3生成回路32と、比較回路33〜37と、エ
ラーインジケータレジスタ38〜41とにより構成され
ている。
本発明の一実施例の乗算動作は、第3図に示す従来例の
乗算動作と同様に、エンコーダ3〜5とキャリーセーブ
アダー6とキャリープロパゲートアダー7〜10とによ
り行われ、その処理動作は従来例と同様なので説明は省
略する。以下、障害検出の処理動作について説明する。
乗算動作と同様に、エンコーダ3〜5とキャリーセーブ
アダー6とキャリープロパゲートアダー7〜10とによ
り行われ、その処理動作は従来例と同様なので説明は省
略する。以下、障害検出の処理動作について説明する。
被乗数レジスタ1にセットされた被乗数のモジュロ3は
被乗数モジュロ3生成回路20で生成され、乗数レジス
タ2にセットされた乗数のモジュロ3は乗数モジュロ3
生成回路21で生成される。
被乗数モジュロ3生成回路20で生成され、乗数レジス
タ2にセットされた乗数のモジュロ3は乗数モジュロ3
生成回路21で生成される。
これら被乗数のモジュロ3と乗数のモジュロ3とはオペ
ランドモジュロ3生成回路22で互いに乗算され、その
乗算結果はオペランドのモジュロ3としてオペランドモ
ジ斗口3レジスタ23に格納される。
ランドモジュロ3生成回路22で互いに乗算され、その
乗算結果はオペランドのモジュロ3としてオペランドモ
ジ斗口3レジスタ23に格納される。
また、キャリープロパゲートアダー7〜10から出力さ
れる出力データのモジュロ3は夫々出力モジュロ3生成
回路11〜14で生成されて出力モジュロ3レジスタ2
4〜27に格納される。
れる出力データのモジュロ3は夫々出力モジュロ3生成
回路11〜14で生成されて出力モジュロ3レジスタ2
4〜27に格納される。
このとき、出力モジュロ3レジスタ24〜27夫々に格
納されたキャリー10パゲートアダ−7〜10からの出
力データのモジュロ3は、リプルトモジュロ3生成回路
32において乗算結果のモジュロ3としてまとめられる
。
納されたキャリー10パゲートアダ−7〜10からの出
力データのモジュロ3は、リプルトモジュロ3生成回路
32において乗算結果のモジュロ3としてまとめられる
。
次に、各キャリープロパゲートアダー7〜10への入力
となるキャリーセーブアダー6からのキャリーとサムと
、隣接するキャリープロパゲートアダー7〜10間で伝
搬されるキャリーとから推測されるキャリープロパゲー
トアダー7〜10からの出力データのモジュロ3(以下
中間結果モジュロ3とする)が中間結果モジュロ3生成
回路15〜18で生成されて中間結果モジュロ3レジス
タ28〜31に夫々格納される。
となるキャリーセーブアダー6からのキャリーとサムと
、隣接するキャリープロパゲートアダー7〜10間で伝
搬されるキャリーとから推測されるキャリープロパゲー
トアダー7〜10からの出力データのモジュロ3(以下
中間結果モジュロ3とする)が中間結果モジュロ3生成
回路15〜18で生成されて中間結果モジュロ3レジス
タ28〜31に夫々格納される。
この乗算器の乗算結果における障害検出は、オペランド
モジュロ3レジスタ23に格納されたオペランドのモジ
ュロ3と、リプルトモジュロ3生成回1%32でまとめ
られた乗算結果のモジュロ3とを比較回路33で比較す
ることにより行われる。
モジュロ3レジスタ23に格納されたオペランドのモジ
ュロ3と、リプルトモジュロ3生成回1%32でまとめ
られた乗算結果のモジュロ3とを比較回路33で比較す
ることにより行われる。
また、各キャリープロパゲートアダー7〜10における
障害検出は、出力モジュロ3レジスタ24〜27に夫々
格納されたキャリープロパゲートアダー7〜10からの
出力データのモジュロ3と、中間結果モジュロ3レジス
タ28〜31に夫々格納された中間結果モジュロ3とを
比較口#134〜37で比較することにより行われる。
障害検出は、出力モジュロ3レジスタ24〜27に夫々
格納されたキャリープロパゲートアダー7〜10からの
出力データのモジュロ3と、中間結果モジュロ3レジス
タ28〜31に夫々格納された中間結果モジュロ3とを
比較口#134〜37で比較することにより行われる。
これら比較回路34〜37の比較結果は夫々エラーイン
ジケータレジスタ38〜41に格納される。
ジケータレジスタ38〜41に格納される。
比較回路33〜37での比較動作により障害が検出され
たときには、エラーインジケータレジスタ38〜41を
参照する。これらエラーインジケータレジスタ38〜4
1の内容が障害検出を示していない場合には、キャリー
プロパゲートアダー7〜10以外のモジュールで障害が
発生していることになり、またエラーインジケータレジ
スタ38〜41の内容が障害検出を示している場合には
、そのエラーインジケータレジスタ38〜41に対応す
るキャリープロパゲートアダー7〜10に障害が発生し
ていることになる。
たときには、エラーインジケータレジスタ38〜41を
参照する。これらエラーインジケータレジスタ38〜4
1の内容が障害検出を示していない場合には、キャリー
プロパゲートアダー7〜10以外のモジュールで障害が
発生していることになり、またエラーインジケータレジ
スタ38〜41の内容が障害検出を示している場合には
、そのエラーインジケータレジスタ38〜41に対応す
るキャリープロパゲートアダー7〜10に障害が発生し
ていることになる。
第2図は本発明の一実施例による演算処理の具体例を示
す図である。この第2図を用いて本発明の一実施例の演
算処理および障害検出について説明する。
す図である。この第2図を用いて本発明の一実施例の演
算処理および障害検出について説明する。
いま、被乗数レジスタ1に“1.0101010101
01010″がセットされ、乗数レジスタ2に“0.1
01010″がセットされた場合には、エンコーダ3に
おいては“1.010101010101010”とo
、 io”との部分積が行われ、その乗算結果“1.1
010101010101010”がキャリーセーブア
ダー6に出力される。
01010″がセットされ、乗数レジスタ2に“0.1
01010″がセットされた場合には、エンコーダ3に
おいては“1.010101010101010”とo
、 io”との部分積が行われ、その乗算結果“1.1
010101010101010”がキャリーセーブア
ダー6に出力される。
また、エンコーダ4においては“1.01010101
0101010″と“0.0010”との部分積が行わ
れ、その乗算結果” 1.1110101010101
01010″がキャリーセーブアダー6に出力される。
0101010″と“0.0010”との部分積が行わ
れ、その乗算結果” 1.1110101010101
01010″がキャリーセーブアダー6に出力される。
さらに、エンコーダ5においては” 1.010101
010101010 ” ト”0.00(1010”
トノ部分積カ行われ、その乗算結果“1.111110
10101010101010″がキャリーセーブアダ
ー6に出力される。
010101010 ” ト”0.00(1010”
トノ部分積カ行われ、その乗算結果“1.111110
10101010101010″がキャリーセーブアダ
ー6に出力される。
キャリーセーブアダー6ではエンコーダ3からの乗算結
果″1.1010101010101010”と、エン
コーダ4からの乗算結果” 1.1110101010
10101010″と、エンコーダ5からの乗算結果“
1.11111010101010ioio1o”とを
加算し、その加算結果としてのキャリー″(1)1.1
101010101010101000″とサム“1,
10111010101010100010″とをキャ
リープロパゲートアダー7〜10に出力する。
果″1.1010101010101010”と、エン
コーダ4からの乗算結果” 1.1110101010
10101010″と、エンコーダ5からの乗算結果“
1.11111010101010ioio1o”とを
加算し、その加算結果としてのキャリー″(1)1.1
101010101010101000″とサム“1,
10111010101010100010″とをキャ
リープロパゲートアダー7〜10に出力する。
キャリープロパゲートアダー7はキャリーセーブアダー
6からキャリー“(1)1.110”とサム“1゜10
1”とキャリープロパゲートアダー8から伝搬されなキ
ャリー“1”とを入力し、それらの加算を行って“(1
)1.100”を出力モジュロ3生成回路11とリザル
トレジスタ1つとに出力する。
6からキャリー“(1)1.110”とサム“1゜10
1”とキャリープロパゲートアダー8から伝搬されなキ
ャリー“1”とを入力し、それらの加算を行って“(1
)1.100”を出力モジュロ3生成回路11とリザル
トレジスタ1つとに出力する。
キャリープロパゲートアダー8はキャリーセーブアダー
6からキャリー″101010”とサム“110101
Hとを入力し、それらの加算を行って“011111”
を出力モジュロ3生成回路12とリザルトレジスタ19
とに出力するとともに、キャリープロパゲートアダー7
にキャリー“1”を伝搬する。
6からキャリー″101010”とサム“110101
Hとを入力し、それらの加算を行って“011111”
を出力モジュロ3生成回路12とリザルトレジスタ19
とに出力するとともに、キャリープロパゲートアダー7
にキャリー“1”を伝搬する。
キャリープロパゲートアダー9はキャリーセーブアダー
6からキャリー” 101010”とサム°″0101
01′とを入力し、それらの加算を行って“11111
1”を出力モジュロ3生成回路13とリザルトレジスタ
19とに出力する。
6からキャリー” 101010”とサム°″0101
01′とを入力し、それらの加算を行って“11111
1”を出力モジュロ3生成回路13とリザルトレジスタ
19とに出力する。
キャリープロパゲートアダー10はキャリーセーブアダ
ー6からキャリー“1000”とサム“00010”と
を入力し、それらの加算を行って“10010 ”を出
力モジュロ3生成回路14とリザルトレジスタ1つとに
出力する。
ー6からキャリー“1000”とサム“00010”と
を入力し、それらの加算を行って“10010 ”を出
力モジュロ3生成回路14とリザルトレジスタ1つとに
出力する。
リザルトレジスタ19にはキャリープロパゲートアダー
7の演算結果“(1)1.100”と、キャリープロパ
ゲートアダー8の演算結果“011111”と、キャリ
ー10パゲートアダ−9の演算結果″111111”と
、キャリープロパゲートアダー10の演算結果“100
10 ”とが入力されて“(1)1.10001111
111111110010″が格納され、この’ (1
)1.10001111111111110010 ”
が乗算結果として出力される。
7の演算結果“(1)1.100”と、キャリープロパ
ゲートアダー8の演算結果“011111”と、キャリ
ー10パゲートアダ−9の演算結果″111111”と
、キャリープロパゲートアダー10の演算結果“100
10 ”とが入力されて“(1)1.10001111
111111110010″が格納され、この’ (1
)1.10001111111111110010 ”
が乗算結果として出力される。
出力モジュロ3生成回路11ではキャリープロパゲート
アダー7の演算結果“(1)i、ioo”が入力される
と、この演算結果からモジュロ3重み「2212」によ
りモジ11口3として「1」を生成して出力モジュロ3
レジスタ24に出力する。
アダー7の演算結果“(1)i、ioo”が入力される
と、この演算結果からモジュロ3重み「2212」によ
りモジ11口3として「1」を生成して出力モジュロ3
レジスタ24に出力する。
出力モジュロ3生成回路12ではキャリープロパゲート
アダー8の演算結果“011111”が入力されると、
この演算結果からモジュロ3重みr 121212」に
よりモジュロ3として「2」を生成して出力モジュロ3
レジスタ25に出力する。
アダー8の演算結果“011111”が入力されると、
この演算結果からモジュロ3重みr 121212」に
よりモジュロ3として「2」を生成して出力モジュロ3
レジスタ25に出力する。
出力モジュロ3生成回路13ではキャリープロパゲート
アダー9の演算結果“111111”が入力されると、
この演算結果からモジュロ3重みr121212ノによ
りモジュロ3として「0」を生成して出力モジュロ3レ
ジスタ26に出力する。
アダー9の演算結果“111111”が入力されると、
この演算結果からモジュロ3重みr121212ノによ
りモジュロ3として「0」を生成して出力モジュロ3レ
ジスタ26に出力する。
出力モジュロ3生成回路14ではキャリープロパゲート
アダー10の演算結果“10010 ”が入力されると
、この演算結果からモジュロ3重み「12121」によ
りモジュロ3として「0」を生成して出力モジュロ3レ
ジスタ27に出力する。
アダー10の演算結果“10010 ”が入力されると
、この演算結果からモジュロ3重み「12121」によ
りモジュロ3として「0」を生成して出力モジュロ3レ
ジスタ27に出力する。
中間結果モジュロ3生成回路15はキャリーセーブアダ
ー6からキャリー“(1)1.110”とサム“1.1
01”とを入力すると、これらの値からモジュロ3重み
r2212Jによりキャリープロパゲートアダー7の中
間結果モジュロ3を推測し、中間結果モジュロ3として
「1」を生成して中間結果モジュロ3レジスタ28に出
力する。ただし、キャリープロパゲートアダー8からキ
ャリープロパゲートアダー7にはキャリー“1″が伝搬
されているので、中間結果モジュロ3はこのキャリー“
1”により修正されている。
ー6からキャリー“(1)1.110”とサム“1.1
01”とを入力すると、これらの値からモジュロ3重み
r2212Jによりキャリープロパゲートアダー7の中
間結果モジュロ3を推測し、中間結果モジュロ3として
「1」を生成して中間結果モジュロ3レジスタ28に出
力する。ただし、キャリープロパゲートアダー8からキ
ャリープロパゲートアダー7にはキャリー“1″が伝搬
されているので、中間結果モジュロ3はこのキャリー“
1”により修正されている。
中間結果モジュロ3生成回路16はキャリーセーブアダ
ー6からキャリー“101010”とサム”11010
1”とを入力すると、これらの値からモジュロ3重みr
121212」によりキャリープロパゲートアダー8の
中間結果モジュロ3を推測し、中間結果モジュロ3とし
て「2ノを生成して中間結果モジュロ3レジスタ2つに
出力する。ただし、キャリープロパゲートアダー8から
キャリープロパゲートアダー7にはキャリー″1″が伝
搬されているので、中間結果モジュロ3はこのキャリー
“1”により修正されている。
ー6からキャリー“101010”とサム”11010
1”とを入力すると、これらの値からモジュロ3重みr
121212」によりキャリープロパゲートアダー8の
中間結果モジュロ3を推測し、中間結果モジュロ3とし
て「2ノを生成して中間結果モジュロ3レジスタ2つに
出力する。ただし、キャリープロパゲートアダー8から
キャリープロパゲートアダー7にはキャリー″1″が伝
搬されているので、中間結果モジュロ3はこのキャリー
“1”により修正されている。
中間結果モジュロ3生成回lN17はキャリーセーブア
ダー6からキャリー“1oio1o”とサム“0101
01”とを入力すると、これらの値からモジュロ3重み
r121212.によりキャリー10パゲートアタ−9
の中間結果モジュロ3を推測し、中間結果モジュロ3と
して「0」を生成して中間結果モジュロ3レジスタ30
に出力する。
ダー6からキャリー“1oio1o”とサム“0101
01”とを入力すると、これらの値からモジュロ3重み
r121212.によりキャリー10パゲートアタ−9
の中間結果モジュロ3を推測し、中間結果モジュロ3と
して「0」を生成して中間結果モジュロ3レジスタ30
に出力する。
中間結果モジュロ3生成回路18はキャリーセーブアダ
ー6からキャリー“1000”とサム“00010”と
を入力すると、これらの値からモジュロ3重みr121
21 、によりキャリープロパゲートアダー10の中間
結果モジュロ3を推測し、中間結果モジュロ3として「
0」を生成して中間結果モジュロ3レジスタ31に出力
する。
ー6からキャリー“1000”とサム“00010”と
を入力すると、これらの値からモジュロ3重みr121
21 、によりキャリープロパゲートアダー10の中間
結果モジュロ3を推測し、中間結果モジュロ3として「
0」を生成して中間結果モジュロ3レジスタ31に出力
する。
比較回路34は出力モジュロ3レジスタ24と中間結果
モジュロ3レジスタ28とがともに「1」を格納してい
るので、一致を検出してエラーインジケータレジスタ3
8に“0”を出力して格納する。
モジュロ3レジスタ28とがともに「1」を格納してい
るので、一致を検出してエラーインジケータレジスタ3
8に“0”を出力して格納する。
比較回路35は出力モジュロ3レジスタ25と中間結果
モジュロ3レジスタ29とがともに「2」を格納してい
るので、一致を検出してエラーインジケータレジスタ3
9に“0”を出力して格納する。
モジュロ3レジスタ29とがともに「2」を格納してい
るので、一致を検出してエラーインジケータレジスタ3
9に“0”を出力して格納する。
比較回路36は出力モジュロ3レジスタ26と中間結果
モジュロ3レジスタ30とがともに「0」を格納してい
るので、一致を検出してエラーインジケータレジスタ4
0に“0″を出力して格納する。
モジュロ3レジスタ30とがともに「0」を格納してい
るので、一致を検出してエラーインジケータレジスタ4
0に“0″を出力して格納する。
比較回路37は出力モジュロ3レジスタ27と中間結果
モジュロ3レジスタ31とがともに「0」を格納してい
るので、一致を検出してエラーインジケータレジスタ4
1に“0″を出力して格納する。
モジュロ3レジスタ31とがともに「0」を格納してい
るので、一致を検出してエラーインジケータレジスタ4
1に“0″を出力して格納する。
また、リプルトモジュロ3生成回路32は出力モジュロ
3レジスタ24に格納されたキャリープロパゲートアダ
ー7からの出力データのモジュロ3としての「1」と、
出力モジュロ3レジスタ25に格納されたキャリープロ
パゲートアダー8からの出力データのモジュロ3として
の「2」と、出カモシュ03レジスタ26に格納された
キャリープロパゲートアダー9からの出力データのモジ
ュロ3としての「0」と、出力モジュロ3レジスタ27
に格納されたキャリープロパゲートアダ−10からの出
力データのモジュロ3としてのr□。
3レジスタ24に格納されたキャリープロパゲートアダ
ー7からの出力データのモジュロ3としての「1」と、
出力モジュロ3レジスタ25に格納されたキャリープロ
パゲートアダー8からの出力データのモジュロ3として
の「2」と、出カモシュ03レジスタ26に格納された
キャリープロパゲートアダー9からの出力データのモジ
ュロ3としての「0」と、出力モジュロ3レジスタ27
に格納されたキャリープロパゲートアダ−10からの出
力データのモジュロ3としてのr□。
とをまとめて乗算結果のモジュロ3として「o」を比較
回路33に出力する。
回路33に出力する。
一方、被乗数モジュロ3生成回路20は被乗数レジスタ
1にセットされた被乗数“1.01010101010
1010″からモジュロ3重みr 112121212
1212121 。
1にセットされた被乗数“1.01010101010
1010″からモジュロ3重みr 112121212
1212121 。
により被乗数のモジュo3として「0」を生成してオペ
ランドモジュロ3生成回FI@22に出力する。
ランドモジュロ3生成回FI@22に出力する。
乗数モジュロ3生成回路21は乗数レジスタ2にセット
された乗数“0.101010”からモジュロ重みr
2212121 Jにより乗数のモジュロ3として「0
」を生成してオペランドモジュロ3生成回路22に出力
する。
された乗数“0.101010”からモジュロ重みr
2212121 Jにより乗数のモジュロ3として「0
」を生成してオペランドモジュロ3生成回路22に出力
する。
オペランドモジュロ3生成回路22はこれら被乗数のモ
ジュロ3 (”OJ )と乗数のモジュロ3(「OJ
)とを互いに乗算し、その乗算結果「O」をオペランド
のモジュロ3としてオペランドモジュロ3レジスタ23
に出力する。
ジュロ3 (”OJ )と乗数のモジュロ3(「OJ
)とを互いに乗算し、その乗算結果「O」をオペランド
のモジュロ3としてオペランドモジュロ3レジスタ23
に出力する。
比較回路33はオペランドモジュロ3レジスタ23に格
納されたオペランドのモジュロ3と、リプルトモジュロ
3生成回路32で生成された乗算結果のモジュロ3とが
ともにrQJなので、一致を検出して比較結果として“
0”を出力する。
納されたオペランドのモジュロ3と、リプルトモジュロ
3生成回路32で生成された乗算結果のモジュロ3とが
ともにrQJなので、一致を検出して比較結果として“
0”を出力する。
もし、この比較結果が不一致を示す“1”となった場合
には、エラーインジケータ38〜41の内容を調べ、キ
ャリープロパゲートアダー7〜10に障害が生じている
かどうかチエツクすることになる。
には、エラーインジケータ38〜41の内容を調べ、キ
ャリープロパゲートアダー7〜10に障害が生じている
かどうかチエツクすることになる。
このように、出力モジュロ3生成回路11〜14で生成
されたキャリープロパゲートアダー7〜10夫々の出力
データのモジュロ3と、中間結果モジュロ3生成回路1
5〜18でキャリープロパゲートアダー7〜10夫々に
入力されるキャリーセーブアダー6からのキャリーとサ
ムと、キャリープロパゲートアダー7〜10間で伝搬さ
れるキャリーとから生成された中間結果モジュロ3とを
比較し、その比較結果に応じて障害が発生したキャリー
プロパゲートアダー7〜10を特定するようにすること
によって、乗算器を構成するキャリープロパゲートアダ
ー7〜10(モジュール)に対する故障分解能を向上さ
せることができる。
されたキャリープロパゲートアダー7〜10夫々の出力
データのモジュロ3と、中間結果モジュロ3生成回路1
5〜18でキャリープロパゲートアダー7〜10夫々に
入力されるキャリーセーブアダー6からのキャリーとサ
ムと、キャリープロパゲートアダー7〜10間で伝搬さ
れるキャリーとから生成された中間結果モジュロ3とを
比較し、その比較結果に応じて障害が発生したキャリー
プロパゲートアダー7〜10を特定するようにすること
によって、乗算器を構成するキャリープロパゲートアダ
ー7〜10(モジュール)に対する故障分解能を向上さ
せることができる。
九肌立憇】
以上説明したように本発明によれば、乗数と被乗数とか
ら生成された所要数の部分積を加算して乗数と被乗数と
の積を算出する複数のモジュール各々に、このモジュー
ルに入力されるデータからこのモジュールから出力され
るデータのモジュロn(nは正の整数)の予測値を生成
し、その予測値とこのモジュールから出力されるデータ
のモジュロnとを比較して、その比較結果に応じて複数
のモジュールのうち障害が生じたモジュールを特定する
ようにすることによって、乗算器を構成するモジュール
に対する故障分解能を向上させることができるという効
果がある。
ら生成された所要数の部分積を加算して乗数と被乗数と
の積を算出する複数のモジュール各々に、このモジュー
ルに入力されるデータからこのモジュールから出力され
るデータのモジュロn(nは正の整数)の予測値を生成
し、その予測値とこのモジュールから出力されるデータ
のモジュロnとを比較して、その比較結果に応じて複数
のモジュールのうち障害が生じたモジュールを特定する
ようにすることによって、乗算器を構成するモジュール
に対する故障分解能を向上させることができるという効
果がある。
第1図は本発明の一実施例の構成を示すブロック図、第
2図は本発明の一実施例による演算処理の具体例を示す
図、第3図は従来例の構成を示すブロック図である。 主要部分の符号の説明 6・・・・・・キャリーセーブアダー (C8A) 7〜10・・・・・・キャリー10パゲートアダー(C
PA) 11〜14・・・・・・キャリープロパゲートアダ一出
力モジュロ3生成回路 15〜18・・・・・・中間結果モジュロ3生成回路2
0・・・・・・被乗数モジュロ3生成回路21・・・・
・・乗数モジュロ3生成回路22・・・・・・オペラン
ドモジュロ3生成回路32・・・・・・リプルトモジュ
ロ3生成回路33〜37・・・・・・比較回路
2図は本発明の一実施例による演算処理の具体例を示す
図、第3図は従来例の構成を示すブロック図である。 主要部分の符号の説明 6・・・・・・キャリーセーブアダー (C8A) 7〜10・・・・・・キャリー10パゲートアダー(C
PA) 11〜14・・・・・・キャリープロパゲートアダ一出
力モジュロ3生成回路 15〜18・・・・・・中間結果モジュロ3生成回路2
0・・・・・・被乗数モジュロ3生成回路21・・・・
・・乗数モジュロ3生成回路22・・・・・・オペラン
ドモジュロ3生成回路32・・・・・・リプルトモジュ
ロ3生成回路33〜37・・・・・・比較回路
Claims (1)
- (1)複数のモジュールにより構成され、乗数と被乗数
とから所要数の部分積を生成し、前記部分積を前記複数
のモジュールで加算することにより前記乗数と前記被乗
数との積を得る乗算器の障害検出方式であって、前記モ
ジュールに入力されるデータから前記モジュールから出
力されるデータのモジュロn(nは正の整数)の予測値
を生成する予測値生成手段と、前記モジュールから出力
されるデータの前記モジュロnを生成するモジュロn生
成手段と、前記予測値生成手段により生成された前記予
測値と、前記モジュロn生成手段により生成された前記
モジュロnとを比較する比較手段とを前記複数のモジュ
ール各々に設け、前記比較手段の比較結果に応じて前記
複数のモジュールのうち障害が生じたモジュールを特定
するようにしたことを特徴とする障害検出方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63105320A JPH01276242A (ja) | 1988-04-27 | 1988-04-27 | 障害検出方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63105320A JPH01276242A (ja) | 1988-04-27 | 1988-04-27 | 障害検出方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01276242A true JPH01276242A (ja) | 1989-11-06 |
Family
ID=14404418
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63105320A Pending JPH01276242A (ja) | 1988-04-27 | 1988-04-27 | 障害検出方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01276242A (ja) |
-
1988
- 1988-04-27 JP JP63105320A patent/JPH01276242A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Patel et al. | Concurrent error detection in ALU's by recomputing with shifted operands | |
| EP0374420B1 (en) | A residue checking apparatus for detecting errors in add, substract, multiply, divide and square root operations | |
| US8205097B2 (en) | Microprocessor in a security-sensitive system | |
| US20200235751A1 (en) | Residue number systems and methods for arithmetic error detection and correction | |
| US5880982A (en) | Error detecting digital arithmetic circuit | |
| JPH01276242A (ja) | 障害検出方式 | |
| US8219604B2 (en) | System and method for providing a double adder for decimal floating point operations | |
| Reyhani-Masoleh et al. | Towards fault-tolerant cryptographic computations over finite fields | |
| Palsodkar et al. | Multiple error self checking-repairing fault tolerant adder-multiplier | |
| US5742533A (en) | Method and apparatus for modulus error checking | |
| US20060242221A1 (en) | Data value addition | |
| EP0339296A2 (en) | High speed parity prediction for binary adders | |
| US20170063403A1 (en) | Fault localization and error correction method for self-checking binary signed-digit adder and digital logic circuit for the method | |
| JP2000040081A (ja) | ベクトルデータ処理装置 | |
| JP3645830B2 (ja) | 除算器障害検出回路及びそれに用いる除算器障害検出方法 | |
| Alavi et al. | Fault localization and full error correction in Radix2 signed digit-based adders | |
| JPH02220141A (ja) | 故障検出回路 | |
| JPS62267837A (ja) | 誤り自己補正算術論理ユニツトとその駆動方法 | |
| Moradian et al. | Low-Cost Fault Localization and Error Correction for a Signed Digit Adder Design Utilizing the Self-Dual Concept | |
| Pai et al. | Overflow detection in multioperand addition | |
| Campbell et al. | Low-cost hardware architectures for mersenne modulo functional units | |
| Vazquez et al. | A Sum Error Detection Scheme for Decimal Arithmetic | |
| Campbell et al. | Cost-Effective Error Detection Through Mersenne Modulo Shadow Datapaths | |
| JP5316096B2 (ja) | エラー検出機能付き演算回路、および演算回路のエラー検出方法 | |
| JPH02220140A (ja) | 故障検出回路 |