1 / 80

EDA 技术实用教程

EDA 技术实用教程. 第 3 章 FPGA/CPLD 结构与应用. 组合电路. 基本门. 时序电路. 图 3-1 基本 PLD 器件的原理结构图. 3.1 概 述. 3.1 概 述. 3.1.1 可编程逻辑器件的发展历程. EPLD 器件. PROM 和 PLA 器件. 改进的 PLA 器件. GAL 器件. CPLD 器件. FPGA 器件. 内嵌复杂 功能模块 的 SoPC. 70 年代. 80 年代. 90 年代. 3.1 概 述.

duena
Download Presentation

EDA 技术实用教程

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EDA 技术实用教程 第 3 章 FPGA/CPLD结构与应用

  2. 组合电路 基本门 时序电路 图3-1 基本PLD器件的原理结构图 3.1 概 述

  3. 3.1 概 述 3.1.1 可编程逻辑器件的发展历程 EPLD 器件 PROM 和PLA 器件 改进的 PLA 器件 GAL器件 CPLD器件 FPGA器件 内嵌复杂 功能模块 的SoPC 70年代 80年代 90年代

  4. 3.1 概 述 • PAL(Programmable Array Logic)可编程阵列逻辑 可编程的“与”阵列和不可编程的“或”阵列。 • GAL(GenericArray Logic)通用阵列逻辑 可编程的“与”阵列和固定的“或”阵列。输出有输出宏逻辑单元。 • CPLD(ComplexProgrammable Logic Devices)复杂可编程逻辑器件 结构以逻辑宏单元为基础,宏单元内部有AND—OR乘积项阵列 • FPGA (Field Programmable Gate Array)现场可编程门阵列 由查找表组成掩膜编程门阵列通用结构:由逻辑功能块排成阵列组成,并由可编程的互连资源连接这些逻辑功能来实现不同设计。 • 超大规模、高速、低功耗的新型FPGA/CPLD集成了中央处理器、数字处理器内核,可以进行软硬件协同设计

  5. 3.1 概 述 3.1.2 可编程逻辑器件的分类 • PROM(Programmable ROM)可编程只读存储器,单次写入,不能修改。 • EPROM (Erasable Programmable ROM) 可擦除可编程只读存储器,早期的CPLD,红外线擦除。 • E2PROM (Electronic Erasable Programmable ROM) 电擦除可编程只读存储器,普遍应用的CPLD产品。 • 基于SRAM的FPGA,如Altera,Xilinx等 • 反融丝结构FPGA,如Actel,Quicklogic等 • Flash结构FPGA,如Actel,Lattice等。 从编程工艺上分:

  6. 3.1 概 述 3.1.2 可编程逻辑器件的分类 图3-2 PLD按集成度分类

  7. 3.2 简单可编程逻辑器件原理 3.2.1 电路符号表示 图3-3 常用逻辑门符号与现有国标符号的对照

  8. 3.2 简单可编程逻辑器件原理 3.2.1 电路符号表示 图3-4 PLD的互补缓冲器图3-5 PLD的互补输入图3-6 PLD中与阵列表示

  9. 3.2 简单可编程逻辑器件原理 3.2.1 电路符号表示 图3-7 PLD中或阵列的表示图3-8 阵列线连接表示

  10. 3.2 简单可编程逻辑器件原理 3.2.2 PROM 图3-9 PROM基本结构 其逻辑函数是:

  11. 3.2 简单可编程逻辑器件原理 3.2.2 PROM 图3-10 PROM的逻辑阵列结构 其逻辑函数是:

  12. 3.2 简单可编程逻辑器件原理 3.2.2 PROM 图3-11 PROM表达的PLD阵列图

  13. 3.2 简单可编程逻辑器件原理 3.2.2 PROM 图3-12 用PROM完成半加器逻辑阵列 多输入变量组合电路不适合用单个PROM来编程表达,会引起存储容量的增加

  14. 3.2 简单可编程逻辑器件原理 3.2.3 PLA 图3-13 PLA逻辑阵列示意图 与阵列不采用全译码的方式,尽量利用公共的与项,提高阵列的利用率

  15. 3.2 简单可编程逻辑器件原理 3.2.3 PLA PLA的两个阵列均可编程,算法复杂,使器件的运行速度下降 图3-14 PLA与PROM的比较

  16. 3.2 简单可编程逻辑器件原理 3.2.4 PAL PAL一般采用熔丝工艺生产,一次可编程,修改不方便。 图3-16 PAL的常用表示 图3-15 PAL结构

  17. 图3-17 一种PAL16V8的部分结构图

  18. 3.2.5 GAL 乘积项逻辑 GAL具有电可擦除重复编程的特点 GAL: General Array Logic Device 最多有8个或项,每个或项最多有32个与项 EPLD Erasable Programmable Logic Device

  19. 3.2.5 GAL 图3-18 GAL16V8结构图

  20. 时钟信 号输入 输入口 逻辑宏单元 GAL16V8 输入/输出口 固定或阵列 可编程与阵列 三态控制

  21. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-19寄存器输出结构

  22. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-20 寄存器模式组合双向输出结构

  23. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-21 组合输出双向结构

  24. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-22 复合型组合输出结构

  25. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-23 反馈输入结构

  26. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-24 输出反馈结构

  27. 3.2 简单可编程逻辑器件原理 3.2.5 GAL 图3-25 简单模式输出结构

  28. 3.3 CPLD的结构与工作原理 目前主要的半导体器件公司(如Xilinx、 Altera、 Lattice和AMD等公司)在各自的高密度PLD产品中都有着自己的特点, 但总体结构大致相同。 大多数EPLD和CPLD器件中至少包含了三种结构: 可编程逻辑宏单元, 可编程I/O单元和可编程内部连线。 Altera公司的MAX7000A系列器件是高密度高性能的EPLD, 其基本结构如图2-27所示, 包括逻辑阵列块LAB、 宏单元、 扩展乘积项(共享和并联)、 可编程连线阵列PIA和I/O控制块等五部分。

  29. 3.3 CPLD的结构与工作原理 KX康芯科技 图3-25 简单模式输出结构

  30. 3.3 CPLD的结构与工作原理 图3-27 MAX7128S的结构 1.逻辑阵列块(LAB) LAB由16个宏单元阵列组成, 多个LAB通过可编程连线阵列(PIA)和全局总线连接在一起,全局总线由所有的专用输入、 I/O引脚和宏单元馈入信号。 每个LAB包括以下输入信号: ①来自PIA的36个通用逻辑输入信号; ②用于辅助寄存器功能的全局控制信号; ③从I/O引脚到寄存器的直接输入通道。 KX康芯科技

  31. MAX7000系列中的宏单元 逻辑阵列 乘积项选择矩阵 可编程寄存器 三种时钟输入模式 全局时钟信号 全局时钟信号由高电平有效的时钟信号使能 用乘积项实现一个阵列时钟 3.3 CPLD的结构与工作原理 2.宏单元

  32. 3.3 CPLD的结构与工作原理 3.扩展乘积项 两种扩展乘积项可用来补充宏单元的逻辑资源: 反馈到逻辑阵列的反向乘积项; ①共享扩展项, 反馈到逻辑阵列的反向乘积项; LAB有16个共享乘积项 图3-28 共享扩展乘积项结构

  33. 3.3 CPLD的结构与工作原理 3.扩展乘积项 ②并联扩展项, 借自邻近宏单元中的一些没有被使用的乘积项。 最多20个乘积项直接送到宏单元或逻辑 图3-29 并联扩展项馈送方式

  34. 3.3 CPLD的结构与工作原理 不同的LAB通过在可编程连线阵列(PIA)上布线,以相互连接构成所需的逻辑。 4.可编程连线阵列(PIA) 图3-30 PIA信号布线到LAB的方式

  35. 3.3 CPLD的结构与工作原理 5.I/O控制块 每个I/O引脚可单独配置为输入、输出和双向方式 KX康芯科技 图3-31 EPM7128S器件的I/O控制块

  36. 3.4 FPGA的结构与工作原理 3.4.1 查找表逻辑结构 图3-32 FPGA查找表单元 图3-33 FPGA查找表单元内部结构

  37. 基于查找表的结构模块 什么是查找表? • 一个N输入查找表 (LUT,Look Up Table)可以实现N个输入变量的任何逻辑功能,如N输入“与”、N输入“异或”等。 • 输入多于N个的函数、方程必须分开用几个查找表( LUT)实现 输入1 查黑 找盒 表子 输入2 输出 输入3 输入4

  38. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 Cyclone器件主要有逻辑阵列块(LAB)、嵌入式存储器块M4K、I/O单元和PLL和内嵌专用内核等模块构成,在各个模块之间有丰富的互连线和时钟网络。 (1)逻辑阵列块(LAB) 每个LAB由10个LE构成,LE主要由一个4输入的查找表LUT、进位链逻辑和一个可编程的寄存器构成。 Cyclone的LE可以工作在下列两种操作模式: 普通模式:普通的组合逻辑功能; 动态算术模式:用做加法器、计数器和比较器等算术功能。

  39. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 (2) 嵌入式存储器 由数十个M4K的存储器组成。它可以实现真正双端口、简单双端口和单端口的RAM,可以支持移位寄存器和ROM方式。可以实现软乘法器,满足图像处理、音频处理和消费类电子系统的需要。 (3)锁相环的实现 内置最多2个增强型锁相环,可给用户提供高性能的时钟管理能力。 (4) I/O特性 支持差分的I/O标准,如LVDS和去抖动差分RSDS,当然也支持单端的I/O标准。 (5)支持Nios II系列嵌入式处理器

  40. 3.4.2 Cyclone/CycloneII系列器件的结构与原理

  41. 3.4.2 Cyclone/CycloneII系列器件的结构与原理

  42. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 KX康芯科技 图3-34 Cyclone LE结构图

  43. 3.4 FPGA的结构与工作原理 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-35 Cyclone LE普通模式

  44. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-36 Cyclone LE动态算术模式

  45. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-37 Cyclone LAB结构

  46. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-38 LAB阵列

  47. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-39 LAB控制信号生成

  48. 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图2-40 快速进位选择链

  49. 3.4 FPGA的结构与工作原理 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-41 LUT链和寄存器链的使用

  50. 3.4 FPGA的结构与工作原理 3.4.2 Cyclone/CycloneII系列器件的结构与原理 图3-42 LVDS连接

More Related