艾巴生活网

您现在的位置是:主页>科技 >内容

科技

数字ic设计是什么(如何去实现一种数字IC的设计)

2024-05-07 19:04:51科技帅气的蚂蚁
一、IC定义IC是半导体元器件产品的总称。根据功能,集成电路可分为数字集成电路、模拟集成电路、微波集成电路和其他集成电路。数字集成电路

数字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验证和仿真加速器都处于降频模式,有些时序问题无法验证。但两种方法的优点都是模拟速度快,而且容易检查出长期运行中积累的一些误差。因此,通常需要很长时间来复制机器进行测试。