Adaptive Flash Interface
First Claim
1. A non-volatile memory system, comprising:
- a controller circuit, including a memory interface and logic circuitry;
a memory circuit, including an array of non-volatile memory cells, a controller interface, and logic circuitry;
a bus structure connected to the memory interface of the controller circuit and to the controller interface of the memory circuit for the transfer of data and commands therebetween; and
a feedback processing circuit connected to the logic circuitry of the receiving one the controller and the memory circuit during a transfer of data therebetween to receive information on the amount of error occurring as a result of the transfer, and connected to one or both of the memory interface and the controller interface to adjust the characteristics of the transfer therebetween in response to the amount of error.
3 Assignments
0 Petitions
Accused Products
Abstract
A structure, and corresponding operating techniques, are presented for the internal controller to memory circuit interface for memory systems such a flash memory card or other similarly structured devices. The interface between the controller circuit and memory circuit (or circuits) includes a feedback process where the amount of error that arises due to controller-memory transfers is monitored and the transfer characteristics (such as clock rate, drive strength, etc.) can be modified accordingly. For example, in addition to transferring a set of data, the transmitting side also generates and transmits a corresponding hash value for the set of data. When the set of data is received on the other side, a hash value is also generated there and compared to the received hash value to determine if these was transmission error. If there is no error, the transfer rate could, for example, be increased, while if there were error, it could be decreased.
32 Citations
37 Claims
-
1. A non-volatile memory system, comprising:
-
a controller circuit, including a memory interface and logic circuitry; a memory circuit, including an array of non-volatile memory cells, a controller interface, and logic circuitry; a bus structure connected to the memory interface of the controller circuit and to the controller interface of the memory circuit for the transfer of data and commands therebetween; and a feedback processing circuit connected to the logic circuitry of the receiving one the controller and the memory circuit during a transfer of data therebetween to receive information on the amount of error occurring as a result of the transfer, and connected to one or both of the memory interface and the controller interface to adjust the characteristics of the transfer therebetween in response to the amount of error. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of operating a non-volatile memory system including a controller circuit and a non-volatile memory circuit, the method comprising:
-
generating a first hash value from a data set in logic circuitry on a first of the controller circuit and the memory circuit; transmitting to a bus structure the data set and the first hash value through an interface on the first of the controller circuit and the memory circuit; receiving the data set and the first hash value from the bus structure through an interface on the second of the controller circuit and the memory circuit generating a second hash value from the data set as received in logic circuitry on the second of the controller circuit and the memory circuit; comparing the first hash value as received and the second hash value on the second of the controller circuit and the memory circuit; and based on the comparison of the first hash value as received and the second hash value by the logic circuitry on the second of the controller circuit and the memory circuit, determining whether to alter characteristics of the transfer of data between the controller circuit and the memory circuit. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A method of operating a non-volatile memory system having a controller circuit and a memory circuit including an array of non-volatile memory cells, the method comprising:
-
transferring a set of data from buffer memory on the controller through transmission circuitry on the controller to a bus structure connecting the controller to the memory circuit; receiving the set of data from the bus structure through receiving circuitry on the memory circuit; storing the set of data as received in buffer memory on the memory circuit; transferring the set of data as stored in buffer memory on the memory circuit, and without being written into the array, through transmission circuitry on the memory circuit to the bus structure; receiving the set of data from the bus structure through receiving circuitry on the controller; subsequently storing the set of data as received in buffer memory on the controller; subsequently adjusting characteristics of the transfer of data between the controller circuit and the memory circuit based upon amount of error the set of data as received and stored in the buffer memory on the controller. - View Dependent Claims (37)
-
Specification