(57)【要約】【課題】被演算データの入力から、演算結果の出力までの遅延を極力小さくした演算回路を提供する。【解決手段】一方の入力データＤＡと固定データ”０”が入力され、このデータが制御信号ＥＮＢにより選択出力される第１のセレクタ１１と、他方の入力データＤＢとレジスタの出力データが入力され、このデータが前記制御信号ＥＮＢにより選択出力される第２のセレクタ１０と、第１のセレクタ１１の出力信号ＳＡと第２のセレクタ１０の出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器１２と、この加算器１２の出力信号ＳＯを入力して、クロック信号に同期してこの出力信号を保持するレジスタ１３とを備えた構成としている。【選択図】    図１
2005011272.tif 000002
【特許請求の範囲】
【請求項１】
一方の入力データＤＡと固定データ”０”が入力され、該データが制御信号ＥＮＢにより選択出力される第１のセレクタと、
他方の入力データＤＢと後記レジスタの出力データが入力され、該データが前記制御信号ＥＮＢにより選択出力される第２のセレクタと、
前記第１のセレクタの出力信号ＳＡと前記第２のセレクタの出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、
該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタと、を備えたことを特徴とする演算回路。
【請求項２】
一方の入力データＤＡと固定データ”−１”が入力され、該データが制御信号ＥＮＢにより選択出力される第１のセレクタと、
他方の入力データＤＢと後記レジスタの出力データが入力され、該データが前記制御信号ＥＮＢにより選択出力される第２のセレクタと、
前記制御信号ＥＮＢを入力してその反転信号を出力するインバータ回路と、
前記第１のセレクタの出力信号ＳＡと前記第２のセレクタの出力信号ＳＢとを加算入力に入力すると共に、前記インバータ回路の出力信号をキャリー入力端子ＣＩに入力し、ＳＡ＋ＳＢ＋ＣＩの演算を行う加算器と、
該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタと、を備えたことを特徴とする演算回路。
【請求項３】
一方の入力データＤＡを入力し、制御信号ＥＮＢが有効の時に該入力データを通過させ、該制御信号が無効の時にデータを保持する第１のラッチ回路と、
他方の入力データＤＢを入力し、制御信号ＥＮＢが有効の時に該入力データを通過させ、該制御信号が無効の時にデータを保持する第２のラッチ回路と、
前記第１のラッチ回路の出力信号ＳＡと前記第２のラッチ回路の出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、
該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタと、を備えたことを特徴とする演算回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路に於ける演算器及びその周辺回路の構成に関する。
【０００２】
【従来の技術】
従来、半導体集積回路に於ける演算器及びその周辺回路の構成に関して、図７に示すような回路構成の演算回路があった。この回路によれば、加算器７２の一方の入力データＤＡはＡＮＤゲート７１の一方の入力に入力され、他方の入力データＤＢはＡＮＤゲート７０の一方の入力に入力されている。ＡＮＤゲート７０、７１の他方の入力端子には、演算データが有効であることを示す信号ＥＮＢが入力され、この信号が論理”Ｈ”レベル（有効）のときに、前記入力データＤＡ，ＤＢがＡＮＤゲートを通過して加算器７２に入力されるようになっており、前記信号ＥＮＢが論理”Ｌ”れべる（無効）の時には、加算器の入力ＳＡ，ＳＢを共に”Ｌ”レベルとすることにより、演算器７２を動作させないようにして、回路の低消費電力化を図っている（図８のタイムチャート参照）。
【０００３】
上記以外にも、演算回路の例として以下に示す文献がある。
【０００４】
【特許文献１】
特開平５−８０９７８号公報
【特許文献２】
特開２００２−１３２４９２号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、前記従来の演算回路においては、演算器の前段にＡＮＤ回路等のゲート回路を設けているために、データ入力から、レジスタ７４までのパスの遅延が大きくなり、高速化しにくい欠点があった。
【０００６】
この発明は、前記従来の問題点を解決して、被演算データの入力から、演算結果の出力までの遅延を極力小さくした演算回路を提供することを目的とする。
【０００７】
【課題を解決するための手段】
そのために、この発明の演算回路においては、一方の入力データＤＡと固定データ”０”が入力され、このデータが制御信号ＥＮＢにより選択出力される第１のセレクタと、他方の入力データＤＢとレジスタの出力データが入力され、このデータが制御信号ＥＮＢにより選択出力される第２のセレクタと、第１のセレクタの出力信号ＳＡと第２のセレクタの出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えている。これにより、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また低消費電力化も図ることが出来る。
【０００８】
また、この発明の演算回路の別の構成においては、一方の入力データＤＡと固定データ”−１”が入力され、このデータが制御信号ＥＮＢにより選択出力される第１のセレクタと、他方の入力データＤＢとレジスタの出力データが入力され、このデータが制御信号ＥＮＢにより選択出力される第２のセレクタと、制御信号ＥＮＢを入力してその反転信号を出力するインバータ回路と、第１のセレクタの出力信号ＳＡと第２のセレクタの出力信号ＳＢとを加算入力に入力すると共に、インバータ回路の出力信号をキャリー入力端子ＣＩに入力し、ＳＡ＋ＳＢ＋ＣＩの演算を行う加算器と、この加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えている。これにより、上述と同様に、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また低消費電力化も図ることが出来る。
【０００９】
更に、この発明の演算回路の別の構成によれば、一方の入力データＤＡを入力し、制御信号ＥＮＢが有効の時にこの入力データを通過させ、制御信号が無効の時にデータを保持する第１のラッチ回路と、他方の入力データＤＢを入力し、制御信号ＥＮＢが有効の時に該入力データを通過させ、制御信号が無効の時にデータを保持する第２のラッチ回路と、第１のラッチ回路の出力信号ＳＡと第２のラッチ回路の出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、この加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えている。これにより、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また、ＥＮＢ信号が無効の時に入力が変化しても、加算器に入力されるデータは変化しないので、加算器の内部状態も変化せず、更なる低消費電力化を図ることが出来る。
【００１０】
【発明の実施の形態】
以下、この発明の実施の形態について、図面を参照しながら詳細に説明する。尚、以下の説明に於いて、信号レベルを”Ｈ”レベル、”Ｌ”レベルと記載した場合は、それぞれ論理”１”及び”０”に対応するものとする。
【００１１】
［第１の実施の形態］
図１は、この発明の第１の実施の形態における演算回路の構成を示す回路図である。セレクタ１１には、一方の入力データＤＡとデータ”０”が入力され、セレクタ１０には他方の入力データＤＢとレジスタ１３の出力データＤＯが入力されている。これらのセレクタ１０，１１の選択信号として、書き込みイネーブル信号ＥＮＢが入力されている。
【００１２】
セレクタ１１の出力信号ＳＡとセレクタ１０の出力信号ＳＢは、加算器１２の被加算データとして入力され、加算器１２から加算結果ＳＯが出力される。この加算結果ＳＯはレジスタ１３に入力され、クロック信号ＣＬＫの立ち上がりエッジでこのデータがレジスタ１３に取り込まれる。
【００１３】
以下、動作について詳細に説明する。図２は、本実施の形態における演算回路の動作を説明する為のタイムチャートである。簡単のため、時刻Ｔ０以前は、データＤＡ、ＤＢ及びレジスタ１３は図示しないリセット信号により値”０”に初期化されているものとする。
【００１４】
時刻Ｔ０において、データＤＡ，ＤＢはそれぞれｄａ０，ｄｂ０となるが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、セレクタ１０，１１は、それぞれ選択値”０”側の信号”０”、ＤＯを選択し、ＤＯは初期化されて”０”となっているため、ＳＡ＝ＳＢ＝”０”となる。従って、この時の加算器１２の出力ＳＯは”０”となる。
【００１５】
時刻Ｔ１において、データＤＡ，ＤＢはそれぞれｄａ１，ｄｂ１に変化し、書き込みイネーブル信号ＥＮＢは”Ｈ”レベル（有効）となる。この時、セレクタ１０，１１はそれぞれＤＢ，ＤＡを選択するので、ＳＡ＝ＤＡ＝ｄａ１、ＳＢ＝ＤＢ＝ｄｂ１となり、加算器１２の出力ＳＯはＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００１６】
時刻Ｔ２において、クロック信号ＣＬＫの立ち上がりエッジでレジスタ１３は、この加算結果ＳＯ＝ｄａ１  ＋  ｄｂ１をラッチする。この時刻Ｔ２において、入力データＤＡ，ＤＢはそれぞれｄａ２，ｄｂ２に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為に、セレクタ１１の出力ＳＡは値”０”となり、セレクタ１０の出力ＳＢはレジスタ１３の出力ＤＯ＝ｄａ１＋ｄｂ１となる。従って加算器１２の出力ＳＯはＳＯ＝ｄａ１  ＋  ｄｂ１となり、時刻Ｔ１の状態に対して変化しない。
【００１７】
時刻Ｔ３においては、クロック信号ＣＬＫの立ち上がりエッジで加算器１２の出力信号ＳＯの値をラッチするが、この値はＳＯ＝ｄａ１  ＋  ｄｂ１であるので、以前の値が保持される。この時、入力データＤＡ，ＤＢはそれぞれｄａ３，ｄｂ３に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為に、時刻Ｔ２の時と同様に、加算器１２の入力信号ＳＡ，ＳＢ及び出力信号ＳＯは変化しない。
【００１８】
時刻Ｔ４では、入力データＤＡ，ＤＢはそれぞれｄａ４，ｄｂ４に変化し、書き込みイネーブル信号ＥＮＢが”Ｈ”レベルとなるので、セレクタ１１はＤＡを選択し、セレクタ１０はＤＢを選択する。これにより加算器１２の入力信号はＳＡ＝ｄａ４、ＳＢ＝ｄｂ４となり、出力信号ＳＯはＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００１９】
時刻Ｔ５におけるクロック信号ＣＬＫの立ち上がりエッジで、レジスタ１３は、この演算結果ＳＯ＝ｄａ４  ＋  ｄｂ４をラッチする。このとき、入力データＤＡ，ＤＢはそれぞれｄａ５，ｄｂ５に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、セレクタ１１は値”０”を選択し、セレクタ１０はレジスタ１３の出力信号ＤＯ＝ｄａ４＋ｄｂ４を選択し、ＳＡ＝”０”、ＳＢ＝ｄａ４  ＋  ｄｂ４となる。従って、加算器１２の出力信号ＳＯはＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００２０】
この実施の形態においては、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また低消費電力化も図ることが出来る。
【００２１】
［第２の実施の形態］
図３は、この発明の第２の実施の形態における演算回路の構成を示す回路図である。セレクタ２０には、一方の入力ＤＡとデータ”−１”が入力され、セレクタ２１には他方の入力データＤＢとレジスタ２４の出力データＤＯが入力されている。これらのセレクタ２０，２１の選択信号として、書き込みイネーブル信号ＥＮＢが入力されている。
【００２２】
このＥＮＢ信号はインバータ２３にも入力され、その出力信号が加算器２２のキャリー入力端子ＣＩに接続されている。
【００２３】
セレクタ２０の出力信号ＳＡとセレクタ２１の出力信号ＳＢは、加算器２２の加算データ入力として入力され、加算器２２から加算結果ＳＯが出力される。この加算結果ＳＯはレジスタ２４に入力され、クロック信号ＣＬＫの立ち上がりエッジでこのデータがレジスタ２４に取り込まれる。
【００２４】
前記キャリー入力端子ＣＩは加算器２２の０ビット目のキャリー入力用の端子であり、この実施の形態における加算器２２では、ＳＯ＝ＳＡ＋ＳＢ＋ＣＩの演算が行われ、この結果がレジスタ２４に取り込まれる。
【００２５】
以下、動作について詳細に説明する。図４は、本実施の形態における演算回路の動作を説明する為のタイムチャートである。簡単のため、時刻Ｔ０以前は、データＤＡ、ＤＢ及びレジスタ２４は図示しないリセット信号により値”０”に初期化されているものとする。
【００２６】
時刻Ｔ０において、データＤＡ，ＤＢはそれぞれｄａ０，ｄｂ０となるが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、セレクタ２０，２１は選択値”０”側の信号”−１”、ＤＯを選択し、ＤＯは初期化されて”０”となっているため、ＳＡ＝”−１”、ＳＢ＝”０”となる。また、インバータ２３の出力は”Ｈ”レベルとなるので、加算器２２において、ＳＡ＋ＳＢ＋ＣＩ＝０−１＋１の演算がおこなわれる。従って、この時の加算器２２の出力ＳＯは”０”となる。
【００２７】
時刻Ｔ１において、クロック信号ＣＬＫの立ち上がりエッジで、レジスタ２４はこの加算結果ＳＯ＝０をラッチする。入力データＤＡ，ＤＢはそれぞれｄａ１，ｄｂ１に変化し、書き込みイネーブル信号ＥＮＢは”Ｈ”レベル（有効）となる。この時、セレクタ２０，２１はそれぞれＤＡ，ＤＢを選択するので、ＳＡ＝ＤＡ＝ｄａ１、ＳＢ＝ＤＢ＝ｄｂ１となり、また、キャリー入力ＣＩはＣＩ＝０となるので、加算器２２の出力ＳＯはＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００２８】
時刻Ｔ２においてクロック信号ＣＬＫの立ち上がりエッジでレジスタ２４は、この加算結果ＳＯ＝ｄａ１  ＋  ｄｂ１をラッチする。この時刻Ｔ２において、入力データＤＡ，ＤＢはそれぞれｄａ２，ｄｂ２に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為に、セレクタ２０の出力ＳＡは値”−１”となり、セレクタ２１の出力ＳＢはレジスタ１３の出力ＤＯ＝ｄａ１＋ｄｂ１となる。また、キャリー入力端子ＣＩには”Ｈ”レベルに相当する論理値”１”が入力される。従って加算器２２では、ｄａ１＋ｄｂ１−１＋１の演算が実行され、その出力ＳＯはＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００２９】
時刻Ｔ３においては、クロック信号ＣＬＫの立ち上がりエッジで加算器２２の出力信号ＳＯの値をラッチするが、この値はＳＯ＝ｄａ１  ＋  ｄｂ１であるので、レジスタ２４の値は変化しない。この時、入力データＤＡ，ＤＢはそれぞれｄａ３，ｄｂ３に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為に、時刻Ｔ２の時と同様に、加算器１２の入力信号ＳＡ，ＳＢ及び出力信号ＳＯは変化せずＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００３０】
時刻Ｔ４では、クロック信号ＣＬＫの立ち上がりエッジでこの出力信号ＳＯがラッチされ、レジスタ２４の内容は変化しない。時刻Ｔ４では、入力データＤＡ，ＤＢはそれぞれｄａ４，ｄｂ４に変化し、書き込みイネーブル信号ＥＮＢが”Ｈ”レベルとなるので、セレクタ２０はＤＡを選択し、セレクタ２１はＤＢを選択する。またキャリー入力信号ＣＩは”Ｌ”レベルに相当する論理値”０”となる。これにより加算器２２の入力信号はＳＡ＝ｄａ４、ＳＢ＝ｄｂ４、ＣＩ＝０となり、出力信号ＳＯはＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００３１】
時刻Ｔ５におけるクロック信号ＣＬＫの立ち上がりエッジで、レジスタ２４は、この演算結果ＳＯ＝ｄａ４  ＋  ｄｂ４をラッチする。このとき、入力データＤＡ，ＤＢはそれぞれｄａ５，ｄｂ５に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、セレクタ２０は値”−１”を選択し、セレクタ２１はレジスタ２４の出力信号ＤＯ＝ｄａ４＋ｄｂ４を選択し、ＳＡ＝”−１”、ＳＢ＝ｄａ４  ＋  ｄｂ４となる。また、キャリー入力信号ＣＩの論理値は”１”になる。従って、加算器２２において−１＋ｄａ４＋ｄｂ４＋１の加算が行われ、その出力信号ＳＯはＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００３２】
この実施の形態においても、第１の実施の形態と同様に、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また低消費電力化も図ることが出来る。
【００３３】
［第３の実施の形態］
図５は、この発明の第３の実施の形態における演算回路の構成を示す回路図である。ラッチ３０の入力端子Ｉには、一方の入力信号ＤＡが接続され、イネーブル入力端子Ｅには書き込みイネーブル信号ＥＮＢが入力されている。同様にラッチ３１の入力端子Ｉには、他方の入力信号ＤＢが接続され、イネーブル入力端子Ｅには書き込みイネーブル信号ＥＮＢが入力されている。ＥＮＢは、レジスタ３３の書き込みイネーブル信号であり、ＥＮＢ＝”Ｈ”レベルの時書き込み可能となり、ＥＮＢ＝”Ｌ”のとき書き込み不可（値を保持）となる。この信号ＥＮＢはラッチ回路３０，３１にも接続されており、このラッチ回路はＥＮＢ＝”Ｈ”レベルの時に入力データをそのまま通過させ（Ｏ＝Ｉ）、ＥＮＢ＝”Ｌ”レベルの時にデータをラッチする。
【００３４】
ラッチ回路３０，３１からの出力信号ＳＡ，ＳＢは加算器３２の加算入力に接続され、信号ＳＡとＳＢの加算結果が出力信号ＳＯとして出力され、この信号はレジスタ３３に入力される。
【００３５】
以下、動作について詳細に説明する。図６は、本実施の形態における演算回路の動作を説明する為のタイムチャートである。簡単のため、時刻Ｔ０以前は、データＤＡ、ＤＢ、レジスタ２４及びラッチ回路３０，３１は図示しないリセット信号により値”０”に初期化されているものとする。
【００３６】
時刻Ｔ０において、データＤＡ，ＤＢはそれぞれｄａ０，ｄｂ０となるが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、ラッチ回路３０，３１は、初期化された値”０”を出力し、ＳＡ＝ＳＢ＝”０”となる。この時の加算器３２の出力ＳＯはＳＯ＝”０”である。
【００３７】
時刻Ｔ１において、クロック信号ＣＬＫの立ち上がりエッジで、レジスタ３３はこの加算結果ＳＯをラッチする。入力データＤＡ，ＤＢはそれぞれｄａ１，ｄｂ１に変化し、書き込みイネーブル信号ＥＮＢは”Ｈ”レベル（有効）となる。この時ラッチ回路３０，３１はそれぞれ入力ＤＡ，ＤＢをそのまま出力する。従って、ＳＡ＝ＤＡ＝ｄａ１、ＳＢ＝ＤＢ＝ｄｂ１となるので、加算器３２の出力ＳＯはＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００３８】
時刻Ｔ２において、クロック信号ＣＬＫの立ち上がりエッジでレジスタ３３は、この加算結果ＳＯ＝ｄａ１  ＋  ｄｂ１をラッチする。この時刻Ｔ２において、入力データＤＡ，ＤＢはそれぞれｄａ２，ｄｂ２に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルであるので、ラッチ回路３０，３１の出力は、ラッチしたデータ出力を維持し、ＳＡ＝ｄａ１，ＳＢ＝ｄｂ１となる。このように、ＥＮＢ＝”Ｌ”レベルとなっても加算器の入力状態は変化しないので、加算器の内部状態も変化せず、その分消費電力が低減される。
【００３９】
時刻Ｔ３においては、クロック信号ＣＬＫの立ち上がりエッジで加算器３２の出力信号ＳＯの値をラッチするが、この値はＳＯ＝ｄａ１  ＋  ｄｂ１であるので、レジスタ３３に保持される値は変化しない。この時、入力データＤＡ，ＤＢはそれぞれｄａ３，ｄｂ３に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為に、時刻Ｔ２の時と同様に、加算器１２の入力信号ＳＡ，ＳＢ及び出力信号ＳＯは変化せずＳＯ＝ｄａ１  ＋  ｄｂ１となる。
【００４０】
時刻Ｔ４では、クロック信号ＣＬＫの立ち上がりエッジでこの出力信号ＳＯがラッチされ、レジスタ３３の内容は変化しない。時刻Ｔ４では、入力データＤＡ，ＤＢはそれぞれｄａ４，ｄｂ４に変化し、書き込みイネーブル信号ＥＮＢが”Ｈ”レベルとなるので、ラッチ回路３０，３１はそれぞれＤＡ＝ｄａ４、ＤＢ＝ｄｂ４を出力する。加算器３２の入力は、ＳＡ＝ｄａ４，ＳＢ＝ｄｂ４であるので、出力はＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００４１】
時刻Ｔ５におけるクロック信号ＣＬＫの立ち上がりエッジで、レジスタ３３は、この演算結果ＳＯ＝ｄａ４  ＋  ｄｂ４をラッチする。このとき、入力データＤＡ，ＤＢはそれぞれｄａ５，ｄｂ５に変化するが、書き込みイネーブル信号ＥＮＢが”Ｌ”レベルである為、ラッチ回路の出力信号ＳＡ，ＳＢは前の状態を維持して変化しない。従って、加算器３２の入力ＳＯも変化せず、ＳＯ＝ｄａ４  ＋  ｄｂ４となる。
【００４２】
この実施の形態においても、第１、第２の実施の形態と同様に、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成できるので、高速化が容易であり、また、この実施の形態においては、ＥＮＢ＝”Ｌ”レベルの時に入力が変化しても、加算器に入力されるデータは変化しないので、加算器の内部状態も変化しない。したがって更なる低消費電力化を図ることが出来る。
【００４３】
尚、本発明は前述の実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能である。例えば、第１の実施の形態においては、セレクタ１１の入力”０”の代わりに”１”を入力することにより、加算器１２を乗算器に代えて乗算回路とすることも可能である。また、第３の実施の形態では、加算器３２を乗算器に置き換えることにより、そのままの回路構成で乗算回路を構成することができる。
【００４４】
【発明の効果】
以上詳細に説明したように、請求項１に係る発明によれば、一方の入力データＤＡと固定データ”０”が入力され、該データが制御信号ＥＮＢにより選択出力される第１のセレクタと、他方の入力データＤＢと後記レジスタの出力データが入力され、該データが前記制御信号ＥＮＢにより選択出力される第２のセレクタと、前記第１のセレクタの出力信号ＳＡと前記第２のセレクタの出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えた構成としたので、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成でき、高速化が容易であり、また低消費電力化も図ることが出来る。
【００４５】
また、請求項２に係る発明によれば、一方の入力データＤＡと固定データ”−１”が入力され、該データが制御信号ＥＮＢにより選択出力される第１のセレクタと、他方の入力データＤＢと後記レジスタの出力データが入力され、該データが前記制御信号ＥＮＢにより選択出力される第２のセレクタと、前記制御信号ＥＮＢを入力してその反転信号を出力するインバータ回路と、前記第１のセレクタの出力信号ＳＡと前記第２のセレクタの出力信号ＳＢとを加算入力に入力すると共に、前記インバータ回路の出力信号をキャリー入力端子ＣＩに入力し、ＳＡ＋ＳＢ＋ＣＩの演算を行う加算器と、該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えた構成としたので、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成でき、高速化が容易であり、また低消費電力化も図ることが出来る。
【００４６】
更に、請求項３に係る発明によれば、一方の入力データＤＡを入力し、制御信号ＥＮＢが有効の時に該入力データを通過させ、該制御信号が無効の時にデータを保持する第１のラッチ回路と、他方の入力データＤＢを入力し、制御信号ＥＮＢが有効の時に該入力データを通過させ、該制御信号が無効の時にデータを保持する第２のラッチ回路と、前記第１のラッチ回路の出力信号ＳＡと前記第２のラッチ回路の出力信号ＳＢを入力してＳＡ＋ＳＢを演算する加算器と、該加算器の出力信号ＳＯを入力して、クロック信号に同期して該出力信号を保持するレジスタとを備えた構成としたので、データ入力からレジスタに保持するまでのデータパスのゲート段数を少なく構成でき、高速化が容易であり、また、ＥＮＢ信号が無効の時に入力が変化しても、加算器に入力されるデータは変化しないので、加算器の内部状態も変化せず、更なる低消費電力化を図ることが出来る。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態における演算回路の構成を示す回路図である。
【図２】図１の演算回路の動作を説明するためのタイムチャートである。
【図３】本発明の第２の実施の形態における演算回路の構成を示す回路図である。
【図４】図３の演算回路の動作を説明するためのタイムチャートである。
【図５】本発明の第３の実施の形態における演算回路の構成を示す回路図である。
【図６】図５の演算回路の動作を説明するためのタイムチャートである。
【図７】従来の演算回路の構成を示す回路図である。
【図８】従来の演算回路の動作を説明するためのタイムチャートである。
【符号の説明】
１０，１１，２０，２１    セレクタ
１２，２２，３２          演算回路
１３、２４，３３          レジスタ
２３                      インバータ
３０，３１                ラッチ回路
【図１】
2005011272.tif 000003
【図２】
2005011272.tif 000004
【図３】
2005011272.tif 000005
【図４】
2005011272.tif 000006
【図５】
2005011272.tif 000007
【図６】
2005011272.tif 000008
【図７】
2005011272.tif 000009
【図８】
2005011272.tif 000010