(57)【特許請求の範囲】
【請求項１】
クロツク信号に基づいて動作し、バスを介してデータを伝送する少なくとも２つ以上のデータ処理手段から上記バスに対するそれぞれの使用要求が重複して出された場合、上記データ処理手段にそれぞれ設定されている優先順位に応じて上記バスの使用を調停するバス制御方法において、
上記２つ以上のデータ処理手段のうち優先順位の低いデータ処理手段が上記バスを使用している最中に、優先順位の高いデータ処理手段からの上記使用要求を受け付けると、上記優先順位の低いデータ処理手段に対して上記バスの使用を停止させると共に上記クロツク信号の供給を停止し、かつ同時に上記優先順位の高いデータ処理手段に対して上記バスの使用を開始させる
ことを特徴とするバス制御方法。
【請求項２】
上記データ処理手段は、上記バスを介して上記データを入出力するデータ入出力部と、上記データを生成及び処理するデータ生成部とからなり、上記データ入出力部に制御信号を供給することにより上記バスにおける上記データの入出力動作を停止すると共に、上記データ生成部に対する上記クロツク信号の供給を停止する
ことを特徴とする請求項１に記載のバス制御方法。
【請求項３】
上記使用要求を受け付けた後、当該使用要求を送出した上記データ処理手段の上記優先順位を次の時点では最下位に設定する
ことを特徴とする請求項１に記載のバス制御方法。
【請求項４】
クロツク信号に基づいて動作し、バスを介してデータを伝送する少なくとも２つ以上のデータ処理手段から上記バスに対するそれぞれの使用要求が重複して出された場合、上記データ処理手段にそれぞれ設定されている優先順位に応じて上記バスの使用を調停する調停手段を有するバス制御装置において、
上記調停手段は、
上記２つ以上のデータ処理手段のうち優先順位の低いデータ処理手段が上記バスを使用している最中に、優先順位の高いデータ処理手段からの上記使用要求を受け付けると、上記優先順位の低いデータ処理手段に対して上記バスの使用を停止させると共に上記クロツク信号の供給を停止し、かつ同時に上記優先順位の高いデータ処理手段に対して上記バスの使用を開始させる
ことを特徴とするバス制御装置。
【請求項５】
上記データ処理手段は、上記バスを介して上記データを入出力するデータ入出力部と、上記データを生成及び処理するデータ生成部とからなり、
上記調停手段は上記データ入出力部に制御信号を供給することにより上記バスにおける上記データの入出力動作を停止させると共に、上記データ生成部に対する上記クロツク信号の供給を停止する
ことを特徴とする請求項４に記載のバス制御装置。
【請求項６】
上記調停手段は、上記使用要求を受け付けた後、当該使用要求を送出した上記データ処理手段の上記優先順位を次の時点では最下位に設定する
ことを特徴とする請求項４に記載のバス制御装置。
【発明の詳細な説明】
【０００１】
【目次】
以下の順序で本発明を説明する。
【０００２】
発明の属する技術分野
従来の技術
発明が解決しようとする課題（図５及び図６）
課題を解決するための手段
発明の実施の形態（図１〜図４）
発明の効果
【０００３】
【発明の属する技術分野】
本発明はバス制御方法及びバス制御装置に関し、例えばデイジタル携帯電話機のベースバンド処理部において、バスを介して複数のプロセツサから共有メモリに対してデータの読み出し又は書き込みを並列的に行うバス制御方法及びバス制御装置に適用して好適なものである。
【０００４】
【従来の技術】
従来、デイジタル携帯電話機においてはアンテナを介して受信したデータをベースバンド処理部において所定の処理を施すことによりベースバンド信号として取り出し、取り出したこれらのデータをバスを介して内部のメモリに書き込んだり、また後段の回路によつて誤り訂正やデインタリーブ処理するために一旦メモリに書き込まれたデータをバスを介して読み出すことが並列的に行われている。
【０００５】
すなわち、図５に示すように、デイジタル携帯電話機はベースバンド処理部において２種類のデータ読出用プロセツサ１及びデータ書込用プロセツサ２に対して共用の共有バス４を設け、アービタ５によつて各プロセツサ１又は２に対する共有バス４の使用権を調停することにより、１つのメモリ３に対してデータの書込みや読出しを交互に切り換えながら並列的に処理する。このようにして、共有バスシステムＢＳ１がＣＭＯＳ(Complementary Metal Oxide Semiconductor) ・ＩＣ等によつて構築されている。
【０００６】
メモリ３は、データ読出用プロセツサ１によつて読み出されるデータが格納された領域と、データ書込用プロセツサ２によつてデータが書き込まれる領域とを有し、かつ十分な記憶容量を有している。共有バス４はデータをやりとりするデータ線と、メモリ３の所定の記憶領域から所望のデータを読み出すとき、又は所望の記憶領域にデータを書き込むときのアドレス情報をやりとりするアドレス線と、データ及びアドレス情報の受渡しタイミングや、読み出し又は書き込みの指定を行うコントロール信号をやりとりする制御線とから構成されている。
【０００７】
【発明が解決しようとする課題】
図５の共有バスシステムＢＳ１において、メモリ３からデータを読み出したり、メモリ３にデータを書き込んだりする際に、各プロセツサ１又は２は共有バス４の使用を承認するアクノリツジ信号 Ack１又は Ack２がアービタ５からそれぞれ与えられるまで、読出し処理又は書込み処理を行わずに待ち受け、すなわちアイドル状態で待機する。
【０００８】
これに対して、アービタ５はデータ読出用プロセツサ１又はデータ書込用のプロセツサ２から共有バス４のドライブを要求するリクエスト信号 Req１又は Req２をアービタ５が受け付けると、アクノリツジ信号 Ack１又は Ack２を各プロセツサ１又は２にそれぞれ設定された優先順位に応じて供給することにより、各プロセツサ１又は２に対する共有バス４のドライブを制御する。
【０００９】
プロセツサ１及び２は、内部にアービトレーシヨン回路（図示せず）を有し、アービタ５からアクノリツジ信号 Ack１及び Ack２が供給されると、オシレータ（ＯＳＣ）６から供給されるシステムクロツクＣＬＫに基づいてデータの読出し処理及び書込み処理を開始し、アクノリツジ信号 Ack１及び Ack２が供給されなくなるとシステムクロツクＣＬＫに基づいてデータの読出し処理及び書込み処理を終了する。
【００１０】
続いて、共有バスシステムＢＳ１において各プロセツサ１及び２による共有バス４のドライブ切換タイミングについて図６を用いて説明する。ここでは、各プロセツサ１及び２はオシレータ６から供給されるシステムクロツクＣＬＫが立ち上がるタイミングでそれぞれリクエスト信号 Req１及び Req２を出力し、アービタ５においては各プロセツサ１及び２からのリクエスト信号 Req１及び Req２の有無を判定し、これを受け付けるとシステムクロツクＣＬＫが立ち下がるタイミングでアクノリツジ信号 Ack１及び Ack２をそれぞれ各プロセツサ１及び２に供給する。これにより、各プロセツサ１及び２はアービタ５からアクノリツジ信号 Ack１及び Ack２をそれぞれ受け取ると、次のシステムクロツクＣＬＫが立ち上がるタイミングで共有バス４のドライブを開始してメモリ３に対してデータの読出し処理又は書込み処理を実行する。
【００１１】
実際上、まずデータ読出用プロセツサ１がシステムクロツクＣＬＫの時点ｔ１におけるタイミングで共有バス４のドライブを要求するリクエスト信号 Req１を立ち上げる。アービタ５はリクエスト信号 Req１が立ち上がつたことを確認すると、時点ｔ２のタイミングでプロセツサ１に対する共有バス４のドライブを承認するアクノリツジ信号 Ack１を立ち上げる（処理Ｑ１）。
【００１２】
データ読出用プロセツサ１はアクノリツジ信号 Ack１が立ち上がつたことを確認すると、共有バス４の使用権が与えられたと判断し、時点ｔ３のタイミングで共有バス４のドライブを開始し、アドレス情報 Ads１、コントロール信号 Ctl１をメモリ３に送出することにより、指定されたアドレス領域から所望のデータＤ１を読み出す（処理Ｑ２）。
【００１３】
データ読出用プロセツサ１が共有バス４をドライブしてメモリ３からデータＤ１を読み出している最中に、データ読出用プロセツサ１よりも優先順位の高いデータ書込用プロセツサ２によつて共有バス４のドライブを要求するリクエスト信号 Req２が時点ｔ３のタイミングで立ち上がると、アビータ５はリクエスト信号 Req２が立ち上がつたことを確認し、データ読出用プロセツサ１に対するアクノリツジ信号 Ack１を時点ｔ４のタイミングで立ち下げる（処理Ｑ３）。
【００１４】
データ読出用プロセツサ１はアクノリツジ信号 Ack１が立ち下がつたことを確認すると、時点ｔ５のタイミングで共有バス４のドライブを停止してデータＤ１の読み出しを中断することにより、共有バス４を開放すると共にリクエスト信号 Req１を立ち下げる（処理Ｑ４）。
【００１５】
次に、アービタ５はリクエスト信号 Req１が立ち下がつたことを確認すると、時点ｔ６のタイミングでデータ書込用プロセツサ２に対するアクノリツジ信号 Ack２を立ち上げる（処理Ｑ５）。データ書込用プロセツサ２はアクノリツジ信号 Ack２が立ち上がつたことを確認すると、共有バス４の使用権が与えられたと判断し、時点ｔ７のタイミングで共有バス４のドライブを開始し、アドレス情報 Ads２、コントロール信号 Ctl２をメモリ３に送出することにより、指定されたアドレス領域にデータＤ２を新たに書き込む（処理Ｑ６）。
【００１６】
このとき、データ読出用プロセツサ１はメモリ３からデータＤ１の読出し処理が途中の状態で中断させられてしまつており、完全に終了したわけではないので、データ書込用プロセツサ２によるデータＤ２の書込み処理が終了した後に引き続きデータＤ１の読出し処理を再開するために時点ｔ７においてリクエスト信号 Req１を再度立ち上げておく。
【００１７】
データ書込用プロセツサ２はメモリ３に対するデータＤ２の書込み処理が終了すると、時点ｔ９のタイミングでリクエスト信号 Req２を立ち下げる（処理Ｑ７）。アービタ５はリクエスト信号 Req２が立ち下がつたことを確認すると同時に、再度リクエスト信号 Req１が立ち上がつていることを確認すると、時点ｔ１０のタイミングでデータ読出用プロセツサ１に対するアクノリツジ信号 Ack１を立ち上げると共に、データ書込用プロセツサ２に対するアクノリツジ信号 Ack２を立ち下げる（処理Ｑ８）。
【００１８】
データ読出用プロセツサ１はアクノリツジ信号 Ack１が立ち上がつたことを確認すると、時点ｔ１１のタイミングで共有バス４のドライブを開始し、メモリ３から残りのデータＤ１の読出し処理を再開する（処理Ｑ９）。データ読出用プロセツサ１はメモリ３からデータＤ１を全て読み出し終ると、時点ｔ１３のタイミングでリクエスト信号 Req１を立ち下げる。アービタ５はリクエスト信号 Req１が立ち下がつたことを確認すると、データ読出用プロセツサ１に対するアクノリツジ信号 Ack１を時点ｔ１４のタイミングで立ち下げて処理を全て終了する。
【００１９】
このように、図５及び図６の共有バスシステムＢＳ１によれば、各プロセツサ１及び２がアービタ５から供給されるアクノリツジ信号 Ack１及び Ack２をそれぞれ確認した後、次のシステムクロツクＣＬＫの立ち上がりタイミングで共有バス４のドライブを開始するようになされていることにより、データ読出用プロセツサ１の共有バス４に対するドライブが終了すると同時にデータ書込用プロセツサ２のドライブを開始させることができなかつた。
【００２０】
すなわち、共有バスシステムＢＳ１においてはデータ読出用プロセツサ１とデータ書込用プロセツサ２のドライブを切り換える際に１クロツク分（時点ｔ５〜時点ｔ７、時点ｔ９〜時点ｔ１１）の時間的なロス（以下、これをアービトレーシヨンロスと呼ぶ）が生じて共有バス４を効率良くドライブすることができないという問題があつた。
【００２１】
また、共有バスシステムＢＳ１はデータ読出用プロセツサ１とデータ書込用プロセツサ２のドライブ切り換え時に生じるアービトレーシヨンロスの間にも、各プロセツサ１及び２においてはオシレータ６から供給されるシステムクロツクＣＬＫに基づいて内部でデータの生成及び処理が行われており、アービトレーシヨンロスの分だけ無駄な消費電力が増大するという問題があつた。
【００２２】
本発明は以上の点を考慮してなされたもので、低消費電力で効率良くバスの使用を制御し得るバス制御方法及びバス制御装置を提案しようとするものである。
【００２３】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、クロツク信号に基づいて動作し、バスを介してデータを伝送する少なくとも２つ以上のデータ処理手段からバスに対するそれぞれの使用要求が重複して出された場合、データ処理手段にそれぞれ設定されている優先順位に応じてバスの使用を調停するに当つて、２つ以上のデータ処理手段のうち優先順位の低いデータ処理手段がバスを使用している最中に、優先順位の高いデータ処理手段からの使用要求を受け付けると、優先順位の低いデータ処理手段に対してバスの使用を停止させると共にクロツク信号の供給を停止し、かつ同時に優先順位の高いデータ処理手段に対してバスの使用を開始させるようにする。
【００２４】
このように、優先順位の高いデータ処理手段の割り込みが入つたときに、優先順位の低いデータ処理手段に対してバスの使用を停止させると共にクロツク信号の供給を停止し、かつ同時に優先順位の高いデータ処理手段に対してバスの使用を開始させることにより、バスの使用切り換え時に無駄な時間がかかることなく当該バスを効率良く切り換えて使用し得ると共に、バスの使用を停止した優先順位の低いデータ処理手段に対するクロツク信号の供給を停止したことにより無駄な電力消費を防止できる。
【００２５】
【発明の実施の形態】
以下図面について、本発明の一実施の形態を詳述する。
【００２６】
図５との対応部分に同一符号を付して示す図１において、ＢＳ１０は全体として本発明の共有バスシステムを示し、メモリ３、共有バス４及びオシレータ６に関してはバス制御装置ＢＳ１（図５）と同様に構成されている。この共有バスシステムＢＳ１０においては、データ読出用プロセツサ１１及びデータ書込用プロセツサ１２がシステムクロツクＣＬＫと同期したクロツクＣＬＫ１１及び１２の立ち上がつたタイミングでリクエスト信号 Req１１及び Req１２をそれぞれアービタ１５に出力すると、アービタ１５はそのクロツクＣＬＫ１１及び１２（システムクロツクＣＬＫ）の立ち下がつたタイミングでアクノリツジ信号 Ack１１及び Ack１２を各プロセツサ１１及び１２にそれぞれ供給する。
【００２７】
各プロセツサ１１及び１２がクロツクＣＬＫ１１及び１２の立ち上がつたタイミングでそれぞれ出力したリクエスト信号 Req１１及び Req１２は、そのクロツクの立ち下がつたタイミングでは既にアービタ１５に受け付けられた状態になつており、これにより各プロセツサ１１及び１２はアービタ１５に受け付けられると同時に共有バス４のドライブを開始し得るようになされている。
【００２８】
従つて、データ読出用プロセツサ１１はアービタ１５からアクノリツジ信号 Ack１１を受け取ることにより共有バス４のドライブを開始し、アドレス情報 Ads１１、コントロール信号 Ctl１１をメモリ３に出力して指定した領域から指定したタイミングでデータＤ１１を読み出す。また、データ書込用プロセツサ１２はアービタ１５からアクノリツジ信号 Ack１２を受け取ることにより共有バス４のドライブを開始し、アドレス情報 Ads１２、コントロール信号 Ctl１２をメモリ３に出力して指定した領域にデータＤ１２を書き込む。
【００２９】
ここで、各プロセツサ１１及び１２はアービタ１５から供給されるクロツクＣＬＫ１１及び１２に基づいて内部でアドレス情報 Ads１１及び１２やコントロール信号 Ctl１１及び１２の各種データを生成したり、メモリ３から読み出されたデータＤ１１に基づいて所定の処理を施すようになされている。
【００３０】
次に、本発明の共有バスシステムＢＳ１０においてアービタ１５がデータ読出用プロセツサ１１及びデータ書込用プロセツサ１２による共有バス４のドライブ切換を制御する際の原理を説明する。実際上、図２に示すように、共有バスシステムＢＳ１０におけるタイミングチヤートでは、まずデータ読出用プロセツサ１１がアービタ１５から供給されるクロツクＣＬＫ１１の時点ｔ１におけるタイミングで共有バス４のドライブを要求するリクエスト信号 Req１１を立ち上げる。
【００３１】
アビータ１５はリクエスト信号 Req１１が立ち上がつたことを確認すると、システムクロツクＣＬＫの時点ｔ２のタイミングでデータ読出用プロセツサ１１に対して共有バス４のドライブを承認するアクノリツジ信号 Ack１１を立ち上げる（処理Ｐ１）。このとき、アビータ１５はアクノリツジ信号 Ack１１を立ち上げると同時に、データ読出用プロセツサ１１に対して共有バス４のドライブを開始させ、アドレス情報 Ads１１、コントロール信号 Ctl１１をメモリ３に出力させることにより指定した領域からデータＤ１１を読み出させる（処理Ｐ２）。
【００３２】
データ読出用プロセツサ１１が共有バス４をドライブしてメモリ３からデータＤ１１を読み出している最中に、データ読出用プロセツサ１１よりも優先順位の高いデータ書込用プロセツサ１２から共有バス４のドライブを要求するリクエスト信号 Req１２が立ち上がると、アビータ１５は、リクエスト信号 Req１２が立ち上がつたことを確認し、データ読出用プロセツサ１１に対するアクノリツジ信号 Ack１１をシステムクロツクＣＬＫの時点ｔ４のタイミングで立ち下げると共にプロセツサ１１に対するクロツクＣＬＫ１１の供給を１クロツク分（破線で示す）だけ停止し、かつ同時にデータ書込用プロセツサ１２に対するアクノリツジ信号 Ack１２を立ち上げる（処理Ｐ３）。
【００３３】
これにより、データ読出用プロセツサ１１はクロツクＣＬＫ１１の停止によつて内部でアドレス情報 Ads１１やコントロール信号 Ctl１１の生成及び読み出したデータＤ１１に対する処理を停止して、アービタ１５からクロツクＣＬＫ１１が供給されるまで電力消費の伴わない待ち受け状態に移る。ここで、データ読出用プロセツサ１１はデータＤ１１の読出し処理が途中で中断した状態であるので、データ書込用プロセツサ１２によるデータＤ１２の書込み処理が終了した時点で再度読出し処理を再開するために、リクエスト信号 Req１１を立ち上げた状態で保持しておく。
【００３４】
このとき、データ書込用プロセツサ１２はアクノリツジ信号 Ack１２が立ち上がつた時点ｔ４のタイミングで共有バス４のドライブを開始し、アドレス情報 Ads１２、コントロール信号 Ctl１２をメモリ３に出力することにより指定した領域にデータＤ１２を新たに書き込む（処理Ｐ４）。
【００３５】
この場合、データ書込用プロセツサ１２は１クロツク分のアクセスによつてデータＤ１２の書込み処理が終了するので、予め時点ｔ５のタイミングでリクエスト信号 Req１２（時点ｔ３〜ｔ５）を立ち下げる。これにより、アービタ１５はリクエスト信号 Req１２が立ち下がつたことを確認し、データ書込用プロセツサ１２に対するアクノリツジ信号 Ack１２を時点ｔ６のタイミングで立ち下げると共に、データ読出用プロセツサ１１に対するアクノリツジ信号 Ack１１を立ち上げる（処理Ｐ５）。
【００３６】
これにより、データ書込用プロセツサ１２はアクノリツジ信号 Ack１２が立ち下がつたと同時に共有バス４のドライブを停止し、データＤ１２の書込み処理を終了して共有バス４を開放すると同時に、データ読出用プロセツサ１１が共有バス４のドライブを開始してアドレス情報 Ads１１、コントロール信号 Ctl１１をメモリ３に出力して指定した領域から残り分のデータＤ１１を再度読み出す（処理Ｐ６）。このとき、データ読出用プロセツサ１１は２クロツク分のアクセスによつてデータＤ１１の読出し処理が終了するので、予め時点ｔ７のタイミングでリクエスト信号 Req１１を立ち下げる。
【００３７】
すなわち、データ読出用プロセツサ１１はクロツクＣＬＫ１１の時点ｔ１〜時点ｔ７における３クロツク分のうち時点ｔ５〜時点ｔ７の１クロツク分の供給がアービタ１５によつて停止されていたことにより、合計で２クロツク分のリクエスト信号 Req１１が立ち上がつていたことになる。従つて、アービタ１５は時点ｔ７のタイミングでリクエスト信号 Req１１が立ち下がつたことを確認すると、時点ｔ８のタイミングでアクノリツジ信号 Ack１１を立ち下げる（処理Ｐ７）。これにより、データ読出用プロセツサ１１はアクノリツジ信号 Ack１１が立ち下がつたと同時にデータＤ１１の読出し処理を全て終了する。
【００３８】
次に、このようにアービタ１５から送られてくるアクノリツジ信号 Ack１１及び Ack１２を入力すると同時にデータを速やかに出力するように構成された各プロセツサ１１及び１２の内部構成を図３を用いて説明する。ここでは、プロセツサ１１及び１２は内部構成が同じであるので、データ読出用プロセツサ１１について説明し、データ書込用プロセツサ１２についても同様とする。
【００３９】
図３に示すように、プロセツサ１１（１２）は内部にデータ生成部１１Ａ（１２Ａ）とデータ入出力部１１Ｂ（１２Ｂ）を有する。データ生成部１１Ａ（１２Ａ）はアービタ１５から供給されるクロツクＣＬＫ１１（１２）に基づいて各種データ（アドレス情報 Ads１１（１２）、コントロール信号 Ctl１１（１２）及び書き込みデータＤ１２等）の生成及びメモリ３から読み出したデータＤ１１の処理を施すようになされている。データ入出力部１１Ｂ（１２Ｂ）は、アービタ１５から供給されるアクノリツジ信号 Ack１１（ Ack１２）を入力すると同時に、各種データを共有バス４を介してメモリ３に出力したり、またメモリ３から読み出したデータＤ１１を入力するようになされている。
【００４０】
データ生成部１１Ａ（１２Ａ）は共有バス４の使用要求を示すリクエスト信号 Req１１（ Req１２）を出力する出力ポート２１、アビータ１５から供給されるクロツクＣＬＫ１１（ＣＬＫ１２）を入力する入力ポート２２、アドレス情報 Ads１１（ Ads１２）を出力する出力ポート２３、読み出し（又は書き込み）の指定及び読出し（又は書込み）タイミングの指定を行うコントロール信号 Ctl１１（ Ctl１２）を出力する出力ポート２４、コントロール信号 Ctl１１（ Ctl１２）に応じた選択信号Ｓ１（２）を出力する出力ポート２５、メモリ３から読み出されたデータＤ１１を入力する（又はメモリ３に書き込むデータＤ１２を出力する）入出力ポート２６が設けられている。
【００４１】
データ入出力部１１Ｂ（１２Ｂ）は、出力ポート２３に接続されたバツフア２９、出力ポート２４に接続されたバツフア３２、出力ポート２５に一方の入力端が接続されたアンドゲート３４、入出力ポート２６に接続されアンドゲート３４のアンド出力を制御信号として動作するバツフア３５、及び入出力端３６及び入出力ポート２６に接続されたバツフア３７とから構成されている。
【００４２】
従つて、プロセツサ１１（１２）はアービタ１５から供給されるクロツクＣＬＫ１１（ＣＬＫ１２）を入力端２８から入力ポート２２を介してデータ生成部１１Ａ（１２Ａ）に入力する。また、プロセツサ１１（１２）はリクエスト信号 Req１１（ Req１２）をデータ生成部１１Ａ（１２Ａ）から出力ポート２１、出力端２７を介してアービタ１５に出力する。
【００４３】
この場合、プロセツサ１１（１２）はリクエスト信号 Req１１（ Req１２）を出力した時点で各種データをバツフア２９、３２に保持しておくことにより、アービタ１５からのアクノリツジ信号 Ack１１（ Ack１２）を入力すると同時に、データ入出力部１１Ｂ（１２Ｂ）からアドレス情報 Ads１１（ Ads１２）、コントロール信号 Ctl１１（ Ctl１２）等の各種データを出力できるようになされている。
【００４４】
すなわち、プロセツサ１１（１２）は入力ポート３０を介してアクノリツジ信号 Ack１１（ Ack１２）が入力されることにより、データ入出力部１１Ｂ（１２Ｂ）のバツフア２９に保持されているアドレス情報 Ads１１（１２）を出力端３１から共有バス４を介してメモリ３に出力する。実際上、データ生成部１１Ａはアドレス情報 Ads１１（１２）のビツト数と同数分の出力ポート２３を複数有するパラレルポートでなり、アクノリツジ信号 Ack１１（１２）に基づいて各ビツト毎に並列してアドレス情報 Ads１１（１２）を出力するようになされている。
【００４５】
また同様に、プロセツサ１１（１２）は入力ポート３０を介してアクノリツジ信号 Ack１１（ Ack１２）が入力されることにより、データ入出力部１１Ｂ（１２Ｂ）のバツフア３２に保持されているコントロール信号 Ctl１１（１２）を出力端３３から共有バス４を介してメモリ３に出力する。因みに、データＤ１１を読み出す場合のコントロール信号 Ctl１１は「０」、データＤ１２を書き込む場合のコントロール信号 Ctl１２は「１」として出力される。
【００４６】
さらに、プロセツサ１１（１２）はデータＤ１１（Ｄ１２）のビツト数と同数分の入出力ポート２６、バツフア３５、３７及び入出力端３６が設けられており、各ビツト毎にパラレルにデータＤ１１（Ｄ１２）を入出力し得るようになされている。
【００４７】
ところで、データ読出用プロセツサ１１が読出し処理を行う場合にはリクエスト信号 Req１１を出力ポート２１及び出力端２７から出力すると共に、読出しを示す選択信号Ｓ１（例えば「０」）を出力ポート２５を介してアンドゲート３４の他方の入力端に送出する。この場合、アンドゲート３４はアクノリツジ信号 Ack１１が立ち上がつた「Ｈ」レベルであるのに対して、選択信号Ｓ１は立ち下がつた「Ｌ」レベルであるのでアンド出力を出力せず、データ入出力部１１Ｂ（１２Ｂ）としてはアドレス情報 Ads１１とコントロール信号 Ctl１１だけをメモリ３に出力する。これにより、データ読出用プロセツサ１１はアドレス情報 Ads１１及びコントロール信号 Ctl１１に基づいてメモリ３から読み出されたデータＤ１１を入出力端３６及びバツフア３７を介して入出力ポート２６からデータ生成部１１Ａに取り込むようになされている。
【００４８】
一方、データ書込用プロセツサ１２が書込み処理を行う場合にはリクエスト信号 Req１２を出力ポート２１及び出力端２７から出力すると共に、アドレス情報 Ads１２をバツフア２９に、コントロール信号 Ctl１２をバツフア３２に、メモリ３に書き込むためのデータＤ１２をバツフア３５に保持しておく。このとき、データ生成部１１Ａは書込みを示す選択信号Ｓ２（例えば「１」）を出力ポート２５を介してアンドゲート３４に送出する。これにより、データ書込用プロセツサ１２は入力ポート３０を介してアクノリツジ信号 Ack１２がアンドゲート３４の一方の入力端に入力されると、当該アクノリツジ信号 Ack１２と選択信号Ｓ２とによつて出力されるアンド出力に基づいてバツフア３５から入出力端３６を介してデータＤ１２を出力するようになされている。
【００４９】
このように、各プロセツサ１１及び１２は内部にデータ生成部１１Ａ及び１２Ａ、データ入出力部１１Ｂ及び１２Ｂを有し、当該データ入出力部１１Ｂ及び１２Ｂにアクノリツジ信号 Ack１１及び Ack１２を入力すると同時に、データ入出力部１１Ｂ及び１２Ｂに保持されている各種データを共有バス４を介してメモリ３に出力するようにしたことにより、アービタ１５がアクノリツジ信号 Ack１１及び Ack１２を立ち上げるタイミングと同時にデータ読出用プロセツサ１１によるデータＤ１１の読出し処理やデータ書込用プロセツサ１２によるデータＤ１２の書込み処理を実行させるようになされている。
【００５０】
また、共有バスシステムＢＳ１０においては、データ書込用プロセツサ１２がデータＤ１２をメモリ３に書き込んでいる最中に、アービタ１５から優先順位の低いデータ読出用プロセツサ１１のデータ入出力部１１Ｂに対するアクノリツジ信号 Ack１１の供給が停止されると共に、データ生成部１１Ａに対するクロツクＣＬＫ１１の供給が停止される。これにより、データ読出用プロセツサ１１は共有バス４をドライブしていない間に、クロツクＣＬＫ１１の供給が停止されているので、データ生成部１１Ａにおいて各種データの生成及び処理を無駄に行うことなく、消費電力を低減させるようになされている。続いて、各プロセツサ１１及び１２の内部における処理を図４のタイミングチヤートを用いて説明する。
【００５１】
図４（Ａ）〜（Ｅ）の各種データのタイミングチヤートに示すように、例えばリクエスト信号 Req１２が立ち上がつているときには、データＤ１２を書き込むためのアドレス情報 Ads１２がバツフア２９に、コントロール信号 Ctl１２がバツフア３２に、データＤ１２がバツフア３５にそれぞれ保持されている。従つて、アクノリツジ信号 Ack１２が立ち上がることにより、データ書込用プロセツサ１２は共有バス４のドライブを開始し、これらを有効なデータ（Valid ）としてメモリ３に出力してデータＤ１２を書き込む。
【００５２】
また、リクエスト信号 Req１１が立ち上がつているときにはデータＤ１１を読み出すためのアドレス情報 Ads１１がバツフア２９に、コントロール信号 Ctl１１がバツフア３２にそれぞれ保持された状態であり、アクノリツジ信号 Ack１１が立ち上がることにより、データ読出用プロセツサ１１は共有バス４のドライブを開始する。データ読出用プロセツサ１１はアドレス情報 Ads１１及びコントロール信号 Ctl１１をメモリ３に出力し、所定のタイミングでデータＤ１１を読み出すことにより、読み出されたデータＤ１１が送られてくるまでの僅かな時間差（図４中に示される無効なデータ（Invalid ）部分Inv1）の後に入出力端３６、バツフア３７及び入出力ポート２６を介してデータ生成部１１Ａに取り込む。
【００５３】
以上の構成において、共有バスシステムＢＳ１０はアービタ１５がクロツクＣＬＫ１１及び１２の立ち上がつたタイミングで各プロセツサ１１及び１２から送られてきたリクエスト信号 Req１１及び１２を確認すると、そのクロツクＣＬＫ１１及び１２の立ち下がつたタイミングでリクエスト信号 Req１１及び１２を受け付けたことを意味するアクノリツジ信号 Ack１１及び１２を各プロセツサ１１及び１２にそれぞれ供給する。
【００５４】
各プロセツサ１１及び１２はアービタ１５からそれぞれ供給されたアクノリツジ信号 Ack１１及び１２がデータ入出力部１１Ｂに入力した時点で、アドレス情報 Ads１１及び１２、コントロール信号 Ctl１１及び１２をすぐに出力できるように構成されていることにより、当該アクノリツジ信号 Ack１１及び１２の立ち上がりと同時に共有バス４のドライブを開始できると共に、アクノリツジ信号 Ack１１及び１２の立ち下がりと同時に共有バス４のドライブを停止することができる。
【００５５】
これにより、アービタ１５はデータ読出用プロセツサ１１とデータ書込用プロセツサ１２による共有バス４のドライブ開始及び停止動作を同時に行うことができ、かくして従来の共有バスシステムＢＳ１においてデータ読出用プロセツサ１とデータ書込用プロセツサ２との間で共有バス４のドライブを切り換える際に生じていたアービトレーシヨンロスを無くして共有バス４を効率良くドライブすることができる。
【００５６】
従つて、共有バスシステムＢＳ１０はアービトレーシヨンロスが生じないので、複数のプロセツサを用いて共有バス４のドライブを切り換えて処理を行つた場合でも各プロセツサの合計の消費電力と、１台のプロセツサにより単独処理を行つた場合の合計の消費電力とは同じになる。かくして、共有バスシステムＢＳ１０はプロセツサ数を増やしてもシステムとしての性能低下は生じない。
【００５７】
また、共有バスシステムＢＳ１０はアービタ１５によつてデータ読出用プロセツサ１１に対するアクノリツジ信号 Ack１１を立ち下げると共に、データ生成部１１Ａに対するクロツクＣＬＫ１１の供給を停止するようにしたことにより、データ読出用プロセツサ１１が共有バス４のドライブを停止している間にデータ生成部１１Ａにおける処理が無駄に行われることなく消費電力を低減することができる。従つて、共有バスシステムＢＳ１０としてはアービタ１５によつてアービトレーシヨンロスを無くすと共に、共有バス４のドライブを停止しているデータ読出用プロセツサ１１に対するクロツクＣＬＫ１１の供給を停止したことにより、アービトレーシヨンロスの分と合わせて消費電力をさらに低減させることができる。かくして、携帯電話機において消費電力を低減でき電池の長寿命化を図ることができる。
【００５８】
さらに、共有バスシステムＢＳ１０は各プロセツサ１１及び１２による共有バス４のドライブをアービタ１５からのアクノリツジ信号 Ack１１及び１２によつて制御するようにしたことにより、従来の各プロセツサ１及び２の内部に設けられていたアービトレーシヨン回路が不要になり、その分システムの簡素化及び小型化を図ることができる。
【００５９】
以上の構成によれば、共有バスシステムＢＳ１０はアービタ１５によつて優先順位の低いデータ読出用プロセツサ１１に対してアクノリツジ信号 Ack１１の供給を停止すると共にクロツクＣＬＫ１１の供給を停止し、かつ同時に優先順位の高いデータ書込用プロセツサ１２に対してアクノリツジ信号 Ack１２を供給するようにしたことにより、共有バス４のドライブを切り換えるときのアービトレーシヨンロスの発生を防止して共有バス４を効率良くドライブし得ると共に、消費電力を低減させることができる。
【００６０】
なお上述の実施の形態においては、デイジタル携帯電話機のベースバンド処理部において共有バス４、データ処理手段としてのプロセツサ１１及び１２、調停手段としてのアービタ１５から構成される共有バスシステムＢＳ１０に本発明を適用するようにした場合について述べたが、本発明はこれに限らず、パーソナルコンピユータにおけるＰＣＩ(Peripheral Component Interconnect) バスを用いるようなバスを共有して使用するシステムであれば他の種々のシステムに適用するようにしても良い。この場合にも、上述の実施の形態と同様の効果を得ることができる。
【００６１】
また上述の実施の形態においては、アービタ１５が出力する制御信号としてのアクノリツジ信号 Ack１１及び１２によつて２台のプロセツサ１１及び１２による共有バス４のドライブを制御するようにした場合について述べたが、本発明はこれに限らず、アービタ１５によつて３台以上の複数のプロセツサによる共有バス４のドライブを制御するようにしても良い。例えば、５台のプロセツサによる共有バスのドライブをアービタ１５によつて所定のドライブサイクルに基づいてアービトレーシヨンする場合、アービタ１５によつてリクエスト信号が受け付けられたプロセツサの優先順位を次の時点で最下位に設定することにより、優先順位を順次ローテーシヨンさせる。これにより、最も優先順位の低いプロセツサがリクエスト信号を出力した場合でも、アービトレーシヨンロスが生じないのでその待ち時間は最大でもプロセツサ４台分で済み、最大待ち時間を保証することができる。
【００６２】
さらに上述の実施の形態においては、共有バスシステムＢＳ１０においてデータ線、アドレス線及び制御線からなる共有バス４を用いるようにした場合について述べたが、本発明はこれに限らず、アドレス線とデータ線とを共有し、他の１本を電源及びＧＮＤ（アース）用に用いるようにしても良い。
【００６３】
【発明の効果】
上述のように本発明によれば、クロツク信号に基づいて動作し、バスを介してデータを伝送する少なくとも２つ以上のデータ処理手段からバスに対するそれぞれの使用要求が重複して出された場合、データ処理手段にそれぞれ設定されている優先順位に応じてバスの使用を調停するに当つて、２つ以上のデータ処理手段のうち優先順位の低いデータ処理手段がバスを使用している最中に、優先順位の高いデータ処理手段からの使用要求を受け付けると、優先順位の低いデータ処理手段に対してバスの使用を停止させると共にクロツク信号の供給を停止し、かつ同時に優先順位の高いデータ処理手段に対してバスの使用を開始させるようにしたことにより、バスの使用切り換え時に無駄な時間がかかることなく当該バスを効率良く切り換えて使用し得ると共に、バスの使用を停止した優先順位の低いデータ処理手段における無駄な電力消費を防止し得るバス制御方法及びバス制御装置を実現できる。
【図面の簡単な説明】
【図１】本発明の一実施の形態による共有バスシステムの構成を示すブロツク図である。
【図２】本発明の一実施の形態による共有バスシステムの処理手順を示すタイミングチヤートである。
【図３】本発明の一実施の形態によるプロセツサの構成を示すブロツク図である。
【図４】本発明の一実施の形態によるプロセツサ内部における処理のタイミングチヤートである。
【図５】共有バスシステムの構成を示すブロツク図である。
【図６】共有バスシステムの処理手順を示すタイミングチヤートである。
【符号の説明】
ＢＳ１、ＢＳ１０……共有バスシステム、１、１１……データ読出用プロセツサ、２、１２……データ書込用プロセツサ、３……メモリ、４……共有バス、５、１５……アービタ、６……オシレータ、１１Ａ、１２Ａ……データ生成部、１１Ｂ、１２Ｂ……データ入出力部。
【図１】
0003765351.tif 000002
【図２】
0003765351.tif 000003
【図３】
0003765351.tif 000004
【図４】
0003765351.tif 000005
【図５】
0003765351.tif 000006
【図６】
0003765351.tif 000007