登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

FPGA与CPLD的区别

作者:wzy_0649 栏目:EDA技术
FPGA与CPLD的区别
系统的比较,与大家共享:
尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:
①CPLD更适合完成各种算法和组合逻辑,FP GA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。

②CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。

③在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FP GA可在逻辑门卤喑?而CPLD是在逻辑块下编程。

④FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。

⑤CPLD比FPGA使用起来更方便。CPLD的编程采用E2PROM或FASTFLASH技术,无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。

⑥CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。

⑦在编程方式上,CPLD主要是基于E2PROM或FLASH存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。CPLD又可分为在编程器上编程和在系统编程两类。FPGA大部分是基于SRAM编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入SRAM中。其优点是可以编程任意次,可在工作中快速编程,从而实现板级和系统级的动态配置。

⑧CPLD保密性好,FPGA保密性差。

⑨一般情况下,CPLD的功耗要比FPGA大,且集成度越高越明显。


2楼: >>参与讨论
xjg1111
好文不错~~
 
3楼: >>参与讨论
luoxiao
不错的文章!顶!
 
4楼: >>参与讨论
crazyeda
真棒,澄清了我好几个长期困扰的问题.谢谢楼主
 
5楼: >>参与讨论
avlicht
re
 
6楼: >>参与讨论
and
[转] 继续
随著复杂可编程逻辑器件(CPLD)密度的提高,数字器件设计人员在进行大型设计时,既灵活又容易,而且产品可以很快进入市场。许多设计人员已经感受到CPLD容易使用、时序可预测和速度高等优点,然而,在过去由于受到CPLD密度的限制,他们只好转向FPGA和ASIC。现在,设计人员可以体会到密度高达数十万门的CPLD所带来的好处。
CPLD结构在一个逻辑路径上采用1至16个乘积项,因而大型复杂设计的运行速度可以预测。因此,原有设计的运行可以预测,也很可靠,而且修改设计也很容易。CPLD在本质上很灵活、时序简单、路由性能极好,用户可以改变他们的设计同时保持引脚输出不变。与FPGA相比,CPLD的I/O更多,尺寸更小。

如今,通信系统使用很多标准,必须根据客户的需要配置设备以支持不同的标准。CPLD可让设备做出相应的调整以支持多种协议,并随著标准和协议的演变而改变功能。这为系统设计人员带来很大的方便,因为在标准尚未完全成熟之前他们就可以著手进行硬件设计,然后再修改代码以满足最终标准的要求。CPLD的速度和延迟特性比纯软件方案更好,它的NRE费用低於ASIC,更灵活,产品也可以更快入市。CPLD可编程方案的优点如下:
●逻辑和存储器资源丰富(CYPRESS Delta39K200的RAM超过480 Kb)
●带冗余路由资源的灵活时序模型
●改变引脚输出很灵活
●可以装在系统上后重新编程
●I/O数目多
●具有可保证性能的集成存储器控制逻辑
●提供单片CPLD和可编程PHY方案
由于有这些优点,设计建模成本低,可在设计过程的任一阶段添加设计或改变引脚输出,可以很快上市

CPLD的结构
CPLD是属於粗粒结构的可编程逻辑器件。它具有丰富的逻辑资源(即逻辑门与寄存器的比例高)和高度灵活的路由资源。CPLD的路由是连接在一起的,而FPGA的路由是分割开的。FPGA可能更灵活,但包括很多跳线,因此速度较CPLD慢。
CPLD以群阵列(array of clusters)的形式排列,由水平和垂直路由通道连接起来。这些路由通道把信号送到器件的引脚上或者传进来,并且把CPLD内部的逻辑群连接起来。


CPLD之所以称作粗粒,是因为,与路由数量相比,逻辑群要大得到。CPLD的逻辑群比FPGA的基本单元大得多,因此FPGA是细粒的。

CPLD的功能块
CPLD最基本的单元是宏单元。一个宏单元包含一个寄存器(使用多达16个乘积项作为其输入)及其它有用特性。
因为每个宏单元用了16个乘积项,因此设计人员可部署大量的组合逻辑而不用增加额外的路径。这就是为何CPLD被认为是“逻辑丰富”型的。

宏单元以逻辑模块的形式排列(LB),每个逻辑模块由16个宏单元组成。宏单元执行一个AND操作,然后一个OR操作以实现组合逻辑。

每个逻辑群有8个逻辑模块,所有逻辑群都连接到同一个可编程互联矩阵。
每个群还包含两个单端口逻辑群存储器模块和一个多端口通道存储器模块。前者每模块有8,192b存储器,后者包含4,096b专用通信存储器且可配置为单端口、多端口或带专用控制逻辑的FIFO。

CPLD有什麽好处?
I/O数量多
CPLD的好处之一是在给定的器件密度上可提供更多的I/O数,有时甚至高达70%。
时序模型简单
CPLD优于其它可编程结构之处在于它具有简单且可预测的时序模型。这种简单的时序模型主要应归功于CPLD的粗粒度特性。
CPLD可在给定的时间内提供较宽的相等状态,而与路由无关。这一能力是设计成功的关键,不但可加速初始设计工作,而且可加快设计调试过程。

粗粒CPLD结构的优点
CPLD是粗粒结构,这意味著进出器件的路径经过较少的开关,相应地延迟也小。因此,与等效的FPGA相比,CPLD可工作在更高的频率,具有更好的性能。
CPLD的另一个好处是其软件编译快,因为其易于路由的结构使得布放设计任务更加容易执行。

细粒FPGA结构的优点
FPGA是细粒结构,这意味著每个单元间存在细粒延迟。如果将少量的逻辑紧密排列在一起,FPGA的速度相当快。然而,随著设计密度的增加,信号不得不通过许多开关,路由延迟也快速增加,从而削弱了整体性能。CPLD的粗粒结构却能很好地适应这一设计布局的改变。


灵活的输出引脚
CPLD的粗粒结构和时序特性可预测,因此设计人员在设计流程的后期仍可以改变输出引脚,而时序仍保持不变。

很多设计人员偏爱CPLD是因为它简单易用和高速的优点。CPLD更适合逻辑密集型应用,如状态机和地址解码器逻辑等。而FPGA则更适用于CPU和DSP等寄存器密集型设计。  

新的CPLD封装
CPLD有多种密度和封装类型,包括单芯片自引导方案。自引导方案在单个封装内集成了FLASH存储器和CPLD,无须外部引导单元,从而可降低设计复杂性并节省板空间。在给定的封装尺寸内,有更高的器件密度共享引脚输出。这就为设计人员提供了“放大”设计的便利,而无须更改板上的引脚输出。

CPLD的功耗
与同样密度的FPGA相比,CPLD的待机功耗更低。

     CPLD FPGA (待機電流(在Vcc 為1.8V時))
50K 300μA 200MA
100K 600μA 200MA
200K 1.25mA 300mA


CPLD特别适合那些要求低功耗和低温度的电池供电应用,像手持设备。

许多设计人员都熟悉传统的PLD,并喜欢这种结构所固有的灵活性和易用性。CPLD为ASIC和FPGA设计人员提供了一种很好的替代方案,可让他们以更简单、方便易用的结构实现其设计。CPLD现已达到数十万门的密度,并可提供当今通信设计所需的高性能。大于50万门的设计仍需ASIC和FPGA,但对于小型设计,CPLD不失为一个高性价比的替代方案。  

FPGA采用了逻辑单元阵列LCA(LOGIC Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable LOGIC Block)、输出输入模块IOB(Input OUTPUT Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有:
  1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。 ——2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
  3)FPGA内部有丰富的触发器和I/O引脚。
  4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
  5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
  可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
  目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。
  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作为微处理器的外设,由微处理器对其编程。


7楼: >>参与讨论
xjg1111
比较祥细了~~~
 
8楼: >>参与讨论
whuroger
好文
 
9楼: >>参与讨论
nirencai
谢谢楼主
谢谢楼主:
     谢谢楼主,
     让我对CPLD&FPGA有了一个更全的认识!
     
                                   NIRENCAI

10楼: >>参与讨论
bebe00
精辟
 
11楼: >>参与讨论
wzy_0649
二楼主比较强了,继续
CPLD和FPGA面面观(转)

   CPLD和FPGA在工业界已被广泛的应用,这种成功主要是以牺牲门阵列、及标准单元电路ASIC为代价的。为了使触发器触发速率和快速路由的延迟得到近似于真实设计的结果,可编程逻辑的速度也得加快。尤其是,如果你可能会使用到可编程逻辑器件所提供的嵌入式存储器的时候,因为它的容量增多,因此,相应地按每门计算的成本也更加便宜。

    可编程逻辑器件的这种发展趋势尤其受到人们的欢迎,特别是当你的用量太少,不足以让ASIC厂家或制造商感兴趣,或是在掩模和NRE的成本随每一代处理工艺成指数上涨,而你的用量又很少,无法全部摊入成本时,可编程逻辑器件更是受欢迎了。ASIC一般都要求你详细开列出每个裸芯片功能验证和定时验证的全套测试向量数据;而这些,在CPLD和FPGA中,则是由制造厂家自己处理的。
   从产品上市时间快慢的角度来考虑,一般来说,ASIC从设计完成到你拿到第一个样品的时间,总会在几周或几个月以后。几周或几个月的耽搁时间与你花几分钟就能从代销商或供应商的货架上买到PLD,然后就开始调试你的设计,这中间时间相差实在是太大了。加之,在投产前为了排除故障或再增加某些功能什么的,还要对设计做些修改,以及ASIC NRE的成本和相当长的制造周期,综合起来,确实是个大问题。
    当然,如果你的设计用到的产品产量较大,而你也能解决制造周期长的问题,那么,标准单元电路ASIC还是你的每门最低成本首选的代表。ASIC也有速度比FPGA和CPLD高得多、功耗更低的品种。正像某些闪速存储器用户所希望地那样,他们可以转而使用更便宜的掩膜ROM。许多可编程逻辑器件的用户,特别是那些不用现场可重新编程技术的用户,总是怀着妒忌的心态看待ASIC器件,因此也不知出于什么原因,在他们的设计中都不曾用过ASIC。


寻求中间道路
    有些厂商认为还有第三种选择:把可编程逻辑和门阵列及标准单元电路的ASIC组合在同一个器件上。他们这些方法虽在每种型号逻辑器件的裸芯片百分比和纳入ASIC部分的方式(如有)上是不一样的。但基本的动机却是相同的:那就是把这两种技术的精华合二为一。然而,这个目标的现实性究竟有多大呢?
如果你的目的只是为了降低成本,那么,这种混合逻辑的电路的生命力至今还不清楚,只不过进化的演变很快而已。以到处都能见到的PCI芯核为例。就在两年前,可编程逻辑器件的厂家们还在拼命设法做出目的只是32位的芯片,但其体积要求小到使用户只要有一块地方就可以做他专用的逻辑器件,甚至厂家的体积最大的器件也是如此。而今天,64位的器件,包括启动程序加上目标芯核(FIFO缓冲器除外,其体积和数量取决于设计)的体积。估计只占ALTERA公司(www.altera.com)即将上市EP20K1500E逻辑资源的2.4%,占XILINX公司(www.xilinx.com)即将上市XCV3200E逻辑资源的1%。
    就算这些片子的价格比较昂贵。但是从图1所示的过去几年来每门成本价的走向和对今后几年的预示趋势可以看出:制造商们正在大量销售这些通用的逻辑器件,而且含盖了各种类别的用户和应用项目。混合式的器件可能会使裸芯的体积更小一些,但这取决于ASIC对可编程逻辑器件所占的比例。当然,裸芯片的尺寸大小也只占整个器件成本的一部分。还有其他因素,例如用户的测试流程,生产线新生项目的管理以及因产量小而造成的生产效益减少等,在促使价格提高上都起着等同的或且更大的作用。
    要使逻辑器件达到相当大的产量,像微处理器那样,则ASIC门电路还是最佳上选(参考文献3)。大型的CPLD和FPGA器件上何时能装上这种类型的片芯,在一定程度上取决于这类芯核能用的片上存储器的数量。XILINX公司曾宣称,以0.18mmXCV2000E Virtex-E FPGA所含有"系统"门,是0.22mmXCV1000 Virtex器件的两倍。但是从Virtex到Virtex-E,逻辑单元电路的数量只增加了50%;门电路的其余增量大部分却来自数字延迟锁定回路DLL)成倍的增加,以及片上Block SelectRAM的数量增加了五倍。
    从概念上讲,嵌套式存储器作为CPU芯核的一级和二级超高速缓存器,应该是有用武之地的,但是优化的超高速缓存设计要求的阵列电路,比适用于其他逻辑电路的可能要大。否则超高速缓存的功能会因此受到严重影响,通用逻辑门电路的可用量也会下降,除非生产厂家另行设置专用的超高速缓存控制器逻辑电路才行。这种片上逻辑电路类似于可编程逻辑器件厂家提供的DLL和PLL及双端口RAM、内容定址存储器、FIFO缓冲器以及其他的专用功能的资源。但是又与某些电路不同,超高速缓存逻辑器件的可应用性更为有限。片子的专用程度越高,应用的领域和用户就越少,潜在的产量也就越低。

对速度的要求
    功能是采用混合式芯片的更为重要的理由。例如,要是你的CPU芯核需要的运行速度只相当于标准产品的速度,那么ASIC就是唯一的选择。可编程逻辑器件的厂家都宣称,他们64位的PCI芯核曾达到过66MHZ的速度,这些芯核在某些情况下,特别是在非零等待状态的配置中,可能的确能做到。但是在这样做时,媒体认为,至少有一些芯核对前端和后端的工具提出了这种不灵活的定位要求,因为在这种设计内用户的专用部分,达不到门电路数和功能的要求。
    不久以前,设计师们也曾对33MHZ PCI提出过同样的问题,所以从温故知新的角度看,生机盎然的66MHZ运行几乎肯定迟早会到来。ASIC和可编程逻辑器件之间在I/O缓冲器电性能和速度上的差距,也在迅速地缩小(可参考Dyna Chips公司(www.dyna.com)的DY8000器件,和前面提到过了ALTERA公司和XILINX公司的结构)。不过,互连接点丰富的ASIC逻辑器的最高速度一直都比被路由矩阵制约的CPLD和受通过-晶体管限制的FPGA的速度要快,在某种程度上说,甚至比反熔丝的FPGA还快。
    还有没有别的用ASIC做的高速逻辑芯核的新的应用领域呢?如果有,这对可编程逻辑器件的灵活性也会增加一定的砝码。虽然FPGA厂家开始表白他们有信心支持顺控制器用于133MHZ和双数据速率(DOR)同步DRAM,以及用于无等待延迟、DDR和四数据速率同步SRAM的存储控制器,但他们都闭口不谈Rambus公司(www.rambus.com)的DRAM(RDRAM)控制器(RAC)。RAC有很高的功能要求,它们从外部到内部的带宽扇出,会使可编程-逻辑-路由的资源受到破坏。
    RDRAM的单存储器宽度信道接口能实现的系统颗粒度,比它用宽总线SDRAM获得同样峰值带宽所用的最低密度还小。在嵌套式设计中,这个因素具有特别的价值。PC和其他消费类产品的制造商,如SONY公司(www.sony.com)的Playstation2,都在尽量地加大其产量,以求降低目前RDRAM与异步的DRAM和SDRAM相比不断升高的成本。所以,如果在不远的将来,混合式芯片的生产厂家会提供可编程逻辑器件与RAC的组合器件,那就没有什么大惊小怪的了。
    许多高速网络化接口和通信接口规约,对速度的要求也是可编程逻辑器件目前不能处理的难题。其中另外一条对许多器件都是共同的需要的,那就是混合信号集成,这一条也给ASIC-加-可编程-逻辑混合器件带来了新的生机,除了PLL外,今天的CPLD和FPGA显然已无法处理模拟信号。专用钟频恢复电路和无线基带处理,是标准单元电路和定制ASIC处理所独具的模拟功能实例。
    在用CPLD和FPGA做较大设计中,功耗仍然是伤脑筋的事情(参考文献8)。在许多情况下,通过封装工艺和缩微印刷技术的不断改进,生产厂家已经能够使器件的工作电压逐步降低,从而也使器件能保持(基本上保持)在工作温度的阈值以下,因为超过工作温度阈限值器件的功能和长期可靠性就会遭到损坏。I/O缓冲器的灵活性使得可以把这些器件与电源电压和输入电平较高、输出摆幅也较大的那些传统器件相连接。但是,过高的工频加上内部逻辑节点频繁的触动,会要求增加散热处理或强制通风冷却,或两者都要具备。在ASIC里加上一些快速逻辑电路就会降低整个器件的功耗;但对芯片的"热点"仍然不能掉以轻心。

开路先锋
    PCI的被普遍认可不仅是在PC领域,在各式各样的嵌套式设计中也大受欢迎,这就使生产厂家自然而然地把用PCI做的产品,作为打向混合芯片新天地的第一块问路石(请阅附文"全体到场了吗?")。在开发OR3TP12的过程中,Lncent TECHNOLOGIES公司用一个以ASIC为基础的85000个门的门阵列64位、66MHZ PCI启动程序目标芯核,来代替72个OR3T55的324个逻辑单元电路。OR3TP12还保留252个可编程逻辑单元,LUCENT公司估计能容纳专用逻辑30000到60000个门。
    以0.35μm工艺制作的OR3TP12上包含有两个64T32位的启动程序和两个64T16位的目标FIFO存储器。四个16位或两个32位的信号通道在ASIC芯核和FPGA分隔区之间形成桥路。LUCENT公司也刚开始销售OR3LP26B,这是OR3TP12的改进型号,它以0.25μm工艺制造,可以使FPGA逻辑器件的功能更快,并把PCI芯核与FPGA子阵列之间的互连接点翻了一番。LUCENT公司还把OR3LP26B上的FPGA逻辑器件的数量也翻了一番,并改进了在PCI芯核和可编程逻辑器件之间运行的钟频分布集成网络。
    在半导体厂家中也只有LUCENT公司和ATMEL公司,在同一个公司"屋檐"下既有ASIC事业部,又有可编程逻辑事业部。Luecnt公司打算利用这种混合逻辑器件的能力,把PCI再瞄向通信接口市场的其他领域。该公司的ORT46222000年的第一季度投产,就是这种打算中的首个例子(图2)。这种芯片上有四个78MHz、8位、双向接口变换成有622Mbps同步光纤网络(SONET)能力的四条全双工串行信道。
也就是说,这个方法能使2.5千兆位的数据流同时流入和流出ORT4622。这个芯片还集成了一些以模拟
参与讨论
昵称:
讨论内容:
 
 
相关帖子
verilog 不理解!
问一个初级问题?CPLD的PIA?
请教:用vhdl如何编写8位乘法器??急,3q
请教这个VHDL语句的意思?
[求教]Verilog设计流水线遇到的两个问题?
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号