シングルイベント耐性のラッチ回路及びフリップフロップ回路
【課題】シングルイベント現象が発生しにくく、シングルイベントトランジェント(SET)現象が発生してもそれの回路への影響を排除することができるラッチ回路及びフリップフロップ回路を提供する。
【解決手段】形成される強電界領域を狭くするために、ラッチ回路をデュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとから構成する。SET現象の影響をクロックに遅延時間を設けることにより排除するが、その遅延時間によってホールド時間が増加させられることを防止するために、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが入力される。
【解決手段】形成される強電界領域を狭くするために、ラッチ回路をデュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとから構成する。SET現象の影響をクロックに遅延時間を設けることにより排除するが、その遅延時間によってホールド時間が増加させられることを防止するために、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが入力される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ラッチ回路及びフリップフロップ回路に関し、より詳しくは、シングルイベント耐性を有するラッチ回路及びフリップフロップ回路に関する。
【背景技術】
【0002】
フリップフロップ回路を含むメモリ素子、データラッチ回路などの半導体素子において、それを構成するトランジスタに、放射線、イオン線等の高エネルギー粒子が入射すると、そのエネルギー粒子の電離作用、励起作用などによって、素子内に電子−正孔対を生じ、電荷が発生することがある。この発生電荷が素子内のPN接合部の電界によって異なる領域に流れ込むこと(電荷収集)によってオフのトランジスタが誤動作して一時的にオンとなり、正常状態では流れることのない電流が素子内で流れ、これによってその半導体素子が記憶するデータが反転するような誤動作を起こすことがある。この現象は、シングルイベントアップセット(SEU)と呼ばれている。
【0003】
また、そのような高エネルギー粒子の入射による誤動作が、ある半導体素子のクロック信号入力端子やデータ入力端子に接続された外部の回路において発生し、その半導体素子に一時的に異常なクロック信号やデータ信号を送ることもある。この正常状態では流れることのない電流をシングルイベント過渡電流といい、このような現象はシングルイベントトランジェント(SET)と呼ばれている。このSETによってシングルイベント過渡電流が流れ込んだ半導体素子でも、それが記憶するデータが反転するような誤動作を起こすことがある。
【0004】
上記のSEUやSETのように、高エネルギー粒子の入射による半導体の誤動作をシングルイベント現象という。代表的なシングルイベント現象には、素子内部への高エネルギー粒子の入射が引き起こすSEUや、素子へ異常なシングルイベント過渡電流が流れ込むことによるSETなどがある。このシングルイベント現象は、高エネルギー粒子が存在しやすい環境である、高空、宇宙空間、放射線関連施設等でしばしば観察され、そのような環境下でのコンピュータの正常な動作の阻害要因となっている。そのような高エネルギー粒子を物理的に完全に遮蔽することによってシングルイベント現象を防止することは現実的な対策ではない。従って、シングルイベント現象を効果的に防止するためには、シングルイベント現象に単体で耐性を有する構造を有するメモリ素子が必要となる。
【0005】
これから説明するにあたり、本明細書中で使用する記号の説明を以下に示す:
CK 外部から入力される入力クロック信号;
CKi 内部で生成されるクロック信号(入力クロック信号CKと同相);
CKB 外部から入力される入力反転クロック信号;
CKBi 内部で生成される反転クロック信号(入力反転クロック信号CKBと同相);
D 外部から入力される入力データ信号;
G 外部から入力される入力クロック信号;
Gi 内部で生成されるクロック信号(入力クロック信号Gと同相)
GBi 内部で生成される反転クロック信号;
MO フリップフロップ回路の内部においてマスタからスレーブへと出力される中間出力信号;
Q 外部へ出力する出力データ信号;
QB 外部へ出力する反転出力データ信号;
XQ 外部へ出力する反転出力データ信号;
VDD 第1の電圧源からの電源電圧;及び
VSS 第2の電圧源からの電源電圧(0V)。
なおクロック信号は、それを反転させた反転クロック信号と対にして使用されることが多い。そのような正相と逆相のクロック信号の対を「相補クロック信号」と呼ぶことにする。クロック信号を表わす記号が、逆相を表わす「B」の接尾辞の有無だけの違いしかない2つのクロック信号が、相補クロック信号である。
【0006】
[従来のデータラッチ回路]
これから従来のデータラッチ回路の構成及び動作について説明する。図2は、従来のデータラッチ回路1の回路図であり、図1は、従来のデータラッチ回路1のためのクロック生成回路1C1の回路図である。クロック生成回路1C1は、入力を反転させるインバータ1I1から構成される。クロック生成回路1C1は、クロック信号として外部から入力される入力クロック信号Gから、それと極性が反対の反転クロック信号GBiを生成する動作を行う。生成された反転クロック信号GBiは、入力クロック信号Gとともにデータラッチ回路1に供給される。インバータ1I1は、ソース又はドレインのラインに関して直列に、第1の電圧源側(VDD)に接続されたノードから第2の電圧源側(VSS)に接続されたノードに向かって、pチャネルMOSトランジスタ1P1及びnチャネルMOSトランジスタ1N1がその順番に接続された構成を有する。
【0007】
図2は、従来のデータラッチ回路1の回路図である。クロックドインバータ1I3及びインバータ1I4は記憶ノードを構成する。入力データ信号Dが、クロックドインバータ1I2を通じて入力される。入力された入力データ信号Dは、記憶ノードに接続される。記憶ノードの出力すなわちデータラッチ回路1の出力として、クロックドインバータ1I3の出力がインバータ1I5からなるバッファ回路を通じて出力データ信号Qとして出力され、インバータ1I4の出力がインバータ1I6からなるバッファ回路を通じて反転出力データ信号XQとして出力される。
【0008】
図1のクロック生成回路1C1は、データラッチ回路1に入力される反転クロック信号GBiを生成するために、組み合わせて使用される。データラッチ回路1において、クロック信号Gがローレベルのときは、出力データ信号Qには、入力データ信号Dと同じ論理レベルが出力される(スルーモード、トランスペアレントモード)。クロック信号Gの立ち上がり時に、入力データ信号Dが入力段のクロックドインバータ1I2から取り込まれてラッチされ、入力クロック信号Gがハイレベルの間、保持される(ラッチモード)。ラッチされたデータの保持は、出力と入力とが交差接続されたクロックドインバータ1I3とインバータ1I4とで構成される記憶ノードで行われる。バッファ回路を構成するインバータ1I5及びインバータ1I6とから、それぞれ出力データ信号Q及び反転出力データ信号XQとして出力される。
【0009】
ここで、シングルイベント現象について考察する。例えばラッチモード時に、記憶ノードを構成するクロックドインバータ1I3及びインバータ1I4の中のいずれかのオフのトランジスタが高エネルギー粒子の入射によりオンとなったとする。これにより、そのトランジスタを含むインバータの出力が反対の論理側にレベルシフトし、その論理値の変化が他方のインバータに入力されて当該インバータの出力を反転させると、記憶ノードの論理値が反転してSEUが発生する。
【0010】
また、ラッチモードにおいては、入力段のクロックドインバータ1I2はオフであって入力データ信号Dを後段に伝達しないようにしており、記憶ノードのクロックドインバータ1I3はオンであって、論理状態を記憶・保持している。しかし、オフである入力段のクロックドインバータ1I2をオンにするようなSETによる電圧変化が上流から入力されたときは、入力データ信号Dが(反転されて)後段に出力されてしまい、かつ、記憶ノードのクロックドインバータ1I3はオフとなって論理状態の反転を許すようになる。このときに、入力データ信号Dが、記憶ノードで記憶されていた論理状態と相反する論理レベルであれば記憶データは反転することになり、シングルイベント現象が発生する。このように、従来のデータラッチ回路は、シングルイベント現象に対して非常に脆弱である。
【0011】
[従来のフリップフロップ回路]
次に従来のフリップフロップ回路の構成及び動作について説明する。図4は、従来のフリップフロップ回路2の回路図であり、図3は、従来のフリップフロップ回路2のためのクロック生成回路2C1の回路図である。このフリップフロップ回路2は、マスタスレーブ型Dフリップフロップである。クロックドインバータ2I4及びインバータ2I5は前段の記憶ノードを構成し、クロックドインバータ2I6及びインバータ2I7は後段の記憶ノードを構成する。入力データ信号Dが、バッファ回路として機能するインバータ2I3を通じて入力される。入力された入力データ信号Dは、トランスミッションゲート2S1を通じて前段の記憶ノードに接続される。前段の記憶ノードの出力は、トランスミッションゲート2S2を通じて後段の記憶ノードに接続される。後段の記憶ノードの出力すなわちフリップフロップ回路2の出力として、クロックドインバータ2I6の出力がインバータ2I8及びインバータ2I9からなるバッファ回路を通じて反転出力データ信号XQとして出力され、インバータ2I7の出力がインバータ2I10及びインバータ2I11からなるバッファ回路を通じて出力データ信号Qとして出力される。
【0012】
図3のクロック生成回路2C1は、フリップフロップ回路2に入力されるクロック信号CKi及び反転クロック信号CKBiを生成するために、組み合わせて使用される。フリップフロップ回路2において、入力クロック信号CKがローレベルのときには、クロック信号CKiはローレベル、反転クロック信号CKBiはハイレベルとなり、入力データ信号Dは、オンであるトランスミッションゲート2S1を通じて取り込まれる。しかしこのとき、トランスミッションゲート2S2はオフであり、そこから後段には入力データ信号Dは伝達されない。ここで、入力クロック信号CKがローレベルからハイレベルに変化すると、トランスミッションゲート2S1はオフとなって、入力データ信号Dはフリップフロップ回路2には取り込まれなくなる。しかし、クロック信号CKiがハイレベルに変化する直前の論理状態が、クロックドインバータ2I4及びインバータ2I5からなる記憶ノード(マスタ)に記憶され、それがオンとなったトランスミッションゲート2S2を通じて後段の記憶ノード(スレーブ)に伝達される。ただし後段のスレーブは、クロックドインバータ2I6がオフであるため、その記憶ノード内で論理レベルを記憶・保持していない。こうして、前段のマスタから伝達された出力は、インバータ2I8及びインバータ2I9からなるバッファ回路を通じて反転出力データ信号XQとして出力される。そして、前段のマスタから伝達された出力は、インバータ2I7で反転され、インバータ2I10及びインバータ2I11からなるバッファ回路を通じて出力データ信号Qとして出力される。さらに、入力クロック信号CKがハイレベルからローレベルに変化すると、トランスミッションゲート2S2はオフとなって、前段のマスタの出力は後段のスレーブに伝達されなくなる。これとともに、後段のスレーブのクロックドインバータ2I6がオンとなるため、後段のスレーブは直前の論理レベルを記憶・保持する。従って、出力データ信号Q及び反転出力データ信号XQとも、クロック信号CKiがローレベルに変化する直前の論理レベルを出力し続ける。
【0013】
ここで、シングルイベント現象について考察する。例えば入力クロック信号CKがローレベルで、フリップフロップ回路2の後段のスレーブが論理レベルを保持しているときに、その記憶ノードを構成するクロックドインバータ2I6及びインバータ2I7の中のオフであるいずれかのトランジスタが高エネルギー粒子の入射によりオンとなったとする。これにより、そのトランジスタを含むインバータの出力が反対の論理側にレベルシフトし、その論理値の変化が他方のインバータに入力されて当該インバータの出力を反転させると、記憶ノードの論理値が反転してSEUが発生する。
【0014】
また、入力クロック信号CKがハイレベルの状態においては、トランスミッションゲート2S1はオフであって入力データ信号Dは前段のマスタへ伝達・入力されないようになっており、前段のマスタのクロックドインバータ2I4はオンであって、論理状態を記憶・保持している。しかし、オフであるトランスミッションゲート2S1をオンにするようなSETによる電圧変化が上流から入力されたときは、入力データ信号Dが(反転されて)入力されてしまい、かつ、マスタのクロックドインバータ2I4はオフとなって論理状態の反転を許すようになる。このときに、入力データ信号Dが、記憶ノードで記憶されていた論理状態と相反する論理レベルであれば記憶データは反転することになり、シングルイベント現象が発生する。このように、従来のフリップフロップ回路は、シングルイベント現象に対して非常に脆弱である。
【0015】
[従来のシングルイベント耐性素子]
シングルイベント現象に耐性のある構造を有するインバータやメモリ素子としては、以下のようなものがあった(例えば、特許文献1参照。)。図6は、従来のシングルイベント耐性を有するデータラッチ回路3の回路図である。このデータラッチ回路3は、DICE(Dual Interlocked Storage Cell)回路とも称される。図5は、従来のデータラッチ回路3のためのクロック生成回路3C1の回路図である。これから図6を参照して、データラッチ回路3の構成を説明する。
【0016】
データラッチ回路3は、大きく、第1の入力(D)を受け取るための第1のデュアルポートインバータであって、第1の入力は第1のデュアルポートインバータに第1の組の通過ゲート(3S1及び3S3)を介して結合した第1のデュアルポートインバータ(3IP1)と、第1のデュアルポートインバータ(3IP1)に第2の組の通過ゲート(3S2及び3S4)を介して結合した第2のデュアルポートインバータ(3IP2)と、第1のデュアルポートインバータ(3IP1)と第2のデュアルポートインバータ(3IP2)に接続した出力と、を有するシングルイベントアップセット耐性ラッチ回路である。ここで、第1のデュアルポートインバータ(3IP1)と第2のデュアルポートインバータ(3IP2)との結合は、第2のデュアルポートインバータ(3IP2)の出力が第2の組の通過ゲート(3S2及び3S4)を介して第1のデュアルポートインバータ(3IP1)に結合するものである。
【0017】
第1のデュアルポートインバータ(3IP1)は、以下のような構成である。第1のデュアルポートインバータ(3IP1)は第1のインバータ(3I4)及び第2のインバータ(3I6)を含む。また、第1のインバータ(3I4)は第2のトランジスタ(3N6)に直列に接続された第1のトランジスタ(3P6)を含み、第2のインバータ(3I6)は第4のトランジスタ(3N10)に直列に接続された第3のトランジスタ(3P10)を含む。またさらに、第1のトランジスタのゲート(3P6)は、第4のトランジスタ(3N10)のゲートに接続されて第1のインバータの入力を提供し、第2のトランジスタ(3N6)のゲートは、第3のトランジスタ(3P10)のゲートに接続されて第2のインバータの入力を提供する。またさらに、第1(3P6)及び第2(3N6)のトランジスタは、第1のインバータ出力を提供し、第3(3P10)及び第4(3N10)のトランジスタは、第2のインバータ出力を提供する。またさらに、第1(3I4)及び第2(3I6)のインバータの入力は同じ入力を受け取り、有効な出力を第1のインバータ出力又は第2のインバータ出力に提供する。ここでは、第1のインバータ出力として反転出力QBがインバータ3I4の出力に接続されている。またさらに、第1(3P6)及び第3(3P10)のトランジスタはpチャネルトランジスタで、第2(3N6)及び第4(3N10)のトランジスタはnチャネルトランジスタである。
【0018】
第2のデュアルポートインバータ(3IP2)は、以下のような構成である。第2のデュアルポートインバータ(3IP2)は第1のインバータ(3I3)及び第2のインバータ(3I5)を含む。また、第1のインバータ(3I3)は第2のトランジスタ(3N3)に直列に接続された第1(3P3)のトランジスタを含み、第2のインバータ(3I5)は第4のトランジスタ(3N7)に直列に接続された第3のトランジスタ(3P7)を含む。またさらに、第1のトランジスタ(3P3)のゲートは第4のトランジスタ(3N7)のゲートに接続されて第1のインバータの入力を提供し、第2のトランジスタ(3N3)のゲートは第3のトランジスタ(3P7)のゲートに接続されて第2のインバータの入力を提供する。またさらに、第1(3P3)及び第2(3N3)のトランジスタは第1のインバータ出力を提供し、第3(3P7)及び第4(3N7)のトランジスタは第2のインバータ出力を提供する。またさらに、第1(3I3)及び第2(3I5)のインバータの入力は同じ入力を受け取り第1のインバータ出力又は第2のインバータ出力に有効な出力を提供する。またさらに、第1(3P3)及び第3(3P7)のトランジスタはpチャネルトランジスタで、第2(3N3)及び第4(3N7)のトランジスタはnチャネルトランジスタである。
【0019】
データラッチ回路3は、以下のような動作によって、シングルイベント現象をある程度抑制する。まず、入力クロック信号CKがローレベル、反転クロック信号CKBiがハイレベルであって、データラッチ回路3がラッチモードであるとする。ここで、ラッチモードに移行する直前の入力データ信号Dがローレベルであり、それがラッチされているものとする。この状態では、第1のデュアルポートインバータ3IP1(インバータ3I4、インバータ3I6)の入力がローレベルであり、出力がハイレベルである。そして、第2のデュアルポートインバータ3IP2(インバータ3I3、インバータ3I5)の入力がハイレベルであり、出力がローレベルである。シングルイベント現象は、オフのトランジスタがオンになることによって発生する。ここで、オフであるトランジスタ3N6にシングルイベント現象が発生し、オンになったとする。これにより、ハイレベルであったインバータ3I4の出力が一時的にローレベルになったとする。以下同様に、両方のトランジスタが一時的にオンになったインバータは、出力の論理レベルが反転するものとする。このインバータ3I4からのローレベルの出力は、インバータ3I3(それに含まれるトランジスタ3N3)とインバータ3I5(それに含まれるトランジスタ3P7)に入力される。インバータ3I3については、トランジスタ3N3は、オンであったのがオフになるため、インバータ3I3のトランジスタすべてがオフになる。従って、インバータ3I3の出力は時間の経過と共にハイインピーダンスとなるものの、ある程度は直前の論理レベルが保持されて、論理レベルは反転しない。従って、インバータ3I3は、その後段にシングルイベント現象の影響を伝達せずにブロックする。一方、インバータ3I5については、トランジスタ3P7は、オフであったのがオンになるため、インバータ3I5の出力は反転してハイレベルとなる。
【0020】
このインバータ3I5からのハイレベルの出力は、トランスミッションゲート3S4を通過して、インバータ3I6(それに含まれるトランジスタ3P10)とインバータ3I4(それに含まれるトランジスタ3N6)に入力される。インバータ3I6については、トランジスタ3P10は、オンであったのがオフになるため、インバータ3I6のトランジスタすべてがオフになる。従って、インバータ3I6の出力は時間の経過と共にハイインピーダンスとなるものの、ある程度は直前の論理レベルが保持されて、論理レベルは反転しない。従って、インバータ3I6は、その後段にシングルイベント現象の影響を伝達せずにブロックする。一方、インバータ3I4については、トランジスタ3N6への入力はローレベルからハイレベルに反転するため、これはトランジスタ3N6をオンにしようとし、当初仮定したシングルイベント現象を補強する方向に働く。しかし、前述のインバータ3I3及びインバータ3I6のように、それを構成する両方のトランジスタがオフとなって出力がハイインピーダンスとなり、後段の論理レベルに影響を伝達しないインバータが存在し、その後段での論理レベルは保持されるため、シングルイベント現象の状態が終了すると、元の状態に復帰することになる。このように、トランジスタのいずれか1個が上記のように誤動作しても、データラッチ回路3全体としては、シングルイベント現象が発生しにくいことになる。
【発明の開示】
【発明が解決しようとする課題】
【0021】
しかし、実験によると、上記の従来のデータラッチ回路3のシングルイベント耐性は必ずしも十分ではないことが明らかになってきた。例えば、高エネルギー粒子の入射によって2つ以上のトランジスタが同時に誤動作した場合には、記憶ノードの論理状態が反転したことがあった。また、上流からのクロック信号がSETにより反転した場合には、ラッチモードであったデータラッチ回路3が一時的にスルーモードになって入力データ信号を取り込み、それによって記憶していたデータが反転したことがあった。このように、シングルイベント対策を施したデータラッチ回路3においても、シングルイベント現象によって出力が反転する場合が観察された。シングルイベント現象は極めて有害な現象であるため、それに対する耐性はより高い方が望ましい。従って、さらに高いシングルイベント耐性を有するメモリ素子、データラッチ回路などの半導体素子が望まれていた。
【0022】
【特許文献1】米国特許第6327176号明細書
【課題を解決するための手段】
【0023】
本発明は、上記の課題に鑑みてなされたものであり、より高いシングルイベント耐性を有するラッチ回路、フリップフロップ回路を提供するものである。その課題は、以下のような特徴を有する本発明によって解決される。すなわち第1の観点に従う本発明は、デュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなるシングルイベント耐性ラッチ回路、すなわち、1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、デュアルポートインバータ(6IP1)の2出力及びデュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有することを特徴とするシングルイベント耐性ラッチ回路である。
【0024】
より具体的には、デュアルポートインバータは2つのインバータから構成される。さらに具体的には、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。またさらに具体的には、第1及び第3のトランジスタ(6P16,6P20)はpチャネルトランジスタで、第2及び第4のトランジスタ(6N16,6N20)はnチャネルトランジスタである。またさらに具体的には、2つのインバータが2つの入力を提供する。またさらに具体的には、2つのインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、入力段に並列インバータが追加される。またさらに具体的には、デュアルポートクロックドインバータは2つのクロックドインバータから構成される。またさらに具体的には、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。またさらに具体的には、第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。またさらに具体的には、2つのクロックドインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力される。またさらに具体的には、当該一方の記憶ノードへ入力される前縁エッジ遅延クロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、遅延時間は、0.5ナノ秒以上であり、かつ、相補クロック信号の1周期の1/2未満である。またさらに具体的には、トランジスタの対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離である。またさらに具体的には、所定の離隔距離は、2.0マイクロメートル以上である。
【0025】
第2の観点に従う本発明は、2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなるシングルイベント耐性フリップフロップ回路、すなわち、第1の組の入力を受け取るための2入力と、2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1のトランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合したような第1のデュアルポートインバータ(7IP1)と、第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、第2の組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合したような第2のデュアルポートインバータ(7IP3)と、第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、第2のデュアルポートインバータ(7IP3)の2出力及び第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、第2のデュアルポートインバータ(7IP3)の2入力に第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合していることを特徴とするシングルイベント耐性フリップフロップ回路である。
【0026】
より具体的には、デュアルポートインバータは2つのインバータから構成される。さらに具体的には、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。またさらに具体的には、第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタであり、第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのインバータが2つの入力を提供する。またさらに具体的には、2つのインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、入力段及び中間段に並列インバータが追加される。またさらに具体的には、デュアルポートクロックドインバータは2つのクロックドインバータから構成される。またさらに具体的には、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。またさらに具体的には、第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、第11(7N15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。またさらに具体的には、2つのクロックドインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、マスタ側の一方の記憶ノードへは、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力される。またさらに具体的には、マスタ側の一方の記憶ノードへ入力される前縁エッジ遅延クロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、スレーブ側の一方の記憶ノードへは、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行タイミングが前進させられるような後縁エッジ前進クロックが入力される。またさらに具体的には、後縁エッジ前進クロックは、ラッチモードからスルーモードへ移行したタイミングから前記のマスタ側の前縁エッジ遅延クロックと同じ遅延時間が経過したタイミングにおいてスルーモードからラッチモードに移行させる。またさらに具体的には、スレーブ側の一方の記憶ノードへ入力されるクロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、所定の遅延時間は、0.5ナノ秒以上であり、かつ、相補クロック信号の1周期の1/2未満である。またさらに具体的には、トランジスタの対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離である。またさらに具体的には、所定の離隔距離は、2.0マイクロメートル以上である。
【0027】
上記において、インバータ、クロックドインバータ、デュアルポートインバータ、デュアルポートクロックドインバータ、及びトランジスタなどの各構成要素を表わす用語は、その具体的形態や具体的呼称を限定するものではなく、その用語の構成要素が一般的に有する機能を備えたものを表わすためのものである。また、1つの構成要素が有する機能が2つ以上の構成要素によって実現されてもよく、2つ以上の構成要素が有する機能が1つの構成要素によって実現されてもよい。
【発明の効果】
【0028】
本発明によれば、ラッチ回路をデュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成としたため、形成される強電界領域が、トランスミッションゲートを含む従来のラッチ回路に比べて狭くなり、シングルイベント現象が発生しにくくなるという効果が得られる。さらに本発明によれば、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが入力される構成としたため、SET現象が発生してもそれの回路への影響を排除することができるとともに、ホールド時間がクロックに設けた遅延時間によりさらに増加させられることを防止することができるという効果が得られる。
【0029】
また他の観点に従う本発明によれば、フリップフロップ回路を2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成としたため、形成される強電界領域が、トランスミッションゲートを含む従来のフリップフロップ回路に比べて狭くなり、シングルイベント現象が発生しにくくなるという効果が得られる。さらに本発明によれば、マスタ側の一方の記憶ノードへは、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力され、スレーブ側の一方の記憶ノードへは、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行が前進させられるような後縁エッジ前進クロックが入力される構成としたため、SET現象が発生してもそれの回路への影響を排除することができるとともに、マスタ側とスレーブ側とで2種類のクロック信号を異なるタイミングとしても、伝搬遅延時間がさらに増加させられることを防止することができるという効果が得られる。
【発明を実施するための最良の形態】
【0030】
[デュアルポートインバータの構成]
これから回路図(図7〜図16)を参照して、本発明の説明を行う。まず、本発明の回路に含まれる回路単位である、デュアルポートインバータ4とデュアルポートクロックドインバータ5の説明を行う。図7は、デュアルポートインバータ4の構成を表わす回路図である。デュアルポートインバータ4は、第1のインバータ(4I1)及び第2のインバータ(4I2)を含む。第1のインバータ(4I1)は第2のトランジスタ(4N1)に直列に接続された第1のトランジスタ(4P1)を含み、第2のインバータ(4I2)は第4のトランジスタ(4N2)に直列に接続された第3のトランジスタ(4P2)を含む。第1のトランジスタ(4P1)のゲートは、第4のトランジスタ(4N2)のゲートに接続されて第1のインバータ入力IN1を提供し、第2のトランジスタ(4N1)のゲートは、第3のトランジスタ(4P2)のゲートに接続されて第2のインバータ入力IN2を提供する。第1及び第2のトランジスタ(4P1,4N1)は、第1のインバータ出力OUT1を提供し、第3及び第4のトランジスタ(4P2,4N2)は、第2のインバータ出力OUT2を提供する。第1のインバータ入力IN1及び第2のインバータ入力IN2は同じ入力を受け取り、有効な出力を第1のインバータ出力OUT1又は第2のインバータ出力OUT2に提供する。第1及び第3のトランジスタ(4P1,4P2)はpチャネルトランジスタで、第2及び第4のトランジスタ(4N1,4N2)はnチャネルトランジスタである。
【0031】
次に、デュアルポートインバータ4の動作について説明する。表1はデュアルポートインバータ4の論理動作を表わす表である。表1から分かるように、第1のインバータ入力IN1と第2のインバータ入力IN2の論理レベルが同じときは、それを反転させた論理レベルが第1のインバータ出力OUT1と第2のインバータ出力OUT2から出力される。ここで、デュアルポートインバータ4の前段でSETが発生したために、それぞれ異なる論理レベルが第1のインバータ入力IN1と第2のインバータ入力IN2に入力された場合について考えると、表1に示すように、第1のインバータ出力OUT1及び第2のインバータ出力OUT2の一方がハイインピーダンスとなり、他方が不確定となる。出力がハイインピーダンスの場合、それを出力したインバータを構成するトランジスタは両方ともオフであり、出力が不確定の場合、それを出力したインバータを構成するトランジスタは両方ともオンである。この場合において、いずれか一方の出力は、必ずハイインピーダンスとなる。出力がハイインピーダンスの場合、そこに接続されたラインの論理レベルはある程度は保持されるため、SETによって第1のインバータ入力IN1と第2のインバータ入力IN2の論理レベルがそれぞれ異なる状態になっても、SETの影響は、出力がハイインピーダンスの後段のラインには伝達されず、ブロックされることになる。
【表1】
【0032】
[デュアルポートクロックドインバータの構成]
図8は、デュアルポートクロックドインバータ5の構成を表わす回路図である。デュアルポートクロックドインバータ5は第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)を含む。第1のクロックドインバータ(5I1)は第1、第2、第3、及び第4のその順番に直列に接続されたトランジスタ(5P1,5P2,5N1,5N2)を含み、第2のクロックドインバータ(5I2)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(5P3,5P4,5N3,5N4)を含む。第1(5P1)又は第2(5P2)のいずれか一方のトランジスタ(ここでは5P1)のゲートは第7(5N3)又は第8(5N4)のいずれか一方のトランジスタ(ここでは第8(5N4))のゲートに接続されて第1のインバータ入力IN1を提供する。第3(5N1)又は第4(5N2)のいずれか一方のトランジスタ(ここでは第4(5N2))のゲートは第5(5P3)又は第6(5P4)のいずれか一方のトランジスタ(ここでは第5(5P3))のゲートに接続されて第2のインバータ入力IN2を提供する。第1(5P1)又は第2(5P2)の他方のトランジスタ(ここでは第2(5P2))のゲートと第3(5N1)又は第4(5N2)の他方のトランジスタ(ここでは第3(5N1))のゲートには、お互いに相補な論理値の相補クロック信号(CKBi,CKi)が入力される。第5(5P3)又は第6(5P4)の他方のトランジスタ(ここでは第6(5P4))のゲートと第7(5N3)又は第8(5N4)の他方のトランジスタ(ここでは第7(5N3))のゲートには、お互いに相補な論理値の相補クロック信号(CKBi,CKi)が入力される。第1(5P1)、第2(5P2)、第3(5N1)、及び第4(5N2)のトランジスタは第1のインバータ出力を提供し、第5(5P3)、第6(5P4)、第7(5N3)、及び第8(5N4)のトランジスタのトランジスタは第2のインバータ出力を提供する。第1のインバータ入力IN1及び第2のインバータ入力IN2は同じ入力を受け取り、第1のインバータ出力OUT1又は第2のインバータ出力OUT2に有効な出力を提供する。第1(5P1)、第2(5P2)、第5(5P3)、及び第6(5P4)のトランジスタはpチャネルトランジスタで、第3(5N1)、第4(5N2)、第7(5N3)、及び第8(5N4)のトランジスタはnチャネルトランジスタである。ここで、第1のクロックドインバータ(5I1)と第2のクロックドインバータ(5I2)に入力される相補クロック信号のタイミングを異なるものとすることも可能である。
【0033】
次に、デュアルポートクロックドインバータ5の動作について説明する。表2はデュアルポートクロックドインバータ5の論理動作を表わす表である。表2から分かるように、まず、CKiが論理レベル0のときは、第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)ともオフになるため、出力は、第1のインバータ入力IN1及び第2のインバータ入力IN2の論理レベルにかかわらず、ハイインピーダンスとなる。このため、デュアルポートクロックドインバータ5は、そこへの入力を後段の出力には伝達せず、また後段の論理レベルを保持するように動作する。次にCKiが論理レベル1のときは、第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)ともオンになり、全体の動作としては前述のデュアルポートインバータ4と同じ動作を行うことになる。
【表2】
【0034】
[データラッチ回路6]
これから回路図(図9〜図11)及びタイミング図(図17)を参照して、本発明の一実施形態としてのデータラッチ回路6の構成及び動作を説明する。図11は、本発明の第1の実施形態に係る、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2を有するデータラッチ回路6の構成を表わす回路図である。
【0035】
[データラッチ回路6の構成]
データラッチ回路6は、デュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成である。すなわちデータラッチ回路6は、1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、デュアルポートインバータ(6IP1)の2出力及びデュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有する。デュアルポートインバータ(6IP1)は、前記のデュアルポートインバータ4と同様の構成をしており、デュアルポートクロックドインバータ(6IP2)は、前記のデュアルポートクロックドインバータ5と同様の構成をしている。
【0036】
デュアルポートインバータ(6IP1)は、以下のような構成である。まず、デュアルポートインバータは2つのインバータから構成される。具体的には、デュアルポートインバータ(6IP1)は、第1のインバータ(6I9)及び第2のインバータ(6I11)を含む。また、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。すなわち、第1のインバータ(6I9)は第2のトランジスタ(6N16)に直列に接続された第1のトランジスタ(6P16)を含み、第2のインバータ(6I11)は第4のトランジスタ(6N20)に直列に接続された第3のトランジスタ(6P20)を含む。さらに、2つのインバータが2つの入力を提供する。すなわち、第1のトランジスタ(6P16)のゲートは、第4のトランジスタ(6N20)のゲートに接続されて第1のインバータ入力を提供し、第2のトランジスタ(6N16)のゲートは、第3のトランジスタ(6P20)のゲートに接続されて第2のインバータ入力を提供する。さらに、2つのインバータが2つの出力を提供する。すなわち、第1のトランジスタ(6P16)及び第2のトランジスタ(6N16)は、第1のインバータ出力を提供し、第3のトランジスタ(6P20)及び第4のトランジスタ(6N20)は、第2のインバータ出力を提供する。さらに、2つのインバータ入力は同じ入力を受け取る。すなわち、第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を第1のインバータ出力又は第2のインバータ出力に提供する。さらに、第1のトランジスタ(6P16)及び第3のトランジスタ(6P20)はpチャネルトランジスタで、第2のトランジスタ(6N16)及び第4のトランジスタ(6N20)はnチャネルトランジスタである。
【0037】
デュアルポートクロックドインバータは2つのクロックドインバータから構成される。すなわち、デュアルポートクロックドインバータ(6IP2)は第1のクロックドインバータ(6I8)及び第2のクロックドインバータ(6I10)を含む。さらに、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。すなわち、第1のクロックドインバータ(6I8)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(6P13,6P14,6N13,6N14)を含み、第2のクロックドインバータ(6I10)は第9、第10、第11、及び第12のその順番に直列に接続されたトランジスタ(6P17,6P18,6N17,6N18)を含む。さらに、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。すなわち、第5(6P13)又は第6(6P14)のいずれか一方のトランジスタのゲートは第11(6N17)又は第12(6N18)のいずれか一方のトランジスタのゲートに接続されて第3のインバータ入力を提供し、第7(6N13)又は第8(6N14)のいずれか一方のトランジスタのゲートは第9(6P17)又は第10(6P18)のいずれか一方のトランジスタのゲートに接続されて第4のインバータ入力を提供し、第5(6P13)又は第6(6P14)の他方のトランジスタのゲートと第7(6N13)又は第8(6N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、第9(6P17)又は第10(6P18)の他方のトランジスタのゲートと第11(6N17)又は第12(6N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、第1のトランスミッションゲート(6S1)は、それに含まれるpチャネルトランジスタ(6P15)とnチャネルトランジスタ(6N15)のそれぞれのゲートに第1のクロックドインバータ(6I8)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、及び第2のトランスミッションゲート(6S2)は、それに含まれるpチャネルトランジスタ(6P19)とnチャネルトランジスタ(6N19)のそれぞれのゲートに第2のクロックドインバータ(6I10)と相反するオンオフ動作をする極性で第3の相補クロック信号が入力される。ここで、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードと呼ぶ。さらに、2つのクロックドインバータが2つの出力を提供する。すなわち、第5(6P13)、第6(6P14)、第7(6N13)、及び第8(6N14)のトランジスタは第3のインバータ出力を提供し、第9(6P17)、第10(6P18)、第11(6N17)、及び第12(6N18)のトランジスタのトランジスタは第4のインバータ出力を提供する。さらに、2つのインバータ入力は同じ入力を受け取る。すなわち、第3及び第4のインバータ入力は同じ入力を受け取り、第3のインバータ出力又は第4のインバータ出力に有効な出力を提供する。さらに、第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタである。このような構成にすることによって、それぞれのインバータが二重化されるため、シングルイベント現象による誤作動を抑えることができる。デュアルポートインバータとトランスミッションゲートの組み合わせでも、デュアルポートクロックドインバータと論理的に同じ動作を行わせることができるが、そのような(デュアルポート)インバータとトランスミッションゲートとの組み合わせによる回路構造では、トランスミッションゲートのトランジスタがオンの場合でも、ソース/ドレインの電圧レベルによっては強電界領域が広く形成され、それがシングルイベント現象の発生原因となり得るという欠点があった。本発明のように、それらに代えてクロックドインバータを使用すると、形成される強電界領域が、トランスミッションゲートに比べて狭くなるため、シングルイベント現象が発生しにくくなるという効果が得られる。
【0038】
データラッチ回路6は、入力段に並列インバータが追加されると好適である。すなわち好適には、データラッチ回路6は、第3のインバータ(6I6)と、第3のインバータと入力がお互いに接続された第4のインバータ(6I7)と、をさらに有し、第3のインバータ(6I6)の出力は、第1のトランスミッションゲート(6S1)を介して第1のインバータ入力に接続され、及び第4のインバータ(6I7)の出力は、第2のトランスミッションゲート(6S2)を介して第2のインバータ入力に接続される。このような構成にすることによって、入力データ信号Dを別々のインバータを経由させて、第1のトランスミッションゲート(6S1)を通じて第1のインバータ(6I9)へ、及び第2のトランスミッションゲート(6S2)を通じて第2のインバータ(6I11)へ接続することができる。インバータにおいては、出力側から入力側へは信号が伝達されないため、一方のインバータの下流で発生した誤作動が、他方のインバータの下流に影響を及ぼすことがない。これによって、デュアルポートインバータ(6IP1)の2つのインバータ6I9と6I11とが完全に分離されるため、それらの上流のノードを介した相互の影響を排除することができ、より良好なシングルイベント耐性を得ることができる。
【0039】
ここで一般に、半導体論理回路に含まれるトランジスタなどの素子は、小型化、高速化の観点から高密度に配置することが望ましいとされている。そして、α線ソフトエラーに代表される従来問題とされていた誤動作は、その原因となる粒子のエネルギーが小さく、誤動作の原因となる電荷が発生する電離領域は非常に狭いものであり、例えば最新の90nmプロセスの半導体であっても、1つのα線粒子が隣接したトランジスタを同時に誤動作させることはない。これは以下のような理由による。荷電粒子が物質にどれだけの電荷的な影響を与えるかという指標としては線エネルギー付与(LET, Linear Energy Transfer)や電離領域の半径などが一般的に使用される。線エネルギー付与とは、エネルギーをもった粒子あるいは荷電した粒子が物質中を通過する際、飛跡に沿って単位長さ当りに失うエネルギーのことであり、この失われたエネルギーがその物質を構成する原子に移動して電離を生じさせることになる。それによって粒子の飛跡を中心とした円柱状の電離領域が生じるが、この電離領域の半径が電気的な影響の及ぶ範囲である。そしてこの電離領域は、それを通過する粒子線の線エネルギー付与が同じ場合、物質の種類が同じでさらに不純物濃度が同じであれば同じ半径となる。具体的には、α線が被照射物に与える単位エネルギーである線エネルギー付与の最大値は0.6MeV/(mg/cm2)くらいであり、α線が物質内に発生させる円柱状の電離領域は、シリコンにおいては半径が数十nm程度のごく狭いものである。このため、そのような電離領域の半径では、90nmプロセスの半導体であっても隣接したトランジスタが同時に誤動作することはない。
本件発明の課題は宇宙空間などにおける高エネルギー粒子線によるシングルイベント耐性を向上させるものであるところ、誤動作の原因として一番問題となる粒子は鉄イオンなどの重イオン粒子である。ここに、鉄イオン粒子線の線エネルギー付与の最大値は32MeV/(mg/cm2)程度でα線の50倍以上もあり、電離領域の半径もシリコンにおいては1μm(1000nm)程度の非常に大きなものである。また、鉄イオン粒子線が半導体に対して斜めに入射したときには、線エネルギー付与の最大値は40MeV/(mg/cm2)程度にもなる。従って、通常のプロセスの半導体では、1つの鉄イオン粒子線によって発生させられた電離領域の中に複数のMOSトランジスタが含まれてしまうことになるため、単にトランジスタを二重化しただけでは、それに含まれる両方のMOSトランジスタが簡単に同時に誤動作してしまうことになる。このような理由より、データラッチ回路6は、トランジスタが離間されて配置されると好適である。すなわち好適には、データラッチ回路6においては、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記のクロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離とされる。このような隣り合った導電型が異なるトランジスタの組み合わせは、定常状態においてはオンオフの状態が一致するものであるため、両方がオフ状態のときには両方とも同時に誤動作し得るからである。このような構成にすると、同時にSETが発生するとデータラッチ回路6の論理状態が反転してしまうトランジスタの対の対角線距離が大きくなるため、1回の高エネルギー粒子の入射によって、その対のトランジスタが同時に反転してしまう可能性を極めて小さくすることができる。
【0040】
具体的には、トランジスタ6P14−トランジスタ6N16−トランジスタ6P18−トランジスタ6N20の間の距離、及びトランジスタ6N13−トランジスタ6P16−トランジスタ6N17−トランジスタ6P20の間の距離を所定の離隔距離以上とすると好適である。なお、その離隔距離が大きい方が、良好なシングルイベント耐性が得られる。具体的には、製造プロセス、基板のキャリア密度などによって変化するが、例えば、離隔距離を2.0μm(マイクロメートル)以上、2.9μm以上などとすると良好な結果が得られた。
【0041】
[クロック生成回路]
次に、クロック生成回路について説明する。図9のクロック生成回路6C1及び図10のクロック生成回路6C2は、データラッチ回路6に入力されるクロック信号CK1、CKB1、CK3、及びCKB3を生成するために、組み合わせて使用される。図17は、データラッチ回路6で使用されるクロック信号のタイミング図である。
【0042】
クロック生成回路6C1は、図9に示すように、インバータ(6I1,6I2,6I3,6I4,6I5)を縦列に5段接続したものである。クロック生成回路6C1は、入力クロック信号CKが入力され、それを元に、反転クロック信号CKB1、クロック信号CK1、クロック信号CK2、反転クロック信号CKB2を生成する。ここで、インバータ6I3のトランジスタのゲート長は他のインバータのゲート長と比較して大きく形成されており、インバータ6I3を挟む図9のX1−X2間で所定のクロック遅延時間が得られるようになっている。インバータ6I3のトランジスタのゲート長は、必要なクロック遅延時間の長さによって定められる。具体的には、例えば、他のインバータのトランジスタのゲート長が0.18μmである場合、それの数倍から数十倍程度の値(例えば、10倍程度)とすることができる。トランジスタのゲート長が大きくなると電圧の変化が遅くなるため、それを逆に利用して、ゲート長を制御することによって任意の遅延時間を設定することができる。このため、クロック信号CK2及び反転クロック信号CKB2のタイミングは、入力クロック信号CK、反転クロック信号CKB1、及びクロック信号CK1から、所定の遅延時間を有する。図17に、それらの様子を示す。図17で、「遅延時間」と示した時間だけ、クロック信号CK2及び反転クロック信号CKB2のタイミングは全体が遅延させられる。
【0043】
一方の記憶ノードへ入力される前縁エッジ遅延クロック(クロック信号CK3及び反転クロック信号CKB3)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路6C2は、図10の下段に示すような論理回路を、例えば図10の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路6C2には、反転クロック信号CKB1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK3が生成され、それがインバータで反転させられて反転クロック信号CKB3が生成される。
【0044】
このクロック生成回路6C1とクロック生成回路6C2とを組み合わせることにより、以下のような特徴を有するクロック信号を得ることができる。図17を参照する。ここでは、一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが生成されている。ここに、記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を前縁エッジと呼ぶことにする。すなわち、ローレベルのときに第2のトランスミッションゲート(6S2)がオンになる極性である、第3の相補クロック信号の内の正相信号(CK3)の立ち上がりは、ローレベルのときに第1のトランスミッションゲート(6S1)がオンになる極性である、第1の相補クロック信号の内の正相信号(CK1)の立ち上がりと同じタイミングであり、かつ、当該第3の相補クロック信号の内の当該正相信号(CK3)の立ち下がりであるクロックの前縁エッジは、当該第1の相補クロック信号の内の当該正相信号(CK1)の立ち下がりから所定の遅延時間を有するようなタイミングであるようにクロックのエッジが遅延させられたことを特徴とするクロック信号を得ることができる。クロック信号CK2及び反転クロック信号CKB2は、データラッチ回路6に入力される、クロック信号CK3及び反転クロック信号CKB3を生成するための中間的なクロック信号である。図17に、これらのクロック信号の相互関係を示す。クロック信号CK3の立ち下がりである前縁エッジはクロック信号CK1の立ち下がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち上がりは同じタイミングである。また、反転クロック信号CKB3の立ち上がりである前縁エッジは反転クロック信号CKB1の立ち上がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち下がりのタイミングは同じである。
【0045】
第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0046】
ここで、第1のトランスミッションゲート(6S1)と第2のトランスミッションゲート(6S2)には、異なるクロック信号が入力される。すなわち、第1のトランスミッションゲート(6S1)には、クロック信号CK1と反転クロック信号CKB1が、第2のトランスミッションゲート(6S2)にはクロック信号CK3と反転クロック信号CKB3が入力される。また、デュアルポートクロックドインバータ(6IP2)を構成する第1のクロックドインバータ(6I8)と第2のクロックドインバータ(6I10)にも、同様に異なるクロック信号が入力される。すなわち、第1のクロックドインバータ(6I8)には、クロック信号CK1と反転クロック信号CKB1が、第2のクロックドインバータ(6I10)にはクロック信号CK3と反転クロック信号CKB3が入力される。このような構成にすることによって、二重化された回路の片側の特定の動作のタイミングを遅らせることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、SETにより誤った入力がなされたとしても、それによって第1記憶ノードと第2記憶ノードのデータが変化してしまうことを防止することができる。
【0047】
なお、二重化された回路の片側の動作タイミングを全体的に単に遅らせるだけだと不都合が生じる。例えば、クロック信号CK3に代えてクロック信号CK2を、反転クロック信号CKB3に代えて反転クロック信号CKB2を入力したとするとどのような動作になるかを考察する。図17を参照する。クロック信号CK3及び反転クロック信号CKB3は、それぞれ立ち下がり及び立ち上がりのタイミングのみに遅延時間が設けられているのに対し、クロック信号CK2及び反転クロック信号CKB2は、波形全体が遅延させられている。しかしこの場合、入力クロック信号CKと出力データ信号Qの間の伝搬遅延時間や、入力クロック信号CKが反転出力データ信号XQとして出力されるまでの遅れ時間である伝搬遅延時間が、設けられた遅延時間だけ増加することになる。これは、クロック信号の入力以後にデータ入力信号を保持しなければならない時間であるホールド時間が、その設けられた遅延時間によりさらに増加させられることを意味する。すなわち、入力クロック信号CK1が立ち上がってから、その設けられた遅延時間の間は、ホールド時間ということになり、データ入力信号の論理レベルを変化させることができなくなる。従って、これが新たなタイミングペナルティとなる。
【0048】
一方、クロック信号CK3及び反転クロック信号CKB3に対して、それぞれ立ち下がり及び立ち上がりのタイミングのみに遅延時間を設け、それぞれ立ち上がり及び立ち下がりのタイミングには遅延時間を設けないという本発明のようなタイミングの構成とすれば、第1記憶ノード(クロック信号CK1及び反転クロック信号CKB1が入力されるノード)がデータをラッチしたタイミングにおいて、第2記憶ノード(クロック信号CK3及び反転クロック信号CKB3が入力されるノード)もデータをラッチするため、ホールド時間がクロックに設けた遅延時間によりさらに増加させられることを防止することができる。これによって、応答特性を劣化させることなく、シングルイベント耐性を向上させることができる。
【0049】
なお、クロックの遅延時間は、クロック動作に影響を与えない範囲で大きい方がよい。具体的には、0.5ナノ秒以上であれば好適であり、0.9ナノ秒以上であればより好適である。さらには、5ナノ秒以上であればさらにより好適である。なお、遅延時間を無制限に大きくすると、後続のクロックとの境目がなくなってクロック動作に支障を来すため、遅延時間は、クロック信号の1周期の1/2未満とする必要がある。
【0050】
[データラッチ回路6の動作]
これからデータラッチ回路6の動作を、図11の回路図及び図17のタイミング図を参照して説明する。図17のクロック信号相互間のタイミングを表に表わすと表3のようになる。期間Bはスルーモードの期間に対応し、期間A及びCはラッチモードの期間に対応する。
【表3】
【0051】
まず、期間Aの場合について説明する。ここでは、第1記憶ノードはスルーモード(トランスミッションゲート6S1はオンであり、クロックドインバータ6I8はオフ)であり、第2記憶ノードはラッチモード(トランスミッションゲート6S2はオフであり、クロックドインバータ6I10はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、データラッチ回路6全体としてラッチモードである。このため、期間Aにおいては入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、データラッチ回路6の出力に影響を与えない。
【0052】
次に、期間Bの場合について説明する。ここでは、第1記憶ノードはスルーモード(トランスミッションゲート6S1はオンであり、クロックドインバータ6I8はオフ)であり、第2記憶ノードもスルーモード(トランスミッションゲート6S2はオンであり、クロックドインバータ6I10はオフ)である。この状態では、データラッチ回路6全体としてスルーモードである。この状態では、第1記憶ノード及び第2記憶ノードともスルーモードであるため、入力データ信号DにSETによって誤った論理レベルの入力がされると、それはデータラッチ回路6の出力として出力される。
【0053】
次に、期間Cの場合について説明する。ここでは、第1記憶ノードはラッチモード(トランスミッションゲート6S1はオフであり、クロックドインバータ6I8はオン)であり、第2記憶ノードもラッチモード(トランスミッションゲート6S2はオフであり、クロックドインバータ6I10はオン)である。この状態では、データラッチ回路6全体としてラッチである。
【0054】
デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2で構成される記憶ノードは、それぞれのインバータの出力が他方のインバータに入力されるため、データを保持することになる。
【0055】
この状態では、入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、データラッチ回路6の出力に影響を与えない。また、高エネルギー粒子が入射していずれか1つのトランジスタを誤動作させたとしても、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2のインバータは二重化されているため、デュアルポートインバータおよびデュアルポートクロックドインバータの動作の説明において上述したように、シングルイベント現象は防止される。
【0056】
上記のように、クロックに遅延を設けることによって、入力データ信号D又は入力クロック信号CKにSET信号が伝搬してきた場合において、入力されるSET信号の継続時間がクロックに設けた遅延時間より短い限り、それが両方の記憶ノードに同じタイミングで入力されることを防止することができ、それによって、従来のデータラッチ回路では発生していた誤動作を防止することができる。
【0057】
[フリップフロップ回路7]
これから回路図(図12〜図16)及びタイミング図(図18)を参照して、本発明の一実施形態としてのフリップフロップ回路7の構成及び動作を説明する。図15及び図16は、本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7の構成を表わす回路図である。フリップフロップ回路7は、入力データ信号Dが入力され、中間出力信号MOをスレーブに出力する、デュアルポートインバータ7IP1とデュアルポートクロックドインバータ7IP2から構成されるマスタと、マスタからの中間出力信号MOが入力され、出力データ信号Qを出力し、デュアルポートインバータ7IP3とデュアルポートクロックドインバータ7IP4から構成されるスレーブと、から構成される。図15はフリップフロップ回路7のマスタの回路図であり、図16はフリップフロップ回路7のスレーブの回路図である。
【0058】
[フリップフロップ回路7の構成]
フリップフロップ回路7は、2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成である。すなわち、フリップフロップ回路7は、第1の組の入力を受け取るための2入力と2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1トランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合した第1のデュアルポートインバータ(7IP1)と、第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、第2の組の入力を受け取るための2入力と2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第2の組のトランスミッションゲート(7S3,7S4)を介して結合した第2のデュアルポートインバータ(7IP3)と、第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、第2のデュアルポートインバータ(7IP3)の2出力及び第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、第2のデュアルポートインバータ(7IP3)の2入力に第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合している。デュアルポートインバータ7IP1及び7IP3は、前記のデュアルポートインバータ4と同様の構成をしており、デュアルポートクロックドインバータ7IP2及び7IP4は、前記のデュアルポートクロックドインバータ5と同様の構成をしている。
【0059】
第1のデュアルポートインバータ(7IP1)及び第2のデュアルポートインバータ(7IP3)は、以下のような構成である。すなわち、デュアルポートインバータは2つのインバータから構成される。具体的には、第1のデュアルポートインバータ(7IP1)は、第1のインバータ(7I9)及び第2のインバータ(7I11)を含み、第2のデュアルポートインバータ(7IP3)は、第3のインバータ(7I15)及び第4のインバータ(7I17)を含む。また、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。すなわち、第1のインバータ(7I9)は第2のトランジスタ(7N17)に直列に接続された第1のトランジスタ(7P17)を含み、第2のインバータ(7I11)は第4のトランジスタ(7N21)に直列に接続された第3のトランジスタ(7P21)を含み、第3のインバータ(7I15)は第6のトランジスタ(7N27)に直列に接続された第5のトランジスタ(7P27)を含み、前記第4のインバータ(7I17)は第8のトランジスタ(7N31)に直列に接続された第7のトランジスタ(7P31)を含む。さらに、2つのインバータが2つの入力を提供する。すなわち、第1のトランジスタ(7P17)のゲートは、前記第4のトランジスタ(7N21)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(7N17)のゲートは、前記第3のトランジスタ(7P21)のゲートに接続されて第2のインバータ入力を提供し、前記第5のトランジスタ(7P27)のゲートは、前記第8のトランジスタ(7N31)のゲートに接続されて第3のインバータ入力を提供し、及び前記第6のトランジスタ(7N27)のゲートは、前記第7のトランジスタ(7P31)のゲートに接続されて第4のインバータ入力を提供する。さらに、2つのインバータが2つの出力を提供する。すなわち、前記第1(7P17)及び第2(7N17)のトランジスタは、第1のインバータ出力を提供し、前記第3(7P21)及び第4(7N21)のトランジスタは、第2のインバータ出力を提供し、前記第5(7P27)及び第6(7N27)のトランジスタは、第3のインバータ出力を提供し、及び前記第7(7P31)及び第8(7N31)のトランジスタは、第4のインバータ出力を提供する。2つのインバータ入力は同じ入力を受け取る。すなわち、第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供し、第3及び第4のインバータ入力は同じ入力を受け取り、有効な出力を前記第3のインバータ出力又は前記第4のインバータ出力に提供する。第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタで、第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタである。
【0060】
デュアルポートクロックドインバータは2つのクロックドインバータから構成される。すなわち、第1のデュアルポートクロックドインバータ(7IP2)は第1のクロックドインバータ(7I8)及び第2のクロックドインバータ(7I10)を含み、第2のデュアルポートクロックドインバータ(7IP4)は第3のクロックドインバータ(7I14)及び第4のクロックドインバータ(7I16)を含む。クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。すなわち、第1のクロックドインバータ(7I8)は第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のその順番に直列に接続されたトランジスタを含み、第2のクロックドインバータ(7I10)は第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のその順番に直列に接続されたトランジスタを含み、第3のクロックドインバータ(7I14)は第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のその順番に直列に接続されたトランジスタを含み、第4のクロックドインバータ(7I16)は第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のその順番に直列に接続されたトランジスタを含む。2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。すなわち、第9(7P14)又は第10(7P15)のいずれか一方のトランジスタのゲートは第15(7N19)又は第16(7N18)のいずれか一方のトランジスタのゲートに接続されて第5のインバータ入力を提供し、第11(7N15)又は第12(7N14)のいずれか一方のトランジスタのゲートは第13(7P18)又は第14(7P19)のいずれか一方のトランジスタのゲートに接続されて第6のインバータ入力を提供し、第9(7P14)又は第10(7P15)の他方のトランジスタのゲートと第11(7N15)又は第12(7N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、第13(7P18)又は第14(7P19)の他方のトランジスタのゲートと第15(7N19)又は第16(7N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、第17(7P24)又は第18(7P25)のいずれか一方のトランジスタのゲートは第23(7N29)又は第24(7N28)のいずれか一方のトランジスタのゲートに接続されて第7のインバータ入力を提供し、第19(7N25)又は第20(7N24)のいずれか一方のトランジスタのゲートは前記第21(7P28)又は第22(7P29)のいずれか一方のトランジスタのゲートに接続されて第8のインバータ入力を提供し、第17(7P24)又は第18(7P25)の他方のトランジスタのゲートと第19(7N25)又は第20(7N24)の他方のトランジスタのゲートには、第1の相補クロック信号と逆相の相補クロック信号が入力され、第21(7P28)又は第22(7P29)の他方のトランジスタのゲートと第23(7N29)又は第24(7N28)の他方のトランジスタのゲートには、お互いに相補な論理値の第4の相補クロック信号(CKB4,CK4)が入力され、第1のトランスミッションゲート(7S1)は、それに含まれるpチャネルトランジスタ(7P16)とnチャネルトランジスタ(7N16)のそれぞれのゲートに前記第1のクロックドインバータ(7I8)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、第2のトランスミッションゲート(7S2)は、それに含まれるpチャネルトランジスタ(7P20)とnチャネルトランジスタ(7N20)のそれぞれのゲートに第2のクロックドインバータ(7I10)と相反するオンオフ動作をする極性で第3の相補クロック信号が入力され、第3のトランスミッションゲート(7S3)は、それに含まれるpチャネルトランジスタ(7P26)とnチャネルトランジスタ(7N26)のそれぞれのゲートに前記第3のクロックドインバータ(7I14)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、第4のトランスミッションゲート(7S4)は、それに含まれるpチャネルトランジスタ(7P30)とnチャネルトランジスタ(7N30)のそれぞれのゲートに第4のクロックドインバータ(7I16)と相反するオンオフ動作をする極性で第4の相補クロック信号が入力される。ここで、マスタにおいて、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードと呼ぶ。また、スレーブにおいて、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK4及び反転クロック信号CKB4が入力されるノードを第2記憶ノードと呼ぶ。2つのクロックドインバータが2つの出力を提供する。すなわち、第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のトランジスタは第5のインバータ出力を提供し、第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のトランジスタのトランジスタは第6のインバータ出力を提供し、第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のトランジスタは第7のインバータ出力を提供し、第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のトランジスタのトランジスタは第8のインバータ出力を提供する。2つのインバータ入力は同じ入力を受け取る。すなわち、第5及び第6のインバータ入力は同じ入力を受け取り、第5のインバータ出力又は第6のインバータ出力に有効な出力を提供し、第7及び第8のインバータ入力は同じ入力を受け取り、第7のインバータ出力又は第8のインバータ出力に有効な出力を提供する。第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、第11(7P15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタである。
【0061】
このような構成にすることによって、それぞれのインバータが二重化されるため、シングルイベント現象による誤作動を抑えることができる。デュアルポートインバータとトランスミッションゲートの組み合わせでも、デュアルポートクロックドインバータと論理的に同じ動作を行わせることができるが、そのような(デュアルポート)インバータとトランスミッションゲートとの組み合わせによる回路構造では、トランスミッションゲートのトランジスタがオンの場合でも、ソース/ドレインの電圧レベルによっては強電界領域が広く形成され、それがシングルイベント現象の発生原因となり得るという欠点があった。本発明のように、それらに代えてクロックドインバータを使用すると、形成される強電界領域が、トランスミッションゲートに比べて狭くなるため、シングルイベント現象が発生しにくくなるという効果が得られる。
【0062】
フリップフロップ回路7は、入力段に並列インバータが追加されると好適である。すなわち好適には、フリップフロップ回路7は、第5のインバータ(7I6)と、第5のインバータと入力がお互いに接続された第6のインバータ(7I7)と、をさらに有し、第5のインバータ(7I6)の出力は、第1のトランスミッションゲート(7S1)を介して前記第1のインバータ入力に接続され、第6のインバータ(7I7)の出力は、第2のトランスミッションゲート(7S2)を介して第2のインバータ入力に接続される。
【0063】
フリップフロップ回路7は、中間段にも並列インバータが追加されると好適である。すなわち好適には、フリップフロップ回路7は、第7のインバータ(7I12)と、第7のインバータと入力がお互いに接続された第8のインバータ(7I13)と、をさらに有し、第7のインバータ(7I12)の出力は、第3のトランスミッションゲート(7S3)を介して前記第3のインバータ入力に接続され、第8のインバータ(7I13)の出力は、第4のトランスミッションゲート(7S4)を介して第4のインバータ入力に接続される。
【0064】
[ゲート間距離の限定]
フリップフロップ回路7は、データラッチ回路6に関して上述した理由により、トランジスタが離間されて配置されると好適である。すなわち好適には、フリップフロップ回路7においては、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記のクロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離とされる。このような隣り合った導電型が異なるトランジスタの組み合わせは、定常状態においてはオンオフの状態が一致するものであるため、両方がオフ状態のときには両方とも同時に誤動作し得るからである。このような構成にすると、同時にSETが発生するとフリップフロップ回路7の論理状態が反転してしまうトランジスタの対の対角線距離が大きくなるため、1回の高エネルギー粒子の入射によって、その対のトランジスタが同時に反転してしまう可能性を極めて小さくすることができる。
【0065】
具体的には、トランジスタ7P15−トランジスタ7N17−トランジスタ7P19−トランジスタ7N21の間の距離、トランジスタ7N15−トランジスタ7P17−トランジスタ7N19−トランジスタ7P21の間の距離、トランジスタ7P25−トランジスタ7N27−トランジスタ7P29−トランジスタ7N31の間の距離、及びトランジスタ7N25−トランジスタ7P27−トランジスタ7N29−トランジスタ7P31の間の距離の間の距離を所定の離隔距離以上とすると好適である。なお、その離隔距離が大きい方が、良好なシングルイベント耐性が得られる。具体的には、製造プロセス、基板のキャリア密度によって変化するが、例えば、離隔距離を2.0μm(マイクロメートル)以上、2.9μm以上などとすると良好な結果が得られた。
【0066】
[クロック生成回路]
次に、クロック生成回路について説明する。図12のクロック生成回路7C1、図13のクロック生成回路7C2、及び図14のクロック生成回路7C3は、フリップフロップ回路7に入力されるクロック信号CK1、CKB1、CK3、CKB3、CK4、及びCKB4を生成するために、組み合わせて使用される。図18は、フリップフロップ回路7で使用されるクロック信号のタイミング図である。
【0067】
クロック生成回路7C1は、図12に示すように、インバータ(7I1,7I2,7I3,7I4,7I5)を縦列に5段接続したものである。クロック生成回路7C1は、入力クロック信号CKが入力され、それを元に、反転クロック信号CKB1、クロック信号CK1、クロック信号CK2、反転クロック信号CKB2を生成する。クロック生成回路7C1は、図9に示したクロック生成回路6C1と同じ構造である。図18は、それらのクロック信号の様子を示す。図18で、「遅延時間」と示した時間だけ、クロック信号CK2及び反転クロック信号CKB2のタイミングは全体が遅延させられる。
【0068】
スレーブ側の一方の記憶ノードへ入力される後縁エッジ前進クロック(クロック信号CK4及び反転クロック信号CKB4)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路7C2は、図13の下段に示すような論理回路を、例えば図13の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路7C2は、図10に示したクロック生成回路6C2と同じ構造である。クロック生成回路7C2には、クロック信号CK1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK4が生成され、それがインバータで反転させられて反転クロック信号CKB4が生成される。
【0069】
マスタ側の一方の記憶ノードへ入力される前縁エッジ遅延クロック(クロック信号CK3及び反転クロック信号CKB3)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路7C3は、図14の下段に示すような論理回路を、例えば図14の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路7C3は、図10に示したクロック生成回路6C2と同じ構造である。クロック生成回路7C3には、反転クロック信号CKB1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK3が生成され、それがインバータで反転させられて反転クロック信号CKB3が生成される。
【0070】
このクロック生成回路7C1、クロック生成回路7C2、クロック生成回路7C3とを組み合わせることにより、以下のような特徴を有するクロック信号を得ることができる。図18を参照する。ここでは、マスタ側の一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが生成されている。ここに、マスタ側の記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を前縁エッジと呼ぶことにする。すなわち、ハイレベルのときに第2のトランスミッションゲート(7S2)がオンになる極性である、第3の相補クロック信号の内の逆相信号(CKB3)の立ち下がりは、ハイレベルのときに第1のトランスミッションゲートがオンになる極性である、第1の相補クロック信号の内の逆信号(CKB1)の立ち下がりと同じタイミングであり、当該第3の相補クロック信号の内の当該逆相信号(CKB3)の立ち上がりであるクロックの前縁エッジは、当該第1の相補クロック信号の内の当該逆相信号(CKB1)の立ち上がりから所定の遅延時間を有するようなタイミングであるようにクロックのエッジが遅延させられる。さらにここでは、スレーブ側の一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行タイミングが前進させられるような後縁エッジ前進クロックが生成されている。ここに、スレーブ側の記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を後縁エッジと呼ぶことにする。すなわち、ハイレベルのときに第4のトランスミッションゲート(7S4)がオンになる極性である、第4の相補クロック信号の内の逆相信号(CKB4)の立ち上がりは、ハイレベルのときに第1のトランスミッションゲートがオンになる極性である、第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、当該第4の相補クロック信号の内の当該逆相信号(CKB4)の立ち下がりであるクロックの後縁エッジは、当該第1の相補クロック信号の内の当該逆相信号(CKB1)の次の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられたタイミングであることを特徴とするクロック信号を得ることができる。また好適には、第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、それの立ち上がりから前記の所定の遅延時間が経過したタイミングである。クロック信号CK2及び反転クロック信号CKB2は、フリップフロップ回路7に入力される、クロック信号CK3、反転クロック信号CKB3、クロック信号CK4、及び反転クロック信号CKB4を生成するための中間的なクロック信号である。図18に、これらのクロック信号の主なものの相互関係を示す。クロック信号CK3の立ち下がりである前縁エッジはクロック信号CK1の立ち下がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち上がりは同じタイミングである。また、反転クロック信号CKB3の立ち上がりである前縁エッジは反転クロック信号CKB1の立ち上がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち下がりのタイミングは同じである。さらに、反転クロック信号CKB4の立ち上がりはクロック信号CK1の立ち上がりと同じタイミングであり、反転クロック信号CKB4の立ち下がりである後縁エッジは、クロック信号CK1の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられており、かつ、当該反転クロック信号CKB4の立ち上がりから前記の所定の遅延時間が経過したタイミングである。
【0071】
第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0072】
第4の相補クロック信号の内の正相信号(CK4)及び逆相信号(CKB4)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の正相信号(CK1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の正相信号(CK1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0073】
ここで、マスタにおいて、タイミングが異なる2種類のクロック信号が入力される。すなわち、トランスミッションゲート7S1には、クロック信号CK1と反転クロック信号CKB1が、トランスミッションゲート7S2にはクロック信号CK3と反転クロック信号CKB3が入力される。また、デュアルポートクロックドインバータ7IP2を構成するクロックドインバータ7I8とクロックドインバータ7I10にも、同様にタイミングが異なるクロック信号が入力される。すなわち、クロックドインバータ7I8には、クロック信号CK1と反転クロック信号CKB1が、クロックドインバータ7I10にはクロック信号CK3と反転クロック信号CKB3が入力される。このような構成にすることによって、入力データ信号Dを受けるマスタにおいて、二重化された回路の内の一方の回路の特定の動作のタイミングを他方の回路とは異なるタイミングにすることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、たとえ一方の記憶ノードがスルーモードであったとしても、SETにより誤った入力データ信号Dが送られてきた場合にも、それによって第1記憶ノードと第2記憶ノードの両方のデータが変化してしまうことを防止することができる。
【0074】
なお、マスタにおいて、二重化された回路の片側の動作タイミングを全体的に単に遅らせるだけだとホールド時間が増加するという不都合が生じるため、上述のデータラッチ回路6と同様に、クロック信号CK3及び反転クロック信号CKB3に対して、それぞれ立ち下がり及び立ち上がりのタイミングである前縁エッジのみに遅延時間を設け、それぞれ立ち上がり及び立ち下がりのタイミングには遅延時間を設けないという構成として、ホールド時間の増加を防止している。
【0075】
また、スレーブにおいても、タイミングが異なる2種類のクロック信号が入力される。すなわち、トランスミッションゲート7S3には、クロック信号CK1と反転クロック信号CKB1が、トランスミッションゲート7S4にはクロック信号CK4と反転クロック信号CKB4が入力される。また、デュアルポートクロックドインバータ7IP4を構成するクロックドインバータ7I14とクロックドインバータ7I16にも、同様にタイミングが異なるクロック信号が入力される。このような構成にすることによって、中間出力信号MOを受けるスレーブにおいて、二重化された回路の内の一方の回路の特定の動作のタイミングを他方の回路とは異なるタイミングにすることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK4及び反転クロック信号CKB4が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、SETにより誤った入力が中間出力信号MOとして送られてきた場合にも、それによって第1記憶ノードと第2記憶ノードの両方のデータが変化してしまうことを防止することができる。
【0076】
なお、スレーブにおいて、二重化された回路の片側の動作タイミングを全体的に単にずらすだけだと不都合が生じる。図18を参照する。マスタがスルーモードからラッチモードに変化したときにその瞬間のデータがラッチされるが、この瞬間のデータがスレーブを通して出力データ信号Qとして出力されるまでの遅れ時間である伝搬遅延時間は短い方が好ましい。しかし、スレーブの二重化された回路の片側の動作タイミングを全体的に単にずらすだけ、例えば、反転クロック信号CKB4の動作タイミングをクロック信号CK1の動作タイミングより全体的に遅延させただけだと、その遅延時間だけ、スレーブがラッチモードからスルーモードに変化するタイミングが遅れることになり、その分、全体の伝搬遅延時間も増大することになる。従って、これが新たなタイミングペナルティとなる。
【0077】
一方、反転クロック信号CKB4の立ち下がりである後縁エッジはクロック信号CK1の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられたタイミングとするが、反転クロック信号CKB4の立ち上がりはクロック信号CK1の立ち上がりと同じタイミングにするという本発明のようなタイミングの構成とすれば、スレーブの第1記憶ノード(クロック信号CK1及び反転クロック信号CKB1が入力されるノード)がスルーモードに変化したタイミングにおいて、スレーブの第2記憶ノード(クロック信号CK4及び反転クロック信号CKB4が入力されるノード)もスルーモードに変化するため、スレーブ全体がそのタイミングでスルーモードに変化することになり、マスタから入力されたデータを直ちに出力することになる。従って、2種類のクロック信号を異なるタイミングとしても、伝搬遅延時間がさらに増加させられることを防止することができる。これによって、応答特性を劣化させることなく、シングルイベント耐性を向上させることができる。
【0078】
なお、クロックの遅延時間は、クロック動作に影響を与えない範囲で大きい方がよい。具体的には、0.5ナノ秒以上であれば好適であり、0.9ナノ秒以上であればより好適である。さらには、5ナノ秒以上であればさらにより好適である。なお、遅延時間を無制限に大きくすると、後続のクロックとの境目がなくなってクロック動作に支障を来すため、遅延時間は、クロック信号の1周期の1/2未満とする必要がある。
【0079】
[フリップフロップ回路7の動作]
これからフリップフロップ回路7の動作を、図15及び図16の回路図及び図18のタイミング図を参照して説明する。図18のクロック信号相互間のタイミングを表に表わすと表3のようになる。期間Bは従来のフリップフロップ回路においてマスタがスルーモードかつスレーブがラッチモードである期間に対応し、期間Cは従来のフリップフロップ回路においてマスタがラッチモードかつスレーブがスルーモードである期間に対応する。さらに、期間A及びDは、マスタ及びスレーブの両方ともがラッチモードである期間に対応する。
【表4】
【0080】
まず、期間Aについて説明する。期間Aにおいてマスタは、第1記憶ノードがスルーモード(トランスミッションゲート7S1はオンであり、クロックドインバータ7I8はオフ)で第2記憶ノードがラッチモード(トランスミッションゲート7S2はオフであり、クロックドインバータ7I10はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、マスタ全体としてラッチモードである。このため、期間Aにおいては入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、それはフリップフロップ回路7のマスタへ入力されず、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、フリップフロップ回路7が誤ったデータを保持することはない。
【0081】
期間Aにおいてスレーブは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S3及び7S4はオフであり、クロックドインバータ7I14及び7I16はオン)であり、スレーブ全体がラッチモードである。スレーブは、それが保持しているデータに基づき、マスタの論理状態にかかわらず、出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。
【0082】
次に、期間Bについて説明する。期間Bにおいてマスタは、第1記憶ノード及び第2記憶ノードともスルーモード(トランスミッションゲート7S1及び7S2はオンであり、クロックドインバータ7I8及び7I10はオフ)であり、マスタ全体としてスルーモードである。フリップフロップ回路7はこの期間Bにおいてマスタから入力データ信号Dを取り入れる。
【0083】
期間Bにおいてスレーブは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S3及び7S4はオフであり、クロックドインバータ7I14及び7I16はオン)であり、スレーブ全体がラッチモードである。スレーブは、それが保持しているデータに基づき、マスタの論理状態にかかわらず、出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。
【0084】
次に、期間Cについて説明する。期間Cにおいてマスタは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S1及び7S2はオフであり、クロックドインバータ7I8及び7I10はオン)であり、マスタ全体としてラッチモードである。ここでは、マスタは期間Cに変化する直前の論理状態を保持している。
【0085】
期間Cにおいてスレーブは、第1記憶ノード及び第2記憶ノードともスルーモード(トランスミッションゲート7S3及び7S4はオンであり、クロックドインバータ7I14及び7I16はオフ)であり、スレーブ全体がスルーモードである。スレーブは、マスタが保持しているデータを中間出力信号MOとして受け取り、それに基づいて出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。ここで、期間Bから期間Cへの遷移時に、マスタがスルーモードからラッチモードに変化するが、それと同時にスレーブがラッチモードからスルーモードに変化する。このように、マスタがラッチモードに変化すると同時にスレーブをスルーモードに変化させることによって、フリップフロップ回路7の伝搬遅延時間を増加させることなく、それぞれのクロック信号のタイミングをずらして入力データ信号D及び入力クロック信号CKに対するSETへの耐性を向上させることが可能となる。
【0086】
次に、期間Dについて説明する。期間Dにおいてマスタは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S1及び7S2はオフであり、クロックドインバータ7I8及び7I10はオン)であり、マスタ全体としてラッチモードである。ここでは、マスタは期間Cに変化する直前の論理状態を保持している。期間Dにおいては、SETによる誤った論理レベルが入力データ信号D又は入力クロック信号CKとしてマスタに入力されても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、マスタにおいて論理状態が誤って反転することはなく、シングルイベントは防止される。
【0087】
期間Dにおいてスレーブは、第1記憶ノードがスルーモード(トランスミッションゲート7S3はオンであり、クロックドインバータ7I14はオフ)で第2記憶ノードがラッチモード(トランスミッションゲート7S4はオフであり、クロックドインバータ7I16はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、スレーブ全体としてラッチモードである。このため、期間Dにおいてはマスタにおいてシングルイベント現象が発生し、それが誤った中間出力信号としてスレーブに送られたとしても、それに影響されることはない。このようにスレーブは、期間Cに遷移したときにはマスタからの出力を直ちに出力するとともに、その直後の期間Dにおいてはマスタがラッチモードのままスレーブもラッチモードとなることによって、より確実にデータを保持することができる。期間Dにおいては、SETによる誤った論理レベルが中間出力信号MO又は入力クロック信号CKとしてスレーブに入力されても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、スレーブにおいて論理状態が誤って反転することはなく、シングルイベントは防止される。したがって、フリップフロップ回路7が誤ったデータを保持することが防止される。
【0088】
上述の実施形態は、本発明を説明するための例示であり、本発明をこの実施形態に限定する趣旨ではない。本発明は、その要旨を逸脱しない限りにおいて、種々の実施形態で実施することができる。
【図面の簡単な説明】
【0089】
【図1】従来のデータラッチ回路1のためのクロック生成回路1C1の回路図である。
【図2】従来のデータラッチ回路1の回路図である。
【図3】従来のフリップフロップ回路2のためのクロック生成回路2C1の回路図である。
【図4】従来のフリップフロップ回路2の回路図である。
【図5】従来のデータラッチ回路3のためのクロック生成回路3C1の回路図である。
【図6】従来のシングルイベント耐性を有するデータラッチ回路3の回路図である。
【図7】デュアルポートインバータ4の構成を表わす回路図である。
【図8】デュアルポートクロックドインバータ5の構成を表わす回路図である。
【図9】本発明に係るデータラッチ回路6のためのクロック生成回路6C1の回路図である。
【図10】本発明の第1の実施形態に係るデータラッチ回路6のためのクロック生成回路6C2の回路図である。
【図11】本発明の第1の実施形態に係る、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2を有するデータラッチ回路6の構成を表わす回路図である。
【図12】本発明に係るフリップフロップ回路7のためのクロック生成回路7C1の回路図である。
【図13】本発明に係るフリップフロップ回路7のためのクロック生成回路7C2の回路図である。
【図14】本発明に係るフリップフロップ回路7のためのクロック生成回路7C3の回路図である。
【図15】本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7のマスタの構成を表わす回路図である。
【図16】本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7のスレーブの構成を表わす回路図である。
【図17】データラッチ回路6で使用されるクロック信号のタイミング図である。
【図18】フリップフロップ回路7で使用されるクロック信号のタイミング図である。
【符号の説明】
【0090】
1 データラッチ回路
1C1 クロック生成回路
2 フリップフロップ回路
2C1 クロック生成回路
3 データラッチ回路
3C1 クロック生成回路
4 デュアルポートインバータ
5 デュアルポートクロックドインバータ
6 データラッチ回路
6C1 クロック生成回路
6C2 クロック生成回路
7 フリップフロップ回路
7C1 クロック生成回路
7C2 クロック生成回路
7C3 クロック生成回路
【技術分野】
【0001】
本発明は、ラッチ回路及びフリップフロップ回路に関し、より詳しくは、シングルイベント耐性を有するラッチ回路及びフリップフロップ回路に関する。
【背景技術】
【0002】
フリップフロップ回路を含むメモリ素子、データラッチ回路などの半導体素子において、それを構成するトランジスタに、放射線、イオン線等の高エネルギー粒子が入射すると、そのエネルギー粒子の電離作用、励起作用などによって、素子内に電子−正孔対を生じ、電荷が発生することがある。この発生電荷が素子内のPN接合部の電界によって異なる領域に流れ込むこと(電荷収集)によってオフのトランジスタが誤動作して一時的にオンとなり、正常状態では流れることのない電流が素子内で流れ、これによってその半導体素子が記憶するデータが反転するような誤動作を起こすことがある。この現象は、シングルイベントアップセット(SEU)と呼ばれている。
【0003】
また、そのような高エネルギー粒子の入射による誤動作が、ある半導体素子のクロック信号入力端子やデータ入力端子に接続された外部の回路において発生し、その半導体素子に一時的に異常なクロック信号やデータ信号を送ることもある。この正常状態では流れることのない電流をシングルイベント過渡電流といい、このような現象はシングルイベントトランジェント(SET)と呼ばれている。このSETによってシングルイベント過渡電流が流れ込んだ半導体素子でも、それが記憶するデータが反転するような誤動作を起こすことがある。
【0004】
上記のSEUやSETのように、高エネルギー粒子の入射による半導体の誤動作をシングルイベント現象という。代表的なシングルイベント現象には、素子内部への高エネルギー粒子の入射が引き起こすSEUや、素子へ異常なシングルイベント過渡電流が流れ込むことによるSETなどがある。このシングルイベント現象は、高エネルギー粒子が存在しやすい環境である、高空、宇宙空間、放射線関連施設等でしばしば観察され、そのような環境下でのコンピュータの正常な動作の阻害要因となっている。そのような高エネルギー粒子を物理的に完全に遮蔽することによってシングルイベント現象を防止することは現実的な対策ではない。従って、シングルイベント現象を効果的に防止するためには、シングルイベント現象に単体で耐性を有する構造を有するメモリ素子が必要となる。
【0005】
これから説明するにあたり、本明細書中で使用する記号の説明を以下に示す:
CK 外部から入力される入力クロック信号;
CKi 内部で生成されるクロック信号(入力クロック信号CKと同相);
CKB 外部から入力される入力反転クロック信号;
CKBi 内部で生成される反転クロック信号(入力反転クロック信号CKBと同相);
D 外部から入力される入力データ信号;
G 外部から入力される入力クロック信号;
Gi 内部で生成されるクロック信号(入力クロック信号Gと同相)
GBi 内部で生成される反転クロック信号;
MO フリップフロップ回路の内部においてマスタからスレーブへと出力される中間出力信号;
Q 外部へ出力する出力データ信号;
QB 外部へ出力する反転出力データ信号;
XQ 外部へ出力する反転出力データ信号;
VDD 第1の電圧源からの電源電圧;及び
VSS 第2の電圧源からの電源電圧(0V)。
なおクロック信号は、それを反転させた反転クロック信号と対にして使用されることが多い。そのような正相と逆相のクロック信号の対を「相補クロック信号」と呼ぶことにする。クロック信号を表わす記号が、逆相を表わす「B」の接尾辞の有無だけの違いしかない2つのクロック信号が、相補クロック信号である。
【0006】
[従来のデータラッチ回路]
これから従来のデータラッチ回路の構成及び動作について説明する。図2は、従来のデータラッチ回路1の回路図であり、図1は、従来のデータラッチ回路1のためのクロック生成回路1C1の回路図である。クロック生成回路1C1は、入力を反転させるインバータ1I1から構成される。クロック生成回路1C1は、クロック信号として外部から入力される入力クロック信号Gから、それと極性が反対の反転クロック信号GBiを生成する動作を行う。生成された反転クロック信号GBiは、入力クロック信号Gとともにデータラッチ回路1に供給される。インバータ1I1は、ソース又はドレインのラインに関して直列に、第1の電圧源側(VDD)に接続されたノードから第2の電圧源側(VSS)に接続されたノードに向かって、pチャネルMOSトランジスタ1P1及びnチャネルMOSトランジスタ1N1がその順番に接続された構成を有する。
【0007】
図2は、従来のデータラッチ回路1の回路図である。クロックドインバータ1I3及びインバータ1I4は記憶ノードを構成する。入力データ信号Dが、クロックドインバータ1I2を通じて入力される。入力された入力データ信号Dは、記憶ノードに接続される。記憶ノードの出力すなわちデータラッチ回路1の出力として、クロックドインバータ1I3の出力がインバータ1I5からなるバッファ回路を通じて出力データ信号Qとして出力され、インバータ1I4の出力がインバータ1I6からなるバッファ回路を通じて反転出力データ信号XQとして出力される。
【0008】
図1のクロック生成回路1C1は、データラッチ回路1に入力される反転クロック信号GBiを生成するために、組み合わせて使用される。データラッチ回路1において、クロック信号Gがローレベルのときは、出力データ信号Qには、入力データ信号Dと同じ論理レベルが出力される(スルーモード、トランスペアレントモード)。クロック信号Gの立ち上がり時に、入力データ信号Dが入力段のクロックドインバータ1I2から取り込まれてラッチされ、入力クロック信号Gがハイレベルの間、保持される(ラッチモード)。ラッチされたデータの保持は、出力と入力とが交差接続されたクロックドインバータ1I3とインバータ1I4とで構成される記憶ノードで行われる。バッファ回路を構成するインバータ1I5及びインバータ1I6とから、それぞれ出力データ信号Q及び反転出力データ信号XQとして出力される。
【0009】
ここで、シングルイベント現象について考察する。例えばラッチモード時に、記憶ノードを構成するクロックドインバータ1I3及びインバータ1I4の中のいずれかのオフのトランジスタが高エネルギー粒子の入射によりオンとなったとする。これにより、そのトランジスタを含むインバータの出力が反対の論理側にレベルシフトし、その論理値の変化が他方のインバータに入力されて当該インバータの出力を反転させると、記憶ノードの論理値が反転してSEUが発生する。
【0010】
また、ラッチモードにおいては、入力段のクロックドインバータ1I2はオフであって入力データ信号Dを後段に伝達しないようにしており、記憶ノードのクロックドインバータ1I3はオンであって、論理状態を記憶・保持している。しかし、オフである入力段のクロックドインバータ1I2をオンにするようなSETによる電圧変化が上流から入力されたときは、入力データ信号Dが(反転されて)後段に出力されてしまい、かつ、記憶ノードのクロックドインバータ1I3はオフとなって論理状態の反転を許すようになる。このときに、入力データ信号Dが、記憶ノードで記憶されていた論理状態と相反する論理レベルであれば記憶データは反転することになり、シングルイベント現象が発生する。このように、従来のデータラッチ回路は、シングルイベント現象に対して非常に脆弱である。
【0011】
[従来のフリップフロップ回路]
次に従来のフリップフロップ回路の構成及び動作について説明する。図4は、従来のフリップフロップ回路2の回路図であり、図3は、従来のフリップフロップ回路2のためのクロック生成回路2C1の回路図である。このフリップフロップ回路2は、マスタスレーブ型Dフリップフロップである。クロックドインバータ2I4及びインバータ2I5は前段の記憶ノードを構成し、クロックドインバータ2I6及びインバータ2I7は後段の記憶ノードを構成する。入力データ信号Dが、バッファ回路として機能するインバータ2I3を通じて入力される。入力された入力データ信号Dは、トランスミッションゲート2S1を通じて前段の記憶ノードに接続される。前段の記憶ノードの出力は、トランスミッションゲート2S2を通じて後段の記憶ノードに接続される。後段の記憶ノードの出力すなわちフリップフロップ回路2の出力として、クロックドインバータ2I6の出力がインバータ2I8及びインバータ2I9からなるバッファ回路を通じて反転出力データ信号XQとして出力され、インバータ2I7の出力がインバータ2I10及びインバータ2I11からなるバッファ回路を通じて出力データ信号Qとして出力される。
【0012】
図3のクロック生成回路2C1は、フリップフロップ回路2に入力されるクロック信号CKi及び反転クロック信号CKBiを生成するために、組み合わせて使用される。フリップフロップ回路2において、入力クロック信号CKがローレベルのときには、クロック信号CKiはローレベル、反転クロック信号CKBiはハイレベルとなり、入力データ信号Dは、オンであるトランスミッションゲート2S1を通じて取り込まれる。しかしこのとき、トランスミッションゲート2S2はオフであり、そこから後段には入力データ信号Dは伝達されない。ここで、入力クロック信号CKがローレベルからハイレベルに変化すると、トランスミッションゲート2S1はオフとなって、入力データ信号Dはフリップフロップ回路2には取り込まれなくなる。しかし、クロック信号CKiがハイレベルに変化する直前の論理状態が、クロックドインバータ2I4及びインバータ2I5からなる記憶ノード(マスタ)に記憶され、それがオンとなったトランスミッションゲート2S2を通じて後段の記憶ノード(スレーブ)に伝達される。ただし後段のスレーブは、クロックドインバータ2I6がオフであるため、その記憶ノード内で論理レベルを記憶・保持していない。こうして、前段のマスタから伝達された出力は、インバータ2I8及びインバータ2I9からなるバッファ回路を通じて反転出力データ信号XQとして出力される。そして、前段のマスタから伝達された出力は、インバータ2I7で反転され、インバータ2I10及びインバータ2I11からなるバッファ回路を通じて出力データ信号Qとして出力される。さらに、入力クロック信号CKがハイレベルからローレベルに変化すると、トランスミッションゲート2S2はオフとなって、前段のマスタの出力は後段のスレーブに伝達されなくなる。これとともに、後段のスレーブのクロックドインバータ2I6がオンとなるため、後段のスレーブは直前の論理レベルを記憶・保持する。従って、出力データ信号Q及び反転出力データ信号XQとも、クロック信号CKiがローレベルに変化する直前の論理レベルを出力し続ける。
【0013】
ここで、シングルイベント現象について考察する。例えば入力クロック信号CKがローレベルで、フリップフロップ回路2の後段のスレーブが論理レベルを保持しているときに、その記憶ノードを構成するクロックドインバータ2I6及びインバータ2I7の中のオフであるいずれかのトランジスタが高エネルギー粒子の入射によりオンとなったとする。これにより、そのトランジスタを含むインバータの出力が反対の論理側にレベルシフトし、その論理値の変化が他方のインバータに入力されて当該インバータの出力を反転させると、記憶ノードの論理値が反転してSEUが発生する。
【0014】
また、入力クロック信号CKがハイレベルの状態においては、トランスミッションゲート2S1はオフであって入力データ信号Dは前段のマスタへ伝達・入力されないようになっており、前段のマスタのクロックドインバータ2I4はオンであって、論理状態を記憶・保持している。しかし、オフであるトランスミッションゲート2S1をオンにするようなSETによる電圧変化が上流から入力されたときは、入力データ信号Dが(反転されて)入力されてしまい、かつ、マスタのクロックドインバータ2I4はオフとなって論理状態の反転を許すようになる。このときに、入力データ信号Dが、記憶ノードで記憶されていた論理状態と相反する論理レベルであれば記憶データは反転することになり、シングルイベント現象が発生する。このように、従来のフリップフロップ回路は、シングルイベント現象に対して非常に脆弱である。
【0015】
[従来のシングルイベント耐性素子]
シングルイベント現象に耐性のある構造を有するインバータやメモリ素子としては、以下のようなものがあった(例えば、特許文献1参照。)。図6は、従来のシングルイベント耐性を有するデータラッチ回路3の回路図である。このデータラッチ回路3は、DICE(Dual Interlocked Storage Cell)回路とも称される。図5は、従来のデータラッチ回路3のためのクロック生成回路3C1の回路図である。これから図6を参照して、データラッチ回路3の構成を説明する。
【0016】
データラッチ回路3は、大きく、第1の入力(D)を受け取るための第1のデュアルポートインバータであって、第1の入力は第1のデュアルポートインバータに第1の組の通過ゲート(3S1及び3S3)を介して結合した第1のデュアルポートインバータ(3IP1)と、第1のデュアルポートインバータ(3IP1)に第2の組の通過ゲート(3S2及び3S4)を介して結合した第2のデュアルポートインバータ(3IP2)と、第1のデュアルポートインバータ(3IP1)と第2のデュアルポートインバータ(3IP2)に接続した出力と、を有するシングルイベントアップセット耐性ラッチ回路である。ここで、第1のデュアルポートインバータ(3IP1)と第2のデュアルポートインバータ(3IP2)との結合は、第2のデュアルポートインバータ(3IP2)の出力が第2の組の通過ゲート(3S2及び3S4)を介して第1のデュアルポートインバータ(3IP1)に結合するものである。
【0017】
第1のデュアルポートインバータ(3IP1)は、以下のような構成である。第1のデュアルポートインバータ(3IP1)は第1のインバータ(3I4)及び第2のインバータ(3I6)を含む。また、第1のインバータ(3I4)は第2のトランジスタ(3N6)に直列に接続された第1のトランジスタ(3P6)を含み、第2のインバータ(3I6)は第4のトランジスタ(3N10)に直列に接続された第3のトランジスタ(3P10)を含む。またさらに、第1のトランジスタのゲート(3P6)は、第4のトランジスタ(3N10)のゲートに接続されて第1のインバータの入力を提供し、第2のトランジスタ(3N6)のゲートは、第3のトランジスタ(3P10)のゲートに接続されて第2のインバータの入力を提供する。またさらに、第1(3P6)及び第2(3N6)のトランジスタは、第1のインバータ出力を提供し、第3(3P10)及び第4(3N10)のトランジスタは、第2のインバータ出力を提供する。またさらに、第1(3I4)及び第2(3I6)のインバータの入力は同じ入力を受け取り、有効な出力を第1のインバータ出力又は第2のインバータ出力に提供する。ここでは、第1のインバータ出力として反転出力QBがインバータ3I4の出力に接続されている。またさらに、第1(3P6)及び第3(3P10)のトランジスタはpチャネルトランジスタで、第2(3N6)及び第4(3N10)のトランジスタはnチャネルトランジスタである。
【0018】
第2のデュアルポートインバータ(3IP2)は、以下のような構成である。第2のデュアルポートインバータ(3IP2)は第1のインバータ(3I3)及び第2のインバータ(3I5)を含む。また、第1のインバータ(3I3)は第2のトランジスタ(3N3)に直列に接続された第1(3P3)のトランジスタを含み、第2のインバータ(3I5)は第4のトランジスタ(3N7)に直列に接続された第3のトランジスタ(3P7)を含む。またさらに、第1のトランジスタ(3P3)のゲートは第4のトランジスタ(3N7)のゲートに接続されて第1のインバータの入力を提供し、第2のトランジスタ(3N3)のゲートは第3のトランジスタ(3P7)のゲートに接続されて第2のインバータの入力を提供する。またさらに、第1(3P3)及び第2(3N3)のトランジスタは第1のインバータ出力を提供し、第3(3P7)及び第4(3N7)のトランジスタは第2のインバータ出力を提供する。またさらに、第1(3I3)及び第2(3I5)のインバータの入力は同じ入力を受け取り第1のインバータ出力又は第2のインバータ出力に有効な出力を提供する。またさらに、第1(3P3)及び第3(3P7)のトランジスタはpチャネルトランジスタで、第2(3N3)及び第4(3N7)のトランジスタはnチャネルトランジスタである。
【0019】
データラッチ回路3は、以下のような動作によって、シングルイベント現象をある程度抑制する。まず、入力クロック信号CKがローレベル、反転クロック信号CKBiがハイレベルであって、データラッチ回路3がラッチモードであるとする。ここで、ラッチモードに移行する直前の入力データ信号Dがローレベルであり、それがラッチされているものとする。この状態では、第1のデュアルポートインバータ3IP1(インバータ3I4、インバータ3I6)の入力がローレベルであり、出力がハイレベルである。そして、第2のデュアルポートインバータ3IP2(インバータ3I3、インバータ3I5)の入力がハイレベルであり、出力がローレベルである。シングルイベント現象は、オフのトランジスタがオンになることによって発生する。ここで、オフであるトランジスタ3N6にシングルイベント現象が発生し、オンになったとする。これにより、ハイレベルであったインバータ3I4の出力が一時的にローレベルになったとする。以下同様に、両方のトランジスタが一時的にオンになったインバータは、出力の論理レベルが反転するものとする。このインバータ3I4からのローレベルの出力は、インバータ3I3(それに含まれるトランジスタ3N3)とインバータ3I5(それに含まれるトランジスタ3P7)に入力される。インバータ3I3については、トランジスタ3N3は、オンであったのがオフになるため、インバータ3I3のトランジスタすべてがオフになる。従って、インバータ3I3の出力は時間の経過と共にハイインピーダンスとなるものの、ある程度は直前の論理レベルが保持されて、論理レベルは反転しない。従って、インバータ3I3は、その後段にシングルイベント現象の影響を伝達せずにブロックする。一方、インバータ3I5については、トランジスタ3P7は、オフであったのがオンになるため、インバータ3I5の出力は反転してハイレベルとなる。
【0020】
このインバータ3I5からのハイレベルの出力は、トランスミッションゲート3S4を通過して、インバータ3I6(それに含まれるトランジスタ3P10)とインバータ3I4(それに含まれるトランジスタ3N6)に入力される。インバータ3I6については、トランジスタ3P10は、オンであったのがオフになるため、インバータ3I6のトランジスタすべてがオフになる。従って、インバータ3I6の出力は時間の経過と共にハイインピーダンスとなるものの、ある程度は直前の論理レベルが保持されて、論理レベルは反転しない。従って、インバータ3I6は、その後段にシングルイベント現象の影響を伝達せずにブロックする。一方、インバータ3I4については、トランジスタ3N6への入力はローレベルからハイレベルに反転するため、これはトランジスタ3N6をオンにしようとし、当初仮定したシングルイベント現象を補強する方向に働く。しかし、前述のインバータ3I3及びインバータ3I6のように、それを構成する両方のトランジスタがオフとなって出力がハイインピーダンスとなり、後段の論理レベルに影響を伝達しないインバータが存在し、その後段での論理レベルは保持されるため、シングルイベント現象の状態が終了すると、元の状態に復帰することになる。このように、トランジスタのいずれか1個が上記のように誤動作しても、データラッチ回路3全体としては、シングルイベント現象が発生しにくいことになる。
【発明の開示】
【発明が解決しようとする課題】
【0021】
しかし、実験によると、上記の従来のデータラッチ回路3のシングルイベント耐性は必ずしも十分ではないことが明らかになってきた。例えば、高エネルギー粒子の入射によって2つ以上のトランジスタが同時に誤動作した場合には、記憶ノードの論理状態が反転したことがあった。また、上流からのクロック信号がSETにより反転した場合には、ラッチモードであったデータラッチ回路3が一時的にスルーモードになって入力データ信号を取り込み、それによって記憶していたデータが反転したことがあった。このように、シングルイベント対策を施したデータラッチ回路3においても、シングルイベント現象によって出力が反転する場合が観察された。シングルイベント現象は極めて有害な現象であるため、それに対する耐性はより高い方が望ましい。従って、さらに高いシングルイベント耐性を有するメモリ素子、データラッチ回路などの半導体素子が望まれていた。
【0022】
【特許文献1】米国特許第6327176号明細書
【課題を解決するための手段】
【0023】
本発明は、上記の課題に鑑みてなされたものであり、より高いシングルイベント耐性を有するラッチ回路、フリップフロップ回路を提供するものである。その課題は、以下のような特徴を有する本発明によって解決される。すなわち第1の観点に従う本発明は、デュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなるシングルイベント耐性ラッチ回路、すなわち、1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、デュアルポートインバータ(6IP1)の2出力及びデュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有することを特徴とするシングルイベント耐性ラッチ回路である。
【0024】
より具体的には、デュアルポートインバータは2つのインバータから構成される。さらに具体的には、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。またさらに具体的には、第1及び第3のトランジスタ(6P16,6P20)はpチャネルトランジスタで、第2及び第4のトランジスタ(6N16,6N20)はnチャネルトランジスタである。またさらに具体的には、2つのインバータが2つの入力を提供する。またさらに具体的には、2つのインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、入力段に並列インバータが追加される。またさらに具体的には、デュアルポートクロックドインバータは2つのクロックドインバータから構成される。またさらに具体的には、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。またさらに具体的には、第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。またさらに具体的には、2つのクロックドインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力される。またさらに具体的には、当該一方の記憶ノードへ入力される前縁エッジ遅延クロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、遅延時間は、0.5ナノ秒以上であり、かつ、相補クロック信号の1周期の1/2未満である。またさらに具体的には、トランジスタの対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離である。またさらに具体的には、所定の離隔距離は、2.0マイクロメートル以上である。
【0025】
第2の観点に従う本発明は、2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなるシングルイベント耐性フリップフロップ回路、すなわち、第1の組の入力を受け取るための2入力と、2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1のトランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合したような第1のデュアルポートインバータ(7IP1)と、第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、第2の組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合したような第2のデュアルポートインバータ(7IP3)と、第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、第2のデュアルポートインバータ(7IP3)の2出力及び第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、第2のデュアルポートインバータ(7IP3)の2入力に第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合していることを特徴とするシングルイベント耐性フリップフロップ回路である。
【0026】
より具体的には、デュアルポートインバータは2つのインバータから構成される。さらに具体的には、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。またさらに具体的には、第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタであり、第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのインバータが2つの入力を提供する。またさらに具体的には、2つのインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、入力段及び中間段に並列インバータが追加される。またさらに具体的には、デュアルポートクロックドインバータは2つのクロックドインバータから構成される。またさらに具体的には、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。またさらに具体的には、第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、第11(7N15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタである。またさらに具体的には、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。またさらに具体的には、2つのクロックドインバータが2つの出力を提供する。またさらに具体的には、2つのインバータ入力は同じ入力を受け取る。またさらに具体的には、マスタ側の一方の記憶ノードへは、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力される。またさらに具体的には、マスタ側の一方の記憶ノードへ入力される前縁エッジ遅延クロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、スレーブ側の一方の記憶ノードへは、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行タイミングが前進させられるような後縁エッジ前進クロックが入力される。またさらに具体的には、後縁エッジ前進クロックは、ラッチモードからスルーモードへ移行したタイミングから前記のマスタ側の前縁エッジ遅延クロックと同じ遅延時間が経過したタイミングにおいてスルーモードからラッチモードに移行させる。またさらに具体的には、スレーブ側の一方の記憶ノードへ入力されるクロックは、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。またさらに具体的には、所定の遅延時間は、0.5ナノ秒以上であり、かつ、相補クロック信号の1周期の1/2未満である。またさらに具体的には、トランジスタの対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離である。またさらに具体的には、所定の離隔距離は、2.0マイクロメートル以上である。
【0027】
上記において、インバータ、クロックドインバータ、デュアルポートインバータ、デュアルポートクロックドインバータ、及びトランジスタなどの各構成要素を表わす用語は、その具体的形態や具体的呼称を限定するものではなく、その用語の構成要素が一般的に有する機能を備えたものを表わすためのものである。また、1つの構成要素が有する機能が2つ以上の構成要素によって実現されてもよく、2つ以上の構成要素が有する機能が1つの構成要素によって実現されてもよい。
【発明の効果】
【0028】
本発明によれば、ラッチ回路をデュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成としたため、形成される強電界領域が、トランスミッションゲートを含む従来のラッチ回路に比べて狭くなり、シングルイベント現象が発生しにくくなるという効果が得られる。さらに本発明によれば、一方の記憶ノードへは、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが入力される構成としたため、SET現象が発生してもそれの回路への影響を排除することができるとともに、ホールド時間がクロックに設けた遅延時間によりさらに増加させられることを防止することができるという効果が得られる。
【0029】
また他の観点に従う本発明によれば、フリップフロップ回路を2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成としたため、形成される強電界領域が、トランスミッションゲートを含む従来のフリップフロップ回路に比べて狭くなり、シングルイベント現象が発生しにくくなるという効果が得られる。さらに本発明によれば、マスタ側の一方の記憶ノードへは、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが入力され、スレーブ側の一方の記憶ノードへは、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行が前進させられるような後縁エッジ前進クロックが入力される構成としたため、SET現象が発生してもそれの回路への影響を排除することができるとともに、マスタ側とスレーブ側とで2種類のクロック信号を異なるタイミングとしても、伝搬遅延時間がさらに増加させられることを防止することができるという効果が得られる。
【発明を実施するための最良の形態】
【0030】
[デュアルポートインバータの構成]
これから回路図(図7〜図16)を参照して、本発明の説明を行う。まず、本発明の回路に含まれる回路単位である、デュアルポートインバータ4とデュアルポートクロックドインバータ5の説明を行う。図7は、デュアルポートインバータ4の構成を表わす回路図である。デュアルポートインバータ4は、第1のインバータ(4I1)及び第2のインバータ(4I2)を含む。第1のインバータ(4I1)は第2のトランジスタ(4N1)に直列に接続された第1のトランジスタ(4P1)を含み、第2のインバータ(4I2)は第4のトランジスタ(4N2)に直列に接続された第3のトランジスタ(4P2)を含む。第1のトランジスタ(4P1)のゲートは、第4のトランジスタ(4N2)のゲートに接続されて第1のインバータ入力IN1を提供し、第2のトランジスタ(4N1)のゲートは、第3のトランジスタ(4P2)のゲートに接続されて第2のインバータ入力IN2を提供する。第1及び第2のトランジスタ(4P1,4N1)は、第1のインバータ出力OUT1を提供し、第3及び第4のトランジスタ(4P2,4N2)は、第2のインバータ出力OUT2を提供する。第1のインバータ入力IN1及び第2のインバータ入力IN2は同じ入力を受け取り、有効な出力を第1のインバータ出力OUT1又は第2のインバータ出力OUT2に提供する。第1及び第3のトランジスタ(4P1,4P2)はpチャネルトランジスタで、第2及び第4のトランジスタ(4N1,4N2)はnチャネルトランジスタである。
【0031】
次に、デュアルポートインバータ4の動作について説明する。表1はデュアルポートインバータ4の論理動作を表わす表である。表1から分かるように、第1のインバータ入力IN1と第2のインバータ入力IN2の論理レベルが同じときは、それを反転させた論理レベルが第1のインバータ出力OUT1と第2のインバータ出力OUT2から出力される。ここで、デュアルポートインバータ4の前段でSETが発生したために、それぞれ異なる論理レベルが第1のインバータ入力IN1と第2のインバータ入力IN2に入力された場合について考えると、表1に示すように、第1のインバータ出力OUT1及び第2のインバータ出力OUT2の一方がハイインピーダンスとなり、他方が不確定となる。出力がハイインピーダンスの場合、それを出力したインバータを構成するトランジスタは両方ともオフであり、出力が不確定の場合、それを出力したインバータを構成するトランジスタは両方ともオンである。この場合において、いずれか一方の出力は、必ずハイインピーダンスとなる。出力がハイインピーダンスの場合、そこに接続されたラインの論理レベルはある程度は保持されるため、SETによって第1のインバータ入力IN1と第2のインバータ入力IN2の論理レベルがそれぞれ異なる状態になっても、SETの影響は、出力がハイインピーダンスの後段のラインには伝達されず、ブロックされることになる。
【表1】
【0032】
[デュアルポートクロックドインバータの構成]
図8は、デュアルポートクロックドインバータ5の構成を表わす回路図である。デュアルポートクロックドインバータ5は第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)を含む。第1のクロックドインバータ(5I1)は第1、第2、第3、及び第4のその順番に直列に接続されたトランジスタ(5P1,5P2,5N1,5N2)を含み、第2のクロックドインバータ(5I2)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(5P3,5P4,5N3,5N4)を含む。第1(5P1)又は第2(5P2)のいずれか一方のトランジスタ(ここでは5P1)のゲートは第7(5N3)又は第8(5N4)のいずれか一方のトランジスタ(ここでは第8(5N4))のゲートに接続されて第1のインバータ入力IN1を提供する。第3(5N1)又は第4(5N2)のいずれか一方のトランジスタ(ここでは第4(5N2))のゲートは第5(5P3)又は第6(5P4)のいずれか一方のトランジスタ(ここでは第5(5P3))のゲートに接続されて第2のインバータ入力IN2を提供する。第1(5P1)又は第2(5P2)の他方のトランジスタ(ここでは第2(5P2))のゲートと第3(5N1)又は第4(5N2)の他方のトランジスタ(ここでは第3(5N1))のゲートには、お互いに相補な論理値の相補クロック信号(CKBi,CKi)が入力される。第5(5P3)又は第6(5P4)の他方のトランジスタ(ここでは第6(5P4))のゲートと第7(5N3)又は第8(5N4)の他方のトランジスタ(ここでは第7(5N3))のゲートには、お互いに相補な論理値の相補クロック信号(CKBi,CKi)が入力される。第1(5P1)、第2(5P2)、第3(5N1)、及び第4(5N2)のトランジスタは第1のインバータ出力を提供し、第5(5P3)、第6(5P4)、第7(5N3)、及び第8(5N4)のトランジスタのトランジスタは第2のインバータ出力を提供する。第1のインバータ入力IN1及び第2のインバータ入力IN2は同じ入力を受け取り、第1のインバータ出力OUT1又は第2のインバータ出力OUT2に有効な出力を提供する。第1(5P1)、第2(5P2)、第5(5P3)、及び第6(5P4)のトランジスタはpチャネルトランジスタで、第3(5N1)、第4(5N2)、第7(5N3)、及び第8(5N4)のトランジスタはnチャネルトランジスタである。ここで、第1のクロックドインバータ(5I1)と第2のクロックドインバータ(5I2)に入力される相補クロック信号のタイミングを異なるものとすることも可能である。
【0033】
次に、デュアルポートクロックドインバータ5の動作について説明する。表2はデュアルポートクロックドインバータ5の論理動作を表わす表である。表2から分かるように、まず、CKiが論理レベル0のときは、第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)ともオフになるため、出力は、第1のインバータ入力IN1及び第2のインバータ入力IN2の論理レベルにかかわらず、ハイインピーダンスとなる。このため、デュアルポートクロックドインバータ5は、そこへの入力を後段の出力には伝達せず、また後段の論理レベルを保持するように動作する。次にCKiが論理レベル1のときは、第1のクロックドインバータ(5I1)及び第2のクロックドインバータ(5I2)ともオンになり、全体の動作としては前述のデュアルポートインバータ4と同じ動作を行うことになる。
【表2】
【0034】
[データラッチ回路6]
これから回路図(図9〜図11)及びタイミング図(図17)を参照して、本発明の一実施形態としてのデータラッチ回路6の構成及び動作を説明する。図11は、本発明の第1の実施形態に係る、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2を有するデータラッチ回路6の構成を表わす回路図である。
【0035】
[データラッチ回路6の構成]
データラッチ回路6は、デュアルポートインバータと、トランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成である。すなわちデータラッチ回路6は、1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、デュアルポートインバータ(6IP1)の2出力及びデュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有する。デュアルポートインバータ(6IP1)は、前記のデュアルポートインバータ4と同様の構成をしており、デュアルポートクロックドインバータ(6IP2)は、前記のデュアルポートクロックドインバータ5と同様の構成をしている。
【0036】
デュアルポートインバータ(6IP1)は、以下のような構成である。まず、デュアルポートインバータは2つのインバータから構成される。具体的には、デュアルポートインバータ(6IP1)は、第1のインバータ(6I9)及び第2のインバータ(6I11)を含む。また、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。すなわち、第1のインバータ(6I9)は第2のトランジスタ(6N16)に直列に接続された第1のトランジスタ(6P16)を含み、第2のインバータ(6I11)は第4のトランジスタ(6N20)に直列に接続された第3のトランジスタ(6P20)を含む。さらに、2つのインバータが2つの入力を提供する。すなわち、第1のトランジスタ(6P16)のゲートは、第4のトランジスタ(6N20)のゲートに接続されて第1のインバータ入力を提供し、第2のトランジスタ(6N16)のゲートは、第3のトランジスタ(6P20)のゲートに接続されて第2のインバータ入力を提供する。さらに、2つのインバータが2つの出力を提供する。すなわち、第1のトランジスタ(6P16)及び第2のトランジスタ(6N16)は、第1のインバータ出力を提供し、第3のトランジスタ(6P20)及び第4のトランジスタ(6N20)は、第2のインバータ出力を提供する。さらに、2つのインバータ入力は同じ入力を受け取る。すなわち、第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を第1のインバータ出力又は第2のインバータ出力に提供する。さらに、第1のトランジスタ(6P16)及び第3のトランジスタ(6P20)はpチャネルトランジスタで、第2のトランジスタ(6N16)及び第4のトランジスタ(6N20)はnチャネルトランジスタである。
【0037】
デュアルポートクロックドインバータは2つのクロックドインバータから構成される。すなわち、デュアルポートクロックドインバータ(6IP2)は第1のクロックドインバータ(6I8)及び第2のクロックドインバータ(6I10)を含む。さらに、クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。すなわち、第1のクロックドインバータ(6I8)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(6P13,6P14,6N13,6N14)を含み、第2のクロックドインバータ(6I10)は第9、第10、第11、及び第12のその順番に直列に接続されたトランジスタ(6P17,6P18,6N17,6N18)を含む。さらに、2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。すなわち、第5(6P13)又は第6(6P14)のいずれか一方のトランジスタのゲートは第11(6N17)又は第12(6N18)のいずれか一方のトランジスタのゲートに接続されて第3のインバータ入力を提供し、第7(6N13)又は第8(6N14)のいずれか一方のトランジスタのゲートは第9(6P17)又は第10(6P18)のいずれか一方のトランジスタのゲートに接続されて第4のインバータ入力を提供し、第5(6P13)又は第6(6P14)の他方のトランジスタのゲートと第7(6N13)又は第8(6N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、第9(6P17)又は第10(6P18)の他方のトランジスタのゲートと第11(6N17)又は第12(6N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、第1のトランスミッションゲート(6S1)は、それに含まれるpチャネルトランジスタ(6P15)とnチャネルトランジスタ(6N15)のそれぞれのゲートに第1のクロックドインバータ(6I8)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、及び第2のトランスミッションゲート(6S2)は、それに含まれるpチャネルトランジスタ(6P19)とnチャネルトランジスタ(6N19)のそれぞれのゲートに第2のクロックドインバータ(6I10)と相反するオンオフ動作をする極性で第3の相補クロック信号が入力される。ここで、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードと呼ぶ。さらに、2つのクロックドインバータが2つの出力を提供する。すなわち、第5(6P13)、第6(6P14)、第7(6N13)、及び第8(6N14)のトランジスタは第3のインバータ出力を提供し、第9(6P17)、第10(6P18)、第11(6N17)、及び第12(6N18)のトランジスタのトランジスタは第4のインバータ出力を提供する。さらに、2つのインバータ入力は同じ入力を受け取る。すなわち、第3及び第4のインバータ入力は同じ入力を受け取り、第3のインバータ出力又は第4のインバータ出力に有効な出力を提供する。さらに、第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタである。このような構成にすることによって、それぞれのインバータが二重化されるため、シングルイベント現象による誤作動を抑えることができる。デュアルポートインバータとトランスミッションゲートの組み合わせでも、デュアルポートクロックドインバータと論理的に同じ動作を行わせることができるが、そのような(デュアルポート)インバータとトランスミッションゲートとの組み合わせによる回路構造では、トランスミッションゲートのトランジスタがオンの場合でも、ソース/ドレインの電圧レベルによっては強電界領域が広く形成され、それがシングルイベント現象の発生原因となり得るという欠点があった。本発明のように、それらに代えてクロックドインバータを使用すると、形成される強電界領域が、トランスミッションゲートに比べて狭くなるため、シングルイベント現象が発生しにくくなるという効果が得られる。
【0038】
データラッチ回路6は、入力段に並列インバータが追加されると好適である。すなわち好適には、データラッチ回路6は、第3のインバータ(6I6)と、第3のインバータと入力がお互いに接続された第4のインバータ(6I7)と、をさらに有し、第3のインバータ(6I6)の出力は、第1のトランスミッションゲート(6S1)を介して第1のインバータ入力に接続され、及び第4のインバータ(6I7)の出力は、第2のトランスミッションゲート(6S2)を介して第2のインバータ入力に接続される。このような構成にすることによって、入力データ信号Dを別々のインバータを経由させて、第1のトランスミッションゲート(6S1)を通じて第1のインバータ(6I9)へ、及び第2のトランスミッションゲート(6S2)を通じて第2のインバータ(6I11)へ接続することができる。インバータにおいては、出力側から入力側へは信号が伝達されないため、一方のインバータの下流で発生した誤作動が、他方のインバータの下流に影響を及ぼすことがない。これによって、デュアルポートインバータ(6IP1)の2つのインバータ6I9と6I11とが完全に分離されるため、それらの上流のノードを介した相互の影響を排除することができ、より良好なシングルイベント耐性を得ることができる。
【0039】
ここで一般に、半導体論理回路に含まれるトランジスタなどの素子は、小型化、高速化の観点から高密度に配置することが望ましいとされている。そして、α線ソフトエラーに代表される従来問題とされていた誤動作は、その原因となる粒子のエネルギーが小さく、誤動作の原因となる電荷が発生する電離領域は非常に狭いものであり、例えば最新の90nmプロセスの半導体であっても、1つのα線粒子が隣接したトランジスタを同時に誤動作させることはない。これは以下のような理由による。荷電粒子が物質にどれだけの電荷的な影響を与えるかという指標としては線エネルギー付与(LET, Linear Energy Transfer)や電離領域の半径などが一般的に使用される。線エネルギー付与とは、エネルギーをもった粒子あるいは荷電した粒子が物質中を通過する際、飛跡に沿って単位長さ当りに失うエネルギーのことであり、この失われたエネルギーがその物質を構成する原子に移動して電離を生じさせることになる。それによって粒子の飛跡を中心とした円柱状の電離領域が生じるが、この電離領域の半径が電気的な影響の及ぶ範囲である。そしてこの電離領域は、それを通過する粒子線の線エネルギー付与が同じ場合、物質の種類が同じでさらに不純物濃度が同じであれば同じ半径となる。具体的には、α線が被照射物に与える単位エネルギーである線エネルギー付与の最大値は0.6MeV/(mg/cm2)くらいであり、α線が物質内に発生させる円柱状の電離領域は、シリコンにおいては半径が数十nm程度のごく狭いものである。このため、そのような電離領域の半径では、90nmプロセスの半導体であっても隣接したトランジスタが同時に誤動作することはない。
本件発明の課題は宇宙空間などにおける高エネルギー粒子線によるシングルイベント耐性を向上させるものであるところ、誤動作の原因として一番問題となる粒子は鉄イオンなどの重イオン粒子である。ここに、鉄イオン粒子線の線エネルギー付与の最大値は32MeV/(mg/cm2)程度でα線の50倍以上もあり、電離領域の半径もシリコンにおいては1μm(1000nm)程度の非常に大きなものである。また、鉄イオン粒子線が半導体に対して斜めに入射したときには、線エネルギー付与の最大値は40MeV/(mg/cm2)程度にもなる。従って、通常のプロセスの半導体では、1つの鉄イオン粒子線によって発生させられた電離領域の中に複数のMOSトランジスタが含まれてしまうことになるため、単にトランジスタを二重化しただけでは、それに含まれる両方のMOSトランジスタが簡単に同時に誤動作してしまうことになる。このような理由より、データラッチ回路6は、トランジスタが離間されて配置されると好適である。すなわち好適には、データラッチ回路6においては、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記のクロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離とされる。このような隣り合った導電型が異なるトランジスタの組み合わせは、定常状態においてはオンオフの状態が一致するものであるため、両方がオフ状態のときには両方とも同時に誤動作し得るからである。このような構成にすると、同時にSETが発生するとデータラッチ回路6の論理状態が反転してしまうトランジスタの対の対角線距離が大きくなるため、1回の高エネルギー粒子の入射によって、その対のトランジスタが同時に反転してしまう可能性を極めて小さくすることができる。
【0040】
具体的には、トランジスタ6P14−トランジスタ6N16−トランジスタ6P18−トランジスタ6N20の間の距離、及びトランジスタ6N13−トランジスタ6P16−トランジスタ6N17−トランジスタ6P20の間の距離を所定の離隔距離以上とすると好適である。なお、その離隔距離が大きい方が、良好なシングルイベント耐性が得られる。具体的には、製造プロセス、基板のキャリア密度などによって変化するが、例えば、離隔距離を2.0μm(マイクロメートル)以上、2.9μm以上などとすると良好な結果が得られた。
【0041】
[クロック生成回路]
次に、クロック生成回路について説明する。図9のクロック生成回路6C1及び図10のクロック生成回路6C2は、データラッチ回路6に入力されるクロック信号CK1、CKB1、CK3、及びCKB3を生成するために、組み合わせて使用される。図17は、データラッチ回路6で使用されるクロック信号のタイミング図である。
【0042】
クロック生成回路6C1は、図9に示すように、インバータ(6I1,6I2,6I3,6I4,6I5)を縦列に5段接続したものである。クロック生成回路6C1は、入力クロック信号CKが入力され、それを元に、反転クロック信号CKB1、クロック信号CK1、クロック信号CK2、反転クロック信号CKB2を生成する。ここで、インバータ6I3のトランジスタのゲート長は他のインバータのゲート長と比較して大きく形成されており、インバータ6I3を挟む図9のX1−X2間で所定のクロック遅延時間が得られるようになっている。インバータ6I3のトランジスタのゲート長は、必要なクロック遅延時間の長さによって定められる。具体的には、例えば、他のインバータのトランジスタのゲート長が0.18μmである場合、それの数倍から数十倍程度の値(例えば、10倍程度)とすることができる。トランジスタのゲート長が大きくなると電圧の変化が遅くなるため、それを逆に利用して、ゲート長を制御することによって任意の遅延時間を設定することができる。このため、クロック信号CK2及び反転クロック信号CKB2のタイミングは、入力クロック信号CK、反転クロック信号CKB1、及びクロック信号CK1から、所定の遅延時間を有する。図17に、それらの様子を示す。図17で、「遅延時間」と示した時間だけ、クロック信号CK2及び反転クロック信号CKB2のタイミングは全体が遅延させられる。
【0043】
一方の記憶ノードへ入力される前縁エッジ遅延クロック(クロック信号CK3及び反転クロック信号CKB3)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路6C2は、図10の下段に示すような論理回路を、例えば図10の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路6C2には、反転クロック信号CKB1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK3が生成され、それがインバータで反転させられて反転クロック信号CKB3が生成される。
【0044】
このクロック生成回路6C1とクロック生成回路6C2とを組み合わせることにより、以下のような特徴を有するクロック信号を得ることができる。図17を参照する。ここでは、一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及び全体のラッチモードからスルーモードへの移行が遅延させられるような前縁エッジ遅延クロックが生成されている。ここに、記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を前縁エッジと呼ぶことにする。すなわち、ローレベルのときに第2のトランスミッションゲート(6S2)がオンになる極性である、第3の相補クロック信号の内の正相信号(CK3)の立ち上がりは、ローレベルのときに第1のトランスミッションゲート(6S1)がオンになる極性である、第1の相補クロック信号の内の正相信号(CK1)の立ち上がりと同じタイミングであり、かつ、当該第3の相補クロック信号の内の当該正相信号(CK3)の立ち下がりであるクロックの前縁エッジは、当該第1の相補クロック信号の内の当該正相信号(CK1)の立ち下がりから所定の遅延時間を有するようなタイミングであるようにクロックのエッジが遅延させられたことを特徴とするクロック信号を得ることができる。クロック信号CK2及び反転クロック信号CKB2は、データラッチ回路6に入力される、クロック信号CK3及び反転クロック信号CKB3を生成するための中間的なクロック信号である。図17に、これらのクロック信号の相互関係を示す。クロック信号CK3の立ち下がりである前縁エッジはクロック信号CK1の立ち下がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち上がりは同じタイミングである。また、反転クロック信号CKB3の立ち上がりである前縁エッジは反転クロック信号CKB1の立ち上がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち下がりのタイミングは同じである。
【0045】
第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0046】
ここで、第1のトランスミッションゲート(6S1)と第2のトランスミッションゲート(6S2)には、異なるクロック信号が入力される。すなわち、第1のトランスミッションゲート(6S1)には、クロック信号CK1と反転クロック信号CKB1が、第2のトランスミッションゲート(6S2)にはクロック信号CK3と反転クロック信号CKB3が入力される。また、デュアルポートクロックドインバータ(6IP2)を構成する第1のクロックドインバータ(6I8)と第2のクロックドインバータ(6I10)にも、同様に異なるクロック信号が入力される。すなわち、第1のクロックドインバータ(6I8)には、クロック信号CK1と反転クロック信号CKB1が、第2のクロックドインバータ(6I10)にはクロック信号CK3と反転クロック信号CKB3が入力される。このような構成にすることによって、二重化された回路の片側の特定の動作のタイミングを遅らせることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、SETにより誤った入力がなされたとしても、それによって第1記憶ノードと第2記憶ノードのデータが変化してしまうことを防止することができる。
【0047】
なお、二重化された回路の片側の動作タイミングを全体的に単に遅らせるだけだと不都合が生じる。例えば、クロック信号CK3に代えてクロック信号CK2を、反転クロック信号CKB3に代えて反転クロック信号CKB2を入力したとするとどのような動作になるかを考察する。図17を参照する。クロック信号CK3及び反転クロック信号CKB3は、それぞれ立ち下がり及び立ち上がりのタイミングのみに遅延時間が設けられているのに対し、クロック信号CK2及び反転クロック信号CKB2は、波形全体が遅延させられている。しかしこの場合、入力クロック信号CKと出力データ信号Qの間の伝搬遅延時間や、入力クロック信号CKが反転出力データ信号XQとして出力されるまでの遅れ時間である伝搬遅延時間が、設けられた遅延時間だけ増加することになる。これは、クロック信号の入力以後にデータ入力信号を保持しなければならない時間であるホールド時間が、その設けられた遅延時間によりさらに増加させられることを意味する。すなわち、入力クロック信号CK1が立ち上がってから、その設けられた遅延時間の間は、ホールド時間ということになり、データ入力信号の論理レベルを変化させることができなくなる。従って、これが新たなタイミングペナルティとなる。
【0048】
一方、クロック信号CK3及び反転クロック信号CKB3に対して、それぞれ立ち下がり及び立ち上がりのタイミングのみに遅延時間を設け、それぞれ立ち上がり及び立ち下がりのタイミングには遅延時間を設けないという本発明のようなタイミングの構成とすれば、第1記憶ノード(クロック信号CK1及び反転クロック信号CKB1が入力されるノード)がデータをラッチしたタイミングにおいて、第2記憶ノード(クロック信号CK3及び反転クロック信号CKB3が入力されるノード)もデータをラッチするため、ホールド時間がクロックに設けた遅延時間によりさらに増加させられることを防止することができる。これによって、応答特性を劣化させることなく、シングルイベント耐性を向上させることができる。
【0049】
なお、クロックの遅延時間は、クロック動作に影響を与えない範囲で大きい方がよい。具体的には、0.5ナノ秒以上であれば好適であり、0.9ナノ秒以上であればより好適である。さらには、5ナノ秒以上であればさらにより好適である。なお、遅延時間を無制限に大きくすると、後続のクロックとの境目がなくなってクロック動作に支障を来すため、遅延時間は、クロック信号の1周期の1/2未満とする必要がある。
【0050】
[データラッチ回路6の動作]
これからデータラッチ回路6の動作を、図11の回路図及び図17のタイミング図を参照して説明する。図17のクロック信号相互間のタイミングを表に表わすと表3のようになる。期間Bはスルーモードの期間に対応し、期間A及びCはラッチモードの期間に対応する。
【表3】
【0051】
まず、期間Aの場合について説明する。ここでは、第1記憶ノードはスルーモード(トランスミッションゲート6S1はオンであり、クロックドインバータ6I8はオフ)であり、第2記憶ノードはラッチモード(トランスミッションゲート6S2はオフであり、クロックドインバータ6I10はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、データラッチ回路6全体としてラッチモードである。このため、期間Aにおいては入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、データラッチ回路6の出力に影響を与えない。
【0052】
次に、期間Bの場合について説明する。ここでは、第1記憶ノードはスルーモード(トランスミッションゲート6S1はオンであり、クロックドインバータ6I8はオフ)であり、第2記憶ノードもスルーモード(トランスミッションゲート6S2はオンであり、クロックドインバータ6I10はオフ)である。この状態では、データラッチ回路6全体としてスルーモードである。この状態では、第1記憶ノード及び第2記憶ノードともスルーモードであるため、入力データ信号DにSETによって誤った論理レベルの入力がされると、それはデータラッチ回路6の出力として出力される。
【0053】
次に、期間Cの場合について説明する。ここでは、第1記憶ノードはラッチモード(トランスミッションゲート6S1はオフであり、クロックドインバータ6I8はオン)であり、第2記憶ノードもラッチモード(トランスミッションゲート6S2はオフであり、クロックドインバータ6I10はオン)である。この状態では、データラッチ回路6全体としてラッチである。
【0054】
デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2で構成される記憶ノードは、それぞれのインバータの出力が他方のインバータに入力されるため、データを保持することになる。
【0055】
この状態では、入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、データラッチ回路6の出力に影響を与えない。また、高エネルギー粒子が入射していずれか1つのトランジスタを誤動作させたとしても、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2のインバータは二重化されているため、デュアルポートインバータおよびデュアルポートクロックドインバータの動作の説明において上述したように、シングルイベント現象は防止される。
【0056】
上記のように、クロックに遅延を設けることによって、入力データ信号D又は入力クロック信号CKにSET信号が伝搬してきた場合において、入力されるSET信号の継続時間がクロックに設けた遅延時間より短い限り、それが両方の記憶ノードに同じタイミングで入力されることを防止することができ、それによって、従来のデータラッチ回路では発生していた誤動作を防止することができる。
【0057】
[フリップフロップ回路7]
これから回路図(図12〜図16)及びタイミング図(図18)を参照して、本発明の一実施形態としてのフリップフロップ回路7の構成及び動作を説明する。図15及び図16は、本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7の構成を表わす回路図である。フリップフロップ回路7は、入力データ信号Dが入力され、中間出力信号MOをスレーブに出力する、デュアルポートインバータ7IP1とデュアルポートクロックドインバータ7IP2から構成されるマスタと、マスタからの中間出力信号MOが入力され、出力データ信号Qを出力し、デュアルポートインバータ7IP3とデュアルポートクロックドインバータ7IP4から構成されるスレーブと、から構成される。図15はフリップフロップ回路7のマスタの回路図であり、図16はフリップフロップ回路7のスレーブの回路図である。
【0058】
[フリップフロップ回路7の構成]
フリップフロップ回路7は、2つのデュアルポートインバータと、2つのトランスミッションゲートを含まないデュアルポートクロックドインバータとからなる構成である。すなわち、フリップフロップ回路7は、第1の組の入力を受け取るための2入力と2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1トランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合した第1のデュアルポートインバータ(7IP1)と、第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、第2の組の入力を受け取るための2入力と2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第2の組のトランスミッションゲート(7S3,7S4)を介して結合した第2のデュアルポートインバータ(7IP3)と、第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、第2のデュアルポートインバータ(7IP3)の2出力及び第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、第2のデュアルポートインバータ(7IP3)の2入力に第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合している。デュアルポートインバータ7IP1及び7IP3は、前記のデュアルポートインバータ4と同様の構成をしており、デュアルポートクロックドインバータ7IP2及び7IP4は、前記のデュアルポートクロックドインバータ5と同様の構成をしている。
【0059】
第1のデュアルポートインバータ(7IP1)及び第2のデュアルポートインバータ(7IP3)は、以下のような構成である。すなわち、デュアルポートインバータは2つのインバータから構成される。具体的には、第1のデュアルポートインバータ(7IP1)は、第1のインバータ(7I9)及び第2のインバータ(7I11)を含み、第2のデュアルポートインバータ(7IP3)は、第3のインバータ(7I15)及び第4のインバータ(7I17)を含む。また、インバータはpチャネルトランジスタとnチャネルトランジスタとから構成される。すなわち、第1のインバータ(7I9)は第2のトランジスタ(7N17)に直列に接続された第1のトランジスタ(7P17)を含み、第2のインバータ(7I11)は第4のトランジスタ(7N21)に直列に接続された第3のトランジスタ(7P21)を含み、第3のインバータ(7I15)は第6のトランジスタ(7N27)に直列に接続された第5のトランジスタ(7P27)を含み、前記第4のインバータ(7I17)は第8のトランジスタ(7N31)に直列に接続された第7のトランジスタ(7P31)を含む。さらに、2つのインバータが2つの入力を提供する。すなわち、第1のトランジスタ(7P17)のゲートは、前記第4のトランジスタ(7N21)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(7N17)のゲートは、前記第3のトランジスタ(7P21)のゲートに接続されて第2のインバータ入力を提供し、前記第5のトランジスタ(7P27)のゲートは、前記第8のトランジスタ(7N31)のゲートに接続されて第3のインバータ入力を提供し、及び前記第6のトランジスタ(7N27)のゲートは、前記第7のトランジスタ(7P31)のゲートに接続されて第4のインバータ入力を提供する。さらに、2つのインバータが2つの出力を提供する。すなわち、前記第1(7P17)及び第2(7N17)のトランジスタは、第1のインバータ出力を提供し、前記第3(7P21)及び第4(7N21)のトランジスタは、第2のインバータ出力を提供し、前記第5(7P27)及び第6(7N27)のトランジスタは、第3のインバータ出力を提供し、及び前記第7(7P31)及び第8(7N31)のトランジスタは、第4のインバータ出力を提供する。2つのインバータ入力は同じ入力を受け取る。すなわち、第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供し、第3及び第4のインバータ入力は同じ入力を受け取り、有効な出力を前記第3のインバータ出力又は前記第4のインバータ出力に提供する。第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタで、第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタである。
【0060】
デュアルポートクロックドインバータは2つのクロックドインバータから構成される。すなわち、第1のデュアルポートクロックドインバータ(7IP2)は第1のクロックドインバータ(7I8)及び第2のクロックドインバータ(7I10)を含み、第2のデュアルポートクロックドインバータ(7IP4)は第3のクロックドインバータ(7I14)及び第4のクロックドインバータ(7I16)を含む。クロックドインバータは2つのpチャネルトランジスタと2つのnチャネルトランジスタとから構成される。すなわち、第1のクロックドインバータ(7I8)は第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のその順番に直列に接続されたトランジスタを含み、第2のクロックドインバータ(7I10)は第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のその順番に直列に接続されたトランジスタを含み、第3のクロックドインバータ(7I14)は第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のその順番に直列に接続されたトランジスタを含み、第4のクロックドインバータ(7I16)は第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のその順番に直列に接続されたトランジスタを含む。2つのクロックドインバータが2つの入力を提供し、所定の相補クロック信号が入力される。すなわち、第9(7P14)又は第10(7P15)のいずれか一方のトランジスタのゲートは第15(7N19)又は第16(7N18)のいずれか一方のトランジスタのゲートに接続されて第5のインバータ入力を提供し、第11(7N15)又は第12(7N14)のいずれか一方のトランジスタのゲートは第13(7P18)又は第14(7P19)のいずれか一方のトランジスタのゲートに接続されて第6のインバータ入力を提供し、第9(7P14)又は第10(7P15)の他方のトランジスタのゲートと第11(7N15)又は第12(7N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、第13(7P18)又は第14(7P19)の他方のトランジスタのゲートと第15(7N19)又は第16(7N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、第17(7P24)又は第18(7P25)のいずれか一方のトランジスタのゲートは第23(7N29)又は第24(7N28)のいずれか一方のトランジスタのゲートに接続されて第7のインバータ入力を提供し、第19(7N25)又は第20(7N24)のいずれか一方のトランジスタのゲートは前記第21(7P28)又は第22(7P29)のいずれか一方のトランジスタのゲートに接続されて第8のインバータ入力を提供し、第17(7P24)又は第18(7P25)の他方のトランジスタのゲートと第19(7N25)又は第20(7N24)の他方のトランジスタのゲートには、第1の相補クロック信号と逆相の相補クロック信号が入力され、第21(7P28)又は第22(7P29)の他方のトランジスタのゲートと第23(7N29)又は第24(7N28)の他方のトランジスタのゲートには、お互いに相補な論理値の第4の相補クロック信号(CKB4,CK4)が入力され、第1のトランスミッションゲート(7S1)は、それに含まれるpチャネルトランジスタ(7P16)とnチャネルトランジスタ(7N16)のそれぞれのゲートに前記第1のクロックドインバータ(7I8)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、第2のトランスミッションゲート(7S2)は、それに含まれるpチャネルトランジスタ(7P20)とnチャネルトランジスタ(7N20)のそれぞれのゲートに第2のクロックドインバータ(7I10)と相反するオンオフ動作をする極性で第3の相補クロック信号が入力され、第3のトランスミッションゲート(7S3)は、それに含まれるpチャネルトランジスタ(7P26)とnチャネルトランジスタ(7N26)のそれぞれのゲートに前記第3のクロックドインバータ(7I14)と相反するオンオフ動作をする極性で第1の相補クロック信号が入力され、第4のトランスミッションゲート(7S4)は、それに含まれるpチャネルトランジスタ(7P30)とnチャネルトランジスタ(7N30)のそれぞれのゲートに第4のクロックドインバータ(7I16)と相反するオンオフ動作をする極性で第4の相補クロック信号が入力される。ここで、マスタにおいて、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードと呼ぶ。また、スレーブにおいて、クロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードと呼び、クロック信号CK4及び反転クロック信号CKB4が入力されるノードを第2記憶ノードと呼ぶ。2つのクロックドインバータが2つの出力を提供する。すなわち、第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のトランジスタは第5のインバータ出力を提供し、第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のトランジスタのトランジスタは第6のインバータ出力を提供し、第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のトランジスタは第7のインバータ出力を提供し、第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のトランジスタのトランジスタは第8のインバータ出力を提供する。2つのインバータ入力は同じ入力を受け取る。すなわち、第5及び第6のインバータ入力は同じ入力を受け取り、第5のインバータ出力又は第6のインバータ出力に有効な出力を提供し、第7及び第8のインバータ入力は同じ入力を受け取り、第7のインバータ出力又は第8のインバータ出力に有効な出力を提供する。第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、第11(7P15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタである。
【0061】
このような構成にすることによって、それぞれのインバータが二重化されるため、シングルイベント現象による誤作動を抑えることができる。デュアルポートインバータとトランスミッションゲートの組み合わせでも、デュアルポートクロックドインバータと論理的に同じ動作を行わせることができるが、そのような(デュアルポート)インバータとトランスミッションゲートとの組み合わせによる回路構造では、トランスミッションゲートのトランジスタがオンの場合でも、ソース/ドレインの電圧レベルによっては強電界領域が広く形成され、それがシングルイベント現象の発生原因となり得るという欠点があった。本発明のように、それらに代えてクロックドインバータを使用すると、形成される強電界領域が、トランスミッションゲートに比べて狭くなるため、シングルイベント現象が発生しにくくなるという効果が得られる。
【0062】
フリップフロップ回路7は、入力段に並列インバータが追加されると好適である。すなわち好適には、フリップフロップ回路7は、第5のインバータ(7I6)と、第5のインバータと入力がお互いに接続された第6のインバータ(7I7)と、をさらに有し、第5のインバータ(7I6)の出力は、第1のトランスミッションゲート(7S1)を介して前記第1のインバータ入力に接続され、第6のインバータ(7I7)の出力は、第2のトランスミッションゲート(7S2)を介して第2のインバータ入力に接続される。
【0063】
フリップフロップ回路7は、中間段にも並列インバータが追加されると好適である。すなわち好適には、フリップフロップ回路7は、第7のインバータ(7I12)と、第7のインバータと入力がお互いに接続された第8のインバータ(7I13)と、をさらに有し、第7のインバータ(7I12)の出力は、第3のトランスミッションゲート(7S3)を介して前記第3のインバータ入力に接続され、第8のインバータ(7I13)の出力は、第4のトランスミッションゲート(7S4)を介して第4のインバータ入力に接続される。
【0064】
[ゲート間距離の限定]
フリップフロップ回路7は、データラッチ回路6に関して上述した理由により、トランジスタが離間されて配置されると好適である。すなわち好適には、フリップフロップ回路7においては、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記のクロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離とされる。このような隣り合った導電型が異なるトランジスタの組み合わせは、定常状態においてはオンオフの状態が一致するものであるため、両方がオフ状態のときには両方とも同時に誤動作し得るからである。このような構成にすると、同時にSETが発生するとフリップフロップ回路7の論理状態が反転してしまうトランジスタの対の対角線距離が大きくなるため、1回の高エネルギー粒子の入射によって、その対のトランジスタが同時に反転してしまう可能性を極めて小さくすることができる。
【0065】
具体的には、トランジスタ7P15−トランジスタ7N17−トランジスタ7P19−トランジスタ7N21の間の距離、トランジスタ7N15−トランジスタ7P17−トランジスタ7N19−トランジスタ7P21の間の距離、トランジスタ7P25−トランジスタ7N27−トランジスタ7P29−トランジスタ7N31の間の距離、及びトランジスタ7N25−トランジスタ7P27−トランジスタ7N29−トランジスタ7P31の間の距離の間の距離を所定の離隔距離以上とすると好適である。なお、その離隔距離が大きい方が、良好なシングルイベント耐性が得られる。具体的には、製造プロセス、基板のキャリア密度によって変化するが、例えば、離隔距離を2.0μm(マイクロメートル)以上、2.9μm以上などとすると良好な結果が得られた。
【0066】
[クロック生成回路]
次に、クロック生成回路について説明する。図12のクロック生成回路7C1、図13のクロック生成回路7C2、及び図14のクロック生成回路7C3は、フリップフロップ回路7に入力されるクロック信号CK1、CKB1、CK3、CKB3、CK4、及びCKB4を生成するために、組み合わせて使用される。図18は、フリップフロップ回路7で使用されるクロック信号のタイミング図である。
【0067】
クロック生成回路7C1は、図12に示すように、インバータ(7I1,7I2,7I3,7I4,7I5)を縦列に5段接続したものである。クロック生成回路7C1は、入力クロック信号CKが入力され、それを元に、反転クロック信号CKB1、クロック信号CK1、クロック信号CK2、反転クロック信号CKB2を生成する。クロック生成回路7C1は、図9に示したクロック生成回路6C1と同じ構造である。図18は、それらのクロック信号の様子を示す。図18で、「遅延時間」と示した時間だけ、クロック信号CK2及び反転クロック信号CKB2のタイミングは全体が遅延させられる。
【0068】
スレーブ側の一方の記憶ノードへ入力される後縁エッジ前進クロック(クロック信号CK4及び反転クロック信号CKB4)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路7C2は、図13の下段に示すような論理回路を、例えば図13の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路7C2は、図10に示したクロック生成回路6C2と同じ構造である。クロック生成回路7C2には、クロック信号CK1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK4が生成され、それがインバータで反転させられて反転クロック信号CKB4が生成される。
【0069】
マスタ側の一方の記憶ノードへ入力される前縁エッジ遅延クロック(クロック信号CK3及び反転クロック信号CKB3)は、通常のクロックと全体が遅延させられたクロックとを所定の論理回路で演算することによって生成される。そのような論理回路であるクロック生成回路7C3は、図14の下段に示すような論理回路を、例えば図14の上段に示すようなインバータとトランジスタとの組み合わせで実現した回路である。クロック生成回路7C3は、図10に示したクロック生成回路6C2と同じ構造である。クロック生成回路7C3には、反転クロック信号CKB1と反転クロック信号CKB2とが入力され、それらのNAND演算がなされてクロック信号CK3が生成され、それがインバータで反転させられて反転クロック信号CKB3が生成される。
【0070】
このクロック生成回路7C1、クロック生成回路7C2、クロック生成回路7C3とを組み合わせることにより、以下のような特徴を有するクロック信号を得ることができる。図18を参照する。ここでは、マスタ側の一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及びマスタのラッチモードからスルーモードへの移行タイミングが遅延させられるような前縁エッジ遅延クロックが生成されている。ここに、マスタ側の記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を前縁エッジと呼ぶことにする。すなわち、ハイレベルのときに第2のトランスミッションゲート(7S2)がオンになる極性である、第3の相補クロック信号の内の逆相信号(CKB3)の立ち下がりは、ハイレベルのときに第1のトランスミッションゲートがオンになる極性である、第1の相補クロック信号の内の逆信号(CKB1)の立ち下がりと同じタイミングであり、当該第3の相補クロック信号の内の当該逆相信号(CKB3)の立ち上がりであるクロックの前縁エッジは、当該第1の相補クロック信号の内の当該逆相信号(CKB1)の立ち上がりから所定の遅延時間を有するようなタイミングであるようにクロックのエッジが遅延させられる。さらにここでは、スレーブ側の一方の記憶ノード(第2記憶ノード)へ入力される、その記憶ノード及びスレーブのスルーモードからラッチモードへの移行タイミングが前進させられるような後縁エッジ前進クロックが生成されている。ここに、スレーブ側の記憶ノードがラッチモードからスルーモードに移行するタイミングのクロックの部分を後縁エッジと呼ぶことにする。すなわち、ハイレベルのときに第4のトランスミッションゲート(7S4)がオンになる極性である、第4の相補クロック信号の内の逆相信号(CKB4)の立ち上がりは、ハイレベルのときに第1のトランスミッションゲートがオンになる極性である、第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、当該第4の相補クロック信号の内の当該逆相信号(CKB4)の立ち下がりであるクロックの後縁エッジは、当該第1の相補クロック信号の内の当該逆相信号(CKB1)の次の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられたタイミングであることを特徴とするクロック信号を得ることができる。また好適には、第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、それの立ち上がりから前記の所定の遅延時間が経過したタイミングである。クロック信号CK2及び反転クロック信号CKB2は、フリップフロップ回路7に入力される、クロック信号CK3、反転クロック信号CKB3、クロック信号CK4、及び反転クロック信号CKB4を生成するための中間的なクロック信号である。図18に、これらのクロック信号の主なものの相互関係を示す。クロック信号CK3の立ち下がりである前縁エッジはクロック信号CK1の立ち下がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち上がりは同じタイミングである。また、反転クロック信号CKB3の立ち上がりである前縁エッジは反転クロック信号CKB1の立ち上がりから所定の遅延時間だけタイミングが遅延させられるが、それらの立ち下がりのタイミングは同じである。さらに、反転クロック信号CKB4の立ち上がりはクロック信号CK1の立ち上がりと同じタイミングであり、反転クロック信号CKB4の立ち下がりである後縁エッジは、クロック信号CK1の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられており、かつ、当該反転クロック信号CKB4の立ち上がりから前記の所定の遅延時間が経過したタイミングである。
【0071】
第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の逆相信号(CKB1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0072】
第4の相補クロック信号の内の正相信号(CK4)及び逆相信号(CKB4)は、第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ全体を遅延させた相補クロック信号を第2の相補クロック信号(CK2,CKB2)として、それぞれ、第1の相補クロック信号の内の正相信号(CK1)と第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び第1の相補クロック信号の内の正相信号(CK1)と第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成される。
【0073】
ここで、マスタにおいて、タイミングが異なる2種類のクロック信号が入力される。すなわち、トランスミッションゲート7S1には、クロック信号CK1と反転クロック信号CKB1が、トランスミッションゲート7S2にはクロック信号CK3と反転クロック信号CKB3が入力される。また、デュアルポートクロックドインバータ7IP2を構成するクロックドインバータ7I8とクロックドインバータ7I10にも、同様にタイミングが異なるクロック信号が入力される。すなわち、クロックドインバータ7I8には、クロック信号CK1と反転クロック信号CKB1が、クロックドインバータ7I10にはクロック信号CK3と反転クロック信号CKB3が入力される。このような構成にすることによって、入力データ信号Dを受けるマスタにおいて、二重化された回路の内の一方の回路の特定の動作のタイミングを他方の回路とは異なるタイミングにすることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK3及び反転クロック信号CKB3が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、たとえ一方の記憶ノードがスルーモードであったとしても、SETにより誤った入力データ信号Dが送られてきた場合にも、それによって第1記憶ノードと第2記憶ノードの両方のデータが変化してしまうことを防止することができる。
【0074】
なお、マスタにおいて、二重化された回路の片側の動作タイミングを全体的に単に遅らせるだけだとホールド時間が増加するという不都合が生じるため、上述のデータラッチ回路6と同様に、クロック信号CK3及び反転クロック信号CKB3に対して、それぞれ立ち下がり及び立ち上がりのタイミングである前縁エッジのみに遅延時間を設け、それぞれ立ち上がり及び立ち下がりのタイミングには遅延時間を設けないという構成として、ホールド時間の増加を防止している。
【0075】
また、スレーブにおいても、タイミングが異なる2種類のクロック信号が入力される。すなわち、トランスミッションゲート7S3には、クロック信号CK1と反転クロック信号CKB1が、トランスミッションゲート7S4にはクロック信号CK4と反転クロック信号CKB4が入力される。また、デュアルポートクロックドインバータ7IP4を構成するクロックドインバータ7I14とクロックドインバータ7I16にも、同様にタイミングが異なるクロック信号が入力される。このような構成にすることによって、中間出力信号MOを受けるスレーブにおいて、二重化された回路の内の一方の回路の特定の動作のタイミングを他方の回路とは異なるタイミングにすることができる。このようにすると、クロック信号のタイミングが同じである片側同士の回路で構成される2つの記憶ノードをクロック信号CK1及び反転クロック信号CKB1が入力されるノードを第1記憶ノードとし、クロック信号CK4及び反転クロック信号CKB4が入力されるノードを第2記憶ノードとすると、遅延によりそれらのクロック信号が一致していない期間には、SETにより誤った入力が中間出力信号MOとして送られてきた場合にも、それによって第1記憶ノードと第2記憶ノードの両方のデータが変化してしまうことを防止することができる。
【0076】
なお、スレーブにおいて、二重化された回路の片側の動作タイミングを全体的に単にずらすだけだと不都合が生じる。図18を参照する。マスタがスルーモードからラッチモードに変化したときにその瞬間のデータがラッチされるが、この瞬間のデータがスレーブを通して出力データ信号Qとして出力されるまでの遅れ時間である伝搬遅延時間は短い方が好ましい。しかし、スレーブの二重化された回路の片側の動作タイミングを全体的に単にずらすだけ、例えば、反転クロック信号CKB4の動作タイミングをクロック信号CK1の動作タイミングより全体的に遅延させただけだと、その遅延時間だけ、スレーブがラッチモードからスルーモードに変化するタイミングが遅れることになり、その分、全体の伝搬遅延時間も増大することになる。従って、これが新たなタイミングペナルティとなる。
【0077】
一方、反転クロック信号CKB4の立ち下がりである後縁エッジはクロック信号CK1の立ち下がりより前のタイミングであるようにクロックのエッジが前進させられたタイミングとするが、反転クロック信号CKB4の立ち上がりはクロック信号CK1の立ち上がりと同じタイミングにするという本発明のようなタイミングの構成とすれば、スレーブの第1記憶ノード(クロック信号CK1及び反転クロック信号CKB1が入力されるノード)がスルーモードに変化したタイミングにおいて、スレーブの第2記憶ノード(クロック信号CK4及び反転クロック信号CKB4が入力されるノード)もスルーモードに変化するため、スレーブ全体がそのタイミングでスルーモードに変化することになり、マスタから入力されたデータを直ちに出力することになる。従って、2種類のクロック信号を異なるタイミングとしても、伝搬遅延時間がさらに増加させられることを防止することができる。これによって、応答特性を劣化させることなく、シングルイベント耐性を向上させることができる。
【0078】
なお、クロックの遅延時間は、クロック動作に影響を与えない範囲で大きい方がよい。具体的には、0.5ナノ秒以上であれば好適であり、0.9ナノ秒以上であればより好適である。さらには、5ナノ秒以上であればさらにより好適である。なお、遅延時間を無制限に大きくすると、後続のクロックとの境目がなくなってクロック動作に支障を来すため、遅延時間は、クロック信号の1周期の1/2未満とする必要がある。
【0079】
[フリップフロップ回路7の動作]
これからフリップフロップ回路7の動作を、図15及び図16の回路図及び図18のタイミング図を参照して説明する。図18のクロック信号相互間のタイミングを表に表わすと表3のようになる。期間Bは従来のフリップフロップ回路においてマスタがスルーモードかつスレーブがラッチモードである期間に対応し、期間Cは従来のフリップフロップ回路においてマスタがラッチモードかつスレーブがスルーモードである期間に対応する。さらに、期間A及びDは、マスタ及びスレーブの両方ともがラッチモードである期間に対応する。
【表4】
【0080】
まず、期間Aについて説明する。期間Aにおいてマスタは、第1記憶ノードがスルーモード(トランスミッションゲート7S1はオンであり、クロックドインバータ7I8はオフ)で第2記憶ノードがラッチモード(トランスミッションゲート7S2はオフであり、クロックドインバータ7I10はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、マスタ全体としてラッチモードである。このため、期間Aにおいては入力データ信号D又は入力クロック信号CKにSETによって誤った論理レベルの入力がされても、それはフリップフロップ回路7のマスタへ入力されず、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、フリップフロップ回路7が誤ったデータを保持することはない。
【0081】
期間Aにおいてスレーブは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S3及び7S4はオフであり、クロックドインバータ7I14及び7I16はオン)であり、スレーブ全体がラッチモードである。スレーブは、それが保持しているデータに基づき、マスタの論理状態にかかわらず、出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。
【0082】
次に、期間Bについて説明する。期間Bにおいてマスタは、第1記憶ノード及び第2記憶ノードともスルーモード(トランスミッションゲート7S1及び7S2はオンであり、クロックドインバータ7I8及び7I10はオフ)であり、マスタ全体としてスルーモードである。フリップフロップ回路7はこの期間Bにおいてマスタから入力データ信号Dを取り入れる。
【0083】
期間Bにおいてスレーブは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S3及び7S4はオフであり、クロックドインバータ7I14及び7I16はオン)であり、スレーブ全体がラッチモードである。スレーブは、それが保持しているデータに基づき、マスタの論理状態にかかわらず、出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。
【0084】
次に、期間Cについて説明する。期間Cにおいてマスタは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S1及び7S2はオフであり、クロックドインバータ7I8及び7I10はオン)であり、マスタ全体としてラッチモードである。ここでは、マスタは期間Cに変化する直前の論理状態を保持している。
【0085】
期間Cにおいてスレーブは、第1記憶ノード及び第2記憶ノードともスルーモード(トランスミッションゲート7S3及び7S4はオンであり、クロックドインバータ7I14及び7I16はオフ)であり、スレーブ全体がスルーモードである。スレーブは、マスタが保持しているデータを中間出力信号MOとして受け取り、それに基づいて出力データ信号Q及び反転出力データ信号XQをフリップフロップ回路7の出力として出力する。ここで、期間Bから期間Cへの遷移時に、マスタがスルーモードからラッチモードに変化するが、それと同時にスレーブがラッチモードからスルーモードに変化する。このように、マスタがラッチモードに変化すると同時にスレーブをスルーモードに変化させることによって、フリップフロップ回路7の伝搬遅延時間を増加させることなく、それぞれのクロック信号のタイミングをずらして入力データ信号D及び入力クロック信号CKに対するSETへの耐性を向上させることが可能となる。
【0086】
次に、期間Dについて説明する。期間Dにおいてマスタは、第1記憶ノード及び第2記憶ノードともラッチモード(トランスミッションゲート7S1及び7S2はオフであり、クロックドインバータ7I8及び7I10はオン)であり、マスタ全体としてラッチモードである。ここでは、マスタは期間Cに変化する直前の論理状態を保持している。期間Dにおいては、SETによる誤った論理レベルが入力データ信号D又は入力クロック信号CKとしてマスタに入力されても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、マスタにおいて論理状態が誤って反転することはなく、シングルイベントは防止される。
【0087】
期間Dにおいてスレーブは、第1記憶ノードがスルーモード(トランスミッションゲート7S3はオンであり、クロックドインバータ7I14はオフ)で第2記憶ノードがラッチモード(トランスミッションゲート7S4はオフであり、クロックドインバータ7I16はオン)である。この状態では、ラッチモードの第2記憶ノードが論理状態を保持しており、それが全体の出力を規定するため、スレーブ全体としてラッチモードである。このため、期間Dにおいてはマスタにおいてシングルイベント現象が発生し、それが誤った中間出力信号としてスレーブに送られたとしても、それに影響されることはない。このようにスレーブは、期間Cに遷移したときにはマスタからの出力を直ちに出力するとともに、その直後の期間Dにおいてはマスタがラッチモードのままスレーブもラッチモードとなることによって、より確実にデータを保持することができる。期間Dにおいては、SETによる誤った論理レベルが中間出力信号MO又は入力クロック信号CKとしてスレーブに入力されても、そのSET信号の継続時間がクロックに設けた遅延時間より短い限り、スレーブにおいて論理状態が誤って反転することはなく、シングルイベントは防止される。したがって、フリップフロップ回路7が誤ったデータを保持することが防止される。
【0088】
上述の実施形態は、本発明を説明するための例示であり、本発明をこの実施形態に限定する趣旨ではない。本発明は、その要旨を逸脱しない限りにおいて、種々の実施形態で実施することができる。
【図面の簡単な説明】
【0089】
【図1】従来のデータラッチ回路1のためのクロック生成回路1C1の回路図である。
【図2】従来のデータラッチ回路1の回路図である。
【図3】従来のフリップフロップ回路2のためのクロック生成回路2C1の回路図である。
【図4】従来のフリップフロップ回路2の回路図である。
【図5】従来のデータラッチ回路3のためのクロック生成回路3C1の回路図である。
【図6】従来のシングルイベント耐性を有するデータラッチ回路3の回路図である。
【図7】デュアルポートインバータ4の構成を表わす回路図である。
【図8】デュアルポートクロックドインバータ5の構成を表わす回路図である。
【図9】本発明に係るデータラッチ回路6のためのクロック生成回路6C1の回路図である。
【図10】本発明の第1の実施形態に係るデータラッチ回路6のためのクロック生成回路6C2の回路図である。
【図11】本発明の第1の実施形態に係る、デュアルポートインバータ6IP1及びデュアルポートクロックドインバータ6IP2を有するデータラッチ回路6の構成を表わす回路図である。
【図12】本発明に係るフリップフロップ回路7のためのクロック生成回路7C1の回路図である。
【図13】本発明に係るフリップフロップ回路7のためのクロック生成回路7C2の回路図である。
【図14】本発明に係るフリップフロップ回路7のためのクロック生成回路7C3の回路図である。
【図15】本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7のマスタの構成を表わす回路図である。
【図16】本発明の第2の実施形態に係る、デュアルポートインバータ7IP1及び7IP3並びにデュアルポートクロックドインバータ7IP2及び7IP4を有するフリップフロップ回路7のスレーブの構成を表わす回路図である。
【図17】データラッチ回路6で使用されるクロック信号のタイミング図である。
【図18】フリップフロップ回路7で使用されるクロック信号のタイミング図である。
【符号の説明】
【0090】
1 データラッチ回路
1C1 クロック生成回路
2 フリップフロップ回路
2C1 クロック生成回路
3 データラッチ回路
3C1 クロック生成回路
4 デュアルポートインバータ
5 デュアルポートクロックドインバータ
6 データラッチ回路
6C1 クロック生成回路
6C2 クロック生成回路
7 フリップフロップ回路
7C1 クロック生成回路
7C2 クロック生成回路
7C3 クロック生成回路
【特許請求の範囲】
【請求項1】
1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、
前記デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、
前記デュアルポートインバータ(6IP1)の2出力及び前記デュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有することを特徴とするシングルイベント耐性ラッチ回路。
【請求項2】
請求項1に記載のシングルイベント耐性ラッチ回路において、前記デュアルポートインバータ(6IP1)は、第1のインバータ(6I9)及び第2のインバータ(6I11)を含むシングルイベント耐性ラッチ回路。
【請求項3】
請求項2に記載のシングルイベント耐性ラッチ回路において、前記第1のインバータ(6I9)は第2のトランジスタ(6N16)に直列に接続された第1のトランジスタ(6P16)を含み、前記第2のインバータ(6I11)は第4のトランジスタ(6N20)に直列に接続された第3のトランジスタ(6P20)を含むシングルイベント耐性ラッチ回路。
【請求項4】
請求項3に記載のシングルイベント耐性ラッチ回路において、前記第1及び第3のトランジスタ(6P16,6P20)はpチャネルトランジスタで、前記第2及び第4のトランジスタ(6N16,6N20)はnチャネルトランジスタであるシングルイベント耐性ラッチ回路。
【請求項5】
請求項3に記載のシングルイベント耐性ラッチ回路において、前記第1のトランジスタ(6P16)のゲートは、前記第4のトランジスタ(6N20)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(6N16)のゲートは、前記第3のトランジスタ(6P20)のゲートに接続されて第2のインバータ入力を提供するシングルイベント耐性ラッチ回路。
【請求項6】
請求項5に記載のシングルイベント耐性ラッチ回路において、前記第1及び第2のトランジスタ(6P16,6N16)は、第1のインバータ出力を提供し、前記第3及び第4のトランジスタ(6P20,6N20)は、第2のインバータ出力を提供するシングルイベント耐性ラッチ回路。
【請求項7】
請求項6に記載のシングルイベント耐性ラッチ回路において、前記第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供するシングルイベント耐性ラッチ回路。
【請求項8】
請求項7に記載のシングルイベント耐性ラッチ回路において、
第3のインバータ(6I6)と、
前記第3のインバータと入力がお互いに接続された第4のインバータ(6I7)と、をさらに有し、
前記第3のインバータ(6I6)の出力は、前記第1のトランスミッションゲート(6S1)を介して前記第1のインバータ入力に接続され、
前記第4のインバータ(6I7)の出力は、前記第2のトランスミッションゲート(6S2)を介して前記第2のインバータ入力に接続されるシングルイベント耐性ラッチ回路。
【請求項9】
請求項8に記載のシングルイベント耐性ラッチ回路において、前記デュアルポートクロックドインバータ(6IP2)は第1のクロックドインバータ(6I8)及び第2のクロックドインバータ(6I10)を含むシングルイベント耐性ラッチ回路。
【請求項10】
請求項9に記載のシングルイベント耐性ラッチ回路において、前記第1のクロックドインバータ(6I8)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(6P13,6P14,6N13,6N14)を含み、前記第2のクロックドインバータ(6I10)は第9、第10、第11、及び第12のその順番に直列に接続されたトランジスタ(6P17,6P18,6N17,6N18)を含むシングルイベント耐性ラッチ回路。
【請求項11】
請求項10に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、前記第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタであるシングルイベント耐性ラッチ回路。
【請求項12】
請求項11に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)又は第6(6P14)のいずれか一方のトランジスタのゲートは前記第11(6N17)又は第12(6N18)のいずれか一方のトランジスタのゲートに接続されて第3のインバータ入力を提供し、
前記第7(6N13)又は第8(6N14)のいずれか一方のトランジスタのゲートは前記第9(6P17)又は第10(6P18)のいずれか一方のトランジスタのゲートに接続されて第4のインバータ入力を提供し、
前記第5(6P13)又は第6(6P14)の他方のトランジスタのゲートと前記第7(6N13)又は第8(6N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、
前記第9(6P17)又は第10(6P18)の他方のトランジスタのゲートと前記第11(6N17)又は第12(6N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、
前記第1のトランスミッションゲート(6S1)は、それに含まれるpチャネルトランジスタ(6P15)とnチャネルトランジスタ(6N15)のそれぞれのゲートに前記第1のクロックドインバータ(6I8)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第2のトランスミッションゲート(6S2)は、それに含まれるpチャネルトランジスタ(6P19)とnチャネルトランジスタ(6N19)のそれぞれのゲートに前記第2のクロックドインバータ(6I10)と相反するオンオフ動作をする極性で前記第3の相補クロック信号が入力されるシングルイベント耐性ラッチ回路。
【請求項13】
請求項12に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)、第6(6P14)、第7(6N13)、及び第8(6N14)のトランジスタは第3のインバータ出力を提供し、前記第9(6P17)、第10(6P18)、第11(6N17)、及び第12(6N18)のトランジスタのトランジスタは第4のインバータ出力を提供するシングルイベント耐性ラッチ回路。
【請求項14】
請求項13に記載のシングルイベント耐性ラッチ回路において、前記第3及び第4のインバータ入力は同じ入力を受け取り、前記第3のインバータ出力又は前記第4のインバータ出力に有効な出力を提供するシングルイベント耐性ラッチ回路。
【請求項15】
請求項14に記載のシングルイベント耐性ラッチ回路において、
ローレベルのときに前記第2のトランスミッションゲート(6S2)がオンになる極性である、前記第3の相補クロック信号の内の正相信号(CK3)の立ち上がりは、ローレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の正相信号(CK1)の立ち上がりと同じタイミングであり、
前記第3の相補クロック信号の内の前記正相信号(CK3)の立ち下がりは、前記第1の相補クロック信号の内の前記正相信号(CK1)の立ち下がりから所定の遅延時間を有するタイミングであるようにクロックのエッジが遅延させられたシングルイベント耐性ラッチ回路。
【請求項16】
請求項15に記載のシングルイベント耐性ラッチ回路において、
前記第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性ラッチ回路。
【請求項17】
請求項15に記載のシングルイベント耐性ラッチ回路において、前記所定の遅延時間は、0.5ナノ秒以上であり、かつ、前記第1の相補クロック信号及び前記第3の相補クロック信号の1周期の1/2未満であるシングルイベント耐性ラッチ回路。
【請求項18】
請求項1に記載のシングルイベント耐性ラッチ回路において、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記クロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離であるシングルイベント耐性ラッチ回路。
【請求項19】
請求項18に記載のシングルイベント耐性ラッチ回路において、前記所定の離隔距離は、2.0マイクロメートル以上であるシングルイベント耐性ラッチ回路。
【請求項20】
第1の組の入力を受け取るための2入力と、2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1のトランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合したような第1のデュアルポートインバータ(7IP1)と、
前記第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、
第2の組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合したような第2のデュアルポートインバータ(7IP3)と、
前記第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、
前記第2のデュアルポートインバータ(7IP3)の2出力及び前記第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、
前記第2のデュアルポートインバータ(7IP3)の2入力に前記第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、前記第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合していることを特徴とするシングルイベント耐性フリップフロップ回路。
【請求項21】
請求項20に記載のシングルイベント耐性フリップフロップ回路において、前記第1のデュアルポートインバータ(7IP1)は、第1のインバータ(7I9)及び第2のインバータ(7I11)を含み、
前記第2のデュアルポートインバータ(7IP3)は、第3のインバータ(7I15)及び第4のインバータ(7I17)を含むシングルイベント耐性フリップフロップ回路。
【請求項22】
請求項21に記載のシングルイベント耐性フリップフロップ回路において、前記第1のインバータ(7I9)は第2のトランジスタ(7N17)に直列に接続された第1のトランジスタ(7P17)を含み、前記第2のインバータ(7I11)は第4のトランジスタ(7N21)に直列に接続された第3のトランジスタ(7P21)を含み、前記第3のインバータ(7I15)は第6のトランジスタ(7N27)に直列に接続された第5のトランジスタ(7P27)を含み、前記第4のインバータ(7I17)は第8のトランジスタ(7N31)に直列に接続された第7のトランジスタ(7P31)を含むシングルイベント耐性フリップフロップ回路。
【請求項23】
請求項22に記載のシングルイベント耐性フリップフロップ回路において、前記第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、前記第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、前記第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタで、前記第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタであるシングルイベント耐性フリップフロップ回路。
【請求項24】
請求項22に記載のシングルイベント耐性フリップフロップ回路において、前記第1のトランジスタ(7P17)のゲートは、前記第4のトランジスタ(7N21)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(7N17)のゲートは、前記第3のトランジスタ(7P21)のゲートに接続されて第2のインバータ入力を提供し、前記第5のトランジスタ(7P27)のゲートは、前記第8のトランジスタ(7N31)のゲートに接続されて第3のインバータ入力を提供し、前記第6のトランジスタ(7N27)のゲートは、前記第7のトランジスタ(7P31)のゲートに接続されて第4のインバータ入力を提供するシングルイベント耐性フリップフロップ回路。
【請求項25】
請求項24に記載のシングルイベント耐性フリップフロップ回路において、前記第1(7P17)及び第2(7N17)のトランジスタは、第1のインバータ出力を提供し、前記第3(7P21)及び第4(7N21)のトランジスタは、第2のインバータ出力を提供し、前記第5(7P27)及び第6(7N27)のトランジスタは、第3のインバータ出力を提供し、前記第7(7P31)及び第8(7N31)のトランジスタは、第4のインバータ出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項26】
請求項25に記載のシングルイベント耐性フリップフロップ回路において、前記第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供し、
前記第3及び第4のインバータ入力は同じ入力を受け取り、有効な出力を前記第3のインバータ出力又は前記第4のインバータ出力に提供するシングルイベント耐性フリップフロップ回路。
【請求項27】
請求項26に記載のシングルイベント耐性フリップフロップ回路において、
第5のインバータ(7I6)と、
前記第5のインバータと入力がお互いに接続された第6のインバータ(7I7)と、をさらに有し、
前記第5のインバータ(7I6)の出力は、前記第1のトランスミッションゲート(7S1)を介して前記第1のインバータ入力に接続され、
前記第6のインバータ(7I7)の出力は、前記第2のトランスミッションゲート(7S2)を介して前記第2のインバータ入力に接続され、
第7のインバータ(7I12)と、
前記第7のインバータと入力がお互いに接続された第8のインバータ(7I13)と、をさらに有し、
前記第7のインバータ(7I12)の出力は、前記第3のトランスミッションゲート(7S3)を介して前記第3のインバータ入力に接続され、
前記第8のインバータ(7I13)の出力は、前記第4のトランスミッションゲート(7S4)を介して前記第4のインバータ入力に接続されるシングルイベント耐性フリップフロップ回路。
【請求項28】
請求項27に記載のシングルイベント耐性フリップフロップ回路において、前記第1のデュアルポートクロックドインバータ(7IP2)は第1のクロックドインバータ(7I8)及び第2のクロックドインバータ(7I10)を含み、前記第2のデュアルポートクロックドインバータ(7IP4)は第3のクロックドインバータ(7I14)及び第4のクロックドインバータ(7I16)を含むシングルイベント耐性フリップフロップ回路。
【請求項29】
請求項28に記載のシングルイベント耐性フリップフロップ回路において、前記第1のクロックドインバータ(7I8)は第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のその順番に直列に接続されたトランジスタを含み、前記第2のクロックドインバータ(7I10)は第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のその順番に直列に接続されたトランジスタを含み、前記第3のクロックドインバータ(7I14)は第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のその順番に直列に接続されたトランジスタを含み、前記第4のクロックドインバータ(7I16)は第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のその順番に直列に接続されたトランジスタを含むシングルイベント耐性フリップフロップ回路。
【請求項30】
請求項29に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、前記第11(7N15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、
前記第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、前記第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタであるシングルイベント耐性フリップフロップ回路。
【請求項31】
請求項30に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)又は第10(7P15)のいずれか一方のトランジスタのゲートは前記第15(7N19)又は第16(7N18)のいずれか一方のトランジスタのゲートに接続されて第5のインバータ入力を提供し、
前記第11(7N15)又は第12(7N14)のいずれか一方のトランジスタのゲートは前記第13(7P18)又は第14(7P19)のいずれか一方のトランジスタのゲートに接続されて第6のインバータ入力を提供し、
前記第9(7P14)又は第10(7P15)の他方のトランジスタのゲートと前記第11(7N15)又は第12(7N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、
前記第13(7P18)又は第14(7P19)の他方のトランジスタのゲートと前記第15(7N19)又は第16(7N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、
前記第17(7P24)又は第18(7P25)のいずれか一方のトランジスタのゲートは前記第23(7N29)又は第24(7N28)のいずれか一方のトランジスタのゲートに接続されて第7のインバータ入力を提供し、
前記第19(7N25)又は第20(7N24)のいずれか一方のトランジスタのゲートは前記第21(7P28)又は第22(7P29)のいずれか一方のトランジスタのゲートに接続されて第8のインバータ入力を提供し、
前記第17(7P24)又は第18(7P25)の他方のトランジスタのゲートと前記第19(7N25)又は第20(7N24)の他方のトランジスタのゲートには、前記第1の相補クロック信号と逆相の相補クロック信号が入力され、
前記第21(7P28)又は第22(7P29)の他方のトランジスタのゲートと前記第23(7N29)又は第24(7N28)の他方のトランジスタのゲートには、お互いに相補な論理値の第4の相補クロック信号(CKB4,CK4)が入力され、
前記第1のトランスミッションゲート(7S1)は、それに含まれるpチャネルトランジスタ(7P16)とnチャネルトランジスタ(7N16)のそれぞれのゲートに前記第1のクロックドインバータ(7I8)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第2のトランスミッションゲート(7S2)は、それに含まれるpチャネルトランジスタ(7P20)とnチャネルトランジスタ(7N20)のそれぞれのゲートに前記第2のクロックドインバータ(7I10)と相反するオンオフ動作をする極性で前記第3の相補クロック信号が入力され、
前記第3のトランスミッションゲート(7S3)は、それに含まれるpチャネルトランジスタ(7P26)とnチャネルトランジスタ(7N26)のそれぞれのゲートに前記第3のクロックドインバータ(7I14)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第4のトランスミッションゲート(7S4)は、それに含まれるpチャネルトランジスタ(7P30)とnチャネルトランジスタ(7N30)のそれぞれのゲートに前記第4のクロックドインバータ(7I16)と相反するオンオフ動作をする極性で前記第4の相補クロック信号が入力されるシングルイベント耐性フリップフロップ回路。
【請求項32】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のトランジスタは第5のインバータ出力を提供し、前記第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のトランジスタのトランジスタは第6のインバータ出力を提供し、
前記第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のトランジスタは第7のインバータ出力を提供し、前記第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のトランジスタのトランジスタは第8のインバータ出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項33】
請求項32に記載のシングルイベント耐性フリップフロップ回路において、前記第5及び第6のインバータ入力は同じ入力を受け取り、前記第5のインバータ出力又は前記第6のインバータ出力に有効な出力を提供し、
前記第7及び第8のインバータ入力は同じ入力を受け取り、前記第7のインバータ出力又は前記第8のインバータ出力に有効な出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項34】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、
ハイレベルのときに前記第2のトランスミッションゲート(7S2)がオンになる極性である、前記第3の相補クロック信号の内の逆相信号(CKB3)の立ち下がりは、ハイレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、
前記第3の相補クロック信号の内の前記逆相信号(CKB3)の立ち上がりは、前記第1の相補クロック信号の内の前記逆相信号(CKB1)の立ち上がりから所定の遅延時間を有するタイミングであるようにクロックのエッジが遅延させられたシングルイベント耐性フリップフロップ回路。
【請求項35】
請求項34に記載のシングルイベント耐性フリップフロップ回路において、
前記第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性フリップフロップ回路。
【請求項36】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、
ハイレベルのときに前記第4のトランスミッションゲート(7S4)がオンになる極性である、前記第4の相補クロック信号の内の逆相信号(CKB4)の立ち上がりは、ハイレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、
前記第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、前記第1の相補クロック信号の内の前記逆相信号(CKB1)の次の立ち上がりより前のタイミングであるようにクロックのエッジが前進させられたシングルイベント耐性フリップフロップ回路。
【請求項37】
請求項36に記載のシングルイベント耐性フリップフロップ回路において、
前記第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、それの立ち上がりから前記所定の遅延時間が経過したタイミングであるシングルイベント耐性フリップフロップ回路。
【請求項38】
請求項37に記載のシングルイベント耐性フリップフロップ回路において、
前記第4の相補クロック信号の内の正相信号(CK4)及び逆相信号(CKB4)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の正相信号(CK1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の正相信号(CK1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性フリップフロップ回路。
【請求項39】
請求項37に記載のシングルイベント耐性フリップフロップ回路において、前記所定の遅延時間は、0.5ナノ秒以上であり、かつ、前記第1の相補クロック信号及び前記第3の相補クロック信号の1周期の1/2未満であるシングルイベント耐性フリップフロップ回路。
【請求項40】
請求項21に記載のシングルイベント耐性フリップフロップ回路において、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記クロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離であるシングルイベント耐性フリップフロップ回路。
【請求項41】
請求項40に記載のシングルイベント耐性フリップフロップ回路において、前記所定の離隔距離は、2.0マイクロメートル以上であるシングルイベント耐性フリップフロップ回路。
【請求項1】
1組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該1組の入力は当該デュアルポートインバータにそれぞれ第1のトランスミッションゲート(6S1)及び第2のトランスミッションゲート(6S2)を介して結合したようなデュアルポートインバータ(6IP1)と、
前記デュアルポートインバータ(6IP1)の2出力に2入力で結合した、2出力を有するデュアルポートクロックドインバータ(6IP2)と、
前記デュアルポートインバータ(6IP1)の2出力及び前記デュアルポートクロックドインバータ(6IP2)の2出力の少なくとも1つに接続した出力と、を有することを特徴とするシングルイベント耐性ラッチ回路。
【請求項2】
請求項1に記載のシングルイベント耐性ラッチ回路において、前記デュアルポートインバータ(6IP1)は、第1のインバータ(6I9)及び第2のインバータ(6I11)を含むシングルイベント耐性ラッチ回路。
【請求項3】
請求項2に記載のシングルイベント耐性ラッチ回路において、前記第1のインバータ(6I9)は第2のトランジスタ(6N16)に直列に接続された第1のトランジスタ(6P16)を含み、前記第2のインバータ(6I11)は第4のトランジスタ(6N20)に直列に接続された第3のトランジスタ(6P20)を含むシングルイベント耐性ラッチ回路。
【請求項4】
請求項3に記載のシングルイベント耐性ラッチ回路において、前記第1及び第3のトランジスタ(6P16,6P20)はpチャネルトランジスタで、前記第2及び第4のトランジスタ(6N16,6N20)はnチャネルトランジスタであるシングルイベント耐性ラッチ回路。
【請求項5】
請求項3に記載のシングルイベント耐性ラッチ回路において、前記第1のトランジスタ(6P16)のゲートは、前記第4のトランジスタ(6N20)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(6N16)のゲートは、前記第3のトランジスタ(6P20)のゲートに接続されて第2のインバータ入力を提供するシングルイベント耐性ラッチ回路。
【請求項6】
請求項5に記載のシングルイベント耐性ラッチ回路において、前記第1及び第2のトランジスタ(6P16,6N16)は、第1のインバータ出力を提供し、前記第3及び第4のトランジスタ(6P20,6N20)は、第2のインバータ出力を提供するシングルイベント耐性ラッチ回路。
【請求項7】
請求項6に記載のシングルイベント耐性ラッチ回路において、前記第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供するシングルイベント耐性ラッチ回路。
【請求項8】
請求項7に記載のシングルイベント耐性ラッチ回路において、
第3のインバータ(6I6)と、
前記第3のインバータと入力がお互いに接続された第4のインバータ(6I7)と、をさらに有し、
前記第3のインバータ(6I6)の出力は、前記第1のトランスミッションゲート(6S1)を介して前記第1のインバータ入力に接続され、
前記第4のインバータ(6I7)の出力は、前記第2のトランスミッションゲート(6S2)を介して前記第2のインバータ入力に接続されるシングルイベント耐性ラッチ回路。
【請求項9】
請求項8に記載のシングルイベント耐性ラッチ回路において、前記デュアルポートクロックドインバータ(6IP2)は第1のクロックドインバータ(6I8)及び第2のクロックドインバータ(6I10)を含むシングルイベント耐性ラッチ回路。
【請求項10】
請求項9に記載のシングルイベント耐性ラッチ回路において、前記第1のクロックドインバータ(6I8)は第5、第6、第7、及び第8のその順番に直列に接続されたトランジスタ(6P13,6P14,6N13,6N14)を含み、前記第2のクロックドインバータ(6I10)は第9、第10、第11、及び第12のその順番に直列に接続されたトランジスタ(6P17,6P18,6N17,6N18)を含むシングルイベント耐性ラッチ回路。
【請求項11】
請求項10に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)、第6(6P14)、第9(6P17)、及び第10(6P18)のトランジスタはpチャネルトランジスタで、前記第7(6N13)、第8(6N14)、第11(6N17)、及び第12(6N18)のトランジスタはnチャネルトランジスタであるシングルイベント耐性ラッチ回路。
【請求項12】
請求項11に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)又は第6(6P14)のいずれか一方のトランジスタのゲートは前記第11(6N17)又は第12(6N18)のいずれか一方のトランジスタのゲートに接続されて第3のインバータ入力を提供し、
前記第7(6N13)又は第8(6N14)のいずれか一方のトランジスタのゲートは前記第9(6P17)又は第10(6P18)のいずれか一方のトランジスタのゲートに接続されて第4のインバータ入力を提供し、
前記第5(6P13)又は第6(6P14)の他方のトランジスタのゲートと前記第7(6N13)又は第8(6N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、
前記第9(6P17)又は第10(6P18)の他方のトランジスタのゲートと前記第11(6N17)又は第12(6N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、
前記第1のトランスミッションゲート(6S1)は、それに含まれるpチャネルトランジスタ(6P15)とnチャネルトランジスタ(6N15)のそれぞれのゲートに前記第1のクロックドインバータ(6I8)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第2のトランスミッションゲート(6S2)は、それに含まれるpチャネルトランジスタ(6P19)とnチャネルトランジスタ(6N19)のそれぞれのゲートに前記第2のクロックドインバータ(6I10)と相反するオンオフ動作をする極性で前記第3の相補クロック信号が入力されるシングルイベント耐性ラッチ回路。
【請求項13】
請求項12に記載のシングルイベント耐性ラッチ回路において、前記第5(6P13)、第6(6P14)、第7(6N13)、及び第8(6N14)のトランジスタは第3のインバータ出力を提供し、前記第9(6P17)、第10(6P18)、第11(6N17)、及び第12(6N18)のトランジスタのトランジスタは第4のインバータ出力を提供するシングルイベント耐性ラッチ回路。
【請求項14】
請求項13に記載のシングルイベント耐性ラッチ回路において、前記第3及び第4のインバータ入力は同じ入力を受け取り、前記第3のインバータ出力又は前記第4のインバータ出力に有効な出力を提供するシングルイベント耐性ラッチ回路。
【請求項15】
請求項14に記載のシングルイベント耐性ラッチ回路において、
ローレベルのときに前記第2のトランスミッションゲート(6S2)がオンになる極性である、前記第3の相補クロック信号の内の正相信号(CK3)の立ち上がりは、ローレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の正相信号(CK1)の立ち上がりと同じタイミングであり、
前記第3の相補クロック信号の内の前記正相信号(CK3)の立ち下がりは、前記第1の相補クロック信号の内の前記正相信号(CK1)の立ち下がりから所定の遅延時間を有するタイミングであるようにクロックのエッジが遅延させられたシングルイベント耐性ラッチ回路。
【請求項16】
請求項15に記載のシングルイベント耐性ラッチ回路において、
前記第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性ラッチ回路。
【請求項17】
請求項15に記載のシングルイベント耐性ラッチ回路において、前記所定の遅延時間は、0.5ナノ秒以上であり、かつ、前記第1の相補クロック信号及び前記第3の相補クロック信号の1周期の1/2未満であるシングルイベント耐性ラッチ回路。
【請求項18】
請求項1に記載のシングルイベント耐性ラッチ回路において、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記クロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離であるシングルイベント耐性ラッチ回路。
【請求項19】
請求項18に記載のシングルイベント耐性ラッチ回路において、前記所定の離隔距離は、2.0マイクロメートル以上であるシングルイベント耐性ラッチ回路。
【請求項20】
第1の組の入力を受け取るための2入力と、2出力とを有するデュアルポートインバータであって、当該第1の組の入力は当該デュアルポートインバータに第1のトランスミッションゲート(7S1)及び第2のトランスミッションゲート(7S2)を介して結合したような第1のデュアルポートインバータ(7IP1)と、
前記第1のデュアルポートインバータ(7IP1)の2出力に2入力で結合した、2出力を有する第1のデュアルポートクロックドインバータ(7IP2)と、
第2の組の入力を受け取るための2入力と、2出力を有するデュアルポートインバータであって、当該第2の組の入力は当該デュアルポートインバータに第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合したような第2のデュアルポートインバータ(7IP3)と、
前記第2のデュアルポートインバータ(7IP3)の2出力に2入力で結合した、2出力を有する第2のデュアルポートクロックドインバータ(7IP4)と、
前記第2のデュアルポートインバータ(7IP3)の2出力及び前記第2のデュアルポートクロックドインバータ(7IP4)の2出力の少なくとも1つに接続した出力と、を有し、
前記第2のデュアルポートインバータ(7IP3)の2入力に前記第3のトランスミッションゲート(7S3)及び第4のトランスミッションゲート(7S4)を介して結合した第2の組の入力は、前記第1のデュアルポートクロックドインバータ(7IP2)の2出力のいずれかに結合していることを特徴とするシングルイベント耐性フリップフロップ回路。
【請求項21】
請求項20に記載のシングルイベント耐性フリップフロップ回路において、前記第1のデュアルポートインバータ(7IP1)は、第1のインバータ(7I9)及び第2のインバータ(7I11)を含み、
前記第2のデュアルポートインバータ(7IP3)は、第3のインバータ(7I15)及び第4のインバータ(7I17)を含むシングルイベント耐性フリップフロップ回路。
【請求項22】
請求項21に記載のシングルイベント耐性フリップフロップ回路において、前記第1のインバータ(7I9)は第2のトランジスタ(7N17)に直列に接続された第1のトランジスタ(7P17)を含み、前記第2のインバータ(7I11)は第4のトランジスタ(7N21)に直列に接続された第3のトランジスタ(7P21)を含み、前記第3のインバータ(7I15)は第6のトランジスタ(7N27)に直列に接続された第5のトランジスタ(7P27)を含み、前記第4のインバータ(7I17)は第8のトランジスタ(7N31)に直列に接続された第7のトランジスタ(7P31)を含むシングルイベント耐性フリップフロップ回路。
【請求項23】
請求項22に記載のシングルイベント耐性フリップフロップ回路において、前記第1(7P17)及び第3(7P21)のトランジスタはpチャネルトランジスタで、前記第2(7N17)及び第4(7N21)のトランジスタはnチャネルトランジスタであり、前記第5(7P27)及び第7(7P31)のトランジスタはpチャネルトランジスタで、前記第6(7N27)及び第8(7N31)のトランジスタはnチャネルトランジスタであるシングルイベント耐性フリップフロップ回路。
【請求項24】
請求項22に記載のシングルイベント耐性フリップフロップ回路において、前記第1のトランジスタ(7P17)のゲートは、前記第4のトランジスタ(7N21)のゲートに接続されて第1のインバータ入力を提供し、前記第2のトランジスタ(7N17)のゲートは、前記第3のトランジスタ(7P21)のゲートに接続されて第2のインバータ入力を提供し、前記第5のトランジスタ(7P27)のゲートは、前記第8のトランジスタ(7N31)のゲートに接続されて第3のインバータ入力を提供し、前記第6のトランジスタ(7N27)のゲートは、前記第7のトランジスタ(7P31)のゲートに接続されて第4のインバータ入力を提供するシングルイベント耐性フリップフロップ回路。
【請求項25】
請求項24に記載のシングルイベント耐性フリップフロップ回路において、前記第1(7P17)及び第2(7N17)のトランジスタは、第1のインバータ出力を提供し、前記第3(7P21)及び第4(7N21)のトランジスタは、第2のインバータ出力を提供し、前記第5(7P27)及び第6(7N27)のトランジスタは、第3のインバータ出力を提供し、前記第7(7P31)及び第8(7N31)のトランジスタは、第4のインバータ出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項26】
請求項25に記載のシングルイベント耐性フリップフロップ回路において、前記第1及び第2のインバータ入力は同じ入力を受け取り、有効な出力を前記第1のインバータ出力又は前記第2のインバータ出力に提供し、
前記第3及び第4のインバータ入力は同じ入力を受け取り、有効な出力を前記第3のインバータ出力又は前記第4のインバータ出力に提供するシングルイベント耐性フリップフロップ回路。
【請求項27】
請求項26に記載のシングルイベント耐性フリップフロップ回路において、
第5のインバータ(7I6)と、
前記第5のインバータと入力がお互いに接続された第6のインバータ(7I7)と、をさらに有し、
前記第5のインバータ(7I6)の出力は、前記第1のトランスミッションゲート(7S1)を介して前記第1のインバータ入力に接続され、
前記第6のインバータ(7I7)の出力は、前記第2のトランスミッションゲート(7S2)を介して前記第2のインバータ入力に接続され、
第7のインバータ(7I12)と、
前記第7のインバータと入力がお互いに接続された第8のインバータ(7I13)と、をさらに有し、
前記第7のインバータ(7I12)の出力は、前記第3のトランスミッションゲート(7S3)を介して前記第3のインバータ入力に接続され、
前記第8のインバータ(7I13)の出力は、前記第4のトランスミッションゲート(7S4)を介して前記第4のインバータ入力に接続されるシングルイベント耐性フリップフロップ回路。
【請求項28】
請求項27に記載のシングルイベント耐性フリップフロップ回路において、前記第1のデュアルポートクロックドインバータ(7IP2)は第1のクロックドインバータ(7I8)及び第2のクロックドインバータ(7I10)を含み、前記第2のデュアルポートクロックドインバータ(7IP4)は第3のクロックドインバータ(7I14)及び第4のクロックドインバータ(7I16)を含むシングルイベント耐性フリップフロップ回路。
【請求項29】
請求項28に記載のシングルイベント耐性フリップフロップ回路において、前記第1のクロックドインバータ(7I8)は第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のその順番に直列に接続されたトランジスタを含み、前記第2のクロックドインバータ(7I10)は第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のその順番に直列に接続されたトランジスタを含み、前記第3のクロックドインバータ(7I14)は第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のその順番に直列に接続されたトランジスタを含み、前記第4のクロックドインバータ(7I16)は第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のその順番に直列に接続されたトランジスタを含むシングルイベント耐性フリップフロップ回路。
【請求項30】
請求項29に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)、第10(7P15)、第13(7P18)、及び第14(7P19)のトランジスタはpチャネルトランジスタで、前記第11(7N15)、第12(7N14)、第15(7N19)、及び第16(7N18)のトランジスタはnチャネルトランジスタであり、
前記第17(7P24)、第18(7P25)、第21(7P28)、及び第22(7P29)のトランジスタはpチャネルトランジスタで、前記第19(7N25)、第20(7N24)、第23(7N29)、及び第24(7N28)のトランジスタはnチャネルトランジスタであるシングルイベント耐性フリップフロップ回路。
【請求項31】
請求項30に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)又は第10(7P15)のいずれか一方のトランジスタのゲートは前記第15(7N19)又は第16(7N18)のいずれか一方のトランジスタのゲートに接続されて第5のインバータ入力を提供し、
前記第11(7N15)又は第12(7N14)のいずれか一方のトランジスタのゲートは前記第13(7P18)又は第14(7P19)のいずれか一方のトランジスタのゲートに接続されて第6のインバータ入力を提供し、
前記第9(7P14)又は第10(7P15)の他方のトランジスタのゲートと前記第11(7N15)又は第12(7N14)の他方のトランジスタのゲートには、お互いに相補な論理値の第1の相補クロック信号(CKB1,CK1)が入力され、
前記第13(7P18)又は第14(7P19)の他方のトランジスタのゲートと前記第15(7N19)又は第16(7N18)の他方のトランジスタのゲートには、お互いに相補な論理値の第3の相補クロック信号(CKB3,CK3)が入力され、
前記第17(7P24)又は第18(7P25)のいずれか一方のトランジスタのゲートは前記第23(7N29)又は第24(7N28)のいずれか一方のトランジスタのゲートに接続されて第7のインバータ入力を提供し、
前記第19(7N25)又は第20(7N24)のいずれか一方のトランジスタのゲートは前記第21(7P28)又は第22(7P29)のいずれか一方のトランジスタのゲートに接続されて第8のインバータ入力を提供し、
前記第17(7P24)又は第18(7P25)の他方のトランジスタのゲートと前記第19(7N25)又は第20(7N24)の他方のトランジスタのゲートには、前記第1の相補クロック信号と逆相の相補クロック信号が入力され、
前記第21(7P28)又は第22(7P29)の他方のトランジスタのゲートと前記第23(7N29)又は第24(7N28)の他方のトランジスタのゲートには、お互いに相補な論理値の第4の相補クロック信号(CKB4,CK4)が入力され、
前記第1のトランスミッションゲート(7S1)は、それに含まれるpチャネルトランジスタ(7P16)とnチャネルトランジスタ(7N16)のそれぞれのゲートに前記第1のクロックドインバータ(7I8)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第2のトランスミッションゲート(7S2)は、それに含まれるpチャネルトランジスタ(7P20)とnチャネルトランジスタ(7N20)のそれぞれのゲートに前記第2のクロックドインバータ(7I10)と相反するオンオフ動作をする極性で前記第3の相補クロック信号が入力され、
前記第3のトランスミッションゲート(7S3)は、それに含まれるpチャネルトランジスタ(7P26)とnチャネルトランジスタ(7N26)のそれぞれのゲートに前記第3のクロックドインバータ(7I14)と相反するオンオフ動作をする極性で前記第1の相補クロック信号が入力され、
前記第4のトランスミッションゲート(7S4)は、それに含まれるpチャネルトランジスタ(7P30)とnチャネルトランジスタ(7N30)のそれぞれのゲートに前記第4のクロックドインバータ(7I16)と相反するオンオフ動作をする極性で前記第4の相補クロック信号が入力されるシングルイベント耐性フリップフロップ回路。
【請求項32】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、前記第9(7P14)、第10(7P15)、第11(7N15)、及び第12(7N14)のトランジスタは第5のインバータ出力を提供し、前記第13(7P18)、第14(7P19)、第15(7N19)、及び第16(7N18)のトランジスタのトランジスタは第6のインバータ出力を提供し、
前記第17(7P24)、第18(7P25)、第19(7N25)、及び第20(7N24)のトランジスタは第7のインバータ出力を提供し、前記第21(7P28)、第22(7P29)、第23(7N29)、及び第24(7N28)のトランジスタのトランジスタは第8のインバータ出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項33】
請求項32に記載のシングルイベント耐性フリップフロップ回路において、前記第5及び第6のインバータ入力は同じ入力を受け取り、前記第5のインバータ出力又は前記第6のインバータ出力に有効な出力を提供し、
前記第7及び第8のインバータ入力は同じ入力を受け取り、前記第7のインバータ出力又は前記第8のインバータ出力に有効な出力を提供するシングルイベント耐性フリップフロップ回路。
【請求項34】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、
ハイレベルのときに前記第2のトランスミッションゲート(7S2)がオンになる極性である、前記第3の相補クロック信号の内の逆相信号(CKB3)の立ち下がりは、ハイレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、
前記第3の相補クロック信号の内の前記逆相信号(CKB3)の立ち上がりは、前記第1の相補クロック信号の内の前記逆相信号(CKB1)の立ち上がりから所定の遅延時間を有するタイミングであるようにクロックのエッジが遅延させられたシングルイベント耐性フリップフロップ回路。
【請求項35】
請求項34に記載のシングルイベント耐性フリップフロップ回路において、
前記第3の相補クロック信号の内の正相信号(CK3)及び逆相信号(CKB3)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の逆相信号(CKB1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性フリップフロップ回路。
【請求項36】
請求項31に記載のシングルイベント耐性フリップフロップ回路において、
ハイレベルのときに前記第4のトランスミッションゲート(7S4)がオンになる極性である、前記第4の相補クロック信号の内の逆相信号(CKB4)の立ち上がりは、ハイレベルのときに前記第1のトランスミッションゲートがオンになる極性である、前記第1の相補クロック信号の内の逆相信号(CKB1)の立ち下がりと同じタイミングであり、
前記第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、前記第1の相補クロック信号の内の前記逆相信号(CKB1)の次の立ち上がりより前のタイミングであるようにクロックのエッジが前進させられたシングルイベント耐性フリップフロップ回路。
【請求項37】
請求項36に記載のシングルイベント耐性フリップフロップ回路において、
前記第4の相補クロック信号の内の前記逆相信号(CKB4)の立ち下がりは、それの立ち上がりから前記所定の遅延時間が経過したタイミングであるシングルイベント耐性フリップフロップ回路。
【請求項38】
請求項37に記載のシングルイベント耐性フリップフロップ回路において、
前記第4の相補クロック信号の内の正相信号(CK4)及び逆相信号(CKB4)は、前記第1の相補クロック信号(CK1,CKB1)を前記の所定の遅延時間だけ遅延させたものを第2の相補クロック信号(CK2,CKB2)として、それぞれ、前記第1の相補クロック信号の内の正相信号(CK1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのNAND演算、及び前記第1の相補クロック信号の内の正相信号(CK1)と前記第2の相補クロック信号の内の逆相信号(CKB2)とのAND演算で生成されるシングルイベント耐性フリップフロップ回路。
【請求項39】
請求項37に記載のシングルイベント耐性フリップフロップ回路において、前記所定の遅延時間は、0.5ナノ秒以上であり、かつ、前記第1の相補クロック信号及び前記第3の相補クロック信号の1周期の1/2未満であるシングルイベント耐性フリップフロップ回路。
【請求項40】
請求項21に記載のシングルイベント耐性フリップフロップ回路において、出力が入力に直接的に接続されているインバータとクロックドインバータの組のそれぞれにおいて、当該インバータに含まれるpチャネル及びnチャネルトランジスタと、前記クロックドインバータに含まれるそれぞれnチャネル及びpチャネルトランジスタとの間の対角線距離は、その対角線距離が最小となるようなレイアウトにおける対角線距離より大きい所定の離隔距離であるシングルイベント耐性フリップフロップ回路。
【請求項41】
請求項40に記載のシングルイベント耐性フリップフロップ回路において、前記所定の離隔距離は、2.0マイクロメートル以上であるシングルイベント耐性フリップフロップ回路。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2007−166066(P2007−166066A)
【公開日】平成19年6月28日(2007.6.28)
【国際特許分類】
【出願番号】特願2005−357529(P2005−357529)
【出願日】平成17年12月12日(2005.12.12)
【出願人】(503361400)独立行政法人 宇宙航空研究開発機構 (453)
【出願人】(504046061)HIREC株式会社 (5)
【Fターム(参考)】
【公開日】平成19年6月28日(2007.6.28)
【国際特許分類】
【出願日】平成17年12月12日(2005.12.12)
【出願人】(503361400)独立行政法人 宇宙航空研究開発機構 (453)
【出願人】(504046061)HIREC株式会社 (5)
【Fターム(参考)】
[ Back to top ]