Browse Prior Art Database

Method and Apparatus to Use SSD Controller Expansion Device to Verify Data Written to Flash Using CRC

IP.com Disclosure Number: IPCOM000180568D
Original Publication Date: 2009-Mar-11
Included in the Prior Art Database: 2009-Mar-11
Document File: 2 page(s) / 50K

Publishing Venue

IBM

Abstract

In a dual controller flash memory array, use of a flash chip array expansion device provides read back verification of the data being written and generates CRC on the write data pending and stored in a register. When the flash-write process completes, it reads the data back and generates CRC on the data read then compares it to the stored CRC. The ready response for the device is delayed until the read back is completed. Read miscompare results in failed write status indicates back to the controller

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 58% of the total text.

Page 1 of 2

Method and Apparatus to Use SSD Controller Expansion Device to Verify Data Written to Flash Using CRC

In a dual controller flash memory array a "smart" flash expansion Mux is needed to share an array of flash devices efficiently. When writing to a device, it is often desirable to read back the data to verify that the write completed and the data stored in the flash device is as intended. A system diagram of a dual SSD controller system and SSD expansion devices are shown in Figure 1.

Fig. 1 dual controller SSD / Flash expansion network

Device array

Data / control

A

Controller A

SSD / Flash expansion Mux

Mux enables

Mux enables

Multiple Instances

Data / control

B

Controller B

Device array

SSD / Flash expansion Mux

As seen in Figure 2, during a write data transfer from either of the two controllers, it accumulates CRC across the block of data being written and store it in a register associated with the device being written. A history of the writes in progress is

1

Page 2 of 2

                                                   a read of the page is performed. CRC is calculated as the data is read from the expansion device and compared to the CRC accumulated during the transfer of data from the initial write operation. If the CRC values are equal, then the device status is updated to indicate ready or write complete. In the case of miscompare, an error line back to each controller is provided. When active the controller must query the expansion devices to determine which is in...