(57)【要約】【課題】回路規模及び消費電力を増大を招くことなく非同期の回路間でのデータの移動が可能な使い勝手のよい情報処理装置及び電子機器を提供すること。【解決手段】本情報処理装置は、第１のレジスタ２２を含み、第１の周波数で動作する第１の回路２０と、第２のレジスタ３２を含み、第１の周波数とは異なる第２の周波数で動作する第２の回路３０とを含む。前記第１の回路２０は、書き込みの開始に関連する信号を出力してから、書き込み終了通知信号を受け取るまでの期間は前記第１のレジスタ２２の値が変化しないことが保証されている第１のレジスタの値を第２の回路３０に向け出力し、前記第２の回路３０は第１の回路２０から受け取った前記第１のレジスタの値を前記第２のレジスタ３２にハンドシェイクで書き込みを行い、第２の回路２０に対し書き込み終了通知信号を出力する書き込み制御回路５０を含む。【選択図】　　　　図４
2004070703.tif 000002
【特許請求の範囲】
【請求項１】
非同期で動作する第１の回路と第２の回路を含む情報処理装置であって、
第１のレジスタを含み、第１の周波数で動作する第１の回路と、
第２のレジスタを含み、第１の周波数とは異なる第２の周波数で動作する第２の回路とを含み、
前記第１の回路は、
書き込みの開始に関連する信号を出力してから、書き込み終了通知信号を受け取るまでの間は値が変化しないことが保証できる第１のレジスタの値を第２の回路に向け出力し、
前記第２の回路は
第１の回路から受け取った前記第１のレジスタの値を前記第２のレジスタにハンドシェイクで書き込みを行い、第１の回路に対し書き込み終了通知信号を出力する書き込み制御回路を含むことを特徴とする情報処理回路。
【請求項２】
請求項１において、
第２の回路はタイマー回路であり、第２のレジスタはタイマーのカウントレジスタであることを特徴とする情報処理回路。
【請求項３】
請求項２において、
前記タイマー回路を停止させた後に第１のレジスタからカウントレジスタへの書き込みを行うように制御することを特徴とする情報処理回路。
【請求項４】
請求項２乃至３のいずれかにおいて、
前記タイマー回路が動作中は、第１のレジスタの値を書き換えないように制御することを特徴とする情報処理回路。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記第１の周波数は可変に設定可能であることを特徴とする情報処理回路。
【請求項６】
請求項１乃至５のいずれかに記載の情報処理装置と、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理装置により処理された結果を出力するため手段と、
を含むことを特徴とする電子機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置及び電子機器に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
例えばカウンタ回路を有する情報処理装置においては、カウンタ回路は所定の固定された周波数のクロックで動作するが、システム側の回路は消費電力削減の要請等から状態に応じて最適な周波数のクロックで動作するように構成されることが多い。
【０００３】
このような場合にシステム側の回路とカウンタ回路は非同期で動作する回路となるが、このように非同期で動作する回路間で値を移動させる場合、例えばシステムのレジスタ値をカウンタ回路のカウントレジスタに書き込む場合には、システム側の回路のレジスタの値が変化しているタイミングで値を拾うと正確な値をロードすることが困難である。
【０００４】
かかる問題点に対処するための、例えば途中にメタステーブル除去回路として中間フィリップフロップを設ける構成をとるものが知られている。
【０００５】
また中間フィリップフロップを設けるのを避けるために、特定のカウント値の時にソフトウエアでレジスタの値が変化しないことを保証した上でカウンタレジスタに値をロードする構成をとるものも知られている。
【０００６】
しかし前者の場合にはカウンタの桁数分の中間フィリップフロップを設けなけれなならず、回路規模及び消費電力が増大するという問題点があった。
【０００７】
また後者の場合カウンタの値が特定の値になるまで待つ必要があり使いにくい面があった。
【０００８】
本発明は以上のような問題点に鑑みてなされたものであり、その目的は、回路規模及び消費電力を増大を招くことなく非同期の回路間でのデータの移動が可能な使い勝手のよい情報処理装置及び電子機器の提供を目的とする。
【０００９】
【課題を解決するための手段】
（１）本発明は、非同期で動作する第１の回路と第２の回路を含む情報処理装置であって、
第１のレジスタを含み、第１の周波数で動作する第１の回路と、
第２のレジスタを含み、第１の周波数とは異なる第２の周波数で動作する第２の回路とを含み、
前記第１の回路は、
書き込みの開始に関連する信号を出力してから、書き込み終了通知信号を受け取るまでの間は値が変化しないことが保証できる第１のレジスタの値を第２の回路に向け出力し、
前記第２の回路は
第１の回路から受け取った前記第１のレジスタの値を前記第２のレジスタにハンドシェイクで書き込みを行い、第１の回路に対し書き込み終了通知信号を出力する書き込み制御回路を含むことを特徴とする。
【００１０】
本発明によれば書き込みリクエスト信号を出力してから、書き込み終了通知を受け取るまでの期間は、前記第１のレジスタの値を変化させないように制御されるので、途中に中間フィリップフロップを設けたり、ソフトウエアを介在させたりしなくても、第１のレジスタの値が変化しているタイミングで第１のレジスタの値を第２の回路に向け出力されることを防止することが出来る。
【００１１】
従って回路規模及び消費電力を増大を招くことなく非同期の回路間でのデータの移動が可能な使い勝手のよい情報処理装置を提供することが出来る。
【００１２】
（２）本発明の情報処理装置は、
第２の回路はタイマー回路であり、第２のレジスタはタイマーのカウントレジスタであることを特徴とする。
【００１３】
一般にカウンタ回路は所定の固定された周波数のクロックで動作するため、情報処理装置の他のブロックとは動作周波数が異なる場合が多い。従って本発明によればかかるカウンタ回路のカウントレジスタに情報処理装置の他のブロックのレジスタの値をロードする場合に有効である。
【００１４】
なお第１の回路は、別のアドレスでアクセスされる制御レジスタに含まれるタイマー動作開始／停止フラグの信号が停止状態の時に、タイマーのカウントレジスタに対する書き込みを開始に関連する信号を出力してから、書き込み終了通知信号を受け取るまでの間は一連の書き込みのサイクルが継続する事により値が変化しないことが保証できる第１のレジスタの値をタイマー回路に向け出力するようにしてもよい。
【００１５】
（３）本発明の情報処理装置は、
前記タイマー回路を停止させた後に第１のレジスタからカウントレジスタへの書き込みを行うように制御することを特徴とする。
【００１６】
本発明によればタイマー回路を停止させて書き込みを行うことで、ソフトウエアを介在させること無しに書き込みの値が不安定になる等の不具合の発生を防止することが出来る。
【００１７】
（４）本発明の情報処理装置は、
前記タイマー回路が動作中は、第１のレジスタの値を書き換えないように制御することを特徴とする。
【００１８】
例えば第１のレジスタの値が書き換えられるのをトリガとして、タイマー回路に書き込み行われる場合には、タイマー動作中に第１のレジスタの値が書き換えられると、タイマー回路への書き込み値が不安定になる等の不具合が発生する可能性がある。本発明によればかかる不具合の発生を、ソフトウエアを介在させること無しに簡単な回路構成で実現させることが出来る。
【００１９】
（５）本発明の情報処理装置は、
前記第１の周波数は可変に設定可能であることを特徴とする。
【００２０】
一般にシステム側の回路は消費電力削減の要請等から状態に応じて最適な周波数のクロックで動作するように構成されることが多い。従って本発明によればかかるシステム側のレジスタ値を非同期で動く他のブロックのレジスタに値をロードする場合に有効である。
【００２１】
（６）　上記いずれかに記載の情報処理装置と、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理装置により処理された結果を出力するため手段と、
を含むことを特徴とする。
【００２２】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【００２３】
１．情報処理装置
図１は、本実施の形態のマイクロコンピュータ（広義には情報処理装置）の構成について説明するための図である。
【００２４】
本マイクロコンピュータ（広義には情報処理装置）１０は、非同期で動作する第１の回路２０と第２の回路３０とを含む。
【００２５】
第１の回路は例えばＣＰＵ（広義には、処理回路）１０やＢＣＵ（バスコントロールユニット）２０やＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）、ＤＭＡＣ（Ｄｉｒｅｃｔ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ　Ｃｏｎｔｒｏｌｌｅｒ）、ＭＭＵ（Ｍｅｍｏｒｙ　Ｍａｎａｇｅｍｅｎｔ　Ｕｎｉｔ）、ＬＣＤ（Ｌｉｑｕｉｄ　Ｃｒｙｓｔａｌ　Ｄｉｓｐｌａｙ）ドライバ或いはＳＩＯ（Ｓｅｒｉａｌ　Ｉｎｐｕｔ　Ｏｕｔｐｕｔ）等の各種周辺回路のいずれかを含むタイマー以外のシステム回路２０である。本回路は、消費電力削減の要請等から状態に応じて最適な周波数のクロックで動作するように構成される。
【００２６】
また第２の回路はタイマー回路３０であり、本回路はカウンタレジスタ（第２のレジスタの一例）３２と書き込み制御回路５０を含む。タイマー回路のカウントレジスタにかかる部分は所定の固定された周波数のクロックで動作する。
【００２７】
しかし書き込み制御回路５０のシステム同期回路のように、システムとのインターフェース部分はシステムの周波数のクロックで動作するようにしてもよい。
【００２８】
ここにおいて書き込み制御回路５０は、第１のレジスタ２２の値を受け取りをカウンタレジスタ３２にハンドシェイクで書き込む処理を行う。
【００２９】
また第１の回路２０は、書き込みリクエスト信号を出力してから、書き込み終了通知を受け取るまでの期間は、前記第１のレジスタ２２の値を変化させないように制御する。
【００３０】
また前記タイマー回路を停止させた後に第１のレジスタ２２からカウントレジスタ３２への書き込みを行うように制御してもよい。
【００３１】
またタイマー回路３０が動作中は、第１のレジスタ２２の値を書き換えないように制御するようにしてもよい。
【００３２】
なお、図１では第１の回路の周波数が可変に制御可能である場合を例にとり説明したが、例えば第１の回路の周波数が所定の値に固定されている場合でもよい。
【００３３】
また、図１では第２の回路がタイマー回路である場合を例にとり説明したが、タイマー回路以外の場合であってもよい。
【００３４】
図２は、本実施の形態のマイクロコンピュータ（広義には情報処理装置）のタイマー回路の書き込み制御回路の構成の一例について説明するための図であり、図３は本実施の形態のタイミングチャートの一例である。
【００３５】
書き込み制御回路５０は、システム同期回路４０とタイマー同期部分４０を含む。システム同期回路４０は、タイマー回路の中でシステムの周波数と同期して動く部分であり、第１のクロック（ＢｕｓＣＬＫ）１１０に基づき動作する。またタイマー同期部分５２は、タイマーの周波数と同期して動く部分であり、第２のクロック（ＴｉｍＣＬＫ）１６０に基づき動作する。
【００３６】
ここでアドレスデコーダ４１は、タイマー回路が複数のレジスタを有する場合に、書き込み対象となるレジスタを特定するためのアドレスを入力し、デコードする。
【００３７】
第１のクロック（ＢｕｓＣＬＫ）１１０は、システムと同じ周波数のクロックであり、例えばシステムのバスのクロックである。
【００３８】
ライト信号（ＷＲＩＴＥ）１２０は、システムが第１のレジスタの値をカウントレジスタに書き込むタイミングを指示する信号で、所定のタイミングでシステム回路からタイマ回路に対して出力される。例えば第１のレジスタに対して書き込みが行われたタイミングで出力されるようにしてもよい。
【００３９】
ライトデータ１（ＷＲＩＴＥ　ＤＡＴＡ）１３０は、システム回路がタイマー回路に向け出力する第１のレジスタの値である。
【００４０】
リクエスト信号（ＲＥＱ）１４０は、フィリップフロップ回路４２から出力される、カウントレジスタ３２への書き込みタイミングを指示する信号である。
【００４１】
ライトデータ２（Ｒｅｌｏａｄ　ＤＡＴＡ）１５０は、ライトデータ１（ＷＲＩＴＥ　ＤＡＴＡ）１３０を受けてフィリップフロップ回路４３から出力されるカウントレジスタ３２への書き込み値である。
【００４２】
第２のクロック（ＴｉｍＣＬＫ）１６０は、タイマー動作用の周波数のクロックであり、第１のクロックとは周波数が異なるクロックである。
【００４３】
ライトリクエスト（ＷＲＩＴＥ　ＲＥＱ）１７０は、シンクロナイズ回路６０からカウントレジスタ３２やアクノレッジ信号出力用のフィリップフロップ３３に対して出力されるカウントレジスタ書き込みタイミング制御信号である。
【００４４】
ライトアクノレッジ（ＷＲＩＴＥ　ＡＣＫ）１９０は、カウントレジスタ３２への書き込みが行われたことを示す信号である。
【００４５】
ここでアドレス信号２００及びライト信号１２０がＯＮ（例えば’Ｈ’レベル）になると、フィリップフロップ４４はタイマー停止状態を指示するタイマー制御信号を出力する。またフィリップフロップ４２はリクエスト信号１５０をハイ状態に制御する（図３のＳ１参照）。
【００４６】
そしてシンクロナイズ回路３６は、リクエスト信号１５０を受けて第２のクロックに同期させたライトリクエスト（ＷＲＩＴＥ　ＲＥＱ）１７０を出力する（図３のＳ２，Ｓ３参照）。
【００４７】
このライトリクエスト（ＷＲＩＴＥ　ＲＥＱ）１７０はハイ状態の間、フィリップフロップ４３から出力されたライトデータ２（Ｒｅｌｏａｄ　ＤＡＴＡ）１５０が、カウントレジスタ３２に書き込まれる（図３のＳ５参照）。
【００４８】
またライトデータ２（Ｒｅｌｏａｄ　ＤＡＴＡ）１５０がカウントレジスタ３２に書き込まれるとフィリップフロップ３３から出力されるライトアクノレッジ（ＷＲＩＴＥ　ＡＣＫ）１９０はハイ状態に変化する（図３のＳ６参照）。
【００４９】
そしてシンクロナイズ回路３７は、ライトアクノレッジ（ＷＲＩＴＥ　ＡＣＫ）１９０を受けて第１のクロックに同期させた信号１５２をハイ状態にする（図３のＳ７，Ｓ８参照）。
【００５０】
また信号１５２を受けたフィリップフロップ４２はリクエスト信号（ＲＥＱ）１４０をロー状態に変化させる（図３のＳ９参照）。
【００５１】
図４は、本実施の形態の書き込み処理の動作例について説明するためのフローチャート図である。
【００５２】
まず、システムはタイマー停止コマンドを発行する（ステップＳ１０）。ここにおいて、例えば図２及び図３のライト信号がシステムはタイマー停止コマンドを発行することによってシステムからタイマー回路に向け出力されるようにしてもよい。
【００５３】
次に第１のレジスタに値が書き込まれると、タイマー回路から書き込み終了通知を受け取るまで、第１のレジスタへの書き込みを禁止状態にする（ステップＳ１０）。
【００５４】
次に、システムはタイマー回路に向け第１のレジスタの値を出力する（ステップＳ３０）。例えば図２及び図３のライトデータ１（ＷＲＩＴＥ　ＤＡＴＡ）１３０がこれに該当する。
【００５５】
第１のレジスタの値を受け取った書き込み制御回路は、タイマーカウンタに第１のレジスタの値を書き込む（ステップＳ４０）。
【００５６】
システムは、タイマー回路から書き込み終了通知を受け取ると、第１のレジスタの書き込み禁止状態を解除する。
【００５７】
２．電子機器
次に、上述したマイクロコンピュータを含む電子機器について説明する。
例えば図５（Ａ）に、電子機器の１つであるカーナビゲーションシステムの内部ブロック図を示し、図６（Ａ）に、その外観図を示す。カーナビゲーションシステムの操作はリモコン７１０を用いて行われ、ＧＰＳやジャイロからの情報に基づいて位置検出部７２０が車の位置を検出する。地図などの情報はＣＤＲＯＭ７３０（情報記憶媒体）に格納されている。メモリ７４０は画像処理や音声処理の際の作業領域になるメモリであり、生成された画像は画像出力部７５０を用いて運転者に表示される。また、生成されたカーナビゲーション用のガイド音声は、音出力部７３５を用いて運転者に出力される。マイクロコンピュータ７００は、リモコン７１０、位置検出部７２０、ＣＤＲＯＭ７３０などの情報入力源から情報を入力し、種々の処理を行い、処理後の情報を、画像出力部７５０、音出力部７３５などの出力装置を用いて出力する。
【００５８】
図５（Ｂ）に、電子機器の１つであるゲーム装置の内部ブロック図を示し、図６（Ｂ）に、その外観図を示す。このゲーム装置では、ゲームコントローラ７６０からのプレーヤの操作情報、ＣＤＲＯＭ７７０からのゲームプログラム、ＩＣカード７８０からのプレーヤ情報等に基づいて、メモリ７９０を作業領域としてゲーム画像やゲーム音を生成し、画像出力部８１０、音出力部８００を用いて出力する。
【００５９】
図５（Ｃ）に電子機器の１つであるプリンタの内部ブロック図を示し、図６（Ｃ）にその外観図を示す。このプリンタでは、操作パネル８２０からの操作情報、コードメモリ８３０及びフォントメモリ８４０から文字情報に基づいて、ビットマップメモリ８５０を作業領域として、印刷画像を生成し、プリント出力部８６０を用いて出力する。またプリンタの状態やモードを表示パネル８７０を用いてユーザに伝える。
【００６０】
なおマイクロコンピュータを適用できる電子機器としては、上記以外にも例えば、携帯電話（セルラーフォン）、ＰＨＳ、ページャ、携帯型情報端末、デジタルカメラ、ハードディスク装置、光ディスク（ＣＤ、ＤＶＤ）装置、光磁気ディスク（ＭＯ）装置、オーディオ機器、電子手帳、電子卓上計算機、ＰＯＳ端末、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、パーソナルコンピュータ、テレビ、ビューファインダ型、又はモニタ直視型のビデオテープレコーダなど種々のものを考えることができる。
【００６１】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【００６２】
また、本発明の電子機器の構成も、図５（Ａ）〜（Ｃ）、図６（Ａ）〜（Ｃ）で説明したものに限定されるものでなく、種々の変形実施が可能である
【図面の簡単な説明】
【図１】本実施の形態のマイクロコンピュータ（広義には情報処理装置）の構成について説明するための図である。
【図２】本実施の形態のマイクロコンピュータ（広義には情報処理装置）のタイマー回路の書き込み制御回路の構成の一例について説明するための図である。
【図３】本実施の形態のタイミングチャートの一例である。
【図４】本実施の形態の書き込み処理の動作例について説明するためのフローチャート図である。
【図５】マイクロコンピュータを含む電子機器のブロック図の一例を示す。
【図６】図６（Ａ）（Ｂ）（Ｃ）は、種々の電子機器の外観図の例である。
【符号の説明】
１０　マイクロコンピュータ（情報処理装置）
２０　システム回路
２２　第１のレジスタ
３０　タイマー回路
３２　カウントレジスタ
４０　システム同期回路
５０　書き込み制御回路
７００　マイクロコンピュータ
７１０　リモコン
７２０　位置検出部
７３５、８００　音出力部
７４０　メモリ
７５０、８１０　画像出力部
７７０　ＣＤＲＯＭ
７８０　カード
７９０　ＩＣメモリ
８００　音出力部
８２０　操作パネル
８３０　コードメモリ
８４０　フォントメモリ
８５０　ビットマップメモリ
８６０　プリント出力部
８７０　表示パネル
【図１】
2004070703.tif 000003
【図２】
2004070703.tif 000004
【図３】
2004070703.tif 000005
【図４】
2004070703.tif 000006
【図５】
2004070703.tif 000007
【図６】
2004070703.tif 000008