首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客36555359号
湖南理工学院 数字IC后端设计
发布于上海
关注
已关注
取消关注
@IC修真院:
IC小白看过来!数字后端设计高频名词,持续更新中......
🙋♂️数字后端设计高频名词 📝 持续更新中...... 📌 名词 🗒 诠释 纳米级设计 在半导体器件中,常使用金属互连线来连接电路中的不同部分,从而实现设计。随着工艺技术的发展,这些互连线逐渐开始影 响设计的性能。对于深亚微米或者纳米级别的工艺技术,互连线间的耦合效应会带来噪声串扰,而这两者都会限制设计的运行速度。虽然声串扰带来的影响在老一代的工艺技术下是可以忽略不计的,但在如今纳米级别下已经不容忽视了。因此不论是物理设计还是设计验证都应考虑到噪声和串扰的影响。 静态时序分析(STA) STA被称为静态的原因是其对于设计的分析是静态地执行的,并不依赖于施加在输入端口上的激励。 为何使用静态时序分析? STA是一种可以验证设计中所有时序要求的详尽方法,而其他时序分析方法例如时序仿真则只能验证到被当前激励执行到的那 部分时序路径。基于时序仿真的验证完备性取决于施加激励的完备性。如果使用时序仿真来验证一个千万门级别的设计,速度将会 非常慢,并且实际上也无法充分验证。因此,想要基于时序仿真的方法来进行详尽的时序验证是非常困难的。相比之下,STA则提供了一种更快更简单的方法去分析并检查设计中的全部时序路径。鉴于如今的ASIC设计规模已达千万门级 别,STA已经成为了详尽地验证设计时序的必要方法。 PT:prime time 是一个静态时序分析工具。 单元(standard cell) 片中的大多数复杂功能通常是使用基本构建块(basic building block)来设计的,这些基本构建块实现了简单的逻辑功能,例如与、或、与非、或非、或与非,与或非以及触发器(flip-flop)。这些基本构建块是预先设计的,称为标准单元(standard cell)。 sta分析步骤: 1.设计被分解成若干时序路径; 2.计算每条路径的延时; 3.路径上的延时是否满足时序约束。 timing path的种类 In2reg reg2reg reg2out in2out path delay path delay=cell delay+net delay Cell delay =f(input ransition+outputload) Net delay=f(Rnet,Cnet+Cpin) 线负载模型(wireload models) 行布局规划(floorplanning)或布局(layout)之前,可以使用线负载模型(wireload models)来估计由互连线带来的电容、电阻以及面积开销。线负载模型可用于根据扇出数量来估计网络的长度,线负载模型取决于(block)的面积,具有不同面 积的设计可以选择不同的线负载模型。线负载模型还可以将网络的估计长度映射(map)为电阻、电容以及由于布线而产生的相应面积开销。 setup time 触发器的上升沿信号到来之前,数据稳定不变的最小时间。 Hold time 触发器的上升沿信号到来之后数据稳定不变的最小时间。 PT阶段需要读入和导出的文件 FANOUT 输出端口所挂input pin的数目。 transition time 信号从1跳为0或者从0跳为1的时间。 noise 信号在传输过程中,会有高低电平的跳动,相邻信号之间可能会产生干扰,将这种干扰称为noise。 sdc 设计中的一个重要文件,主要对电路时序进行约束,决定芯片是否满足设计要求。包括时钟sdc,边界sdc等等。 子时钟 能定义分频,倍频,反转的钟,波形。 lib 全称liberty library format(以• lib结尾),用于描述物理单元的时序和功耗信息的重要库文件。lib库是最基本的时序库,通常文件很大,分为两个部分,第一部分定义了物理单元库的基本属性,它包括: 1)单元库名称,文件版本,产生日期及单元的PVT环境等; 2)定义电压,电流,电容,时间等基本单位; 3) 定义电路传输时间和信号转换时间的电压百分比; 第二部分是每个单元的具体信息,包括单元的延迟时间,泄漏功耗,内部功耗等。 Timing arc 主要分为定义时序延迟,和定义时序检查两种。 Timing Constraint 按照它们的用途,大致分为以下几类: (1)描述芯片的工作速度,即时钟的频率,包括create_clock,create_generated_clock等 (2)描述芯片的边界约束,包括set_input_delay,set_output_delay等; (3)描述芯片的一些设计违反rule(DRV),包括set_max_fanout,set_max_capacitance, set_max_transition等; (4)描述设计中一些特殊的路径,包括set_false_path,set_multicycle_path等; (5)描述设计中一些需要禁止的timing arc,例如set_disable_timing。 边界约束 STA并不能去检查一条没有被约束的路径,因此所有的端口上路径都必须被赋予边界约束。 set_input_delay:输入信号是在时钟沿后多长时间到达模块的port上的set_input_delay 和set_output_delay都是对外部的延时信息的描述。set_output_delay:输出信号在后级模块中需要在时钟沿之前提前多长时间准备好。 系统接口sdc 包括set_drive, set_driving_cell, set_input_transition, set_load这四条命令,都是和端口上的驱动负载有关。 set_drive:设置输入端口或者双向端口的电阻值,主要是为了更加精确的估计输入电路的延迟,需要知道信号到达输入端口的transition time,set drive使用一个确定的值来估计输入端的输入电阻,从而得到输入端口的延迟,该值越小,驱动能力越强。 set_driving_cell:这个约束其实跟set_drive实现的是同一个功能,指使用设计库中的某一个单元来驱动输入端口,然后按照该单元的输入电阻来计算tranition time,从而得到输入端口的延迟。 通常要比set_drive使用更多,一般用在block level上, 因为会考虑OCV等因素,会更加准确一点。 set_input_transition 设定输入端口的transition time,一般用于chip io pad约束,因为Pad上电压都比较高,对应的capacitance和transition也比较大,没法用driving cell. set_load:设置输出电路的负载。由于外部电路的负载将会影响到接到端口上单元的延迟,因此需要对端口的带负载能力做限制。为了比较精确地计算出输出电路的延迟,需要知道输出电路的所有负载。电路负载电容越大,延迟时间越大。 时序特例 针对一些路径需要的一些特殊设定,常用的有 set_false_path, set_multicycle_path, set_max_delay, set_min_delay等 set_false_path: false path是指在正常工作环境下,并不真实存在或者经过的路径,比如说一些静态输入信号产生的path。像这样的path,可以指定set_false_path。这样工具在计算timing时就不会去分析它。值得注意的是,设定false path时一定要非常小心,一定要和designer仔细确认下,不要把正常的path给误伤掉。 set_multicycle_path: 指的是两个寄存器之间数据要经过多个时钟才能稳定的路径,一般出现于组合逻辑较大的那些路径,也有可能是一些慢时钟去踩快时钟的路径。对于这些路径,可以设置multicycle path。同样的,设置multicycle path时,也需要非常谨慎,需要和前端沟通好,该条path要设几个cycle, -start还是-end也要理解清楚,而且默认的hold的multicycle比setup少一个。 set_max_delay: 指定某段path的最大延迟,超过就是violation。用于某set_min_delay: 指定某段path的最小延迟,小于该值就是violation。用于某些特定的path,限定该path至少应该走这么长delay. SDC 主要包括set_max_capacitance,set_min_capacitance,set_max_fanout,set_max_transition。一般情况下lib库里面会有这些约束,但是往往为了时序更好,会在sdc里面更加严格的去约束它。 set_max_capacitance,set_min_capacitance:设定了某一端口所连互连线的最大和最小负载电容,负载电容是互连线自身电容和扇出电容之和。 set_max_fanout:约束了某条net上驱动的所有cell的个数的总和,而这条net可以由input port驱动,也可以使内部的任何一条net。需要注意的是,max fanout并不是用来约束output port的,因为一个输出端口可能会连有很多条net。 set_max_transition: 设定端口信号的最大转换时间,需要注意区分data transition time和clock transition time,一般clock的transition time要小一点。 设计规则相关的sdc 也就是drv. 主要包括set_max_capacitance,set_min_capacitance,set_max_fanout,set_max_transition。一般情况下lib库里面会有这些约束,但是往往为了时序更好,会在sdc里面更加严格的去约束它。 set_max_capacitance,set_min_capacitance:设定了某一端口所连互连线的最大和最小负载电容,负载电容是互连线自身电容和扇出电容之和。 set_max_fanout:约束了某条net上驱动的所有cell的个数的总和,而这条net可以由input port驱动,也可以使内部的任何一条net。需要注意的是,max fanout并不是用来约束output port的,因为一个输出端口可能会连有很多条net。 set_max_transition: 设定端口信号的最大转换时间,需要注意区分data transition time和clock transition time,一般clock的transition time要小一点。 setup检查 是为了检查数据传输不能太慢,否则,在目的寄存器的capture edge不能正确的锁存数据。因此数据传输所用的时间Arrival Time就必须要求在Require Time内传输到目的寄存器,因此slack(松弛时间)=Require time- Arrival time。 hold time(保持时间) 检查的是数据不能传输太快,太快会影响前一次数据的锁存。因为是检查数据传输得不能太快,所以对于hold来,Arrival time就应该比Require time要长。 min path early path,就是先到的path,延迟较低。用于hold分析,通常也叫作min path。 max path late path到的path,延迟较高。用于setup分析,通常也叫作max path Timing derate 为时序增减因子。不同点的温度,金属不均匀,串扰,晶体管沟道长度等影响因素,导致片上各个位置单元延迟不一样。因此,需要一个缩放因子来让设计更加严格。 CPPR 全称Clock Path Pessimism Removal(Clock Reconvergence Pessimism Removal),中文名“共同路径悲观去除”。它的作用是去除clock path上的相同路径上的悲观计算量。 转换时间transition time 电压从10%VDD上升到90%VDD所需要的时间,或者是从90%VDD下降到10%VDD所需要的时间,当然也可以是20%VDD上升到80%VDD的时间,具体要看timing lib库里面的Latency, 时钟传播延迟。主要指从Clock源到时序组件Clock输入端的延迟时间。它可以分为两个部分:时钟源插入延迟(source latency)和时钟网络延迟(network latency) source latency 也被称为insertion delay。主要指从clock source端到clock定义端的延迟,即是时钟源(例如PLL)到当前芯片时钟根节点(clock root pin)之间的延迟。 network latency:主要指从clock定义端到时序器件的clock pin端的延迟。由于时钟到每个寄存器的路径延迟不一样,造成信号到达 clock pin 的时间也不一样,把时钟信号到达不同寄存器的时间偏差称为skew。 uncertainty 简称时钟不确定性。主要用来定义Clock信号到时序器件的Clock端可能早到或晚到的时间,降低了时钟抖动jitter对有效时钟周期的影响。 大家看完记得点赞、评论、收藏一键三连!多多支持[加油]
点赞 7
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-30 11:43
上海交通大学 运营
理想班车开始收费了,每月上班又多花200多
在北京上班的牛友都知道,理想在遥远的顺义区,在主要的地铁口有班车给大家送到公司,没想到这么快就开始收费了,来回10块,不亏是羊毛出在羊身上😂据说如果班车堵车,算员工迟到😱
投递理想汽车等公司8个岗位
点赞
评论
收藏
分享
07-30 11:05
长安大学 产品经理
去魅。去魅,对大厂狠狠去魅!
在北京某大厂实习了两个月,真的,每天都感觉好痛苦。实在不知道跟谁说,就跑这儿来念叨念叨吧。公司是传媒类的,我做的算是账号和内容运营这块儿。干过才知道,这活儿吧,说不上多“脏”,但也绝对没多有意思。最大的感受就是:这行真像在做巧克力流水线! 把别人的视频咔咔一顿剪,打上码,换个标题文案,嘿,就成了“我们的”内容了。以前刷微博还挺喜欢某些大V的,现在知道了,背后其实是一茬茬的实习生轮着班在运营。那些你以为很用心、有深度的博主,皮下可能也就是个实习生。在部门眼里,这些账号就是生意。稍微做点女性相关或者稍微尖锐点的内容,立马被毙,生怕“引起争议”,真的束手束脚。实习生在这儿就跟消耗品似的,今天这个走了...
牛客73617529...:
让我去,我告诉你什么是骆驼祥子在世!
我对___祛魅了
点赞
评论
收藏
分享
07-07 12:47
门头沟学院 Java
好绝望,
轻度地贫被卡入职,25届应该这么办
码农索隆:
竟然还真有卡体检报告的
点赞
评论
收藏
分享
07-30 11:52
门头沟学院 Java
美团正式批开了
美团暑期实习没投递成功,这次正式批的北斗计划总该有我的一部分了吧!
求职的纳鲁多:
大佬投我就不投了,毕竟王不见王,避你锋芒
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
都是 dirty work,为什么别人的简历上就能言之有物🤔
2.7W
2
...
【07.29更新】能救一个是一个!26届毁意向毁约裁员黑名单
4659
3
...
虾皮后端一面(已挂)
3645
4
...
干活最少的实习生因为长得漂亮转正了
3453
5
...
26滴滴秋招提前批Java一面
3240
6
...
最近是各位大佬离职回去准备秋招了嘛,鼠鼠最近投的实习居然都有回应了,基本上当天投的两天之内都能有回应,要是秋招能有这样就太好了呜呜,简单记录一下吧。7月23日:快手-平台消费(一面)1.实习介绍(干了
3134
7
...
7.30百度提前批一面
3021
8
...
QQ提前批一面凉经
2922
9
...
令人心动的offer!!!
2743
10
...
27双非百度offer timeline
2502
创作者周榜
更多
正在热议
更多
#
你遇到最难的面试题目是_
#
10778次浏览
131人参与
#
分享一个让你热爱工作的瞬间
#
32623次浏览
341人参与
#
中兴秋招
#
199863次浏览
2239人参与
#
工作中哪个瞬间让你想离职
#
55468次浏览
493人参与
#
工作压力大怎么缓解
#
94339次浏览
997人参与
#
你最讨厌面试问你什么?
#
19432次浏览
222人参与
#
26届的你,投了哪些公司?
#
27748次浏览
318人参与
#
多益网络求职进展汇总
#
31760次浏览
141人参与
#
我对___祛魅了
#
36328次浏览
339人参与
#
简历上的经历如何包装
#
16506次浏览
572人参与
#
你跟室友的关系怎么样?
#
4951次浏览
79人参与
#
第一份工作应该只看薪资吗
#
159045次浏览
1565人参与
#
如何快速融入团队?
#
13073次浏览
154人参与
#
和同事相处最忌讳的是__
#
17876次浏览
178人参与
#
leader认为你工作不认真怎么办
#
35016次浏览
163人参与
#
什么样的背景能拿SSP?
#
21828次浏览
151人参与
#
机械人的金三校招总结
#
35907次浏览
461人参与
#
饿了么求职进展汇总
#
64361次浏览
636人参与
#
打工人的精神状态
#
69283次浏览
1121人参与
#
我心目中的理想工作是这样的
#
72395次浏览
847人参与
#
百度秋招提前批进度
#
118187次浏览
1392人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务