beat365体育(中国)官网ViP平台-Unified Platform

新闻中心

【硅谷FMS主题演讲二】利用QEMU虚拟机引擎实现指令级别的SSD固件仿真

发布时间:2023-08-21 文章来源:beat365体育官网平台

全球瞩目的世界顶级闪存峰会2023 Flash Memory Summit(简称“FMS”)已于美国时间8月10日圆满落幕,beat365体育官网平台在硅谷首发的两颗Gen5主控芯片备受瞩目,三位芯片及方案架构师在峰会上的精彩演讲亦受到行业的热烈关注与讨论。


1.png

beat365体育官网平台软件设计高级总监程雪在FMS2023上做了题为《Instruction Accurate FW Simulation on QEMU》的主旨演讲,就如何“利用QEMU虚拟机引擎实现指令级别的SSD固件仿真”话题进行了深刻演说。


2.png

beat365体育官网平台软件设计高级总监 程雪 发表演讲


做为一家SSD主控加方案公司,我们开发过程中遇到的一个最大的痛点就是如何在芯片早期,可以让固件开发介入进来,从而尽早验证SSD的系统问题。


在芯片开发前期,固件的介入方式通常是通过架构仿真或者FPGA和Emulator原型验证平台来进行代码开发和测试。架构仿真对驱动层面进行了仿真抽象,可以快速的验证在这个芯片上面的固件架构的可行性,但是不能深入到系统细节。而FPGA和Emulator原型验证虽然可以深入到芯片细节,但是这类平台的准备时间很长,往往在芯片开发很后期才能稳定的提供给固件使用。


3.png


因此,介于两种仿真体系之间,我们又开发了基于QEMU的指令集仿真平台。通过对QEMU核心代码进行裁剪和二次开发,我们实现了一个100%寄存器级别准确的STAR2000QEMU仿真系统。


4.png


该系统可以直接运行最终运行在SSD产品上面的固件二进制代码,以实现最高级别的仿真准确性。


5.png


同时,借助QEMU的强大功能,也可以实现断点调试,GDB调试等等。利用基于QEMU的仿真系统,我们可以提前进行高准确性的固件开发,让芯片回来以后可以第一时间运行上稳定的固件代码,大大缩短产品开发时间。


6.png


在前端模型部分,我们创新性的引入了NVMe Over TCP协议作为仿真器和测试主机的接口。仿真器通过这个接口暴露给前端,可以在真实主机上面看到一个真实的NVMe设备。通过这个设备,我们不仅可以在仿真进行I/O测试,还可以进行Admin命令的测试,大大提高了仿真器的易用性。


7.png


在后端部分,我们通过我们独创的StarNAND模型技术,可以实现在多个仿真器和Emulator上共享相同的NAND模型,从而进行NAND内容的共享,方便在多个平台互通数据,复现问题。此外,StarNAND技术还提供工具,帮助从真实SSD盘里面读取NAND数据,并且做成一个数据镜像提供给各类仿真器使用,从而可以快速在仿真复现SSD盘里面的遇到的诸多问题。


8.png


QEMU仿真器进一步补充了beat365体育官网平台“软件驱动设计”的研发流程,从架构仿真,到事务级别仿真,再到寄存器级别仿真和最终的RTL精确的FPGA/Emulator平台,我们可以灵活高效的在各个芯片开发周期中进行非常前期的固件开发,充分的参与到芯片开发的全过程中,在芯片前期就对系统和性能进行了全方位的验证,确保了STAR2000的一次性流片成功。同时,借助仿真平台,我们提前开启了产品级别的固件开发,大大缩短了产品交付时间。


9.png


beat365体育官网平台关于“利用QEMU虚拟机引擎实现指令级别的SSD固件仿真”的主旨演讲获得了大会的高度重视,并对技术理论与实践结合促使STAR2000一次性流片的成果表示高度赞赏。截至目前,beat365体育官网平台研发的芯片产品拥有320余项自主知识产权,已成功完成4款SSD主控芯片的流片,并通过百万量级的市场出货验证,得到了众多大厂客户的充分认可。


beat365体育官网平台将继续坚持技术与产品的创新迭代,在“主控+存储芯片+固件+算法+模组”的完整国产生态布局下,为东数西算、数字化转型发展等带来颠覆性的市场变革。