e-works数字化企业网  »  文章频道  »  工业自动化控制  »  控制元件

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

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

    1、引言

    可编程逻辑器件(Programmable Logic Device,PLD)给数字系统的设计带来了革命性的变化。它的影响丝毫不亚于20世纪70年代单片机的发明和使用, PLD能完成任何数字器件的功能,上至CPU,下至简单的74电路。PLD如同一张白纸,可通过原理图输入法或硬件描述语言,或两者混合自由的设计一个数字系统。使用PLD来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。PLD的这些优点使得PLD技术从20世纪90年代以后得到飞速的发展,成为电子设计领域中最具有活力和发展前途的一项技术。

    2、ASIC、FPGA/CPLD的区别

    2.1 ASIC定义及设计分类

    ASIC(Application Specific Intergrated Circuits)即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。目前用CPLD(复杂可编程逻辑器件)和FPGA(现场可编程逻辑阵列)来进行ASIC设计是最为流行的方式之一,它们的共性是都具有用户现场可编程特性,都支持边界扫描技术,但两者在集成度、速度以及编程方式上具有各自的特点。ASIC的特点是面向特定用户的需求,品种多、批量少,要求设计和生产周期短,它作为集成电路技术与特定用户的整机或系统技术紧密结合的产物,与通用集成电路相比具有体积更小、重量更轻、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。

    ASIC 设计主要有全定制(full custom)设计方法和半定制(semi- custom)设计方法。半定制设计又可分为门阵列设计、标准单元设计、可编程逻辑设计等等。全定制方法是完全由设计师根据工艺,以尽可能高的速度和尽可能小的面积以及完全满意的封装、独立地进行芯片设计。这种方法虽然灵活性高,而且可以达到最优的设计性能,但是需要花费大量的时间与人力来进行人工的布局布线,而且一旦需要修改内部设计,将不得不影响到其它部分的布局。所以,它的设计成本相对较高,适合于大批量的ASIC 芯片设计,如存储芯片的设计等等。相比之下,半定制方法是一种基于库元件的约束性设计。约束的主要目的是简化设计、缩短设计周期,并提高芯片的成品率。它更多地利用了EDA 系统来完成布局布线等工作,可以大大地减少设计工程师的工作量,因此它比较适合于小规模设计生产和实验。

    2.2 FPGA/CPLD定义及区别

    CPLD(复杂逻辑可编程器件)和FPGA(现场可编程门阵列)是80年代中后期出现的,其特点是具有用户可编程的特性。利用CPLD/FPGA,电子系统设计工程师可以在实验室中设计出专用IC,实现系统的集成,从而大大缩短了产品开发、上市的时间,降低了开发成本。此外,CPLD/FPGA还具有静态可重复编程或在线动态重构特性,使硬件的功能可像软件一样通过编程来修改,不仅使设计修改和产品升级变得十分方便,而且极大地提高了电子系统的灵活性和通用能力。以FPGA为核心的PLD产品是近几年集成电路中发展得最快的产品。随着FPGA性能的高速发展和设计人员自身能力的提高,FPGA将进一步扩大可编程芯片的领地,将复杂专用芯片挤向高端和超复杂应用。IP资源复用理念将得到普遍认同并成为主要设计方式,MCU,DSP,MPU等嵌入式处理器IP将成为FPGA应用的核心。

    2.2.1 CPLD定义及特点

    CPLD主要是由可编程逻辑宏单元(LMC,Logic Macro Cell)围绕中心的可编程互连矩阵单元组成,其中LMC逻辑结构较复杂,并具有复杂的I/O单元互连结构,可由用户根据需要生成特定的电路结构,完成一定的功能。由于CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。到90年代,CPLD发展更为迅速,不仅具有电擦除特性,而且出现了边缘扫描及在线可编程等高级特性。

    CPLD可编程方案的优点如下:

  • 逻辑和存储器资源丰富(Cypress De1ta 39K200的RAM超过480 Kb)
  • 带冗余路由资源的灵活时序模型
  • 改变引脚输出很灵活
  • 可以装在系统上后重新编程
  • I/O单元数目多
  • 具有可保证性能的集成存储器控制逻辑
  • 提供单片CPLD和可编程PHY方案

    2.2.2 FPGA定义及特点

    FPGA采用了逻辑单元阵列LCA ( Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB ( Configurable Logic Block )、输入输出模块IOB ( Input Output Block )和内部连线(Interconnect)三个部分。可配置逻辑模块是实现用户功能的基本单元,它们通常排列成一个阵列,散布整个芯片;输入输出模块IOB完成芯片上逻辑与外部封装脚的接口,常围绕着阵列排列于芯片四周;内部连线包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或I/O块连接起来,构成特定功能的电路。不同厂家生产的FPGA在可编程逻辑块的规模,内部互连线的结构和采用的可编程元件上存在较大的差异。较常用的有Altera,Xilinx和Actel公司的FPGA。

    FPGA的基本特点主要有:

  • 采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片
  • FPGA可做其它全定制或半定制ASIC电路的中试样片
  • FPGA内部有丰富的触发器和I/O引脚
  • FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一
  • FPGA采用高速CHMOS工艺,功耗低,可以与CMOS,TTL电平兼容

    FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM,PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。

    FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式,主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA,外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。

    FPGA是80年代中期出现的高密度可编程逻辑器件(PLD)。FPGA器件及其系统软件是开发大规模数字集成电路的最新技术。它利用计算机辅助设计,以电路原理图、VHDL、布尔方程、真值表或状态机等格式,输入设计逻辑,然后经一系列变换,将输入的逻辑转换成适合于FPGA器件结构的图形文件或文本形式.此时不仅可以观察整个设计在器件中实际布线的结果,了解各网络的延时特性,进行人工修改或编辑:从而可利用模拟手段,对设计的输入、输出及任意点信号进行模拟仿真,包括验证设计功能是否正确的功能模拟,以及确定最终设计是否满足相位和延时要求的定时模拟。把经过模拟验证后的设计文件转换成比特流文件或PROM(可编程只读存储器)格式文件,把常规的编程器对EPROM(可擦可编程只读存储器)编程。然后把这EPROM与FPGA器件适当连接,加上(5V)电源。此FPGA器件就可作为大规模专用集成电路使用。用不同的设计文件配置同一块FPGA“白片”,则可实现不同的逻辑功能。FPGA器件可实现所有数字电路功能。目前,器件集成度己经达到了两万门数量级,工作频率可达300MHz以上。一般可在几个小时或几天内完成一个设计,并可随时修改。这加速了产品设计开发的进程,免去了昂贵的ASIC(专用集成电路)器件半导体生产工艺费用及投资风险。

责任编辑:江琦
本文为e-works原创投稿文章,未经e-works书面许可,任何人不得复制、转载、摘编等任何方式进行使用。如已是e-works授权合作伙伴,应在授权范围内使用。e-works内容合作伙伴申请热线:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐