1. 程式人生 > 其它 >NVME—學習筆記(四)

NVME—學習筆記(四)

NVME 協議中一些概念的理解:

1、Namespace :可以將Namespace 理解為一片Logic Block的區域,一個Controller可以支援多個Namespace,每個Namespace 由NamespaceId 標記,便於訪問;

2、PCI Register 與Controller Register:

  NVME協議定義的PCI Register屬於PCI驅動的一部分內容,這些Register的內容一部分需要由Controller填充,Host通過Host Bus 呼叫PCI驅動可以讀取得到其中的值。

  NVME協議定義的Controller Register則是Controller需要支援的功能,通過PCI Register中的BAR,將Controller Register 的地址對映在BAR空間中,Host可以通過BAR空間訪問Controller的Register。

  簡而言之,PCI Register屬於NVME協議中規定的,PCI驅動需要遵循的,便於支援NVME的主機管理PCI 總線上的裝置。Controller Register則是NVME規定Controller 端需要提供的,便於NVME主機與Controller進行互動。

3、BAR空間:BAR空間是Controller填充在PCI Register中,告知Host端可以通過操作哪一段記憶體來訪問Controller 的Register,從而實現Host與Controller的直接互動、控制。