NVMe Host IP 如何应用
项目场景:
虽然NVMe host ip已经将开发人员从繁杂的PCIe控制操作解放出来,但是一般NVMe Host IP 只负责控制PCIe的读写等命令,如何使用是设计人员面临的问题。
问题描述:
NVMe Host IP 使用需要考虑两方面:
- NVMe IP提供什么服务?
- 应用服务
解决方案:
- NVMe IP提供什么服务?
如果NVMe host IP只提供接口说明,不提供应用案列,尤其是源码,就得仔细分析该IP是不是好用,一般国外IP设计较为规范,但是技术支持一般,常见为email服务。这给国内设计者带来不便,如果加上沟通困难,如问题描述不清,更加增加设计成本。
如果提供demo 及应用源码,对于大部分设计者来说可以满足需求,可以根据自己需要进行修改。
-
应用服务
目前大部分面临的是数据流,不管是从AD过来,还是从光纤等方式过来。这些数据流是没有地址概念的,而使用NVMe进行高速DMA传输是需要指定首地址及长度,需要明确地址。因此首先需要建立地址概念。
目前缓存方式有BRAM即DDR。其中BRAM容量一般较少,DMA传输会有波动,导致BRAM方式不稳定,一般放弃该模式。目前大多数采用DDR方式实现。
这就涉及到数据转发,目前常见的是乒乓方式或轮询方式,如何控制数据的交互是设计的难点,这也是用户常常提问的:你的IP既然能做到
xxGBps,为什么我实现时达不到,甚至大打折扣,严重者,造成丢失数据,达不到设计目的。如何匹配是用户需要考虑的事:你选的SSD性能,你的DDR性能,你的转发机制等等,都需要统一衡量。
进一步沟通:
如有技术需求,可以进一步沟通:qq 1371712210。 wx: zzbxidian