Gate level Simulation(门级仿真)
1 什么是后仿真?
后仿真也成为时序仿真,门级仿真,在芯片布局布线后将时序文件SDF反标到网标文件上,针对带有时序信息的网标仿真称为后仿真。
2 后仿真是用来干嘛的?
检查电路中的timing violation和 test fail,一般都是已知的问题。一般后仿真花销2周左右的时间。
网标仿真的目的是检查RTL仿真和综合后的一致性(logic Equivalence check),由于网标仿真非常慢,所以网标仿真不充分,有的公司没有网标仿真,即使有后仿真,后仿真一般是时间非常少,因为后仿真时间非常慢,一个case需要非常长(跟设计和case有关,一般一两天跑一个case).在实际的芯片开发中可以没有网标仿真,因为形式化验证和静态时序分析可以保证设计的正确性。
Gate level Simulation
Include the verilog model of standard cell and gate-level netlist to your testbench
Add the following synopsys directives to the testbench
3 有了LEC(等效性检查)和STA(静态时序分析),为什么还要做门级仿真(Gate-level simulation ,GLS)?
GLS can catch issues that static timing analysis (STA) or logical equivalence tools are not able to report. The areas
where GLS is useful include:
- Overcoming the limitations of STA, such as:
–The inability of STA to identify asynchronous interfaces
–Static timing constraint requirements, such as those for false and multi-cycle paths
- Verifying system initialization and that the reset sequence is correct
- DFT verification, since scan-chains are inserted after RTL synthesis
- Clock-tree synthesis
- For switching factor to estimate power
- Analyzing X state pessimism or an optimistic view, in RTL or GLS
4 零延迟仿真(Zero-Delay Simulation)
zero-delay mode run much faster than simulation using full timing.
在仿真时添加以下仿真参数(VCS)
+nospecify
+notimingcheck
+no_notifier
+delay_mode_zero
零延迟仿真用于调仿真平台,挑testcase, 检验网标有没有问题。 当这些完成之后,就可以将SDF文件反标到网标文件上进行时序仿真,零延迟仿真将极大的提高仿真效率
5 SDF文件,a file which contains all the net delays in design。An sdf has 3 kinds of delay(best,Worst,Typical)。
6 如何挑时序仿真的testcase(时序仿真的策略 )
- 挑2~3寄存器访问testcase.
- 初始化的testcase
- 典型的功能
- 关键路径,跨时钟域
7 当后仿真出问题,仿真不起来时。
- 检查clk,rst,PLL, reg
- timing violation 不定态 x. 见path
- test fail
8 用VCS做后仿真
做后仿真时,应该先做zero_delay仿真,确保加载的网标文件是正确的,然后,再将SDF文件反标到网标文件上。
`ifdef SDF
initial
begin
$sdf_annotate("../../rtl/post_sim/U_sramc.sdf",u_top,,"sdf.log",);
end
`endif
编译时添加参数:-negdelay +neg_tchk
参考文献:
[1] Gagandeep Singh, Cadence Design Systems, Inc. Gate-Level Simulation Methodology.
Gate level Simulation(门级仿真)的更多相关文章
- FPGA功能仿真,门级仿真,后仿真的区别
前言 分清楚各种仿真间的关系,工具采用quartus prime16.0,仿真工具采用modelsim10 ae版:项目:led_display; 流程 1.RTL行为级仿真:也叫功能仿真,这个阶段的 ...
- 关于Quartus+Modelsim 门级仿真 Warning (vopt-2216) Cannot find instance 'NA' specified in sdf.的解决办法
本文操作环境:Win 7 32位系统, Quartus II 11.1 ,Modelsim SE 10.1a 在Quartus II中调用Modelsim SE做Gate Level Simulait ...
- (数字IC)低功耗设计入门(六)——门级电路低功耗设计优化
三.门级电路低功耗设计优化 (1)门级电路的功耗优化综述 门级电路的功耗优化(Gate Level Power Optimization,简称GLPO)是从已经映射的门级网表开始,对设计进行功耗的优化 ...
- (数字IC)低功耗设计入门(七)——门级电路低功耗设计优化(续)
前面讲解了门级功耗的优化方法,包括静动态和总体的功耗.现在来记录一下门级层次(有点书也说是在系统级)常用的一种低功耗方法--电源门控. ①电源门控概述与原理 电源门控是指芯片中某个区域的供电电源被关掉 ...
- 使用Vivado进行行为级仿真
使用Vivado进行行为级仿真 1.编写设计文件 module test( input in, output out ); assign out = ~in; endmodule 2.编写testbe ...
- QuartusII 中采用门级原语
QuartusII 中采用门级原语 默认的是前面第一个 为output 后面所有信号为输入 图中的工程实现的是 一个二选一多路选择器
- Verilog门级建模
门级建模就是将逻辑电路图用HDL规定的文本语言表示出来,即调用Verilog语言中内置的基本门级元件描述逻辑图中的元件以及元件之间的连接关系. Verilog语言内置了12个基本门级元件模型,如下表所 ...
- hadoop开启Service Level Authorization 服务级认证-SIMPLE认证-过程中遇到的坑
背景描述: 最近在进行安全扫描的时候,说hadoop存在漏洞,Hadoop 未授权访问[原理扫描],然后就参考官方文档及一些资料,在测试环境中进行了开启,中间就遇到了很多的坑,或者说自己没有想明白的问 ...
- 对比学习UIKit和AppKit--入门级
UIKit是用来开发iOS的应用的,AppKit是用来开发Mac应用的,在使用过程中他们很相似,可是又有很多不同之处,通过对比分析它们的几个核心对象,可以避免混淆. UIKit和AppKit都有一个A ...
随机推荐
- [zz]Maya C++ API Programming Tips
Maya C++ API Programming Tips source : http://wanochoi.com/?page_id=1588 How to handle the multiple ...
- [asp.net]c# winform打印类
using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using ...
- spring mvc 4 校验
一.controller中添加: @ResourceGatewayValidator gatewayValidator; @RequestMapping(value = "/gateway/ ...
- 整整十年 - Agent Framework for TypeScript 2.0
十年前,我发布了 Agent Framework for .NET 2.0 今天,Agent 又开始了新的旅程, 这次支持的语言是 TypeScript 2.0 上需求:init函数只能被调用一次 废 ...
- Google Developing for Android 二 - Memory 最佳实践 // lightSky‘Blog
Google Developing for Android 二 - Memory 最佳实践 | 分类于 Android最佳实践 原文:Developing for Android, II Th ...
- 如何创建vss2005的数据库
配置如下 VSS手工创建数据库的步骤(设数据库根目录为D:\VSS): 1.在根目录中创建名为srcsafe.ini(全局配置文件)的文件,文件内容如下: Data_Path = data Temp_ ...
- python subprocess阻塞
import select import os import subprocess import time import fcntl args = ['python','./fetch_file2.p ...
- vc-complex-type.2.3: Element 'filter-mapping' cannot have character [children], because the type's content type is element-only.
报这种错一般是因为导入的项目或者黏贴的代码中有中文空格或者中文编码,只需将报错代码重写一遍即可.
- gulp使用笔记
gulp简介 gulp 是基于 Nodejs 的自动任务运行器,能自动化地完成javascript/coffee/sass/less/html/image/css等文件的的测试.检查.合并.压缩.格式 ...
- Aptana插件安装方法
本人用的是Zend Studio10.0,在开发项目过程中,发现该软件无法对css和js进行代码提示,这样用起来很不方便,然后在网上找了一下Aptana插件 进入Aptana官网:http://www ...