当前位置: 首页 > news >正文

FPGA——PLD的区别以及各自的特点

目录

    • 一、概述
    • 二、PLD的优点
    • 三、PLD的分类
      • 1、PROM(可编程只读存储器):
      • 2、PAL(可编程阵列逻辑)
      • 3、GAL(通用阵列逻辑)
      • 4、CPLD (复杂PLD)
      • 5、FPGA(现场可编程门阵列)
    • 四、Cyclone IV FPGA芯片的命名规则:
    • 五、FPGA芯片特征(EP4CE6F17C8)

一、概述

可编程逻辑器件(PLD-Programmable Logic Device):器件的功能不是固定不变的,而是可根据用户的需要进行改变 ,即由编程的方法来确定器件的逻辑功能。

二、PLD的优点

1、集成度高,可以替代多至几千块通用 IC 芯片,极大减小电路的面积,降低功耗,提高可靠性。
2、具有完善先进的开发工具,提供语言、图形等设计方法,十分灵活;可以通过仿真工具来验证设计的正确性。
3、可以反复地擦除、编程,方便设计的修改和升级。
4、活地定义管脚功能,减轻设计工作量,缩短系统开发时间。
5、保密性好。

三、PLD的分类

简单PLD:
PROM(可编程只读存储器)
PAL(可编程阵列逻辑)
GAL(通用阵列逻辑)
复杂PLD:
CPLD (复杂PLD)
FPGA(现场可编程门阵列)

1、PROM(可编程只读存储器):

PROM是一种电脑存储记忆晶片,使用专用的PROM编程器进行数据的写入或擦除。
特点:
1、PROM是以逻辑函数的最小项表达式为依据的
2、与阵列固定,产生输入变量的全部最小项
3、器件的规模随着输入信号数量 n 的增加呈2的n次方指数级增长
4、组合型结构,无触发器

2、PAL(可编程阵列逻辑)

PAL只能进行一次编程,是由可编程的与门阵列和固定的或门阵列逻辑组成。
特点:
1、与阵列可编程,或阵列固定,输出端为固定个数与项的或
2、通常PAL输出端的与项个数达到8个,满足大多数逻辑函数的设计需求
3、易于制造,成本低

3、GAL(通用阵列逻辑)

GAL本质上仍是PAL器件,但是它可以重复编程,是由可编程的与门阵列和可编程输出模块的固定或门逻辑组成。
特点:
在PAL的基础上,GAL的输出电路部分增设了可编程的输出逻辑宏单元(OLMC) ,通过编程可将 OLMC 设置为不同的工作状态 ,从而实现PAL的所有输出结构, 产生组合、时序逻辑电路输出。

4、CPLD (复杂PLD)

CPLD是一个含有多个低密度逻辑器件的器件,可以取代许多固定的集成电路及其之间的连接。
CPLD可看作由可编程逻辑阵列(LAB)、可编程IO模块和可编程内部互连线(PIA)组成,LAB的基本结构就是“与或阵列”,该结构有利于实现大量的组合逻辑功能。
特点:
CPLD 集成度远远高于 PAL 和 GAL ,用来设计数字系统,体积小、功耗低、可靠性高。

5、FPGA(现场可编程门阵列)

FPGA的基本组成部分有可编程输入输出块(IOB)、可编程逻辑单元(CLB)和可编程内部互连线。其中CLB的基本结构是LE,主要由触发器和查找表(LUT)构成,可以实现时序逻辑和各种组合逻辑。
FPGA和CPLD因为结构上的区别,各具自身特色。因为FPGA的内部构造触发器比例和数量多,所以它在时序逻辑设计方面更有优势:而CPLD因具有与或门阵列资源丰富、程序掉电不易失等特点,适用于组合逻辑为主的简单电路。
特点:
1、可重构性:FPGA可以被重新编程来实现不同的逻辑功能,这使得它们非常灵活,可以适应不同的应用需求。
2、高性能:由于FPGA可以定制化地设计,因此可以实现非常高效的逻辑运算。此外,FPGA通常具有并行计算能力,可以处理大量数据,因此在某些应用中比传统的处理器更快。
3、低功耗:由于FPGA可以被编程来执行特定的任务,因此它们可以更有效地利用能量,从而减少功耗。
4、实时性:FPGA可以实时处理输入数据,这使得它们在需要实时响应的应用中具有很大的优势。

四、Cyclone IV FPGA芯片的命名规则:

以EP4CE6F17C8为例:
EP4C:Altera器件系列CycloneIV;
E/GX:E表示普通逻辑资源丰富的器件,GX表示带有高速串行收发器的器件;
6 :LE逻辑单元的数量,6表示约有6k的逻辑单元;
F :表示PCB封装类型,F是FBGA封装,E(EQFP)、Q(PQFP)、U(UBGA)、M(MBGA);
17 :表示引脚数量,17代表有256个引脚;
C :工作温度,C表示可以工作在0℃到85℃(民用级),I表示可以工作在-40℃到100℃(工业级),A表示可以工作在-40℃到125℃(军用级);
8 :器件的速度等级,6约最大是500Mhz,7约最大是430Mhz,8约最大是400Mhz,可以看出在Altera的器件中数字越小表示速度越快,而在Xilinx的器件中数字越大表示速度越快;一般来讲,提高一个速度等级将带来12%到15%的性能提升,但是器件的成本却增加了20%大30%。如果利用设计结构来将性能提升12%到15%(通过增加额外的流水线),那么就可以降低速度等级,从而节约20%大30%的成本;

五、FPGA芯片特征(EP4CE6F17C8)

1、低成本、低功耗的 FPGA 架构:
2、6 K的逻辑单元
3、高达 270kb 的嵌入式存储器
4、高达 15 个 18 × 18 乘法器,实现 DSP 处理密集型应用
5、协议桥接应用,实现小于 1.5 W 的总功耗

相关文章:

FPGA——PLD的区别以及各自的特点

目录 一、概述二、PLD的优点三、PLD的分类1、PROM(可编程只读存储器):2、PAL(可编程阵列逻辑)3、GAL(通用阵列逻辑)4、CPLD (复杂PLD)5、FPGA(现场可编程门阵…...

八、Kafka时间轮与常见问题

Kafka与时间轮 Kafka中存在大量的延时操作。 1、发送消息-超时重试机制 2、ACKS 用于指定分区中必须要有多少副本收到这条消息,生产者才认为写入成功(延时 等) Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而…...

Web端即时通讯技术(SEE,webSocket)

目录 背景简介个人见解被动推送轮询简介实现 长轮询(comet)简介实现 比较 主动推送长连接(SSE)简介实现GETPOST 效果 webSocket简介WebSocket的工作原理:WebSocket的主要优点:WebSocket的主要缺点: 实现用法一用法二 **效果** 比较…...

脑电信号处理与特征提取——4.脑电信号的预处理及数据分析要点(彭微微)

目录 四、脑电信号的预处理及数据分析要点 4.1 脑电基础知识回顾 4.2 伪迹 4.3 EEG预处理 4.3.1 滤波 4.3.2 重参考 4.3.3 分段和基线校正 4.3.4 坏段剔除 4.3.5 坏导剔除/插值 4.3.6 独立成分分析ICA 4.4 事件相关电位(ERPs) 4.4.1 如何获…...

分析npm run serve之后发生了什么?

首先需要明白的是,当你在终端去运行 npm run ****,会是什么过程。 根据上图的一个流程,就可以衍生出很多问题。 1,为什么不直接运行vue-cli-service serve? 因为直接运行 vue-cli-service serve,会报错&#xff0c…...

LINUX上操作redis 用shell7

LINUX上操作redis 用shell7 步骤1:连接到Linux服务器步骤2:安装和配置Redis步骤3:连接到Redis服务器步骤4:操作Redis数据步骤5:断开与Redis服务器的连接 步骤1:连接到Linux服务器 首先,需要使用…...

Python的threading模块

为引入多线程的概念&#xff0c;下面是一个例子&#xff1a; import time, datetimestartTime datetime.datetime(2024, 1, 1, 0, 0, 0) while datetime.datetime.now() < startTime:time.sleep(1)print(Program now starting on NewYear2024) 在等待time.sleep()的循环调…...

HTML5 的离线储存怎么使用,工作原理

TML5提供了一种称为离线储存&#xff08;Offline Storage&#xff09;的功能&#xff0c;它允许网页在离线时缓存和存储数据&#xff0c;以便用户可以在没有网络连接的情况下访问这些数据。离线储存是通过使用Web Storage API或者应用程序缓存&#xff08;Application Cache&am…...

FTP文件传输协议与DHCP

基本概念 主机之间传输文件是IP网络的一个重要功能 互联网早期&#xff0c;最通用方式就是使用FTP&#xff08;File Transfer Protocol&#xff0c;文件传输协议&#xff09;以及&#xff08;Trivial File Transfer Protocol&#xff0c;简单文件传输协议&#xff09; FTP采用…...

【UE5 多人联机教程】06-显示玩家名称

效果 可以看到玩家输入各自的名称&#xff0c;会显示到自己控制的角色头上。但是目前有一个BUG就是&#xff0c;当客户端加入游戏时会多创建一个服务端的角色。 步骤 1. 打开“BP_ThirdPersonCharacter”&#xff0c;添加一个控件组件&#xff0c;用于显示玩家名称 作为网格体…...

Rust vs Go:常用语法对比(五)

题图来自 Rust vs Go 2023[1] 81. Round floating point number to integer Declare integer y and initialize it with the rounded value of floating point number x . Ties (when the fractional part of x is exactly .5) must be rounded up (to positive infinity). 按规…...

Flutter 扩展函数项目实用之封装SizedBox

Flutter里扩展函数可以用简化代码写法&#xff0c;关键字为extension&#xff0c;伪代码写法如下&#xff1a; extension 扩展类名 on 扩展类型 { //扩展方法 } 在Flutter页面里实现控件间距会常用到SizedBox&#xff0c;可使用扩展函数封装来达到简化代码的目的&#xff0…...

EMC学习笔记(二十)EMC常用元件简单介绍(二)

EMC常用元件简单介绍&#xff08;二&#xff09; 1.瞬态抑制二极管&#xff08;TVS&#xff09;2.气体放电管3.半导体放电管 电磁兼容性元件是解决电磁干扰发射和电磁敏感度问题的关键,正确选择和使用这些元件是做好电磁兼容性设计的前提。由于每一种电子元件都有它各自的特性,…...

基本排序算法

目录 一&#xff0c;插入排序 二&#xff0c;希尔排序 三&#xff0c;选择排序 四&#xff0c;冒泡排序 五&#xff0c;快排 5.1 Hoare法 5.2 挖坑法 5.3 指针法 5.4 非递归写法 六&#xff0c;归并排序 6.1 递归 6.2 非递归 一&#xff0c;插入排序 基本思想&…...

python调用百度ai将图片/pdf识别为表格excel

python调用百度ai将图片识别为表格excel 表格文字识别(异步接口)图片转excel 表格文字识别V2图片/pdf转excel通用 表格文字识别(异步接口) 图片转excel 百度ai官方文档&#xff1a;https://ai.baidu.com/ai-doc/OCR/Ik3h7y238 使用的是表格文字识别(异步接口)&#xff0c;同步…...

Ansible最佳实践之Playbook管理滚动更新

写在前面 理解不足小伙伴帮忙指正 傍晚时分&#xff0c;你坐在屋檐下&#xff0c;看着天慢慢地黑下去&#xff0c;心里寂寞而凄凉&#xff0c;感到自己的生命被剥夺了。当时我是个年轻人&#xff0c;但我害怕这样生活下去&#xff0c;衰老下去。在我看来&#xff0c;这是比死亡…...

基于Citespace、vosviewer、R语言的文献计量学可视化分析及SCI论文高效写作方法教程

详情点击链接&#xff1a;基于Citespace、vosviewer、R语言的文献计量学可视化分析技术及全流程文献可视化SCI论文高效写作方法 前言 文献计量学是指用数学和统计学的方法&#xff0c;定量地分析一切知识载体的交叉科学。它是集数学、统计学、文献学为一体&#xff0c;注重量…...

【MATLAB】GM(1,1) 灰色预测模型及算法

一、灰色预测模型概念 灰色预测是一种对含有不确定因素的系统进行预测的方法。 灰色预测通过鉴别系统因素之间发展趋势的相异程度&#xff0c;即进行关联分析&#xff0c;并对原始数据进行生成处理来寻找系统变动的规律&#xff0c;生成有较强规律性的数据序列&#xff0c;然后…...

Go重写Redis中间件 - Go实现Redis协议解析器

Go实现Redis协议解析器 Redis网络协议详解 在解决完通信后,下一步就是搞清楚 Redis 的协议-RESP协议,其实就是一套类似JSON、Protocol Buffers的序列化协议,也就是我们的客户端和服务端通信的协议 RESP定义了5种格式 简单字符串(Simple String) : 服务器用来返回简单的结…...

海外抖音Tiktok强势来袭,有些人半年赚别人十倍工资

TikTok作为一款流行的短视频社交应用程序&#xff0c;确实在全球范围内取得了很大的成功。许多人通过在TikTok上分享有趣、创意或有吸引力的视频内容&#xff0c;获得了广泛的关注和认可。一些用户甚至能够通过TikTok赚取高额的收入&#xff0c;远远超过传统职业所能获得的工资…...

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域&#xff0c;向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能&#xff0c;能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作&#xff0c;并通过具体…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中&#xff0c;其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下&#xff1a; 初始判断与哈希计算&#xff1a; 首先&#xff0c;putVal 方法会检查当前的 table&#xff08;也就…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

手机平板能效生态设计指令EU 2023/1670标准解读

手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读&#xff0c;综合法规核心要求、最新修正及企业合规要点&#xff1a; 一、法规背景与目标 生效与强制时间 发布于2023年8月31日&#xff08;OJ公报&…...