专利名称:数据分组时标转换方法和数据记录器的制作方法
技术领域:
本发明涉及用于位流记录和重放,将基于第一个时钟速率的数据分组时标转变为基于第二个时钟速率的数据分组时标的方法和数据记录器。
背景技术:
DVD(数字通用光盘)流记录将很快被确定,同时关系到用于记录和回放数字位流的DVD可重写/可重录光盘,数字位流包括例如,在ISO/IEC 11172、13818或14496中规定的MPEG数据分组。为了能够正确实时回放例如依照DVB-S标准ETS 300 421存储的MPEG-2传送分组,每个要被记录的数据分组上都要加上时间信息。
在申请人的WO-A-00/14952中,建议也在DVD流记录器中使用原始的IEEE 1394时标。
发明内容
在记录时,DVD数据流器(DVD streamer)从应用装置接收到数据流。在重放时,数据流器向同一个或者另一个应用装置输出重放的数据流。本发明所解决的问题是有效地提供重放数据分组所需要的基准时间信息。在权利要求1公开的方法中解决了这个问题。
在权利要求6中公开了应用这个方法的数据记录器。
DVD数据流器通过接口和应用装置相连。在使用例如IEEE 1394接口的家庭网络环境中,这个接口的定时发生或者定时标和相应的接口时间基准再生都按照特定的IEEE 1394格式来执行。
这样由接口产生的时标也可以被用于DVD流的记录,而不需要额外产生独立的数据流器特定时标。但是,要进行DVD流记录,由于所需DVD数据流器时标格式与上述的IEEE 1394时标格式的不同,就要进行时标格式的转换。根据可重写/可重录光盘DVD规范,第五部分,流记录,DVD流记录的时标格式是使用27.000兆赫兹时钟频率的48位格式。根据本发明,进行格式转换,在格式转换中,确定了连续接口时标的差别,并用该差别来计算用于记录的DVD流记录器时标。
更有利的是,可以将环绕加权(wraparound-burdened)IEEE 1394时标转换为DVD流记录格式,从而避免超长整型数据的除法运算或者浮点运算。
理论上,本发明方法适用于将基于第一个时钟速率的数据分组时标PATA转变为基于第二个时钟速率的数据分组时标PATB,所述时钟速率具有比值B/A,A得自所述第一个时钟速率,B得自所述第二个时钟速率,所述方法包括以下步骤如果没有PATA时标环绕发生,计算D(i)=((PATA(i)-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)-PATA(i-1)*B+R(i-1))mod A;如果在i-1和i之间有PATA时标环绕发生,计算D(i)=((PATA(i)+PAT_M-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)+PAT_M-PATA(i-1)*B+R(i-1))mod A,其中PATB(i)=PATB(i-1)+D(i),‘i’表示当前的时标,‘i-1’表示前一个时标,‘/’代表整数除法,R是用来避免舍入误差积累的余数,PAT_M是所述第一个时钟速率时标计数器的环绕值。
PAT_M环绕值是PATA每增加“1”时可能的最大值。
在各自相关的权利要求中公开了与本发明方法相关的其他实施例。
理论上,数据记录器适用于记录和重放数据分组,使用将基于第一个时钟速率的数据分组时标PATA转变为基于第二个时钟速率的数据分组时标PATB的装置,所述时钟速率具有比值B/A,A得自所述第一个时钟速率,B得自所述第二个时钟速率,数据记录器包括以下特征如果没有PATA时标环绕发生,计算D(i)=((PATA(i)-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)-PATA(i-1)*B+R(i-1))mod A;如果在i-1和i之间有PATA时标环绕发生,计算D(i)=((PATA(i)+PAT_M-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)+PAT_M-PATA(i-1)*B+R(i-1))mod A,其中PATB(i)=PATB(i-1)+D(i),‘i’表示当前的时标,‘i-1’表示前一个时标,‘/’代表整数除法,R是用来避免舍入误差积累的余数,PAT M是所述第一个时钟速率时标计数器的环绕值。
在各自相关的权利要求中公开了与本发明设备相关的其他实施例。
参照以下各图给出了本发明的典型实施例图1通过接口进行DVD流记录的简化方块图;图2依据DVD流记录规范给出的时标格式;图3DVD流记录PAT(分组到达时间)计算器简化方框图。
具体实施例方式
在图1中,应用装置APPD通过IF接口与DVD数据流器单元STRU相连接。属于APPD的电路接口标定时标和缓存级TSBI,它在将来自APPD的数据分组传送到IF之前对数据分组进行时标的标定和缓存;缓存和时标处理级BTSHI,它从IF接口接收数据分组、进行中间的缓存并在正确的时间把数据分组传送给APPD。
在实时记录模式,DVD数据流器经过IEEE 1394 IF接口为一个或者多个程序接收例如MPEG-2传送分组。这些分组经过另一个缓存和时标处理级BTSHS和另一个标定时标和缓存级TSBS到达数据流器单元STRU。来自STRU的回放数据分组从STRU经过缓存和时间再生级BTRS和另一个缓存和时标处理级BTSS到达IF。
A-A虚线是数据流器相关STRRS级/单元TSBS、BTRS和STRU与接口相关IFRS级/单元TSBI、BTSHS、BTSS、BTSHI和IF之间的功能界限。
STRU、BTSHS、TSBS、BTRS和BTSS单元/级属于DVD数据流器STR,所述DVD数据流器STR在图中用有阴影的方框表示。
IEEE 1394的时标格式基于24.576兆赫兹时钟并且包括两个环绕计数器。第一个计数器输出的是从‘0’到‘3071’的12位循环偏移量,第二个计数器输出的是从‘0’到‘7999’的13位循环计数。通过计数器的上限,就进行了到零的回环。第一个计数器循环偏移量的回环向第二个循环计数字段进位。循环计数完整的回环时间周期是精确的1秒钟。
为了在DVD数据流器中处理实时的数据分组,每个DVD传送分组都有它自己的时标。常规情况下,DVD数据流器将和记录的数据分组一起产生和记录它自己的时标。这样的DVD数据流器时标在之后的重放模式中将被用来按照记录时的原有时间位置输出数据分组。
但是,DVD数据流器包括IEEE 1394接口。这样,IEEE 1394的时标已经存在于DVD数据流器中了,尽管这样的格式并不适合于DVD流记录的用途。由于从一个向另一个高精度的转换并不是微不足道的,24.576兆赫兹和27.000兆赫兹时钟频率的差别将会引起问题。如果可以不考虑这些问题而使用IEEE 1394时标,那么单独的DVD时标将是多余的。因此,如果根据本发明利用IEEE 1394时标来记录DVD流,那么32位/24.576兆赫兹的格式就必须转换为上述提到的48位/27.000兆赫兹的DVD格式,标识在图2中,其中,PAT表示分组到达时间。
PAT由39位的PAT base和9位的PAT extension构成。PAT用来记录流对象信息。0位至31位被加到每个应用分组,0位到40位在DVD流记录中用来作为系统时钟基准。DVD数据流器器件的PATDVDstreamer有以下特征PAT_base(i)=((system_clock*t(i))/300)mod 239PAT_exten(i)=(system_clock*t(i))mod 300PATDVDsteamer(i)=PAT_base(i)*300+PAT_exten(i),其中,‘/’代表整数除法,‘i’代表当前的数据分组,system_clock取值27.000兆赫兹。
对于从IEEE 1394格式到DVD数据流器格式的时标转换,必须考虑两个问题系统时钟从24.567兆赫兹转换到27.000兆赫兹将引起一个对用户不友好的因子分解,比如3375/3072。其他用户不友好的因子分解也是可能的,比如1125/1024。
IEEE 1394时标计数器的1秒钟回环。
目前大部分处理器平台对整型计算的位长限制为32位。但是,如上所述,要处理48位的时标格式。为了避免对超长整型数据类型的除法运算或者浮点运算,提出了下述的创造性程序。程序使用C语言,其中,‘%’是模余(取模)运算。
计算基于连续的IEEE 1394时标之间的差异。
i=0时,PATDVDstreamer(0)=0,即,方便起见,PATstart=0。但是PATstart可以有任何其他的初始值。对于‘i’的其他所有值,连续IEEE 1394时标之间在时间上的差别可以按照如下的方式转换为DVD数据流器格式如果没有IEEE 1394时标环绕{delta_27(i)=((PATIEEE1394(i)-PATIEEE1394(i-1))*3375+remainder(i-1))/3072remainder(i)=((PATIEEE1394(i)-PATIEEE1394(i-1))*3375+remainder(i-1))%3072}如果IEEE 1394时标环绕{delta_27(i)=((PATIEEE1394(i)+PAT_MAXiEEE1394-PATIEEE1394(i-1))*3375+remainder(i-1))/3072remainder(i)=((PATIEEE1394(i)+PAT_MAXIEEE1394-PATIEEE1394(i-1))*3375+remainder(i-1))%3072}其中PAT_MAXIEEE1394=24576000,remainder(0)=0。
有利之处在于,包括余数的运算可以避免舍入误差的积累。
计算在如下的假设下进行(PATIEEE1394(i)-PATIEEE1394(i-1))*3375<2BL其中,‘BL’是涉及的整型计算的位长度,即,在目前大多数处理器平台中‘BL’取32。
DVD数据流器格式中的PAT计算结果为,PATDVDstreamer(i)=PATDVDstreamer(i-1)+delta_27(i)。PATDVDstreamer(i)的两个组成元素可以通过如下式子进行计算PAT_exten(i)=(PAT_exten(i-1)+delta_27(i))%300PAT_base(i)=PAT_base(i-1)+(PAT_exten(i-1)+delta_27(i))/300这样有利地避免了对48位整数的除法运算。
在图3中,时标分割器TSP从经过IF接口和BTSHS级的位流中收集所需的IEEE 1394时标。IEEE 1394 PAT时标连续地输入存储器装置M1和M2,例如,存储PATIEEE1394(i)和PATIEEE1394(i-1)的移位寄存器。在各种情况下,当前需要的两个PATIEEE1394的数值从M1和M2中读出,输入计算器或者微处理器μP,根据以上的公式计算PATDVDstreamer时标。
应用上述的处理过程计算48位DVD流记录时标是非常有效的,尤其是在实时系统的应用中。超长整型数据类型的除法运算和浮点运算可以得到避免。
本发明可以相应地应用于其他任何类型的接口和数据流记录器,例如,CD相关的数据流记录器。
给出的数字对其他应用可以作出相应的修改。
权利要求
1.一种将基于第一个时钟速率的数据分组时标转变为基于第二个时钟速率的数据分组时标的方法,所述时钟速率具有比值B/A,A得自所述第一个时钟速率,B得自所述第二个时钟速率,该方法的特征为以下步骤如果没有PATA时标环绕发生,计算(μP)D(i)=((PATA(i)-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)-PATA(i-1)*B+R(i-1))mod A;如果在i-1和i之间有PATA时标环绕发生,计算(μP)D(i)=((PATA(i)+PAT_M-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)+PAT_M-PATA(i-1)*B+R(i-1))mod A,其中PATB(i)=PATB(i-1)+D(i),‘i’表示当前的时标(M1),‘i-1’表示前一个时标(M2),‘/’代表整数除法,R是用来避免舍入误差积累的余数,PAT M是所述第一个时钟速率时标计数器的环绕值。
2.按照权利要求1所述的方法,其特征在于,所述第二个数据分组时标PATB的初始值PATB(0)为0。
3.按照权利要求1或2所述的方法,其特征在于,所述第二个数据分组时标PATB由基本部分PATBA和扩展部分PATEX组成,根据下式计算(μP)PATEX(i)=(PATEX(i-1)+D(i))mod 300PATBA(i)=PATBA(i-1)+(PATEX(i-1)+D(i))/300。
4.按照权利要求1至3之一所述的方法,其特征在于,所述第一个和第二个数据分组时标的位长互不相同。
5.按照权利要求1至4之一所述的方法,其特征在于,所述第一个时标源自于接口(IF),例如,IEEE 1394接口,所述第二个时标用于将数据分组记录在已包括该接口的记录器(STR)上。
6.一种用于使用装置(TSP,M1,M2,μP)记录和重放数据分组的数据记录器(STR),所述装置用于将基于第一个时钟速率的数据分组时标PATA转变为基于第二个时钟速率的数据分组时标PATB,所述时钟速率具有比值B/A,A得自所述第一个时钟速率,B得自所述第二个时钟速率,所述数据记录器具有以下特征如果没有PATA时标环绕发生,计算(μP)D(i)=((PATA(i)-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)-PATA(i-1)*B+R(i-1))mod A;如果在i-1和i之间有PATA时标环绕发生,计算(μP)D(i)=((PATA(i)+PAT_M-PATA(i-1))*B+R(i-1))/AR(i)=((PATA(i)+PAT_M-PATA(i-1)*B+R(i-1))mod A;其中PATB(i)=PATB(i-1)+D(i),‘i’表示当前的时标(M1),‘i-1’表示前一个时标(M2),‘/’代表整数除法,R是用来避免舍入误差积累的余数,PAT M是所述第一个时钟速率时标计数器的环绕值。
7.按照权利要求6所述的数据记录器,其特征在于,所述第二个数据分组时标PATB的初始值PATB(0)为0。
8.按照权利要求6或7所述的数据记录器,其特征在于,所述第二个数据分组时标PATB由基本部分PATBA和扩展部分PATEX组成,根据下式计算(μP)PATEX(i)=(PATEX(i-1)+D(i))mod 300PATBA(i)=PATBA(i-1)+(PATEX(i-1)+D(i))/300。
9.按照权利要求6至8之一所述的数据记录器,其特征在于,所述第一个和第二个数据分组时标的位长互不相同。
10.按照权利要求6至9之一所述的数据记录器,其特征在于,所述第一个时标源自于接口(IF),例如,IEEE 1394接口,所述第二个时标用于将数据分组记录在已包括该接口的记录器上。
全文摘要
DVD可重写/可重录光盘将被用来记录和回放数字位流,例如,MPEG数据分组。为了能够对存储的MPEG传送分组实现正确的实时回放,每个被记录的数据分组都要加上时间信息。DVD数据流器(DVD streamer)通过接口,如,IEEE1394,与应用装置相连接。接口内部使用有特殊格式的时标。依照本发明,这种接口产生的时标也可以用来进行DVD流记录,而不用额外产生独立的数据流器特定时标。但是,由于DVD数据流器时标格式与IEEE 1394时标格式的不同,要进行时标格式转换。为了进行所述时标格式转换,确定了连续IEEE1394时标之间的差别,并用于计算DVD流记录时标。
文档编号H04N7/52GK1459199SQ01815768
公开日2003年11月26日 申请日期2001年9月3日 优先权日2000年9月16日
发明者迪尔克·阿道夫, 沃尔夫冈·克劳斯贝耶, 李辉, 拉尔夫·奥斯特曼 申请人:汤姆森许可贸易公司