CN1555651A - 多路mpeg数据流的混叠与路由 - Google Patents
多路mpeg数据流的混叠与路由 Download PDFInfo
- Publication number
- CN1555651A CN1555651A CNA028180771A CN02818077A CN1555651A CN 1555651 A CN1555651 A CN 1555651A CN A028180771 A CNA028180771 A CN A028180771A CN 02818077 A CN02818077 A CN 02818077A CN 1555651 A CN1555651 A CN 1555651A
- Authority
- CN
- China
- Prior art keywords
- pid
- data
- internal storage
- storage structure
- filtering
- 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
Links
- 230000003139 buffering effect Effects 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 45
- 238000001914 filtration Methods 0.000 claims description 39
- 230000005540 biological transmission Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 8
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000011084 recovery Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 10
- 239000006187 pill Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 1
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23608—Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2365—Multiplexing of several video streams
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开了对多路MPEG数据流进行混叠与传输。公开的装置实施例包括(例如),能够将数据包从任意源位置(一个或多个)传送到任意目的位置(一个或多个)的路由器或交叉点开关。这个位置可以位于一个单独处理板上的多个目的上,或者是带有将板连接在一起的机箱内的多个板上。通过对带有相关PID的MPEG数据流进行处理从而使它们在形成通信连接的位置间进行传输获得在此公开的混叠与传输。其实现方式是通过下列过程实现的:为输入数据流中的每一个生成PID混叠表,该表包括多个PID混叠值;从每个输入数据流中去除至少一个PID,从而产生经滤波的数据流;为滤波数据流中的每一个确定目标目的地(一个或多个);和对滤波数据流进行缓冲,从而使滤波数据流可读并传送给各自确定出的目标目的地(一个或多个)。
Description
相关申请的交叉引用
根据35 U.S.C119(e)的规定,本申请要求美国临时申请第60/322,063的优先权益,该申请于2001年9月13日提交,题目为“用于MPEG2包路由的高速串行差分协议”,在本文当中通过引用结合了该临时申请。
发明领域
本发明涉及用于进行高速数据通信的系统、方法、协议、装置,并涉及到其中的软件。更具体地,本发明涉及到对多路MPEG数据流的混叠与路由。因此,本发明的总体目标是提供具有这个特征的新系统、方法、装置及软件。
背景技术
近年来,随着信息时代的到来,在越来越多的信息传输方案中,为了满足前所未有的对快速传输数据及信息传输方案的的要求,数字通信硬件发展的更加复杂而且专用化。例如,典型的现代通信系统中可能包括一个或多个数字接收机、解码器、调制器、数据服务器、视频流服务器、交易(transaction)、账单及条件访问处理器、通信控制器与/或宽带媒体路由器。在对数据流进行复用时,或者在对已经被复用的数据流进行再次复用时,宽带媒体路由器与/或传输多路复用器尤为重要,并得到广泛应用。更具体地,将它们用来处理多路传输流,例如经MPEG2编码的视频流(MPEG是运动图像专家组的字头缩写,在此通常用来表示多种被采用的协议,例如MPEG1、MPEG2等),并因此将其用于产生视频仪器如数字电视、个人多用记录器(PVR),等等的输出流。能提供的处理功能包括(例如):代码转换、插入广告、增加IP条件数据(opportunistic data)、对接收到的业务进行重新复用以提供新的信道调制,等等。
典型情况下,宽带媒体路由器包括不同的硬件部件,由于必须在这些不同的部件间进行信号的通信,必须将这些部件连接起来进行通信。典型情况下,这可以通过使用底板(backplane)实现,底板是用来将这些安放在机架或底盘内的支架上的部件进行互连的电路板。对于以特殊方式对部件进行互连从而获得希望的功能而言,定制的底板设计方法已经成为典型的解决方案。在这些定制的设计方法将有分立的硬件组合起来,在由底板连接的不同部件(例如电路板)之间以并行方式发送数据。尽管在某种程度上效率较高,但这些常规设计方法成本高昂,而且是单独用途的解决方案,因此既没有效率又不会节省成本。此外,它们的带宽受到限制,这给使用它们的系统带来限制。
而且,存在对不论是在不同的处理扳上的位置之间或者在相同的处理扳上的位置之间发生传输都快速而灵活地传输数字数据流的不断增长的需要。也存在对以越来越快的速率来传输越来越多的输入数据流到越来越多的目标目的地的不断增长的需要。
因此,在相关技术领域中,存在对这样的新型方法、系统和装置的需求,它可以在不同的处理板上的位置间,以及/或着单个处理板上的位置间更快并更灵活地传输MPEG数据。为将大量(例如十路)MPEG输入数据流传送到大量选定的目的地中提供了解决方案也是有利的。更有利的是,无需对现有的部件(例如TMX)进行主要的硬件更改,就能够提供路由打包数据的方法与装置。本发明提供了具有上述及其它优点的解决方案。
发明概述
通过提供对多路MPEG数据流进行混叠以及将它们路由到一个或多个目的地的方法,本发明的一个方面满足了上述需求,并克服了相关技术中上述的以及其它不足。例如,可以把十路输入数据流路由到十二个不同位置中的任意一个或多个上。例如,这些位置可以是机箱内一块单独电路板上的多个目标。或者,该位置可以在带有将电路板连接在一起的底板的机箱内的多个电路板上。这些实施例包括:为每个输入数据流生成包括多个PID叠加值(alias)的PID叠加表格;从每路输入数据流中去除至少一个PID,从而产生滤波数据流。这些方法还需要为每个滤波数据流确定目的地,并对滤波数据流进行缓冲,从而使得滤波数据流可读,并能够传送给各自的目的地或位置。在一个优选实施例中,可以通过用滤波数据流加载堆栈轮结构内存实现缓冲。对于存在N个滤波数据流的情况,加载堆栈轮内存结构最好包括:提供具有2N个时隙的堆栈轮内存结构,从而为N路滤波数据流中的每一个提供相应的读写周期;然后依序分别为每路数据流加载写周期时隙。为了辅助从缓冲中恢复数据,为内存结构中的每个读周期与写周期时隙保留指针。
本发明的其他方法实施例能够从内存结构中恢复滤波数据流,根据恢复出的数据流产生主时钟速率,并以主时钟速率将恢复出的MPEG数据流串行地传送给目的地。在这些实施例中,数据恢复的方式是从各自的读周期时隙中读取滤波数据流,从而可以从内存结构中恢复N路数据流。
在本发明的其它方法实施例中,在形成通信连接的位置间传输MPEG数据包。例如,这些位置可以在机箱内单独板上的多个目的上。或者,这些位置可以在带有将扳连接在一起的底板的机箱内多个板上。这些方法需要对(带有相关PID的)多路输入流进行接收,向循环内存系统(round robin memory scheme)中提供输入数据流,从内存中读取数据,并将数据发送给一个或多个目的地。循环内存中最好包括第一与第二内存模块,其中第一内存模块被用来将每路输入数据流与多个PID叠加值关联,将第二内存模块用于对输入数据流进行缓冲。在这些实施例中,从第二内存模块中读取缓冲的数据流,并被作为低压差分信号串行发送到目的地(一个或多个)上。本发明还具有适应具有不同数据速率的输入数据流的能力。当接收到这样的数据流时,首先将它们与公共时钟频率如27MHz进行同步。然后按照上述过程对其进行处理。
与本发明对应的装置形式(例如路由器、TMX或可以把从任意源产生的数据包路由到任意目的的交叉点开关)用于处理具有相关PID的MPEG数据流,因此可以在连接在一起进行通信的位置之间对该数据流进行传输。例如,这些位置可以是机箱内一块单独电路板上的多个目标。或者,该位置可以在带有将电路板连接在一起的底板的机箱内的多个电路板上。本发明的装置包括:为每个输入数据流生成包括多个PID叠加值的PID叠加表格的装置;从每路输入数据流中去除至少一个PID,从而产生滤波数据流的装置;为每个滤波数据流确定目的地的装置;还包括堆栈轮内存结构,用于缓冲滤波数据流,从而使滤波数据流可读并分别传送到各自的目的地上。对于存在N个滤波数据流的情况,加载堆栈轮内存结构最好包括2N个时隙,具有为N路滤波数据流中的每一个提供相应的读写周期的能力。内存结构中还可以包括写周期与读周期时隙的指针,从而可以辅助从内存结构中恢复数据。此外,本发明的装置中还可以包括下列装置中的任意一种或多种:从内存结构中恢复滤波数据流的装置,以及以M个数据通路中的任意一个为目的的装置。在本发明的一个优选形式中,本发明的装置是MPEG交叉点开关,它具有为为下行流PCR修正而接收时戳的能力。
自然,本发明的上述方法尤其适用于使用上述的本发明的装置。类似地,本发明的装置实施例很好地适用于执行上文提及的发明方法。
对于本领域内的普通技术人员,通过下面介绍的优选实施例、权利要求书以及附图,本发明的许多其它优点和特点将变得更为清晰。
附图说明
参考附图,将对本发明的优选实施例进行详细说明,其中相同的数字代表相同的步骤与/或结构。其中:
图1为表示根据本发明的传输多路复用器的应用的示意图,图示了BMR以及多个其它装置;
图2为表示用于根据本发明一个实施例的TMX底板中的典型数据传输方案的示意图;
图3为表示根据本发明优选实施例的典型TMX内的网际协议(IP)总线的应用的框图;
图4为表示在图2所示的TMX内使用的底板中的连接器上的IP路由的示意图;
图5示意了用于图2所示的TMX的IP总线,具体而言包括较大的机架中的输入(INP)板、变码器(TRC)与/或多路复用器(MUX)板、中央处理单元(CPU)板以及热交换控制器(HSC)板;
图6对用于如图5所示的、根据本发明一个替代实施例的较小的机架内的IP总线进行概述;
图7为根据本发明优选实施例的TMX的高级框图(high-levelblock diagram)
图8为典型的输入处理器般的框图,它可以用在如图7所示的TMX中;
图9示意了用于本发明优选实施例的数据包结构,包中包括路由头(1字节)、MPEG2包(188字节)以及后缀时戳(4字节);
图10为输入处理器功能的现场可编程门阵列(FPGA)实现的功能框图,这个FPGA使用了图14所示的TDM寻址方案;
图11示意了用于本发明的输入处理器的典型PID表;
图12表示用于本发明的输入处理器的内存访问方案实例以及内存划分;
图13为带有根据本发明的优选实施例的低压差分信号(LVDS)接收机的变码器板的框图。
图14示意了时分多路复用(TDM)方案,可以将它用来对根据本发明的输入处理器内存进行寻址。
具体实施方式
图1为表示发明中TMX 20典型应用的高级系统框图,与TMX 20一起画出的还有控制系统以及许多其它装置。TMX系统可以使用(例如)摩托罗拉计算机集团(MCG)的机箱CPX8216IP,或者是满足低端需要的定制的CPX1205IP机箱。CPX8216IP是一个16插槽12RU的机箱,CPX1205IP是一个5插槽3RU的机箱。CPX8216IP的底板具有一个可取的特点,即它包括两个区域(domain),因此可以完全实现1∶1的冗余。CPX8216IP与CPX1205IP都是紧凑的PCI机箱。它们都适用于深度为18”的机架,可以从前面或后面插卡,可以安装AC或DC电源模块。
如图2、3与7所示,这些机箱中的每一个都包括底板30(或者更具体地说,包括被称为中间板的特殊类型底板),带有两条独立的通信总线。它们是:(i)紧凑PCI(cPCI)(总线32),它是64位宽的总线,运行速度为33MHz;(ii)串行IP互连(总线34)。IP总线34可以是单向总线或双向总线,在总线上可以高达1GHz的速率将数据发往任何电路板或从中接收数据。如图5所示,位于8216IP机箱中心的四个插槽最好是两个主CPU板以及两个热交换控制器(HSC)板46。在如图7所示的替换实施例可以使用单个主CPU和单个HSC。HSC板46有两个主要功能:(i)桥接两个PCI域,从而使机箱呈现为一个12插槽PCI总线(而不是像冗余的情况那样呈现为两个6插槽PCI总线);(ii)提供热交换功能。
如上所述,8216IP机箱与CPX1205IP机箱中的每一个都带有两条独立的通信路径;也就是说,cPIC总线32的作用是用于配置与控制,并将压缩码流传送到MUX 60的通道IP互连总线34,通过该总线可以把接收到的数据发送给任何电路板,例如具有代表性的变码器卡(TRC)70’或MUX卡60’。根据本发明的优选实施例,为了将MPEG2包传送给任意板上的任意处理器,最好将IP互连总线34用于传送MPEG2包。这最好通过使用被称为SerDes的装置族实现,它们可以对位于系统中不同位置的数据进行串行编码及解串。例如,串行器与解串器(它们解串器端包含时钟恢复功能)的作用是使穿过底板30的串行链路能够将数据从一块板传给另一块板。然而,本发明还希望数据可以在一块单独板上的位置之间进行传输。特定的优选实施例中使用了串行器/解串器对,它们的串行链路是低压差分信号(LVDS)。如同图6所指出的,系统将对底板30上的固定位置进行限定,它能够容纳输入板(例如输入板50’)。优选地,将其余的可用插槽或位置保留给TRC或MUX卡(70’与60’)。输入板50’上安装有串行器54,而TRC及MUX卡(70’与60’)上安装有解码器(分别为74和64)。可以将任意的输入包传送给任意目标卡上的任意目标媒体加速处理器(MA)(例如66或76)。为了对这个传递信息的流程进行控制,前面提及的两个优选机箱都能够容纳CPU卡40,例如基于Motorola 750PowerPC的CUP卡(具体参见图4及7)。本领域内的技术人员应该理解,也可能使用其它实现方式。
图4表示CPX8216IP底板中的连接器上的IP路径的示意图。如此图所示,每个连接都包括两个差分对;接收端(Rx)与发送端(Tx),相邻的两个插槽之间以及插槽自身上有点对点连接。此外,由两个差分对穿越底板30,作用是将公共时钟参考47与同步信号48发送到每块板上,从而可以保持系统的同步。
由于8216IP底板被设计为用于以太网连接,在优选实施例中仅需要使用可用互连中的一部分(即发送线)。这是由于如下事实:即在本发明的一个优选结构中,数据传输是单向进行的。为了降低成本,可以使用串行LVDS发送器54与接收器64和74取代以太网链路。
这也使得在板间实现了更高的有效负载数据速率链路,与以太网的75MHz相比,在板间可以达到324MHz或216MHz。为了进一步降低成本,可以将插槽S1到S4指定给如图5所示的输入处理器(INP)板50’,而8216IP机箱内其余的插槽S5-S6与S11-S16可以容纳TRC或MUX板70’或60’。每个INP板50’中最好包括多个(例如十一个)LVDS发送器54,而每个TRC或MUX板70’或60’中最好包括更少数目(例如四个)的LVDS接收器74或64。在下文中,结合图13,将对TRC70’的结构进行更详细的讨论。
1205IP机箱中的底板可以提供上述8216IP机箱的许多特点。例如,由于图6中的1205IP底板被设计为用于以太网连接,在优选实施例中仅需要使用可用互连中的一部分(即发送线)。这也是由于如下事实:即在优选结构中,数据传输是单向进行的。为了降低成本,可以使用串行LVDS发送器54与接收器74或64取代以太网链路。这也允许在两个扳之间的较高的有效负载数据速率链路,例如,324Mbps或者216Mbps。虽然优选地将插槽S1’指定为容纳INP板50’,插槽S2’或插槽S3’的每一个都可以容纳INP、TRC或MUX板(50’、70’或60’)中的一个。最后,插槽S4’可以容纳TRC或MUX板70’或60’。
在图7种提供了优选TMX的高级框图。TMX可以服务于多种用途,例如高清晰度(HD)电视与标准清晰度(SD)电视、加/去(Add/Drop)多路复用、广告插入、IP数据处理以及加密。由TMX 20接收到的输入信号22可以具有许多广为熟知并被广泛应用的格式。这些输入信号格式包括(例如)ASI、DHEI与DS3。尽管系统中可以使用的信号输入及输出的路数和类型只不过是选择设计方案的一个因素,当使用上述优选机箱时,系统中可以支持多达四十路ASI输入。输出数据流的格式可以是下列格式的任意组合:ASI、DS3、SMPTE-310M或DHEI。
图8中示意了输入处理器INP 50’的典型实现。输入处理器(INP)50’的主要功能是:接收多个数据流(例如多达10路MPEG数据流,最好为MPEG2),执行包标识符(PID)滤波和混叠,根据主CPU板通过控制总线提供的配置数据判断将数据传送到哪里进行处理。在图8所示的实现方案中,INP卡50’通过LVDS驱动器与串行总线34将TRC或MUX板作为目的,通过PCI总线将CUP作为目的。尽管典型的输入数据包长度为188字节,输出包的长度最好为193字节,并包含三个部分:1个目的MAP处理器字节+188字节内容数据包+4字节的时戳。对每个目的MAP与/或MUX,典型地支持的数据速率为具有有效载荷速率为216Mbps的324Mbps。本领域内的技术人员应该理解,其它实现方案也是可能的。
现在转到图9,本图示意了用于本发明的优选数据传输包的结构。根据本发明,在接收到的数据中滤除空包,在写入SRAM前,将其送入先入先出(FIFO)(存储器)中进行速率转换。根据本发明的优选实施例,出于路由与加时戳的目的,在每个内容数据包(在图9中的情况内,为MPEG2数据包)上都安排了头与脚注。例如,193字节的包中的第一个字节(目的映射字节)被用作头,它的作用是将接收数据包的变码器或复用器上的特定处理器指定为目的。例如,脚注中包含四个字节对象,它紧随内容数据包之后,并且被用作时间戳。在接收板处理该时间戳,以修正程序时钟参考(PCR)。本领域内的技术人员应该理解,其它实现方案也是可能的。
图10为优选输入处理器50的结构框图。本领域内的技术人员应该理解,其它实现方案也是可能的,在这个有代表性的实施方案中,用现场可编程门阵列(FPGA)与SRAM内存实现了处理器50。图10中的实施例的SRAM访问以54MHz的优选时钟速率运行。表1中列出了一些支持的输入数据速率。
表1
输入数目 | 最大输入速率(Mbps) |
10 | 65.50 |
9 | 72.77 |
8 | 81.87 |
7 | 93.57 |
6 | 109.16 |
5 | 130.99 |
4 | 163.74 |
3 | 175.00 |
2 | 175.00 |
1 | 175.00 |
在优选FPGA中,对于并非所有输入端都接收信号的情况,堆栈轮90无需从头到尾遍历,从而可以获得更高的数据速率。在这种情况下,只需对堆栈轮中的每个有效输入进行遍历。每个端口的缓冲器大小可以包括(例如)512个包。由于每次内存访问最好为32字节宽,SRAM最好在包的边界进行操作,在每次读或写操作的过程中,可以传输196个字节。考虑到十个输入都有效的情况,对于每个端口,写操作将需要四十九个54MHz周期,而读操作则需要五十四个54MHz周期,完成堆栈轮的遍历需要乘以十(1030个周期),从而实现向每一个端口的SRAM写入或从中读出196个字节。
当从包内存SAM中读出数据时,通过访问PID表SRAM来确定PID混叠、目的板以及用于要处理的包的目的MAP。CPU通过PCI总线对SRAM进行配置。在图11中表示了对每个地址位置的定义,将在下文中对其进行讨论。实际的包内存可以按照图12所示的方式进行划分。
现在转到图11,本图示意了根据本发明的输入板PID表格110的实例。如图所示,PID表格110中的每个入口都包括用于CPU、MAP目的、插槽目的以及13比特MPEG2包PID混叠的高与低优先级队列。在工作中,INP 50使用这个数据,以多种方法中的任意一种来将包通过传输复用器进行传送。例如,可以将数据路由到单独板中的位置(一个或多个)或至少一个其它板。还可以把数据路由到(一个单独板或多个板上的)单独MAP或许多MAP与/或CPU中。根据在此所包含的公开内容,本领域内的技术人员应该理解,其它实现方案也是可能的。
在图12中,示意了访问内存的典型方法120以及内存的划分。内存访问是根据串联的端口号码以及PID号码;端口的高四位和PID的13位包括了17位地址字段。在图11中示意了数据的结构及内容。
图13中示意了根据本发明一个实施例的变码器(TRC)70。如本图所示,TRC 70的基本功能是接收四路LVDS数据流,并将这些流发送给五个MAP处理器76的一个。如上所述,在这个实施例中,TRC 70接收到的数据包长度最好为193字节;包括1字节的目的MAP标识符、188字节的MPEG2内容包与4字节的时戳。在特定的优选实施例中,通过在TRC 70的一个MAP处理器上驻留的此功能写入代码,而将其它四个MAP用作变码器,则可以将TRC配置为改进的MUX卡。为了降低成本,TRC 70还可一带有一个与它相连的ROM。这可以使TRC成为整个系统的主时钟(将参考时钟(27/4MHz)注入底板),还可以使时戳同步信号根据它终端的计数对所有电路板进行同步。通过数字控制振荡器(NCO)从44.736MHz时钟获取DHEI频率及27MHz频率。在替代实施例中,没有将TRC配置为主时钟发生器。在这个替代实施例中,系统从底板接受27/4MHz时钟以及时戳同步信号,并将它的时戳计数器同步到这个频率上。
现在参考图13,此图表示MAP处理器76,它可以通过PCI总线接受代码下载、配置及量化,并提供状态与缓冲器特性。MAP处理器中的每一个都能够根据常规的变码算法对视频包执行代码转换,从而对输出数据流进行压缩。在如图13所示的优选变码器实现方案中,MAP缓冲器使任何相关的音频或数据基本流产生延迟,从而可以把它们与经变码的视频数据组合到一起。根据本发明的这个特点,在已经对视频(数据)完成变码后(而且已经执行其它处理,例如插入广告),通过PCI将再次合成的码流发送给MUX MAP。
如图14所示,优选地,使用时分多路复用方案从图10中用作大容量缓冲的SRAM 91中访问数据。这可以高效地将对SRAM的访问分解为十个部分(每个输入端对应一个)。
现在应该理解的是,本发明提供了用于利用串行差分协议、以高于现有技术中可能的速率相比更高的速率、在机箱的板间传输数字包如MPEG2包的装置与方法。对于将数字包(例如MPEG2包)更有效地传送给穿越底板的任意目的MPEG2处理引擎的问题,本发明提供了解决方案。本发明的解决方案避免了现有技术的要求:用常规底板设计以及分离硬件来在板间以并联方式发送数据。取而代之的是,本发明使用了专门用于从机箱内任意插槽到任意插槽进行IP数据通信的底板设计结构。由于把多个数据包如MPEG2数据包(例如十个包)传送给一个或多个希望的目的地需要大量带宽与内存管理,本发明提供了使用循环方案的硬件。特别地,使用了两个(或多个)内存模块。对于多个打包数据(例如MPEG2)传输流输入中的每一个,一个模块可以适应多达N个PID混叠值(例如N=8192)。第二个内存模块提供了对该数据进行缓冲。多个输入中的每一个可以具有它自己的不同速率,在这种情况下,将输入数据流同步到公共的27MHz时钟频率上。然后进行PID滤波以去掉不需要的PID,然后进行查询,以确定每个PID的目的地。
优选地,对于多个输入(例如,10个)中的每一个,利用专用的时隙。在数据的PID被更新而且确定出目的位置后,将数据送到用作大容量缓冲的堆栈轮(wagon wheel)类型内存结构中。将时间分解给(例如十个)输入数据通道的每一个上,然后继续分解为两部分,用于写周期和读周期。为(例如十个)数据通道的每次读与写保留指针。按照196字节包执行写操作。对于以54MHz运行的宽度为32位的数据总线,这需要花费五十四个周期。
当需要从内存模块中恢复数据流时,访问各自的写周期时隙(同样是54MHz速率)。读出的前四个字节指明了目的时隙以及目的时隙上的目的数据包处理装置。然后,最好将数据送到先入先出(FIFO)寄存器中,将数据转换回27MHz速率、8位宽的形式。然后,把转换数据提交给LVDS发送器,用于串行发送数据流,数据流可以是(例如)MPEG2比特流。输出数据包的长度最好为193字节。
在公开的一个实施例中,使用Motorola MCG 8216IP十六插槽机箱提供板到板的数据通路。这个优选硬件解决方案使得数据包可以从输入板上的多个输入端中任一个发送到系统中任何其它板上的任意MPEG2处理引擎上。在输入板上提供了低压差分信号(LVDS)发射器,在其它板上提供了LVDS接收器。出于路由以及加时戳的目的,在每个数据包上最好安放头与脚注。在如图13所示的变码器实施例中,由193字节包中的第一个字节提供头,头的作用是指定每个变码器板上五个处理器中特定的一个作为目的。定制的脚注提供了时戳,它最好由整个193字节包的最末四个字节构成。这个时戳可以从与两块卡(例如输入处理器卡与变码器卡)同步的独立运行的计数器中获得。在接收端,使用第一个字节将内容信息传送给变码器上的五个处理器中的一个,然后将其去除。接收板上的处理器使用最后四个字节中的时戳修正程序时钟参考(PCR)。在MUX/TRC板内,由于在输入端的内存查询携带有在MUX/TRC板中路由的额外的前向下行流,这种硬件解决方案使系统的成本最低,并优化了数据传输速度。机箱最好是改进的紧凑PCI机箱,其中包含IP互连,并将指定的插槽用作串行互连,从而为其它重要任务释放了PCI带宽。
尽管用在此认为是最实用的以及优选实施例对本发明进行了说明,需要理解的是,本发明并不限于共识的实施例,而是希望包含在不背离权利要求书的精神与范围的情况下做出的多种修改和等效配置。例如,参考上面的说明,应该理解,本发明中对最佳的空间关系的描述(包括尺寸、材料、形状、形式、功能与工作方式、组装及使用)只是为了便于本领域内的技术人员的理解,权利要求书中希望包含如图所示的以及在本规范中进行说明的全部等效关系。因此,前述的内容仅是对本发明的原则进行的示意性的,并非无遗漏的说明。
Claims (23)
1.一种处理多路MPEG输入数据流的方法,所述每个数据流包括一串数据包以及相关的PID,将每个数据流被传送到一个或多个目标目的地上,该方法包括:
为所述输入数据流中的每一个生成PID混叠表,该表包括多个PID混叠值;
从每个输入数据流中去除至少一个PID,从而产生经滤波的数据流;
为所述滤波数据流中的每一个确定目标目的地;和
对所述滤波数据流进行缓冲,从而使所述滤波数据流可读出并被传送给各自确定出的目标目的地。
2.根据权利要求1所述的方法,其中
所述PID表覆盖了PID的全部范围;
存在10个输入数据流;和
存在12个滤波数据流。
3.根据权利要求1所述的方法,其中,存在N个滤波数据流,其中,加载堆栈轮内存结构的过程包括:
提供具有2N个时隙的堆栈轮内存结构,以便适应N个滤波数据流中的每一个的写与读周期;和
对于N个滤波数据流的每一个,依序加载堆栈轮内存结构中的写周期时隙。
4.根据权利要求3所述的方法,进一步包括为内存结构中的每个读周期与每个写周期时隙保留指针。
5.根据权利要求4所述的方法,进一步包括
从所述内存结构中恢复所述滤波数据流;和
通过底板、以主时钟速率把所述恢复的数据流串行地从第一板传送到第二板。
6.根据权利要求5所述的方法,其中恢复所述滤波数据流的过程包括:从内存结构中各自的写周期时隙中读出所述滤波数据流,从而从所述内存结构中恢复出N个数据流。
7.一种把包含数字数据包的MPEG输入数据流传送给M个目标
目的地中的至少一个的方法,该方法包括:
接收由具有多个数据包的多个输入流,每个输入流都带有相关的PID;
将所述输入流提供给具有第一与第二内存模块的循环内存系统;
使用第一内存模块来将多个PID混叠值与所述输入流的每一个相关;
使用第二内存模块来缓冲所述输入数据流;
从第二内存模块中读出所述缓冲的数据流;和
把从第二内存模块中读出的数据流传送给M个目标目的地中的至少一个。
8.根据权利要求6所述的方法,其中,以各自的数据速率提供所述输入流中的每一个,其中,所述方法进一步包括:将所述输入流同步到公共时钟频率上。
9.根据权利要求8所述的方法,其中,所述公共时钟频率为27MHz。
10.根据权利要求8所述的方法,进一步包括:
从所述输入数据流中滤除至少一个PID;和
为每个剩余的PID确定目标目的地,其中,所述目标目的地可以是十一个板中任一个上的五个处理器的任一个。
11.根据权利要求10所述的方法,其中
所述恢复过程包括从所述内存结构中各自的读周期时隙中读出所述滤波数据流,从而从所述内存结构中恢复N个数据流;和
所述发送过程包括将所述N个恢复出的数据流串行发送给M个目标目的地中的至少一个。
12.根据权利要求10所述的方法,其中,使用第二内存模块的过程包括:在已经为N个传输流的每个PID确定出目标目的地后,把所述滤波输入流提供给缓冲堆栈轮内存结构。
13.根据权利要求12所述的方法,其中
存在N个输入数据流;
第二内存模块是带有2N个时隙的堆栈轮内存结构,其能够适应所述N个输入数据流的每一个的相应的写与读周期;和
使用第二内存模块的过程进一步包括:为所述N个输入数据流中的各个数据流加载所述堆栈轮内存结构中的写周期时隙。
14.根据权利要求13所述的方法,进一步包括:为所述N个数据流中的每个读周期和写周期保留指针。
15.根据权利要求14所述的方法,进一步包括:
把所述恢复的数据流转换为低压差分信号;和
把所述低压差分信号串行发送给所述M个目标目的地。
16.一种把带有相关PID的多个MPEG输入数据流传送到多个连接在一起进行通信的目标目的地的装置,该装置包括:
用于为所述输入数据流中的每一个生成PID混叠表的装置,该表包括多个PID混叠值;
用于从每个输入数据流中去除至少一个PID、从而产生经滤波的数据流的装置;
用于为所述滤波数据流中的每一个确定目标目的地的装置;和
用于对所述滤波数据流进行缓冲、从而使所述滤波数据流可被读出并被传送给各自确定出的目标目的地的装置。
17.根据权利要求16所述的装置,其中,用于缓冲的装置包括堆栈轮内存结构。
18.根据权利要求16所述的装置,其中
存在N个滤波数据流;和
所述堆栈轮内存结构包括2N个时隙,其能够适应N个输入数据流的每一个的相应的写与读周期。
19.根据权利要求18所述的装置,其中,所述堆栈轮内存结构进一步包括指针,用于所述内存结构中的每个读周期时隙与每个写周期时隙。
20.根据权利要求19所述的装置,进一步包括:
用于从所述内存结构中恢复所述滤波数据的装置;和
用于串行传输所述恢复的数据流的装置。
21.根据权利要求16所述的装置,其中,该装置是传输多路复用器,它具有把所述输入数据流传送给机箱内任意一个或多个目标目的地的能力。
22.根据权利要求21所述的装置,其中,所述目的位于一个单独的处理板上。
23.根据权利要求21所述的装置,其中,所述目的位于通过底板连结在一起进行通信的不同板上。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US32207701P | 2001-09-13 | 2001-09-13 | |
US60/322,077 | 2001-09-13 | ||
US10/213,833 US7050505B2 (en) | 2001-09-13 | 2002-08-06 | Aliasing and routing of plural MPEG data streams |
US10/213,833 | 2002-08-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1555651A true CN1555651A (zh) | 2004-12-15 |
Family
ID=26908441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA028180771A Pending CN1555651A (zh) | 2001-09-13 | 2002-09-09 | 多路mpeg数据流的混叠与路由 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7050505B2 (zh) |
EP (1) | EP1428391A1 (zh) |
JP (1) | JP2005519490A (zh) |
KR (1) | KR20040035791A (zh) |
CN (1) | CN1555651A (zh) |
CA (1) | CA2460521C (zh) |
MX (1) | MXPA04002433A (zh) |
WO (1) | WO2003024114A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694577B (zh) * | 2009-10-20 | 2011-07-20 | 大连捷成实业发展有限公司 | 交叉点开关矩阵在线监控系统 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596139B2 (en) | 2000-11-17 | 2009-09-29 | Foundry Networks, Inc. | Backplane interface adapter with error control and redundant fabric |
US20030200548A1 (en) * | 2001-12-27 | 2003-10-23 | Paul Baran | Method and apparatus for viewer control of digital TV program start time |
US20120155466A1 (en) | 2002-05-06 | 2012-06-21 | Ian Edward Davis | Method and apparatus for efficiently processing data packets in a computer network |
US7649885B1 (en) * | 2002-05-06 | 2010-01-19 | Foundry Networks, Inc. | Network routing system for enhanced efficiency and monitoring capability |
US7187687B1 (en) | 2002-05-06 | 2007-03-06 | Foundry Networks, Inc. | Pipeline method and system for switching packets |
AU2003268017A1 (en) * | 2002-07-24 | 2004-02-09 | General Instrument Corporation | Method and apparatus for rapid capture of program identifier data in a broadband transcoder multiplexer |
US6901072B1 (en) * | 2003-05-15 | 2005-05-31 | Foundry Networks, Inc. | System and method for high speed packet transmission implementing dual transmit and receive pipelines |
US7817659B2 (en) | 2004-03-26 | 2010-10-19 | Foundry Networks, Llc | Method and apparatus for aggregating input data streams |
US8730961B1 (en) | 2004-04-26 | 2014-05-20 | Foundry Networks, Llc | System and method for optimizing router lookup |
US8107822B2 (en) * | 2005-05-20 | 2012-01-31 | Finisar Corporation | Protocols for out-of-band communication |
US20070038880A1 (en) * | 2005-08-15 | 2007-02-15 | Noble Gayle L | Network diagnostic systems and methods for accessing storage devices |
US7899057B2 (en) | 2006-04-28 | 2011-03-01 | Jds Uniphase Corporation | Systems for ordering network packets |
US20070260728A1 (en) * | 2006-05-08 | 2007-11-08 | Finisar Corporation | Systems and methods for generating network diagnostic statistics |
US8448162B2 (en) | 2005-12-28 | 2013-05-21 | Foundry Networks, Llc | Hitless software upgrades |
US8068541B2 (en) * | 2006-01-30 | 2011-11-29 | Jan Harding Thomsen | Systems and methods for transcoding bit streams |
US20070177519A1 (en) * | 2006-01-30 | 2007-08-02 | Thomsen Jan H | Systems and methods for transcoding bit streams |
EP1826978A1 (en) * | 2006-02-24 | 2007-08-29 | Nagravision S.A. | Method to optimize the data stream between a router and a multimedia unit |
US20070236902A1 (en) * | 2006-03-30 | 2007-10-11 | Qunell Miriam E | Half-mesh backplane connection topology |
US8213333B2 (en) * | 2006-07-12 | 2012-07-03 | Chip Greel | Identifying and resolving problems in wireless device configurations |
US8238255B2 (en) | 2006-11-22 | 2012-08-07 | Foundry Networks, Llc | Recovering from failures without impact on data traffic in a shared bus architecture |
US8526821B2 (en) | 2006-12-29 | 2013-09-03 | Finisar Corporation | Transceivers for testing networks and adapting to device changes |
US7978614B2 (en) | 2007-01-11 | 2011-07-12 | Foundry Network, LLC | Techniques for detecting non-receipt of fault detection protocol packets |
CN101841734B (zh) * | 2009-03-16 | 2012-11-07 | 华为技术有限公司 | 一种背板及背板通信系统 |
US8599850B2 (en) * | 2009-09-21 | 2013-12-03 | Brocade Communications Systems, Inc. | Provisioning single or multistage networks using ethernet service instances (ESIs) |
US20120117271A1 (en) * | 2010-11-05 | 2012-05-10 | Sony Corporation | Synchronization of Data in a Distributed Computing Environment |
US20170055031A1 (en) * | 2015-08-19 | 2017-02-23 | Opentv, Inc. | Method to transmit and receive mpeg-ts over a thunderbolt cable |
US10593285B2 (en) * | 2017-03-28 | 2020-03-17 | Novatek Microelectronics Corp. | Method and apparatus of handling signal transmission applicable to display system |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69631393T2 (de) * | 1995-03-29 | 2004-10-21 | Hitachi Ltd | Dekoder für komprimierte und multiplexierte Bild- und Audiodaten |
FI100684B (fi) | 1995-11-30 | 1998-01-30 | Nokia Oy Ab | Pakettivälitteisen tiedonsiirtomuodon pakettitunnisteiden käyttö vasta anottajien osoittamiseen |
US5835493A (en) | 1996-01-02 | 1998-11-10 | Divicom, Inc. | MPEG transport stream remultiplexer |
US6031843A (en) | 1996-11-21 | 2000-02-29 | Alcatel Data Networks Inc. | Digital communications switching fabric |
JP3356203B2 (ja) * | 1997-06-09 | 2002-12-16 | 日本電気株式会社 | Mpeg2トランスポートストリーム分離方法と回路 |
US6091772A (en) | 1997-09-26 | 2000-07-18 | International Business Machines, Corporation | Black based filtering of MPEG-2 compliant table sections |
CA2318415C (en) | 1998-01-14 | 2009-12-15 | Skystream Corporation | Video program bearing transport stream remultiplexer |
JP3348683B2 (ja) * | 1999-04-27 | 2002-11-20 | 日本電気株式会社 | デジタル放送受信装置 |
EP1210825B1 (en) | 1999-08-20 | 2004-02-11 | General Instrument Corporation | System and method for facilitating transmission of ip data over digital mpeg networks |
EP1148727A1 (en) * | 2000-04-05 | 2001-10-24 | THOMSON multimedia | Method and device for decoding a digital video stream in a digital video system using dummy header insertion |
CA2394923A1 (en) | 1999-12-14 | 2001-06-21 | General Instrument Corporation | Hardware filtering of input packet identifiers for an mpeg re-multiplexer |
US6252872B1 (en) * | 2000-05-24 | 2001-06-26 | Advanced Micro Devices, Inc. | Data packet filter using contents addressable memory (CAM) and method |
WO2002087158A2 (en) * | 2001-04-20 | 2002-10-31 | General Instrument Corporation | Transport multiplexer management and control |
-
2002
- 2002-08-06 US US10/213,833 patent/US7050505B2/en not_active Expired - Fee Related
- 2002-09-09 CA CA2460521A patent/CA2460521C/en not_active Expired - Fee Related
- 2002-09-09 WO PCT/US2002/028632 patent/WO2003024114A1/en active Application Filing
- 2002-09-09 MX MXPA04002433A patent/MXPA04002433A/es active IP Right Grant
- 2002-09-09 CN CNA028180771A patent/CN1555651A/zh active Pending
- 2002-09-09 KR KR10-2004-7003808A patent/KR20040035791A/ko not_active Application Discontinuation
- 2002-09-09 JP JP2003528026A patent/JP2005519490A/ja active Pending
- 2002-09-09 EP EP02798175A patent/EP1428391A1/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694577B (zh) * | 2009-10-20 | 2011-07-20 | 大连捷成实业发展有限公司 | 交叉点开关矩阵在线监控系统 |
Also Published As
Publication number | Publication date |
---|---|
US7050505B2 (en) | 2006-05-23 |
MXPA04002433A (es) | 2004-07-23 |
CA2460521C (en) | 2014-04-08 |
WO2003024114A1 (en) | 2003-03-20 |
EP1428391A1 (en) | 2004-06-16 |
KR20040035791A (ko) | 2004-04-29 |
US20030048854A1 (en) | 2003-03-13 |
JP2005519490A (ja) | 2005-06-30 |
CA2460521A1 (en) | 2003-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1555651A (zh) | 多路mpeg数据流的混叠与路由 | |
CN1555529A (zh) | 通信硬件模块之间的高速串行数据传输 | |
US7177357B2 (en) | Data processing system for stereoscopic 3-dimensional video based on MPEG-4 and method thereof | |
EP0960509B1 (en) | Local communication system | |
US7236490B2 (en) | Backplane interface adapter | |
US20050089049A1 (en) | High-performance network switch | |
US20020089977A1 (en) | Network switch cross point | |
US20020089972A1 (en) | High-performance network switch | |
US20040186914A1 (en) | Data processing circuit | |
US9674117B2 (en) | Cell based data transfer with dynamic multi-path routing in a full mesh network without central control | |
CN102823201A (zh) | 用于过滤媒体分组的方法和设备 | |
CN1822592A (zh) | 用ip协议进行串行总线数据传输的方法及其使用的装置 | |
WO1999052291A1 (en) | Video data storage and transmission formats and apparatus and methods for processing video data in such formats | |
EP1068732A1 (en) | A packet protocol for encoding and decoding video data and data flow signals | |
CN110798633A (zh) | 基于以太网交换技术的大规模视频显控矩阵设备 | |
JP2009213138A (ja) | 高速インターネット・プロトコル・ネットワークでデータを伝送するためのデータ・トランスポート・コンテナ | |
US7308003B2 (en) | System and method for re-multiplexing multiple video streams | |
JP2003518874A (ja) | データ通信 | |
CN210927788U (zh) | 基于以太网交换技术的大规模视频显控矩阵设备 | |
CN101053207A (zh) | 在基于分组的网络上选择性分发基于信元的视频流 | |
EP4125256A1 (en) | Systems and methods for controlling high speed video | |
CN1252964C (zh) | 帧管理方法及其交换器与网络架构 | |
JPH10234019A (ja) | 動画像通信システム | |
Parkes et al. | A SpaceFibre Routing Switch for Distributed Payload Processing and Backplane Interconnect | |
CN1220064A (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |