クロックに応じて、入力データを取り込んで保持するラッチ回路であって、前記クロックに応じて、前記入力データを通過させるトランスファーゲートと、4個以上の偶数個のインバータを直列にループを形成するように接続し、初段の入力および最終段の出力が前記トランスファーゲートの出力に接続されたループ状インバータ列と、を備え、前記ループ状インバータ列の4個以上のインバータの駆動力は、前段より後段になるほど大きいことを特徴とするラッチ回路。入力データを取り込んで保持する第1ラッチパスと、前記入力データを取り込んで保持する第2ラッチパスと、前記第1ラッチパスの出力と前記第2ラッチパスの出力を受け、前記第1ラッチパスの出力および前記第2ラッチパスの出力の両方が変化した時のみ出力が変化する出力部とを、備え、前記第1ラッチパスおよび前記第2ラッチパスは、それぞれマスタラッチと、スレーブラッチと、を備え、前記第1ラッチパスおよび前記第2ラッチパスの前記マスタラッチは、請求項1記載のラッチ回路を備えることを特徴とするデータ保持回路。前記出力部は、高電位電源と低電位電源の間に直列に接続した4個のトランジスタを備え、直列に接続された前記4個のトランジスタの両側の2個のトランジスタのゲートに、前記第1ラッチパスの出力と前記第2ラッチパスの出力の一方が、内側の2個のトランジスタのゲートに、前記第1ラッチパスの出力と前記第2ラッチパスの出力の他方が、供給される請求項2記載のデータ保持回路。クロックに同期して入力データを取り込んで保持するマスタラッチと、前記クロックを反転した逆相クロックに同期して前記マスタラッチの出力するマスタデータを取り込んで保持するスレーブラッチと、を備えるマスタスレーブ型データ保持回路であって、前記マスタラッチは、請求項1記載のラッチ回路を有することを特徴とするマスタスレーブ型データ保持回路。前記スレーブラッチは、請求項1記載のラッチ回路であることを特徴とする請求項4記載のマスタスレーブ型データ保持回路。実施形態によれば、応答速度の低下が比較的少なく、小さな回路サイズで実現できるラッチ回路およびデータ保持回路が実現される。本発明の第1の観点によれば、クロックに応じて、入力データを取り込んで保持するラッチ回路であって、クロックに応じて、前記入力データを通過させるトランスファーゲートと、4個以上の偶数個のインバータを直列にループを形成するように接続し、初段の入力および最終段の出力がトランスファーゲートの出力に接続されたループ状インバータ列と、を有し、ループ状インバータ列の4個以上のインバータの駆動力は、前段より後段になるほど大きいラッチ回路が提供される。本発明の第2の観点によれば、入力データを取り込んで保持する第1ラッチパスと、入力データを取り込んで保持する第2ラッチパスと、第1ラッチパスの出力と第2ラッチパスの出力を受け、第1ラッチパスの出力および第2ラッチパスの出力の両方が変化した時のみ出力が変化する出力部とを、備え、第1ラッチパスおよび第2ラッチパスは、それぞれマスタラッチと、スレーブラッチと、を備え、第1ラッチパスおよび第2ラッチパスのマスタラッチは、本発明の第1の観点のラッチ回路を有するデータ保持回路が提供される。本発明の第3の観点によれば、クロックに同期して入力データを取り込んで保持するマスタラッチと、クロックを反転した逆相クロックに同期してマスタラッチの出力するマスタデータを取り込んで保持するスレーブラッチと、を備えるマスタスレーブ型データ保持回路であって、マスタラッチは、本発明の第1の観点のラッチ回路を有するマスタスレーブ型データ保持回路が提供される。実施形態によれば、応答速度の低下が比較的少なく、小さな回路サイズで実現できるラッチ回路およびデータ保持回路が実現される。実施形態を説明する前に、データ保持回路におけるソフトエラー対策の基本構成を説明する。図2は、データ保持回路に入力する入力データにソフトエラーが発生した場合の対策例を示す図である。図2のAに示すように、入力データDinは、組合せ回路の出力部を形成するインバータ2から出力される。データ保持回路10の前段に、遅延要素τ13と、Cエレメント回路14と、を設ける。遅延要素τ13は、Dinを遅延時間Tdだけ遅延させる。Cエレメント回路14は、高電位電源Vddと低電位電源GNDの間に直列に接続し2個のPチャネルトランジスタと2個のNチャネルトランジスタを有する。4個のトランジスタのうちの外側のPチャネルトランジスタとNチャネルトランジスタのゲートにはDinが、内側のPチャネルトランジスタとNチャネルトランジスタのゲートには、遅延要素13の出力が供給される。ここでは、遅延要素13の出力をAで、DinをBで表す。内側のPチャネルトランジスタとNチャネルトランジスタの接続ノードから出力Qが得られる。図2のCに示すように、Cエレメント回路14の出力Qは、AとBの両方が0Lの時に1Hとなり、AとBの両方が1の時に0となり、AとBが異なる値の時には、前の値を維持する。図2のBに示すように、組合せ回路からの入力データDinが0Lの時に、ソフトエラーが発生し、一時的に1Hに変化するパルスが発生した場合、AとBに時間差Tdで1Hのパルスが発生する。パルス幅に比べて時間差Tdが大きい場合には、AとBの両方が1Hになることはないので、Qは1Hの状態を維持する。言い換えれば、データ保持回路10に、誤った入力データが入力されることはない。これは、力データDinが1Hの時も同様である。図3は、入力データにおけるソフトエラーおよび保持したデータにおけるソフトエラーが発生した場合に誤動作も防止する対策を行ったデータ保持回路例を示す図である。図3のAに示すように、このデータ保持回路は、マスタスレーブ型であり、前段のマスタラッチおよび後段のスレーブラッチは、それぞれ2つのラッチパスを有する。マスタラッチは、入力部に入力データDinを反転するインバータIV1と、第1のラッチパスと、第2のラッチパスと、図2に示したCエレメント回路22と、キーパ回路23と、を有する。第1のラッチパスは、インバータIV1の出力を遅延する遅延要素τ21と、トランスファーゲートMTGAと、ループ状に接続された2個のインバータMIA1およびMIA2と、を有する。第2のラッチパスは、トランスファーゲートMTGBと、ループ状に接続された2個のインバータMIB1およびMIB2と、を有する。スレーブラッチは、第1のラッチパスと、第2のラッチパスと、Cエレメント回路24と、キーパ回路25と、を有する。第1のラッチパスは、トランスファーゲートSTGAと、ループ状に接続された2個のインバータSIA1およびSIA2と、を有する。第2のラッチパスは、トランスファーゲートSTGBと、ループ状に接続された2個のインバータSIB1およびSIB2と、を有する。図3のBは、キーパ回路23および25の回路構成を示す図である。キーパ回路23および25は、2個のインバータをループ状に接続した回路であり、接続されるノードの状態を安定に保持するように作用する。マスタラッチの第1のラッチパスでは、インバータIV1の出力が、遅延要素21で遅延された後、トランスファーゲートMTGAに入力される。トランスファーゲートMTGAの出力は、インバータMIA1に入力される。インバータMIA1の出力は、インバータMIA2に入力されると共に、Cエレメント回路22に入力される。インバータMIA2の出力は、インバータMIA1に入力される。2個のインバータMIA1およびMIA2は、フリップフロップを形成する。トランスファーゲートMTGAは、クロックCLKに同期して状態が変化し、CLKがLの時に通過状態になり、CLKがHの時に遮断状態になる。また、インバータMIA2は、入力を反転する動作を行い、クロックCLKに同期して状態が変化し、CLKがLの時に出力が変化する状態に、CLKがHの時には出力が保持される状態になる。マスタラッチの第1のラッチパスでは、CLKがLの時に、遅延された反転入力データがトランスファーゲートMTGA通過してインバータMIA1に入力される。さらに、インバータMIA1の出力が、動作状態のインバータMIA2で反転されて、インバータMIA1に入力され、インバータMIA1とインバータMIA2が形成するフリップフロップに入力データが保持される。CLKがLからHに変化すると、トランスファーゲートMTGAは遮断状態になり、インバータMIA2は出力が変化しない状態になるので、第1のパスは、CLKがLからHに変化した時の状態を維持することになる。言い換えれば、第1のラッチパスは、CLKのLからHへの変化に同期して遅延した入力データDinを取り込み、取り込んだデータを保持する。マスタラッチの第2のラッチパスは、インバータIV1の出力が、遅延されずに入力される以外は、第1のラッチパスと同様の動作を行う。入力データDinにソフトエラーが発生しない場合には、マスタラッチの第1のラッチパスと第2のラッチパスには同じ正常な入力データが取り込まれて保持される。第1のラッチパスと第2のラッチパスが取り込む入力データには時間遅延があるため、入力データDinにソフトエラーが発生してパルス状の誤ったデータになった場合でも、誤ったデータが同時に第1のラッチパスと第2のラッチパスに取り込まれることはない。具体的には、入力データDinにおける誤ったデータのパルス幅が遅延要素21の遅延時間より短ければ、マスタラッチの第1のラッチパスと第2のラッチパスの両方に、同じ誤ったデータが取り込まれて保持されることはない。前述のように、Cエレメント回路22は、2つの入力が同じ場合のみ出力が変化し、2つの入力が異なる場合には直前の出力を維持する。マスタラッチの第1のラッチパスと第2のラッチパスに保持されたデータの両方が誤ったデータにはならないので、入力データDinにソフトエラーが発生した場合でも、Cエレメント回路22の出力は誤ったデータにならない。さらに、マスタラッチの第1のラッチパスと第2のラッチパスの一方でソフトエラーが発生して、一方に保持されたデータが誤ったデータに変化した場合も、第1のラッチパスと第2のラッチパスに保持されたデータが異なる状態になる。そのため、Cエレメント回路22の出力は変化せず、誤ったデータにならない。スレーブラッチの第1および第2のラッチパスは、Cエレメント回路22の出力が入力され、XCLKに同期して動作する以外は、マスタラッチの第2のラッチパスと同様の動作を行う。上記のように、マスタラッチのCエレメント回路22がソフトエラーによる誤ったデータを出力することはないので、マスタラッチの第1のラッチパスのように、遅延要素21を設ける必要はない。さらに、スレーブラッチの第1のラッチパスと第2のラッチパスの一方でソフトエラーが発生して、一方に保持されたデータが誤ったデータに変化した場合も、第1のラッチパスと第2のラッチパスに保持されたデータが異なる状態になる。そのため、Cエレメント回路22の出力は変化せず、誤ったデータにならない。以上のように、図3のデータ保持回路は、ソフトエラーにより入力データが一時的にパルス状に誤ったデータになっても、またデータ保持回路が保持しているデータにソフトエラーが発生しても、誤ったデータを出力することはない。図2および図3に示したデータ保持回路は、いずれも遅延要素を使用する。遅延要素は、例えば、容量素子、抵抗およびインバータなどにより実現されるが、一般に回路サイズが大きくなるという問題があった。また、遅延要素を使用するため、出力が得られるまでの応答時間が長くなり、高速のデータ保持回路の実現が難しいという問題があった。以下に説明する実施形態のラッチ回路およびデータ保持回路は、比較的小さな回路サイズで実現でき、応答時間も比較的短く、高速動作が可能である。図4は、第1実施形態のラッチ回路の構成を示す図である。図4に示すように、第1実施形態のラッチ回路は、インバータIV10と、トランスファーゲートTGと、ループ状に接続された4個のインバータIV11-IV14と、インバータIV15と、を有する。インバータIV11-IV14の駆動力ドライブ能力は、前段より後段になるほど大きくなる。言い換えれば、インバータIV11の駆動力<インバータIV12の駆動力<インバータIV13の駆動力<インバータIV14の駆動力の関係を有する。駆動力は、トランジスタのゲート幅などにより異ならせる。インバータIV10は、入力データDinを反転してトランスファーゲートTGに出力する。トランスファーゲートTGの出力は、インバータIV11およびIV15に入力される。インバータIV15の出力は、出力データDoutである。なお、インバータIV15を設けずに、インバータIV11の出力を出力データDoutとすることも可能である。4個のインバータIV11-IV14は、ループ状に接続されるので、フリップフロップを形成する。トランスファーゲートTGは、クロックCLKに同期して状態が変化し、CLKがLの時に通過状態になり、CLKがHの時に遮断状態になる。また、インバータIV14は、入力を反転する動作を行い、クロックCLKに同期して状態が変化し、CLKがLの時に出力が変化する状態に、CLKがHの時には出力が保持される状態になる。第1実施形態のラッチ回路では、CLKがLの時に、反転された入力データがトランスファーゲートTG通過してインバータIV11およびインバータIV15に入力される。さらに、インバータIV11の出力が、インバータIV12、IV13および動作状態のインバータIV14の順に伝達され、インバータIV14の出力は、インバータIV11の入力にフィードバックされる。インバータIV14の出力がインバータIV11の入力にフィードバックされているため、トランスファーゲートTGを通過してインバータIV11に入力される信号が、4個のインバータが形成するフリップフロップの状態を変化させるにはある程度の時間を要する。特に、インバータIV11の入力には、トランスファーゲートTGを通過した反転した入力データだけでなく、駆動力の大きなインバータIV14の出力も印加されているため、ある程度の時間が必要である。このように、入力データDinは、ある程度の時間が経過すると、4個のインバータが形成するフリップフロップに保持される。CLKがLからHに変化すると、トランスファーゲートTGは遮断状態になり、インバータIV11およびインバータIV14の出力が変化しない状態になるので、フリップフロップは、CLKがLからHに変化した時の状態を維持することになる。上記のように、第1実施形態のラッチ回路は、入力データDinが変化した状態をある程度の時間以上継続しないと保持しているデータを変化させない。ソフトエラーにより入力データDinが一時的にパルス状に誤ったデータになる場合、パルス幅は狭く、4個のインバータが形成するフリップフロップに保持されるデータを変化させることはできないので、ソフトエラーによる誤った入力データを保持することはない。このように、第1実施形態のラッチ回路は、入力データDinのソフトエラーによる影響を受けにくくなっている。次に、ラッチ回路内で、具体的には4個のインバータIV11-IV14のいずれかでソフトエラーによるパルス状の変化が発生した場合を考える。前述のように、ソフトエラーによる誤ったデータのパルス幅は小さいので、4個のインバータが形成するフリップフロップの状態を変化させることはできない。例えば、駆動力の小さな前段のインバータ例えばインバータIV11でソフトエラーによるパルス状の変化が発生した場合、インバータIV12、IV13およびIV14の順に状態を変化させる必要があり、それにはある程度の時間が必要である。そのため、パルス幅は小さなソフトエラーによる誤ったデータでは、フリップフロップの状態を変化させることはできない。また、駆動力の大きな後段のインバータ例えばインバータIV14でソフトエラーによるパルス状の変化が発生した場合、インバータの出力が変化すれば、フリップフロップの状態を変化させることができる。しかし、インバータの駆動力が大きいということは、インバータの入力もその分大きい必要があり、そもそも駆動力の大きなインバータの状態を変化させることができない。このように、第1実施形態のラッチ回路は、保持しているデータのソフトエラーによる影響を受けにくくなっている。以上説明したように、第1実施形態のラッチ回路は、ソフトエラーの影響を受けにくい。また、図2および図3の回路のように遅延要素を使用しないので、回路サイズを小さくできる。図4に示した第1実施形態のラッチ回路は、各種のデータ保持回路に応用することが可能である。図5は、図4に示した第1実施形態のラッチ回路を、マスタスレーブ型データ保持回路に適用した第2実施形態のデータ保持回路を示す図である。第2実施形態のデータ保持回路は、入力データDinを反転するインバータIV1と、第1マスタスレーブパスと、第2マスタスレーブパスと、Cエレメント回路31と、キーパ回路32と、インバータIV22と、を有する。第1マスタスレーブパスと第2マスタスレーブパスは、同じ構成を有する。Cエレメント回路31は、図2に示した回路14と同じ構成を有し、第1マスタスレーブパスと第2マスタスレーブパスの出力を受け、両方が同じ時に対応した出力を行い、異なる時には前の出力を維持する。インバータIV22は、Cエレメント回路31の出力を反転して出力データDoutとして出力する。キーパ回路32は、図3のBの構成を有し、Cエレメント回路31の出力を安定に保持する。第1マスタスレーブパスは、マスタラッチと、スレーブラッチと、を有する。マスタラッチは、図4に示した第1実施形態のラッチ回路と略同一の回路であるが、フリップフロップを形成する初段のインバータMIVA1から出力を得ていることが異なる。スレーブラッチは、図3のAに示したスレーブラッチと略同一の回路であるが、トランスファーゲートの変わりにクロック同期式のインバータIGAが使用されていることが異なる。マスタラッチの動作および特徴は、図4に示した第1実施形態のラッチ回路と略同一であり、スレーブラッチの動作および特徴は、図3のAに示した例と略同一であるから、説明は省略する。第2実施形態のデータ保持回路では、第1および第2マスタスレーブパスのマスタラッチは、第1実施形態のラッチ回路と同様に、入力データDinのソフトエラーによる影響を受けにくく、保持しているデータのソフトエラーによる影響を受けにくい。第1および第2マスタスレーブパスのスレーブラッチは、保持しているデータがソフトエラーにより変化する場合が起こり得るが、Cエレメント回路31が設けられているため、ソフトエラーに起因する誤ったデータを出力することはない。図6は、図3のAの遅延要素を使用したデータ保持回路と図5の第2実施形態のデータ保持回路の、遅延時間、1GHz動作時の消費電力パワーおよび回路面積を、図3のAのデータ保持回路を1として比較したシミュレーション結果を示す。第2実施形態のデータ保持回路では、遅延時間およびパワーが7~8改善し、面積が18改善した。図7は、図4に示した第1実施形態のラッチ回路を、マスタスレーブ型のデータ保持回路に使用した他の回路例を示す図である。図7のAは、一般的なマスタスレーブ型のデータ保持回路のマスタラッチに、図4に示した第1実施形態のラッチ回路を使用した例を示す。図7のBは、一般的なマスタスレーブ型のデータ保持回路のマスタラッチおよびスレーブラッチの両方に、図4に示した第1実施形態のラッチ回路を使用した例を示す。図7のAおよびBに示した回路の構成、動作および特徴は、これまでの説明から明らかであるので、詳しい説明は省略する。以上、実施形態を説明したが、フリップフロップを形成するループ状に接続されたインバータの個数は、偶数であることが必要であるが、4個以上であればよい。以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。