CN1092451C - 多路分解设备 - Google Patents
多路分解设备 Download PDFInfo
- Publication number
- CN1092451C CN1092451C CN96123944A CN96123944A CN1092451C CN 1092451 C CN1092451 C CN 1092451C CN 96123944 A CN96123944 A CN 96123944A CN 96123944 A CN96123944 A CN 96123944A CN 1092451 C CN1092451 C CN 1092451C
- Authority
- CN
- China
- Prior art keywords
- data
- processor
- stream
- byte
- information
- 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
Links
- 238000012546 transfer Methods 0.000 claims description 11
- 230000000052 comparative effect Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 22
- 238000006243 chemical reaction Methods 0.000 description 21
- 238000013481 data capture Methods 0.000 description 18
- 238000012216 screening Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 9
- 101100328887 Caenorhabditis elegans col-34 gene Proteins 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000003139 buffering effect Effects 0.000 description 6
- 230000000284 resting effect Effects 0.000 description 6
- 230000003068 static effect Effects 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 3
- 101000609957 Homo sapiens PTB-containing, cubilin and LRP1-interacting protein Proteins 0.000 description 2
- 102100039157 PTB-containing, cubilin and LRP1-interacting protein Human genes 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
- H04N7/52—Systems for transmission of a pulse code modulated video signal with one or more other pulse code modulated signals, e.g. an audio signal or a synchronizing signal
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Television Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明目的是提供一种多路分解设备。该设备的特征在于,它包括用于存储多路复用数据流(4)的数据的装置,用于存储数据筛选程序(8)的可编程装置,多路复用数据流的数据与数据筛选程序之间的比较装置(7),和用于相对于比较模式把多路复用数据流的数据转移到存储装置(5)中的装置(12)。本发明特别应用于数字电视接收领域。
Description
技术领域
本发明涉及一种多路分解设备。它特别应用于数字电视领域。
背景技术
数字信号发送装置需要分析它们内容的接收电路,以确定是否所发送的数据对一种给定的应用是有意义的。例如,这是以MPEG2形式压缩的数字电视系统的情况。在这类系统中,大量的信道可以被多路复用。各信道中的数据包括也必须被分析的若干层。
最理想的是使用灵活的多路分解设备。
发明内容
本发明的目的是提供一种多路分解设备,其特征是它包括:用于存储多路复用数据流的数据的装置,用于存储数据筛选程序的可编程装置,多路复用数据流的数据与数据筛选程序之间的比较装置,和转移多路复用数据流的数据到与所作比较有关的存储装置的装置。
按照实现本发明的一种特有方式,根据本发明的设备至少进一步包括根据多路复用数据流中分层数据中的一层构成的一个状态机。
按照实现本发明的一种特有方式,存储数据筛选程序的可编程装置包括一个含有对于响应于该状态机的层的各状态机筛选程序值的存储器。
按照实现本发明的一种特有方式,所述的层是MPEG2传输层,筛选程序值至少含有下述类型之一:PID,连续计数器,同步比特。
按照实现本发明的一种特有方式,连续计数器的筛选程序值相应于在多路复用数据流中期望的下一个值。
按照实现本发明的一种特有方式,所述的层是MPEG2分组层,筛选程序值至少含有下述类型之一:表标识,分组指针的开始,分组长度。
按照实现本发明的一种特有方式,所述的层是MPEG2基本流数据包层,该筛选程序值包含数据流标识。
按照实现本发明的一种特有方式,所述的设备进一步包括一个多路复用器,其输入端之一被连接到用于存储多路复用数据流数据的装置的输出端,其第二个输入端被连接到解密器的输出端,解密器的输入端也被连接到用于存储多路复用数据流数据的装置的输出端,该多路复用器由一个或多个状态机控制。
本发明的目的还是提供一种数字电视解码器,其特征在于,它包括上述多路分解设备。
本发明的其它优点和特征将通过由附图说明的特定的、非限定示范实施例的描述而被揭示。
附图说明
图1表示在数字电视接收系统中按照本发明的多路分解器的方框图,
图2是图1中多路分解器传输处理器TP的状态图,
图3是图1中多路分解器基本数据流信息包处理器PES的状态图,
图4是图1中多路分解器分组处理器SEC的状态图,和
图5是图1中多路分解器传输处理器XFER的状态图。
具体实施方式
在下面,当认为必须解释清楚的时候,粗体或在括号和引号之间的术语根据MPEG2规范给出名称。
涉及“基本数据流”的数据在PES(“包化的基本数据流”)信息包中被传送。各PES包括数据流标识(“data_stream_id”)。各基本数据流(音频,视频或其它)相应于节目部分。相同节目的基本数据流为发送而被多路复用。附加层,即传送层,被用于该发送。传送信息包包括一个信息包标识(PID表示)。各PID与基本数据流之间的关系用真值表的方式被建立。这些真值表形成了节目说明信息(“PSI”)部分,它也以分组的形式在传送信息包中被传送。一个分组或PES的大小可以大于传送信息包的有效负载。
参考MPEG2:ISO/IEC 13818标准,更具体地说,第一部分“系统”,一一提供了数据结构和格式的全部详细内容。
图1是按照本实施例的多路分解器的方框图。该多路分解器包括两部分:数据处理部分1和连接到应用和外设的转换部分2。
数据处理部分接收来自连接到一个调谐器(未示出)的解调与纠错电路3的多路复用数据流。按照本发明的实施例,提取相应于九个目标PID的九个传送信息包。
数据处理部分使用传送信息包和PES的首部及标志去存取有用的数据。某些字段经转换部分2被送给解码器用作缓冲器的静态RAM 5。如果有用的数据被加密,那么在处理之前,它们首先被全部送到解密电路6。
在处理部分和加密部分之间的FIFO存储器允许这两部分以不同速度去操作。
多路复用数据流被存储在一个异步数据捕获RAM 4中,并且在需要时被读出。
一般使用两步去分析RAM 4中存储的数据:第一步,读这个RAM中的一个八比特字节,然后是比较器7的比较步骤,与存储在目标存储器8中一个字节比较。不是存储在RAM 4中的所有字节都被比较,该比较仅对于该操作所必须的字节进行。该处理部分决定哪些字节要比较,并且根据比较的结果决定一个拒绝传送信息包或转移有用的数据给转换部分。
比较仅对于需要时已被解密的字节进行。多路复用器19选择数据捕获RAM 4和解密器6的输出。多路复用器19的输出被连接到比较器7的两个输入端之一。该比较器的另一输入端被连接到目标存储器8的输出端。在进行比较时比较器也计及来自该目标存储器的四个屏蔽位。
数据捕获RAM 4的读由处理器(TP,PES和SEC,9,10和11)之一开始。这种RAM构成为一个FIFO增加堆栈。
微控制器μC(13)控制目标RAM 8并且装载在传送信息包中找到的预定目标字节。
经该RAM控制器处理器9至12控制在目标RAM中字节的读出。
为了各个比较,来自RAM 8的一个字节与来自数据捕获RAM 4的一个字节被发送到比较器7。比较的结果被发送给在比较为正时已经以“1”比特形式启动的处理器。
在本实施例中使用了四个处理器:
(a)处理器TP(9)管理与传送层有关的字节,
(b)处理器PES(10)管理与基本数据流信息包层有关的字节,
(c)处理器SEC(11)管理与分组层有关的字节,
(d)处理器XFER(12)管理到转换部分的有用数据的转移。
处理器9至12各包括一个状态机,以及“与”/“或”计数器寄存器。在一个给定的时刻只有一个处理器起作用。在其作用阶段,处理器通常进行上述的读和比较步骤,然后在其停用之前启动另一处理器。这些层和在传送信息包中收到的数据字节决定这些处理器的启用和操作顺序。
当一个处理器被启用时,开始处理在数据捕获RAM 4中的下一个可用的数字字节。与读入由各处理器特别保留的指针值指示的目标RAM的字节的下一比较将进行。
简单地说,当一个处理器必须转移数据到交换部分的时候,在其停用之前它启动处理器XFER 12。
多路复用器19由处理器TP或处理器PES控制。这取决于加密被执行的电平(传送信息包或基本数据流信息包)。
解码器20管理从微控制器或处理器之一来的用于目标存储器的地址解码。在微控制器需要访问他们时,它还管理处理器寄存器地址的解码。
该解码器还包括对于各基本数据流存储例如data_stream_id(数据流标识)和data_stream_type(数据流类型)参数的多个寄存器。涉及在一给定时刻处理的数据流的所有信息可以由该解码器供该电路的其它部分用(这个数据流就是通常所说的data_stream_id参数,它还将在后边涉及的传送处理器TP中遇到)。
下面将更详细地说明不同的处理器。
多路分解器的转换部分从处理分组接收多路复用的数据,以及一个数据流标识(data_stream_id)。
按照实现本发明的一种特有方式,引入缓冲模式,转换部分控制在静态RAM 5中的几个缓冲区,这些缓冲区已由微控制器13分配。该转换部分在相应于该数据流标识的适当的缓冲区中存储收到的数据。
几个接口17,18处理在静态RAM 5,微控制器和外部应用15(音频解压器,视频解压器,电传等)和16(用于存取控制和服务付费的灵巧卡)。各应用在为其保留的缓冲区中读涉及它的数据。
序列控制器22和数据缓冲器23分别控制对于静态存储器5访问的顺序及在该存储器中缓冲区的寻址。
更具体地说,微控制器接口17在存储器5,灵巧卡接口,微控制器和各应用之间转换地址总线和数据总线。
下面具体描述的部分涉及目标存储器。
根据本发明的例子,该目标存储器是一个128×12比特的随机存取存储器。它被用于存储筛选字节。每个字节具有允许在比较期间屏蔽该字节的一定比特的屏蔽的4个比特。8比特用于比较及4比特用于屏蔽的12比特被存储在存储器8的各地址并且由比较器7并行使用。得到的16可选择比特被预先规定并存储于比较器7中。
处理器TP,PES和SEC使用用于筛选的目标存储器。各处理器使用目标存储器的一个可编程部分。
目标存储器(地址0)的第一字节相应于PES信息包及相应于处理器PES。该字节识别数据流(“stream_id”)的类型。
相应于处理器TP的部分的地址数取决于要被筛选的多个标识PID的数目。对于具有13比特长的PID,需要两个字节,每个PID相应于两个地址。因此,每个PID存储来自连续计数器(ECC)的期望值。在后一种情况下,需要给它加上同步字节,这对于所有传送信息包是相同的,并且从归因于处理器TP的存储器部分开始,被顺序地仅存储一次。
因此该第二部分的地址号是:
(要被筛选的PID数据×3)+1
该第二部分的构成是:
同步字节
PID H数据流#0
[PID H数据流#1]
[PID H数据流#2]
……
[PID H数据流#n]
PID L数据流#0
……
[PID L数据流#n]
ECC数据流#0
……
[ECC数据流#0]
按照本实施例,n总是小于9。
关于为分组处理器SEC保留的目标存储器部分,保留的地址数也是PID数的函数。该存储器包括象存在的目标数据流那么多的“分组/数据流”字段。各字段具有它自己的开始地址(section_TR_start_address)。
各字段的第一字节是零:它提供分组指针开始(“pointer_field”)是零的验证。
接着的字节相应于表的标识(“table_id”)。一定量的表可以由用户定义;标识的号是可改变的,并且等于各字段的filter_nb(筛选程序_nb)。
然后来一个将与分组长度的高半字节比较的零半字节,以便证实是否该分组溢出传送信息包。
各字段的后部分包括一定数量(filter_nb)的长度filter_length的字节组,它们要与同样数量的信息包字节比较。对于各信息包字节要被比较的数是felter_nb。
分组指针的开始
table_id(表标识)#0
[table_id#1]
……
[table_id#(n-1)]
分组长度的高半字节
地址#0,0
[地址#0,1]
……
[地址#0,(n-1)]
……
[地址#1,0]
[地址#1,1]
……
[地址#(filter_length-1),(filter_nb-1)]
各字段中字节的总数是:
filter_nb。(filter_length+1)+2
表1示出了对于九个PID的目标存储器结构的一个例子,以及对于两个不同table_id和两组16比特字节的分组筛选例子(亦即filter_nb=2和filter_length=2)。
表1
存储器地址 | 屏蔽 | 存储器数据 | 处理器使用 | 备注 |
0 | 0 | BF | PES | 专用流2 |
1 | 0 | 47 | TP | 同步字节 |
2 | 3 | PID0的5MSB | TP | |
3 | 3 | PID1的5MSB | TP | |
… | … | |||
A | 3 | PID8的5MSB | TP | |
B | 0 | PID8的8LSB | TP | |
C | 0 | PID1的8LSB | TP | |
… | … | |||
13 | 0 | PID8的8LSB | TP | |
14 | F | TP | 数据流0的ECC,完成屏蔽,由TP更新 | |
… | … | |||
1C | F | TP | 数据流8的ECC,完成屏蔽,由TP更新 | |
1D | 0 | 00 | SEC | 第一分组/流的分组指针开始 |
1E | du | 由用户(du)定义 | SEC | 搜索表标识(table_id#0)的第一值 |
1F | du | SEC | 搜索表标识(table_id#0)的第二值 | |
20 | 4 | 0 | SEC | 分组长度的半字节 |
21 | du | SEC | 第一组的第一字节 | |
22 | du | SEC | 第二组的第一字节 | |
23 | du | SEC | 第一组的第二字节 | |
24 | du | SEC | 第二组的第二字节 | |
25 | 0 | 00 | SEC | 第二分组/流的分组指针的开始 |
26 | du | SEC | 搜索表标识(table_id#0)的第一值 |
例如,如果一个分组的适当的字节等于表2栏中之一的内容,则比较为正,表2为:
表2
第一筛选程序/TR地址 | 第二筛选程序/TR地址 | |
表标识 | 地址1E | 地址1F |
分组长度高 | ||
分组长度低 | ||
地址#0 | 地址21 | 地址22 |
地址#1 | 地址23 | 地址24 |
这些数据通常由微控制器13写入目标存储器8。该文中一种值得注意的特殊情况是连续计数器,它由微处理器TP(9)写入。
为了写入目标存储器,微控制器使用称为trp的一个指针。这些处理器能够通过对指针trp偏程存取感性趣的数据。
相应于对于给定的基本数据流从多路复用数据流中提取的最后传送信息包,来自连续计数器ECC的等候值被存储在目标存储器的适当地址中。该值相应于从最后筛选传送信息包中提取的,逐一增加的连续计数值,ECC使用在与具有同一PID的下一个传送信息包的连续计数器比较期间。
假定未定义ECC的第一值,在由微控制器写入目标存储器期间,开始通过选择适当的比特屏蔽结构它被全部屏蔽。当ECC的第一有效值被写入时,这些屏蔽比特也被改写。
目标存储器的控制器14在对于该存储器访问的请求之间进行多路复用。这些请求可以来自微控制器和处理器。
下面的描述部分涉及传送层处理器。
处理器TP是对于所有传送信息包有效的第一处理器。
按照本实施例,由该处理器读和处理的字节如下:
(a) sync_byte(同步字节) 8比特
(b) transport_error_indicator(传送误差指示符) 1比特
payload_unit_start_indicator(有效负载单元起始指示符)1比特
transport_priority(传送优先级) 1比特
PID_H 5比特
(c) PID_L 8比特
(d) transport_scrambling_control(传送加密控制) 2比特
adaptation_field_control(自适应字段控制) 2比特
continuity_counter(连续计数器) 4比特
所有这些目标位置相应于MPEG2术语。这些数据被逐字节地读出。某些像传送优先级这样的变量没被考虑,但是像属于包括要被处理的变量的字节一样被读出。
根据本实施例,多达九个数据流能被提取。例如,这些数据流为:
-程序关联表流(具有PID#1的信息包)
-条件访问表流(具有PID#2的信息包)
-程序分配分组流
-视频流
-音频流
-图文电视流
-访问管理消息流的权利(EMM)
-访问检查消息流的权利(ECM)
-程序引导流
这九个PID值未由多路分解器特别分配。该微控制器通过把PID装载到目标存储器选择这些数据流。只有由这九个PID之一识别的传送信息包被进行处理。
微控制器分配给各数据流可以采用音频,视频,分组等值之一的一种流(流类型)。
图2是处理器TP状态机的状态图。粗体指示的状态(w_first_TP)对于其余描述被认为是该状态机的初始状态。当期待一个新的信息包时,处理器TP等待来自数据捕获存储器的信号,指示后者准备好被读(w_TP,状态,ar_rdyl信号)。此时跟着三个涉及物理执行和数据捕获存储器读及写定时器比率的等待状态。
如果同步字节sync_byte是错误的(即,不同于0×47),则该信息包被拒绝(sync_m状态),并且返回初始状态。
如果transport_error_indicator标志为“1”,表示传送信息包数据至少包括一个不可撤消错误,那么处理器TP同样拒绝该信息包(1ikewise sync_mstate,TP_error condition)。
处理器TP把九个PID的高(H)和低(L)比特与存于目标存储器8中的九个目标PID比较。首先与九个高字节进行比较,然后与九个低字节比较。该处理器TP的九比特寄存器DSid_reg存入该结果,称作数据流标识(datd_stream_id)。“1”比特表示在所处理信息包的PID与目标PID中的一个之间有相符合的。该比特的位置表示所涉及的一个特定PID。
如果寄存器的比特不为“1”,则拒绝传送信息包。这种测试在cc_trp状态被进行,它是表示已筛选PID的所期望连续计数器ECC地址的目标存储器指针的计算状态。如果这个地址无效,该错误被识别(no_ds)。
该处理器TP证实对于对应于给定PID的信息包来说,连续计数器continuity_counter确实等于所期望的值ECC。为此,它等待由比较器7(wait_cc_match state)进行比较的结果。然后它写新的所期望的ECC值。
接着是证实级check_1(检查_1)。预计有多种情况:
(a)如果在该信息包中存在有效负载(相应于PES或分组的有效负载)及连续计数器有正确的值,则处理器PES或处理器SEC被启动(call_next_fsmstate)。它是payload_unit_start_indicator标志,该标志表示在传送信息包的有效负载中存在PES或一分组的开始。这个标志被存储在寄存器start_indic_reg中。
(b)如果该信息组包括视频类基本流,但在信息组的连续中有错误(连续计数器与所期望值不同),则一定数目的错误字节被插入该有效负载,并被转移到转换部分(error_state,e_x和call_xfer状态)。转换部分在静态RAM的适当缓冲区中存储这些字节。准备用作有效负载的视频解码器识别该字节结构并处理该数据。
(c)如果adaptation_field_control对指示在传送信息包中出现自适应字段,则处理器TP启动处理器XFER从这一字段向转换部分转移这些字节。
(d)如果连续计数器没有正确的值,并且该流为分组类型,则信息包被拒绝。
在处理器XFER启动阶段期间,处理器TP处于休眠状态,等着由处理器XFER激活。如果传送信息包除了自适应字段外还包括一个有效负载,而且连续计数器具有正确的值,处理器TP激活处理器SEC或PES之一(check_2,然后call_next_fsm state)。
相反,处理器TP仅对于接着的传送信息包(check_2状态)被激活。
当处理器SEC或PES之一已被启动时,处理器TP进入休眠状态,并等待被这些处理器激活。
transport_scrambling_control对表示是否和以什么方式来加密传送信息包的有效负载。处理器TP使用这些比特去构成解密器6和控制多路复用器19。
为了拒绝传送信息包,处理器TP简单地通过等待与新信息包的到达一致的再初始化信号使其自己不活动。
处理器TP有三个寄存器。第一寄存器(DS_count_reg)包括要被提取的不同信息包的最大数,并由微控制器控制;第二个(TP_count_reg)由处理器TP使用作为循环索引(读入数据捕获存储器的每个字节要作的比较数目)。第三寄存器已经被提及了。
下面的描述部分涉及基本流信息包处理器PES。
根据本发明的实施例,该处理器包括一个状态机(图3中所示),以及九个各两比特的寄存器。它由两个处理器TP或XFER之一激活。
下面的字节由处理器PES读出。只有注有星号的数据实际上被该处理器测试。在比较期间,其它数据被屏蔽,此外,这也是利用其它处理器的情况。然而,PES的整个首部被存储,以便被转移到转换部分。
(a,b,c)packet_start_code_prefix 24比特
(d) stream_id* 8比特
(e) PES_packet_length_high 8比特
(f) PES_packet_length_low 8比特
(g) “10” 2比特
PES_scrambling_control* 2比特
PES_priority 1比特
data_alignment_indicator 1比特
copyright 1比特
original_or_copy 1比特
(h) PTS_DTS_flags 2比特
ESCR_flags 1比特
ES_rate_flags 1比特
DSM_trick_mode_flag 1比特
additional_copy_info_flag 1比特
PES_CRC_flag 1比特
PES_extension_flag 1比特
首先,处理器PES处于休眠状态。它由一个来自处理器TP或XFER之一的唤醒_总线(PES)信号激活。然后该处理器等待数据捕获存储器准备好读出当前传送信息包(W_PES状态和ar_rdy信号)的下一字节。对于处理器TP,一定数量的等待状态需要同步数据捕获存储器和处理器PES。后者读出相应于packet_start_code_prefix(scx_m状态)的三个字节a,b和c,然后是流标识字节stream_id(sid_ml状态)。如果该流是一个专用流(参见MPEG2系统文件的表2-10),则处理器XFER被激活(call_xfer状态)以便转移PES信息包的有效负载到转换部分。在本实施例中,假设这些专用流完全由相应的应用设备维护,并且他们不需要由解密器6来解密。
在相反的情况下,e和f字节被读出,然后是字节g(加密状态),从它们导出PES_scrambling_control对,表示PES信息包有效负载的加密。如前所述,这些比特被用于控制解密器6和多路复用器19。给出PES信息包的加密有效负载能够被分布在几个传送信息包中,但是只有第一个传送信息包包括PES_scrambling_control对,这些比特被存储在一个两比特寄存器中。处理器PES包括每流一个的寄存器,也就是说在这个实施例中是九个。这些寄存器由随后的PES信息包的首部来更新。
在读和处理了g字节之后,该处理器读h字节。这个字节包括一定数量的标志。根据结合多路分解器的解码器的容量,这些标志可以在此时被设置为与这些装置兼容的值。
两个接着的状态的用途是转移PES信息包的首部到转换部分。在此期间,处理器PES被置为休眠状态。当转移被完成时,该处理器PES由处理器XFER重新激活。然后处理器PES象前面所述的那样开始PES信息包有效负载的转移(call_xfer state)。
一旦这一转移开始,处理器PES就进入休眠模式。
下面的说明部分涉及分组处理器SEC。
指定处理分组层数据的处理器SEC包括一个状态机(示于图4)和四个寄存器,它由处理器TP或XFER之一去激活。由该处理器读的字节如下:
(a) table_id(表标识) 8比特
(b) section_syntax_indicator(分组句法指示符) 1比特
private_indicator(专用指示符) 1比特
reserved(保留的) 2比特
section_length(分组长度)(高半字节) 4比特
(c) section_length(分组长度)(低字节) 8比特
(d) 与预定组比较的第一字节 8比特
(e) 与预定组比较的第二字节 8比特
……
(……)与预定组比较的最后字节 8比特
(……)有效负载 N×8比特
开始状态是休眠状态。当处理器SEC被激活时,能引起两种情况:
-当前传送信息包的有效负载包括在其开始时分组的起始,
-传送信息包的有效负载包括分组的一些字节,该分组的起始已在前一传送信息包中被发送。
在第一种情况中,该状态改变到等待状态w_sec,只要表示数据捕获存储器准备好和至少包括6个字节的信号ar_rdy还没有到达处理器SEC就一直保持该状态。
在第一种情况中,处理器SEC指向目标存储器的分组/流字段。这个指针由各授权PID的微控制器确定,并存储在由该处理器读的寄存器中。
具有与传送信息包分组字节比较、筛选几个参数(EMM:ECM,程序分配,等)的几个预定字节组的各分组/流字段能够对于各流实现。
在分组开始从数据捕获存储器读出的第一字节是表标识字节table_id。它与相应于目标存储器的filter_nb字节比较。它由围绕F1_loop状态的环表示。
要读的第二和第三字节是分组长度字节。在本发明实施例中,只进行与分组长度低字节的高半字节的比较,以检查是否该分组超出了当前传送信息包的范围。
然后这些分组字节与存储于目标存储器中的预定字节比较(F2_loop和相应环的状态)。在与这些组之一的字节比较期间,寄存器(filter_reg)的一比特由该处理器对于各肯定比较置于1。如果该分组占用了多于一个信息包,这个信息从传送信息包到传送信息包保持不变,以便将整个分组转移到转换部分。
当预定字节组之一在一个分组中被检测时,一旦筛选结束,该分组就被转移到转换部分(call_next_fsm状态)。如果一个分组的结尾已经被转移,那么产生一个中断信号向该微控制器指示整个分组已被存储在SRAM中及它在那里是有效的。
如果与一组字节的比较未提供肯定的结果,那么该分组被拒绝,并且控制器返回到处理器TP。
在第二种情况中,当一个分组已经开始时,处理器SEC被激活。然后该处理器分析寄存器suspend_reg,以确定在传送信息包有效负载开始出现的分组结尾是否相应于其比较已为肯定的分组。在这种情况下,转移处理器被调用(call_next_fsm状态)。在肯定的情况下,处理器SEC计算相应于在同一传送信息包中的下一分组的开始的指针(w_ptr)。然后该系统返回筛选/比较循环(w_SEC状态)。
处理器SEC有四个寄存器。第一寄存器(SEC count_reg)用作在关于状态机描述的两个环路中的索引。第二寄存器(filter_reg)用于存储比较的结果。这个寄存器包括filter_nb比特,各比特表示对于几组预定字节之一比较的结果。第三寄存器(suspend_reg)存储对于各流的筛选结果,占用几个信息包的一个分组的内容对此可以被转移到转换部分。分组中断的结尾也由这个寄存器产生。最后一个寄存器(SEC_length_reg)被用于计算分组的长度。
在本实施例中,要被比较的相同分组的全部字节被假设在同一传送信息包中发送。分组中的其它字节可以分布在其它传送信息包中。
下面的说明部分特别涉及转移处理器XFER。
转移处理器XFER由有数据要被转移到转换部分的每个其它处理器激活。它包括一个状态机(图5),一个寄存器(packet_length_reg)和两个计数器:sfer_count_reg和ar_count。该处理器XFER不访问目标存储器。
寄存器packet_length_reg包括信息包的长度,即在MPEG2传送信息包情况下的188个字节。内部计数器(packet_count_reg)由微计算机装载传送信息包的这个起始的值,并每当一个字节被读入数据捕获存储器时递减。
xfer_count计数器由处理器XFER使用去存储要被转移的字节数。
计数器ar_count被用于产生类型ar_rdy type信号(数据捕获存储器备用)。它同步来自解调器/纠错器的数据,并比较该数据捕获存储器的读和写指针。
该起始状态也是休眠状态。
如果信号till_TP_end已由调用处理器激活,那么处理器XFER转移传送信息包的所有其余字节到转换部分。反之,该处理器读在数据捕获存储器中的第一字节,并认为它是要被转移的字节数。如果信号drop_length_bus是有效的。则该第一字节不被传送到转换部分。这种功能也取决于已激活处理器XFER的处理器,和在数据捕获存储器中出现的字节数。
对于各转移期间,处理器XFER期望6个字节在数据捕获存储器或在解密器中是有用的。然后它通过发送一个信号DPP_req(w_ard状态)到转换部分去打开一个转移期间,并等待这部分(w_sram状态)的返回。
当DSP准备接收数据时,它响应于一个信号DSP_ack。然后处理器XFER在数据捕获存储器中读这些字节(rd_byte状态),并把他们转移到转换部分。在一个字节被转移之后,处理器环回去转移下一个字节,直到转移状态结束:信息包结束,分组结束或转移结束(w_0,w_1和w_2状态)。
如果未完成结束状态,则该处理器等待(w_ar 3状态)数据捕获存储器(ar_rdy=1)中有用的另外六个字节,以便提出一个新的转移期间请求。
在结束状态的情况下,处理器XFER重新激活已激活它并进入休眠模式(call_next_fsm和sleep状态)的处理器。
Claims (7)
1、一种用于分层的多路复用数据流的多路分解设备,其特征在于它包括:
用于存储多路复用数据流(4)数据的装置,
至少一个处理器(9,10,11,12),用于处理多路复用数据流中数据的各个分层中的一层,
用于存储筛选数据的可编程装置,每个处理器(9,10,11,12)控制对应于该处理器所处理的层的所存储筛选数据的读取,
比较装置(7),用于比较多路复用数据流的数据与所读取的筛选数据,以及
用于按照比较结果把多路复用数据流的数据转移到存储装置(5)的转移装置(12)。
2、根据权利要求1的多路分解设备,其特征在于:所述的层是MPEG2传送层,所述筛选数据包括至少包含下列类型之一的数据值:PID,连续计数,同步比特。
3、根据权利要求2的多路分解设备,其特征在于:所述筛选数据对应于在多路复用数据流中期望的下一个值。
4、根据权利要求1的多路分解设备,其特征在于:所述层是MPEG2分组层,所述筛选数据包括至少包含下列类型的数据值:表标识,分组指针的开始,分组长度。
5、根据权利要求1的多路分解设备,其特征在于:所述层是MPEG2基本流信息包层,所述筛选数据包括包含数据流标识的数据值。
6、根据权利要求2、3或4之一的多路分解设备,其特征在于:所述的设备进一步包括一个多路复用器(19),它的一个输入端被连接到用于存储多路复用数据流数据的装置的输出端,并且它的第二个输入端被连接到解密器(6)的输出端,该解密器的输入端还被连接到用于存储多路复用数据流数据的装置的输出端,该多路复用器由至少一个处理器(9,10)控制。
7、一种数字电视解码器,其特征在于,它包括按照前述权利要求之一的多路分解设备。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9515767A FR2743245B1 (fr) | 1995-12-29 | 1995-12-29 | Dispositif de demultiplexage |
FR9515767 | 1995-12-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1162890A CN1162890A (zh) | 1997-10-22 |
CN1092451C true CN1092451C (zh) | 2002-10-09 |
Family
ID=9486172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN96123944A Expired - Lifetime CN1092451C (zh) | 1995-12-29 | 1996-12-29 | 多路分解设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5835591A (zh) |
EP (1) | EP0782346B1 (zh) |
JP (1) | JP3919860B2 (zh) |
CN (1) | CN1092451C (zh) |
DE (1) | DE69614495T2 (zh) |
FR (1) | FR2743245B1 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6091772A (en) * | 1997-09-26 | 2000-07-18 | International Business Machines, Corporation | Black based filtering of MPEG-2 compliant table sections |
FR2771884B1 (fr) * | 1997-12-02 | 1999-12-31 | Thomson Multimedia Sa | Procede de gestion d'informations de service dans un systeme de television numerique et recepteur mettant en oeuvre ce procede |
GB9802093D0 (en) * | 1998-01-30 | 1998-03-25 | Sgs Thomson Microelectronics | Digital receiver demultiplexer |
DE19820936C1 (de) * | 1998-05-09 | 1999-06-02 | Grundig Ag | Verfahren und Vorrichtung zur Auswertung eines digitalen Datenstromes |
GB2383723B (en) * | 1998-06-03 | 2003-09-10 | Orange Personal Comm Serv Ltd | Mobile communications |
DE19908488A1 (de) * | 1999-02-26 | 2000-08-31 | Thomson Brandt Gmbh | Verfahren und Vorrichtung zur Wiedergabe von digitalen Datenströmen |
US6826197B1 (en) * | 1999-04-01 | 2004-11-30 | Sedna Patent Services, Llc | Data packet structure for digital information distribution |
US6891862B1 (en) * | 1999-04-26 | 2005-05-10 | Nortel Networks Limited | Multiplex hierarchy for high capacity transport systems |
JP4075249B2 (ja) * | 1999-10-05 | 2008-04-16 | ソニー株式会社 | 分離装置 |
DE19960295B4 (de) * | 1999-12-14 | 2012-06-21 | Rohde & Schwarz Gmbh & Co. Kg | Verfahren und Anordnung zum Ändern des Informationsinhaltes eines digitalen Video-Transportstromes in ausgewählten Regionen |
US7028095B1 (en) | 2000-03-23 | 2006-04-11 | International Business Machines Corporation | Block-based negative filtering of MPEG-2 compliant table sections |
JP2001308921A (ja) * | 2000-04-25 | 2001-11-02 | Sony Corp | デマルチプレクサ |
EP1227666A1 (en) * | 2001-01-18 | 2002-07-31 | Sony Service Centre (Europe) N.V. | Method and device for downloading application data |
JP3769477B2 (ja) * | 2001-07-18 | 2006-04-26 | 松下電器産業株式会社 | 多重分離回路 |
US7817721B2 (en) * | 2003-05-15 | 2010-10-19 | Lsi Corporation | Posting status data in digital transport stream processing |
JP4431537B2 (ja) * | 2003-06-16 | 2010-03-17 | パナソニック株式会社 | パケット処理装置及び方法 |
US7882510B2 (en) | 2003-08-06 | 2011-02-01 | Microsoft Corporation | Demultiplexer application programming interface |
US8199781B2 (en) * | 2004-12-14 | 2012-06-12 | Samsung Electronics Co., Ltd | Device and method for demultiplexing received transport stream in digital broadcasting receiver |
JP4667108B2 (ja) | 2005-04-11 | 2011-04-06 | パナソニック株式会社 | データ処理装置 |
JP4828927B2 (ja) * | 2005-12-16 | 2011-11-30 | パナソニック株式会社 | ストリーム制御装置 |
US9172629B1 (en) * | 2005-12-29 | 2015-10-27 | Alcatel Lucent | Classifying packets |
JPWO2007099659A1 (ja) | 2006-03-01 | 2009-07-16 | パナソニック株式会社 | データ転送装置及びデータ転送方法 |
KR100864715B1 (ko) * | 2006-10-19 | 2008-10-23 | 삼성전자주식회사 | 디지털 방송 수신 장치 및 그의 스크램블 채널 판단 방법 |
US8370261B2 (en) * | 2007-01-10 | 2013-02-05 | Amnon Nissim | System and a method for access management and billing |
US7957423B2 (en) * | 2008-01-02 | 2011-06-07 | Cisco Technology, Inc. | Packet error correction |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0626770A2 (en) * | 1993-05-25 | 1994-11-30 | Sony Corporation | Data multiplexers and demultiplexers |
EP0651584A2 (en) * | 1993-10-29 | 1995-05-03 | Mitsubishi Denki Kabushiki Kaisha | Data receiving apparatus and method |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1207258B (it) * | 1979-10-11 | 1989-05-17 | Sits Soc It Telecom Siemens | Disposizione circuitale atta a riconoscere la parola di allineamento, di particolare applicazione nella sezione ricevente di un multiplatore disegnali digitali. |
FR2594615B1 (fr) * | 1986-02-20 | 1988-06-17 | France Etat | Dispositif de demultiplexage de paquets d'un signal de radiodiffusion de type mac/paquets |
DE69122634T2 (de) * | 1990-02-06 | 1997-05-15 | Alcatel Italia | System, Packetaufbau und Einrichtung zur Verarbeitung der Ausgangsinformation eines Signalkodierers |
US5220325A (en) * | 1991-03-28 | 1993-06-15 | At&T Bell Laboratories | Hierarchical variable length decoder for digital video data |
US5329179A (en) * | 1992-10-05 | 1994-07-12 | Lattice Semiconductor Corporation | Arrangement for parallel programming of in-system programmable IC logical devices |
US5583562A (en) * | 1993-12-03 | 1996-12-10 | Scientific-Atlanta, Inc. | System and method for transmitting a plurality of digital services including imaging services |
JPH07264144A (ja) * | 1994-03-16 | 1995-10-13 | Toshiba Corp | 信号圧縮符号化装置および圧縮信号復号装置 |
US5459789A (en) * | 1994-04-22 | 1995-10-17 | Thomson Consumer Electronics | Packet TV program component detector |
US5475754A (en) * | 1994-04-22 | 1995-12-12 | Thomson Consumer Electronics, Inc. | Packet video signal inverse transport processor memory address circuitry |
US5521979A (en) * | 1994-04-22 | 1996-05-28 | Thomson Consumer Electronics, Inc. | Packet video signal inverse transport system |
US5473609A (en) * | 1994-05-26 | 1995-12-05 | Thomson Consumer Electronics, Inc. | Method and apparatus for processing a conditional access program guide as for a satellite TV service |
CA2146801C (en) * | 1994-05-27 | 1999-11-02 | Barin Geoffry Haskell | Timing recovery for variable bit-rate video on asynchronous transfer mode (atm) networks |
-
1995
- 1995-12-29 FR FR9515767A patent/FR2743245B1/fr not_active Expired - Fee Related
-
1996
- 1996-12-19 US US08/771,387 patent/US5835591A/en not_active Expired - Lifetime
- 1996-12-24 JP JP34409096A patent/JP3919860B2/ja not_active Expired - Lifetime
- 1996-12-26 EP EP96402891A patent/EP0782346B1/fr not_active Expired - Lifetime
- 1996-12-26 DE DE69614495T patent/DE69614495T2/de not_active Expired - Lifetime
- 1996-12-29 CN CN96123944A patent/CN1092451C/zh not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0626770A2 (en) * | 1993-05-25 | 1994-11-30 | Sony Corporation | Data multiplexers and demultiplexers |
EP0651584A2 (en) * | 1993-10-29 | 1995-05-03 | Mitsubishi Denki Kabushiki Kaisha | Data receiving apparatus and method |
Also Published As
Publication number | Publication date |
---|---|
EP0782346A1 (fr) | 1997-07-02 |
DE69614495D1 (de) | 2001-09-20 |
JP3919860B2 (ja) | 2007-05-30 |
FR2743245A1 (fr) | 1997-07-04 |
CN1162890A (zh) | 1997-10-22 |
US5835591A (en) | 1998-11-10 |
DE69614495T2 (de) | 2002-04-25 |
EP0782346B1 (fr) | 2001-08-16 |
FR2743245B1 (fr) | 1998-01-23 |
JPH09275381A (ja) | 1997-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1092451C (zh) | 多路分解设备 | |
CN1194551C (zh) | 为数字视频记录器产生技巧模式信号 | |
CN1194552C (zh) | 数字视频系统中译码数字视频流的方法和装置 | |
CN1122273C (zh) | 数据译码系统和方法、传送/接收装置和方法及重放设备 | |
CN1198454C (zh) | 信息处理方法及设备、内容分配服务器及其方法 | |
CN1225912C (zh) | 用于mpeg-2内容分配和保护的灵活且共用的ipmp系统的设备 | |
CN1206828C (zh) | 信息提供装置、信息提供方法以及信息通信系统 | |
CN1108696C (zh) | 节目转换装置和方法 | |
CN1898956A (zh) | 验证和运行应用程序的方法 | |
CN1864139A (zh) | 程序执行装置 | |
CN1467965A (zh) | 分组处理装置 | |
US7149230B2 (en) | Transport processor for processing multiple transport streams | |
CN1284814A (zh) | 有线电视发送系统数字电缆端头 | |
CN1344414A (zh) | 在数据流记录器中实现特技播放模式的方法 | |
CN1336070A (zh) | 多业务数字传输系统的应用数据表 | |
CN1910923A (zh) | 用于内容保护的方法和条件存取系统 | |
CN1625883A (zh) | 传送权利管理消息的方法和装置 | |
CN1254469A (zh) | 从发送的数据流中提取数据段 | |
CN1527997A (zh) | 内容记录/重放装置和存储用于内容记录/重放的程序的记录介质 | |
CN1739296A (zh) | 视频网络 | |
CN1961522A (zh) | 传输流处理装置和传输流处理方法 | |
CN1602058A (zh) | 程序置换方法 | |
CN1922877A (zh) | 一个接收终端与多个访问控制卡相匹配的方法 | |
CN1296583A (zh) | 数字数据记录再生方法和数字数据记录再生装置 | |
CN1274151C (zh) | 在接收机/译码器中管理数据的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term |
Granted publication date: 20021009 |
|
EXPY | Termination of patent right or utility model |