【技术实现步骤摘要】
用基于存储器的通信协议进行仿真设备测试的系统和方法
本专利技术的实施例通常涉及设备测试的领域。更具体地,本专利技术的实施例涉及用于在测试期间对被测设备(DUT)进行仿真(simulate)的方法和系统。
技术介绍
通常在出售设备之前对被测设备或装备(DUT)进行测试以确定该设备的性能和一致性。可以使用各种各样的测试用例对设备进行测试,并且将测试用例的结果与预期的输出结果进行比较。当测试用例的结果与预期的输出值不匹配时,执行调试以尝试对由设备导致的任何缺陷进行标识和校正。DUT通常由自动或自动化测试设备(ATE)进行测试,其可以被用于使用软件和自动化来进行复杂的测试,以提高测试效率。DUT可以是旨在被集成到最终产品(例如计算机或其他电子设备)中的存储器设备或组件。在NAND闪存设备开发过程中使用的现有系统级测试软件特别要求在DUT的开发接近完成之后对软件进行测试和调试。即使在紧急情况下,测试程序和软件产品通常也会等待由客户提供的存储设备准备好进行开发和调试,并且因此测试软件开发的生产率会受到设备完成程度的限制,这可能导致错过最终期限以及产品在被彻底测试之前就必须被投放。此外,现有的DUT测试方法只能在给定的时间处修改DUT的某些属性,并且某些变化只能被单独进行测试。所需要的是一种用于执行DUT测试的方法,该方法不依赖于设备开发的完成,而是可以在实际DUT可用之前通过对测试软件进行测试和调试来提高生产开发的效率,并且可以被定制为测试大量变量以增强测试的鲁棒性和可扩展性。
技术实现思路
...
【技术保护点】
1.一种仿真基于存储器的通信协议以测试仿真的设备的方法,所述方法包括:/n将数据存储在主机数据缓冲区中,其中,所述主机是测试仪系统,并且其中,所述主机数据缓冲区被实现在共享存储器空间中;/n执行测试仪系统程序的指令以使用数据结构将命令存储在所述共享存储器空间中,所述数据结构包括索引、ID、和存储器位置;/n执行DUT仿真的指令以进行以下步骤:/n从所述共享存储器空间读取所述命令;/n对所述共享存储器空间的块进行访问以执行由所述ID定义的操作,其中,共享存储器空间的所述块的位置由所述索引指示;以及/n在所述操作完成之后将完成指示符发送到所述测试仪系统程序。/n
【技术特征摘要】
20190603 US 16/430,2841.一种仿真基于存储器的通信协议以测试仿真的设备的方法,所述方法包括:
将数据存储在主机数据缓冲区中,其中,所述主机是测试仪系统,并且其中,所述主机数据缓冲区被实现在共享存储器空间中;
执行测试仪系统程序的指令以使用数据结构将命令存储在所述共享存储器空间中,所述数据结构包括索引、ID、和存储器位置;
执行DUT仿真的指令以进行以下步骤:
从所述共享存储器空间读取所述命令;
对所述共享存储器空间的块进行访问以执行由所述ID定义的操作,其中,共享存储器空间的所述块的位置由所述索引指示;以及
在所述操作完成之后将完成指示符发送到所述测试仪系统程序。
2.根据权利要求1所述的方法,其中,所述ID指示所述命令包括编程操作,其中,所述访问是读取所述块以获得用于写入到所述存储器位置的数据,其中,所述操作包括执行所述编程操作,并且所述方法还包括所述DUT仿真响应于所述命令而将所述数据写入到磁盘文件。
3.根据权利要求1所述的方法,其中,所述ID指示所述命令包括读取操作,其中,所述访问是存储从所述存储器位置读取的数据,其中,所述操作包括执行所述读取操作,并且所述方法还包括执行所述DUT仿真的指令以访问一个或多个磁盘文件以读取所述存储器位置处的数据并且在共享存储器空间的所述块中存储到所述主机数据缓冲区。
4.根据权利要求1所述的方法,其中,所述测试仪系统程序的指令和所述DUT仿真的指令作为分开的进程来执行,这些进程由基于Linux的操作系统管理。
5.根据权利要求2所述的方法,还包括:验证所述操作之后的所述数据以测试所述仿真的设备在所述编程操作之后是否有错误。
6.根据权利要求5所述的方法,其中,所述验证包括将所述数据与预期结果进行比较。
7.根据权利要求1所述的方法,其中,所述命令被存储在所述仿真的设备的基址寄存器中。
8.根据权利要求4所述的方法,其中,测试仪程序的指令和所述DUT仿真的指令由同一处理器执行。
9.根据权利要求1所述的方法,其中,所述共享存储器空间包括存储器映射的文件,这些存储器映射的文件模拟物理存储器。
10.根据权利要求9所述的方法,其中,所述存储器映射的文件包括使用mmap映射的文件。
11.根据权利要求1所述的方法,其中,所述共享存储器空间包括存储器映射的文件,这些存储器映射的文件模拟NAND闪存存储器。
12.根据权利要求1所述的方法,其中,所述基于存储器的通信协议利用PCIe通信总线协议。
13.一种仿真基于存储器的通信协议以测试仿真的设备的编程操作的方法,所述方法包括:
将数据存储在主机数据缓冲区中,其中,所述主机数据缓冲区被实现在共享存储器空间中;
执行测试仪系统程序的指令以使用数据结构将编程操作存储在所述共享存储器空间中,所述数据结构包括第一索引、所述编程操作的ID、和存储器位置;
执行DUT仿真的指令以进行以下步骤:
访问所述共享存储器空间中的所述编程操作;
从所述共享存储器空间中由所述第一索引定义的块中读取数据;
将所述数据写入到所述存储器位置处的一个或多个磁盘文件;以及
在将所述数据写入到所述存储器位置之后,将第一完成指示符发送到所述测试仪系统程序;执行所述测试仪系统程序的指令以使用数据结构将读取操作存储在所述共享存储器空间中,所述数据结构包括第二索引、指示所述读取操作的ID、和存储器位置;以及
执行所述DUT仿真的指令以进行以下步骤:
从所述存储器位置读取所述数据;
根据所述第二索引将所述数据写入到所述主机数据缓冲区的块;以及
在将所述数据写入到由所述第二索引定义的所述块之后,将第二完成指示符发送到所述测试仪系统程序。
14.根据权利要求13所述的方法,还包括:在所述读取...
【专利技术属性】
技术研发人员:唐纳德·奥尔根,刘洋,
申请(专利权)人:爱德万测试公司,
类型:发明
国别省市:日本;JP
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。