发明名称 Multi-level redundancy code for non-volatile memory controller
摘要 In the controller circuit of a non-volatile memory system, data is protected by CRC (cyclic redundancy code) between functional blocks of the controller: Before a data set is transmitted from one functional block (such the host interface) to another functional block (such as data encryption or ECC), corresponding CRC is generated and transferred with the data. At the second block, the data set can be checked with the CRC at the second block before it operates on the data. This allows the controller to check for internal transfer errors early, allow for corrupted data to be re-requested, such as from a host when this process is applied to a data write operation. After the second block finishes with the data, a new CRC can then be generated to protect the data on its next internal transfer. This arrangement can particularly useful for functional blocks that transform the data set.
申请公布号 US9384128(B2) 申请公布日期 2016.07.05
申请号 US201414256268 申请日期 2014.04.18
申请人 SanDisk Technologies, Inc. 发明人 Tuers Daniel;Manohar Abhijeet
分类号 G06F12/02;H03M13/05;G06F11/10 主分类号 G06F12/02
代理机构 Sterne, Kessler, Goldstein & Fox PLLC 代理人 Sterne, Kessler, Goldstein & Fox PLLC
主权项 1. A non-volatile memory system, comprising: one or more non-volatile memory circuits; and a controller circuit having a plurality of functional blocks, including: a host interface through which the non-volatile memory system is connectable to a host for transferring user data therebetween;a memory interface through which the controller circuit is connected to one or more of the non-volatile memory circuits for transferring the user data therebetween; and one or more intermediate blocks through which data passes when being transferred between the host and memory interfaces,wherein when transferring a data set from a first functional block of the plurality of functional blocks through a second functional block of the plurality of functional blocks, prior to transmitting the data set therefrom the first functional block generates a first associated redundancy code that is transmitted therefrom with the data set, after receiving the data set and the first associated redundancy code at the second functional block and prior to operating on the data set therein the second functional block checks an integrity of the data set using the first associated redundancy code, and subsequent to operating on the data set in the second functional block and prior to transmitting the data set therefrom the second functional block generates a second associated redundancy code that is transmitted therefrom with the data set.
地址 Plano TX US