从发送的数据流中提取数据段的制作方法

文档序号:6412731阅读:302来源:国知局
专利名称:从发送的数据流中提取数据段的制作方法
技术领域
本发明涉及用于存储所发送的数据流(例如MPEG比特流)的一个或多个数据段的装置和方法,该MPEG比特流除了该数据段以外还包含视频和音频电视数据。
主要打算用于广播电视信号、特别(但不排他地)是用于卫星电视系统的数字传输系统的出现,开辟了将这样的系统应用于其它用途的可能性。其中之一是提供与最终用户的交互性。
这样做的一个方式是在用以接收电视信号的接收机/译码器上运行一个应用程序。用于该应用程序的代码可以永久地存储在接收机/译码器中。然而,这可能是很限制的。优选地,接收机/译码器应当能够下载用于所需要的应用程序的代码。这样,可以提供更多种多样性,应用程序可按需要被更新,而在用户方面不要任何行动。
在计算机系统中,特别是其中计算机系统被包含在某些更大系统、例如用于数字电视的接收机/译码器的系统中时,存储器数量常常是有限的。这意味着,存储器必须被组织,以使得由系统所需要的各种功能所使用的存储器空间是最小的。此外,也可能必须使得访问至少某些存储器部分所需要的时间最小化。
因此,本发明特别涉及(但不排他地)只把应用程序所具体需要的那些数据下载到接收机/译码器的存储器中。
在第一方面,本发明提供用于存储所发送的数据流的多个数据段的至少一个数据段的方法,所述一个数据段具有至少一个数据段特征,所述方法包括以下步骤接收数据流;按照至少所述一个数据段特征,从所述数据流滤出所述一个数据段;以及存储所述一个数据段。
这个过滤步骤使得只有应用程序所需要的数据段能够被装载到接收机/译码器的存储器中。
在优选实施例中,过滤步骤包括以下步骤规定至少一个过滤特征,每个特征包括过滤准则和用于该过滤准则的数值;把这个或每个数据段特征与各个过滤特征进行比较;以及当这个或每个数据段特征相应于各个过滤特征时,从所述数据流中滤出所述一个数据段。
本发明的第二方面提供通过使用以上方法存储所发送的数据流的多个数据段的方法,每个数据段被存储在各个存储器单元中。
优选地,这个方法还包括以下步骤规定至少一个数据过滤特征,每个数据特征包括数据过滤准则和用于该数据过滤准则的数值;把被存储在每个存储的数据段中的数据与各个数据过滤特征进行比较;以及当所述被存储在该存储的数据段中的数据与各个数据过滤特征不一致时,使得所述存储的数据段能够在所述存储器中被替代。
优选地,该方法还包括提供这样的步骤,即当所述被存储在所述存储的数据段中的数据与所述各个数据过滤特征一致时,提供数据段识别信号给应用程序。
数据段识别信号优选地包括所述一个数据段的存储地址。
在第三方面,本发明提供按照以上方法存储数据段组的方法,所述数据段在所述数据流中被周期地发送,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤存储第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止。
在第四方面,本发明提供按照以上方法存储数据段组的方法,所述数据段在所述数据流中被周期地发送,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤下载第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止,此时,被存储在存储器单元中的数据段被随后的下载的数据段接连地覆盖写入,直到所述最末的数据段被下载为止;以及把所述最末的数据段存储在所述存储器中。
在第五方面,本发明提供用于存储在数据流中周期地发送的数据段组的方法,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤接收数据流;下载第一数据段和把它存储在存储器中;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段被存储为止。
在第六方面,本发明提供用于存储在数据流中被周期地发送的数据段组的方法,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤接收数据流;下载第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止,此时,被存储在存储器单元中的数据段被随后的下载的数据段接连地覆盖写入,直到所述最末的数据段被下载为止;以及把所述最末的数据段存储在所述存储器中。
根据本发明的以上的第三到第六方面,只有数据段组中所需要的那些段被存储在接收机/译码器的存储器中。例如,当观看安排在特定时间发送的一系列的例如三个电视节目的明细表时,借助于第三和第五方面,只有该组的头四个数据段从数据流中被下载,使得最终用户能够从在该时间显示的第一个节目开始快速向下滚动明细表。借助于第四和第六方面,只有该组的最后四个数据段从数据流中被下载,使得最终用户能够从在该时间显示的最末的节目开始快速向上滚动明细表,这样允许接收机/译码器的存储器被最小化。
在第七方面,本发明提供用于存储所发送的数据流的多个数据段的至少一个数据段的设备,所述一个数据段具有至少一个数据段特征,所述设备包括
用于接收数据流的装置;用于按照至少所述一个数据段特征从所述数据流滤出所述一个数据段的装置;以及用于存储所述一个数据段的装置。
优选地,所述过滤装置包括用于规定至少一个过滤特征的装置,每个特征包括过滤准则和用于该过滤准则的数值;用于把这个或每个数据段特征与各个过滤特征进行比较的装置;以及用于当这个或每个数据段特征相应于各个过滤特征时,从所述数据流中滤出所述一个数据段的装置。
在第八方面,本发明提供如上所述的用于下载多个这样的数据段的设备,所述存储装置包括多个用于存储各个数据段的存储器单元。
优选地,这个设备还包括用于规定至少一个数据过滤特征的装置,每个数据过滤特征包括数据过滤准则和用于该数据过滤准则的数值;用于把被存储在每个存储的数据段中的数据与各个数据过滤特征进行比较的装置;以及用于当所述被存储在该存储的数据段中的数据与各个数据过滤特征不一致时,使得所述存储的数据段能够在所述存储器中被替代的装置。
该设备也可包括提供装置,用于当所述被存储在所述存储的数据段中的数据相应于所述各个数据过滤特征时,提供数据段识别信号给应用程序。
以上的方法或设备可以被使用于这样的以MPEG比特流形式的数据流,它除了所述数据段以外也包括视频和音频电视数据。
现在将参照附图,仅仅作为例子,来描述本发明的优选特性,其中

图1显示按照本发明的优选实施例的数字电视系统的总的结构;图2显示数字电视系统的交互系统的结构;图3显示在模块内被下载到交互的接收机/译码器的文件的安排;图4显示数据段的安排;图5显示交互的接收机/译码器的存储器的存储容积的安排;
图6是接收机/译码器的接口的示意图;图7显示在接收机/译码器中的软件的结构;图8显示用于从MPEG数据流中下载数据段的接收机系统的结构;图9显示被硬件预过滤器使用的、位于数据段中的字节的安排;图10显示硬件过滤器的硬件过滤器掩膜阵列和硬件过滤器数值阵列的例子;图11显示被软件预过滤器使用的、位于数据段中的字节的安排;图12显示装载表格的例子;图13显示数据段组中数据段的安排的例子;图14显示数据段组的跟随着的模式下载的例子;图15显示数据段组的以前的模式下载的例子;图16显示在数据段组的描述符中的数据区的安排;以及图17显示在数据段表格的描述符中的数据区的安排。
图1显示了数字电视系统1000的总貌。本发明包括最传统的数字电视系统2000,它使用熟知的MPEG-2压缩系统来发送压缩数字信号。更详细地,在广播中心的MPEG-2压缩器2002接收数字信号流(典型地视频信号流)。压缩器2002通过链路2006被连接到复接器和扰码器2004。复接器2004接收多个另外的信号,组合一个或多个传送信息流,以及通过链路2010发送压缩的数字信号到广播中心的发射机2008,该链路2010当然可采取包括电信链路在内的各种各样的形式。发射机2008通过上行链路2012向卫星转发器2014发送电磁信号,在该转发器中,电磁信号被电处理,然后通过国内的下行链路2016被广播到地面接收机2018,它通常是以最终用户拥有的或租用的碟形天线的形式出现。由接收机2018接收的信号被发送到由最终用户拥有的或租用的以及被连接到最终用户的电视机2022的集成的接收机/译码器2020。接收机/译码器2020把压缩的MPEG-2信号译码成用于电视机2022的电视信号。
传统的接入系统3000被连接到复接器2004和接收机/译码器2020,它部分地位于广播中心和部分地位于译码器中。它使得用户能接入来自一个或多个广播提供者的数字电视广播。能够解密有关销售提供(即,由广播提供者出售的一个或几个电视节目)的消息的智能卡可被插入接收机/译码器2020。通过使用接收机/译码器2020和智能卡,最终用户可以购买以预订模式或每次-观看-付款模式的销售提供。
交换系统4000也被连接到复接器2004和接收机/译码器2020以及再次部分地位于广播中心和部分地位于译码器中,使得最终用户能够通过调制解调的反向信道(modemmed back channel)4002与各种应用程序交互工作。
图2显示本发明的数字电视系统1000的交互电视系统4000的总的结构。
例如,交互系统4000允许最终用户通过他的电视机从在屏目录上购买物品,按要求咨询本地新闻和天气图,以及玩游戏。
交换系统4000总的包括四个主要单元位于广播中心(或其它地方)的创作工具4004,它用于使得广播提供者能够创建、开发、诊断和测试应用程序;位于广播中心的应用程序和数据服务器4006,它被连接到工具4004,用于使得广播提供者能够准备、鉴权、和格式化应用程序与数据,从而把它们传递到复接器和扰码器2004以便插入到要被广播到最终用户的MPEG-2传送信息流(典型地在其专用部分)中;虚拟机,包括运行时间引擎(RTE)4008,它是被安装在由最终用户拥有或租用的接收机/译码器2020中的可执行代码,它用来使得最终用户能够接收、鉴权、解压应用程序并将其装载到用于执行的接收机/译码器2020的工作的存储器2024中。引擎4008也运行常驻的通常用途的应用程序。引擎4008与硬件和操作系统无关;以及在接收机/译码器2020与应用和数据服务器4006之间的调制解调的反向信道4002,它使得信号能够指令服务器4006在最终用户的请求下插入数据和应用程序到MPEG-2传送信息流。
交互电视系统通过使用“应用程序”来运行,它控制接收机/译码器和包含在其内的各种装置的功能。应用程序在引擎4008内被表示为“资源文件”。“模块”是一个资源文件与数据集。可能需要几个模块来组成一个应用程序。接收机/译码器的“存储器容积”是用于模块的存储空间。一个“接口”被用来下载模块。模块可以从MPEG-2传送信息流被下载到接收机/译码器2020。
现在将更详细地描述前面段落中提到的元件。
对于这个技术规范来说,应用程序是一段用于控制接收机/译码器2020的高级别功能的计算机代码。例如,当最终用户将遥控器对准在电视机2022的屏幕上看到的按钮对象上、并按下确认键时,与按钮有关的指令序列被运行。
交互应用程序提出菜单,并在最终用户的请求下执行命令,以及提供与应用程序用途有关的数据。应用程序或者可以是常驻应用程序,即被存储在接收机/译码器2020的ROM(FLASH(快擦写)或其它非易失性存储器)中,或者可以被广播和下载到接收机/译码器2020的RAM或FASH存储器中。
应用程序的例子是-·初始化应用程序。接收机/译码器2020被配备有一个常驻初始化应用程序,它是可适用的模块集(这个项目在此后更详细地被规定),使得接收机/译码器2020能够立即可工作在MPEG-2环境下。该应用程序提供核心的特性,如果需要的话它可被广播提供者修正。它也提供在常驻应用程序与下载的应用程序之间的接口。
·启动应用程序。启动应用程序能允许任何的应用程序(下载的或常驻的)在接收机/译码器2020上运行。这个应用程序起到当一种业务到来时为了启动应用程序而执行的引导程序的作用。启动程序被下载到RAM中,所以,它可以容易地被更新。可以这样来配置,以使得在每个信道上可提供的交互应用程序可在紧接在下载以后或在预先装载以后被选择和运行。在预先装载的情况下,应用程序被装载到存储器2024中,当需要时通过启动而被激活。
·节目指南。节目指南是交互应用程序,它给出有关编排节目的充分的信息。例如,它可以给出,比如说,有关在数字电视集合(bouquet)的每个信道上提供的一个星期的电视节目的信息。通过按下遥控器2026上的一个键,最终用户接入一个可添加的屏幕,重叠在电视机2022的屏幕上所显示的事件上面。这个可添加屏幕是一个浏览器,它给出有关数字电视的每个信道的当前的和下一个事件的信息。通过按下遥控器2026的另一个键,最终用户接入一个应用程序,它显示在一星期内的事件的信息明细表。最终用户也搜索事件和以简单的与定制的准则来分类这些事件。最终用户也可直接接入所选择的信道。
·每次观看付费的应用程序。每次观看付费(PPV)应用程序是在与条件接入系统3000相结合的数字TV集合的每个PPV信道上可提供的交互服务。最终用户可通过使用TV指南或信道浏览器来接入应用程序。另外,只要在PPV信道上检测到PPV事项,应用程序就自动开始。然后,最终用户能够通过他的子智能卡3020或通过通信服务器3022(使用调制解调器、电话和DTMF代码、MINITEL等)购买当前的事项。应用程序可以是驻留在接收机/译码器2020的ROM中的,或是可下载到译码器2020的RAM中的。
·PC下载应用程序。根据请求,最终用户可通过使用PC下载应用程序来下载计算机软件。
·杂志浏览器应用程序。杂志浏览器应用程序包括由最终用户通过在屏幕上的按钮的引导的周期性的视频图象广播。
·小测验应用程序。小测验应用程序优选地与广播小测验节目同步。例如,多选择问题被显示在电视2022的屏幕上,用户可通过使用遥控器2026选择答案。小测验应用程序可通知用户答案是否正确,以及保持用户分数的计数。
·电视购物应用程序。在电视购物应用程序的一个例子中,供销售的货物的定单被发送到接收机/译码器2020,并被显示在电视2022上。通过使用遥控器,用户可选择要购买的具体项目。可按着对已插进接收器/解码器2020的一个读卡器4036中的信用卡帐户记帐的指令,将物品的订单通过调制解调的反向信道4002传送给电视购物应用程序和数据服务器4006或者传送给一电话号码已被下载至了接收器/解码器的独立销售系统。
·电视银行业务应用程序。在电视银行业务应用程序的一个例子中,用户将银行卡插入到接收机/译码器2020的读卡器4036中。接收机/译码器2020通过使用被存储在银行卡或被存储在接收机/译码器中的电话号码,拨号到用户的银行,然后,应用程序提供通过使用遥控器2026选择的设施的号码,以便例如用于通过电话线来下载帐户的结算单、在帐户之间转移基金、请求支票本等。
·互联网浏览器应用程序。在互联网测览器应用程序的一个例子中,通过使用遥控器2026输入来自用户的指令,例如,请求观看具有特定的URL的网页,这些指令由调制解调的反向信道4002被发送到应用与数据服务器4006。适当的网页然后被包括在从广播中心发送的信号之中,并由接收机/译码器2020通过上行链路2012、转发器2014、与下行链路2016进行接收,并被显示在电视2022上。
应用程序被存储在接收机/译码器2020的存储器存储单元中,并作为资源文件而被给出。资源文件包括图形对象说明单元文件、变量块单元文件、指令序列文件、应用程序文件和数据文件。
图形对象说明单元文件描述屏幕,即应用程序的人机接口。变量块单元文件描述由应用程序操作的数据结构。指令序列文件描述应用程序的处理操作。应用程序文件提供用于应用程序的输入点。
以这样的方式构成的应用程序可使用数据文件,例如,图标库文件、图象文件、字符字型文件、彩色表格文件和ASCII文本文件。交互应用程序也可通过实行输入和/或输出而得到在线的数据。
引擎4008只把它在给定时间需要的那些资源文件装载到存储器。这些资源文件是从图形对象说明单元文件、指令序列文件、和应用程序文件中被读出;变量块单元文件是在用于装载模块的程序的调用以后被存储在存储器中,并保持被锁定在其中,直到作出用于解除模块的程序的特定调用为止。
参照图3,模块4010(例如电视购物模块)是一组资源文件和数据,它包括以下内容单个应用程序文件4012;未定数目的图形对象说明单元文件4014;未定数目的变量块单元文件4016;未定数目的指令序列文件4018;以及在适当的情况下,数据文件4020,例如图标库文件、图象文件、字符活字文件、彩色表格文件和ASCII文本文件。
在MPEG数据流中,每个模块包括一组MPEG表格。每个MPEG表格可被格式化为多个数据段。在MPEG数据流中,每个段具有多到4千字节的“大小”。例如,对于通过串行和并行端口的数据传送,模块同样地被分成表格和数据段,数据段的大小随传送媒体而变化。
模块在MPEG数据流中是以在各种类型的数据流内的典型地188字节的数据分组的形式传送的,这例如视频数据流、音频数据流、和电视文字广播数据流。每个分组的前面是13比特的分组识别号(PID),在MPEG数据流中传送的每个分组有一个PID。节目对照表(PMT表)包含不同的数据流的明细表,它按照各个PID规定每个数据流的内容。PID可以提示一个装置在数据流中存在有应用程序,PID通过使用PMT表被识别。
参照图4,每个数据段4300典型地包括以下区表格ID(TID)4302,处于数据段4300的起始端,典型地具有1字节的大小;数据段长度识别符4302,典型地具有2字节的大小;表格中该数据段的段号码(SN)4306(例如,1),该SN典型地具有1字节的大小;该表格中数据段的总数(LSN)4308(例如,3),LSN典型地具有1字节的大小;TID扩展4310,典型地具有2字节的大小;专用数据4312;以及数据段4300的CRC 4314。CRC 4314的用途是检验数据段4300中的所有字节;如果CRC 4314与所有以前的数据相关,则数据段被接收机/译码器2020接受。同样地,专用数据区4312可包括在数据区的末尾的、自该区4312的所有以前的内容计算的MD5签名。
在通过串行或并行接口接收的数据方面,数据段区是可以改变的;典型地,通过上述的接口的任一个接口接收的数据段包括数据区4302到4310中减少的数据量以及没有CRC 4314。
对于特定的模块/表格,组成该表格的所有数据段具有相同的TID4302和相同的TID扩展4310。对于特定的应用程序,组成应用程序的所有的表格具有相同的TID,但具有不同的各个TID扩展。
为了例如从MPEG比特流接入模块4010,需要用于模块的PID和模块目录。这个目录只列出模块4010,它可从载波信号被下载。一旦这个目录被下载,就有可能使应用程序下载一个或多个模块4010。
模块4010的概念连同下载小片的代码的概念允许容易估值应用程序。它们可作为驻留的软件被下载到接收机/译码器2020的永久FLASH(快擦写)存储器,或被广播,以便于只在最终用户需要时被下载到译码器2020的RAM中。
存储器容积是用于模块4010的存储空间。这样的存储空间位于接收机/译码器2020的存储器2024中。参照图5,存储器2024典型地被划分成RAM容积4022、FLASH容积4024、和ROM容积4026。存储器还可被划分成与各种接口有关的存储器容积,通过这些接口,模块可被下载到接收机/译码器2020,例如,用于存储从MPEG比特流下载的模块的MPEG容积、和用于存储通过串行接口接收的模块的串行容积。
RAM容积4022又被划分成一个被专用于固件的区域,一个用于引擎4008和缓存器的工作空间。FLASH和其它的非易失性存储器可由应用程序或引擎本身而通过装置管理者被接入。
每个容积包含一系列的模块4010,每个模块4010包含一系列的文件4012、4014、4016、4018、4020。有可能会有具有同一个名字的两个文件,但它们可能位于不同的模块中。例如,应用程序的版本典型地被存储在ROM体积4026中,较近的版本可被下载到FLASH容积4024中,以便用存储在FLASH容积4024中的版本来代替存储在ROM容积中的版本。文件的内容可以以LZW格式被压缩,然而,由于文件的解压花费一定的时间间隔,它们可以以解压的方式被接收。
接收机/译码器2020的物理接口被使用来下载数据。参照图6,接收机/译码器2020包含例如六个下载的媒体;MPEG信息流调谐器4028、串行接口4030、并行接口4032、调制解调器4034、和两个读卡器4036。
由于应用程序的多个源和接收机/译码器2020的多个制造源,重要的是,在每个接收机/译码器上以相同的方式表现一个应用程序,以及每个接收机/译码器应当以相同的正确的方式执行每个应用程序。参照图7,接收机/译码器2020包括在微处理器的控制下运行的运行时间引擎4008和公共应用程序编程接口4054。它们被安装在每个接收机/译码器2020中,以使得所有的接收机/译码器2020从应用程序看来是相同的。
图7显示了用于运行应用程序4056的接收机/译码器2020的结构。虚拟计算机4007执行应用程序4056,它可包括被直接耦合到虚拟计算机的应用程序4056’、或从MPEG数据流被下载到接收机/译码器2020的应用程序4056”。运行时间引擎4008也显示图形和文本,调用用于业务的装置,接收“事件”,和使用用于特定的计算的库4058的功能。
参照图7,关于应用程序,译码器2020的功能被“看”作为装置4060。所以,接收机/译码器2020可能存在有任何应用程序所没有看到的功能。
装置4060包括逻辑装置单元,它可以对应于部件4062或硬件4066的物理接口4064。这样的装置被称为“低级别装置”4068。这样的装置4068的输出端可被连接到至少一个装置驱动器4070,用于把由装置4068输出的逻辑信号变换成为驱动硬件接口4064所需要的信号。可替换地,装置4068本身可驱动接收机/译码器2020的部件或接口,也就是,装置的输出端被直接连接到硬件4066。
下面描述低级别装置4068的例子。
LCARD装置使得程序能够与被包含在一个智能卡读卡器4036中的智能卡通信,以及RCARD装置使得程序能够与被包含在另一个智能卡读卡器4036中的智能卡通信。例如,这些装置使得程序能够读出卡的状态、读出卡的历史、以及发送输入消息到该卡上。装置也把关于在读卡器中卡的插入、从读卡器中取出卡、以及如果程序不请求则把卡复位通知给程序。LCARD和RCARD装置是对于为运行该卡所使用的协议特定的。典型地,使用IS07816协议。
SCTV装置使得程序能够检验和配置电视机2022的嵌接式(scart)出口。例如,这个装置能够启动一个程序以便请求有关嵌接式出口的声音特征的信息,执行声音的“静噪”、和动态地编程RGB电平。
TUNER(调谐器)装置使得程序能够使用调谐器4028。例如,装置使得程序能够从调谐器的最小频率或当前频率开始执行扫描、读出调谐器参量、和编程调谐器。
SERIAL(串行)装置使得程序能够通过串行链路与设备通信,以及PARALLET(并行)装置使得程序能够通过并行链路与设备通信。例如,这些装置使得程序能够通过各自的链路发送消息、和把消息通过该链路的接收通知程序。
MODEM(调制解调器)装置允许接收机译码器通过内部的半双工调制解调器支持V23与数据业务通信。MODEM装置请求拨号、发送消息到数据服务器以及断开到调制解调器的连接、通知消息的接收、检测错误和丢失或检测载波。
在远端位置执行的远端装置可以是任何的本地装置,但是必须规定端口和协议。
除了“低级别装置”以外,接收机/译码器2020也可包括“高级别装置”4072,它控制接收机/译码器2020的运行。
对于从MPEG数据流中被装载的数据段,一个被称为“MLOAD装置”的装置4072允许应用程序去装载MPEG段、完全的MPEG表格、或相应于硬件和软件过滤准则的MPEG段组。
参照图8,电磁信号被接收机2018接收和被发送到MPEG调谐器4028。调谐器典型地扫描一个频率范围,并且仅在检测到载频处在该范围内时才停止。这样检测的信号被发送到解调器4500,它解调信号并把它们发送到多路分接器4502。多路分接器4502被连接到MPEG芯片4504,后者又被连接到电视机2022。多路分接器4502也被连接到硬件过滤器4506,后者典型地提供多达32个输出端,它们被连接到接收机/译码器2020的RAM容积4022。
由多路分接器4502接收的电磁信号包括多个数据分组的数据流,这典型地包括视频分组数据流、音频分组数据流、图文电视广播分组数据流、和用于由广播提供者所提供的业务的副标题分组数据流。这些数据流被多路分接器4502分接,并被发送到MPEG芯片4504,用于译码成用于电视机2022的信号。
有关应用程序的数据分组被发送到硬件过滤器4506。参照图9,硬件过滤器、或预过滤器4506利用数据流的一个或多个通用的8字节的数据段4508,典型地是偏移字节0(4510)和偏移字节3到9(4512),以便从数据流中滤出数据段,这些字节包括TID 4302、数据段号4306、最末的数据段号4308、和MPEG段4508的TID扩展4310。
为了规定硬件预过滤器特征,应用程序规定了考虑数据段4508的哪个比特,以及所选择的比特的预期值。因此,硬件预过滤器4506包括过滤器掩膜阵列4514和过滤器数值阵列4516,图10上显示了每个阵列的例子。在图10上,比特4518、4520、和4522是使用过滤器掩膜4514被选择的,以及分别为0,1,0的这些比特的每个的数值是使用过滤器数值4516来进行选择的。通过那些过滤准则,MPEG数据段4524将被输出到接收机/译码器2020的RAM 4022的缓存器,而MPEG数据段4526不输出到缓存器。
硬件预过滤器4506借助于多路分接器芯片运行,避免浪费在主处理器内的处理器功率。
微处理器可以利用接收机/译码器2020的RAM 4022,在其中数据段被存储作为软件过滤器4526。借助于软件过滤器4526,有可能选择将装载到RAM容积4022的缓存器中的各数据段的哪一个段放入到应用程序中去。
软件过滤的原理是和硬件过滤的原理相同的。软件过滤器4526典型地使用MPEG数据段4508中的数据的8个接连的字节4528。如图11所示,这8个接连的字节的第一个字节4530的位置被规定为基于数据段4508中第一个字节4510的一个偏移4532。
如果在通过硬件过滤器装载后被存储在MPEG数据段中的数据不符合软件过滤的准则,则其中存储有MPEG数据段的缓存器可被用来装载另一个MPEG数据段。
为了从MPEG数据流装载MPEG数据段,MLOAD装置典型地提供有以下的信息要从其中找出MPEG数据段的数据流的PID;去扰码的数据阵列,它包括多个用于去扰码PID的PID ECM;操作员参考,它识别要被使用来去扰码PID的特定的ECM;要被应用的硬件过滤器数值阵列;要被应用的硬件过滤器掩膜阵列;要被应用的软件过滤器偏移阵列;要被应用的软件过滤器数值阵列;要被应用的软件过滤器掩膜阵列;数据段的最大规模(多达4096字节);以及限时功能,确定装置应当等待多长时间来装载数据段、数据段组、或表格。
当指出数据段的最大规模是512字节时,数据段的大小不能超过512字节。
数据段全部同时被装载到由装置分配的RAM容积4022的缓存器中。当数据段已经被装载时,如果它符合软件过滤准则,则装置应当释放多路分接路由,并通过一个“事件”通知应用程序,该事件包括执行报告和包含数据段的缓存器的地址。在装载以后,数据段通过其中存储数据段的缓存器的地址来进行识别。
当表格要被装载时,装置也配备有TID 4302。表格的每个数据段全部同时被装载到为其分配的各个缓存器中。然而,采取端到端地放置数据段和以数据段次序来装载表格并不是重要的。当表格的每个数据段被装载时,装置可通知应用程序、表格的该数据段已被装载。可替换地或附加地,装置可通过一个事件通知应用程序整个表格已成功地装载到为其分配的缓存器中。
参照图12,表格典型地以以下的方式被装载(仅仅为了简明起见,省略软件过滤的说明)步骤1规定硬件过滤器掩膜阵列4534和硬件过滤器数值阵列4536;步骤2装载相应于硬件(和软件)过滤器的第一数据段4538;步骤3读出数据段4538的LSN 4540的数值,以确定要被装载的数据段数目(=LSN+1),和按照LSN 4530的数值来改变硬件过滤器掩膜阵列4534和硬件过滤器数值阵列4536;步骤4到6按照TID和LSN的数值装载其余的数据段4542、4544、和4546,以及发送一个事件到应用程序。
表格装载只在表示成功下载的事件被输入到运行时间引擎4006的队列中时才完成。在这个事件被放置在引擎队列中以前,表格装载的中断应当是成功的。
在表格被装载以后,该表格用由应用程序在请求下载表格时分配给它的名字来识别。
有关表格被存储在接收机/译码器2020的存储器的方式的信息可通过一个调用步骤来访问,该调用步骤返回一个表格的描述符。图17显示了这样的描述符的例子。描述符4700包括一个包含有表格中的数据段的总数(LSN+1)的区4702,和包含有数据段4538、4542、4544、和4546的一系列缓存器4704,这些数据段组成该表格,从具有“0”的SN的数据段4544开始,然后是具有“1”的SN的数据段4546,等等,直到具有相应于LSN的SN的数据段4542。
数据段组包括所有的相应于硬件和软件过滤准则的数据段。数据段周期性地出现在MPEG数据流中。
参照图13,一个组4548由两个数据段来定界限第一数据段(SDG)4550和最末数据段(SFG)4552,其每个数据段相应于各个过滤准则,该组的其它的数据段(SG)4554处在它们中间。
装载一个组的各数据段可以通过使用两个不同的装载模式来进行。
在“跟随的模式”下,可装载紧跟在SDG 4550后面的预定数目的数据段4554。对于每种类型的数据段(SDG、SG、SFG),应用程序可识别TID、硬件过滤器、软件过滤器、和最大数据段长度。
参照图14,装置优选地首先应用硬件和软件过滤准则,从而使得能只下载和存储SDG 4550。这避免了在装载SDG 4550以前装载接收机/译码器2020的RAM存储器容积4022的缓存器中的冗余的SG 4554。在检测后,SDG 4550被存储在存储单元或缓存器4556中。然后,装置应用硬件和软件过滤准则,从而使得能从MPEG数据段组中下载想要的SG和SFG。
在图14所示的例子中,来自包括一个SDG、七个SG、和一个SFG的MPEG数据段组的三个SG 4554是从MPEG数据流中被下载的。跟随在缓存器4556中的SDG 4550的存储以后,在SDG 4550以后要被发送的MPEG数据段组的第一SG 4558被存储在缓存器4560中。同样地,在SDG 4550以后要被发送的MPEG数据段组的第二SG 4562被存储在缓存器4564中,以及在SDG 4550以后要被发送的MPEG数据段组的第三SG 4566被存储在缓存器4568中。
SG的存储继续进行着,直到所需要的数目的数据段4554已经被存储或SFG 4552被下载为止。如果被下载,则SFG 4552不被存储在存储单元中。
当该组的每个数据段被下载时,装置可通过一个事件通知应用程序,该组的数据段已经被装载。可替换地或附加地,装置可以通过发送一个事件给应用程序而只把MPEG数据段存储的完成或SFG 4552的下载通知应用程序。
在“以前的模式”下,紧接在SFG以前的预定数目的数据段被存储在存储单元中。对于每种类型的数据段(SDG、SG、SFG),应用程序可识别PID、TID、硬件过滤器、软件过滤器、和最大数据段长度。
在这种模式下的装载需要使用环形缓存器来存储MPEG数据段。参照图15,装置优选地首先应用硬件和软件过滤准则,从而使得能仅仅下载和存储SDG 4570。这避免了在装载SDG 4570以前装载接收机/译码器2020的RAM存储器容积4022的缓存器中的冗余的SG 4554。在检测后,SDG 4550没有被存储。然后,装置应用硬件和软件过滤准则,从而使得能从MPEG数据段组中下载想要的SG和SFG。
在图15所示的例子中,来自包括一个SDG、七个SG、和一个SFG的MPEG数据段组的三个SG 4554是要从MPEG数据流中被下载的。跟随在下载SDG 4570以后,在SDG 4570以后要被发送的MPEG数据段组的第一SG 4572被存储在缓存器4574中。同样地,在SDG 4550以后要被发送的MPEG数据段组的第二SG 4576、和在SDG 4570以后要被发送的MPEG数据段组的第三SG 4580被存储在缓存器4582中。
在SDG 4550以后要被发送的MPEG数据段组的第四SG 4584被存储在缓存器4574中,这也就是其中已存储第一SG 4572的缓存器。同样地,随后发送的SG 4586、4588、和4590中的每个SG被分别存储在缓存器4578、4582、和4574中。
SG的存储以这种周期性的方式继续进行,直到由装置检测到SFG4592为止。即使在SFG被检测到以前还没有装载想要数目的SG的情况下,也是这种情况。在检测以后,SFG 4592被存储在缓存器,以及表示成功的下载该组的事件被发送到应用程序。
有关该组被存储在接收机/译码器2020的RAM 4022的方式的信息可通过特定的调用步骤而被访问,该调用步骤返回该组的描述符。图16显示了这样的描述符的例子。描述符4600包括一个包含有在该组中的数据段的数目的区4602、和一系列包含有SDG或SFG(这取决于装载模式)以及以装载次序组成该组的数据段SG的缓存器4604。
在该组被装载以后,该组用由应用程序在请求下载该组时分配给它的名字唯一地来识别。
有可能附加一个数据段到该组或从该组中删除一个数据段。一个数据段可以属于一个以上的组。
当应用程序请求附加一个数据段到一个组时,包含新的数据段的缓存器的地址被放置在描述符4604的末尾,以及区4602被更新。当应用程序请求从一个组中删除一个数据段时,包含这个数据段的缓存器的地址被压缩到描述符4600中,以及区4602被更新。如果数据段不是该组中的最末的数据段,则描述符被重新组织,以去除任何空的存储空间。这样,通过删除所有的数据段有可能具有“空的组”。
各个装置用独特的识别符来标识,例如,“LCARD_DEVICE_ID”标识LCARD装置,以及“RCARD_DEVICE_ID”标识RCARD装置。
当新的装置4062被创建时,它可通过从广播中心下载相关的应用程序4056而被安装在现有的译码器2020中。典型地,由一个管理器处理的最大的装置数目是256。
这个下载在接收机译码器2020中由应用程序4056来执行,它检验硬件和软件版本,并且如果正确的话,则装载代表新的装置4062的软件模块,并请求工具箱程序4058把新的装置代码安装在固件内(在FLASH存储器中)。这可提供在译码器2020内新的功能的灵活和安全的安装,而不影响软件的其余部分。
将会看到,上面纯粹以例子来描述本发明,因此可以在本发明的范围内作出细节的修正。
在本说明以及(在适合的情况下)权利要求和附图中揭示的每个特性可独立地或以任何适当的组合被提供。
在上述的优选实施例中,本发明的某些特性可通过使用计算机软件被实现。然而,技术人员当然将很明白,这些特性的任何部分可通过使用硬件来实现。而且,很容易看到,由硬件、计算机软件等实现的功能是通过对电信号或使用电信号和其他类似的信号来实行的。
对于我们的共同待决的专利申请进行了交叉参考,所有的专利申请都具有相同的提交日期,题目为“Signal Generation andBroadcasting(信号产生和广播)”(代理人文档号码No.PC/ASB/19707),“Smartcard for use with a Receiver of EncryptedBroadcast Signals,and Receiver(供加密广播信号的接收机使用的智能卡和接收机)”(代理人文档号码No.PC/ASB/19708),“Broadcastand Reception System and Condition Access System therefor(广播和接收系统以及其条件接入系统)”(代理人文档号码No.PC/ASB/19710),“Downloading a Computer File from a Transmittervia a Receiver/Decoder to a Computer(从发射机通过接收机/译码器下载计算机文件到计算机)”(代理人文档号码No.PC/ASB/19711),“Transmission and Reception of Television Programmes and OtherData(电视节目和其它数据的发送和接收)”(代理人文档号码No.PC/ASB/19712),“Downloading Data(下载数据)”(代理人文档号码No.PC/ASB/19713),“Computer Memory Organisation(计算机存储器组织)”(代理人文档号码No.PC/ASB/19714),“Televisionor Radio Control System Development(电视或无线电控制系统开发)”(代理人文档号码No.PC/ASB/19715),“Extracting DataSections from a Transmitted Data Stream(从所发送的数据流中提取数据段)”(代理人文档号码No.PC/ASB/19716),“Access ControlSystem(访问控制系统)”(代理人文档号码No.PC/ASB/19717),“Data Processing System(数据处理系统)”(代理人文档号码No.PC/ASB/19718),和“Broadcast and Reception System,andReceiver/Decoder and Remote Controller therefor(广播和接收系统及其接收机/译码器和遥控器)”(代理人文档号码No.PC/ASB/19720)。这些文件的揭示内容在此引用,以供参考。该申请文件明细表包括本专利申请。
权利要求
1.用于存储所发送的数据流的多个数据段中的至少一个数据段的方法,所述一个数据段具有至少一个数据段特征,所述方法包括以下步骤接收数据流;按照至少所述一个数据段特征,从所述数据流滤出所述一个数据段;以及存储所述一个数据段。
2.按照权利要求1的方法,其特征在于,其中所述过滤步骤包括以下步骤规定至少一个过滤特征,每个特征包括过滤准则和用于该过滤准则的数值;把这个或每个数据段特征与各个过滤特征进行比较;以及当这个或每个数据段特征相应于各个过滤特征时,从所述数据流中滤出所述一个数据段。
3.通过使用按照权利要求1或权利要求2的方法来存储所发送的数据流的多个数据段的方法,其中每个数据段被存储在各个存储器单元中。
4.按照权利要求3的方法,其特征在于,其中所述方法还包括以下步骤规定至少一个数据过滤特征,每个数据特征包括数据过滤准则和用于该数据过滤准则的数值;把被存储在每个存储的数据段中的数据与各个数据过滤特征进行比较;以及当所述被存储在该存储的数据段中的数据与各个数据过滤特征不一致时,使得所述存储的数据段能够在所述存储器中被替代。
5.按照权利要求4的方法,其特征在于,还包括以下步骤当所述被存储在所述存储的数据段中的数据相应于所述各个数据过滤特征时,提供数据段识别信号给应用程序。
6.按照权利要求5的方法,其特征在于,其中所述数据段识别信号包括所述一个数据段的存储地址。
7.用于按照权利要求3到6中任一项的方法存储数据段组的方法,所述数据段在所述数据流中被周期地发送,每个组包括第一数据段和最末的数据段;所述方法包括以下步骤存储第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止。
8.用于按照权利要求3到6中任一项的方法存储数据段组的方法,所述数据段在所述数据流中被周期地发送,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤下载第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止,此时,被存储在存储器单元中的数据段被随后下载的数据段接连地覆盖写入,直到所述最末的数据段被下载为止;以及把所述最末的数据段存储在所述存储器中。
9.用于存储在数据流中周期地发送的数据段组的方法,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤接收数据流;下载第一数据段和把它存储在存储器中;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段被存储为止。
10.用于存储在数据流中被周期地发送的数据段组的方法,所述的组包括第一数据段和最末的数据段;所述方法包括以下步骤接收包括多个数据段的数据流;起初下载第一数据段;相继地下载紧接在所述第一数据段以后接连发送的数据段,每个数据段接连地被存储在各个存储器单元,直到所述最末的数据段被下载、或者预定数目的数据段已被存储为止,此时,被存储在存储器单元中的数据段被随后的下载的数据段接连地覆盖写入,直到所述最末的数据段被下载为止;以及把所述最末的数据段存储在所述存储器中。
11.基本上如这里参照附图所描述的用于存储所发送的数据流的多个数据段中的至少一个数据段的方法
12.用于存储所发送的数据流的多个数据段中的至少一个数据段的设备,所述一个数据段具有至少一个数据段特征,所述设备包括用于接收数据流的装置;用于按照至少所述一个数据段特征从所述数据流滤出所述一个数据段的过滤装置;以及用于存储所述一个数据段的装置。
13.按照权利要求12的设备,其特征在于,其中所述过滤装置包括用于规定至少一个过滤特征的装置,每个特征包括过滤准则和用于该过滤准则的数值;用于把这个或每个数据段特征与各个过滤特征进行比较的装置;以及用于当这个或每个数据段特征相应于各个过滤特征时从所述数据流中滤出所述一个数据段的装置。
14.按照权利要求12或13的、用于下载多个这样的数据段的设备,其特征在于,所述存储装置包括多个用于存储各个数据段的存储器单元。
15.按照权利要求14的设备,其特征在于,还包括用于规定至少一个数据过滤特征的装置,每个数据特征包括数据过滤准则和用于该数据过滤准则的数值;用于把被存储在每个存储的数据段中的数据与各个数据过滤特征进行比较的装置;以及用于当所述被存储在该存储的数据段中的数据与各个数据过滤特征不一致时使得所述存储的数据段能够在所述存储器中被替代的装置。
16.按照权利要求15的设备,其特征在于,还包括提供装置,用于当所述被存储在所述存储的数据段中的数据相应于所述各个数据过滤特征时,提供数据段识别信号给应用程序。
17.按照权利要求16的设备,其特征在于,其中所述数据段识别信号包括所述一个数据段的存储地址。
18.按照任何的上述的权利要求的、可被用于这样的以MPEG比特流形式的数据流的方法或设备,该MPEG比特流除了所述数据段以外还包括视频和音频电视数据。
19.基本上如这里参照附图所描述的用于存储所发送的数据流的多个数据段中的至少一个数据段的设备。
全文摘要
提供了存储在MPEG数据流中的多个MPEG数据段的至少一个数据段的方法,MPEG数据段具有至少一个MPEG数据段特征。MPEG数据流被接收,以及一个MPEG数据段按照至少一个MPEG数据段特征从MPEG数据流中滤出。MPEG数据段随后被存储。
文档编号G06F9/48GK1254469SQ97182176
公开日2000年5月24日 申请日期1997年4月25日 优先权日1997年3月21日
发明者J-C·萨尔法蒂, J·梅里克, C·德克莱克 申请人:卡纳尔股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1