一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储器控制器及存储器装置的制作方法

2022-02-18 22:42:29 来源:中国专利 TAG:


1.本发明是有关于一种存储器控制器及存储器装置。


背景技术:

2.存储器装置可包括多个存储器芯片。针对每一个存储器芯片,存储器装置的存储器控制器需要配置一个错误更正电路,其中包括编码器单元及译码单元来进行:(1)编码来自主控制器的用户数据以写入至对应的存储器芯片,以及(2)译码从对应的存储器芯片中读取出的数据以传送至主控制器。在一些实施中,此些编码器单元是基于低密度奇偶校验码(low-density parity-check code,ldpc)。基于ldpc的架构下,在执行编码来自主控制器的用户数据的操作时,编码器单元中的编码器会将用户数据与生成矩阵(generator matrix)相乘以产生多个奇偶校验位(parity-check digit)。在现有技术的一种实施中,对于每一个编码器单元,存储器控制器中可以配置一个存储单元来存储生成矩阵,也就是n个编码器单元就会配置n个存储单元,此些存储单元存储着相同的生成矩阵。这种做法会增加存储器控制器的面积及成本。在现有技术的另一种实施中,对于所有编码器单元,存储器控制器中可以配置一个存储单元来存储生成矩阵,也就是n个编码器单元轮流使用一个存储单元。这种做法虽然省下面积与成本,但会降低数据的吞吐量(throughput)。


技术实现要素:

3.本发明的一方面公开一种存储器装置。存储器装置包括多个存储器芯片以及一存储器控制器。存储器控制器耦接至存储器芯片。存储器控制器包括控制单元、一存储单元及多个编码器单元。存储单元耦接至控制单元,且包括多个存储区域。各存储区域由一存储器地址表示,且存储有一生成矩阵的多个部分的其中之一。编码器单元耦接至控制单元及存储单元,且一对一、多对一或一对多耦接至存储器芯片。编码器单元是基于一低密度奇偶校验码(ldpc)编码,且ldpc编码是基于生成矩阵。
4.本发明的另一方面公开一种存储器控制器。存储器控制器包括控制单元、一存储单元及多个编码器单元。存储单元耦接至控制单元,且包括多个存储区域。各存储区域由一存储器地址表示,且存储有一生成矩阵的多个部分的其中之一。编码器单元耦接至控制单元及存储单元,且一对一、多对一或一对多耦接至存储器芯片。编码器单元是基于一低密度奇偶校验码(ldpc)编码,且ldpc编码是基于生成矩阵。
5.为了对本发明的上述及其他方面有更好的了解,下文特举实施例,并配合所附附图详细说明如下:
附图说明
6.图1绘示根据本发明一实施例的存储器装置的方块图。
7.图2绘示根据本发明一实施例的存储器控制器的方块图。
8.图3绘示根据本发明一实施例的计算奇偶校验码的示意图。
9.图4a~图4b绘示根据本发明一实施例的存储器控制器的操作方法的流程图。
10.图5绘示根据本发明一实施例的存储器装置计算奇偶校验码的时序图。
11.【符号说明】
12.10:存储器装置
13.102-1~102-x:存储器芯片
14.104:存储器控制器
15.1041:控制单元
16.1043:存储单元
17.1045-1~1045-x:编码器单元
具体实施方式
18.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
19.请参照图1,图1绘示根据本发明一实施例的存储器装置的方块图。存储器装置10包括多个存储器芯片102-1~102-x及一存储器控制器104,其中x为大于1的正整数。各个存储器芯片102-1~102-x可包括一存储器阵列及用以操作存储器阵列的控制电路(例如输入输出电路、感测放大器电路等)。存储器阵列可为nand闪存阵列、nor闪存阵列、相变化存储器阵列或任何可用的存储器阵列。
20.存储器控制器104耦接至一主控制器90及存储器芯片102-1~102-x。存储器控制器104可用以接收来自主控制器90的一或多个写入命令及对应于该一或多个写入命令的一或多笔用户数据。存储器控制器104响应于该一或多个写入命令将一或多笔用户数据写入存储器芯片102-1~102-x。存储器控制器104的细节请进一步参考图2绘示的根据本发明一实施例的存储器控制器的方块图。存储器控制器104包括一控制单元1041、一存储单元1043及多个编码器单元1045-1~1045-x。在本实施例中,编码器单元1045-1~1045-x的数量相同于存储器芯片的数量。存储单元1043耦接至控制单元1041。存储单元1043可为一内嵌只读存储器(embedded read only memory)或一静态随机存取存储器(static random access memory)。编码器单元1045-1~1045-x耦接至控制单元1041、存储单元1043及存储器芯片102-1~102-x。每一个编码器单元1045-1~1045-x一对一对应至一个存储器芯片102-1~102-x。举例来说,编码器单元1045-1对应并耦接至存储器芯片102-1,编码器单元1045-2对应并耦接至存储器芯片102-2,以此类推。每一个编码器单元1045-1~1045-x例如是基于一低密度奇偶校验码(low-density parity-check code,ldpc)编码的编码器。
21.需要注意的是,在其他实施例中,编码器单元的数量也可以不同于存储器芯片的数量。也就是说,编码器单元也可以是一对多或者多对一耦接至存储器芯片。
22.为了更容易理解本发明的内容,在此对ldpc编码进行简单的说明。一笔长度为k个位的用户数据d可根据一个维度为k
×
n的生成矩阵g产生一长度为n个位的码字c,其中k、n为正整数,可以数学式表示为:c=dg。生成矩阵g可分解为一个维度为k
×
k的单位矩阵i及一个维度为k
×
p的矩阵p,其中p为正整数,且k p=n,可以数学式表示为:g=i p。于是,码字c可以数学式表示为:c=d q,其中q为长度为p个位的奇偶校验码。
23.请参照图3,图3绘示根据本发明一实施例的计算奇偶校验码的示意图。在本实施
例中,生成矩阵g可包括多个子矩阵g
0,0
~g
2,5
,其中子矩阵g
0,0
~g
2,5
的维度为m
×
m,m为正整数。更明确来说,生成矩阵p可视为由子矩阵g
0,0
~g
2,5
所组成。用户数据d可视为由六个长度为m的子序列d0~d5组成,即d=d0d1d2d3d4d5。计算奇偶校验码时,可根据图3右侧所示的方式进行计算,其中奇偶校验码q可表示为q=p0p1p2,xor为「异或」运算。在本实施例中,生成矩阵被划分为六个部份,其中第一部分包括子矩阵g
0,0
、g
1,0
、g
2,0
,第二部分包括子矩阵g
0,1
、g
1,1
、g
2,1
,第三部分包括子矩阵g
0,2
、g
1,2
、g
2,2
,第四部分包括子矩阵g
0,3
、g
1,3
、g
2,3
,第五部分包括子矩阵g
0,4
、g
1,4
、g
2,4
,第六部分包括子矩阵g
0,5
、g
1,5
、g
2,5
。生成矩阵的此六个部分可分别存储于存储单元1043的以存储器地址a1~a5表示的六个存储区域中。例如,第一部分的子矩阵g
0,0
、g
1,0
、g
2,0
的元素可存储于存储单元1043中以存储器地址a1表示的第一存储区域,第二部分的子矩阵g
0,1
、g
1,1
、g
2,1
的元素可存储于存储单元1043中以存储器地址a2表示的第二存储区域,以此类推。对于一笔用户数据,编码器单元可使用六个频率周期来计算奇偶校验码。例如,在第一频率周期c1根据用户数据的第一子序列d0及第一部分的子矩阵g
0,0
、g
1,0
、g
2,0
计算奇偶校验码,在第二频率周期c2根据用户数据的第二子序列d1及第二部分的子矩阵g
0,1
、g
1,1
、g
2,2
计算奇偶校验码。值得一提的是,第一频率周期c1~第六频率周期c6的运算顺序是可以任意排列的,即计算第二频率周期c2的运算之后再计算第一频率周期c1的运算是可允许的。
24.回到图2,并请同时参照图4a~图4b绘示的根据本发明一实施例的存储器控制器的操作方法的流程图,其中图4a的流程是由各个编码器单元执行,图4b是由控制单元执行。需要注意的是,在本实施例中是以生成矩阵包括六个部分为例进行说明,然而本发明不以此为限。也就是说,在实际应用上,生成矩阵可划分为多个部分(即可包括多个部分),而存储单元可包括多个存储区域,每个存储区域可以一存储器地址表示,且存储生成矩阵的这些部分的其中之一。
25.首先,图4a,在步骤s401中,每个编码器单元1045-1~1045-x各自判断是否收到一笔完整的用户数据。主控制器90可传送一或多笔用户数据至存储器控制器104。举例来说,主控制器90可陆续传送第一用户数据、第二用户数据及第三用户数据。第一用户数据可被传送至编码器单元1045-1,第二用户数据可被传送至编码器单元1045-2,第三用户数据可被传送至编码器单元1045-3。在用户数据的长度被设定为k个位的例子中,编码器单元1045-1~1045-3可分别根据收到的用户数据的长度达到k个位来确定收到一笔完整的用户数据。当编码器单元确认收到一笔完整的用户数据时,执行s403;反之,则回到步骤s401。
26.在步骤s403中,确认接收到一笔完整的用户数据的编码器单元会将自身的一状态设定为准备就绪,并传送一准备就绪信号至控制单元1041。准备就绪信号可包括传送此准备就绪信号的编码器单元的一标识符。也就是说,准备就绪信号可用以通知控制单元1041哪一个编码器单元是处于准备就绪的状态。
27.跳到图4b,在步骤s411中,控制单元1041判断是否有收到准备就绪信号。当控制单元1041收到准备就绪信号时,执行步骤s413;反之,则执行步骤s423。
28.在步骤s413中,响应于准备就绪信号,控制单元1041根据一目前地址决定一结束地址准备就绪信号。目前地址与结束地址是从存储单元中用以代表存储有生成矩阵的这些部分的存储区域的存储器地址中选择而设定。
29.在步骤s415中,控制单元1041将目前地址传送至状态为准备就绪的编码器单元。
30.在步骤s417中,控制单元1041将目前地址传送至存储单元1043,并指示存储单元1043根据目前地址输出对应于目前地址的存储区域存储的生成矩阵的部分至状态为准备就绪的编码器单元。
31.在步骤s419中,控制单元1041判断是否已达到一结束条件。结束条件例如是目前地址等于结束地址。若是,结束本流程;若否,执行步骤s421。
32.在步骤s421中,控制单元1041更新目前地址,例如,将目前地址的下一个存储器地址设定为新的目前地址。
33.在步骤s423中,控制单元1041判断是否已接收过至少一准备就绪信号。若是,执行步骤s413;若否,执行步骤s411。控制单元1041可通过设定一标识来确定是否已接收过至少一准备就绪信号。举例来说,当本流程开始后第一次接收到准备就绪信号时,控制单元1041可将标识值由0设为1;当本流程结束时将标识由1设为0。
34.再跳回图4a,在步骤s405中,状态为准备就绪的编码器单元接收来自控制单元的目前地址及来自存储单元的对应于目前地址的生成矩阵的部分。
35.在步骤s407中,状态为准备就绪的编码器单元根据用户数据中对应于目前地址的子序列及接收到的对应于目前地址的生成矩阵的部分计算/更新对应于用户数据的奇偶校验码(即生成码)。
36.在步骤s409中,状态为准备就绪的编码器单元判断奇偶校验码是否计算完毕。若是,将状态设定为运算完毕并结束本流程;若否,执行步骤s405。在一实施例中,当用户数据中的每一个子序列皆执行过步骤s407的运算时,编码器单元可判定对应于此用户数据的奇偶校验码计算完毕。在另一实施例中,编码器单元可配置有一计数器,当计数器的值达到一阈值时,可判定对应于此用户数据的奇偶校验码计算完毕。以图3的实施例为例,计数器的值可预设为0,阈值可设定为6,每执行一次步骤s407则计数器的值增加1,当计数器的值达到6时,表示经过六个频率周期的运算,用户数据的六个子序列皆与生成矩阵的对应部分完成运算。
37.在一实施例中,当编码器单元判断奇偶校验码计算完毕时,编码器单元会传送一完成信号至控制单元1041,其中完成信号可包括该编码器单元的辨识码。也就是说,完成信号可用以通知控制单元1041哪一个编码器单元的状态由准备就绪转换为运算完毕。在这样的实施例中,控制单元1041可通过记录有传送准备就绪信号的编码器单元是否皆已传送完成信号来确定是否达到结束条件。
38.为了更加清楚理解本发明,请参照图5绘示的根据本发明一实施例的存储器装置计算奇偶校验码的时序图。图5是图2的存储器控制器104基于图3的奇偶校验码的计算方式计算奇偶校验码的时序。
39.于时间t0时,编码器单元1041-1确认接收到一笔完整的用户数据并传送准备就绪信号至控制单元;此时,在控制单元的记录中目前地址为a0(初始设定值),由于编码器单元1045-1要执行完整的生成矩阵的运算要将存储器地址a0~a5都读取过一次,于是将结束地址设定为a5,将目前地址为a0通知给编码器单元1045-1,并指示存储单元1043将存储于存储器地址a0的生成矩阵的部分传送至编码器单元1045-1。在时间t1时,编码器单元1045-2也接收到一笔完整的用户数据并传送准备就绪信号至控制单元;此时,,在控制单元的记录中目前地址为a2(从t0开始经过二个频率周期),由于编码器单元1045-2要执行完整的生成
矩阵的运算要将存储器地址a0~a5都读取过一次,于是将结束地址设定为a1,将目前地址为a2通知给编码器单元1045-1、1045-2,并指示存储单元1043将存储于存储器地址a2的生成矩阵的部分传送至编码器单元1045-1、1045-2。时间t2、t3以此类推。图5中,d
0,0
代表编码器单元1045-1根据所收到的用户数据d0进行如图3的第一频率周期c1的计算,d
0,1
代表编码器单元1045-1根据所收到的用户数据d0进行如图3的第二频率周期c2的计算,d
1,2
代表编码器单元1045-2根据所收到的用户数据d1进行如图3的第三频率周期c3的计算,以此类推。
40.总结来说,通过本发明针对状态为准备就绪的编码器单元,控制单元会根据目前地址指示存储单元传送相同的奇偶校验码的部分。通过上述方式,便不需要等待一个编码器单元计算奇偶校验码后才轮到另一个编码器单元进行计算。如此一来,存储器控制器的吞吐量可以得到提升。
41.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献