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

可编程逻辑器件的发展与比较

可编程逻辑器件的发展与比较

文章目录

  • 可编程逻辑器件的发展与比较
    • 一、早期的离散逻辑芯片
    • 二、复杂可编程逻辑器件(CPLD)
      • (一)CPLD的诞生
      • (二)CPLD的结构
      • (三)CPLD的特点
    • 三、现场可编程门阵列(FPGA)
      • (一)FPGA的架构变革
      • (二)FPGA的特点
    • 四、CPLD与FPGA的对比
    • 五、总结

一、早期的离散逻辑芯片

在可编程逻辑器件(PLD)发明之前,设计师们只能使用一些专用的小芯片来搭建系统,这些小芯片被称为离散逻辑芯片。这些芯片功能单一,但通过组合可以实现复杂的逻辑功能。然而,随着系统复杂度的增加,离散逻辑芯片的局限性逐渐显现,主要体现在系统体积庞大、功耗高以及设计复杂度高。

二、复杂可编程逻辑器件(CPLD)

(一)CPLD的诞生

为了解决离散逻辑芯片的局限性,**复杂可编程逻辑器件(CPLD)**应运而生。CPLD的英文全称是 Complex Programmable Logic Device,它在结构上可以看作是PLA(可编程逻辑阵列)器件的延续。

(二)CPLD的结构

CPLD芯片的四周分布着一系列称为宏单元的逻辑块,而芯片的中间部分则是一个连接矩阵,用于在各个逻辑块之间建立连接。每一个逻辑块的内部结构与PLA非常相似,因此一个CPLD器件可以被看作是集成了若干个PLA和一个可编程连接矩阵的芯片。

(三)CPLD的特点

  • 适合的逻辑结构:CPLD更适合于触发器有限而乘积项丰富的结构,这使得它在处理复杂的组合逻辑时表现出色。
  • 时序延迟:由于其布线结构相对简单,CPLD的时序延迟是均匀且可预测的,这使得它在高速应用中具有优势。
  • 配置与保密性:CPLD的配置内容在掉电后不会丢失,因此不需要外加配置芯片。这不仅提高了系统的可靠性,还增强了保密性,因为配置数据不易被截获。

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

(一)FPGA的架构变革

与CPLD不同,**现场可编程门阵列(FPGA)采用了全新的内部架构。FPGA并没有沿用类似PLA的结构,而是引入了逻辑单元阵列(LCA)**的概念。这种架构大量使用查找表(LUT)和寄存器等元素,而非传统的与门和非门。

(二)FPGA的特点

  • 逻辑灵活性:FPGA的逻辑单元阵列提供了极高的灵活性,能够实现复杂的逻辑功能。
  • 时序延迟:由于其复杂的布线结构,FPGA的时序延迟具有不可预测性,这在某些高速应用中可能会成为瓶颈。
  • 配置与保密性:FPGA的配置数据通常存储在外部配置芯片中,这意味着配置数据在掉电后会丢失。因此,FPGA的保密性相对较弱,配置数据流容易被黑客截获。

四、CPLD与FPGA的对比

特性CPLDFPGA
逻辑结构适合触发器有限、乘积项丰富的结构适合复杂逻辑功能,逻辑单元阵列提供高灵活性
时序延迟均匀且可预测不可预测
配置与保密性配置内容掉电不丢失,保密性好配置数据存储于外部芯片,保密性差
应用场景高速组合逻辑、小型系统设计复杂系统设计、大规模逻辑功能

五、总结

CPLD和FPGA作为高密度可编程逻辑器件,各有其独特的特点和应用场景。CPLD更适合于触发器有限、乘积项丰富的结构,其时序延迟均匀且可预测,配置内容掉电不丢失,因此在高速应用和保密性要求较高的场景中表现出色。而FPGA则以其高度的灵活性和强大的逻辑功能,适用于复杂系统设计和大规模逻辑实现,尽管其时序延迟不可预测且保密性相对较弱。选择合适的器件需要根据具体的应用需求进行权衡。

http://www.lqws.cn/news/561241.html

相关文章:

  • 构建 AI 系统的 4 大 Agentic AI 设计模式
  • Python 可迭代的对象、迭代器 和生成器(何时使用生成器表达式)
  • 2099. 找到和最大的长度为 K 的子序列
  • 第6篇:中间件——Gin的请求处理管道
  • 大事件项目记录10-文章分类接口开发-更新文章分类
  • AtCoder AT_abc412_c [ABC412C] Giant Domino 题解
  • JavaEE:CAS单点登录
  • 数据结构1 ——数据结构的基本概念+一点点算法
  • 表达式求值
  • Brocade 博科交换机配置带外管理IP
  • 【unity游戏开发——网络】网络协议、TCP vs UDP 本质区别
  • 第九节:Vben Admin 最新 v5.0 (vben5) 快速入门 - 菜单管理(上)
  • AI间对话APK制成
  • Centos 8设置固定IP
  • STM32中Usart的使用
  • WordPress最新版6.8.1安装教程
  • 前缀和 + 哈希表
  • NV046NV060美光固态闪存NV061NV063
  • 从用户到权限:解密 AWS IAM Identity Center 的授权之道
  • Linux更改国内镜像源
  • ZooKeeper深度面试指南三
  • Hadoop集群异常:两个NameNode全部为StandBy状态
  • 【中文核心期刊推荐】《计算机工程与设计》
  • linux学习第26天(信号集)
  • llm 基本案例实现
  • 从OCR瓶颈到结构化理解来有效提升RAG的效果
  • C++ - 浅看vector源码
  • SpringBoot -- 以 jar 包运行(以及常见错误分析)
  • HarmonyOS NEXT仓颉开发语言实战案例:动态广场
  • Java面试题030:一文深入了解MySQL(2)