PLD- FPGA与CPLD的区别[通俗易懂]

PLD- FPGA与CPLD的区别[通俗易懂]http://home.eeworld.com.cn/my/space.php?uid=170289&do=blog&id=31215FPGA与CPLD的区别多篇整合系统的比较,与大家共享:尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:①CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑

大家好,又见面了,我是你们的朋友全栈君。

http://home.eeworld.com.cn/my/space.php?uid=170289&do=blog&id=31215

FPGA与CPLD的区别 多篇整合
系统的比较,与大家共享:
尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点:
①CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换句话说,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大,且集成度越高越明显
随著复杂可编程逻辑器件(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有多种密度和封装类型,包括单芯片自引导方案。自引导方案在单个封装内集成了FLASH存储器和CPLD,无须外部引导单元,从而可降低设计复杂性并节省板空间。在给定的封装尺寸内,有更高的器件密度共享引脚输出。这就为设计人员提供了“放大”设计的便利,而无须更改板上的引脚输出。

CPLD跟FPGA的区别:     
cpld是复杂可编程逻辑器件,FPGA叫现场可编程逻辑器件。有点小资料给你看看,但愿有点帮助   
1.CPLD     
CPLD主要是由可编程逻辑宏单元(LMC,Logic   Macro   Cell)围绕中心的可编程互连矩阵单元组成,其中LMC逻辑结构较复杂,并具有复杂的I/O单元互连结构,可由用户根据需要生成特定的电路结构,完成一定   的功能。由于   CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。   到90年代,CPLD发展更为迅速,不仅具有电擦除特性,而且出现了边缘扫描及在线可编程等高级特性。较常用的有Xinlinx公司的EPLD和Altera公司的CPLD。   
2.FPGA     
FPGA通常包含三类可编程资源:可编程逻辑功能块、可编程I/O块和可编程互连。可编程逻辑功能块是实现用户功能的基本单元,它们通常排列成一个阵列,散布于整个芯片;可编程I/O块完成芯片上逻辑与外部封装脚的接口,常围绕着阵列排列于芯片四周;可编程内部互连包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或I/O块连接起来,构成特定功能的电路。不同厂家生产的FPGA在可编程逻辑块的规模,内部互连线的结构和采用的可编程元件上存在较大   的差异。较常用的有Altera、Xinlinx和Actel公司的FPGA。   FPGA一般用于逻辑仿真。电路设计工程师设计一个电路首先要确定线路,然后进行软件模拟及优化,以确认所设计电路的功能及性能。然而随着电路规模的不断增大,工作频率的不断提高,将会给电路引入许多分布参数的影响,而这些影响用软件模拟的方法较难反映出来,所以有必要做硬件仿真。FPGA就可以实现硬件仿真以做成模型机。将软件模拟后的线路经一定处理后下载到FPGA,就可容易地得到一个模型机,从该模型机,设计者就很直观地测试其逻辑功能及性能指标。

FPGA的缺点也在于现场编程,他每次启动的时候需要从外部的存储器(一般是flash)获取培植信息,这时可以通过外部搭接相应的电路获取构造码,从而就可以模仿出第二片同样的芯片来。


FPGA是现场可编程逻辑门阵列的简称,是电子设计的一个里程碑。CPLD是复杂可变成逻辑器件的简称。尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于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芯片还要快几个数量级。   

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140811.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 8个免费和最佳开源视频流服务器软件

    视频流服务器是系统软件,无论用户使用什么操作系统,都可以使用户流视频。某些视频流服务器基于Linux与操作系统无关,可以安装在任何计算机上。很少有人针对特定的平台,例如Windows,Linux或Mac。什么是视频流服务器?远程提供和管理视频媒体内容的服务器软件称为“视频流服务器”。并非所有的视频播放器都可以与视频流服务器一起使用,而是需要一个完美的视频播放器来与远程服务器一起使用来缓冲和…

    2022年4月5日
    98
  • linux服务器维护教程_服务器验收注意事项

    linux服务器维护教程_服务器验收注意事项#######本节介绍有关服务器管理和维护过程中的一些注意事项,都是笔者的经验之谈,相信对新手会有一定的启发和帮助。很多初学者接触Linux时间不长,还未完整地学习一遍Linux,理解本节内

    2022年8月1日
    8
  • 因果图-判定表法

    因果图-判定表法一、应用场合界面中有多个控件,控件之间存在组合和限制关系,不同输入条件组合会对应不同的输出结果,为了理清每种输入条件组合和输出结果之间的对应关系,可以使用因果图/判定表法。注意:因果图/判定表法适合测试组合数量较少的情况,如果组合数量较多时,适合使用正交排列法。(更高效)二、因果图法基础1、因果图法因:输入条件果:输出结果因果图法:用画图的方式表示输入条件(因)和输出结果(果)之间的关系。2、图形符号(了解)…

    2022年8月14日
    3
  • java 登录 qq_Java实现QQ登录

    java 登录 qq_Java实现QQ登录packagecom.ck.blog.controller;importcom.alibaba.fastjson.JSONObject;importcom.ck.blog.exception.StateErrorException;importcom.ck.blog.utils.QQHttpClient;importorg.springframework.beans.factory.an…

    2022年7月8日
    29
  • python输入两个集合取并集_python交集并集差集

    python输入两个集合取并集_python交集并集差集第一种方法:使用python基本数据结构set集合。优点:集合运算长度可以不一致,运算效率高缺点:两个进行运算的集合中不能够含有重复的元素,如果含有的话,转成set集合后,会自动去掉重复元素a=[1,2,3]b=[1,2,6,9,12]print(set(a)&set(b))#交集print(set(a)|set(b))#并集print(set(a)^set(b))#异或,就是两个集合去掉交集的那部分print(set(a)-set(b))#差集,就

    2022年10月6日
    2
  • 孙鑫Java视频教程下载

    孙鑫Java视频教程下载刚刚学习Java。还没有入门。 孙鑫老师的这套教程还没有看完。把下载地址发上来,有兴趣的可以下来看看。 一共12集,每集大约2个半小时。讲得很详细,适合入门。 请用迅雷下载。 thunder://QUFodHRwOi8vdmlwLmlib29rOC5jb20vdmlkZW8vy+/2zkpBVkHO3sTRysIxMkNELzAxLnJhclpa|http://ww

    2022年5月13日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号