第二章FPGACPLD结构与应用_第1页
第二章FPGACPLD结构与应用_第2页
第二章FPGACPLD结构与应用_第3页
第二章FPGACPLD结构与应用_第4页
第二章FPGACPLD结构与应用_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章FPGA/CPLD结构与应用

FPGA

-Field

Programmable

Gate

Array

(现场可编程门阵列)

CPLD

-Complex

Programmable

Logic

Device

(复杂可编程逻辑器件)基本PLD器件的原理结构图概述可编程逻辑器件的分类可编程逻辑器件(PLD)按集成度分类从结构分:有乘积项结构器件和查找表结构器件;

从编程工艺上分:熔丝型器件、反熔丝型器件、EPROM、EEPROM、SRAM、FLASH……

简单PLD原理电路符号表示图常用逻辑门符号与现有国标符号的对照电路符号表示图PLD的互补缓冲器图PLD的互补输入图PLD中与阵列表示图PLD中或阵列的表示图阵列线连接表示

PROM图PROM基本结构:其逻辑函数是:PROM图PROM的逻辑阵列结构逻辑函数表示:PROM图PROM表达的PLD图阵列图用PROM完成半加器逻辑阵列特点:

PROM只能用于组合电路的可编程上

当输入变量增加时,会引起存储容量以2的幂次增加

PLA图PLA逻辑阵列示意图PLA图PLA与PROM的比较特点:输入变量增多,存储规模迅速增加的问题得到大大的缓解。但与阵列或阵列都可编程,使允许速度下降。

PAL

PAL结构:图PAL的常用表示:特点:不必考虑公共的乘积项。或门乘积项数目固定,大大简化了算法;对于多个乘积项可通过输出端反馈来解决。但种类太丰富,造成生成不便,采用熔丝工艺,一次可编程,修改不便。

GAL图寄存器输出结构图寄存器模式组合双向输出结构

GAL首次在PLD上采用EEPROM工艺

GAL亦是与阵列可编程,或阵列固定

GAL对I/0结构进行了较大的改进,在输出部分增加OLMC。GAL的OLMC单元设有多种组态,可配置成专用组合输出、专用输入、组合输出双向口、寄存器输出、寄存器输出双向口等,为逻辑电路设计提供了极大的灵活性。GAL图简单模式输出结构OLMC的所有这些输出结构和工作模式的选择和确定(即对其中的多路选择器的控制)均由EDA开发软件,根据GAL的逻辑设计文件的逻辑关系自动形成控制文件。

即将设计文件综合成可下载于GAL的JEDEC标准格式文件(即熔丝图文件),该文件包含对OLMC输出结构和工作模式及可编程与阵列各连线熔丝点的选择信息。逻辑宏单元输入/输出口输入口时钟信号输入三态控制可编程与阵列固定或阵列GAL16V8CPLD结构与工作原理图MAX7000系列的单个宏单元结构PRNCLRNENA逻辑阵列全局清零共享逻辑扩展项清零时钟清零选择寄存器旁路并行扩展项通往I/O模块通往PIA乘积项选择矩阵来自I/O引脚全局时钟QDEN来自PIA的36个信号快速输入选择2CPLD结构与工作原理(1)逻辑阵列块(LAB)

MAX7128S的结构每个LAB由16个宏单元构成

多个LAB通过可编程连线阵列PIA和全局总线连接在一起(2)宏单元(3)扩展乘积项共享扩展乘积项结构每个LAB有16个共享扩展项。

可被LAB内任何一个或全部宏单元使用和共享,以便实现复杂的逻辑函数。

并联扩展项馈送方式允许最多20个乘积项直接送到宏单元的“或”逻辑,其中五个乘积项由宏单元本身提供,另外15个并联扩展项由同一个LAB中邻近宏单元借用。

(4)可编程连线阵列不同的LAB通过在可编程连线阵列(PIA)上布线,以相互连接构成所需的逻辑。图PIA信号布线到LAB的方式(5)I/O控制块图EPM7128S器件的I/O控制块I/O控制块允许每个I/O引脚被单独被配置为输入、输出和双向工作方式。

FPGA结构与工作原理查找表图FPGA查找表单元内部结构图FPGA查找表单元一个N输入查找表(LUT,LookUpTable)可以实现N个输入变量的任何逻辑功能,如N输入“与”、N输入“异或”等。输入多于N个的函数、方程必须分开用几个查找表(LUT)实现输出查黑找盒表子输入1输入2输入3输入4什么是查找表?基于查找表的结构模块

查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16x1的RAM。当用户通过原理图或HDL语言描述了一个逻辑电路以后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。

查找表原理下面是一个4输入与门的例子

查找表结构的FPGA逻辑实现原理

A,B,C,D由FPGA芯片的管脚输入后进入可编程连线,然后作为地址线连到到LUT,LUT中已经事先写入了所有可能的逻辑结果,通过地址查找到相应的数据然后输出,这样组合逻辑就实现了。该电路中D触发器是直接利用LUT后面D触发器来实现。时钟信号CLK由I/O脚输入后进入芯片内部的时钟专用通道,直接连接到触发器的时钟端。触发器的输出与I/O脚相连,把结果输出到芯片管脚。这样PLD就完成了所示电路的功能。(以上这些步骤都是由软件自动完成的,不需要人为干预)

这个电路是一个很简单的例子,只需要一个LUT加上一个触发器就可以完成。对于一个LUT无法完成的的电路,就需要通过进位逻辑将多个单元相连,这样FPGA就可以实现复杂的逻辑。

FLEX10K系列器件图FLEX10K内部结构...IOCIOCIOCIOC......IOCIOC...IOCIOC...IOCIOC...IOCIOC逻辑单元...IOCIOC...IOCIOCIOCIOC...快速通道互连逻辑阵列块(LAB)IOCIOC...(1)逻辑单元LE图LE(LC)结构图数据1Lab控制3LE输出进位链级联链查找表

(LUT)清零和预置逻辑时钟选择进位输入级联输入进位输出级联输出Lab控制1CLRNDQ数据2数据3数据4Lab控制2Lab控制4图进位链连通LAB中的所有LE快速加法器,比较器和计数器DFF进位输入(来自上一个逻辑单元)S1LE1查找表LUT进位链DFFS2LE2A1B1A2B2进位输出(到LAB中的下一个逻辑单元)进位链查找表LUT图两种不同的级联方式“与”级联链“或”级联链LUTLUTIN[3..0]IN[4..7]LUTIN[(4n-1)..4(n-1)]LUTLUTIN[3..0]IN[4..7]LUTIN[(4n-1)..4(n-1)]LE1LE2LEnLE1LE2LEn0.6ns

(2)逻辑阵列LAB是由一系列的相邻LE构成的图FLEX10KLAB的结构图(3)I/O单元与专用输入端口图IO单元结构图存储器容量(单位:Bit)典型可用门EPF10K10/AEPF10K20EPF10K30/AEPF10K40EPF10K5/VEPF10K70EPF10K100/AEPF10K130VEPF10K250A管芯尺寸比较AlteraEPF10K100A相对管芯尺寸:1.00.35µ工艺4,992个逻辑单元(LE)12个EABXilinxXC4062XL相对管芯尺寸:1.910.35µ工艺相当于4,608个逻辑单元(LE)*没有EABAlteraEPF10K100E相对管芯尺寸:0.60.25µ工艺4,992个逻辑单元(LE)12个EAB工艺改进促使供电电压降低5.0V3.3V2.5V1.8V崩溃电压供电电压FPGA/CPLD多电压兼容系统内核电压3.3V、2.5V或1.8V

接受2.5V、3.3V或者5.0V输入输出电位标准Vccio资料来源:美国Altera公司5.0V3.3V2.5V1.8V初始设计百分比FPGA/CPLD不同芯核电压器件流行趋势

FPGA/CPLD生产商ALTERAFPGA:

FLEX系列:10K、10A、10KE,EPF10K30EACEX系列:1K系列EP1K30、EP1K100 Cyclone系列:EP1C3、EP1C6、EP1C20CycloneII系列:EP2C5StratixIIGX系列、StratixIII系列CPLD:

MAX7000/S/A/B系列:EPM7128SMAX3000系列、MAXII系列FPGA:VirtexII系列、Virtex-4、Virtex-5SPARTAN系列:XCS10、XCS20、XCS30 Spartan2系列、Spartan3系列CPLD:XC9500系列:XC95108、XC95256 CoolRunner系列XILINXLATTICEVANTIS(AMD)ispLSI系列:1K、2K、3K、5K、8KispLSI1016、ispLSI2032、

ispLSI1032E、ispLSI3256AMACH系列:LC4032ZispPAC系列:其他PLD公司:ACTELQUIKLOGICATMEL公司:ATF1500AS系列、40MXCYPRESS公司(停止发展PLD部门)Lucent的PLD部门(被收购)Philips的PLD部门(被收购)CPLDFPGALatticeEC&ECP、LatticeXPFPGA/CPLD下载方式

CPLDFPGASRAMOTPisp--IN-SYSTEM-PROGRAMMERBALE1、直接配置(CONFIGUERING)2、ROM3、模拟ROMISP功能提高设计和应用的灵活性减少对器件的触摸和损伤不计较器件的封装形式允许一般的存储样机制造方便支持生产和测试流程中的修改允许现场硬件升级迅速方便地提升功能未编程前先焊接安装系统内编程--ISP在系统现场重编程修改此接口既可作编程下载口,也可作JTAG接口

ALTERA的ByteBlaster(MV)下载接口FPGA/CPLD测试技术内部逻辑测试JTAG边界扫描测试图边界扫描电路结构

JTAG边界扫描测试边界扫描IO引脚功能边界扫描数据移位方式JTAG边界扫描测试图JTAGBST系统内部结构FPGA/CPLD产品发展采用更小线宽的工艺JTAG在系统可编程JTAG加密功能。短路保护功能。嵌入式逻辑分析DSP模块多种内嵌Memory处理器核高速串行I/OPLL模块……FPGA的配置和重配置

(RECONFIGURATION)配置又称编程或下载,是指经过用户设计输入并经过开发系统编译后产生的配置数据文件,将其装入FPGA芯片内部的可配置存储器的过程,简称FPGA的下载。只有经过逻辑配置后,FPGA才能实现用户需要的逻辑功能。配置alteraFPGA配置文件单板设计及调试注意事项

FPGA配置JTAG配置端口FPGAPS配置端口PC机配置适配电路配置器件或配置电路AS配置端口专用FLASH配置器件PC机FPGA应用电路系统CPU/CPLD大容量ROM/EPROM/FLASH芯片FPGA应用电路系统CPU/CPLD

RAM方案1方案21、通用编程器2、通用仿真器3、虚拟仪表

…配置方式根据FPGA在配置电路中的角色,其数据可以用以下3种方式下载到目标芯片中:主动配置方式被动配置方式最常用的(JTAG)配置方式主动配置方式

由FPGA来主动输出控制和同步信号(包括配置时钟)给FPGA的串行配置芯片(EPCS系列),配置芯片收到命令后,把配置数据发给FPGA,完成配置过程。AlteraFPGA所支持的主动方式,只能与Altera公司提供的主动串行芯片(EPCS系列)配合使用,因此又称主动串行(AS)模式。目前只支持stratix和Cyclone系列。AS专用器件配置方式AS配置器件的在线编程FPGA被动方式被动模式下,由系统的其他设备发起并控制配置过程,这些设备可以是配置芯片(EPC系列),或者单板的微处理器、CPLD等。FPGA在配置过程中完全处于被动地位,只是输出一些状态信号来配合配置过程。被动配置方式可细分为PS(被动串行)、FPP(快速被动并行)、PPS(被动并行同步)、PPA(被动并行异步)以及PSA(被动串行异步)PS(被动串行)所有的AlteraFPGA都支持这种模式。由Altera的下载电缆、增强型配置器件(EPC4、EPC8和EPC16)和配置器件(EPC1441、EPC8和EPC2),或智能主机(如微处理器和CPLD)来配置。在做PS配置时,FPGA配置数据从存储器读出,写入到FPGA的DATA0接口上。数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1比特数据PS:单片机软件方式配置单片机产生配置时序、读取EPROM中的配置数据EPROM中放置多个不同功能的配置文件对FPGA进行配置PS:使用下载电缆配置

注意:1、不要忘了将多片配置控制信号nCE

引脚接地!2、作为PS配置模式,不要忘了将配置模式控制信号脚MSEL1和

MSEL0都接地!FLEX、ACEX、APEX系列FPGA配置电路对FPGA配置10针标准配置/下载接口通过配置电路后与PC机的并行接口相接PS:使用专用配置芯片配置Altera公司的FPGA配置方式与器件系列表AlteraFPGA常用配置器件PS:ASIC/CPLD硬件高速配置方案缺点:1、电路面积比较大快速被动并行(FPP)只有Stratix系列和APEX‖中支持。可由Altera的增强型配置器件(EPC4、EPC8和EPC16)或智能主机(如微处理器和CPLD)来配置。在做FPP配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上。数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1字节数据FPP:使用增强型配置器件被动并行同步(PPS)只有较老的器件支持这种模式,如APEX20K、Mercury、ACEX1K和FLEX10K。可由智能主机(如微处理器和CPLD)来配置。在做PPS配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上。在第一个DCLK时钟信号的上升沿处,将一个字节的数据锁存到FPGA中,然后由随后的8个DCLK时钟的下降沿将该字节数据一位一位移到FPGA中。被动并行异步(PPA)只有Stratix系列、APEX‖、APEX20K、Mercury、ACEX1K和FLEX10K支持。可由智能主机(如微处理器和CPLD)来配置。在做PPA配置时,FPGA被配置控制器当作一个异步存储器。在作PPA配置时,

FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上。在配置过程由一些异步控制信号来控制。PPA配置方式被动串行异步(PSA)只有FLEX6000支持。可由智能主机(如微处理器和CPLD)来配置。在做PSA配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA0输入接口上。在配置过程由一些异步控制信号来控制。JTAG配置方式使用JTAG进行配置可以使用Altera的下载电缆,或者通过智能主机模拟JTAG的时序来进行配置;JTAG接口由四个必须

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论