[发明专利]为存储器提供ECC的方法与装置有效
申请号: | 201710211851.4 | 申请日: | 2017-03-31 |
公开(公告)号: | CN108665939B | 公开(公告)日: | 2021-01-05 |
发明(设计)人: | 蔡金池;沈飞 | 申请(专利权)人: | 厦门旌存半导体技术有限公司 |
主分类号: | G06F11/10 | 分类号: | G06F11/10 |
代理公司: | 北京卓特专利代理事务所(普通合伙) 11572 | 代理人: | 段宇;张会会 |
地址: | 361000 福建省厦门市中国(福建)自由贸易试*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储器 提供 ecc 方法 装置 | ||
1.一种写命令的处理方法,其特征在于,包括:
接收并缓存来自主设备的第一写命令;
将接收的第一写命令的数据写入存储器中;
对缓存的第一写命令的数据计算校验数据;
生成用于将第一写命令的校验数据写入存储器的第二写命令,并发送给存储器;
响应于将第一写命令的数据和校验数据均写入存储器,向主设备告知第一写命令处理完成;
若第一写命令是不完全写命令,所述方法还包括:根据第一写命令的无效数据和/或空缺数据的地址,从存储器中读出第一数据和第一校验数据;
根据第一校验数据对第一数据做校验计算,得到该无效数据和/或空缺数据的地址所对应的正确数据;
将该无效数据和/或空缺数据的地址所对应的正确数据与第一写命令要写入的数据合并,生成第二数据;
对第二数据计算校验数据,以及将第二数据和第二校验数据写入存储器;
其中,第一写命令的数据与其校验数据在存储器中具有不同的体地址以及相同的页地址。
2.根据权利要求1所述的方法,其特征在于,还包括:
若第一写命令的数据长度大于校验数据保护单元的数据长度,将第一写命令的数据拆分为多段数据,每段数据的长度等于校验数据保护单元的数据长度;
为每段数据分别计算校验数据;
生成用于将由多段数据计算得到的多段校验数据一起写入存储器的第四写命令,并发送给存储器。
3.根据权利要求1-2之一所述的方法,其中,写命令的数据与其校验数据在存储器中具有不同的体地址以及相同的页地址。
4.根据权利要求1所述的方法,其特征在于,还包括:
若第二数据的长度大于校验数据保护单元的数据长度,将第二数据拆分为多段数据,每段数据的长度等于校验数据保护单元的数据长度;
为每段数据分别计算校验数据;
生成用于将由多段数据计算得到的多段校验数据一起写入存储器的第四写命令,并发送给存储器。
5.一种写命令处理装置,其特征在于,包括:
命令缓存模块,用于接收并缓存来自主设备的第一写命令;
数据写入模块,用于将接收的第一写命令的数据写入存储器中;
校验数据计算模块,用于对缓存的第一写命令的数据计算校验数据;
命令生成模块,用于生成将第一写命令的校验数据写入存储器的第二写命令,并发送给存储器;
数据写入模块,还用于将第一写命令的校验数据写入存储器,以及响应于将第一写命令的数据和校验数据均写入存储器,向主设备告知第一写命令处理完成;
若第一写命令是不完全写命令,所述写命令处理装置还包括:
第二数据读取模块,用于根据第一写命令的无效数据和/或空缺数据的地址,从存储器中读出第一数据和第一校验数据;
第二校验数据计算模块,用于根据第一校验数据对第一数据做校验计算,得到该无效数据和/或空缺数据的地址所对应的正确数据;
第二数据合并模块,用于将该无效数据和/或空缺数据的地址所对应的正确数据与第一写命令要写入的数据合并,生成第二数据;
第二校验数据计算模块,还用于对第二数据计算校验数据;
以及第二数据写入模块,用于将第二数据和第二校验数据写入存储器;
其中,第一写命令的数据与其校验数据在存储器中具有不同的体地址以及相同的页地址。
6.一种固态存储设备,包括存储器子系统,主设备与存储器子系统耦合到总线,存储器子系统包括存储器控制器和存储器,存储器控制器将存储器耦合到总线,其特征在于,存储器子系统还包括错误数据校验模块,错误数据校验模块分别耦合到总线与存储器控制器,并桥接总线与存储器控制器,错误数据校验模块与总线按总线协议交互,错误数据校验模块与存储器控制器按总线协议交互;错误数据校验模块,用于接收并缓存来自主设备的第一写命令;将接收的第一写命令的数据写入存储器中;对缓存的第一写命令的数据计算校验数据;生成用于将第一写命令的校验数据写入存储器的第二写命令,并发送给存储器;响应于将第一写命令的数据和校验数据均写入存储器,向主设备告知第一写命令处理完成;若第一写命令是不完全写命令,错误数据校验模块还用于:根据第一写命令的无效数据和/或空缺数据的地址,从存储器中读出第一数据和第一校验数据;根据第一校验数据对第一数据做校验计算,得到该无效数据和/或空缺数据的地址所对应的正确数据;将该无效数据和/或空缺数据的地址所对应的正确数据与第一写命令要写入的数据合并,生成第二数据;对第二数据计算校验数据,以及将第二数据和第二校验数据写入存储器;
其中,第一写命令的数据与其校验数据在存储器中具有不同的体地址以及相同的页地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门旌存半导体技术有限公司,未经厦门旌存半导体技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710211851.4/1.html,转载请声明来源钻瓜专利网。