原创 FPGA与CPLD的区别

2010-4-23 16:11 3133 6 6 分类: FPGA/CPLD

项目<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


FPGA


CPLD


备注


结构工艺


多为LUT加寄存器结构,实现工艺多为SRAM,也包含FlashAnti-Fuse等工艺


多为乘积项,工艺多为E2COMS,也包含EEPROMFlashAnti-Fuse等不同工艺


 


触发器数量




FPGA更适合实现时序逻辑,CPLD多用于实现组合逻辑


Pin-to-Pin延时


不可预测


固定


FPGA而言,时序约束和仿真非常重要


规模与逻辑复杂度


规模大、逻辑复杂度高,新型器件高达千万门级


规模小、逻辑复杂度低


FPGA用以实现复杂设计,CPLD用于实现简单设计


成本与价格


成本高、价格高


成本低、价格低


CPLD用于实现低成本设计


编程与配置


一般包含两种:外挂BootROM和通过CPUDSP等在线编程。多数基本属于RAM型,掉电后程序丢失


有两种编程方式:一种是通过编程器烧写ROM,另一种较方便的方式是通过ISP模式。一般为ROM型,掉电后程序不丢失


FPGA掉电后一般将丢失原有逻辑配置,而反熔丝工艺的FPGA,如Actel的某些器件族和目前一些内嵌FlashEECMOSFPGA,如LatticeXP器件族,可以实现非易失配置方式


保密性


一般保密性较差



一般FPGA不容易实现加密,但是目前一些采用FlashSRAM工艺的新型器件(LatticeXP系列等),在内部嵌入了加载Flash,能提供更高的保密性


互联结构、连线资源


分布式、丰富的布线资源


集总式、相对布线资源有限


FPGA布线灵活,但是时序更难规划,一般需要通过时序约束、静态时序分析、时序仿真等手段提高并验证时序性能


适用的设计类型


复杂的时序功能


简单的逻辑功能


 


5CPLD的基本结构:早期的CPLD主要用来代替PAL器件,所以其结构与PALGAL基本相同,采用了可编程的与阵列和固定的或阵列结构。在此基础上增加了一个全局共享的可编程与阵列,把多个宏单元连接起来。另外,I/O控制模板的数量和功能都有了进一步的提高。


6FPGA一般由3种可编程电路和一个用于存储编程数据的静态存储器SRAM组成。这3种可编程电路是:可编程逻辑块(CLB: Configurable Logic Block)、输入/输出模块(IOB: I/O  Block)和互连资源(IR: Interconnect Resource)。可编程逻辑块是实现逻辑功能的基本单元,它们通常规则地排列成一个阵列,散布于整个芯片;可编程输入/输出模块主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连线线段和一些可编程连接开关,它们将各个CLB之间、CLBIOB之间以及IOB之间连接起来,构成特定功能的电路。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条