加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

就业 | FPGA和ASIC到底选哪个好?

2021/09/17
1962
阅读需 8 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

当下,集成电路设计发展趋势越来越好,许多公司都在积极开发能够实现移动端,汽车端,消费类电子端的智能硬件。尤其对于移动端人工智能硬件的实现方法,有两大流派,即FPGA派和ASIC派。

对于大多数微电子专业的同学来说,在毕业季时,选择FPGA还是AISC,是一个极为纠结的问题,一来是学校里大多做的都是FPGA项目,二来对两者缺乏了解,没有一个对职业发展的正确判断。

今天就来聊聊FPGA和ASIC在各个维度上的区别。

 一、FPGA和ASIC有哪些异同? 

很多入行不久的朋友潜意识里会认为FPGA是很高深的东西,能掌握FPGA的一定都是极其厉害的人。其实,这是一个误解。

我们所讨论的FPGA只是基于已有的FPGA芯片去做后端排列组合的工作内容,而不是设计制造新的FPGA芯片,世界上能做这件事的公司屈指可数。

FPGA开发流程遵循ASIC开发的流程,都是集成电路方向,coding使用的编程语言和编程逻辑基本一致,绝大多数电子类硬件产品,能使用FPGA做出来,就能用ASIC做出来,通过两种方式都能实现同样的功能。

二、FPGA和ASIC在设计层面的比较

FPGA和ASIC区别更多的体现在做设计的一些细小的方面,ASIC的设计规模通常远远大于FPGA的,运行时钟也远远高于FPGA,门电路数量上也有差别。

而且,ASIC只有一次机会,FPGA因为可以编程,所以coding的灵活性相对提高。仅仅从RTL设计上来说:

(1)ASIC对编码风格和编码技术的要求更高,为了有利于后端以及后续的check,这就要求所有模块的coding风格要一致。

(2)ASIC做逻辑设计更趋于保守,对代码的任何改动都要很谨慎,并且要做备选的选择,以防改错。RTL的任何修改几乎都是增量修改,即便以前的逻辑错了,也不会删掉,而是多做一个分支。

(3)ASIC设计对时钟和复位更加重视。尤其是时钟,对ASIC的设计非常关键,复位对扫描链测试(DFT)又很关键。ASIC在这方面都需要采用库来进行设计。ASIC通常不会用counter分频,这样会导致时钟不干净,除非是很低频的时钟。ASIC对于跨时钟域的信号处理也谨慎很多。对于clock的关闭和打开也需要严格检查。

(4)ASIC要考虑SCAN测试和BIST的问题,所以设计的时候还需要为SRAM做BIST插入,需要为SCAN预留接口,虽然大部分都是工具干的,但是经常RTL作者也要手动做一些顶层工作,比如SCAN时钟的来源等逻辑。

(5)FPGA有很多用现成IP,需要考虑开发板上的资源合理的利用,不能把某一资源撑爆了,而且FPGA存在资源浪费问题。ASIC很少考虑这种问题,ASIC考虑的永远是性能和功耗,在逻辑选择上除了SRAM,CLK和复位相关,都是手写的,逻辑基本没有浪费,也更加紧凑。

三、FPGA和ASIC在市场需求上的差异。

FPGA主要用于要求快速迭代或者小批量产品,或者作为ASIC的算法验证加速。ASIC用于设计规模大,复杂度比较高的芯片,或者是成熟度高,产量比较大的产品。

1、上市速度:FPGA上市开发周期短,上市速度快,ASIC开发周期长,上市速度慢。
2、产品性能:FPGA产品性能较低,存在资源浪费。ASIC产品性能高。
3、开发成本:开发成本在这里需要看是小批量生产还是大批量生产,举一个很简单的例子,小批量生产可以请几个熟练的师傅,买好材料,手工做几个产品。但是大批量生产呢,适合流水线作业,这样单个产品的成本会比较低。

一些对价格不是很敏感的地方,比如企业应用,军事和工业电子等等(在有些地方可以重新配置真的很重要)。而ASIC也有一定的可重配置能力,在设计的时候把电路做成某些参数可调的即可。ASIC大批量生产致使低成本。适合电子消费类应用,而且在消费类电子中现在现在来说是不可配置。

四、FPGA和ASIC的共通点

至于共通点,需要了解掌握FPGA应当具备以下能力: 

1、需要有数字逻辑的设计思想 :针对任意一项具体的功能,如何组合你器件内的单元来实现,需要哪些单元?如何连接这些单元?各个单元之间连接的先后顺序如何? 

 

2、一套从头到尾执行的设计环境(FPGA厂商提供的编译工具 - Lattice的Diamond、Intel的Quartus、Xilinx的Vivado) 

 

3、一种连接你的逻辑思维和机器操作之间的沟通工具 - 设计语言(原理图、Verilog、VHDL等等)。 而设计思想和语言工具在ASIC上也是所必须的,说白了大家都要写Verilog,很多地方自然互通。

这也是为什么FPGA更容易往数字IC转行的原因。

更深层次的则是做RTL的工程师一定要往系统层面的工程师转,只在RTL和协议这条路上走下去,没有任何希望。 RTL出身的工程师,在这方面本身就具有一点点优势,而且从技术上来说,数字IC设计只会比FPGA更加复杂,同时更具竞争力:

  • 更快的时钟更统一的coding style更严格的STA更系统的仿真更低的功耗更少的可用资源

至于UVM仿真,即便不做IC,传统的FPGA工程师也应该有所掌握,一个系统的仿真对产品的开发和后期维护,节省的时间不可估量。 FPGA受限于环境因素,ASIC/SOC一定是之后发展的大趋势。

结语

FPGA 和 ASIC 各有所长,FPGA 的可配置性更适合科研、军工等应用,而 ASIC 的高性能和低成本则适合消费电子领域(包括移动终端)。

对于大多数在读的集成电路、微电子专业的在校生而言,IC设计各个细分的方向缺口更大一些,所以选择IC设计更好一些。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
LFE3-17EA-6FN484I 1 Lattice Semiconductor Corporation Field Programmable Gate Array, 375MHz, 17000-Cell, PBGA484, 23 X 23 MM, LEAD FREE, FPBGA-484

ECAD模型

下载ECAD模型
$35.32 查看
A3P1000-FGG484I 1 Microchip Technology Inc Field Programmable Gate Array, 24576 CLBs, 1000000 Gates, 350MHz, CMOS, PBGA484
$87.75 查看
XC3S700A-4FGG400C 1 AMD Xilinx Field Programmable Gate Array, 1472 CLBs, 700000 Gates, 250MHz, 13248-Cell, CMOS, PBGA400, LEAD FREE, FPBGA-400
$48.97 查看

相关推荐

电子产业图谱

IC行业前沿资讯,IC领域硬核知识,专注打造IC人才科技生态圈。公众号:IC修真院