1. A data storage system, comprising: a memory device, comprising: a non-volatile memory, comprising a plurality of physical blocks having a plurality of data blocks and a plurality of spare blocks, wherein the data blocks are used for storing data and at least some spare blocks corresponding to the data blocks are reserved and used for data update operations; and a controller coupled to the non-volatile memory for calculating an average erase count of selected physical blocks, and obtaining a remaining period of time indicative of usable lifespan of the memory device according to the average erase count and a maximum allowable number of cycles for erasing each physical block; and a host coupled to the memory device for obtaining an index by comparing the average erase count with a first threshold, determining a performance capability status for the memory device according to the index, setting the performance capability status to a first status when the average erase count exceeds the first threshold and the total number of spare blocks other than the at least some spare blocks corresponding to the data blocks reserved and used for data update operations is below a lower limit, generating an indication based on the performance capability status, and performing a limp function in response to the first status for loading a predetermined in-system programming (ISP) code to replace an original in-system programming code being stored in at least one physical block of the non-volatile memory, wherein the predetermined in-system programming code configures a minimum number of the at least some spare blocks reserved and used for data update operations.