可可读OpenChannelSSD之四_pblk

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

Pblk: Physical Block Device

物理块设备(pblk)是LightNVM target,实现了完全关联的基于主机的FTL,该FTL公开了传统的块I/O接口。本质上,pblk的主要职责是:

  1. 处理控制器和特定介质之间的约束 (例如,缓存必要的数据量来对Flash页进行编程)
  2. 将逻辑地址映射到物理地址(4KB粒度),并确保完整性,最终在面对关联映射表(L2P)崩溃时进行恢复
  3. 处理错误
  4. 实现垃圾回收
  5. 处理flush操作:因为典型的闪存页面大于4KB,flush会强制pblk的运行中数据在完成之前存储在设备上,文件系统或应用程序可能需要它

Write Buffering

写缓冲由host进行管理,写缓冲区作为圆环缓冲区进行管理。它在内部分解为两个缓冲区:一个数据缓冲区,用于存储4KB用户数据入口(4KB对应于一个扇区的大小),以及上下文缓冲区,用于存储Perentry元