数字ic设计是什么(如何去实现一种数字IC的设计)
一、IC定义
IC是半导体元器件产品的总称。根据功能,集成电路可分为数字集成电路、模拟集成电路、微波集成电路和其他集成电路。数字集成电路是传输、处理和加工数字信号的集成电路。它是近年来应用最广泛、发展最快的集成电路。可分为通用数字集成电路和专用数字集成电路。
通用集成电路是指那些用户众多、应用领域广泛的标准电路,如存储器(DRAM)、微处理器(MPU)、微控制器(MCU)等。反映了数字集成电路的现状和水平。
专用集成电路(ASIC):指为特定用户、特定或特殊目的而设计的电路。
集成电路产品有以下几种设计、生产和销售模式。
1.IC厂商(IDM)自行设计,自行生产线加工封装,自行测试后出售成品芯片。
2.2的组合。IC设计公司(Fabless)和标准工艺线(Foundry)。设计公司将设计好的芯片最终物理版图交给代工厂加工制造。同样的,封装测试也是委托专业厂商进行的,最终的成品芯片是自己作为IC设计公司的产品销售的。
二、芯片各节点分工
世界五大晶圆厂分别是TSMC、高丰、UMC、三星和中芯国际。
三、数字IC设计流程
四、IC设计
前端设计:
4.1要编写的规范
(1)工艺选择;(2)详细的功能描述(3)模块划分和IP选择;
(4)建筑规划;(5)时钟域和时钟结构规划;(6)电源域和低功耗规划
(7)地址空间分配;(7)IO选择和分配;
4.2 RTL逻辑设计
用硬件描述语言(VHDL,Verilog HDL,业界公司普遍使用)来描述代码中的模块功能,也就是用HDL语言描述实际的硬件电路功能,形成RTL(寄存器传输级)代码。
设计前端逻辑时要注意PPA(性能、功耗、面积)性能、功耗和面积平衡。要特别注意面积和速度互换原理(串并转换和并串转换、乒乓操作、流水线设计)和低功耗设计方法(门控clock_gatinng、资源共享、使用一热码复用器)等。也算是比较好的设计了。
在代码检查的时候,使用工具vcs/verdi排除一般的错误和警告,一些隐藏的错误和警告需要spyglass进行lint/cdc检查。
物理实现:
4.3逻辑综合,DFT
综合:仿真验证通过后,逻辑综合一般由后端工程师完成,但时序的迭代需要前端工程师配合。必需文件:RTL代码约束文件库文件(。db);使用的工具是设计编译器。逻辑综合的结果是将设计和实现的HDL代码翻译成网表。
DFT:可测性设计的测试设计,一般由前端工程师与DFT逻辑集成。通过插入DFT逻辑,如扫描链(寄存器)、MBist(片内存储器)、BoundyScan (IO)等。然后利用ATPG、MBist和BoundyScan工具生成测试向量,对测试向量进行仿真验证。目的检测量产过程中出现各种制造缺陷的芯片,为客户提供更稳定的产品,降低DPPM(每百万芯片的缺陷数),确保公司产品的良好声誉。
4.4布局,CTS
布图直接影响芯片的面积,布线需要考虑拥挤度。而且由于线延迟的存在,PR中的一般时序比简单逻辑综合中的要差。
CTS:时钟树综合(clock tree synthesis)时钟树综合(Clock Tree Synthesis),目的是最小化时钟和每个寄存器单元之间的延迟差。
4.5静态时间序列分析(STA)
主要检查建立时间和保持时间是否符合要求,其目的是找到最差的延迟(以及毛刺、时钟偏差等。)通过遍历所有传输路径(也称为关键路径)对所有组合逻辑电路进行测试。涉及的时序分析路径有:寄存器到寄存器:Reg2Reg;寄存器到输出引脚:Reg2Pin;
寄存器的输入引脚:Pin2Reg;输入至输出引脚:Pin2Pin。另外,在芯片设计中经常可以看到reg2mem和mem2reg时序违规的报道。
时序分析只能验证同步时序电路的时序特性,不能自动识别设计中的特殊路径,如多周期路径、伪路径、多时钟分布等。如果设计中有很多异步电路,我们一般会将异步路径设置为max_delay进行约束。
4.6正式验证
它根据功能验证合成的网表(STA是时序)。常用的是等价性检查法,以功能验证后的HDL设计为参考,比较合成后的网表功能,看其功能是否等价。这样做是为了确保原始HDL中描述的电路功能在逻辑综合过程中不会改变。形式验证工具包括Synopsys的有效性。
4.7流片
在流式传输之前,应进行一些DRC/LVS工作,以提高产量并解决违反物理规则的问题。芯片设计阶段完成后,输出物理布局GDS文件-芯片代工-晶体硅-制作实际电路-封装和测试-芯片。
功能验证:
4.8验证环境
如下图所示,Scoreboard主要用于比较参考模型和DUT的输出是否一致,并给出参考模型和DUT是SPEC的两个独立实现的比较结果。当ref模型和dut的行为不一致,或者DUT错误,或者ref模型错误,或者两者都错误时,debug是好的。模拟应涵盖DUT的不同工作场景和可能出现的异常情况。Monitor执行一些中间状态监控或计数。
4.9验证模式
有两种验证方法:白盒验证和黑盒验证。
白盒意味着DUT的内部结构完全可见,我们可以清楚地看到设计的细节。白盒验证的好处是我们可以理解设计师的意图,验证可以到达设计中的每一个点,只是需要的时间更长。
灰箱是指待验证对象(DUT)的内部结构,只有一部分是可见的,而黑箱验证则使DUT完全不可见。我们只能看到设计好的输入接口和输出接口。对于黑盒验证,我们只有了解它的设计文档才能知道它的功能。
4.10验证语言和验证方法
验证语言:Verilog,SystemVerilog,断言,SystemC,Perl,Makefile
验证方法:UVM、OVM、VMM
4.11验证范围
代码覆盖率:行覆盖率/条件覆盖率,
分支覆盖/切换覆盖/FSM覆盖
功能覆盖范围):uassertion
4.12模拟后
门延迟
SDF延迟文件加载
与RTL教不一致
x状态传播
异步时序电路产生X状态
使调试更加困难。
控制X状态传播
Pg网表门级模拟
低功耗模拟
4.13 FPGA验证
ASIC代码迁移
PLL/IO/MEM/标准单元更换
时钟生成逻辑移除
调整时钟频率和时钟关系
设计剪裁分区
代码FPGA实现
时间限制
正时检查
Fpga调试和验证
4.14模拟加速器验证
凯登丝钯
基于CPU
新思科技ZeBu
基于FPGA
导师Veloce
基于FPGA
4.15验证方法的比较
一般来说,在代码开发过程中,后面的验证方法一般都是循序渐进的,后期同时进行回归验证。由于FPGA验证和仿真加速器都处于降频模式,有些时序问题无法验证。但两种方法的优点都是模拟速度快,而且容易检查出长期运行中积累的一些误差。因此,通常需要很长时间来复制机器进行测试。
推荐阅读
- 什么是UWB芯片(浅谈UWB芯片发展瓶颈)
- 英国留学临床医学专业含金量?(英国留学热门专业)
- 桃树的修剪方法和时间,桃树的修剪方法
- Paramount Plus,Showtime 现在可在单个应用程序中提供捆绑折扣
- 判缓刑一年期满后多久案底会消除?(判了缓刑一辈子完了)
- honda odyssey,hondaaccord
- 电信手机查流量怎么查,电信手机如何查流量
- 糖精枣违反了什么食品标准,如何分辨糖精枣
- 苹果手机应用锁设置怎么取消,苹果手机应用锁设置
- T-Mobile 悬空 3 个月的免费数据来引诱您切换
- 纳兰性德的优美诗句(纳兰性德诗词)
- 私了谅解书的正确写法?(私了赔偿协议书怎么写)
- 如何自主清洁空调冷凝器及水箱水垢,如何自主清洁空调冷凝器及水箱
- ps如何制作1寸证件照,ps怎么把照片做成1寸/2寸的证件照
- 雅阁对比亚洲龙,相同预算,哪款车更有性价比? 雅阁汽车之家
- 最佳笔记本电脑优惠: MSI Prestige 14 节省 300 美元,HP Spectre x360 16 及更多产品节省 500 美元
- 触电后正确的应急措施,触电后应如何急救
- 1.带修辞的国庆祝福语十条?(国庆佳句简短10字)
- 红米手机root权限怎么解除,手机root权限怎么解除