将一系列的数据命令转换为调制信号的装置以及方法 【技术领域】
本发明涉及一种在磁盘、光磁盘、或光盘等记录媒介上,记录、储存一系列的数据命令并将其转换为调制信号的装置以及方法。
背景技术
一般,为了在磁盘、光磁盘、光盘等记录媒介上,记录、储存一系列的数据,需将上述数据调制为适合于记录媒介地代码命令序列,例如,在上述调制后的代码命令序列中含有直流成分时,容易发生磁盘驱动器等伺服控制中产生抓取轨道错误等多种错误信号,或出现偏移、不稳定(jitter)的现象。所以,要将直流成分最少的信号,记录到记录媒介上,其原因是,记录频道对低频成分通常是没有反应的。一方面,在信号中抑制低频成分,对于从轨道上记录信号的记录媒介中读出信号时是非常有利的,这是因为可以使连续的抓取轨道操作受到控制而不受记录信号的影响。抑抵制低频成分还可以改善抓取轨道运作,使其减少可听干扰。由于上述多种原因,所以调制的代码命令序列要尽量不要含直流成分,为了防止调制后的代码命令序列含有直流成分,使用的方法是DSV控制方法,关于DSV控制方法的说明如下。
首先,如图1所示,一般的数据调制装置,包括:
代码命令产生器10,将一系列的用户数据,即数据命令,输出为数个代码命令序列;
代码命令选择器20,在上述代码命令顺序中,选出DSV最少的一个代码命令,并输出;
记录信号调制器30,将上述DSV最少的一个代码命令,调制成记录信号并记录。
如图2所示,上述代码命令产生器10,包括:加法器(augmentor)100、数个NRZI代码编码器(101~116);
上述代码命令选择器20,包括:数个代码储存器(2011~2161)、和DSV储存/计算部(2021~2162)以及选择部(220)。
上述加法器(augmentor)100,将互不相同的一定位数的数字命令,例如,将各不相同的4位数字命令(T=0000,0001...1111),配置在上述数据命令的前端、中端或后端中的任意一个部分,产生互不相同的16个中间序列;
上述NRZI代码编码器101~116,进行NRZI编码运作,即表示出,以2进制记录的‘0’,在记录媒介中没有任何变化,以2进制记录的‘1’,在记录媒介中向相反的方向迁移,以此来输出对于上述数个中间序列的各个代码命令;
上述代码命令选择器20包括的代码储存器2011~2161,将上述代码命令产生器10产生并输出的、互不相同的代码命令序列,临时储存;
上述DSV储存/计算部2012~2162,将临时储存在上述代码储存器中的对应于当前代码命令的直流成分累积到对应于之前的代码命令的直流成分累积值上后,输出其累积的当前的DSV值;
上述选择部220,将上述DSV储存/计算部2011~2161计算、输出的当前的DSV,即,储存在16个代码储存器的、对于各个代码命令的16个DSV,相比较,在其中选出DSV值最小的一个代码命令并输出。
DSV值最小的一个代码命令,将被选择并输出到上述记录信号调制器30,结果可以得到直流成分最少的代码命令,以适合于记录媒介的调制信号记录、储存。
但是,若通过上述过程选择代码命令,也有可能发生,上述代码命令的数据位列中‘1’与‘1’之间连续的‘0’的个数无限多的情况,此时,会存在,从记录媒介中读出的播放信号级别长时间无变化的区间,因此,对此区间的锁相环(PLL)播放运作变得不稳定,会发生不能正常进行数据播放运作的问题。
【发明内容】
为解决现有技术的缺点,本发明提供一种将一系列的数据命令转换为调制信号的装置以及方法:即选择磁盘、光磁盘、或光盘等记录媒介上记录的代码命令时,不仅是数字和值(DSV),而且代码命令的数据位列中‘1’与‘1’之间连续的‘0’个数也受限制,因而能保持锁相环(PLL)播放的稳定性和数据播放运作的正常性。
为了达到上述目的,本发明采用如下技术方案:
本发明的将一系列的数据命令转换为调制信号的装置,其特点是,包括:
序列产生工具,在输入的数据命令上附加各不相同的数字命令后,以一定的解码方式解码而产生数个代码命令序列;
数字合计算工具,将对数个代码命令序列的数字和值(Digital Sum Value-DSV)进行计算;
罚值(penalty)计算工具计算所述产生的数个代码命令序列中各个位内连续的‘1’之间存在的‘0’个数的罚值(penalty)的;
代码命令序列的选择工具,以及根据上述求出来的数字和值与罚值(penalty)之间的和,将一个代码命令序列选为记录的代码命令序列。
本发明的将一系列的数据命令转换为调制信号的方法,其特点是,包括:
第一阶段,在输入的数据命令上附加各不相同的数字命令后,以所定的编码方式编码而产生数个代码命令序列;
第二阶段,将对上述产生的数个代码命令序列的数字和值(Digital SumValue-DSV)进行计算的同时将每个位内连续的‘1’之间‘0’的个数的罚值(penalty)进行计算;
第三阶段,根据上述求出来的数字和值(DSV)与罚值(penalty)之间的和,将一个代码命令序列选为记录的代码命令序列。
【附图说明】
图1是将数据命令转换为调制信号的装置的结构框图;
图2是将数据命令转换为调制信号的装置内的代码命令产生器和代码命令选择器的结构框图;
图3是本发明的将数据命令转换为调制信号的装置内的代码命令产生器和代码命令选择器的结构框图。
【具体实施方式】
为达到上述目的,本发明的将一系列的数据命令转换为调制信号的装置,其特点是,包括:
序列产生工具,在输入的数据命令上附加各不相同的数字命令后,以一定的编码方式编码而产生数个代码命令序列;
数字和计算工具,将对数个代码命令序列的数字和(Digital Sum Value-DSV)进行计算;
罚值(penalty)计算工具,计算出对于上述产生的数个代码命令序列的,各个位内连续的‘1’之间存在的‘0’个数的罚值(penalty);
代码命令序列的选择工具,根据上述求出来的数字和值与罚值(penalty)之间的和,将一个代码命令序列选为记录的代码命令序列。
本发明的将一系列的数据命令转换为调制信号的方法,其特点是,包括:
第一阶段,在输入的数据命令上附加各不相同的数字命令后,以一定的编码方式编码而产生数个代码命令序列;
第二阶段,对上述产生的、数个代码命令序列的数字和值(Digital Sum Value-DSV)进行计算的同时,计算每个位内连续的‘1’之间‘0’的个数的罚值(penalty);
第三阶段,根据上述求出来的数字和值(DSV)与罚值(penalty)之间的和,将一个代码命令序列选为记录的代码命令序列。
下面结合附图和较佳实施例进一步说明本发明的将一系列的数据代码转换为调制信号的装置以及方法。
如图1所示,本发明中的数据调制装置,包括:代码命令产生器;代码命令选择器;记录信号调制器。
如图3所示,代码命令产生器10,包括:
加法器(augmentor)100、数个NRZI代码编码器101~116;
代码命令选择器20,包括:
数个代码储存器5011~5161、数字和值(DSV)储存/计算部(5012~5162)、选择部(520),还包括罚值(penalty)计算部(5013~5163);罚值(penalty)计算部(5013~5163)是计算代码命令的数据位列中‘1’与‘1’之间连续的‘0’的个数的罚值的(penalty)。对于表示为(d,k)代码的运行长度限制(Run Length Limited-RLL)代码,要保证连续的数据‘1’之间附加‘0’的个数至少要d个,又不超过k个的状态,具有此条件的RLL代码,根据上述连续的‘1’之间记录的‘0’的个数,计算出其相应的罚值(penalty)。
选择部520,对上述数字和值DSV储存/计算部5012~5162计算、输出的各个代码命令的数字和值(DSV),以及上述罚值(penalty)计算部5013~5163计算、输出的各个代码命令的罚值(penalty),进行加算并比较总的罚值(penalty),之后选择其中罚值(penalty)最少的一个代码命令并输出;将对此详细说明如下:
代码命令产生器10的加法器(augmentor)100,将互不相同的一定位数的数字命令,例如,将各不相同的4位数字命令(T=0000,0001...1111),配置在上述数据命令的前端、中端或后端中的任意一个部分,产生互不相同的16个中间序列;上述NRZI代码编码器101~116,如图1中所述,进行NRZI编码运作,输出对应于上述数个中间序列的各个代码命令;
代码命令选择器50包括的代码储存器5011~5161,将上述代码命令产生器10产生并输出的、互不相同的代码命令序列,临时储存;数字和值(DSV)储存/计算部5012~5162将临时储存在代码储存器5011~5161的、对应于当前代码命令的直流成分,累积到对应于之前代码命令的直流成分累积值上,输出其累积的当前的数字和值(DSV)。
罚值(penalty)计算部5013~5163将选择部520选择输出的任意一个代码命令的数据位列和代码储存器临时储存的当前代码命令的数据位列,连续地确认并计算出之前代码命令和当前代码命令之间的连续数据位列中,‘1’与‘1’之间存在的‘0’的个数罚值(penalty)。例如,将连续的‘1’之间存在的‘0’的个数K,与事先所定的第一、第二基准值(n,m,0<n<m)相比较,若上述‘0’的个数K,大于第一基准值n又小于第二基准值m,则在其‘0’的个数Kn上乘上第一加权值a;若上述‘0’的个数K大于上述第二基准值m,则在其‘0’的个数Km上乘上第二加权值(b,a<b)后,将其和,作为相应代码命令的罚值(penalty)计算并输出。
举一个例子,假设代码命令的数据位列为‘1001000010000001’;第一基准值n=3;第二基准值m=5;第一、第二加权值分别为a=0.3、b=0.7,罚值(penalty)计算部将连续的‘1’之间存在的‘0’的个数K检测为‘2’、‘4’、‘6’并确认,对上述大于n=3,小于m=5的K=‘4’,乘上加权值a=0.3;对上述大于m=5的K=‘6’,乘上a=0.7,因此,最终上述代码命令的罚值(penalty)计算并输出罚值(penalty)K=aKn+bKn=0.3×4+0.7×6=5.4。
上述第一、第二基准值和第一、第二加权值(a,b),可以由设计记录装置的设计者而任意可变地设定,也可以,利用,上述代码命令的数据位列中连续的‘1’之间存在‘0’的个数最多的一个罚值K来计算、输出罚值(penalty)K。
另外,数字和值(DSV)储存/计算部5012~5162,将代码储存器临时储存的当前代码命令的直流成分,与之前代码命令的直流成分累积值的数字和值(DSV)累积,输出其累积后的当前数字和值(DSV)值。
选择部520根据数字和值(DSV)储存/计算部5012~5162计算、输出的当前数字和值(DSV),即根据16个代码储存器储存的各个代码命令的16个数字和值(DSV以及上述罚值(penalty)K计算部5013~5163计算、输出的罚值(penalty)K来选出直流成分少同时代码命令数据位列中连续的‘1’之间存在的‘0’的个数也少的一个代码命令并输出。
即选择部520将数字和值(DSV)储存/计算部5012~5162和罚值(penalty)计算部5013~5163计算、输出的数字和值(DSV)和罚值(penalty)加算,选出其加算值最小的一个代码命令并输出;记录信号调制器30对直流成分少、同时代码命令数据位列中连续的‘1’之间存在的‘0’的个数也少的一个代码命令,进行调制信号处理,因而可以记录在磁盘、光磁盘、或光盘等记录媒介上。
选择部520,可以对数字和值(DSV)和罚值(penalty)分别赋予互不相同的第一、第二加权值。
以上,所述的本发明的实施例,是为了预期的目的而展开的,熟知本领域的人员可以在权利要求讲述的技术思想和其技术范围内,进行多种改良、变更、替代、或者附加。
本发明是关于一种将一系列的数据命令转换为调制信号的装置以及方法的。在输入的数据命令上附加各不相同的数字命令后,以NRZI等所定的编码方式解编而产生数个代码命令序列,对数个代码命令序列的数字和值(Digital Sum Value--DSV)进行计算的同时计算每个位内连续的‘1’之间‘0’的个数的罚值(penalty),选出计算出来的数字和值(DSV)和罚值(penalty)之和相对最小的一个代码命令序列,作为记录的代码命令序列,因此,选择在磁盘、光磁盘、或光盘等记录媒介上记录的代码命令时,不仅是数字和值DSV,代码命令的数据位列中‘1’与‘1’之间连续的‘0’的个数也受限制,因而保持PLL播放的稳定性和数据播放运作的正常性。