FPGA和CPLD对比

FPGA和CPLD对比 FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。  CPLD(ComplexProgrammableLogicDevice)复杂可编程逻辑器件,是…

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

 FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

  CPLD(Complex Programmable Logic Device)复杂可编程逻辑器件,是从PAL和GAL器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围。是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。

 CPLD和FPGA 的主要区别:

  1、布线能力

  CPLD内连率高,不需要人工布局布线来优化速度和面积,较FPGA更适合于EDA芯片设计的可编程验证。

  2、延迟小预测能力

  CPLD连续式布线结构决定时序延时是均匀的和可预测,FPGA分段式布线结构决定了不可预测时间延迟。

  3、集成度的不同

  CPLD: 500 ~ 50000 门;

  FPGA: 1K ~ 10M 门

  4、应用范围的不同

  CPLD逻辑能力强而寄存器少,适用于控制密集型系统;

  FPGA逻辑能力较弱但寄存器多,适于数据密集型系统。

  CPLD 和FPGA 的优点:

  1.规模越来越大,实现功能越来越强,同时可以实现系统集成。

  2.研制开发费用低,不承担投片风险,使用方便。

  3.通过开发工具在计算机上完成设计,电路设计周期短。

  4.不需要设计人员了解很深的IC知识,EDA软件易学易用。

  5.通过FPGA和CPLD开发的系统成熟后,可以进行ASIC设计,形成批量生产。

 CPLD和FPGA的缺点区别:

  集成度:FPGA可以达到比 CPLD更高的集成度 ,同时也具有更复杂的布线结构和逻辑实现

  适合结构:FPGA更适合于触发器丰富的结构 ,而 CPLD更适合于触发器有限而积项丰富的结构

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

  功率消耗:CPLD的缺点比较突出。一般情况下 ,CPLD功耗要比 FPGA大 ,且集成度越高越明显

  速度:CPLD优于FPGA。由于 FPGA是门级编程 ,且 CLB之间是采用分布式互连 ;而CPLD是逻辑块级编程 ,且其逻辑块互连是集总式的。因此 ,CPLD比 FPGA有较高的速度和较大的时间可预测性 ,产品可以给出引腿到引腿的最大延迟时间

  编程方式:目前的 CPLD主要是基于E2 PROM或 FLASH存储器编程 ,编程次数达1万次。其优点是在系统断电后 ,编程信息不丢失。CPLD又可分为在编程器上编程和在系统编程.

 

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/136018.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • docker的端口映射_docker swarm 网络

    docker的端口映射_docker swarm 网络docker网络端口映射

  • ModelAndView详解

    ModelAndView详解ModelAndView详解WebServlet应用服务器Spring浏览器 ModelAndView的构造方法有7个。但是它们都是相通的。这里使用无参构造函数来举例说明如何构造ModelAndView实例。   ModelAndView类别就如其名称所示,是代表了MVCWeb程序中Model与View的对象,不过它只是方便您一次返回这两个对象的h

  • 史上最全阿里 Java 面试题总结及答案

    史上最全阿里 Java 面试题总结及答案史上最全阿里Java面试题总结–答案一、Java基础\color{blue}{一、Java基础}一、Java基础1.JAVA中的几种基本数据类型是什么,各自占用多少字节。答案:java分为两种数据类型:1.基本数据类型2.引用数据类型:如,类,接口,数组基本数据类型:8种1.byte1个字节,-128~1272.short2个字节,-32768~327673….

  • html代码实现表格_印象笔记表格怎么调整宽度

    html代码实现表格_印象笔记表格怎么调整宽度学习更多建议菜鸟教程Target使用<!DOCTYPEhtml><htmllang=”en”><head><metacharset=”UTF-8″><title>图像,视频</title></head><body><imgsrc=”src\image\li.webp”width=”300px”/><videocontrolsautoplay

  • redis缓存与数据库一致性问题解决[通俗易懂]

    redis缓存与数据库一致性问题解决[通俗易懂]redis缓存与数据库一致性问题解决更多干货分布式实战(干货)springcloud实战(干货)mybatis实战(干货)springboot实战(干货)React入门实战(干货)构建中小型互联网企业架构(干货)一、需求起因假设先写数据库,再淘汰缓存:第一步写数据库操作成功,第二步淘汰缓存失败,则会出现DB中是新数据,Cache中是旧数据,数据不一致【如下图:db中是新数据,cache…

  • 软件工程师业绩简要描述(优秀员工工作业绩和自我评价)

    1/9JAVA软件工程师简历自我评价具有很强的团队精神,有良好的组织和协调能力,有强烈的集体荣誉感。自学能力强,喜欢钻研新技术,敢于面对和克服困难。熟练使用spring+struts+hibernate整合开发。熟练使用jsp、servlet、jstl、jdbc下的编程开发。熟练使用eclipseide开发工具,熟练掌握tomcat等web容器以及j2ee容器的配置以及部署,能够使用junit进行…

发表回复

您的电子邮箱地址不会被公开。

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