(57)【要約】リセットトリガ信号のプルアップ抵抗の定数調整を必要とせずに確実にリセット動作を行う。また、電源投入時にクロックが停止している場合でもリセットを解除する。通常動作中は、クロック停止検出信号ＣＡＬＭＢがＨとなりリセットトリガ信号ＣＰＵＲＳＴＢはＯＲゲート回路８によりマスクされる。通常動作中にクロックが停止してＣＡＬＭＢがＬとなると、ＣＰＵＲＳＴＢはＯＲゲート回路６、８、ＡＮＤゲート回路１０を通過してリセット出力信号ＲＳＴＢとして出力される。電源動作投入時にクロックが停止している場合、つまり外部パワーオンリセット信号ＰＲＳＴＢがＬからＨへ変化した時にＣＡＬＭＢがＬの場合、ラッチ回路２のから出力されるマスク信号ＭＡＳＫはＨのままとなり、ＣＰＵＲＳＴＢがＬとなった場合でも、ＯＲゲート回路６によりマスクされＲＳＴＢがアサートされたままとならない。
2004097608.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサの汎用入出力ポートから出力されたリセットトリガ信号を入力して、前記プロセッサも含む他の回路へリセット出力信号を生成して出力するリセット回路であって、
現在の電源状態を示す外部パワーオンリセット信号が電源オンであることを示した後に、クロックの動作状態を示すクロック停止検出信号がクロックが正常に動作していることを最初に示すまで、入力された前記リセットトリガ信号をマスクする第１のマスク手段と、
前記第１のマスク手段から入力されたリセットトリガ信号がアサートの状態となる際のエッジを検出し、該エッジから一定時間だけアサートの状態となる信号を生成して出力するリセット伸長回路と、
前記外部パワーオンリセット信号が電源オフであることを示した場合、または前記クロック停止検出信号がクロックが停止していることを示した場合のいずれかの場合に、前記リセット伸長回路を初期化する初期化手段と、
前記クロック停止検出信号がクロックが正常に動作していることを示している場合に、前記第１のマスク手段からのリセットトリガ信号をマスクする第２のマスク手段と、
前記リセット伸長回路からの信号と前記第２のマスク手段からのリセットトリガ信号のいずれかがアサートの状態の場合に、前記リセット出力信号をアサートの状態とするリセット出力信号生成手段と、を備えたリセット回路。
【請求項２】
前記第１のマスク手段が、
クロックが正常に動作していることを示す場合にハイレベルとなり、クロックが停止している場合にロウレベルとなる前記クロック停止検出信号を入力し、該クロック停止検出信号の反転信号を出力するインバータ回路と、
前記外部パワーオンリセット信号をリセット入力とし、前記インバータ回路からの出力を入力端子から入力とし、前記外部パワーオンリセット信号が電源オフであることを示すロウレベルの場合には、前記入力端子に入力された値に関係なく、ハイレベルの信号を出力端子から出力し、前記リセット入力がハイレベルの場合には、前記入力端子にロウレベルの信号が一度でも入力されると前記出力端子にロウレベルの信号を出力し続けるラッチ回路と、
アサートの状態の場合にはロウレベルとなる前記リセットトリガ信号と、前記ラッチ回路の出力端子から出力された信号を入力して論理和演算を行い、該演算結果を出力するＯＲゲート回路とから構成される請求の範囲第１項記載のリセット回路。
【請求項３】
前記第２のマスク手段が、前記ＯＲゲート回路からの出力と、前記クロック停止検出信号との論理和演算を行い、該演算結果を前記リセット出力生成手段に出力する論理和演算手段により構成される請求の範囲第２項記載のリセット回路。
【請求項４】
前記初期化手段が、前記外部パワーオンリセット信号と前記クロック停止検出信号を入力として論理積の反転の演算を行い、該演算結果を前記リセット伸長回路の非同期クリア入力へ出力するＮＡＮＤゲート回路により構成される請求の範囲第２項記載のリセット回路。
【請求項５】
前記初期化手段が、前記外部パワーオンリセット信号と前記クロック停止検出信号を入力として論理積の反転の演算を行い、該演算結果を前記リセット伸長回路の非同期クリア入力へ出力するＮＡＮＤゲート回路により構成される請求の範囲第３項記載のリセット回路。
【請求項６】
プロセッサがそれぞれ設けられた複数のパッケージと、前記複数のパッケージの状態監視を行っている上位状態監視機能部とを備えたディジタル通信装置であって、
前記複数のパッケージが、それぞれ、
当該パッケージの状態を前記上位状態監視機能部に報告する状態監視機能部と、
当該パッケージの電源電圧を監視し、電源電圧が一定値以上の場合には外部パワーオンリセット信号をネゲート状態とし、電源電圧が一定値より低い場合には外部パワーオンリセット信号をアサート状態とする電源監視回路と、
当該パッケージの動作が不安定となった場合又は当該パッケージの再設定が必要になった場合、汎用入出力ポートを用いて当該パッケージ初期化を行うためのリセットトリガ信号を出力するプロセッサと、
当該パッケージ内の各回路に供給されているクロック信号の監視を行い、該クロック信号が正常に動作している場合にはネゲートな状態となり、該クロック信号が停止している場合にはアサートな状態となるクロック停止検出信号を出力するクロック監視装置と、
前記パワーオンリセット信号がネゲート状態となった後に、前記クロック停止検出信号が最初にネゲート状態となるまで、入力された前記リセットトリガ信号をマスクする第１のマスク手段と、前記第１のマスク手段から入力されたリセットトリガ信号がアサートの状態となる際のエッジを検出し、該エッジから一定時間だけアサートの状態となる信号を生成して出力するリセット伸長回路と、前記パワーオンリセット信号がアサート状態となった場合、または前記クロック停止検出信号がアサート状態となった場合のいずれかの場合に、前記リセット伸長回路を初期化する初期化手段と、前記クロック停止検出信号がアサート状態となった場合に、前記第１のマスク手段からのリセットトリガ信号をマスクする第２のマスク手段と、前記リセット伸長回路からの信号と前記第２のマスク手段からのリセットトリガ信号のいずれかがアサートの状態の場合に、リセット出力信号をアサートの状態とするリセット出力信号生成手段とから構成され、前記プロセッサも含む他の回路へ前記リセット出力信号を生成して出力するリセット回路と、を備えたディジタル通信装置。
【請求項７】
前記第１のマスク手段が、
クロックが正常に動作していることを示す場合にハイレベルとなり、クロックが停止している場合にロウレベルとなる前記クロック停止検出信号を入力し、該クロック停止検出信号の反転信号を出力するインバータ回路と、
前記外部パワーオンリセット信号をリセット入力とし、前記インバータ回路からの出力を入力端子から入力とし、前記外部パワーオンリセット信号が電源オフであることを示すロウレベルの場合には、前記入力端子に入力された値に関係なく、ハイレベルの信号を出力端子から出力し、前記リセット入力がハイレベルの場合には、前記入力端子にロウレベルの信号が一度でも入力されると前記出力端子にロウレベルの信号を出力し続けるラッチ回路と、
アサートの状態の場合にはロウレベルとなる前記リセットトリガ信号と、前記ラッチ回路の出力端子から出力された信号を入力して論理和演算を行い、該演算結果を出力するＯＲゲート回路とから構成される請求の範囲第６項記載のディジタル通信装置。
【請求項８】
前記第２のマスク手段が、前記ＯＲゲート回路からの出力と、前記クロック停止検出信号との論理和演算を行い、該演算結果を前記リセット出力生成手段に出力する論理和演算手段により構成される請求の範囲第７項記載のディジタル通信装置。
【請求項９】
前記初期化手段が、前記外部パワーオンリセット信号と前記クロック停止検出信号を入力として論理積の反転の演算を行い、該演算結果を前記リセット伸長回路の非同期クリア入力へ出力するＮＡＮＤゲート回路により構成される請求の範囲第７項記載のディジタル通信装置。
【請求項１０】
前記初期化手段が、前記外部パワーオンリセット信号と前記クロック停止検出信号を入力として論理積の反転の演算を行い、該演算結果を前記リセット伸長回路の非同期クリア入力へ出力するＮＡＮＤゲート回路により構成される請求の範囲第８項記載のディジタル通信装置。
【発明の詳細な説明】
【技術分野】  本発明は、プロセッサ等の汎用入出力ポート（ＰＩＯポート）から出力されたリセットトリガ信号を入力し、パッケージのプロセッサ等も含む周辺回路へリセット信号出力を行うリセット回路に関する。
【背景技術】  無線基地局装置や交換機等の架構成をとるディジタル通信装置では、それぞれのパッケージに状態監視機能部が存在し、上位の状態監視機能部はこのパッケージの状態監視機能部を通じて常にパッケージの状態を監視している。例えば図５に示すディジタル通信装置では、複数のパッケージ１２８と、上位状態監視機能部２７とが設けられていて、上位状態監視機能部２７はパッケージ１２８の状態監視を行っている。また、各パッケージ１２８は、それぞれ、状態監視機能部２０と、電源監視回路２１と、プロセッサ２２と、パワーオンリセット回路２３と、クロック監視装置２４と、リセット回路１０１と、ＡＮＤゲート回路２６と、その他のデバイス２５と、外部プルアップ抵抗２９とを備えている。
状態監視機能部２０は、パッケージ１２８の状態を上位状態監視機能部２７に報告している。電源監視回路２１は、パッケージ１２８の電源電圧を監視し、電源電圧が一定値以上の場合には外部パワーオンリセット信号ＰＲＳＴＢをハイレベル（以下Ｈと表示する。）とし、電源電圧が一定値より低い場合には外部パワーオンリセット信号ＰＲＳＴＢをロウレベル（以下Ｌと表示する。）としている。
プロセッサ２２は、ＣＰＵまたはＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等の予め記憶されたプログラムにより処理を行うデバイスであり、パッケージ１２８内に設けられた各種デバイスの制御を行っている。そして、プロセッサ２２は、パッケージ１２８の動作が不安定となったりパッケージの再設定が必要となったり、パッケージ１２８全体をリセット（初期化）しなければならないと判定した場合、ＰＩＯポートからリセットトリガ信号ＣＰＵＲＳＴＢをリセット回路１０１に出力する。ここでは、リセットトリガ信号ＣＰＵＲＳＴＢは、アクティブロウの信号である場合を用いて説明するため、プロセッサ２２は、パッケージ１２８のリセットを行う場合には、通常はネゲートな状態のＨであるリセットトリガ信号ＣＰＵＲＳＴＢをアサートな状態のＬとする動作を行う。
一般的に、信号線が有効（アクティブ）な状態にあることをアサートといい、無効（インアクティブ）な状態にあることをネゲートという。また、信号線を有効な状態にすることをアサートするといいい、無効な状態にすることをネゲートするという。
パワーオンリセット回路２３は、電源監視回路２１からの外部パワーオンリセット信号ＰＲＳＴＢに基づいてアクティブロウのリセット信号を生成してＡＮＤゲート回路２６に出力している。
クロック監視装置２４は、パッケージ１２８内の各回路に供給されているクロック信号の監視を行い、クロック信号が正常に動作している場合にはネゲートな状態のＨとなり、クロック信号が停止している場合にはアサートな状態のＬとなるクロック停止検出信号ＣＡＬＭＢをリセット回路１０１に出力している。
リセット回路１０１は、プロセッサ２２からのリセットトリガ信号ＣＰＵＲＳＴＢがＬとなると、一定期間Ｌとなるリセット出力信号ＲＳＴＢを生成して出力している。
ＡＮＤゲート回路２６は、パワーオンリセット回路２３からのリセット信号と、リセット回路１０１からのリセット出力信号ＲＳＴＢとの論理積を演算し、その演算結果を状態監視機能部２０、プロセッサ２２、その他のデバイス２５に出力している。ここで、パワーオンリセット回路２３からのリセット信号、リセット回路１０１からのリセット出力信号ＲＳＴＢはいずれもアクティブロウの信号であるため、いずれかのリセット信号がアクティブであればＡＮＤゲート回路２６の出力もアクティブであるＬとなる。
このディジタル通信装置では、上位状態監視機能部２７は、複数のパッケージ１２８にそれぞれ設けられた状態監視機能部２０を通じて各パッケージ１２８の状態を監視している。
図５中のリセット回路１０１の構成を図６に示す。この従来のリセット回路１０１は、図６に示されるように、インバータ回路７、９と、リセット伸長回路３と、ＡＮＤゲート回路１０とから構成されている。
インバータ回路７は、プロセッサ２２からのリセットトリガ信号ＣＰＵＲＳＴＢを反転して、リセット伸長回路３の入力端子ＩＮに出力している。
リセット伸長回路３は、インバータ回路７の出力の立ち上がりエッジを検出し、この立ち上がりエッジから一定時間だけＨとなる信号を生成してＯＵＴ端子から出力している。また、リセット伸長回路３は、クロック停止検出信号ＣＡＬＭＢを非同期クリア信号Ｃとして入力し、クロックが停止状態となりクロック停止検出信号ＣＡＬＭＢがアサート状態であるＬとなると、初期化されて出力端子ＯＵＴをＬとする。
インバータ回路９は、リセット伸長回路３からの出力信号を反転した信号ＲＳＴＢ３をＡＮＤゲート回路１０に出力している。
ＡＮＤゲート回路１０は、インバータ回路９からの信号ＲＳＴＢ３と、ＣＰＵＲＳＴＢと同じ論理の信号ＲＳＴＢ４との論理積演算を行い、その演算結果をリセット出力信号ＲＳＴＢとして出力している。
図６におけるリセット伸長回路３の構成を図７に示す。リセット伸長回路３は入力信号ＩＮ（アクティブハイ）と外部入力クロックＣＬＫと非同期クリア信号Ｃを入力とし、リセット伸長信号ＯＵＴ（アクティブハイ）を出力する。非同期クリア信号Ｃは、リセット伸長回路３にとってはアクティブハイの信号であり、非同期クリア信号ＣがＨの場合には、リセット伸長動作を行い、非同期クリア信号ＣがＬの場合には、初期化されて出力端子ＯＵＴをＬとする。
リセット伸長回路３は、微分回路３１と、カウンタ回路３２と、ＪＫ−フリップフロップ回路３３とから構成されている。
微分回路３１は、入力信号ＩＮと外部入力クロックＣＬＫと非同期クリア信号Ｃを入力とし、入力信号ＩＮの立ち上がりエッジを検出し、外部入力クロックＣＬＫに同期した１クロック幅のパルスをカウンタ回路３２とＪＫ−フリップフロップ回路３３に出力する。
また、微分回路３１は、Ｄ−フリップフロップ回路３１１と、Ｄ−フリップフロップ回路３１２と、インバータ回路３１３と、ＡＮＤゲート回路３１４とから構成されている。
Ｄ−フリップフロップ回路３１１は、入力信号ＩＮをＤ入力として入力し、外部入力クロックＣＬＫを入力クロックとして使用し、非同期クリア信号Ｃを非同期クリア入力（アクティブハイ）とし、出力Ｑをインバータ回路３１３とＡＮＤゲート回路３１４に出力する。インバータ回路３１３はＤ−フリップフロップ回路３１１の出力を入力とし、その反転信号をＤ−フリップフロップ回路３１２へ出力する。Ｄ−フリップフロップ回路３１２は、インバータ回路３１３をＤ入力、ＣＬＫを入力クロック、外部入力Ｃを非同期クリアＣ入力（アクティブハイ）とし、出力ＱをＡＮＤゲート回路３１４へ出力する。ＡＮＤゲート回路３１４はＤ−フリップフロップ回路３１１、３１２の出力を入力として論理積演算を行い、その演算結果を微分回路３１の出力とする。
カウンタ回路３２は微分回路３１の出力をＬＤ入力、ＣＬＫを外部クロック入力、外部入力Ｃを非同期クリアＣ入力（アクティブハイ）とし、出力ＯＵＴをＪＫ−フリップフロップ回路３３のＫ入力へ出力する。カウンタ回路３２は、非同期クリア信号ＣがＨのときはカウンタ機能を初期化しＯＵＴにＬを出力する。また、非同期クリア信号ＣがＬの時は、ＬＤ入力がＨである時に外部クロック入力ＣＬＫの立ち上がりでカウンタに初期値をセットし、ＬＤ入力がＬになったら外部クロック入力ＣＬＫの立ち上がり毎にカウントアップもしくはカウントダウンし、カウンタが設定値になった際にＣＬＫの立ち上がりでＯＵＴ端子からＨを出力する。
ＪＫ−フリップフロップ回路３３は、Ｊ入力に微分回路３１の出力、Ｋ入力にカウンタ回路３２の出力ＯＵＴ、ＣＬＫを入力クロック、非同期クリアＣ（アクティブハイ）に外部クリア入力Ｃを入力し、Ｑ出力をリセット伸長回路３の出力ＯＵＴとする。
リセット伸長回路３の信号の流れは、外部入力ＩＮがＬからＨへの変化を微分回路３１で検出しＨパルスを出力し、そのＨパルスを元にＪＫ−フリップフロップ回路３３が出力信号ＯＵＴをＨに出力し、同時にカウンタ回路３２のカウンタに初期値をセットする。カウンタ回路３２に備えられた規定時間を経過すると、カウンタ回路３２はＨを出力し、その結果ＪＫ−フリップフロップ回路３３がＯＵＴにＬにする。このようにして、リセット伸長回路３としては入力ＩＮの立ち上がりエッジから規定時間経過するまでＯＵＴにＨを出力するような動作をする。
このリセット伸長回路３の動作を図８のタイミングチャートを参照して説明する。
時刻Ｔ０においてリセットトリガ信号ＣＰＵＲＳＴＢがアサートされると、次のクロックの立ち上がりである時刻Ｔ１において微分回路３１のＤ−フリップフロップ回路３１１がＦＦＯＵＴ１にＨを出力する。その時点でＤ−フリップフロップ回路３１２の出力ＦＦＯＵＴ２はＨのままであるので、微分回路３１の出力であるＣＩＮはＨを出力し始める。時刻Ｔ２にてＦＦＯＵＴ２はＬとなるのでＣＩＮもＬとなる。この時刻Ｔ２においてＪＫ−フリップフロップ回路３３のＪ入力がＨとなっているのでＪＫ−フリップフロップ回路３３の出力ＱはＨとなり、ＲＳＴＢ１とリセット出力信号ＲＳＴＢは時刻Ｔ２よりＬとなり、リセット出力信号ＲＳＴＢがアサートされたことになる。リセット出力信号ＲＳＴＢがアサートされることでプロセッサ２２のＰＩＯポート出力は入力に初期化されるので、外部プルアップ抵抗２９によりゆっくりとＨへ遷移することになる。
図８中のリセットトリガ信号ＣＰＵＲＳＴＢの斜線部はプルアップ抵抗２９の定数やデバイスの静電容量によりＨへ遷移する時間が異なることを示している。これにより、ＦＦＯＵＴ１とＦＦＯＵＴ２も斜線部で示す時間ではＨかＬどちらでもとりうる状況となる。ただし、微分回路３１の出力ＣＩＮは必ず時刻Ｔ１から時刻Ｔ２の間だけＨを出力するので、リセット伸長回路３としての動作に問題は発生しない。
時刻Ｔ３において、ＣＩＮがＬになるため、カウンタ回路３２はカウントアップもしくはカウントダウンを開始する。時刻Ｔ４は、時刻Ｔ３よりカウンタ回路３２により設定されている規定時間Ｔｄ経過した時刻となる。この時刻Ｔ４において、リセット回路３に備えられたカウンタ回路３２はタイムアウトし出力端子ＯＵＴにＨを出力する。よって、時刻Ｔ５において、リセット伸長回路３に備えられたＪＫ−フリップフロップ回路３３の出力ＱがＬとなり、リセット出力信号ＲＳＴＢがＨとなる。これにより、リセット伸長が停止することになる。
上記で説明した従来のリセット回路１０１では、プロセッサ２２からのリセットトリガ信号ＣＰＵＲＳＴＢを入力すると、内部に設けられたリセット伸長回路３により規定時間だけアサートな状態のＬとなるリセット出力信号ＲＳＴＢを生成して出力している。これは、その他のデイバス２５等の正常なリセット動作を行うためには、リセット出力信号ＲＳＴＢがＬとなる最低限の時間が規定されているからであり、正常なリセット動作を保証するためにはこの規定時間以上リセット出力信号ＲＳＴＢをＬとしなければならないからである。
この状態監視機能部２０は、上位状態監視機能部２７に対してパッケージ１２８の状態を報告するものであるため、パッケージ１２８が故障しているときも動作し、パッケージ１２８の状態監視を継続して行う必要がある。ここで、故障状態とは、プロセッサ２２等やリセット回路１０１へのクロックが停止しているような状況も含まれる。そのため、リセット回路１０１がリセット伸長動作を行っている最中にクロックが停止した場合には、クロック停止検出信号ＣＡＬＭＢがＬとなることによりリセット伸長回路３は初期化されて出力端子ＯＵＴがＬとなってリセット回路１０１のリセット伸長が停止されるようになっている。
しかし、このようにクロックが停止したことによりリセット伸長回路３がリセットされた状態で、リセット動作が全く行えなくなってしまうと、プロセッサ２２によるリセット動作が全く行えなくなってしまう。
そこで、従来のリセット回路１０１では、図６に示すように、リセットトリガ信号ＣＰＵＲＳＴＢとインバータ回路９の出力とをＡＮＤゲート回路１０に入力して、ＡＮＤゲート回路１０の出力をリセット出力信号ＲＳＴＢとして出力することにより、リセットトリガ信号信号ＲＳＴＢがそのまま出力されるスルー出力を行うような回路構成となっていた。
このような構成とすることにより、クロックが停止しているときにもリセットトリガ信号ＣＰＵＲＳＴＢをそのままスルーさせてリセット出力信号ＲＳＴＢとして出力させることができる。しかし、このようにリセットトリガ信号ＣＰＵＲＳＴＢをスルー出力させることにより、クロック入力が正常に行われているような時には以下に説明するような問題が発生する可能性がある。
一般的にＰＩＯポートはプロセッサ等のリセット中は入力ポートになるため、ハイインピーダンス状態となる。そのため、ＰＩＯポートを出力ポートに設定してリセットトリガ信号を出力するために使用した場合、プロセッサがリセット中となっている際に、リセットトリガ信号がネゲートとなるレベルを規定するためプルアップ抵抗やプルダウン抵抗が接続されている。図５に示した従来技術では、Ｈがネゲートのレベルであるため、プルアップ抵抗２９がリセットトリガ信号ＣＰＵＲＳＴＢに接続されている。
プロセッサ２２がリセットトリガ信号ＣＰＵＲＳＴＢをアサートした瞬間にプロセッサ２２自身にリセットが入力され、プロセッサ２２はリセットトリガ信号ＣＰＵＲＳＴＢのアサートを停止してしまうと、リセットトリガ信号ＣＰＵＲＳＴＢはプルアップ抵抗２９により時間をかけてネゲート状態になる。
しかし、図７に示したリセット伸長回路３では、入力信号ＩＮに対して、Ｄ−フリップフロップ３１１、３１２、カウンタ回路３２、ＪＫ−フリップフロップ回路３３が設けられているため、リセット伸長が正常に行われるためには、プロセッサ２２にリセット信号が入力されてからリセットトリガ信号ＣＰＵＲＳＴＢが最低でも２クロック分以上Ｌが確定するように、プルアップ抵抗２９の定数を調整する必要がある。
プルアップ抵抗２９の調整を行うことによりリセット伸長が正常に行われた場合のタイミングチャートを図９に示す。図９では、リセットトリガ信号ＲＳＴＢがＬとなった時刻Ｔ０から２クロック分経過する前の時刻Ｔ１、Ｔ２においてリセットトリガ信号ＲＳＴＢはＬが確保されている。そのため、リセット出力信号ＲＳＴＢは時刻Ｔ０においてＬとなってから規定時間経過後にＨとなるという予定された動作を行うことになる。
しかし、プルアップ抵抗２９の定数やデバイスの静電容量が小さいと、リセットトリガ信号ＣＰＵＲＳＴＢがＬである時間を２クロック分保証されない場合もあり得る。このような場合のタイミングチャートを図１０および図１１に示す。
図１０は、リセットトリガ信号ＣＰＵＲＳＴＢがＬになってから、次にクロック信号の立ち上がりエッジが検出される前にＨに戻ってしまったことにより、リセット伸長回路３がリセットトリガ信号ＣＰＵＲＳＴＢを検出できずリセット伸長が行われなかった場合である。図１１は、リセットトリガ信号ＣＰＵＲＳＴＢがＬである時間が２クロック分保証されないことにより、リセット出力に一旦ネゲートされてしまうような現象が発生した場合である。
図１０では、時刻Ｔ０においてリセットトリガ信号ＣＰＵＲＳＴＢがアサートの状態であるＬになり時刻Ｔ１にはＨと判定されるレベルに戻ってしまっている。そのため、ＡＮＤゲート回路１０ではリセットトリガ信号ＣＰＵＲＳＴＢがＬとなったことが検出され時刻Ｔ０から時刻Ｔ１の間リセット出力信号ＲＳＴＢはＬとなっているが、リセット伸長回路３では、リセットトリガ信号ＣＰＵＲＳＴＢがＬとなったことは検出されずリセット伸長は行われていない。そのため、時刻Ｔ１にはリセットトリガ信号ＣＰＵＲＳＴＢはネゲートされてしまって、リセット出力信号ＲＳＴＢがＬとなる時間が短くなり、デバイスが規定するリセット時間を満足することができなくなってしまう。
また、図１１は、リセットトリガ信号ＣＰＵＲＳＴＢがＬとなってから１クロック経過までしかＬと判定されるレベルを維持できなかった場合である。図１１では、時刻Ｔ０においてリセットトリガ信号ＣＰＵＲＳＴＢがアサートの状態であるＬになり時刻Ｔ１においてはＬレベルを維持しているが時刻Ｔ３ではＬレベルを維持できなくなっている。そのため、リセット伸長は正常に行われず、リセットトリガ信号ＣＰＵＲＳＴＢがＨと判定されてしまった時刻Ｔ２においてリセット出力信号ＲＳＴＢにが一旦ネゲートの状態であるＨとなり時刻Ｔ３に再度Ｌとなってしまっている。
上記図１０、図１１のいずれの場合においても、リセット出力信号ＲＳＴＢが規定時間アサートの状態であるＨとなることが保証されていなため、デバイスによっては誤動作を起こしてしまい、場合によってはパッケージが予測不可能な動作をしてしまうことになる。そのため、従来のリセット回路１０１においては、プルアップ抵抗やプルダウン抵抗の定数調整を行って、リセットトリガ信号ＣＰＵＲＳＴＢがＬになってから２クロック経過までＬが保証させるようにして上記のような問題が発生しないようにしていた。
上記で説明した問題とは別に、従来のリセット回路１０１では、電源投入時にクロックが停止している場合にも問題が発生する。電源投入時にクロックが存在していれば、その後クロックが停止した場合であっても、プロセッサ等のＰＩＯポートの入出力設定やデータ値が不定になることはなく、リセット出力信号ＲＳＴＢにリセットトリガ信号ＣＰＵＲＳＴＢをスルー出力してもリセット出力信号ＲＳＴＢがＬ固定になることはない。しかし、故障等により電源投入時にクロックが停止しているような状況では、プロセッサ２２では、ＰＩＯポート周辺回路が確実に初期化されず不定状態となる。そのため、本来であればＰＩＯポートは、リセット中はハイインピーダンス設定になるべきところが、出力モードとなりリセット回路１０１へリセットトリガ信号ＣＰＵＲＳＴＢをアサートした状態のまま、つまりＬのまま固定されてしまう可能性がある。図１２にこの場合のタイミングチャートを示す。
図１２では、クロック停止検出信号ＣＡＬＭＢがＬつまりクロック信号が停止した状態で電源投入が行われリセットトリガ信号ＣＰＵＲＳＴＢがＬのまま固定してしまっている。このような状態となると、図６に示したような従来のリセット回路１０１では、リセットトリガ信号ＣＰＵＲＳＴＢが直接ＡＮＤゲート回路１０に入力されているため、リセット出力信号ＲＳＴＢもＬ固定となりアサートの状態のままとなる。そのため、状態監視機能部２０に入力されるリセット信号もアサートの状態のままとなり、上位状態監視機能部２７にクロック信号の停止を報告することができない。
従来からリセット信号を生成するためのリセット回路として様々な回路構成が提案されている。例えば、システムを構成している各種回路に供給するリセット信号のタイミングをずらすことにより動作不良の発生を防止するようなリセット回路等も提案されている（例えば、特開２００１−１４２７９２号公報参照。）。しかし、上述したような問題を解決することができるようなリセット回路は提案されていなかった。
上述した従来のリセット回路では、下記のような問題点を有していた。
（１）プロセッサにリセット信号が入力されてからリセットトリガ信号が最低でも２クロック分以上アサートな状態であると判定されなければ正常なリセット伸長動作を行うことができないため、リセットトリガ信号に接続するプルアップ抵抗の定数を調整する必要がある。
（２）クロック信号が停止した状態で電源投入が行われリセットトリガ信号がアサートの状態のままとなってしまった場合、状態監視機能部もリセット状態となってしまい上位状態監視機能部にクロック信号の停止を報告することができない。
本発明の目的は、リセット回路のクロックが停止した際にはリセットトリガ信号のスルー出力をしたり、リセット伸長中にクロックが停止した時にはリセット伸長を停止したりする機能を残したまま、リセットトリガ信号のプルアップ抵抗やプルダウン抵抗の定数調整の必要性をなくし、確実にリセット動作を行うことができるリセット回路を提供することである。
また、本発明の他の目的は、電源投入時にクロックが停止していてプロセッサ等のＰＩＯポートが出力モードとなりリセットトリガ信号をアサートの状態にしたままとなってしまったような場合でも、リセットが解除されるようにして状態監視機能部が動作可能となるリセット回路を提供することである。
【発明の開示】
上記目的を達成するために、本発明は、プロセッサの汎用入出力ポートから出力されたリセットトリガ信号を入力して、前記プロセッサも含む他の回路へリセット出力信号を生成して出力するリセット回路であって、
現在の電源状態を示す外部パワーオンリセット信号が電源オンであることを示した後に、クロックの動作状態を示すクロック停止検出信号がクロックが正常に動作していることを最初に示すまで、入力された前記リセットトリガ信号をマスクする第１のマスク手段と、
前記第１のマスク手段から入力されたリセットトリガ信号がアサートの状態となる際のエッジを検出し、該エッジから一定時間だけアサートの状態となる信号を生成して出力するリセット伸長回路と、
前記外部パワーオンリセット信号が電源オフであることを示した場合、または前記クロック停止検出信号がクロックが停止していることを示した場合のいずれかの場合に、前記リセット伸長回路を初期化する初期化手段と、
前記クロック停止検出信号がクロックが正常に動作していることを示している場合に、前記第１のマスク手段からのリセットトリガ信号をマスクする第２のマスク手段と、
前記リセット伸長回路からの信号と前記第２のマスク手段からのリセットトリガ信号のいずれかがアサートの状態の場合に、前記リセット出力信号をアサートの状態とするリセット出力信号生成手段とを備えている。
本発明によれば、クロック停止検出信号がクロックが正常に動作していることを示している場合には、第２のマスク手段により第１のマスク手段から出力されたリセットトリガ信号をマスクするようにしているので、通常動作中はリセット伸長回路がリセットトリガ信号がアサートの状態となったことを検出できた場合にのみリセット出力信号をアサートの状態とする。そのため、リセット信号がアサートされた後、短期間ではあるが一時的にネゲートされ、その後またアサートされるようなリセット伸長が行われることを防いで、確実に規定時間リセット信号をアサートすることができる。その結果、外部プルアップ抵抗もしくはプルダウン抵抗の定数やデバイスの静電容量に関係なく、確実にプロセッサ等のＰＩＯポートより入力されるリセットトリガ信号を検出しリセット信号を伸長できる。それにより、従来回路で発生する可能性がある短期間のネゲートにより、パッケージが予測不可能な動作が発生するのを防ぐことができる。
また、電源投入時にクロックが停止していたような場合には前記第１のマスク手段によりリセットトリガ信号をマスクすることができるので、電源投入時にクロックが入らないことによりプロセッサ等がＰＩＯポート周辺の回路を正常に初期化できず、入出力設定および出力値が不定状態で固定してしまっても、リセット出力信号をネゲートさせ、パッケージの状態監視機能部を動作させることが可能となる。
また、前記第１のマスク手段を、クロックが正常に動作していることを示す場合にハイレベルとなり、クロックが停止している場合にロウレベルとなる前記クロック停止検出信号を入力し、該クロック停止検出信号の反転信号を出力するインバータ回路と、
前記外部パワーオンリセット信号をリセット入力とし、前記インバータ回路からの出力を入力端子から入力とし、前記外部パワーオンリセット信号が電源オフであることを示すロウレベルの場合には、前記入力端子に入力された値に関係なく、ハイレベルの信号を出力端子から出力し、前記リセット入力がハイレベルの場合には、前記入力端子にロウレベルの信号が一度でも入力されると前記出力端子にロウレベルの信号を出力し続けるラッチ回路と、
アサートの状態の場合にはロウレベルとなる前記リセットトリガ信号と、前記ラッチ回路の出力端子から出力された信号を入力して論理和演算を行い、該演算結果を出力するＯＲゲート回路とから構成するようにしてもよい。
さらに、前記第２のマスク手段を、前記ＯＲゲート回路からの出力と、前記クロック停止検出信号との論理和演算を行い、該演算結果を前記リセット出力生成手段に出力する論理和演算手段により構成するようにしてもよい。
さらに、前記初期化手段を、前記外部パワーオンリセット信号と前記クロック停止検出信号を入力として論理積の反転の演算を行い、該演算結果を前記リセット伸長回路の非同期クリア入力へ出力するＮＡＮＤゲート回路５により構成するようにしてもよい。
【図面の簡単な説明】  図１は、本発明の一実施形態のリセット回路１を備えたディジタル通信装置の構成を示すブロック図である。
図２は、図１中のリセット回路１の構成を示す回路図である。
図３は、本実施形態のリセット回路１の動作を示すタイミングチャートである。
図４は、本実施形態のリセット回路１の動作を示すタイミングチャートである。
図５は、従来のリセット回路１０１を備えたディジタル通信装置の構成を示すブロック図である。
図６は、図５中のリセット回路１０１の構成を示す回路図である。
図７は、図６中のリセット伸長回路３の構成を示す回路図である。
図８は、リセット伸長回路３の動作を示すタイミングチャートである。
図９は、従来のリセット回路においてリセット伸長が正常に行われた場合の動作を示すタイミングチャートである。
図１０は、従来のリセット回路においてリセット伸長が正常に行われなかった場合の動作を示すタイミングチャートである。
図１１は、従来のリセット回路においてリセット伸長が正常に行われなかった場合の動作を示すタイミングチャートである。
図１２は、従来のリセット回路においてクロックが停止した状態で電源投入された場合の動作を示すタイミングチャートである。
【発明を実施するための最良の形態】  次に、本発明の実施の形態について図面を参照して詳細に説明する。
図１は本実施形態の一実施形態のリセット回路を備えた架構成のディジタル通信装置の構成を示すブロック図である。図１において、図５中の構成要素と同一の構成要素には同一の符号を付し、説明を省略するものとする。
本実施形態におけるディジタル通信装置には、複数のパッケージ２８と、上位状態監視機能部２７とが設けられている。また、各パッケージ２８は、それぞれ、状態監視機能部２０と、電源監視回路２１と、プロセッサ２２と、パワーオンリセット回路２３と、クロック監視装置２４と、リセット回路１と、ＡＮＤゲート回路２６と、その他のデバイス２５と、外部プルアップ抵抗２９とを備えている。
本実施形態におけるパッケージ２８は、図５に示したパッケージ１２８と比較して、リセット回路１０１がリセット回路１に置き換えられ、リセット回路１には、リセットトリガ信号ＣＰＵＲＳＴＢとクロック停止検出信号ＣＡＬＭＢに加えて、外部パワーオンリセット信号ＰＲＳＴＢが入力されている点が異なっている。
本実施形態のリセット回路１は、以下の３つの機能を有する。１番目の機能は、通常動作時にＰＩＯポートより入力されるリセットトリガ信号ＣＰＵＲＳＴＢの立ち下がりエッジの有無を調べ、立ち下がりエッジを検出すると規定時間アサートの状態が保証されたリセット出力信号ＲＳＴＢを確実に出力する機能である。
また、２番目の機能は、クロックが停止した際にクロック監視装置２４より入力されるクロック停止検出信号ＣＡＬＭＢ（アクティブロウ）を入力することによりリセット伸長を停止しＣＰＵＲＳＴＢリセットトリガ信号そのものをリセット出力信号ＲＳＴＢとして出力するスルー出力機能である。
３番目の機能は、電源投入時つまり電源監視回路２１より入力される外部パワーオンリセット信号ＰＲＳＴＢ（アクティブロウ）がＬの時にクロック停止検出信号ＣＡＬＭＢがＬとなっている場合にはリセットトリガ信号ＣＰＵＲＳＴＢそのものをマスクし、ＰＩＯポートの不定状態をリセットトリガ信号ＣＰＵＲＳＴＢ入力として使用してしまうことでリセット出力信号ＲＳＴＢをアサートし続けるような場合を回避するような機能である。
上記で説明した３つの機能により、状態監視機能部２０が継続してリセット状態となってしまうことを防いで、上位状態監視機能部２７が、パッケージ２８の状態監視ができなくなることを防ぐことができる。
次に、本実施形態におけるリセット回路１の構成を図２に示す。図２において、図６中の構成要素と同一の構成要素には同一の符号を付し、説明を省略するものとする。
本実施形態のリセット回路１は、図６に示した従来のリセット回路１０１に対して、ラッチ回路２と、インバータ回路４と、ＮＡＮＤゲート回路５と、ＯＲゲート回路６、８とが新たに設けられた構成となっている。
リセット回路１は、プロセッサ２２のＰＩＯポート出力であるリセットトリガ信号ＣＰＵＲＳＴＢと外部パワーオンリセット信号ＰＲＳＴＢとクロック停止検出信号ＣＡＬＭＢと外部クロックＣＬＫを入力とし、リセット出力信号ＲＳＴＢを出力する。
インバータ回路４は、クロック停止検出信号ＣＡＬＭＢを入力とし、ラッチ回路２の入力ＩＮＢへクロック停止検出信号ＣＡＬＭＢの反転信号を出力する。
ラッチ回路２は、外部パワーオンリセット信号ＰＲＳＴＢをリセット入力とし、インバータ回路４の出力を入力端子ＩＮＢに入力し、出力端子ＯＵＴＢからの出力をＯＲゲート回路６に出力する。このラッチ回路２はリセット入力がＬの場合には、入力端子ＩＮＢの入力値に関係なく、出力端子ＯＵＴＢにＨの信号を強制的に出力（初期化）し、リセット入力がＨの場合には、入力端子ＩＮＢにＬが一度でも入力されると出力端子ＯＵＴＢにＬを出力し続けるような動作を行う。このような動作を行うラッチ回路２は、当業者にとってよく知られており、また本発明とは直接関係しないので、その詳細な構成は省略する。
ＯＲゲート回路６は、リセットトリガ信号ＣＰＵＲＳＴＢとラッチ回路２の出力端子ＯＵＴＢからの出力を入力して論理和演算を行い、その演算結果をインバータ回路７とＯＲゲート回路８に入力する。このＯＲゲート回路６が設けられていることにより、ラッチ回路２の出力端子ＯＵＴＢからの出力がＨの場合にはリセットトリガ信号ＣＰＵＲＳＴＢはマスクされることになる。
つまり、ラッチ回路２とＯＲゲート回路６およびインバータ回路４が設けられたことにより、外部パワーオンリセット信号ＰＲＳＴＢがアサート中は出力端子ＯＵＴＢにＨを出力することでリセットトリガ信号ＣＰＵＲＳＴＢをマスクし、外部パワーオンリセット信号ＰＲＳＴＢがネゲートされてから一度でもクロック停止検出信号ＣＡＬＭＢがＨになるまで、つまりクロックの存在が確認されるまではリセットトリガ信号ＣＰＵＲＳＴＢを電源投入から継続的にマスクし、マスク解除後はリセットトリガ信号ＣＰＵＲＳＴＢをスルーするような構成となっている。
インバータ回路４、ラッチ回路２、ＯＲゲート回路６は、現在の電源状態を示すパワーオンリセット信号ＰＲＳＴＢが電源オンであることを示すＨとなった後に、クロックの動作状態を示すクロック停止検出信号ＣＡＬＭＢがクロックが正常に動作していることを示すＨに最初になるまで、入力されたリセットトリガ信号ＣＰＵＲＳＴＢをマスクする第１のマスク手段として機能する。
ＮＡＮＤゲート回路５は、外部パワーオンリセット信号ＰＲＳＴＢとクロック停止検出信号ＣＡＬＭＢを入力として論理積の反転の演算を行い、その演算結果をリセット伸長回路３の非同期クリア入力Ｃへ出力する。外部パワーオンリセット信号ＰＲＳＴＢとクロック停止検出信号ＣＡＬＭＢのいずれかがＬになった際にはＮＡＮＤゲート回路５はＨを出力し、リセット伸長回路３の動作を初期化することになる。つまり、ＮＡＮＤゲート回路５は、電源電圧が一定値以下となったかクロックが停止したかいずれかが検出された場合には、リセット伸長回路３の初期化手段として機能する。
インバータ回路７は、ＯＲゲート回路６の出力を入力とし、その反転信号をリセット伸長回路３の入力ＩＮへ出力する。
リセット伸長回路３は、インバータ回路７の出力を入力ＩＮ、クロックに外部入力クロックＣＬＫ、非同期クリア入力Ｃ（アクティブハイ）にＮＡＮＤゲート回路５の出力を非同期クリア入力とし、出力ＯＵＴをインバータ回路９に入力する。リセット伸長回路３は電源投入時もしくはクロック停止時（外部パワーオンリセット信号ＰＲＳＴＢがＬもしくはクロック停止検出信号ＣＡＬＭＢがＬ）には、リセット伸長を停止し出力端子ＯＵＴにＬを出力し、外部パワーオンリセット信号ＰＲＳＴＢがＨでかつクロック停止検出信号ＣＡＬＭＢがＨである時（通常動作時）には、入力端子ＩＮがＨからＬへ変化した２クロック目の立ち上がりで出力端子ＯＵＴにＨを出力し、その時点からリセット伸長回路３に備えるカウンタ回路３２にセットされた規定時間経過すると出力端子ＯＵＴにＬを出力する。
インバータ回路９は、リセット伸長回路３の出力端子ＯＵＴからの出力を入力とし、その反転信号をＡＮＤゲート回路１０へ出力する。
ＯＲゲート回路８は、ＯＲゲート回路６からの出力と、クロック停止検出信号ＣＡＬＭＢとの論理和演算を行い、その演算結果をＲＳＴＢ２としてＡＮＤゲート回路１０に出力している。ＯＲゲート回路８は、クロック停止検出信号ＣＡＬＭＢがクロックが停止していることを示しているＨの場合に、ＯＲゲート回路６からのリセットトリガ信号をマスクする第２のマスク手段として機能する。
ＡＮＤゲート回路１０は、ＯＲゲート回路８の出力とインバータ回路９の出力を入力として論理積演算を行い、その演算結果をリセット回路１のリセット出力信号ＲＳＴＢとして出力する。ＡＮＤゲート回路１０は、リセット伸長回路３からの信号とＯＲゲート回路８からのリセットトリガ信号のいずれかがアサートの状態の場合に、リセット出力信号ＲＳＴＢをアサートの状態とするリセット出力信号生成手段として機能する。
次に、本実施形態のリセット回路１の動作を、通常動作時、通常動作中にクロックが停止した場合、電源投入時にクロック入力が停止している場合に分け、それぞれ図面を参照して詳細に説明する。
（１）先ず、通常動作時の動作について説明する。
パッケージ２８内において何の異常も発生していない通常動作時には、外部パワーオンリセット信号ＰＲＳＴＢがＨ、かつクロック停止検出信号ＣＡＬＭＢがＨとなっている。つまり通常にパワーオンリセットが入力されてその後解除され、クロックが正常に入力されているような場合が通常動作時である。この通常動作時では、外部パワーオンリセット信号ＰＲＳＴＢがＨとなっていて、クロック停止検出信号ＣＡＬＭＢがＨつまりインバータ回路４の出力がＬとなっているので、ラッチ回路２の出力ＯＵＴＢはＬとなっている。そのため、ＯＲゲート回路６はリセットトリガ信号ＣＰＵＲＳＴＢをそのまま出力している。そして、ＯＲゲート回路８には、Ｈのクロック停止検出信号ＣＡＬＭＢが入力されているので、ＯＲゲート回路８の出力ＲＳＴＢ２はリセットトリガ信号ＣＰＵＲＳＴＢの状態に関わらずＨとなっている。
ここで、プロセッサ２２のＰＩＯポートからリセット回路１にリセットトリガ信号ＣＰＵＲＳＴＢがアサートされると、ＯＲゲート回路６の出力がＬとなる。そのため、インバータ回路７の出力はＨとなり、リセット伸長回路３の入力端子ＩＮにはＨが入力される。
リセット伸長回路３では、リセットトリガ信号ＣＰＵＲＳＴＢのＨからＬへの変化をＣＬＫの立ち上がりで検出し、リセット伸長回路３の出力端子ＯＵＴにＨを出力する。リセットトリガ信号ＣＰＵＲＳＴＢのＨからＬへの変化により、リセット伸長回路３に備えられたカウンタ回路３２がカウントアップもしくはカウントダウンを開始し、規定時間経過すると出力端子ＯＵＴにはＬが出力される。
最後にＡＮＤゲート回路１０により、リセットトリガ信号ＣＰＵＲＳＴＢのＨからＬへの変化から規定時間経過後までリセット出力信号ＲＳＴＢにＬを出力する。つまり、リセット伸長回路３がリセット伸長を開始するまでは、リセット出力信号ＲＳＴＢをアサートしないようにして、微分回路３１が立ち上がりエッジを検出できなかったり、一度リセット出力信号ＲＳＴＢがアサートしたのに一時的にネゲートして再度アサートしたりするような現象を防ぎ、確実にリセット出力信号ＲＳＴＢをアサートするようにしている。
このように、リセット伸長回路３がリセットトリガ信号ＣＰＵＲＳＴＢの入力を検出してからリセット出力信号ＲＳＴＢがＬになるので、リセット出力信号ＲＳＴＢに一瞬ネゲートになる等の不安定な動作を起こすことがない。また、確実にリセット伸長回路３がリセットトリガ信号ＣＰＵＲＳＴＢを検出するまではプロセッサ２２等にリセットが入力されないことになり、従来ではプルアップ抵抗２９の定数変更が必要であったが、本実施形態のリセット回路１によりばプルアップ抵抗の定数の調整が不要となる。
（２）次に、通常動作中にクロックが停止した場合の動作について説明する。
通常動作中にクロックが停止した場合、つまり外部パワーオンリセット信号ＰＲＳＴＢがＨで、クロック停止検出信号ＣＡＬＭＢがＬになった場合、ＮＡＮＤゲート回路５の出力はＬからＨとなる。そのため、リセット伸長回路２のクリア信号ＣにＨがアサートされ、リセット伸長回路２は初期化され出力ＯＵＴはＬとなり、ＲＳＴＢ１はＨ固定になる。また、ラッチ回路２の出力ＯＵＴＢもＬ固定となる。このとき、リセットトリガ信号ＣＰＵＲＳＴＢにＬが入力されると、ラッチ回路２の出力はＬであるため、ＯＲゲート回路６の出力もＬとなる、また、クロックが停止したことによりクロック停止検出信号ＣＡＬＭＢもＬとなっているため、ＯＲゲート回路８の出力もＬとなる。
つまり、リセットトリガ信号ＣＰＵＲＳＴＢは、ＯＲゲート回路６、８を通過してＡＮＤゲート回路１０に入力され、そのままリセット出力信号ＲＳＴＢとして出力される。つまり、クロックが停止している際には、リセットトリガ信号ＣＰＵＲＳＴＢはそのままスルーしてリセット出力信号ＲＳＴＢに出力されることになる。スルー出力がリセット出力信号ＲＳＴＢにアサートされた瞬間にプロセッサ２２はリセットが入力されるので、その後のリセットトリガ信号ＣＰＵＲＳＴＢはプルアップ抵抗２９により緩やかにＨになる。
通常動作中にクロックが停止した場合のリセット回路１の動作を図３のタイミングチャートに示す。
先ず、クロック停止検出信号ＣＡＬＭＢがＬであるので、リセット伸長回路３は初期化状態を継続するためＲＳＴＢ１はクロックが停止している際には常にＨとなる。また、ラッチ回路２よりマスク信号ＭＡＳＫにはＬが出力されるのでＯＲゲート回路６はスルー設定となり、クロック停止検出信号ＣＡＬＭＢがＬであることによりＯＲゲート回路８もスルー設定となる。よって、時刻Ｔ０においてリセットトリガ信号ＣＰＵＲＳＴＢがアサートされると即座にリセット出力信号ＲＳＴＢがＬとなり、リセットトリガ信号信号ＲＳＴＢをアサートしているプロセッサ２２も含めたパッケージ２８内の各デバイスにリセットがかけられる。リセット出力信号ＲＳＴＢがアサートされることによりプロセッサ２２のＰＩＯポート出力は入力に初期化されるので、外部プルアップ抵抗２９によりゆっくりとＨへ遷移することになる。時刻Ｔ１はリセット回路１がリセットトリガ信号ＣＰＵＲＳＴＢをＨと認識できるレベルになった時刻とし、この時刻Ｔ１にてリセット出力信号ＲＳＴＢはＨとなる。この時刻Ｔ１はプルアップ抵抗２９の定数やデバイスの静電容量等により異なる。
（３）最後に、電源投入時にクロック入力が停止している場合について説明する。図４のタイミングチャートを参照して説明する。
外部パワーオンリセット信号ＰＲＳＴＢが、時刻Ｔ０においてＬからＨへ変化した時に、クロック停止検出信号ＣＡＬＭＢがＬの場合、つまり、故障等により電源投入時より継続的にクロック入力が停止しているような状況では、ラッチ回路２の出力端子ＯＵＴＢから出力されるマスク信号ＭＡＳＫはＨのままとなる。よって、マスク信号ＭＡＳＫによりリセットトリガ信号ＣＰＵＲＳＴＢはＯＲゲート回路６にてマスクされる形になる。また、ＮＡＮＤ回路５の出力はＨとなり、リセット伸長回路３のクリア信号ＣにはＨが入力されるため、出力ＯＵＴはＬに初期化される。
よって、例えプロセッサ２２のＰＩＯポートが出力ポートになってしまい、リセットトリガ信号ＣＰＵＲＳＴＢがアサートされたままの状態となった場合でも、ＯＲゲート回路６によりマスクされリセット出力信号ＲＳＴＢがアサートされたままとならず、ネゲートされたままとなる。よって、電源投入時に既にクロックが停止しているような場合でも、状態監視部２０のリセットを解除することができる。
上記（１）〜（３）で説明した動作が行われることにより、本実施形態によれば、プロセッサ２２のＰＩＯポート出力をリセットトリガ信号ＣＰＵＲＳＴＢとして入力にしているリセット回路１において、通常動作時においては、プルアップ抵抗２９の定数を調整することなく確実にリセット伸長を行ってリセット出力信号ＲＳＴＢとしてパッケージ２８内の各デバイスの初期化動作を行うことができる。また、通常動作時にクロックが停止した際にはリセット伸長を停止しリセットトリガ信号入力そのものを出力し、電源投入時にクロックが停止しているような時にはにはリセットトリガ信号入力そのものをマスクし、ＰＩＯポートの不定状態をリセットトリガ信号入力として使用してしまうことを回避するような機能を持つリセット回路を実現することができる。
本実施形態では、リセットトリガ信号ＣＰＵＲＳＴＢ、外部パワーオンリセット信号ＰＲＳＴＢ、クロック停止検出信号ＣＡＬＭＢ等はアクティブロウである場合を用いて説明したが、本発明はこれに限定されるものではなく、各種信号はアクティブロウ、アクティブハイをどのように選択した場合でも同様に本発明を適用することができるものである。
【産業上の利用可能性】  以上説明したように、本発明によれば、下記のような効果を得ることができる。
（１）外部プルアップ抵抗もしくはプルダウン抵抗の定数やデバイスの静電容量に関係なく、確実にプロセッサ等のＰＩＯポートより入力されるリセットトリガ信号を検出しリセット信号を伸長できる。また、リセット信号がアサートされた後、短期間ではあるが一時的にネゲートされ、その後またアサートされるようなリセット伸長は行わずに、確実に規定時間リセット信号をアサートすることができる。このため、従来回路で発生する可能性がある短期間のネゲートにより、パッケージが予測不可能な動作が発生するのを防ぐことができる。
（２）クロックが停止した際にはリセット伸長を停止し、リセットトリガ信号を伸長しないスルー信号を出力する機能を持たせる。それと同時に、電源投入時にクロックが停止していたような場合にはリセットトリガ信号をマスクすることで、電源投入時にクロックが入らないことによりプロセッサ等がＰＩＯポート周辺の回路を正常に初期化できず、入出力設定および出力値が不定状態で固定してしまっても、リセット回路にてプロセッサ等のＰＩＯポートからの入力をマスクすることでリセット信号をネゲートさせ、パッケージの状態監視機能部を動作させることができる。
【図１】
2004097608.tif 000003
【図２】
2004097608.tif 000004
【図３】
2004097608.tif 000005
【図４】
2004097608.tif 000006
【図５】
2004097608.tif 000007
【図６】
2004097608.tif 000008
【図７】
2004097608.tif 000009
【図８】
2004097608.tif 000010
【図９】
2004097608.tif 000011
【図１０】
2004097608.tif 000012
【図１１】
2004097608.tif 000013
【図１２】
2004097608.tif 000014
【国際調査報告】
2004097608.tif 000015
2004097608.tif 000016
2004097608.tif 000017
2004097608.tif 000018