论文部分内容阅读
随着现代SOC(System on Chip)芯片的迅速发展,SOC芯片的规模越来越大,其复杂性越来越高。而SOC系统的开发中,验证的工作已经占到SOC系统开发总工作量的70%-80%,已经成为SOC系统的主要瓶颈之一,也是当前SOC芯片研究的热点之一。SGMII (Serial Gigabit Media Independent Interface)是一种新的应用于以太网中的串行高速接口。SGMⅡ子系统是以MAC核心模块为基础,支持IEEE802.3协议,包括CPPI (Communications Port Programming Interface)模块,SGMⅡ串行接口转换模块和Serdes模块的以太网子系统。SGMII子系统是SOC系统中常见IP之一。本文通过使用、/erilog HDL语言搭建系统级验证环境,验证SGMII子系统的IP功能以及SOC系统级功能。现代SOC系统中都会包含核(CPU或者DSP),在基于本文所搭建的环境的测试用例中,所有测试用例都是通过SOC RTL中的软核来执行的。通过软核控制SGMII BFM,只需要一个C语言的测试用例就可以完成软硬件的行为,而不是人工直接控制BFM。这样设计的好处是:1)在编译方面,节省了大量的硬件编译时间,在第一次硬件编译成功之后,每个用例只需要软件编译和硬件的执行2)提高了SGMII BFM控制效率。本文应用的SGMⅡBFM核是Synopsys公司的VIP(Verification Integrated Property),经过多版的工业级应用,其成熟非常高,可以保证DUT(Design under Test)的测试质量。但由于其功能强大,可以完成各种以太网的行为级模拟。导致其控制非常复杂。在工程应用中,验证工程师不得不学习大量的BFM文档,这会大大降低工程师的工作效率。而本文通过设计一个AHB总线控制系统。对Ethernet VIP控制方法归类封装,可以大大的减少对Ethernet VIP控制需要的工作量。3)简化测试用例设计。通常的BFM控制都是通过System Verilog, SystemC来控制。在本课题设计了通过软件控制SGMII BFM的机制,使SGMII BFM的控制的灵活性大大提高。本文通过完整的验证流程和层次的用例规划来保证SGMII BFM功能验证的功能点的覆盖。测试用例规划首先重点关注SGMII子系统IP在系统级集成的通路和IP之间通信的协调一致,其次关注IP的基本功能,以实际的应用场景作为基本功能的参考点,来保证验证的完备性和验证功能点的覆盖。