您所在的位置:e-works首页 > 工业自动化控制 > 控制元件

谈ASIC、FPGA/CPLD的区别与发展

发表时间:2008-6-10  特约撰稿人: 童世华 来源:e-works
关键字:ASIC FPGA CPLD
ASIC、FPGA/CPLD在电子设计领域得到了极大的应用。本文介绍了ASIC、FPGA/CPLD的基本概念、特点、区别及其发展趋势,对如何选择FPGA/CPLD芯片、ASIC设计与FPGA/CPLD设计的区别作出了相关的说明。

    2.2.3 FPGA/CPLD的选择

    CPLD是复杂可编程逻辑器件的简称,FPGA是现场可编程门阵列的简称,两者的功能基本相同,只是实现原理略有不同,所以我们有时可以忽略这两者的区别,统称为可编程逻辑器件或CPLD/FPGA。目前有多家公司生产CPLD/FPGA,最大的三家是:ALTERA, XILINX,LATTICE。CPLD分解组合逻辑的功能很强,一个宏单元就可以分解十几个甚至20-30多个组合逻辑输入。而FPGA的一个LUT只能处理4输入的组合逻辑,因此,CPLD适合用于设计译码等复杂组合逻辑。但FPGA的制造工艺确定了FPGA芯片中包含的LUT和触发器的数量非常多,往往都是几千上万,CPLD一般只能做到512个逻辑单元,而且如果用芯片价格除以逻辑单元数量,FPGA的平均逻辑单元成本大大低于CPLD。所以如果设计中使用到大量触发器,例如设计一个复杂的时序逻辑,那么使用FPGA就是一个很好选择。

    尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:
 
    ·CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。
 
    ·CPLD的连续式布线结构决定了它的时序延迟是均匀的、预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
 
    ·在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定的内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。
 
    ·FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
 
    ·CPLD比FPGA使用起来更方便。CPLD的编程采用EEPROM或FAST FLASH技术,无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。
 
    ·在编程方式上,CPLD主要是基于E2PROM或FLASH存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。CPLD又可分为在编程器上编程和在系统编程两类.FPGA大部分是基于SRAM编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入SRAM中。其优点是可以编程任意次,可在工作中快速编程,从而实现板级和系统级的动态配置。
 
    ·CPLD保密性好,FPGA保密性差。
 
    ·一般情况下,CPLD的功耗要比FPGA大,且集成度越高越明显。

    2.3 ASIC设计与FPGA/CPLD设计的区别

    FPGA 开发流程大致为:选定器件,安装软件,设计输入,代码调试(包括管脚定义、时序定义、时序分析),设计仿真(功能仿真、时序仿真)和下载调试。而ASIC 是为某个客户定制的芯片,与FPGA 相比,有非通用的后端设计费、制掩模费、测试费等,故前期成本较高。在ASIC 设计过程中,往往要用到FPGA 进行原型验证。FPGA 验证是进行ASIC 设计的重要环节,其后,还需要引入ASIC 版本源码,插入IO PAD,DFT,功耗估计和进行其它后端流程。完成FPGA 验证可以说就完成了ASIC 整套流程的50~80%。

    在过去的二十年间,ASIC 与FPGA 一直是电子设计的主流技术。在相当长的一段时间内,二者不同的技术特征造就了它们应用于不同的市场:ASIC 被用于大批量的专用产品,以尽可能简化设计、降低制造成本,实现良好的性价比;FPGA 虽单价较高,但由于其可编程的灵活性受小批量应用的青睐,很多时候还被用于ASIC 设计中的原型验证。然而在最近的几年中,原有的平衡逐渐被打破。随着半导体制造技术的进步,硅器件的单位面积制造成本迅速降低,FPGA 厂商不断采用新工艺使得FPGA 的价格不断下降;相反随着设计复杂性的增加,ASIC 的非重复性工程(NRE)费用、最少订购数量以及开发工具套件的费用都在上涨,加之面市时间的压力,对产品设计的快捷性和灵活性提出更高的要求,因此FPGA表现出强于ASIC 的发展势头,这特别反映在新开工设计项目对设计方法的选择上。但是原有FPGA 架构相对于ASIC的固有弱点,如功耗高、速度慢、资源冗余,价格偏贵等,使FPGA 在面对复杂功能设计的要求时还是会感到吃力,因此人们开始考虑通过技术上的融合ASIC 与FPGA 之间寻找一条“中间道路”,它们在某些方面有慢慢靠拢的趋势。

    根据Zeidman Consulting 公司的比较结论,在经济萧条时期,由于价格是市场的主要驱动力,产品的批量小,小型企业倾向于利用FPGA,大型企业倾向于使用ASIC,或者将FPGA 转换为ASIC。在经济起飞时期,价格因素的作用减少,所有的企业将大量利用FPGA,只有对较大批量和极低价格的产品的特殊要求下才使用ASIC。FPGA 最本质的特性是可编程性和设计周期短的优势,而这正是ASIC的弱点。两者在价格上的比较要考虑多种因素,但趋势是向有利于FPGA 的方面发展。因为深亚微米工艺的掩模费用更加昂贵,因此NRE 费用急剧上升。一般的ASIC 在0.25μm 工艺线的NRE 费用为10 万美元左右,在0.13μm 时要在100 万美元左右。原因是增大的晶圆和减小的芯片,厂家要求增加订购批量。ASlC 的设计周期越来越长,而FPGA 的设计周期仍然很短,设计者不必担心深亚微米的影响。因此有人认为,ASIC 不久会萎缩到较小的市场份额。随着ASIC 向深亚微米工艺发展,掩模的复杂度提高,逼迫低端的ASIC 必须在FPGA 方面找出自己的出路。

    3、ASIC、FPGA/CPLD的发展趋势

    我国科技规划指出近期产业化的重点是:以加强集成电路设计为重点,积极支持集成电路设计与整机开发相结合,设计开发市场需求较大的整机产品所需的各种专用集成电路和系统级芯片;积极发展0.25~0.18μm 的深亚微米集成电路技术,扩大集成电路生产加工和封装能力,提高工艺技术水平,扩大产品品种和生产规模;积极鼓励国内外有经济实力和技术实力的企业以及投资机构在国内建立国际先进水平的集成电路芯片生产线,提高我国集成电路生产技术水平。由此可见,芯片设计是我国目前大力扶持和重点发展的产业方向。

    目前,ASIC芯片设计除了向更大规模、更高工艺技术的方向发展外,还有两个明显的发展特征:一是向IP内核方向的发展,一是向SOC 的技术方向发展。IP 内核是指满足特定规范,并能在设计中复用的功能模块。在IC 设计中,IP 内核复用可以有效地缩短产品开发周期并降低成本。目前整个IP 产业尚不成熟,行业规范和交流渠道缺乏,限制了IP 产业的发展。IP 内核可以在不同的硬件描述级别实现,依据产品交付的方式,可分为三类IP 内核:软核(Soft cores)、固核(Firm cores)和硬核(Hard cores)。SOC 就是将系统的全部功能模块集成到单一半导体芯片上,包括CPU、I/O 接口、存储器,以及一些重要的模拟集成电路等。功能模块化的系统芯片具有易于增加新功能和缩短上市时间的显著特点,是ASIC设计业当前、乃至可预见未来的主流设计方式。一个芯片如果包含了可编程处理器(Programmable processor)、控制器(Controllers)、信号处理器(Signal processors)和片上存储器(On-chip memory)等部分就是一个SOC 芯片。
随着FPGA性能的高速发展和设计人员自身能力的提高,FPGA将进一步扩大可编程芯片的领地,将复杂专用芯片挤向高端和超复杂应用。目前FPGA的发展趋势主要体现在以下几个方面:
 
    大容量、低电压、低功耗FPGA大容量FPGA是市场发展的焦点。FPGA产业中的两大霸主:Altera和Xilinx在超大容量FPGA上展开了激烈的竞争。Altera推出的APEXⅡEP2A70,其容量为67200个LE(Logic Element,逻辑单元),Xilinx推出的Vitex lI 6000,其容量为33792个slices(一个slices约等于2个LE)。采用深亚微米(DSM)的半导体工艺后,器件在性能提高的同时,价格也在逐步降低。由于便携式应用产品的发展,对FPGA的低电压、低功耗的要求日益迫切。因此,无论那个厂家、哪种类型的产品,都在瞄准这个方向而努力。
 
    系统级高密度FPGA随着生产规模的提高,产品应用成本的下降,FPGA的应用已经不是过去的仅仅适用于系统接口部件的现场集成,而是将它灵活地应用于系统级(包括其核心功能芯片)设计之中。在这样的背景下,国际主要FPGA厂家在系统级高密度FPGA 的技术发展上,主要强调了两个方面:FPGA的IP(Intellec—tual Property,知识产权)硬核和IP软核。当前具有IP内核的系统级FPGA的开发主要体现在两个方面:一方面是FPGA厂商将IP硬核(指完成版图设计的功能单元模块)嵌入到FPGA器件中,另一方面是大力扩充优化的IP软核(指利用HDL语言设计并经过综合验证的功能单元模块),用户可以直接利用这些预定义的、经过测试和验证的IP核资源,有效地完成复杂的片上系统设计。
 
    FPGA和ASIC出现相互融合虽然标准逻辑ASIC芯片尺寸小、功能强、功耗低,但其设计复杂,并且有批量要求。FPGA价格较低廉,能在现场进行编程,但它们体积大、能力有限,而且功耗比ASIC大。正因如此,FPGA和ASIC正在互相融合,取长补短。随着一些ASIC制造商提供具有可编程逻辑的标准单元,FPGA制造商重新对标准逻辑单元发生兴趣。
 
    动态可重构FPGA是指在一定条件下芯片不仅具有在系统重新配置电路功能的特性,而且还具有在系统动态重构电路逻辑的能力。对于数字时序逻辑系统,动态可重构FPGA的意义在于其时序逻辑的发生不是通过调用芯片内不同区域、不同逻辑资源来组合而成,而是通过对FPGA进行局部的或全局的芯片逻辑的动态重构而实现的。动态可重构FPGA在器件编程结构上具有专门的特征,其内部逻辑块和内部连线的改变,可以通过读取不同的S 中的数据来直接实现这样的逻辑重构,时间往往在纳秒级,有助于实现FPGA系统逻辑功能的动态重构。

    4、小结

    FPGA/CPLD迅速发展大大促进了电子设计技术的进步,并且有利于开发具有自己知识产权的专用集成电路。随着半导体制造工艺的不同提高,FPGA 的集成度将不断提高,制造成本将不断降低,其作为替代ASIC来实现电子系统的前景将日趋光明。

本文为e-works原创投稿文章,未经e-works书面许可,任何人不得复制、转载、摘编等任何方式进行使用。如已是e-works授权合作伙伴,应在授权范围内使用。e-works内容合作伙伴申请热线:editor@e-works.net.cn tel:027-87592219/20/21。

责任编辑:江琦
2
;