数据处理方法和装置与流程

文档序号:12665068阅读:225来源:国知局
数据处理方法和装置与流程

本公开涉及数据处理领域,尤其涉及编码领域,具体地,涉及一种数据处理方法和装置。



背景技术:

目前,在利用编码矩阵对数据帧进行编码以得到校验码时,需要首先读取该数据帧的所有最小编码数据单元,然后将所读取的所有最小编码数据单元与编码矩阵进行运算。现有技术的缺点在于:(1)需要对整个数据帧进行缓存;(2)需要读取完整个数据帧之后才能开始进行编码,且在编码过程中需要多次地反复读取整个数据帧。



技术实现要素:

本公开的目的是提供一种数据处理方法和装置,能够解决现有技术中存在的上述问题。

为了实现上述目的,本公开提供一种数据处理方法,该方法包括:

读取待编码的数据帧的第i个最小编码数据单元并将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到所述数据帧的m个校验位中每个校验位的第i个中间结果,直至所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成并得到所述m个校验位中每个校验位的k个中间结果为止,其中1≤i≤k,k为所述数据帧的长度;

利用每个校验位的k个中间结果,计算每个校验位的运算结果;

输出所计算的每个校验位的运算结果。

可选地,所述利用每个校验位的k个中间结果,计算每个校验位的运算结果,包括:

在所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成后,将每个校验位的k个中间结果累加,来计算每个校验位的运算结果。

可选地,所述利用每个校验位的k个中间结果,计算每个校验位的运算结果,包括:

在得到每个校验位的第i个中间结果后,将第i个中间结果与先前得到的i-1个中间结果之和相加,来计算每个校验位的运算结果。

可选地,该方法还包括:将m个校验位中每个校验位的第i个中间结果与先前得到的i-1个中间结果之和相加的结果分别存储到m个寄存器中。

可选地,所述编码矩阵为准循环稀疏矩阵。

本公开实施例还提供一种数据处理装置,该装置包括:

读取和运算电路,用于读取待编码的数据帧的第i个最小编码数据单元并将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到所述数据帧的m个校验位中每个校验位的第i个中间结果,直至所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成并得到所述m个校验位中每个校验位的k个中间结果为止,以及利用每个校验位的k个中间结果,计算每个校验位的运算结果,其中1≤i≤k,k为所述数据帧的长度;

输出电路,用于输出所述读取和运算电路所计算的每个校验位的运算结果。

可选地,所述读取和运算电路,用于在所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成后,将每个校验位的k个中间结果累加,来计算每个校验位的运算结果。

可选地,所述读取和运算电路,用于在得到每个校验位的第i个中间结果后,将第i个中间结果与先前得到的i-1个中间结果之和相加,来计算每个校验位的运算结果。

可选地,该装置还包括m个寄存器,用于分别寄存所述读取和运算电路计算的m个校验位中每个校验位的第i个中间结果与先前得到的i-1个中间结果之和相加的结果。

可选地,所述编码矩阵为准循环稀疏矩阵。

根据该实施例的技术方案具有如下有益效果:

(1)由于在读取到待编码的数据帧的第i个最小编码数据单元后就将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到数据帧的m个校验位中每个校验位的第i个中间结果,因此与现有技术相比,不需要读取完数据帧的全部最小编码数据单元才能开始编码,从而提高了编码的实时性。另外,

(2)在根据该实施例的编码过程中不需要对整个数据帧进行存储,也即只需要存储数据帧的第i个最小编码数据单元,在第i个最小编码数据单元与编码矩阵的第i列元素运算完成之后即可丢弃该第i个最小编码数据单元,这样根据该实施例的方法只需要最小编码数据单元深度的缓存器即可,而不需要像现有技术那样需要k深度的缓存器,因此能够大大减小编码时所需的存储空间。

(3)在根据该实施例的编码过程中不需要反复地多次读取整个数据帧,因此大大降低了编码时的功耗。例如,根据该实施例,每个最小编码数据单元只需读取一次即可,这样要完成对整个数据帧的编码,总共只需k次读取最小编码数据单元的读操作即可。而现有技术则需要执行m次读取整个数据帧的读操作。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据本公开一种实施例的数据处理方法的流程图;

图2是根据本公开一种实施例的数据处理装置的示意框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

在利用编码矩阵对数据帧进行编码时,通常是将编码矩阵与数据帧进行如下运算,得到校验码:

其中,g1_cpm1、g1_cpm2等表示编码矩阵的各个矩阵元素;msg_cpm1、msg_cpm2等表示数据帧的各个最小编码数据单元,数据帧有k个最小编码数据单元,则编码矩阵就需要有k列元素;p_cpm1、p_cpm2等表示校验码的m个校验位,则编码矩阵就需要有m行元素。

现有技术中,在利用编码矩阵对数据帧进行编码时,需要全部读取数据帧的k个最小编码数据单元,然后将读取到的k个最小编码数据单元与编码矩阵的第1行元素进行运算得到校验码的第1个校验位,然后再次读取数据帧的k个最小编码数据单元并然后将读取到的k个最小编码数据单元与编码矩阵的第2行元素进行运算得到校验码的第2个校验位,如此循环直至得到校验码的第m个校验位为止。这种编码过程的缺陷在于:(1)需要对整个数据帧进行缓存,也即需要k深度的缓存器来缓存读取到的数据帧以便进行后续的运算;(2)需要读取完整个数据帧之后才能开始进行编码,且在编码过程中需要多次地反复读取整个数据帧。

本公开的发明人发现,在利用公式(1)得到校验码的过程中,编码矩阵的第1列元素只与数据帧的第1个最小编码数据单元进行运算,编码矩阵的第2列元素只与数据帧的第2个最小编码数据单元进行运算,…,编码矩阵的第k列元素只与数据帧的第k个最小编码数据单元进行运算。如果能够对编码矩阵运算时的这一特性加以利用,则能够在读取到数据帧的第1个最小编码数据单元时就开始进行编码,进而能够克服现有技术的上述两点缺陷。

下面对根据本公开的实施例进行详细描述。

根据本公开的一种实施例,提供一种数据处理方法,如图1所示,该方法可以包括以下步骤S101至S103。

在步骤S101中,读取待编码的数据帧的第i个最小编码数据单元并将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到所述数据帧的m个校验位中每个校验位的第i个中间结果,直至所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成并得到所述m个校验位中每个校验位的k个中间结果为止,其中1≤i≤k,k为所述数据帧的长度。

例如,该步骤可以通过如下流程来执行:首先读取待编码的数据帧的第1个最小编码数据单元,然后将第1个最小编码数据单元与编码矩阵的第1列元素进行运算得到m个校验位中每个校验位的第1个中间结果;然后读取待编码的数据帧的第2个最小编码数据单元,然后将第2个最小编码数据单元与编码矩阵的第2列元素进行运算得到m个校验位中每个校验位的第2个中间结果,…,如此循环,直至读取待编码的数据帧的第k个最小编码数据单元并将第k个最小编码数据单元与编码矩阵的第k列元素进行运算得到m个校验位中每个校验位的第k个中间结果为止。

在步骤S102中,利用每个校验位的k个中间结果,计算每个校验位的运算结果;

在步骤S103中,输出所计算的每个校验位的运算结果。

根据该实施例的技术方案具有如下有益效果:

(1)由于在读取到待编码的数据帧的第i个最小编码数据单元后就将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到数据帧的m个校验位中每个校验位的第i个中间结果,因此与现有技术相比,不需要读取完数据帧的全部最小编码数据单元才能开始编码,从而提高了编码的实时性。另外,

(2)在根据该实施例的编码过程中不需要对整个数据帧进行存储,也即只需要存储数据帧的第i个最小编码数据单元,在第i个最小编码数据单元与编码矩阵的第i列元素运算完成之后即可丢弃该第i个最小编码数据单元,这样根据该实施例的方法只需要最小编码数据单元深度的缓存器即可,而不需要像现有技术那样需要k深度的缓存器,因此能够大大减小编码时所需的存储空间。

(3)在根据该实施例的编码过程中不需要反复地多次读取整个数据帧,因此大大降低了编码时的功耗。例如,根据该实施例,每个最小编码数据单元只需读取一次即可,这样要完成对整个数据帧的编码,总共只需k次读取最小编码数据单元的读操作即可。而现有技术则需要执行m次读取整个数据帧的读操作。

另外,步骤S102中的所述利用每个校验位的k个中间结果,计算每个校验位的运算结果,可以通过多种不同的方式来实现。

例如,在一种可能的实施方式中,步骤S102中的所述利用每个校验位的k个中间结果,计算每个校验位的运算结果,可以包括:在所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成后,将每个校验位的k个中间结果累加,来计算每个校验位的运算结果。

也即,在对数据帧进行编码得到各个校验位时,可以首先读取待编码的数据帧的第1个最小编码数据单元,然后将第1个最小编码数据单元与编码矩阵的第1列元素进行运算得到m个校验位中每个校验位的第1个中间结果;然后读取待编码的数据帧的第2个最小编码数据单元,然后将第2个最小编码数据单元与编码矩阵的第2列元素进行运算得到m个校验位中每个校验位的第2个中间结果,…,如此循环,直至读取待编码的数据帧的第k个最小编码数据单元并将第k个最小编码数据单元与编码矩阵的第k列元素进行运算得到m个校验位中每个校验位的第k个中间结果为止。然后,将第1个校验位的k个中间结果相加得到第1个校验位的运算结果,将第2个校验位的k个中间结果相加得到第2个校验位的运算结果,…,如此循环,直至将第m个校验位的k个中间结果相加得到第m个校验位的运算结果为止。

但是,由于上述实施方式需要m*k深度的缓存器来缓存m个校验位的k个中间结果,因此,优选地,步骤S102中的所述利用每个校验位的k个中间结果,计算每个校验位的运算结果,可以通过如下方式来实现,也即:在得到每个校验位的第i个中间结果后,将第i个中间结果与先前得到的i-1个中间结果之和相加,来计算每个校验位的运算结果。

也即,在对数据帧进行编码得到各个校验位时,可以首先读取待编码的数据帧的第1个最小编码数据单元,然后将第1个最小编码数据单元与编码矩阵的第1列元素进行运算得到m个校验位中每个校验位的第1个中间结果;然后读取待编码的数据帧的第2个最小编码数据单元,然后将第2个最小编码数据单元与编码矩阵的第2列元素进行运算得到m个校验位中每个校验位的第2个中间结果,并将m个校验位中每个校验位的第1中间结果与第2中间结果分别相加得到每个校验位的相加后中间结果,…,如此循环,直至读取待编码的数据帧的第k个最小编码数据单元并将第k个最小编码数据单元与编码矩阵的第k列元素进行运算得到m个校验位中每个校验位的第k个中间结果为止,并将m个校验位中每个校验位的第k中间结果与先前得到的k-1个中间结果之和相加来分别得到m个校验位中每个校验位的运算结果。这样,就仅仅需要m深度的缓存器来缓存m个校验位的中间结果,并在每次计算得到新的中间结果之后对之前得到的中间结果之和进行更新即可。也即,将m个校验位中每个校验位的第i个中间结果与先前得到的i-1个中间结果之和相加的结果分别存储到m个寄存器中。

在一种可能的实施方式中,所述编码矩阵可以为准循环稀疏矩阵。当然,其他的编码矩阵类型也是可行的,本公开实施例不对编码矩阵的类型进行限制。

表1示出了现有技术与根据本公开的实施例之间的性能参数对比。其中,对比的前提条件是:编码矩阵为准循环稀疏矩阵,矩阵大小为m*k,行重为r,列重为c;数据帧的长度为k,校验码的长度为m,也即会生成m个校验位。其中,在根据本公开的实施例中,针对数据帧的缓存器深度的大小取决于编码时钟频率;

表1

根据本公开的又一实施例,提供一种数据处理装置,如图2所示,该装置可以包括:

读取和运算电路201,用于读取待编码的数据帧的第i个最小编码数据单元并将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到所述数据帧的m个校验位中每个校验位的第i个中间结果,直至所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成并得到所述m个校验位中每个校验位的k个中间结果为止,以及利用每个校验位的k个中间结果,计算每个校验位的运算结果,其中1≤i≤k,k为所述数据帧的长度;

输出电路201,用于输出所述读取和运算电路201所计算的每个校验位的运算结果。

根据该实施例的技术方案具有如下有益效果:

(1)由于在读取到待编码的数据帧的第i个最小编码数据单元后就将第i个最小编码数据单元与大小为m*k的编码矩阵的第i列元素进行运算得到数据帧的m个校验位中每个校验位的第i个中间结果,因此与现有技术相比,不需要读取完数据帧的全部最小编码数据单元才能开始编码,从而提高了编码的实时性。另外,

(2)在根据该实施例的编码过程中不需要对整个数据帧进行存储,也即只需要存储数据帧的第i个最小编码数据单元,在第i个最小编码数据单元与编码矩阵的第i列元素运算完成之后即可丢弃该第i个最小编码数据单元,这样根据该实施例的方法只需要最小编码数据单元深度的缓存器即可,而不需要像现有技术那样需要k深度的缓存器,因此能够大大减小编码时所需的存储空间。

(3)在根据该实施例的编码过程中不需要反复地多次读取整个数据帧,因此大大降低了编码时的功耗。例如,根据该实施例,每个最小编码数据单元只需读取一次即可,这样要完成对整个数据帧的编码,总共只需k次读取最小编码数据单元的读操作即可。而现有技术则需要执行m次读取整个数据帧的读操作。

在一种可能的实施方式中,所述读取和运算电路201,可以用于在所述数据帧的k个最小编码数据单元均与所述编码矩阵的相应列元素运算完成后,将每个校验位的k个中间结果累加,来计算每个校验位的运算结果。

在一种可能的实施方式中,所述读取和运算电路201,还可以用于在得到每个校验位的第i个中间结果后,将第i个中间结果与先前得到的i-1个中间结果之和相加,来计算每个校验位的运算结果。

在一种可能的实施方式中,根据该实施例的装置还可以包括m个寄存器(未图示),用于分别寄存所述读取和运算电路201计算的m个校验位中每个校验位的第i个中间结果与先前得到的i-1个中间结果之和相加的结果。

在一种可能的实施方式中,所述编码矩阵可以为准循环稀疏矩阵。

根据该实施例的装置中各个模块所执行的操作的具体实施方式已经在根据本公开实施例的数据处理方法中进行了详细描述,此处不再赘述。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1