CPLDFPGA比较.docx
《CPLDFPGA比较.docx》由会员分享,可在线阅读,更多相关《CPLDFPGA比较.docx(6页珍藏版)》请在冰豆网上搜索。
CPLDFPGA比较
CPLD&FPGA性能分析比较
在进行这次分析前,首先来一起认识下CPLD与FPGA。
Ⅰ.
1).什么是CPLD?
CPLD发展历史及应用领域:
20世纪70年代,最早的可编程逻辑器件--PLD诞生了。
其输出结构是可编程的逻辑宏单元,因为它的硬件结构设计可由软件完成(相当于房子盖好后人工设计局部室内结构),因而它的设计比纯硬件的数字电路具有很强的灵活性,但其过于简单的结构也使它们只能实现规模较小的电路。
为弥补PLD只能设计小规模电路这一缺陷,20世纪80年代中期,推出了复杂可编程逻辑器件--CPLD。
目前应用已深入网络、仪器仪表、汽车电子、数控机床、航天测控设备等方面。
2).器件特点:
它具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格大众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计和产品生产(一般在10,000件以下)之中。
几乎所有应用中小规模通用数字集成电路的场合均可应用CPLD器件。
CPLD器件已成为电子产品不可缺少的组成部分,它的设计和应用成为电子工程师必备的一种技能。
3)如何使用:
CPLD是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。
其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。
这里以抢答器为例讲一下它的设计(装修)过程,即芯片的设计流程。
CPLD的工作大部分是在电脑上完成的。
打开集成开发软件(Altera公司Max+pluxII)→画原理图、写硬件描述语言(VHDL,Verilog)→编译→给出逻辑电路的输入激励信号,进行仿真,查看逻辑输出结果是否正确→进行管脚输入、输出锁定(7128的64个输入、输出管脚可根据需要设定)→生成代码→通过下载电缆将代码传送并存储在CPLD芯片中。
7128这块芯片各管脚已引出,将数码管、抢答开关、指示灯、蜂鸣器通过导线分别接到芯片板上,通电测试,当抢答开关按下,对应位的指示灯应当亮,答对以后,裁判给加分后,看此时数码显示加分结果是否正确,如发现有问题,可重新修改原理图或硬件描述语言,完善设计。
设计好后,如批量生产,可直接复制其他CPLD芯片,即写入代码即可。
如果要对芯片进行其它设计,比如进行交通灯设计,要重新画原理图、或写硬件描述语言,重复以上工作过程,完成设计。
这种修改设计相当于将房屋进行了重新装修,这种装修对CPLD来说可进行上万次。
4).家庭成员:
经过几十年的发展,许多公司都开发出了CPLD可编程逻辑器件。
比较典型的就是Altera、Lattice、Xilinx世界三大权威公司的产品,这里给出常用芯片:
AlteraEPM7128S(PLCC84)
LatticeLC4128V(TQFP100)
XilinxXC95108(PLCC84)
Ⅱ.
1).什么是FPGA:
FPGA是英文FieldProgrammableGateArray的缩写,即现场可编程门阵列,它是在可编程阵列逻辑PAL(ProgrammableArrayLogic)、门阵列逻辑GAL(GateArrayLogic)、可编程逻辑器件PLD(ProgrammableLogicDevice)等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路ASIC(ApplicationSpecificIntegratedCircuit)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA能完成任何数字器件的功能,上至高性能CPU,下至简单的74系列电路,都可以用FPGA来实现。
FPGA如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由设计一个数字系统。
通过软件仿真,我们可以事先验证设计的正确性。
在PCB完成以后,还可以利用FPGA的在线修改能力,随时修改设计而不必改动硬件电路。
使用FPGA来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可*性。
PLD的这些优点使得PLD技术在90年代以后得到飞速的发展,同时也大大推动了电子设计自动化EDA(ElectronicDesignAutomatic)软件和硬件描述语言VHDL(Very-High-SpeedIntegratedCircuitHardwareDescription)的进步。
2).FPGA的特点
FPGA具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。
兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。
与门阵列等其它ASIC相比,它又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一般在10,000件以下)之中。
几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA
FPGA采用了逻辑单元阵列LCA(LogicCellArray)这样一个新概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输出输入模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分。
FPGA的基本特点主要有:
一是采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。
二是FPGA可做其它全定制或半定制ASIC电路的中试样片。
三是FPGA内部有丰富的触发器和I/O引脚。
四是FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
五是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作为微处理器的外设,由微处理器对其编程
3).FPGA与ASIC、CPLD
1、FPGA和ASIC的比较
ASIC是英文的ApplicationSpecificIntegratedCircuits缩写,即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。
目前用CPLD(复杂可编程逻辑器件)和FPGA(现场可编程逻辑阵列)来进行ASIC设计是最为流行的方式之一,它们的共性是都具有用户现场可编程特性,都支持边界扫描技术,但两者在集成度、速度以及编程方式上具有各自的特点。
ASIC的特点是面向特定用户的需求,品种多、批量少,要求设计和生产周期短,它作为集成电路技术与特定用户的整机或系统技术紧密结合的产物,与通用集成电路相比具有体积更小、重量更轻、功耗更低、可*性提高、性能提高、保密性增强、成本降低等优点。
FPGA特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易的由ASIC实现,因此开发风险也大为降低。
但ASIC也有它固有的优势,芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,批量成本低,所以在今后一段时间内ASIC仍然会占据高端芯片市场和大批量应用的成熟中低端市场。
2、FPGA与CPLD的比较
尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:
一是CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。
换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。
二是CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
三是在编程上FPGA比CPLD具有更大的灵活性。
CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。
四是FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
五是CPLD比FPGA使用起来更方便。
CPLD的编程采用E2PROM或FASTFLASH技术,无需外部存储器芯片,使用简单。
而FPGA的编程信息需存放在外部存储器上,使用方法复杂。
六是PLD的速度比FPGA快,并且具有较大的时间可预测性。
这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。
七是在编程方式上,CPLD主要是基于E2PROM或FLASH存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。
CPLD又可分为在编程器上编程和在系统编程两类。
FPGA大部分是基于SRAM编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入SRAM中。
其优点是可以编程任意次,可在工作中快速编程,从而实现板级和系统级的动态配置。
八是CPLD保密性好,FPGA保密性差。
九是一般情况下,CPLD的功耗要比FPGA大,且集成度越高越明显
Ⅲ.
在此做下简要介绍:
什么是I/O单元?
I/O单元为内部信号到I/O引脚的接口部分。
以CPLD为例:
CPLD只有几个专用输入端,大部分为I/O端口,系统输入信号常常需要锁存,因此I/O常用作独立单元来处理。
其组成包括:
输出极性转换电路,触发器,输出三态缓冲器及相关选择电路。
I/O控制模块:
1.与RAL兼容的控制模块;
2.与GAL兼容的控制模块——输出宏单元(OMC);
3.触发器可编程控制模块;
4.两路积项和输入与两个触发器的I/O控制模块;
5.三路积项和输入与两个触发器的I/O控制模块;
Ⅳ.
CPLD和FPGA的优点:
1、规模越来越大,实现功能越来越强,同时可以实现系统集成。
2、研制开发费用低,不承担投片风险,使用方便。
3、通过开发工具在计算机上完成设计,电路设计周期短。
4、不需要设计人员了解很深的IC知识,EDA软件易学易用。
5、通过FPGA和CPLD开发的系统成熟后,可以进行ASIC设计,形成批量生产。
CPLD和FPGA的主要区别:
1、布线能力CPLD内连率高,不需要人工布局布线来优化速度和面积,较FPGA更适合于EDA芯片设计的可编程验证。
2、延迟小预测能力CPLD连续式布线结构决定时序延时是均匀的和可预测的,FPGA分段式布线结构决定了不可预测时间延迟。
3、集成度的不同CPLD:
500~50000门;FPGA:
1K~10M门
4、应用范围的不同CPLD逻辑能力强而寄存器少,适用于控制密集型系统;FPGA逻辑能力较弱但寄存器多,适于数据密集型系统。
Ⅴ.
接下来一起来认识下主要的供应厂商。
Xilinx公司简介:
Xilinx公司1985年推出第一片百万门Virtex系列FPGA,成为最早推出FPGA产品的厂商,它始终占据FPGA市场的主流地位。
其主要产品型号:
XC9500/4000Coolrunner(XPLA3)
Spartan
Vertex
主要的开发软件包括:
Foundation&ISE
Altera公司简介:
自二十年前发明世界上第一个可编程逻辑器件开始,Altera公司(NASDAQ:
ALTR)秉承了创新的传统,是世界上“可编程芯片系统”(SOPC)解决方案倡导者。
Altera结合带有软件工具的可编程逻辑技术、知识产权(IP)和技术服务,在世界范围内为14,000多个客户提供高质量的可编程解决方案。
公司与1999年推出APEX20K,成为世界上最大的PLD供应商之一。
其主要产品型号:
MAX3000A
MAX7000
FLEX6K
FLEX10K
APEX20K
ACEX20K
主要的开发软件包括:
Quartas,MAX-plus2
其它生产厂商包括:
Actel在产品结构上不同于其它公司的Sea-Of-Gate的模式,公司是“反熔丝”PLD领导者。
Lattice公司为半导体器件公司,是E2CMOS技术的开拓者。
Atmel
Cypress
Quicklogic
AMD
Lucent
ClearLogic
WSI
TI等。
Ⅵ.
目前世界上欧洲用Xilinx公司产品的占多数,日本及亚太用Altera公司产品的占多数,在美国两个公司的市场份额平分秋色。
FPGA兼容MPGA与PLD二者优点。
但是门阵列需要掩模编程,成本高,风险大,除非设计非常纯熟以及生产批量极大时才会使用。
因此初步认识后建议使用CPLD,其相比较其FPGA具有使用方便,信号传输快,适合各种算法以及组合逻辑,同时具有时序延迟可预测性,并且保密性好等优点。
最看重的是它的断电信息不丢失能力(FPGA断电重新启动后需要重新写入SRAM),以及CPLD本身具备I/O数目多的优势,根据不同需要,最高I/O比例可高达70%。
以上只是对两类器件的初步认识,在这一周时间里会更加完善对它们的评价,并作出份合适的报告上交。
学员:
胡振东
工号:
1866
日期:
2007.9.10