@Aariyan,
I agree with
Doomer. Here are a few more comments...
Aariyan wrote:AHCI is defined as "a data movement engine between Memory and SATA devices".
No it isn't.

You don't explain the source of this (misinformed) definition, but I suggest you read some more about AHCI, and read (at least some) of the specification itself:
http://www.intel.com/technology/serialata/ahci.htmhttp://download.intel.com/technology/se ... rev1_3.pdfA useful starting point for you, would be section 1.7 "Theory of Operation" in the AHCI spec v1.3 that I linked above.
Aariyan wrote:So, Is AHCI is enhanced version of DMA?
No.
Aariyan wrote:Can anybody give me more clarification on this?
As an example: For part of its operation, an AHCI HBA
uses DMA to access data in system memory, acting as a PCI bus master. However, as you will read in the specification, the AHCI specification defines
much more than this.