当前位置: 首页 > news >正文

【无标题】数字ic设计|ic芯片设计全流程

前端设计的主要流程:
大家也可以下载原文件:数字设计ic芯片流程
1、 规格制定

芯片规格: 芯片需要达到的具体功能和性能方面的要求

2、 详细设计

就是根据规格要求,实施具体架构,划分模块功能。

3、 HDL 编码

使用硬件描述语言(vhdl Verilog hdl )将功能以代码的形式描述实现。换句话也就是说将实际的硬件电路功能通过HDL 语言描述起来,形成 RTL 代码(使用cadence 软件)

4、 仿真验证

仿真验证就是检验编码设计的正确性,仿真验证工具 Mentor 公司的Modelsim,Synopsys 的VCS,还有Cadence 的NC-Verilog 均可以对 RTL 级的代码进行设计验证?(使用 Cadence 或 Modelsim 或Synopsys 的VCS 等软件)

5、 STA

Static Timing Analysis(STA),静态时序分析,属于验证范畴,它主要是在时序上对电路进行验证,检查电路是否存在建立时间

(setup time)和保持时间(hold time)的违例(violation)。一个寄存器出现这两个时序违例时,是没有办法正确采样数据和输出数据的, 所以以寄存器为基础的数字芯片功能肯定会出现问题。

(Synopsys 的Prime Time)

6、 形式验证

是验证范畴,它是从功能上(STA 是时序上)对综合后的网表进行验证。常用的就是等价性检查方法,以功能验证后的 HDL 设计为参考,对比综合后的网表功能,他们是否在功能上存在等价性。这样做是为了保证在逻辑综合过程中没有改变原先HDL 描述的电路功能。

(形式验证工具有Synopsys 的Formality)

从设计程度上来讲,前端设计的结果就是得到了芯片的门级网表电路

Backend design flow 后端设计流程:

1、DFT

Design ForTest,可测性设计。芯片内部往往都自带测试电路, DFT 的目的就是在设计的时候就考虑将来的测试。DFT 的常见方法就是,在设计中插入扫描链,将非扫描单元(如寄存器)变为扫描单元。关于DFT,有些书上有详细介绍,对照图片就好理解一点。(DFT 工具Synopsys 的DFT Compiler)

2、布局规划(FloorPlan)

布局规划就是放置芯片的宏单元模块,在总体上确定各种功能电路的摆放位置,如IP 模块,RAM,I/O 引脚等等。布局规划能直接影响芯片最终的面积。(工具为Synopsys 的Astro)

3、CTS

Clock Tree Synthesis,时钟综合,简单点说就是时钟的布线。由于时钟信号在数字芯片的全局指挥作用,它的分布应该是对称式的 连到各个寄存器单元,从而使时钟从同一个时钟源到达各个寄存器时, 时钟延迟差异最小。这也是为什么时钟信号需要单独布线的原因。CTS 工具,(Synopsys 的Physical Compiler)

4、布线(Place & Route)

这里的布线是指普通信号布线了,包括各种标准单元(基本逻辑门电路)之间的走线。比如我们平常听到的 0.13um 工艺,或者说 90nm 工艺,实际上就是这里金属布线可以达到的最小宽度,从微观上看就是MOS 管的沟道长度。(工具Synopsys 的Astro)

5、寄生参数提取

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

(工具Synopsys 的Star-RCXT)

6、版图物理验证

对完成布线的物理版图进行功能和时序上的验证,验证项目很多, 如LVS(Layout Vs Schematic)验证,简单说,就是版图与逻辑综合后的门级电路图的对比验证;DRC(Design Rule Checking):设 计规则检查,检查连线间距,连线宽度等是否满足工艺要求,ERC(Electrical Rule Checking):电气规则检查,检查短路和开路等

电气规则违例;等等。工具为 Synopsys 的Hercules 实际的后端流程还包括电路功耗分析,以及随着制造工艺不断进步产生的DFM(可制造性设计)问题。物理版图验证完成也就是整个芯片设计阶段完成。

7、物理版图以 GDSII 的文件格式交给芯片代工厂(称为 Foundry) 在晶圆硅片上做出实际的电路,

8、再进行封装和测试。

注释:

(1)VCS 是编译型 Verilog 模拟器 简称 VCS.

(2) Design Compiler 为 Synopsys 公司逻辑合成工具,简称 DC

(3) IC Compiler 是 Synopsys 新一代布局布线系统(Astro 是前一代布局布线系统).简称 ICC

(4) PrimeTime 是针对复杂、百万门芯片进行全芯片、门级静态时序分析的工具。简称 PT.

(5) HerculesTM 可以进行层次化的物理层验证,以确保版图与芯片的一致性

(6) Star-RCXT 是电子设计自动化(EDA)领域内寄生参数提取解决方案的黄金标准

(7) Synopsys 的 LEDA 是一种可编程代码设计规则检查器,它提供全芯片级混合语言(Verilog 和 VHDL)处理能力,从而加快了复杂的 SOC 设计的开发

(8) Formality 是一种等效性检测工具,采用形式验证的技术来判断一个设计的两个版本在功能上是否等效,简称 FM.

DRC 要验证的对象是版图, 我们的版图一般是通过两种方法得到的。一种是用virtuoso 等版图编辑工具手工绘制。这在模拟设计中较为普遍。另一种是用 Cadence 的 SE 等自动布局布线工具(APR)由网表文件自动产生。

相关文章:

  • Stable Diffusion搭建全过程记录,生成自己的专属艺术照
  • 【iOS自动化测试】第二章:环境安装
  • 源码安装LAMT架构
  • 重要文件即时搞定,不用插电就能打印,汉印MT800移动便携打印机上手
  • MySQL数据库性能分析之explain使用
  • 猿创征文|Linux centos7下利用docker快速部署SQLserver测试学习环境
  • 关于webpack面试题
  • 【图像处理】道格拉斯-普克算法(曲线的折线段逼近)
  • 工地安全着装识别系统
  • 【Elasticsearch教程16】Mapping字段类型之join
  • 2 springboot全局配置
  • 2022 - 8 洛谷
  • 推荐系统 | 基础推荐模型 | 矩阵分解 | 矩阵分解的PyTorch实现
  • 【机器学习-周志华】学习笔记-第十二章
  • C# 获取当前年月日星期第几周等信息
  • hexo+github搭建个人博客
  • “大数据应用场景”之隔壁老王(连载四)
  • 《剑指offer》分解让复杂问题更简单
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • Angular Elements 及其运作原理
  • Angular 响应式表单 基础例子
  • angular组件开发
  • es6
  • iOS小技巧之UIImagePickerController实现头像选择
  • js学习笔记
  • Vue 重置组件到初始状态
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 读懂package.json -- 依赖管理
  • 高度不固定时垂直居中
  • 力扣(LeetCode)56
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 模型微调
  • 深度学习在携程攻略社区的应用
  • 微信小程序:实现悬浮返回和分享按钮
  • 再次简单明了总结flex布局,一看就懂...
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • (2)MFC+openGL单文档框架glFrame
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (强烈推荐)移动端音视频从零到上手(上)
  • (一)80c52学习之旅-起始篇
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • ***原理与防范
  • .net framework 4.0中如何 输出 form 的name属性。
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .NET开发不可不知、不可不用的辅助类(一)
  • .NET下的多线程编程—1-线程机制概述
  • @Transaction注解失效的几种场景(附有示例代码)
  • [04] Android逐帧动画(一)
  • [android] 练习PopupWindow实现对话框
  • [Angular] 笔记 7:模块