Patent ID: 9043538
Filing Date: 2015-05-26
Classification: G06F

Abstract:
1. A non-transitory computer readable storage medium having program instructions stored thereon, the program instructions comprising: a master control module, a memory control module, a nonvolatile memory and a cache, wherein the memory control module is connected with the master control module, the nonvolatile memory and the cache are respectively connected with the memory control module; and the memory control module is configured to, when the master control module sends a write command for the nonvolatile memory, store data to be written in the nonvolatile memory in the cache according to the write command, and release the cache used for storing the data to be written in the nonvolatile memory after finish of write operation to the nonvolatile memory; wherein the memory control module comprises a cache control unit and a nonvolatile memory control unit; the nonvolatile memory control unit is configured to receive the write command for the nonvolatile memory sent from the master control module, and send write operation information to the cache control unit according to the write command; the cache control unit is configured to store the data to be written in the nonvolatile memory in the cache according to the write operation information; the nonvolatile memory control unit is further configured to send a read command of reading the data stored in the cache to be written in the nonvolatile memory to the cache control unit; the cache control unit is further configured to read the data stored in the cache to be written in the nonvolatile memory according to the read command, and send the read data to the nonvolatile memory control unit; and the nonvolatile memory control unit is further configured to send a notification signal indicating finish of writing the data in the nonvolatile memory to the cache control unit and the master control module after the data has been written into the nonvolatile memory, so as to release the cache used for storing the data to be written in the nonvolatile memory; wherein the nonvolatile memory control unit comprises: a nonvolatile memory write control sub-unit, configured to receive the write command for the nonvolatile memory from the master control module, and to send a write operation control signal; and a cache management sub-unit, configured to send a write operation information to the cache control unit according to the write operation control signal; wherein the nonvolatile memory write control sub-unit is further configured to send the read command of reading the data stored in the cache to be written in the nonvolatile memory to the cache management sub-unit, so as to send the read command to the cache control unit through the cache management sub-unit; wherein the cache control unit comprises: a CPU command processing sub-unit; a nonvolatile memory controller command processing sub-unit, configured to receive the write operation information and the read command; an address management sub-unit, configured to receive the write operation information and an address configuration command of the cache used for storing the data to be written in the nonvolatile memory sent by the master control module when the master control module sends the write command for the nonvolatile memory, and to generate a cache address information of the cache for storing the data to be written in the nonvolatile memory according to the write operation information and the address configuration command; a selection sub-unit, configured to select the cache address information, the write operation information and the read command received by the nonvolatile memory controller command processing sub-unit to send; a cache write control sub-unit, configured to write the data to be written in the nonvolatile memory in the cache according to the cache address information and the write operation information sent from the selection sub-unit; and a cache read control sub-unit, configured to read the data stored in the cache to be written in the nonvolatile memory according to the read command sent from the selection sub-unit, and send the read data to the nonvolatile memory write control sub-unit; wherein the cache management sub-unit respectively sends a notification signal indicating finish of writing the data in the nonvolatile memory to the selection sub-unit and the master control module after the nonvolatile memory write control sub-unit writes the data in the nonvolatile memory, so as to release the cache for storing the data to be written in the nonvolatile memory.