0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

讲解串扰引入的噪声(Noise)

冬至配饺子 来源:RTL2GDS 作者:老本 Benjamin 2023-06-28 16:04 次阅读

CCSN Library

PT-SI在进行噪声分析前,首先需要确认Library中具备噪声模型。CCSN噪声模型建模是基于CCB(Channel Connected Block)。数字逻辑单元可以认为由一级或多级CCB组成,其中反相器,与非门,或非门只包含一级CCB;与门则包含两级CCB;而寄存器则包含多级CCB。下面就简单区分一下三种情况下噪声建模的区别:

单级CCB逻辑单元

对于单级CCB逻辑单元,例如反相器,噪声建模基于时序狐(Arc Based)。噪声的传输可以基于Timing Arc,模型转换框图如下:

图片

反相器的噪声模型在.lib中大致如下:

pin (Z) {
...
timing ()  {
related_pin: A;
...
ccsn_first_stage() { /*First stage CCB*/
...
}
}
...
}

两级CCB逻辑单元

对于两级CCB逻辑单元,例如与门,噪声建模也是基于时序狐(Arc Based)。分为input stage (ccsn_first_stage)和output stage (ccsn_last_stage),噪声的传输亦可以基于Timing Arc,模型转换框图如下:

图片

与门的噪声模型在.lib中大致如下:

pin (Z) {
  ...
  timing ()  {
    related_pin: A;
    ...
    ccsn_first_stage() { /*Input to Internal Node*/
      ...
    }
    ccsn_last_stage() { /*Internal Node to Output*/
     ...   
   }
  }
 ...
}

多级CCB逻辑单元

对于多级CCB逻辑单元,例如寄存器,噪声建模是基于Pin的 (Pin Based),对于所有inputs都抽取ccsn_first_stage模型,对于outputs抽取ccsn_last_stage模型。如果这种逻辑单元中存在某些input-output的路径只有两级CCB,也可以通过Arc Based方式建模。模型转换框图如下:

图片

寄存器的噪声模型在.lib中大致如下:

pin (CDN) {
  ...  
}
pin (CP) {
  ...
  ccsn_first_stage() {
    ...
  }
}
pin (D) {
  ...
  ccsn_first_stage() {
   ...
 }  
}
pin (Q) {
  ...
  timing ()  {
    related_pin: CDN;
    ...
    ccsn_first_stage() { /*Input to Internal Node*/
      ...
    }
    ccsn_last_stage() { /*Internal Node to Output*/
     ...   
   }
  }
 ...
}

需要注意的,对于Arc Based和Pin Based两种方式,.lib中噪声相关的属性存储的对象是不同的,Arc Based噪声属性是存在对于的Arc中,而Pin Based噪声属性则是与Pin关联的,具体的区别可以参看下面的命令:

#Arc Based Attributes
get_attribute [get_lib_timing_arc -of [get_lib_cell */INV1X]] has_ccs_noise_above_high


#Pin Based Attributes
get_attribute [get_lib_pins -of [get_lib_cell */INV1X]] has_ccs_noise_above_high

噪声分析实战

为了进行Noise或者Glitch分析,需要对一个串扰造成的Bump建模,它有宽度和高度,还有面积等属性概念(如下图所示),在分析噪声时可以分别针对height, area, area_percent进行分析,命令如下:

#默认值是height
report_noise -slack_type height
#area=1/2* height * width
report_noise -slack_type area
#area_percent = (constrainted height - actual height) / constrainted height
report_noise -slack_type area_percent

图片

PT-SI在进行update_noise计算时,首先会采用较为悲观的方式快速计算一个类似于下图中DC noise margin的阈值,如果计算出的Bump Height远低于该值,那么就可以断定没有noise不会传播,没有危害。如果计算出的Bump Height接近这个阈值,那么工具就会启动更精细的类似SPICE的门级仿真,取得更精确的结果。通过这种方式,即节省了时间,又保证了精度。

下图中的曲线可以看做是Noise Immunity Curve(NIC),在曲线左下角的Glitch都是无害的,而右上角的Glitch都是必须修复掉的。PT-SI在进行Noise门级仿真时会实时地计算出各个点的NIC,通过PT的GUI界面也可以调出这类图片。

图片

最后,简单聊一聊万一出现的noise违例,我们怎么去修复呢?

这个需要结合受害(victim)和攻击(aggressor) Net相关路径的时序,周围Net和Cell的密集程度等情况来具体分析,大致上有以下方法:

(1)增加受害Net的驱动单元驱动能力

(2)减少受害Net的负载单元驱动能力

(3)增加受害Net和攻击Net的间距

(4)降低攻击Net的驱动单元驱动能力

(5)通过加Buffer将受害Net打断 (工具一般是通过这种方式来修复)

(6)将受害或者攻击Net的驱动单元或者负载单元挪开一定距离,并重新ECO绕线

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5250

    浏览量

    119179
  • 反相器
    +关注

    关注

    6

    文章

    307

    浏览量

    43036
  • CCSN
    +关注

    关注

    0

    文章

    3

    浏览量

    7063
  • GUI
    GUI
    +关注

    关注

    3

    文章

    631

    浏览量

    39284
  • SPICE仿真
    +关注

    关注

    1

    文章

    26

    浏览量

    6374
收藏 人收藏

    评论

    相关推荐

    什么是?如何减少

    01 . 什么是?   是 PCB 的走线之间产生的不需要的噪声 (电磁耦合)。
    的头像 发表于 05-23 09:25 5015次阅读
    什么是<b class='flag-5'>串</b><b class='flag-5'>扰</b>?如何减少<b class='flag-5'>串</b><b class='flag-5'>扰</b>?

    介绍

    继上一篇“差模(常模)噪声与共模噪声”之后,本文将对“”进行介绍。
    发表于 11-29 14:29

    什么是

    继上一篇“差模(常模)噪声与共模噪声”之后,本文将对“”进行介绍。
    发表于 03-21 06:20

    什么是

    什么是?互感和互容电感和电容矩阵引起的噪声
    发表于 02-05 07:18

    怎么抑制PCB小间距QFN封装引入

    随着电路设计高速高密的发展趋势,QFN封装已经有0.5mm pitch甚至更小pitch的应用。由小间距QFN封装的器件引入的PCB走线扇出区域的问题也随着传输速率的升高而越来越突出。对于
    发表于 03-01 11:45

    什么是它的形成原理是怎样的

    是信号完整性中最基本的现象之一,在板上走线密度很高时的影响尤其严重。我们知道,线性无缘系统满足叠加定理,如果受害线上有信号的传输,
    发表于 09-18 15:10 1.5w次阅读
    什么是<b class='flag-5'>串</b><b class='flag-5'>扰</b>它的形成原理是怎样的

    如何解决PCB问题

    高速PCB设计中,信号之间由于电磁场的相互耦合而产生的不期望的噪声电压信号称为信号超出一定的值将可能引发电路误动作从而导致系统无法
    发表于 07-19 09:52 2261次阅读

    浅谈溯源,是怎么产生的

    文章——溯源。 提到,防不胜防,令人烦恼。不考虑,仿真波形似乎一切正常,考虑了
    的头像 发表于 03-29 10:26 3167次阅读

    如何解决EMC设计中的问题?

      是通过近电场(电容耦合)和磁场(电感耦合)在相邻导体之间耦合的噪声。尽管任何相邻导体都表现出,但是当它出现在强干扰信号和敏感信号
    的头像 发表于 12-25 15:12 2271次阅读

    是怎么引起的 降低有哪些方法

    是两条信号线之间的耦合、信号线之间的互感和互容引起线上的噪声。容性耦合引发耦合电流,而感性耦合引发耦合电压。PCB板层的参数、信号线间距、驱动端和接收端的电气特性及线端接方式对
    的头像 发表于 08-15 09:32 9829次阅读

    理解Crosstalk

    是两条信号线之间的耦合、信号线之间的互感和互容引起线上的噪声。容性耦合引发耦合电流,而感性耦合引发耦合电压。PCB板层的参数、信号线间距、驱动端和接收端的电气特性及线端接方式对
    的头像 发表于 09-14 09:49 2594次阅读
    理解<b class='flag-5'>串</b><b class='flag-5'>扰</b>Crosstalk

    使用电感降低噪声的注意点:、GND线反弹噪声

    这之前作为使用电感的降噪对策,介绍了电感和铁氧体磁珠、共模滤波器。本文将主要介绍PCB板布局相关的注意事项。是因电路板布线间的杂散电容和互感,
    的头像 发表于 02-15 16:12 1069次阅读
    使用电感降低<b class='flag-5'>噪声</b>的注意点:<b class='flag-5'>串</b><b class='flag-5'>扰</b>、GND线反弹<b class='flag-5'>噪声</b>

    S参数与知识的讲解

    ,是两条信号线之间的耦合产生的噪声干扰。因此分析的S参数就需要查看两条线的特性,即一个四端口网络,这时我们需要关注S31和S41
    的头像 发表于 05-05 17:29 2740次阅读
    S参数与<b class='flag-5'>串</b><b class='flag-5'>扰</b>知识的<b class='flag-5'>讲解</b>

    什么是?如何减少

    是 PCB 的走线之间产生的不需要的噪声 (电磁耦合)。
    的头像 发表于 05-22 09:54 3421次阅读
    什么是<b class='flag-5'>串</b><b class='flag-5'>扰</b>?如何减少<b class='flag-5'>串</b><b class='flag-5'>扰</b>?

    在PCB设计中,如何避免

    在PCB设计中,如何避免? 在PCB设计中,避免是至关重要的,因为可能导致信号失真、
    的头像 发表于 02-02 15:40 1340次阅读