第3章 可编程逻辑器件的 工作原理
集成电路的分类(按制作方式) IC: Integrated Circuit
集成电路的分类(按集成度) 小规模集成电路(SSI: Small Scale Integrated Circuit):逻辑门10个以下或晶体管100以下; 中规模集成电路(MSI: Medium ):逻辑门10~100个,晶体管100~1000个; 大规模集成电路(LSI: Large):逻辑门100~1000个,晶体管103~104个;
集成电路的分类(按集成度) 超大规模集成电路(VLSI: Very Large):逻辑门103~104个,晶体管104~105个; 甚大规模集成电路(ULSI: Ultra Large):逻辑门105~106个,晶体管106~107个; 巨大规模集成电路(GLSI: Giga Large):逻辑门106个以上,晶体管107个以上 。
3.1概述 3.1.1可编程逻辑器件的发展 早期是存储器: 只读存储器(PROM) 紫外线可擦除只读存储器(EPROM) 3.1概述 3.1.1可编程逻辑器件的发展 早期是存储器: 只读存储器(PROM) 紫外线可擦除只读存储器(EPROM) 电可擦除只读存储器(EEPROM)
PROM编程原理
其后出现了结构复杂一些的可编程逻辑器件(PLD:Programmable Logic Devices) 可编程阵列逻辑PAL门(Programmable Array Logic) 通用阵列逻辑GAL门(Generic Array Logic)
任何一个组合逻辑都可以表示为乘积项之和的形式,例如: f = (A+B)CD = ACD+ BCD
GAL门GAL16V8 采用与阵列可编程、或阵列固定的结构; 增加了输出逻辑宏单元(OLMC); 逻辑宏单元:逻辑资源的最小单位; 采用了EEPROM工艺;
20世纪80年代中期开始出现 EPLD:Erasable Programmable Logic Device (类似于PAL门的扩展结构) 1985年,美国Xilinx公司推出第一个现场可编程门阵列(FPGA)芯片 Field Programmable Gate Array
目前最主要的可编程逻辑器件有: FPGA:现场可编程门阵列 Field Programmable Gate Array CPLD:复杂的可编程逻辑器件 Complex Programmable Logic Device
组合逻辑实现方法 PT-based: 基于乘积项 Product Term-based Building Block LUT-based: 基于查找表 Look-up Table-based Building Block
基于查找表
FPGA查找表单元内部结构
现场可编程性 所谓现场可编程性就是指用户任何时候都可以通过电路板上的下载电缆或硬件编程器来修改FPGA/CPLD的配置,以达到修改自己设计的目的。
FPGA/CPLD设计的一般流程
软件中的功能合并
几种集成芯片的性能比较 :性能好 :性能很好 速度 集成密度 全定制IC 基于单元的IC 基于门阵列的IC 高密度的PLD :性能好 :性能很好 全定制IC 基于单元的IC 基于门阵列的IC 高密度的PLD 速度 集成密度 大批量的费用 小批量的费用 投放市场时间 降低风险 未来的修改 开发工具 教学目标
3.1.2 PLD厂商及其产品 目前比较典型的器件有: Xilinx公司的FPGA/CPLD系列器件 Altera公司的FPGA/CPLD系列器件 Lattice公司的ispLSI系列
3.1.2 PLD厂商及其产品 Xilinx公司 创新概念起始于1984年,目标是要将LSI/VLSI门阵列技术的高逻辑密度和通用性与用户现场可编程部件的设计灵活、上市速度快及成品的有效性结合起来。 1985年,Xilinx公司推出了世界上第一个FPGA器件。 产品发展:XC3000,XC4000,XC5200,Virtex系列,Spartan系列等,目前主流产品 Spartan6系列、 Artix7系列、Zynq-7000等
Altera公司 主要产品:MAX系列, FLEX系列, APEX系列, Stratix系列和Cyclone系列。 MAX系列产品为CPLD结构,编程信息以EEPROM方式保存。 FLEX系列、 Cyclone系列产品为FPGA,通过内部存储器单元阵列存储编程信息。
Altera公司主要软件开发工具: MAX+PLUS Ⅱ Quartus (Quartus Prime) SOPC Builder DSP Builder
3.1.3 FPGA和CPLD之间的差别 实现组合逻辑的方式不同 FPGA CPLD
内部结构不同 FPGA CPLD
FPGA与CPLD的不同特性 逻辑单元的粒度不一样,设计灵活性不同; FPGA芯片的逻辑门密度比CPLD芯片高; 内部连线结构不同; 时序延迟的特性不同; CPLD更适合于完成各类算法和组合逻辑,而FPGA更适合于完成时序较多的逻辑电路; CPLD是非易失性器件,FPGA是易失性器件; CPLD中触发器有限,乘积项丰富,FPGA触发器丰富。
3.1.4 FPGA/CPLD的优点 FPGA/CPLD芯片的集成度越来越大; 研制开发费用相对较低; 可以反复编程、擦除和使用; 设计周期短;
3.2 Xilinx FPGA 结构简介 以Xilinx公司的XC3000系列产品为例
XC3000 FPGA结构图
XC3000的结构主要包括四个部分: 可编程逻辑块CLB(Configurable Logic Block) 可编程输入输出模块IOB(Input/Output Block) 可编程内部连线PI(Programmable Interconnect) 可配置存储器(SRAM阵列)
两个创新概念: 一、具有逻辑单元阵列结构LCA(Logic Cell Array),因此具有门阵列及可编程的双重特性; 二、逻辑功能的实现是通过对可配置存储器的配置来完成的 。
可编程逻辑块CLB
CLB组合逻辑的三种结合方式
可编程输入输出模块IOB
可编程内部连线PI
3.3 Altera 产品结构简介 以Altera公司的FLEX 10K系列产品为例
FLEX 10K结构图
FLEX 10K系列器件主要组成部分 嵌入式阵列:由嵌入式阵列块(EAB :Embedded Array Block)构成 逻辑阵列:由一系列的逻辑阵列块(LAB)构成的 快速通道(FastTrack) I/O单元 (内部有SRAM,图中未画出)
EAB结构
LAB结构
LE结构
快速通道结构
I/O单元结构
其他结构特性 时钟锁定和时钟自举 集电极开路输出选择 多电压I/O接口 JTAG边界扫描 联合测试行动组(Joint Text Action Group)制定的一个用于测试硬件接口的标准。
Cyclone Ⅴ产品简介 Cyclone Ⅴ是Altera 公司提供的高性能、系统成本最低和功耗最低的28nm工艺的FPGA; 集成了收发器和硬核存储器控制器; 集成了基于ARM的硬核处理器系统(HPS:Hard Processor System); 广泛应用于工业、军事、自动控制、通信等领域。
Cyclone V E(A2)的资源 逻辑单元(LE):25K 自适应逻辑模块(ALM):9434 寄存器:37736 存储器(Kb):M10K:1760;MLAB:196 精度可变的DSP块:25 18×18乘法器:50 PLL:4 通用I/O接口(GPIO):224 LVDS:发送器:56;接收器:56 硬核存储器控制器:1
Cyclone V E的外部管脚