跳至正文
wyaaaattwhoAI RESEARCH & ENGINEERING
← 返回首页

可编程逻辑器件

可编程逻辑器件(PLD)

  • PLD
    • 固定逻辑标准芯片曾被广泛使用,但功能单一,不能随电路设计的需求而任意改变,逐渐被可编程逻辑器件(Programmable Logic Device,PLD)取代
    • PLD是一种用于实现逻辑电路的通用器件,包含多个逻辑单元,可根据需要通过编程开关连接进行编程,以构成不同功能的逻辑电路
    • PLD的结构主要由与阵列和或阵列构成
    • notion image
notion image
  • PROM
    • 与阵列固定,或阵列可编程
    • 任何逻辑函数转换成标准与-或表达式后,可用PROM来实现与阵列的水平线输出对应标准与-或表达式中的标准乘积项,即最小项
    • notion image
  • PLA(可编程逻辑阵列)
    • 是一种与阵列和或阵列都可以变成的逻辑阵列
    • 无需像PROM一样转换为标准与或表达式,只用最简形式即可,可以节省资源
    • notion image
  • PAL(可编程阵列逻辑)
    • 与阵列可编程,或阵列固定
    • notion image
  • GAL
    • PAL的逻辑结构简单,或阵列固定,灵活性差。LATTICE公司推出了一种新型的可编程逻辑器件—GAL。
    • 它与PAL最大的差别是其输出逻辑宏单元(Output Logic Macro Cell,OLMC)可以编程定义。
    • OLMC设置成不同的工作状态,可适用不同的功能需求。
    • GAL具有电可擦写、可重复编程和设置加密位等特点。
      • notion image
  • 复杂可编程逻辑器件(Complex PLD,CPLD)
    • 主要包括:
      • 逻辑阵列块(Logic Array Block,LAB)
      • I/O控制块:用于和芯片的I/O引脚互连
      • 可编程互联阵列(PIA)
    • 每个LAB由4~20个宏单元(Macrocell)构成。宏单元包括:
      • 可编程逻辑阵列
      • 乘积项选择矩阵
      • 可编程寄存器:可以编程实现D、JK或钟控SR触发器等。
    • 宏单元有多种配置方式,也可级联使用
    • PIA用于连接所有宏单元,并与芯片时钟、复位、使能等引脚连
    • CPLD集成度远高于PAL和GAL
    • CPLD通常提供带片内RAM/ROM的嵌入式存储器阵列
  • 现场可编程门阵列(Field Programmable Gate Array,FPGA)
  • 是一种高集成度的复杂可编程逻辑器件,可通过EDA软件对其进行配置和编程,可反复擦写。
    • 实现乘法器、寄存器、地址发生器等硬件电路
    • 通过使用框图或者Verilog HDL来设计
    • FPGA可无限地重新编程,加载一个新的设计方案只需几百毫秒

存储器阵列

  • 存储器可用来存储数字电路中的数据。
    • 寄存器用来存储少量数据,速度更快
    • 存储器阵列用来存储大量数据,速度较寄存器慢
  • 在CPLD和FPGA芯片中通常会提供片内存储器阵列
  • 存储器阵列中每位数据对应一个记忆单元(cell),称为存储元
    • notion image
  • 按功能可分为:只读存储器(Read-only Memory,ROM)和随机存取存储器(Random-access Memory, RAM)
    • ROM属于非易失性存储器,即使电源断电,ROM中存储的数据也不会消失。根据工艺的不同,分为:
      • 掩膜只读存储器MROM
      • 一次可编程只读存储器PROM
      • 光擦除可编程只读存储器EPROM
      • 电擦除可编程只读存储器EEPROM(E2PROM)
    • RAM属于易失性存储器, 一旦电源断电,RAM中存储的数据就消失。
      • 静态RAM(Static RAM,SRAM)
      • 动态RAM(Dynamic RAM,DRAM)
  • ROM存储阵列根据MOS晶体管的有无来区分存储0和1 不同类型的ROM,主要区别在于MOS晶体管的特性不同
    • notion image
      notion image
  • RAM读写原理
    • notion image
      notion image

FPGA和ASIC

  • FPGA设计概述
    • 现场可编程门阵列(Field Programmable Gate Array,FPGA)是一种高集成度的复杂可编程逻辑器件,可通过EDA软件对其进行配置和编程,可反复擦写。
    • FPGA内部包含大量可配置逻辑块CLB,它由若干查找表(Look-Up Table,LUT)及多路选择器、进位链、触发器FF等附加逻辑组成。
    • 可对CLB进行不同配置。如右图:可对MUX编程配置为输出是LUT实现的组合逻辑电路结果Y;也可配置为输出是时序逻辑电路结果Q。
    • LUT本质上是一个RAM,多采用SRAM实现
      • notion image
    • 函数发生器通过查找表LUT实现,其中的内容可编程配置
      • LUT存储单元中存放函数输出值,用于实现一个小规模逻辑函数
        notion image
  • 专用集成电路ASIC
    • 专用集成电路(Application-Specific Integrated Circuit,ASIC)是一种应特定用户要求和特定电子系统的需要而设计、制造的集成电路。
      • 全定制:设计者完成所有设计,速度更快
      • 半定制:使用标准库里的标准逻辑单元(标准单元)
    • FPGA和ASIC目前都是电子设计领域的主流产品。
      • ASIC面向特定用户的需求,具有体积小、功耗低、可靠性高、性能高、保密性高、成本低等优点,一般用于批量大的专用产品中。
      • FPGA可编程特性使其应用非常灵活,但芯片内部逻辑门的使用率大幅降低,导致功耗高、速度慢、资源冗余且价格昂贵,一般用于小批量产品设计中