JP2000307533A - データ処理装置及びデータ処理方法 - Google Patents

データ処理装置及びデータ処理方法

Info

Publication number
JP2000307533A
JP2000307533A JP11014599A JP11014599A JP2000307533A JP 2000307533 A JP2000307533 A JP 2000307533A JP 11014599 A JP11014599 A JP 11014599A JP 11014599 A JP11014599 A JP 11014599A JP 2000307533 A JP2000307533 A JP 2000307533A
Authority
JP
Japan
Prior art keywords
data
memory
unit
register
block
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.)
Pending
Application number
JP11014599A
Other languages
English (en)
Inventor
Shojiro Shibata
正二郎 柴田
Takuya Kitamura
卓也 北村
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP11014599A priority Critical patent/JP2000307533A/ja
Publication of JP2000307533A publication Critical patent/JP2000307533A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

(57)【要約】 【課題】簡易な構成で容易に、複数種類のデータに対し
てデータ処理を施すことができるデータ処理装置及びデ
ータ処理方法を提案する。 【解決手段】処理対象であるデータを入力手段3によっ
て所定のデータ保持手段32、33、34、42、4
3、52、53に入力した後、データ保持手段に保持さ
れたデータに対して所定のデータ処理を施す際に、デー
タ保持手段の保持データにアドレスを割り当て、アドレ
スが割り当てられたデータ保持手段の保持データを外部
記憶手段9に退避させ、外部記憶手段9に退避させた保
持データを必要に応じてデータ保持手段に読み出すこと
により、外部記憶手段9に退避した保持データを保持手
段に再現することができ、複数種類のデータを時分割で
データ保持手段に保持させデータ処理を施すことができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ処理装置及び
データ処理方法に関し、例えばパケット化されたデータ
を解析して符号量を解析するデータ処理装置及びデータ
処理方法に適用して好適なものである。
【0002】
【従来の技術】従来、例えばMPEG(Motion Picture
Experts Group)等の手法により符号化された複数チャン
ネルのデータを多重化してなるトランスポートストリー
ムでは、同一チャンネル(プログラム)のパケットに同
一のPID(Packet ID) が付されている。
【0003】このように複数チャンネルの符号化データ
が含まれるトランスポートストリームを入力し、当該ト
ランスポートストリームに含まれるパケットのうち、同
一のPIDごとに整理されたパケット列であるPIDス
トリームについてデータの符号量等を解析するようにな
されたデータ解析装置がある。
【0004】
【発明が解決しようとする課題】このデータ解析装置で
は、処理対象である複数のPIDストリームの数に合わ
せて各PIDストリームを解析する解析処理部を設ける
必要があり、この分構成の規模が大きくなる問題があっ
た。
【0005】また、当該複数PIDストリームに対して
CPU(Central Processing Unit)がソフトベースのマ
ルチタスク処理によって解析処理を行う方法が考えられ
るが、この場合、処理能力はCPUの処理能力に依存す
ることになり、この結果、処理し得るPIDストリーム
の数が限られる問題があった。
【0006】本発明は以上の点を考慮してなされたもの
で、簡易な構成で容易に複数種類のデータに対してデー
タ処理を施すことができるデータ処理装置及びデータ処
理方法を提案しようとするものである。
【0007】
【課題を解決するための手段】かかる課題を解決するた
め本発明においては、処理対象であるデータを入力手段
によって所定のデータ保持手段に入力した後、データ保
持手段に保持されたデータに対して所定のデータ処理を
施す際に、データ保持手段の保持データにアドレスを割
り当て、アドレスが割り当てられたデータ保持手段の保
持データを外部記憶手段に退避させ、外部記憶手段に退
避させた保持データを必要に応じて上記データ保持手段
に読み出すことにより、外部記憶手段に退避した保持デ
ータを上記保持手段に再現することができ、複数種類の
データを時分割で上記データ保持手段に保持させデータ
処理を施すことができる。
【0008】
【発明の実施の形態】以下図面について、本発明の一実
施の形態を詳述する。
【0009】(1)スプライシング装置の全体構成 図1において、1は全体としてスプライシング装置を示
し、位置情報付加手段としての入力処理部3、データ処
理部4、出力処理部5、CPU(Central Processing U
nit )6、データバス7、コマンドバス8、SDRAM
(Syncronous Dynamic Randam Access Memory )でなる
第1の記憶手段としての外部メモリ9、インターフェー
ス部10及びデータ解析部20で構成される。
【0010】このスプライシング装置1は、ホストコン
ピュータ2から供給される制御情報に基づいて、複数の
映像データを多重化してなるトランスポートストリーム
S1及びS2に対してスプライシング処理を施し、出力
トランスポートストリームSoutを生成し外部に出力
するようになされている。
【0011】CPU6はRISC(Reduced Instructio
n Set Computer:縮小命令セットコンピュータ)構成で
なるマイクロプロセッサであり、スプライシング装置の
各回路ブロック(入力処理部3、データ処理部4、出力
処理部5、外部メモリ9及びデータ解析部20)を制御
するものである。すなわちCPU7は上位のホストコン
ピュータ2から供給されるスプライシング命令をインタ
ーフェース部10及びコマンドバス8を介して受け、当
該スプライシング命令に基づいてスプライシング装置1
の各回路ブロックに対する動作命令を生成し、これを当
該各回路ブロックに供給することにより、ホストコンピ
ュータ2が指示するスプライシング処理を実行するよう
になされている。なお、このCPU6は外部メモリ9に
格納されている動作プログラムに基づいて動作すること
により、これら各回路ブロックの動作を制御するように
なされている。ちなみにこの動作プログラムは、外部か
らホストコンピュータを介して外部メモリ9にダウンロ
ードされる。
【0012】またこのスプライシング装置1において
は、各回路ブロック(入力処理部3、データ処理部4、
出力処理部5、CPU6及びデータ解析部20)はデー
タバス7を介して外部メモリ9に接続されており、当該
各回路ブロックは外部メモリ9に対して所望のデータを
書き込めるとともに、当該外部メモリ9から所望のデー
タを読み出し得るようになされている。なお、データバ
ス7にはアービトレーション機能が設けられており、こ
のアービトレーション機能によってデータバス7の使用
権を調停することにより外部メモリ9に対するアクセス
が衝突しないようになされている。
【0013】入力処理部3はトランスポートストリーム
S1及びS2を入力し、当該トランスポートストリーム
S1及びS2を構成するTSパケットを、図2に示すよ
うに同一のPID(Packet Identification :パケット
識別情報)を有するTSパケット毎に整理する。そして
入力処理部3は、図3に示すように各TSパケット(18
8[byte] 長)の先頭に当該TSパケットについての情報
の記入領域としてのローカルヘッダ(64[byte]長)を付
加するとともに、当該TSパケットの末尾に予約領域と
してのリザーブ(4[byte] 長)を付加することにより全
体として256[byte] 長のTSブロックを生成し、これを
順次外部メモリ9に書き込んでいく。
【0014】ここでTSパケットは、図4に示すように
MPEG(Moving Picture ExpertsGroup)2方式の映
像符号化の基本単位であるPES(Packetized Element
al Stream )パケットを分割したペイロードにTSヘッ
ダを付加して生成される。入力処理部3は、同一のPI
Dで整理したTSブロックのペイロードデータの先頭
(すなわちPESパケットの先頭)から計数した、当該
TSブロックが有するペイロードの先頭アドレスを「ab
s sum bgn 」に記入し、当該TSブロックが有するペイ
ロードの末尾アドレスを「abs sum end 」に記入し、当
該TSブロックが有するペイロードの先頭を示すポイン
タ情報を「payload ptr 」に記入する。また入力処理部
3は、当該TSブロックのアダプテーションフィールド
の情報を「Else header 」に記入する。
【0015】データ解析部20は、スプライシング処理
の対象となる映像データのTSブロックを外部メモリ9
から読み出してローカルヘッダに基づいて解析し、当該
解析結果のデータをTSブロックのローカルヘッダに記
入して当該TSブロックを外部メモリ9に書き戻すとも
に、圧縮符号化時及びパケット化時に付加された各種パ
ラメータを取り出して外部メモリ9に格納する。
【0016】ローカルヘッダに記入されるデータとして
は、「PES pyld ptr」、「PES pcktlngt ptr 」、「PES
hdr lngt ptr」、「PTS ptr 」、「DTS ptr 」及び「A
U ptr」がある。「PES pyld ptr」はPESパケットの
ペイロードの先頭を示すポインタ情報であり、PESパ
ケットのペイロードの先頭が当該TSブロックに無い場
合は「0xff」が記入される。「PES pckt lngt ptr 」は
PESパケットのパケット長情報の先頭を示すポインタ
であり、パケット長情報が当該TSブロックに無い場合
は「0xff」が記入される。「PES hdr lngt ptr」はPE
Sパケットのヘッダ長情報の先頭を示すポインタであ
り、ヘッダ長情報が当該TSブロックに無い場合は「0x
ff」が記入される。
【0017】「PTS ptr 」は映像データの表示時間情報
PTSの先頭を示すポインタ情報であり、PTSの先頭
が当該TSブロックに無い場合は「0xff」が記入され
る。「DTS ptr 」は映像データの表示時間情報DTSの
先頭を示すポインタ情報であり、DTSの先頭が当該T
Sブロックに無い場合は「0xff」が記入される。「AU p
tr」はアクセスユニットの先頭を示すポインタ情報であ
り、アクセスユニットの先頭が当該TSブロックに無い
場合は「0xff」が記入される。
【0018】またTSブロックから取り出されるパラメ
ータとしては、符号化データの表示時間情報であるPT
S(Presentation Time Stamp )、符号化データの復号
時間情報であるDTS(Decoding Time Stamp )、PE
Sパケット長、PESヘッダ長、ビットレート、VBV
(Video Buffer Verifier :発生符号量制御のための仮
想バッファ)サイズ、ビットレート・エクステンショ
ン、VBVサイズ・エクステンション、クローズドGO
P、テンポラリ・リファレンス・コーディング・タイ
プ、VBVディレイ、等といった圧縮符号化時及びパケ
ット化時のパラメータである。
【0019】ここで、入力されるトランスポートストリ
ームがマルチプログラムの場合、当該トランスポートス
トリームには異なるプログラムのTSパケットが混合さ
れており、このためこれらのパラメータを取り出すには
複雑な作業が伴う。しかしながらこのスプライシング装
置1では、入力処理部3によってトランスポートストリ
ームを同一のPIDを有するTSパケット毎に整理して
外部メモリ9に格納しているため、これらのパラメータ
を容易に取り出すことができる。スプライシング処理は
少なくとも2つ以上の映像データを対象として処理を行
うため、データ解析部20は複数の映像データのストリ
ームを時分割処理によって平行して解析するようになさ
れている。
【0020】CPU6は、データ解析部20の解析によ
って得られたパラメータに基づいてスプライシング処理
を決める連結点を決めると共に、その連結点においてブ
ランキングデータやスタフィングデータを挿入した方が
良いか否かを判断し、当該判断内容をデータ結合指令と
してデータ処理部4に送出する。
【0021】データ処理部4はこのデータ結合指令を受
けて、スプライシング処理の対象の映像データに対して
スプライシング処理を実行する。すなわちデータ処理部
4は、データ結合指令に応じて外部メモリ9からスプラ
イシング対象の複数の映像データを読み出し、必要があ
ればブランキングデータやスタフィングデータを挿入
し、これら複数の映像データを連結することによって連
結映像データを生成し、これを再び外部メモリ9に格納
する。
【0022】出力処理部5は、外部メモリ9に格納され
ている映像データのうち、スプライシング処理によって
得られた連結映像データ及びその他の映像データを多重
化し、出力トランスポートストリームSoutを生成し
て出力する。
【0023】(2)データ解析部の構成 図5は全体として本発明の一実施の形態によるデータ解
析部20を示し、CPU6(図1)は当該データ解析部
20の動作プログラムを外部メモリ9からプログラムメ
モリ25にダウンロードして実行することにより、デー
タ解析部20全体を制御する。プログラムメモリ25の
容量は24[bit] ×1024[word]であり、当該プログ
ラムメモリ25のアドレスはプログラムカウンタ24に
よって指定される。プログラムデコーダ26はプログラ
ムカウンタ24によって指定された動作プログラムのコ
マンドコードをデコードし、デコード結果をデータ解析
部20の各モジュールに対して出力する。
【0024】ジャンプ先判定部23は動作プログラムに
応じて、プログラムカウンタ24のカウンタ値をインク
リメントするか、又は当該カウンタ値に相対ジャンプ値
を加算することにより当該カウンタ値を更新する。かか
るカウンタ値の更新は、1つのコマンドコードの終了時
に行われる。
【0025】データ解析部20はTS[]メモリ32、G
M[]メモリ42及びRM[]メモリ52の3つの内部メモ
リを有しており、各内部メモリはそれぞれTSメモリ制
御部31、GMメモリ制御部41及びRMメモリ制御部
51によって書き込み及び読み出しが制御される。これ
ら3つの内部メモリの容量はそれぞれ8[bit] ×256
[word]であり、TSブロックのデータ長(256[byt
e])と同一である。
【0026】TS[]メモリ32は、外部メモリ9から読
み出されたTSブロックを格納するメモリであり、演算
器22は当該TS[]メモリ32にアクセスしてTSブロ
ックのペイロード(すなわちPESパケット)内の所望
のデータを読み出す。GM[]メモリ42は汎用メモリと
して用いられ、動作プログラム内のレジスタ値の退避等
に用いられる。
【0027】TS[]メモリ32及びGM[]メモリ42は
それぞれTSメモリレジスタ33及びGMメモリレジス
タ43によって間接アドレッシングされる。例えば、T
S[RegA0] はTS[]メモリ32におけるRegA0 番地の値
を示す。
【0028】TSメモリレジスタ33のレジスタRegA+
はインクリメント機能付きレジスタであり、分割前のP
ESパケットにおける先頭からの番地を示し、当該レジ
スタRegA+ を用いることによりPESパケット(すなわ
ちTSブロックのペイロード)を連続的にアクセスし得
るようになされている。
【0029】SEGレジスタ34はインクリメント機能
付きレジスタであり、同一のPIDで整理したTSブロ
ック列の先頭から計数した、当該TSブロック列におけ
るTSブロックの位置(順位)を指定するレジスタであ
る。TSメモリ制御部31は、当該SEGレジスタ34
が示すTSブロックを外部メモリ9から読み出す。また
TSメモリ制御部31は「abs sum bgn 」及び「abs su
m end 」とレジスタRegA+ との比較結果に基づいて、当
該SEGレジスタ34をインクリメント(+1または−
1)する。
【0030】RM[]メモリ52は演算器22による解析
結果を保存するメモリであり、当該RM[]メモリ52が
満量になった場合に解析結果を外部メモリ9に書き出す
ようになされている。
【0031】第1の演算器入力セレクタ27Aは、動作
プログラムに応じてその入力をTSメモリ制御部31、
GMメモリ制御部41、RMメモリ制御部51、TSメ
モリレジスタ33、GMメモリレジスタ43及びSEG
レジスタ34から選択し、その出力を演算器22の第1
の入力端に供給する。同様に第2の演算器入力セレクタ
27Bはその入力をTSメモリ制御部31、GMメモリ
制御部41又、RMメモリ制御部51、TSメモリレジ
スタ33、GMメモリレジスタ43及びSEGレジスタ
34から選択し、その出力を演算器22の第2の入力端
に供給する。
【0032】演算手段としての演算器22は、動作プロ
グラムに応じて第1の演算器入力セレクタ27A及び第
2の演算器入力セレクタ27Bから供給されるデータに
対して加算、シフト、論理演算(AND、OR)、反
転、定数ロード等の演算を行い、当該演算結果を、動作
プログラムに応じたモジュール(TSメモリレジスタ3
3、SEGレジスタ34、GMメモリレジスタ43、R
Mメモリレジスタ53、TSメモリ制御部31、GMメ
モリ制御部41及びRMメモリ制御部51)に出力す
る。
【0033】書込パルス発生部28は、データ解析部2
0の各モジュール(TSメモリレジスタ33、GMメモ
リレジスタ43、RMメモリレジスタ53、SEGレジ
スタ34、TSメモリ制御部31、GMメモリ制御部4
1及びRMメモリ制御部51)に対して書込パルスをセ
レクトして供給する。
【0034】データ解析部20が有するレジスタ及びメ
モリは全てアドレスマッピングされており、CPU6
(図1)及び状態退避部56から、入力セレクタ58及
び出力セレクタ59を介してアクセスし得るようになさ
れている。そしてデータ解析部20は、状態退避部56
を介して当該データ解析部20の内部状態(レジスタ及
びメモリ)を外部メモリ9に退避及び読み込むことによ
り、複数の映像データのストリームを時分割処理し得る
ようになされている。
【0035】図6は4つのストリームを時分割処理する
場合の外部メモリ9におけるデータ解析部20の使用領
域を示し、データ解析部のプログラムエリア、RM[]メ
モリ52からのデータを格納するRMリングエリア、及
びデータ解析部20の内部状態を退避するレジスタ退避
エリアを有しており、RMリングエリア及びレジスタ退
避エリアは4分割されている。RMリングエリアは、メ
モリエリアの折り返し位置に到達した場合にメモリエリ
アの先頭に戻るリング構成で使用される。
【0036】次に、TSメモリ制御部31によるTSブ
ロックの読み出しについて説明する。外部メモリ9上に
おいて、PESパケットはTSブロックのペイロードと
して不連続に存在する。記憶手段の制御手段としてのT
Sメモリ制御部31は、動作プログラムに応じて外部メ
モリ9からTSブロックを読み出してTS[]メモリ32
に格納し、当該TSブロックからペイロード(すなわち
PESパケット)のみを読み出すことにより、ペイロー
ドを連続的にアクセスし得るようになされている。
【0037】すなわち、動作プログラムによるペイロー
ドの読み出し命令が発生した場合、TSメモリ制御部3
1はこれに応じてSEGレジスタ34で指定されたTS
ブロックを外部メモリ9から読み出し、これをTS[]メ
モリ32に格納する。かかる読み出し命令における読み
出し対象のデータは、レジスタRegA+ を用いて「TS[R
egA+] 」の形式で指定される。
【0038】このときTSメモリ制御部31は、TSブ
ロックのローカルヘッダに記入されている「abs sum bg
n 」、「abs sum end 」及びレジスタRegA+ に基づい
て、読み出し対象のデータ(TS[RegA+] )が現在TS
[]メモリ32に格納されているTSブロックにあるか否
かを判断し、当該読み出し対象のデータが当該TSブロ
ックに無い場合、SEGレジスタ34をインクリメント
することにより、当該読み出し対象のデータを含むTS
ブロックを外部メモリ9から読みだしてTS[]メモリ3
2に格納する。
【0039】図7は全体としてTSメモリ制御部31を
示し、第1の加算器62Aはレジスタ値RegA+ から「ab
s sum end 」を減算し、その結果を第1の判定部63A
に出力する。第1の判定部63Aは、当該減算結果が負
の場合は”0”を、それ以外の場合は”1”を第3の加
算器62Cに出力する。同様に第2の加算器62Bはレ
ジスタ値RegA+ から「abs sum bgn 」を減算し、その結
果を第2の判定部63Bに出力する。第2の判定部63
Bは、当該減算結果が負の場合は”−1”を、それ以外
の場合は”0”を第3の加算器62Cに出力する。第3
の加算器62Cは第1の判定部63A及び第2の判定部
63Bの出力を加算し、これを演算結果S62Cとして
第4の加算器62Dに出力する。
【0040】演算結果S62Cは、TS[RegA+] が現在
TS[]メモリ32に格納されているTSブロック内を示
している場合(すなわちabs sum bgn ≦RegA+ ≦abs su
m end の場合)に”0”となり、TS[RegA+] が現在T
S[]メモリ32に格納されているTSブロックよりも前
のTSブロックを示している場合(すなわちRegA+ <ab
s sum bgn の場合)に”−1”となり、TS[RegA+] が
現在TS[]メモリ32に格納されているTSブロックよ
りも後のTSブロックを示している場合(すなわちabs
sum end <RegA+ の場合)に”1”となる。
【0041】第4の加算器62Dは、SEGレジスタ3
4のレジスタ値に演算結果S62Cを加算し、これを演
算結果S62Dとして第1の比較器64Aに供給する。
第1の比較器64Aは演算器22からの書き込み命令に
応じて、演算結果S62DをSEGレジスタ34に供給
してSEGレジスタ34を書き換える。
【0042】これによりSEGレジスタ34は、TS[R
egA+] が現在TS[]メモリ32に格納されているTSブ
ロック内を示している場合は変化せず、TS[RegA+] が
現在TS[]メモリ32に格納されているTSブロックよ
りも前のTSブロックを示している場合は1だけ減算さ
れ、TS[RegA+] が現在TS[]メモリ32に格納されて
いるTSブロックよりも後のTSブロックを示している
場合は1だけ加算される。
【0043】読出制御部65は、SEGレジスタ34で
指定されたTSブロック(すなわち読み出し対象のデー
タ(TS[RegA+] )を含むTSブロック)を外部メモリ
9から読み出し、これをTS[]メモリ32に格納する。
かかるSEGレジスタ34の書き換え(インクリメン
ト)及びTSブロックの読出は、加算器62A〜62
D、判定部62A、62B及び比較器64Aによるハー
ドウェア処理であるため、高速に処理が実行される。
【0044】TS[]メモリ32内におけるTS[RegA+]
の位置は、RegA+ −abs sum bgn +paylode ptr で求め
られる。第5の加算器62Eは、第2の加算器62Bの
出力(RegA+ −abs sum bgn )にpaylode ptr を加算
し、これを演算結果S62Eとして比較器64Bを介し
てTS[]メモリ32に供給する。TS[]メモリ32は、
演算結果S62Eを読出アドレスとしてTSブロックの
データを読み出すことによりTS[RegA+] を読み出し、
これを演算器22(図5)に供給する。
【0045】かくしてTSメモリ制御部31は、ペイロ
ードの読み出し命令が発生した場合、TS[RegA+] を含
むTSブロックを外部メモリ9から読み出してTS[]メ
モリ32に格納し、TS[RegA+] をTS[]メモリ32か
ら読み出して演算器22に出力する。TSメモリ制御部
31の外部からは、TS[RegA+] がどのTSブロックに
含まれているかを意識することなくTS[RegA+] を読み
出すことができ、これによりPESパケットがペイロー
ドとして分割されていることを意識することなく、当該
PESパケットを連続的にアクセスし得るようになされ
ている。
【0046】演算器22(図5)は、このようにして読
みだされたペイロードを動作プログラムに基づいて演算
して解析することにより、PESパケットに記入されて
いるPTS、DTS、PESパケット長、PESヘッダ
長、ビットレート、VBVサイズ、ビットレート・エク
ステンション、VBVサイズ・エクステンション、クロ
ーズドGOP、テンポラリ・リファレンス・コーディン
グ・タイプ、VBVディレイ等のパラメータを取り出
し、これらをRMメモリ制御部51を介してRM[]メモ
リ52に書き込む。
【0047】RMメモリレジスタ53はインクリメント
機能付きレジスタであり、RM[]メモリ52にデータが
1[byte]書き込まれる毎にインクリメントするようにな
されている。RMメモリ制御部51は、RMメモリレジ
スタ53のレジスタRegC+ を監視しており、当該レジス
タRegC+ の値が256の整数倍になった場合(すなわち
RM[]メモリ52(容量256[byte])が満量となった
場合)に、RM[]メモリ52を読み出して外部メモリ9
(図1)に書き込む。
【0048】また演算器22は読みだされたペイロード
を解析してPESパケットに記入されている「PES pyld
ptr」、「PES pckt lngt ptr 」、「PES hdr lngt pt
r」、「PTS ptr 」、「DTS ptr 」及び「AU ptr」の各
パラメータを取り出し、これらを図3に示すローカルヘ
ッダに記入する。
【0049】ここで、解析の対象となるデータ(PES
ペイロード)はPESパケットの先頭から始まるとは限
らず、TSブロックをTSブロック列の先頭から一つず
つ読み出して解析していくのは意味がない。このため動
作プログラムは、PESペイロードの先頭を示す「payl
oad unit start indicator」を検出するまでSEGレジ
スタ34をインクリメントすることにより、TSブロッ
クの読み飛ばしを行う。
【0050】一方サーチ部60は、動作プログラムによ
るサーチコマンドに応じて、予め指定されたサーチパタ
ーンを用いてTS[]メモリ32に格納されているTSブ
ロックのペイロードをサーチしてパターンマッチングを
行い、当該サーチパターンと一致したビット列を検出し
た場合、当該ビット列の末尾アドレスを当該TSブロッ
クのローカルヘッダの「Match ptr 0 〜Match ptr 7 」
に記入する。
【0051】ここで指定されるサーチパターンとして
は、PESパケットのPESペイロードに記入されてい
るシーケンス・スタート・コード、グループ・スタート
・コード、ピクチャ・スタート・コード、スライス・ス
タート・コード等がある。これらの情報は、後段の処理
で用いられる。
【0052】このときサーチ部60は、サーチパターン
の対象となるビット列がTSブロックにまたがって存在
する場合を考慮して、サーチが行われたペイロードの末
尾3[byte]を記憶しておき、次のサーチ時には当該保存
されている3[byte]を含めてサーチを行う。
【0053】またサーチ部60は、TSメモリ制御部3
1によるTSブロックの読み出しと同時に、payload pt
r が示す位置(すなわちPESペイロードの先頭)から
あらかじめパターンマッチングを行い、この時の結果
(サーチパターンと一致したビット列の末尾アドレス)
を保存しておく。かかる処理をプリサーチと呼ぶ。そし
てTS[]メモリ32内のTSブロックに対するサーチに
よって当該TSブロックがPESペイロードのみで構成
されていると判明した場合、プリサーチの結果をローカ
ルヘッダに記入してサーチを終了する。
【0054】図8はサーチ部60の状態遷移を示し、3d
0 で表せられる「休止」は、サーチ部60の動作してい
ない状態である。
【0055】3d1 で表せられる「プリサーチ」は、TS
ブロックを外部メモリ9からTS[]メモリ32に読み込
む時に遷移し、「payload ptr 」をサーチの先頭とし
て、TS[]メモリ32内のペイロードについてパターン
サーチを行う状態である。
【0056】3d2 で表せられる「PESヘッダの有無を
判定」は、PESヘッダの有無を「PES pyld ptr 」に
基づいて判定する。
【0057】3d3 で表せられる「PES pyld ptrを用いて
サーチ」は、「PES pyld ptr」をサーチの先頭として、
TS[]メモリ32内のペイロードについてパターンサー
チを行う状態である。
【0058】3d4 、3d5 で表せられる「パターンマッチ
有無判定」は、CPU9が指定したパターンがサーチ範
囲内にあるかどうか判定する状態である。
【0059】3d6 で表せられる「マッチしたアドレス転
送」は、パターンマッチしたデータのTSブロックの先
頭からの位置を、ローカルヘッダの Match ptr 0 〜Ma
tchptr 7 へ転送する状態である。
【0060】3d7 で表せられる「末尾のpayload 3byte
の保存」は、次のサーチ時にTSブロックに跨がるデー
タを処理するため、ペイロードの末尾3[byte]を保存す
る状態である。
【0061】以上の状態の中で最も処理に時間を要する
状態は、3d3 で表せられる「PES pyld ptrを用いてサー
チ」であり、最大60クロック程度を要する。また、3d
1 で表せられる「プリサーチ」は、TSブロックの読み
込みに平行して行われるため、処理時間に加算されな
い。その他の状態は条件判定やバイトのコピーにより実
行されるため、1〜2クロック程度である。
【0062】これらの状態は、発生確率が高い順に次の
3パターンで遷移が発生する。まずTSパケットのペイ
ロードが、全てPESペイロードの場合、遷移パターン
1として、3d0 →3d1 →3d0 →3d2 →3d4 → (3d6 →)
3d7 →3d0 の順で遷移する。ここで (3d6 →) はサーチ
パターンと一致した場合に発生し、プリサーチによる結
果を用いる。この場合、処理時間は8クロック程度とな
る。
【0063】TSパケットのペイロードがTSアダプテ
ーションフィールドやPESヘッダのみの場合、遷移パ
ターン2として、3d0 →3d1 →3d0 →3d2 →3d0 の順で
遷移する。この場合サーチは行われず、処理時間は2ク
ロック程度となる。
【0064】TSパケットのペイロードがPESヘッダ
とPESペイロードのみの場合、遷移パターン3とし
て、3d0 →3d1 →3d0 →3d2 →3d3 → (3d6 →) 3d7 →
3d0 の順で遷移する。ここで (3d6 →) は、サーチパタ
ーンと一致した場合に発生する。この場合、処理時間は
最大68クロックとなる。
【0065】ほとんどのTSパケットは遷移パターン1
(TSパケットのペイロードが、全てPESペイロード
の場合)で処理される。遷移パターン1ではプリサーチ
による結果を用いることができ、最も時間がかかる「PE
S pyld ptrを用いてサーチ」(3d3 )を実行しなくて良
いため、サーチに要する時間を大幅に短縮することがで
きる。
【0066】かかる解析及びサーチによってTSブロッ
クのローカルヘッダが書き換えられた場合、TSメモリ
制御部31は当該TSブロックをTS[]メモリ32から
外部メモリ9に書き戻す。この書き戻しは外部メモリ9
からのTSブロックの読み込みの直前に行われる。
【0067】図9は動作プログラムのソフトコード処理
の状態遷移を示し、処理の単位を機能別に分けて表して
いる。
【0068】h00 で表わされる「レジスタの初期化」
は、ソフトコード内で使用する汎用レジスタの初期化処
理である。
【0069】h01 で表せられる「PESの開始確認」
は、TSヘッダの payload unit start indicator を検
出することにより、PESの先頭を確認する。
【0070】h02 で表せられる「SEGのインクリメン
ト」は、SEGレジスタ34に1を加算する。SEGレ
ジスタ34はTSパケットを指し示すため、1を加算す
ることで次のTSパケットに移動することを意味する。
【0071】h03 で表せられる「RegA+ の初期化」は、
「abs sum bgn 」をレジスタRegA+にロードする。これ
によりRegA+ はTSパケットの先頭を指し示す。
【0072】h04 で表せられる「PESヘッダ開始」
は、再度「 payload unit start indicator 」を検出し
て、PESの先頭であるかどうかを確認する。
【0073】h05 で表せられる「PESヘッダ長解析」
は、「PES packet length 」や「PTS DTS flag」等を読
み取る。
【0074】h06 で表せられる「PTS解析」は、PT
Sを読み取り保存する。
【0075】h07 で表せられる「DTS解析」は、DT
Sを読み取り保存する。
【0076】h08 で表せられる「 PES pyld ptr 計算」
は、ペイロードの先頭を示すポインタ「 PES pyld ptr
」をPESヘッダ長から計算する。
【0077】h10 で表せられる「サーチ実行」は、後述
するサーチを実行する。
【0078】h11 で表せられる「SEGレジスタチェッ
ク」は、RegA+ によってSEGレジスタ34のインクリ
メントが発生したかどうか確認する。
【0079】h12 で表せられる「Match ptr チェック」
は、「Match ptr 」を確認して、サーチコマンドにより
パターンの一致があったかどうか確認する。
【0080】h13 で表せられる「シーケンス層解析」
は、SHC(Sequence Header Code)が見つかった場合
のシーケンスヘッダ部の解析(Bit Rate Value、VBV Bu
ffer Size Value 等の読み取り) を行う。
【0081】h14 で表せられる「シーケンス・エクステ
ンション層解析」は、ESC(Extension Start Code)
が見つかった場合のシーケンスヘッダ部の解析(Bit Rat
e Extension 、VBV Buffer Size Extension 等の読み取
り) を行う。
【0082】h15 で表せられる「GOP層解析」は、G
SC(Group Start Code)が見つかった場合のGOP層
の解析を行う。
【0083】h16 で表せられる「ピクチャ層解析」は、
PSC(Picture Start Code)が見つかった場合のピク
チャ層の解析を行う。
【0084】h17 で表せられる「シーケンス・エンド・
ピクチャサイズ計算」は、SEC(Sequence end Code
)が見つかった場合の、RegA+ からPESヘッダ長を
差し引いて発生符号量を計算する処理である。
【0085】かくしてデータ解析部20はTSブロック
のペイロード(すなわちPESパケット)を解析し、そ
の結果をTSブロックのローカルヘッダに記入するとと
もに外部メモリ9に出力する。
【0086】図10はデータ解析部20全体の状態遷移
を示し、5h00で表される「休止」は、モジュール内のあ
らゆる動作が停止した状態であり、電源投入後及びハー
ドリセット時はこの状態から始まる。CPU6はこの状
態のとき、各種レジスタの設定及びコマンドの発行を行
う。このレジスタ設定には、TSパケットのエリア、開
始位置、終了位置、外部メモリの作業領域(プログラム
位置、状態退避位置、解析結果の格納位置)、サーチ命
令でサーチするパターンの設定等がある。
【0087】5h01で表せられる「プログラム読み込み」
は、CPU6からのコマンドによってプログラムを外部
メモリ9からロードする。
【0088】5h02で表せられる「TS[]読み込み」は、
CPU6からのコマンドによってSEGレジスタの示す
TSパケットを外部メモリ9からロードする。
【0089】5h10で表せられる「プログラム実行」は、
CPU6からのスタートコマンドによってプログラムカ
ウンタの指し示す位置よりプログラムを実行する。プロ
グラムの実行は「5h00」であらかじめ設定されたTSパ
ケットの終了位置まで、「5h13」「5h12」「5h14」「5h
17」の遷移を繰り返しながら行われる。TSパケットの
終了位置に到達したとき、あるいはCPU6からのスト
ップコマンドにより「5h00」に遷移する。
【0090】5h13で表せられる「自動TS[]書き出し」
は、プログラムコードでTS[]メモリ32にヘッダ等の
書込があった場合に、TS[]メモリ32の内容を外部メ
モリ9に書き戻す。この状態は自動TS[]読み込みの直
前に発生する。
【0091】5h12で表せられる「自動TS[]読み込み」
は、プログラムコードでTS[]メモリ32へのアクセス
がある場合で、次の2つの場合がある。
【0092】すなわち第1の場合として、SEGレジス
タが書き換えられた後にTS[RegA0〜RegA5]のアクセス
があった場合と、第2の場合として、TS[Reg+0] が次
のTSパケットを示す場合(ローカルヘッダの、abs su
m bgn 、abs sum end とRegA+ を比較して判定する)が
ある。TS[]メモリ32への読み込み終了後に、「5h1
0」に遷移する。
【0093】5h14で表せられる「自動RM[]書き出し」
は、RM[]メモリ52が満量になった場合、すなわちレ
ジスタRegC+ が256の整数倍(RM[]メモリ52のサ
イズと等しい)になった場合に、RM[]メモリ52内の
データを外部メモリ9に書き出す。
【0094】5h17で表せられる「パターンサーチ」は、
プログラムコードでサーチコマンドが発生した場合に遷
移し、CPU6であらかじめセットされたサーチパター
ンと一致するものを検出した場合、TSブロックのロー
カルヘッダの所定位置(match ptr0〜match ptr7)に検
出したパターンの末尾アドレスを書き込んだ後、「5h1
0」に遷移する。
【0095】5h04で表せられる「RM[]書き出し」は、
CPU6からのコマンドによって、RM[]メモリ52内
のデータを外部メモリ9に書き出す。
【0096】5h08で表せられる「状態退避」は、CPU
6からのコマンドによって、データ解析部20の各モジ
ュールの全内部状態を、外部メモリ9に退避する。この
状態は、複数のPIDストリームを時分割処理する場合
に用いる。
【0097】5h07で表せられる「退避読み込み」は、C
PU6からのコマンドによって、「5h08」(状態退避)
で退避した状態を外部メモリ9からデータ解析部20の
各モジュールに再び読み戻す。これにより「5h08」で退
避した状態から処理を再開することができる。
【0098】上述の各状態は、以下に示す条件で遷移す
る。
【0099】5h00→5h01、5h00→5h02、5h00→5h03、5h
00→5h04、5h00→5h07、5h00→5h08:いずれもCPU6
からのコマンドにより遷移、状態終了後に5h00に自動遷
移する。
【0100】5h00→5h10:CPU6からのスタートコマ
ンドにより遷移する。
【0101】5h00→5h12:TSブロックに書き込みが無
く、プログラムコードがSEGレジスタ34を書き換え
た後、TS[C] 、TS[RegA0〜RegA5]を「input 」(後
述の機械語コード参照)に指定した場合、又はTS[Reg
A+] を「input 」に指定して、TS[RegA+ ]を含むTS
パケットが外部メモリ9にある場合に遷移する。
【0102】5h10→5h13→5h12:5h10→5h12の条件でT
Sブロックに書き込みがある場合、5h13状態は終了後、
必ず5h12状態に遷移する。
【0103】5h10→5h14:RM[RegC+] を「output」に
指定し、RM[]メモリ52が満量の場合に遷移する。
【0104】5h10→5h17:プログラムコードでサーチコ
マンドを用いたとき、サーチ処理終了後、5h10状態に自
動遷移してプログラム処理を再開する。
【0105】これらの遷移は、(5h00 →5h01→) (5h00
→5h08→) 5h00→5h07→5h00→5h02→5h00→5h10→(5h1
7 →5h10、5h13→5h12→5h10、5h12→5h10、5h14→5h1
0) →5h00→5h14→5h00→5h08→5h00の順で発生する。
【0106】ここで、(5h00 →5h01→) はシステムの起
動時にのみ発生する。また(5h00 →5h08→) は、時分割
処理するPIDストリームの数だけ繰り返し、初期状態
を保存しておく。(5h17 →5h10、5h13→5h12→5h10、5h
12→5h10、5h14→5h10) は順不同で繰り返し発生する。
【0107】ここで、データ解析部20では、レジスタ
33、43、53及びSEGレジスタ34、TSメモリ
[]32、GM[]メモリ42、RM[]メモリ52の内部状
態を、図10について上述した休止状態(5h00) におい
て状態退避部56が外部メモリ9に退避させることがで
きる。
【0108】この場合、図11に示すように、状態退避
部56はデータ解析部20のレジスタ33、43、53
及びSEGレジスタ34、TSメモリ[]32、GM[]メ
モリ42、RM[]メモリ52の各データ領域についてア
ドレスADSxを割り当てることによりアドレスマッピ
ングを行い、当該アドレスマッピングされた各レジスタ
やメモリの状態(データ)を1つの内部メモリと見なす
ようになされている。そして状態退避部56は、CPU
からの命令により、アドレスマッピングされたレジスタ
33、43、53及びSEGレジスタ34、TSメモリ
[]32、GM[]メモリ42、RM[]メモリ52の各デー
タDATAx(すなわちデータ解析部20の内部状態)
をこれらのデータに変化がない休止状態(5h00)において
出力セレクタ59を介して取り込み、CPU6(図1)
から与えられた外部メモリ9の格納先へ格納する。この
格納先は、図6について上述した4つのレジスタ退避エ
リアのうちの、このとき退避させようとするデータが含
まれるPIDストリーム(同じPIDで整理されたスト
リーム(PID1、PID2、PID3又はPID
4))に対応したエリアである。
【0109】このように、ある時刻のデータ解析部20
内の状態を決定するのは保持機能のあるレジスタ33、
43、53及びSEGレジスタ34、TSメモリ[]3
2、GM[]メモリ42、RM[]メモリ52であり、これ
らをアドレスマッピングするとこれらは一種の内部メモ
リと見なし得ることに着目して、当該内部メモリのデー
タに変化がない休止状態においてこれを外部メモリ9に
退避することにより、これら退避したデータに代えて、
他のデータ処理を行うことができる。
【0110】そして、状態退避部56は、CPU6から
の命令に従って、データ解析部20の内部状態に変化が
ない休止状態において、外部メモリ9に退避されている
データ(内部状態)を読み出して、それらを予めアドレ
スマッピングされている格納先(レジスタ33、43、
53及びSEGレジスタ34、TSメモリ[]32、GM
[]メモリ42、RM[]メモリ52)に読み込むことによ
り、退避した際の状態を再現して、当該再現状態からデ
ータ処理を再開することができる。
【0111】かくして、データ解析部20では状態退避
部56による内部状態の外部メモリへの退避及び読み込
み処理により、複数種類のデータ(複数のPIDストリ
ームPID1、PID2、PID3及びPID4)を時
分割で処理(解析処理)することができる。
【0112】ここで、同一PIDによるPIDストリー
ムをさらに複数PIDストリームに亘って多重化してな
るトランスポートストリームは、データ解析部20の入
力処理部3を介して外部メモリ9に格納される。これら
複数のPIDストリームを時分割で解析する場合につい
て説明する。
【0113】データ解析部20は、各PIDストリーム
(PID1、PID2、PID3及びPID4)の処理
プログラムを個別にプログラムメモリ25(図5)に配
置しており、CPU6(図1)は各プログラムの初回ス
タート位置であるプログラムカウンタの初期化値をセッ
トする。またCPU6はPIDストリームの処理順序の
スケジューリングを行うようになされており、この実施
の形態の場合、CPU6は各PIDストリームについ
て、それぞれPIDストリームPID1、PID2、P
ID3及びPID4の順にこれらを時分割で解析するも
のとする。
【0114】すなわち、CPU6は、図12に示すステ
ップSP100から初期化処理に入ると、続くステップ
SP101においてプログラムコードの外部位置(外部
メモリ9におけるアドレス)を指定し、さらに続くステ
ップSP102においてステップSP101によりアド
レス指定されたプログラムを外部メモリ9をプログラム
メモリ25にロードする。
【0115】そして、CPU6は続くステップSP10
3に移り、ストリームに多重化され入力処理部3を介し
て外部メモリ9に入力された各PIDストリーム(PI
D1、PID2、PID3及びPID4)のうちのPI
DストリームPID1の先頭TSブロックについて、そ
の外部メモリ9における格納位置のアドレス及びデータ
の大きさを外部コントロールレジスタ100に設定す
る。そして、当該外部コントロールレジスタ100に設
定されたPIDストリームPID1の先頭ブロックの外
部メモリ9でのアドレス及びそのデータの大きさと、こ
れらの情報(アドレス及びデータの大きさ)を外部メモ
リ9に退避させる際の外部メモリ9の退避先アドレス
(外部メモリ9のレジスタ退避エリアの1つ)を設定す
る。
【0116】そして、CPU6はステップSP104に
移って、ステップSP103において外部コントロール
レジスタ100に設定されたPIDストリームPID1
の先頭TSブロックについての初期設定状態を外部コン
トロールレジスタ100から出力セレクタ59及び状態
退避部56を介して外部メモリ9に退避させる。
【0117】またCPU6は、これに続いてステップS
P105に移り、ストリームに多重化され入力処理部3
を介して外部メモリ9に入力された各PIDストリーム
(PID1、PID2、PID3及びPID4)のうち
のPIDストリームPID2の先頭TSブロックについ
て、その外部メモリ9における格納位置のアドレス及び
データの大きさを外部コントロールレジスタ100に設
定する。そして、当該外部コントロールレジスタ100
に設定されたPIDストリームPID2の先頭ブロック
の外部メモリ9でのアドレス及びそのデータの大きさ
と、これらの情報(アドレス及びデータの大きさ)を外
部メモリ9に退避させる際の外部メモリ9の退避先アド
レス(外部メモリ9のレジスタ退避エリアの1つ)を設
定する。
【0118】そして、CPU6はステップSP106に
移って、ステップSP105において外部コントロール
レジスタ100に設定されたPIDストリームPID2
の先頭TSブロックについての初期設定状態を外部コン
トロールレジスタ100から出力セレクタ59及び状態
退避部56を介して外部メモリ9に退避させる。
【0119】またCPU6は、これに続いてステップS
P107に移り、ストリームに多重化され入力処理部3
を介して外部メモリ9に入力された各PIDストリーム
(PID1、PID2、PID3及びPID4)のうち
のPIDストリームPID3の先頭TSブロックについ
て、その外部メモリ9における格納位置のアドレス及び
データの大きさを外部コントロールレジスタ100に設
定する。そして、当該外部コントロールレジスタ100
に設定されたPIDストリームPID3の先頭ブロック
の外部メモリ9でのアドレス及びそのデータの大きさ
と、これらの情報(アドレス及びデータの大きさ)を外
部メモリ9に退避させる際の外部メモリ9の退避先アド
レス(外部メモリ9のレジスタ退避エリアの1つ)を設
定する。
【0120】そして、CPU6はステップSP108に
移って、ステップSP107において外部コントロール
レジスタ100に設定されたPIDストリームPID3
の先頭TSブロックについての初期設定状態を外部コン
トロールレジスタ100から出力セレクタ59及び状態
退避部56を介して外部メモリ9に退避させる。
【0121】またCPU6は、これに続いてステップS
P109に移り、ストリームに多重化され入力処理部3
を介して外部メモリ9に入力された各PIDストリーム
(PID1、PID2、PID3及びPID4)のうち
のPIDストリームPID4の先頭TSブロックについ
て、その外部メモリ9における格納位置のアドレス及び
データの大きさを外部コントロールレジスタ100に設
定する。そして、当該外部コントロールレジスタ100
に設定されたPIDストリームPID4の先頭ブロック
の外部メモリ9でのアドレス及びそのデータの大きさ
と、これらの情報(アドレス及びデータの大きさ)を外
部メモリ9に退避させる際の外部メモリ9の退避先アド
レス(外部メモリ9のレジスタ退避エリアの1つ)を設
定する。
【0122】そして、CPU6はステップSP110に
移って、ステップSP109において外部コントロール
レジスタ100に設定されたPIDストリームPID4
の先頭TSブロックについての初期設定状態を外部コン
トロールレジスタ100から出力セレクタ59及び状態
退避部56を介して外部メモリ9に退避させる。
【0123】このようにしてCPU6はPIDストリー
ムPID1、PID2、PID3及びPID4について
の初期化処理を完了し、所定のタイミングで解析命令を
データ解析部20に与えることにより、図13に示す解
析処理ステップSP200に入る。
【0124】この解析処理ステップSP200に入る
と、CPU6はステップSP201に移って、外部メモ
リ9に退避させているPIDストリームPID1の初期
化状態を表すデータ(PIDストリームPID1の先頭
TSブロックのアドレス及びデータの大きさ)を読み出
し、これに基づき、続くステップSP202においてP
IDストリームPID1の先頭TSブロックを読み出し
てTS[]メモリ32に格納する。
【0125】そして、CPU6はステップSP203に
移って解析処理を開始し、さらに続くステップSP20
4に移って、図7について上述した方法によりPIDス
トリームPID1のTSブロックについてこれらを順次
外部メモリ9からTS[]メモリ32に読み込みながら、
その内容を解析する。
【0126】そして、CPU6はステップSP205に
移り、所定のタイミングでPIDストリームPID1に
対する解析処理の終了命令を発行する。これによりデー
タ解析部20は解析処理を中断し、休止状態(5h00)に入
る。このとき、CPU6はステップSP206に移っ
て、このときPIDストリームPID1について解析中
である処理内容であるレジスタ33、43、53及びS
EGレジスタ34、TSメモリ[]32、GM[]メモリ4
2、RM[]メモリ52の各データ(図11)を出力セレ
クタ59及び状態退避部56を介して外部メモリ9に退
避させる。この退避先は図6について上述したレジスタ
退避エリアのうちの、PIDストリームPID1に対応
したエリアである。
【0127】このようにしてPIDストリームPID1
についてその解析処理の状態(データ解析部20の内部
状態)が外部メモリ9に退避されると、CPU6はステ
ップSP207に移って、外部メモリ9に退避させてい
るPIDストリームPID2の初期化状態を表すデータ
(PIDストリームPID2の先頭TSブロックのアド
レス及びデータの大きさ)を読み出し、これに基づき、
続くステップSP208においてPIDストリームPI
D2の先頭TSブロックを読み出してTS[]メモリ32
に格納する。
【0128】そして、CPU6はステップSP209に
移って解析処理を開始し、さらに続くステップSP21
0に移って、図7について上述した方法によりPIDス
トリームPID2のTSブロックについてこれらを順次
外部メモリ9からTS[]メモリ32に読み込みながら、
その内容を解析する。
【0129】そして、CPU6はステップSP211に
移り、所定のタイミングでPIDストリームPID2に
対する解析処理の終了命令を発行する。これによりデー
タ解析部20は解析処理を中断し、休止状態(5h00)に入
る。このとき、CPU6はステップSP212に移っ
て、このときPIDストリームPID2について解析中
である処理内容であるレジスタ33、43、53及びS
EGレジスタ34、TSメモリ[]32、GM[]メモリ4
2、RM[]メモリ52の各データ(図11)を出力セレ
クタ59及び状態退避部56を介して外部メモリ9に退
避させる。この退避先は図6について上述したレジスタ
退避エリアのうちの、PIDストリームPID2に対応
したエリアである。
【0130】このようにしてPIDストリームPID2
についてその解析処理の状態(データ解析部20の内部
状態)が外部メモリ9に退避されると、CPU6はステ
ップSP213に移って、外部メモリ9に退避させてい
るPIDストリームPID3の初期化状態を表すデータ
(PIDストリームPID3の先頭TSブロックのアド
レス及びデータの大きさ)を読み出し、これに基づき、
続くステップSP214においてPIDストリームPI
D3の先頭TSブロックを読み出してTS[]メモリ32
に格納する。
【0131】そして、CPU6はステップSP215に
移って解析処理を開始し、さらに続くステップSP21
6に移って、図7について上述した方法によりPIDス
トリームPID3のTSブロックについてこれらを順次
外部メモリ9からTS[]メモリ32に読み込みながら、
その内容を解析する。
【0132】そして、CPU6はステップSP217に
移り、所定のタイミングでPIDストリームPID3に
対する解析処理の終了命令を発行する。これによりデー
タ解析部20は解析処理を中断し、休止状態(5h00)に入
る。このとき、CPU6はステップSP218に移っ
て、このときPIDストリームPID3について解析中
である処理内容であるレジスタ33、43、53及びS
EGレジスタ34、TSメモリ[]32、GM[]メモリ4
2、RM[]メモリ52の各データ(図11)を出力セレ
クタ59及び状態退避部56を介して外部メモリ9に退
避させる。この退避先は図6について上述したレジスタ
退避エリアのうちの、PIDストリームPID3に対応
したエリアである。
【0133】このようにしてPIDストリームPID3
についてその解析処理の状態(データ解析部20の内部
状態)が外部メモリ9に退避されると、CPU6はステ
ップSP219に移って、外部メモリ9に退避させてい
るPIDストリームPID4の初期化状態を表すデータ
(PIDストリームPID4の先頭TSブロックのアド
レス及びデータの大きさ)を読み出し、これに基づき、
続くステップSP220においてPIDストリームPI
D4の先頭TSブロックを読み出してTS[]メモリ32
に格納する。
【0134】そして、CPU6はステップSP221に
移って解析処理を開始し、さらに続くステップSP22
2に移って、図7について上述した方法によりPIDス
トリームPID4のTSブロックについてこれらを順次
外部メモリ9からTS[]メモリ32に読み込みながら、
その内容を解析する。
【0135】そして、CPU6はステップSP223に
移り、所定のタイミングでPIDストリームPID4に
対する解析処理の終了命令を発行する。これによりデー
タ解析部20は解析処理を中断し、休止状態(5h00)に入
る。このとき、CPU6はステップSP224に移っ
て、このときPIDストリームPID4について解析中
である処理内容であるレジスタ33、43、53及びS
EGレジスタ34、TSメモリ[]32、GM[]メモリ4
2、RM[]メモリ52の各データ(図11)を出力セレ
クタ59及び状態退避部56を介して外部メモリ9に退
避させる。この退避先は図6について上述したレジスタ
退避エリアのうちの、PIDストリームPID4に対応
したエリアである。
【0136】このようにしてPIDストリームPID4
についてその解析処理の状態(データ解析部20の内部
状態)が外部メモリ9に退避されると、CPU6はステ
ップSP225に移って、さらにPIDストリームPI
D1、PID2、PID3及びPID4に解析すべきT
Sブロックがある場合には上述のステップSP201に
戻って同様の解析処理を時分割で行う。
【0137】かくしてデータ解析部20では、複数のP
IDストリームに対して、これらを時分割で解析処理す
ることができる。
【0138】以上の構成において、データ解析部20は
内部状態(レジスタ33、43、53及びSEGレジス
タ34、TSメモリ[]32、GM[]メモリ42、RM[]
メモリ52の各データ(図11))をアドレスマッピン
グすることにより、これら内部状態を1つのメモリとし
て見なすことができる。そして、データ処理状態として
レジスタ33、43、53及びSEGレジスタ34、T
Sメモリ[]32、GM[]メモリ42、RM[]メモリ52
等の各データが変化しない休止状態(5h00)を設定し、当
該休止状態において各データ(データ解析部20の内部
状態)を状態退避部56により外部メモリ9に格納する
ことにより、データ解析を行っている状態を中断して
も、その状態を外部メモリ9に保存することができる。
従って、当該外部メモリ9に保存された状態を再び読み
出してデータ解析部20において再現するこができる。
【0139】従って、例えば多重化された状態でデータ
解析部20に入力される複数のPIDストリームについ
て、それぞれデータ解析処理及び状態退避を繰り返すこ
とにより、これら複数のPIDストリームについて時分
割でデータ解析処理を行うことができる。
【0140】このように時分割でデータ解析処理を行う
ようにしたことにより、データ解析処理部20を複数設
ける必要がなく、また、CPU6の処理能力として1つ
のPIDストリームを解析する能力を持たせるだけで複
数のPIDストリームのデータ解析処理を実行すること
ができる。
【0141】従って以上の構成によれば、データ解析部
20の内部状態を退避させることにより、回路規模の増
大及びCPU6の能力向上を図ることなく複数PIDス
トリームの解析処理を行うことができる。
【0142】なお上述の実施の形態においては、4つの
PIDストリームをデータ処理する場合について述べた
が、本発明はこれに限らず、種々の数のストリームを処
理する場合においても本発明を適用することができる。
【0143】また上述の実施の形態においては、複数P
IDストリームを処理する場合について述べたが、本発
明はこれに限らず、他の種々の複数種データを処理する
場合に広く適用することができる。
【0144】また上述の実施の形態においては、データ
解析処理を行う場合に複数のストリームを処理する場合
について述べたが、本発明はこれに限らず、他の種々の
データ処理を行う装置に本発明を適用することができ
る。
【0145】
【発明の効果】上述のように本発明によれば、処理対象
であるデータを入力手段によって所定のデータ保持手段
に入力した後、データ保持手段に保持されたデータに対
して所定のデータ処理を施す際に、データ保持手段の保
持データにアドレスを割り当て、アドレスが割り当てら
れたデータ保持手段の保持データを外部記憶手段に退避
させ、外部記憶手段に退避させた保持データを必要に応
じて上記データ保持手段に読み出すことにより、外部記
憶手段に退避した保持データを上記保持手段に再現する
ことができ、複数種類のデータを時分割で上記データ保
持手段に保持させデータ処理を施すことができる。
【0146】従って、複数種類のデータに対してデータ
処理を施すにつき、構成の煩雑化を回避することができ
る。
【図面の簡単な説明】
【図1】スプライシング装置の構成を示すブロック図で
ある。
【図2】TSパケットのPID別整理の状態を示す略線
図である。
【図3】TSブロックのデータフォーマットを示す略線
図である。
【図4】PESパケットの分割状態を示す略線図であ
る。
【図5】本発明の一実施の形態によるデータ解析部の構
成を示すブロック図である。
【図6】外部メモリの使用領域を示す略線図である。
【図7】TSメモリ制御部の構成を示すブロック図であ
る。
【図8】サーチ部の状態遷移を示す略線図である。
【図9】プログラムコードの状態遷移を示す略線図であ
る。
【図10】データ解析部の状態遷移を示す略線図であ
る。
【図11】アドレスマッピングの説明に供する略線図で
ある。
【図12】初期化処理手順を示すフローチャートであ
る。
【図13】解析処理手順を示すフローチャートである。
【符号の説明】
1……スプライシング装置、2……ホストコンピュー
タ、3……入力処理部、4……データ処理部、5……出
力処理部、6……CPU、7……データバス、8……ホ
ストバス、9……外部メモリ、10……インターフェー
ス部、20……データ解析部、22……演算器、23…
…ジャンプ先判定部、24……プログラムカウンタ、2
5……プログラムメモリ、26……プログラムデコー
ダ、27A、27B……演算器入力セレクタ、28……
書込パルス発生部、31……TSメモリ制御部、32…
…TS[]メモリ、33……レジスタA、34……SEG
レジスタ、41……GMメモリ制御部、42……GM[]
メモリ、43……レジスタB、41……RMメモリ制御
部、42……RM[]メモリ、53……レジスタC、56
……状態退避部、57……外部メモリ制御部、58……
入力セレクタ、59……出力セレクタ、60……サーチ
部。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK10 MA00 RB09 RB10 RB12 SS26 5C078 AA04 BA57 CA25 CA27 DA00 DA01 5K028 AA06 KK01 KK32 MM08 SS23 SS24

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】処理対象であるデータを入力手段によって
    所定のデータ保持手段に入力した後、上記データ保持手
    段に保持された上記データに対して所定のデータ処理を
    施すデータ処理装置において、 上記データ保持手段の保持データにアドレスを割り当て
    るアドレス割り当て手段と、 上記アドレスが割り当てられた上記データ保持手段の保
    持データを外部記憶手段に退避させる保持データ退避手
    段と、 上記外部記憶手段に退避させた上記保持データを必要に
    応じて上記データ保持手段に読み出すことにより、上記
    外部記憶手段に退避した上記保持データを上記保持手段
    に再現する退避データ再現手段とを具えることを特徴と
    するデータ処理装置。
  2. 【請求項2】上記データ処理装置は、 上記データ保持手段に保持された第1のデータを上記保
    持データ退避手段により上記外部記憶手段に退避させた
    後、上記入力手段又は上記退避データ再現手段により上
    記データ保持手段に第2のデータを保持させ、当該保持
    された第2のデータに対して上記データ処理を施すこと
    により、上記第1のデータ及び上記第2のデータを時分
    割で処理する制御手段を具えることを特徴とする請求項
    1に記載のデータ処理装置。
  3. 【請求項3】処理対象であるデータを入力手段によって
    所定のデータ保持手段に入力した後、上記データ保持手
    段に保持された上記データに対して所定のデータ処理を
    施すデータ処理方法において、 上記データ保持手段の保持データにアドレスを割り当
    て、 上記アドレスが割り当てられた上記データ保持手段の保
    持データを外部記憶手段に退避させ、 上記外部記憶手段に退避させた上記保持データを必要に
    応じて上記データ保持手段に読み出すことにより、上記
    外部記憶手段に退避した上記保持データを上記保持手段
    に再現することを特徴とするデータ処理方法。
  4. 【請求項4】上記データ処理方法は、 上記データ保持手段に保持された第1のデータを上記保
    持データ退避手段により上記外部記憶手段に退避させた
    後、上記入力手段又は上記退避データ再現手段により上
    記データ保持手段に第2のデータを保持させ、当該保持
    された第2のデータに対して上記データ処理を施すこと
    により、上記第1のデータ及び上記第2のデータに対し
    て時分割で上記データ処理を施すことを特徴とする請求
    項3に記載のデータ処理方法。
JP11014599A 1999-04-16 1999-04-16 データ処理装置及びデータ処理方法 Pending JP2000307533A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11014599A JP2000307533A (ja) 1999-04-16 1999-04-16 データ処理装置及びデータ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11014599A JP2000307533A (ja) 1999-04-16 1999-04-16 データ処理装置及びデータ処理方法

Publications (1)

Publication Number Publication Date
JP2000307533A true JP2000307533A (ja) 2000-11-02

Family

ID=14528195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11014599A Pending JP2000307533A (ja) 1999-04-16 1999-04-16 データ処理装置及びデータ処理方法

Country Status (1)

Country Link
JP (1) JP2000307533A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9143627B2 (en) 2007-04-02 2015-09-22 Felica Networks, Inc. Information processing terminal, data transfer method, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9143627B2 (en) 2007-04-02 2015-09-22 Felica Networks, Inc. Information processing terminal, data transfer method, and program

Similar Documents

Publication Publication Date Title
US5812201A (en) Data synchronizing apparatus and method thereof
JP4201975B2 (ja) デジタルトランスポートストリーム処理
US20150363161A1 (en) Method and apparatus for audio synchronization
US5719998A (en) Partitioned decompression of audio data using audio decoder engine for computationally intensive processing
JP2818249B2 (ja) 電子計算機
EP1628213A2 (en) VLIW processor
US6453424B1 (en) System and method for temporally controlling instruction execution
KR19980032149A (ko) 엠펙 프레젠테이션 시스템에 있어서 오디오 및 비디오 프레임들을 동기화시키기 위한 장치 및 방법
JP2007124495A (ja) ストリームデータ処理装置
JP2003296103A (ja) 結果が分散される並列サブワード命令
US7991982B2 (en) Microcomputer and encoding system for executing peripheral function instructions
JP2000307533A (ja) データ処理装置及びデータ処理方法
US7433411B2 (en) Receiver, CPU and decoder with improved signal decoding
KR101497346B1 (ko) 명령으로서 데이터 값을 평가하기 위한 시스템 및 방법
US6011869A (en) Method and apparatus of decoding moving image
US5960401A (en) Method for exponent processing in an audio decoding system
US8369456B2 (en) Data processing apparatus and method and encoding device
JP2000307643A (ja) データ解析装置及びデータ解析方法
US7010677B2 (en) Data processor speeding up repeat processing by inhibiting remaining instructions after a break in a repeat block
JP2000307642A (ja) データ解析装置及びデータ解析方法
JP2000307644A (ja) データ解析装置及びデータ解析方法
Bouillard et al. Lightweight modeling of complex state dependencies in stream processing systems
JP5335294B2 (ja) 動画像処理システム、動画像処理方法、プログラム及び記憶媒体
JPH0772863B2 (ja) プログラムカウンタ相対アドレス計算方式
US8694697B1 (en) Rescindable instruction dispatcher