ASIC 的复杂性不断提高,同时工艺在不断地改进,如何在较短的时间内开发一个稳定的可重用的ASIC芯片的设计,并且一次性流片成功,这需要一个成熟的ASIC 的设计方法和开发流程。本文结合NCverilog,DesignCompile,Astro等ASIC设计所用到的EDA软件,从工艺独立性、系统的稳定性、复杂性的角度对比各种ASIC的设计方法,介绍了在编码设计、综合设计、静态时序分析和时序仿真等阶段经常忽视的问题以及避免的办法,从而使得整个设计具有可控性。

基本的ASIC设计流程

  ASIC设计流程可以粗分为前端设计和后端设计,如果需要更细的划分,可以分成如下几个步骤:

  1.包括系统结构分析设计、RTL编码以及功能验证;

  2.逻辑综合、PreLayoutSTA以及形式验证(RTL代码与逻辑综合生成的Netlist之间);

  3.Floorplan、Placement、ClockTree插入以及全局布线(GlobalRouting)

  4.形式验证(逻辑综合的Netlist与带有CT信息的Netlist之间)、STA;

  5.DetailedRouting,DRC;

  6.PostlayoutSTA,带有反标延迟信息的门级仿真;

  7.Tape-Out

  当然,这还是一个比较粗的流程,其中每个步骤还可以分得更细,通常所说的前端设计主要包括上述流程中的1,2,4,6这几个部分。同时,这个流程是一个迭代的过程。

典型的ASIC设计流程(详细)

  1. 结构及电气规定。
  2. RTL级代码设计和仿真测试平台文件预备。
  3. 为具有存储单元的模块插进BIST(Design For test 设计)。
  4. 为了验证设计功能,进行完全设计的动态仿真。
  5. 设计环境设置。包括使用的设计库和其他一些环境变量。
  6. 使用 Design Compiler工具,约束和综合设计,并且加进扫描链(或者JTAG)。
  7. 使用 Design Compiler自带静态时序分析器,进行模块级静态时序分析。
  8. 使用 Formality工具,进行 RTL级和综合后门级网表的 Formal Verification。
  9. 版图布局布线之前,使用PrimeTime工具进行整个设计的静态时序分析。
  10. 将时序约束前标注到版图工具。
  11. 时序驱动的单元布局,时钟树插进和全局布线。
  12. 将时钟树插进到DC的原始设计中。
  13. 使用 Formality,对综合后网表和插进时钟树网表进行 Formal Verification。
  14. 从全局布线后的版图中提取出估算的时间延时信息。
  15. 将估算的时间延时信息反标注到Design Compiler或者 Primetime。
  16. 在Primetime中进行静态时序分析。
  17. 在Design Compiler中进行设计优化。
  18. 设计的具体布线。
  19. 从具体布线的设计中提取出实际时间延时信息。
  20. 将提取出的实际时间延时信息反标注到Design Compiler或者Primetime中。
  21. 使用Primetime进行版图后的静态时序分析。
  22. 在 Design Compiler中进行设计优化(假如需要)。
  23. 进行版图后带时间信息的门级仿真。
  24. LVS和DRC验证,然后流片。

参考文献:

[1] 转载地址:http://www.eetop.cn/blog/html/83/40783-52928.html

(转)ASIC设计中各个阶段需要注意的问题——节选的更多相关文章

  1. Verilog设计中的锁存器

    问题: 什么是锁存器? 什么时候出现锁存器? 锁存器对电路有什么影响? 如何在FPGA设计中避免锁存器? 在FPGA设计中应该避免锁存器.实际上,锁存器与D触发器实现的逻辑功能基本相同,都有暂存数据的 ...

  2. FPGA设计中的电源管理(转载)

    过去,FPGA设计者主要关心时序和面积使用率问题.但随着FPGA不断取代ASSP和ASIC器件,设计者们现正期望能够开发低功耗设计,在设计流程早期就能对功耗进行正确估算,以及管理和对与FPGA相关的各 ...

  3. 机器学习在IC设计中的应用(二)--根据GBA时序结果来预测PBA

    本文转自:自己的微信公众号<集成电路设计及EDA教程> <机器学习在IC设计中的应用(二)--根据GBA时序结果来预测PBA> AOCV AOCV全称:Advanced OCV ...

  4. ASIC设计-终极指南

    ASIC设计-终极指南 ASIC Design – The Ultimate Guide ASIC设计-终极指南 ASICs代表特定于应用的集成电路,指的是针对特定应用而设计的半导体解决方案,与其他解 ...

  5. 【配色指南】UI设计中使用明亮色彩的利与弊,你知多少?

    以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 合理运用色彩是每个设计师都应必须具备的技能,特别是插画师和UI设计师.随着扁平化设计和Materia ...

  6. 界面设计中如何增强CTA按钮召唤力?

    以下内容由Mockplus(摹客)团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 网页和软件应用之类数字产品的有效交互系统一般是由拥有各种任务和功能的小元素构成.而为创建更加 ...

  7. 数字IC前后端设计中的时序收敛(五)--Max Transition违反的修复方法

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

  8. 数字IC前后端设计中的时序收敛(四)--Max Capacitance违反的修复方法

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

  9. 数字IC前后端设计中的时序收敛(二)--Setup违反的修复方法

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

随机推荐

  1. 洛谷P4719 动态DP —— 动态DP(树剖+矩乘)

    题目:https://www.luogu.org/problemnew/show/P4719 感觉这篇博客写得挺好:https://blog.csdn.net/litble/article/detai ...

  2. 为Xen虚拟机扩容根文件系统(LVM)

    ===== 为Xen虚拟机扩容根文件系统(LVM) ===== 1. 增加1个4G的映像文件 # dd if=/dev/zero of=data.img bs=4k seek=1024k count= ...

  3. TwinCAT3提示找不到TcPch.h错误解决

    我使用git对TwinCAT3的工程进行版本控制,但是别的电脑clone的仓库会提示找不到TcPch.h的错误,无法编译. 明明文件就在那里,就是不让编译... 解决办法更奇葩,只需要把工程文件压缩, ...

  4. jQuery.ajax各种参数及属性设置

      $.ajax({       type: "post",       url: url,       dataType:'html',       success: funct ...

  5. Swift3.0 Set

    set的简单的使用方法 //创建一个空set var letters = Set<Character>() //数组字面量创建set,只能存放string var setColors:Se ...

  6. Lightoj 1021【状压DP(未搞)】

    状态压缩一下,然后DP还是很容易想到,dp[i][j]表示状态为i时,模 k 为 j 的排列数的个数,然后每次对一个状态扩展,添加新的数字: 然而那个取膜没懂.....

  7. Lightoj1015【基础题】

    题意: 计算输入数>0的所有和: 思路: 直接干... #include<cstdio> #include<queue> #include<map> #inc ...

  8. 51nod1393

    思路:一个位num0-num1值=某位num0-num1值相等就代表这段区间内01数字相等,然后还要判断当前位置num0==num1这个情况 #include <bits/stdc++.h> ...

  9. hdoj5493【树状数组+二分】

    题意: 给你n个人的高度, 再给出一个值代表该高度下有前面比他高的 或 后面比他高的人数, 求满足条件下的最小字典序, 不行的话输出"impossible" 思路: 对于最小字典序 ...

  10. string.Format 处理 double 的问题

    出处: http://www.cnblogs.com/albert-struggle/archive/2012/05/22/2512744.html 1.格式化货币(跟系统的环境有关,中文系统默认格式 ...