asic和fpga的区别是:1.概念;2.用途;3.成本;4.功耗;5.速度;6.设计流程。其中,ASIC由IC设计人员根据特定的电路需求,设计专用的逻辑电路,在设计完成后生成设计网表,交给芯片制造厂家流片。
一、asic和fpga的区别
1.概念
ASIC由IC设计人员根据特定的电路需求,设计专用的逻辑电路,在设计完成后生成设计网表,交给芯片制造厂家流片。在流片之后,内部逻辑电路就固定了,芯片的功能也就固定的。
FPGA——现场可编程门阵列
FPGA由Xilinx,Alter等器件厂家提供,设计人员只需要根据需求选择相应的器件,然后设计逻辑电路,并下载到FPGA器件中去,实现需求的电路功能,随时可以修改电路功能。
2.用途
FPGA主要用于要求快速迭代或者小批量产品,或者作为ASIC的算法验证加速。
ASIC用于设计规模大,复杂度比较高的芯片,或者是成熟度高,产量比较大的产品。
3.成本
小批量需求时,单片FPGA成本低于ASIC,随着产品量的增加,单片ASIC成本逐步降低。
4.功耗
在相同工艺条件下,FPGA要大于ASIC。FPGA,尤其是基于占用大量硅面积的、每个单元六个晶体管的静态存储器(SRAM)的查寻表(LUT)和配置元件技术的FPGA,其功耗要比对等的ASIC大得多。
5.速度
FPGA内部是基于通用的结构,根据RTL设计选择内部布局布线,当然通用必然导致冗余。
ASIC是根据设计需求,优异化cell逻辑资源,并且做到优异布局走线,降低走线延迟和CELL延时。
6.设计流程
FPGA设计流程是先根据需求选择符合设计要求的FPGA芯片,然后按照下图流程设计。
ASIC设计分为前端设计,后端设计,封装测试。
项启动主要是算法人员,设计人员,验证人员投入。
复杂芯片设计和验证同步投入,根据产品需求和算法文档,分解设计规格和验证规格;
设计开始写详细设计文档,验证开始写验证策略,分解测试点。
设计进行HDL编码,做lint相关检查,提交子模块代码;验证写测试用例,搭建立好BT验证环境
设计开发完UT,BT,IT代码,并同步支持验证冒烟,验证进行冒烟测试和随机用例测试,补充用例测试;后端进行综合和时序分析。
设计进行各种质量活动,同步支EDA持验证,FPGA验证,EMU验证等;验证进行验证收敛;后端继续迭代分析,直到提交网表。
设计和验证共同分析覆盖率,分析ATM矩阵(需求,设计,验证一一对应),分析验证波形,功耗,面积等;所有工作做完进行TO
测试软件人员投入,设计编写软件指南,验证对软件指南进行EDA测试;等待回片测试,测试芯片性能。
延伸阅读:
二、FPGA原型的一些限制
- 规模限制:FPGA资源规模比较小,需要多片FPGA共同协同将芯片所有功能放进去;
- 速度限制:芯片的频率在一般1GHz以上,但是FPGA中的频率在20MHz以下,在多片FPGA的芯片验证中甚至低于5MHz;
- 功耗限制:FPGA的功耗一般在芯片的10倍以上;
- 结构限制:FPGA的结构有它特有的IO、PHY、RAM、IP,这会导致芯片的验证无法和ASIC完全相同。
以上就是关于asic和fpga的区别的内容希望对大家有帮助。