当FPGA越来越像SoC,FPGA跟ASIC还有啥区别

2018-06-08 09:59:38 来源:EEFOCUS
标签:

 

随着处理器被添加到传统FPGA中,可编程性被添加到ASIC中,FPGA和ASIC的分界线日益模糊。

FPGA变得比之前更加流行了。现在的FPGA不再只是查找表(LUT)和寄存器的简单组合了,它已经成为系统探索的架构,以及验证未来ASIC设计架构的桥梁。

从基本的可编程逻辑器件到复杂的SoC器件,当今的FPGA家族阵营极其庞大。在包括汽车和其它应用的AI、企业网络、航空航天、国防和工业自动化等各种应用领域,FPGA使得芯片制造商可以在必要时以更新的方式部署实施系统。在这种标准、协议和最佳实现仍然在探索中,而且要求具备成本竞争力的新兴市场中,FPGA的灵活性至关重要。

 


这就是赛灵思决定在其Zynq FPGA中添加ARM内核以创建FPGA SoC的原因所在,Aldec市场总监Louie de Luna表示。“最重要的是,供应商已经改进了工具流程吗,这使得人们对Zynq产生了很大的兴趣。他们的SDSoC开发环境看起来很像C语言,对开发人员很友好,因为应用程序通常是用C语言编写的。他们将软件功能放到开发环境中,允许用户将这些功能分配到具体的硬件上。”

其中有些FPGA不只是像SoC,他们本身就是SoC。

“他们可能包含多个嵌入式处理器、专用计算引擎、复杂接口以及大容量存储器等,”OneSpin Solutions综合验证产品专家Muhammad Khan说。 “系统架构师规划并使用FPGA的可用资源,就像他们在ASIC上所做的那样。设计团队使用综合工具将他们的System Verilog、VHDL或System C RTL代码映射到基础逻辑元素中。对于大部分设计过程来说,专门针对FPGA或ASIC或全定制芯片的设计差异正在减少。”

ArterisIP首席技术官Ty Garibay非常熟悉这一演变。“赛灵思2010年开始在Zynq上实践这种路线,他们定义了一款产品,把ARM SoC的硬宏纳入到了当时现有的FPGA中,”他说。 “然后,Altera招募了我做基本上同样的事情。它的价值主张在于许多客户都想要SoC子系统,但是SoC的特性尤其是处理器那部分并不适合综合到FPGA中。将这种级别的功能嵌入到实际的可编程逻辑中令人望而却步,因为它几乎用尽了整个FPGA的资源。但是它可以作为整个FPGA芯片的一小部分或一小部分,作为一个硬性的功能而存在。虽然你没有为SoC提供真正可重构逻辑的能力,但是它们可以通过软件编程,以这种方式改变功能。”

“这意味着,这种结构可以同时具备软件可编程功能、硬宏和硬件可编程功能,他们可以一起工作,”他说。 “这类期间有一些相当理想的目标市场,尤其是在低成本的汽车控制领域,在这种系统中一般都会以中等性能的微控制器搭配FPGA,现在客户会说,‘我现在可以将整个功能放到FPGA芯片的硬宏上,以减少电路板空间,减少BOM并降低功耗。’”

这也符合过去30年FPGA的发展趋势。最初的FPGA只是可编程结构和一组I/O。随着时间的推移,内存控制器、SerDes、RAM、DSP和HBM控制器都慢慢地被硬化了。

Garibay说:“FPGA供应商一直在继续增加芯片面积,同时也在继续增加越来越多的硬逻辑,这些逻辑被相当大比例的客户群普遍使用。现在,这些硬逻辑转变成软件可编程器件。在ARM SoC之前添加的大多数东西都是不同形式的硬件,主要与I/O有关,但也包括DSP,DSP有足够的应用计划,因此,通过将DSP硬化,可以节省可编程逻辑门。”

 

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

作者简介
与非网小编
与非网小编

电子行业垂直媒体--与非网小编一枚,愿从海量行业资讯中淘得几粒金沙,与你分享!

继续阅读
如何实现SoC全生命周期的监测?

SoC的设计越来越复杂,上市时间、软硬件集成、系统级验证、系统性能、异构、网络安全/功能安全等都是设计人员需要考虑的因素。流片前,设计师能通过仿真软件进行验证,但是流片过程中很多意想不到的结果,需要在流片后仍能被准确的检测出来。

定制化已成芯片设计业唯一出路?
定制化已成芯片设计业唯一出路?

具有讽刺意味的是,一度将成为适合所有场合的通用技术,现在却成了实现最具体的定制应用的使能技术。

为SoC和电子系统提供全生命周期的高速分析和监测,要怎样的IP才能办到

SoC的设计越来越复杂,上市时间、软硬件集成、系统级验证、系统性能、异构、网络安全/功能安全等都是设计人员需要考虑的因素。流片前,设计师能通过仿真软件进行验证,但是流片过程中很多意想不到的结果,需要在流片后仍能被准确的检测出来。

确保芯片异构架构设计能正常工作有多难
确保芯片异构架构设计能正常工作有多难

单颗芯片或一个封装内集成了各种各样的处理器和本地内存,使得对这些器件的测试盒验证变得愈加困难,并且无法充满信心地签核它们。

你对ARM了解多少?

全世界100多家公司购买了ARM授权,包括三星,Freescale、NXP Semiconductors、STMicroelectronics、Texas Instruments ,Toshiba,Analog Device,atmel,microsemi...具体参看ARM官网

更多资讯
简单几步让你看懂单片机时序图

操作时序永远是使用任何一片IC芯片的最主要的内容,看懂时序图,再操控这个芯片就非常容易了。而提取芯片器件手册上有用的信息是使用芯片的最基本步骤。

如何将单片机的波特率作为形参的函数

不管是什么单片机,在使用串口通信的时候,有一个非常重要的参数:波特率。什么是波特率:波特率就是每秒传送的字节数。双方在传输数据的过程中,波特率一致,这是通讯成功的基本保障。

代码分享教你如何使用msp430单片机延时函数

今天看示例程序中出现了__delay_cycles()这个函数,在查找msp430x54x.h这个头文件的时候,发现这个头文件中没有该函数的声明,原来这个函数已经在IAR这个编译器中集成,这里总结一下__delay_cycles();这个函数的具体用法

如何控制51单片机液晶实现计时器的功能?

要想实现人机交互,显示装置是不可缺少的。前面讲到了如何利用单片机控制数码管的显示,这篇文章主要关于如何控制液晶显示,并在此基础上加上定时器的功能,把原来已用数码管显示的定时器搬到液晶屏上来。

Linux编程时遇到Oops提示该如何排查?

各位工程师在Linux下开发程序时,有没有遇到由于系统中存在某些小故障而跳出了“Oops”提示的情况,此时你是如何排查故障?一行行的查看代码吗?其实不用那么复杂,本文将为你介绍一种高效的Linux编程的故障排除方法。