1. A data storage device, comprising: a plurality of flash memory devices, each of the flash memory devices being arranged into a plurality of blocks having a plurality of pages for storing data; and a memory controller operationally coupled with the flash memory devices, the memory controller being configured to: receive a logical to physical address translation map from a host device, wherein a physical address includes a physical address for one of the flash memory devices; store the logical to physical address translation map in a memory module on the memory controller; receive read commands directly from an application running on the host device, wherein the read commands include logical memory addresses that refer to the logical locations on the flash memory devices; and translate the logical addresses to physical memory addresses using the logical to physical address translation map.