JP3832733B2 - ポーリング装置および通信装置 - Google Patents
ポーリング装置および通信装置 Download PDFInfo
- Publication number
- JP3832733B2 JP3832733B2 JP2002009234A JP2002009234A JP3832733B2 JP 3832733 B2 JP3832733 B2 JP 3832733B2 JP 2002009234 A JP2002009234 A JP 2002009234A JP 2002009234 A JP2002009234 A JP 2002009234A JP 3832733 B2 JP3832733 B2 JP 3832733B2
- Authority
- JP
- Japan
- Prior art keywords
- polling
- transfer
- communication
- counter
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40058—Isochronous transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40032—Details regarding a bus interface enhancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6464—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Description
【発明の属する技術分野】
本発明は、USB(Universal Serial Bus)のホスト制御回路などに応用可能であり、通信制御を行うポーリング装置およびそれを用いた通信装置に関する。
【0002】
【従来の技術】
近年、デジタル機器で音声データおよび画像データ、特に動画データなどの連続的に動いているストリーミングデータが扱われることが多くなった。このようなストリーミングデータを通信するためには、通信経路におい一定の帯域を常に確保する必要がある。これを可能にした通信用バスとしてUSBおよびIEEE1394などが使用されている。一定の帯域を常に確保するためには、一定のフレーム周期内に、通信すべき情報を配分できることが必要であり、USBではこれをフレーム周期の1msec以内に配分する。
【0003】
これらのバスで一定の帯域を確保して情報転送を行うモードをアイソクロナス転送と呼ぶ。IEEE1394などの他の転送方式であっても基本的には同様であるので、ここでは、まず、USBの各種転送タイプについて説明する。
【0004】
USBには1台のホストと複数台(最大127台)のデバイスが接続される。各デバイスには0〜127までのアドレス番号(デバイス番号;0は接続直後のみ使用)が割り振られ、最大16のエンドポイント(通信チャンネルに相当)を持つことができる。
【0005】
まず、ホストは時間をフレームと呼ばれる一定期間(USBの場合、1msec)に分割する。ホストは、フレームの最初にSOF(Start Of Frame)を送信し、その後に、転送タイプとしてアイソクロナス転送または、フレーム周期の整数倍のインタラプト転送を行う。アイソクロナス転送は、毎フレーム転送が行われるが、インタラプト転送はインターバルと呼ばれる転送時間間隔毎に転送が行われる。即ち、インタラプト転送はインターバルカウンタでフレーム数をカウントしながら転送を行うものである。
【0006】
次に、アイソクロナス転送やインタラプト転送が一通り行われたら、別の転送タイプとしてコマンドのコントロール転送やデータのバルク転送を行う。コントロール転送は1フレームで転送は1回が望ましいので、コントロール転送が一通り完了すれば、後は、バルク転送のみが行われる。即ち、コントロール転送でコマンドのやり取りを行った後に、バルク転送でデータのやり取りを行う。なお、これらのアイソクロナス転送、インタラプト転送、コントロール転送およびバルク転送は、優先度(優先順位)の高い転送タイプから行われる。
【0007】
以上の機能を実現する通信システムの構成例を図4に示している。
【0008】
図4は、従来の通信回路の要部構成を示すブロック図である。図4において、通信回路100は、1msカウンタ101と、コントローラ102と、ポーリング回路103と、送信回路104と、受信回路105とを有している。
【0009】
1msカウンタ101は、フレームの単位となる一定期間1msecをカウントして、1msタイマ信号を生成する。
【0010】
コントローラ102は、図5にて後述する転送タイプ、転送カウンタおよびインターバルカウンタなどの値を設定する。インターバルカウンタは、一定期間1msecの整数倍毎にパルス信号を発生することによりフレームをカウントする。
【0011】
ポーリング回路103は、優先順位や通信準備ができているかどうかを判断して通信要求(送信要求)を出力する。
【0012】
送信回路104は、送信要求にしたがって他の機器106にデータ信号を送信する。
【0013】
受信回路105は、他の機器106からの応答を受信して通信終了信号をポーリング回路103に返す。
【0014】
図5は、図4のポーリング回路の詳細構成を示すブロック図である。図6は、図5のポーリング回路の動作を示すタイミングチャートである。
【0015】
図5および図6に示すように、まず、1msカウンタ101からの1msタイマ信号が「1」になると、オア(OR)回路から出力段のフリップフロップを介して送信要求が「1」となり、SOF(Start Of Frame)が送信される。この1msタイマ信号によってポーリングアドレスカウンタおよびポーリングエンドポイントカウンタをリセットして「0」にクリアする。また、1msタイマ信号によって、ステートカウンタのステート信号を「00」にリセットし、カウントアップ信号生成回路もリセットしてカウントアップ信号を「0」にする。さらには、図示していないが、インターバルカウンタの値も「1」だけカウントダウンし、「0」になると初期値をロードする。
【0016】
次に、SOF(Start Of Frame)の送信が終わると、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタは、前述したようにリセットされて「0」になっている。同様にステートカウンタのステート信号も「00」になっている。このとき、カウントアップ信号は「1」になる。
【0017】
ポーリングエンドポイントカウンタには「0」〜「3」の4つのエンドポイント番号(通信チャンネル)があるが、カウントアップ信号が「1」の状態で、クロック信号が入力されると、ポーリングエンドポイントカウンタは「1」だけカウントアップし、クロック信号毎にエンドポイント番号が「0」、「1」、「2」と順次変化して、エンドポイント番号が「3」になると、「=3」検出部が「3」を検出し、次のクロック信号で「0」に戻る。
【0018】
一方、ポーリングアドレスカウンタは「0」〜「2」の3つの状態があるが、ポーリングエンドポイントカウンタの値が「3」の場合、次のクロック信号でアドレス番号が「1」だけカウントアップし、アドレス番号が「2」になると、「=2」検出部が「2」を検出し、次のクロック信号でアドレス番号が「0」に戻る。
【0019】
これらのポーリングアドレスカウンタおよびポーリングエンドポイントカウンタで示されるエンドポイントの転送タイプおよび転送数カウンタ、さらにはインターバルカウンタの値をそれぞれ読み出し、ステートカウンタが「00」の場合は、アイソクロナス転送または、インターバルカウンタが「0」になったインタラプト転送かどうかを判定する。この動作は判定回路(「=0」検出部、二つの一致検出回路とアンド回路およびオア回路)のロジック回路からの出力状態にて判定する。なお、転送タイプおよび転送数カウンタ、さらにはインターバルカウンタの値を読み出している間は、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタはカウントアップしないように、カウントアップ信号は「0」にする必要がある。また、転送タイプの各記号はそれぞれ、ISはアイソクロナス転送、INはインタラプト転送、Cはコントロール転送、Bはバルク転送を示している。
【0020】
ステートカウンタのステート信号が「00」であれば、通信要求を「1」にして転送を行い、通信が終了すると、通信終了信号が「1」になり、通信要求は「0」に戻る。ステート信号が「00」でなかったり、通信が終われば、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタを1カウントアップする。全てのアドレス番号およびエンドポイントについて確認が終わると、ステートカウンタをカウントアップし、ステート信号を「01」にする。
【0021】
ステートカウンタのステート信号が「01」の場合、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタで示されるエンドポイントの転送タイプ、転送数カウンタおよびインターバルカウンタの値を各レジスタ(図示せず)に読み出し、転送数カウンタが「0」でないコントロール転送またはバルク転送を探す。この動作は判定回路(二つの一致検出回路およびオア回路と「≠0」検出部およびアンド回路)のロジック回路からの出力状態にて判定する。
【0022】
コントロール転送またはバルク転送が見つかれば、通信要求を「1」にして転送を行い、その通信が終了すると通信終了信号が「1」になり、通信要求は「0」に戻る。
【0023】
また、コントロール転送またはバルク転送が見つからなかったり、通信が終われば、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタを1カウントアップする。全てのアドレスおよびエンドポイントについて確認が終わると、ステートカウンタをカウントアップし、ステート信号を「10」にする。
【0024】
さらに、ステートカウンタのステート信号が「10」の場合、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタで示されるエンドポイントの転送タイプ、転送数カウンタおよびインターバルカウンタの値を各レジスタに読み出し、転送数カウンタが「0」でないバルク転送を探す。この動作は判定回路(二つの一致検出回路およびオア回路と「≠0」検出部およびアンド回路)のロジック回路からの出力状態にて判定する。
【0025】
バルク転送が見つかれば、通信要求を「1」にして転送を行い、その通信が終了すると通信終了信号が「1」になり、通信要求は「0」に戻る。
【0026】
また、バルク転送が見つからなかったり、通信が終われば、ポーリングアドレスカウンタおよびポーリングエンドポイントカウンタを1カウントアップする。これ以降、ステート信号は「10」(USBではこれがマックス値)を保持する。これを1msタイマ信号が発生するまで続ける。
【0027】
以上のようにして、ステートカウンタからのステート信号の値「00」が最も優先度の高い転送であり、アイソクロナス転送またはインタラプト転送を実行し、ステート信号の値が「01」から「10」の転送というように、ステート信号の値にしたがって優先順に処理される。
【0028】
【発明が解決しようとする課題】
上記従来の構成で、デバイス数(アドレス番号がデバイス番号として付されている)が増えて転送が頻繁に行われると、ステート信号の値、例えば優先度の最も高い「00」の次の「01」の途中で次のフレームが始まり(USBでは1msec毎に強制的に信号が入る)、優先度の低い転送の場合には、いつまで経っても転送が行われないエンドポイント(通信チャンネルに相当)が発生する可能性がある。具体的には、通信システムに繋がる10台のデバイスからインタラプト転送要求があった場合などがこれに相当する。
【0029】
具体的に例を挙げて説明すると、図6に示すように、アイソクロナス転送またはインタラプト転送が行われた後に、ステート信号の値が「01」になり、コントロール転送やバルク転送についてアドレス番号「0」、エンドポイント「0」から開始し、アドレス番号「1」、エンドポイント「2」を転送後に次のフレームが始まる状態が続くと、アドレス番号「1」、エンドポイント「3」およびアドレス番号「2」の全てのエンドポイントの転送処理がいつまでたっても行われないことになる。
【0030】
なお、USBの規格では、アイソクロナス転送やインタラプト転送が頻繁に行われ、ステートカウンタの優先度の最も高いステート信号の値「00」の途中で、次のフレームが始まることは許されない。例えば音声データが多量に入ったときに音声が途切れる様なケースがこれである。このような可能性が有る場合は、デバイスが接続された時点で、ホストがそのデバイスを使用不可状態にすればよい。インタラプト転送は、いつ入力されるのかが予想ができない。その上、帯域の確保をしなければならないという問題もある。
【0031】
本発明は、上記事情に鑑みて為されたもので、通信制御において情報転送の取り残しを防止することができるポーリング装置およびそれを用いた通信装置を提供することを目的とする。
【0032】
【課題を解決するための手段】
本発明のポーリング装置は、フレーム周期毎に優先順位が設定されるフレーム同期転送モードとフレームに同期しない転送モードとをそれぞれ一または複数有し、それぞれの転送モード間に優先順位を決めて通信を行う通信制御において、アドレス番号毎の全通信チャンネルを順に読み出すためのポーリングカウンタ手段と、フレーム周期毎の初期化後にポーリングカウンタ手段が一回りカウントする毎に優先順位を順次変更する状態回路とを備えたポーリング装置において、ポーリングカウンタ手段の値をフレーム周期毎にラッチするラッチ部と、このラッチ部でラッチされた値とポーリングカウンタ手段の値とを比較する一致検出部とを有し、該フレーム周期毎の初期化時に、該ラッチ部でラッチされた値からポーリングを開始するものであり、そのことにより上記目的が達成される。
【0033】
また、本発明のポーリング装置は、フレーム周期毎に優先順位が設定されるフレーム同期転送モードとフレームに同期しない転送モードとをそれぞれ一または複数有し、それぞれの転送モード間に優先順位を決めて通信を行う通信制御において、アドレス番号毎の全通信チャンネルを順に読み出すためのポーリングカウンタ手段と、フレーム周期毎の初期化後にポーリングカウンタ手段が一回りカウントする毎に優先順位を順次変更する状態回路とを備えたポーリング装置において、ポーリングカウンタ手段の値をフレーム周期毎にラッチするラッチ部と、このラッチ部でラッチされた値とポーリングカウンタ手段の値とを比較する一致検出部とを有し、ポーリングカウンタ手段および状態回路は、一致検出部による一致検出までフレーム周期毎の初期化動作を停止すると共に、一致検出部で一致を検出した場合に初期化停止動作を解除するものであり、そのことにより上記目的が達成される。
【0034】
また、好ましくは、本発明のポーリング装置において、通信チャンネル毎の転送モード情報をそれぞれ格納するレジスタ手段と、この通信チャンネル毎の転送データ数および転送間隔の情報を順次それぞれ出力可能とするカウンタ手段とを有し、各通信チャンネルに対応した転送モードタイプ、転送データ数および転送間隔をレジスタ手段およびカウンタ手段からそれぞれ読み出して、その通信チャンネルに対して通信準備として所定のデータかどうかを確認する。
【0035】
また、本発明の通信装置は、請求項3記載のポーリング装置が、通信準備ができていると判定した場合にデータ通信を実行し、通信準備ができていないと判定した場合およびデータ通信が完了した場合に、ポーリング装置に対して現在の通信チャンネルから次の通信チャンネルのポーリング動作を再開させて通信制御を行うものであり、そのことにより上記目的が達成される。
【0036】
上記構成により、優先順位の異なる複数の転送モードを持つ通信を行う場合、一通り全てのアドレスおよび通信チャンネルに対する情報について確認が終わってから通信の優先順位を切り替える必要がある。そこで、本発明では、フレーム毎にポーリングカウンタ手段の値をラッチし、そのラッチされた値と、ポーリングカウンタ手段の値とを比較することにより、全てのアドレスおよび通信チャンネルについて一致の確認が終わったかどうかを知ることができる。フレーム周期毎の初期化時に、該ラッチ部でラッチされた値からポーリングを開始するか、または、その一致が検出された場合に状態回路のリセット動作を解除すれば、優先度の低いチャンネルの転送がいつまでたっても行われないことが防止でき、したがって、通信制御においてフレーム同期転送モードとフレーム非同期転送モードとを均等に転送することができて、転送の取り残しが防止される。
【0037】
【発明の実施の形態】
以下、本発明の通信装置の実施形態について図面を参照しながら説明する。
【0038】
図1は、本発明の一実施形態における通信装置の要部構成を示すブロック図である。なお、従来技術と同様の作用効果を奏する部材には同一の符号を付してその説明を省略する。
【0039】
図1において、通信回路1は、1msカウンタ101と、コントローラ102と、優先順位や通信準備ができているかどうかを判断して通信要求(送信要求)を出力するポーリング回路3と、送信回路104と、受信回路105とを有し、通信準備ができていると判定した場合にデータ通信を実行し、通信準備ができていないと判定した場合およびデータ通信が完了した場合に、ポーリング装置3に対して次の通信チャンネルのポーリング動作を再開して通信制御を行う。
【0040】
図2は、図1のポーリング回路3の詳細構成を示すブロック図である。図2において、ポーリング回路3は、アドレス番号毎の全通信チャンネル(エンドポイント番号)を順に読み出すためのポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32(ポーリングカウンタ手段)と、フレーム周期毎の初期化後にポーリングカウンタ手段が一回りカウントする毎に優先順位(「00」、「01」、「10」)を順次変更する状態回路としてのステートカウンタ38と、ポーリングアドレスカウンタ31の値をフレーム周期毎にラッチするラッチ部33と、ラッチ部33でラッチされた値とポーリングアドレスカウンタ31の値とを比較する一致検出部35と、ポーリングエンドポイントカウンタ32の値をフレーム周期毎にラッチするラッチ部34と、ラッチ部34でラッチされた値とポーリングエンドポイントカウンタ32の値とをそれぞれ比較する一致検出部36と、各一致検出部35,36の各出力を各入力とするアンド回路37とを有しており、アドレス番号および通信チャンネルを決定するためのポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32をフレーム周期で初期化せずに、初期化する前のフレームの最終のポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32の値(アドレス番号およびエンドポイント番号)をラッチ部33,34でそれぞれ記憶しておき、フレーム周期毎の初期化時に、ラッチ部33,34でそれぞれラッチされた各値からポーリングを開始する。
【0041】
また、ポーリング回路3は、通信チャンネル毎の転送モード情報をそれぞれ格納するレジスタ39と、通信チャンネル毎の転送データ数の情報を順次出力可能とする転送数カウンタ40と、通信チャンネル毎の転送間隔の情報を順次出力可能とするインターバルカウンタ41とを有し、各通信チャンネルに対応した転送タイプ、転送データ数および転送間隔をレジスタ39およびカウンタ40,41からそれぞれ読み出して、その通信チャンネルに対して通信準備として所定のデータかどうかを確認し、所定のデータであれば通信要求を出力する。
【0042】
図3は、図1のポーリング回路3の動作を示すタイミングチャートである。
【0043】
図2および図3に示すように、まず、1msタイマ信号が「1」でオンになると、通信要求も「1」でオンし、オア回路さらにフリップフロップを介してSOF送信が為される。ポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32の値はそれぞれラッチ部33,34にそれぞれ格納する。また、1msタイマ信号によってステートカウンタ38のステート信号を「00」にリセットし、カウントアップ信号生成回路44もリセットしてカウントアップ信号を「0」にする。さらには、図示していないが、インターバルカウンタ41も「1」だけカウントダウンし、「0」になると初期値をロードする。
【0044】
次に、SOFの送信が終わると、ステー卜信号が優先順位の最も高い「00」であるので、ポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32で示されるエンドポイント(通信チャンネルに相当)の転送タイプ、転送数カウンタ40やインターバルカウンタ41の値をそれぞれ読み出し、アイソクロナス転送ISまたは、インターバルカウンタ41が「0」になったインタラプト転送INを探す。これは判定回路(「=0」検出部42、二つの一致検出部、アンド回路およびオア回路)のゲート出力により判定することができる。
【0045】
アイソクロナス転送ISまたはインタラプト転送INが見つかれば、通信要求を「1」にして、転送を行い、通信が終了すると、通信終了信号が「1」になり、通信要求は「0」に戻る。
【0046】
また、アイソクロナス転送ISまたはインタラプト転送INが見つからなかったり、転送が終われば、ポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32を1カウントアップする。
【0047】
さらに、ポーリングアドレスカウンタ31とポーリングエンドポイントカウンタ32の値と、ラッチ部33,34に格納されている値とを各一致検出部35,36でそれぞれ比較し、各一致検出部35,36で共に一致すれば、各一致検出部35,36の各出力端が入力されるアンド回路37の出力状態によって、全てのアドレス番号およびエンドポイントについて確認が終わったと判断することができる。
【0048】
全てのアドレス番号およびエンドポイントについて確認が終わると、ステートカウンタ38は、アンド回路37からの出力を受け、クロック信号に同期してカウントアップし、ステート信号を「01」にする。
【0049】
ステート信号が「01」の場合、ポーリングアドレスカウンタ31やポーリグエンドポイントカウンタ32で示されるエンドポイント(チャンネルに相当)の転送タイプ、転送数カウンタ40やインターバルカウンタ41の値をそれぞれ読み出し、転送数カウンタ40の値が「0」でない「コントロール転送C」または「バルク転送B」を探す。これは判定回路(「≠0」検出部43、二つの一致検出部、オア回路およびアンド回路)のゲート出力により判定することができる。
【0050】
「コントロール転送C」または「バルク転送B」が見つかれば、通信要求を「1」にして転送を行い、通信が終了すると、通信終了信号が「1」になり、通信要求は「0」に戻る。
【0051】
また、「コントロール転送C」または「バルク転送B」が見つからなかったり、通信が終われば、ポーリングアドレスカウンタ31やポーリングエンドボイントカウンタ32を1カウントアップする。ポーリングアドレスカウンタ31とポーリングエンドポイントカウンタ32の各値と、ラッチ部33,34に格納されている各値とを各一致検出部35,36でそれぞれ比較し、各一致検出部35,36で共に一致が検出されれば、各一致検出部35,36の各出力端が入力されるアンド回路37の出力状態によって、全てのアドレス番号およびエンドポイントについて確認が終わったと判断することができる。
【0052】
全てのアドレス番号およびエンドポイントについて確認が終わると、ステートカウンタ38は、アンド回路37からの出力を受け、クロック信号に同期してカウントアップし、ステート信号を「10」にする。
【0053】
ステート信号が「10」の場合、ポーリングアドレスカウンタ31やポーリグエンドポイントカウンタ32で示されるエンドポイント(チャンネルに相当)の転送タイプ、転送数カウンタ40やインターバルカウンタ41の値をそれぞれ読み出し、転送数カウンタ40の値が「0」でないバルク転送を探す。これは判定回路(「≠0」検出部43、一つの一致検出部およびアンド回路)のゲート出力により判定することができる。
【0054】
そのようなバルク転送が見つかれば、通信要求を「1」にして転送を行い、通信が終了すると、通信終了信号が「1」になり、通信要求は「0」に戻る。
【0055】
また、そのようなバルク転送が見つからなかったり、通信が終われば、ポーリングアドレスカウンタ31やポーリングエンドボイントカウンタ32を1カウントアップする。これ以降、ステートカウンタ38は「10」を保持する。これを次の1msタイマが発生するまで続ける。
【0056】
以上により、本実施形態によれば、一定期間(フレーム周期)毎に優先度(フレームが変われば異なる)が設定されたフレーム同期転送モード(アイソクロナス転送やインタラプト転送などのモード)と、フレームに同期しない転送モード(コントロール転送やバルク転送などのモード)をそれぞれ一または複数持ち、転送モード間に優先順位が決まっている通信を行う通信制御において、アドレス番号および通信チャンネルを決定するためのポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32をフレーム周期で初期化せずに、初期化する前のフレームの最終のポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32の値(アドレス番号およびエンドポイント番号)を記憶しておき、初期化後にその値からポーリングを開始することで、特定のチャンネル、ここでは優先度の低いチャンネルの転送がいつまでたっても行われないことを防止することができて、各チャンネルの転送が均等に行われるようにスケジューリングすることができ、転送の取り残しを防止することができる。
【0057】
なお、上記実施形態では、転送の取り残しを防止するべく、フレーム周期毎の初期化時に、ラッチ部33,34でラッチされた各値からポーリングを開始するように構成したが、これに限らず、ポーリング回路3は、アドレス番号毎の全通信チャンネル(エンドポイント番号)を順に読み出すためのポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32(ポーリングカウンタ手段)と、フレーム周期毎の初期化後にポーリングカウンタ手段が一回りカウントする毎に優先順位(「00」、「01」、「10」)を順次変更する状態回路としてのステートカウンタ38と、ポーリングアドレスカウンタ31の値をフレーム周期毎にラッチするラッチ部33と、ラッチ部33でラッチされた値とポーリングアドレスカウンタ31の値とを比較する一致検出部35と、ポーリングエンドポイントカウンタ32の値をフレーム周期毎にラッチするラッチ部34と、ラッチ部34でラッチされた値とポーリングエンドポイントカウンタ32の値とをそれぞれ比較する一致検出部36と、各一致検出部35,36の各出力を各入力とするアンド回路37とを有しており、アンド回路37の出力により、ポーリングアドレスカウンタ31およびポーリングエンドポイントカウンタ32、ステートカウンタ38は、一致検出部35,36による両一致検出までフレーム周期毎の初期化せず、一致検出部35,36で一致を検出した場合に初期化動作可能とするように構成してもよい。
【0058】
また、上記実施形態では、特に説明しなかったが、カウントアップ信号生成回路44の具体的回路例としては、図7に示すように二つのデータフリップフロップとアンド回路との直列回路で構成することができる。
【0059】
【発明の効果】
以上により、本発明によれば、フレーム同期転送モードとフレーム非同期転送モードという優先順位の異なる複数の転送モードを持つ通信を行う場合、ポーリングカウンタ手段に多少の回路を追加するだけで、優先順位の高いフレーム同期転送を行った後、優先順位の低いフレーム非同期転送を均等にスケジューリングすることができて、転送の取り残しを防止することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態における通信装置の要部構成を示すブロック図である。
【図2】図1のポーリング回路の詳細構成を示すブロック図である。
【図3】図1のポーリング回路の動作を示すタイミングチャートである。
【図4】従来の通信装置の要部構成を示すブロック図である。
【図5】図4のポーリング回路の詳細構成を示すブロック図である。
【図6】図5のポーリング回路の動作を示すタイミングチャートである。
【図7】図1のカウントアップ信号生成回路の具体的回路例を示す回路図である。
【符号の説明】
1 通信回路
3 ポーリング回路
31 ポーリングアドレスカウンタ
32 ポーリングエンドポイントカウンタ
33,34 ラッチ部
35,36 一致検出部
37 アンド回路
38 ステートカウンタ
39 レジスタ
40 転送数カウンタ
41 インターバルカウンタ
Claims (4)
- フレーム周期毎に優先順位が設定されるフレーム同期転送モードとフレームに同期しない転送モードとをそれぞれ一または複数有し、それぞれの転送モード間に優先順位を決めて通信を行う通信制御において、アドレス番号毎の全通信チャンネルを順に読み出すためのポーリングカウンタ手段と、該フレーム周期毎の初期化後に該ポーリングカウンタ手段が一回りカウントする毎に優先順位を順次変更する状態回路とを備えたポーリング装置であって、
該ポーリングカウンタ手段の値をフレーム周期毎にラッチするラッチ部と、該ラッチ部でラッチされた値と該ポーリングカウンタ手段の値とを比較する一致検出部とを有し、該フレーム周期毎の初期化時に、該ラッチ部でラッチされた値からポーリングを開始するポーリング装置。 - フレーム周期毎に優先順位が設定されるフレーム同期転送モードとフレームに同期しない転送モードとをそれぞれ一または複数有し、それぞれの転送モード間に優先順位を決めて通信を行う通信制御において、アドレス番号毎の全通信チャンネルを順に読み出すためのポーリングカウンタ手段と、該フレーム周期毎の初期化後に該ポーリングカウンタ手段が一回りカウントする毎に優先順位を順次変更する状態回路とを備えたポーリング装置であって、
該ポーリングカウンタ手段の値をフレーム周期毎にラッチするラッチ部と、該ラッチ部でラッチされた値と該ポーリングカウンタ手段の値とを比較する一致検出部とを有し、該ポーリングカウンタ手段および状態回路は、該一致検出部による一致検出まで該フレーム周期毎の初期化動作を停止すると共に、該一致検出部で一致を検出した場合に初期化停止動作を解除するポーリング装置。 - 前記通信チャンネル毎の転送モード情報をそれぞれ格納するレジスタ手段と、該通信チャンネル毎の転送データ数および転送間隔の情報を順次それぞれ出力可能とするカウンタ手段とを有し、各通信チャンネルに対応した転送モードタイプ、転送データ数および転送間隔を該レジスタ手段およびカウンタ手段からそれぞれ読み出して、その通信チャンネルに対して通信準備として所定のデータかどうかを確認する請求項1または2記載のポーリング装置。
- 請求項3記載のポーリング装置が、前記通信準備ができていると判定した場合にデータ通信を実行し、該通信準備ができていないと判定した場合および該データ通信が完了した場合に、該ポーリング装置に対して現在の通信チャンネルから次の通信チャンネルのポーリング動作を再開させて通信制御を行う通信装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002009234A JP3832733B2 (ja) | 2002-01-17 | 2002-01-17 | ポーリング装置および通信装置 |
US10/271,794 US7203205B2 (en) | 2002-01-17 | 2002-10-17 | Polling device and communication apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002009234A JP3832733B2 (ja) | 2002-01-17 | 2002-01-17 | ポーリング装置および通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003218871A JP2003218871A (ja) | 2003-07-31 |
JP3832733B2 true JP3832733B2 (ja) | 2006-10-11 |
Family
ID=19191496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002009234A Expired - Fee Related JP3832733B2 (ja) | 2002-01-17 | 2002-01-17 | ポーリング装置および通信装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7203205B2 (ja) |
JP (1) | JP3832733B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100943742B1 (ko) * | 2003-06-03 | 2010-02-23 | 삼성전자주식회사 | Usb 트랜잭션을 무선 pan 상에서 전송하는 장치 및방법 |
CN100442713C (zh) * | 2005-12-30 | 2008-12-10 | 华为技术有限公司 | 一种提高通讯链路层协议效率的方法 |
JP5127927B2 (ja) | 2008-08-22 | 2013-01-23 | 三菱電機株式会社 | バスコントローラ及びバス通信システム及びバス制御方法 |
US9524260B2 (en) * | 2014-06-18 | 2016-12-20 | Qualcomm Incorporated | Universal serial bus (USB) communication systems and methods |
KR102335649B1 (ko) * | 2015-06-09 | 2021-12-03 | 한화테크윈 주식회사 | 데이터 처리 장치 및 방법 |
CN112162820A (zh) * | 2020-09-23 | 2021-01-01 | 广州六环信息科技有限公司 | 计时器的计时方法和装置 |
CN115051992B (zh) * | 2022-08-15 | 2022-11-18 | 武汉慧联无限科技有限公司 | 设备轮询方法、装置、电子设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3824118B2 (ja) * | 1998-03-03 | 2006-09-20 | Kddi株式会社 | ポーリング周期制御装置 |
US6119194A (en) * | 1998-03-19 | 2000-09-12 | Advanced Micro Devices, Inc. | Method and apparatus for monitoring universal serial bus activity |
JPH11298477A (ja) | 1998-04-10 | 1999-10-29 | Sony Corp | 伝送制御方法及び伝送制御装置 |
US6742076B2 (en) * | 2000-01-03 | 2004-05-25 | Transdimension, Inc. | USB host controller for systems employing batched data transfer |
-
2002
- 2002-01-17 JP JP2002009234A patent/JP3832733B2/ja not_active Expired - Fee Related
- 2002-10-17 US US10/271,794 patent/US7203205B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7203205B2 (en) | 2007-04-10 |
US20030133470A1 (en) | 2003-07-17 |
JP2003218871A (ja) | 2003-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3095038B1 (en) | Camera control interface extension with in-band interrupt | |
KR102445344B1 (ko) | 시리얼 버스를 위한 수신 클록 캘리브레이션 | |
US9684624B2 (en) | Receive clock calibration for a serial bus | |
EP0051332B1 (en) | Two-wire bus-system comprising a clock wire and a data wire for interconnecting a number of stations | |
JP2709820B2 (ja) | 単一集積回路マイクロ制御器におけるマルチプロトコル通信制御器 | |
US7231480B2 (en) | Method and system for receiver detection in PCI-Express devices | |
JPH04332065A (ja) | データ転送方法 | |
WO2015054433A1 (en) | Coexistence of i2c slave devices and camera control interface extension devices on a shared control data bus | |
EP0631239B1 (en) | Serial data transfer method and system | |
JP3832733B2 (ja) | ポーリング装置および通信装置 | |
JP2016532967A (ja) | 周辺装置からのirq線の数を1線に最小化する方法 | |
KR20160146786A (ko) | 멀티 심볼 워드들을 위한 동기화 방법 | |
CN108599908B (zh) | 通信系统和半导体设备 | |
Hank | Pelican: A new can controller supporting diagnosis and system optimization | |
KR0150233B1 (ko) | 공용버스에서의 버스점유 중재장치 | |
JPH11163958A (ja) | 通信制御装置 | |
JP2004029947A (ja) | クロック生成装置及びオーディオデータ処理装置 | |
JP2004320523A (ja) | 通信データ処理方法 | |
CN117573586A (zh) | 单线通讯的方法、装置及系统 | |
JPS6265155A (ja) | デイジタル・デ−タ処理調停システム | |
JPH10283136A (ja) | データ処理方法、データ処理装置、プリンタ及び記憶媒体 | |
JP2000013404A (ja) | Tdm/atm変換装置 | |
JPH07297812A (ja) | データ処理装置 | |
JPH05289990A (ja) | データ転送方法 | |
JPH07234827A (ja) | パケット通信インタフェース装置のタイマ機構 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040728 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060710 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060713 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060713 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100728 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130728 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |