×

Direct logical block addressing flash memory mass storage architecture

  • US 5,845,313 A
  • Filed: 07/31/1995
  • Issued: 12/01/1998
  • Est. Priority Date: 07/31/1995
  • Status: Expired due to Term
First Claim
Patent Images

1. A mass storage device having nonvolatile memory, the storage device being coupled to an external digital system for storing binary information therefor in the nonvolatile memory, the external digital system including means for generating a plurality of logical block addresses for use in storing or reading data, the storage device comprising:

  • a. a volatile memory device having a plurality of volatile memory locations each of which is uniquely addressable by one of the logical block addresses, and wherein each of the volatile memory locations is configured to store a physical block address without requiring the storage of a corresponding logical block address;

    b. one or more nonvolatile memory devices each having a plurality of nonvolatile data blocks, wherein each block is selectively programmable and erasable and further wherein each data block is uniquely addressable by one of the physical block addresses, and further wherein the plurality of nonvolatile data blocks has a plurality of used/free flags, one stored with each data block in the one or more nonvolatile memory devices for indicating whether a data block contains data; and

    c. a controller for receiving a block of data from the external digital system to be stored in the one or more nonvolatile memory devices, for receiving a target logical block address from the external system, for identifying a free data block within the nonvolatile data blocks having no data stored therein, for storing the physical block address of the free data block in the volatile memory location that corresponds to the target logical block address, and for periodically erasing all data blocks of the nonvolatile memory devices having flags which are set, whereby an erase cycle is not needed each time the external system writes to the storage device;

    wherein the used/free flags stored in the one or more nonvolatile memory devices which correlate to the physical block addresses of the plurality of nonvolatile data blocks are copied to the volatile memory locations during a power-up and a system reset.

View all claims
  • 17 Assignments
Timeline View
Assignment View
    ×
    ×