0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从EDA工具的计算任务视角解析模拟IC

OpenFPGA 来源:速石科技 2023-03-03 09:50 次阅读

第一集:模拟IC 模拟IC是负责生产、放大和处理各类模拟信号的电路,工程师通过模拟电路把模拟信号放大缩小后,再全部记录下来,是连续的信号;而数字IC则是通过0和1两个代号来处理手机信号、宽带信号和数码信号等,是离散的信号。

数字IC设计工程师的设计目标是在PPA(Power、Performance、Area)三个指标上追求完美的平衡。

以及第三集算法仿真,抢先收看:

芯片设计五部曲之三 | 战略规划家——算法仿真

如果说数字IC像科学,那么模拟IC,就更像是一种魔法利用计算机来辅助模拟芯片设计,本质是在解一道又一道高阶微分方程题。

EDA工具就是干这个的,ta的价值,就不需要我们来解释了。

而我们今天的主题是:模拟IC设计不同阶段有哪些典型的业务特点,使用的EDA工具有哪些特性,我们如何利用计算机技术提升不同业务场景的计算效率,协助模拟芯片工程师更高效地完成芯片研发工作,提升整体效率。

本篇主要从EDA工具的计算任务视角出发。 而在计算角度之外,调度/管理/数据/协同/CAD等视角,那就是另外的(价钱)篇章了~

先给大家一个模拟芯片设计全流程分析图:

d75dbf12-b8ec-11ed-bfe3-dac502259ad0.jpg

1、前仿阶段:前端电路设计与仿真

本阶段包括了设计需求/说明书架构、原理图输入、前仿结果比对设计需求3大步骤 前仿阶段本质上是数值计算,因此对主频要求很高,一旦资源无法满足,会直接造成CPU过载,且任务之间独立可切割,十分适合并行。基于设计图的设计与仿真,参数范围较少,对内存要求不高。此阶段多为多corner与蒙特卡罗Monte Carlo任务,峰值算力需求较高,存储需求一般。

2、中期:版图设计验证

本阶段包括版图设计、版图规则检查DRC/LVS两个步骤 版图绘制/验证同属规则检查,因为不涉及数值计算,对主频要求不高,重内存需求。

版图可以模块为单位进行切割,子任务间几乎无数据关联、适合并行。但版图检查量十分大,算力需求比前仿高推荐使用多核+大内存机型存储要求最高

3、后仿阶段:后端仿真

后仿包括寄生参数提取、后端仿真、GDS文件形成 后仿和前仿类似,多个任务可进行分布式处理。

但后仿阶段任务,因为有可能涉及电磁场仿真,本质虽为数值计算,但需在优先满足内存情况下,再满足高主频需求,因为加入了各类元器件的寄生参数,算力需求是三大阶段里最高的,存储比前仿要求高,有时会与版图阶段相当。

下图是我们某客户全生命周期月度算力实际用量曲线,可以看到后端的波峰相当明显,详情戳:解密一颗芯片设计的全生命周期算力需求

d77516ee-b8ec-11ed-bfe3-dac502259ad0.png

以下,我们选了三种典型场景,展开说说:

两大超常见数值计算场景

多corner又称为多工艺角,和蒙特卡罗Monte Carlo属于两种不同的电路性能与工艺误差的估计方法本质上都是数值计算,前仿和后仿都会大量使用这两种方法进行任务处理。这两种方法里的单个任务间都独立、没有数据关联,不论是多corner 还是Monte Carlo都很适合进行分布式并行计算

这个故事拆开揉碎地解释了我们怎么帮助用户从单机单任务单线程运行的阶段大幅度跨越到了大规模任务自动化集群化运行阶段,应该能很好地帮助你理解为啥分布式并行计算会大大提高计算效率。

多corner是将元件的电阻、温度、电压等参数的误差上下限固定后,取每个参数的极值(误差上限或误差下限)进行排列组合,每一个组合都是一个独立的任务。

一种组合就是一个corner,全部的排列组合即多corner。

这就像你来到一家二选一奶茶店。这家店奶茶店的甜度、热度、加多少配料都只提供两个选择,你要么选择不甜,要么最甜。你每喝一次无非都在这些选项里排列组合(2*2*2种),比如超多糖、烫嘴、超多料;下次你换一种排列组合,无糖,多冰,无料;所有选项的排列组合全点了,那就是多corner。

d7876bb4-b8ec-11ed-bfe3-dac502259ad0.jpg

蒙特卡罗Monte Carlo则是在上、下限之间无穷尽地取值进行排列组合。

这次你来到了一家新的奶茶店,名字叫无穷∞奶茶店,选项完全定制化。你可以在选择任意一个值,比如第一次你喝的是3分甜、少少冰、不加料;下一次觉得不够甜,不冰,你点了6.6分甜、7.8分冰、加两颗珍珠。

这样就会有出现无数种排列组合的奶茶,这就是蒙特卡罗Monte Carlo了。

d796300e-b8ec-11ed-bfe3-dac502259ad0.jpg

可取无数个组合的蒙特卡罗Monte Carlo可以用来估算良率的范围,随着取值组合越多,对工艺偏差导致的误差估计范围越准确,对实际的成品良率预测范围越准确,当然计算量也会成倍提高。

不管是哪家奶茶店,这杯奶茶与那杯奶茶之间互相独立,你喝你的,我喝我的。 这就是多corner和蒙特卡罗Monte Carlo任务特别适合分布式并行计算的本质原因。

不同任务,你算你的,我算我的,分开算,人多力量大。

不论是前仿还是后仿阶段,都需要大量多corner与蒙特卡罗Monte Carlo仿真。

两者相比,蒙特卡罗Monte Carlo仿真因为取值选择多,组合多,计算量明显比多corner大。 而前仿和后仿之间,后仿因涉及更多的物理参数,两种算法的计算量都会呈几何倍增长,算力需求也更大。

整体来说,这两种数值计算方法任务间独立,算力需求大,是我们帮用户提高效率的典型场景之一。

“大家来找茬”之版图验证任务

版图设计,就是把设计好的电路原理图变成包含实际布局布线规划内容的掩模版图,设计师每天在电路图上画花花绿绿的MOS管,确定要用多少元件、用哪种排列方法,在保证芯片电气性能的前提下,怎么跨层使得芯片体积最小、最省钱。

版图验证就是把画好的版图和原理图进行比对,确保两者的拓扑连接关系一致,同时检查版图是否符合foundry的设计工艺

版图设计与验证,就像是在玩一个“大家来找茬”的游戏,首先几个版图设计师先一起把这张图分工合作给画出来。到了版图验证阶段,就开始正式玩找茬游戏了。目的是检查版图有哪些地方不对,有问题的话,打回去重新画。画完再继续检查,循环往复。

如果使用“小F影分身术(版图分割术),可以把小F分为9个影子,每个影子只需负责找茬九分之一个版图,影分身的数量越多(版图切割的任务数)越多,分配的资源数越多,单位效率越高(当然,版图大小有个物理上限,没必要走极端)。

更重要的一点,切割版图与找茬任务之间互不干扰,你改你的,我改我的。你改完了重新提交下一轮,也不影响我还在上一轮。中间也不用因为等待而停工。

d7c747e8-b8ec-11ed-bfe3-dac502259ad0.jpg

切割版图并合理分配资源的检查方法,可以让版图设计师无需苦苦等待一台计算机对单个大版图各部分逐一检查,而可以让多台计算机并行检查同一张大版图的不同部分,并自动汇总结果。这样一来就能更快地完成任务。

版图、原理图对比与设计规则检查同属检查类任务,都是以模块为单位,本质上是数据对比工作、重内存需求、子任务间没有数据关联,是一种高并行度任务。因此这一阶段很适合在云上使用内存优化型资源,通过暴力堆资源的方式快速完成任务。

模拟电路王冠上的明珠--射频电路

射频芯片作为模拟电路王冠上的明珠,一直被认为是芯片设计中的“华山之巅”。

一方面因为射频电路的物理形状和周围介质分布会对射频信号的传输造成很大影响,因此设计之路十分困难,前期需要进行大量仿真测试,而且为了保证高频性能,材料的选取也十分讲究,比如砷化镓和氮化镓

另一方面,为了保证射频芯片各类指标的性能均衡,很多指标的性能要求都需要挑战工艺极限或设计创新性的电路结构,十分考验工程师的经验积累。

射频需要使用电磁场仿真,需要计算三维空间向量。 如果说版图是将二维世界切成一片片的,那射频就是将立体空间切成一粒粒的,当然更具挑战性,算力需求也会呈指数级增加。

d83140c6-b8ec-11ed-bfe3-dac502259ad0.png

当遇到CPU无法满足的情况,不妨尝试使用GPU处理,他们可是处理向量计算的一把好手

目前射频电路电磁场仿真的三种常用软件分别为:HFSS、EMX、ADS。 HFSS处理智能制造/汽车制造场景下的电磁场仿真较多、也支持部分芯片设计场景,EMX和ADS处理芯片设计场景的电磁场仿真更为广泛。其中,HFSS和19版之后的ADS支持GPU处理电磁场仿真任务,且通过并行化处理后,效率提升十分显著;EMX作为Cadence里的万能插件暂不支持GPU任务。

关于计算量级的本质

单模块、多模块和top级任务是三种计算量级的任务,从字面上就能猜到单模块任务,计算量最少;以此递增,top级任务计算量最多。

d91cc032-b8ec-11ed-bfe3-dac502259ad0.png

单模块任务指的是单一模块的任务,比如单层上的某个元器件就是一个单模块任务,计算量级最小,可能可以继续拆,也可能是最小不可拆分任务;

多模块任务指的是多个单模块合并在一起的任务,比如一层上的多个元器件组合在一起的模块,计算量级中等,可将多个模块拆分进行多线程处理;

top级任务,字如其名,是整个芯片设计阶段最大规模的仿真,将整个芯片的全部功能模块聚在一起,做全功能验证。

top级仿真是在顶视图下的一整套前仿或后仿,算力需求最高。

如果涉及到进工艺(28nm以下芯片),更小的空间,更多的模块,更复杂的PDK工艺库,计算量呈指数级增长。

而且先进制程芯片后仿时还要做IR Drop的独立性检查,是SignOff的一个必要步骤。业内在该步骤使用的工具大多为Redhawk,和DRC/LVS的算法流程基本一致。

关于模拟IC设计,从不同设计阶段的计算任务视角出发,我们总结了三点:

1、三大阶段的算力需求呈现前期<中期<后期的趋势。和波谷相比,峰值算力最高可达到百万级别,使用弹性云端资源可以高效且动态地满足峰值需求;

2、多corner、蒙特卡罗Monte Carlo以及DRC、LVS这类任务,非常适合直接用多机并行来提升任务效率;

3、基于单模块不可拆的任务,虽不能做到多机分布式处理,但可以通过上大内存、高主频机型,靠机器的性能实现任务效率的提升。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模拟电路
    +关注

    关注

    125

    文章

    1554

    浏览量

    102637
  • 模拟IC
    +关注

    关注

    8

    文章

    167

    浏览量

    29341
  • EDA工具
    +关注

    关注

    4

    文章

    264

    浏览量

    31686
  • DRC
    DRC
    +关注

    关注

    2

    文章

    148

    浏览量

    36097
  • LVS
    LVS
    +关注

    关注

    1

    文章

    35

    浏览量

    9915

原文标题:芯片设计五部曲之一 | 声光魔法师——模拟IC

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    模拟IC升级需要什么样的EDA工具支持?

    IC设计离不开EDA工具的支持,模拟设计也不例外。在9月20日举行的2019年中国模拟半导体大会上,Cadence中国区技术支持总监栾志雨带
    的头像 发表于 09-25 12:10 7135次阅读

    模拟IC设计工程师

    工作经验;3.熟悉半导体器件物理、CMOS集成电路制造工艺,集成电路设计(数字、模拟);4.熟练掌握相关EDA工具,Matlab 或 C、Verilog 、VHDL语言,有实际项目经验及动手能力。有意者联系QQ:23613621
    发表于 04-22 12:11

    EDA技术从何而来?EDA技术发展历程

    历程,大致可分为三个阶段。20世纪70年代,出现CAD(计算机辅助设计)工具。人们开始用计算机辅助进行PCB布线设计、电路模拟、逻辑模拟
    发表于 02-21 09:41

    IC设计:Synopsys2018 版本 EDA 工具免费分享

    IC设计:Synopsys2018 版本 EDA 工具免费分享1. 下载的文件列表包含一下文件;加群Q:139869702ReadMe:文件就是现在你正在阅读的文件,主要是详细的说明软件的使用和包含
    发表于 11-30 18:56

    IC设计中Accellera先进库格式语言与EDA工具的结合

    IC设计中Accellera先进库格式语言与EDA工具的结合应用 先进库格式(ALF)是一种提供了库元件、技术规则和互连模型的建模语言,不同抽象等级的ALF模型能被EDA同时用于
    发表于 12-26 14:43 712次阅读
    <b class='flag-5'>IC</b>设计中Accellera先进库格式语言与<b class='flag-5'>EDA</b><b class='flag-5'>工具</b>的结合

    SpringSoft发表第三代Laker定制IC设计平台与全新模拟原型工具

    全球EDA领导厂商SpringSoft今天宣布,现即提供Laker3™定制IC设计平台与模拟原型(Analog Prototyping)工具
    发表于 04-25 14:46 2573次阅读
    SpringSoft发表第三代Laker定制<b class='flag-5'>IC</b>设计平台与全新<b class='flag-5'>模拟</b>原型<b class='flag-5'>工具</b>

    EDA技术概述 什么是EDA工具

    EDAIC电子行业必备的设计工具软件,是IC产业链最上游的子行业。Cadence、Synopsys、Mentor Graphics是EDA
    发表于 05-08 14:36 2.7w次阅读

    常用半导体设计EDA软件工具汇总说明

    EDA技术是在电子CAD技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的 最新成果,进行电子产品的自动设计。利用
    的头像 发表于 02-23 10:15 2w次阅读

    电路设计模拟EDA工具的种类与选择

    EDA技术是在电子CAD技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的 最新成果,进行电子产品的自动设计。利用
    的头像 发表于 02-25 16:47 4545次阅读

    EDA产业全景概述

    EDAIC 设计必需、也是最重要的集成电路软件设计工具EDA 产业是 IC 设计最上游的产业。经过几十年发展,
    发表于 07-15 15:39 2200次阅读

    全球EDA IC设计深度报告

    1   EDA 全景概述 EDAIC 设计必需、也是最重要的集成电路软件设计工具EDA 产业是
    的头像 发表于 10-30 16:49 660次阅读

    EDA工具如何助推国产芯片腾飞?

    EDAIC 设计必需、也是最重要的集成电路软件设计工具EDA 产业是IC 设计最上游的产业。经过几十年发展,
    发表于 01-01 09:52 815次阅读

    数字孪生到量子计算 EDA再次向云计算迁移

    数字孪生实体模型到量子计算EDA再次向云计算开展迁移,由此可见2020年是集成ic开发设计的关键一年。
    的头像 发表于 01-06 09:40 2889次阅读

    IC设计为什么需要仿真模拟?仿真模拟的重要性有哪些?

    IC设计为什么需要仿真模拟?仿真模拟的重要性有哪些? IC设计(集成电路设计)是指利用EDA工具
    的头像 发表于 12-19 11:35 1666次阅读

    eda工具软件有哪些 EDA工具有什么优势

    和预测提供基础。在进行EDA过程中,使用合适的工具软件可以显著提升效率和准确性。本文将介绍几种常见的EDA工具软件。 Python和其相关的库 Python是一种广泛使用的编程语言,拥
    的头像 发表于 01-30 13:57 1069次阅读