JP3065276B2 - データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法 - Google Patents

データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法

Info

Publication number
JP3065276B2
JP3065276B2 JP9122297A JP12229797A JP3065276B2 JP 3065276 B2 JP3065276 B2 JP 3065276B2 JP 9122297 A JP9122297 A JP 9122297A JP 12229797 A JP12229797 A JP 12229797A JP 3065276 B2 JP3065276 B2 JP 3065276B2
Authority
JP
Japan
Prior art keywords
section
data
length
output
pointer field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP9122297A
Other languages
English (en)
Other versions
JPH10313281A (ja
Inventor
敦司 宮本
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9122297A priority Critical patent/JP3065276B2/ja
Publication of JPH10313281A publication Critical patent/JPH10313281A/ja
Application granted granted Critical
Publication of JP3065276B2 publication Critical patent/JP3065276B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Time-Division Multiplex Systems (AREA)
  • Television Systems (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ分離回路に関
し、特にトランスポートストリームのペイロードからセ
クションを抽出するデータ分離回路に関する。
【0002】
【従来の技術】近年、ディジタル画像を高能率符号化す
る世界標準方式としてMPEG(Motion Picture codin
g Experts Group)方式があるが、MPEG方式で高能
率符号化した複数の画像データ、音声データ等を時間軸
多重化したストリームとしてトランスポートストリーム
(TS)がある。トランスポートストリームは、ATM
通信やディジタル多チャンネル衛星放送などにおける伝
送フォーマットとなっている。これらの多重化された信
号を受信機で分離して、復号化するために必要な情報や
番組名などの情報であるプログラムアソシエーションテ
ーブルやプログラムマップテーブルはプログラムスペシ
フィックインフォメーション(PSI)と呼ばれてお
り、TS信号に多重化されている。
【0003】TSにおいてPSIを伝送する方法につい
ては、ISO/IEC13818−1に記載されている
が、ここで概略を述べる。
【0004】TSにおいてPSIを伝送するとき、PS
Iは可変長のセクションに分割されてTSパケットに挿
入される。セクションのシンタックスを示す図9を参照
すると、セクションの固定長部分の最後の部分に、セク
ションのデータ長を示すデータ長情報であるセクション
レングス(section length)と呼ばれる12ビットのフ
ィールドがある。但し、セクションレングスはセクショ
ンの全バイト数を表すのではなくセクションレングスの
次からそのセクションの最後までのデータバイト数を示
す。
【0005】次に、TSパケットへのセクションの挿入
方法を図10を参照して説明する。図示するようにTS
パケットは、TSヘッダとTSペイロードより構成され
る。TSパケットにセクションの先頭が含まれるとき、
TSヘッダ中のペイロードユニットスタートインジケー
ター(payload_unit_start_indicator)が論理値1にセ
ットされており、また、ペイロードの最初の1バイトは
最初のセクションの区切り位置を示すポインターフィー
ルド(pointer_field)として使用される。TSパケッ
トにセクションの先頭が含まれないときにはTSヘッダ
中のペイロードユニットスタートインジケーターは論理
値0をとり、ポインターフィールドはなく、ペイロード
の最初のバイトからセクションが始まる。1つのTSパ
ケット内に複数のセクションが存在するとき、それらの
セクションの間には隙間がない。
【0006】したがって、ポインターフィールドにより
示される最初のセクション先頭までのバイト数とセクシ
ョン内にあるセクションレングスをカウントすることに
より、TSパケット内の2番目以降のセクションの先頭
を認識することができる。あるセクションの最終バイト
の次の1バイトの値が0xFFであるとき、それはその
次のセクションの先頭ではなく、スタッフィングバイト
である。一度スタッフィングバイトが現れると、そのT
Sパケットの残りはすべてスタッフィングバイトであ
る。
【0007】TSペイロードからセクションのみを抽出
するということは、すなわち、ペイロードからポインタ
ーフィールドとスタッフィングバイトを取り除くことで
ある。このうちポインターフィールドは、ペイロードユ
ニットスタートインジケーターが論理値1にセットされ
ているTSパケットのペイロードの最初の1バイトにあ
るから、容易に取り除くことができる。ところが、この
うちスタッフィングバイトを取り除くには、セクション
の先頭位置(区切り位置)を常に認識することが必要で
ある。
【0008】セクションの先頭位置が認識できれば、図
9からわかるようにセクション先頭から13ビット目か
ら24ビット目にあるセクションレングスの値から、そ
のセクションの最終バイトの位置を知ることができる。
セクションの最終バイトの次の1バイトの値が0xFF
であるとき、それ以降、そのTSパケットの最後まで、
スタッフィングバイトである。
【0009】ところで、セクションの先頭位置の認識
は、セクションレングスにエラーがなければセクション
レングスだけから行うことができる。また、セクション
レングスにエラーがあって、認識ができなくなっても、
途中のTSパケットからポインターフィールドを使用し
てこの認識を復活することができる。
【0010】TSペイロードからセクションを抽出する
回路の具体的使用例を図11に示す。セクション抽出回
路103はTSデコーダ101内で使用される。TSデ
コーダ101に入力されたTSデータは、まず、TSヘ
ッダ処理回路102においてヘッダ処理を行われる。T
SヘッダにはPIDが含まれている。PIDは、13ビ
ットの値であり、そのTSパケットに含まれるデータの
種別を示すものである。TSヘッダ処理回路102は、
CPU106から設定された複数種類のPIDを持つ複
数種類のTSパケットのみを抽出して、TSヘッダを取
り除いたうえで、TSペイロードをPID毎に異なるセ
クション抽出回路103へ出力する。但し、ペイロード
ユニットスタートインジケータの検出信号もセクション
抽出回路103へ出力する。セクション抽出回路103
では、入力されたTSペイロードから、ポインターフィ
ールド及びスタッフィングバイトを除いたセクションの
みを抽出して、RAMインターフェース104へ出力す
る。TSデコーダの外部に接続されたRAM105は、
複数の領域に分割されて、その各々がリングバッファと
して用いられる。RAMインターフェース104は、入
力されたデータを、PID毎に異なるRAM領域に出力
する。CPU106は、RAM105に蓄積されたセク
ションデータを読み出して、使用する。
【0011】従来のTSペイロードからセクションを抽
出するセクション抽出回路103としてのデータ分離回
路の一例を図12に示す。このデータ分離回路は、クロ
ックCLK、リセット信号RST、TSペイロードPL
D(1バイト幅)、PLDのデータが有効であるときに
論理値1になるイネーブル信号PLDEN、及びTSペ
イロードPLDがポインターフィールドであるときに論
理値1になる信号PFを入力する。そして、セクション
SEC(1バイト幅)、SECのデータが有効であると
きに論理値1になるSECイネーブル信号SECENを
出力する。
【0012】ポインターフィールド処理部201はTS
ペイロードPLD、PLDのイネーブル信号PLDEN
と、ポインターフィールド信号PFを受け、TSペイロ
ードPLDがポインターフィールドの示すセクションの
先頭であるときに論理値1になる信号PFSSを出力部
25及びセクションレングス処理部26へ出力する。
【0013】セクションレングス処理部226はTSペ
イロードPLD、PLDのイネーブル信号PLDEN
と、ポインターフィールド信号PFと、ポインターフィ
ールド処理部1が発生するポインターフィールドによる
セクション先頭検出信号PFSSを受け、TSペイロー
ドPLDがスタッフィングバイトの先頭であるときに論
理値1になる信号STFを出力部225へ出力する。出
力部225はTSペイロードPLD、PLDのイネーブ
ル信号PLDENと、ポインターフィールド検出信号P
Fと、ポインターフィールド処理部1が発生するポイン
ターフィールドによるセクション先頭検出信号PFSS
と、セクションレングス処理部26が発生するスタッフ
ィングバイト検出信号STFを受け、セクションSEC
とSECのイネーブル信号SECENを出力する。
【0014】出力部225の構成を図13に示す。デー
タレジスタ205はTSペイロードPLDを1クロック
遅延させてセクションSECとして出力する。ANDゲ
ート207は、インバーター206によりポインターフ
ィールド信号PFを反転した信号とイネーブル信号PL
DENの論理積をとり、EREGINとして出力してい
る。イネーブルレジスタ208は、ANDゲート207
の出力EREGINを1クロック遅延させて出力する。
ORゲート227はリセット信号RSTとスタッフィン
グバイト検出信号STFの論理和をとり、出力状態レジ
スタ210へ出力する。出力状態レジスタ210はOR
ゲート227の出力信号でリセットされる。また、出力
状態レジスタ210はポインターフィールドによるセク
ション先頭検出信号PFSSでセットされる。ANDゲ
ート211はイネーブルレジスタ208の出力と、出力
状態レジスタ210の出力信号OSの論理積をとり、セ
クションイネーブルSECENとして出力する。
【0015】このようにして、図12の出力部225か
らはセクションSECとセクションSECのデータがセ
クションデータである時のみに論理値1になるSECE
Nを出力する。SECECはTSストリームにおいて、
TSヘッダとポインターフィールドとスタッフバイトの
タイミングでは論理値0になる。
【0016】セクションレングス処理部226の構成を
図14に示す。ANDゲート217は、ポインターフィ
ールド信号PFをインバーター216により反転した信
号と、イネーブル信号PLDENの論理積をとり、NP
FENとして制御部212に出力する。ORゲート22
1はリセット信号RSTとポインターフィールド信号P
Fの論理和をとって制御部リセット信号CTRLRST
を生成し、制御部212へ出力する。セクションレング
スカウンター213は、TSペイロードPLDと、AN
Dゲート217の出力NPFENと、制御部212が出
力する上位ロード信号UPLD、下位ロード信号LOW
LDを受け、現在処理中のセクションの残りバイト数を
示す信号SECCNTを出力する。コンパレータ215
は、セクション残りバイト数SECCNTを0と比較
し、一致したときに制御部212への出力EQZERO
を論理値1にする。コンパレータ214は、TSペイロ
ードPLDを0xFFと比較し、一致したときに出力E
QFFを論理値1にする。インバーター218は、コン
パレータ214の出力EQFFを反転して出力する。A
NDゲート219は、インバーター218の出力と、制
御部212が出力する、セクションの直後を示す信号N
EXTの論理積をとり、セクションデータ内のセクショ
ンレングスにより認識されるセクション先頭を示す信号
SLSSを生成する。ORゲート224は、ポインター
フィールドによるセクション先頭検出信号PFSSと、
セクションレングスによるセクション先頭検出信号SL
SSの論理和をとってセクション先頭信号SSを生成
し、制御部212に出力する。制御部12は、ANDゲ
ート217の出力NPFENと、ORゲート221の出
力する制御部リセット信号CTRLRSTと、セクショ
ン先頭信号SSと、コンパレータ215の出力EQZE
ROを入力する。そして、制御部212は、セクション
レングスカウンター213の上位4ビットへTSペイロ
ードPLDの下位4ビットをロードさせる信号UPLD
と、セクションレングスカウンター213の下位8ビッ
トへTSペイロードPLDをロードさせる信号LOWL
Dと、TSペイロードPLDがセクションの直後、すな
わち次のセクションの先頭またはスタッフィングバイト
であることを示す信号NEXTを出力する。ANDゲー
ト220は、制御部212の出力する信号NEXTと、
コンパレータ14の出力信号EQFFの論理積をとり、
TSペイロードPLDがスタッフィングバイトの先頭で
あるときに論理値1になる信号STFを生成する。
【0017】次に、図15に示すフローチャートを参照
して、従来のTSペイロードからセクションを抽出する
セクション抽出回路としてのデータ分離回路103の動
作について説明する。まず、出力がセクションの途中か
ら始まらないように、リセット信号RSTによる回路初
期化の際に出力部225の出力状態レジスタ210を論
理値0にすることにより、セクションイネーブルSEC
ENが論理値0になるようにする(S13)。
【0018】そして、ポインターフィールドが入力され
てPFが論理値1になるのを待つ(S14)。PFが論
理値1になると、セクションレングス処理部226はリ
セットされる(セクションレングス処理部226のRS
Tが論理値1になる)(S15)。また、このとき、T
SペイロードPLDはポインターフィールドであるか
ら、ポインターフィールド処理部201はこのPLDを
取り込み、その後、TSペイロードイネーブルPLDE
Nを見て入力されるデータの個数を数え、TSペイロー
ドPLDがセクションの先頭になるカウント値を示した
ら、ポインターフィールド処理部201はセクション先
頭検出信号PFSSを論理値1にする(S16)。
【0019】ポインターフィールド処理部201が出力
するセクション先頭検出信号PFSSが論理値1になっ
たら、出力部225では、出力状態レジスタ210を論
理値1にして、セクションの出力を開始する。また、セ
クションレングス処理部226も処理を開始する(S1
7)。
【0020】セクションレングス処理部226は、セク
ションの13ビット目から24ビット目のセクションレ
ングスを取り込み、TSペイロードイネーブルPLDE
Nを見て入力されるデータの個数を数え、セクションの
最終バイトの次のバイトが0xFFであればスタッフィ
ングバイト検出信号STFを論理値1にし、処理を停止
する。0xFFでなければそれを次のセクションの先頭
と認識して、同じ処理を繰り返す。
【0021】ポインターフィールド信号PFが論理値1
になると、セクションレングス処理部226はリセット
され、ポインターフィールド処理部201が処理を開始
し、ポインターフィールドが示すセクション先頭が入力
されるのを待つ状態となる(S18→S15→S1
6)。
【0022】スタッフィングバイト検出信号STFが論
理値1になると、出力部225の出力状態レジスタ21
0は論理値0になり、セクションの出力を停止し、ポイ
ンターフィールドが入力されるのを待つ状態となる(S
19→S13→S14)。
【0023】
【発明が解決しようとする課題】この従来のセクション
抽出回路103としてのデータ分離回路は、ポインター
フィールドが入力されると、その時点で処理中のセクシ
ョンのセクションレングス値にかかわらず、ポインター
フィールドが示す位置を次のセクションの先頭、ポイン
ターフィールドが示す位置の直前を現在処理中のセクシ
ョンの最後と認識して、処理を行う。このため、入力デ
ータの欠けや伝送エラーにより、このデータ分離回路の
出力データにおいてセクションレングスの値と次のセク
ションの先頭までのデータ長に不一致を生じる場合があ
る。このデータ分離回路の出力をRAM105に示すよ
うな外部バッファに蓄積しておき、後にそのデータを解
析しようとする場合、セクションレングスの値と次のセ
クションの先頭までのデータ長に不一致があると、それ
以降のセクションの先頭を認識できなくなる。
【0024】伝送路のエラーにより一部のTSパケット
が消失してしまった場合の例を図6に示す。セクション
#1の長さは387バイトである。そしてこのセクショ
ンは3分割され、TSパケット#1からTSパケット#
3により伝送される。この例では、伝送路のエラーによ
りパケット#2が消失している。すると、パケット#2
がRAM105に書き込まれなくなる。(B)に示すよ
うに、RAM105に蓄積されたデータにおいて、セク
ション#1のセクションレングスの示す値が387バイ
トであるのに、セクションの実際の切れ目は423バイ
ト目であるので、セクション#1のセクションレングス
に基づいて次のセクションを切り出そうとした場合に、
次のセクションの開始位置と判断されているバイトがセ
クション#2の途中のセクションデータ部分となってし
まい、セクション#1とセクション#2のみならずセク
ション#3以降のセクションデータも分離して復元する
ことができなくなってしまう。
【0025】伝送路のエラーによりセクションレングス
の値が本来の値よりも小さくなってしまった場合の例を
図7に示す。セクション#1の長さは280バイトであ
るので送信時にはセクションレングスには280という
データが入っている。この例では、伝送路のエラーによ
りセクションレングスが280に変化してしまってい
る。(B)に示すように、RAM105に蓄積されたデ
ータにおいて、セクション#1のセクションレングスの
示す値が200バイトであるのに、セクションの実際の
切れ目は280バイト目であるので、セクション#1の
セクションレングスに基づいて次のセクションを切り出
そうとした場合に、次のセクションの開始位置と判断さ
れているバイトがセクション#1の途中のセクションデ
ータ部分となってしまい、セクション#1のみならずセ
クション#2以降のセクションデータも分離して復元す
ることができなくなってしまう。
【0026】伝送路のエラーによりセクションレングス
の値が本来の値よりも大きくなってしまった場合の例を
図8に示す。セクション#1の長さは280バイトであ
るので送信時にはセクションレングスには280という
データが入っている。この例では、伝送路のエラーによ
りセクションレングスが3000に変化してしまってい
る。(B)に示すように、RAM105に蓄積されたデ
ータにおいて、セクション#1のセクションレングスの
示す値が300バイトであるのに、セクションの実際の
切れ目は280バイト目であるので、セクション#1の
セクションレングスに基づいて次のセクションを切り出
そうとした場合に、次のセクションの開始位置と判断さ
れているバイトがセクション#1の途中のセクションデ
ータ部分となってしまい、セクション#1のみならずセ
クション#2以降のセクションデータも分離して復元す
ることができなくなってしまう。
【0027】このように、TSパケットの消失や、ペイ
ロードユニットスタートインジケーター、ポインターフ
ィールド、セクションレングスの誤りといった、伝送エ
ラーが生じた場合に、出力データにおいてセクションレ
ングスの値と次のセクションの先頭までのデータ長が不
一致になるために、エラー発生後のセクションの先頭を
認識することが不可能になるという伝播エラーの発生の
問題が生じる。
【0028】また、出力データを外部バッファに蓄積し
て、後にそのデータを解析しようとする場合、エラー発
生時に、外部バッファをリセットすることが必要となる
場合があり、それまでに蓄積したデータを捨てずに利用
したいときには、待避領域を設けてそこへ待避させなけ
ればならなくなる。
【0029】そこで、本発明の課題は、このように伝送
エラーによりTSパケットの消失や、セクションレング
スの誤りが発生しても、このようなセクションデータの
分離における伝播エラーを最小限にとどめて、エラー復
帰できるようにすることである。
【0030】また、本発明の課題は、新たにデータ待避
領域を持つことなく、エラー発生時にもそれまで使用し
ていたデータ格納領域とそこに蓄積したデータを有効利
用できるようにすることである。
【0031】
【課題を解決するための手段】本発明によるデータ分離
回路は、トランスポートストリームのペイロードからセ
クションを抽出するデータ分離回路において、データエ
ラー発生時にも、抽出される前記セクションの有効デー
タ長を前記セクション内のデータ長情報に一致させるこ
とにより、次に抽出される前記セクションの先頭位置を
認識可能にすることを特徴とする。
【0032】また、本発明によるデータ分離回路は、ポ
インターフィールドにより求まるセクション開始タイミ
ングが前記データ長情報より求まる前記セクション開始
タイミングよりも早い場合に、前記データ長情報より求
まる前記セクション開始タイミングの1バイト手前のセ
クションデータまでは有効とし、前記データ長情報より
求まる前記セクション開始タイミング以降の前記セクシ
ョンデータを無効とすることを特徴とする。
【0033】更に、本発明によるデータ分離回路は、前
記データ長情報より求まるセクション開始タイミングが
ポインターフィールドより求まる前記セクション開始タ
イミングより早い場合に、前記データ長情報より求まる
前記セクション開始タイミング以降のセクションデータ
を無効とすることを特徴とする。
【0034】更に、本発明によるデータ分離回路は、前
記セクションデータが無効な時に、前記ポインターフィ
ールドより求まる前記セクション開始タイミングからの
前記セクションデータを有効とすることを特徴とする。
【0035】更に、本発明によるデータ分離回路は、前
記セクションデータがスタッフィングバイトであるとき
に、前記セクションデータを無効とすることを特徴とす
る。
【0036】
【発明の実施の形態】図1は、本発明の実施形態を示す
ブロック図である。このデータ分離回路は、クロックC
LK、リセット信号RST、TSペイロードPLD(1
バイト幅)、PLDのイネーブル信号PLDEN、及び
TSペイロードPLDがポインターフィールドであると
きに論理値1になる信号PFを入力とする。そして、セ
クションSEC(1バイト幅)、SECのイネーブル信
号SECENを出力する。
【0037】ポインターフィールド処理部1はTSペイ
ロードPLD、PLDのイネーブル信号PLDENと、
ポインターフィールド信号PFを受け、ポインターフィ
ールドによるセクション先頭検出信号PFSSを出力部
2とセクションレングス処理部3とエラー処理部4へ出
力する。
【0038】出力部2はTSペイロードPLD、PLD
のイネーブル信号PLDENと、ポインターフィールド
信号PFと、ポインターフィールド処理部1が発生する
ポインターフィールドによるセクション先頭検出信号P
FSSと、セクションレングス処理部3が発生するスタ
ッフィングバイト検出信号STFと、エラー処理部4が
発生するエラー時リセット信号ERSTを受け、セクシ
ョンSECとSECのイネーブル信号SECENを出力
する。また、出力部2は、出力状態信号OSをセクショ
ンレングス処理部3とエラー処理部4へ出力する。
【0039】セクションレングス処理部3はTSペイロ
ードPLD、PLDのイネーブル信号PLDENと、ポ
インターフィールド信号PFと、ポインターフィールド
処理部1が発生するポインターフィールドによるセクシ
ョン先頭検出信号PFSSと、出力部2が出力する出力
状態信号OSと、エラー処理部4が発生するエラー時リ
セット信号ERSTを受け、セクションレングスによる
セクション先頭検出信号SLSSをエラー処理部4へ出
力する。また、セクションレングス処理部3は、スタッ
フィングバイト検出信号STFを出力部2とエラー処理
部4へ出力する。
【0040】エラー処理部4は、ポインターフィールド
信号PF、ポインターフィールド処理部1によるセクシ
ョン先頭検出信号PFSS、セクションレングス処理部
3によるセクション先頭検出信号SLSS、スタッフィ
ングバイト検出信号STF、出力状態信号OSを受け、
エラー時リセット信号ERSTを出力している。
【0041】エラー処理部4は、ポインターフィールド
信号PFが論理値1になった後、ポインターフィールド
処理部1が出力するセクション先頭検出信号PFSSが
論理値1になる前に、セクションレングス処理部3が出
力するセクション先頭検出信号SLSSが論理値1にな
ったとき、エラー時リセット信号ERSTを論理値1に
する。
【0042】また、エラー処理部4は、あるセクション
の出力の途中(出力部2が出力する出力状態信号OSが
論理値1でセクションレングス処理部3が出力するセク
ション先頭検出信号SLSSが論理値0)で、ポインタ
ーフィールド処理部1が出力するセクション先頭検出信
号PFSSが論理値1になった場合、その後セクション
レングス処理部3が出力するセクション先頭検出信号S
LSSまたはスタッフィングバイト検出信号STFが論
理値1になったときにエラー時リセット信号ERSTを
論理値1にする。
【0043】出力部2の構成を図2に示す。データレジ
スタ5はTSペイロードPLDを1クロック遅延させて
セクションSECとして出力する。ANDゲート7は、
インバーター6によりポインターフィールド信号PFを
反転した信号とイネーブル信号PLDENの論理積をと
り、EREGINとして出力する。イネーブルレジスタ
8は、ANDゲート7の出力EREGINを1クロック
遅延させて出力する。ORゲート9はリセット信号RS
Tとスタッフィングバイト検出信号STFとエラー時リ
セット信号ERSTの論理和をとり、出力状態レジスタ
10へ出力する。出力状態レジスタ10は、その出力を
出力状態信号OSとして出力している。出力状態レジス
タ10はORゲート9の出力信号でリセットされる。ま
た、出力状態レジスタ10はポインターフィールドによ
るセクション先頭検出信号PFSSでセットされる。A
NDゲート11は、イネーブルレジスタ8の出力と、出
力状態レジスタ10が出力する出力状態信号OSの論理
積をとり、セクションイネーブルSECENとして出力
する。
【0044】セクションレングス処理部3の構成を図3
に示す。ANDゲート17は、ポインターフィールド信
号PFをインバーター16により反転した信号と、イネ
ーブル信号PLDENの論理積をとり、NPFENとし
て制御部12に出力する。ORゲート21はリセット信
号RSTとエラー時リセット信号ERSTの論理和をと
って制御部リセット信号CTRLRSTを生成し、制御
部12へ出力する。セクションレングスカウンター13
は、TSペイロードPLDと、ANDゲート17の出力
NPFENと、制御部12が出力する上位ロード信号U
PLD、下位ロード信号LOWLDを受け、現在処理中
のセクションの残りバイト数を示す信号SECCNTを
出力する。コンパレータ15は、セクション残りバイト
数SECCNTを0と比較し、一致したときに制御部1
2への出力EQZEROを論理値1にする。コンパレー
タ14は、TSペイロードPLDを0xFFと比較し、
一致したときに出力EQFFを論理値1にする。インバ
ーター18は、コンパレータ14の出力EQFFを反転
して出力する。ANDゲート19は、インバーター18
の出力と、制御部12が出力する、セクションの直後を
示す信号NEXTの論理積をとり、セクションレングス
によるセクション先頭検出信号SLSSを生成する。A
NDゲート23は、インバーター22により出力状態信
号OSを反転した信号と、ポインターフィールド処理部
1が出力するセクション先頭検出信号PFSSの論理積
をとり、ORゲート24へ出力している。ORゲート2
4は、ANDゲート23の出力と、セクションレングス
処理部3が出力するセクションの先頭を示す信号SLS
Sの論理和をとってセクション先頭信号SSを生成し、
制御部12に出力する。制御部12は、ANDゲート1
7の出力NPFENと、ORゲート21の出力する制御
部リセット信号CTRLRSTと、セクション先頭信号
SSと、コンパレータ15の出力EQZEROを入力す
る。そして、制御部12は、セクションレングスカウン
ターの上位4ビットへTSペイロードPLDの下位4ビ
ットをロードさせる信号UPLDと、セクションレング
スカウンターの下位8ビットへTSペイロードPLDを
ロードさせる信号LOWLDと、TSペイロードPLD
がセクションの直後、すなわち次のセクションの先頭ま
たはスタッフィングバイトであることを示す信号NEX
Tを出力する。ANDゲート20は、制御部12の出力
する信号NEXTと、コンパレータ14の出力信号EQ
FFの論理積をとり、スタッフィングバイト検出信号S
TFを生成する。
【0045】次に、図4に示すフローチャートを参照し
て、本実施形態の動作について説明する。まず、出力が
セクションの途中から始まらないように、リセット信号
RSTによる回路初期化の際に出力部2の出力状態レジ
スタ10を論理値0にすることにより、セクションイネ
ーブルSECENが論理値0になるようにする(S
1)。
【0046】そして、ポインターフィールドが入力され
てポインターフィールド処理部1からポインターフィー
ルドによるセクション先頭検出信号PFSSが出力され
るのを待つ(S2)。
【0047】ポインターフィールド処理部1が出力する
セクション先頭検出信号PFSSが論理値1になった
ら、出力部2では、出力状態レジスタ10を論理値1に
して、セクションの出力を開始する。また、セクション
レングス処理部3も処理を開始する(S3)。
【0048】セクションレングス処理部3は、セクショ
ンの13ビット目から24ビット目のセクションレング
スを取り込み、TSペイロードイネーブルPLDENを
見て入力されるデータの個数を数え、セクションの最終
バイトの次のバイトが0xFFであればスタッフィング
バイト検出信号STFを論理値1にし、処理を停止す
る。0xFFでなければそれを次のセクションの先頭と
認識して、セクションレングスによるセクション先頭検
出信号SLSSを論理値1にして、さらに同じ処理を繰
り返す。スタッフィングバイト検出信号STFが論理値
1になると、出力部2の出力状態レジスタ10は論理値
0になり、セクションの出力を停止し、ポインターフィ
ールドが入力されるのを待つ状態となる(S5→S1、
S6→S1、S10→S1)。
【0049】出力状態レジスタ10が論理値1の間にポ
インターフィールド信号PFが論理値1になると(S
4)、エラー処理部4は、図5に示すように、ポインタ
ーフィールドによるセクション先頭検出信号PFSS
と、セクションレングスによるセクション先頭検出信号
SLSSの照合を行う(S7〜S9)。
【0050】まず、SLSSが論理値1になる以前にP
FSSが論理値1になった場合は、SLSSが論理値1
になるのを待ち、SLSSが論理値1になった時点で、
エラー時リセット信号ERSTを出力する(S7、S1
1、S12)。SLSSが論理値1になる前にSTFが
論理値1になった場合にはエラー時リセット信号ERS
Tを出力しない(S10)。
【0051】次に、PFSSが論理値1になる以前にS
LSSが論理値1になった場合は、直ちにエラー時リセ
ット信号ERSTを出力する(S8、S12)。
【0052】そして、PFSSとSLSSが同時に論理
値1になった場合は、エラー時リセット信号ERSTを
出力しない(S9)。
【0053】エラー時リセット信号ERSTが論理値1
になると、セクションレングス処理部3と出力部2の出
力状態レジスタ10がリセットされ、セクションの出力
は停止し(セクションイネーブル信号SECENは論理
値0になり)、ポインターフィールドが示す次のセクシ
ョン先頭を待つ状態となる(S12→S1→S2)。
【0054】TSパケットの消失によりデータの欠けが
生じた場合について、図6を参照して説明する。(A)
は入力例であり、(C)は、この入力に対する本実施形
態の出力ある。*印はセクションの先頭位置を表してい
る。この入力は、section#1中のデータが18
4バイト欠けている。TSパケット#4にあるsect
ion#2の出力を24バイト目までで打ち切ることに
より、section#1のセクションレングスの直後
からsection#3の先頭までのデータ長を387
バイトにしているため、section#3以降のセク
ションの先頭位置が認識可能である。
【0055】section#2の出力を途中で打ち切
ることができるのは、セクションレングス処理部3が出
力するSLSSがTSパケット#4のペイロードの24
バイト目で論理値1になるのにポインターフィールド処
理部1が出力するPFSSがそこまでは論理値0のまま
であるので、処理が図5に示すS8からS12のフロー
を通り、TSパケット#4のペイロードの25バイト目
から出力部2が出力するSECENが論理値0になるか
らである。TSパケット#4にあるセクション#3の部
分では、この先頭でポインターフィールド処理部1が出
力するPFSSが論理値1になるので、出力部2が出力
するSECENが再び論理値1になる。
【0056】次に、セクションレングスに伝送エラーが
あり、本来の値より小さくなっている場合について、図
7を参照して説明する。(A)は入力例であり、(C)
は、この入力に対する本実施形態の出力である。入力
(A)のsection#1のセクションレングスが、
本来280であるところが、伝送エラーにより200に
なっている。section#1の出力を途中で打ち切
ることにより、section#1のセクションレング
スの直後からsection#2の先頭までのデータ長
を200バイトにしているため、section#2以
降のセクションの先頭位置が認識可能である。
【0057】section#1の出力を途中で打ち切
ることができるのは、セクションレングス処理部3が出
力するSLSSがTSパケット#2のペイロードの20
バイト目で論理値1になるのにポインタフィールド処理
部1が出力するPFSSがそこまでは論理値0のままで
あるので、処理が図5に示すS8からS12のフローを
通り、TSパケット#2のペイロードの21バイト目か
ら出力部2が出力するSECENが論理値0になるから
である。TSパケット#2にあるセクション#2の部分
では、この先頭でポインターフィールド処理部1が出力
するPFSSが論理値1になるので、出力部2が出力す
るSECENが再び論理値1になる。
【0058】次に、セクションレングスに伝送エラーが
あり、本来の値より大きくなっている場合について、図
8を参照して説明する。(A)は入力例であり、(C)
は、この入力に対する本実施形態の出力である。入力
(A)のsection#1のセクションレングスが、
本来280であるところが、伝送エラーにより300に
なっている。section#2の出力を途中で打ち切
ることにより、section#1のセクションレング
スの直後からsection#2の先頭までのデータ長
を300バイトにしているため、section#3以
降のセクションの先頭位置が認識可能である。
【0059】section#2の出力を途中で打ち切
ることができるのは、ポインタフィールド処理部1が出
力するPFSSが論理値1になるのにセクションレング
ス処理部3が出力するSLSSが論理値0のままである
ので、処理が図5に示すS7、S10、S11、S12
のフローを通り、TSパケット#2のペイロードの12
1バイト目から出力部2が出力するSECENが論理値
0になるからである。TSパケット#3にあるセクショ
ン#3の部分では、この先頭でポインターフィールド処
理部1が出力するPFSSが論理値1になるので、出力
部2が出力するSECENが再び論理値1になる。
【0060】ペイロードユニットスタートインジケータ
やポインターフィールドにエラーが発生した場合には、
図5の分岐S7か分岐S8を経由してエラー時リセット
信号ERSTが論理値1になり、出力部2が出力するS
ECENが論理値0になるという弊害が生じるが、次の
ペイロードユニットスタートインジケータとポインター
フィールドのペアにエラーがなければ、例えば、次のP
Sパケットで通常の動作が復帰するので、この弊害は本
発明によるデータ分離回路の効果に比べて遥かに少な
い。
【0061】
【発明の効果】本発明によれば、TSパケットの消失
や、ペイロードユニットスタートインジケーターあるい
はポインターフィールド、あるいはセクションレングス
の誤りといった、伝送エラーが生じた場合にも、本発明
によるデータ分離回路の出力において、セクションレン
グスの値と次のセクションの先頭までのデータ長が必ず
一致する。したがって、本発明によるデータ分離回路の
出力を外部バッファに蓄積しておき、後にそのデータを
解析しようとする場合に、エラー発生後のセクション先
頭も認識可能であり、エラー発生時に外部バッファをリ
セットする必要がない。ゆえに、データ待避領域を持た
なくても、エラー発生時に、それまでに蓄積したデータ
を有効に利用できる。
【0062】その理由は、入力データに伝送エラーがあ
る場合にも、本発明によるデータ分離回路の出力データ
において、セクションレングスの値と実際に出力される
データ長を必ず一致させることにより、エラー発生後の
セクション先頭も認識可能にしているからである。
【図面の簡単な説明】
【図1】本発明のデータ分離回路の一実施形態を示すブ
ロック図である。
【図2】図1の出力部2の構成を示す図である。
【図3】図1のセクションレングス処理部3の構成を示
す図である。
【図4】本実施形態のデータ分離回路の動作を示す第1
のフローチャートである。
【図5】本実施形態のデータ分離回路の動作を示す第2
のフローチャートである。
【図6】本実施形態の効果を説明する第1の図である。
【図7】本実施形態の効果を説明する第2の図である。
【図8】本実施形態の効果を説明する第3の図である。
【図9】トランスポートストリームのセクションのシン
タックスを示す図である。
【図10】トランスポートストリームパケットへのセク
ションの挿入方法を示す図である。
【図11】本発明及び従来例におけるデータ分離回路の
具体的使用例を示すブロック図である。
【図12】従来のデータ分離回路の一例を示すブロック
図である。
【図13】図12の出力部25の構成を示す図である。
【図14】図12のセクション処理部26の構成を示す
図である。
【図15】従来のデータ分離回路の動作を示すフローチ
ャートである。
【符号の説明】
1 ポインターフィールド処理部 2 出力部 3 セクションレングス処理部 4 エラー処理部 5,8,10 レジスタ 12 セクションレングス処理制御部 13 セクションレングスカウンター 14,15 コンパレータ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平9−83541(JP,A) 特開 平8−56350(JP,A) 特開 平8−88615(JP,A) 特開 平9−312656(JP,A) 藤原洋監修,”最新MPEG教科 書”,アスキー出版(1994−8−1), p.231−253 (58)調査した分野(Int.Cl.7,DB名) H04J 3/00 - 3/26 H04N 7/08

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 トランスポートストリームのペイロード
    から可変長セクションを抽出するデータ分離回路におい
    て、データエラー発生時にも、抽出される前記セクショ
    ンの有効データ長を前記セクション内のデータ長情報に
    バイト単位で一致させる手段を備えることにより、次に
    抽出される前記セクションの先頭位置を認識可能にする
    ことを特徴とするデータ分離回路。
  2. 【請求項2】 ポインターフィールドにより求まるセク
    ション開始タイミングが前記データ長情報より求まる前
    記セクション開始タイミングよりも早い場合に、前記デ
    ータ長情報より求まる前記セクション開始タイミングの
    1バイト手前のセクションデータまでは有効とし、前記
    データ長情報より求まる前記セクション開始タイミング
    以降の前記セクションデータを無効とする手段を備える
    ことを特徴とする請求項1に記載のデータ分離回路。
  3. 【請求項3】 前記データ長情報より求まるセクション
    開始タイミングがポインターフィールドより求まる前記
    セクション開始タイミングより早い場合に、前記データ
    長情報より求まる前記セクション開始タイミング以降の
    セクションデータを無効とする手段を備えることを特徴
    とする請求項1に記載のデータ分離回路。
  4. 【請求項4】 前記セクションデータが無効な時に、前
    記ポインターフィールドより求まる前記セクション開始
    タイミングからの前記セクションデータを有効とする手
    段を備えることを特徴とする請求項2又は3に記載のデ
    ータ分離回路。
  5. 【請求項5】 前記セクションデータがスタッフィング
    バイトであるときに、前記セクションデータを無効とす
    る手段を備えることを特徴とする請求項4に記載のデー
    タ分離回路。
  6. 【請求項6】 トランスポートストリームのペイロード
    から可変長セクションを抽出するデータ分離回路でのエ
    ラー復帰方式において、 ポインターフィールドによって示されるセクションの先
    頭位置とセクションレングスによって示されるセクショ
    ンの開始位置が一致するか否かをバイト単位で検出する
    検出手段と、 前記検出手段により前記ポインターフィールドによって
    示されるセクションの先頭位置と前記セクションレング
    スによって示されるセクションの開始位置の不一致が検
    出されたときに、そのときのセクションレングスが属す
    るセクションの有効長をセクションレングスが示す長さ
    にバイト単位で補正する補正手段と、 前記補正手段が補正を行った後にポインターフィールド
    によって示される位置より次のセクションを有効とする
    復帰手段と、 を備えることを特徴とするデータ抽出回路でのエラー復
    帰方式。
  7. 【請求項7】 トランスポートストリームのペイロード
    から可変長セクションを抽出するデータ分離回路でのエ
    ラー復帰方法において、 ポインターフィールドによって示されるセクションの先
    頭位置とセクションレングスによって示されるセクショ
    ンの開始位置が一致するか否かをバイト単位で検出する
    検出ステップと、 前記検出ステップで前記ポインターフィールドによって
    示されるセクションの先頭位置と前記セクションレング
    スによって示されるセクションの開始位置の不一致が検
    出されたときに、そのときのセクションレングスが属す
    るセクションの有効長をセクションレングスが示す長さ
    にバイト単位で補正する補正ステップと、 前記ステップで補正を行った後にポインターフィールド
    によって示される位置より次のセクションを有効とする
    復帰ステップと、 を有することを特徴とするデータ抽出回路でのエラー復
    帰方法。
JP9122297A 1997-05-13 1997-05-13 データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法 Expired - Lifetime JP3065276B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9122297A JP3065276B2 (ja) 1997-05-13 1997-05-13 データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9122297A JP3065276B2 (ja) 1997-05-13 1997-05-13 データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法

Publications (2)

Publication Number Publication Date
JPH10313281A JPH10313281A (ja) 1998-11-24
JP3065276B2 true JP3065276B2 (ja) 2000-07-17

Family

ID=14832478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9122297A Expired - Lifetime JP3065276B2 (ja) 1997-05-13 1997-05-13 データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法

Country Status (1)

Country Link
JP (1) JP3065276B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706400B2 (en) 2004-05-28 2010-04-27 Panasonic Corporation Transport stream processing device and transport stream processing method
US7748581B2 (en) 2007-01-16 2010-07-06 Maruso Industry Co., Ltd. Three-dimensional collar shape retaining hanger

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3640844B2 (ja) 1999-09-17 2005-04-20 株式会社東芝 エラー処理機能を備えた伝送装置及びエラー処理方法
JP6933141B2 (ja) * 2015-11-27 2021-09-08 ソニーグループ株式会社 受信装置および方法、並びに通信システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
藤原洋監修,"最新MPEG教科書",アスキー出版(1994−8−1),p.231−253

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706400B2 (en) 2004-05-28 2010-04-27 Panasonic Corporation Transport stream processing device and transport stream processing method
US7748581B2 (en) 2007-01-16 2010-07-06 Maruso Industry Co., Ltd. Three-dimensional collar shape retaining hanger

Also Published As

Publication number Publication date
JPH10313281A (ja) 1998-11-24

Similar Documents

Publication Publication Date Title
EP1500278B1 (en) Method and system for preventing start code emulation at non-byte aligned and/or bit-shifted locations
JP4049863B2 (ja) Mpeg2トランスポート・ストリーム・パケット・パーザ・システム
EP2329654B1 (en) Devices of digital video reception and output having error detection and concealment circuitry and techniques
US20080288663A1 (en) Method and system for handling errors
KR100952352B1 (ko) Avs를 위해 통합된 시작 코드 에뮬레이션 방지 비트프로세싱을 위한 방법 및 시스템
KR100831186B1 (ko) 스트림 데이터 프로세서
EP0933949B1 (en) Transmitting system, transmitting apparatus, recording and reproducing apparatus
US5612979A (en) Synchronous circuit
JP3065276B2 (ja) データ分離回路並びにデータ分離回路でのエラー復旧方式及びその方法
US6201815B1 (en) Transport packet stream separating circuit in which packet can be discarded on error
KR100296684B1 (ko) 오디오/비디오 압축 코드 데이타를 디코딩하기 위한 디코딩 방법 및 디코더
JP3636062B2 (ja) ビデオデータを含むデータストリームの処理回路およびその制御方法
JP2748851B2 (ja) データ通信方法および装置
USRE41179E1 (en) Device for extracting parameters for decoding a video data flow coded according to an MPEG standard
JP3564309B2 (ja) データ処理装置とその制御方法
JPH09261279A (ja) バッファメモリを有するデータ処理装置
JP2950204B2 (ja) 同期信号検出回路およびその検出方法
KR0147122B1 (ko) 엠펙2의 트랜스포트 디코더 장치
US6810085B2 (en) MPEG video elementary stream extruction device and elementary stream extruction method used for the same
KR101141644B1 (ko) Psi 변환 장치 및 방법
US20040190631A1 (en) PES data processing
JPH11146354A (ja) 映像・オーディオ復号化装置
JP2913826B2 (ja) 画像データの復号回路
KR20010018378A (ko) 트랜스포트 패킷의 동기를 검출하는 장치
JPH08181983A (ja) 画像復号回路