- 博客(24)
- 收藏
- 关注
原创 工作常用的一些脚本处理办法
w 只匹配某个单词,而不是字符串的一部分,如只匹配magic而不匹配magical。-m 5,当匹配内容的行数达到5行后,grep停止搜索,并输出停止前搜索到的匹配内容。,其中$1代表第一列,$2代表第二列;使用>>的话,原文件中内容不会被覆盖,会在原文件内容基础上添加内容;第三个参数target,如果忽略则为$0,也就是本行内容;用于判断变量是否存在,如果存在返回1,不存在返回0;cat用于一次显示整个文件,zcat用于显示压缩文件;$0代表所有域,拆分后的数组为a,使用:进行分割;
2023-02-25 16:33:17
601
原创 Scan Reorder & Formal
在做综合时,DC可以吐出Scan DEF,其中包含scan chain的相关信息,ICC使用这个Scan DEF中提供的physical information,对scan chain做reordering以及timing 优化!Scan DEF中包含很多条scan chain,如下图所示上图中描述了一条scan chain,这条scan chain中包含START和STOP两个宏,用于描述scan chain的boundary,scan chain的boundary可以是:I/O ports, sca
2022-06-13 12:47:03
2506
2
原创 ETM and Abstract model
ETM & Abstract model由于目前的design越来越大,所以都倾向于hierarchy flow,走bottom-up的方式,也就是先从block开始做,然后再做sys level,最后做top level;我们做完block level后,然后去做sys level时需要提供 block model,而block model可以分为两类:1、ETM(Extracted timing model)2、Abstract model那么他们的区别是什么呢?首先看下图在ET
2022-05-30 11:38:51
1286
原创 clock相关
###SDCSpecifying the Clock Root Timing Characteristics在我们定义root clock后,需要描述root clock的timing 信息,主要分两种情况:1、clock root is an input port without an I/O pad cell这种情况下,root clock定义在非I/O pad cell的input port上,那么我们必须为这个input port定义driving cell;例如set_dr...
2022-05-17 11:40:21
776
原创 Power 分析
Power分析在综合时,我们需要做power分析,那么怎么保证综合阶段的power和做完place&route后的netlist的power一致呢?完整的power分析流程,如下图所示这个流程的特点是:1、Time-consuming,很耗费时间2、Multiple iterations,需要多次迭代3、High maintenance,耗费资源大4、Very accurate,很精确这个power分析,要从RTL到PR netlist,往往这需要很长的时间,这样分析power并不
2022-05-13 10:19:19
697
原创 综合相关设置
Register merging在做综合时,工具可以对register做merging操作,这样可以降低design的area,下面来看看工具是怎么做register merging的!能做register merging的register需要满足以下几个要求:1、register上不能有timing exception;2、register的clock,data输入一致;3、register的reset state一致;下面看register merging的具体操作,如下图可以发现,这里
2022-05-09 09:42:05
2058
原创 Double Pattern Technology & RC Corner
Double pattern technology什么是double pattern technology?首先要了解一下mask的概念,什么是mask?Maskmask就是掩模,掩模上承载了wire的设计图形,光线透过它,把设计图形投射在metal上的光刻胶上,这样metal上就形成了wire;通常情况下,一层metal只需要一张mask;但是在20nm以下的工艺中,如果只使用一张mask,并且mask上相邻的metal wire之间的间距过小,使得相邻的光线间距过小****(最小间距),光线
2022-04-29 13:03:46
5129
原创 DC Scenario
Scenario在我们使用DC时,需要使用命令create_scenario创建scenario,可以是一个,也可以是多个,目前的芯片往往工作在多种模式下,所以多个scenario是常用的场景。Scenario由mode和corner组成,下面是mode和corner的定义。CornerA corner is defined as a set of libraries characterized for process, voltage and temperature (PVT) variation
2022-04-29 09:53:14
1036
原创 CRPR的几种影响
CRPRCRPR是clock reconvergence pessimism removal的缩写,指的是clock path的common部分所造成的影响,在计算timing时,需要考虑到CRPR的影响;具体CRPR会影响到哪些方面,首先看下图CRPR & SI在计算SETUP和HOLD时,在后期route后,需要考虑SI的影响,而我们在计算SI时,需要考虑到victim和aggressor;在计算setup时,launch edge和capture edge是相邻的两个上升沿,而工具
2022-04-23 16:03:07
4118
原创 Clock Gating cell 与 Integrated Clock Gating cell(ICG)
一、ICG消除毛刺原理Clock gating cell 可以由与门或者或门构成,但是使用这两者会产生Glitch,因此目前都采用ICG(Integrated clock gating cell),其结构如下ICG由一个latch(低电平有效)和一个与门(gating cell,也可以是或门)组成。ICG 可以过滤掉en信号中的毛刺信号,其原理如下:对于毛刺信号Glitch,大概可以分为两...
2019-10-31 15:18:45
22710
原创 Input path delay specifications with setup and hold time
一般情况下,Input端往往会设置两个delay,分别是Max input delay和Min input delay,他俩与setup和hold的关系很密切。其中,max delay对应Set_up Check的分析,Min delay则对应Hold Check,为啥,下面给出解释。首先看图图中分别给出了input的max delay和min delay(暂时忽略Tc2),分别为MAX D...
2019-09-06 09:04:15
970
原创 Hold time 个人理解
Hold Time理解Hold Time相比Setup Time而言稍微难理解一点,下面给出了我的理解。下面图中包括两个DFF,一个launch flip-flop(launch the data,UFF0),一个capture flip-flop(capture the data,UFF1),图中两个flip-flop的clock一致,当然,相对于CLKM(source clk)包含一定的d...
2019-09-05 14:38:45
3829
原创 同步置数、同步清零的计数器
本文实现的同步置数、同步清零的计数器,同样是基于王先生的书籍上的源代码实现。下面是计数器的源代码(暂时以图片的形式发出来):这个源代码被我修改了一部分,省去了原来的else语句,直接在load低电平时对输出out赋值,可以得到相同的结果,简化了程序。接下来时测试程序(同样以图片的形式上传): 这是书籍中没有的测试文件,为了学习verilog,必须学会验证文件的编写,其实也就是激励源...
2018-12-27 19:12:33
19794
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人