1. A method of formatting data, comprising: determining a total number of programming states values for storing input data in an array of multistate memory cells; converting the input data to an encoded data based on the total number of programming states such that a total number of programming states for storing the encoded data is less than the total number of programming states for storing the input data; and arranging the encoded data and a decoding scheme in a data packet, wherein the decoding scheme converts the encoded data back to the input data.