AHCI

Advanced Host Controller Interface là gì?

AHCI – Advanced Host Controller Interface, là một tiêu chuẩn kỹ thuật của chuẩn giao tiếp cho phép các phần mềm trao đổi với các thiết bị Serial ATA (SATA). Các thiết bị PCI (Peripheral Component Interconnect) này di chuyển dữ liệu giữa bộ nhớ hệ thống và phương tiện lưu trữ SATA.

Lịch sử phát triển

Năm 2004, Intel phát hành đặc tả kỹ thuật của AHCI để xác định hành vi chức năng và giao diện phần mềm của AHCI. Đặc điểm kỹ thuật cũng cung cấp một cách tiêu chuẩn để lập trình bộ điều hợp SATA-AHCI.

Thông số kỹ thuật được phát triển bởi AHCI Contributor Group, bao gồm các nhà cung cấp phần cứng, phần mềm và OEM, và do Intel chủ trì. Các công ty trong nhóm bao gồm AMD, Dell, Marvell, Maxtor, Microsoft, Red Hat, Seagate và StorageGear.

AHCI là một phần quan trọng trong việc tạo ra động lực cho công nghệ SATA II, cung cấp giao diện bộ điều khiển tiêu chuẩn tối ưu hóa các tính năng SATA nâng cao mà giao diện tiêu chuẩn IDE (Integrated Drive Electronics) cũ hơn không có. Phiên bản 1.3.1 là phiên bản mới nhất của đặc điểm kỹ thuật AHCI.

Cách AHCI hoạt động

Hầu hết các bo mạch chủ đều có AHCI được kích hoạt theo mặc định trong Giao diện chương trình cơ sở mở rộng hợp nhất ( UEFI ) hoặc BIOS. Các bo mạch chủ cũ hơn có thể được bật chế độ IDE theo mặc định và cần được chuyển sang AHCI trước khi cài đặt hệ điều hành (OS).

AHCI được hỗ trợ trên Windows Vista và các phiên bản Windows mới hơn; Linux kể từ phiên bản 2.6.19; OS X; và các hệ điều hành mã nguồn mở khác nhau, chẳng hạn như OpenBSD, NetBSD và FreeBSD. Trong khi Windows Vista và Windows 7 bao gồm trình điều khiển AHCI, những hệ điều hành đó sẽ không cài đặt AHCI nếu nó không được bật trên bộ điều khiển của ổ đĩa khởi động.

Ổ cứng SATA và ổ cứng thể rắn (SSD) cung cấp một số chế độ hoạt động: IDE, AHCI hoặc RAID , thường được kích hoạt AHCI. Tuy nhiên, không dễ dàng chuyển cài đặt BIOS từ chế độ IDE sang AHCI sau khi hệ điều hành được cài đặt. Windows có một giải pháp đăng ký sẽ cho phép AHCI được bật sau khi hệ điều hành được cài đặt. Các phiên bản hệ điều hành cũ hơn yêu cầu trình điều khiển dành riêng cho phần cứng để hỗ trợ AHCI.

Là một giao thức lưu trữ truyền thống được phát triển cho ổ cứng và băng, AHCI được thiết kế để quản lý một hàng đợi yêu cầu lưu trữ duy nhất. Đối với AHCI, hàng đợi này có độ sâu – số lượng yêu cầu I / O có thể được giữ để chờ được phục vụ trong hàng đợi cổng – là 32 lệnh.

Lợi ích và hạn chế của AHCI

AHCI cho phép các tính năng SATA nâng cao, chẳng hạn như hotswap và Native Command Queuing (NCQ). Cơ chế Hotswap cho phép chuyển ổ SATA ra ngoài mà không cần phải tắt máy tính.

NCQ tối ưu hóa cách SSD và ổ cứng xử lý đồng thời các yêu cầu dữ liệu, giảm thiểu chuyển động của đầu đọc-ghi và tăng tốc thời gian truy cập trên ổ cứng bằng AHCI. Trên SSD, NCQ cải thiện hiệu suất truyền file lớn.

Một nhược điểm của AHCI là độ trễ cao khi nó được sử dụng với SSD vì đặc điểm kỹ thuật được phát triển cho phương tiện lưu trữ quay cơ học chứ không phải flash. Ngoài ra, độ sâu hàng đợi hạn chế của AHCI có nghĩa là số lượng yêu cầu I/O có thể dễ dàng trở thành một nút cổ chai. Cần quản lý bổ sung để tránh yêu cầu I/O không thành công vì chúng vượt quá độ sâu hàng đợi.

AHCI so với NVMe

Nonvolatile Memory Express (NVMe) là giao diện truyền dẫn được phát triển cho bộ nhớ NAND flash và SSD hiệu suất cao sử dụng công nghệ khe cắm thẻ PCI Express (PCIe).

Bởi vì nó được phát triển đặc biệt cho SSD, NVMe nhanh hơn nhiều so với AHCI, giảm độ trễ và cung cấp IOPS tốt hơn. Cụ thể, NVMe tăng đáng kể số lượng hàng đợi I / O có thể với độ sâu hàng đợi lên tới 65.000.