説明

シリアル割込み復帰回路

【課題】 外部からのシリアルデータにより周辺機器を停止状態から復帰させるシステムにおいて、無駄な電力の消費を削減するとともにCPUのパフォーマンスに関係なく高速受信を行えるシリアル割込み復帰回路を提供する。
【解決手段】 受信シフトレジスタ102と、受信制御回路101と、復帰要求設定レジスタ107と、比較回路109と、割込み発生回路114と、受信割込み復帰制御回路106と、クロック制御回路105とを備えることにより、受信待受け、受信動作、復帰要求データ比較動作の際にCPU116を停止することができ、無駄なCPU動作を削減し、無駄な電力の消費を低減させることができる。また、CPU動作と関係なく受信動作を行うことができるので、CPUのパフォーマンスに関係なく高速受信を安定して行える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、シリアル割込み復帰回路、すなわち、外部からのシリアルデータにより周辺機器を停止状態から復帰させるシステムに搭載される、マイクロコンピュータのシリアル受信割込み回路の改良を図ったものに関する。
【背景技術】
【0002】
近年、AV機器などの周辺機器に、PCなどに接続される用途が増えている。その接続方法として、パラレル通信では複数のデータを転送するのに専用端子が多く必要となるため、専用端子が少なくてすむシリアル通信、特にUART(Universal Asynchronous Receiver Transmitter)通信のEIA(Electronic Industries Alliance)規格RC−232Cに準じた通信が一般的である。その通信方式としては、単発的な通信よりパケット通信のような纏まった連続した通信が多く、周辺機器を識別する宛先データなどを送信するデータに付加し、さらに本来のデータのデータ長が可変である場合は、転送バイト数データや、データ先頭、最後尾を表すデータなどを付加したうえで転送を行うことにより、通信を行っている。
【0003】
また、前記周辺機器の機能として、パワーオン制御をPCから制御できるようにするために、予め復帰要求を示すデータ値を定めて、復帰要求と同じデータを受信した場合に、スタンバイ状態からパワーオン状態に復帰する機能がある。
【0004】
前記機能を実現するものとして、図4及び図5に示す従来例がある。
図4に示す従来例においては、マイクロコンピュータ406に搭載されたCPU405が常時動作した状態(内部クロックを常時発生)のまま、受信待受け状態もしくは受信状態となり、PCまたは外部シリアル送信機(以下、PCまたはシリアル送信装置と称す)409からのシリアルデータ450をシリアル受信回路404で受信した後、CPU405がそのソフトウエア処理によりシリアル受信バッファ(受信シフトレジスタ)401に保持された受信データと、復帰要求を意味する、予め定められた値を持つデータ(例えば「55」)とを比較し、これらが一致した場合に、外部メモリ等の周辺LSI407に対し復帰信号454を出力して、周辺装置(周辺機器)408全体をパワーオン状態に復帰させる。
【0005】
また、図5に示す他の従来例は、特許文献1に示されたスタートビットのみを検出する回路を簡略化して示すもので、この従来例においては、マイクロコンピュータ506に搭載されたCPU505が停止した状態(内部クロックを停止)で受信待受けを行っており、PCまたはシリアル送信装置509から受信したシリアルデータ550のスタートビットのエッジにより外部割込みを発生し、CPU505をパワーオン状態に復帰させてから、シリアル受信回路504を動作させて受信し、シリアルデータ550を受信した後、シリアル受信バッファ(受信シフトレジスタ)501に保持された受信データと、復帰要求を意味する、予め定められた値を持つデータ(例えば「55」)とを、CPU505がソフトウエア処理により比較し、これらが一致した場合に、外部メモリ等の周辺LSI507に対し復帰信号554を出力して、周辺装置(周辺機器)508全体をパワーオン状態に復帰させる。
【特許文献1】特開平8−202469号公報(第3頁,第4頁 図1)
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、図4に示されるような従来例の構成では、シリアルデータを待受けしている期間も、CPU405が常時動作を行う必要があり、無駄な電力を消費してしまうという課題を有していた。
【0007】
また、図5に示されるような従来例の構成では、PCまたはシリアル送信装置509からの送信がCPU505の処理に比べ高速であった場合、スタートビットのエッジでCPU505が復帰し受信命令をシリアル受信回路504に送るまでの間にスタートビットの送信が終了してしまうことがあり、この場合、スタートビットを正しく受信することができない恐れがあるという課題がある。
【0008】
またこの図5の従来例では、スタートビットのエッジのみでCPU505を復帰させるため、ノイズなどにより誤って復帰動作を行う可能性があり、また、復帰要求を示すデータ以外のデータがPCまたはシリアル送信装置509より送信された場合でも、CPU505をパワーオン状態に復帰させ比較処理を行う必要があり、無駄な電力を消費してしまうという課題を有していた。すなわち、この図5の従来例では、CPU505を停止状態にできるのは待受時のみであり、受信および比較はCPU505自らがこれを行うため、その分無駄な消費電力が生じるという課題があった。
【0009】
本発明は、前記従来の課題を解決するためになされたもので、外部シリアルデータにより周辺機器を停止状態(スタンバイ状態)からパワーオン状態(通常動作状態)に復帰させるシステムにおいて、無駄な電力の消費を削減するとともに、CPUのパフォーマンスに関係なく高速受信を行うことが可能なシリアル割込み復帰回路を提供することを目的とする。
【課題を解決するための手段】
【0010】
前記課題を解決するために、本発明の請求項1に記載のシリアル割込み復帰回路は、外部からのシリアルデータにより、CPUを有する周辺機器を、停止状態から通常動作状態に復帰させるシリアル割込み復帰回路において、シリアルデータを受信するとともにシリアル/パラレル変換を行うための受信シフトレジスタと、該受信シフトレジスタのシフト動作を制御するとともに前記受信データのエラー検出を制御する受信制御回路と、予め定めた値を有する復帰要求データを保持する復帰要求設定レジスタと、前記受信シフトレジスタおよび前記復帰要求設定レジスタが保持するデータ同士を比較し該データ同士が一致した旨を示す復帰要求一致信号を出力する比較回路と、該復帰要求一致信号により割込み信号を発生する割込み発生回路と、前記復帰要求一致信号によりシリアルデータの再受信もしくは再受信の終了を制御するとともに、前記割込み発生回路の制御を行なう受信割込み復帰制御回路と、前記CPUの動作時および停止時に前記各回路及び前記受信シフトレジスタを動作させるためのクロックを発生するクロック制御回路とを備えた、ことを特徴とする。
【0011】
また、本発明の請求項2に記載のシリアル割込み復帰回路は、請求項1に記載のシリアル割込み復帰回路において、前記復帰要求一致信号をトリガとして、連続したシリアルデータを複数回分保持する受信レジスタを備えた、ことを特徴とする。
【0012】
また、本発明の請求項3に記載のシリアル割込み復帰回路は、請求項2に記載のシリアル割込み復帰回路において、連続したシリアルデータの受信を終了する旨の連続受信終了要求データを保持する連続受信終了要求設定レジスタを備え、前記比較回路は、前記受信シフトレジスタおよび前記連続受信終了要求設定レジスタがそれぞれ保持するデータ同士を比較し該データ同士が一致した旨を示す連続受信終了要求一致信号を出力し、前記割り込み発生回路は、前記連続受信終了要求一致信号により割込み信号を発生し、前記受信割込み復帰制御回路は、前記連続受信終了要求一致信号によりシリアルデータの受信もしくは受信終了を制御するとともに、前記割込み発生回路、前記受信レジスタへのデータ転送の制御を行う、ことを特徴とする。
【0013】
また、本発明の請求項4に記載のシリアル割込み復帰回路は、請求項2または3に記載のシリアル割込み復帰回路において、前記シリアルデータを連続して受信した回数である連続受信回数をカウントする連続受信回数カウンタと、該連続受信回数を比較するための値を保持する連続受信回数設定レジスタとを備え、前記比較回路は、前記連続受信回数カウンタのカウント値と前記連続受信回数設定レジスタの保持データとを比較しこれらが一致した旨を示す連続受信回数一致信号を出力し、前記割込み発生回路は、前記連続受信回数一致信号により割込み信号を発生し、前記受信割込み復帰制御回路は、前記連続受信回数一致信号により前記シリアルデータの受信の終了の制御、前記割込み発生回路の制御を行う、ことを特徴とする。
【0014】
また、本発明の請求項5に記載のマイクロコンピュータは、請求項1記載ないし請求項4のいずれかに記載のシリアル割込み復帰回路と、前記CPUとを備え、該シリアル割込み復帰回路が前記CPUの割込み信号を出力することにより、前記CPUを停止状態から通常動作状態に復帰させることを可能とした、ことを特徴とする。
【0015】
また、本発明の請求項6に記載のマイクロコンピュータは、CPUと、請求項1ないし請求項4のいずれかに記載のシリアル割込み復帰回路とを備え、前記CPUが停止状態の際に、受信したシリアルデータを保持することを可能とした、ことを特徴とする。
【0016】
また、本発明の請求項7に記載の周辺機器は、請求項5に記載のマイクロコンピュータを備え、外部から予め定められた値のシリアルデータを受信することにより通常動作状態に復帰する周辺機器において、前記CPUが停止状態の際に、前記シリアルデータの待受け、受信、比較判定を行い、通常動作状態に復帰することを可能とした、ことを特徴とする。
【0017】
また、本発明の請求項8に記載の周辺機器は、請求項6に記載のマイクロコンピュータを備え、前記CPUが停止状態の際に、外部からのシリアルデータを受信し、該シリアルデータを保持することを可能とした、ことを特徴とする。
【発明の効果】
【0018】
本発明のシリアル割込み復帰回路によれば、CPUが停止中でもシリアル割込み復帰回路に、受信したデータと、予め定めていた値の、復帰要求を意味するデータを保持するレジスタと、比較し、割込みを発生する回路と各回路にクロックを供給する回路を備えることにより、CPUが停止状態でも受信待受け、受信動作、復帰要求データ比較、割込み出力動作が可能となる。すなわち、受信待受け、受信動作、復帰要求データ比較中にCPU動作を停止することができ、無駄なCPU動作を削減し、無駄な電力の消費を低減させることができる。また、CPU動作と関係なく受信動作を行うことができるので、CPUのパフォーマンスに関係なく高速受信を安定して行える。
【発明を実施するための最良の形態】
【0019】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
本発明の実施の形態1は、外部からのシリアルデータにより周辺装置をスタンバイ状態からパワーオン状態に復帰させるシステムにおいて、従来例ではCPUが行っていたシリアルデータの受信待ち受け、復帰要求データの受信、受信した復帰要求データと周辺装置に予め設定されている復帰要求データとの比較を、CPUとは別に設けた回路により実行することにより、これらの期間中はCPUの動作を停止し、無駄な消費電力を削減するようにしたものである。
【0020】
図1(a)は、本発明の実施の形態1におけるシリアル割込み復帰回路を用いた、外部シリアル信号により周辺機器を復帰させるためのシステム構成図である。
【0021】
図1(b)は、PCまたはシリアル送信装置から周辺装置に向けて送信されるシリアルデータのフォーマットの一例である。
【0022】
図2(a)は本発明の実施の形態1におけるシリアル割込み復帰回路の状態遷移を示す状態遷移図である。
図3(a)は本発明の実施の形態1におけるCPUの状態遷移を示す状態遷移図である。
【0023】
図1(a)において、周辺装置(周辺機器)119は、マイクロコンピュータ117、および外部メモリ、DSPなどの周辺LSI118を搭載しており、周辺LSI118は、マイクロコンピュータ117からの周辺LSI制御信号166により動作あるいは停止する。
【0024】
マイクロコンピュータ117には、CPU116およびシリアル割込み復帰回路115が内蔵されている。CPU116からシリアル割込み復帰回路115内部の各レジスタへのアクセスは、CPU116からインターフェース回路110に内部バス165が接続されており、インターフェース回路110によりデコード処理が行われ、レジスタアクセスバス164より、そのアクセスを行うことができる。また、シリアル割込み復帰回路115内の割込み発生回路114から出力される復帰要求割込み信号163により、CPU116は停止状態から通常動作状態へ復帰することができる。
【0025】
シリアル割込み復帰回路115には、従来のシリアル受信回路と同様、PCまたはシリアル送信装置120から送信されるシリアルデータ150のシリアル−パラレル変換を行う受信シフトレジスタ102と、受信シフトレジスタ102への受信シフトレジスタ制御信号151の出力やスタートビット検出、エラー検出などの受信制御を行なう受信制御回路101があり、1データ(例えば1バイト)ごとのシリアル受信を行う。
【0026】
シリアルデータは図1(b)に示すようなフォーマットを有し、先頭に復帰要求データRRDが配置され、以下に、本来のデータであるデータ1 D1,データ2 D2,データ3 D3が順に配置される。そして、データが不定長、すなわちこれら本来のデータの個数が不定である場合、最後のデータの後に終了要求データQRDが付加される。なお、データが固定長、すなわち本来のデータの個数が一定である場合、終了要求データは不要である。
【0027】
連続した受信動作を制御する受信割込み復帰制御回路106が連続受信待ち状態S1(図2(a)参照)である場合、受信したシリアルデータ150は、受信シフトレジスタ102に保存され、受信シフトレジスタ出力信号154として、復帰要求設定レジスタ出力信号169と、比較回路109にて比較される。この復帰要求設定レジスタ出力信号169は、復帰要求設定レジスタ107が保持し出力する信号であり、予め定められた値である復帰要求データもしくは連続受信開始要求、周辺機器(周辺装置)119同士を識別するデータのいずれかである。
【0028】
その比較結果は、復帰要求一致信号158として、受信割込み復帰制御回路106に入力される。受信割込み復帰制御回路106は、復帰要求一致信号158と受信制御回路101から出力される受信エラーフラグ信号167との比較結果に応じた動作を行う。
【0029】
すなわち、受信エラーが検出されず、かつ比較結果が一致している場合には、PCまたはシリアル送信装置120から周辺機器117へ復帰要求があったと判断し、連続受信待ち状態S1から連続受信中状態S2(図2(a)参照)に移行し、割込み発生回路114に割り込み発生許可信号159を出力すると共に、受信制御回路101に、PCまたはシリアル送信装置120から続けて送信されるシリアルデータ150を受信するように受信制御回路制御信号168を出力する。また、受信レジスタ111,112,113に、受信シフトレジスタ出力102を転送、保存するように連続受信データ保存制御信号160を出力する。
【0030】
また、前記比較結果が不一致している場合または受信エラーフラグ信号167がエラーを示している場合には、PCまたはシリアル送信装置120から周辺機器119への復帰要求ではないシリアルデータを受信したのか、もしくはノイズ等により間違ったデータを受信したと判断し、連続受信待ち状態S1のまま状態移行せず、割込み発生回路114に割り込み発生許可信号159を出力しない。また、保存したシリアルデータを破棄し、再受信を行うように受信制御回路101に受信制御回路制御信号168を出力する。
【0031】
割込み発生回路114は、比較回路109からの復帰要求一致信号158および受信割込み復帰制御回路115からの割り込み発生許可信号159により、比較結果が一致し、割込み発生が許可されている場合には復帰要求割込み信号163を出力する。
【0032】
受信レジスタ111,112,113は、連続して受信したデータを保存するレジスタであり、最大連続受信回数分のレジスタが設けられている。シリアルデータ150を受信する受信シフトレジスタ102の出力は、受信割込み復帰制御回路106からの連続受信データ保存制御信号160のタイミングで、受信レジスタ111,112,113にシフト転送されて保存される。
【0033】
受信割込み復帰制御回路106の状態が連続受信中状態S2の際に受信したシリアルデータは受信シフトレジスタ102に保存され、受信シフトレジスタ出力信号154として出力される。比較回路109は、この受信シフトレジスタ出力信号154と、予め定められた値を有する連続受信終了要求データQRDを保持する連続受信終了要求設定レジスタ108の値である連続受信終了要求レジスタ出力信号161とを比較する。
【0034】
その比較結果は、受信割込み復帰制御回路106に連続受信要求一致信号162として入力される。
【0035】
受信割込み復帰制御回路106は、連続受信終了要求一致信号162と受信制御回路101より出力される受信エラーフラグ信号167との比較結果に応じて異なる動作を行う。
【0036】
すなわち、受信エラーが検出されず、比較結果が一致している場合には、PCまたはシリアル送信装置120から周辺機器117へ連続受信終了要求があったと判断し、連続受信中状態S2から連続受信終了状態S3(図2(a)参照)に移行し、割込み発生回路114に割り込み発生許可信号159を出力すると共に、受信制御回路101に、受信停止するように受信制御回路制御信号168を出力する。また、受信レジスタ111,112,113に、受信シフトレジスタ102出力を転送、保存するように連続受信データ保存制御信号160を出力する。
【0037】
これに対し、前記比較結果が不一致である場合には、PCまたはシリアル送信装置120から周辺機器117へ連続受信終了を要求していないと判断し、連続受信中状態S2のまま状態を移行せず、割込み発生回路114には割り込み発生許可信号159を出力しない。
【0038】
また、受信制御回路101に、PCまたはシリアル送信装置120から続けて送信されるシリアルデータ150を受信するように受信制御回路制御信号168を出力し、受信レジスタ111,112,113に、受信シフトレジスタ出力102を転送、保存するように連続受信データ保存制御信号160を出力する。
【0039】
また、受信制御回路101からの受信エラーフラグ信号167がエラーを示している場合には、ノイズ等により間違ったデータを受信した可能性があり、今まで連続受信したデータについても信頼性がないと判断し、受信レジスタ111,112,113のデータをクリアするように連続受信データ保存制御信号160を出力し、連続受信中状態S2から連続受信待ち状態S1に戻る。また、割込み発生回路114には割り込み発生許可信号159を出力せず、また、保存したシリアルデータを破棄し、再受信するように受信制御回路101に受信制御回路制御信号168を出力する。
【0040】
連続受信回数設定レジスタ104は、連続受信開始後に予め定めた受信回数で連続受信を終了するための、固定した値を保持するためのレジスタである。
【0041】
連続受信回数カウンタ103は、連続受信中状態期間に受信制御回路101から出力さる受信完了信号152をカウントする。また、受信割込み復帰制御回路106から連続受信回数カウンタ制御信号153により、連続受信待ち状態S1ではカウント値がクリアされ、連続受信終了状態S3では、カウント値を保持する。
【0042】
連続受信回数カウンタ出力155は、比較回路109で連続受信回数設定レジスタ出力156と比較される。
【0043】
その比較結果は、受信割込み復帰制御回路106に連続受信回数一致信号170として入力される。
【0044】
前記比較結果が一致した場合には、連続受信回数設定レジスタ104に設定された回数分連続受信したと判断し、連続受信中状態S2から連続受信終了状態S3に移行し、割込み発生回路114に割り込み発生許可信号159に出力すると共に、受信制御回路101に、受信停止するように受信制御回路制御信号168を出力する。
【0045】
前記比較結果が不一致であった場合は、連続受信回数設定レジスタ104に設定された回数分連続受信していないと判断し、連続受信中状態S2のまま状態移行せず、割込み発生回路114には割り込み発生許可信号159を出力しない。
【0046】
このため、例えば連続受信回数設定レジスタ104を“1回”に設定すれば、PCまたはシリアル送信装置120からのシリアル送信が1データであっても、受信を完了し停止することができる。
【0047】
クロック制御回路105は、CPU116が停止しても、連続受信動作を行えるように、受信制御回路101、受信シフトレジスタ102、連続受信回数カウンタ103、比較回路109、割込み発生回路114、受信レジスタ111,112,113、受信割込み復帰制御回路106に対して、常に安定したクロック157を供給している。
【0048】
次に、図2(b)に示すフローチャートを用いて、シリアル割込み復帰回路115の動作について説明する。
初めに、CPU116が、復帰要求設定レジスタ107、連続受信終了要求設定レジスタ108、連続受信回数設定レジスタ104、通信速度及び、シリアルデータ形式等の受信制御回路101内設定レジスタの設定、連続受信回数カウンタ103、受信割込み復帰制御回路106状態のクリア設定を行うことにより、シリアル割込み復帰回路115の初期設定を行う(201)。
【0049】
次に、CPU116はシリアル割込み復帰回路115の動作開始設定を行い、回路115を動作させる(202)。回路115が動作するとその受信制御回路101が受信を開始し始め、受信制御回路101がスタートビット検出(203)を行う。スタービット検出(203)は、スタートビットが検出できるまで繰り返し行われ、スタートビットが検出されると受信シフトレジスタ102はシリアルデータをシフトしながら1データ分(1バイト分)のデータを受信する(204)。
【0050】
1データ分の受信が完了すると、受信制御回路101によりパリティーエラーやフレーミングエラーなどの受信エラー検出(205)が行われる。エラーが発生していた場合には正しい受信ができていないので、受信割込み復帰制御回路106はその内部の状態(連続受信待ち状態S1)をクリアし(206)、また、以前の受信動作により正しくないデータを蓄積している可能性があるので、受信レジスタ111,112,113をクリアし(207)、再度スタートビット検出(203)に戻る。
【0051】
エラーが検出されなかった場合には、内部状態の判定(208)結果により動作が異なり、初期状態では連続受信待ち状態S1であるので、比較回路109は復帰要求設定レジスタ107および受信シフトレジスタ102の出力値同士の比較を行う(209)。
【0052】
これらが一致していない場合は、PCまたはシリアル送信装置120からの復帰要求ではないデータを受信したと判断し、割込み発生回路114は復帰要求割込み信号163を出力せず、再度スタートビット検出(203)を行い、復帰要求データを受信するまで以上の処理を繰り返す(連続受信待ち状態S1)。これら復帰要求設定レジスタ107および受信シフトレジスタ102の出力値同士が一致した場合は、PCまたはシリアル送信装置120からの復帰要求データRRDを受信したと判断し、受信割込み復帰制御回路106は受信シフトレジスタ102の受信データを受信レジスタ111,112,113へ転送、保存し(210)、受信回数カウンタ103のカウントアップ(211)を行い、その内部状態を連続受信待ち状態S1から連続受信中状態S2へと移行させ(212)、復帰要求割込み信号の出力(213)を行い、CPU116をパワーオン状態に復帰させる。
【0053】
次に、PCまたはシリアル送信装置120より、復帰要求データRRDを受信した後の送信データD1,D2,・・・を受信するため、受信制御回路101によりスタートビット検出(203)が行われる。スタートビットが検出されると受信シフトレジスタ102はシリアルデータをシフトしながら1データ分のデータを受信する(204)。
【0054】
1データ分の受信が完了すると、受信制御回路101によりパリティーエラーやフレーミングエラーなどの受信エラー検出が行われ(205)、エラーが発生していた場合には正しい受信ができていないので、受信割込み復帰制御回路106の内部状態、受信レジスタ111,112,113をクリアし(206)、再度スタートビット検出(203)に戻る。
【0055】
エラーが検出されなかった場合には、内部状態(208)が連続受信中状態S2であるので、受信割込み復帰制御回路106は受信シフトレジスタ102による受信データの受信レジスタ111,112,113への転送、保存(214)を行い、受信回数カウンタ103のカウントアップを行い(215)、連続受信終了要求設定レジスタ108および受信シフトレジスタ102の出力値同士の比較を行う(216)。これらが一致していない場合は、次のデータを受信するため、スタートビット検出(203)が行われる。これらが一致した場合は、比較回路109は、PCまたはシリアル送信装置120より連続受信終了要求データQRDを受信したと判断し、受信割込み復帰制御回路106は、その内部状態を連続受信中状態S2から連続受信終了状態S3へと移行し(217)、シリアル受信を停止し(218)、割込み発生回路114により連続受信終了要求割込み信号171の出力を行い(219)、CPU117に連続したシリアルデータを全て受信完了したことを知らせる。
【0056】
また、以上の受信データの比較動作と並列して、比較回路109による連続受信回数設定レジスタ104および連続受信回数カウンタ103の出力値同士の比較(220)が行われ、シリアル割込み復帰回路115が動作を開始(221)した時点から比較動作を行い続ける。これらが一致した場合は、受信割込み復帰制御回路106はその内部状態を連続受信終了状態S3に移行し(221)、シリアル受信を停止し(222)、割込み発生回路114により連続受信回数一致割込み信号172を出力させ(223)、CPU116に予め定められた回数分の連続したシリアルデータを全て受信完了したことを知らせる。
【0057】
なお、CPU116が再連続受信開始命令を発行した場合、受信割込み復帰制御回路106はその内部状態を連続受信終了状態S3から連続受信待ち状態S1に移行させ、シリアル割込み復帰回路115はスタートビット検出(203)以降の動作を繰り返す。
【0058】
次に、図3(a)の状態遷移図および図3(b)のフローチャートを用いて、本実施の形態1におけるCPU116の動作を説明する。
【0059】
図3(b)において、電源投入後、CPU116は初期動作状態S11(図3(a)参照)に移行し、CPU101の各機能の初期設定を行い(301)、シリアル割込み復帰回路115の復帰要求設定レジスタ107、連続受信終了要求設定レジスタ108、連続受信回数設定レジスタ104、受信制御回路101内設定レジスタの設定(通信速度、及び、シリアルデータ形式等)、連続受信回数カウンタ103、受信割込み復帰制御回路106の内部状態のクリア設定などを処理する。
【0060】
次に、CPU116は外部メモリ等の周辺LSI118に動作命令を指示して(302)これらを動作させることで、通常動作状態S12(図3(a)参照)に移行し、周辺装置119としての通常処理を実行する(303)。
【0061】
通常処理を実行中(303)に、外部信号や内部処理により周辺装置119に待機要求が発生した場合(304)、停止動作状態S13(図3(a)参照)に移行し、各機能の停止準備処理を行い(305)、周辺LSI118に停止命令を出力し(306)、これを停止させる。待機要求が発生しない場合(304)は、引き続き通常処理を実行する(303)。
【0062】
次にCPU116はシリアル割込み復帰回路115からの割込み信号(163,170,171,172のいずれか)を許可し(307)、シリアル割込み復帰回路115を動作させてから(308)、停止状態(待機状態,スタンバイ状態)S14(図3(a)参照)に移行し、CPU116自ら停止し、待機状態に入り(309)割込みを検出(310)しない限り待機状態を保持する。
【0063】
これに対し、割込みが検出された場合(310)は、復帰処理を行う(311)。すなわち、シリアル割込み復帰回路115は、クロック制御回路105によりCPU停止(309)中でもクロックが供給されシリアル受信が可能であり、PCまたはシリアル送信装置120より、復帰要求データが送信されるのを待ち、初期設定(301)で設定した復帰要求設定レジスタ107と比較一致したデータを受信すると復帰要求割込み信号163を出力する(図2(b)のフローチャート参照)。
【0064】
CPU116は復帰要求割込み信号163を検出した後、復帰動作状態S15(図3(a)参照)に移行し、復帰処理を行い(311)、周辺LSI118の動作命令を発行し(312)、通常処理(303)、即ち通常動作状態S12に戻る。
【0065】
シリアル割込み復帰回路115は、連続受信終了要求データを受信するかもしくは、連続受信回数設定レジスタ104に設定した連続受信回数分を受信するまで、CPU116の動作状態とは関係なく受信し続け、PCまたはシリアル送信装置120より送信された連続データを全て受信レジスタ111,112,113に転送、保存し、受信を終了した時点で連続受信終了要求割り込み信号171もしくは連続受信回数一致割込み信号172を出力する。
【0066】
CPU116は、連続受信終了要求割り込み信号171もしくは連続受信回数一致割込み信号172を検出してから受信レジスタ111,112,113にアクセスすることにより、全受信データを受け取る。
【0067】
このように、本実施の形態1によれば、外部からのシリアルデータにより周辺機器を停止状態から通常動作状態に復帰させるシステムにおいて、受信シフトレジスタと、前記受信シフトレジスタのシフト動作およびエラー検出を制御するシリアル受信制御回路と、シリアル受信を完了した前記受信シフトレジスタのデータと比較するためのデータを保持する復帰要求設定レジスタと、前記受信シフトレジスタと前記復帰要求設定レジスタを比較し復帰要求一致信号を出力する比較回路と、前記復帰要求一致信号により割込み信号を発生させる割込み発生回路と、前記復帰要求一致信号によりシリアルデータの再受信あるいは再受信の終了、前記割込み発生回路の制御、および前記受信レジスタへのデータ転送の制御を行なう受信割込み制御回路と、シリアル受信割込み回路をCPUと接続するためのインターフェースと、CPUの動作,停止に関わらず前記回路及び前記受信シフトレジスタを動作させるためのクロック制御回路とを有し、シリアルデータの受信を行うものとしたので、本構成によって、シリアル受信待受け中のみならず受信時、比較中においてもCPUを停止させることができ、不要な電力消費を削減することができる。
【0068】
また、復帰要求データであるか否かの判定を行ってからCPUをパワーオン状態に復帰させるので、ノイズや復帰要求でないシリアルデータによる誤復帰を防ぐことができる。
【0069】
さらに、CPUの動作に関係なく、受信したデータを受信レジスタに転送、保存しているので、CPUのパフォーマンスに関係なく高速受信を行える。
【0070】
なお、本実施の形態1において、受信割込み復帰制御回路106の内部状態をCPU116から読み出せるようにすれば、連続受信終了要求割込み信号171、連続受信回数一致割込み信号172は出力しなくてもよい。
【0071】
また、CPUが復帰するタイミングを連続受信終了とする場合は、復帰要求割込み信号163を出力しなくてもよい。
【0072】
また、受信レジスタを複数用意し、予め定めていた連続通信終了を意味するデータを保持するレジスタと、受信したデータと、比較する回路を追加することにより、連続した通信でもCPUのパフォーマンスに関係なく高速受信することができ、さらに連続通信回数をカウントするカウンタと、予め定めていた連続通信回数を保持するレジスタと、連続通信回数のカウント値と予め定めていた連続通信回数とを比較する比較回路とを追加することにより、連続通信終了を意味する終了要求データがない固定長の連続通信においても、CPUのパフォーマンスに関係なく高速に受信することができる。
【0073】
また、復帰要求設定レジスタ107は、1データ分に限るものではなく、送信されてくるフォーマットに従って、複数データ分用意してもよい。例えば、送信される連続データが、順に、先頭目印データ、宛先データ、データ1、データ2、最後尾目印データといったフォーマットであった場合は、復帰要求設定レジスタ107を2データ分用意し、予め先頭目印データと、宛先データを復帰要求設定レジスタ107に書きこみ、連続して比較一致動作を行えば、他の周辺機器への連続通信を受信して誤復帰を招くことを防ぐことができる。
【0074】
さらに、復帰要求となるデータが連続データの先頭に送信されない場合でも、受信したデータを常に受信レジスタへ転送、保存し、受信回数を復帰要求となるデータが送信された回数と見なして復帰要求設定レジスタ107および受信シフトレジスタ102の比較一致処理を行えばよい。
【0075】
さらに、シリアル割込み復帰回路115が持つ機能が、単発的な通信のみで通常動作状態に復帰する機能だけでよい場合は、受信レジスタ111,112,113、連続受信回数カウンタ103、連続受信回数設定レジスタ104、連続受信終了要求設定レジスタ108を削除してもよい。
【0076】
また、周辺装置はPCまたはシリアル送信装置とシリアル接続されるものとしたが、復帰要求データが付いたシリアルデータを送信できるものであれば他の外部装置に接続されるものであってもよい。
【0077】
また、マイクロコンピュータは周辺装置に内蔵されるものとしたが、PCまたはシリアル送信装置とシリアル接続されるものであれば他の機器に組み込まれるものであってもよい。
【0078】
また、シリアル割込み復帰回路はマイクロコンピュータ以外の情報処理装置に内蔵するようにしてもよい。
【0079】
さらに、CPUをマイクロプロセッサとして、シリアル割込み復帰回路をマイクロプロセッサとは別のチップに内蔵するようにしてもよい。
【0080】
また、CPUがスタンバイ状態の際にCPUとは別の回路で実行する動作は、実施の形態1で述べた、受信データの待ち受けやデータの受信、受信データと予め定められた値のデータとの比較、以外の動作であってもよい。
【産業上の利用可能性】
【0081】
以上のように、本発明にかかるシリアル割込み復帰回路は、無駄なCPU動作を削減し無駄な電力の消費を低減させること、およびCPUのパフォーマンスに関係なく高速受信を安定して行うことが可能になるもので、外部からのシリアルデータにより周辺機器を停止状態から復帰させるシステム等に用いて有用である。
【図面の簡単な説明】
【0082】
【図1(a)】本発明の実施の形態1におけるシリアル割込み復帰回路を搭載したマイクロコンピュータを有する周辺装置のブロック構成図
【図1(b)】本発明の実施の形態1におけるシリアルデータのフォーマットを示す図
【図2(a)】本発明の実施の形態1におけるシリアル割込み復帰回路の状態遷移を示す状態遷移図
【図2(b)】本発明の実施の形態1におけるシリアル割込み復帰回路の動作を示すフローチャート図
【図3(a)】本発明の実施の形態1におけるマイクロコンピュータの状態遷移を示す状態遷移図
【図3(b)】本発明の実施の形態1におけるマイクロコンピュータの動作を示すフローチャート図
【図4】従来例1におけるシリアル受信割込み復帰システムの構成図
【図5】従来例2におけるシリアル受信割込み復帰システムの構成図
【符号の説明】
【0083】
101 受信制御回路
102 受信シフトレジスタ
103 連続受信回数カウンタ
104 連続受信回数設定レジスタ
105 クロック制御回路
106 受信割込み復帰制御回路
107 復帰要求設定レジスタ
108 連続受信終了要求設定レジスタ
109 比較回路
110 インターフェース回路
111 受信レジスタ1
112 受信レジスタ2
113 受信レジスタn
114 割込み発生回路
115 シリアル割込み復帰回路
116 CPU
117 マイクロコンピュータ
118 周辺LSI
119 周辺装置
120 PCまたはシリアル送信装置
150 シリアルデータ
151 受信シフトレジスタ制御信号
152 受信完了信号
153 連続受信回数カウンタ制御信号
154 受信シフトレジスタ出力信号
155 連続受信回数カウンタ出力信号
156 連続受信回数設定レジスタ出力信号
157 クロック
158 復帰要求一致信号
159 割り込み発生許可信号
160 連続受信データ保存制御信号
161 連続受信終了要求設定レジスタ信号
162 連続受信終了要求一致信号
163 復帰要求割込み信号
164 レジスタアクセスバス
165 CPU内部バス
166 周辺LSI制御信号
167 受信エラーフラグ信号
168 受信制御回路制御信号
169 復帰要求設定レジスタ出力信号
170 連続受信回数一致信号
171 連続受信終了要求割込み信号
172 連続受信回数一致割込み信号

【特許請求の範囲】
【請求項1】
外部からのシリアルデータにより、CPUを有する周辺機器を、停止状態から通常動作状態に復帰させるシリアル割込み復帰回路において、
シリアルデータを受信するとともにシリアル/パラレル変換を行うための受信シフトレジスタと、
該受信シフトレジスタのシフト動作を制御するとともに前記受信データのエラー検出を制御する受信制御回路と、
予め定めた値を有する復帰要求データを保持する復帰要求設定レジスタと、
前記受信シフトレジスタおよび前記復帰要求設定レジスタが保持するデータ同士を比較し該データ同士が一致した旨を示す復帰要求一致信号を出力する比較回路と、
該復帰要求一致信号により割込み信号を発生する割込み発生回路と、
前記復帰要求一致信号によりシリアルデータの再受信もしくは再受信の終了を制御するとともに、前記割込み発生回路の制御を行なう受信割込み復帰制御回路と、
前記CPUの動作時および停止時に前記各回路及び前記受信シフトレジスタを動作させるためのクロックを発生するクロック制御回路とを備えた、
ことを特徴とするシリアル割込み復帰回路。
【請求項2】
請求項1に記載のシリアル割込み復帰回路において、
前記復帰要求一致信号をトリガとして、連続したシリアルデータを複数回分保持する受信レジスタを備えた、
ことを特徴とするシリアル割込み復帰回路。
【請求項3】
請求項2に記載のシリアル割込み復帰回路において、
連続したシリアルデータの受信を終了する旨の連続受信終了要求データを保持する連続受信終了要求設定レジスタを備え、
前記比較回路は、前記受信シフトレジスタおよび前記連続受信終了要求設定レジスタがそれぞれ保持するデータ同士を比較し該データ同士が一致した旨を示す連続受信終了要求一致信号を出力し、
前記割り込み発生回路は、前記連続受信終了要求一致信号により割込み信号を発生し、
前記受信割込み復帰制御回路は、前記連続受信終了要求一致信号によりシリアルデータの受信もしくは受信終了を制御するとともに、前記割込み発生回路、前記受信レジスタへのデータ転送の制御を行う、
ことを特徴とするシリアル割込み復帰回路。
【請求項4】
請求項2または3に記載のシリアル割込み復帰回路において、
前記シリアルデータを連続して受信した回数である連続受信回数をカウントする連続受信回数カウンタと、
該連続受信回数を比較するための値を保持する連続受信回数設定レジスタとを備え、
前記比較回路は、前記連続受信回数カウンタのカウント値と前記連続受信回数設定レジスタの保持データとを比較しこれらが一致した旨を示す連続受信回数一致信号を出力し、
前記割込み発生回路は、前記連続受信回数一致信号により割込み信号を発生し、
前記受信割込み復帰制御回路は、前記連続受信回数一致信号により前記シリアルデータの受信の終了の制御、前記割込み発生回路の制御を行う、
ことを特徴とするシリアル割込み復帰回路。
【請求項5】
請求項1記載ないし請求項4のいずれかに記載のシリアル割込み復帰回路と、
前記CPUとを備え、
該シリアル割込み復帰回路が前記CPUの割込み信号を出力することにより、前記CPUを停止状態から通常動作状態に復帰させることを可能とした、
ことを特徴とするマイクロコンピュータ。
【請求項6】
CPUと、
請求項1ないし請求項4のいずれかに記載のシリアル割込み復帰回路とを備え、
前記CPUが停止状態の際に、受信したシリアルデータを保持することを可能とした、
ことを特徴とするマイクロコンピュータ。
【請求項7】
請求項5に記載のマイクロコンピュータを備え、外部から予め定められた値のシリアルデータを受信することにより通常動作状態に復帰する周辺機器において、
前記CPUが停止状態の際に、前記シリアルデータの待受け、受信、比較判定を行い、通常動作状態に復帰することを可能とした、
ことを特徴とする周辺機器。
【請求項8】
請求項6に記載のマイクロコンピュータを備え、
前記CPUが停止状態の際に、外部からのシリアルデータを受信し、該シリアルデータを保持することを可能とした、
ことを特徴とする周辺機器。

【図1(a)】
image rotate

【図1(b)】
image rotate

【図2(a)】
image rotate

【図2(b)】
image rotate

【図3(a)】
image rotate

【図3(b)】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2007−102493(P2007−102493A)
【公開日】平成19年4月19日(2007.4.19)
【国際特許分類】
【出願番号】特願2005−291616(P2005−291616)
【出願日】平成17年10月4日(2005.10.4)
【出願人】(000005821)松下電器産業株式会社 (73,050)
【Fターム(参考)】