近期热点
·从SmartFile看OA市场新商机
·甲骨文2007亚太会议-火热报名
·Autodesk在制造业的行业解决方案
·AutoCAD 2008之两大亮点
·Inventor征文:BOM表应用技巧
·UG WAVE技术在航空产品结构件详细设计中的应用
 相关文章
·网络故障测试仪远程监控软件的设计
·基于FA526处理器SoC平台的Linux操作系统实现
·SSL VPN的概念与选型
·基于DataSocket技术的LabVIEW远程测控
·NC机床的网络控制系统的实现
·数控机床的网络控制技术研究
 相关新闻
·
浪潮成功研发自主产权的SOC芯片
 相关热贴
·汽车嵌入式SoC系统的应用与发展
 相关商城商品
 
 
当前位置:技术信息化 -> EDA
 
Cadence的EDA验证工具在SOC设计中的应用
发表时间:2006-9-30   
关键字:SOC 协同验证(co-verification)  
本文介绍了Cadence公司的NC-Verilog/Verilog-XL Simulator以及Signalscan在SOC设计中的应用。

    在ASIC和SOC设计中,验证是极为重要的一环,Cadence公司的NC-Verilog仿真器(以及较早产品Verilog-XL)是用来仿真用Verilog语言写的数字逻辑电路。该仿真器在ASIC和SOC设计中有着比较广泛的应用。该仿真器是基于事件驱动的。
 
    我们设计的SOC产品是通信用的芯片,样片测试已经通过,即将大规模应用于通信设备上。该芯片采用业界流行的ARM处理器作为该SOC芯片的CPU内核,另外还包括内嵌的RAM,模拟锁相环,以及其它用户逻辑。该芯片采用0.25微米的CMOS工艺,能运行于70MHz频率。由流片厂家EPSON提供仿真模型。该模型是应用于Verilog-XL仿真环境下,也可以用于NC-verilog仿真环境下。

    SOC设计与ASIC设计显著不同的地方在于需要协同验证(co-verification),因为SOC具有嵌入式CPU,要验证SOC芯片就必须通过在SOC上运行程序来进行。

    1.仿真环境的配置

    在我们的设计中,在逻辑验证阶段(即所谓Pre-simulation)和后仿真阶段(Post-simulation)都采用Verilog-XL,与此同时,用Cadence的Signalscan来观察仿真波形,分析时序。在仿真之前,必须将ARM的仿真模型编译到Verilog-XL的仿真环境中。

    EPSON提供的有关ARM的仿真信息包括一个C仿真模型,模拟ARM的行为,能仿真指令的执行,功能类似于ISS(指令集仿真器),文件后缀为"*.so",是由C/C++语言编译器生成;还要有时序信息,是SDF格式,用来模拟CPU接口信号时序,这包括best case,typical和worst case情况下的时序信息;另外还提供了verilog语言编写的ARM模型的"外壳",把ARM模型引入到我们的SOC设计中,作为SOC设计中的一个子模块。不论在RTL阶段和门级网表(gate level)阶段,都用这个verilog文件。

    EPSON还提供了管理该仿真模型的应用程序,名为ModelGen,ARM的C仿真模型就是通过它调入我们的仿真环境中。

    在启动Verilog-XL之前,在仿真之前,必须将ARM的仿真模型编译到Verilog-XL的仿真环境中。方法是在verilog_xl_setup设置文件中配置ModelGen的启动路径以及ARM仿真模型的路径,启动Verilog-XL后,在仿真时所需的ARM的信息都编译到仿真环境下,包括ARM的C仿真模型,SDF文件也反标到(back-annotation)我们的设计中。 

    2.SOC设计流程

    在SOC设计过程中,仿真作为极为重要的环节来进行。在仿真时基于这样的一个考虑,就是能模拟我们的SOC芯片的实际运行情况。因此在确定仿真策略时,将需要在ARM中运行的测试程序作为数据放在SDRAM仿真模型中,就像芯片的实际运行一样,从SDRAM中读取指令,在ARM中执行指令。芯片复位后就能自行下载程序,执行程序。因此该芯片的测试激励(verilog语言编写)就很简单,仅需要个上电复位过程,当然还需要芯片的外围仿真模型以保证系统的完整性。

    在EPSON的厂家流程中(见图1),Verilog-XL作用不仅在于仿真验证设计的正确性,还将用来产生在芯片生产过程中所需的功能测试向量,这个测试向量是EPSON自己定义的格式(*.apf文件),它来自用Verilog-XL仿真得到的波形(VCD格式)。


  
    在该设计的verilog描述综合得到门级网表后,将进行后仿真阶段(post-simulation)仍要进行两类仿真,一是"门级前仿真",它是将网表加上自己用EDA工具生成的SDF文件进行仿真,保证综合前后的设计一致性,同时也用PrimeTime(静态时序分析工具)和Fomality(形式验证工具)来验证时序和功能一致性,但仍以Verilog-XL仿真结果为主;在厂家做完layout后,用实际产生的SDF文件来做"门级后仿真",做法与"门级前仿真"一样。

    在后仿真阶段分析时序时,要充分利用Signalscan工具,并结合PrimeTime,对layout前后的网表的critical timing path以及时钟信号进行分析,比如可以用Singalscan来提取时序信息,这比在PrimeTime更具有灵活性。

    实践证明,这种设计方法对于规模不大的SOC设计是行之有效的设计方法。

 

 责任编辑:孙文婕