(57)【要約】【課題】従来のシフトレジスタは、ノイズやソフトエラーによってデータが消失した場合に電源の再投入等を行い再起動させなければならなかった。【解決手段】本発明にかかる半導体集積回路装置は、Ｎを自然数として、Ｎ個の論理回路が直列に接続され、周期的な信号を出力する周期信号生成回路を有する半導体集積回路装置であって、周期信号生成回路は、初段の論理回路ＲＥＧ０からＮ−１段目の論理回路ＲＥＧ６までの出力信号に基づき初段の論理回路ＲＥＧ０を初期化するリセット信号を出力するリセット回路１０を有するものである。【選択図】図１
2007128611.tif 000002
【特許請求の範囲】
【請求項１】
Ｎを自然数として、Ｎ個の論理回路が直列に接続され、周期的な信号を出力する周期信号生成回路を有する半導体集積回路装置であって、
前記周期信号生成回路は、初段の論理回路からＮ−１段目の論理回路までの出力信号に基づき前記初段の論理回路を初期化するリセット信号を出力するリセット回路を有する半導体集積回路装置。
【請求項２】
前記リセット回路は、Ｎ−１個の前記論理回路の出力信号に基づき前記初段の論理回路を初期化する前記リセット信号を生成することを特徴とする請求項１に記載の半導体集積回路装置。
【請求項３】
前記リセット回路は、Ｎ−１個の前記論理回路の出力信号が同一論理となった場合に前記リセット信号を出力することを特徴とする請求項１または２に記載の半導体集積回路装置。
【請求項４】
前記リセット回路は、前記初段の論理回路から前記Ｎ−１段目の論理回路までの出力信号のうち少なくとも２つ以上の前記出力信号が入力される複数の反転論理和回路と、前記複数の反転論理和回路の出力が入力される論理積回路とを有することを特徴とする請求項１乃至３のいずれか１項に記載の半導体集積回路装置。
【請求項５】
前記リセット信号は、前記初段の論理回路から前記Ｎ−１段目の論理回路までの出力信号が同一論理である期間に前記出力信号とは逆の論理となるパルス信号であることを特徴とする請求項１乃至３のいずれか１項に記載の半導体集積回路装置。
【請求項６】
前記周期信号生成回路は、同期クロックに応じて動作する論理回路を有し、同期クロックに応じて前記論理回路に保持しているデータを次段に接続される前記論理回路に遷移させることを特徴とする請求項１に記載の半導体集積回路装置。
【請求項７】
前記周期信号生成回路は、シフトレジスタであることを特徴とする請求項１又は６に記載の半導体集積回路装置。
【請求項８】
前記リセット回路は、前記初段の論理回路から前記Ｎ−１段目の論理回路の出力が第１のレベルの信号で一致した場合、Ｎ段目の論理回路の出力によらず第２のレベルを出力する請求項１に記載の半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路装置に関し、特にノイズやソフトエラーによって直列に接続された複数の論理回路に保持されたデータが消失した場合であっても、論理回路に保持されてデータを自動で復帰させる半導体集積回路装置に関する。
【背景技術】
【０００２】
近年、半導体集積回路装置の製造プロセスの微細化が進められている。このような微細化された製造プロセスを用いて構成される半導体集積回路装置では、動作電源電圧の低電圧化、あるいは素子の寄生容量が減少するために、ノイズやソフトエラーによって内部の論理回路に保持されているデータが消失する問題が発生する。
【０００３】
ここで、ノイズとは、例えば半導体集積回路装置内の隣接する配線の干渉によって発生するノイズや、半導体集積回路装置の外部より与えられる外来ノイズ、あるいはクロックを生成する回路が同期回路から非同期回路に切り換る時に発生する。このようなノイズが発生すると、例えば信号波形の振幅が小さくなる、あるいは信号の立ち上がりがなまる等の信号の乱れが生じる場合がある。
【０００４】
また、ソフトエラーとは、放射線（例えば、α線、中性子線など）が半導体集積回路装置に突入した場合に、半導体基板と放射線とが反応して電荷を発生させ、論理回路の出力素子に発生した電荷が収集されることで論理を反転させるエラーである。
【０００５】
このようなノイズやソフトエラーが発生した場合、信号の振幅が低下するため、例えば回路を動作させる同期クロックを回路が認識できない場合がある。また、回路が認識できる程度の信号の振幅低下である場合であっても、例えば配線や素子の寄生抵抗、あるいは寄生容量によって信号が配線を伝播していく途中で信号が鈍り、回路がその信号を認識できなくなる場合がある。このように、ノイズやソフトエラーによって、例えば信号波形の振幅が小さくなる場合、回路が誤動作して、例えば論理回路に保持されているデータが消失する場合がある。
【０００６】
データの消失について詳細に説明する。ここでは、シフトレジスタのように複数の論理回路が直列に接続された回路を一例として説明する。一般的なシフトレジスタの回路を図４に示す。図４に示すシフトレジスタ２は、レジスタＲＥＧ０〜ＲＥＧ７が直列に接続されており、レジスタＲＥＧ７の出力がレジスタＲＥＧ０の入力に接続されている。また、レジスタＲＥＧ０〜ＲＥＧ７のそれぞれにはクロックＣＬＫが入力されている。シフトレジスタは、このクロックＣＬＫに同期して動作する。また、ＲＥＧ３〜ＲＥＧ５の出力は、図示しない他のブロックに接続されており、その他のブロックに対して制御信号Ａ〜Ｃを出力している。制御信号Ａ〜Ｃは、他のブロックの制御に用いられる信号である。
【０００７】
図４に示すシフトレジスタ２のタイミングチャートを図５に示す。図５に示すように、シフトレジスタは、時刻ｔ０で電源が投入されると、パワーオンリセット動作によりレジスタＲＥＧ０にデータ１が設定され、残りのレジスタはデータ０が設定される。時刻ｔ０以降は、クロックＣＬＫの立ち上がりに応じてデータ１は、接続される次段のレジスタに遷移する。この動作により、時刻ｔ７でデータ１がレジスタＲＥＧ７まで遷移すると、時刻ｔ８のクロックの立ち上がりでデータ１はレジスタＲＥＧ０に戻る。つまり、図４に示すシフトレジスタ２は、データ１がクロックの立ち上がりに応じてレジスタＲＥＧ０〜ＲＥＧ７のループ内を遷移する回路である。
【０００８】
上記の説明のように動作しているシフトレジスタ２においてデータが消失する場合のタイミングチャートを図６に示す。図６に示すように、例えば時刻ｔ３で入力されるはずのクロックの振幅が、ノイズやソフトエラーの影響によって小さくなった場合、ＲＥＧ２が活性状態であるにもかかわらず、ＲＥＧ３が活性状態にならずに、ＲＥＧ２に保持されていたデータ１がＲＥＧ３に遷移することが出来ずに消失する。また、消失したデータは、電源を再投入するまで回復しない。
【０００９】
上記説明のシフトレジスタの具体例が特許文献１に開示されている。特許文献１に記載のシフトレジスタは、５つのレジスタを直列に接続し、１段目と３段目と５段目との出力の排他的論理和を１段目の入力とするものである。このシフトレジスタは、乱数的なパターンを発生する回路である。この回路においても、ノイズやソフトエラーによってレジスタに保持されているデータ１が消失した場合、本来の乱数パターンとは異なるパターンを生成することになる。また、乱数パターンの状態によっては、レジスタに保持されているデータが全てデータ０となってしまう場合がある。この場合、図４に示すシフトレジスタと同様にそれ以降のデータ１の遷移が行われなくなる問題が発生する。
【特許文献１】特開２００４−２９４２２４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従来のシフトレジスタは、ノイズやソフトエラーによってデータが消失した場合に電源の再投入等を行い再起動させなければならなかった。
【課題を解決するための手段】
【００１１】
本発明にかかる半導体集積回路装置は、Ｎを自然数として、Ｎ個の論理回路が直列に接続され、周期的な信号を出力する周期信号生成回路を有する半導体集積回路装置であって、前記周期信号生成回路は、初段の論理回路からＮ−１段目の論理回路までの出力信号に基づき前記初段の論理回路を初期化するリセット信号を出力するリセット回路を有するものである。
【００１２】
本発明の半導体集積回路装置によれば、リセット回路が初段の論理回路からＮ−１段目の論理回路までの出力信号に基づき前記初段の論理回路を初期化するリセット信号を生成する。例えば初段の論理回路からＮ−１段目の論理回路までの出力信号が同一論理になった場合に、リセット回路はリセット信号を生成してそのリセット信号を初段の論理回路に入力する。つまり、ノイズやソフトエラーによって、例えば同期クロックの振幅が小さくなり、データの遷移に失敗してデータが消失した場合であっても、それを検出して改めてデータ１を初段の論理回路に入力することで周期信号生成回路を初期化することが可能である。このことより本発明の半導体集積回路装置は、電源の再投入等の再起動を行わなくても、データ１を遷移させ続けることが可能である。
【００１３】
また、Ｎ個の論理回路のすべての出力信号に基づいてリセット回路がリセット信号を生成する場合には、すべての論理回路の出力信号が同一論理になった後、１クロック分の期間の間、すべての論理回路は、データ０を保持することになる。しかしながら、初段の論理回路からＮ−１段目の論理回路までの出力信号に基づきリセット回路がリセット信号を生成することで、Ｎ段目の論理回路がデータ１を出力している期間に、初段の論理回路の入力にデータ１を入力することが可能である。これによって、全ての同期クロックをデータ１の遷移に利用することが可能である。
【発明の効果】
【００１４】
本発明の半導体集積回路装置によれば、論理回路に保持されたデータがノイズやソフトエラーによってデータが消失した場合であっても、電源の再投入等の再起動を行わずに半導体集積回路装置を初期化して、データ１を遷移させることが可能である。
【発明を実施するための最良の形態】
【００１５】
実施の形態１
以下、図面を参照して本発明の実施の形態について説明する。実施の形態１にかかる半導体集積回路装置は、複数の論理回路が直列に接続され、周期的な信号を出力する周期信号生成回路であり、例えばＮ個のレジスタを直列に接続したシフトレジスタである。本実施の形態にかかるシフトレジスタ１を図１に示す。
【００１６】
図１に示すように、本実施の形態にかかるシフトレジスタ１は、Ｎ＝８とした場合のシフトレジスタであって、レジスタＲＥＧ０〜ＲＥＧ７、リセット回路１０を有している。シフトレジスタ１は、レジスタＲＥＧ０を初段として配置して、レジスタＲＥＧ０に直列にレジスタＲＥＧ１からＲＥＧ７が接続されている。レジスタＲＥＧ０〜ＲＥＧ７には同期クロックＣＬＫが入力されている。また、レジスタＲＥＧ３、ＲＥＧ４、ＲＥＧ７の出力信号は、それぞれ他の回路ブロックで使用される制御信号Ａ〜Ｃとなっている。
【００１７】
リセット回路１０は、入力にレジスタＲＥＧ０からＲＥＧ６までのそれぞれの出力が接続され、出力（ＤＥＴＯＵＴ）がレジスタＲＥＧ０の入力に接続されている。ここで、レジスタＲＥＧ７の出力は、リセット回路１０には入力されていない。このリセット回路１０の接続をより詳細に説明する。
【００１８】
リセット回路１０は、反転論理和回路（例えば、ＮＯＲ回路）１１〜１３と論理積回路（例えば、ＡＮＤ回路）１４とを有している。ＮＯＲ回路１１には、レジスタＲＥＧ０、ＲＥＧ１の出力が接続され、ＮＯＲ回路１２には、レジスタＲＥＧ２、ＲＥＧ３の出力が接続され、ＮＯＲ回路１３には、レジスタＲＥＧ４、ＲＥＧ５、ＲＥＧ６の出力が接続されている。ＡＮＤ回路１４の入力には、ＮＯＲ回路１１〜１３の出力が接続され、出力はレジスタＲＥＧ０の入力に接続されている。
【００１９】
ここで、本実施の形態のレジスタＲＥＧ０〜ＲＥＧ７は、それぞれ同期クロックＣＬＫの立ち上がりに応じて入力されている信号を取り込み出力する。また、ＮＯＲ回路１１〜１３は、それぞれ複数の入力端子を有しており、それぞれの端子に入力される全ての信号がＬｏｗレベル（例えば、接地電位、データ０）である場合にＨｉｇｈレベル（例えば、電源電位、データ１）を出力し、それぞれの端子に入力される信号のうち少なくとも１つの信号がＨｉｇｈレベルである場合はＬｏｗレベルを出力する。ＡＮＤ回路１４は、複数の入力端子を有しており、それぞれの端子に入力される全て信号がＨｉｇｈレベルである場合にＨｉｇｈレベルを出力し、それぞれの端子に入力される信号のうち少なくとも１つの信号がＬｏｗレベルである場合に、Ｌｏｗレベルを出力する。
【００２０】
実施の形態１にかかるシフトレジスタ１の動作について説明する。実施の形態１にかかるシフトレジスタ１のタイミングチャートを図２に示す。図２に示すように、シフトレジスタ１は、タイミングｔ０で電源が投入されるとレジスタＲＥＧ０にデータ１が設定される。その後、タイミングｔ１からｔ６まで、同期クロックＣＬＫの立ち上がり毎にこのデータ１が後段に接続されるレジスタＲＥＧ１〜ＲＥＧ６に順次遷移する。タイミングｔ７でデータ１がレジスタＲＥＧ７に取り込まれると、レジスタＲＥＧ０〜ＲＥＧ６の出力はデータ０となる。このときリセット回路１０は、データ１を出力して、このデータ１がレジスタＲＥＧ０の入力に設定される。タイミングｔ８の同期クロックＣＬＫの立ち上がりで、レジスタＲＥＧ０は、タイミングｔ７で設定されたデータ１を取り込む。これ以降は、タイミングｔ１からタイミングｔ８の動作を繰り返し行う。
【００２１】
つまり、実施の形態１にかかるシフトレジスタ１は、電源投入時に設定されたデータ１をクロックの立ち上がり応じて、直列に接続されたレジスタを順次遷移させる回路である。
【００２２】
ここで、リセット回路１０の動作について詳細に説明する。タイミングｔ０で電源が投入された後は、レジスタＲＥＧ０がデータ１を出力し、レジスタＲＥＧ１〜ＲＥＧ７はデータ０を出力している。このとき、ＮＯＲ回路１１には、データ０とデータ１とが入力されている。このため、ＮＯＲ回路１１は、データ０を出力する。また、ＮＯＲ回路１２、１３の入力には、それぞれデータ０が入力されている。このため、ＮＯＲ回路１２、１３は、それぞれデータ１を出力する。つまり、タイミングｔ０でのＮＯＲ回路１０〜１３の出力は、それぞれデータ０、データ１、データ１となる。従って、タイミングｔ１では、これらの信号が入力されるＡＮＤ回路１４の出力はデータ０となる。その後、タイミングｔ１からタイミングｔ６までの期間で、レジスタＲＥＧ０〜ＲＥＧ６のいずれか１つがデータ１を出力している状態であれば、ＡＮＤ回路１４はデータ０を出力する。
【００２３】
タイミングｔ７で、レジスタＲＥＧ０〜ＲＥＧ６がデータ０を出力すると、ＮＯＲ回路１０〜１３は、それぞれデータ１を出力する。これによって、ＡＮＤ回路１４に入力される信号が全てデータ１となるため、ＡＮＤ回路１４はリセット信号（例えば、データ１）を出力する。その後、レジスタＲＥＧ０〜ＲＥＧ６のいずれか１つがデータ１を出力していれば、ＡＮＤ回路１４はデータ０を出力する。つまり、リセット信号は、初段の論理回路からＮ−１段目の論理回路までの出力信号が同一論理（例えば、データ０）である期間に出力信号とは逆の論理（例えば、データ１）となるパルス信号である。
【００２４】
一方、このシフトレジスタ１において、データ１が消失してしまう場合について説明する。データが消失してしまう一例として、ノイズやソフトエラーによって、例えば同期クロックの振幅が小さくなり、レジスタＲＥＧ３が同期クロックに応答できずにデータ１が消失してしまう場合を説明する。このような場合のシフトレジスタ１のタイミングチャートを図３に示す。
【００２５】
図３に示すように、タイミングｔ０で電源投入が行われ、レジスタＲＥＧ０にデータ１が設定される。このデータ１はタイミングｔ０からタイミングｔ２までの動作によって、レジスタＲＥＧ２に遷移する。ここで、タイミングｔ３で、ノイズやソフトエラーによって、例えば同期クロックの振幅が小さくなり、レジスタＲＥＧ２が同期クロックに応じて動作しているにも関わらず、レジスタＲＥＧ３が同期クロックに反応することができずに動作できない状態が発生する。このような状態になった場合、レジスタＲＥＧ２は、タイミングｔ３の同期クロックの立ち上がりに応じて、そのときに入力されているデータ０を取り込む。これに対して、レジスタＲＥＧ３は、タイミングｔ３の同期クロックの立ち上がりでレジスタＲＥＧ２から出力されているデータ１を取り込むことができずに、タイミングｔ２で保持していたデータ０を保持し続ける。これによって、レジスタＲＥＧ３に遷移するはずのデータ１が消失する。
【００２６】
このようにしてデータ１が消失した場合、シフトレジスタ１のレジスタＲＥＧ０〜ＲＥＧ６の出力は全てデータ０となる。リセット回路１０は、レジスタＲＥＧ１からＲＥＧ６までの出力が全てデータ０となった場合、リセット信号（例えば、データ１）を生成してこのデータ１をレジスタＲＥＧ０の入力に設定する。つまり、リセット回路１０は、レジスタＲＥＧ０〜ＲＥＧ６の出力が全てデータ０となった場合、ＮＯＲ回路１０〜１３が全てデータ１を出力するため、ＡＮＤ回路１４はデータ１を出力する。この動作により、リセット回路１０は、ノイズやソフトエラー等でレジスタＲＥＧ０からＲＥＧ６のいずれかでデータ１が消失した場合にリセット信号（例えば、データ１）を生成する。一方、レジスタＲＥＧ１〜ＲＥＧ６のいずれか１つがデータ１を出力している場合、リセット回路１０は、データ１を出力しているレジスタが接続されるＮＯＲ回路の出力がデータ０となるため、ＡＮＤ回路１４はデータ０を出力する。
【００２７】
続いて、タイミングｔ４では、同期クロックが立ち上がり応じてレジスタＲＥＧ０がデータ１を取り込む。これ以降、シフトレジスタ１は、図２に示すタイミングｔ１からｔ８までの動作を繰り返し行う。
【００２８】
上記説明より、実施の形態１にかかるシフトレジスタ１は、レジスタ間で１つのデータ１を遷移させる動作を行っている期間に、ノイズやソフトエラーなどの影響によって、いずれのレジスタにもデータ１が保持されていない状態となった場合であっても、リセット回路１０がＮ−１個のレジスタ（本実施の形態では、レジスタＲＥＧ０〜ＲＥＧ６）の出力が全てデータ０になったことに応じてリセット信号（例えば、データ１）を生成し、それを初段に配置されるレジスタＲＥＧ０の入力に設定する。これによって、データ１が消失した後に入力される同期クロックの立ち上がりに応じて初段のレジスタＲＥＧ０にデータ１が取り込まれる。その後、このデータ１をレジスタ間で遷移させていくことで、シフトレジスタ１は、電源の再投入等のリセット動作を行うことなく初期化を行うことができ、データ１の遷移を続けることが可能である。つまり、リセット回路１０は、初段の論理回路からＮ−１段目の論理回路の出力が第１のレベル（例えば、データ０）の信号で一致した場合、Ｎ段目の論理回路の出力によらず第２のレベル（例えば、データ１）を出力する。これによって、ノイズやソフトエラーなどの影響によって、いずれのレジスタにもデータ１が保持されていない状態となった場合であっても、電源の再投入等のリセット動作を行うことなく初期化を行うことが可能である。
【００２９】
一方、リセット回路にＮ個のレジスタ（本実施の形態では、ＲＥＧ０〜ＲＥＧ７）の出力を入力するシフトレジスタ１´について説明する。このシフトレジスタ１´の回路図を図４に示し、そのタイミングチャートを図５に示す。図５に示すように、シフトレジスタ１´は、レジスタＲＥＧ０〜ＲＥＧ７の出力が全てデータ０となった場合にリセット回路１０´がリセット信号（例えば、データ１）を生成する。つまり、最終段のレジスタＲＥＧ７にデータ１が取り込まれ、その後再びデータ０が取り込まれると、レジスタＲＥＧ０〜ＲＥＧ７の出力が全てデータ０となる。その後にリセット回路１０´がリセット信号（例えば、データ１）を生成する。このような場合、最終段のレジスタＲＥＧ７をデータ１からデータ０へと遷移させる同期クロックは、シフトレジスタ１がデータ１を遷移させる動作に使われないことになる。つまり、タイミングｔ８からｔ９までの期間が、データ１がレジスタ間を遷移しないデッドサイクルとなる。
【００３０】
これに対して、本実施の形態にかかるシフトレジスタ１は、最終段を除くＮ−１個のレジスタ（本実施の形態では、レジスタＲＥＧ０〜ＲＥＧ６）の出力をリセット回路１０に入力している。このような接続にすることによって、Ｎ−１段目のレジスタＲＥＧ６からＮ段目のレジスタＲＥＧ７にデータ１が遷移すると、リセット回路１０に入力されているレジスタＲＥＧ０〜ＲＥＧ６の出力はすべてデータ０となる。これによってリセット回路１０は、リセット信号（例えば、データ１）を生成し、レジスタＲＥＧ７が保持するデータがデータ１からデータ０へと遷移する同期クロックの立ち上がりで初段のレジスタＲＥＧ０にデータ１が保持され、シフトレジスタ１が初期化される。つまり、本実施の形態のリセット回路１０は、レジスタＲＥＧ０〜ＲＥＧ７が第１の論理レベルの信号（例えば、データ０）を出力し、最終段のレジスタＲＥＧ７が第２の論理レベルの信号（例えば、データ１）を出力している期間に、データ１を出力し、初段のレジスタＲＥＧ０の入力にデータ１を入力するため、シフトレジスタ１がデータ１を保持しない期間をなくすことが可能である。これによって、本実施の形態のシフトレジスタ１は、同期クロックの全ての立ち上がりをデータ１の遷移に使用することが可能である。
【００３１】
なお、本発明は上記実施の形態に限られたものではなく、適宜変形することが可能である。例えば、リセット回路１０は、入力されている信号が全てデータ０となった場合にデータ１を生成する論理となっていれば良く、上記実施の形態の回路構成に限らず適宜回路構成を変更することも可能である。
【図面の簡単な説明】
【００３２】
【図１】実施の形態１にかかるシフトレジスタの回路図である。
【図２】実施の形態１にかかるシフトレジスタのタイミングチャートを示す図である。
【図３】実施の形態１にかかるシフトレジスタにおいてデータ１が消失した場合のタイミングチャートを示す図である。
【図４】全てのレジスタの出力をリセット回路に入力した場合の実施の形態１にかかるシフトレジスタの回路図である。
【図５】図４に示すシフトレジスタのタイミングチャートを示す図である。
【図６】従来のシフトレジスタの回路図である。
【図７】従来のシフトレジスタのタイミングチャートを示す図である。
【図８】従来のシフトレジスタにおいてデータ１が消失した場合のタイミングチャートを示す図である。
【符号の説明】
【００３３】
１、１´、２    シフトレジスタ
１０、１０´    リセット回路
１１〜１３、１１´〜１４´    ＮＯＲ回路
１４、１５´    ＡＮＤ回路
【図１】
2007128611.tif 000003
【図２】
2007128611.tif 000004
【図３】
2007128611.tif 000005
【図４】
2007128611.tif 000006
【図５】
2007128611.tif 000007
【図６】
2007128611.tif 000008
【図７】
2007128611.tif 000009
【図８】
2007128611.tif 000010