CPLD和FPGA和DSP有何区别?速度最快的是哪种?

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-09-11
CPLD和FPGA在应用上有什么不同?

FPGA是现场可编程逻辑门阵列的简称,是电子设计的一个里程碑。CPLD是复杂可变成逻辑器件的简称。尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:
1)、CPLD更适合完成各种算法和组合逻辑,FP GA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。


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


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


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


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


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


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


8)、CPLD保密性好,FPGA保密性差。


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



随着FPGA门数以及性能的提高,可以将现在的许多数字电路部分下载到FPGA上,实现硬件的软件化,包括51核,DSP核以及其他的一些数字模块,到最后一个系统板子就剩下电源、模拟电路部分,接口部分以及一块FPGA。FPGA可以说是芯片级的PCB板,在一个芯片里设计原来的电子系统的所有数字电路部分。现在也有将ARM核嵌入到FPGA里面的,比如Altera公司的Nois核。Nois是一个软核,是有软件编写的一个32位处理器,并不是硬件上存在的处理核,该核工作频率为50HZ,现在用于许多图像处理以及其他的很多网络设备。利用锁相环技术可以将频率成倍提升,一般的ARM核是将锁相环做到芯片里面的,在变成的时候可以对某个寄存器进行设置从而达到分频和倍频的目的。而将DSP核嵌入到FPGA里面去实现强大的计算功能是Altera公司近期推出的一系列芯片的一个优点。Altera公司的Stratix II系列芯片采用内嵌的DSP核,但是其DSP核的计算速度比现在业界上最快的DSP芯片还要快几个数量级。



关于编程方式,目前的 CPLD主要是基于E2 PROM或 FLASH存储器编程 ,编程次数达 1万次。其优点是在系统断电后 ,编程信息不丢失。CPLD又可分为在编程器上编程和在系统编程 (ISP) CPLD两种。 ISP器件的优点是不需要编程器 ,可先将器件装焊于印制板 ,再经过编程电缆进行编程,编程、调试和维护都很方便。FPGA大部分是基于 SRAM编程 ,其缺点是编程数据信息在系统断电时丢失 ,每次上电时 ,需从器件的外部存储器或计算机中将编程数据写入 SRAM中。其优点是可进行任意次数的编程,并可在工作中快速编程 ,实现

******FPGA基于SRAM的架构,集成度高,以LE(包括查找表、触发器及其他)为基本单元,有内嵌Memory、DSP等,支持IO标准丰富。具有易挥发性,需要有上电加载过程。在实现复杂算法、队列调度、数据处理、高性能设计、大容量缓存设计等领域中有广泛应用,如Altera Stratix系列。
******CPLD基于EEPROM工艺,集成度低,以MicroCell(包括组合部分与寄存器)为基本单元。具有非挥发特性,可以重复写入。在粘合逻辑、地址译码、简单控制、FPGA加载等设计中有广泛应用,如Altera MAX3000A系列。
********详细比较:尽管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大,且集成度越高越明显。

  1. CPLD速度最快。

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

  3. DSP主要用来计算,计算功能很强悍,一般嵌入式芯片用来控制,而DSP用来计算,譬如一般手机有一个arm芯片,主要用来跑界面,应用程序,DSP可能有两个,adsp,mdsp,或一个,主要是加密解密,调制解调等。

  4. CPLD是属於粗粒结构的可编程逻辑器件。它具有丰富的逻辑资源(即逻辑门与寄存器的比例高)和高度灵活的路由资源。CPLD的路由是连接在一起的,而FPGA的路由是分割开的。FPGA可能更灵活,但包括很多跳线,因此速度较CPLD慢。

    CPLD以群阵列(array of clusters)的形式排列,由水平和垂直路由通道连接起来。这些路由通道把信号送到器件的引脚上或者传进来,并且把CPLD内部的逻辑群连接起来。



看到你的追问,想到最近自己在调的一个片子,Silicon 的时钟方面芯片(我用的是时钟去抖动的)。。这些芯片一般可编程的,更改一下初始化配置。。就可以适应不同频率的时钟,起到倍频,去抖动等功能,好像最高工作范围可以达到2Ghz,波形可选。。如果你的板子的晶振时钟频率不够高,可以通过便宜的FPGA的PLL被个频送到那种时钟芯片上,处理完后再拉回来。这样一般就能满足各种时钟应用了,具体要什么指标,你可以去和相关的器件供货商了解就是了

好像这个没有必要用到上述任何一种器件吧.... (初步猜测你是想做激光测距仪)
你描述的只是一个普通的时钟信号,T=2ns F=500Mhz。用晶振+PLL就可以了,或者专门做的高频晶振。
不过一般不会做到你想象中的“方波”信号,而是一个类正弦波。

cpld fpga 语言一样, dsp 用c

  • 【多选题】cpld与fpga的区别有。
    答:FPGA广泛应用于高速信号处理、无线通信、图像处理等领域。同时,FPGA还具有开发周期短、易于升级等优点。但随着设计复杂度的增加,FPGA的设计难度和开发成本也可能随之上升。总的来说,CPLD和FPGA各有优势,适用于不同的应用场景。在设计时需综合考虑系统需求、开发成本等因素来选择合适的器件类型。
  • FPGA和CPLD的区别
    答:FPGA和CPLD是两种不同的可编程逻辑器件,各有其独特的优势和适用范围。FPGA,作为现场可编程门阵列,它的主要优势在于时序逻辑处理,适合于触发器丰富的结构设计,且编程灵活性更高,可通过改变内部连线布局进行编程。相比之下,CPLD更适合完成算法和组合逻辑,其连续式布线结构提供了均匀和可预测的时序延迟,...
  • cpld与fpga有何区别?
    答:四、成本考虑 一般而言,CPLD的制造成本相对较低,适用于大规模生产。而FPGA由于其高度的可配置性和灵活性,制造成本相对较高。但在某些需要复杂逻辑和高性能的应用场景中,FPGA的性价比可能更高。总的来说,CPLD和FPGA各有其特点和优势,开发者应根据具体的应用需求和预算来选择最合适的器件。
  • cpld与fpga在结构上有何异同
    答:CPLD(Complex Programmable Logic Device)和FPGA(Field Programmable Gate Array)都是现场可编程门阵列器件。它们的主要作用是实现数字电路的逻辑功能,并且在设计中可以对其进行编程和重新编程,从而灵活地实现不同的电路功能。在结构上,CPLD和FPGA有一些显著的区别。CPLD通常采用可编程逻辑模块(PLD)和可...
  • CPLD和FPGA都有啥区别啊 使用有什么主意点
    答:可以说最大的区别就是FPGA是CPLD的升级版,比CPLD的资源多,比如:1、CPLD没有存储器块的结构,比如M512,M4K等,这些是CPLD所没有的 2、CPLD没有锁相环,无法实现倍频和锁相 3、CPLD的触发器资源太少了……现在FPGA与CPLD的价格相差不大,一般好多地方还都是使用FPGA了。
  • cpld和fpga的区别
    答:一、FPGA与CPLD的基本概念 1.CPLD CPLD主要是由可编程逻辑宏单元(LMC,Logic Macro Cell)围绕中心的可编程互连矩阵单元组成。2. FPGA FPGA通常包含三类可编程资源:可编程逻辑功能块、可编程I/O块和可编程互连。二、FPGA与CPLD区别 ①CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换...
  • CPLD和FPGA区别
    答:从可编程逻辑器件的发展历史上来讲 CPLD一般是指采用乘积相结构的基于EEPROM的器件 所以具有非挥发的 不需要外部配置ROM 具有保密性和有限次编程次数(根据不同的结构 从 次到 万次不等)等特点 适合用在胶合逻辑(glue logic 如DSP芯片外围的译码逻辑) IO扩展 IO电平转换 FPGA芯片配置等应用场合 如Altera的MAX 和MA...
  • CPLD与FPGA有什么区别,学哪种要好些?
    答:其实这两者没什么区别的,无非就是FPGA的门和逻辑器件多些,内部结构有所不同而已,他们所能实现的功能和用途都是一样的。FPGA比CPLD先进些,不过他们的编程都是一样的用的是硬件描述语言,一般还是选用VHDL语言较好,比起其他的硬件语言,如veilog hdl,有更好的应变能力,适应较大程序的编写。至于初学...
  • FPGA与CPLD的区别在哪?
    答:随着芯片技术的发展,CPLD和FPGA的概念已经模糊在一起,如Altera和Lattice公司把小容量(小于2K左右逻辑单元)非挥发的可编程器件归到CPLD里,如Altera的MAXII系列和Lattice的MACH XO系列芯片,把基于SRAM的FPGA和FLASH的储存单元做到一个芯片里面,以及跟传统的CPLD不一样了。那么CPLD与FPGA区别有哪些方面呢?...
  • cpld与fpga工作原理有什么不同
    答:⑧CPLD保密性好,FPGA保密性差。⑨一般情况下,CPLD的功耗要比FPGA大,且集成度越高越明显。=== 但这些区别都是性能问题,通常不用太关心 你可以近似认为cpld和fpga是一回事