Ahci(高级主机控制器接口)是英特尔开发的技术标准。它是一种硬件机制,允许软件与SATA存储设备通信,并使SATA存储设备能够激活高级SATA功能,如本机指令队列和热插拔。AHCI为硬件制造商详细定义了内存架构规范,规定了如何在系统内存和SATA存储设备之间传输数据。
背景介绍
AHCI的本质是一个PCI设备,它在系统内存总线和串行ATA设备的内部逻辑之间起着通用接口的作用(即在不同的操作系统和硬件中是通用的)。这种设备描述了一个通用的系统存储器结构,包括控制区、状态区和命令序列入口表。每个命令表条目包含SATA设备编程信息和指向描述表的指针(用于在设备和主机之间传输数据)。
AHCI通过包含PCI BAR(基址寄存器)来实现本机SATA功能。由于AHCI统一接口的研发成功,大大简化了支持串行ATA产品的开发。操作系统和设备厂商省略了单独开发接口的工作,而是直接在统一的接口上运行,可以实现包括NCQ(Native Command Queuing,原生命令队列)在内的很多功能。