数字IC设计全流程设计

  • 掌握数字集成电路设计的流程
  • 数字设计流程中每个阶段主要做哪些工作?
  • 数字设计流程中每个阶段使用的主要EDA工具?

    数字电路常用软件公司Mentor(questasim),Synopsys(VCS),Candence(incisive)

1.手机芯片简介





  • 电子设备中集成了很多的芯片,通常由不同的厂商进行提供

2.集成电路产业链

  • design house:进行芯片设计,算法,架构,前端,后端,仿真,,,,
  • Fab:晶圆厂,提供设计资源与技术支持
  • Packaging:封测厂,晶圆厂和封测厂临近
  • Assembing:组装厂

3常见SoC架构图

  • system on chip
  • CPU(ARM,X86) -- 整个系统的核心
  • AHB,APB -- 进行各个模块之间的通信,上面可以外挂很多模块;快速设备挂载在AHB上(内存),慢速设备挂载在APB总线上

3.1 SoC中IP的功能



3.2 芯片功能

  • SDC -- SD controller

4.数字IC设计流程

  • 指标:频率,内存
  • 制定芯片的具体目标:市场人员到市场上进行调研,今年会生产什么样的Soc,使用的架构是什么,关于DDR4或者是DDR5、USB2.0、USB3.0等。
  • 系统级设计:C语言或者是Matlab进行算法的仿真。对于成熟的模块是不需要进行算法建模的。
  • 前端设计:RTL设计、RTL仿真、硬件原型验证(FPGA)、电路综合。
  • 后端设计:版图设计、物理验证、后仿真等;后端设计会进行布局布线(PR)。
  • RTL:寄存器传输级的硬件描述语言。在硬件描述语言中所描述的电路,都是由Gate进行设计出来的,所以需要进行逻辑综合,将RTL转化为电路,进行验证。

5.数字IC设计具体指标

  • PPAF--Performance,Power,Area,Function
  • 工艺:28nm,14nm,10nm
  • 制作工艺决定性能,新工艺往往使用在手机和电脑的CPU
  • die面积越小,成本越低,按wafer进行计算
  • 封装受到pin数量的影响,需要考虑散热问题
  • 接口用于不同module之间的交互

6.基于Standcell的Asic的设计流程

  • StandCell -- 标准库单元
  • RTL -- 寄存器传输级硬件描述语言
  • System Verilog进行设计和验证
  • 电路版图--基于Netlist进行布局布线





PR阶段:会固定放置standcell,固定的时候会考虑时序(standcell放置的越远,delay越大)、物理空间等。

7.Digital IC design flow



Design Spec-设计规格说明书



C/C++进行设计reference model

验证更多的是行为级的描述





前期是根据design spec进行coding,仿真验证都是根据RTL进行Verification;RTL进行Sysnthesis之后得到的是Gate Level NetList,需要对Gate Level Netlist进行仿真,时间比较长。进行形式验证,形式验证是为了保证逻辑正确,简单理解就会使输入0,输出1,是否正确。





设计过程中可以保证逻辑和function是正确的。在实际进行流片的时候,由于工艺原因导致芯片内部出现一些问题。为了避免这些问题,在拿到裸片之后,可以进行测试。



8.前端设计(RTL to Netlist)

9.后端设计(Netlist to Layout)

10.VLSI设计

数字IC设计全流程介绍的更多相关文章

  1. VerilogHDL概述与数字IC设计流程学习笔记

    一.HDL的概念和特征 HDL,Hard Discrimination Language的缩写,翻译过来就是硬件描述语言.那么什么是硬件描述语言呢?为什么不叫硬件设计语言呢?硬件描述语言,顾名思义就是 ...

  2. 数字IC设计流程

    数字IC设计流程 简单介绍数字IC设计流程

  3. 数字IC设计工程师的知识结构

    刚毕业的时候,我年少轻狂,以为自己已经可以独当一面,庙堂之上所学已经足以应付业界需要.然而在后来的工作过程中,我认识了很多牛人,也从他们身上学到了很多,从中总结了一个IC设计工程师需要具备的知识架构, ...

  4. 数字IC设计入门书单

    首发于观芯志 写文章     数字IC设计入门书单 Forever snow   1 年前 作者:Forever snow链接:你所在领域的入门书单? - 知乎用户的回答来源:知乎著作权归作者所有,转 ...

  5. UED视觉交互设计与流程介绍

    UED视觉交互设计与流程介绍 ------------------------------------------------------------------ 今天先到这儿,希望对您技术领导力, ...

  6. 【转载】数字IC设计流程及开发工具

    原文链接:https://www.zhihu.com/question/28322269/answer/42048070 Design Flow <img src="h ...

  7. (转)IC设计完整流程及工具

    IC的设计过程可分为两个部分,分别为:前端设计(也称逻辑设计)和后端设计(也称物理设计),这两个部分并没有统一严格的界限,凡涉及到与工艺有关的设计可称为后端设计. 前端设计的主要流程: 1.规格制定 ...

  8. github Pull Request合入全流程介绍

    图解全流程 详细步骤 1. fork仓库 2. clone fork仓库到本地 3. 关联upstream原仓库 在fork本地仓库输入下面命令进行关联: git remote add upstrea ...

  9. 数字IC设计入门必备——VIM自定义模板调用与VCS基本仿真操作示例

    一.前言 毕业论文答辩结束,闲下来写篇文章.芯片研发人员都在Linux系统下借助各种EDA工具和代码语言完成工作,因此提高代码开发效率,熟练运用开发工具是十分必要的.本文讲述VIM编辑神器的veril ...

  10. 数字IC设计-15-DPI(延续)

    简介 供SV,无论是构建测试激励,或模拟硬件的并行行为,DPI这是非常方便.上次我们介绍SV内通"import"导入和电话C性能. 在本节,通过一个简单的例子来说明C什么语言的函数 ...

随机推荐

  1. 普冉PY32系列(十四) 从XL2400迁移到XL2400P

    目录 普冉PY32系列(一) PY32F0系列32位Cortex M0+ MCU简介 普冉PY32系列(二) Ubuntu GCC Toolchain和VSCode开发环境 普冉PY32系列(三) P ...

  2. javascript中的标识符(JS)

    1.在javascript(JS)中所有的可以由我们自主命名的都可以称为是标识符. 例如:变量名.函数名.属性名都属于标识符. 2.标识符命名一个标识符时需要遵守如下的规则: 1.标识符中可以含有字母 ...

  3. 三问三答:细数GaussDB迁移的核心技术

    摘要:本文从客户视角的三个疑问出发,一起了解华为云GaussDB数据库的迁移解决方案具有哪些核心技术,如何做到让客户迁移过程安心.放心.省心. 迁移是数据库选型过程中客户最为关心的话题之一,经过大量的 ...

  4. GaussDB(for openGauss)让数据“存得下、算得快、算得准”

    摘要:本文从总体架构.数据分布方式.计算下推.数据强一致等方面进行介绍GaussDB(for openGauss). 1.前言 随着云计算规模越来越大,企业业务数据量呈指数级增长,传统数据库在海量数据 ...

  5. 性能测量工具-DevTools/PageSpeed/LightHouse

    前端的性能优化有诸多有迹可循的理论和方法,比如 Yahoo!性能军规(Best Practices for Speeding Up Your Web Site).Google PageSpeed In ...

  6. .Net Core 跨域

    Startup.cs public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.UseCorsMidd ...

  7. SpringBoot 拦截器 统一日志 记录用户请求返回日志

    你请求我接口,传了什么参数,我返回了什么值给你,全部记下来.防止扯皮 需求:记录每次用户请求Controller的Body参数, 思路:在每个Controller 该当中记录,容易漏记,如果在拦截器里 ...

  8. Axure RP 9 下载、破解激活教程、最新激活码,亲测可用

    本教程适用于 Axure RP 9 Enterprise/Pro/Team 的激活.破解,最新激活码,适用于 windows, mac系统,仅用于学习 简介 Axure RP 9.0 破解版是一款功能 ...

  9. Tomcat--隐藏版本号

    为何要隐藏版本号: tomcat默认报错页面信息会暴露出版本号 如果tomcat的版本号暴露出来,会有人利用该版本所存在的漏洞进行攻击,系统存在一定的风险,所以要对tomcat的版本号进行隐藏或者删除 ...

  10. 【3rd_Party】使用QuaZip进行压缩和解压缩文件

    QuaZIP使用记录 官方文档 一.QuaZIP是什么 QuaZIP is a simple C++ wrapper over Gilles Vollant's ZIP/UNZIP package t ...