专利名称:使用短块编码器调制数据的技术的制作方法
技术领域:
本发明涉及使用短块编码器把调制约束强加于数据的技术,更具体地讲,本发明涉及在把调制约束强加于偶和奇交织部之前,使用短块编码器把调制约束强加于每一数据块中的比特的子集的技术。
背景技术:
磁盘驱动器能够将数据比特写到诸如磁的硬盘的数据存储磁盘上。磁盘驱动器也能够读取已经存储在数据磁盘上的数据比特。数据比特的某种序列难以写到磁盘上并且经常在读回该数据期间导致错误。
二进制序列可以根据公知技术使用预编码器和反向预编码器被常规地从一种表示法转换成另一种表示法。在描述本发明时,所有的二进制序列都被表示为PR4序列,PR4序列可以通过采用1/1+D卷积的预编码器被转换成NRZI(不归零反相)表示法,或者可以通过采用1/(1+D2)卷积的预编码器被转换成NRZ(不归零)表示法。
连续的零(例如,连续出现40个0)的长序列是易于出错的数据比特模式的实例。在交替位置中的0的长序列(例如,0a0b0c0d....,其中,a、b、c、d可以为0或1)是易于出错的数据比特模式的另一个实例。
因此,理想的是消除用户输入数据中的易于产生错误的比特序列。消除易于产生错误的比特序列可确保磁盘驱动系统中检测器和定时循环的可靠操作。消除易于产生错误的比特序列的一种方法是采用以查询表存储在存储器中的不易产生错误的比特模式来替代易于产生错误的比特序列。不过,对非常长的比特序列进行替代而言,查询表并不理想,因为它们需要大量的存储器。
许多磁盘驱动器都具有调制编码器。调制编码器使用调制代码消除易于出错的比特序列。Fibonacci(斐波纳契)代码是调制编码器所使用的调制代码的一个实例。Fibonacci代码提供了一条有效的途径来将调制代码约束强加在记录数据上以便消除易于产生错误的比特序列。
Fibonacci编码器以Fibonacci基(base)将输入数字映射到等效的数字表示法。Fibonacci编码器将具有K比特的输入矢量映射到具有N比特的输出矢量。Fibonacci编码器使用具有N矢量的基,该基被储存为N×K二进制矩阵。相对于所存储的基对该输入矢量连续应用Euclid(欧几里德)算法得出长度N的编码矢量。
自然地构造Fibonacci代码,以消除长串的连续数字1。这在文字上表示为j约束,其中参数j计数1的最长准许串。通过使得所编码的序列反向,形成对Fibonacci代码的细微修改。该反向的Fibonacci代码消除了长串的连续数字0。该约束在文字上表示为k约束或G约束,其中参数k(或G)计数零的最长准许串。
最大过渡串(MTR)代码是与1/(1+D)预编码器结合使用调制代码的一种具体类型。就MRT代码而言,j约束指的是最大数量个连续的1,k约束指的是最大数量个连续的零,而t约束指的是连续成对的相同比特(例如,aabbccddee......)的最大个数。
通过I约束消除以上所描述的形式为0a0b0c0d0的易出错的序列,其中参数I计数偶或奇子序列中连续0的最长串。因此,人们希望提供一种调制编码器,来扩展Fibonacci代码以包括组合的G和I约束。
发明内容
本发明提供了使用短块编码器向数据流施加调制约束的技术。短块编码器向每一数据块中的比特的子集施加调制约束。然后,把数据块中的偶和奇交织部分离成两个数据路径。第一调制编码器根据针对偶比特的调制约束对偶比特进行编码。第二调制编码器根据针对奇比特的调制约束对奇比特进行编码,总体上讲,针对奇比特的调制约束与针对偶比特的调制约束一致。接下来,受约束的偶和奇交织部被交织以形成一个串行数据流。
根据本发明的一个实施例,通过使得偶比特和奇比特调制编码器把M比特输入矢量映射成M比特输出矢量,本发明的短块编码器提高了所得交织代码的比率。整个代码把(2M-1)比特矢量转换成2M比特的矢量。
当考虑了以下的详细描述及附图时,本发明的其它目的、特性以及优点,将会变得十分清楚,在所有附图中,相同的参考标记代表相同的特征。
图1说明了根据本发明的一个实施例的调制编码方案,该调制编码方案包括短块编码器,并且把调制约束分别施加于偶和奇交织部。
图2说明了根据本发明的一个实施例的、使用了3/4短块编码器的调制编码方案的一个实例。
图3说明了根据本发明的一个实施例的、使用了9/10短块编码器的调制编码方案的一个实例。
图4说明了根据本发明的一个实施例的、使用了13/14短块编码器的调制编码方案的一个实例。
具体实施例方式
图1说明了本发明的调制编码方案的一般化的实施例。图1中的实施例具有把调制约束施加于每一数据块的子集的短块编码器。多路分解器把包含短块编码器所生成的比特的数据块中的偶和奇交织部加以分离。然后,两个调制编码器把约束分别施加于偶和奇交织部。
图1的实施例具有两个把N比特的输入数值映射成N比特的输出数值的Fibonacci编码器。图1的调制编码方案能够在对数据进行调制编码之前,通过把短块编码器101添加于数据,对交织的数据进行N个比特到N个比特的映射。短块编码器把约束施加于所述数据,从而减少了数据的可能值的个数。这一技术允许调制编码器以N个比特到N个比特为基础把N比特输入数的减小了的集合映射成N比特输出数,尽管N比特输出数被约束为具有不到2N个可能的值。
在图1的实施例中,把2N-X个比特的一部分P馈送到短块编码器101中。短块编码器101用P+X个短块比特的集合替代数据块中的前P个比特。例如,短块编码器101可以是一张查找表,其把用户数据中P个比特的每一可能的集合映射成P+X个短块比特的集合。从所述表中选择P+X个短块比特,并且用其替代该P个比特。短块编码器101执行P个比特到P+X个比特的简单的映射,以增强特定的约束集合,从而减少了每一输入数据块的可能值的个数。
多路分解器102接收解码器101的P+X个输出比特以及数据块的其余的2N-X-P个比特。多路分解器102把所得到的2N个数据比特划分成其偶和奇交织部。
Fibonacci编码器103使用Fibonacci基,根据全局偶比特约束Ge,把N个偶交织部转换成受约束的N个输出比特。Fibonacci编码器104使用Fibonacci基,根据全局奇比特约束Go,把N个奇交织部转换成受约束的N个输出比特。Fibonacci编码器103和104均把减少了的N个比特的输入数转换成N个比特的输出数,因此执行了N个比特到N个比特的映射。根据本发明的又一个实施例,解码器103和104还可以为除Fibonacci编码器之外的其它类型的调制编码器。
多路复用器105交织受约束的偶和奇比特,以生成交织的数据输出矢量。针对输入到图1的系统的2N-X数据比特的每个块,在多路复用器105的输出端生成2N个比特。由短块编码器101添加额外的X个比特。
多路复用器105的输出矢量具有G的全局约束和I的交织约束。如果Ge≠Go,则输出数据的全局约束由G=1+2×min(Ge,Go)来确定;如果Ge=Go,则输出数据的全局约束由G=2×Ge来确定。输出数据的交织约束由I=max(Ge,Go)来确定。
图2说明了包括3/4短块编码器的调制编码方案的具体实例。短块编码器201把输入数据的前3个比特(x1,x2,x3)映射为从查找表中所选择的4个比特(y0,y1,y2,y3)。短块编码器201执行3到4映射,以增强约束(y0,y2)≠(1,1)和(y1,y3)≠(1,1)。表1说明了根据这一实例的由短块编码器201所执行的映射。
表1
短块编码器201接收3比特输入矢量(x1,x2,x3),并且针对每个199比特数据块生成4比特输出矢量(y0,y1,y2,y3)。多路分解器202接收短块编码器201的4比特输出(y0,y1,y2,y3)和其余的196比特矢量(y4,y5,...,y198,y199)。多路分解器202分离偶和奇交织部,以生成100个偶比特y0,y2,y4,...,y198的流和100个奇比特y1,y3,y5,...,y199的流。
Fibonacci编码器203把100比特偶交织部映射成100比特Fibonacci代码,Fibonacci编码器204把100比特奇交织部映射成100比特Fibonacci代码。多路复用器205交织这两个Fibonacci代码,以生成具有200个比特的组合数据流。
短块编码器201把可作为输入发送给Fibonacci编码器203和204的值的个数减少25%。通过防止用户数据中前两个偶比特为11,所以仅允许y0和y2的4个可能的值中的3个(00、01以及10)。100比特偶交织部的可能整数值的个数减少25%,因为不允许以11打头的可能的100比特的整数值的四分之一。因此,Fibonacci编码器203仅须映射100比特偶交织部的2100个可能的值最多75%。Fibonacci编码器203可以执行100比特到100比特(N比特到N比特)的映射,只要不多于2100个可能的值的25%被全局偶比特约束Ge所禁止即可,即只要相应的Fibonacci代码具有至少3×298个代码序列即可。
同样的原理对于奇交织部也成立。通过防止数据块中前两个奇比特(y1和y3)为11,所以仅允许y1和y3的4个可能的值中的3个(00、01以及10)。100比特奇交织部的可能整数值的个数减少25%,因为不允许以11打头的可能的100比特的整数值的四分之一。因此,Fibonacci编码器204仅须映射100比特奇交织部的2100个可能值的最多75%。Fibonacci编码器204可以执行100比特到100比特(N比特到N比特)的映射,只要不多于2100个可能的值的25%被全局奇比特约束Go所禁止即可,即只要相应的Fibonacci代码具有至少3×298个代码序列即可。
出于下列原因,3到4个比特的短块映射允许Fibonacci编码器203和204把减少了的100比特的输入数映射成100比特的Fibonacci输出数(100比特到100比特的映射)。Fibonacci编码器可以使用比率为(N-1)/N的Fibonacci编码技术,以一对一的基,把199比特的数据块映射成200比特的受约束的数据块。为了把199/200的Fibonacci编码器的大小减少一半,以减少存储空间需求,要求输入数为99.5个比特,输出数为100个比特。
理论上的99.5个比特的块具有299.5个可能的值,即v2×299个,也即大约(1.41421)×299个。这意味着99.5个比特的块具有大约X=(1.41421)×299个可能的值。100个比特的块具有Y=2×299个可能的值。比率为99.5/100的调制编码器为了把所有可能的输入值映射成不同的输出代码序列,需要至少X个代码序列。
因此,在可能的2100个未受约束的100个比特的序列中,仅需要大约(1.41421)×299个代码序列,这大约为100比特序列的总数的70.7%。100比特的块的值的其余的大约29.3%可由调制约束G来禁止。
由于短块编码器201把用户数据比特的块约束为仅具有它们的可能的值的3/4,Fibonacci编码器203和204仅需在O~3×298-1的范围内映射100个比特的输入数值的2100个可能的值的最多75%。可以使用另一种更高比率的短块编码器替代短块编码器201,从而减小了100比特输入数的范围。在短块编码器的比率为199/200的限制情况下,可以把所需要的代码序列的个数减少到大约X个,只要X/Y至少为v2/2(大约为70.7%)即可。
图1~2的调制编码方案通过用受约束的比特的集合替代用户比特的子集,明显地减小了交织调制编码器的复杂度和存储需求。本发明的短块编码器可以使用受约束的比特替代任何所希望数目的用户比特。仅把短块编码器201描述为本发明的一个实例,并不旨在把本发明的范围限制为3到4比特的映射。这一技术领域中的熟练技术人员将会意识到,本发明包括许多不同类型的短块编码器。
现在,将描述本发明的另一些实施例。比率为(2K-1)/2K的短块受约束的编码把输入比特序列x1,x2,...,X2K-1转换成输出比特序列y0,y1,...,y2K-1,其中输出序列的偶和奇交织部均满足相同的约束,该约束定义如下。令z12K-1+z22K-2+...+zK-12+zK为二进制表示法 即大于或等于2(2K-1)的平方根的最小整数。
根据偶和奇交织部y0,y1,...,Y2K-2和y1,y3,...,y2K-1分别小于K比特序列z1,z2,...,zK的要求,相对最高有效比特位于最左位置的字典式排序,给出短块编码器所施加的约束。例如,比率为9/10的短块编码器可确保在每一交织部中,比特流将开始于5比特序列,该5比特序列小于10111。例如,不允许序列11000,但10110是有效的5比特串。由于这两个交织部均满足相同的约束,所以所得到的调制代码相对偶和奇交织部是平衡的。
图3中描述了具有比率为9/10的受约束的代码的短块编码器的一个实施例。图3的实施例包括短块编码器301、多路分解器302、Fibonacci编码器303~304、以及并行到串行转换器(或多路复用器)305。短块编码器301把约束强加于所接收的每个数据块的前9个比特。短块编码器301把每一数据块的前9个比特映射成10个输出比特,以提供9/10比率的代码。
多路分解器302把偶和奇交织部与原始数据块的其余190个比特的矢量(y10,y11,...,y199)和编码器301的10个比特的输出矢量相分离。Fibonacci编码器303把调制约束强加于偶交织部,以生成受约束的偶交织部,Fibonacci编码器304把调制约束强加于奇交织部,以生成受约束的奇交织部,如以上所描述的。并行到串行转换器305把受约束的偶和受约束的奇比特结合成串行的数据流。
对比率为9/10的短块编码器301的10比特的输出序列y0,y1,...,y9的约束,由以下表达式给出(y0,y2)≠(1,1)(y1,y3)≠(1,1)(y0,y2,y4,y6,y8)≠(1,0,1,1,1)(y1,y3,y5,y7,y9)≠(1,0,1,1,1)这些约束可确保最大偶/奇输出序列具有5比特前缀,该5比特前缀不超过10110。就布尔方程而言,这些约束的特征为y0y2=0y1y3=0y0~y2y4y6y8=0y1~y3y5y7y9=0符号~代表“非”,“乘”代表“与(AND)”,“加”代表“或(OR)”。在这三种操作中,“非”具有最高的优先级,“或”具有最低的优先级。使用门控分割(gated partition)技术,获得比率为9/10的编码器301的有效的实现。由下列布尔变量指出4个分割m1~m4,其中,x1~x9表示向编码器301的9比特输入m1=~x1m2=x1x2~(x4x6x8)m3=x1~x2~(x5x7x9)m4=~(m1+m2+m3)
由下列表达式指出编码器301的输入/输出映射y0=m2+m4y1=m3+m4y2=m1x2+m3x3y3=m1x3+m2x3y4=~m4x4+m4x3y5=~m4x5+m4(x2x5+~x2x4)y6=~m4x6+m4(x2x7+~x2x6~x8)y7=~m4x7+m4(x2x9+~x2x6x8)y8=~m4x8+m4~x2x8y9=~m4x9+m4~x2~x8本发明还包括把已由短块编码器编码的数据块矢量转换回原始数据模式的短块解码器。相应于编码器301的短块解码器通过反转以上所描述的短块映射,把10比特矢量的集合转换回9比特矢量。这样的短块解码器的一个实施例使用了5个辅助变量q1~q5,并且通过以下给出的布尔表达式计算这一反转映射q1=~(y0+y1)q2=y0~y1q3=~y0y1q4=y0y1q5=y8+y9x1=q2+q3+q4x2=q1y2+q2+q4~q5x3=(q1+q2)y3+q3y2+q4y4x4=~q4y4+q4(~q5+y5)x5=~q4y5+q4(q5+y5)x6=~q4y6+q4(~q5+y6+y7)x7=~q4y7+q4(q5+y6)x8=~q4y8+q4(~q5+y8)x9=~q4y9+q4(q5+y7)比率为9/10的短块编码器301具有47个双输入门,相应的短块解码器具有42个双输入门。这一门数增大了89个双输入门编码器/解码器对的总复杂度。
图4中描述了具有比率为13/14的受约束代码的短块编码器的实施例。图4的实施例包括短块编码器401、多路分解器402、Fibonacci编码器403~404、以及并行到串行转换器(或多路复用器)405。短块编码器401把约束强加于所接收的每个数据块的前13个比特。短块编码器401把每个数据块中的13比特矢量映射为14比特输出矢量,以提供13/14比率的代码。
多路分解器402把偶和奇交织部与原始数据块的其余186比特矢量(y13,y14,...,y199)和编码器401的14比特输出矢量相分离。Fibonacci编码器403把调制约束强加于偶交织部,以生成受约束的偶交织部。Fibonacci编码器404把调制约束强加于奇交织部,以生成受约束的奇交织部。并行到串行转换器405把受约束的偶和奇交织部结合成串行数据流。
对比率为9/10的短块编码器401的14比特输出序列y0,y1,...,y13的约束,由以下表达式给出(y0,y2)≠(1,1)(y1,y3)≠(1,1)(y0,y2,y4,y6,y8)≠(1,0,1,1,1)(y1,y3,y5,y7,y9)≠(1,0,1,1,1)(y0,y2,y4,y6,y8,y10,y12)≠(1,0,1,1,0,1,1)(y1,y3,y5,y7,y9,y11,y13)≠(1,0,1,1,0,1,1)。
这些约束可确保最大偶/奇交织的输出序列具有7比特前缀,该7比特前缀不超过1011010。相应的布尔方程给定为y0y2=0y1y3=0y0~y2y4y6y8=0y1~y3y5y7y9=0y0~y2y4y6~y8y10y12=0y1~y3y5y7~y9y11y13=0比率为13/14的编码器401的布尔逻辑实现的一个实例使用由下列逻辑函数所示的辅助变量r1~r12把输入比特序列x1,x2,...,x13映射成输出序列y1,y2,...,y13
r1=x4x6r2=x3r1r3=x8r1r4=~x8r1r5=x5x7r6=x3r5r7=x9r5r8=~x9r5r9=x1x2r10=x1~x2r11=x10x12r4r12=x11x13r8编码器的这一实例布尔逻辑实现还使用了7个分割m1、m2、m3、m5、m6、m7、m8,其中m1=~x1m2=r9~r3~r11m3=r10~r7~r12m4=~(m1+m2+m3)m5=r9r3m6=r9r11m7=r10r7m8=r10r12比率为13/14的短块编码器401的布尔逻辑实现的输入/输出映射由下列方程给出y0=m2+m4y1=m3+m4y2=m1x2+m3x3y3=m1x3+m2x3y4=~m4x4+m5~r5x3+m6+m7~r1x3+m8~r1x3y5=~m4x5+m5~r5x5+m6~r5x3+m7~r1x4+m8y6=~m4x6+m5~r5~x3+m6+m7~r1~x3+m8~r1~x3
y7=~m4x7+m5(~r5x7+r6)+m6~r5~x3+m7(~r1x6+r2)+m8y8=~m4x8+m7+m8x8y9=~m4x9+m5x9+m6x9+m7x8y10=~m4x10+m5x10+m6~r5x5+m7x10+m8x10y11=~m4x11+m5x11+m6x11+m7x11+m8~r1x4y12=~m4x9+m5x12+m6(~r5x7+r6)+m7x12+m8x12y13=~m4x13+m5x13+m6x13+m7x13+m8(~r1x6+r2)相应于编码器401的短块解码器通过反转以上所描述的短块映射把14比特矢量转换回13比特矢量。比率为13/14的短块编码器的解码器的布尔逻辑实现使用了以下给出的辅助变量s1~s6s1=y4y6s2=y8s1s3=y5y7s4=y9s3s5=y4+y6s6=y5+y7该解码器的布尔逻辑实现使用了7个分割q1、q2、q3、q5、q6、q7、q8,其中q1=~(y0+y1)q2=y0~y1~s2~(s1~y8y10y12)q3=~y0y1~s4~(s3~y9y11y13)q4=y0y1q5=q4~s1~s3~y8q6=q4s1~s3q7=q4~s1~s3y8q8=q4~s1s3解码器的输入/输出映射由下列映射指出x1=q2+q3+q4x2=q1y2+q2+(q5+q6)x3=(q1+q2)y3+q3y2+q5(y4+~s5y7)+q6(y5+~s6y12)+q7(y4+~s5y7)+q8(y4+~s5y13)
x4=~q4y4+q5+q6+q7(y5+~s5)+q8(y11+~s5)x5=~q4y5+q5(y5+~s5)+q6(y10+~s6)+q7+q8x6=~q4y6+q5+q6+q7(s5y7+~s5)+q8(s5y13+~s5)x7=~q4y7+q5(s5y7+~s5)+q6(s6y12+~s6)+q7+~q8x8=~q4y8+q5+q7y9+q8y8x9=~q4y9+q5y9+q6y9+q7x10=~q4y10+q5y10+q6+q7y10+q8y10x11=~q4y11+q5y11+q6y11+q7y11+q8x12=~q4y12+q5y12+q6+q7y12+q8y12x13=~q4y13+q5y13+q6y13+q7y13+q8比率为13/14的编码器401具有93个双输入门,相应的解码器具有102个双输入门。这一门数增大了195个双输入门编码器/解码器对的总复杂度。
尽管此处已参照本发明的具体的一些实施例描述了本发明,但本发明中并没有规定修改范围、各种变化以及替代。在某些例子中,可以在不相应使用其它特性、在不背离所述本发明的范围的情况下,使用本发明的特性。因此,可以在不背离所述本发明的范围与构思的情况下,对所公开的某一具体配置或方法进行众多的修改。不旨在把本发明局限于所公开的具体的实施例,但本发明将包括落入权利要求的范围内的所有实施例和等价的实施例。
权利要求
1.一种盘驱动系统,包括短块编码器,向数据块中的比特的第一子集施加约束,以生成输出比特;多路分解器,把来自所述数据块中的比特的第二子集与来自所述短块编码器的输出比特的偶和奇比特进行分离;第一调制编码器,对偶比特进行编码,以产生受约束的偶比特;以及第二调制编码器,对奇比特进行编码,以产生受约束的奇比特。
2.如权利要求1中所述的盘驱动系统,还包括多路复用器,把受约束的偶比特和受约束的奇比特交织成一个数据流。
3.如权利要求1中所述的盘驱动系统,其中,第一调制编码器和第二调制编码器为Fibonacci编码器。
4.如权利要求3中所述的盘驱动系统,其中,第一调制编码器把N个偶比特映射为N个受约束的偶比特,第二调制编码器把N个奇比特映射为N个受约束的奇比特。
5.如权利要求1中所述的盘驱动系统,其中,所述短块编码器把P个比特映射为P+1个输出比特。
6.如权利要求5中所述的盘驱动系统,其中,所述短块编码器把数据块的3个比特的矢量映射为4个比特的输出矢量。
7.如权利要求5中所述的盘驱动系统,其中,所述短块编码器把数据块的9个比特的矢量映射为10个比特的输出矢量。
8.如权利要求5中所述的盘驱动系统,其中,所述短块编码器把数据块的13个比特的矢量映射为14个比特的输出矢量。
9.如权利要求2中所述的盘驱动系统,其中,第一调制编码器向受约束的偶比特施加偶全局约束,第二调制编码器向受约束的奇比特施加奇全局约束,所述多路复用器生成交织的数据,这些交织的数据具有等于所述偶全局约束和所述奇全局约束之中的最小者的两倍的全局约束。
10.如权利要求9中所述的盘驱动系统,其中,所述交织的数据具有等于所述偶全局约束或所述奇全局约束中的较大者的交织约束。
11.一种盘驱动控制器芯片组,包括短块编码器,把每一输入数据块中的第一部分映射成输出序列;用于对来自每一输入数据块中的第二部分和来自所述短块编码器的输出序列的偶和奇交织部进行分离的部件;用于向偶交织部施加第一调制约束以产生受约束的偶交织部的部件;以及用于向奇交织部施加第二调制约束以产生受约束的奇交织部的部件。
12.如权利要求11中所述的盘驱动控制器芯片组,其中,所述短块编码器把每一输入数据块中的P比特矢量映射为P+1比特输出矢量。
13.如权利要求11中所述的盘驱动控制器芯片组,其中,所述短块编码器把每一输入数据块中的3比特矢量映射为4比特输出矢量。
14.如权利要求11中所述的盘驱动控制器芯片组,其中,所述短块编码器把每一输入数据块中的9比特矢量映射为10比特输出矢量。
15.如权利要求11中所述的盘驱动控制器芯片组,其中,所述短块编码器把每一输入数据块中的13比特矢量映射为14比特输出矢量。
16.如权利要求11中所述的盘驱动控制器芯片组,其中,用于施加第一调制约束的部件包括用于把N个偶比特映射为N个受约束的偶比特的部件,而用于施加第二调制约束的部件包括用于把N个奇比特映射为N个受约束的奇比特的部件。
17.如权利要求11中所述的盘驱动控制器芯片组,还包括并行到串行转换器,使得所述受约束的偶交织部和所述受约束的奇交织部交织成一个数据流。
18.一种在把数据记录在计算机可读介质上之前对数据块进行调制编码的方法,该方法包括向每一输入数据块中的第一部分施加调制约束,以产生受约束的输出;对受约束的输出的以及每一数据块中的第二部分的偶和奇比特交织部进行分离;把调制约束施加于偶交织部,以产生受约束的偶交织部;把调制约束施加于奇交织部,以产生受约束的奇交织部;以及交织所述受约束的偶交织部和所述受约束的奇交织部。
19.如权利要求18中所述的方法,其中,向每一输入数据块中的第一部分施加调制约束还包括使用短块编码器把每一输入数据块中的3个比特映射为所述受约束的输出中的4个比特。
20.如权利要求18中所述的方法,其中,向每一输入数据块中的第一部分施加调制约束还包括使用短块编码器把每一输入数据块中的9个比特映射为所述受约束的输出中的10个比特。
21.如权利要求18中所述的方法,其中,向每一输入数据块中的第一部分施加调制约束还包括使用短块编码器把每一输入数据块中的13个比特映射为所述受约束的输出中的14个比特。
22.如权利要求18中所述的方法,其中,把调制约束施加于偶交织部包括把N个偶比特映射为N个受约束的偶比特,把调制约束施加于奇交织部包括把N个奇比特映射为N个受约束的奇比特。
全文摘要
提供了使用短块编码器向数据流施加调制约束的技术。短块编码器对数据流中的比特的子集进行编码。然后,把数据流中的偶交织部和奇交织部分分成两个数据路径。第一调制编码器根据第一调制约束对偶交织部进行编码,第二调制编码器根据第二调制约束对奇交织部进行编码,该第二调制约束总体上与针对偶交织部的调制约束一致。
文档编号G11B5/09GK1832003SQ20051013627
公开日2006年9月13日 申请日期2005年12月26日 优先权日2005年1月31日
发明者马里奥·布劳姆, 罗伊·D·西德西扬, 伊万杰洛斯·S·埃勒夫塞里奥, 理查德·L·加尔布雷斯, 克塞尼加·拉科维克, 托马斯·米特尔霍尔泽, 特拉维斯·奥宁, 布鲁斯·A·威尔逊 申请人:日立环球储存科技荷兰有限公司