bloggerads

2017年4月16日 星期日

NVMe : Queue Size / Queue entry Size

Queue 相關 size 的 configuration

  • Admin Queue
  1. Completion Queue 和 Submission Queue 各只有一組
  2. Initial 時需設定Queue Size, 即AQA.ACQS, AQA.ASQS, controller 應support 2~4096個entry
  •  I/O Queue 
  1. Initial 時需設定每個entry的Size, 即 CC.IOSQES = 6 (64 Byte), CC.IOCQES = 4 (16 Byte), 這是NVM command的size。
  2. 透過 CAP.MQES (Maximum Queue Entries Supported)得到 I/O Submission/Completion Queue support 的最大entry數量(最少兩個entry)。 在使用Admin Command Create I/O Queue時不要超過他
  3. 透過 Set Feature (Feature Id 07h) 設定host driver所需的Submission/Completion Queues數量 (最大64K個), 從completion queue 回來的資料可以得到Controller 所能allocate 的Submission/Completion Queue數量


   以下是 NVMe MMIO的registers

  MUBAR (BAR1:BAR0) – Memory Register Base Address


沒有留言:

張貼留言