FPGA与CPLD的比较[通俗易懂]

FPGA与CPLD的比较[通俗易懂]FPGA基于SRAM的架构,集成度高,以Slice为基本单元,有内嵌Memory、DSP等,支持丰富的IO标准,具有易挥发性,需要有上电加载过程。在实现复杂算法、队列调度、数据处理、高性能设计、大容量缓存设计等领域有广泛应用,如XilinxVirtex系列以及AlteraStratix系列。CPLD基于EEPROM工艺,集成度低,以MicroCell为基本单元。具有非挥发特性,可以重复写入。在粘合逻辑、地址译码、简单控制、FPGA加载等设计中有广泛应用,如XilinxCoolRunner系列以及Al

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

FPGA基于SRAM的架构,集成度高,以Slice为基本单元,有内嵌Memory、DSP等,支持丰富的IO标准,具有易挥发性,需要有上电加载过程。在实现复杂算法、队列调度、数据处理、高性能设计、大容量缓存设计等领域有广泛应用,如Xilinx Virtex系列以及Altera Stratix系列。

CPLD基于EEPROM工艺,集成度低,以MicroCell为基本单元。具有非挥发特性,可以重复写入。在粘合逻辑、地址译码、简单控制、FPGA加载等设计中有广泛应用,如Xilinx CoolRunner系列以及Altera MAX7000系列。

尽管FPGA与CPLD有许多共同点,但由于其结构上的差异,仍具有各自的特点:
**1)CPLD更适合完成各种算法和组合逻辑,FPGA更适合完成时序逻辑。换句话说,FPGA更适合触发器丰富的结构,而CPLD更适合触发器有限而乘积项丰富的结构。
**2)CPLD的连续式布线结构决定了它的时序延迟是均匀和可预测的,而FPGA的分段式布线结构决定其延迟的不可预测性。
**3)在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程的。
**4)FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
**5)CPLD比FPGA使用起来更方便。CPLD的编程采用EEPROM或FASTFLASH技术,无需外部存储芯片,使用简单。而FPGA的编程信息需要存放在外部存储器上,使用方法复杂。
**6)CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互连。而CPLD是逻辑块级编程,并且其逻辑块之间的互连是集中式的。
**7)在编程方式上,CPLD主要是基于EEPROM或FLASH存储器编程的,编程次数可达1万次,优点是系统断电时编程信息也不丢失。CPLD又可分为在编辑器上编程何在系统编程两类。FPGA大部分是基于SRAM编程的,编程信息在系统断电时丢失,每次上电时需要从期间外部将编程数据重新写入SRAM中。其优点是可以编程任意次,可以工作中快速编程,从而实现板级和系统级的动态配置。
**8)CPLD保密性好,FPGA保密性差。
9)一般情况,CPLD的功耗要比FPGA哒,其集成度越高越明显
因此,在大中型数字系统开发时,FPGA比CPLD更具有明显的优势。

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

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

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


相关推荐

  • 我的世界怎么设置传送点指令_我的世界手机版领地指令

    我的世界怎么设置传送点指令_我的世界手机版领地指令今天小编为玩家们带来了我的世界服务器领地指令_我的世界地皮指令大全,希望对玩家们有所帮助,还不了解的玩家快来看看吧。圈地指令用木棍(各个服务器不一样,绝大部分默认是木锄)左击一个点,右击一个点(两点内为你想圈的长宽高,对角,一个高点,一个低点。)然后输查询大小,在输入创建领地。查询区域大小/resselectsize创建领地/rescreate名字移除领地/resremove名字领地转赠/resg…

    2022年9月15日
    2
  • 玩守望先锋显示渲染器丢失_win10守望先锋渲染内存不足

    玩守望先锋显示渲染器丢失_win10守望先锋渲染内存不足解决游玩守望先锋时出现"渲染设备已丢失"笔者配置:cpu:amd3600显卡:rtx2060出现问题:在打守望先锋的时候出现"渲染设备丢失。。。。&quot

    2022年8月5日
    5
  • Android从零开始搭建MVVM架构(3)——ViewModel

    Android从零开始搭建MVVM架构(3)——ViewModelViewModel类是被设计用来以可感知生命周期的方式存储和管理UI相关数据,ViewModel中数据会一直存活即使activityconfiguration发生变化。ViewModel有什么优势?1.数据持久化activity在销毁重建时,之前我们可以用activity的onSaveInstanceState()机制保存和恢复数据,但缺点很明显,onSaveInstanceS…

    2022年6月17日
    26
  • 动手小游戏_飞机大战激活成功教程版

    动手小游戏_飞机大战激活成功教程版一、关于飞机大战要说微信中最火爆的小游戏是哪款,可能既不是精心打造的3D大作,也不是《植物大战僵尸2》,而是微信5.0刚开启时的《飞机大战》。就是这样一款铅笔手绘风格的简单到不能再简单的“打飞机”

    2022年8月5日
    6
  • 华为私有云的搭建方案_华为私有云解决方案

    华为私有云的搭建方案_华为私有云解决方案简介:华为私有云解决方案我们这部电影最感动的是电影,云解云解一部电影是真实而言,云解云解这部片子的成分的感觉也是有点不多,但我看不到这部电影,就是一种好电影里,这部电影的主题的主人公的故事,也许是这个人物塑造的一样。但是这部电影的原型是真实,这部电影有现实主义,是一个人物的故事也让人感受到了一种感情的转变。我不是药神,他们也不会想到一个人的生活,这部作品,也许这样的影片的最后我觉得这。我们就要吃饭…

    2022年7月15日
    14
  • 使用VirtualBox + Vagrant打造统一的开发环境

    使用VirtualBox + Vagrant打造统一的开发环境

    2021年10月28日
    93

发表回复

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

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