(57)【特許請求の範囲】
【請求項１】
ＣＰＵによりアクセス可能なメモリを用いて時間を計時するタイマ回路であって、
１又は複数のタイマのカウント値を記憶するメモリと、
メモリへアクセスして当該メモリに記憶されるカウント値を更新させることにより時間を計時するタイマ更新手段と、
ＣＰＵからメモリへのアクセス要求があった場合にタイマ更新手段によるメモリへのアクセスを一時停止させて、当該ＣＰＵによるメモリへのアクセスを許可するアクセス制御手段と、
ＣＰＵからメモリへのアクセス要求がなく、タイマ更新手段のカウント値が所定値になった場合は当該ＣＰＵへ割り込み信号を出力する比較手段と、
を備えたことを特徴とするタイマ回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、時間を計時するタイマ回路に関し、特に、例えばタイマの走行中（すなわち、時間の計時中）であってもＣＰＵによりタイマのカウント値を読み出すこと等が可能であり、また、例えば複数のタイマを同時に走行させること（すなわち、複数の時間を同時に計時すること）が可能なタイマ回路に関する。
【０００２】
【従来の技術】
例えばＣＰＵによりプログラム（ソフトウエア）を実行して処理を行う装置では、タイマ回路により時間をカウントして、当該処理に関する時間を管理することが行われる場合がある。
ここで、具体的な例として、ＰＤＣ（Personal Digital Cellular）のような移動通信システムの基地局装置等に備えられるタイマ回路を示す。
【０００３】
なお、このような基地局装置等では、例えばＣＰＵやメモリ等を備えたハードウエア資源においてＣＰＵがＲＯＭに格納されたプログラムを実行することにより、無線通信処理等の各種の処理が行われる。
また、一例として、基地局装置に備えられるタイマ回路では、例えば移動端末装置と一定時間以上通信した場合に強制的に当該通信を終了させるために当該移動端末装置との通信時間を計時することや、また、例えば通信相手に再送要求を発した場合に待ち時間を計時すること等が行われる。
【０００４】
図４には、このようなタイマ回路の一例を示してあり、このタイマ回路には、アドレスデコーダ２１と、データラッチ回路２２と、タイミング発生器２３と、アップカウンタ２４と、比較器２５とが備えられている。また、同図には、ＣＰＵ（図示せず）とタイマ回路とを接続するローカルバスや、ＣＰＵからのアドレス信号を伝送するアドレスバスや、ＣＰＵからのデータ信号を伝送するデータバスを示してある。
【０００５】
また、ＣＰＵとしては、例えば非同期バスで動作する（すなわち、バスサイクルがハンドシェーク方式で動作する）ものが用いられている。ハンドシェーク方式では、例えば送信側と受信側とがデータ伝送用の回路で接続されるとともにハンドシェーク用の回路で接続され、受信側がデータ受信可能な状態であるか否かを送信側が確認してデータ送信が行われる。
【０００６】
アドレスデコーダ２１は、ＣＰＵからのアドレス信号をデコード（復号）して、デコードしたアドレスが例えばメモリ空間上に割り振られたタイマのアドレスと一致した場合にデータラッチ回路２２やアップカウンタ２４やＣＰＵへ信号を出力する機能を有している。ここで、データラッチ回路２２へ出力される信号は後述するラッチ信号として用いられ、アップカウンタ２４へ出力される信号は後述するクリア信号として用いられ、ＣＰＵへ出力される信号は後述するデータアクノリッジ信号として用いられる。
【０００７】
データラッチ回路２２は、アドレスデコーダ２１から信号（ラッチ信号）が入力されたときに、ＣＰＵからデータバスを介して伝送されてくるデータをタイマによりカウントすべきカウント値（すなわち、タイマにより計時すべき時間）としてラッチする（取り込む）機能を有している。
タイミング発生器２３は、一定の時間間隔でタイミング信号をアップカウンタ２４へ出力する機能を有している。
【０００８】
アップカウンタ２４は、タイミング発生器２３からタイミング信号が入力される度毎にタイマのカウント値を１ずつカウントアップ（増加）させるとともに、アドレスデコーダ２１から信号（クリア信号）が入力されたときに当該カウント値をクリアする（例えばゼロにする）機能を有している。
比較器２５は、アップカウンタ２４によりカウントされるカウント値とデータラッチ回路２２により取得されて保持されるカウント値とを比較して、これらのカウント値が一致したときにＣＰＵへ割り込み信号を出力する機能を有している。
【０００９】
同図に示したタイマ回路の動作例を示す。
すなわち、例えばＣＰＵからメモリ空間上に割り振られたタイマのアドレスと一致するアドレス信号が出力されて当該タイマにカウントすべきカウント値が書き込まれるときには、まず、当該アドレス信号がアドレスデコーダ２１によりデコードされて、当該アドレスデコーダ２１からデータラッチ回路２２やアップカウンタ２４やＣＰＵへ信号が出力される。
【００１０】
この場合、アドレスデコーダ２１からの出力信号がデータラッチ回路２２にラッチ信号として入力されることで当該データラッチ回路２２ではＣＰＵからのデータがカウントすべきカウント値としてラッチされ、当該出力信号がアップカウンタ２４にクリア信号として入力されることで当該アップカウンタ２４ではカウント値がクリアされ、当該出力信号がＣＰＵにデータアクノリッジ信号として入力されることで当該ＣＰＵではライトサイクル（データラッチ回路２２にカウント値を書き込むサイクル）が終了させられる。
【００１１】
そして、アップカウンタ２４では、タイミング発生器２３から入力されるタイミング信号に従って、上記のようにクリアされたカウント値を１ずつカウントアップさせることが行われる。その後、比較器２５による比較によりアップカウンタ２４のカウント値とデータラッチ回路２２のカウント値とが一致したと認められたときに、カウントすべきカウント値がカウントされた（すなわち、計時すべき時間が計時された）として、比較器２５からＣＰＵへ割り込み信号が出力される。
【００１２】
ＣＰＵでは、タイマ回路から割り込み信号を受信することで、自己が設定したカウント値がカウントされた（すなわち、自己が設定した時間が計時された）ことを把握することができ、これにより、タイマ回路により管理している実行中のプログラムに割り込むこと（例えば当該プログラムの実行を停止させること）が行われる。
【００１３】
【発明が解決しようとする課題】
しかしながら、例えば上記図４に示されるような従来のタイマ回路では、アップカウンタ２４によりカウントされるカウント値をＣＰＵから読み出すことができないため、例えばタイマの走行中において、どれくらいの時間が経過しているのかをＣＰＵにより知ることができないといった不具合があった。このため、例えばタイマによる現在の経過時間をユーザ等に対して報知することができないといった不具合や、例えばタイマによる現在の経過時間を参照して当該経過時間に基づいて他の処理の実行を調整すること等ができないといった不具合があった。
【００１４】
また、例えば上記図４に示されるような従来のタイマ回路では、例えば複数のタイマを同時に走行させることが必要な場合には、同時に走行させることが必要なタイマと同じ数だけ上記図４に示されるようなタイマ回路を備えることが必要となってしまうといった不具合があった。特に、例えばプログラムの実行状況に応じて走行させるタイマの数が変化するような場合には、多くのタイマ回路を備えていても状況によってはその一部しか用いられないこともあり、効率的ではないといった不具合があった。
【００１５】
本発明は、このような従来の課題を解決するためになされたもので、例えばタイマの走行中であってもＣＰＵによりタイマのカウント値を読み出すこと等が可能であるタイマ回路を提供することを目的とする。
また、本発明は、例えば複数のタイマを同時に走行させることが可能なタイマ回路を提供することを目的とする。
【００１６】
【課題を解決するための手段】
上記目的を達成するため、本発明に係るタイマ回路では、ＣＰＵによりアクセス可能なメモリを用いて、次のようにして、時間を計時すること等を行う。
すなわち、メモリがタイマのカウント値を記憶し、タイマ更新手段がメモリへアクセスして当該メモリに記憶されるカウント値を更新させることにより時間を計時し、アクセス制御手段がＣＰＵからメモリへのアクセス要求があった場合にタイマ更新手段によるメモリへのアクセスを一時停止させて、当該ＣＰＵによるメモリへのアクセスを許可する。
【００１７】
従って、例えばタイマの走行中であっても、ＣＰＵからメモリへのアクセス要求があった場合には当該ＣＰＵによるメモリへのアクセスが許可されるため、ＣＰＵによりタイマのカウント値を読み出すこと等が可能である。また、タイマのカウント値をメモリで記憶して時間を計時する構成であるため、例えば単一のメモリにより複数のタイマのカウント値を記憶して時間を計時する構成とすることにより、複数のタイマを同時に走行させることが簡易な構成で可能になる。
【００１８】
なお、タイマ更新手段によるメモリへのアクセスが一時停止させられているときにはタイマのカウント値が更新されないこととなるため、例えば所定の時間を計時するに際してＣＰＵに許可されるメモリへのアクセス時間の総和値（すなわち、タイマ更新手段によるメモリへのアクセスが停止させられて遅れる時間の総和値）としては、例えば計時する当該所定時間と比べて微小な時間、つまり実用上で有効な程度でタイマとしての役割が果たされるような短い時間が設定される。
【００１９】
【発明の実施の形態】
本発明に係る一実施例を図面を参照して説明する。
なお、本例では、例えば上記従来例で示したのと同様な基地局装置等に備えられるタイマ回路に本発明を適用した場合を示す。
図１には、本発明に係るタイマ回路の一例を示してあり、このタイマ回路には、例えばハードディスク（ＨＤ：Hard Disk）のランダムアクセスメモリ（ＲＡＭ：Random Access Memory）１と、タイミング発生器２と、タイマ番号カウンタ３と、ＯＲ回路４と、アドレスデコーダ５と、ＣＰＵ使用判定回路６と、バスデータセレクタ７と、アドレスセレクタ８と、リードセレクタ９と、ライトセレクタ１０と、データラッチ回路１１と、減算回路（−１減算回路）１２と、減算データセレクタ１３と、比較器１４とが備えられている。
【００２０】
また、同図には、本例の基地局装置等に備えられたＣＰＵ（図示せず）とタイマ回路とを接続するローカルバスや、ＣＰＵからのデータ信号を伝送するＣＰＵデータバスや、ＣＰＵからのアドレス信号を伝送するＣＰＵアドレスバス等を示してある。また、同図には、タイマ回路に備えられた処理部を接続して信号を伝送するバスとして、ＨＤアドレスバスや、ＲＡＭアドレスバスや、ＲＡＭデータバス等を示してある。
【００２１】
また、図２はＣＰＵからＲＡＭ１へのアクセス要求がない場合における後述する各種の信号の一例を示したタイミングチャートであり、図３はＣＰＵからＲＡＭ１へのアクセス要求があった場合における後述する各種の信号の一例を示したタイミングチャートである。
【００２２】
これらの図では、（ａ）にカウンタクロック信号を示し、（ｂ）にＨＤアドレスバスを伝送する信号（ＨＤアドレスバス信号）を示し、（ｃ）にＣＰＵアドレスバスを伝送する信号（ＣＰＵアドレスバス信号）を示し、（ｄ）にＲＡＭアドレスバスを伝送する信号（ＲＡＭアドレスバス信号）を示し、（ｅ）にＣＰＵセレクト信号を示し、（ｆ）にＣＰＵ／ＨＤ判定信号を示し、（ｇ）にＨＤＵＳＥ信号を示し、（ｈ）にＨＤリード信号を示し、（ｉ）にＣＰＵリード信号を示し、（ｊ）にＲＡＭリード信号を示し、（ｋ）にデータラッチ信号を示し、（ｌ）にＨＤライト信号を示し、（ｍ）にＣＰＵライト信号を示し、（ｎ）にＲＡＭライト信号を示し、（ｏ）にＣＰＵデータバスを伝送する信号（ＣＰＵデータバス信号）を示し、（ｐ）にＲＡＭデータバスを伝送する信号（ＲＡＭデータバス信号）を示し、（ｑ）にデータアクノリッジ信号を示し、（ｒ）に＝１信号（本例では、後述するように割り込み信号として用いられている）を示し、（ｓ）に＝０信号を示してある。
【００２３】
ここで、本例では、ＨＤアドレスバスやＣＰＵアドレスバスやＲＡＭアドレスバスではＲＡＭ１のアドレスを指定するアドレス信号が伝送され、上記図２や上記図３では当該アドレスを１６進数を用いて示してある。また、本例では、ＣＰＵデータバスやＲＡＭデータバスではタイマのカウント値を示すデータ信号が伝送され、上記図２や上記図３では当該カウント値を１６進数を用いて示してある。なお、“００ｈ”や“０１ｈ”等の“ｈ”は１６進数表示であることを示す。
また、本例では、上記したアドレス信号やデータ信号以外の信号としては、２値（“Ｈ（ハイ）”と“Ｌ（ロウ）”）のデジタル信号が用いられている。
【００２４】
ＲＡＭ１は、情報を記憶する記憶媒体として用いられるメモリであり、本例では、複数のタイマのカウント値をそのメモリ空間に記憶する機能を有している。つまり、ＲＡＭ１のメモリ空間上では複数のタイマがそれぞれ異なるアドレスに割り振られており、各タイマのアドレスに対応したメモリ空間に当該各タイマのカウント値が記憶される。
【００２５】
具体的には、例えば２５６ｋバイト（ｂｙｔｅ）のメモリを用いて、各タイマの最大のカウント値を１バイト分の値（すなわち、８ビットで表現可能な最大値であり、例えば２進数で表現すると“１１１１１１１１”）とすると、単一のメモリ（本例では、ＲＡＭ１）のメモリ空間を２５６ｋ（＝２５６×１０２４）個に分割して用いることで、当該メモリにより２５６ｋ個分のタイマのカウント値を記憶することが可能である。
【００２６】
タイミング発生器２は、各種のタイミングを指示する信号を発生して出力する機能を有しており、具体的には、所定の周期ｔ毎に“Ｈ”となるカウンタクロック信号をタイマ番号カウンタ３へ出力し、当該周期ｔ毎に“Ｌ”となるＨＤリード信号をリードセレクタ９へ出力し、当該周期ｔ毎に“Ｌ”となるＨＤライト信号をＯＲ回路４へ出力し、当該周期ｔ毎に“Ｈ”となるデータラッチ信号をデータラッチ回路１１へ出力し、当該周期ｔ毎に“Ｈ”となるＣＰＵ／ＨＤ判定信号をＣＰＵ使用判定回路６へ出力する機能を有している。
【００２７】
ここで、カウンタクロック信号とＣＰＵ／ＨＤ判定信号とは同一のタイミングで“Ｈ”となる同一の信号である。
また、データラッチ信号はカウンタクロック信号と同一の信号ではあるが、カウンタクロック信号の“Ｈ”の幅（１パルスの幅）に相当する時間だけ当該カウンタクロック信号より遅延したタイミングで“Ｈ”となる信号である。
【００２８】
また、ＨＤリード信号はカウンタクロック信号が“Ｈ”となるタイミングと同一のタイミングで“Ｌ”となるが、当該“Ｌ”の幅がカウンタクロック信号の“Ｈ”の幅の２倍となっている信号である。
また、ＨＤライト信号はＨＤリード信号と同一の信号ではあるが、当該ＨＤリード信号の“Ｌ”の幅に相当する時間だけ当該ＨＤリード信号より遅延したタイミングで“Ｌ”となる信号である。
【００２９】
タイマ番号カウンタ３は、ＲＡＭ１により構成された各タイマの番号（本例では、各タイマのアドレスに相当する値）をカウンタクロック信号に従って順番にＨＤアドレスバスを介してアドレスセレクタ８へ出力する機能を有しており、具体的には、タイミング発生器２から入力されるカウンタクロック信号の立ち上がりのタイミング（すなわち、“Ｌ”から“Ｈ”へ変化するタイミング）毎にタイマの番号を１ずつ増加させて当該番号をＨＤアドレスバスへアドレス信号として出力する機能を有している。
【００３０】
つまり、タイマ番号カウンタ３からは、例えば“００ｈ”、“０１ｈ”、“０２ｈ”、…といったようにタイマの番号が順番に出力され、最大のタイマ番号（例えばＲＡＭ１により２５６ｋ個のタイマが構成された場合には２５６ｋ番目の番号）が出力された後には、再び“００ｈ”以降の番号が繰り返して出力される。
【００３１】
ＯＲ回路４は、タイミング発生器２からＨＤライト信号を入力するとともに、後述する比較器１４から＝０信号を入力し、当該＝０信号が“Ｌ”である状態ではライトセレクタ１０及び減算データセレクタ１３へ当該ＨＤライト信号を出力する一方、当該＝０信号が“Ｈ”である状態ではライトセレクタ１０及び減算データセレクタ１３へ“Ｈ”を出力する機能を有している。
【００３２】
アドレスデコーダ５は、ＣＰＵアドレスバスを介してＣＰＵからのアドレス信号を入力してデコードし、デコードしたアドレスがＲＡＭ１のメモリ空間上に割り振られた複数のタイマのアドレスのいずれかと一致したときに“Ｌ”となるＣＰＵセレクト信号をＣＰＵ使用判定回路６へ出力する機能を有している。なお、ＣＰＵセレクト信号の“Ｌ”の幅は、後述するように、例えばＣＰＵからＲＡＭ１へのアクセス要求の時間の長さに応じて決まる。
【００３３】
ＣＰＵ使用判定回路６は、タイミング発生器２からＣＰＵ／ＨＤ判定信号を入力するとともに、アドレスデコーダ５からＣＰＵセレクト信号を入力し、当該ＣＰＵ／ＨＤ判定信号の立ち上がりのタイミングで当該ＣＰＵセレクト信号が“Ｌ”であった場合にはＣＰＵからＲＡＭ１（本例では、当該ＲＡＭ１により構成されたタイマ）へのアクセス要求があったことを判定する一方、当該タイミングで当該ＣＰＵセレクト信号が“Ｈ”であった場合にはＣＰＵからＲＡＭ１へのアクセス要求がなかったことを判定する機能を有している。
【００３４】
また、ＣＰＵ使用判定回路６は、所定のＨＤＵＳＥ信号をバスデータセレクタ７とアドレスセレクタ８とリードセレクタ９とライトセレクタ１０へ出力する機能を有しているとともに、ＣＰＵからタイマへのアクセス要求があったことを判定した場合に所定のデータアクノリッジ信号を当該ＣＰＵへ出力する機能を有している。
【００３５】
ここで、ＨＤＵＳＥ信号としては、例えばＣＰＵからタイマへのアクセス要求がなかったことが判定されたＣＰＵ／ＨＤ判定信号のタイミングでは、図２中の▲１▼で示されるように、ＨＤリード信号の“Ｌ”の幅の２倍の幅を有する“Ｈ”となるとともに、ＣＰＵからタイマへのアクセス要求があったことが判定されたＣＰＵ／ＨＤ判定信号のタイミングでは、図３中の▲２▼で示されるように、（“Ｈ”とはならずに）“Ｌ”を維持する信号が用いられている。
【００３６】
また、データアクノリッジ信号としては、ＣＰＵセレクト信号が“Ｌ”となったことに応じて“Ｌ”となる一方、その後、ＣＰＵセレクト信号が“Ｈ”となったことに応じて“Ｈ”となる信号が用いられている。ここで、ＣＰＵセレクト信号の“Ｌ”から“Ｈ”への変化は、ＣＰＵがデータアクノリッジ信号を受信したことに応じてＲＡＭ１へのアクセス要求を終了することに応じて実現される。
【００３７】
バスデータセレクタ７は、ＣＰＵ使用判定回路６から入力されるＨＤＵＳＥ信号が“Ｌ”である状態のときに、ＣＰＵデータバスを介してＣＰＵから伝送されてくるデータ信号をＲＡＭデータバスを介してＲＡＭ１へ出力する機能を有している。
【００３８】
アドレスセレクタ８は、ＣＰＵ使用判定回路６から入力されるＨＤＵＳＥ信号が“Ｈ”である状態ではタイマ番号カウンタ３からＨＤアドレスバスを介して入力されるアドレス信号をＲＡＭアドレスバスを介してＲＡＭ１へ出力するように切り替える一方、当該ＨＤＵＳＥ信号が“Ｌ”である状態ではＣＰＵアドレスバスを介してＣＰＵから入力されるアドレス信号をＲＡＭアドレスバスを介してＲＡＭ１へ出するように切り替える機能を有している。
【００３９】
リードセレクタ９は、ＣＰＵ使用判定回路６から入力されるＨＤＵＳＥ信号が“Ｈ”である状態ではタイミング発生器２から入力されるＨＤリード信号をＲＡＭリード信号としてＲＡＭ１へ出力するように切り替える一方、当該ＨＤＵＳＥ信号が“Ｌ”である状態ではＣＰＵから入力されるＣＰＵリード信号をＲＡＭリード信号としてＲＡＭ１へ出力するように切り替える機能を有している。なお、ＣＰＵリード信号としては、ＣＰＵによりタイマのカウント値を読み出す（リードする）要求がある場合に“Ｌ”となる信号が用いられている。
【００４０】
ライトセレクタ１０は、ＣＰＵ使用判定回路６から入力されるＨＤＵＳＥ信号が“Ｈ”である状態ではＯＲ回路４から入力される信号をＲＡＭライト信号としてＲＡＭ１へ出力するように切り替える一方、当該ＨＤＵＳＥ信号が“Ｌ”である状態ではＣＰＵから入力されるＣＰＵライト信号をＲＡＭライト信号としてＲＡＭ１へ出力するように切り替える機能を有している。なお、ＣＰＵライト信号としては、ＣＰＵによりタイマのカウント値を書き込む（ライトする）要求がある場合に“Ｌ”となる信号が用いられている。
【００４１】
データラッチ回路１１は、タイミング発生器２から入力されるデータラッチ信号が“Ｈ”となるタイミングで、ＲＡＭ１から出力されているタイマのカウント値をラッチして、当該カウント値を減算回路１２及び比較器１４へ出力する機能を有している。
【００４２】
減算回路１２は、データラッチ回路１１から入力されるカウント値から１を減算し、当該減算結果（すなわち、１減算したカウント値）を減算データセレクタ１３へ出力する機能を有している。
減算データセレクタ１３は、例えばＯＲ回路４から入力される信号が“Ｌ”であるときに、減算回路１２から入力されたカウント値をＲＡＭデータバスを介してＲＡＭ１へ出力する機能を有している。
比較器１４は、データラッチ回路１１から入力されたカウント値が“００ｈ”であった場合には“Ｈ”となる一方、当該カウント値が他の値であった場合には“Ｌ”となる＝０信号をＯＲ回路４へ出力する機能を有している。
【００４３】
ここで、本例では、各タイマによりカウントすべき所定のカウント値（すなわち、各タイマにより計時すべき所定の時間）をＣＰＵがＲＡＭ１にアクセスして設定し、このようにして設定された各タイマのカウント値を減算回路１２等により１ずつ減少させていくことにより、各タイマにより時間を計時することが行われる。このため、本例では、データラッチ回路１１によりラッチされたタイマのカウント値が“００ｈ”であることは当該タイマに関するカウント値のカウント（すなわち、時間の計時）が完了したことを示しており、この場合には、上述のように比較器１４がＯＲ回路４へ“Ｈ”を＝０信号として出力することにより、タイミング発生器２からのＨＤライト信号がマスクされる（すなわち、ライトセレクタ１０へ出力されない）ようにしている。
【００４４】
一方、本例では、データラッチ回路１１によりラッチされたタイマのカウント値が“００ｈ”以外の値であることは当該タイマに関するカウント値のカウントが進行中であることを示しており、この場合には、上述のように比較器１４が“Ｌ”を＝０信号として出力することにより、タイミング発生器２からのＨＤライト信号がライトセレクタ１０へ出力されるようにしている。
【００４５】
また、比較器１４は、データラッチ回路１１から入力されたカウント値が“０１ｈ”であった場合には“Ｌ”となる＝１信号を割り込み信号としてＣＰＵへ出力する機能を有している。ここで、データラッチ回路１１によりラッチされたタイマのカウント値が“０１ｈ”であることは当該タイマに関するカウント値のカウントが残り１カウントで完了することを示しており、本例では、この場合に、割り込み信号がＣＰＵへ出力される構成となっている。
【００４６】
また、本例では、複数のタイマにより同時に時間を計時することが可能であり、これにより、例えばＣＰＵにより同時に実行されている複数（つまり、走行しているタイマと同数）のプログラムのそれぞれを時間管理することが行われるため、上記した割り込み信号にはいずれのタイマによる割り込みであるか（すなわち、いずれのプログラムに割り込むか）を示す情報が付加される。
【００４７】
具体的には、図示は省略したが、本例では、上記した割り込み信号が出力されるタイミングに応じてアドレスセレクタ８からのＲＡＭアドレスバス信号の値を専用のレジスタに取り込むことが行われており、当該割り込み信号を受信したＣＰＵが当該レジスタに取り込まれた値を読み出すことにより、当該ＣＰＵではタイムアウトした（すなわち、カウントが完了した）タイマがいずれであるかを把握することができるようになっている。
【００４８】
次に、本例のタイマ回路により行われる動作の一例を示す。
なお、本例のタイマ回路は、例えば上記従来例で示したように、移動端末装置との通信時間を計時する目的や、通信相手に再送要求を発した際に待ち時間を計時する目的等に用いられ、数十秒以上の所定時間を計時するために用いられる。これに対して、本例では、１カウント当たりの時間Ｔとしては例えば数百μ秒が設定されており、カウント値のカウントが多少停止させられても実用上で有効な程度でタイマとしての役割が果たされるようになっている。
【００４９】
つまり、本例では、ＣＰＵからＲＡＭ１へのアクセスとタイミング発生器２からＲＡＭ１へのアクセス（すなわち、タイマを動作させるためのアクセス）とが重なってカウント動作が停止させられたカウント数に１カウント分の時間Ｔを乗算した結果だけ時間の計時が遅れるが、このような遅れがあってもタイマとしての役割が果たされる程度で、ＣＰＵにＲＡＭ１へのアクセスが許可されるようになっている。
【００５０】
なお、カウンタクロック信号の周期ｔ（秒）とＲＡＭ１により構成されるタイマの総数ｎ（個）を用いると、各タイマの１カウント分の時間Ｔ（秒）は、Ｔ＝ｔ×ｎで表される。
また、以下では、ＲＡＭ１により構成された複数のタイマの一部或いは全部には、ＣＰＵからのアクセスによって、それぞれカウントすべき所定のカウント値（すなわち、計時すべき所定の時間）が設定されているとする。
【００５１】
まず、上記図２を参照して、ＣＰＵからＲＡＭ１へのアクセス要求がない場合におけるタイマ回路の動作の一例を示す。
すなわち、この場合には、タイミング発生器２からのカウンタクロック信号を受けたタイマ番号カウンタ３からタイマ番号が１ずつ増加させられてアドレス信号としてＲＡＭ１へ出力されることにより、当該ＲＡＭ１により構成された各タイマが順次指定される。
【００５２】
そして、或るタイマがＲＡＭ１に指定されたときの動作としては、まず、タイミング発生器２からのＨＤリード信号がＲＡＭ１へ出力されることで、当該ＲＡＭ１から当該タイマのカウント値（すなわち、指定されたアドレスに記憶されているデータ）がＲＡＭデータバスへ出力され、当該カウント値がデータラッチ信号の立ち上がりのタイミングでデータラッチ回路１１によりラッチされる。
【００５３】
このとき、比較器１４ではデータラッチ回路１１によりラッチされたカウント値が“００ｈ”或いは“０１ｈ”であるか否かが判定され、“００ｈ”であった場合には当該タイマに関するカウント値のカウントが完了したものとして“Ｈ”の＝０信号が出力されてタイミング発生器２からのＨＤライト信号がマスクされ、また、“０１ｈ”であった場合には当該タイマに関するカウント値のカウントが残り１カウントで完了するものとして“Ｌ”の＝１信号が割り込み信号としてＣＰＵへ出力される。
【００５４】
また、データラッチ回路１１によりラッチされたカウント値が比較器１４により“００ｈ”以外の値であると判定された場合には、タイミング発生器２からのＨＤライト信号がＲＡＭ１へ出力されることにより、減算データセレクタ１３から出力されるカウント値が当該タイマの更新後のカウント値としてＲＡＭ１のメモリ空間（更新前のカウント値を読み出したときと同じアドレスのメモリ空間）に上書きされる。
【００５５】
ここで、当該タイマの更新後のカウント値として上書きされるカウント値は、データラッチ回路１１によりラッチされたカウント値から減算回路１２により１を減算した値であり、つまり、このような動作により当該タイマのカウント値は１減少させられることになる。
【００５６】
以上のように、本例のタイマ回路において、ＣＰＵからのアクセス要求がない場合には、例えばＲＡＭ１により構成された１又は複数のタイマにより時間を計時することが行われ、この場合に、ＣＰＵにより設定された所定の時間の計時が完了するタイマに関しては割り込み信号が当該ＣＰＵへ出力され、また、ＣＰＵにより設定された所定の時間の計時が完了したタイマに関しては例えば当該ＣＰＵによりカウントすべき所定のカウント値（すなわち、計時すべき所定の時間）が再び設定されるまでカウント動作が停止させられる。
【００５７】
次に、上記図３を参照して、ＣＰＵからＲＡＭ１へのアクセス要求があった場合におけるタイマ回路の動作の一例を示す。
すなわち、この場合には、ＣＰＵからタイマのアドレスを指定するアドレス信号がＣＰＵアドレスバスへ出力されることによりＣＰＵセレクト信号が“Ｌ”となり、ＨＤＵＳＥ信号も共に“Ｌ”となるときには、各セレクタ７〜１０によりＣＰＵからの信号（すなわち、ローカルバスからの信号）が選択されることで、ＣＰＵからＲＡＭ１へ直接的にアクセスすることが可能になる。
【００５８】
具体的には、ＣＰＵによる書き込み動作では、例えばＣＰＵが書き込み対象となるタイマのアドレスをＣＰＵアドレスバスを介してＲＡＭ１に指定するとともに、ＣＰＵライト信号をＲＡＭ１へ出力し、また、書き込みを希望するデータ（本例では、当該タイマに設定することを希望するカウント値）をＣＰＵデータバスを介してＲＡＭ１へ出力することにより、ＲＡＭ１により構成される当該タイマに当該カウント値を書き込むことができる。
【００５９】
同様に、ＣＰＵによる読み出し動作では、例えばＣＰＵが読み出し対象となるタイマのアドレスをＣＰＵアドレスバスを介してＲＡＭ１に指定するとともに、ＣＰＵリード信号をＲＡＭ１へ出力することにより、ＲＡＭ１の指定されたアドレスから出力されるデータ（本例では、当該タイマのカウント値）をＣＰＵデータバスを介して読み出すことができる。なお、上記図３では、ＣＰＵによる書き込み動作が行われる場合の例を示したが、読み出し動作が行われる場合についても同様である。
【００６０】
また、例えば上記図３中の▲３▼で示されるように、本例では、ＣＰＵセレクト信号が“Ｌ”となったときにＨＤＵＳＥ信号が“Ｈ”であった場合には、ＣＰＵ使用判定回路６がデータアクノリッジ信号を“Ｌ”にするタイミングを当該ＨＤＵＳＥ信号が“Ｌ”になる後まで遅らせることにより、ＣＰＵのライトサイクルやリードサイクル（すなわち、ＣＰＵセレクト信号が“Ｌ”を維持する時間）を引き延ばすことが行われ、これにより、ＣＰＵでは当該ＨＤＵＳＥ信号が“Ｌ”となった後にＲＡＭ１へ直接的にアクセスすることが可能になる。
【００６１】
なお、例えば上記図３においてＨＤアドレスバス信号が“０２ｈ”であるときのように、ＣＰＵ／ＨＤ判定信号の立ち上がりのタイミングでＨＤＵＳＥ信号が“Ｌ”となるときには、タイミング発生器２からＲＡＭ１への信号が一時的に遮断されるため、上述したように、このときのタイマ（上記図３の例では“０２ｈ”番目のタイマ）のカウントは１カウント分停止させられる。
【００６２】
以上のように、本例のタイマ回路において、ＣＰＵからのアクセス要求があった場合には、当該ＣＰＵからＲＡＭ１へのアクセスが許可されて当該ＣＰＵによりタイマのカウント値の読み出しや書き込みが行われ、これに際して、ＣＰＵからＲＡＭ１へのアクセスとタイミング発生器２からＲＡＭ１へのアクセスとが重なったときにはタイミング発生器２からＲＡＭ１へのアクセスが一時的に停止させられる。
【００６３】
従って、本例のタイマ回路では、例えばタイマの走行中であっても、ＣＰＵからＲＡＭ１へのアクセス要求があった場合には当該ＣＰＵによるＲＡＭ１へのアクセスが許可されるため、当該ＣＰＵによりタイマのカウント値を読み出すことや書き込むこと等が可能である。
【００６４】
また、本例のタイマ回路では、例えば単一のＲＡＭ１により複数のタイマのカウント値を記憶して時間を計時することが行われるため、複数のタイマを同時に走行させることが簡易な構成で可能である。また、単一のＲＡＭ１のメモリ空間を複数に分割することで複数のタイマが構成されているため、例えばプログラムの実行状況に応じて走行させるタイマの数が変化するような場合であっても、当該変化に柔軟に対応することが可能である。
【００６５】
ここで、本例では、ＣＰＵによりアクセス可能であって複数のタイマのカウント値を記憶するＲＡＭ１が本発明に言うメモリに相当する。なお、本例では、メモリとしてハードディスクのＲＡＭを用いたが、メモリとしては、例えばタイマのカウント値を記憶することができるものであれば、どのようなメモリが用いられてもよい。また、本例では、好ましい態様として、単一のメモリに複数のタイマのカウント値を記憶させたが、例えば単一のメモリに１個のタイマのカウント値を記憶させてもよい。また、本例のタイマ回路では、単一のメモリを備えたが、例えば複数のメモリを備えて利用することも可能である。
【００６６】
また、本例では、上述のようにタイミング発生器２等がＲＡＭ１へアクセスして当該ＲＡＭ１に記憶されるカウント値を更新させる（本例では、１ずつ減少させる）ことにより時間を計時する機能により、本発明に言うタイマ更新手段が構成されている。なお、本例では、タイマに所定のカウント値を設定した後に当該カウント値を１ずつ減少させることで時間を計時したが、例えばカウント値を１ずつ増加させることで時間を計時すること等も可能である。
【００６７】
また、本例では、上述のようにアドレスデコーダ５等がＣＰＵからＲＡＭ１へのアクセス要求があった場合にタイマ更新手段によるＲＡＭ１へのアクセスを一時停止させて、当該ＣＰＵによるＲＡＭ１へのアクセスを許可する機能により、本発明に言うアクセス制御手段が構成されている。なお、本例では、ＣＰＵからメモリへアクセスして当該メモリに記憶されたタイマのカウント値を読み出すことや書き込むことを行ったが、例えばタイマのカウント値以外のデータがメモリに記憶される場合には、ＣＰＵからメモリへアクセスして当該データを読み出すことや書き込むことも可能である。
【００６８】
なお、本発明に係るタイマ回路の構成としては、必ずしも以上に示したものに限られず、種々な構成が用いられてもよい。
また、本発明に係るタイマ回路の適用分野としては、例えば移動通信システムの基地局装置や中継局装置や移動端末装置等に限られず、本発明は、種々な装置に適用することも可能なものである。
【００６９】
【発明の効果】
以上説明したように、本発明に係るタイマ回路によると、ＣＰＵによりアクセス可能なメモリによりタイマのカウント値を記憶して、当該カウント値を更新させることで時間を計時するに際して、ＣＰＵからメモリへのアクセス要求があった場合には必要に応じて当該更新を一時停止させて、当該ＣＰＵによるメモリへのアクセスを許可するようにしたため、例えばタイマの走行中であってもＣＰＵによりタイマのカウント値を読み出すこと等が可能であり、また、例えば単一のメモリにより複数のタイマのカウント値を記憶して時間を計時する構成として、複数のタイマを同時に走行させることが可能である。
【図面の簡単な説明】
【図１】本発明の一実施例に係るタイマ回路の一例を示す図である。
【図２】ＣＰＵからのアクセス要求がない場合のタイミングチャートである。
【図３】ＣＰＵからのアクセス要求があった場合のタイミングチャートである。
【図４】従来例に係るタイマ回路の一例を示す図である。
【符号の説明】
１・・ＲＡＭ、  ２・・タイミング発生器、  ３・・タイマ番号カウンタ、
４・・ＯＲ回路、  ５・・アドレスデコーダ、  ６・・ＣＰＵ使用判定回路、
７・・バスデータセレクタ、  ８・・アドレスセレクタ、
９・・リードセレクタ、  １０・・ライトセレクタ、
１１・・データラッチ回路、  １２・・減算回路、
１３・・減算データセレクタ、  １４・・比較器、
【図１】
0004431246.tif 000002
【図２】
0004431246.tif 000003
【図３】
0004431246.tif 000004
【図４】
0004431246.tif 000005