● 摘要
8051硬件的验证系统主要是通过编写测试用例,然后在硬件和软件模拟器上分别运行测试用例,最后对硬件和软件模拟器的输出结果进行比对来验证硬件设计的正确性。在现有的芯片设计过程中,设计芯片的技术人员通常没有简单、有效的测试方法,来提升芯片设计质量。在设计完成之后,进行一些效率很低的测试,或是用一些复杂的额外设计实现测试,再就只有等待用户使用产品之后反馈回来信息来修改原来设计。这些不能有效保证芯片设计的正确性,更不能有效提升芯片设计质量,从而会影响芯片整体品质。本文主要描述这一套验证系统的工作流程和总体结构,同时对8051软件模拟器的体系结构和工作流程以及实现它们的数据结构和算法作了详细地说明和论述。另外,还详细论述了测试生成器的体系结构、数据结构和算法。该验证系统主要包括三个部分:软件模拟器,测试生成器,运行结果比对器。软件模拟器主要功能是模拟硬件的指令功能,并将测试用例的运行结果写入到文件中。测试生成器的主要功能是使用恰当的随机算法生成随机测试用例,这些测试用例将被模拟器和硬件同时运行。运行结果比对器是将模拟器生成的输出文件和硬件生成的运行结果文件进行对比。如果发现这两个输出结果有差异,这表示硬件系统可能有缺陷,需要开发人员进一步确认。这个比对过程可以是由人工来执行,也可以由计算机来自动执行。实践证明该验证系统能大大的提高开发人员调试和测试硬件的速度,开发人员使用起来也很方便。在今后的工作中,主要是对测试生成器的随机生成指令的算法进行改进,使其能够有更高的测试覆盖率.