JP4703074B2 - 電子ネットワークにおけるコンテクストを切り換える装置及び方法 - Google Patents

電子ネットワークにおけるコンテクストを切り換える装置及び方法 Download PDF

Info

Publication number
JP4703074B2
JP4703074B2 JP2001500525A JP2001500525A JP4703074B2 JP 4703074 B2 JP4703074 B2 JP 4703074B2 JP 2001500525 A JP2001500525 A JP 2001500525A JP 2001500525 A JP2001500525 A JP 2001500525A JP 4703074 B2 JP4703074 B2 JP 4703074B2
Authority
JP
Japan
Prior art keywords
context
address
instruction
instruction set
transmission
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 - Lifetime
Application number
JP2001500525A
Other languages
English (en)
Other versions
JP2003501892A (ja
Inventor
リウ、ユンーイエン
スマイヤーズ、スコット
フェアマン、ブルース
ファン、スティーブ
ディアス、ホセ
バーディニ、リチャード
Original Assignee
ソニー エレクトロニクス インク
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ソニー エレクトロニクス インク filed Critical ソニー エレクトロニクス インク
Publication of JP2003501892A publication Critical patent/JP2003501892A/ja
Application granted granted Critical
Publication of JP4703074B2 publication Critical patent/JP4703074B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

【0001】
関連出願
本出願は、1999年6月18日に出願され、現在係属中の米国特許出願番号09/336,064、発明の名称「電子ネットワークにおいてマルチレベルでコンテクストを切り換える装置及び方法(System And Method For Multi-Level Context Switching In An Electronic Network)」及び1999年7月28日に出願され、現在係属中の米国特許出願番号09/363,086、発明の名称「電子ネットワークにおける高速データ転送装置及び方法(System And Method For Fast Data Transfers In An Electronic Network)」に関連し、これらの出願は、参照することによって本願に組み込まれる。相互に参照されるこれらの出願は、共通の出願人に譲渡されている。
発明の背景
【0002】
1.発明の分野
本発明は、一般的には電子ネットワークに関し、特に、電子ネットワークにおけるコンテクストを切り換える(context switching)装置及び方法に関する。
2.従来技術の説明
電子機器の設計者、製造業者及び利用者にとって、電子ネットワークにおける電子機器間の通信を管理する効果的な方法を実現することは重要な課題である。電子ネットワーク内の電子機器は、ネットワーク内の他の電子機器と効率的に通信することができると、データを共有することができ、そのネットワーク内の個々の電子機器で利用可能なリソースを実質的に増大させることができる。例えば、電子ネットワークが利用者の家庭で実現されると、パーソナルコンピュータ、デジタルビデオディスク、デジタル放送用のデジタルセットトップボックス、テレビジョンセット、オーディオ再生機器などの様々な民生用電子機器間でリソースを柔軟かつ有益に共用することができる。
【0003】
また、電子ネットワーク内の電子機器は、ネットワーク内でデータの受信又は送信を行う。したがって、電子機器は、データの送信機及び受信機として機能することが要求される。そのような場合には、電子機器は、送信モード(transmit mode)及び受信モード(receive mode)間を切り換える、すなわち、コンテクスト間を切り換えることが要求される。コンテクスト切換は、ネットワーク内の各電子機器が、ネットワークに対して入/出力が一体化されたインタフェースを有する電子ネットワークにおいて、特に重要である。データは、同じインタフェースを介して送信されたり受信されるので、そのような電子機器は、データの送信と受信を同時に行うことはできない。したがって、電子機器は、ネットワーク内の他の電子機器と効果的に通信するために、コンテクスト間を切り換える必要がある。
【0004】
電子ネットワークの種類によっては、電子機器はデイジーチェーン(daisy-chained)であり、電子機器は、共通のネットワークバスに接続されている構造ではなく、ツリー構造(tree-like structure)で互いに直接接続されている。そのようなネットワークにおいて、バスを介して送信されるデータは、宛先機器(destination device)に到着する前に、様々な中間機器を通過する。中間機器は、受信コンテクストにおいてデータを受信すると、送信コンテクストに切り換わり、他の電子機器にデータを送信する。また、中間機器は、送信コンテクストにおいて宛先機器にデータを送信すると、受信コンテクストに切り換わり、異なるデータの宛先機器として機能する。
【0005】
電子ネットワークによっては、電子機器がバスを介してデータを送信する準備中であるときには、その電子機器は、データを受信することができない。しかしながら、電子機器が意図されたデータを受信しないと、データはなくなる。データの損失は、データソースが放送信号であり、データが受信されないとき、データは繰り返して放送されないので、特に問題である。したがって、ネットワーク内で送信されるデータの損失を防ぐためには、効果的かつ効率的なコンテクスト切換が必要である。
【0006】
電子ネットワークにおけるコンテクスト切換は、ネットワークにおいて効果的な通信を維持するために、できるだけ効率的に行われなければならない。したがって、電子機器の設計者、製造業者及び利用者にとって、電子ネットワーク内の電子機器間の通信管理は、依然として重要な課題である。
【0007】
発明の開示
本発明を適用した、電子ネットワークおけるコンテクスト切換を実現する装置及び方法を開示する。一実施例として、本発明は、コンテクストに対応した各インストラクションモジュールを記憶するメモリと、インストラクションモジュールを実行するプロセッサと、制御状態機械(control state machine)とを備える。制御状態機械は、電子ネットワークからのコンテクスト情報に応じて、プロセッサによって実行するために、インストラクションモジュールの1つを選択する。
【0008】
メモリに記憶された各インストラクションモジュールは、コンテクストに対応している。コンテクストは、サイクルスタートコンテクスト、送信コンテクスト及び受信コンテクストを含む。メモリは、例えば電子ネットワークによってサポートされた各データチャンネルに対して、サイクルスタートコンテクストインストラクションモジュール、送信コンテクストインストラクションモジュール、受信コンテクストインストラクションモジュールを記憶する。制御状態機械は、電子ネットワークから受信されたデータパケットヘッダに含まれたコンテクスト情報に応じて、インストラクションモジュールの1つを選択する。
【0009】
制御状態機械は、例えば切換アドレス発生器と、リターンアドレスレジスタと、プログラムカウンタ選択器とを備える。切換アドレス発生器は、選択されたコンテクストに対応するインストラクションモジュールの第1のインストラクション用のアドレスである切換アドレスを出力する。リターンアドレスレジスタは、中断したインストラクションモジュールの、次に続くインストラクションのアドレスであるリターンアドレスを記憶する。プログラムカウンタ選択器は、メモリにおいて適切なインストラクションを選択して、プロセッサが実行するために、切換アドレス、リターンアドレス、又は次に続くアドレスを出力する。
【0010】
切換アドレス発生器は、サイクルアドレスレジスタと、送信アドレスレジスタと、受信アドレスレジスタとを備える。サイクルアドレスレジスタは、サイクルスタートインストラクションモジュールの第1のインストラクションのアドレスを記憶する。送信アドレスレジスタは、送信インストラクションモジュールの第1のインストラクションのアドレスを記憶する。受信アドレスレジスタは、受信インストラクションモジュールの第1のインストラクションのアドレスを記憶する。受信インストラクションモジュールは、電子ネットワークによってサポートされた各データチャンネルの受信インストラクションモジュールを含む。
【0011】
コンテクスト切換が起こると、インストラクションモジュールの実行は、中断される。リターンアドレスレジスタは、中断したインストラクションモジュールの実行を、中断が発生した時点で再開できるようにリターンアドレスを記憶する。したがって、本発明は、電子ネットワークにおけるコンテクスト切換の効果的で効率的な装置及び方法を実現することができる。
【0012】
発明の詳細な説明
本発明は、電子ネットワークにおける改善に関する。以下の説明は、当業者が発明を実施及び使用できるように述べ、特許出願書式(context of a patent application)及び特許出願要件(requirement)を満たすものである。当業者にとって好ましい実施例を様々に変形できることは明白であり、ここに述べる基本的な原理は、他の実施例にも適用することができる。したがって、本発明は、以下の実施例に限定されるものではなく、ここに述べる原理及び特徴に基づいて広く解釈されるべきである。
【0013】
本発明は、コンテクストに対応したインストラクションモジュール(instruction module)を記憶するよう設計されたメモリと、そのインストラクションモジュールを実行するプロセッサと、制御状態機械(control state machine)とを備える。制御状態機械は、電子ネットワークからのコンテクスト情報に基づいて、インストラクションモジュールの中から1つを選択し、プロセッサはそれを実行する。制御状態機械は、例えば、切換アドレス発生器と、リターンアドレスレジスタと、プログラムカウンタ選択器とを備える。切換アドレス発生器は、選択されたコンテクストインストラクションモジュールの第1のインストラクションのアドレスである切換アドレスを出力する。リターンアドレスレジスタは、インストラクションモジュールがコンテクスト切換のために中断されると、次に続くインストラクションのアドレスであるリターンアドレスを記憶する。プログラムカウンタ選択器は、切換アドレス、リターンアドレス又は次に続くアドレスを出力し、メモリにおいて適切なインストラクションを選択し、プロセッサが実行する。
【0014】
図1は、本発明を適用した電子ネットワーク110の具体的な構成を示すブロック図である。電子ネットワーク110は、機器A112(a)と、機器B112(b)と、機器C112(c)と、機器D112(d)と、機器E112(e)とを備える。なお、電子ネットワーク110は、これに限定されるものではない。電子ネットワーク110の他の様々な実施例として、さらに多い、又は少ない数の機器を多くの異なる配置で接続してもよい。機器A112(a)、機器B112(b)、ルート機器114、機器C112(c)、機器D112(d)及び機器E112(e)は、パーソナルコンピュータ、プリンタ、デジタルビデオディスク、テレビジョンセット、オーディオ装置、ビデオカセットレコーダ、デジタルビデオ放送用のセットトップボックスを含むが、これらに限定されない様々な種類の電子機器である。
【0015】
電子ネットワーク110内の機器は、例えばバスを用いて互いに通信を行う。バスは、ケーブル132(a)と、ケーブル132(b)と、ケーブル132(c)と、ケーブル132(d)と、ケーブル132(e)とからなる。機器B112(b)は、ケーブル132(a)を介して機器A112(a)に、ケーブル132(b)を介してルート機器114にそれぞれ接続される。ルート機器114は、ケーブル132(c)を介して機器C112(c)に、ケーブル132(d)を介して機器D112(d)にそれぞれ接続される。機器D112(d)は、ケーブル132(e)を介して機器E112(e)に接続される。図1に示す実施例において、ケーブル132(a)〜132(e)は、例えば高性能シリアルバス(High Performance Serial Bus)のIEEE1394−1995規格(1394-1995 IEEE Standard)に準拠している。IEEE1394−1995規格は、参照することによって本出願に組み込まれる。なお、他のネットワーク接続規格も、本発明の範囲内にある。
【0016】
電子ネットワーク110内の各機器は、そのネットワーク内の他の機器と通信を行うことができる。例えば、機器E112(e)は、ケーブル132(e)を介して機器D112(d)にデータを送信し、機器D112(d)はケーブル132(d)を介してルート機器114にデータを送信し、ルート機器114はケーブル132(b)を介して機器B112(b)にデータを送信することにより、機器B112(b)と通信を行うことができる。図1に示す実施例において、ルート機器114は、ネットワーク110内の全ての機器の動作を同期させるためのマスタクロック信号(master clock signal)を備える。電子ネットワーク110の他の実施例において、ネットワーク機器のいずれか1つが、ルート機器又はサイクルマスタ(cycle master)として指定されてもよい。
【0017】
図2は、本発明を適用した電子ネットワーク110内のネットワーク機器の具体的な構成を示すブロック図である。機器112は、例えばホストプロセッサ212と、入/出力(input/output:以下、I/Oという。)インタフェース214と、メモリ216と、デバイスバス218と、バスインタフェース220とを備える。なお、機器112の構成は、これに限定されるものではない。ホストプロセッサ212、I/Oインタフェース214、メモリ216、バスインタフェース220は、例えばデバイスバス218を介して通信を行う。
【0018】
ホストプロセッサ212は、適切な多目的マイクロプロセッサとして実現されてもよい。メモリ216は、読出し専用メモリ、ランダムアクセスメモリ、フロッピーディスク(登録商標)又はハードディスクのような様々な種類の不揮発性メモリを含む複数の記憶装置を組み合わせたものとして実現される。なお、メモリ216の構成は、これに限定されるものではない。I/Oインタフェース214は、ネットワーク110以外の、例えばインターネットなどのネットワークに対するインタフェースを行う。バスインタフェース220は、機器112とネットワーク110間のインタフェースを行い、ケーブル132を介してネットワーク110と通信を行う。バスインタフェース220は、パス226とデバイスバス218を介してホストプロセッサ212、I/O機器214及びメモリ216と通信を行う。また、バスインタフェース220は、パス224を介してメモリ216と直接通信を行う。
【0019】
図3は、図2に示す本発明を適用したバスインタフェース220の具体的な構成を示すブロック図である。バスインタフェース220は、物理層(physical layer:以下、PHYという。)312と、リンク層(link layer:以下、linkという。)314と、送信FIFOレジスタ(transmit first-in-first-out register:以下、TX FIFOという。)316と、受信FIFOレジスタ(以下、RX FIFOという。)318と、アイソクロノスデータプロセッサ(isochronous data processor:IDP)320と、送信ダイレクトメモリアクセスFIFO(以下、TX DMA FIFOという。)322と、受信ダイレクトメモリアクセスFIFO(以下、RX DMA FIFOという。)324と、送信ダイレクトメモリアクセス(以下、TX DMAという。)326と、受信ダイレクトメモリアクセス(以下、RX DMAという。)328とを備える。なお、バスインタフェース220の構成は、これに限定されるものではない。バスインタフェース220は、通常は、伝統的な非同期データ転送動作(asynchronous data transfer operations)を管理する非同期データプロセッサ(図示せず)も備える。
【0020】
アイソクロノスデータ転送は、通常は、時間に厳密な(time-sensitive)アプリケーションに用いられる。例えば、ネットワークを介してコンピュータ、テレビジョン又は他の表示機器に送信されるビデオ又はオーディオデータは、中断されることなく、適切なタイミングで、表示機器に受信される必要がある。アイソクロノスデータ転送によって、データは、そのデータが表示され、オーディオデータとビデオデータを同期させることができる速さと同じ速さで転送される。例えば、アナログ音声信号は、125マイクロ秒毎に1バイトの割合でデジタル化される。表示機器がアナログ音声信号を正確に再生するためには、この音声信号を125マイクロ秒毎に1バイトの割合で送る必要がある。
【0021】
IEEE1394シリアルバスネットワークにおいて、各バスサイクルは、通常125マイクロ秒であり、サイクルマスタによって決定されている。サイクルマスタは、125マイクロ秒毎にサイクルスタートパケットを生成し、ネットワーク110上の全ての電子機器のクロックを同期させる。アイソクロノスデータ転送は、アイソクロノスデータ転送の各バスサイクルに関連するアイソクロノス処理を用いて、多くのバスサイクルに渡って実行される。
【0022】
アイソクロノス処理において、プロセッサ時間及び他のシステムリソースは、特定のバスサイクル内で実行されなければならないと規定されているので、アイソクロノス処理は、各バスサイクルにおいて実行を終了することができる。バスサイクルにおけるアイソクロノス処理に用いられない時間は、通常、非同期データ転送処理に用いられ、互いに独立して実行する。アイソクロノス処理のスケジューリングは、決定されており、制限された待ち時間を有する。換言すると、いつアイソクロノス処理が行われるのかということは周知のことであり、各アイソクロノス処理は、与えられた時間内で行われる。
【0023】
図3に示す実施例において、機器112がケーブル132上でデータを受信すると、入力ビットストリームデータをバイトデータに変換した後、PHY312は、例えばパス330を介してリンク314にデータを送る。リンク314は、例えば入力データパケットからヘッダ情報を復号化し、入力データ及び様々なヘッダ情報を適切な宛先に割り当てる。ヘッダ情報は、対応するデータパケットの処理要求(processing requirements)を示しており、通常、チャンネル数、データの種類(例えば、非同期又はアイソクロノス)、信号速度を含んでいる。また、リンク314は、例えばバス132によって要求されるフォーマットで、出力データパケットのヘッダ情報を符号化する。
【0024】
電子ネットワーク110において、各バスサイクルは、例えばサイクルスタートパケットで始まる。サイクルスタートパケットは、サイクルマスタによって生成され、1つ以上の機器からバス132を介してデータが到着するということをネットワーク110上の全ての機器に通知する。リンク314は、サイクルスタートパケットをパス332を介してIDP320に割り当てる。リンク314は、機器112によって受信された他の種類のデータをパス336を介してRX FIFO318に割り当てる。RX FIFO318は、供給されたデータを一時的に記憶した後、そのデータを、例えばパス340を介してIDP320に送る。IDP320は、受信データをパス344を介してRX DMA FIFO324に送る。受信データに対するIDP320の機能を、図4を用いて以下にさらに説明する。RX DMA FIFO324は、その受信データを一時的に記憶した後、例えば、そのデータをパス348を介してRX DMA328に供給する。そして、RX DMA328は、例えば受信されたデータをパス224(b)を介してメモリ216(図2)に割り当てる。
【0025】
機器112がバス132を介してデータを送信するときは、TX DMA326は、例えばパス224(a)を介してメモリ216からデータをフェッチし、パス346を介してTX DMA FIFO322にデータを供給する。TX DMA FIFO322は、データを一時的に記憶した後、例えば、パス342を介してそのデータをIDP320に送る。送信データに対するIDP320の機能を、図4を用いて以下にさらに説明する。IDP320は、パス338を介してTX FIFO316にデータを送る。TX FIFO316は、データを一時的に記憶する後、例えば、パス334を介してリンク314にデータを送る。次に、リンク314は、適切なヘッダ情報を有する送信データパケットを生成し、そのパケットをPHY312に送る。そして、PHY312は、バス132上に送信するために、送信データパケットのバイトを送信ビットストリームに変換する。
【0026】
図4は、図3に示す本発明を適用したIDP320の具体的な構成を示すブロック図である。IDP320は、制御記憶412と、中央処理装置(central processing unit:以下、CPUという。)414と、送信(transmit:以下、TXという。)エンジン416と、受信(receive:以下、RXという。)エンジン418と、制御状態機械(control state machine)とを備える。なお、IDP320の構成は、これに限定されるものではない。
【0027】
図4に示す具体例において、制御記憶412は、メモリからなり、例えばパス444を介してCPU414に出力され、それに基づいてCPU414で実行される、様々なインストラクションを記憶する。これらのインストラクションは、例えばホストプロセッサ212(図2)によって、パス226を介して制御記憶412にロードされる。また、ホストプロセッサ212は、例えばCPU414内部のレジスタファイルにパス226を介して情報をロードする。さらに、ホストプロセッサ212は、制御記憶412及びCPU414内部のレジスタファイルの内容を読み出してもよい。制御記憶412の内容及び機能を、図5を用いて以下にさらに説明する。
【0028】
CPU414は、制御記憶412からのインストラクションに基いて、入力及び出力データに対して様々な処理を実行する。CPU414は、TXエンジン416と共に、出力データを処理し、RXエンジン418と共に、入力データを処理する。また、CPU414は、リンク314によって供給されたサイクルスタートパケットにおける情報を処理する。
【0029】
制御状態機械420は、パス332を介してリンク314(図3)から様々な信号を受信する。リンク314からの信号は、通常、バス132上のデータパケットのコンテクスト、信号速度、受信されたデータパケットのチャンネル数を含んでいる。また、制御状態機械420は、TX FIFO316、RX FIFO318、TX DMA FIFO332、及びRX DMA FIFO324がデータを受信するのにフルであるか又は可能であるかを示すFIFOフラグ442を受信する。また、制御状態機械420は、パス432を介してCPU414から制御信号を供給される。制御状態機械420は、CPU414によって実行される、制御記憶412内の適切なインストラクションを選択するために、これらの様々な信号を最大限に利用する。
【0030】
機器112がコンテクストを切り換えるように要求されると、制御状態機械420は、制御記憶412内の適切なインストラクションモジュールを選択する。例えば、機器112がバス132を介してデータを送信するとき、制御状態機械420は、CPU414によって実行される、制御記憶412内の送信インストラクションモジュールを選択する。機器112がバス132からデータを受信するとき、制御状態機械420は、CPU414によって実行される、制御記憶412内の受信インストラクションモジュールを選択する。制御状態機械420の機能を図5を用いて以下にさらに説明する。
【0031】
図5は、図4に示す本発明を適用した制御状態機械420及び制御記憶412の具体的な構成を示すブロック図である。制御状態機械420は、切換アドレス発生器512と、リターンアドレスレジスタ514と、プログラムカウンタ選択器516と、切換制御器518とを備える。なお、制御状態機械420の構成は、これに限定されるものではない。制御記憶412は、サイクルスタートインストラクション540と、送信インストラクション542と、チャンネル0(Ch−0)受信インストラクション544〜チャンネルN(Ch−N)受信インストラクション548を含む受信インストラクションとを含むインストラクションモジュールを記憶する。IEEE1394シリアルバスネットワークは、64までのデータチャンネルをサポートするが、いかなるチャンネル数をネットワークが利用していても、本発明の範囲内である。また、制御記憶412は、CPU414によって実行される他のインストラクションを含んでもよい。
【0032】
機器112が、バス132を介してサイクルスタートパケットを受信すると、切換制御器518は、パス526を介して切換アドレス発生器512に制御信号を送る。切換アドレス発生器512は、これに応じて、サイクルスタートインストラクション540の第1のインストラクションの適切なアドレス、すなわち切換アドレスを生成する。切換アドレス発生器512は、切換アドレスをパス520を介してプログラムカウンタ選択器516に出力する。切換制御器518は、切換アドレスを選択するために、パス528を介してプログラムカウンタ選択器516に制御信号を送り、その後、その切換アドレスは、パス430を介して制御記憶412に出力される。制御記憶412は、切換アドレスに応じて、サイクルスタートインストラクション540の第1のインストラクションを、パス444を介してCPU414に送る。そして、切換制御器518は、プログラムカウンタ選択器516に制御信号を送り、プログラムカウンタ選択器516は、連続したアドレスを制御記憶412に出力し、連続したサイクルスタートインストラクション540がCPU414に出力され、実行される。
【0033】
機器112がバス132を介してネットワーク110にデータを送信するとき、切換制御器518は、パス432を介してCPU414からのスタート信号を受信する。そして、切換制御器518は、例えばFIFOフラグ442をチェックし、TX DMA FIFO322(図3)が空ではないかを確かめる。TX DMA FIFO322が空でないときには、切換制御器518は、切換アドレス発生器512に制御信号を送り、切換アドレス発生器512は、これに応じて送信インストラクション542の第1のインストラクション用の適切なアドレス、すなわち切換アドレスを生成する。そして、切換制御器518は、切換アドレスを選択するために、プログラムカウンタ選択器516に制御信号を送る。そして、制御記憶412は、CPU414に送信インストラクション542の第1のインストラクションを送り、TXエンジン416と共に、TX DMA FIFO322内のデータの送信を開始する。次に、切換制御器518は、制御信号をプログラムカウンタ選択器516に送り、プログラムカウンタ選択器516は、送信インストラクション542用の連続したアドレスを出力する。
【0034】
機器112がデータを送信している間に、ネットワーク110内の他の機器は、機器112にデータの送信を開始することができる。機器112が受信コンテクストに切り換わらず、データの受信を開始しないときには、データは、喪失する。したがって、機器112は、例えば送信処理を中断し、データの受信を開始する。機器112は、送られてくるデータを受信した後、中断した上述の送信処理における送信を再開する。
【0035】
機器112がデータの送信を再開するためには、リターンアドレスレジスタ514は、例えば次に続く送信インストラクション542のアドレスを記憶する。プログラムカウンタ選択器516は、パス524を介して次に続く送信インストラクション542のアドレスを出力する。切換制御器518は、リターンアドレスレジスタ514に制御信号を送り、リターンアドレスレジスタ514は、次の送信インストラクション542のアドレスを記憶する。このように、次に続く送信インストラクション542のアドレスは、リターンアドレスである。
【0036】
パス332を介してリンク314からの情報及びパス526を介して切換制御器518からの制御信号に応答して、切換アドレス発生器512は、適切な受信インストラクションモジュール、例えばCh−1受信インストラクション546の第1のインストラクション用のアドレスを出力する。切換制御器518は、切換アドレスを選択して制御記憶412に出力するために、プログラムカウンタ選択器516に制御信号を送る。制御記憶412は、Ch−1受信インストラクションの第1のインストラクションをCPU414に各々送り、CPU414はそのインストラクションを実行する。そして、切換制御器518は、プログラムカウンタ選択器516に制御信号を送り、これによってCh−1受信インストラクション546の次に続くアドレスは、制御記憶412に出力される。
【0037】
CPU414がCh−1受信インストラクション546の実行を終了すると、機器112は、例えば中断された送信処理におけるデータの送信を再開する。切換制御器518は、プログラムカウンタ選択器516に制御信号を送り、プログラムカウンタ選択器516は、切換アドレスを選択して制御記憶412に出力する。プログラムカウンタ選択器516は、制御記憶412にリターンアドレスを出力し、制御記憶412は、適切な送信インストラクション542をCPU414に送り、データの送信を再び開始する。次に、切換制御器518は、プログラムカウンタ選択器516に制御信号を送り、プログラムカウンタ選択器516は、残りの送信インストラクション542の連続したアドレスを出力する。
【0038】
切換制御器518は、例えば状態機械(state machine)であり、CPU414からのスタート信号を受信すると、データが機器112によって現在送信されていなくても、コンテクスト切換が要求されるまで、送信モードを維持する。コンテクスト切換が要求されると、切換制御器518は、受信モード又はサイクルスタートモードに変わり、上述したように、切換アドレス発生器512、リターンアドレスレジスタ514及びプログラムカウンタ選択器516に適切な制御信号を送る。受信処理又はサイクルスタート処理が終了すると、切換制御器518は、送信モードに戻る。
【0039】
図6は、図5に示す本発明を適用した切換アドレス発生器512及びプログラムカウンタ選択器516の具体的な構成を示すブロック図である。切換アドレス発生器512は、受信(receive:以下、RXという。)アドレスレジスタ612と、サイクルスタート(cycle start:以下、CSという。)アドレスレジスタ614と、送信(transmit:以下、TXという。)アドレスレジスタ616と、マルチプレクサ618とを備える。なお、切換アドレス発生器512の構成は、これに限定されるものではない。
【0040】
ホストプロセッサ212(図2)は、インストラクションを制御記憶412に書き込み、その後、各インストラクションモジュールの第1のインストラクションをパス530を介して切換アドレス発生器512に書き込む。第1のサイクルスタートインストラクション540のアドレスは、CSアドレスレジスタ614に記憶され、第1の送信インストラクション542のアドレスは、TXアドレスレジスタ616に記憶される。各受信インストラクションモジュール544〜548の第1のインストラクションのアドレスは、RXアドレスレジスタ612に記憶される。リンク314からRXアドレスレジスタ612への信号は、どの受信インストラクションアドレスが、パス632を介してマルチプレクサ618に出力されるかを決定する。マルチプレクサ618に出力される受信インストラクションアドレスは、例えば機器112によって受信されるデータのチャンネルに相当する。
【0041】
切換アドレス発生器512に記憶された、あるアドレスは、パス526を介した切換制御器518からの制御信号に応答して、プログラムカウンタ選択器516に出力される。マルチプレクサ618の入力0が選択されると、適切な受信インストラクションモジュールの第1のアドレスは、切換アドレスになり、プログラムカウンタ選択器516に出力される。マルチプレクサ618の入力1が選択されると、第1のサイクルスタートインストラクションは、切換アドレスになり、プログラムカウンタ選択器516に出力される。マルチプレクサ618の入力2が選択されると、第1の送信インストラクションは、切換アドレスになり、プログラムカウンタ選択器516に出力される。
【0042】
プログラムカウンタ選択器516は、マルチプレクサ620と、プログラムカウンタ(program counter:以下、PCという。)フリップフロップ622と、インクリメンタ(incrementer)624とを備える。なお、プログラムカウンタ選択器516の構成は、これに限定されるものではない。プログラムカウンタ選択器516は、パス528を介した切換制御器518からの制御信号に応答して、切換アドレス、リターンアドレス又は次に続くアドレスのいずれかを出力する。マルチプレクサ620の入力1が選択されると、切換アドレスが、制御記憶412に出力される。マルチプレクサ620の入力2が選択されると、リターンアドレスが、制御記憶412に出力される。
【0043】
マルチプレクサ620の入力0が選択されると、次に続くアドレスが、制御記憶412に出力される。次に続くアドレスは、インクリメンタ624によって生成され、インクリメンタ624は、プログラムカウンタ選択器516の現在の出力が供給され、現在の出力に1を足す。次に続くアドレスは、パス642を介してマルチプレクサ620、及びパス524を介してリターンアドレスレジスタ514に入力される。図5と関連して上述されているように、送信が中断されると、切換制御器518からの制御信号に応答して、リターンアドレスレジスタ514は、次に続くアドレスを記憶する。PCフリップフロップ622は、現在選択されているアドレスを制御記憶412にラッチ(latch)する。
【0044】
図7は、本発明を適用した電子ネットワークにおけるコンテクスト切換の方法を示すフローチャートである。最初に、ステップ710において、制御状態機械420は、CPU414からのスタート信号を待つ。制御状態機械420は、スタート信号を受信すると、ステップ712において、制御記憶412における送信インストラクション542の第1のインストラクションのアドレスを選択する。その後、ステップ714において、制御記憶412は、そのインストラクションをCPU414に送り、CPU414は、その選択された送信インストラクションを実行する。各送信インストラクションが実行されると、ステップ716において、制御状態機械420は、リンク314によって検出(detect)されるコンテクスト切換が行われたかどうかを判定する。コンテクスト切換が行われていないと、ステップ718において、制御状態機械420は、送信処理が終了したかどうかを判定する。送信処理が終了しているときには、図7に示す方法ステップ710に戻る。送信処理が終了していないときには、図7に示す方法ステップ714に戻り、CPU414は、送信処理を実行し続ける。
【0045】
ステップ716において、制御状態機械420は、コンテクスト切換を行うべきかどうかを判定し、ステップ720において、制御状態機械420は、リターンアドレスレジスタ514に、次に続く送信インストラクションのアドレスを記憶し、そのアドレスはリターンアドレスになる。ステップ722において、制御状態機械420は、リンク314からの情報に基づいて、要求されたコンテクストは、サイクルスタートコンテクスト又は受信コンテクストであるかどうかを判定する。要求されたコンテクストがサイクルスタートコンテクストであれば、方法ステップは、ステップ726に進む。要求されたコンテクストが受信コンテクストであれば、方法ステップは、ステップ724に進む。
【0046】
サイクルスタートコンテクストの間、ステップ726において、制御状態機械420は、制御記憶412内のサイクルスタートインストラクションの第1のインストラクションのアドレスを選択する。その後、ステップ730において、CPU414は、サイクルスタートインストラクション540を順次、実行し、サイクルスタート処理を実行する。ステップ734において、制御状態機械420は、各インストラクションを実行した後、サイクルスタート処理が終了したかどうかを判定する。サイクルスタート処理が終了していなければ、図7に示す方法ステップ730に戻り、サイクルスタート処理を続ける。なお、サイクルスタート処理が終了すると、図7に示す方法ステップ736に進む。
【0047】
受信コンテクストの間、ステップ724において、制御状態機械420は、制御記憶412内の適切な受信インストラクションモジュール(例えば、Ch−0インストラクション544)の第1のインストラクションのアドレスを選択する。その後、ステップ728において、CPU414は、受信インストラクションを順次、実行し、受信処理を実行する。ステップ732において、制御状態機械420は、各インストラクションを実行した後、受信処理が終了したかどうかを判定する。受信処理が終了していなければ、図7に示す方法ステップ728に戻り、受信処理を続ける。
【0048】
なお、受信処理が終了すると、ステップ736において、制御状態機械420は、リターンアドレスレジスタ514からのリターンアドレスを読み出し(retrieve)、制御記憶412にリターンアドレスを送る。その後、図7に示す方法は、ステップ714に戻り、CPU414は、リターンアドレスに対応する送信インストラクションに基づいて、中断された送信処理を再開する。上述した図7の方法ステップは、サイクルスタート処理又は受信処理によって中断された送信処理を説明する。なお、他のコンテクスト切換シナリオは、同じように本発明の範囲内である。
【0049】
以上、本発明を好ましい実施例を用いて説明したが、この開示によって、他の実施例を実現できることは、当事者にとって明らかである。例えば、本発明は、上述の好ましい実施例以外の構成及び方法を用いて、容易に実現することができる。また、本発明は、上述した好ましい実施例とは異なるシステムを用いて効果的に用いることができる。したがって、好ましい実施例を様々に変形することは、本発明の範囲であり、本発明は、請求の範囲のみによって限定されるものである。
【図面の簡単な説明】
【図1】 本発明を適用した電子ネットワークの具体的な構成を示すブロック図である。
【図2】 本発明を適用したネットワーク機器の具体的な構成を示すブロック図である。
【図3】 図2に示す本発明を適用したバスインタフェースの具体的な構成を示すブロック図である。
【図4】 図3に示す本発明を適用したアイソクロノスデータプロセッサ(IDP)の具体的な構成を示すブロック図である。
【図5】 図4に示す本発明を適用した制御状態機械及び制御記憶の具体的な構成を示すブロック図である。
【図6】 図5に示す本発明を適用した切換アドレス発生器及びプログラムカウンタ選択器の具体的な構成を示すブロック図である。
【図7】 本発明の実施例を適用した電子ネットワークにおけるコンテクスト切換の方法を示すフローチャートである。

Claims (46)

  1. 電子ネットワーク内で、コンテクストを切り換えるコンテクスト切換装置において、
    上記コンテクストに対応した各インストラクションセットを記憶するメモリと、
    上記メモリに接続され、上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じて上記インストラクションセットの1つを選択する制御状態機械と、
    上記メモリに接続され、上記インストラクションセットを実行するプロセッサとを備え、
    上記制御状態機械は、電子機器のデフォルトデータ送信モードに対応する第1のコンテクストインストラクションセットの実行を中断し、上記電子機器のデータ受信モードに対応する第2のコンテクストインストラクションセットを実行ために選択し、上記第2のコンテクストインストラクションセットの実行が終了したときに上記第1のコンテクストインストラクションセットに戻り、且つ
    上記制御状態機械は、上記第1のコンテクストインストラクションセットを再開するためのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタを備える
    ことを特徴とするコンテクスト切換装置。
  2. ホスト機器と上記電子ネットワーク間のインタフェース内に実現されていることを特徴とする請求項1記載のコンテクスト切換装置。
  3. 上記インタフェース内のアイソクロノスデータプロセッサ内に実現されていることを特徴とする請求項2記載のコンテクスト切換装置。
  4. 上記電子ネットワークは、IEEE1394シリアルバス相互接続規格に準拠したシリアルバスネットワークであることを特徴とする請求項1記載のコンテクスト切換装置。
  5. 上記制御状態機械は、上記第1のコンテクストインストラクションセットの最後の実行インストラクションの次に続くインストラクションにおいて、上記第1のコンテクストインストラクションセットに戻ることを特徴とする請求項1記載のコンテクスト切換装置。
  6. 上記制御状態機械は、送信インストラクションセットの実行を中断し、受信インストラクションセットを選択して実行し、上記受信インストラクションセットが終了したときに上記送信インストラクションセットに戻ることを特徴とする請求項1記載のコンテクスト切換装置。
  7. 上記制御状態機械は、送信インストラクションセットの実行を中断し、サイクルスタートインストラクションセットを選択して実行し、上記サイクルスタートインストラクションセットが終了したときに上記送信インストラクションセットに戻ることを特徴とする請求項1記載のコンテクスト切換装置。
  8. 上記制御状態機械は、上記コンテクスト情報に応じて上記インストラクションセットのうちの1つである第1のインストラクションに対応する切換アドレスを生成する切換アドレス発生器をさらに備える請求項1記載のコンテクスト切換装置。
  9. 上記制御状態機械は、上記切換アドレス、上記リターンアドレス、及び次に続くアドレスを備えるグループの1つを選択するプログラムカウンタ選択器をさらに備える請求項1記載のコンテクスト切換装置。
  10. 上記制御状態機械は、上記制御状態機械が第2のコンテクスト処理を実行するために第2のコンテクストモードに変化しない限り、上記ホスト機器がデータを送信するときも、上記ホスト機器がデータを送信しないときでも、送信モードのままであることを特徴とする請求項2記載のコンテクスト切換装置。
  11. 上記切換アドレス発生器は、送信アドレスレジスタと、受信アドレスレジスタと、サイクルスタートアドレスレジスタとを備える請求項8記載のコンテクスト切換装置。
  12. 上記送信アドレスレジスタは、上記メモリに記憶された第1の送信インストラクションの送信アドレスを記憶することを特徴とする請求項11記載のコンテクスト切換装置。
  13. 上記受信アドレスレジスタは、上記メモリに記憶された第1の受信インストラクションの受信アドレスを記憶することを特徴とする請求項11記載のコンテクスト切換装置。
  14. 上記受信アドレスレジスタは、唯一のデータチャンネルに対応した第1の受信インストラクションの受信アドレスを記憶することを特徴とする請求項11記載のコンテクスト切換装置。
  15. 上記受信アドレスレジスタは、唯一のデータチャンネルに対応した8個の第1の受信インストラクションの8個の受信アドレスを記憶することを特徴とする請求項11記載のコンテクスト切換装置。
  16. 上記サイクルスタートアドレスレジスタは、上記メモリに記憶された第1のサイクルスタートインストラクションのサイクルスタートアドレスを記憶することを特徴とする請求項11記載のコンテクスト切換装置。
  17. 上記ホスト機器は、民生用電子機器であることを特徴とする請求項2記載のコンテクスト切換装置。
  18. 上記民生用電子機器は、デジタルビデオ記録再生装置であることを特徴とする請求項17記載のコンテクスト切換装置。
  19. 電子ネットワーク内で、コンテクストを切り換えるコンテクスト切換方法において、
    上記コンテクストに対応した各インストラクションセットをメモリに記憶し、
    制御状態機械を用いて、上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じて上記インストラクションセットの1つを選択し、
    上記メモリに接続されたプロセッサを用いて、上記インストラクションセットを実行し、
    ここで、上記制御状態機械は、電子機器のデフォルトデータ送信モードに対応する第1のコンテクストインストラクションセットの実行を中断し、上記電子機器のデータ受信モードに対応する第2のコンテクストインストラクションセットを実行ために選択し、上記第2のコンテクストインストラクションセットの実行が終了したときに上記第1のコンテクストインストラクションセットに戻り、且つ上記制御状態機械は、上記第1のコンテクストインストラクションセットを再開するためのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタを備えることを特徴とするコンテクスト切換方法。
  20. 上記メモリ、上記制御状態機械及び上記プロセッサは、ホスト機器と上記電子ネットワーク間のインタフェース内に実現されていることを特徴とする請求項19記載のコンテクスト切換方法。
  21. 上記メモリ、上記制御状態機械及び上記プロセッサは、上記インタフェース内のアイソクロノスデータプロセッサ内に実現されていることを特徴とする請求項20記載のコンテクスト切換方法。
  22. 上記電子ネットワークは、IEEE1394シリアルバス相互接続規格に準拠したシリアルバスネットワークであることを特徴とする請求項19記載のコンテクスト切換方法。
  23. 上記制御状態機械は、上記第1のコンテクストインストラクションセットの最後の実行インストラクションの次に続くインストラクションにおいて、上記第1のコンテクストインストラクションセットに戻ることを特徴とする請求項19記載のコンテクスト切換方法。
  24. 上記制御状態機械は、送信インストラクションセットの実行を中断し、受信インストラクションセットを選択して実行し、上記受信インストラクションセットが終了したときに上記送信インストラクションセットに戻ることを特徴とする請求項19記載のコンテクスト切換方法。
  25. 上記制御状態機械は、送信インストラクションセットの実行を中断し、サイクルスタートインストラクションセットを選択して実行し、上記サイクルスタートインストラクションセットが終了したときに上記送信インストラクションセットに戻ることを特徴とする請求項19記載のコンテクスト切換方法。
  26. 上記制御状態機械は、上記コンテクスト情報に応じて上記インストラクションセットのうちの1つである第1のインストラクションに対応する切換アドレスを生成する切換アドレス発生器をさらに備える請求項19記載のコンテクスト切換方法。
  27. 上記制御状態機械は、上記切換アドレス、上記リターンアドレス、及び次に続くアドレスを備えるグループの1つを選択するプログラムカウンタ選択器をさらに備える請求項19記載のコンテクスト切換方法。
  28. 上記制御状態機械は、上記制御状態機械が第2のコンテクスト処理を実行するために第2のコンテクストモードに変化しない限り、上記ホスト機器がデータを送信するときも、上記ホスト機器がデータを送信しないときでも、送信モードのままであることを特徴とする請求項20記載のコンテクスト切換方法。
  29. 上記切換アドレス発生器は、送信アドレスレジスタと、受信アドレスレジスタと、サイクルスタートアドレスレジスタとを備える請求項26記載のコンテクスト切換方法。
  30. 上記送信アドレスレジスタは、上記メモリに記憶された第1の送信インストラクションの送信アドレスを記憶することを特徴とする請求項29記載のコンテクスト切換方法。
  31. 上記受信アドレスレジスタは、上記メモリに記憶された第1の受信インストラクションの受信アドレスを記憶することを特徴とする請求項29記載のコンテクスト切換方法。
  32. 上記受信アドレスレジスタは、唯一のデータチャンネルに対応し、上記メモリに記憶された第1の受信インストラクションの受信アドレスを記憶することを特徴とする請求項29記載のコンテクスト切換方法
  33. 上記受信アドレスレジスタは、唯一のデータチャンネルに対応し、上記メモリに記憶された8個の第1の受信インストラクションの8個の受信アドレスを記憶することを特徴とする請求項29記載のコンテクスト切換方法。
  34. 上記サイクルスタートアドレスレジスタは、上記メモリに記憶された第1のサイクルスタートインストラクションのサイクルスタートアドレスを記憶することを特徴とする請求項29記載のコンテクスト切換方法。
  35. 上記ホスト機器は、民生用電子機器であることを特徴とする請求項20記載のコンテクスト切換方法。
  36. 上記民生用電子機器は、デジタルビデオ記録再生装置であることを特徴とする請求項35記載のコンテクスト切換方法。
  37. 上記電子ネットワークからの上記コンテクスト情報は、対応するデータパケットのヘッダ情報に含まれ、上記対応するデータパケットの処理要求を示すことを特徴とする請求項19記載のコンテクスト切換方法。
  38. 上記切換アドレス発生器は、第1の送信インストラクションの送信アドレスを上記プログラムカウンタ選択器に出力し、上記プログラムカウンタ選択器は、上記送信アドレスを上記メモリに出力して、上記第1の送信インストラクションを選択することを特徴とする請求項27記載のコンテクスト切換方法。
  39. 上記プログラムカウンタ選択器は、次に続く送信アドレスを上記メモリに出力して、上記次に続く送信インストラクションを選択することを特徴とする請求項38記載のコンテクスト切換方法。
  40. 電子ネットワーク内で、コンテクストを切り換えるコンテクスト切換方法において、
    上記コンテクストに対応した各インストラクションセットをメモリに記憶し、
    制御状態機械を用いて、上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じて上記インストラクションセットの1つを選択し、
    上記メモリに接続されたプロセッサを用いて、上記インストラクションセットを実行し、
    ここで、上記制御状態機械は、上記コンテクスト情報に応じて上記インストラクションセットのうちの1つである第1のインストラクションに対応する切換アドレスを生成する切換アドレス発生器を備え、
    上記制御状態機械は、中断したインストラクションセットのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタをさらに備え、
    上記制御状態機械は又、上記切換アドレス、上記リターンアドレス、及び次に続くアドレスを備えるグループの1つを選択するプログラムカウンタ選択器を備え、
    上記切換アドレス発生器は、第1の送信インストラクションの送信アドレスを上記プログラムカウンタ選択器に出力し、上記プログラムカウンタ選択器は、上記送信アドレスを上記メモリに出力して、上記第1の送信インストラクションを選択し、
    上記プログラムカウンタ選択器は、次に続く送信アドレスを上記メモリに出力して、上記次に続く送信インストラクションを選択し、且つ
    上記プログラムカウンタ選択器は、上記電子ネットワークからのコンテクスト情報に応じて、次に続く送信アドレスを上記リターンアドレスレジスタに出力し、上記リターンアドレスレジスタは、上記次に続く送信アドレスを上記リターンアドレスとして記憶することを特徴とするコンテクスト切換方法。
  41. 上記切換アドレス発生器は、上記電子ネットワークからのヘッダ情報に応じて、受信インストラクションセットの第1の受信インストラクションの受信アドレスを上記プログラムカウンタ選択器に出力して、上記プログラムカウンタ選択器は、上記受信アドレスを上記メモリに出力し、上記第1の受信インストラクションを選択することを特徴とする請求項40記載のコンテクスト切換方法。
  42. 上記プログラムカウンタ選択器は、次に続く受信アドレスを上記メモリに出力して、上記次に続く受信アドレスを選択することを特徴とする請求項41記載のコンテクスト切換方法。
  43. 上記リターンアドレスレジスタは、上記リターンアドレスを上記プログラムカウンタ選択器に出力し、上記プログラムカウンタ選択器は、上記受信インストラクションセットが終了するとリターン送信インストラクションを選択することを特徴とする請求項42記載のコンテクスト切換方法。
  44. 電子ネットワーク内で、コンテクストを切り換えるコンテクスト切換方法において、
    コンテクストに対応した各インストラクションセットを記憶するメモリと、
    上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じて、上記インストラクションセットの1つの第1のインストラクションに対応した切換アドレスを発生させる切換アドレス発生器と、
    上記インストラクションセットの1つのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタと、
    上記メモリに接続され、上記切換アドレス、上記リターンアドレス、及び次に続くアドレスからなるグループから1つを、現インストラクションのアドレスとして選択するプログラムカウンタ選択器と、
    上記メモリに接続され、上記現在のインストラクションを実行するプロセッサとを備えるコンテクスト切換装置。
  45. コンピュータ読取り可能な記録媒体において、
    コンテクストに対応した各インストラクションセットをメモリに記憶するステップと、
    制御状態機械を用い、上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じ、上記インストラクションセットの1つを選択し、ここで、上記制御状態機械は、電子機器のデフォルトデータ送信モードに対応する第1のコンテクストインストラクションセットの実行を中断し、第2のコンテクストインストラクションセットを実行ために選択し、上記電子機器のデータ受信モードに対応する上記第2のコンテクストインストラクションセットの実行が終了したときに上記第1のコンテクストインストラクションセットに戻り、且つ上記制御状態機械は、上記第1のコンテクストインストラクションセットを再開するためのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタを備えるものであるステップと、
    上記メモリに接続されたプロセッサを用いて、上記インストラクションセットを実行するステップとを実行することにより、電子ネットワークにおいて、コンテクストの切換を行うプログラムインストラクションが記録されたコンピュータ読取り可能な記録媒体。
  46. 電子ネットワーク内で、コンテクストを切り換えるコンテクスト切換装置において、
    コンテクストに対応した各インストラクションセットをメモリに記憶する記憶手段と、
    上記電子ネットワークからの対応するデータパケットのヘッダ情報に含まれる上記電子ネットワークからのコンテクスト情報に応じて、上記インストラクションセットの1つを選択する選択手段と、
    コンテクスト切換を行うために上記インストラクションセットを実行する実行手段とを備え、
    上記選択手段は、電子機器のデフォルトデータ送信モードに対応する第1のコンテクストインストラクションセットの実行を中断し、上記電子機器のデータ受信モードに対応する第2のコンテクストインストラクションセットを実行ために選択し、上記第2のコンテクストインストラクションセットの実行が終了したときに上記第1のコンテクストインストラクションセットに戻り、且つ
    上記選択手段は、上記第1のコンテクストインストラクションセットを再開するためのリターンインストラクションに対応したリターンアドレスを記憶するリターンアドレスレジスタを備える
    ことを特徴とするコンテクスト切換装置。
JP2001500525A 1999-05-28 2000-04-20 電子ネットワークにおけるコンテクストを切り換える装置及び方法 Expired - Lifetime JP4703074B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/322,632 US6519265B1 (en) 1999-05-28 1999-05-28 System and method for context switching in an electronic network
US09/322,632 1999-05-28
PCT/US2000/010976 WO2000074346A1 (en) 1999-05-28 2000-04-20 System and method for context switching in an electronic network

Publications (2)

Publication Number Publication Date
JP2003501892A JP2003501892A (ja) 2003-01-14
JP4703074B2 true JP4703074B2 (ja) 2011-06-15

Family

ID=23255723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001500525A Expired - Lifetime JP4703074B2 (ja) 1999-05-28 2000-04-20 電子ネットワークにおけるコンテクストを切り換える装置及び方法

Country Status (6)

Country Link
US (1) US6519265B1 (ja)
JP (1) JP4703074B2 (ja)
AU (1) AU4485900A (ja)
MY (1) MY125195A (ja)
TW (1) TW457792B (ja)
WO (1) WO2000074346A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010015977A1 (en) * 1999-10-08 2001-08-23 Stefan Johansson Selective reception
US20010014085A1 (en) * 1999-10-08 2001-08-16 Microsoft Corporation Originator authentication
US7318090B1 (en) * 1999-10-20 2008-01-08 Sony Corporation Method for utilizing concurrent context switching to support isochronous processes
SE522408C2 (sv) * 2000-04-27 2004-02-10 Microsoft Corp Datorprogram och förfarande för automatiserad testning av en dators funktionalitet
SE518751C2 (sv) * 2001-01-03 2002-11-19 Microsoft Corp Metod och system där en extern server erhåller information om enskilda mobila terminalers radioöverföringskapacitet
US6993598B2 (en) * 2003-10-09 2006-01-31 International Business Machines Corporation Method and apparatus for efficient sharing of DMA resource
US7136943B2 (en) * 2004-03-18 2006-11-14 International Business Machines Corporation Method and apparatus for managing context switches using a context switch history table
US7606363B1 (en) 2005-07-26 2009-10-20 Rockwell Collins, Inc. System and method for context switching of a cryptographic engine
US20070050507A1 (en) * 2005-08-24 2007-03-01 Nokia Corporation Context discovery for DNS names
US8957886B2 (en) 2010-01-27 2015-02-17 Industrial Technology Research Institute Power-saving and context-showing display information converting system and corresponding apparatus
JP5328833B2 (ja) * 2011-04-05 2013-10-30 キヤノン株式会社 ダイレクトメモリアクセスシステム及びその制御方法
US9417876B2 (en) * 2014-03-27 2016-08-16 International Business Machines Corporation Thread context restoration in a multithreading computer system
CN115567080A (zh) * 2022-09-14 2023-01-03 上海龙旗科技股份有限公司 一种基于usart的通信方法、系统及设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS635691A (ja) * 1986-06-25 1988-01-11 Matsushita Electric Works Ltd 集合住宅管理システム
JPH06266355A (ja) * 1993-03-16 1994-09-22 Casio Comput Co Ltd リアルタイム音楽装置
WO1997048056A1 (en) * 1996-06-14 1997-12-18 Silicon Image, Inc. A system and method for sending multiple data signals over a serial link
WO1998047271A1 (en) * 1997-04-15 1998-10-22 Sony Electronics, Inc. Protocol processor for manipulating a stream of data
JPH1165855A (ja) * 1997-08-26 1999-03-09 Canon Inc プロセッサ
JP2000222338A (ja) * 1998-11-25 2000-08-11 Canon Inc 周辺機器及び周辺機器制御方法及び周辺機器制御システム及び周辺機器制御プログラムを記憶した記憶媒体及び周辺機器制御プログラムを送出する送出装置及び周辺機器制御プログラム製品及び情報処理装置及び情報処理方法及び情報処理プログラムを記憶した記憶媒体及び情報処理プログラムを送出する送出装置及び情報処理プログラム製品

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450411A (en) * 1994-09-02 1995-09-12 At&T Global Information Solutions Company Network interface for multiplexing and demultiplexing isochronous and bursty data streams in ATM networks
JPH08320795A (ja) * 1995-05-24 1996-12-03 Fuji Xerox Co Ltd プログラム制御システム
US5825774A (en) 1995-07-12 1998-10-20 3Com Corporation Packet characterization using code vectors
US5802288A (en) * 1995-10-26 1998-09-01 International Business Machines Corporation Integrated communications for pipelined computers
US5960212A (en) * 1996-04-03 1999-09-28 Telefonaktiebolaget Lm Ericsson (Publ) Universal input/output controller having a unique coprocessor architecture
SG77135A1 (en) * 1996-04-26 2000-12-19 Texas Instruments Inc Method and system for assigning a channel number to a received data packet
JPH1040211A (ja) * 1996-04-30 1998-02-13 Texas Instr Inc <Ti> パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路
US6061711A (en) * 1996-08-19 2000-05-09 Samsung Electronics, Inc. Efficient context saving and restoring in a multi-tasking computing system environment
US5949994A (en) * 1997-02-12 1999-09-07 The Dow Chemical Company Dedicated context-cycling computer with timed context
DE69841526D1 (de) * 1997-03-04 2010-04-15 Panasonic Corp Zur effizienten Ausführung vieler asynchronen Ereignisaufgaben geeigneter Prozessor
DE19728971C2 (de) 1997-07-07 2003-10-09 Bosch Gmbh Robert Datenverarbeitungsvorrichtung und -verfahren
US6169745B1 (en) * 1999-06-18 2001-01-02 Sony Corporation System and method for multi-level context switching in an electronic network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS635691A (ja) * 1986-06-25 1988-01-11 Matsushita Electric Works Ltd 集合住宅管理システム
JPH06266355A (ja) * 1993-03-16 1994-09-22 Casio Comput Co Ltd リアルタイム音楽装置
WO1997048056A1 (en) * 1996-06-14 1997-12-18 Silicon Image, Inc. A system and method for sending multiple data signals over a serial link
WO1998047271A1 (en) * 1997-04-15 1998-10-22 Sony Electronics, Inc. Protocol processor for manipulating a stream of data
JPH1165855A (ja) * 1997-08-26 1999-03-09 Canon Inc プロセッサ
JP2000222338A (ja) * 1998-11-25 2000-08-11 Canon Inc 周辺機器及び周辺機器制御方法及び周辺機器制御システム及び周辺機器制御プログラムを記憶した記憶媒体及び周辺機器制御プログラムを送出する送出装置及び周辺機器制御プログラム製品及び情報処理装置及び情報処理方法及び情報処理プログラムを記憶した記憶媒体及び情報処理プログラムを送出する送出装置及び情報処理プログラム製品

Also Published As

Publication number Publication date
JP2003501892A (ja) 2003-01-14
US6519265B1 (en) 2003-02-11
MY125195A (en) 2006-07-31
TW457792B (en) 2001-10-01
AU4485900A (en) 2000-12-18
WO2000074346A1 (en) 2000-12-07

Similar Documents

Publication Publication Date Title
US6667988B1 (en) System and method for multi-level context switching in an electronic network
US6006286A (en) System for controlling data packet transfers by associating plurality of data packet transfer control instructions in packet control list including plurality of related logical functions
TW498208B (en) Data transmission control device and electron device
JP4155413B2 (ja) アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ
JP4703074B2 (ja) 電子ネットワークにおけるコンテクストを切り換える装置及び方法
KR19990082226A (ko) 버스 구조 위에서의 데이터 전달 및 버스 관리를 위한 응용 프로그래밍 인터페이스
US20010011310A1 (en) Method of and apparatus for capturing and processing continuous media-based data streams transmitted over an ieee 1394 serial bus
US20110064094A1 (en) Signal processing apparatus and method, recording medium and program
US6363428B1 (en) Apparatus for and method of separating header information from data in an IEEE 1394-1995 serial bus network
US6904475B1 (en) Programmable first-in first-out (FIFO) memory buffer for concurrent data stream handling
US6728834B2 (en) System and method for effectively implementing isochronous processor cache
KR20010060188A (ko) 데이터 소스, 데이터 변환 장치, 데이터 역변환 장치,보조 데이터 파일 생성장치, 수신 방법, 매체 및 정보 집합
KR100516411B1 (ko) 패킷화된 데이터 통신 인터페이스 장치의 pci-직렬 버스 인터페이스 장치를 자율적으로 동작하는 방법 및 시스템
US6041286A (en) Apparatus for and method of accurately obtaining the cycle time of completion of transmission of video frames within an isochronous stream of data transmitted over an IEEE 1394 serial bus network
JP4033915B2 (ja) データストリーム制御方法及び装置
JPH11177588A (ja) 電子機器及びデータ通信方法
JP4047498B2 (ja) データ処理装置
US6535940B1 (en) System and method for fast data transfers in an electronic network
EP0804008B1 (en) Apparatus for data packet transfer control
US6847650B1 (en) System and method for utilizing a memory device to support isochronous processes
JP2000341306A (ja) データ処理装置およびそのバス制御方法
Kobayashi Design and Implementation of a Firewire Device Driver on FreeBSD.
JP3967792B2 (ja) パケット化されたデータ通信インタフェース機器のpciシリアルバスインタフェース機器回路を自律的に動作させるための方法ならびに自律ブート回路
JP3416498B2 (ja) サーバ装置およびその制御方法並びにサーバ装置制御プログラムを記録した記録媒体
KR100364756B1 (ko) 자동수신모드를 갖는 비동기화 데이터 수신장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070220

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080521

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080521

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100208

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100216

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100309

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100712

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100929

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110111

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: 20110214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110308

R150 Certificate of patent or registration of utility model

Ref document number: 4703074

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term