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

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

日志

[ZZ]数字集成电路设计流程及工具

热度 9已有 2952 次阅读| 2022-3-6 00:12 |个人分类:Digital|系统分类:芯片设计| EDA

设计一款芯片常用的流程分为项目策划、总体设计、前端设计、后端设计。每个阶段都是考验IC设计从业者的理论、技术、经验以及想象力的过程。这里不在赘述各阶段的细节,直接上图:


图片

前端计和后端设计是芯片设计的实施过程, EDA工具也随之正式登场。


前端设计-从RTL代码到门级网表之路


按照一般意义上的定义,前端设计是从RTL到门级网表的过程。以下一张图总结了前端设计的基本流程以及常用的几款工具。


图片


1. RTL

前端设计之前有一个非常重要的阶段,即总体设计阶段。总体设计并非一般工程师所能为,一般是大牛级的架构师兼算法工程师,设计芯片架构,并使用C或Matlab设计算法做原型开发。经过原型验证以及其他条件考量后,把工作交给了前端设计工程师,将算法翻译成RTL(寄存器传输级)代码。貌似简单翻译的工作,实则并不简单,除了翻译有时还要考虑DFT(可测性设计:芯片内部往往都自带测试电路,DFT的目的就是在设计的时候就考虑将来的测试)。常使用的硬件描述语言有VHDL,Verilog。DFT常用工具有Synopsys的DFT Compiler,Mentor的Tessent。


2. 仿真验证

这一步常常被叫做RTL级行为仿真或功能仿真,用来检验RTL编码的正确性。根据项目情况,其复杂度有非常大的差异。有些甚至可能用得到各种验证方法学,如UVM、VMM、OVM等。验证结果不符合规格要求的,就需要重新修改设计和编码。设计和仿真验证是反复迭代的过程,直到验证结果显示完全符合规格标准。


仿真验证工具:Mentor公司的Modelsim,Synopsys的VCS/VSS,还有Cadence的NC-verilog,Verilog-XL均可以对RTL级的代码进行设计验证。值得一提的是有些芯片还会采用FPGA,进行硬件在线仿真。


3.  逻辑综合、综合后仿真、静态时序分析

逻辑综合是把RTL代码翻译成门级网表Netlist。综合需要设定约束条件,就是希望综合出来的电路在面积、时序等目标参数上达到的标准。综合时需要基于特定工艺的标准单元库(standard cell),也就说综合前一个非常重要条件就是已经选择好工艺,一般在整体规划中就要考虑工艺问题。选用不同的标准单元库,综合出来的电路在时序、面积上会有所差异。一般来说,综合完成后需要再次做仿真验证(综合后仿真)。


Static Timing Analysis(STA),静态时序分析主要是在时序上对电路进行验证,检查电路是否存在建立时间和保持时间的违例。


逻辑综合工具Synopsys的Design Compiler,仿真工具选择上面的三种仿真工具均可。STA工具有Synopsys的Prime Time,Cadence 的Tempus。


综合和STA工具都是约束驱动型软件,软件在使用时都是靠约束文件来进行驱动的。所以工作的主要内容除了软件的使用外最重要的就在于如何编写约束文件。约束条件常用TCL脚本语言来写。


图片


4. 形式验证

从功能上对综合后的网表进行验证。常用的就是等价性检查方法,以功能验证后的HDL设计为参考,对比综合后的网表功能,他们是否在功能上存在等价性。形式验证工具有Synopsys的Formality。


后端设计-从门级网表到GDSII


后端设计工程师又称为版图工程师,他们的工作往往从布局布线开始。以下为后端设计的基本流程以及常用的几款工具。


图片


1. 自动布局布线(ARP)

自动布局布线包括布图规划(FloorPlan)、布局(Placement)、时钟树综合、布线(Routing)、DFM(Design For Manufacturing)。


布图规划、布局、布线相对好理解。布图规划是在总体上确定各种功能电路的摆放位置,如IP模块,RAM,I/O引脚等等;布局是按照一定的约束条件布置标准单元;布线是将芯片内的模块、标准单元和I/O pad按逻辑关系进行互连。


时钟树综合可以称为时钟的布线。由于时钟信号在数字芯片的全局指挥作用,它的分布应该是对称式的连到各个寄存器单元,从而使时钟从同一个时钟源到达各个寄存器时,时钟延迟差异最小。


DFM(可制造性设计)在整个布局布线流程以后开始,主要目的是通过一些技术处理防止芯片在物理制造过程中出现问题从而提高芯片制造的良率。布局布线常用工具有Synopsys的IC Compiler (Astro的升级版), Cadence的Innovus (Encounter的升级版)。


图片


2. 寄生参数提取

由于导线本身存在的电阻,相邻导线之间的互感,耦合电容在芯片内部会产生信号噪声,串扰和反射。这些效应会产生信号完整性问题,导致信号电压波动和变化,如果严重就会导致信号失真错误。提取寄生参数进行再次的分析验证,分析信号完整性问题是非常重要的。工具有Synopsys的Star-RCXT,Mentor的Calibre。


3. 版图物理验证

对完成布线的物理版图进行功能和时序上的验证,验证项目很多,如DRC(Design Rule Checking):设计规则检查,检查连线间距,连线宽度等是否满足工艺要求;LVS(Layout Vs Schematic)验证,为了检查版图文件功能与原有电路设计功能的一致性等。常用工具为Synopsys的Hercules,Mentor的Calibre,Cadence的 Dracula。


后端设计中需要反复的进行形式验证及必要的时序仿真。后端设计完成后,下面就是芯片制造了。物理版图以GDSII的文件格式交给芯片代工厂,在晶圆硅片上做出实际的电路,再进行封装和测试,就得到了我们实际看见的芯片。

from: https://mp.weixin.qq.com/s/jCf7g9fA3fBVCeTaUseaEg

9

点赞

刚表态过的朋友 (9 人)

评论 (0 个评论)

facelist

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

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

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 122

    粉丝
  • 42

    好友
  • 272

    获赞
  • 118

    评论
  • 22101

    访问数
关闭

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

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

GMT+8, 2024-4-20 15:47 , Processed in 0.020444 second(s), 8 queries , Gzip On, Redis On.

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