首页 » 智能 » 数字IC设计流程中为什么要做门级仿真_暗记_旗子

数字IC设计流程中为什么要做门级仿真_暗记_旗子

admin 2025-01-11 10:44:25 0

扫一扫用手机浏览

文章目录 [+]

在讲解门级仿真浸染之前,我们先大略来看一下数字后真个流程:

数字IC设计流程中为什么要做门级仿真_暗记_旗子 智能

在步骤1中,会插入DFT,天生post_DFT的网表netlist;在步骤2中会根据CPF/UPF插入isolation,天生post_ISO的网表;步骤3进行后端PR,会插入clock tree以及power switch等,天生终极的post_PR的网表。

理论上每次天生新的netlist都须要重新跑门级仿真,担保功能级仿真的精确。
门级仿真的韶光开销很大,尤其对付规模稍大的芯片,跑完一个case常常须要几天的韶光。

有人会问,综合之后都会做formal和STA,来担保网表的同等性和timing没有violation。
那为什么还要做如此耗时耗力的门级仿真的。
下面我们就来罗列一下门级仿真的紧张浸染和重点。

1 双重保险

不论是在步骤1,2,3中,插入不同的东西之后,都会改变原来的netlist,虽然会做同等性检讨,但是还是须要进行功能性的门级仿真,以担保网表的精确性。

2 STA检讨不到的timing问题

STA可以检讨大多数的timing violation,但是也有无能为力的地方。
比如:

(1)异步模块和端口的timingcheck,这一块,有很多公司实在是会做类似CDC的flow来担保异步timing的,但是在门级仿真中能更直不雅观直接的反响出来。

(2)STA中constraint加的不敷,这类情形,在analog model的情形中表示的非常明显。

比如下图的这个情形,旗子暗记ABC是analogmode的三根输入旗子暗记,由于在RTL仿真中,A/B/C三根旗子暗记都是同时toggle的,旗子暗记进入analog的mode之后,不会涌现仿真的问题。
但是在后仿中,A/B/C三根旗子暗记一定不是同时toggle的,这样的旗子暗记,传入ananlogmode中就可能涌现仿真的缺点。

上面这种问题的办理方案是:

详细理解analogmode的需求,然后写出完善的constraints给做综合和STA。
但是这些constraint总归不是100%完善的,很多时候就须要后仿来报错创造。

3 X态传播的debug

这个是门级仿真中最主要的事情之一,便是打消芯片中所有X态传播而造成的功能问题。

有人不是很理解X态的传播,我们先大略阐明一下:

if(a==1) b=1;

else b=0;

如上面这段大略的代码,如果a=X态,在RTL仿真中,是不会传播出去的,由于会走else这条通路,从而b=0;但是在门级仿真中,当a=X时,b就会=X,从而X态会一级一级传播下去。

X态的传播,有些是无所谓的,有些就会影响到芯片的正常事情,尤其是在controlpath上的X态传播。
而这些都只能依赖门级仿真来创造了。

当然,有很多大公司,在RTL仿真的时候,就会加入X态的仿照仿真,能提前尽早的创造这类问题。

4 验证初始化reset流程的精确性

实际芯片在刚上电的时候,理论上大多数旗子暗记都是在不愿定态X态的,须要经由reset流程来进行初始化。
而只有在门级仿真中,才能更加真实充分的反应reset流程的精确性。

5 power评估

门级仿真中还有一个主要浸染便是用来进行power估计,由于netlist尤其是post_PR的网表能更加真实的靠近实际的芯片,供应的power评估值就越有参考代价。

一样平常会创建一个toggle rate最高的case来跑门级仿真,从而天生IR-DROP须要的VCD文件。

6 ISO值的验证

低功耗设计在芯片设计中越来越主要,大多数芯片都会采纳低功耗设计,在后真个实现中就须要插入isolation来保持一些旗子暗记在掉电状态下的值。
而ISO值为0还是为1,是直接参考CPF/UPF文件来实现的。
而CPF/UPF文件很多时候是直接通过review得到的。

万一在CPF/UPF中写错了,在门级仿真中就可以抓出类似的bug。

7 Power switch的验证

同样在low power设计中,powerswitchchain也是很主要的一环,而这个只有在post_PR的网表中才会真正插入。

以上只是大略罗列了一下门级仿真的浸染,详细的门级仿真的操作细节和把稳事变会在后续的文章中逐步道来。
这篇文章比较适宜有一定事情履历但刚开始做门级仿真的朋友们,有什么问题,欢迎大家留言一起互换噢。

标签:

相关文章