锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

芯片设计流程最全讲解

时间:2022-10-08 03:30:00 t146集成电路ic芯片5g集成电路芯片

e0fc65cb66d12afbecffeec06e7350fe.png

对于消费者来说,一个可用的系统包括数字集成电路、模拟集成电路、系统软件和上层应用。借用各部分的功能IC 咖啡胡总的精品图一目了然。外部世界是一个模拟世界,所以所有需要与外部世界接口的部分都需要模拟集成电路。模拟集成电路将收集到的外部信息转换为0/1 交给数字集成电路操作处理,然后将数字集成电路操作处理的信号转换为模拟信号输出;所有这些操作过程都是在系统软件的命令和监控下完成的,因此芯片是骨架,系统软件是灵魂。

实现数字集成电路设计的过程是一个相当漫长的过程。以手机基带芯片为例,3G, 4G, 5G, 工程师最初看到的是无数页的协议文件。架构师应根据协议确定协议的哪些部分可以用软件实现,哪些部分需要用硬件实现;算法工程师应深入研究协议的每个部分,并选择实现所使用的算法;芯片设计工程师需要将算法工程师选择的算法描述为RTL; 芯片验证工程师需要根据算法工程师选择的算法设计测试向量RTL 工程师的数字实现,根据算法工程师和设计工程师设定的目标PPA 将RTL 揉搓成GDS; 芯片生产过于复杂,完全由OEM和包装完成;对于测试,大多数公司租用第三方测试基础由自己的测试工程师完成,只有少数土豪劣绅公司有自己的测试基础。

性能60%的芯片 这取决于架构师。在中国,优秀的架构师不超过三位数,优秀的架构师不超过两位数。架构师是芯片灵魂的创造者,是食物链的顶端,是一种强大而闪亮的存在office 似乎没有EDA 工具用于架构设计;架构敲定后,大量算法工程师跟上协议规定的每一点,选择合适的算法,使用C/C 确保功能、精度、效率、吞吐量等指标,Matlab 跟GCC 应该是他们使用最多的工具。

根据算法工程师反复模拟选择的算法,设计工程师将抽象描述或指定C 转换成RTL, 在设计过程中,需要反复模拟和综合,以确定设计功能的正确性,并与设计一起实现PPA. 除了RTL, 设计工程师还需要根据设计目标编制设计目标SDC 和power intent, 并进行相应的质量检查。设计工程师需要大量使用EDA 工具:

  • 编辑器:VIM, emac;

  • Lint : RTL 质量检查,Spyglass, Jasper;

  • CDC: SDC 质量检查,Spyglass, Conformal, GCA;

  • CPF/1801: power intent 质量检查,CLP;

  • Power: RTL 等级功耗分析,Joules, PA;

  • 仿真器:C, S, M 三家都有自己的模拟工具;

  • 综合:Genus, DC;

老驴认为,从集成开始,从脑力劳动到体力劳动,从设计师到泥瓦工,比较盖房子。集成工程师应将芯片中使用的所有模块连接起来。指导思想是由架构工程师决定的IP 如何连接各不相同IP 的owner 确定集成工程师只要保证连接不多,连接不多,连接不乱,据说目前没有有效的集成工具,常用emac。

验证

然后,在实际项目中际项目RTL coding 交叉开始,重复迭代。

验证在数字芯片设计中占很大比例。近年来,在设计复杂性的推动下,从OVM 到UVM, 从Dynamic verification 到Static verification, 从FPGA 到Emulator, 所有的创新目的都可以概括为:快速、完整、易于调试。验证涉及很多方面。验证工程师一方面要对相关协议算法有足够的了解,根据架构和算法工程师设定的目标设计模拟向量;另一方面,要充分了解设计本身,提高验证效率,缩短验证时间。验证工程师需要掌握许多技术,需要使用许多工具。

  • 语言:除各种脚本语言外,C/C , SystemVerilog, Verilog;

  • 协议:各接口协议、通信协议、总线协议;

  • 工具:动态仿真工具,静态仿真工具,FPGA, Emulator;

数字验证领域仍然是C, S, M 三家几乎全霸,老驴多年没做验证了,对吧S, M 除个验证相关工具除外VCS, Verdi, Modelsim 其他人几乎无知,在这里拿C 以全套家庭验证为例。

  • Static Verification: Jasper Gold 是C 驴理解的静态验证工具是基于断言的验证方法。所谓静态,就是不需要输入测试激励,验证过程是纯数学行为。

  • Dynamic Verification: Xcelium 是C 驴理解的动态验证工具是基于家的动态验证工具UVM 通过输入测试激励,监控仿真结果,分析覆盖率,完成功能验证。

  • Emulator: 粗略理解的硬件仿真加速器:debug 该功能集成了接口丰富的巨大可编程阵列;特点:超高速验证,支持系统软件调试。C 家居验证领域的明星产品是行业领先者。据说钦差经常来硅厂在帕拉丁前停留很长时间,欣赏它的外观美和强大的功能。

  • Verification IP:验证需要各种验证模型IP, 各种总线,各种高速接口。

FPGA 一大应用是验证,所以提一口。世界上曾经有两个牛逼闪闪的FPGA 公司,一家是Altera 另一家是Xilinx, 后来Altera 像Mentor 找个大叔把自己卖了。FPGA 除了可编程逻辑外,内部通常还集成逻辑IP, 如CPU, DSP, DDR controller 等。每家FPGA 根据集成,有各种配置IP, 可编程逻辑的规模、速度和价格差异很大。相对于ASIC, FPGA 还有一套对应的EDA 综合布线、烧录、调试工具。如:Synplify, Quartus。

国内现状:Static Verification, Dynamic Verification, Emulator 几乎空白;中国有一些;FPGA 公司,在中低端领域已经做得非常不错,但是高端领域几乎空白。任重而道远,不矫饰,脚踏实地干!

实现

然后,我们继续对数字芯片设计实现过程进行梳理。今天,我们进入了实现阶段。我们只熟悉这一段驴的综合、形式验证、低功耗验证RTL 功耗分析、STA, 其他部分都是一知半解,故无深究,只捋流程。

整个实现阶段可以概括为玩EDA 工具及基于EDA 工具方法学,EDA 工具无疑是实现阶段的主导地位。芯片是否做得好,基本上取决于工程师在实现阶段之前的能力是否强,而在实现阶段之后基本上取决于EDA 玩工具好吗?整个设计实现过程涉及到很多工具,这里列出了四个主要参与者,空白部分不代表没有,只代表驴不知道。

数字电路实现过程可分为两部分:优化和验证。优化将改变逻辑描述模式、逻辑结构和插入新逻辑。所有这些行动都有引入错误的风险,因此需要验证工具进行监控;验证,确保逻辑优化过程不改变逻辑功能,确保时间顺序满足既定目标的需要,确保没有违反物理规则和信号完整性。所有这些验证都有相应的通过规则。如果某一项不符合标准,则不能用于制造。

高级综合:所谓高级综合,就是C/ C / System C翻译的设计意图Verilog/ System Verilog 描述的RTL, 除了三巨头,市场上还有很多小公司在这一点上做得很好。

综合:在实现过程中,就背后的算法而言,综合必须是最困难、最复杂的。综合首先将Verilog/ System Verilog/ VHDL 描述的逻辑转化为原因Gtech 描述的逻辑,再对Gtech 优化逻辑,然后优化Gtech 描述映射到相应的工艺库。优化过程涉及多个方面,近年来EDA 工具的发展方向可以概括为:容量、速度、相关性。容量:指可处理的设计规模;速度:指EDA 工具优化速度;相关性:与布局布线的相关性。主流工具:Genus, Design Compiler. 在这一点上,除非有一天整个数字电路的设计方法发生颠覆性的创新,否则几乎很难有后起之秀。

DFT:插入压缩解压缩逻辑scan chain, 插入Mbist, 插入Lbist, 插入Boundary Scan, 插入OCC, 插入Test Point, 生成ATPG pattern, 故障诊断,DFT 插入、观察、诊断老中医等工程师。当今市面上DFT 工程师短缺,贵!主流工具:Tessenst, Modus, TetraMax.

ECO:如果引入新东西,可能会引入bug, 早期发现bug 如果在后期发现,可以重新实现流程bug 重复这个过程太贵了,通常的方法是ECO. 对于简单的bug 修复手工ECO 可以,但是对于复杂的bug 修复,手工ECO 有心无力,所以需要有EDA 完成相应工作的工具。世界上最好的自动化ECO 工具非Conformal ECO 莫属。最近也有一些startup 做相应的点工具,整个想法和CECO 类似,但没有自己的综合工具优化ECO 补丁后,很难到一个好的结果。

布局布线:在进入纳米时代之前,布局布线并没那么复杂,从90nm 开始到如今的3nm,布局布线的复杂度呈指数增长,从floorplan 到placement 到CTS 到Routing 每一步涉及到的算法在近年都做了颠覆性的革新,以Innovus 的问世为起点,布局布线进入到了一个新纪元。在AI 的浪潮下C 跟S 都一头扎了进去,要做世上最智能的布局布线工具,也许有朝一日可以像跟小度对话一样:

  • 硅农:Innovus 请解析A 文件,按设定目标做个功耗最优的结果;

  • Innovus: 已读取目标文件,根据设计数据分析,本设计大概需要250G 内存,在5小时内完成,请选择任务完成后是否自动进入后续程序......

RTL 功耗分析:这一步可以放在实现端做也可以放在实现之前做。分析过程相对简单:读入RTL, SDC, 仿真激励,通过计算分析平均功耗跟瞬时功耗,找出设计中的“功耗缺陷”,指导Designer 进行功耗优化。主流工具有:Joules, Spyglass, PowerArtist.

形式验证:在整个实现流程中,形式验证充当逻辑功能等效性的监察官,任何一步优化结束后都需要过形式验证这一关,以确保在优化过程中,逻辑功能未被改变。主流工具:LEC, Formality. 随着设计规模的暴增跟优化技术的飞速发展,形式验证的难度逐渐增加,占用的时间逐渐增多,SmartLEC 是针对复杂设计的先行者。

低功耗验证:针对低功耗设计,低功耗验证要验证CPF/ UPF/ 1801 的语法语义跟描述意图,要验证低功耗单元未多插,未漏插,未乱插,要验证电源跟地的链接符合设计意图,要验证电特性的完整性。主流工具:CLP。

STA: Timing signoff, STA 看似庞杂,其实并不复杂,相比于优化过程要简单得多,抛开Timing ECO, STA 所有的动作都只是计算而不是求解,不恰当的比方:STA 就好比幼儿园的算术题,加数跟被加数都在那里,只要求个和即可;而优化过程是求最优解或近似最优解的过程,要难得多。近年来STA EDA 工具主要在几个方向着力:如何模拟制造过程的随机工艺偏差,如何处理超大规模设计,如何模拟新工艺结点电特性对时序的影响。

Power Signoff: 验证设计的电源网络是否足够强悍,分析,发现,修正:IR-drop 跟EM. 主流工具:Voltus, RedHawk.

物理验证: 验证所有的管子、过孔、走线是否满足Foundry 制定的规则,是个体力活,有点像盖好房子之后的垃圾清理,主流工具:Calibre, PVS, ICV.

整个数字实现流程中涉及到诸多工具,三巨头在领跑,后面基本没有跟随者,偶尔有某个点工具做得好的后起之秀,大多都会被三巨头吃了,这也算是行业套路。就市值看,三巨头加起来来也不及互联网公司一条腿粗,然而在整个芯片设计实现过程中却不可或缺,吾国要强大芯片产业,必须要在EDA 这一块加大投入,方能离脱离被掐着脖子走更进一步。

【来源:内容来自陌上风骑驴看IC】

5T技术资源大放送!包括但不限于:C/C++,Arm, Linux,Android,人工智能,单片机,树莓派,等等。在上面的【人人都是极客】公众号内回复「peter」,即可免费获取!!

 记得点击分享在看,给我充点儿电吧

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章