CN102129875B - 二维游程长度受限约束的块编解码装置及其使用方法 - Google Patents
二维游程长度受限约束的块编解码装置及其使用方法 Download PDFInfo
- Publication number
- CN102129875B CN102129875B CN 201110043532 CN201110043532A CN102129875B CN 102129875 B CN102129875 B CN 102129875B CN 201110043532 CN201110043532 CN 201110043532 CN 201110043532 A CN201110043532 A CN 201110043532A CN 102129875 B CN102129875 B CN 102129875B
- Authority
- CN
- China
- Prior art keywords
- dimensional
- dimensional data
- data
- array
- module
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种二维游程长度受限约束的块编解码装置和方法,本装置包括编码器和解码器,编码器包括:一维数据流缓冲模块、一维数据分段模块、二维码字生成模块和二维阵列组装模块,上述四个模块依次连接,最后通过其中的二维阵列组装模块输出给二维数据记录装置;解码器包括:二维数据阵列缓冲模块、二维码字划分模块、一维数据字生成模块、一维数据流组装模块,上述四个模块依次连接,最后通过其中的一维数据流组装模块输出。本发明提供的二维RLL(1,3)编码,适用于将数据按照二维阵列形式(“页”面方式)记录的数据存储系统。
Description
技术领域
本发明属于数据存储和数据通信领域,具体涉及一种在方形格子构成的平面上,无论是在水平方向还是在垂直两个方向上,在相邻数据“1”之间,“0”的游程长度至少等于1,最多不超过3的二维游程长度受限约束编码方法及其装置。
背景技术
通道由于内在的物理特性,会对穿越通道的信号产生具有某种形式的约束限制。为降低通道对信号的这种负面影响,解决问题的办法之一就是使用约束编码技术。约束编码又称调制编码,即以无损方式,将数据流转化成满足预先指定约束的数据序列,游程长度受限约束(Runlength Limited Constraint)RLL(d,k)是这类约束的一个典型代表。这里d表示连续“1”之间的“0”的游程长度最小值,k表示最大值。使用约束编码后的数据存储系统或通信系统,在系统可靠性上都得到了显著提高和改善,因此约束编码已称为现代存储系统和通信系统的一个重要组成部分。目前广为使用的约束编码有很多种,RLL(1,3)约束编码就是其中的一个代表。RLL(1,3)约束编码,也叫Miller码或改进型调频编码(MFM)(美国专利号3,108,261,公布日1963年10月22日),在早期的存储器中,随处都有其影子。
近些年,随着技术不断发展,出现了一种新型的二维存储器,例如全息存储和二维光盘等。这种存储技术和当今主流存储器的主要区别在于:数据在记录介质上,是按照页面即二维阵列方式进行分布的,当读取数据时,也是按照整页整页的方式进行;而当今存储技术中,无论是光记录模式还是磁记录模式,数据是沿着轨道在记录介质上进行读写,这样数据可看成一维序列。现假设待记录的原始数据序列是10101000,若数据按照一维方式记录在存储介质上,经过上面的RLL(1,3)约束编码后,其在记录介质上的布局如下所示:
0100010001001010
但当数据记录在上述的全息存储器和二维光盘等二维存储器中,则以二维阵列方式布局在记录介质上。现假定记录尺寸大小为4×4,若仍采取上面的RLL(1,3)编码方法,且沿水平逐行排列的方式记录,则二进制数据阵列在记录介质上的布局如下所示:
在上述全息存储和二维光盘存储器中,若不考虑边界的影响,从上述经改进型调频编码编码后的二维数据阵列中可以看出,每位数据都有4位数据和它本身直接相邻(即通常所说的上、下、左和右)。在此情形下,通道的这种特性对约束编码就提出了新的要求,即二进制数据阵列在水平和垂直两个方向上都要满足约束限制。显然在上述经改进型调频编码编码后的一维形式中,数据序列满足RLL(1,3)要求,但经改进型调频编码编码后的二维阵列中的数据布局则不能同时保证在水平和垂直两个方向上都满足约束限制条件。这个例子就表明:传统的一维RLL(1,3)约束编码已不适应这种新型二维存储记录模式。类似地,当将其他的约束编码推广到二维存储器中,也会出现类似问题,即在二维情形下,若采取现有这些一维约束编码技术,均不能同时保证数据在水平和垂直两个方向上都满足预先指定的这种新型二维约束要求。因而将一维约束编码技术应用到二维存储技术中,就不能发挥其功能和作用,达到改善和提高系统性能的目的。因此寻求新的二维约束编解码方法,保证数据在水平和垂直两个方向上能同时满足新型二维存储技术的发展和需求就显得非常有必要。
发明内容
本发明所要解决的技术问题是:公开了一种二维游程长度受限约束的块编解码装置及其使用方法。本发明提供的二维RLL(1,3)编码,适用于将数据按照二维阵列形式(“页”面方式)记录的数据存储系统。
本发明采取的技术方案是:二维游程长度受限约束的块编解码装置,包括编码器和解码器,所述编码器包括:
一维数据流缓冲模块,用于暂时存放一维数据流;
一维数据分段模块,用于将一维数据流均匀划分成指定长度的若干相同的数据段,并对每段数据以4比特为一组,将每段数据划分成若干组一维4比特数据字;
二维码字生成模块,用于将一维4比特数据根据编解码规则表对应的编码方程编码成4×4阵列的相应二维码字;
二维阵列组装模块,用于将二维码字生成模块产生的二维码字根据产生次序,组装成二维数据阵列;
上述四个模块依次连接,最后通过其中的二维阵列组装模块输出给二维数据记录装置;
所述解码器包括:
二维数据阵列缓冲模块,用于暂时存放二维数据记录装置输出的二维数据流;
二维码字划分模块,用于将一整页二维数据阵列分组划分成若干4×4二维子阵列数据;
一维数据字生成模块,用于将4×4二维子阵列数据转化为一维4比特数据字;
一维数据流组装模块,用于将上述若干一维4比特数据字组装成一维用户数据流;
上述四个模块依次连接,最后通过其中的一维数据流组装模块输出。
所述的二维游程长度受限约束的块编解码装置的使用方法,通过编码器实现编码过程,包括以下步骤:
S101)将一维数据流缓冲模块中暂存的一维数据流输入到一维数据分段模块,然后将输入的一维数据流均匀地划分成若干数据段,然后对每段数据,按4比特为一个数据字,划分成若干个一维数据字,并输入到数据缓冲区暂存,然后进入二维码字生成模块;
S102)二维码字生成模块按照一维数据字到二维约束子阵列的编解码规则表将每段数据中的4比特一维数据字转化成4×4的二维码字,然后输入到二维阵列组装模块;
S103)由二维阵列组装模块将从步骤S102得到的二维码字以水平逐行级联方式构造出二维约束阵列;
S104)判断步骤S103得到的二维约束阵列是否满足页面大小要求,若满足,则进入下一步,否则转步骤S102;
S105)将步骤S104产生的二维约束阵列输出到二维记录装置。
所述的二维游程长度受限约束的块编解码装置的使用方法,通过解码器实现解码过程,包括以下步骤:
S201)从二维记录装置读取二进制数据阵列,暂时存入二维数据阵列缓冲模块;
S202)从二维数据阵列缓冲模块读取二维数据阵列,通过二维码字划分模块将二维数据阵列按照逐行方式划分成若干4×4二维约束子阵列,然后输入到一维数据字生成模块;
S203)通过一维数据字生成模块将上述划分后的若干4×4子阵列逐个按照一维数据字到二维约束子阵列的编解码规则表,译码出相应的4比特一维数据字;
S204)判断是否有尚未译码的4×4子阵列,若有转入步骤S203,否则将S203得到的一维数据字按照译码的先后顺序输入到一维数据流组装模块;
S205)通过一维数据流组装模块,将得到的一维数据字按照步骤S203产生的先后顺序组装成一维数据流。
本发明的技术效果如下所述:
1)编码器的状态数最小化。编码器状态数是评价编码器性能的一个重要指标。如果数据在编码过程中是分块独立的,也就是状态无关的,因此数据在译码时性能就越好。即译码时,当前数据的译码错误就仅限于当前数据,从而对后继数据的译码没有任何影响,因此不会产生灾难性的译码错误传播。
2)二维码字编解码规则表构造简单。因本发明的4×4阵列的二维码字和一维数据字是一一对应的,通过简单的编解码规则方程,即可实现一维4比特数据到4×4阵列的二维码字的编码过程,反之,通过查找二维码字的特定数据比特,即可实现一维4比特数据字的译码。这非常有利于编码器和解码器的电路设计和简化,对提高编解码器的整体综合性能具有重要意义。
附图说明
图1是本发明所述编码器的原理框图。
图2是本发明所述解码器的原理框图。
图3是一维数据流组装成二维约束数据阵列实施例。
图4是二维约束数据阵列解码成一维原始数据流的实施例。
具体实施方式
针对现有技术存在的问题,本文提出了一种二维块约束编解码装置及方法。具体来讲,本文提出了一种在水平和垂直两个方向上都能满足“0”的游程长度至少等于1,最大不超过3的二维游程长度受限约束编解码方法,简称二维游程长度受限约束编码2D-RLL(1,3)。本发明适用于将数据按照二维阵列形式(“页”面方式)记录的数据存储系统,系统典型代表有全息存储器及二维光盘等二维新型存储器。
在优选的实施方式中,本发明提供了两种状态无关的二维游程长度受限约束编/解码方法。基于本发明给出的方法,由于在编码过程中,不涉及编码器状态,译码器是状态独立的,因此不会产生译码错误的传播,即当前数据的译码错误不会对后继数据的译码造成任何影响,译码错误仅限于当前4bits数据。
下面结合附图和实施例对本发明作进一步详细的说明。
表1编解码规则表(1)
如表1所示,二维游程长度受限约束的块编码器所需的编解码规则表,在该编解码规则表中,一维数据字用X=[X1X2X3X4]表示,二维码字如下所示:
基于编解码规则表一,其对应的二维码字编码方程如下所示:
其中X1~X4为一维数据字的各个比特位。Y11~Y44为二维码字的各比特位。上述16个二维码字分别用编号0~15来表示,基于此编解码规则表,可将一维4比特数据转换成二维码字,这16个二维码字构造的二维阵列能满足要求。反之,在译码的过程中,根据该编解码规则表,一维4比特数据字的译码方程如下所示:
X1=Y11
X2=Y22
X3=Y33
X4=Y44
表2编解码规则表(2)
如表2所示,本发明给出的能达到和编解码规则表一同等效果的第二种编解码规则方法,该编解码规则表对应的二维码字编码方程如下所示:
和表2对应的一维4比特数据字的译码方程如下所示:
X1=Y12
X2=Y21
X3=Y34
X4=Y43
如图1所示,编码器编码过程如下:首先原始的一维数据流先暂时存放在一维数据流缓冲模块,之后该数据流输入到一维数据分段模块,数据分段模块将一维数据流按照预先指定的大小划分成若干段,然后再对每段数据按照4比特为一组,划分成若干个一维4比特数据字,最后输入到二维码字生成模块;二维码字生成模块将一维数据字按照编码规则表,将一维4比特数据字转换成二维码字,其中编码规则表如表1或表2所示。编码步骤如下:
第一步:将输入的二进制一维数据流均匀地划分成若干数据段,然后对每段数据,按4比特为一个数据字,划分成若干个数据字,并输入到一维数据缓冲区暂存,转步骤二;
第二步:按照一维数据字到二维码字的编解码规则表将每段数据中的4比特数据字转化成4×4阵列的二维码字;
第三步:将从步骤二得到的二维码字以水平逐行级联方式构造出二维约束阵列;
第四步:判断步骤三中的二维约束阵列是否满足页面大小要求,满足,则转步骤五,否则转步骤二;
第五步:将步骤四产生的二维约束阵列输出到二维记录装置。
如图2所示,编码器解码过程如下:首先从二维记录装置读取二维数据阵列到二维数据阵列缓冲模块,然后从二维阵列缓冲模块逐页读取数据,输入到二维码字划分模块,按照4×4为一组,将二维数据阵列划分成若干个4×4二维数据子阵列,然后将二维数据子阵列输入到一维数据字生成模块,得到相应的一维4比特数据字,将一维数据字输入到一维数据流组装模块,按照一维4比特数据字的先后次序组装成一维原始数据流,从而完成二维约束阵列到一维用户数据流的转化,实现解码过程。其解码步骤如下:
第一步:从二维记录装置读取二进制数据阵列,将二维数据阵列按照逐行方式划分成若干个4×4二维数据子阵列;
第二步:将上述划分后的4×4子阵列按照一维数据字到二维码字的编解码规则表,译码出相应的一维4比特数据字,进入步骤三;
第三步:将得到的一维4比特数据字按照步骤二产生的先后顺序组装成一维数据流;
第四步:重复步骤三,直至所有的4×4二维数据子阵列被解码,将上述得到的数据流输出,译码完成。
为了说明编码规则的应用方法,图3和图4列举了本发明的一个编码实施例1和解码过程的实施例2。实施例1和实施例2均依据表1所述的编码规则表一。假定页面尺寸大小为8×12。
实施例1:图3给出了具体的编码过程。一维数据流经一维数据流分组模块分组后,对每组中的数据按照4比特为一个字,再划分成若干字。然后根据表1所述的编码规则表进行编码。在这里例子中,编码过程如下:
这6个4×4的二维码字通过二维阵列组装模块,根据产生的次序水平级联,即可得到满足约束条件的二维阵列,该阵列如下:
实施例2:图4给出了具体的译码过程。首先从二维记录装置读取二维数据阵列。然后按照4×4为一组将该阵列划分成若干如下二维数据子阵列:
然后根据表1的编解码规则进行译码,过程如下:
最后将“1010 1011 0101 0000 1000 1101”按照产生先后组装成一维用户数据流10110101000010001101并输出,即可完成二维数据阵列的解码。
基于表2的编解码规则,也可完成类似地编码解码工作。这两种编码器的码率均等于1/4。尽管已经详细描述了本发明公开的实施例,但应理解在不脱离基于表1、表2的两种编解码规则及相应构思和范围的情况下,本发明在具体实施例还有很多变化、替代和修改。
Claims (4)
1.二维游程长度受限约束的块编解码装置,其特征在于包括编码器和解码器,所述编码器包括:
一维数据流缓冲模块,用于暂时存放一维数据流;
一维数据分段模块,用于将一维数据流均匀划分成指定长度的若干相同的数据段,并对每段数据以4比特为一组,将每段数据划分成若干组一维4比特数据字;
二维码字生成模块,用于将一维4比特数据根据编解码规则表对应的编码方程编码成4×4阵列的相应二维码字;
二维阵列组装模块,用于将二维码字生成模块产生的二维码字根据产生次序,组装成二维数据阵列;
所述一维数据流缓冲模块、一维数据分段模块、二维码字生成模块和二维阵列组装模块依次连接,最后通过其中的二维阵列组装模块输出给二维数据记录装置;
所述解码器包括:
二维数据阵列缓冲模块,用于暂时存放二维数据记录装置输出的二维数据流;
二维码字划分模块,用于将一整页二维数据阵列分组划分成若干4×4二维子阵列数据;
一维数据字生成模块,用于将4×4二维子阵列数据转化为一维4比特数据字;
一维数据流组装模块,用于将上述若干一维4比特数据字组装成一维用户数据流;
所述二维数据阵列缓冲模块、二维码字划分模块、一维数据字生成模块和一维数据流组装模块依次连接,最后通过其中的一维数据流组装模块输出。
2.根据权利要求1所述的二维游程长度受限约束的块编解码装置的编解码方法,其特征在于:
所述编解码方法通过编码器实现编码过程,包括以下步骤:
S101)将一维数据流缓冲模块中暂存的一维数据流输入到一维数据分段模块,然后将输入的一维数据流均匀地划分成若干数据段,然后对每段数据,按4比特为一个数据字,划分成若干个一维数据字,并输入到数据缓冲区暂存,然后进入二维码字生成模块;
S102)二维码字生成模块按照一维数据字到二维约束子阵列的编解码规则表将每段数据中的4比特一维数据字转化成4×4的二维码字,然后输入到二维阵列组装模块;
S103)由二维阵列组装模块将从步骤S102得到的二维码字以水平逐行级联方式构造出二维约束阵列;
S104)判断步骤S103得到的二维约束阵列是否满足页面大小要求,若满足,则进入下一步,否则转步骤S102;
S105)将步骤S104产生的二维约束阵列输出到二维数据记录装置;
所述编解码方法通过解码器实现解码过程,包括以下步骤:
S201)从二维数据记录装置读取二进制数据阵列,暂时存入二维数据阵列缓冲模块;
S202)从二维数据阵列缓冲模块读取二维数据阵列,通过二维码字划分模块将二维数据阵列按照逐行方式划分成若干4×4二维约束子阵列,然后输入到一维数据字生成模块;
S203)通过一维数据字生成模块将上述划分后的若干4×4子阵列逐个按照一维数据字到二维约束子阵列的编解码规则表,译码出相应的4比特一维数据字;
S204)判断是否有尚未译码的4×4子阵列,若有转入步骤S203,否则将S203得到的一维数据字按照译码的先后顺序输入到一维数据流组装模块;
S205)通过一维数据流组装模块,将得到的一维数据字按照步骤S203产生的先后顺序组装成一维数据流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110043532 CN102129875B (zh) | 2011-02-22 | 2011-02-22 | 二维游程长度受限约束的块编解码装置及其使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110043532 CN102129875B (zh) | 2011-02-22 | 2011-02-22 | 二维游程长度受限约束的块编解码装置及其使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102129875A CN102129875A (zh) | 2011-07-20 |
CN102129875B true CN102129875B (zh) | 2013-04-24 |
Family
ID=44267925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110043532 Expired - Fee Related CN102129875B (zh) | 2011-02-22 | 2011-02-22 | 二维游程长度受限约束的块编解码装置及其使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102129875B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4030427A4 (en) * | 2019-09-11 | 2023-06-21 | Wuhan Fiberhome Technical Services Co., Ltd | METHOD AND DEVICE FOR CODING AND DECODING BASED ON TWO-DIMENSIONAL BOSK STRESS |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106937359B (zh) * | 2015-12-29 | 2021-07-06 | 西安中兴新软件有限责任公司 | 一种信息处理方法、服务器和热点装置 |
CN106941610B (zh) * | 2017-04-25 | 2019-12-24 | 西安电子科技大学 | 基于改进方块编码的二值roi掩模编码方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571027A (zh) * | 2004-04-29 | 2005-01-26 | 清华大学 | 用于光致变色多波长光存储的多通道并行写入方法 |
CN1945725A (zh) * | 2006-09-30 | 2007-04-11 | 华中科技大学 | 一种高码率游长受限码的编码方法 |
CN101540610A (zh) * | 2009-01-07 | 2009-09-23 | 湖南大学 | 一种二维非隔离位约束编解码方法及编解码器 |
-
2011
- 2011-02-22 CN CN 201110043532 patent/CN102129875B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1571027A (zh) * | 2004-04-29 | 2005-01-26 | 清华大学 | 用于光致变色多波长光存储的多通道并行写入方法 |
CN1945725A (zh) * | 2006-09-30 | 2007-04-11 | 华中科技大学 | 一种高码率游长受限码的编码方法 |
CN101540610A (zh) * | 2009-01-07 | 2009-09-23 | 湖南大学 | 一种二维非隔离位约束编解码方法及编解码器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4030427A4 (en) * | 2019-09-11 | 2023-06-21 | Wuhan Fiberhome Technical Services Co., Ltd | METHOD AND DEVICE FOR CODING AND DECODING BASED ON TWO-DIMENSIONAL BOSK STRESS |
Also Published As
Publication number | Publication date |
---|---|
CN102129875A (zh) | 2011-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102298953B (zh) | 带保护字的二维游程长度受限约束的编解码器及使用方法 | |
CN1983432B (zh) | 用于部分响应信道的结构化集合划分和多层编码 | |
CN1279699C (zh) | 使用数据存储或数据传输的低密度奇偶校验码的方法和编码装置 | |
CN103314408B (zh) | 双通道hdd系统和方法 | |
CN102823141B (zh) | 用于固态存储器件的两级bch码 | |
CN102012792B (zh) | 一种快速重构的raid-6编码及重构方法 | |
CN101868829A (zh) | 用于m位存储器单元的m+n位编程和m+l位读取 | |
JPH05274811A (ja) | Prmlコードを実行するための方法と装置 | |
CN102129875B (zh) | 二维游程长度受限约束的块编解码装置及其使用方法 | |
US20110029835A1 (en) | Systems and Methods for Quasi-Cyclic LDPC Code Production and Decoding | |
CN101854543A (zh) | 用于信号处理的系统和方法 | |
US20170221493A1 (en) | Vector Joint Encoding/Decoding Method and Vector Joint Encoder/Decoder | |
CN101540610B (zh) | 一种二维非隔离位约束编解码方法及编解码器 | |
CN101431335B (zh) | 用于调制编码和解码的方法、装置和系统 | |
CN101594152A (zh) | 实现水平运算和垂直运算同时运行的ldpc码译码方法 | |
US9003263B2 (en) | Encoder and decoder generation by state-splitting of directed graph | |
CN102903378B (zh) | 用于变长码率的二维游程长度受限约束编解码装置及方法 | |
CN1305064C (zh) | 用于光致变色多阶光存储的游程长度受限编码式写入方法 | |
CN1684182B (zh) | 记录再生装置 | |
CN102647192B (zh) | 数据处理方法和装置 | |
US11233526B2 (en) | Two-dimensional square constraint encoding and decoding method and device | |
CN1258758C (zh) | 用于光致变色多波长光存储的多通道并行写入方法 | |
US7268707B2 (en) | Coding device and decoding device | |
WO2004059647A1 (en) | Coding system | |
WO2021120067A1 (zh) | 数据编码方法、数据解码方法、数据处理方法、编码器、解码器、系统、可移动平台与计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130424 Termination date: 20160222 |