JPH0846935A - オーディオ・ビデオ対話信号を処理する方法と装置 - Google Patents

オーディオ・ビデオ対話信号を処理する方法と装置

Info

Publication number
JPH0846935A
JPH0846935A JP7135568A JP13556895A JPH0846935A JP H0846935 A JPH0846935 A JP H0846935A JP 7135568 A JP7135568 A JP 7135568A JP 13556895 A JP13556895 A JP 13556895A JP H0846935 A JPH0846935 A JP H0846935A
Authority
JP
Japan
Prior art keywords
module
data
packet
header packet
request
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
JP7135568A
Other languages
English (en)
Other versions
JP3781454B2 (ja
Inventor
Jean-Rene Menand
メナンド ジーン−レネ
Alain Delpuch
デルパツク アラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technicolor USA Inc
Original Assignee
Thomson Consumer Electronics Inc
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 Thomson Consumer Electronics Inc filed Critical Thomson Consumer Electronics Inc
Publication of JPH0846935A publication Critical patent/JPH0846935A/ja
Application granted granted Critical
Publication of JP3781454B2 publication Critical patent/JP3781454B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals

Abstract

(57)【要約】 【目的】 データフローを効率よく監視し、できるだけ
速やかに所望のモジュールを処理する。 【構成】 要求されたパケットサービス内のパケットが
プログラムコンポーネント検出器30により受信され、
しかも、DMAにより、RAM412内の前に特定され
たバッファロケーションに書き込まれた後に、ビデオ処
理装置420とオーディオ処理装置418が、検出器3
0の制御により、DMA読み出し技法を用いて、各パケ
ットサービスと関連するRAM412バッファロケーシ
ョンからデータを読み出す。ビデオ処理装置420とオ
ーディオ処理装置418は、圧縮され、符号化されたデ
ータを復号し、出力端子15にAVIビデオ信号を出力
し、出力端子25にAVIオーディオ信号を出力する。
データコンポーネントパケットサービスパケットは、C
PU410の制御により処理される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、オーディオ・ビデオ対
話(AVI:audio video interac
tive)信号を受信して処理する方法と装置に関す
る。
【0002】
【発明の背景】対話型テレビジョンシステムが提案され
ている。対話型テレビジョンシステムでは、テレビジョ
ン受信機は、放送機器によりプログラム可能であり、ユ
ーザにより入力されたデータに応答し、放送されたビデ
オ上にオーバレイされたオンスクリーン・グラフィック
・ディスプレイを生成し、放送されたオーディオと合成
された音声を生成し、かつ/あるいは、放送機器、また
は他の外部のデータ処理サービスとデータを交換する処
理装置を含む。そのようなシステムでは、放送ロケーシ
ョンはコンピュータシステムを含み、このコンピュータ
システムは、対話型アプリケーションプログラム情報を
生成し、追加のコンポーネントとしての対話型アプリケ
ーションプログラム情報と、関連するテレビジョン信号
のビデオおよびオーディオ・コンポーネントとを合成す
る。テレビジョン受信器の処理装置は、対話型アプリケ
ーションプログラム情報を放送機器から受信し、その情
報により表された対話型アプリケーションプログラムを
実行し、テレビジョンの映像とオーディオとに合成され
るグラフィックスと音声を生成し、リモートコントロー
ルユニットを介して受信されるユーザ入力を処理する。
【0003】提案されているAVIシステムでは、放送
機器からのAVI信号はパケットデータストリームの形
態で放送され、複数の時間多重されたパケットサービス
を含む。各パケットサービスはAVI信号の異なる信号
コンポーネントを有する。例えば、あるサービスはビデ
オコンポーネントを有し、あるサービスはオーディオコ
ンポーネントを有し、あるサービスは対話型アプリケー
ションプログラム情報を有する。また、あるサービスは
ステレオとSAPオーディオチャンネル、および/また
は、クローズドキャプション情報等を有する。さらに、
パケットデータストリームの中には、2つ以上のAVI
プログラムに対するコンポーネントを有するパケットサ
ービスを含むことができるものもある。各パケットサー
ビスは、パケットサービスに関連する一意のサービスコ
ンポーネント識別子(SCID)を有し、そのパケット
サービス内のパケットは、それぞれ、そのサービス識別
子を含む。米国特許出願第234,773号(発明の名
称:APPARATUSAND METHOD FOR
FORMULATING AN INTERACTI
VE TV SIGNAL を参照されたい。この米国
特許出願番号を付して、このようなパケットデータスト
リームがどのように形成されるかを詳細に説明する説明
の一部とする。
【0004】さらに、提案されたAVIシステムでは、
1つのパケットサービスがプログラムガイドを有し、予
め定めたサービス識別子を含む。プログラムガイドパケ
ットサービスにより運ばれるデータは、AVIプログラ
ムのコンポーネントと、それらのコンポーネントを運ぶ
パケットサービスのサービス識別子とを関係付ける。こ
のデータを用いて、望ましいAVIプログラムのコンポ
ーネントを運ぶパケットサービスを、パケットストリー
ムから取り出すことができる。
【0005】AVI信号パケットデータストリーム内の
コンポーネントは、複数のパケットからなる1以上の伝
送ユニットにより運ばれる。任意の伝送ユニット内の最
初のパケットはヘッダパケットであり、残りのパケット
は関連するデータパケットである。ヘッダパケットは後
続データについての情報を含み、関連するデータパケッ
トはコンポーネントのその部分を構成するデータを運
ぶ。異なる伝送ユニットは異なる数のデータパケットを
含み、モジュールの伝送ユニットへの分割は、所望の時
間に、視聴者のロケーションに完全なモジュールを供給
するために必要なタイミングにより影響されるか、ある
いは、他のリアルタイムに考慮すべきことにより影響さ
れる。
【0006】対話型アプリケーションプログラム情報コ
ンポーネントは、1つ以上の(実行可能なコードを含
む)コードモジュールと、可能な場合は、1つ以上のデ
ータモジュールと、ディレクトリモジュールとによりな
る。このディレクトリモジュールは対話型アプリケーシ
ョンプログラムのコンポーネントを構成するコードモジ
ュールとデータモジュールを記述するデータを含む。こ
れらのモジュールは、アプリケーション・プログラム・
コンポーネントのフロー内で連続して繰り返される。既
に述べたが、モジュールは伝送ユニットにより運ばれ
る。伝送ユニット内のヘッダパケットは、さらに、後続
のデータパケット内のデータが属するモジュール内のロ
ケーションを含む。
【0007】AVI受信機の処理装置は、最初、データ
フローからディレクトリモジュールを取り出し、そのデ
ィレクトリに含まれた情報を利用して、どのコードモジ
ュールを最初に実行するべきかを決定する。そして、そ
のコードモジュールがデータフローから取り出され、メ
モリ内の周知のロケーションにロードされる。最初のコ
ードモジュールがメモリ内に完全にロードされると、処
理装置がそのコードモジュールを実行し始める。実行し
ている間、そのコードモジュールは、ディレクトリモジ
ュール内で識別されたデータモジュールからのデータを
要求することができる。そして、これらのデータモジュ
ールが取り出され、メモリ内にロードされる。データモ
ジュールがメモリ内に完全にロードされると、要求され
ているコードモジュールが通知され、引き続きそのデー
タを処理する。1つのコードモジュールを後続のコード
モジュールにチェインすることも可能である。このよう
な場合、現コードモジュールは、ディレクトリモジュー
ルにリストアップされた新しいコードモジュールにチェ
インする要求を発行し、そのメモリ空間は解放される。
そして、要求されたコードモジュールはデータフローか
ら取り出され、メモリにロードされる。要求されたコー
ドモジュールがメモリに完全にロードされると、実行さ
れる。他の機能も可能であり、次に説明する。
【0008】メモリ容量が充分な場合は、2つ以上のコ
ードモジュールを、メモリの個々の部分に同時に貯える
ことができる。そのような場合、モジュールからモジュ
ールにチェイニングすると、必然的に、新たなモジュー
ルの実行を開始するステップと、新しいモジュールがフ
ローからロードされるまで待機する要件を除くステップ
とを伴う。メモリに2つ以上のデータモジュールをロー
ドすることも可能である。データモジュールの変更はコ
ードモジュールよりも頻繁なので、データモジュールが
コードモジュールにより要求されると、データモジュー
ルがデータフローから取り出されることが考えられる。
【0009】提案されているAVI受信機の処理装置
は、大容量記憶装置や、プリロードされたAVIプログ
ラムを持つ必要がない。代わりに、対話型アプリケーシ
ョン・プログラム・パケット・サービスで運ばれるモジ
ュールが連続して繰り返されるので、必要なときは、ど
のモジュールもデータフローから取り出すことができ、
大容量記憶装置は必要でない。しかしながら、このた
め、AVI受信機の処理装置は、要求されたモジュール
がデータフローに存在するか否かを連続的に監視しなけ
ればならない。データフローを効率よく監視し、できる
だけ速やかに所望のモジュールを処理する方法と装置が
要望されている。
【0010】
【課題を解決するための手段】本発明の原理によれば、
オーディオ・ビデオ対話型(AVI)受信機は、複数の
モジュールを含むパケットサービスを受信する。各モジ
ュールは名前を持ち、時間多重された伝送ユニットを含
む。各伝送ユニットはヘッダパケットを含み、ヘッダパ
ケットはモジュールの名前を含む。このような受信機で
モジュールを処理する方法は次のスッテップを含む。最
初に、名前により識別されたモジュールに対するプロセ
スを実行する要求が受信され、受信されたモジュール名
と要求されたされたプロセスを含むエントリがエントリ
リストに挿入される。そして、パケットサービスのヘッ
ダパケットが検出される。検出されたヘッダパケット内
のモジュール名がリストのエントリの名前と一致した場
合、パケット処理回路が一致するエントリでプロセスを
実行する。最後に、プロセスがパフォームされたことを
示すメッセージが送信される。
【0011】本発明の原理による装置は、複数のモジュ
ールを含むパケットデータストリームのソースを含む。
各モジュールは名前を持ち、時間多重された伝送ユニッ
トを含む。各伝送ユニットはモジュールの名前を含むヘ
ッダパケットを含む。メモリは複数のエントリを含む要
求キューを貯える。各エントリは処理要求とモジュール
の名前を含む。メモリはヘッダパケットバッファも貯え
るッダパケットバッファはモジュール名前を含むロケー
ションを含む。要求処理回路は名前により識別されたモ
ジュールに対する処理を実行する要求を受信し、識別さ
れたモジュールの名前と、要求された処理とを含む要求
キューにエントリを貯える。ヘッダパケット・メモリ・
ストア・コントローラは、ヘッダパケットがデータスト
リームに現れると、ヘッダパケットをヘッダパケットバ
ッファにストアし、ヘッダパケット受信信号を生成す
る。モジュール処理回路はヘッダパケット受信信号に応
答して、ヘッダパケットバッファからモジュール名を読
み出し、要求バッファの各エントリの名前と、モジュー
ル名を比較し、ヘッダパケットのモジュール名がエント
リ名と一致すると、一致要求キューエントリで、要求さ
れた処理を実行する。
【0012】
【実施例】図1は本発明に係るオーディオ・ビデオ対話
型信号デコーダの一部を示すブロック図である。図1に
示すデコーダは、オーディオ・ビデオ対話型プログラム
への参加を希望する視聴者ロケーションに設けられてい
る。図1において、トランスポート機構(図示せず)は
デコーダの入力端子5に接続されている。入力端子5は
チューナ10の入力端子に接続されている。チューナ1
0の出力端子は、オーディオ・ビデオ対話型プログラム
・コンポーネント検出器30のデータ入力端子に接続さ
れている。プログラム・コンポーネント検出器30のデ
ータ出力端子は、処理ユニット40のシステムバス41
6に接続されている。処理ユニット40は、CPU(c
enyral processing unit)41
0と、リード/ライトメモリ(RAM)412と、RO
M(read only memory)414を含
み、共に、システムバス416に周知の方法で接続され
ている。ストリームI/Oアダプタ408は、システム
バス416と、プログラム・コンポーネント検出器30
の制御端子間に双方向接続される。
【0013】オーディオ処理装置418はシステムバス
416に接続されており、オーディオ・ビデオ対話型オ
ーディオ出力端子25にオーディオ信号を供給する。ビ
デオ処理装置420も、システムバス416に接続され
ており、ビデオ信号をオーディオ・ビデオ対話型ビデオ
出力端子15に供給する。さらに、入出力機能がI/O
ポート422により与えられ、双方向端子45を介し
て、図示しないローカル処理装置に結合されている。ユ
ーザI/Oアダプタ424はユーザからのデータを入力
端子35を介して受信する。モデム426は双方向端子
55を介して外部コンピュータ(図示せず)に接続され
ている。ユーザI/Oアダプタ424と、モデム426
も、周知の方法でシステムバス416に接続される。他
の装置、例えば、数値計算プロセッサ、他のI/Oアダ
プタ等を、周知の方法で、システムバス416に接続す
ることができる。その上、デコーダのケースの外部のケ
ース内の他の機器と接続するためのバス拡張装置を含ま
せることができる。
【0014】動作時、トランスポート機構は、例えばデ
コーダへの直接RF衛星リンクか、ケーブルシステムフ
ィード(cable system feed)か、あ
るいは光ファイバーリンクでも可能であり、複数のオー
ディオ・ビデオ対話型信号を搬送する。複数のオーディ
オ・ビデオ対話型信号は、ユーザにより選択され視聴さ
れる。直接衛星リンクでは、例えば、複数のオーディオ
・ビデオ対話型データストリームは、個々のRF搬送波
信号を変調することにより、トランスポート機構上で周
波数多重化されたものでもよい。各RF搬送波信号は、
衛星内の各トランスポンダから視聴者に再び放送され
る。チューナ10は、周波の方法で、処理ユニット40
の制御により、所望のRF変調信号を選択する。例え
ば、直接衛星システムでは、所望のオーディオ・ビデオ
対話型プログラム信号のコンポーネントを運ぶパケット
サービスを含むRF変調信号を、周知のRFチューナに
より同調をとることができる。チューナ10の出力は、
それらのパケットサービスを含むベースバンドのデジタ
ル・パケット・データストリームである。
【0015】CPU410は、次のようにして、所望の
パケットサービスをプログラム・コンポーネント検出器
30に対して要求する。すなわち、所望のサービス識別
子とRAM412バッファのロケーションを、ストリー
ムI/Oアダプタ408を介して、適正なSCID(s
ervice component identifi
er)と、プログラム・コンポーネント検出器30内の
DMA(directmemory access)コ
ントローラ・レジスタとに書き込むことにより、要求を
行っている。そして、プログラム・コンポーネント検出
器30は、所望のパケットサービスのため、パケットデ
ータストリームを監視する。所望のパケットサービスか
ら、ヘッダパケットが受信されると、そのヘッダパケッ
トは、周知のDMA書き込み技法を用いて、RAM41
2内の予め定めたヘッダパケットバッファに貯えられ、
ヘッダパケット割り込みが発生される。所望のパケット
サービスからデータパケットが受信されると、そのデー
タパケットは周知のDMA書き込み技法を使用して、R
AM412内の前もって特定されているバッファロケー
ションに貯えられる。伝送ユニット内の全てのデータパ
ケットが受信されると、データ完了割り込みが発生され
る。パケットサービスからのヘッダパケット、および/
または、データパケットの受信は、CPU410の制御
によりイネーブルにされるか、あるいは、ディスエーブ
ルにされる。1994年4月22日に出願された米国特
許出願第232,787号(発明者:K.E.Brid
gewater外、発明の名前:PACKET VID
EO SIGNAL INVERSE TRANSPO
RT PROCESSOR MEMORY ADDRE
SS DIRCUITRY)を参照されたい。ここに、
この特許出願番号を付して、プログラム・コンポーネン
ト検出器30の詳細な説明の一部とする。
【0016】例えば、新しいRF変調信号がチューナ1
0により同調されると、固定されたプログラムガイドサ
ービス識別子を、プログラム・コンポーネント検出器3
0内のサービス識別子レジスタに供給することにより、
プログラムガイドを含むパケットサービスが、CPU4
10により要求される。プログラムガイドパケット内の
データが受信され、メモリに貯えられると、そのデータ
により、CPU410は所望のオーディオ・ビデオ対話
型プログラムのためのパケットデータサービスを要求す
ることができる。
【0017】要求されたパケットサービス内のパケット
がプログラム・コンポーネント検出器30により受信さ
れ、しかも、DMAにより、RAM412内の予め特定
されたバッファロケーションに書き込まれた後に、ビデ
オ処理装置420とオーディオ処理装置418が、プロ
グラム・コンポーネント検出器30の制御の下に、周知
のDMA読み出し技法を用いて、各パケットサービスと
関連するRAM412バッファロケーションからデータ
を読み出す。そして、ビデオ処理装置420とオーディ
オ処理装置418は、圧縮され、符号化されたデータを
復号し、出力端子15にオーディオ・ビデオ対話型ビデ
オ信号を出力し、出力端子25にオーディオ・ビデオ対
話型オーディオ信号を出力する。CPU410は、復号
プロセスにおいて、ビデオ処理装置420および/また
はオーディオ処理装置418と協力することも可能であ
る。データコンポーネントパケットサービスパケット
は、次のような方法により、CPU410の制御の下に
処理される。
【0018】上述したように、プログラム・コンポーネ
ント検出器30により、要求されたパケットサービスか
らヘッダパケットが受信されるごとに、そのヘッダパケ
ットはそのパケットサービスのためにRAM412内の
予め定めたロケーションに貯えられ、ヘッダパケット割
り込み信号がCPU410のために生成される。ヘッダ
パケット割り込み信号に応答して、割り込みハンドラ
(handler)が実行される。割り込みハンドラ
は、ヘッダパケットの内容を解析し、プログラム・コン
ポーネント検出器30内のDMAレジスタのRAM41
2バッファロケーションを適正に更新し、DMA転送を
イネーブルにするか、あるいは伝送ユニットが望まれて
いない場合は、DMA転送をディスエーブルにする。D
MA転送が一度イネーブルにされると、データパケット
内のデータはDMA制御によりRAM412内にロード
される。データパケットのロードが完了すると、プログ
ラム・コンポーネント検出器30はデータ完了割り込み
信号を発生する。データ完了割り込み信号に応答して、
割り込みハンドラが実行され、クリーンアップ(cle
an−up)機能を実行し、次のヘッダパケットのため
の準備をする。
【0019】図2は、図1に示す処理ユニット40によ
り実行されるソフトウェア200の構造を示す。図2は
オーディオ・ビデオ対話型処理マルチタスク・オペレー
ティングシステムを構成する主なソフトウェア・コンポ
ーネントを示す。図2を説明する。コンポーネントは全
てROM414に貯えられる。ただし、黒く塗られたア
プリケーション・プログラムは除く。アプリケーション
・プログラムは、オーディオ・ビデオ対話型信号のデー
タコンポーネントにより運ばれ、放送ロケーションから
受信され、RAM412に貯えられる。図2に示すソフ
トウェア・コンポーネントは、実行可能なコードおよび
関連する定数データを表す。コードが実行されると、変
数データを生成し、変数データにアクセスする。変数デ
ータはRAM412に貯えられる。
【0020】提案されたオーディオ・ビデオ対話型放送
システムでは、例えば、異なる製造業者からの異なる命
令セットを用いて、異なるデコーダはCPUを使用する
ことができる。このシステムでは、アプリケーション・
プログラムは、プロセッサに無関係な中間コードであ
る。各デコーダのソフトウェアは、アプリケーション中
間コードを解釈するコンポーネント(INTERPRE
TER:インタプリタ)を含む。インタプリタにより、
放送されたアプリケーション・プログラムは、どのよう
な形式のCPU410を含むデコーダ上でも実行するこ
とができる。このインタープリタは、RAM412から
オーディオ・ビデオ対話型データコンポーネント命令を
中間コードの形で読み出し、メモリを操作し、API
(application program inte
rface)を介して、他のソフトウェア・コンポーネ
ントを介してハードウェアと対話する。このAPIは、
基本的には、アプリケーション・プログラムで利用可能
なサブルーチンのリストであって、サブルーチンを呼び
出すのに必要な情報である。APIはアプリケーション
・プログラムにより発行され、デコーダ要素をアクセス
するために、アプリケーション・プログラムにより使用
することができる。
【0021】数学ライブラリは整数演算と浮動小数点演
算を実行するのに必要な機能を全て実行する。フロー・
オペレーティング・システムは、オーディオ・ビデオ対
話型信号のデータコンポーネントを監視するのに必要な
全てのドライバーと、プロセス要求されたモジュールと
を制御する。このことは後程詳細に説明する。ユーザイ
ンターフェース管理コンポーネントは、ユーザとの対話
を全て扱い、ユーザと通信するため、イベントマネジャ
とグラフィックス・ライブラリを利用する。このグラフ
ィックス・ライブラリは、受信されたオーディオ・ビデ
オ対話型ビデオ上にオーバレイする全てのグラフィック
イメージを生成し、数学ライブラリを用いて、複雑な曲
線を描く。
【0022】デコーダソフトウェアの異なるソフトウェ
アコンポーネントは、互いにメッセージを送信して、他
と非同期に通信する。各プログラムコンポーネントは、
メッセージキュー(message queue)を有
し、そのキューから次のメッセージを繰り返し読み出
し、そのメッセージを処理し、他のプログラムコンポー
ネントにメッセージを送信することにより、オペレート
する。メッセージ保留がない場合は、次のメッセージを
待つ。イベントマネジャは、メッセージを適正にルーテ
ィングし、メッセージキューを維持することにより、他
のソフトウェアコンポーネントとの間でのメッセージ通
信を管理する。
【0023】各ハードウェアアダプタは、関連するソフ
トウェアドライバも含む。ドライバは、関連するハード
ウェアアダプタ内のレジスタとCPU410との間で、
システムバス416を介して、実際の対話を行う。例え
ば、モデム426と、外部I/Oポート422と、スト
リームI/Oアダプタ408と、ユーザI/O 424
に対して、ドライバが存在する。さらに、別のドライバ
がソフトウェアタイマを保守し、デコーダのフロントパ
ネルを操作する。これらのドライバはイベントマネジャ
に密接に依存している。上記のコンポーネントは、全
て、マルチタスクカーネルにより供給される共通の機能
を使用する。例えば、カーネルは、プロセスの優先順位
と、アクティブタスクキューと、信号と、セマフォア
と、プリエンプティブ・スイッチング・クロック・チッ
クと、割り込み(ハードウェアおよびソフトウェア)
と、プロセススタックを保守する。さらに、カーネル
は、ハードウェア初期化を行い、システムローダである
最初のシステムタスクを開始する。
【0024】開始時に、システムローダはフロー・オペ
レーティング・システムへのAPIコールを実行し、フ
ロー・オペレーティング・システムはストリームドライ
バをコールし、ストリームI/Oアダプタ408を介し
て、プログラム・コンポーネント検出器30に適正なデ
ータを送る。システムローダからのこれらのAPIコー
ルにより、ディレクトリ・モジュールに対して、データ
コンポーネントパケットサービスのスキャンを開始す
る。この方法は以下に詳細に説明する。ディレクトリ・
モジュールが見つけられると、ディレクトリ・モジュー
ルがRAM412にロードされ、そのプログラムを実行
するのに必要な資源が全て利用可能か否かを知るため、
チェックされる。肯定判定された場合は、システムロー
ダはオートスタート・モジュールと呼ばれる最初のモジ
ュールに対してオーディオ・ビデオ対話型データコンポ
ーネントの走査を開始し、それによりオーディオ・ビデ
オ対話型プログラムは起動されることになる。オートス
タートモジュールが見つかると、データコンポーネント
・パケットサービスから取り出され、RAM412にロ
ードされる。このオートスタートモジュールは、中間コ
ードの形式であり、インタプリタによりインタプリート
されて実行される。オートスタートモジュールは初期化
の残りを実行し、オーディオ・ビデオ対話型プログラム
の実行を開始する。このプログラムは他のコードモジュ
ールとデータモジュールをロードすることができ、全
て、APIコールにより、他のコードモジュールとチェ
イン(chain)することができる。このようにし
て、システムローダはクラシックのUNIX(登録商
標)シェルと同様に動作する。
【0025】さらに、システムローダは引き続きデータ
コンポーネント・パケットサービスをスキャンし、伝送
されたディレクトリ・モジュールと、RAM412内の
現在のディレクトリ・モジュールとを比較する。伝送さ
れたディレクトリ・モジュールがRAM412に格納さ
れているディレクトリ・モジュールと異なる場合、デー
タコンポーネント・パケットサービスが変更されたこ
と、例えば、視聴者がチャンネルを変えたときとか、対
話型コマーシャルが放送されているときのようなことを
示す。この場合、メッセージが、イベントマネジャを介
して、APIを用いて、アプリケーション・プログラム
に送られる。このメッセージに応答して、アプリケーシ
ョン・プログラムは全ての資源の割り振りを解除し、処
理要素40内に最小限存在するように維持する。例え
ば、コードモジュールとデータモジュールの全てを格納
するために使用されるメモリを解放することができ、ア
プリケーションの実行状態だけがRAM412に保たれ
る。アプリケーション・プログラムの最小化が完了する
と、メッセージがシステムローダに送られる。
【0026】そして、新しいディレクトリモジュールに
より表わされるオーディオ・ビデオ対話型プログラムを
実行するのに必要な資源を、システムローダは割り振
る。新しいディレクトリ・モジュールがオーディオ・ビ
デオ対話型データコンポーネント・パケットサービス内
で検出されたとき、前に最小化されたアプリケーション
のリストが検索される。そして、新しいディレクトリに
より表されるアプリケーションが存在する場合は、その
アプリケーションは、データコンポーネントフローか
ら、必要なコードモジュールとデータモジュールを再ロ
ードすることにより再開される。また、前に停止した所
から実行を再開することにより再開される。このモジュ
ールは、介在する対話型コマーシャルの終了時に起き
る。このプロセスは繰り返すことができる。ただし、第
2のオーディオ・ビデオ対話型プログラムに、第3のオ
ーディオ・ビデオ対話型プログラムが割りこむことがで
きる。後に、再起動される。
【0027】図3はフローとメモリのレイアウトを示
す。図4はオーディオ・ビデオ対話型プログラム中のデ
ータコンポーネントからのモジュール抽出を理解するの
に有用な詳細なメモリレイアウトと(図1の)プログラ
ム・コンポーネント検出器30の更に詳細なブロック図
である。図4において、(図1の)チューナ10からの
ベースバンドのデジタルパケットストリームが、プログ
ラム・コンポーネント検出器30内でヘッダパケットD
MAコントローラ34と、データDMAコントローラ3
2との各データ入力端子に接続されている。データDM
Aコントローラ32と、ヘッダパケットDMAコントロ
ーラ34の各データ出力端子は、処理ユニット40のシ
ステムバス416に接続されている。ストリームI/O
アダプタ408は、システムバス416と、データDM
Aコントローラ32の制御入力端子と、ヘッダパケット
DMAコントローラ34の制御入力端子との間に接続さ
れている。動作時には、ストリームI/Oアダプタ40
8は、(図1の)CPU410から、データDMAコン
トローラ32とヘッダパケットDMAコントローラ34
に、制御情報、例えば、バッファロケーション開始アド
レスおよび終了アドレスと、読み出しアドレス/書き込
みアドレスと、転送計数値を、周知の方法で供給する。
そして、CPU410の制御の下に、ストリームI/O
アダプタ408は、データDMAコントローラ32およ
び/またはヘッダパケットDMAコントローラ34をイ
ネーブルにして、周知の方法で、データパケットまたは
ヘッダパケットを、パケットストリームからバッファに
転送するか、あるいは、このような転送をディスエーブ
ルにする。データDMAコントローラ32がデータ転送
を完了すると、CPU410に対して、データ完了割り
込みを生成する。ヘッダパケットDMAコントローラ3
4がヘッダパケットのローディンを完了すると、CPU
410に対して、ヘッダパケット割り込みを生成する。
【0028】図4でも、RAM412を大きなブロック
で表し、データ構造を大きなブロック内の小さいブロッ
クで表す。図4のブロックは図示のためだけであり、絶
対記憶位置または相対記憶位置の何れかを示すものでは
なく、データ構造に対して、RAM412に割り振られ
たサイズを示すものでもない。参照番号412に、モジ
ュールリクエストキュー322と、ヘッダパケットバッ
ファ324と、ディレクトリ・モジュールバッファ32
6と、モジュールバッファ328のデータ構造を示す。
テータ構造内の情報のフィールドは、そのフィールド内
に含まれる情報のタイプの名前を含む水平スライスとし
て示されている。これらについては以下に詳細に説明す
る。
【0029】図3は、ヘッダパケットデータコンポーネ
ント・パケットサービスからモジュールを取り出し、し
かも、そのモジュールをRAM412内のバッファに格
納する際の後続の手順を示す。同様な手順は他のモジュ
ール処理に対しても続けられる。これも以下に説明す
る。図3では、アプリケーション・プログラム(または
システムローダ)で取られるアクションを、“APPL
NPROG”のヘッドを付けた左カラムに示す。ブロッ
ク302で、アプリケーション・プログラムは、API
を用いて、フロー・オペレーティング・システムにリク
エストを出し、識別子IDを有するモジュールを、オー
ディオ・ビデオ対話型プログラムコンポーネントパケッ
トサービスからロードする。上述したように、APIコ
ールは、基本的には、オペレーティングシステム機能へ
のサブルーチンコールである。したがって、プログラム
の実行はフロー・オペレーティング・システム(FO
S)に移行される。フロー・オペレーティング・システ
ムのアクションは“フロー・オペレーティング・システ
ム”のヘッドを付けた右隣のカラムに示す。リクエスト
はモジュールのロードを含むので、ブロック312で、
フロー・オペレーティング・システムはモジュールのロ
ーディングを含むので、ブロック312にて、フロー・
オペレーティング・システムは、メモリマネジャから、
そのモジュールを含むだけのサイズのメモリの割り振り
をリクエストする。例えば、リクエストされたモジュー
ルがコードモジュールまたはデータモジュールである場
合は、(図4の)前に格納されたディレクトリ・モジュ
ール326は、モジュールIDの長さ(LENGTH)
を含んでいるフィールドを含む。この場合、メモリマネ
ジャは、開始アドレスSTARTと終了アドレスEND
を有するモジュールメモリバッファ(図4の328)を
割り振る。そして、ブロック314においてリクエス
ト、例えば、モジュールの識別子IDと、リクエストR
EQUEST(この場合はモジュールを取り出しロード
するリクエスト)のタイプを示す情報と、割り振られた
バッファ開始アドレスSTARTと終了アドレスEND
が、全て、リクエストキュー(QVEVE)322内の
エントリに格納される。そして、ヘッダパケットがパケ
ットストリーム内に生じたとき、ヘッダパケットDMA
コントローラがイネーブルにされ、ヘッダパケットをR
AM412にロードする。
【0030】リクエストがディレクトリ・モジュールに
対するものである場合は、その長さが元々分かっていな
い。この場合、比較的大きいメモリ割り振りがリクエス
トされる。この割り振りがあまりにも小さい場合は、よ
り大きなメモリ割り振りをリクエストした後、ディレク
トリ・モジュールがロードされるか、あるいはそれをロ
ードするだけのメモリがないと決定されるまでリクエス
トは繰り返えされ、その場合、オーディオ・ビデオ対話
型プログラムをランさせる試みは放棄される。
【0031】また、フロー・オペレーティング・システ
ムはコールしたアプリケーション・プログラムに直ちに
戻る。次いで、アプリケーション・プログラムは他の処
理、例えば、他のモジュールのリクエストを発し、他の
初期化等の処理を実行することができる。リクエストさ
れたモジュールへのアクセスが必要とされると、アプリ
ケーション・プログラムは、ブロック304にて、カー
ネル内の待ち機能にAPIコールを発する。この機能に
より、リクエストされたモジュールのロードが成功した
ことを示すメッセージが、そのアプリケーション・プロ
グラムにより受信されるまで、アプリケーション・プロ
グラムの実行は中断させられる。そのようなメッセージ
が受信されると、アプリケーション・プログラムは再び
アクティベートされ、そのメッセージを処理する。ある
いはまた、例えば、より速くユーザ入力に応答するた
め、アプリケーション・プログラムはアクティブのまま
であり、そのメッセージキューを周期的にポーリング
し、リクエストされたモジュールロードの成功を示すメ
ッセージをチェックし、そのメッセージが受信されたと
き、メッセージを処理するようにしてもよい。
【0032】上述したように、ヘッダパケットDMAコ
ントローラ34は、メモリマネジャにより、前に割り振
られたRAM412のヘッダパケット(HDR PK
T)バッファ324(図4)にヘッダパケットをロード
し、CPU410にヘッダパケット割り込みを発する。
カーネル内のヘッダ割り込みハンドラにより実行される
処理の一部を、図3に“HEADER IN TR”の
ヘッドを付して示す。ブロック332にて、伝送ユニッ
トに入れて運ばれているモジュールの識別子、この場
合、ヘッダパケットは、ヘッダパケットバッファ324
内の知られたロケーション、すなわち、IDから取り出
される。ブロック334にて、リクエストキュー322
が試験され、このモジュールに対する保留中のリクエス
トが存在かるか否かが判定される。
【0033】そのモジュールに対する保留中のリクエス
トがある場合には、ブロック336において、プログラ
ム・コンポーネント検出器30のデータパケットDMA
コントロール32は、リクエストキュー322からのア
ドレスSTARTで始まり、アドレスENDで終了する
モジュールバッファ328と;モジュールバッファ32
8の開始アドレスSTARTと送信ユニットのデータオ
フセットOFFSETの和、すなわち(START+O
FFSET)である書き込みアドレスと;START+
OFFSET+SIZE(あるいは代りに、最後の書き
込みアドレスに代わってヘッダパケットバッファ324
からのサイズSIZEであるロード計数値)である最後
の書き込みアドレスと;で初期化される。そして、デー
タパケットDMAコントローラ32がイネーブルにされ
る。
【0034】ブロック338にて、これがロードリクエ
ストの行われた後受信された最初のヘッダパケットであ
る場合は、リクエストキュー322に格納される最初の
書き込みアドレスのポインタFIRSTが、この最初の
送信ユニットの書き込みアドレス(すなわち、FIRS
T=START+OFFSET)に初期化される。さら
に、予想される次の書き込みアドレスを指すポインタN
EXTも、リクエストキュー322に格納されており、
最初の送信ユニットの書き込みアドレス(すなわち、N
EXT=START+OFFSET)に初期化される。
そして、他の処理がブロック338にて行われる。これ
については以下に詳細に説明する。例えば、現在処理さ
れているリクエストのリクエストキュー322内のロケ
ーションを指す特殊なポインタCURR REQは、R
AM412内の予め決められたロケーション(図示せ
ず)に格納される。その後、ブロック339にて、割り
込みハンドラーはリターンする(339)。
【0035】データパケットDMAコントローラ32
は、先に受信した書き込みアドレス(START+OD
DSET)を指す書き込みポインタ(WP)を初期化
し、オーディオ・ビデオ対話型プログラムコンポーネン
トパケットサービス内の後続のデータパケットから、デ
ータをRAM412内のモジュールバッファ328内の
順次ロケーションにロードする。送信ユニット内の全て
のデータがRAM412にロードされると、データ完了
割り込みが生成される。カーネル内のデータ完了割り込
みハンドラにより実行される処理の一部を、図3の右カ
ラムに“DATACOMPL INTR”のヘッドを付
けて示す。
【0036】ブロック342にて、DMA転送の現在の
状態に関連するクリーンアップ機能が実行される。現在
のリクエストポインタ(CVRR REQ)は、ヘッダ
パケット割り込みハンドラ内に前にセットされており、
リクエストキュー322内のエントリーを指しており、
伝送ユニットはリクエストキューへのロードを丁度終了
したばかりである。現在のリクエスト内で、予想される
次の書き込みアドレスポインタNEXTは、ヘッダパケ
ットバッファ324からの値SIZEによりインクリメ
ントされ、次の伝送ユニットに対して予想される書き込
みアドレスを指している。予想される次の書き込みアド
レスポインタ、NEXTの値が、モジュールバッファ3
28の終了アドレス、ENDに等しい場合は、ラップア
ランドして、書き込みアドレスポインタNEXTはモジ
ュールバッファ328の開始アドレスSTARTにリセ
ットされる。
【0037】ブロック344にて、リクエストされたモ
ジュールの全体がメモリにロードされたか否かが判定さ
れる。予想される次の書き込みアドレスポインタ、NE
XTの値は、最初のロードされたアドレス,START
の値と比べられるそれらの値が同じである場合は、モジ
ュール全体はロードされている。ブロック346で、メ
ッセージは、イベントマネジャにより、リクエストして
いるアプリケーション・プログラムに送られ、リクエス
ト・モジュールが、図3に破線で示すように、完全に取
り出されたことを示す。さらに、リクエストはリクエス
トキュー322から除去される。予想される次の書き込
みアドレス NEXTの値が最初にロードされたアドレ
ス,STARTと同じでない場合は、データ完了割り込
みハンドラはリターンし(349)、リクエストされた
モジュールのためのデータを含む次の伝送ユニットが、
先に説明したように、ヘッダパケット割り込みハンドラ
により処理される。どちらの場合も、現在のリクエスト
ポインタ(CVRR REQ)はクリアされる。
【0038】伝送ユニットのある部分がプログラム・コ
ンポーネント検出器30により適正に受信されない場
合、後続のヘッダパケットが受信されてから、先行する
ヘッダパケットからのデータ完了割り込み信号がプログ
ラム・コンポーネント検出器30内のDMA回路により
生成される。よって、先行するデータ完了割り込み信号
が生成される前に後続のヘッダパケット割り込み信号が
生成される。ヘッダパケット割り込みハンドラとデータ
完了割り込みハンドラは、協力して処理し、このような
状況を識別することができ、そのようなエラーを処理す
ることができる。
【0039】ヘッダパケット割り込みハンドラでは、デ
ータパケットDMAコントローラ34がイネーブルにさ
れて、次の伝送ユニットを受信した後、そのような処理
が(図3の)ブロック338で実行される。受信された
各ヘッダパケットに対し、データ完了割り込みハンドラ
によって前に更新された現在のリクエストキューエント
リの予想される次の書き込みアドレス,NEXTが、新
たに受信されるヘッダパケットのための書き込みアドレ
ス(START+OFFSET)と比較される。それら
のアドレスが同じである場合は、前の伝送ユニットの受
信が成功したことになる。しかしながら、最後の終了ア
ドレスが新らしいオフセットと同じでない場合は、前の
伝送ユニットのDMA転送が完全に成功しなかったこと
を意味する。この場合、前の伝送ユニットのDMA転送
が完全に成功しなかったことを意味する。この場合、最
初の書き込みアドレス,FIRSTと、予想される次の
書き込みアドレス,NEXTは、現在の書き込みアドレ
ス(START+OFFSET)に更新される。すなわ
ち、前にロードされた伝送ユニットは必然的に破棄さ
れ、モジュールのロードは現在の伝送ユニットから再ス
タートされる。前に成功りにロードされた伝送ユニット
は、再ロードされるときエラーを生じるかもしれないの
で、データ紛失というエラーから回復する時間が長くか
かることがある。しかしなから、このような回復を用い
ることにより、ヘッダパケット割り込みハンドラと、デ
ータ完了割り込みハンドラにより実行されるタスクを、
最小化することができ、2つのポインタのみがメモリに
必要なだけである。
【0040】モジュール完了メッセージ処理の一部とし
て、イベントハンドラが、受信されたモジュールに対し
てエラーチェックを行う。例えば、CRC(cycli
credundancy check)コードがモジュ
ールの埋め込み部分として伝送される。イベントハンド
ラは、RAM412内のモジュールバッファ328内の
受信されたモジュール全体のCRCを計算し、そのCR
Cと埋め込みCRCとを比較する。新たに計算されたC
RCが埋め込みCRCと等しい場合は、モジュールは正
しく受信されたことを示し、そうでない場合は、エラー
が起きたことを示し、モジュールは先に述べたように再
ロードされる。
【0041】リクエストされたモジュールがメモリ内に
完全にロードされると、アプリケーションモジュールに
よる更なる処理が、図3に、待ち機能304に対するA
PIコールの底から直線で示すように、推論により続行
することができる。しかしながら、アプリケーション・
プログラム内の別のタスクが、そのアプリケーション・
プログラムのメッセージキューからのメッセージの受信
に応答してアクティブにされる。
【0042】先に説明したAPIすなわちアプリケーシ
ョン・プログラム・インタフェースは、インタプリタを
介してアプリケーション・プログラムか、またはシステ
ムローダによりデータストリームへアクセスする機能を
含んでいる。アプリケーションプログラマは、発行され
たAPI記述を用いて、望ましいデータストリーム機能
へアクセスするためのAPIコールを定式化することに
なる。最初のグループの機能は、モジュールのディレク
トリに関する。最初の機能DIR_NEWは、新しいデ
ィレクトリのリクエストである。先に説明したように、
このAPI機能に応答して、メモリの割り振りがなさ
れ、その後、リクエストはデータストリームに次のディ
レクトリ・モジュールをロードするためにエンキューさ
れ、API機能はリターンする。ディレクトリがロード
されたとき、メッセージは、リクエスト・プログラムに
送られる。他の機能DIR_FREEは、現在のディレ
クトリにより占められているメモリ空間を解放する。機
能DIR_SELECTは、どのディレクトリ・モジュ
ールが後続のAPIコールで使用されるかを示した。機
能DIR_CURRENTは、現在選択されているディ
レクトリにハンドラを戻る。
【0043】機能DIR_SPYとDIR_STOP_
SPYはDIR_NEW機能と同様である。DIR_S
PY APIコールに応答して、リクエストは、ディレ
クトリ・モジュールのリクエストキューにエンキューさ
れる。しかし、ディレクトリ・モジュールをロードし、
しかも、ディレクトリ・モジュールがロードされたとき
メッセージを送信する代わりに、この機能は、ディレク
トリモジュールがデータフロー(ディレクトリ・モジュ
ールはロードされていない)内で検出されたときにはい
つでもメッセージを送る。また、リクエストは、DIR
_STOP_SPY APIコールが行われるまで、リ
クエストキュー内に残ったままである。DIR_STO
P_SPY APIコールがなされたとき、リクエスト
キュー内にディレクトリ・スパイ・リクエストを検索
し、そのエントリが除去される。これらの機能は、デー
タストリーム内の現在のディレクトリから何らかの変更
をスパイするのに有用である。最後に、現在のディレク
トリについての情報を抽出するためのAPIコール、す
なわちDIR_IDENTIFIERと、DIR_RE
QUIREMENTと、DIR_NB_MODULES
が存在する。
【0044】モジュール内に埋め込みCRCコードがあ
るので、モジュールをロードするためのメモリ割り振り
リクエストは、このコードを考慮しなければならない。
3つのAPIコールがこれを処理するために与えられて
いる。機能MODULE_ALLOCは、CRCまたは
メモリ要件を考慮して、引数としてモジュール識別子を
取り、そのモジュールをロードするための適当なメモリ
容量割り振りをリクエストする。機能MODULE_F
REEは、モジュールにより取られるメモリ領域を解放
する。機能MODULE_CHECKは、ロードされた
モジュールのCRCチェックを行い、その結果を戻す。
これは、CRCがメモリ内にロードされたモジュール内
に埋め込まれているので、何時なされてもよい。
【0045】APIコールの他のセットは、モジュール
を取り扱い、現在選択されているディレクトリを用いて
それらを識別する。モジュールについての情報を抽出す
るためのAPIコールがあり、それらは、MODULE
_REQUIREMENTとMODULE_SIZE
と、MODULE_FLAGである。これらにより、シ
ステムは、モジュールがロードおよび/または実行する
ことができるか否かを判定する。機能MODULE_R
UNは、先に述べたように実行可能なモジュールをロー
ドし、新しいプロセスを作成し、モジュールのエントリ
ポイントで実行を開始するために使用される。この機能
は、オーディオ・ビデオ対話型プログラムの実行を開始
するためのシステムローダにより使用される。機能MO
DULE_CHAINは、後続の実行可能なモジュール
をロードし、現在のモジュールの実行を終了し、そのエ
ントリポイントで新たにロードされるモジュールの実行
を開始するために使用される。この場合には新しいプロ
セスは生成されるが、実行を開始しない。上述したよう
に、メッセージは、モジュールのロードが完了したと
き、リクエスト・プログラムに送られる。機能MODU
LE_EXECは、新たなプロセスを生成し、MODU
LE_LOAD APIコールにより前にロードされて
いるモジュールの実行をエントリポイントで開始するた
めに使用される。
【0046】機能MODULE_LINKは、現在のプ
ロセスと、資源と、変数を用いて新しいモジュールを実
行する。それは、新しいモジュールへの動的なリンクを
与えることにより、モジュール内からのサブルーチンの
ようなコールを許可する。これにより、必要なときだけ
ダイナミックにリンクすることができる、より小さいモ
ジュールにオーディオ・ビデオ対話型プログラムを分割
することができる。MODULE_LINK機能は、リ
ロケーションとジャンプテーブルを保持する。MODU
LE_SPYとMODULE_STOP_SPYは、D
IRECTRY_SPYとDIRECTRY_STOP
_SPYと同様に作動する。ただし、識別されたモジュ
ールに対してである。MODULE_SPY APIコ
ールは、モジュールの識別子を含むリクエストキュー内
にエントリを挿入する。同じ識別子を有するヘッダモジ
ュールがデータストリーム内に検出されたときにはいつ
でも、メッセージがリクエスト・プログラムに送られ
る。これは、MODULE_STOP SPY API
コールがなされるまで続く。MODULE_STOP_
SPY APIコールに応答して、識別されたモジュー
ルに対するスパイリクエストを含むエントリが、リクエ
ストキューから除去される。MODULE_STOP_
LOAD機能はプロセス内の現在のモジュールロードリ
クエストを停止し、リクエストキューからロードリクエ
ストエントリを除去する。機能FLOW_MESSAG
EとFLOW_STOP_MESSAGEは、データス
トリームに関して、中断されたデータフローか、あるい
はデータフローの終了のような特別な連絡パケットが生
起したとき、メッセージシのリクエストを除去する。そ
のようなイベントが生起したとき、メッセージはリクエ
スト・プログラムに送られる。
【0047】先に説明したように、システムローダは、
システムの初期化を実行し、アプリケーション・プログ
ラムの実行が受信されたオーディオコンポーネントとビ
デオコンポーネントとに同期することを確実にするため
にデータストリームを監視する。図5は、システムロー
ドの初期化機能を示すフロー図である。図5のブロック
52で、(17の)デコーダの種々のハードウェアとソ
フトウェアのコンポーネントが初期化される。また、R
AM412内のロケーションが、種々のデータ構造のた
めに割り振られ初期化される。これらの初期化機能は周
知であり、デコーダの他のソフトウェアコンポーネント
に依存する。システムプログラマは、どのハードウェア
とソフトウェアの初期化が必要か、どのデータ構造が必
要か、初期化をどのように行うかを理解するであろう。
従って、このブロックは以下では詳細に説明しない。
【0048】ブロック54にて、上述したDIR_NE
W APIコールが行われる。このAPIコールは、オ
ーディオ・ビデオ対話型プログラム・コンポーネント・
パケットサービス内に現れる次のディレクトリ・モジュ
ールを、RAM412内の割り振られたバッファ内にロ
ードする。このAPIコールは、ディレクトリが後まで
RAM412内にロードされないとしても直ちにシステ
ムローダに戻る。システムローダは、他の機能を実行
し、必要なら、ディレクトリ・モジュールがロードされ
たことを示すメッセージが、イベントマネジャにより、
受信されるまで、APIコール(図示せず)を実行す
る。ブロック56にて、(図1の)デコーダで使用可能
な資源はディレクトリモジュール内で必要な資源を示す
データと比較される。デコーダが、オーディオ・ビデオ
対話型プログラムを実行するだけの資源を有している場
合は、MODULE_RUN APIコールが、上述し
たように、前にロードされているディレクトリモジュー
ル内で識別されるオートスタートコードモジュールをロ
ードするために行われる。再び、APIコールは直ちに
リターンし、コードモジュールは、ある時間が経過する
まで、データストリームから完全にはロードされなくて
もよい。オートスタートコードモジュールが完全にロー
ドされた後、他のタスクが、インタプリタを介してオー
ディオ・ビデオ対話型プログラムを実行するためのマル
チタスクカーネルを用いて周知の方法で生成される。
【0049】ブロック58にて、システムローダは、実
行信号とディレクトリの変更のためのオーディオ・ビデ
オ対話型プログラムのコンポーネントを監視し始め、以
下に説明するオーディオ・ビデオ対話型プログラムへメ
ッセージを送ることにより、オーディオ・ビデオ対話型
プログラムの実行を制御する。図6は、システムローダ
の監視機能を示す状態遷移図であり、システムローダの
動作を理解するのに有用である。ディレクトリがオーデ
ィオ・ビデオ対話型プログラム・コンポーネント・パケ
ットサービス内で検出された場合は、視聴者が選択した
プログラムは対話型プログラムである。ディレクトリが
RAM412内に一且ロードされ、オートスタートコー
ドモジュールがオーディオ・ビデオ対話型コンポーネン
トパケットサービスからリクエストされると、システム
ローダの制御により、オーディオ・ビデオ対話型プログ
ラムはINACTIVE状態61に入る。INACTI
VE状態61では、アプリケーションを開始するための
全ての資源は割り振られており、アプリケーションは部
分的に、あるいは完全にロードされるが、視聴者との対
話はない。例えば、オートスタートモジュールがロード
されているとき、オーディオ・ビデオ対話型プログラム
はINACTIVE状態61のままである。その上、オ
ートスタートモジュールがロードされた後でさえ、視聴
者はオーディオ・ビデオ対話型プログラムを運ぶチャン
ネルを介してチャンネルを変更するだけであり、オーデ
ィオ・ビデオ対話型プログラムと対話する意図はない。
あるいは、視聴者は対話を決意する前に、オーディオ・
ビデオ対話型プログラムを観察したいかもしれない。ど
の場合にも、リモートコントロールが対話モードではな
く、通常のチャンネル変更モードで働くと言うことが重
要である。これがINACTIVE状態61の目的であ
る。見ているチャンネルが対話型プログラムを放送して
いることを視聴者に知らせるために、特別の対話型プロ
グラムロゴまたはアイコンがオーディオ・ビデオ対話型
ビデオ上に重ね合わされる。
【0050】視聴者がオーディオ・ビデオ対話型プログ
ラムと実際に対話し始めるため、ACTIVATE K
EYと呼ばれる特別なキーがリモートコントロール上に
設けられている。対話型プログラムロゴまたはアイコン
が表示されているとき、視聴者はACTIVATE K
EYを押すことができる。ACTIVATE KEYの
押下に応答して、システムローダはACTIVATEメ
ッセージをACTIVATE状態63に入るオーディオ
・ビデオ対話型プログラムに送る。ACTIVE状態6
3では、インタプリタはそのエントリポイントで、前に
ロードされたオーディオ・ビデオ対話型プログラムを実
際に実行し始める。オーディオ・ビデオ対話型プログラ
ムのオートスタートモジュールが実行を開始するとき、
それは、RAM412内にそれ自身のデータ構造を割り
振り、初期化し、他のコードモジュールおよび/または
データモジュールをロードし、リモートコントロールと
フロントコントロールパネルの全てのユーザアクション
を制御する。
【0051】オーディオ・ビデオ対話型プログラムは全
てのユーザ対話を制御するので、それはユーザがチャン
ネルを変更することを妨げるか、あるいは他の通常のリ
モートコントロール機能を実行することを妨げる。通常
のリモートコントロール機能に戻るには、視聴者は、先
ず現在のオーディオ・ビデオ対話型プログラムを停止し
なければならない。視聴者がACTIVATE KEY
を再び押下すると、プログラムは非アクティブにされ
る。このキーの押下に応答して、システムローダは、D
EACTIVATEメッセージを実行中のオーディオ・
ビデオ対話型プログラムに送り、そのプログラムは、A
CTIVE状態63を離れ、INACTIVE状態61
に戻る。再び、特別の対話型プログラムロゴまたはアイ
コンが表示され、オーディオ・ビデオ対話型プログラム
はロードされているが実行されていないということを示
す。視聴者は、その後、チャンネルを変更し、あるいは
他の通常のリモートコントロール機能を実行し、あるい
はACTIVE KEYを再び押下することによりオー
ディオ・ビデオ対話型プログラムを再びアクティブにし
てもよい。こうして、ACTIVATE KEYは、そ
れが押されたとき、ACTIVE状態63とINACT
IVE状態61との間で切り替わるトグルとして働く。
ACTIVEとDEACTIVATEのメッセージはA
CTIVE TO GGLEメッセージとして考えても
よく、その意味(ACTIVEあるいはDEACTIV
E)はACTIVATE KEYが押下されるとき、オ
ーディオ・ビデオ対話型プログラムの状態(それぞれI
NACTIVEまたはACTIVE)に依存する。
【0052】オーディオ・ビデオ対話型プログラムがA
CTIVE状態63にて実行されると、その実行を中断
したいときがある。例えば、非対話型コマーシャルが放
送されるべきとき、送信されたオーディオとビデオは
(図1の)デコーダ10により生成される音やグラフィ
ックスとは一致せず、視聴者が、通常通り、リモートコ
ントロールを使用することができることが望ましい。し
かしながら、アプリケーションのプログラマはそのよう
な中断が必要となることを前もって知ることはできな
い。こうして、この場合、オーディオ・ビデオ対話型プ
ログラムとは独立な放送機器はオーディオ・ビデオ対話
型プログラム・コンポーネント・パケットサービス内に
中断信号パケットと呼ばれる(上記のような)特別の信
号パケットを繰り返し含めてもよい。このような各パケ
ットは現在実行中のオーディオ・ビデオ対話型プログラ
ムが実行を中断すべきであるということを示すデータを
含んでいる。
【0053】FLOW_MESSAGE APIコール
を介して、システムローダは、そのようなパケットがオ
ーディオ・ビデオ対話型プログラム・コンポーネント・
パケットサービス内で認識されたときにはいつでもメッ
セージを受信する。例えば、中断信号パケットが受信さ
れたとき、システムローダは、中断信号メッセージを受
信し、最初の中断信号メッセージに応答してオーディオ
・ビデオ対話型プログラムにSUSPENDメッセージ
を送り、そのプログラムは、実行を中断してSUSPE
NDED状態65に入る。SUSPENDED状態65
では、オーディオ・ビデオ対話型プログラムの実行は、
それを、中断されたポイントから再び開始することがで
きるように停止する。すなわち、オーディオ・ビデオ対
話型プログラムを実行するために必要な資源の全てが割
り当てられたままであり、オーディオ・ビデオ対話型プ
ログラムの実行状態はRAM412内のあるロケーショ
ンに格納される。また、前に実行中の対話型プログラム
が中断されたが、許可されたとき回復の用意ができてい
ることを示す第2のロゴまたはアイコンが現在のビデオ
画像上に重ね合わされる。
【0054】割り込み(例えば、非対話型コマーシャ
ル)が終わったとき、放送機器はオーディオ・ビデオ対
話型プログラム・コンポーネント・パケットサービス内
に中断信号パケットを含めることを止める。システムロ
ーダは、中断信号メッセージを受信することなく予め決
められた期間後、オーディオ・ビデオ対話型プログラム
にCONTINUEメッセージを送り、そのプログラム
は前に中断されたところから実行を再開して、上記のA
CTIVE状態63に入る。
【0055】上述したSUSPEND/CONTINU
E信号構成の他の実施例は、放送機器がオーディオ・ビ
デオ対話型プログラムの実行を中断することを望むと
き、オーディオ・ビデオ対話型プログラム・コンポーネ
ント・パケットサービス内に単一の中断信号パケットを
含めることである。その後、放送機器は、オーディオ・
ビデオ対話型プログラムの実行を再開することが望まれ
るとき、オーディオ・ビデオ対話型プログラム・コンポ
ーネント・パケットサービス内に継続信号パケットと呼
ばれる他の特別な信号パケットを含める。このパケット
は現在中断されているオーディオ・ビデオ対話型プログ
ラムが実行を再開することを指令するデータを含む。シ
ステムローダは、継続信号パケットを認識し、オーディ
オ・ビデオ対話型プログラムにCONTINUEメッセ
ージを送り、そのプログラムは実行を再開し、上述した
ようにACTIVE状態63に入る。
【0056】視聴者が、中断されたオーディオ・ビデオ
対話型プログラムの実行を停止することも可能である。
プログラム中断ロゴまたはアイコンが表示されていると
き、視聴者が、DEACTIVATEメッセージを、中
断されたオーディオ・ビデオ対話型プログラムに送り、
そのプログラムは上述したINACTIVE状態61に
入る。視聴者がACTIVATE KEYを押したと
き、プログラムは、INACTIVE状態61から実行
を再開するだけであり、システムローダにオーディオ・
ビデオ対話型プログラムに対してACTIVATEメッ
セージを送らせ、そのプログラムにACTIVE状態6
3に入らせる。システムローダが依然として中断信号パ
ケットを受信している場合は、別のSUSPENDメッ
セージが直ちにオーディオ・ビデオ対話型プログラムに
送られ、そのプログラムは再びSUSPENDED状態
65に入る。INACTIVE状態61と、ACTIV
E状態63と、SUSPENDED状態65は、オーデ
ィオ・ビデオ対話型プログラムがシステムローダから送
られるメッセージに応答して切り替わる状態である。し
かしながら、システムローダにより直接コントロールさ
れて入る2つの他の状態が存在する。
【0057】オーディオ・ビデオ対話型プログラムはそ
の実行の終了に到達することができる。例えば、放送機
器は、実行終了信号パケットと呼ばれる他の特別な信号
パケットをオーディオ・ビデオ対話型プログラム・コン
ポーネント・パケットサービスに含めてもよい。システ
ムローダは、実行終了信号パケットがオーディオ・ビデ
オ対話型プログラム・コンポーネント・パケットサービ
ス内に認識された時、FLOW_MESSAGE AP
Iコールを介して実行終了メッセージを受信する。実行
終了メッセージに応答して、システムローダは、EXI
Tメッセージをオーディオ・ビデオ対話型プログラムに
送る。オーディオ・ビデオ対話型プログラムが、INA
CTIVE状態61か、ACTIVE状態63か、ある
いはSUSPENDED状態65のどの状態にあるかに
かかわらず、オーディオ・ビデオ対話型プログラムは、
その資源の割り振りを解除し、(図1の)デコーダ10
からそれ自体の全てのレコードを除去することによりE
XITメッセージに応答する。このプログラムはHAL
TED状態69に入ったと思い、デコーダ10から消え
る。プログラムそれ自身がユーザコマンドを介してある
いはそれ自身の実行により、その実行が終了に達したこ
とを認識することができる場合もある。オーディオ・ビ
デオ対話型プログラムがその実行の終了を認識したと
き、EXITメッセージが受信された場合に行われる同
じ処理を行い、それ自身によりHALTED状態69に
入る。
【0058】オーディオ・ビデオ対話型プログラムがS
USPENDED状態にあるとき、別の対話型オーディ
オ・ビデオ対話型プログラムを、オーディオ・ビデオ対
話型プログラム・コンポーネント・データフロー上で受
信することが可能である。例えば、オーディオ・ビデオ
対話型プログラムがコマーシャルにより中断されていれ
ば、そのコマーシャルはそれ自身対話型プログラムであ
ってもよいし、ユーザが別のオーディオ・ビデオ対話型
プログラムを放送するチャンネルにチャンネルを変更し
てもよい。これら両方の場合は、新しいオーディオ・ビ
デオ対話型プログラムはディレクトリ・モジュールを含
み、中断されたオーディオ・ビデオ対話型プログラムの
ディレクトリ・モジュールとは異なる。
【0059】システムローダは、DIR_SPY AP
Iコールを介して、ディレクトリがオーディオ・ビデオ
対話型プログラム・コンポーネント・パケットサービス
内に検出されるときにはいつでもメッセージを受信す
る。システムローダは、現在アクティブなディレクトリ
を検出されたばかりのディレクトリと比較する。システ
ムローダが、別のディレクトリがオーディオ・ビデオ対
話型プログラム・コンポーネント・パケットサービス内
に存在すると認識すると、それはそのディレクトリによ
り表わされるオーディオ・ビデオ対話型プログラムのロ
ードを始める。
【0060】最初に、メッセージが現在中断されている
オーディオ・ビデオ対話型プログラムに送られ、プログ
ラム・コンポーネント・パケットサービスはそのプログ
ラムをもはや放送していないということ、あるいはプロ
グラムは“フローを失った”ということを示す。このメ
ッセージは現在実行しているプログラムがそれ自身を最
小にするリクエストであり、すなわちMINIMIZE
メッセージである。MINIMIZEメッセージに応答
して、現在中断しているオーディオ・ビデオ対話型プロ
グラムは、先ずその現在の実行状態と環境を、持続時間
とオーディオ・ビデオ対話型プログラムの識別子を含め
て、RAM412内の小さいブロック内に格納する。こ
れらについては以下に説明する。それから、中断された
プログラムはその資源の割り振りを開始する。最小化さ
れたオーディオ・ビデオ対話型プログラムはどんなコー
ドも含まず、メッセージに応答して状態を変更すること
はできず、それ自身再スタートすることもできない。
【0061】システムローダは新たに検出されたディレ
クトリとオートスタートモジュールをロードし、新しい
オーディオ・ビデオ対話型プログラムをINACTIV
E状態61におき、先に説明したように対話型プログラ
ムロゴまたはアイコンを表示する。視聴者は、ACTI
VATE KEYを押すことにより、この新しいオーデ
ィオ・ビデオ対話型プログラムとの対話を開始あるいは
停止することができ、そのプログラムをそれ自身中断し
てもよいし継続してもよい。
【0062】最小化プロセスは繰り返しプロセスであ
る。例えば、この新しいオーディオ・ビデオ対話型プロ
グラムは、中断された場合、さらに他のオーディオ・ビ
デオ対話型プログラムがオーディオ・ビデオ対話型プロ
グラム・コンポーネント・パケットサービス内に検出さ
れた場合、最小化することができる。この場合、メモリ
の他のブロックが割り振られ、オーディオ・ビデオ対話
型プログラムの実行状態と環境が、その識別子と継続時
間と共に、このメモリブロックに格納される。その後先
に説明したように、新たに検出されたプログラムの実行
状態と環境を含む全てのメモリブロックを格納するのに
必要なメモリ量によってのみ制限される。
【0063】新しいディレクトリ・モジュールをロード
するか、あるいは前にロードされているディレクトリ・
モジュールにより表わされるプログラムを実行するのに
十分な使用可能なメモリ空間がない場合であって、しか
も、最小化されたプログラムを表わす割り振られたメモ
リブロックがある場合には、システムローダは充分なメ
モリ空間を得るという意図で、(最も古いメモリブロッ
クの割り振りを最初に解除するか、あるいは、元のアプ
リケーションにより拡張可能とマークされたメモリブロ
ックの割り振りを最初に解除するというような)アルゴ
リズムにしたがって、メモリブロックの全て、あるいは
いくらかの割り振りを自動的に解除することができる。
あるいは、システムローダは、視聴者に最小化されたア
プリケーションのリストを提供し、削除すべきアプリケ
ーションを視聴者が選択することができるようにしても
よい。そして、選択された最小化アプリケーションを表
すブロックは、充分なメモリ空間を得るため割り振りが
解除される。
【0064】一方、前に最小化されたオーディオ・ビデ
オ対話型プログラムの実行状態と環境を含むメモリブロ
ックは、メモリ内に割り振られたままである。上述した
ように、そのようなメモリブロック内には継続時間があ
る。あるブロック内の継続時間を超えたとき、前に最小
化されたオーディオ・ビデオ対話型プログラムはタイム
アウトする。この場合、そのプログラムはHALTED
状態69に入ったと考えられ、実行状態と環境を含むメ
モリブロックは割り振りが解除され、前に最小化された
オーディオ・ビデオ対話型プログラムの全ての記録は失
われる。
【0065】しかしながら、(23の)デコーダ10
は、前に最小化されたオーディオ・ビデオ対話型プログ
ラムのディレクトリと、コードモジュールと、データモ
ジュールを含むオーディオ・ビデオ対話型プログラム・
コンポーネントを再び受信することができるか、あるい
はそのオーディオ・ビデオ対話型プログラムは“フロー
を再取得”することができる。例えば、対話型コマーシ
ャルが終了し、HALTED状態69に入ってもよい
し、視聴者がこのチャンネルにチャンネルを戻してもよ
い。システムローダは、“新しい”ディレクトリをオー
ディオ・ビデオ対話型プログラム・コンポーネント・パ
ケットサービス内にロードし始める。新しいディレクト
リがロードされるといつでも、アプリケーション識別子
とRAM412内に現在格納されている実行状態と環境
を含む全てのブロック内の識別子とが比較される。一致
するブロックが見つかった場合は、コードモジュールと
データモジュールがロードされ、オーディオ・ビデオ対
話型プログラムはINACTIVE状態61におかれ
る。しかし、その実行状態は、それが最小化される直前
の実行状態に更新される。視聴者がACTIVATE
KEYを押すと、オーディオ・ビデオ対話型プログラム
はACTIVE状態63に入り、それが前に停止された
場所から実行を開始する。このようにして、他のオーデ
ィオ・ビデオ対話型プログラムをランするためオーディ
オ・ビデオ対話型プログラムを一時的に停止してもよ
く、それから両方のプログラムのために充分な資源を必
要とすることなくメモリ内に同時に残るように再開して
もよい。
【0066】
【発明の効果】以上説明したように、本発明によれば、
パケットストリームを受信するオーディオ・ビデオ対話
型受信機において、オーディオ・ビデオ対話型プログラ
ムを効率的に実行する制御方法が得られる。
【図面の簡単な説明】
【図1】本発明に係るオーディオ・ビデオ対話型信号デ
コーダの一部を示すブロック図である。
【図2】図1に示す処理ユニット40により実行される
ソフトウェアの構造を示す図である。
【図3】オーディオ・ビデオ対話型プログラムのデータ
コンポーネントからモジュールを抽出することを理解す
る際に有用なフロー図とメモリレイアウト図である。
【図4】オーディオ・ビデオ対話型プログラムのデータ
コンポーネントからモジュールを抽出することを理解す
る際に有用な部分的にブロック形式の、また部分的にメ
モリレイアウト形式の図である。
【図5】システムローダの初期化機能を示すフロー図で
ある。
【図6】システムローダのデータストリーム監視機能を
示す状態遷移図である。
【符号の説明】
10 チューナ 15 オーディオ・ビデオ対話型ビデオ出力端子 25 オーディオ・ビデオ対話型オーディオ出力端子 30 プログラム・コンポーネント検出器 32 データパケットDMAコントローラ 34 ヘッダパケットDMAコントローラ 40 処理ユニット 45 ローカル処理装置 55 外部コンピュータ 408 ストリームI/O 410 CPU 412 RAM 414 ROM 418 オーディオ処理装置 420 ビデオ処理装置 422 I/Oポート 426 モデム
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 7/173 (72)発明者 ジーン−レネ メナンド アメリカ合衆国 カリフオルニア州 マリ ナ・デル・レイ パラワン・ウエイ 14001 (72)発明者 アラン デルパツク アメリカ合衆国 カリフオルニア州 ロス アンゼルスパーネル・アベニユー 2221

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 複数のモジュールを含むパケットサービ
    スを受信するオーディオ・ビデオ対話型受信機であっ
    て、各モジュールは名前を有し、時間多重化伝送ユニッ
    トを含み、各伝送ユニットはモジュールの名前を含むヘ
    ッダパケットを含むオーディオ・ビデオ対話型受信機に
    おけるモジュールを処理する方法において、名前により
    識別されたモジュールに関するプロセスを実行するリク
    エストを受信し、受信された名前とリクエストされたプ
    ロセスを含むエントリをエントリリストに挿入するステ
    ップと、 前記パケットサービス内でヘッダパケットを検出するス
    テップと、 検出されたヘッダパケット内の名前が前記リスト内のあ
    るエントリの名前と一致するかどうかを判定するステッ
    プと、 一致するエントリが存在する場合は、一致するエントリ
    内のプロセスを実行するステップと、 前記プロセスが実行されたことを示すメッセージを送信
    するステップとを具備したことを特徴とするモジュール
    を処理する方法。
  2. 【請求項2】 請求項1において、前記受信するステッ
    プは、完全なモジュールを処理するためのリクエストを
    受信するステップを含み、 前記送信するステップは、前記完全なモジュールが処理
    されるとき前記リストから前記一致するエントリを除去
    するステップを含むことを特徴とする方法。
  3. 【請求項3】 請求項1において、名前により識別され
    るモジュールのプロセスを実行するためのリクエストを
    受信するステップと、 前記受信された名前とリクエストされたプロセスを含む
    エントリを前記エントリリストから除去することを停止
    するステップとをさらに備えたことを特徴とする方法。
  4. 【請求項4】 請求項1において、各伝送ユニットは各
    ヘッダパケットと関連する複数のデータパケットを具備
    し、 前記受信するステップは、前記モジュールをメモリにロ
    ードすることにより前記モジュールを実行するためのリ
    クエストを受信するステップと、前記モジュールを含む
    ように前記メモリ内のバッファを割り振るステップとを
    具備し、 前記実行するステップは、前記割り振られたバッファ内
    の各ロケーションに前記検出されたヘッダパケットと関
    連する各データパケットを貯えるステップと、前記モジ
    ュール内の各伝送ユニット内の各データパケットが前記
    割り振られたバッファ内に格納されたとき、前記リスト
    内の一致するエントリを除去するステップとを具備した
    ことを特徴とする方法。
  5. 【請求項5】 請求項4において、伝送ユニット内の各
    ヘッダパケットと関連する前記複数のデータパケット
    は、前記モジュールの開始から個々のオフセット位置に
    位置する前記モジュール内のデータを含み、 前記ヘッダパケットは前記関連する複数のデータパケッ
    ト内に前記データのオフセット位置をさらに含み、 前記格納するステップは、前記割り振られたバッファの
    オフセット位置であって、前記ヘッダパケット内の前記
    オフセット位置に等しいオフセット位置に、前記関連す
    る複数のデータパケットを格納するステップを具備した
    ことを特徴とする方法。
  6. 【請求項6】 請求項5において、前記パケットサービ
    スは、前記モジュールの前記開始から、順次オフセット
    位置におかれたモジュールデータを含む連続的な時間多
    重された伝送ユニットにより運ばれるモジュールを、連
    続的かつ繰り返し供給し、 前記検出するステップは、前記検出されたヘッダパケッ
    トのオフセット位置を指す書き込みポインタを設定する
    ステップをさらに具備し、 前記実行するステップは、モジュールをロードするリク
    エストが開始ロード位置として受信された後、最初に検
    出されたヘッダパケット内に前記オフセット位置を格納
    するステップをさらに具備し、 前記格納するステップは、 前記書き込みポインタにより指された位置の検出された
    ヘッダパケットと関連する各データパケットを格納する
    ステップと、 そして、前記データパケットが格納された後、前記割り
    振られたバッファ内の次の順次位置を指す前記書き込み
    ポインタを更新するステップと、 その後、前記書き込みポインタと前記格納された開始ロ
    ード位置とを比較し、それらが等しいとき、前記除去す
    るステップを実行するステップとを具備したことを特徴
    とする方法。
  7. 【請求項7】 請求項6において、前記検出するステッ
    プは、前記設定するステップの前に、 前記書き込みポインタと、前記検出されたヘッダパケッ
    ト内の前記オフセット位置とを比較するステップと、 それらが等しくないとき、前記検出されたヘッダパケッ
    ト内の前記オフセット位置と前記開始ロード位置を交換
    するステップとをさらに具備したことを特徴とする方
    法。
  8. 【請求項8】 請求項4において、各モジュールは埋め
    込みエラー検出コードをさらに含み、 前記格納するステップは、前記埋め込みエラー検出コー
    ドを前記割り振られたバッファ内に格納し、 前記送信するステップは、 前記埋め込みエラー検出コードを用いてエラーを検出す
    るため、前記割り振られたバッファ内の前記データをチ
    ェックするステップと、 前記チェックするステップでエラーが検出された場合、
    エラーメッセージを送信するステップと、 エラーが検出されない場合は、モジュールにロードされ
    たメッセージを送信するステップとをさらに具備したこ
    とを特徴とする方法。
  9. 【請求項9】 請求項8において、前記埋め込みエラー
    検出コードは埋め込みCRCコードであり、 前記チェックするステップは、前記割り振られたバッフ
    ァ内の前記データに対するCRC値を計算し、計算され
    たCRC値と前記埋め込みCRCコードとを比較し、そ
    れらが異なる場合、エラーを検出することを特徴とする
    方法。
  10. 【請求項10】 請求項4において、各伝送ユニットは
    複数のデータパケットを具備し、 前記受信するステップは、 前記検出されたヘッダパケットと関連する各データパケ
    ットを格納するステップと、 格納された伝送ユニットと関連する各データパケットに
    エラーがないか否かを判定するステップと、 前記伝送ユニットのデータパケットにエラーがある場合
    は、伝送ユニット全体を破棄するステップとを具備した
    ことを特徴とする方法。
  11. 【請求項11】 請求項1において、前記受信するステ
    ップは、前記パケットサービス内のモジュールをスパイ
    するリクエストを受信するステップを具え、 前記実行するステップは、一致するエントリがあるとき
    にはいつでもメッセージを送信するステップを具備した
    ことを特徴とする方法。
  12. 【請求項12】 複数のモジュールを含むパケットデー
    タのソースであり、各モジュールは名前を持ち、時間多
    重化伝送ユニットを含み、各伝送ユニットはモジュール
    の名前を含むヘッダパケットを含み、複数のモジュール
    を含むパケットデータストリームのソースと、 複数のエントリを含むリクエストキューを格納するため
    のメモリであって、前記複数のエントリが処理リクエス
    トとモジュールの名前を含むメモリと、モジュール名前
    を含むロケーションを含むヘッダパケットバッファと、 前記メモリに接続されたリクエスト処理回路であって、
    名前で識別されるモジュールに対する処理を実行するリ
    クエストを受信し、前記識別されたモジュールの名前
    と、前記リクエストされた処理とを含む前記リクエスト
    キューにエントリを格納するリクエスト処理回路と、 前記データストリームソースと前記メモリの間に接続さ
    れたヘッダパケットメモリ格納コントローラであって、
    ヘッダパケットが前記データストリームに現れたとき、
    前記ヘッダパケットを前記ヘッダパケットバッファに格
    納し、ヘッダパケット受信信号を生成するヘッダパケッ
    トメモリ格納コントローラと、 前記ヘッダパケット受信信号に応答するモジュール処理
    回路であって、前記ヘッダパケットバッファから前記モ
    ジュール名を読み出し、前記リクエストバッファ内の各
    エントリ内の名前と前記モジュール名を比較し、前記モ
    ジュール名前がエントリ名前と一致した場合、前記一致
    リクエストキューエントリ内のリクエストされた処理を
    行い、その後メッセージを送信するモジュール処理回路
    とを具備したことを特徴とするオーディオ対話型受信
    機。
  13. 【請求項13】 請求項12において、前記モジュール
    処理回路はプロセッサを備え、前記ヘッダパケット受信
    信号は前記プロセッサに対する割り込み信号であること
    を特徴とする受信機。
  14. 【請求項14】 請求項12において、前記ヘッダパケ
    ットメモリ格納コントローラはダイレクト・メモリ・ア
    クセス・コントローラであることを特徴とする受信機。
  15. 【請求項15】 請求項12において、前記リクエスト
    処理回路は完全なモジュールを処理するためのリクエス
    トを受信し、 前記モジュール処理回路は前記完全なモジュールのリク
    エストされた処理を行った後、前記リクエストキューエ
    ントリを除去することを特徴とする受信機。
  16. 【請求項16】 請求項15において、前記メモリバッ
    ファはモジュールバッファをさらに格納し、 前記データストリームソースは、伝送ユニット内に含ま
    れた前記ヘッダパケットと関連する複数のデータパケッ
    トをそれぞれ含む前記伝送ユニットを生成し、 前記受信機は前記データストリームソースと前記メモリ
    の間に接続され、データパケットが前記データストリー
    ムに現れたとき、伝送ユニットからの前記複数のデータ
    パケットを選択的にモジュールバッファに格納し、その
    後イネーブル信号に応答してデータ完了信号を生成する
    モジュールメモリ格納コントローラをさらに備え、 前記リクエスト処理回路は名前により識別された完全な
    モジュールをロードするための処理リクエストを受信
    し、前記識別された名前と前記ロードリクエストとを含
    む前記リクエストキュー内にエントリを格納し、 前記モジュール処理回路は前記モジュール名前とエント
    リ名前が一致した場合に、前記イネーブル信号を生成
    し、前記完全モジュールを前記モジュールバッファにロ
    ードした後、前記データ完了信号に応答して、前記リク
    エストキューエントリを除去することを特徴とする受信
    機。
  17. 【請求項17】 請求項16において、前記データスト
    リームソースは、埋め込みエラー検出コードを含む各モ
    ジュールを生成し、 前記モジュール処理回路は、前記完全なモジュールが前
    記モジュールバッファ内にロードされた後、前記埋め込
    みエラー検出コードを用いて、前記モジュールバッファ
    内の前記データをエラーチェックし、エラーが検出され
    た場合は、エラーメッセージを送信し、そうでない場合
    は、モジュールロードメッセージを送信することを特徴
    とする受信機。
  18. 【請求項18】 請求項17において、前記埋め込みエ
    ラー検出コードはCRCコードであり、前記モジュール
    処理回路は、前記モジュールバッファ内の前記データに
    対するCRC値を計算し、計算されたCRC値と前記埋
    め込みCRCコードとを比較し、それらが異なる場合は
    エラーを検出することを特徴とする受信機。
  19. 【請求項19】 請求項16において、前記データスト
    リームソースは、前記モジュールの開始から順次オフセ
    ット位置に位置するモジュールデータを含む連続的な伝
    送ユニットを生成し、前記関連するデータパケットの前
    記データの前記オフセット位置をさらに含む前記ヘッダ
    パケットを生成し、 前記メモリの前記ヘッダパケットバッファは、前記オフ
    セット位置を含む位置をさらに含み、 前記モジュール処理回路は、前記ヘッダパケットバッフ
    ァから前記オフセット位置を抽出し、そのオフセット位
    置を前記モジュールメモリ格納コントローラに供給し、 前記モジュールメモリ格納コントローラは、前記モジュ
    ール処理回路からの前記オフセット位置で書き込みポイ
    ンタを初期化し、該書き込みポインタにより指された位
    置にデータパケットをそれぞれロードし、その後、伝送
    ユニットの全てのデータパケットがロードされるまで、
    前記モジュールバッファ内の次の順次位置を指すように
    前記書き込みポインタを更新し、その後、前記データ完
    了信号を生成することを特徴とする受信機。
  20. 【請求項20】 請求項19において、前記データスト
    リームソースは、モジュールを連続的かつ繰り返し生成
    し、 前記メモリは開始ロードアドレス位置をさらに含み、 前記モジュール処理回路は、最初の一致を引き起こす前
    記ヘッダパケットがロードされた後、前記ヘッダパケッ
    トバッファから前記オフセット位置を抽出し、前記開始
    ロードアドレス位置に前記オフセット位置を格納し、前
    記モジュールメモリ格納コントローラからの前記データ
    完了信号に応答して、前記モジュールメモリ格納コント
    ローラからの前記書き込みポインタを前記開始ロードア
    ドレス位置と比較し、それらが等しいとき前記メッセー
    ジを送信することを特徴とする受信機。
  21. 【請求項21】 請求項20において、前記モジュール
    処理回路は、前記ヘッダパケット受信信号に応答して、
    前記書き込みポインタと前記オフセット位置を比較し、
    それらが等しくないとき、前記オフセット位置で前記開
    始ロードアドレス位置を交換することを特徴とする受信
    機。
  22. 【請求項22】 請求項16において、前記モジュール
    処理回路は、プロセッサを備え、前記データ完了信号は
    前記プロセッサへの割り込み信号であることを特徴とす
    る受信機。
  23. 【請求項23】 請求項16において、前記モジュール
    メモリ格納コントローラはダイレクト・メモリ・アクセ
    ス・コントローラであることを特徴とする受信機。
  24. 【請求項24】 請求項12において、前記リクエスト
    処理回路は、名前により識別されたモジュールの処理を
    停止するためのリクエストを受信し、前記識別されたモ
    ジュールの名前と、停止するようリクエストされた前記
    処理とを含む前記リクエストキュー内の前記エントリを
    除去することを特徴とする受信機。
  25. 【請求項25】 請求項12において、前記ヘッダパケ
    ットメモリ格納コントローラは、イネーブル信号に応答
    してヘッダパケットを選択的に格納し、 前記リクエスト処理回路は、エントリが前記リクエスト
    キュー内に格納された後、前記イネーブル信号を生成
    し、 前記モジュール処理回路は、前記リクエストキュー内に
    エントリがない場合、前記処理がなされた後、前記イネ
    ーブル信号をさらに除去することを特徴とする受信機。
JP13556895A 1994-04-28 1995-04-26 オーディオ・ビデオ対話信号を処理する方法と装置 Expired - Lifetime JP3781454B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/234,144 US5539920A (en) 1994-04-28 1994-04-28 Method and apparatus for processing an audio video interactive signal
US234144 1994-04-28

Publications (2)

Publication Number Publication Date
JPH0846935A true JPH0846935A (ja) 1996-02-16
JP3781454B2 JP3781454B2 (ja) 2006-05-31

Family

ID=22880129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13556895A Expired - Lifetime JP3781454B2 (ja) 1994-04-28 1995-04-26 オーディオ・ビデオ対話信号を処理する方法と装置

Country Status (5)

Country Link
US (1) US5539920A (ja)
JP (1) JP3781454B2 (ja)
KR (1) KR100352844B1 (ja)
CN (1) CN1095272C (ja)
GB (1) GB2288958B (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10164138A (ja) * 1996-12-05 1998-06-19 Fujitsu Ltd マルチメディアデータ蓄積伝送方法及び装置
JP2001519627A (ja) * 1997-10-03 2001-10-23 カナル プラス ソシエテ アノニム データのダウンロード
JP2002504786A (ja) * 1998-02-20 2002-02-12 トムソン ライセンシング ソシエテ アノニム プログラムガイドおよび関連マルチメディアオブジェクトを処理するためのマルチメディアシステム
JP2003502920A (ja) * 1999-06-15 2003-01-21 ウィンク・コミュニケーションズ・インコーポレーテッド 放送プログラムとの同期動作を維持するための放送及びインタラクティブ・アプリケーションの実行の自動制御
JP2007538312A (ja) * 2004-04-23 2007-12-27 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・ネットワークを通しての障害回復力を有するデータ転送方法および装置
JP2008154253A (ja) * 1996-04-23 2008-07-03 Nokia Corp マルチメディア受信を実行するマルチメディア端末装置及び方法
JP2009298404A (ja) * 1998-01-07 2009-12-24 Microsoft Corp オーディオ娯楽システムを備えた車両コンピュータ・システム

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2152400T3 (es) * 1994-06-23 2001-02-01 Koninkl Philips Electronics Nv Un receptor de señales de television.
US6963859B2 (en) * 1994-11-23 2005-11-08 Contentguard Holdings, Inc. Content rendering repository
US5654746A (en) * 1994-12-01 1997-08-05 Scientific-Atlanta, Inc. Secure authorization and control method and apparatus for a game delivery service
US6005561A (en) * 1994-12-14 1999-12-21 The 3Do Company Interactive information delivery system
US5684799A (en) * 1995-03-28 1997-11-04 Bell Atlantic Network Services, Inc. Full service network having distributed architecture
US7917922B1 (en) * 1995-06-08 2011-03-29 Schwab Barry H Video input switching and signal processing apparatus
US5920572A (en) * 1995-06-30 1999-07-06 Divicom Inc. Transport stream decoder/demultiplexer for hierarchically organized audio-video streams
US5781226A (en) * 1995-11-13 1998-07-14 General Instrument Corporation Of Delaware Network virtual memory for a cable television settop terminal
US5835493A (en) * 1996-01-02 1998-11-10 Divicom, Inc. MPEG transport stream remultiplexer
US6101546A (en) * 1996-03-11 2000-08-08 Microsoft Corporation Method and system for providing data files that are partitioned by delivery time and data type
EP1458190A3 (en) * 1996-05-30 2004-10-06 Matsushita Electric Industrial Co., Ltd. Interactive data transmitting apparatus, interactive data receiving apparatus, and interactive data transmitting and receiving methods
EP0810790A3 (en) * 1996-05-31 1999-10-20 Matsushita Electric Industrial Co., Ltd. Data communication system, data transmitting apparatus, and data receiving apparatus
US5977962A (en) * 1996-10-18 1999-11-02 Cablesoft Corporation Television browsing system with transmitted and received keys and associated information
US5850218A (en) * 1997-02-19 1998-12-15 Time Warner Entertainment Company L.P. Inter-active program guide with default selection control
US5943605A (en) * 1997-04-16 1999-08-24 Lucent Technologies Inc. Arrangement for controlling extraction of data from a broadband digital stream employing a symbol table for translating symbolic program names to program and channel numbers
JP4086344B2 (ja) * 1997-07-31 2008-05-14 キヤノン株式会社 画像送信装置及び制御方法
US6246701B1 (en) 1998-01-14 2001-06-12 Skystream Corporation Reference time clock locking in a remultiplexer for video program bearing transport streams
US6195368B1 (en) 1998-01-14 2001-02-27 Skystream Corporation Re-timing of video program bearing streams transmitted by an asynchronous communication link
US6292490B1 (en) 1998-01-14 2001-09-18 Skystream Corporation Receipts and dispatch timing of transport packets in a video program bearing stream remultiplexer
US6351471B1 (en) 1998-01-14 2002-02-26 Skystream Networks Inc. Brandwidth optimization of video program bearing transport streams
US6351474B1 (en) * 1998-01-14 2002-02-26 Skystream Networks Inc. Network distributed remultiplexer for video program bearing transport streams
US6792616B1 (en) * 1998-05-01 2004-09-14 Scientific-Atlanta, Inc. System and method for providing a plurality of programming services in a television system
US6427238B1 (en) * 1998-05-29 2002-07-30 Opentv, Inc. Module manager for interactive television system
EP0989743A1 (en) * 1998-09-25 2000-03-29 CANAL+ Société Anonyme Application data table for a multiservice digital transmission system
US6697376B1 (en) * 1998-11-20 2004-02-24 Diva Systems Corporation Logical node identification in an information transmission network
US7069571B1 (en) 1999-06-15 2006-06-27 Wink Communications, Inc. Automated retirement of interactive applications using retirement instructions for events and program states
US7222155B1 (en) * 1999-06-15 2007-05-22 Wink Communications, Inc. Synchronous updating of dynamic interactive applications
KR100322609B1 (ko) * 1999-07-19 2002-03-18 구자홍 인핸스먼트 저작 시스템 및 서버 시스템과 이를 이용한 인핸스먼트 저작 방법
US8250617B2 (en) 1999-10-29 2012-08-21 Opentv, Inc. System and method for providing multi-perspective instant replay
US7000245B1 (en) * 1999-10-29 2006-02-14 Opentv, Inc. System and method for recording pushed data
US6530084B1 (en) 1999-11-01 2003-03-04 Wink Communications, Inc. Automated control of interactive application execution using defined time periods
US7028327B1 (en) 2000-02-02 2006-04-11 Wink Communication Using the electronic program guide to synchronize interactivity with broadcast programs
US7631338B2 (en) * 2000-02-02 2009-12-08 Wink Communications, Inc. Interactive content delivery methods and apparatus
US6513003B1 (en) 2000-02-03 2003-01-28 Fair Disclosure Financial Network, Inc. System and method for integrated delivery of media and synchronized transcription
US6738982B1 (en) 2000-05-04 2004-05-18 Scientific-Atlanta, Inc. Method and system for uniform resource identification and access to television services
JP2002057641A (ja) * 2000-08-11 2002-02-22 Pioneer Electronic Corp 情報通信端末装置
JP2002232861A (ja) * 2001-01-30 2002-08-16 Hitachi Ltd 映像情報配信装置および操作装置
GB0111008D0 (en) * 2001-05-04 2001-06-27 Koninkl Philips Electronics Nv Recording of interactive applications
US7313824B1 (en) * 2001-07-13 2007-12-25 Liquid Machines, Inc. Method for protecting digital content from unauthorized use by automatically and dynamically integrating a content-protection agent
US8880709B2 (en) * 2001-09-12 2014-11-04 Ericsson Television Inc. Method and system for scheduled streaming of best effort data
US7849476B2 (en) * 2001-12-13 2010-12-07 Thomson Licensing System and method for automatic switching to interactive application during television program breaks
EP1535469A4 (en) * 2002-08-30 2010-02-03 Wink Communications Inc PROXY IN CARROUSEL
US7076616B2 (en) 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
US20040194153A1 (en) * 2003-03-24 2004-09-30 Sony Corporation And Sony Electronics Inc. Conservation of system resources by efficiently activating/de-activating applications
US7693222B2 (en) * 2003-08-13 2010-04-06 Ericsson Television Inc. Method and system for re-multiplexing of content-modified MPEG-2 transport streams using PCR interpolation
US7523145B2 (en) * 2004-04-22 2009-04-21 Opentv, Inc. System for managing data in a distributed computing system
US20060013155A1 (en) * 2004-07-15 2006-01-19 Spaete Lawrence Jr Method and system for identifying a defective cable modem in an S-CDMA environment
US7991801B2 (en) * 2008-06-10 2011-08-02 International Business Machines Corporation Real-time dynamic and synchronized captioning system and method for use in the streaming of multimedia data
KR20120055779A (ko) * 2010-11-23 2012-06-01 한국전자통신연구원 지그비 기반의 음성 데이터 송수신 시스템 및 그의 음성 데이터 송수신 방법
GB2509079A (en) * 2012-12-19 2014-06-25 Control Tech Ltd Method Of Configuring A Modular System
US9948962B2 (en) 2014-11-13 2018-04-17 Time Warner Cable Enterprises Llc Apparatus and methods for efficient delivery of electronic program guide data
CN106598655B (zh) * 2016-12-05 2020-02-14 腾讯科技(深圳)有限公司 应用程序页面处理方法和装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3803491A (en) * 1971-05-26 1974-04-09 Tocom Communications system
US3891792A (en) * 1974-06-25 1975-06-24 Asahi Broadcasting Television character crawl display method and apparatus
US4528589A (en) * 1977-02-14 1985-07-09 Telease, Inc. Method and system for subscription television billing and access
US4264925A (en) * 1979-08-13 1981-04-28 Michael J. Freeman Interactive cable television system
US4323922A (en) * 1979-12-17 1982-04-06 Oak Industries Inc. Television coding system with channel level identification
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4644470A (en) * 1984-07-20 1987-02-17 International Business Machines Corp. Non-unique names for broadcast messages
US4742516A (en) * 1985-01-14 1988-05-03 Sumitomo Electric Industries, Ltd. Method for transmitting voice information
US5191573A (en) * 1988-06-13 1993-03-02 Hair Arthur R Method for transmitting a desired digital video or audio signal
JPH02264586A (ja) * 1989-04-04 1990-10-29 Pioneer Electron Corp Catvシステム及びcatv端末装置
US5421031A (en) * 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5168356A (en) * 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
DE69210303T2 (de) * 1991-05-23 1996-11-14 Hitachi Ltd Breitbildschirmfernsehempfänger mit Bildseitenverhältnisumwandlungsfunktion und Verfahren zur Darstellung eines vergrösserten Abschnittes
US5539449A (en) * 1993-05-03 1996-07-23 At&T Corp. Integrated television services system
AU7966594A (en) * 1993-10-12 1995-05-04 Intel Corporation Method and system for multicasting formatted data on a computer network
TW241434B (en) * 1994-04-18 1995-02-21 Thomson Consumer Electronics Apparatus and method for formulating an interactive TV signal

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008154253A (ja) * 1996-04-23 2008-07-03 Nokia Corp マルチメディア受信を実行するマルチメディア端末装置及び方法
JP2009219143A (ja) * 1996-04-23 2009-09-24 Nokia Corp マルチメディア受信を実行するマルチメディア端末装置及び方法
JPH10164138A (ja) * 1996-12-05 1998-06-19 Fujitsu Ltd マルチメディアデータ蓄積伝送方法及び装置
JP2001519627A (ja) * 1997-10-03 2001-10-23 カナル プラス ソシエテ アノニム データのダウンロード
JP2009238238A (ja) * 1997-10-03 2009-10-15 Canal Plus データのダウンロード
JP2009298405A (ja) * 1998-01-07 2009-12-24 Microsoft Corp オーディオ娯楽システムを備えた車両コンピュータ・システム
JP2009298404A (ja) * 1998-01-07 2009-12-24 Microsoft Corp オーディオ娯楽システムを備えた車両コンピュータ・システム
US8001290B2 (en) 1998-01-07 2011-08-16 Microsoft Corporation Vehicle computer system with audio entertainment system
US8065026B2 (en) 1998-01-07 2011-11-22 Microsoft Corporation Vehicle computer system with audio entertainment system
JP2002504786A (ja) * 1998-02-20 2002-02-12 トムソン ライセンシング ソシエテ アノニム プログラムガイドおよび関連マルチメディアオブジェクトを処理するためのマルチメディアシステム
JP2003502920A (ja) * 1999-06-15 2003-01-21 ウィンク・コミュニケーションズ・インコーポレーテッド 放送プログラムとの同期動作を維持するための放送及びインタラクティブ・アプリケーションの実行の自動制御
JP2012055001A (ja) * 1999-06-15 2012-03-15 Opentv Inc 放送プログラムとの同期動作を維持するための放送及びインタラクティブ・アプリケーションの実行の自動制御
JP4972258B2 (ja) * 1999-06-15 2012-07-11 オープン・ティーヴィ・インコーポレーテッド 放送プログラムとの同期動作を維持するための放送及びインタラクティブ・アプリケーションの実行の自動制御
JP2007538312A (ja) * 2004-04-23 2007-12-27 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・ネットワークを通しての障害回復力を有するデータ転送方法および装置
JP4857261B2 (ja) * 2004-04-23 2012-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・ネットワークを通しての障害回復力を有するデータ転送方法および装置

Also Published As

Publication number Publication date
KR950035417A (ko) 1995-12-30
GB2288958B (en) 1998-06-17
KR100352844B1 (ko) 2002-12-26
CN1095272C (zh) 2002-11-27
GB2288958A (en) 1995-11-01
GB9508200D0 (en) 1995-06-07
JP3781454B2 (ja) 2006-05-31
CN1112334A (zh) 1995-11-22
US5539920A (en) 1996-07-23

Similar Documents

Publication Publication Date Title
JPH0846935A (ja) オーディオ・ビデオ対話信号を処理する方法と装置
JP4011128B2 (ja) オーディオ・ビデオ対話型プログラムの実行を制御する方法
EP1194838B1 (en) Methods and apparatus for implementing individual class loaders
KR100559158B1 (ko) Ieee 셋탑 박스 디바이스 드라이버
US4962463A (en) Video imaging device with image altering controls and related method
US8621511B2 (en) System and method to control distribute processing and memory resources among applications in a television terminal
RU2181905C2 (ru) Разработка системы управления телевидением или радиовещанием
JP4303884B2 (ja) モデム制御
JP4642230B2 (ja) 受信器/復号器部
EP1304798B1 (en) Broadcast receiving apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050725

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051025

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051028

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060307

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120317

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130317

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140317

Year of fee payment: 8

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