1. A method for managing cache memory in a flash cache architecture comprising: providing a storage cache controller, at least a flash memory comprising a flash controller, and at least a backend storage device; and maintaining read cache metadata for tracking on said flash memory cached data to be read, and write cache metadata for tracking on said flash memory data expected to be cached.