1. A data cache system, comprising: a central processing unit (CPU) configured to execute instructions and read data; a memory system configured to store the instructions and the data; an instruction track table configured to store corresponding information of branch instructions stored in the memory system; a tracker configured to point to a first data read instruction after an instruction currently being executed by the CPU; and a data engine configured to calculate a data address in advance before the CPU executes the data read instruction pointed to by the tracker, and control the memory system to provide the corresponding data for the CPU based on the data address.