对于系统的比较,我们需要分享一些信息:尽管FPGA和CPLD都是可编程ASIC器件,它们有很多共同的特点,但是由于CPLD和FPGA在结构上存在差异,它们也有各自的特点:
1. CPLD更适合完成各种算法和组合逻辑,而FPGA更适合完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限但乘积项丰富的结构。
2. CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
3. 在编程上,FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,而FPGA主要通过改变内部连线的布线来进行编程;FPGA可以在逻辑门下进行编程,而CPLD是在逻辑块下进行编程。
4. FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
5. CPLD比FPGA使用起来更方便。CPLD的编程采用E2PROM或FASTFLASH技术,无需外部存储器芯片,使用起来更简单。而FPGA的编程信息需要存放在外部存储器上,使用方法更复杂。
6. CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。
7. 在编程方式上,CPLD主要是基于E2PROM或FLASH存储器编程,编程次数可以达到1万次,优点是系统断电时编程信息也不会丢失。CPLD可分为在编程器上编程和在系统编程两类。而大部分FPGA是基于SRAM编程,编程信息在系统断电时会丢失,每次上电时都需要从器件外部将编程数据重新写入SRAM中,但优点是可以编程任意次,可以在工作中快速编程,从而实现板级和系统级的动态配置。
8. CPLD的保密性好,而FPGA的保密性较差。
9. 一般情况下,CPLD的功耗要比FPGA大,尤其在集成度越高的情况下。 随着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的路由是连接在一起的,而FPGA的路由是分割开的。FPGA可能更灵活,但包括很多跳线,因此速度较CPLD慢。CPLD以群阵列(array of clusters)的形式排列,由水平和垂直路由通道连接起来。这些路由通道把信号送到器件的引脚上或者传进来,并且把CPLD内部的逻辑群连接起来。CPLD之所以称作粗粒,是因为,与路由数量相比,逻辑群要大得多。CPLD有多种密度和封装类型,包括单芯片自引导方案。自引导方案在单个封装内集成了FLASH存储器和CPLD,无须外部引导单元,从而可降低设计复杂性并节省板空间。在给定的封装尺寸内,有更高的器件密度共享引脚输出。这就为设计人员提供了“放大”设计的便利,而无须更改板上的引脚输出。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删