数字后端处于数字IC设计流程的后端,属于数字IC设计类岗位的一种。在IC设计中,后端设计的人数占比算是比较多的,并且随着芯片行业的不断发展,后端工程师的人才需求未来会越来越多。

数字后端的目的

**数字前端设计:**在集成电路设计中,从Verilog/VHDL代码(RTL级)编写验证再通过综合( synthesis)转换成门级网表( gate netlist)的过程。

**数字后端设计(backend design):**门级网表的物理实现,即把门级网表转换成版图。

完整的后端设计由后端半定制与后端全定制两个设计部分组成:
1)后端全定制设计是指在设计初期最先按照设计需求设计出的物理单元库,物理单元库由标准单元库、IP库及满足特殊需求的定制部件单元等组成。该物理库为后续后端半定制设计提供物理实现基础。
2)后端半定制设计是指使用布局布线工具并基于后端全定制阶段完成的标准单元库及IP库并根据前端设计完成整个芯片的组装与实现,这个过程又称为数字后端设计(自动布局布线-APR)。
传统上将布局布线前的工作称之为数字前端(Front End)设计,而将布局布线之后的工作称为数字后端(Back End)设计。

布局的目的在于产生制作掩膜所需的GDSII文件;同时也产生布局后的网表文件(Netlist)及标准延迟文件(SDF)。

运用给定的输入,在给定的时间内做出符合signoff条件的PR结果并满足各种验证。

岗位技能

软件工具
数字后端主要以软件工具为主,主要掌握以下软件(以cadence, synopsys,mentor公司为主):
布局布线:Innovus/Encounter, ICC2/ICC
综合:DC, Genus
物理验证:Calibre
静态时序分析:PrimeTime, Tempus
功耗分析:Redhawk, Voltus,PTPX
每种平台需要你掌握的技能不大一样,通常每种平台下学会一种工具即可。一个初级工程师想全部掌握这些技能也很难,如果这些工具你都会使用,就相当厉害了。
掌握工具主要是为了应用,后端设计要学会如何使用工具分析功耗及其对设计的影响(static/dynamic IR-drop, EM等)。学会使用工具分析和解决cross talk问题。

脚本语言

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

其他技能

1、熟悉后端流程,(IO plan, floorplan, power flan, place, CTS, route);
2、精通时序分析;
3、理解后端常用库和文件的格式,内容,生成和转换,比如: .lib, spice, lef, def;
4、精通一种unix script语言,现在大多用perl,也可以用awk(TCL不是unix script语言,但是也一定要会);
5、十分了解circuit design及其工具 (为DRC/LVS准备的);
6、具备DFT的基本概念;
7、了解package design的种类和过程。

一个优秀的后端工程师要能够在复杂的结果中,识别出问题的真假,比如时序上的违反,找出解决问题或者防止问题发生的方法,然后灵活有效地使用工具来达到你的要求。

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

数字后端设计工程师要做什么?

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

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

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

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

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

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

(4)物理验证(PV)
物理验证也是tape out前的一项重要事项。如果物理验证有错,那芯片生产就会失败。在布局布线工具中,软件只能检查到金属层上的物理违反,而真正的物理验证需要检查到器件底层(base layer)。

因此,物理验证需要将金属层和底层金属合并到一起,进行全芯片的drc检查。同时,还需要做全芯片的LVS(版图与原理图一致性检查),ERC(电气规则检查)。确保芯片没有任何物理设计规则违反。

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

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

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

总而言之,数字IC后端设计在芯片设计的过程中是举足轻重的,每个岗位都有自己的特点,想要入行的朋友,一定要多学习,提升自己的能力,这样才能在工作不断提升能力,学习之路上,IC修真院与你同行。

数字IC后端需要学习什么?需要具备哪些技能?相关推荐

  1. 数字IC后端设计如何快速入门?(内附学习视频)

    虽然2022年IC行业门槛有所提高,但这也抵挡不住同学们对转行IC行业的热情,数字后端设计的发展前景和高薪也在众多岗位中脱颖而出,那么数字IC后端设计如何快速入门?下面IC修真院就带大家来了解一下. ...

  2. 数字IC后端实现40天速成篇(中)

    数字IC后端实现40天速成篇(中) 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 为了更好服务好大家,现把小编目前这边的主营业务向大家汇报下.其中对于设计 ...

  3. 如何才能成为数字IC后端ECO专家?

    如何才能成为数字IC后端ECO专家? 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 临近 618,这几天很多粉丝私信表达希望小编知识星球搞个优惠活动.但是 ...

  4. 社区数字IC后端终极课程即将上线

    社区数字IC后端终极课程即将上线 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 为了让大家能够更系统地学习实践数字 IC 后端领域的各种技能, 积累更多实 ...

  5. 数字IC后端实现40天速成篇(上)

    数字IC后端实现40天速成篇(上) 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 为了更好服务好大家,现把小编目前这边的主营业务向大家汇报下.其中对于设计 ...

  6. 数字IC后端设计实现流程之initial design

    数字IC后端设计实现流程之initial design 前端提供的文件 门级网表 (Gate Level Netlist) 数字前端工程师或者是 R2N 的同事在 release 东西给后端工程师做 ...

  7. 数字IC后端设计实现流程之floorplan及powerplan规划

    数字IC后端设计实现floorplan及powerplan规划 数字 IC 后端设计实现流程之 initial design 初始化 Initial 模块形状 估算完模块的面积后,block owne ...

  8. 数字IC后端设计技术全局观

    数字IC后端设计flow(不含DFT) 数字IC后端设计工具 DC:用于逻辑综合 FM:用于形式验证 ICC:用于物理实现 PrimeTime:用于STA 步骤(或文件类型)简述 RTL(Regist ...

  9. 数字IC后端物理实现流程1-环境建立

    数字IC后端物理实现 概述 实现工具 TYPICAL FLOW ENVIRONMENT SETUP 概述 本篇文章仅供入门参考和个人的一些浅薄见解,不做任何问题上的深入讲解,因为本人也是一名初学者. ...

最新文章

  1. 第一个简单的DEMO
  2. tar:文件打包归档
  3. oracle10g 开机自启动
  4. java 内存快照怎么看_jvm内存快照dump文件太大,怎么分析
  5. vue-cli@2的原理解析
  6. Java面试知识点:网络编程
  7. IOS开发-表视图LV3导航控制器
  8. 在myql sqlserver 快速找到带有关键字的表
  9. HTTPS 的五大误区,千万别理解错了!
  10. CB Insights,201608月174家独角兽榜单出炉,上榜的33家中国公司都是谁?
  11. Snipaste下载安装(使用教程)
  12. 最新elasticsearch版本与jdk版本对应图
  13. 母亲节,表格交给我们,你早点回家
  14. PSM+DID 效果评估python demo 、线性分类模型+双重差分法
  15. APP自动化测试-Appium编写脚本并执行
  16. 七、vertical-align属性、透明度属性及兼容、ps常用工具、常见的图片格式、项目规范、命名参考、iconfont的使用...
  17. JLink 警告:The connected J-Link is defective,Proper operation cannot be guaranteed.所遇到的坑
  18. 古代汉语 郭锡良版本 复习要点
  19. 血与荣耀(第四章-命令的镣铐)
  20. [小游戏] 微信小游戏开发源码_教程_工具_资源最新集合

热门文章

  1. 回路、简单回路、简单路径
  2. php 学习阶段行 个人小结
  3. contiki学习笔记(五)ctimer和etimer
  4. 自然语言处理方面的顶会
  5. 漏洞修复:Cookie Security: HTTPOnly not Set on Application Cookie
  6. python浪漫微信_教你用python做一个哄女友的微信自动回复机器人
  7. CH57X/CH58X系列BLE Mesh无线组网方案
  8. 1.488Mpps是如何计算出来的?
  9. 布尔-施罗德逻辑代数中的命题逻辑-- 布尔逻辑之七(尾篇**)
  10. 【“笨办法”学Python】27.记住逻辑关系——布尔逻辑表达式