wildgoat的个人空间 https://blog.eetop.cn/wildgoat [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

[ZZ]做数字后端设计是一种什么样的体验?

热度 2已有 8353 次阅读| 2020-11-3 20:30 |个人分类:Digital|系统分类:芯片设计| 数字后端

数字后端,顾名思义,它处于数字IC设计流程的后端,属于数字IC设计类岗位的一种。在IC设计中,数字后端所占的人数比重一直是最多的,而且随着芯片规模不断加大,后端工程师需要的人数将会越来越多。

一般来说,数字后端按岗位类别可以分为:逻辑综合,布局布线physical design,静态时序分析(STA),功耗分析Power analysis,物理验证physical verification等岗位。人才的需求量进一步加大,这也是现阶段数字后端工程师招聘量巨大的原因。

1、数字后端设计工程师主要干什么?

逻辑综合(Synthesis)

主要负责将RTL code转换为实际后端使用的netlist网表, 一个好的网表对布局布线的工作起到决定性作用。要尽可能做到performance, power, area的优化。尤其是现如今的一些要求高性能的设计,对综合的要求非常高。

综合质量很大一定程度上取决于综合软件的性能,业界流行的两个综合工具是Synopsys的Design Compiler和Cadence的Genus,熟练的掌握两个工具的使用方法是综合工作的一个基本条件。

布局布线(PD)

布局布线是数字后端中占比最大的工作,主要负责netlist到GDSII的转化过程,步骤包括Floorplan,Place,CTS,Optimize,Route,ECO等,确保自己负责的模块满足时序还有物理制造的要求。同时,需要协同其他工程师,及时提供他们需要的文件,比如def, spef,网表等。是数字后端中最核心的工作。

布局布线对工具的依赖程度较强,而且工具操作相对来说较为复杂。业界较为常用的是cadence的Innovus软件和Synopsys的ICC,掌握这两大工具的使用需要花费一定的时间。

静态时序分析(STA)

静态时序分析简称为STA,时序验证分析是数字后端中的重要一块内容,芯片需要满足各种corner下面的setup,hold时序要求以及其他的transition, capacitance, noise等要求。STA需要制定整个芯片的sdc约束文件,选择芯片需要signoff的corner以及全芯片的timing eco流程。是一份难度要求很高的工作。

静态时序分析通常通常需要掌握Synopsys的primetime以及cadence的tempus两大软件的使用方法。

物理验证(PV)

物理验证也是tape out前的一项重要事项。如果物理验证有错,那芯片生产就会失败。在布局布线工具中,软件只能检查到金属层上的物理违反,而真正的物理验证需要检查到器件底层(base layer).因此,物理验证需要将金属层和底层金属合并到一起,进行全芯片的drc检查。同时,还需要做全芯片的LVS(版图与原理图一致性检查),ERC(电气规则检查)。确保芯片没有任何物理设计规则违反。

物理验证一般在mentor公司的calibre中进行,是业界标准的物理验证工具。

功耗分析(PA)

功耗分析也是芯片signoff的重要一大块,随着现在芯片的规模越来越大,功耗在芯片的中的地位也越来越高。功耗分析的两大任务是分析IR drop(电压降)和EM(电迁移)。及时将结果反馈给布局布线任务组,让他们及时修改后端设计图,解决设计中潜在的问题。

一般功耗分析使用的工具有Ansys公司的redhawk,以及cadence公司的voltus和synopsys公司的ptpx。

2、主要和谁打交道?

数字后端工程师通常都是以一个项目组作为一个团队,前面说的这些任务都会分为不同的角色。通常,一个项目中会有一名顶层工程师,一名STA工程师,一名功耗分析工程师,一名物理验证工程师以及若干名模块工程师,这些工程师需要相互合作,共同完成全芯片的RTL到GDSII的过程,同时确保没有时序以及物理验证上的违例。

数字后端工程师还需要经常与前端工程师打交道,确保网表的功能正确以及sdc的正确制定,及时将后仿文件交付给前端,让前端工程师能尽快通过仿真发现潜在的设计问题。

DFT工程师也是我们经常与要交流的,因为测试逻辑设计在现在的芯片中的比重越来越大,后端工程师需要与DFT工程师确认好测试SDC的制定,扫描链scan chain的物理走向等任务。

3、需要掌握的技能和条件。

        

数字后端主要以软件工具为主,需主要掌握以下软件(以cadence, synopsys,mentor公司为主)

布局布线:Innovus/Encounter, ICC2/ICC

综合:DC, Genus

物理验证:Calibre

静态时序分析:PrimeTime, Tempus

功耗分析:Redhawk, Voltus,PTPX

每种平台需要你掌握的技能不大一样,通常学会每种平台下学会一种工具即可。一个初级工程师想全部掌握这些技能也很难,如果这些工具你都会使用,就变成老司机了。

        

由于数字后端工程师需要跑一些自动化的任务,所以掌握必要的脚本语言也是必须的,比如掌握下面知识就显得比较重要:

          Verilog

          TCL

          Perl

          Python

         

所有的技术类岗位,主要看的两点就是:专业技能(skills)和项目经验(experience)所以除了上面列的这些技能,你能实际做过一两个项目,哪怕是一些小模块的后端设计,也是很重要的,尤其是做项目过程中积攒的debug经验。

如果你是在校学生,学校里实践数字后端的机会较少,所以基本上你只要简单懂一点流程以及时序方面的内容,可能就可以找到数字后端工程师的职位了。现在在校学生通过各种渠道(比如E课网www.eecourse.com),很多同学都掌握了上面的这些技能,甚至积累了一两个项目经验。会的人多了,招聘的要求也自然高一些了。

       

现阶段,数字后端工程师主要还是以招聘研究生为主,本科生招得很少。不过好消息是对专业的要求并不是很苛刻,并非集成电路方向不可,只要你掌握了上面的这些技能,哪怕不相关专业,比如材料、物理、自动化、机械等专业,也是可以成功应聘。

         

学历本科的同学也不要气馁,有工作经验的本科生,还是可以找到数字后端工程师的职位的,而且有很多成功的例子的。毕业学校一般的同学也不要气馁,985高校毕业,肯定是有优势的,但毕竟每年毕业生不多,在现在IC行业整体缺人的大背景下,依然会招收学校排名一般的学生的;当然前提还是一样,专业技能(skills)和项目经验(experience)。

后端设计分为5个步骤,要做的事情是非常多的,因此招人也非常多,大公司里,5个步骤每个都是有专人负责的。后端设计工程师需要掌握的东西会比较多,但是不要求每一项都很精通,是一个非常不错的选择~

后端和前端一样,也是一个很早就出现的非常重要的岗位。虽然由于工作性质,它对代码的要求相对来说没前端那么高,但是各种EDA工具的使用、掌握多门脚本语言、分析报告、修错误都是其核心技能。

因此,数字后端和前端相比,并不存在谁好谁坏的问题,待遇和发展空间都是大致相同的。大家根据自己的技能基础和个人意愿去选择就好~

看到这里,你是否又对数字后端工程师有了比较深刻的了解了呢?零基础的你该如何入行,找到数字后端设计的工作呢?

From:https://mp.weixin.qq.com/s/H7H6rjvr6dMOr_wgt1zYkA

2

点赞

刚表态过的朋友 (2 人)

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 122

    粉丝
  • 42

    好友
  • 272

    获赞
  • 118

    评论
  • 22101

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-20 06:58 , Processed in 0.016047 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部