JP2001520823A - データストリーム処理のためのプロトコルプロセッサ - Google Patents

データストリーム処理のためのプロトコルプロセッサ

Info

Publication number
JP2001520823A
JP2001520823A JP54384298A JP54384298A JP2001520823A JP 2001520823 A JP2001520823 A JP 2001520823A JP 54384298 A JP54384298 A JP 54384298A JP 54384298 A JP54384298 A JP 54384298A JP 2001520823 A JP2001520823 A JP 2001520823A
Authority
JP
Japan
Prior art keywords
data
data stream
isochronous
bus
pipe
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.)
Granted
Application number
JP54384298A
Other languages
English (en)
Other versions
JP4033915B2 (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 JP2001520823A publication Critical patent/JP2001520823A/ja
Application granted granted Critical
Publication of JP4033915B2 publication Critical patent/JP4033915B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • 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/40065Bandwidth and channel allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 アイソクロノスデータパイプは、アプリケーションとバスの間の双方向パスを提供する。アイソクロノスデータパイプは、あらゆる数のアイソクロノスチャンネル上のデータを含むあらゆるアイソクロノスデータストリームを送信し、受信し、処理することができる。アイソクロノスデータパイプは、プログラミング可能なシーケンサであり、アイソクロノスデータパイプを通過するアイソクロノスデータストリームを処理する。アイソクロノスデータパイプはアプリケーションによりプログラミングされ、データをバス又はアプリケーションに送信する前に、データに対して特定の処理を実行する。これにより、データは転送先に配信される前に前処理される。この処理は、データパケットのヘッダとデータフィールドのいずれに対しても施される。特定のイベントの発生に応じてアイソクロノスデータパイプの動作を停止又は開始することができる。本発明の変形例においては、アイソクロノスデータパイプは、アイソクロノスデータと非同期データの両方を送受信するようプログラミングされ、要求及び適切なパケットヘッダを生成する。

Description

【発明の詳細な説明】 データストリーム処理のためのプロトコルプロセッサ 技術分野 本発明は、バスとアプリケーションとの間で行われるアイソクロノスデータ転 送動作を制御するためのプロトコルプロセッサに関する。詳しくは、本発明はア プリケーションとバス上のノードとの間で行われるデータ転送動作を完了するた めに、アイソクロノスデータの高速ストリームを管理及び処理する手法に関する 。 背景技術 1995年6月16日に発表されたIEEE1394仕様書「高性能シリアル バスのためのP1394仕様8.01vlドラフト」は、非同期フォーマット及びアイ ソクロノスフォーマットのデータ転送をサポートする安価な高速シリアルバスア ーキテクチャを実現した国際規格である。アイソクロノスデータ転送は、重要な インスタンスを転送するための時間間隔が送信側と受信側のアプリケーションで 同じになるように実行されるリアルタイム転送である。アイソクロノスフォーマ ットで転送されるデータの各パケットは、各パケット自身が定義する期間におい て転送される。アイソクロノスフォーマットによるデータ転送の応用例としては 、例えば、ビデオレコーダ、テレビジョン受信機等がある。ビデオ記録装置は、 映像及び音声を 示すデータを離散的なチャンク又はパケットとして記録する。ビデオ記録装置は 、記録した映像及び音声を示すパケットに基づく信号を所定期間テレビジョン受 信機に供給し、これによりテレビジョン受信機から映像及び音声が再生される。 IEEE1394仕様のバスアーキテクチャは、アプリケーション間のアイソク ロノスデータ転送のためにマルチプルチャンネルを提供する。ここで、適切なア プリケーションにデータを受信させるために、データは、6ビットのチャンネル 番号とともに転送される。これにより、複数のアプリケーションがバスを介して 同時にアイソクロノスデータを送受信することができる。非同期データ転送は、 転送速度を重視する場合に行われる転送方式であり、大量のデータを転送する最 も一般的なデータ転送動作である。 IEEE1394仕様は、デジタル装置を相互に接続するための高速シリアル バスを提供し、これによりI/O接続が標準化されている。1EEE1394仕 様においては、デジタルインターフェイスの仕様が規定されている。したがって 、アプリケーションは、バスにデータを送信する前にデジタルデータをアナログ データに変換する必要がない。同様に、受信側アプリケーションはバスから直接 デジタルデータを受信することができ、したがって、受信時にアナログデータを デジタルデータに変換する処理は必要ではない。IEEE1394仕様において 必要とされるケーブルは、装置間の接続に用いられる他の一般的なケーブルと比 較して、非常に細い。バスがアクティブな間、種々の装置をIEEE1394バ スに追加したり、削除したりすることができる。装置が追加されるか、削除され ると、バスはバス自身の環境を設定し直し、これにより全てのノー ドの間でデータを送受信することが可能となる。ノードは、バス上で固有のアド レスを有する論理構成体とみなされる。各ノードは、識別ROMと、標準化され た制御レジスタの組と、そのアドレス空間を備えている。 IEEE1394仕様では、図1に示すようなプロトコルが定義されている。 このプロトコルは、シリアルバス管理ブロック10と、シリアルバス管理ブロッ ク10に接続されたトランザクション層12、リンク層14及び物理層16など から構成される。物理層16は、装置又はアプリケーションをIEEE1394 ケーブルに電気的かつ機械的に接続する機能を司る。また、物理層16は、実際 のデータ転送及び受信だけでなくIEEE1394バスに接続する全ての装置の バスへのアクセスを調停するアービトレーション機能を提供する。リンク層14 は、非同期データ転送及びアイソクロノスデータ転送のためのデータパケット配 信サービスを提供する。リンク層14は、肯定応答プロトコルを使って、非同期 データトランスポート及びアイソクロノスデータ転送をサポートし、さらに、ジ ャストインタイムのデータ配信のためにリアルタイム帯域幅保証プロトコルを提 供する。トランザクション層12は、読出トランザクション、書込トランザクシ ョン及びロックトランザクションなどの非同期データ転送を完了するために必要 なコマンドをサポートする。シリアルバス管理ブロック10は、アイソクロノス データ転送動作を管理するアイソクロノスリソースマネージャを備える。また、 シリアルバス管理ブロック10は、アービトレーションタイミングの最適化、バ スに接続された全ての装置のための適切な電力の保証、サイクルマスタの割当て 、アイソクロノスチャンネル及び帯域幅リ ソースの割当て、及びエラーの基本通知の実行などにより、シリアルバス全体の 環境を管理する。 アイソクロノスデータ転送動作を初期化する場合、アプリケーションの環境設 定を行い、データ転送動作に用いられるチャンネル番号を特定するために、いく つかの非同期データ転送動作を行う必要がある場合がある。一旦、チャンネル番 号が定義されると、送信側アプリケーションは、データをバッファメモリにバッ ファリングした後にデータを送信し、受信側のアプリケーションは、データをバ ッファリングメモリにバッファリングした後にデータを処理する。汎用ホストコ ンピュータ又は周辺機器において、送信データのフォーマットとアプリケーショ ンが処理できるフォーマットとは異なることが多い。したがって、ほとんどの場 合、メインプロセッサは、アプリケーションにデータストリームを送信する前に データストリームを前処理しなければならない。前処理タスクは、プロセッサの 計算処理にとってかなりの負担となり、これによりリアルタイムデータストリー ムの処理が困難になることがある。 そこで、本発明は、アプリケーションがバスとの間で送受する高速データスト リームを管理及び処理するためのアイソクロノスデータパイプを提供することを 目的とする。さらに、アプリケーションがアプリケーション自身のフォーマット によりデータを送受信し、これによりアプリケーションが連続したデータストリ ームを処理する際の効率を向上させるアイソクロノスデータパイプを提供するこ とを目的とする。 発明の開示 アイソクロノスデータパイプは、アプリケーションとバスとの間で送受信され るデータのために双方向パスを提供する。アイソクロノスデータパイプは、複数 のアイソクロノスチャンネル上のデータを含むあらゆるアイソクロノスデータス トリームを送信し、受信し、あるいは所定の処理を実行する。アイソクロノスデ ータパイプは、アイソクロノスデータパイプを通過するアイソクロノスデータス トリームに対する処理を行うプログラム可能なシーケンサーである。アイソクロ ノスデータパイプは、アプリケーションによってプログラミングされ、バスを介 してデータを送信するか、あるいはアプリケーションにデータを送信する前に、 データストリームに対して特定の処理を施す。これにより、データは、前処理が 施された後に転送先に配信される。これらの処理は、データパケットのパケット ヘッダ及びデータフィールドの両方に対して実行される。アイソクロノスデータ パイプは、特定のイベントの発生により開始又は停止される。本発明の変形実施 例において、アイソクロノスデータパイプは、アイソクロノスデータ及び非同期 データの両方を送受信するようプログラミングされる。この処理には、要求及び 適切なパケットヘッダの生成が含まれる。 図面の簡単な説明 図1は、IEEE1394仕様によって定義されるプロトコルを説明する図で ある。 図2は、本発明を適用したアイソクロノスデータパイプ及び非同期データパイ プを備えるリンク回路のブロック図である。 図3は、アイソクロノスデータパイプ内のレジスタファイルを示す図である。 図4は、アイソクロノスデータパイプシーケンサ内のレジスタファイルを示す 図である。 図5は、アイソクロノス記録フォーマットを有するアイソクロノスデータスト リームの具体例を示す図である。 発明を実施するための最良の形態 アイソクロノスデータパイプは、バスからのデータをアプリケーションに出力 し、また、アプリケーションからのデータをバスに出力する。好ましくは、バス は、例えばIEEE1394仕様のバスである。アイソクロノスデータパイプは 、プログラム可能であり、データストリームに対して一連の命令を実行し、これ によりアプリケーションにより要求された処理を行う。本発明では、アイソクロ ノスデータを送受信するためのアイソクロノスデータパイプと、非同期データを 送受信するための非同期データパイプをリンク回路に設ける。アイソクロノスデ ータパイプ及び非同期データパイプからのデータは、多重化されてバスに出力さ れる。バスを介して受信されるデータは、分離(demultiplex)されてアイソク ロノスデータパイプ又は非同期データパイプに供給される。あるいは、これに代 えて、アイソクロノスデータパイプがアイソクロノスデータ及び非同期データの 両方を送受するようにプログラミングすることもできる。 本発明を適用したアイソクロノスデータパイプ(IDP)及び非同期 データパイプを備えるリンク回路を図2に示す。リンク回路10は、アプリケー ション12、14とバス58とをリンクさせる機能を有する。アプリケーション 12、14は、いずれもシステムバス16に接続されている。システムバス16 は、アイソクロノスデータパイプ20及び非同期データパイプ26の両方に接続 されている。アプリケーション12、14は、また、いずれもアプリケーション インターフェース回路18に接続されている。アプリケーションインターフェー ス回路18は、1組の制御レジスタ38、アイソクロノスデータパイプ20、非 同期データパイプ26及びリンクコア44に接続されている。アイソクロノスデ ータパイプ20及び非同期データパイプ26は、それぞれレジスタセット24、 28を備える。送信用FIFO30は、アイソクロノスデータパイプ20に対応 しており、アイソクロノスデータパイプ20とマルチプレクサ40との間に接続 されている。一方、送信用FIFO32は、非同期データパイプ26に対応して おり、非同期データパイプ26とマルチプレクサ40との間に接続されている。 制御レジスタ38は、アイソクロノスデータパイプ20と非同期データパイプ2 6とに接続されている。受信用FIFO34は、デマルチプレクサ42に接続さ れている。デマルチプレクサ42は、アイソクロノスデータパイプ20及び非同 期データパイプ26に接続されている。 リンクコア44は、トランスミッタ46と、レシーバ48と、サイクルタイマ 50と、サイクルモニタ52と、CRCエラーチェック回路54と、バス58に 対する物理的なインターフェイスとして機能する物理インターフェイス回路56 とを備える。トランスミッタ46は、マルチプレクサ40と、サイクルタイマ5 0と、CRC エラーチェック回路54と物理インターフェイス回路56とに接続されている。 レシーバ48は、受信用FIFO34と、サイクルモニタ52と、CRCエラー チェック回路54と、物理インターフェイス回路56とに接続されている。サイ クルタイマ50は、サイクルモニタ52に接続されている。物理インターフェイ ス回路56は、バス58に接続されている。 図2に示すリンク回路10は、アイソクロノスデータ及び非同期データの両方 を含む全ての受信データに用いる1つのFIFO34と、アイソクロノスデータ パイプ20専用のFIFO30と、非同期データパイプ26専用のFIFO32 とを備えている。FIFO30,32から出力される送信用データは、マルチプ レクサ40により多重化された後、リンクコア44を介してバス58に出力され る。後述するように、FIFO34に入力された受信用データは、デマルチプレ クサ42によって分離された後、アイソクロノスデータパイプ20又は非同期デ ータパイプ26のうちの適切な一方にルーチングされる。 受信用FIFO34は33ビット長であり、送信用FIFO30は34ビット 長であり、送信用FIFO32は33ビット長である。F1FO30、32、3 4の各々において、ビット0からビット31まではデータに使用され、ビット3 2は、パケットの境界を示すマーカとして用いられる。送信用パケットに対し、 アイソクロノスデータパイプ20及び非同期データパイプ26は、各パケットの 最初のクワドレットのビット32を論理的高電圧レベルに設定する。受信用パケ ットに対しては、リンクコア44が各パケットの最初のクワドレットのビット3 2を論理的高電圧レベルに設定する。 アイソクロノスデータパイプ20に対応する送信用FIFO30において、ビ ット33はアイソクロノスサイクルの境界を示すために使用される。アイソクロ ノスデータパイプ20は、各アイソクロノスサイクルにおけるアイソクロノスパ ケットの最初のクワドレットにおいてビット33を論理的高電圧レベルに設定す る。リンクコア44が論理的高電圧レベルにセットされたビット33を有するク ワドレットデータを受信すると、リンクコア44は、次のサイクル開始まで待機 し、次に論理的高電圧レベルに設定されたビット33を有するクワドレットデー タを検出するまで、送信用FIFO30に格納された全てのアイソクロノスパケ ットを送信する。 アプリケーション12、14のうちの1つからバス58にアプリケーションデ ータを送信するために、アイソクロノスデータパイプ20及び非同期データパイ プ26は、適切なヘッダ情報を生成し、適切なアプリケーションデータを添付し て、バス58の要求に応じたフォーマットのパケットを生成する。これらのパケ ットは、FIFO30又はFIFO32のいずれか適切な一方に格納された後、 バス58に送出される。 非同期データパイプの実現の手法については、同日に出願された米国特許出願 番号08/612,321、「Asynchronous Data Pipe For Automatically Managing Asyn chronous Data Transfers Between An Application And A Bus Structure」に記 載されており、この出願は、参照により本願に組み込まれるものとする。非同期 データパイプ26は、バスとアプリケーションとの間の非同期データ転送動作を 完了するために必要なトランザクションを自動的に生成する。非同期データパイ プ26は、アプリケーションによってプログラミングさ れるレジスタファイル28を備える。レジスタファイル28により、アプリケー ションは、データ転送動作の要求及び特性をプログラミングできる。レジスタフ ァイル28は、バス速度、トランザクションラベル、トランザクションコード、 転送先ノード識別子、転送先オフセットアドレス、各データパケットのパケット 長、パケットカウンタ、パケットカウンタバンプフィールド、制御フィールド及 び状態フィールドを有する。 アプリケーションによりレジスタファイル28がプログラミングされ、起動さ れた後、非同期データパイプ26は、適切な範囲内のアドレスに対するデータ転 送動作を完了するための読出又は書込トランザクションを自動的に生成する。こ のとき、非同期データパイプ26は、レジスタファイル28内の情報をテンプレ ートとして用い、トランザクション及びヘッダを生成する。非同期データパイプ 26は、インクリメント機能が停止されない限り、各トランザクションに関して 、各データパケットの長さに応じて転送先オフセットアドレスフィールドの値を インクリメントする。インクリメント機能が停止される場合とは、トランザクシ ョンが単一アドレスに対して実行される場合である。パケットカウンタ値は、生 成すべき残りのトランザクションの数を示す。カウンタ値は、各データパケット が転送される毎にデクリメントされる。アプリケーションはパケットバンプフィ ールドに書込を行い、パケットカウンタ値をインクリメントする。 複数の非同期データ転送動作を管理するために、リンク回路10に複数の非同 期データパイプを設けてもよい。この場合、各非同期データパイプは、それぞれ 固有のトランザクションラベル値又は一 定範囲の値を有する。マルチプレクサ40は、非同期データパイプ及びアイソク ロノスデータパイプからバス58に送出されるトランザクション及びデータパケ ットを多重化する。デマルチプレクサ42は、バス58から信号及びデータパケ ットを受信し、トランザクションコード及びトランザクションラベル値を用いて これらを適切な非同期データパイプ26に出力する。 リンク回路10には、単一のアイソクロノスデータパイプ20が設けられてい る。このアイソクロノスデータパイプ20は複数のアイソクロノスチャンネルを 処理することができる。このアイソクロノスデータパイプ20は、データインタ ーフェイスにおいて複数のアプリケーションとインタラクトすることができる。 これにより、アイソクロノスデータパイプ20は、複数のアイソクロノスデータ ストリームをサポートすることができる。各ストリームは、複数のチャンネルを 含んでいてもよい。また、変形例において、後述するように、アイソクロノスデ ータパイプ20に非同期データを送受信させてもよい。すなわち、この場合、ア イソクロノスデータパイプは、非同期データパイプの機能を代理する。 リンクコア44は、送信用FIFO30、32からのデータパケットを受信し 、バス58に対応するフォーマットを有するパケットを生成し、生成したパケッ トを物理インターフェイス56を介してバス58に送信する。リンクコア44は 、送信用アイソクロノスFIFO30から受信した1アイソクロノスサイクル分 のデータを各アイソクロノスサイクル毎に送出する。アイソクロノスデータを送 信しない場合、リンクコア44は、送信用非同期FIFO32から受信した非同 期パケットを送出する。 リンクコア44は、受信したパケットの全てを受信用FTFO34に供給する 。リンクコア44がスヌープモードで動作していない場合、リンクコア44は、 適切なノード識別番号によってアドレス指定された非同期データパケット及び適 切なチャンネル番号を有するアイソクロノスパケットのみを受信する。スヌープ モードにおいては、リンクコア44は、転送先ノードの認識番号又はアイソクロ ノスチャンネル番号に関係なく全てのパケットを受信する。 アイソクロノスデータパイプ20は、バス58を介して送信すべきアプリケー ションデータに対して双方向データパスを提供する。アイソクロノスデータのス トリームは、1又は複数のアイソクロノスチャンネルのデータから構成されてい る。アイソクロノスデータパイプ20はアイソクロノスデータのいかなる任意の ストリームに対しても動作することができ、また、いかなる数のアイソクロノス チャンネルにも対応できる。アイソクロノスデータパイプ20は、バス16から 送信用アイソクロノスFIFO30への、及び受信用FIFO34からバス16 へのアイソクロノスデータストリームを処理するプログラム可能なシーケンサで ある。 アイソクロノスデータパイプ20は、必要に応じて、転送されるデータの各ク ワドレットに対し、所定回数の命令を実行してデータを処理する。これらの命令 は、アイソクロノスデータブロックパケットに対して実行される。バス58に送 出されるデータを送信する場合、アイソクロノスデータパイプ20から出力され るデータストリームのフォーマットは、アイソクロノスデータパイプ20に入力 されたデータストリームのフォーマット及びアイソクロノスデータパイプ20に おいてデータに対し実行される処理の両方に基づいて 決定される。同様に、バス58からデータを受け取る場合、アイソクロノスデー タパイプ20からバス26に出力されるデータストリームのフォーマットは、ア イソクロノスデータパイプ20に入力されたデータのフォーマット及びアイソク ロノスデータパイプ20がデータに対して実行する処理に基づいて決定される。 アイソクロノスデータパイプ20は、アイソクロノスデータパイプの現在の動 作モードに応じてアイソクロノスデータの転送を開始及び停止するためのいくつ かのスケジューリング機能を有している。適切なプログラミングにより、アイソ クロノスデータパイプ20は、SCSI−3シリアルバスプロトコル規格に準拠 し、アイソクロノス記録データフォーマットをサポートする。このプロトコルは 、記録時にアイソクロノスデータにラベルをつける手法を定義しており、これに より、アイソクロノスデータは正確に再生される。アイソクロノスデータパイプ は、アイソタロノスデータパスにおけるプログラム可能なデータ処理エンジンで ある。適切なプログラミングにより、このデータ処理エンジン、すなわちアイソ クロノスデータパイプは、アイソクロノス記録フォーマットを実現し、クワドレ ットを削除することによりデータをフィルタリングし、さらにバス58へ転送さ れる各クワドレットに対して特定の処理を行う。 アイソクロノスデータパイプ20及び非同期データパイプ26のFIFOイン ターフェースは、それぞれ直接FIFO30、32に接続されている。FIFO 30は、アイソクロノスデータパイプ20によって制御されるデータパスに専用 に用いられる。FIFO32は、非同期データパイプ26によって制御されるデ ータパスに専用に用いられる。アイソクロノスデータパイプ20及び非同期デー タパイプ26のリンクインターフェースは、いずれもマルチプレクサ40及びデ マルチプレクサ42を介してリンクコア44に接続している。アイソクロノスデ ータパイプ20及び非同期データパイプ26からリンクコア44に至るデータは 、リンクコア機能に必要とされるフォーマットを有している。アイソクロノスデ ータパイプ20及び非同期データパイプ26は、リンクコア44から供給される データがリンクコアの仕様に基づくフォーマットを有するものとして処理を行う 。システム内に論理ブロックが追加されている場合、各論理ブロックはマルチプ レクサ40及びデマルチプレクサ42を介してリンクコア44に接続される。例 えば、複数の非同期データパイプをシステム内に設けてもよい。複数の非同期デ ータパイプを有するシステムにおいては、複数の非同期データパイプは、それぞ れFIFO32介してマルチプレクサ40に接続される。そのようなシステムに おいて、非同期データパイプ及びFIFO32の間にマルチプレクサを追加し、 このマルチプレクサによりFIFO32に供給するデータパケットの多重化を行 う。 アイソクロノスデータパイプ20からのデータを処理する場合、マルチプレク サ40は、アイソクロノスデータパイプ20からデータが供給されたことを認識 し、アイソクロノスサイクルに対応して、チャンネル毎に1パケット分のデータ を出力する。リンクコア44からアイソクロノスデータパイプ20及び非同期デ ータパイプ26に供給されるデータは、FIFO34及びデマルチプレクサ42 介して転送される。デマルチプレクサ42がリンクコア44からアイソクロノス データパイプ20うちの適切な一方にデータパケットをルーチングする場合、デ マルチプレクサ42はデータの変更を一切 行わない。リンクコアによって生成される全ての情報は、転送先の論理ブロック に送信される。アイソクロノスデータパイプ20及び非同期データパイプ26は 、リンクコア44から供給されたデータに対して、全ての必要な処理を施した後 に、処理したデータをアプリケーション12、14のいずれかに供給する。この 処理は、例えばバス58のプロトコルによる要求に応じて、ヘッダ情報を剥離す る処理を含む。送信用データについては、アイソクロノスデータパイプ20及び 非同期データパイプ26は、いずれもアプリケーション12、14から供給され たデータをリンクコア44が要求するフォーマットに変換する。アイソクロノス データパイプ20及び非同期データパイプ26は、適切なヘッダ情報を生成し、 マルチプレクサ40介してデータをリンクコア44に送信する前にアプリケーシ ョン12,14からのデータにこのヘッダを付加する。 アイソクロノスデータパイプ20及び非同期データパイプ26における処理の ため、リンクインターフェースは、リンクコア44における処理に要求されるフ ォーマットと互換性を有するフォーマットで、データを生成し、使用する。デー タ送信処理において、アイソクロノスデータパイプ20は、リンクコア44から の要求により、バスに応じた特定のヘッダ情報を生成し、アプリケーションから のデータにそのヘッダ情報を添付する。データ受信処理において、アイソクロノ スデータパイプ20及び非同期データパイプ26は、リンクコア44から供給さ れてくるデータをリンクコア44から出力されたフォーマットのまま受け取る。 このように、リンクコア44からアイソクロノスデータパイプ20又は非同期デ ータパイプ26にデータを転送する際は、データに変換処理を施す必要がない。 システム内の論理ブロックが1つだけである場合、その論理ブロックは、リン クコア44に直接接続できる。システム内に複数の論理ブロックが設けられてい る場合、論理ブロックとリンクコア44との間に適切なマルチプレクサ40及び デマルチプレクサ42を設ける。マルチプレクサ40は、複数の論理ブロックの リンクインターフェイスからデータを受信し、これらデータを多重化して、多重 化したデータをリンクコア44を介してバス58にパケット毎に送信する。この 情報は、アプリケーション固有の情報であり、転送動作において優先度を有する 組としてバス58にルーチングされる。各アイソクロノスデータパケットは、そ れぞれ適切な期間、マルチプレクサ40から送信される。デマルチプレクサ42 は、バス58から受信した各パケットのトランザクションコード及びチャンネル 番号フィールド示す値を用いて、パケットを適切な論理ブロック、すなわちアイ ソクロノスデータパイプ20又は非同期データパイプ26にルーチングする。ア イソクロノスデータパイプ20及び非同期データパイプ26がそれぞれ1つであ る場合、トランザクションコードのみに基づいてパケットを適切にルーチングで きる。デマルチプレクサ42は、まず、トランザクションコードを読み出し、パ ケットが非同期データであり、非同期データパイプにルーチングすべきものであ るか否かを判定する。システム内に、複数の非同期データパイプが設けられてい る場合、デマルチプレクサ42は、非同期応答パケットヘッダのトランザクショ ンラベルを読み出し、これに基づいて適切な非同期データパイプにパケットをル ーチングする。 本発明を適用したアイソクロノスデータパイプ20は、対応するFIFO30 、34とリンクコア44と間の双方向性データパスと して機能する。適切なプログラミングにより、アイソクロノスデータパイプは、 SCSI−3シリアルバスプロトコル(SBP)規格に準拠したアイソクロノスデ ータ記録フォーマットをサポートし、これによりアイソクロノスデータストリー ム内のデータの処理をプログラミングすることができる。 リンクコア44に対応するFIFO30を介してデータを転送する場合、ある いは、デマルチプレクサ42からデータを受信する場合、アイソクロノスデータ パイプ20は、各データクワドレットに対して独立に動作する。アイソクロノス データパイプ20は、各クワドレットに対してプログラム可能な数の命令を実行 し、これにより必要に応じてデータを処理する。アイソクロノスデータパイプ2 0によって実行可能な命令は1つの命令セットに含まれている。これらの命令に ついては後に詳細に説明する。アイソクロノスデータパイプ20は、後述する独 立の、専用レジスタファイル24を備える。 アイソクロノスデータパイプ20からデータを転送中にバスリセットが発生し た場合、アイソクロノスデータパイプ20の処理は、次のサイクルスタートパケ ットがバス58に現れた時点から再開される。なお、アイソクロノスデータの処 理は、直ちに再開されるが、IEEE1394仕様及び民生機のためのIEC規 格に定義されるように、アプリケーションは、バスリセットに先行して、チャン ネル番号、帯域幅及び使用する接続を割り当てる。 アイソクロノスデータパイプ20は、図3に示すような、独立の専用レジスタ ファイルによって制御される。このレジスタファイルは、処理を開始するアプリ ケーションによってプログラミングされ、 バス58を介したアイソクロノスデータ転送動作を完了するために必要なヘッダ 、命令及びトランザクションを生成する。レジスタファイル80は、16進法に より0から77まで番号付けされた120バイトのデータを有する。図3は、レ ジスタファイル80を表形式で示すものであり、この図3には、それぞれが4バ イトのデータに相当する30本の列が示されている。図3に示すオフセット欄8 2は、レジスタファイル80における各行の開始バイトのオフセットを示す。読 出/書込欄84は、各行に対応するフィールドが読出/書込可能であるか、ある いは、読出専用であるかを示している。 サイクルタイムフィールドcycle_timeは、レジスタファイル80のバイト0〜 バイト2に設けられた20ビットからなるフィールドである。サイクルタイムフ ィールドは読出/書込可能なフィールドである。後述する制御イベントフィール ドがサイクル番号値を含む場合、サイクルタイムフィールドはアイソクロノスデ ータパイプ20がアイソクロノスデータの転送を開始又は停止するサイクルタイ ムに関する情報を格納する。 制御フィールドは、レジスタファイル80のバイト4〜バイト7に設けられた 32ビットからなるフィールドである。制御フィールドは読出/書込可能なフィ ールドである。制御フィールドは、イベントフィールド、エラー停止フィールド 、出力イネーブルフィールド、及びゴーフィールドを備える。イベントフィール ドは、制御レジスタファイル80のビット28〜ビット31に設けられた4ビッ トからなるフィールドである。イベントフィールドにおける値はアイソクロノス データパイプ20のバスイベントを定義する。これは、トリガとして用いられる 。すなわち、このバスイベントが発生する と、アイソクロノスデータパイプは、待機中のチャンネルマスクレジスタpendin g_ch_maskに格納中の値を現在のチャンネルマスクレジスタch_maskに転送する。 イベントフィールドは、表1に示すようなバスイベントを示している。 したがって、イベントフィールドの値が0である場合、アイソクロノスデータ パイプは直ちに開始又は停止される。イベントフィールドの値が1である場合、 アイソクロノスデータパイプは、上述のように、サイクルタイムフィールドの値 により指定されるタイミングで開始又は停止される。 出力イネーブルフィールドは、制御フィールドのビット4〜ビット7に設けら れた4ビットからなるフィールドである。出力イネーブルフィールドにおけるビ ットのいずれかが論理的高電圧レベルにセットされている場合、対応するDMA チャンネルは、対応するFIFOが一杯の状態であることを確認し、そして、ア イソクロノスデータパイプ20は、送信用FIFO30にクワドレットが存在す る場合は常に制御ストア出力命令を出力する。 ストップオンエラーフィールド(stop on error field)は、制御フィールド のビット3に設けられた1ビットフィールドである。ストップオンエラーフィー ルドが論理的高電圧レベルにセットされた場合、アイソクロノスデータパイプ2 0は、チャンネルマスクレジスタの値を論理的低電圧レベルにセットすることに よって、検出された最初のエラーに対して現在の処理を停止する。データ送信時 に発生する可能性のあるエラーは、例えばFIFOのアンダーラン、サイクルス タートパケットの検出の失敗等である。データ受信時に発生する可能性のあるエ ラーは、FIFOのオーバーラン、サイクルスタートパケットの検出の失敗、C RCデータエラー、パケットフォーマットエラー、チャンネル検出の失敗等であ る。 送信イネーブルフィールドは、制御フィールドのビット1に設けられた1ビッ トからなるフィールドである。送信イネーブルフィールドが論理的高電圧レベル にセットされた場合、アイソクロノスデータパイプ20は、出力制御ストアプロ グラムを実行する。ゴービットが論理的低電圧レベルにセットされた場合、又は 、出力制御ストアプログラムがリターン命令を実行した場合、送信イネーブルビ ットはクリアされる。 ゴーフィールド(go field)は、制御フィールドのビット0に設けられた1ビ ットフィールドである。アプリケーションは、アイソクロノスデータパイプにイ ベントを監視させるために、ゴービットを論理的高電圧レベルにセットする。特 定のイベント条件が満たされた場合、アイソクロノスデータパイプ20は、ペン ディング中のチャンネルマスクレジスタのコンテンツを現在のチャンネルマスク レジスタに転送する。 状態フィールドは、レジスタファイル80のバイト8〜バイトBに設けられた 32のビットからなるフィールドである。状態フィールドは、読出/書込可能な フィールドである。状態フィールドには、アイソクロノスデータパイプ20の現 在の状態を報告するステータス情報が含まれている。状態フィールドのビット0 〜ビット7は、制御フィールドのビット0〜ビット7に対応し、出力フィールド 、エラー停止フィールド、送信イネーブルフィールド及びアクティブフィールド を備える。ステータスレジスタにおけるこれらのフィールドの値は、アイソクロ ノスデータパイプ20の現在の動作状態を示す。状態フィールドのビット8〜ビ ット27は、予備のフィールドである。状態フィールドのビット0には、1ビッ トのアクティブフィールドが設けられており、このアクティブフィールドは、ア イソクロノスデータパイプ20がアクティブであるか否かを示す。アクティブビ ットが論理的高電圧レベルにセットされている場合、アイソクロノスデータパイ プ20は現在アクティブであり、データ転送中である。アクティブビットが論理 的低電圧レベルにセットされている場合、アイソクロノスデータパイプ20は現 在アクティブでない。エラーフィールドは、状態フィールドのビット28〜ビッ ト31に設けられた4のビットからなるフィールドである。アイソクロノスデー タパイプ20がエラーのために処理を停止している場合、エラーフィールドはエ ラー状態を示す値を格納する。エラーフィールドは、アクティブビットが論理的 低電圧レベルにセットされている場合のみ有効である。エラーフィールドがとり うる値及びその値に対応するエラーを表2に示す。 ペンディングチャンネルマスクハイフィールドpending_ch_mask_hiは、レジス タファイル80のバイト20〜バイト23に設けられた4バイトからなるフィー ルドである。ペンディングチャンネルマスクローフィールドpending_ch_mask_lo は、レジスタファイル80のバイト24〜バイト27に設けられた4バイトから なるフィールドである。2つのペンディングチャンネルマスクフィールドpendin g_ch_mask_hi及びpending_ch_mask_loは、8バイトから構成され、アイソクロノ スデータパイプ20がデータを受信するためのアイソクロノスチャンネル番号の マスクを含んでいる。プログラムされたトリガーイベントが発生すると、アイソ クロノスデータパイプ20は、このフィールドのコンテンツをチャンネルマスク レジスタに転送する。ペンディングチャンネルマスクフィールドのビット割当て は、IEEE1394仕様の第8章に定義されるチャンネルアベイラブルレジス タのビット割当てと同様な手法で行われる。 カレントチャンネルマスクハイフィールドch_mask_hiは、レジス タファイル80のバイト28〜バイト2Bに設けられた4バイトからなるフィー ルドである。カレントチャンネルマスクローフィールドch_mask_loは、レジスタ ファイル80のバイト2C〜バイト2Fに設けられた4バイトからなるフィール ドである。カレントチャンネルマスクフィールドch_mask_hi及びch_mask_loは、 8バイトフィールドを構成し、現在動作中のチャンネルマスクを格納する。カレ ントチャンネルマスクフィールドの各ビットは、それぞれアイソクロノスチャン ネルを示す。トリガーイベントが発生した場合、チャンネルマスクフィールドは ペンディングチャンネルマスクフィールドからロードされる。アイソクロノスデ ータパイプ20は、カレントチャンネルマスクフィールドにおける対応するビッ トが論理的高電圧レベルにセットされた受信アイソクロノスチャンネル番号を無 視する。 制御ストア出力フィールドCS_outputは、レジスタファイル80のバイト34 に設けられた1バイトのフィールドである。制御ストア出力フィールドCS_outpu tは制御ストアメモリにおける制御ストアアドレスを示す値を格納する。送信用 FIFO30に空のクワドレットが存在し、アイソクロノスデータパイプ20が アイソクロノスパケットデータを現在受信していない場合、アイソクロノスデー タパイプは、この制御ストアアドレスにデータを転送する。制御ストアメモリは 、アイソクロノスデータパイプがデータストリームに対する処理を実行する際に 用いる命令を格納する。 制御ストアサイクルスタートアドレスフィールドCS_addr_CSは、レジスタファ イル80のバイト37に設けられた1バイトのフィールドである。制御ストアア ドレスフィールドCS_addr_CSは、サイク ルスタートパケットが受信されたときアイソクロノスデータパイプ20が分岐す る制御ストアアドレスを格納する。制御ストアプログラムが最初に利用できるク ワドレットは、サイクルスタートパケットの最初のクワドレットである。CS_add r_0〜CS_addr_63制御アドレスフィールドは、レジスタファイル80のバイト3 8〜バイト77に設けられた各1バイトのフィールドである。これらのフィール ドは、制御ストアアドレスフィールドを含む。アイソクロノスデータパイプ20 が制御ストアアドレスフィールドのバイト番号に一致するアイソクロノスチャン ネルからデータを受信した場合に、アイソクロノスデータパイプ20は分岐する 。例えば、制御ストアメモリに制御ストアアドレスフィールドCS_addr_10が含ま れている場合、アイソクロノスデータパイプは、アイソクロノスチャンネル番号 10上の受信データに分岐する。アイソクロノスデータパイプは、制御ストアア ドレスフィールドの値がFFhである全てのアイソクロノスチャンネルを無視する 。なお、制御ストアアドレスフィールドは、アイソクロノスデータ送信時も受信 時も同様に機能する。 存在する可能性があるアイソクロノスチャンネルは、アイソクロノスチャンネ ル0〜63の64個のアイソクロノスチャンネルである。制御ストアアドレスフ ィールドCS_addr_0〜CS_addr_63は、それぞれ1つのアイソクロノスチャンネル に対応しており、そのアイソクロノスチャンネルに対する命令が開始される制御 ストアメモリ内のアドレスを格納している。これに応じて、アイソクロノスデー タパイプ20が特定のアイソクロノスチャンネルに関するデータを受信すると、 アイソクロノスデータパイプ20は、対応する制御ストアアドレスフィールドに 含まれるアドレスに分岐し、そのチャンネ ルにおけるデータ対する処理を実行するための命令を得る。アイソクロノスデー タパイプ20は、対応する制御ストアアドレスフィールドの値がFFhであるアイ ソクロノスチャンネルを無視する。 アイソクロノスデータのストリームは、1又は複数のチャンネルから構成され ている。アイソクロノスデータパイプ20は、カレントチャンネルマスクフィー ルドにおける対応するビットが論理的高電圧レベルにセットされているアイソク ロノスチャンネルを受信する。アイソクロノスデータパイプ20は、制御ストア 出力CS_outputレジスタの値により示された制御ストアアドレスから始まる制御 ストアプログラムに従ってアイソクロノスデータを送信する。例えば、アイソク ロノスチャンネル3、4、5がバス58に存在し、アプリケーションがアイソク ロノスデータパイプ20に対して、データに変更を加えることなくアイソクロノ スチャンネル3とチャンネル5を併合するよう指示する場合、アプリケーション は、制御ストアアドレスフィールドCS_addr_3及びCS_addr_5に例えば「10h」 の値をプログラミングする。制御ストアアドレス「10h」において、アプリケー ションは、表3に示すような命令シーケンスをロードする。 続いて、アプリケーションは、待機中のチャンネルマスクに値28hをプログ ラミングし、制御フィールドに値1を書き込む。制御フィールドにおける値1は 、出力のためにプログラミングされたDMAチャンネルを有さない即時イベント を示す。この結果、アイソクロノスデータパイプ20は、ペンディングチャンネ ルマスクフィールドの値をカレントチャンネルマスクフィールドに直ちにシフト する。ここで、カレントチャンネルマスクフィールドにおいて第3ビット及び第 5ビットが論理的高電圧レベルにセットされるので、アイソクロノスデータパイ プ20は、アドレス10hから始まる制御ストアプログラムに従ってアイソクロ ノスチャンネル3及びアイソクロノスチャンネル5に対する処理を開始する。な お、この例では、制御ストアフィールドCS_addr_3及びCS_addr_5が値10hを有 し、これにより、アイソクロノスチャンネル3,5のデータは、いずれもアドレ ス10hから始まるサンプル制御ストア命令シーケンスに従って処理される。 表3に示す制御ストアプログラムは、受信FIFO34からバス16のDMA チャンネル0にデータを移動させるプログラムである。カレントチャンネルマス クフィールドにおける第4ビットが論理的高電圧レベルにセットされないので、 アイソクロノスデータパイプ20はアイソクロノスチャンネル4の上で受信され る全てのデータを無視する。 表3に示す制御ストアプログラムの最終行には、リターン命令が含まれている 。あらゆる場合において、リターン命令は、アイソクロノスデータパイプ20に 同じタスクを実行させる。すなわち、アイソクロノスデータパイプは、スタック ポインタの値をデクリメントし、スタックポインタが現在示しているスタック内 の命令にディスパッチする。スタックポインタの値がゼロである場合において、 リターン命令が実行されると、アイソクロノスデータパイプ20は、次の割込み 可能なアイソクロノスチャンネルを受信するか、あるいは、サイクルスタートパ ケットを受信するまで処理を中断する。アイソクロノスデータパイプ20が出力 制御ストアプログラムを実行している場合、リターン命令により、アイソクロノ スデータパイプ20は、アイソクロノスパケットの受信により割り込まれた出力 プログラムの処理を再開する。 アイソクロノスデータパイプ20は、アイソクロノスデータの受信ストリーム に対する処理を実行するためにプログラムされるプログラマブルシーケンサであ る。アイソクロノスデータパイプ20は、図4に示すようなレジスタファイル9 0を有する。レジスタファイル90に設けられた即時値レジスタIMM(immediate value register)は、レジスタコード0を有する34ビットのレジスタである 。こ れは、転送元レジスタとしてのみ機能する。即時値レジスタIMMは、命令の34 ビット即時フィールドに与えられた処理のためのソースデータが格納されること を示す。 バス入力レジスタBUS_INは、レジスタコード1を有する32ビットレジスタで ある。これは、転送元レジスタとしてのみ機能する。処理の転送元としてバス入 力レジスタBUS_INにアクセスすることにより、受信FIFO34からアイソクロ ノスデータパイプ20を介して送られる1つのクワドレットデータが計時される 。さらに続いてバス入力レジスタBUS_INにアクセスすると、受信データストリー ム中の次のクワドレットデータがアクセスされる。 バス出力レジスタBUS_OUTは、レジスタコード2を有する34ビットレジスタ である。これは、転送先レジスタとしてのみ機能する。処理の転送先としてバス 出力レジスタBUS_OUTにアクセスすることにより、アイソクロノスデータパイプ 20を介して送信FIFO30に送られる1つのクワドレットデータデータが計 時される。さらに続いてバス出力レジスタBUS_0UTにアクセスすると、送信デー タストリーム中の次のクワドレットデータがアクセスされる。 データレジスタD0-D7は、それぞれレジスタコード4、5、6、7、8、9、 A、Bを有する34ビットレジスタである。これらは、転送元レジスタにも転送 先レジスタにもなる。データレジスタD0〜D7は、あらゆる処理において、転送元 レジスタ又は転送先レジスタとして使用できる。 データインターフェイスレジスタDATA_0-DATA_3は、それぞれレジスタコード 10、11、12、13を有する32ビットレジスタである。これらは、転送元 レジスタにも、転送先レジスタにもなる。 データインターフェイスレジスタDATA_0-DATA_3は、それぞれ異なるDMAチャ ンネルにアクセスする。これらのレジスタを使用する場合、出力イネーブルフィ ールドDMA_out_enをプログラミングにより一致させる必要がある。 アイソクロノスデータパイプ20は、8つの1バイトレジスタの線形リストか ら構成されるスタックをインプリメントする。スタック構造のレジスタは、サブ ルーチン命令及びリターン命令へのブランチの間にのみアクセスされる。本発明 の好ましい実施の形態において、スタックレジスタS0-S7は、それぞれレジスタ アドレス0〜7を有する。スタックレジスタの実際の数は、特定の具体例に応じ て変化する。制御ストアプログラムがロードされると、スタックポインタの値は 自動的に初期化されて0となる。この値は、対応するスタックレジスタS0を指示 する。 アイソクロノスデータパイプ20がサブルーチンに分岐すると、アイソクロノ スデータパイプ20は、スタックポインタをデクリメントし、現在のスタックレ ジスタに次の制御ストア命令のアドレスを格納し、スタックポインタの値をイン クリメントし、転送元フィールドの下位バイトによって示される制御ストア命令 に分岐する。アイソクロノスデータパイプ20がリターン命令を実行すると、ア イソクロノスデータパイプ20は、スタックポインタをデクリメントし、さらに アイソクロノスデータパイプ20は、現在のスタックレジスタに含まれる制御ス トア命令に分岐する。スタックポインタの値が0である場合に、さらにスタック ポインタがデクリメントされると、その値は0から変化せず、このときアイソク ロノスデータパイプ20は、アイソクロノスデータパケット又はサイクルスター トパケットを受信するまで、処理を中断する。アイソクロノスデータパイプが出 力制御ストアプログラムを実行中にサイクルスタートパケット又はイネーブルさ れたアイソクロノスチャンネルのデータを受信した場合、アイソクロノスデータ パイプ20は、出力制御ストアプログラムの実行を中断し、実行中の命令のスタ ックにおけるアドレスを記憶し、スタックポインタをデクリメントしたのち、適 切なロケーションにディスパッチして受信パケットを処理する。 各アイソクロノス制御ストア命令は、オペコードフィールド、転送元フィール ド、転送先フィールド、即時値フィールド、即時フィールド及び予備フィールド を備える。オペコードフィールドは、図5を参照して後に説明するように、実行 される処理を記述する6ビットフィールドである。転送元フィールドsrcは、レ ジスタ値又は即時値を特定する4ビットフィールドであり、これは特定された処 理のための転送元を示す値を格納している。転送先フィールドdestは、特定され た処理のために転送先レジスタを特定する4ビットフィールドである。即時値フ ィールドimm.valは1ビットフィールドであり、論理的高電圧レベルに設定され ると、即時フィールドにオペランドの1つが含まれることを示すする。即時フィ ールドimmは、34ビットフィールドであり、即時値フィールドimm_valが論理的 高電圧レベルにセットされた場合、処理に用いるための即時値を特定する。本発 明の好ましい実施の形態において、予備フィールドは、13ビットから構成され 、アイソクロノスデータパイプ20の変形実施例のために確保されている。 データストリーム処理の間にアイソクロノスデータパイプ20によって実現さ れ、オペコードフィールドに含まれる可能性がある操 作コードを下記表4に示す。アイソクロノスデータパイプ20は、これらの処理 の結果を転送先となりうるどのレジスタにも格納することができる。転送先とな りうるレジスタには、表4に示すように、データレジスタD0〜D7、送信用アイソ クロノスFIFO30及び転送先として環境設定されたDMAチャンネル等が含 まれる。 表4にリストされる大部分の処理には、2つの簡略命令が設けられている。「 I」を含む簡略命令は、即時値を用いた処理を実行させる。「I」を含まない簡 略命令は、転送元レジスタの値と転送先レジスタの値の値を用いた処理を実行さ せる。 MOVE処理が実行されると、転送元フィールドsrcの中で特定されるレジスタの 値は転送先フィールドdestに特定されるレジスタに移動する。転送元フィールド srcに特定されるレジスタが34のビットレジスタであり、転送先フィールドdes tに特定されるレジスタが32ビットレジスタである場合、高次2ビットは消失 する。転送元フィールドsrcに特定されるレジスタが32ビットレジスタであり 、転送先フィールドdestに特定されるレジスタが34ビットレジスタである場合 、高次2ビットは、いずれも論理的低電圧レベルにセットされる。 MOVE Multiple処理が実行されると、カウント値によって特定される一定数の クワドレットデータは、転送元フィールドsrcの中で特定されるレジスタから転 送先フィールドdestに特定されるレジスタに移動する。カウント値は、命令の即 時フィールドによって指定されるレジスタに格納される。好ましくは、MOVE Mul tiple処理において、転送元フィールドsrcに特定されるレジスタは、データイン ターフェイスレジスタDATA_0〜DATA_3のうちの1つであり、このレジスタは、D MAチャンネル又はバス入力レジスタBUS_INにアクセスする。好ましくは、この 処理において、転送先フィールドdestに特定されるレジスタは、データインター フェイスレジスタDATA_0〜DATA_3のうちの1つであり、このレジスタは、DMA チャンネル又はバス出力レジスタBUS_0UTにアクセスする。 AND処理の間、転送元フィールドsrc及び転送先フィールドdestの値に対する論 理的論理積演算が実行され、この演算の結果は、転送先フィールドdestによって 特定されるレジスタに格納される。ANDI処理では、転送先フィールドの値に代え て即時フィールドにおける値をオペランドのうちの1つとして使用し、演算結果 を転送先フィールドdestに特定されるレジスタに格納する。転送元フィールドsr cに特定されるレジスタが34ビットレジスタであり、転送先フィールドdestに 特定されるレジスタが32ビットレジスタである場合、高次2ビットは消失する 。転送元フィールドsrcに特定されるレジスタが32ビットレジスタであり、転 送先フィールドdestに特定されるレジスタが34ビットレジスタである場合、高 次2ビットは、いずれも論理的低電圧レベルにセットされる。転送元フィールド srcに特定されるレジスタ及び転送先フィールドdesに特定されるレジスタ がいずれも34ビットのレジスタである場合、論理積演算は34のビットの全て に対して実行される。 OR処理においては、転送元フィールドsrc及び転送先フィールドdestによって 特定されるレジスタの値に対して論理和演算が実行される。この演算結果は、転 送先フィールドdestによって特定されるレジスタに格納される。ORI形式の命令 に基づく処理では、転送先フィールドの値に代えて、即時フィールドの値をオペ ランドの1つとして使用する。演算の結果は、転送先フィールドdestにより特定 されるレジスタに格納される。転送元フィールドsrcによって特定されるレジス タが34ビットレジスタであり、転送先フィールドdestによって特定されるレジ スタが32ビットレジスタである場合、高次2ビットは消失する。転送元フィー ルドsrcによって特定されるレジスタが32ビットレジスタであり、転送先フィ ールドdestによって特定されるレジスタが34ビットレジスタである場合、高次 2ビットは、いずれも論理的低電圧レベルにセットされる。転送元フィールドsr cにより特定されるレジスタ及び転送先フィールドdestにより特定されるレジス タがいずれも34ビットレジスタである場合、論理和演算は34ビットの全てに 対して実行される。 SHIFT処理が実行されると、転送先レジスタdestの値は、転送元レジスタsrcの 値によって特定されるビット数分シフトされ、演算結果は転送先フィールドdest によって特定されるレジスタに格納される。正のシフト値は、転送先レジスタの 値を下位ビットの方向である右方向にシフトする、そして、左側の最上位ビット には0が充填される。負のシフト値は、転送先レジスタの中で値を上位ビットの 方向である左方向にシフトする、そして、右側の最下位ビットには0が 充填される。命令がSHIFTI形式で実行された場合、即時フィールドにおいて特定 されるビット数によって転送元レジスタの値がシフトされ、その結果が転送先フ ィールドにより特定されるレジスタに格納される。転送元フィールドsrcによっ て特定されるレジスタが34ビットレジスタであり、転送先フィールドdestによ って特定されるレジスタが32ビットレジスタである場合、高次2ビットは消失 する。転送元フィールドsrcによって特定されるレジスタが32ビットレジスタ であり、転送先フィールドdestによって特定されるレジスタが34ビットレジス タである場合、高次2ビットは、いずれも論理的低電圧レベルにセットされる。 転送元フィールドsrcによって特定されるレジスタ及び転送先フィールドdestに よって特定されるレジスタが34ビットレジスタである場合、シフト演算は下位 32ビットに対してのみ実行される。 CMP処理が実行されると、転送元レジスタsrcの値は転送先レジスタdestの 値から減算される。CMP処理の結果が正の値である場合、Zビットは論理的高 電圧レベルにセットされる。CMP処理の結果が負又は0である場合、Zビット は論理的低電圧レベルにセットされる。CMP処理の結果は、どこにも記憶され ない。この命令がCMPI形式で実行された場合、即時値が転送元レジスタsrcの値 から減算され、その結果に応じて、上述と同様にしてZビットがセットされる。 この命令も、処理の結果を記憶しない。 ADD処理が実行されると、転送元レジスタsrcの値は転送先レジスタdestの値に 加算され、この演算結果は、転送先レジスタdestに格納される。この命令がADDI 形式で実行された場合、即時値が転送元レジスタsrcの値に加算され、演算結果 は、転送先レジスタdestに格 納される。転送元フィールドsrcによって特定されるレジスタが34ビットレジ スタであり、転送先フィールドdestによって特定されるレジスタが32ビットレ ジスタである場合、高次2ビットは消失する。転送元フィールドsrcによって特 定されるレジスタが32ビットレジスタであり、転送先フィールドdestの中で特 定されるレジスタが34ビットレジスタである場合、高次2ビットは、いずれも 論理的低電圧レベルにセットされる。転送元フィールドsrcによって特定される レジスタ及び転送先フィールドdestによって特定されるレジスタが34ビットレ ジスタである場合、ADD処理は、下位32ビットに対してのみ実行される。 SUB処理が実行されると、転送先レジスタdestの値が転送元レジスタsrcの 値から減算され、この演算結果は、転送先レジスタdestに格納される。この命令 がSUBI形式で実行された場合、転送元レジスタの値から即時値が減算され、演算 結果は、転送先レジスタdestに格納される。転送元フィールドsrcによって特定 されるレジスタが34ビットレジスタであり、そして、転送先フィールドdestに よって特定されるレジスタが32ビットレジスタである場合、高次2ビットは、 消失する。転送元フィールドsrcによって特定されるレジスタが32ビットレジ スタであり、転送先フィールドdestによって特定されるレジスタが34ビットレ ジスタである場合、高次2ビットは、いずれも論理的低電圧レベルにセットされ る。転送元フィールドsrcによって特定されるレジスタ及び転送先フィールドdes tによって特定されるレジスタが34ビットレジスタである場合、SUB処理は 下位32ビットに対してのみ実行される。 MULT処理が実行されると、転送元レジスタsrcの値は、転送先レジ スタdestの値によって乗算され、演算結果は、転送先レジスタdestに格納される 。この命令がMULTI形式で実行された場合、転送元レジスタsrcには、即時値が乗 算され、演算結果は、転送先レジスタdestに格納される。転送元フィールドsrc によって特定されるレジスタが34ビットレジスタであり、転送先フィールドde stによって特定されるレジスタが32ビットレジスタである場合、高次2ビット は消失する。転送元フィールドsrcによって特定されるレジスタが32ビットレ ジスタであり、転送先フィールドdestによって特定されるレジスタが34ビット レジスタである場合、高次2ビットは、いずれも論理的低電圧レベルにセットさ れる。転送元フィールドsrcによって特定されるレジスタ及び転送先フィールドd estによって特定されるレジスタが34ビットのレジスタである場合、MULT処理 は、下位32ビットに対してのみ実行される。 BRANCH処理が実行されると、アイソクロノスデータパイプ20は、転送元フィ ールドsrcの下位バイトに含まれる制御ストアアドレスに分岐する。転送元フィ ールドsrcは、レジスタ又は即時値を特定することができる。 BRANCH ON ZERO処理が実行されると、直前の演算又は移動制御ストア命令の結 果が0である場合、アイソクロノスデータパイプ20は、転送元フィールドsrc の下位バイトに含まれる制御ストアアドレスに分岐する。転送元フィールドsrc は、レジスタ又は即時値を特定することができる。 BRANCH ON NOT ZERO処理が実行されると、直前の演算又は移動制御ストア命令 の結果が0ではない場合、アイソクロノスデータパイプ20は、転送元フィール ドsrcの下位バイトに含まれる制御ストア アドレスに分岐する。転送元フィールドsrcは、レジスタ又は即時値を特定する ことができる。 BSR処理が実行されると、次の制御ストア命令のアドレスがスタックの上へ押 し上げられ、アイソクロノスデータパイプ20は、転送元フィールドsrcの下位 バイトに含まれる制御ストアアドレスに分岐する。転送元フィールドsrcは、レ ジスタ又は即時値を特定することができる。 BSR ON ZERO処理が実行されると、直前の演算又は移動制御ストア命令の結果 が0である場合、次の制御ストア命令のアドレスはスタックの上へ押し上げられ 、アイソクロノスデータパイプ20は、転送元フィールドsrcの下位バイトに含 まれる制御ストアアドレスに分岐する。転送元フィールドsrcは、レジスタ又は 即時値を特定することができる。 BSR ON NOT ZERO処理が実行されると、直前の演算又は移動制御ストア命令の 結果が0ではない場合、次の制御ストア命令のアドレスはスタックの上へ押し上 げられ、アイソクロノスデータパイプ20は転送元フィールドsrcの下位バイト に含まれる制御ストアアドレスに分岐する。転送元フィールドsrcは、レジスタ 又は即時値を特定することができる。 RETURN処理が実行されると、直前の制御ストアアドレスはスタックからポップ オフされ、アイソクロノスデータパイプ20はそのアドレスに分岐する。 シリアルバスプロトコルにおいて定義されるアイソクロノス記録フォーマット は、バス58を介して送信されるアイソクロノスデータのストリームを記録する ためのフォーマットである。本発明を適 用したアイソクロノスデータパイプ20は、シリアルバスプロトコルに基づいて 、アイソクロノスデータの受信ストリームをアイソクロノス記録フォーマットに 変換するようプログラミングされている。また、これに対応して、アイソクロノ スデータパイプ20は、アイソクロノス記録フォーマットのデータからアイソク ロノスデータストリームを生成するようにプログラミングされている。アイソク ロノス記録フォーマットのデータストリームを図5に示す。なお、図5に示すデ ータストリームは、アイソクロノスサイクル境界から開始されている。 図5において、データストリーム94は、チャンネルA、Bの両方の各アイソ クロノスサイクルに含まれるデータパケットを含む。図5におけるオフセット欄 92は、各水平行が開始されるオフセット値を示す。ヘッダ水平行は、それぞれ 4バイトから構成される。データセクションは、データパケットを転送するため に必要とされるバイト数から構成される。各パケットのヘッダは、1秒フィール ド、サイクルナンバフィールド及びサイクルフィールドを含む。各パケット内に 設けられた各チャンネルのためのサブヘッダは、それぞれデータ長フィールド、 タグフィールドtg、チャンネルフィールド、データフィールド及び同期フィール ドsyを含む。各パケットにおいて、サブヘッダの後には、データセクションが設 けられている。 実例:アイソクロノスデータからアイソクロノス記録フォーマットへの変換 表5に示す制御ストアプログラムは、アイソクロノスデータパイ プ20がチャンネル3及びチャンネル5からなるアイソクロノスデータストリー ムをキャプチャリングし、チャンネル3をチャンネル7に、及びチャンネル5を チャンネル9にマッピングし、得られたデータストリームをアイソクロノス記録 フォーマットでDMAチャンネル0に送信するように、アプリケーションがアイ ソクロノスデータパイプ20に対して行うプログラミングの実例を示すものであ る。 実例:アイソクロノス記録フォーマットからの変換処理 表6に示す制御ストアプログラムは、アイソクロノスデータパイプ20がアイ ソクロノス記録フォーマットを有するDMAチャンネル3内のデータストリーム をバス58を介して転送できるアイソクロノスデータストリームに変換するよう 、アプリケーションがアイソクロノスデータパイプ20に対して行うプログラミ ングの実例を示す図である。データの転送元ストリームは、アイソクロノスチャ ンネル7及び9を含む。この制御ストアプログラムは、チャンネル7をチャンネ ル1に、チャンネル9をチャンネル2にマッピングする。なお、表6に示すプロ グラムにおいては、DMAチャンネルに最初に出現するクワドレットデータは、 サイクルスタートクワドレットである。 IEEE1394フォーマットバスを介して、アイソクロノスチャンネルを用 いて転送される商業用デジタルオーディオデータ及びデジタルビデオデータには 絶対時スタンプ(absolute time stamp)が含まれる。この絶対時スタンプは、 送信側によって挿入され、受信側でデータのストリームをデコードするために必 要なタイミング情報を再生するために使用される。同様に、例えばハードディス ク装置等の非商業用オーディオデータビデオデータ記録装置は、後にデータが再 生される場合でもデータを受信する側の機器が正常に動作するように、この挿入 された絶対時スタンプを修正することができる。 アイソクロノスデータパイプ20をアプリケーションによって初期化すること によりアイソクロノスデータの転送が可能となる。アプリケーションは、アイソ クロノスデータパイプ20を初期化した後、アイソクロノスデータパイプ20の 操作可能状態を変更するた めに制御レジスタを使う。現在の動作状態は、カレントチャンネルマスクレジス タの値及びステータスレジスタの下位バイトに含まれる情報によって定義される 。 アイソクロノスデータパイプ20の状態を変更するために、アプリケーション は、新しいチャンネルマスク値を待機中のチャンネルマスクレジスタに、及び新 たな動作状態を制御レジスタにプログラミングする。制御レジスタへの同じアク セスにおいて、アプリケーションは、さらにイベントフィールドにゴービットを セットし、イベントをプログラミングする。プログラミングされたイベントが発 生すると、アイソクロノスデータパイプ20は、ペンディングチャンネルマスク レジスタの値をカレントチャンネルマスクレジスタに転送する。アイソクロノス データパイプ20は、さらに、制御レジスタの下位バイトが示す情報をステータ スレジスタの下位バイトに転送する。 アイソクロノスデータパイプ20の処理を止める場合、アプリケーションは、 ペンディングチャンネルマスクレジスタに値1をプログラミングし、制御レジス タの送信イネーブルビットを論理的低電圧レベルに設定する。動作状態が変更さ れると、アプリケーションは、制御レジスタのイベントフィールドにゴービット をセットし、イベントをプログラミングする。イベントが発生すると、カレント チャンネルマスクレジスタの値は0になり、ステータスレジスタにおける送信イ ネーブルビットは論理的低電圧レベルにセットされ、これによりアイソクロノス データパイプ20の処理が停止される。アイソクロノスデータパイプ20の処理 が停止されると、ステータスレジスタのアクティブビットは、論理的低電圧レベ ルにセットさ れる。 アイソクロノスデータパイプ20を起動させるために、アプリケーションは、 最初に制御ストアプログラムをロードし、制御ストアアドレスレジスタファイル に適切な制御ストアオフセットをプログラミングする。ペンディングチャンネル マスクレジスタは、アイソクロノスデータパイプ20が受信するべきチャンネル のビットマスクを用いてプログラミングされる。アイソクロノスデータパイプ2 0がデータを受信していない場合、ペンディングチャンネルマスクレジスタにお ける値は0にプログラミングされる。制御レジスタにおけるゴービットは、状態 の変更を示すために論理的高電圧レベルにセットされる。アイソクロノスデータ パイプ20がアイソクロノスデータを送信している場合、制御レジスタにおける 送信イネーブルビットは論理的高電圧レベルにセットされる。アイソクロノスデ ータパイプ20がエラーにより処理を停止する場合、制御レジスタにおけるスト ップオンエラービットは論理的高電圧レベルにセットされる。アイソクロノスデ ータパイプ20がアイソクロノスデータを送信している場合、送信アイソクロノ スデータに含まれるDMAチャンネルに対応する制御レジスタ内の出力イネーブ ルビットは、論理的高電圧レベルにセットされる。制御レジスタにおけるイベン トフィールドには、アイソクロノスデータパイプ20の状態を変更すイベントが プログラミングされる。 上述の通り、非同期データパイプ26は、アプリケーションからバス58を介 して実行される非同期データ転送動作を完了するために必要なトランザクション を自動的に生成する。本発明のアイソクロノスデータパイプ20の変形実施例に おいて、アイソクロノスデ ータパイプ20がアイソクロノスデータと非同期データの両方を送受信するよう なプログラミングを行ってもよい。この場合、非同期データパイプ26及びこれ に対応するFIFO32を設ける必要はない。さらに、この場合、アイソクロノ スデータパイプ20がリンク回路10における唯一の論理ブロックとなるため、 マルチプレクサ40及びデマルチプレクサ42を設ける必要はない。 先に述べたように、本発明の最良の実施の形態において、アイソクロノスデー タパイプ20は、制御ストアプログラムを実行するアイソクロノスデータストリ ーム上で一連の処理を実行するようプログラミングされる。変形実施例において 、アイソクロノスデータパイプ20は、非同期データも送受信するようにプログ ラミングされる。この変形実施例では、アイソクロノスデータパイプ20は、仮 想非同期データパイプとして機能し、データ送信時に適切なヘッダを生成し、受 信データからはヘッダを除去するとともに、非同期データ転送動作に必要なトラ ンザクションを生成する。これらの処理の詳細については、本出願と同日に提出 された米国特許出願番号08/612,321号、「アプリケーションのバスの 間の非同期データ転送を自動的に管理する非同期データパイプ(Asynchronous D ata Pipe For Automatically Managing Asynchronous Data Transfers Between An Application And A Bus Structure)に記載されている。 この変形実施例において、アイソクロノスデータパイプ20は、アイソクロノ スデータ及び非同期データの両方を送受信する。アイソクロノスデータパイプ2 0は、アプリケーションによりプログラミングされ、必要に応じて、アイソクロ ノスデータストリームか非 同期ストリームを処理するために適切なプログラムを実行する。非同期データを 送受信する場合、アイソクロノスデータパイプ20は、適切な範囲内のアドレス に対するデータ転送動作を完了するために必要な読出トランザクション又は書込 トランザクションを自動的に生成するようプログラミングされる。アイソクロノ スデータパイプ20は、インクリメント機能がディスエーブルにされない限り、 各データパケットのパケット長に応じて、各トランザクションのために転送先オ フセットアドレスフィールドの値を自動的にインクリメントする。インクリメン ト機能がディスエーブルにされている場合とは、トランザクションが単一のアド レスにおいて実行される場合である。 本発明の原理に従った構造及び処理を特定の具体例に基づいて詳細に説明した 。上述の説明で参照した具体例及びその細部は、本明細書に添付した請求の範囲 を限定するものではない。本発明の思想から逸脱することなく、上述の実施の形 態を様々に修正することができることは、当業者にとって明らかである。
【手続補正書】特許法第184条の8第1項 【提出日】平成11年4月14日(1999.4.14) 【補正内容】 データパイプ20及び非同期データパイプ26は、各パケットの最初のクワドレ ットのビット32を論理的高電圧レベルに設定する。受信用パケットに対しては 、リンクコア44が各パケットの最初のクワドレットのビット32を論理的高電 圧レベルに設定する。 アイソクロノスデータパイプ20に対応する送信用FIFO30において、ビ ット33はアイソクロノスサイクルの境界を示すために使用される。アイソクロ ノスデータパイプ20は、各アイソクロノスサイクルにおけるアイソクロノスパ ケットの最初のクワドレットにおいてビット33を論理的高電圧レベルに設定す る。リンクコア44が論理的高電圧レベルにセットされたビット33を有するク ワドレットデータを受信すると、リンクコア44は、次のサイクル開始まで待機 し、次に論理的高電圧レベルに設定されたビット33を有するクワドレットデー タを検出するまで、送信用FIFO30に格納された全てのアイソクロノスパケ ットを送信する。 アプリケーション12、14のうちの1つからバス58にアプリケーションデ ータを送信するために、アイソクロノスデータパイプ20及び非同期データパイ プ26は、適切なヘッダ情報を生成し、適切なアプリケーションデータを添付し て、バス58の要求に応じたフォーマットのパケットを生成する。これらのパケ ットは、FIFO30又はFIFO32のいずれか適切な一方に格納された後、 バス58に送出される。 非同期データパイプの実現の手法については、同日に出願された米国特許出願 番号08/612,321、「Asynchronous Data Pipe For Automatically Managing Asyn chronous Data Transfers Between An Application And A Bus Structure」に記 載されている。この出願は、1997年9月12日に公開された国際出願公開番 号WO97/33230に対応する。非同期データパイプ26は、バスとアプリ ケーションとの間の非同期データ転送動作を完了するために必要なトランザクシ ョンを自動的に生成する。非同期データパイプ26は、アプリケーションによっ てプログラミングされるレジスタファイル28を備える。レジスタファイル28 により、アプリケーションは、データ転送動作の要求及び特性をプログラミング できる。レジスタファイル28は、バス速度、トランザクションラベル、トラン ザクションコード、転送先ノード識別子、転送先オフセットアドレス、各データ パケットのパケット長、パケットカウンタ、パケットカウンタバンプフィールド 、制御フィールド及び状態フィールドを有する。 アプリケーションによりレジスタファイル28がプログラミングされ、起動さ れた後、非同期データパイプ26は、適切な範囲内のアドレスに対するデータ転 送動作を完了するための読出又は書込トランザクションを自動的に 生成する。このとき、非同期データパイプ26は、レジスタファイル28内の情 報をテンプレートとして用い、トランザクション及びヘッダを生成する。非同期 データパイプ26は、インクリメント機能が停止されない限り、各トランザクシ ョンに関して、各データパケットの長さに応じて転送先オフセットアドレスフィ ールドの値をインクリメントする。インクリメント機能が停止される場合とは、 トランザクションが単一アドレスに対して実行される場合である。パケットカウ ンタ値は、生成すべき残りのトランザクションの数を示す。カウンタ値は、各デ ータパケットが転送される毎にデクリメントされる。アプリケーションはパケッ トバンプフィールドに書込を行い、パケットカウンタ値をインクリメントする。 複数の非同期データ転送動作を管理するために、リンク回路10に複数の非同 期データパイプを設けてもよい。この場合、各非同期データパイプは、それぞれ 固有のトランザクションラベル値又は一定範囲の値を有する。マルチプレクサ4 0は、非同期データパイプ及びアイソクロノスデータパイプからバス58に送出 されるトランザクション及びデータパケットを多重化する。デマルチプレクサ4 2は、バス58から信号及びデータパケットを受信し、トランザクションコード 及びトランザクションラベル値を用いてこれらを適切な非同期データパイプ26 に出力する。 リンク回路10には、単一のアイソクロノスデータパイプ20が設けられてい る。このアイソクロノスデータパイプ20は複数のアイソクロノスチャンネルを 処理することができる。このアイソクロノスデータパイプ20は、データインタ ーフェイスにおいて複数のアプリケーションとインタラクトすることができる。 これにより、アイソクロノスデータパイプ20は、複数のアイソクロノスデータ ストリームをサポートすることができる。各ストリームは、複数のチャンネルを 含んでいてもよい。また、変形例において、後述するように、アイソクロノスデ ータパイプ20に非同期データを送受信させてもよい。すなわち、この場合、ア イソクロノスデータパイプは、非同期データパイプの機能を代理する。 リンクコア44は、送信用FIFO30、32からのデータパケットを受信し 、バス58に対応するフォーマットを有するパケットを生成し、生成したパケッ トを物理インターフェイス56を介してバス58に送信する。リンクコア44は 、送信用アイソクロノスFIFO30から受信した1アイソクロノスサイクル分 のデータを各アイソクロノスサイクル毎に送出する。アイソクロノスデータを送 信しない場合、リンクコア44は、送信用非同期FIFO32から受信した非同 期パケットを送出する。 出力イネーブルフィールドは、制御フィールドのビット4〜ビット7に設けら れた4ビットからなるフィールドである。出力イネーブルフィールドにおけるビ ットのいずれかが論理的高電圧レベルにセットされている場合、対応するダイレ クトメモリアクセス(Direct Memory Access:以下、DMAという。)チャンネ ルは、対応するFIFOが一杯の状態であることを確認し、そして、アイソクロ ノスデータパイプ20は、送信用FIFO30にクワドレットが存在する場合は 常に制御ストア出力命令を出力する。 ストップオンエラーフィールド(stop on error field)は、制御フィールド のビット3に設けられた1ビットフィールドである。ストップオンエラーフィー ルドが論理的高電圧レベルにセットされた場合、アイソクロノスデータパイプ2 0は、チャンネルマスクレジスタの値を論理的低電圧レベルにセットすることに よって、検出された最初のエラーに対して現在の処理を停止する。データ送信時 に発生する可能性のあるエラーは、例えばFIFOのアンダーラン、サイクルス タートパケットの検出の失敗等である。データ受信時に発生する可能性のあるエ ラーは、FIFOのオーバーラン、サイクルスタートパケットの検出の失敗、C RCデータエラー、パケットフォーマットエラー、チャンネル検出の失敗等であ る。 送信イネーブルフィールドは、制御フィールドのビット1に設けられた1ビッ トからなるフィールドである。送信イネーブルフィールドが論理的高電圧レベル にセットされた場合、アイソクロノスデータパイプ20は、出力制御ストアプロ グラムを実行する。ゴービットが論理的低電圧レベルにセットされた場合、又は 、出力制御ストアプログラムがリターン命令を実行した場合、送信イネーブルビ ットはクリアされる。 ゴーフィールド(go field)は、制御フィールドのビット0に設けられた1ビ ットフィールドである。アプリケーションは、アイソクロノスデータパイプにイ ベントを監視させるために、ゴービットを論理的高電圧レベルにセットする。特 定のイベント条件が満たされた場合、アイソクロノスデータパイプ20は、ペン ディング中のチャンネルマスクレジスタのコンテンツを現在のチャンネルマスク レジスタに転送する。 状態フィールドは、レジスタファイル80のバイト8〜バイトBに設けられた 32のビットからなるフィールドである。状態フィールドは、読出/書込可能な フィールドである。状態フィールドには、アイソクロノスデータパイプ20の現 在の状態を報告するステータス情報が含まれている。状態フィールドのビット0 〜ビット7は、制御フィールドのビット0〜ビット7に対応し、出力フィールド 、エラー停止フィールド、送信イネーブルフィールド及びアクティブフィールド を備える。ステータスレジスタにおけるこれらのフィールドの値は、アイソクロ ノスデータパイプ20の現在の動作状態を示す。状態フィールドのビット8〜ビ ット27は、予備のフィールドである。状態フィールドのビット0には、1ビッ トのアクティブフィールドが設けられており、このアクティブフィールドは、ア イソクロノスデータパイプ20がアクティブであるか否かを示す。アクティブビ ットが論理的高電圧レベル 施例において、アイソクロノスデータパイプ20は、非同期データも送受信する ようにプログラミングされる。この変形実施例では、アイソクロノスデータパイ プ20は、仮想非同期データパイプとして機能し、データ送信時に適切なヘッダ を生成し、受信データからはヘッダを除去するとともに、非同期データ転送動作 に必要なトランザクションを生成する。これらの処理の詳細については、本出願 と同日に提出された米国特許出願番号08/612,321号、「アプリケーシ ョンのバスの間の非同期データ転送を自動的に管理する非同期データパイプ(As ynchronous Data Pipe For Automatically Managing Asynchronous Data Transf ers Between An Application And A Bus Structure)に記載されている。この出 願は、1997年9月12日に公開された国際出願公開番号WO97/3323 0に対応している。 この変形実施例において、アイソクロノスデータパイプ20は、アイソクロノ スデータ及び非同期データの両方を送受信する。アイソクロノスデータパイプ2 0は、アプリケーションによりプログラミングされ、必要に応じて、アイソクロ ノスデータストリームか非同期ストリームを処理するために適切なプログラムを 実行する。非同期データを送受信する場合、アイソクロノスデータパイプ20は 、適切な範囲内のアドレスに対するデータ転送動作を完了するために必要な読出 トランザクション又は書込トランザクションを自動的に生成するようプログラミ ングされる。アイソクロノスデータパイプ20は、インクリメント機能がディス エーブルにされない限り、各データパケットのパケット長に応じて、各トランザ クションのために転送先オフセットアドレスフィールドの値を自動的にインクリ メントする。インクリメント機能がディスエーブルにされている場合とは、トラ ンザクションが単一のアドレスにおいて実行される場合である。 本発明の原理に従った構造及び処理を特定の具体例に基づいて詳細に説明した 。上述の説明で参照した具体例及びその細部は、本明細書に添付した請求の範囲 を限定するものではない。 請求の範囲 1. アプリケーション(12,14)とバス(58)との間で送受されるデー タストリームを制御するデータストリーム制御方法において、 a.上記アプリケーション(12,14)及びバス(58)より選択されたデー タソースからデータストリームを受信し、受信データストリームを生成するステ ップと、 b.上記受信データストリームに関する一連のオペコードを入手するステップと 、 c.上記一連のオペコードを実行して上記受信データストリームを送信データス トリームに変換するステップと、 を有するデータストリーム制御方法。 2. 上記受信データストリームは、アイソクロノスデータストリームであるこ とを特徴とする請求の範囲第1項に記載のデータストリーム制御方法。 3. 上記受信データストリームのチャンネル番号を判定するステップを有し、 上記一連のオペコードは、上記受信データストリームのチャンネル番号に対応し ているメモリアドレスから得られることを特徴とする請求の範囲第2項に記載の データストリーム制御方法。 4. 上記バス(58)は、IEEE1394仕様のバスであることを特徴とす る請求の範囲第3項に記載のデータストリーム制御方法。 5. 上記受信データストリームは、非同期データストリーム及びアイソクロノ スデータストリームのいずれかであることを特徴とする請求の範囲第1項に記載 のデータストリーム制御方法。 6. 上記受信データストリームが非同期データストリームであるか、アイソク ロノスデータストリームであるかを判定するステップを有することを特徴とする 請求の範囲第5項に記載のデータストリーム制御方法。 7. 上記受信データストリームがアイソクロノスデータストリームであるとき 、上記一連のオペコードは、上記チャンネル番号に対応するメモリアドレスから 得られ、上記受信データストリームが非同期データストリームであるとき、上記 一連のオペコードは、非同期データに対応するメモリアドレスから得られること を特徴とする請求の範囲第6項に記載のデータストリーム制御方法。 8. 上記バス(58)は、IEEE1394仕様のバスであることを特徴とす る請求の範囲第7項に記載のデータストリーム制御方法。 9. アプリケーション(12,14)とバス(58)と間の双方向データスト リームを制御するデータストリーム制御装置において、 a.上記アプリケーション(12,14)及びバス(58)より選択さ れたデータ源からデータストリームを受信し、受信データストリームを生成する 受信データストリーム生成手段と、 b.受信データストリームに関する一連のオペコードを入手する入手手 段と、 c.上記入手手段に接続され、上記一連のオペコードを実行して、上記 受信データストリームを送信データストリームに変換する送信データストリーム 生成手段と を備えるデータストリーム制御装置。 10. 上記データストリームがアプリケーション(12,14)から受信され たデータストリームであるときは、上記送信データストリームは、バス(58) に出力され、上記データストリームがバス(58)から受信されたデータストリ ームであるときは、上記送信データストリームは、アプリケーションに出力され ることを特徴とする請求の範囲第9項に記載のデータストリーム制御装置。 11. 上記入手手段に接続されるとともに、上記アプリケーションに接続され て上記一連のオペコードを記憶する記憶手段(24)を備えることを特徴とする 請求の範囲第9項に記載のデータストリーム制御装置。 12. 上記受信データストリームはアイソクロノスデータストリームであるこ とを特徴とする請求の範囲第11項に記載のデータストリーム制御装置。 13. 上記一連のオペコードは、上記受信データストリームの転送に用いられ たチャンネル番号に対応するメモリアドレスに格納されていることを特徴とする 請求の範囲第12項に記載のデータストリーム制御装置。 14. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求 の範囲第13項に記載のデータストリーム制御装置。 15. 上記受信データストリーム生成手段に接続され、上記受信されたデータ ストリームがアイソクロノスデータストリームであるか、非同期データストリー ムであるかを判定する判定手段を備えることを特徴とする請求の範囲第11項に 記載のデータストリーム制御装置。 16. 上記受信されたデータストリームがアイソクロノスデータストリームで あるとき、上記一連のオペコードは該データストリームの転送に用いられたチャ ンネル番号に対応するメモリアドレスに格納され、上記受信されたデータストリ ームが非同期データストリームであるときは、上記一連のオペコードは該非同期 データに対応するメモリアドレスに格納されることを特徴とする請求の範囲第1 5項に記載のデータストリーム制御装置。 17. 上記バス(58)は、IEEE1394仕様のバスであることを特徴と する請求の範囲第16項に記載のデータストリーム制御装置。 18. 1又は複数のアプリケーション(12,14)とバス(58)との間の データ転送動作を制御及び管理するデータ転送動作制御装置において、 a.上記1又は複数のアプリケーションとバスとの間に接続された アイソクロノスデータ処理装置(20)と、 b.上記バス(58)に接続され、該バス(58)にデータを送信し、 及び該バス(58)からデータを受信する物理インターフェイス(56)と を備え、上記アイソクロノスデータ処理装置はさらに、 i.上記アプリケーション(12,14)及びバス(58)より選択さ れたデータソースからデータストリームを受信して受信データストームを生成す るデータストリム生成手段と、 ii.上記受信データストリームに関する一連のオペコードを入手する入 手手段と。 iii.上記入手手段に接続され、上記一連のオペコードを実行して上記 受信データストリームを出力データストリームに変換する出力データストリーム 生成手段と を備えるデータ転送動作制御装置。 19. 上記メモリ入手手段に接続され、上記アプリケーション(12,14) に接続して上記一連のオペコードを格納するメモリ(24)を備える請求の範囲 第18項記載のデータ転送動作制御装置。 20. 上記アプリケーション(12,14)とバス(58)との間で送受され る非同期データを自動的に制御する非同期データパイプ(26)を備え、該非同 期データパイプ(26)は、 a.上記アプリケーション(12,14)に接続されて上記非同期デー タの転送動作に関する命令を受信する命令受信手段と、 b.上記アプリケーション(12,14)と、上記バス(58)上のノ ードとの間の非同期データ転送動作を完了するために必要なトランザクションを 自動的に生成するトランザクション生成手段と を備えることを特徴とする請求の範囲第19項に記載のデータ転送動作制御装置 。 21. 上記アイソクロノスデータ処理装置(20)と、上記非同期データパイ プ(26)と、上記物理インターフェイス(56)に接続され、上記アイソクロ ノスデータ処理装置(20)及び非同期データパイプ(26)からのデータパケ ットを多重化してバス(58)に送信する多重化手段(40)を備えることを特 徴とする請求の範囲第20項に記載のデータ転送動作制御装置。 22. 上記アイソクロノスデータ処理装置(20)と、上記非同期データパイ プ(26)と、上記物理インターフェイス(56)に接続され、上記バス(58 )から受信したデータパケットを上記アイソクロノスデータ処理装置(20)又 は上記非同期データパイプ(26)のうちの適切な一方にルーチングする分離手 段(42)を備えることを特徴とする請求の範囲第21項に記載のデータ転送動 作制御装置。 23. 上記バス(58)は、バスがIEEE1394仕様のバスであることを 特徴とする請求の範囲第22項に記載のデータ転送動作制御装置。 24. 上記アイソクロノスデータ処理装置(20)は、アイソクロノスデータ 及び非同期データの両方に関する一連のオペコードを実行することを特徴とする 請求の範囲第19項に記載のデータ転送動作制御装置。 25. 上記受信されたデータストリームがアイソクロノスデータストリームで あるとき、上記一連のオペコードは該データストリームの転送に用いられたチャ ンネル番号に対応するメモリアドレスに格納され、上記受信されたデータストリ ームが非同期データストリームであるときは、上記一連のオペコードは該非同期 データに対応するメモリアドレスに格納されることを特徴とする請求の範囲第2 4項に記載のデータ転送動作制御装置。 26. 上記バス(58)は、IEEE1394仕様のバスであることを特徴と する請求の範囲第25項に記載のデータ転送動作制御装置。 27. アプリケーション(12,14)とIEEE1394仕様のバス(58 )との間に接続され、該アプリケーション(12,14)とIEEE1394仕 様のバス(58)との間のアイソクロノスデータ転送を管理するアイソクロノス データ処理装置(20)において、 a.アイソクロノスデータストリームを処理するための命令をアプリケーション (12,14)が格納する制御ストアメモリ(24)と、 b.上記アプリケーション(12,14)及びバス(58)より選択されたデー タソースからデータストリームを受信し、受信データストリームを生成する受信 データストリーム生成手段(44)と、 c.上記制御ストアメモリ及び上記受信データストリーム生成手段に接続され、 上記制御ストアメモリに格納された一連のオペコードに基づいて上記受信データ ストリムを送信データストリームに変換する変換手段と を備えるアイソクロノスデータ処理装置(20)。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(GH,KE,LS,MW,S D,SZ,UG),EA(AM,AZ,BY,KG,KZ ,MD,RU,TJ,TM),AL,AM,AT,AU ,AZ,BA,BB,BG,BR,BY,CA,CH, CN,CU,CZ,DE,DK,EE,ES,FI,G B,GE,HU,IL,IS,JP,KE,KG,KP ,KR,KZ,LC,LK,LR,LS,LT,LU, LV,MD,MG,MK,MN,MW,MX,NO,N Z,PL,PT,RO,RU,SD,SE,SG,SI ,SK,TJ,TM,TR,TT,UA,UG,UZ, VN (72)発明者 嶋 久登 東京都品川区北品川5丁目9番12号

Claims (1)

  1. 【特許請求の範囲】 1. アプリケーションとバスとの間で送受されるデータストリームを制御する データストリーム制御方法において、 a.データストリームを受信し、受信データストリームを生成するステップと、 b.上記受信データストリームに関するプログラミングされた命令を入手するス テップと、 c.上記プログラミングされた命令に応じて上記受信データストリームを処理し 、送信データストリームを生成するステップと、 を有するデータストリーム制御方法。 2. 上記受信データストリームは、アイソクロノスデータストリームであるこ とを特徴とする請求の範囲第1項に記載のデータストリーム制御方法。 3. 上記受信データストリームのチャンネル番号を判定するステップを有し、 上記プログラミングされた命令は、上記受信データストリームのチャンネル番号 に対応しているメモリアドレスから得られることを特徴とする請求の範囲第2項 に記載のデータストリーム制御方法。 4. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求の 範囲第3項に記載のデータストリーム制御方法。 5. 上記受信データストリームは、非同期データストリーム及びアイソクロノ スデータストリームのいずれかであることを特徴とする請求の範囲第1項に記載 のデータストリーム制御方法。 6. 上記受信データストリームが非同期データストリームであるか、アイソク ロノスデータストリームであるかを判定するステップを有することを特徴とする 請求の範囲第5項に記載のデータストリーム制御方法。 7. 上記受信データストリームがアイソクロノスデータストリームであるとき 、上記プログラミングされた命令は、上記チャンネル番号に対応するメモリアド レスから得られ、上記受信データストリームが非同期データストリームであると き、上記プログラミングされた命令は、非同期データに対応するメモリアドレス から得られることを特徴とする請求の範囲第6項に記載のデータストリーム制御 方法。 8. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求の 範囲第7項に記載のデータストリーム制御方法。 9. アプリケーションとバスと間の双方向データストリームを制御するデータ ストリーム制御装置において、 a.データストリームを受信し、受信データストリームを生成する受信 データストリーム生成手段と、 b.受信データストリームに関するプログラミングされた命令を入手す る命令入手手段と、 c.上記命令入手手段に接続され、上記プログラミングされた命令に基 づいて、上記受信データストリームを処理し、送信データストリームを生成する 送信データストリーム生成手段と を備えるデータストリーム制御装置。 10. 上記データストリームがアプリケーションから受信されたデータストリ ームであるときは、上記送信データストリームは、バスに出力され、上記データ ストリームがバスから受信されたデータストリームであるときは、上記送信デー タストリームは、アプリケーションに出力されることを特徴とする請求の範囲第 9項に記載のデータストリーム制御装置。 11. 上記命令入手手段に接続されるとともに、上記アプリケーションに接続 されて上記プログラミングされた命令を記憶する記憶手段を備えることを特徴と する請求の範囲第9項に記載のデータストリーム制御装置。 12. 上記受信データストリームはアイソクロノスデータストリームであるこ とを特徴とする請求の範囲第11項に記載のデータストリーム制御装置。 13. 上記プログラミングされた命令は、上記受信データストリ ームの転送に用いられたチャンネル番号に対応するメモリアドレスに格納されて いることを特徴とする請求の範囲第12項に記載のデータストリーム制御装置。 14. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求 の範囲第13項に記載のデータストリーム制御装置。 15. 上記受信データストリーム生成手段に接続され、上記受信されたデータ ストリームがアイソクロノスデータストリームであるか、非同期データストリー ムであるかを判定する判定手段を備えることを特徴とする請求の範囲第11項に 記載のデータストリーム制御装置。 16. 上記受信されたデータストリームがアイソクロノスデータストリームで あるとき、上記プログラミングされた命令は該データストリームの転送に用いら れたチャンネル番号に対応するメモリアドレスに格納され、上記受信されたデー タストリームが非同期データストリームであるときは、上記プログラミングされ た命令は該非同期データに対応するメモリアドレスに格納されることを特徴とす る請求の範囲第15項に記載のデータストリーム制御装置。 17. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求 の範囲第16項に記載のデータストリーム制御装置。 18. 1又は複数のアプリケーションとバスとの間のデータ転送 動作を制御及び管理するデータ転送動作制御/管理装置において、 a.上記1又は複数のアプリケーションとバスとの間に接続されたアイ ソクロノスデータパイプと、 b.上記バスに接続され、該バスにデータを送信し、及び該バスからデ ータを受信する物理インターフェイスと を備え、上記アイソクロノスデータパイプはさらに、 i.データストリームを受信して受信データストーム生成するデータス トリム生成手段と、 ii.上記受信データストリームに関するプログラミングされた命令を入 手する命令入手手段と。 iii.上記命令入手手段に接続され、上記プログラミングされた命令に 基づいて上記受信データストリームを処理し、出力データストリームを生成する 出力データストリーム生成手段と を備えるデータ転送動作制御/管理装置。 19. 上記メモリ入手手段に接続され、上記アプリケーションに接続して上記 プログラミングされた命令を格納するメモリを備える請求の範囲第18項記載の データ転送動作制御/管理装置。 20. 上記アプリケーションとバスとの間で送受される非同期データを自動的 に制御する非同期データパイプを備え、該非同期データパイプは、 a.上記アプリケーションに接続されて上記非同期データの転送動作に 関する命令を受信する命令受信手段と、 b.上記アプリケーションと、上記バス上のノードとの間の非同期デー タ転送動作を完了するために必要なトランザクションを自動的に生成するトラン ザクション生成手段とを備えることを特徴とする請求の範囲第19項に記載のデ ータ転送動作制御/管理装置。 21. 上記アイソクロノスデータパイプと、上記非同期データパイプと、上記 物理インターフェイスに接続され、上記アイソクロノスデータパイプ及び非同期 データパイプからのデータパケットを多重化してバスに送信する多重化手段を備 えることを特徴とする請求の範囲第20項に記載のデータ転送動作制御/管理装 置。 22. 上記アイソクロノスデータパイプと、上記非同期データパイプと、上記 物理インターフェイスに接続され、上記バスから受信したデータパケットを上記 アイソクロノスデータパイプ又は上記非同期データパイプのうちの適切な一方に ルーチングする分離手段を備えることを特徴とする請求の範囲第21項に記載の データ転送動作制御/管理装置。 23. 上記バスは、バスがIEEE1394仕様のバスであることを特徴とす る請求の範囲第22項に記載のデータ転送動作制御/管理装置。 24. 上記アイソクロノスデータパイプは、アイソクロノスデータ及び非同期 データの両方に関するプログラミングされた命令を実 行することを特徴とする請求の範囲第19項に記載のデータ転送動作制御/管理 装置。 25. 上記受信されたデータストリームがアイソクロノスデータストリームで あるとき、上記プログラミングされた命令は該データストリームの転送に用いら れたチャンネル番号に対応するメモリアドレスに格納され、上記受信されたデー タストリームが非同期データストリームであるときは、上記プログラミングされ た命令は該非同期データに対応するメモリアドレスに格納されることを特徴とす る請求の範囲第24項に記載のデータ転送動作制御/管理装置。 26. 上記バスは、IEEE1394仕様のバスであることを特徴とする請求 の範囲第25項に記載のデータ転送動作制御/管理装置。 27. アプリケーションとIEEE1394仕様のバスとの間に接続され、該 アプリケーションとIEEE1394仕様のバスとの間のアイソクロノスデータ 転送を管理するアイソクロノスデータパイプにおいて、 a.アイソクロノスデータストリームを処理するための命令をアプリケーション が格納する制御ストアメモリと、 b.データストリームを受信し、受信データストリームを生成する受信データス トリーム生成手段と、 c.上記制御ストアメモリ及び上記受信データストリーム生成手段に接続され、 上記制御ストアメモリに格納された命令に基づいて上 記受信データストリムを処理し、送信データストリームを生成する処理回路と を備えるアイソクロノスデータパイプ。
JP54384298A 1997-04-15 1997-04-15 データストリーム制御方法及び装置 Expired - Lifetime JP4033915B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1997/006240 WO1998047271A1 (en) 1997-04-15 1997-04-15 Protocol processor for manipulating a stream of data

Publications (2)

Publication Number Publication Date
JP2001520823A true JP2001520823A (ja) 2001-10-30
JP4033915B2 JP4033915B2 (ja) 2008-01-16

Family

ID=22260718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54384298A Expired - Lifetime JP4033915B2 (ja) 1997-04-15 1997-04-15 データストリーム制御方法及び装置

Country Status (8)

Country Link
EP (1) EP0976228B1 (ja)
JP (1) JP4033915B2 (ja)
KR (1) KR100497166B1 (ja)
AT (1) ATE298485T1 (ja)
AU (1) AU2669797A (ja)
CA (1) CA2286163C (ja)
DE (1) DE69733617T2 (ja)
WO (1) WO1998047271A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292844B1 (en) * 1998-02-12 2001-09-18 Sony Corporation Media storage device with embedded data filter for dynamically processing data during read and write operations
KR100316650B1 (ko) 1998-08-29 2002-01-12 윤종용 상위 계층 데이터 전송을 위한 상위 프로토콜과 ieee 1394버스 정합 방법
DE19913585A1 (de) * 1999-03-25 2000-09-28 Thomson Brandt Gmbh Verfahren zum Verwalten von über einen Datenbus empfangenen Daten sowie Vorrichtung zur Durchführung des Verfahrens
US6519265B1 (en) * 1999-05-28 2003-02-11 Sony Corporation System and method for context switching in an electronic network
US6535940B1 (en) * 1999-07-28 2003-03-18 Sony Corporation System and method for fast data transfers in an electronic network
US6721859B1 (en) * 1999-10-21 2004-04-13 Sony Corporation Multi-protocol media storage device implementing protocols optimized for storing and retrieving both asynchronous and isochronous data
EP1178395A3 (en) 2000-07-31 2009-05-20 Texas Instruments Incorporated Apparatus and method for communicating a multiword digital message with an isochronous-signal processor
FR2813408B1 (fr) * 2000-08-29 2006-08-04 Canon Kk Procedes de transfert de types multiples de donnees au sein d'un noeud de communication, et reseaux comportant un tel noeud

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3458469B2 (ja) * 1994-07-15 2003-10-20 ソニー株式会社 信号受信装置及び通信方法

Also Published As

Publication number Publication date
DE69733617D1 (de) 2005-07-28
EP0976228B1 (en) 2005-06-22
JP4033915B2 (ja) 2008-01-16
CA2286163A1 (en) 1998-10-22
KR20010006297A (ko) 2001-01-26
KR100497166B1 (ko) 2005-06-23
CA2286163C (en) 2009-10-13
WO1998047271A1 (en) 1998-10-22
ATE298485T1 (de) 2005-07-15
EP0976228A1 (en) 2000-02-02
AU2669797A (en) 1998-11-11
DE69733617T2 (de) 2006-05-11

Similar Documents

Publication Publication Date Title
US6233637B1 (en) Isochronous data pipe for managing and manipulating a high-speed stream of isochronous data flowing between an application and a bus structure
EP0885418B1 (en) Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US5991520A (en) Application programming interface for managing and automating data transfer operations between applications over a bus structure
US6667988B1 (en) System and method for multi-level context switching in an electronic network
US6947442B1 (en) Data transfer control device and electronic equipment
WO2002041156A2 (en) Method and apparatus for synchronizing interrupts in a message passing queue oriented bus system
WO2000023906A1 (en) System for dynamically binding subobjects into objects to represent devices within ieee 1394 serial bus network
JP2003524848A (ja) 読出及び書込処理中に動的にデータを処理するデータフィルタが組み込まれた媒体記憶装置
US6857028B1 (en) Data transfer control device and electronic equipment
EP1093269B1 (en) Data transfer control device and electronic equipment
JP4033915B2 (ja) データストリーム制御方法及び装置
JP3967792B2 (ja) パケット化されたデータ通信インタフェース機器のpciシリアルバスインタフェース機器回路を自律的に動作させるための方法ならびに自律ブート回路
WO2000023869A1 (en) Dynamic enumeration of device within a network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070123

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070330

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070723

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071024

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 3

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

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131102

Year of fee payment: 6

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