(57)【特許請求の範囲】
【請求項１】
第１のクロック信号によって第１のクロック速度で駆動される第１の集積回路デバイスを含む複数の集積回路デバイスの装置であって、
前記第１のクロック信号に応答して前記第１の集積回路デバイスと通信するように結合されたパラレルデータバスと、
第２のクロック信号によって規定される第２のクロック速度でシリアルデータを通信するように構成されるシリアル通信回路と、前記第１のクロック信号に応答して前記パラレルデータバスと前記シリアル通信回路との間でデータを通じるように構成されるパラレルバスインターフェース回路と、前記シリアル通信回路と前記パラレルバスインターフェース回路とのうちの少なくとも1つの状態を表す状態データを前記パラレルデータバスに出力するように構成されるデータ記憶レジスタ回路とを含む汎用非同期送受信装置(UART)チップと、を具える装置において、
クロック制御信号に応答して前記第1のクロック速度を、前記第２のクロック速度を変えることなく低下させて低電力UARTモードを与えるように構成され、前記低電力UARTモードでは前記シリアル通信回路は前記第２の速度でシリアルデータの通信を継続する、クロック制御回路が設けられている装置。
【請求項２】
請求項1に記載の装置において、前記クロック制御回路は、更に、前記第１のクロック速度をゼロに低下させるように構成される、装置。
【請求項３】
請求項1に記載の装置において、前記クロック制御回路は、更に、前記第１のクロック速度を、前記第１のクロック速度よりも少なくとも10パーセント遅い第３のクロック速度に低下させるように構成される、装置。
【請求項４】
請求項１に記載の装置において、前記第２のクロック速度は前記第１のクロック速度から導かれる、装置。
【請求項５】
請求項1に記載の装置において、前記第１のクロック速度及び前記第２のクロック速度は状態が非同期で変化する、装置。
【請求項６】
請求項1に記載の装置において、前記第２のクロック速度は、前記複数の集積回路デバイスの他のものとのシリアル通信を規定するようにセットされる、装置。
【請求項７】
請求項1に記載の装置において、前記UARTチップは、更に、前記シリアル通信回路と前記パラレルバスインターフェース回路との間を通じるデータを記憶するように構成される先入れ先出し方式(FIFO)バッファを含む、装置。
【請求項８】
請求項1に記載の装置において、前記データ記憶レジスタ回路は、更に、前記パラレルデータバスと前記シリアル通信回路との間を通じるデータの少なくとも１つの流れ状態を表すデータを供給するように構成される、装置。
【請求項９】
請求項8に記載の装置において、前記少なくとも１つの流れ状態は、オーバーフロー状態及びアンダーフロー状態を含む、装置。
【請求項１０】
請求項1に記載の装置において、前記UARTチップは、更に、前記シリアル通信回路と前記パラレルバスインターフェース回路との間を通じるデータを記憶するように構成される先入れ先出し方式(FIFO)バッファを含み、前記データ記憶レジスタ回路は、更に、前記FIFOを通じるデータの少なくとも１つの流れ状態を表すデータを供給するように構成される、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本デバイスは、一般にデータ通信回路に関し、特に、種々のCPU及び周辺機器において使用される低電力モードで動作可能である汎用非同期受信器/送信器(UART)に関する。
【背景技術】
【０００２】
大部分のデジタル回路は、より効率的な処理を提供するため並行してデータを処理する。多くのデジタルデバイスは、リモートサイトへ又はリモートサイトからデバイスにデータを運んでくるためのシリアルポートも用い、前記シリアルポートは、電話又はLANラインを介して多くの場合中継局に結合されている。汎用非同期送受信装置(UART)は、デジタルデータのパラレル-シリアル変換を実行するデジタルデバイスである。UARTは、ローカルCPU等のパラレルI/Oデバイスとポットモデム又は他の伝送線等のシリアルI/Oデバイスとの間で受信データを変換することによってパラレル形式とシリアル形式との間で通信する。従来のUARTデバイスのほとんどは、選択されたボーレートで動作するようにプログラム可能であり、より新しい世代のUARTは、より大きいFIFO深さ及び改良されたフロー制御がおおいに寄与して、通信をより効率的に取り扱う(必要な再試行はより少なく、また、内部FIFOが満ちる又は空になるのを待つことが少なくなる)。
【０００３】
UARTデバイスは、一般的に外部回路によって供給されるクロック信号によって駆動されるタイミング回路を有する。タイミング回路は、シリアル通信ポートのボーレートをセットするために用いられ、また、UARTデバイスの内部ロジックのためのタイミングソースでもある。一般的にボーレートは、シリアルポートを通じてシリアルI/Oデバイスに通信するための要件に基づいて選択される。タイミング回路は、シリアル通信のためのボーレートを規定するために用いられるクロック周波数を供給するためのN分割回路を用いて実現されることができる。性能及び電力要求が「即座に(on the fly)」変化するアプリケーションにおいて、UARTデバイスのクロック周波数は、リアルタイムで調整される。しかし、用途によっては、リアルタイムでクロック周波数を調整することは、データの損失を生じさせる可能性があり、これは、シリアル通信を完全に中断させる可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の種々の態様は、UARTデバイスを、シリアルデータ通信が一定の速度で継続しながらも、低電力モードで動作するように構成することに関する。本発明は多くの実現例及びアプリケーションにおいて例証され、その幾つかは以下に要約される。
【課題を解決するための手段】
【０００５】
本発明の実施例によると、複数の集積回路デバイスの装置は、第1のクロック信号によって第1のクロック速度で駆動される第1の集積回路デバイスを含む。本装置は、第1のクロック信号に応答して第1の集積回路デバイスと通信するように結合されたパラレルデータバスを含む。本装置は、更に、第2のクロック信号によって規定される第2の速度でシリアルデータを通信するように構成されるシリアル通信回路を有する汎用非同期送受信装置(UART)チップを含む。前記UARTチップは、更に、第1のクロック信号に応答し、パラレルデータバスとシリアル通信回路との間でデータを通じるように構成されるパラレルバスインターフェース回路を含む。前記UARTチップは、シリアル通信回路とパラレルバスインターフェース回路とのうちの少なくとも1つを表す状態データをパラレルデータバスに出力するように構成されるデータ記憶レジスタ回路を更に含む。集積回路デバイスの装置は、更に、クロック制御信号に応答して第1のクロック速度を低下させるように構成されるクロック制御回路を含む。UARTチップは、シリアル通信回路が第2の速度でシリアルデータを通信し続けながら、第1のクロック速度を低下させることによって低電力モードにおいて動作するように構成される。
【０００６】
本発明のより特定の実現例は、クロック制御回路によって選択される特定の動作モードを供給することを伴う。前記動作モードは、例えば、シリアルデータ通信の速度を変えることなくパラレルバスインターフェース回路が停止する超低電力モード、及び、シリアルデータの処理を上げるようにパラレルバスインターフェースが高速で動作する高効率モードを含む。
【０００７】
上記のまとめは、説明された実施例の1つ1つ又は本発明のあらゆる実現例を説明することを意図されない。以下の図及び詳細な説明は、これらの実現例をより詳細に例証する。
【発明を実施するための最良の形態】
【０００８】
本発明は、添付の図面を参照して以下の本発明の種々の実施例の詳細な説明を考慮することによってより完全に理解することができる。
【０００９】
本発明は種々の変形例及び代替形式が適用可能であるが、その細部は図において例示されたものであり、詳細に説明される。しかし、この意図は本発明を特定の実施例に制限するものではないと理解されるべきである。反対に、この意図は、添付の請求項に規定された本発明の精神及び範囲内の変形例、等価物及び代替例をカバーすることである。
【００１０】
本発明は、一般に、シリアルデータ通信のクロック周波数が一定のままで低電力モードで動作するように再構成可能であるUARTデバイスを含む集積回路デバイスに関する。本発明が必ずしもこのようなデバイスに限られているというわけではないが、本発明の種々の態様の認識は、このようなアプリケーションの種々の例についての議論を通じて最もよく得られる。
【００１１】
本発明の実施例によれば、集積回路デバイスの構成は、種々の低電力又は高効率モードで動作するように選択可能に設定可能であるUARTチップを含む。このような各動作モードは、シリアルデータ通信の速度を止める又は変えることを必要としない異なった利益を提供する。特定の例において、UART回路は、2つのクロック入力を含み、第1のクロック入力はUARTのパラレルバスインターフェース回路を駆動し、第2のクロック入力はシリアル通信回路を駆動する。クロック制御回路は第1及び第2のクロック速度の両方を制御するが、クロック制御回路は、第2のクロック速度に影響を及ぼすことなく第1のクロック速度を変えるように構成される。クロック制御信号に応答して、クロック制御回路は、第1のクロック速度を低下させて低電力UARTモードを提供するか又は第1のクロック速度を向上させて高効率UARTモードを提供する。
【００１２】
クロック制御回路は、これに加えて又はこれに代えて、第1のクロック速度をゼロに低下させるか又は第2のクロック速度に対して第1のクロック速度の状態を非同期的に変化させることができる。もう1つの特定の実施例において、UARTのデータ記憶レジスタ回路は、パラレルデータバスとシリアル通信回路との間を通じるデータの流れ条件を示す。UARTの流れ条件は、シリアル通信回路のFIFOレジスタがフル若しくはエンプティであるか、レジスタが上限若しくは下限の閾値レベルに到達したかどうか、又は、FIFOがオーバーフローしている若しくはFIFOから無効データが出ている等のためにエラーが発生したかどうか、を含むことができる。
【００１３】
図をここで参照する。図1は、本発明の実施例によって構成されるUARTデバイスを含む集積回路デバイスの装置10のブロック図である。この実施例において、装置10は、CPU40の第1のクロック速度に対して第2のクロック速度でUARTチップ20を通じるシリアルデータを処理するように構成される。この例では、装置10は、第1のクロック速度を第2のクロック速度に非同期に変化させ、従ってモデム12から来るシリアルデータ14のデータ速度に影響を及ぼさないように構成される。CPU 40は、パラレルデータバス30を介してUARTチップ20と通信するためのアドレス、データ及び制御信号を供給するメモリ管理機構(図示せず)を含むように構成される。CPU 40は、クロック回路50からのクロック信号に応答して、第1のクロック信号を第1のクロック速度でクロック制御回路60を介して供給する。クロック回路50は、装置10の1次タイミングソースであって、更に、UARTチップ20に第2のクロック信号を第2のクロック速度で供給する。
【００１４】
この実施例において、クロック制御回路60は、クロック回路50からのクロック信号を利用して、CPU 40及びUARTチップ20に送信される第1のクロック信号を生成する。クロック制御回路60から生じる第1のクロック信号は、タイミングレベル(TL)1又は第1のクロック速度にあり、これは、第2のクロック信号のタイミングレベル(TL)2又は第2のクロック速度と同一であってもよい。UARTチップ20が低電力UARTモードにおいて動作するように装置10を構成するにあたって、第1のクロック速度は低下されてTL1はTL2よりも低い速度に低下される。クロック制御回路60は、N分割回路62を通じてクロック回路50からのクロック信号を処理して、マルチプレクサ64に信号を供給する。マルチプレクサ64は、新しいクロック速度(例えばTL1')が選択されるべきであることを示すクロック制御信号をCPU 40から受信し、このときTL1'がCPU及びUARTの一部の新しいタイミングレベルになる。第1のクロック速度の変更された状態は、第2のクロック速度が変化しない状態で第2のクロック速度に非同期にされる。
【００１５】
関連した実施例において、超低電力UARTモードを実現することは、第1のクロック信号を大幅に低減する又は停止させる(TL = 0)ことを伴う。TL1は、CPU 40から受信されるクロック制御信号に応答して、信号を選択する際にマルチプレクサ64によってゼロに低下される。この例では、CPU 40は所定の期間スリープモードに転換するが、シリアルデータ12は第2のクロック速度(TL2)で続く。他の実施例において、装置10は、TL2に対してTL1を上げることによって高効率モードで動作する。この例では、マルチプレクサ64は、CPU 40から制御信号命令を受信して、TL1がTL2よりも大きくなるように、N分割回路62からより高いクロック速度を選択する。この例では、CPU 40及びUARTチップ20の一部は、前のレベルよりも速くデータを処理するために新しいタイミングレベルで動作する一方、UARTチップ20に入っていくシリアルデータの速度は変わらない。
【００１６】
他の関連した実施例において、UARTチップ20に配置されているデータ記憶レジスタ回路が、バス30とTL1が変化するときにデータを受信するシリアル通信回路との間を通るデータの流れ条件を示すために利用される。UARTの流れ条件は、シリアル通信回路のFIFOレジスタがフル若しくはエンプティであるか、レジスタが上限若しくは下限の閾値レベルに到達したかどうか、又は、FIFOがオーバーフローしている若しくはFIFOから無効データが出ている等のためにエラーが発生したかどうか、を含む。
【００１７】
1つの実施例において、装置10は単一の集積チップに形成される。関連した実施例において、装置10はディスクリート部品により形成される。設定可能なクロック周波数CLK1をクロック入力として持つUARTチップ20の動作が、図2と関連して更に詳細に説明される。
【００１８】
図2をここで参照する。回路装置100は図1のUARTチップ20の拡大された実現例を示す。UARTチップ20は、バスバッファ102、動作制御回路104及び割込み制御回路106を有するパラレルバスインターフェース回路101を含む。バスバッファ102は、動作制御回路104に応答して、CPU 40とUARTチップ20との間で読出し及び書込み動作が発生することを可能にする。動作制御回路104はCPUから動作コマンドを受信して、UART動作を制御するためにUARTの内部部分に信号を生成する。割込み制御回路106は、特定の事象(例えば先に述べたものの1つであるフロー制御条件)の発生の際に割込みを供給する。
【００１９】
この実施例において、UARTチップ20は、更に、クロック回路108、入力ポート110、出力ポート112、シリアル通信回路114、データ記憶レジスタ回路116及び内部データバス118を含む。クロック回路108は、UART内のタイミングソースであって、水晶発振器、ボーレート発生器及びクロックセレクタの組を含む。この実施例において、クロック回路108は2つのクロック入力CLK1及びCLK2を有し、CLK2信号はクロック回路50によって供給され、CLK1信号はクロック制御回路60の出力によって供給される。入力及び出力ポート110及び112は、それぞれ、種々のレジスタ、更に、内部データバス118に結合される他の通信ブロックによってイネーブルされることができる多目的の入力及び出力ポートである。
【００２０】
この実施例において、シリアル通信回路114は、第2のクロック速度(TL2)でモデム12からシリアルデータ14を受信して、シリアルデータをCPU 40によって処理されるパラレルフォーマットに変換する。シリアルデータ通信は、ボーレート発生器又はあらゆるカウンタ/タイマーから独立した選択されたクロック速度(即ち動作周波数)で、一般に動作する。データ記憶レジスタ回路116は、シリアル通信回路114から独立したクロック速度で機能し、少なくとも1つのシリアル通信回路114及びパラレルバスインターフェース回路101の動作状態を示す。
【００２１】
この実施例において、クロック回路108は、バスインターフェース回路101、ポート110及び112並びにデータ記憶レジスタ回路116をCLK1からのクロック速度TL1でクロックし、シリアル通信回路114をCLK2からのクロック速度TL2でクロックする。CLK1における第1のクロック信号に応答して、バスインターフェース回路101は、パラレルバス30とシリアル通信回路114との間のデータを内部データバス118を介して転送する。並行して、データ記憶レジスタ回路116はパラレルデータバス30にステータス情報を通信し、シリアル通信とバスインターフェース回路とのうちの少なくとも1つの動作状態を示す。レジスタ回路116を用いることにより、CPU 40はシリアル通信回路とバスインターフェース回路との間のデータ流れに対する定期的な更新を受信する。レジスタ回路116は、オーバーフロー又はアンダーフロー状態を示す。流れ状態に従い、CPU 40は、データ流れを改良する又はデータ損失を防止するためにクロッキング速度TL1を「即座に(on the fly)」低下又は上昇させることができる。シリアル通信回路114におけるTL2のクロッキング速度が一定に保たれるので、CLK 1のクロック速度TL1の変化にかかわりなく、シリアルデータ速度は一定のままである。
【００２２】
1つの実施例において、UARTチップ20のシリアル通信回路114は、シリアル通信回路114とバスインターフェース回路101との間を通じるデータを記憶するように構成される先入れ先出し方式(FIFO)バッファを含む。この例では、データ記憶レジスタ回路116は、FIFOを通じるデータの少なくとも1つの流れ状態を表すCPUデータを供給する。このような装置において、CPUは、TL1クロッキング速度をリアルタイムで調整するために(例えばシリアルデータの損失を防止するために)流れ状態データを用いることができる。
【００２３】
他の関連した実施例において、第1のクロック速度は、CPU 40によって低下され、第1のクロック速度よりも少なくとも10パーセント遅い第3のクロック速度が生成される。初めに第1のクロック速度で駆動されていたUART部品の全てはここで第3のクロック速度で駆動され、UARTのパワー消費量を効果的に低減する。更に他の関連した実施例において、第1のクロック速度をゼロに低下させることによって、UARTは超低電力動作モードに設定可能である。これは、シリアルデータトラフィックが遅い、断続的又は全く止まってしまった状況において電力が節約されるので有利である。更に他の実施例において、UARTは、第1のクロック速度を第2のクロック速度よりも高い速度に上げることによってCPUのデータ処理性能を改良するように設定可能である。これは、例えば、CPUがシリアルデータを適切に処理していないためデータの損失によって生じるオーバーフロー条件を克服するのに有利であり得る。
【００２４】
市販のUARTデバイスを上記の動作を含むように修正することによって、上記の実施例の全てを実現することができる。このような市販の部品及びそれらの動作モードに関する他の詳細のために、製品仕様No. 853-1585-23061(1/31/00)及びNo. 853-1078-19971(9/4/98)(UART部品番号SCC2691AC1A28及びSC26C92A1A)が参照されてもよい。このそれぞれは、Philips Semiconductorから市販されており、本願明細書に引用したものとする。
【００２５】
従って、本発明は、デジタル装置との全てのシリアル通信を最初に終了することのないUARTクロック制御を達成する。本発明は、幾つかの特定の実施例を参照して説明されたが、当業者は、請求項に記載された本発明の精神及び範囲から逸脱することなくこれらの実施例に変更を加えることができることを認識するであろう。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施例による汎用非同期送受信装置(UART)チップを含む集積回路デバイスの装置のブロック図である。
【図２】本発明の他の実施例による図1の回路ブロックの1つの図である。
【図１】
0004570023.tif 000002
【図２】
0004570023.tif 000003