CN1383617A - 在具有链接纠错码的磁性记录通道中不平衡保护编码的方法和设备 - Google Patents
在具有链接纠错码的磁性记录通道中不平衡保护编码的方法和设备 Download PDFInfo
- Publication number
- CN1383617A CN1383617A CN01801821A CN01801821A CN1383617A CN 1383617 A CN1383617 A CN 1383617A CN 01801821 A CN01801821 A CN 01801821A CN 01801821 A CN01801821 A CN 01801821A CN 1383617 A CN1383617 A CN 1383617A
- Authority
- CN
- China
- Prior art keywords
- ecc
- code
- code word
- data
- symbol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000012937 correction Methods 0.000 title abstract description 7
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 7
- 238000004146 energy storage Methods 0.000 claims 2
- 230000011218 segmentation Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 10
- 230000004907 flux Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 101710162828 Flavin-dependent thymidylate synthase Proteins 0.000 description 1
- 101710135409 Probable flavin-dependent thymidylate synthase Proteins 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000004193 electrokinetic chromatography Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000005415 magnetization Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- VIFIHLXNOOCGLJ-UHFFFAOYSA-N trichloro(3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,10-heptadecafluorodecyl)silane Chemical compound FC(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)CC[Si](Cl)(Cl)Cl VIFIHLXNOOCGLJ-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/14—Digital recording or reproducing using self-clocking codes
- G11B20/1403—Digital recording or reproducing using self-clocking codes characterised by the use of two levels
- G11B20/1423—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
- G11B20/1426—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2903—Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
- G11B2020/1218—Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
- G11B2020/1222—ECC block, i.e. a block of error correction encoded symbols which includes all parity data needed for decoding
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
- G11B2020/1836—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using a Reed Solomon [RS] code
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明提供一种对数据字编码的编码器和方法,它将至少一个数据字的块映射到一个纠错码(ECC)代码字。由多个被边界分割开的多位ECC符号定义ECC代码字。根据位模式与边界的相对位置,限制位模式不出现在ECC代码字中。
Description
相关申请的交叉参考
本申请要求2000年6月27日提交的题为“用于具有串联纠错码的磁性记录通道中的不平衡保护编码”的60/214,699美国临时申请的优先权。
发明领域
本发明涉及编码系统。具体来说,本发明涉及记录通道中,如盘驱动器和其他数据存储系统中的编码系统。
发明背景
在数据通讯系统中,数字信息通过一个通道从一个发送器被传达至一个接收器。“通道”是一个总称,它可包括许多不同媒介,如记录媒介、电话线和电磁频谱。在数据存储系统中,如磁性盘驱动器,通道包括一个存储媒介,并且数字信息被发送到存储媒介,在恢复前存储一段时间,再传达至接收器。
一个典型的磁性盘驱动器包括安置在枢轴或主轴上旋转的一个或几个硬性盘。每个盘有一个流体动力轴承和传感器组成的关联头,用于与盘表面的通讯。机电传动器将数据头在盘表面放射状地移动用于轨迹寻查操作,并将传感器直接控制在盘表面的所需轨迹上用于轨迹追踪操作。驱动控制器依据从主系统接收的命令控制盘驱动器,从而找回来自盘的信息并将信息存储在盘上。驱动控制器包括各种子系统,如一个用于与主系统通讯的“主界面”,一个用于控制传动器的“伺服系统”,一个用于在存储媒介上记录数据的“写入通道”,以及一个用于接收来自存储媒介的已记录的数据的“读取通道”。
信息一般存储在盘表面的同心数据轨迹上。通过传感器的电流方向受控制,从而在经选择的数据轨迹内编码盘表面的磁通量反转。在一种被称为不归零反转(NRZI)编码的编码类型中,数字“1”由在数据轨迹中从一个磁性区域到下一个的一个磁通量反转来表示,数字“2”由在数据轨迹中从一个磁性区域到下一个的一个磁通量反转的缺损来表示。
在恢复来自盘的数据中,伺服系统控制机电传动器,从而数据头飞过所需数据轨迹,感应存储在数据轨迹中的流量反转,并根据那些流量反转产生一个读取的信号。所读取的信号一般是有条件的,随后,信号被读取通道解码以恢复流量反转所代表的数据。一个典型的读取通道包括自动获取控制电路、一个低通路过滤器、一个模拟-数字转换器或取样器、一个序列探测器和一个解码器。
以前一个维特比探测器被用作读取通道的序列探测器。当探测器的输入数据由一个信号加上附加白高斯噪音组成以及当使用一个典型的分支公制(向探测器提供的信号中的误差平方),该维特比探测器是作为一个最大可能性(ML)的序列探测器进行工作。然后,探测到的位序列被传至解码器,从而被解码为原始用户数据。
所有的通道,包括盘驱动存储通道,将噪音传入它们传达的信号中。为了探测以及有时纠正由通道噪音引起的信号误差,人们已开发了多个编码技术。这些编码技术将由一些数据位形成的用户数据字转化成由一些数据位形成的编码文字。强加在编码文字中的代码约束能经设计以避免易于产生错误事件的位序列,并能允许探测以及有时纠正从通道接收到的的信号的误差。
用户数据位的数目与代码位的数目的平均比率m/n被称为是代码码的编码率。一般来说,在一个接收通道中探测和纠正误差的能力可能随着编码率的下降而增加,因为一个低编码率意味着编码文字中的多个多余的信息。然而,每个编码器附加的额外的位增加了通过通道传送信号所需的时间和能量。
已经提出了几种类型代码约束。例如,在一个盘驱动器中,旋转磁性媒介的主轴电机的旋转速度随时间改变。这导致读取信号电压脉冲之间的非均匀时间间隔。一个相位锁定回路(PLL)被用于将读取记时钟的相位和频率锁定在读取信号电压脉冲的相位和频率。为确保定期更新PLL,可使用一个代码,该代码限制读取信号中的连续的“0”的数目不超过最大数目“k”。这种代码被称作含“k”约束的游程长度限制(RLL)码。“k”值越小,PLL的性能越好。然而,“k”值越小,代码变得越难实施。
该代码还可能限制在代码位流中的连续的“1”的数目以限制符号之间干扰的效应,这种效应是在被传送信号中的连续转化互相干扰的时候产生的。这样的代码被称作含“j”约束的最大转化运行(MTR)码,其中“j”为通道信号中所允许的连续转化的最大数目。例如,为避免三个或三个以上连续转化,可设计含MTR约束的j=2的代码。虽然MTR码降低符号之间的干扰,但是它们除去了多个可获取的编码文字,使得很难有时不可能用高编码率实施MTR限制。
一些磁性记录通道通过使用纠错码(ECCs)提供进一步的保护。连续的数据块(编码或未编码)被映射到具有一个数据字段和一个ECC字段的连续的纠错码。数据块被映射到被分割为一些多位ECC符号的数据字段。数据字段中的ECC符号被应用于多项式函数,该函数产生形成ECC字段的被称为“奇偶位”的附加的多位ECC符号。连接数据字段的附加的ECC符号的数目决定了可被纠正的ECC码中的ECC符号的数目。例如,通过一个Reed-Solomon型ECC,需要二个附加ECC符号纠正ECC代码字中的一个符号。具有连接数据字段的ECC字段的24个附加ECC符号的一个ECC码有能力纠正ECC代码字中的多达十二个符号的误差事件。
随后在读取通道中使用一个ECC解码器探测并纠正ECC代码字中的误差。对于接收到的ECC代码字中的与传送的ECC代码字中的通信符号不匹配的每个符号,ECC解码器根据接收到的编码文字中的其他符号和用于产生附加符号的多项式运行来确定正确的符号。
虽然这些编码技术在避免某些错误事件提供纠正大多数留存的误差事件的方法,却很难用高编码率实施。着限制了代码的效率和记录通道的速度。本发明阐明了这些及其他问题,并提供了先前技术之外的优势。
发明概述
本发明的一方面涉及对数据字编码的一种方法,其中将数据字至少之一的块映射到一个纠错码(ECC)代码字。ECC代码字由被边界隔开的多个多位ECC符号来定义的。依据位模式对边界的相对位置,约束位模式不出现在ECC代码字中。
本发明的另一方面涉及一种用于将连续数据字编码为各自的连续代码字的编码器。该编码器包括一个数据字输入;一个代码字输出;以及一个第一编码器单元。第一编码器单元根据第一代码将数据字输入收到的每个连续数据字映射到代码字输出上的各自的连续代码字。第一代码识别每个代码中的多位纠错码(ECC)符号之间的边界,并对靠近边界的每个代码字的位位置比对远离边界的每个代码字的位位置施加不同的代码约束。
本发明的另一方面是有关包括一个传感器和一个编码器的一个盘存储通道。传感器能与数据存储盘通讯。编码器与传感器耦合,根据一个代码将数据编码为由多位ECC符号形成的连续纠错码(ECC)代码字。依据位模式与多位ECC符号之间边界的相对位置,该代码约束位模式不出现在每个ECC代码字中。然后,编码器将ECC代码字作为代码字流发送到传感器。
本发明的再一方面是有关包括一个传感器和一个解码器的一个盘驱动通道。传感器能与一个数据存储盘通讯。解码器与传感器耦合,接收来自传感器的读取信号并根据一个代码将读取信号所表示的连续纠错码(ECC)代码字解码为连续数据字。每个ECC代码字包括多个多位ECC符号,依据位模式与多位ECC符号之间边界的相对位置,该代码约束在每个ECC代码字中的位模式。
附图简述
图1为可以实施本发明诸方面的盘驱动器的透视图。
图2为按照本发明一个实施例的图1中所示盘驱动器内一个数据存储通道的框图。
图3-1和图3-2为表示含有非法NRZ位模式的ECC代码字部分的框图,它们被图2所示的存储通道所使用的编码器和解码器所避免。
图3-3和图3-4为表示含有一些合法NRZ位模式的ECC代码字部分的框图,它们被图2所示的存储通道所使用的编码器和解码器所允许。
图4是一曲线图,绘制经纠正的位差错率与具有相连ECC代码的编码和未编码通道的事件差错率的函数关系。
图5为根据本发明的一个实施例的框图,它表示由图2中所示的第一位电平编码器执行的编码过程。
图6为根据本发明的一个例子的流程图,描述图2所示的ECC编码器和第二位电平编码器执行的过程。
图7为描述通过图2所示的ECC编码器和位电平编码器的数据流的流程图。
图8为根据本发明的另一个实施例的编码器电路的框图。
示例性实施例的详述
图1为本发明实用的盘驱动器100的透视图。盘驱动器100包括具有一个基座102和一个顶盖(未显示)的外壳。盘驱动器100还包括一个由盘夹108安置在主轴电机(未显示)上的盘组106。盘组106包括被安置绕中心轴109共同旋转的多项单个盘。每个盘表面具有一个关联的盘头滑动器110,滑动器安置在盘驱动器100上用于与盘表面通讯。在图1所示的例子中,滑动器110由悬梁112支撑,后者又附着于传动器116的轨迹连接臂114。图1所示的传动器为所知的一种旋转移动线圈传动器,它包括一个通常以118表示的音圈电机(VCM)。音圈电机118用其附着头110绕着轴支点120旋转传动器116,使得附着头110沿着盘内径124和盘外径126之间的一个弓形路径122将头110定位在所需数据轨道。音圈电机118由位于内部电路128的伺服电子依据头110和主计算机(未显示)产生的信号被驱动。
内部电路128中的写入电路对待存入连续代码字中的数据编码,然后将它们预编码为不归零反转(NRZI)形式(或,也可是NRZ形式)并被调制以形成连续的模拟写入信号。头110上的写入传感器根据模拟写入信号编码在盘表面上磁性层内的磁通量反转。在读取操作过程中,头110中的读取传感器感应磁通量反转并产生一个串行模拟读出信号。模拟读出信号被转化成一个串行数字信号,该信号提供给内部电路128内的探测器和解码器电路,从而产生一个经恢复的数字信号。
图2为采用本发明的一个通常通讯系统138的框图。对于图1的盘驱动器,通讯系统138由头110、盘106以及电路128内的内部逻辑形成。通讯系统138包括编码器电路139,编码器电路包括一个第一位电平编码器140、一个符号电平纠错码(ECC)编码器、一个复用器148和一个第二位电平编码器150。位电平编码器140接收连续数据字142并根据一个代码将连续数据字编码成连续数据代码字143。每个数据字142包含任何数目的位。位的数目越大,编码器140能达到的编码率越高。该代码将连续数据代码字143约束在一个位水平上以避免具有已知会在通道160中产生某些普遍的误差事件的位模式的代码字。
例如,该代码可包括一个具有一个“k”约束的游程长度限制(RLL)码。“k”约束限制读取信号中的连续零的数目不超过最大值“k”。该代码还可限制一个编码位流中的连续一的数目从而限制符号间干扰效应,该效应发生在被传送信号中的连续转化彼此相互干扰的时候。这样的代码被称作具有“j”约束的最大转化游程(MTR)码,其中“j”为通道信号中所允许的连续转化的最大数目。其他类型代码可由编码器140使用以附加到或替代上述的代码种类。在以下详述的一个实施例中,根据每一位将在多位ECC符号中的相对位置,该代码对每个数据代码字142中的不同位位置施加不同的约束。这需要编码器140实施的代码在每一数据代码字143内确定ECC符号边界。
编码器140可包括一个块编码器或可被状态驱动,并且所有的代码字143经仔细挑选以避免产生普遍的误差事件的代码字。编码器140可通过合并逻辑或具有查询表的软件来执行,从而实现每个用户数据字及其相应代码字之间的转换。也可使用其他硬件和软件执行。
由编码器140产生的连续数据代码字143提供给复用器148的一个输入以及ECC编码器144,复用器和编码器一起将数据代码字143的连续块(或部分)编码为复用器148的输出上的连续ECC代码字(也称为ECC块或部分)149。每个ECC代码字149包括一个数据字段和一个ECC字段,它们各由一个或多个的多位ECC符号形成。复用器148将每块数据代码字143映射到一个相应的ECC代码字149的数据字段,从而在数据字段中形成一个或多个的ECC符号。
ECC编码器144依据数据字段中的ECC符号为ECC字段产生附加的ECC符号152。例如,附加的ECC符号可通过将数据字段中的ECC符号应用于一个多项式函数来产生。连接在ECC字段的附加的ECC符号的数目决定了每个ECC代码字中的可纠正的ECC符号的总数。例如,一个特定ECC可能对ECC代码字中的每个可纠正的ECC符号需要二个附加ECC符号。可使用任一种ECC,如一个Reed-Solomon ECC。
位电平编码器150编码附加ECC符号152并如用编码器140应用于数据代码字142一样应用相似的代码约束。而且,依据ECC符号中的每一位的相对位置,代码对不同的位位置施加不同约束。在一个实施例中,每个ECC符号被编码为一个相应的经编码的ECC符号146。由于每个附加的ECC符号中的位数目比每个代码字142中的少,位电平编码器150的编码率比位电平编码器140的编码率低。在另一个实施例中,多个附加ECC符号被一起编码为一个相应代码字。随后,由此产生的经编码的ECC符号146提供给复用器148的另一个输入。
复用器148将数据代码字143的每个块映射到一个相应的ECC代码字149的数据字段并将各个一组附加的经编码的ECC符号146通过时间复用,复用器的输入映射到相应的ECC代码字149的ECC字段。可使用另一个实施例的其他构造和方法将经编码的ECC符号146与相应的ECC代码字149的数据字段相连接。
并-串转换器155接收连续ECC代码字149,将每个ECC代码字149转化成一个串行表示并连接此串行表示,以产生一个ECC代码字位154的串行流。发送器/预编码器156接收串行ECC代码字流154并达到序列要求从而优化用于恢复来自通道的信号的那种探测器。发送器/预编码器156产生提供给通道160的一个经编码的写入信号158。
在盘驱动器100中,通道160包括头110中的写入传感器、盘组以及头110中的读取传感器。经编码的写入信号被写入传感器存储在盘表面。在读取操作过程中,读取传感器从盘表面读取存储的编码的信息并将编码的信息作为一个读取信号164发送到接收器/探测器162。接收器/探测器162放大并过滤读取信号164,然后使用几个所知的探测方法之一恢复来自读取信号的经编码信息。举例来说,接收器/探测器162可使用一个维特比探测器、决策反馈均衡化(DFE)、具有决策反馈的固定迟滞树状搜寻(FDTS/DF)或降低的状态序列探测(RSSE)。接收器/探测器162在放大并过滤来自通道160的信号之后,产生经恢复的代码字位165的序列以提供给串-并转换器163。
串-并转换器163将位组合成ECC代码字并将ECC代码字从串行形式转化成并行形式。连续恢复的ECC代码字166的长度相应于编码器139产生的ECC代码字的长度。然后,串-并转换器163以并行形式将连续恢复的ECC代码字166输出至ECC解码器和纠正电路168。电路168使用编码器150使用的编码规则的反转,根据ECC代码字166中的ECC符号和ECC编码器144使用的多项式函数将ECC字段中的附加ECC符号解码成原始ECC符号,并且确定任一ECC符号是否含有误差。只要含有误差的ECC符号的数目不大于可被电路168纠正的符号的最大数目,原始传送的ECC符号被恢复。
然后从已恢复的ECC代码字剥离数据字段,以恢复数据代码字的原始块170,随后提供给解码器172。位水平解码器172采用编码器140使用的编码规则的反转将连续数据代码字170解码为各自的代码字174。
如上所述,位电平编码器140和150向每个ECC符号中的不同位位置提供不等的误差保护。在一个实施例中,向靠近ECC符号边界的位位置提供比靠近每个ECC符号中心的位位置更多的误差保护。这是通过将一组代码约束应用于每个ECC符号的“外围”位位置以及将另一组代码约束应用于每个ECC符号的“内部”位位置来实现的。
这就提供了更大的保护以抵御对ECC编码器及纠正电路168纠正误差的能力有巨大影响的误差事件。编码器140和150使用的代码提供了更大的保护以抵御跨越ECC符号的边界的误差比不跨越ECC符号的边界的误差更大。跨越ECC符号的边界的误差事件导致二个连续ECC符号出现误差。通过避免这些多重符号误差事件,在每个ECC代码字中含有误差的ECC符号的总数减少了,有更大可能电路168能恢复给定ECC代码字中所有ECC符号。
而且,通过允许某些在“外围”位位置所不被允许的一些位模式发生在“内部”位位置,由于只有影响ECC符号边界的位模式受约束,便可保持相对高的编码率。这样,就可使用更大的位模式的总数。
通过磁性记录通道,最为可能的误差事件是一位和三位的误差事件。一位误差事件导致一位ECC符号误差。三位误差事件如跨越ECC符号的边界,导致二个ECC符号误差。在一个实施例中,编码器140和150使用一个边界MTR编码用于将三位误差事件从ECC符号的边界去除。代码消除了二个NRZ模式(或一个NRZ模式),它们导致在ECC符号边界具有中间转化的一个三位。
图3-1和图3-2为表示含有非法NRZ位模式的ECC代码字部分的框图,编码器和解码器避免该非法部分。如上所述,每个ECC代码字由在数据和ECC字段互相连接的多个多位ECC符号形成。在图3-1中,ECC代码字300包含10位ECC符号301和302,它们之间存在边界303。ECC代码字300中的每个ECC符号具有可能相互重叠的一个或几个“外围”位位置304和一个或几个“内部”边界位位置306。由ECC符号301在“外围”边界位位置上的“01”以及ECC符号302在“外围”边界位位置的“01”形成的NRZ模式产生三个转化结果,其中中间转化发生在边界303。在图3-2中,ECC代码字310包含ECC符号311和312,它们之间存在边界313。与图3-1所示的类型相似,NRZ模式“1010”产生三个转化结果,其中中间转化发生在ECC符号311和312之间的边界313。这些位模式被编码器140和150在“外围”边界位位置304位模式避免,而在“内部”边界位位置306被允许。
图3-3和图3-4为表示含有一些合法NRZ位模式的ECC代码字部分的框图,这部分未被编码器140和150所避免。在图3-3中,ECC代码字320包含ECC符号321和322,它们之间存在边界323。虽然,NRZ模式“10100”导致三个转化结果,但中间转化并不发生在“外围”位位置304内的边界313。在图3-4中,ECC代码字330包含ECC符号331和332,它们之间存在边界333。与图3-3所示的模式相似,NRZ模式“00101”导致三个转化结果,但中间转化并不发生在二个ECC符号331和332之间的边界333。
使用编码器140和150消除图3-1和图3-2所显示的类型并在解码器168和172上施加相应约束,除去了ECC符号边界的二个可能的三位误差事件以及包括在ECC符号边界三位的任何更大的误差事件。同样的约束没有施加在发生在单个符号的内部位位置306的三位误差事件因此在ECC符号的边界附近的位位置的位差错率的可能性比ECC符号内的位位置低。
由于必须使用多个代码位以避免导致三位的所有位模式,消除所有的三位误差事件的MTR码,缺点是大编码率处罚。在本发明的上述实施例中,通过避免在ECC符号的边界所有的三位误差事件而非剩余三位误差事件取得了有效的妥协。由于剩余三位误差事件被限制在单个的ECC符号,因此有很大可能这些误差事件可被ECC解码器纠正。通过在位水平上的MTR码避免这些误差不是必需的。由此MTR码约束被放松,产生可达到的更高的编码率。
举例来说,假设通道160(图2所示)只有三位误差事件。假设ECC编码器144形成10位符号并且ECC解码器168有能力纠正每个ECC代码字中最多12个ECC符号。编码器140和150(也为图2所示)没有编码的情况下,取每个ECC代码字中七个误差事件超出ECC能力。如果这七个误差事件都发生在ECC符号边界,那么14个ECC符号将有误差,这超出了12个ECC符号的误差能力。如果每个ECC代码字使用一个奇偶校验位,那么取ECC代码字八个误差事件超出ECC能力。通过边界MTR码(避免在ECC符号边界的三位误差事件)以及不奇偶校验,取ECC代码字十三个误差事件超出ECC能力。
图4绘制了用于具有链接ECC代码的编码和未编码通道,Y轴上经纠正的位差错率与X轴上事件差错率的函数。Y轴经纠正的位差错率是不可纠正的ECC代码字(部分)的数目除以读取位数目的比率。线条402代表未编码实例的经纠正的位差错率,而线条403代表边界MTR编码实例的经纠正的位差错率。边界MTR编码实例的未经纠正的ECC代码字明显比未编码实例的少。
图5为根据本发明的一个实施例的框图,它表示编码器140执行的一个编码程序。在步骤500,编码器140接收用于编码的连续m位数据字。在步骤501,编码器140根据一个代码将每个连续m位数据字映射到一个各自的连续n位代码字。该代码识别在每个代码字中由ECC编码器144随后限定的多位ECC符号之间的边界,并对每个代码字中靠近和远离ECC边界的位位置施加不同的代码约束。在步骤502,编码器140将产生的代码字输出至编码器144。
图6为根据本发明的一个例子描述编码器140和150执行的一个程序的流程图。在步骤600,ECC编码器144接收来自编码器140经编码的数据字的块。在步骤601,ECC编码器141将数据字的块应用于被划分为多个多位ECC符号的相应的ECC代码字的数据字段。在步骤601数据字段的ECC符号被应用于一个多项式,该多项式是用于产生与数据字段相连的附加ECC符号。在步骤603,位电平编码器150根据施加如位电平编码器140应用的同样的约束的一个代码将附加ECC符号映射到经编码的ECC符号,从而避免ECC符号边界的三位。在步骤604,经编码的ECC符号被应用于与数据字段相连的ECC代码字的数据字段。随后将产生的经编码的ECC代码字输出至写入通道的下一阶段。
图7为根据本发明的另一个例子描述编码器139的数据流的流程图。编码器140(图2所示)将数据字的块700编码成一个各自的经编码的数据字的块701。经编码的ECC代码字的块701被直接应用于ECC代码字703的数据字段702。数据字段702被分割成多个多位ECC符号。在另一个实施例中,ECC编码器144将一个多项式函数应用于经编码的ECC代码字的块,以产生数据字段702的ECC符号。经编码的数据字的块701还被应用于多项式704,它产生附加ECC符号705。可使用任何合适的多项式实施所需的纠错码。然后编码器150将附加ECC符号编码成经编码的ECC符号706,将其应用于ECC代码字703的ECC字段708。这是编码器的“系统性”类型的一个例子。
图8为根据本发明的另一个实施例的可用于代替在图2所示的编码器电路139的一个编码器电路800的框图。编码器电路800包括符号-水平ECC编码器802、复用器804和位电平编码器806。连续进入的数据字的块810被应用于复用器804的第一数据输入,用于在复用器804的输出映射到相应的ECC代码字812的数据字段。而且,每个ECC代码字的数据字段被分割成如上所述的多个ECC符号。连续数据字的块810还被应用于根据数据字段中的ECC符号为ECC字段产生附加ECC符号812的ECC编码器802。例如,可通过将数据字段中的ECC符号应用于一个多项式函数而产生附加ECC符号。然后附加ECC符号被应用于复用器804的第二数据输入。复用器804将连续一组组附加ECC符号814与连续ECC代码字812的ECC字段相连。
位电平编码器806接收每个ECC代码字812并如图2中的编码器140和150应用相似的代码约束。在一个实施例中,编码器806是一个将ECC代码字812中的每个ECC符号编码成一个相应的经编码的ECC符号的块编码器。而且,该代码根据ECC符号中的每个位的相对位置对不同的位位置施加不同的约束。由于每个ECC符号中的位数目比每个数据字142中的少(图2中),编码电路800的总编码率比编码电路139的总编码率低。在编码电路139中,每个ECC代码字的位的大多数为通过位电平编码器140以较高速率被编码的数据位。只有少量的位由编码器150以较低速率在一个ECC符号基础上被编码。根据本发明也可使用其他不同编码方法。
总结来说,本发明的一个方面涉及一种编码数据字142的方法,其中至少一个数据字142的块700被映射到一个纠错码(ECC)代码字149,701。被边界303,313,323,333分开的多个多位ECC符号301,302,311,312,321,322,331,332限定ECC代码字149,701。根据位模式与边界303,313,323,333,的相对位置304、306,约束位模式(如图3-1和图3-2所示的那些)而不发生在ECC代码字149,701。
本发明的另一个方面是关于一种用于将连续数据字编码成各自的连续的数据字的编码器139。该编码器包括一个数据字输入142、一个代码字输出143以及一个第一编码器单元140。第一编码器单元140根据第一代码将数据字输入142收到的每个连续数据字映射到代码字输出143上的一个各自的连续的代码字。第一代码识别在每个代码字内多位纠错码(ECC)符号301,302,311,312,322,331,332之间的边界303,313,323,333,并对靠近边界的每个代码字的位位置304比对远离边界303,313,323,333的每个代码字的位位置306施加不同的代码约束。
本发明的另一方面是有关一种包括传感器110和编码器139的盘存储通道138。传感器110能与数据存储盘106通讯。编码器139与传感器110耦合,用于根据一个代码将数据142编码为由多位ECC符号301,302,311,312,322,331,332形成的连续纠错码(ECC)代码字149,701。依据位模式与多位ECC符号之间的边界303,313,323,333的相对位置304,306,该代码约束位模式不出现在ECC代码字149,701中。然后,编码器139将ECC代码字149,701作为代码字流154发送到传感器110。
本发明的再一方面是有关一种包括传感器110和解码器168,172的盘驱动通道138。传感器110能与数据存储盘106通讯。解码器168,172与传感器110耦合,用于接收来自传感器110的读取信号164并根据一个代码将读取信号164表示的连续纠错码(ECC)代码字166解码为连续数据字174。每个ECC代码字166包括多个多位ECC符号301,302,311,312,322,331,332,依据位模式与多位ECC符号301,302,311,312,322,331,332之间的边界303,313,323,333的相对位置304,306,该代码约束ECC代码字166中的位模式。
可以理解,即使前面已述本发明的各种不同的实施例的众多特征和优点以及发明的各种不同的实施例的详细构造和功能,所公开的内容只是描述性的,可在所附权利要求书中的条款的广义指示的本发明的原则范围内最大限度地对细节作改变,特别是在构造和部件排列方面修改。例如,可依据通道的特定应用改变特定元件,与此同时基本保持同样的功能而不偏离本发明的精神和范围。此外,即使这里所述的实施例涉及用于一个盘驱动系统的读取和写入通道,也感激那些本领域中技术熟练的人将本发明的教学应用于其他系统,如通讯系统或其他存储系统,而不偏离本发明的精神和范围。并且,在详细说明和权利要求书中使用的术语“耦合”可包括一个直接连接或通过一个或几个中间部件的连接。
Claims (11)
1.一种对数据字编码的方法,该方法包括步骤:
(a)将至少一个数据字的块映射到一个纠错码(ECC)代码字,该代码字由被边界分割开的多个多位ECC符号限定;以及
(b)根据位模式与边界的相对位置,约束位模式不出现在ECC代码字中。
2.如权利要求1所述的方法,其特征在于:
在步骤(a),每个ECC符号包含多个“内部”位位置和多个“外围”位位置,“外围”位位置比“内部”位位置更靠近各自的边界;以及
在步骤(b),约束位模式包含对“外围”位位置及“内部”位位置施加不同的代码约束,以避免在“内部”位位置中被允许的所选位模式不出现在“外围”位位置中。
3.如权利要求1所述的方法,步骤(a)还包括:
(a)(1)根据一个代码将每个数据字编码成一个数据代码字,此代码是根据位模式在数据代码字中的位置相对于在数据代码字中的位位置,约束位模式不出现在数据字中,所述的数据代码字中的位位置对应于多位ECC符号之间的边界;以及
(a)(2)将至少一个数据字的块映射到包括第一组ECC符号的ECC代码字的数据字段。
4.如权利要求3所述的方法,其中步骤(a)还包括:
(a)(3)产生由边界分割开的第二组ECC符号,作为第一组ECC符号的多项式函数。
(a)(4)依据位位置与第二组ECC符号的边界的相对位置,约束位模式不出现在第二组ECC符号中;以及
(a)(5)将第二组ECC符号映射到ECC代码字的ECC字段。
5.如权利要求1中所述的方法,其特征在于:
位模式包括具有第一与第二二进制状态之间三个连续转化的位模式,其中中间一个转化发生在边界之一上。
6.一种用于将连续数据字编码成各自的连续代码字的编码器,该编码器包括:
一个数据字输入;
一个代码字输出;以及
一个第一编码器单元,第一编码器单元根据第一代码将数据字输入收到的每个连续数据字映射到代码字输出上的各自的连续代码字,其中第一代码识别每个代码中的多位纠错码(ECC)符号之间的边界,并对靠近边界的每个代码字中的位位置与远离边界的每个代码字中的位位置施加不同的代码约束。
7.如权利要求6所述的编码器,还包括:
一个ECC编码器,它接收来自第一编码器单元的连续代码字,将至少一个数据字的块映射到ECC代码字的数据字段,并根据该数据字段和一预定的多项式函数将ECC字段衔接在数据字段上,其中,ECC代码字是由数据字段及ECC字段内的多个多位ECC符号来限定的。
8.如权利要求7所述的编码器,还包括:
一个第二ECC编码器单元,它根据第二代码将ECC字段内的每个ECC符号映射到一个经编码的ECC符号,其中,第二代码识别ECC字段内的经编码的ECC符号之间的边界,并对靠近ECC字段中边界的每个经编码ECC符号中的位位置与离离ECC字段中边界的位位置施加不同的代码约束。
9.如权利要求8所述的编码器,其中,第一和第二代码阻止所选的位模式不出现在ECC代码字中,其中,所选位模式包括具有在第一和第二二进制状态之间三个连续转化的位模式,中间一个转化发生在ECC代码字中的ECC符号边界之一上。
10.一种盘驱动存储通道,包括:
一个能与数据存储盘通讯的传感器;以及
与传感器耦合的编码装置,用于根据一个代码将数据编码为由多位ECC符号形成的连续纠错码(ECC)代码字,其中,根据位模式与多位ECC符号之间边界的相对位置该代码约束位模式不出现在每个ECC代码字中,并将ECC代码字作为代码字流发送到传感器。
11.一种盘驱动存储通道,包括:
一个能与数据存储盘通讯的传感器;以及
与传感器耦合的解码装置,用于接收来自传感器的读取信号并根据一个代码将读取信号表示的连续纠错码(ECC)代码字解码为连续数据字,其中,每个ECC代码字包括多个多位ECC符号,根据位模式与多位ECC符号之间边界的相对位置,该代码约束每个ECC代码字中的位模式。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21469900P | 2000-06-27 | 2000-06-27 | |
US60/214,699 | 2000-06-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1383617A true CN1383617A (zh) | 2002-12-04 |
Family
ID=22800094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN01801821A Pending CN1383617A (zh) | 2000-06-27 | 2001-06-26 | 在具有链接纠错码的磁性记录通道中不平衡保护编码的方法和设备 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6804805B2 (zh) |
JP (1) | JP2004502264A (zh) |
KR (1) | KR20020025239A (zh) |
CN (1) | CN1383617A (zh) |
DE (1) | DE10193104T1 (zh) |
GB (1) | GB2371960A (zh) |
WO (1) | WO2002001561A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100388220C (zh) * | 2003-02-07 | 2008-05-14 | 罗伯特·博世有限公司 | 用于监控电子控制的方法和设备 |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002116961A (ja) * | 2000-10-11 | 2002-04-19 | Nec Corp | シリアル通信装置およびシリアル通信方法 |
US7024653B1 (en) * | 2000-10-30 | 2006-04-04 | Cypress Semiconductor Corporation | Architecture for efficient implementation of serial data communication functions on a programmable logic device (PLD) |
FR2837332A1 (fr) * | 2002-03-15 | 2003-09-19 | Thomson Licensing Sa | Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants |
JP2003318865A (ja) * | 2002-04-26 | 2003-11-07 | Fuji Xerox Co Ltd | 信号伝送システム |
US7174485B2 (en) | 2003-11-21 | 2007-02-06 | Seagate Technology Llc | Reverse error correction coding with run length limited constraint |
US6897793B1 (en) * | 2004-04-29 | 2005-05-24 | Silicon Image, Inc. | Method and apparatus for run length limited TMDS-like encoding of data |
US20060242530A1 (en) * | 2005-03-31 | 2006-10-26 | Nec Laboratories America, Inc. | Method for constructing finite-length low density parity check codes |
US7599396B2 (en) * | 2005-07-11 | 2009-10-06 | Magnalynx, Inc. | Method of encoding and synchronizing a serial interface |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
CN103280239B (zh) | 2006-05-12 | 2016-04-06 | 苹果公司 | 存储设备中的失真估计和消除 |
US8239735B2 (en) | 2006-05-12 | 2012-08-07 | Apple Inc. | Memory Device with adaptive capacity |
US7975192B2 (en) | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
WO2008111058A2 (en) | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
WO2008139441A2 (en) * | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US8259497B2 (en) * | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US8527819B2 (en) | 2007-10-19 | 2013-09-03 | Apple Inc. | Data storage in analog memory cell arrays having erase failures |
US8270246B2 (en) | 2007-11-13 | 2012-09-18 | Apple Inc. | Optimized selection of memory chips in multi-chips memory devices |
US8225181B2 (en) * | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) * | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8493783B2 (en) | 2008-03-18 | 2013-07-23 | Apple Inc. | Memory device readout using multiple sense times |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8397131B1 (en) | 2008-12-31 | 2013-03-12 | Apple Inc. | Efficient readout schemes for analog memory cell devices |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) * | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
EP2338544A1 (en) * | 2009-12-28 | 2011-06-29 | F. Hoffmann-La Roche AG | Ambulatory infusion device with variable energy storage testing and method for testing an energy storage |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8572311B1 (en) | 2010-01-11 | 2013-10-29 | Apple Inc. | Redundant data storage in multi-die memory systems |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8493781B1 (en) | 2010-08-12 | 2013-07-23 | Apple Inc. | Interference mitigation using individual word line erasure operations |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US8922923B2 (en) | 2011-03-01 | 2014-12-30 | Seagate Technology Llc | Interleaved automatic gain control for asymmetric data signals |
US20140223136A1 (en) * | 2013-02-07 | 2014-08-07 | Lsi Corporation | Lookup Tables Utilizing Read Only Memory and Combinational Logic |
US9270411B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Indicating end of idle sequence by replacing certain code words with alternative code words |
US9401729B2 (en) | 2014-02-03 | 2016-07-26 | Valens Semiconductor Ltd. | Maintaining running disparity while utilizing different line-codes |
US9270415B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Encoding payloads according to data types while maintaining running disparity |
US9594719B2 (en) | 2014-02-03 | 2017-03-14 | Valens Semiconductor Ltd. | Seamless addition of high bandwidth lanes |
US20150222384A1 (en) | 2014-02-03 | 2015-08-06 | Valens Semiconductor Ltd. | Changing receiver configuration by replacing certain idle words with bitwise complement words |
US9270403B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Indicating end of idle sequence by replacing expected code words while maintaining running disparity |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3334810B2 (ja) * | 1992-02-14 | 2002-10-15 | ソニー株式会社 | 符号化方法、再生方法、および、再生装置 |
US5859601A (en) * | 1996-04-05 | 1999-01-12 | Regents Of The University Of Minnesota | Method and apparatus for implementing maximum transition run codes |
US6009549A (en) * | 1997-05-15 | 1999-12-28 | Cirrus Logic, Inc. | Disk storage system employing error detection and correction of channel coded data, interpolated timing recovery, and retroactive/split-segment symbol synchronization |
WO1999008376A1 (en) * | 1997-08-11 | 1999-02-18 | Seagate Technology, Inc. | Static viterbi detector for channels utilizing a code having time varying constraints |
SG87129A1 (en) * | 1999-07-12 | 2002-03-19 | Ibm | Data encoding systems |
US6505320B1 (en) * | 2000-03-09 | 2003-01-07 | Cirrus Logic, Incorporated | Multiple-rate channel ENDEC in a commuted read/write channel for disk storage systems |
-
2001
- 2001-06-26 KR KR1020027002595A patent/KR20020025239A/ko not_active Application Discontinuation
- 2001-06-26 CN CN01801821A patent/CN1383617A/zh active Pending
- 2001-06-26 GB GB0204744A patent/GB2371960A/en not_active Withdrawn
- 2001-06-26 DE DE10193104T patent/DE10193104T1/de not_active Ceased
- 2001-06-26 US US09/891,688 patent/US6804805B2/en not_active Expired - Lifetime
- 2001-06-26 JP JP2002505618A patent/JP2004502264A/ja active Pending
- 2001-06-26 WO PCT/US2001/020311 patent/WO2002001561A2/en not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100388220C (zh) * | 2003-02-07 | 2008-05-14 | 罗伯特·博世有限公司 | 用于监控电子控制的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
KR20020025239A (ko) | 2002-04-03 |
DE10193104T1 (de) | 2003-03-13 |
JP2004502264A (ja) | 2004-01-22 |
US6804805B2 (en) | 2004-10-12 |
WO2002001561A3 (en) | 2002-05-23 |
GB0204744D0 (en) | 2002-04-17 |
GB2371960A (en) | 2002-08-07 |
WO2002001561A2 (en) | 2002-01-03 |
US20010056561A1 (en) | 2001-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1383617A (zh) | 在具有链接纠错码的磁性记录通道中不平衡保护编码的方法和设备 | |
CN1241198C (zh) | 利用故障门限检测器和维特比增益进行数据差错复原的方法和设备 | |
CN1983432B (zh) | 用于部分响应信道的结构化集合划分和多层编码 | |
JP2001144622A (ja) | データ符号化用コード及び方法 | |
CN1367953A (zh) | 具有最大跃迁游程和奇偶约束组合的部分响应通道 | |
CN1716836A (zh) | 读取致能产生器,读取致能信号产生方法,数据传输方法 | |
US6989776B2 (en) | Generation of interleaved parity code words having limited running digital sum values | |
CN1305220C (zh) | 用于抑制数字数据内低频含量的方法和装置 | |
KR100426656B1 (ko) | 24 비트 시퀀스의 데이터에 대한 인코딩 및 디코딩 기술 | |
KR100406806B1 (ko) | 짧게 인터리브된 제한 조건을 갖는 효과적인 런 길이 제한코드 | |
US6400288B1 (en) | Method and apparatus for generating code words with shifted tribit error protection | |
US7002492B2 (en) | High rate running digital sum-restricted code | |
US20060181439A1 (en) | DC-free code having limited error propagation and limited complexity | |
CN1289480A (zh) | 游程受限制的数字信息信号的产生 | |
US6839004B2 (en) | High rate run length limited code | |
CN1627646A (zh) | 运行长度有限码的编码解码方法及相关装置 | |
US7191386B2 (en) | Method and apparatus for additive trellis encoding | |
US8724243B1 (en) | Systems and methods for run length limited encoding | |
CN1444221A (zh) | 盘驱动器读写通道中的Turbo编码和解码方法和设备 | |
CN1549267A (zh) | 使用降低复杂度的码表的解调装置和方法 | |
US6917314B1 (en) | Method and apparatus for DC-level constrained coding | |
CN1383659A (zh) | 用于把n比特源字编码或解码成为相应的m比特信道字或反之的设备 | |
US6317856B1 (en) | Encoder and a method of encoding for partial response channels | |
US6868515B2 (en) | Formatting method and apparatus for a direct access storage device | |
CN1484238A (zh) | 具有替换部件的记录/再现装置和替换突发差错的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |