论文部分内容阅读
随着集成电路制造工艺的发展和设计复杂度的增长,对集成电路的验证提出了更高的要求。特别是自上个世纪90年代以来,SoC(System On a Chip)技术的迅速发展,使得同一块芯片上可能集成非常复杂的系统,验证就变得更加复杂。如何提高验证效率,减少验证人员的工作量并改善验证过程成了一个非常迫切的问题。为解决这一问题,各IC设计小组已下了不少工夫,有少数EDA供应商甚至推出新的方法或语言。为了能够在这个全新的领域占有一席之地,我们项目组涉足了这一重要领域,力争在此领域占据领先地位。为此,我们在深入研究传统的验证方法的基础上,自主开发了SoC软硬件协同验证系统。正是在此背景下,作者通过广泛查阅国内外相关资料,分析比较各种验证方法,甚至亲自登门拜访有关EDA厂商,深入研究了基于Transaction模式的软硬件协同验证方法,该方法成功地结合了Transaction级别的验证方法和软硬件协同验证方法的诸多优点,在软硬件协同验证的基础上提供了Transaction的处理能力,在Transaction级别上对系统进行验证,而不再是传统的基于总线时序信号的验证。在对该方法深入理解的基础上,在与项目组成员一同开发的SoC软硬件协同验证系统的平台上,成功的实现了该方法。在具体的实现过程中,将系统划分为两大部分来实现,软件部分采用SystemC这一高级的编程语言对软件侧进行建模,对数据结构进行抽象打包,实现数据的传送、接收以及结果的查看等;在硬件部分,主要由Verilog HDL语言编写的状态机实现BFM的功能,包括数据结构进行解包并信号级别信息的转换,BFM与DUT的数据通信,以及对信号进行打包传送等工作。而软硬件之间的接口通过SCE-MI规范接口来实现。最后,通过我们的实验平台,对该方法进行了成功验证。结果表明,该方法的验证速度可以达到200KHz,在针对相同的DUT的情况下,该方法的验证速度比软硬件协同验证的联合验证模式和测试向量模式的速度高出2倍以上。该方法的研究成果,可以很好的应用于国防、科研等领域,并将产生深远的影响。