二进制数字编码/译码方法与装置的制作方法

文档序号:6742085阅读:323来源:国知局
专利名称:二进制数字编码/译码方法与装置的制作方法
在数字磁记录,数字光记录中广泛采用游程长度受限编码技术来提高记录密度。所谓游程长度受限码是指码序列中相邻2个1之间的0个数限在d,k之间的码。因此它也称为(d,k)受限码。d受限的目的在于增大最小磁化翻转或光刻的间隔,以减少位间串扰。k受限的目的在于保证可以从再生信号中提取用于数据恢复的时钟。为了把随机的二进制数据序列变换成(d,k)受限码序列需把m位数据转换成n位码字。比率m/n又称为编码效率。
评价一个游程长度受限码性能的参数有*密度比率Dr=(d+1)*m/n*最小时间间隔Tmin=Dr*Td(Td为数据位时间)*最大时间间隔Tmax=(k+1)*Td*m/n*检测窗口Tw=m/n*Td通常我们要求一个码的Dr,Tw要大,而Tmax又要小,Dr与Tw大有利于减少位间干扰,提高位密度及系统的可靠性。假定记录系统允许的Tmin一样大,那么Dr大的码,Td小,因而它可达到的记录密度就大。Tw大的码在数据检测时可靠性好。再生数据因记录介面与记录头之间的相对速度的波动,位间干扰等原因,经常会偏离位中间,从而导致数据检测的错误。如果Tw大,那么波峰偏离数据位的可能性就小,从而提高了可靠性。然而Dr大的码,Tw又比较小,反之亦然。因此需要依据具体应用来加以选挥。例如,在图象传输与记录中对可靠性的要求不太苛刻,但要求传输速度快,记录密度大,这样就可以选择Dr大但Tw小的码。而一些对可靠性要求较高的系统,则可以选择Tw大,而Dr相对较小的码。
在评价(d,k)码时还需要考虑一个性能指标误差传播。所谓误差传播是指读通道的一位错引起译码数据的多位错。记录系统因介质缺陷,位漂移等原因总会或多或少地产生错误。这种错误因误差传播而扩大了。如果一个码的误差传播大就必须采取更为复杂的纠检错码来控制错误。因此,我们总是希望码的误差传播尽可能地小,以便更有效地保证数据的完整性。
美国专利4,553,131中给出了一个(4,22)及(4,19)码。中国专利8506794也给出了一个(4,17)码。这些码的Dr和Tw都较优。特别是与(5,k)(k>14)相比具有相同的Dr,但Tw更大。因此它是一种更优的编码。(4,22)码的Tmax比较大,不利于自同步,它的误差传播为12个数据位。上述两个专利所述的(4,19)及(4,17)码,虽然具有较小的Tmax,但误差传播不可收敛,这势必影响系统的可靠性。
本发明的目的之一是给出一种Tmax比较小,而且误差传播受限的(4,k)码。本发明的另一目的是给出一种简单的编码译码方法与装置。
下面结合附图来说明本发明的实施。


图1为本发明的一种编码对照表;图2为图1码表的编码状态转换图;图3为图1码表的编码电路;图4为一个数据序列的编码时序;图5为图1码表的译码算法;图6为图1码表的译码电路;图7为图1码表的译码状态图;图8为图1码表的另一种译码电路;图9为一个码序列的译码时序;图10为本发明的另一种编码对照表;
图11为图10编码表的编码状态图;图12为图10码表的译码算法;图13为图10码表的译码状态图。
参见图1为本发明的一种编码方式,它是一种全字向前看码,同时也结合变长码。它有一个基本的数据字--码字对照关系。图1中的规则1--4就是基本对照表。在基本对照表中每一个数据字对应一个相应的码字。图1中的A,B,C,D分别表示四个不同的数据字,这种数据字称为基数据字。它们可以是00,01,10,11中的任何一种一一对应关系。也就是说可以认为A=00,B=01,C=10,D=11,也可以按如下方式赋值A=11,B=00,C=01,D=10。其它规则属于替代对照表,其中规则5-12,15-18用于替代由基本对照规则1-4所产生的破坏d受限的连接。例如,当有AB两个基本数据字串时,如若按基本对照表规则编码,得到码子序列0001000100中两个1之间的0个数为3而不是4,因而必须用规则5进行替代,得到码子序列0001000000。由基本对照规则1-4将产生六个破坏d受限的码字连接。规则5-9用于替代其中的五个,另一个由规则10-12,15-18以变长码方式进行替代。当在采用规则2-3编码之后,跟着采用规则7进行编码时,产生的码子序列也将破坏d受限,规则13,14就是用于替代由规则7与规则2,3所产生的这两个破坏d受限的连接。由于有规则5,因此在规则1之后不会紧跟着出现规则7。由该对照表所产生的码,最大游程为20,因此它是(4,20)码。当在数据字ADDD之后出现AC及AD时所产生的码序列具有最大的0游程。
全字向前看码的编码步骤如下第一步串行接收数据序列并寄存于数据寄存器中。
第二步按字长由长到短的顺序判别所接收的数据子序列属于编码表中的哪一个数据字,并按该数据字的对照关系编码,得到相应的码字。
第三步将编码的码字送到码寄存器,并串行移出,得到码序列,同时接收同样位数的数据子序列到数据寄存器中,并重复第二步和第三步,直至全部数据序列都编码为止。
在设计编码器时如果按变字长来进行的话,编码器就比较复杂,如果按基字长来进行编码(对本码来说,每次对两位数据进行编码),那么编码器就比较简单,既降低成本又有利于集成。按基字长编码有三种途径一种是把变长码转化成前后相关的定长码,而后按定长码来编码,这种方法对许多码无效。第二种方法是采用一个位置指示器或组界指示器,指示当前被编码的基数据字位于变长数据字中的位置以及所属数据字的字长。当码表有较多种码字字长时,指示器电路将非常复杂。第三种方法是采用状态转换法,即把编码表转化成某种前后相关的以状态转换表表示的定长码,再加以实现。本发明所采用的就是第三种方法。下面结合实例详述本发明的编码状态图和编码装置。
参见图2为本发明的编码之一的编码状态表,它共有4种状态,其中0为初始状态。图3为相应的编码装置。假定有如下数据序列BDADDBCADXX(1)其中B为数据序列的起始,X为无关位(下同)。
第一步数据序列(1)以时钟0的频率串行移入输入移位寄存器10,当B移到寄存器的最左边两位时,编码器开始工作,这时状态寄存器12的状态为初始状态0。
第二步编码逻辑11依据八位移位寄存器10的内容和状态寄存器的状态0,得到基数据字B所对应的码字10000(图2的17),同时得到下一个转向状态为1。
第三步编码逻辑11把编码结果10000及转向状态1分别送到输出寄存器13和状态寄存器12(由作用于13和12的置入时钟2完成)。
第四步输出寄存器13以时钟1的频率将接收的码字串行移出,与此同时数据寄存器10继续以时钟0的频率串行接收数据序列。时钟1的频率为时钟0的5/2倍。
当下一个基码字D移到移位寄存器的最左边时,码寄存器13也把接收的码字移出,这时寄存器10的内容为DADD,而状态寄存器的状态为1,由编码逻辑产生的对应基数据字D的码字为00000(图2的26),而转向状态为0。随后时钟2变为低电平,又将编码结果置入码寄存器和状态寄存器,之后时钟2又变成高电平,时钟1将编码结果串行移出。
当下一个基码字A移到10的最左边时,数据寄存器10的内容为ADDB,状态寄存器的状态为0。于是编码逻辑产生的码字为00001,而转向状态为3(图2的8)。此后各寄存器及状态的变化如下表所示。
寄存器10 状态 码 转向状态 对应图2的规则ADDB 0 00001 38DDBC 3 00001 223DBCA 2 00000 129BCAD 1 00000 026CADA 0 01000 018ADAX 0 00010 24DAXX 2 00000 128AXXX 1 00000 026XXXX 0编码逻辑11既可以是ROM,也可以是组合逻辑,还可以是PAL。当用PAL时,状态寄存器13可以省去。
图4示出了数据序列(1)编码过程的时序。其中a)时钟0为接收移出数据序列的时钟;b)为数据序列(1);c)为该数据序列所对应的状态序列;d)为码接收时钟2,e)为码移位时钟1;f)为编码码序列。
下面论述本发明编码的译码器。参见图5为本发明编码的译码算法。由图可见译码时最多向前看五个码位向后看十一个码位。因此有关位共有二十一位,误差传播最多为十位数据位。通过适当选择B,D的值。如取B=10,D=11那么误差传播只有九位。
图6为对应于图5译码算法的译码电路。再生码序列由同步时钟0′(同步时钟由嵌相环路产路,图中未画出)。串行移入码移位寄存器20,并进行串/并转换。码移位寄存器20把寄存的二十一位码子序列并行送到译码逻辑21进行译码产生相应的数据字,该数据字将并行送到数据移位寄存器22,并由该寄存器以时钟1′进行并/串转换得到相应的数据序列。码寄存器每进行一次移位,译码逻辑就变化一次,但只有当要译码的码字移到码寄存器的适当位置时,译码结果才有效。这时作用于数据寄存器的移位置入时钟2′变为低电平,把译码结果置入数据寄存器。而后该时钟又变为高电平,这时由移位时钟1′将数据串行移出。
译码逻辑可以为组合逻辑,PAL,也可以通过码字筛选后采用ROM。
下面论述本发明的另一种译码方法和装置。图7示出了本发明编码的一种译码状态转换表。其中第一列示出当前状态,第二列示出当前码字及后续码字(即向前看码字,上面有横线表示非这种码字)。第三列为对应于第一列状态及第二列码字的译码数据字。第四列为下一个转向状态。该译码表共有八种状态,可以用三位二进制来表征。
图8给出了对应于图7译码状态图的译码电路。下面通过具体例子来说明该译码电路是如何工作的。
假定有对应于数据序列(1)的码序列(2)10000 00000 00001 00001 00000 00000 01000 00010 00000 00000...[1] [2] [3][4] [5] [6] [7] [8] [9] [10]
假定码字[1]为码序列的起始。译码步骤如下第一步码序列(2)以时钟0′的频率串行移入移位寄存器30,当码字[1]和[2]都移入寄存器30时,译码器开始工作。这时状态寄存器31的状态初始化为0状态。
第二步码移位寄存器30将接收到的10位码字并行送到译码逻辑32,同时状态寄存器31也将当前状态送到译码逻辑。由译码逻辑产生相应的数据字B和下一个转向状态3。
第三步时钟2′变为低电平,由数据移位寄存器33和状态寄存器31将译码逻辑产生的数据和下一个转向状态置入。
第四步时钟2′变为高电平,由时钟1′将数据寄存器33接收到的数据字串行移出。与此同时码序列不断地移入码寄存器30。当第一个译码数据移出数据寄存器时,码寄存器也把下一个码字移入码寄存器30。这时又重复第二步至第四步,直至所有的码字编码结束。
下表为码序列(2)在译过程中各寄存器的内容变化码寄存器状态寄存器 数据寄存器 转向状态 规则1000000000 0 B 5 60000000001 5 D 0 230000100001 0 A 1 10000100000 1 D 6 120000000000 6 D 3 240000001000 3 B 0 190100000010 0 C 0 90001000000 0 A 3 30000000000 3 D 1 1800000XXXXX 1 A 0 14
在对第10个码字进行译码时,必须依照下一个码字才能进行。假如说[10]是码序列的最后一个码字,那个随后必须传送一个非另的码字如00001,才能保证最后一个码字译码的唯一性。
数据序列的移位时钟1′的频率为码序列移位时钟0′的2/5倍。置入移位控制时钟2′为时钟1′的二分频。码序列在码寄存器30中移位五次,数据序列在数据寄存器中传送二次(一次置入,一次移位)。时钟1′及时钟2′由时钟控制电路产生,该电路可由分频器组成,图中未画出。
于是得到相应的数据序列为BDADDBCADA...正好与数据序列(1)相符。由此可见译码的正确性。
图8中的译码逻辑既可以是ROM也可以是组合逻辑,另外可以用PAL替代编码逻辑和状态寄存器,从而简化译码电路。
图9给出了码序列(2)译码过程的时序图。其中a)为时钟0′,b)为码序列(2),c)为状态序列,d)为时钟2′,e)为时钟1′,f)为相应的译码数据序列。
图10为本发明的另一种编码方法。它是在图1编码表下进行再替代,以减少K受限。(其中的15和16是原对照表的15,16的对照关系的对换,以利于编/译码。)在图1的编码中有如下一些码字连接具有较大的0个数。
ADDD AXXX 00010 00000 00000 00000 00001ADDD BD00010 00000 00000 00000 00100ADDB AXXX 00001 00000 00000 00000 00001图12的规则19,20,21正是用于替代上述三种形式的码字连接,不过规则21又引入了一种具有较长连0的码字连接。
ADDDB AXXX00001 00001 00000 00000 00000 00001规则22用于替代由21引入的这种具有较大连0的码字连接。从而使码的k受限由20降为17。上述所有新引入的码字都具有唯一性,即这些码不可能由其他码字的连接产生,因而是可译码。另外,还可以用规则22′来替代由21引入的这种具由较大连0的码字连接。
该具体编码仍可用图4的编码装置来实现。只是相应的状态转换表有所变化。图11给出了这种编码的相应状态转换表。
图12为图10编码的一种译码装置,由该图可见这种码前后相关位有26位,相关码字为6个,因此最大误差传播只有12个数据位,当适当选择A与C时,误差传播可以降为11位。该译码算法可由图8所示的译码器进行译码。
下面说明图10编码的另一种译码方法。该方法同样采用图10所示的译码装置进行译码。只是相应的译码状态图不同。图13给出了这种译码装置的状态转换图。
在数字存贮及传输中还有一个需要考虑的子码序列是同步码或地址标志码,以该码标志数据域或地址域的启始。该码必须是不能由编码规则产生的。在本发明的第一种编码方法中,码子序列0000100001000010000100000不能由图1所示编码规则产生。此外,码子序列0000100001000010000000000也不能由图1所示编码规则产生,实际上所有四个或四个以上00001加00000和三个或三个以上00001加0000000000的码子序列都不能由图1所示的规则产生。因此这两种码子序列可以用作同步码或地址标志码。对于本发明的第二种编码,相应的同步码或地址标志码为四个或四个以上00001加0000000000或者五个或五个以上连续的00001加00000。在第二种编码中,若采用规则22而不是规则22′时相应的同步码或地址标志码为五个或五个以上连续的00001加00000或0000000000。
由上论述可见,本发明的(4,20)码与同类编码相比,具有较小的误差传播。特别是本发明的(4,17)码,更优于同类(4,17)码,这不仅表现在编码规则大大简化(如中国专利8506794的(4,17)码有67条规则)。而且误差传播只有11位,同时本发明的编码译码装置简单,很容易实现。因此本发明的编码必能广泛应用于数字记录和光记录。特别适用于数字图象的传输和记录。利用这种编码方法与装置可以使记录密度和传输速度比用MFM码提高100%。
权利要求
1.一种把随机二进制数据序列变换成游程长度受限码序列的编码方法,其特征包括a.将二进制数据序列分成长度可变的数据字序列;b.把每个数据字变换成长度为其2.5倍的码字,从而得到0的最小游程为4,最大游程为k的码序列。
2.按权利要求1所述的编码方法,其特征在于其中所说的最大游程k为20,而长度可变的数据字的字长分别为2,4,6,8,相应的码字长度分别为5,10,15,20。
3.按权利要求2所述的编码方法,其特征在于其中所说的5位,10位,15位及20位码字为00010,00100,01000,10000,0001000000,0000100000,0010000000,1000000000,0100000000,000100000000000,000010000000000,000010000100000,001000000000000,010000000000000,00001000010000000000,00001000000000000000,00001000010000100000,00010000000000000000。
4.按权利要求2所述的编码方法,其特征在于同步码或标志码为四个或四个以上连续的00001加上00000或者是三个或三个以上连续的00001加上0000000000。
5.按权利要求1所述的编码方法,其特征在于其中所说的0的最大游程k为17,而长度可变的数据字的字长分别为2,4,6,8,10,12,相应的码字长度分别为5,10,15,20,25,30。
6.按权利要求5所述的编码方法,其特征在于其中所说字长为5位,10位,15位,20位,25位的码字分别为00010,00100,01000,10000,0001000000,0000100000,0010000000,1000000000,0100000000,000100000000000,000010000100000,0010000000000000,010000000000000,000010000000000,00001000010000000000,0000100000000000000,00001000010000100000,00010000000000000000,0000100001000010000100000,0000100001000010000000000,0000100001000000000000000。
7.按权利要求5所述的编码方法,其特征在于其中所述的字长为30位的码字为000010000100001000010000100000。
8.按权利要求7所述的编码方法,其特征在于同步码或标志码为四个或四个以上连续的00001加上0000000000,或者是六个或六个以上连续的00001加上00000。
9.按权利要求5所述的编码方法,其特征在于其中所说的字长为30位的码字为000010000100001000010000000000。
10.按权利要求9所述的编码方法,其特征在于同步码或标志码为五个或五个以上连续的00001加上00000,或加上0000000000。
11.一种把随机二进制数据序列变换成游程长度受限的码序列的编码装置其特征包括a.串行接收数据序列,并将数据子序列寄存在输入寄存器中;b.将数据子序列并行输出到编码逻辑;c.编码逻辑依据当前状态及数据子序列按照由变长码变换成的状态转换表变换得到相应的五位码字和下一转向状态;d.将变换得到的五位码字并行送到五位码寄存器中,并由相应的时钟将五位码字串行移出。
12.按权利要求11所述的编码装置,其特征在于输入寄存器寄存的数据子序列中的前两位为要编码的数据字,而其他位为向前相关数据位。
13.按权利要求11所述的编码装置,其特征在于其中所说的编码逻辑既可以是PAL,也可以是基于ROM的状态机,或编码组合逻辑。
14.按权利要求11所述的编码装置,其特征在于其中所说的五位码字为00000,00001,00010,00100,01000,10000中的一个。
15.按权利要求11所述的编码装置,对于把随机二进制数据序列变换为0游程至少为4,至多为20的编码,其特征在于其中所说的输入寄存器至少寄存八位数据子序列。
16.按权利要求11所述的编码装置,对于把随机二进制数据序列变换成0游程至少为4,至多为17的编码,其特征在于其中所说的输入寄存器至少寄存十位数据子序列。
17.一种把0游程至少为4,至多为K的码序列反变换成数据序列的译码装置,其特征包括a.串行接收再生码序列,并将码子序列寄存在输入寄存器中;b.将输入寄存器中寄存的码子序列并行输出到译码逻辑;c.译码逻辑依据由变长编码表得到的译码算法译码产生两位数据字;d.将译码产生的两位数据字并行送到输出寄存器,并由数据移位时钟将该数据字串行移出,得到数据序列。
18.按权利要求17所述的译码装置,对于把0游程至少为4,至多为20的码序列反变换成数据序列的译码,其特征在于其中所说的输入寄存器至少寄存21位码子序列,其中5位为要译码的码字,5位为向前相关位,11位为向后相关位。
19.按权利要求17所述的译码装置。对于把0游程至少为4,至多为17的码序列反变换成数据序列的译码,其特征在于其中所说的输入寄存器至少寄存26位码子序列,其中5位为要译码的码字,5位为向前相关位,16位为向后相关位。
20.一种把0游程至少为4,至多为17或20的码序列反变换成数据序列的译码装置,其特征包括a.串行接收再生码序列,并将码子序列寄存在输入寄存器中;b.将输入寄存器中寄存的码子序列并行输出到译码逻辑;c.译码逻辑依据当前状态及码子序列,按照由变长(4,17)或(4,20)编码表得到的状态转换表进行转换,产生两位相应的数据字和下一转向状态;d.将译码产生的两位数据字并行送到输出寄存器,并由数据时钟将该数据字串行移出,得到数据序列。
21.按权利要求20所述的译码装置,其特征在于其中所说的输入寄存器至少寄存10位码子序列,其中前五位为要译码的码字,后五位为向前相关码位。
22.按权利要求21所述的译码装置,其特征在于其中所说的五位向前看码位,只须判别它是00000,或00001或00000。
全文摘要
一种二进制数字编码/译码方法和装置,它把随机二进制数据序列分成长度可变的数据字序列,将每个数据字变换成位数为其2.5倍的码字,从而得到0游程至少为4,至多为20或17的码序列,和把这种码序列反变换为数据序列的译码装置;以及将变长的(4,17),(4,20)编码变换成定长状态转换表来实现的编码/译码装置。与同类编码相比,它的规则简单,误差传播小。利用这种编码/译码方法和装置可以使记录密度比用MFM码提高100%。
文档编号G11B20/10GK1052757SQ8910932
公开日1991年7月3日 申请日期1989年12月19日 优先权日1989年12月19日
发明者马瑞芳 申请人:福建电子计算机公司磁记录装置厂
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1