工学可编程逻辑器件_第1页
工学可编程逻辑器件_第2页
工学可编程逻辑器件_第3页
工学可编程逻辑器件_第4页
工学可编程逻辑器件_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

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

文档简介

工学可编程逻辑器件第1页/共84页2教学学时:6教学内容与重点:本章的重点在于介绍PLD的特点、原理和应用。重点内容有FPLA、PAL、GAL、EPLD、FPGA等各种PLD器件的结构特点、工作原理和使用方法,并介绍编程方法。教学目的:让学生了解各种PLD器件的结构特点、使用方法。学会用PLD器件设计数字电路。第2页/共84页38.1概述数字集成电路可编程逻辑器件第3页/共84页4图8.1.1PLD电路中门电路的惯用画法

(a)与门(b)输出恒等于0的与门(c)或门

(d)互补输出的缓冲器(e)三态输出的缓冲器第4页/共84页58.2现场可编程逻辑阵列(FPLA)任何一个逻辑函数都可以写成与或表达式的形式。所以FPLA由可编程的与阵列和或阵列以及输出缓冲电路构成。如图8.2.1图8.2.1FPLA的基本电路结构1.FPLA基本结构第5页/共84页6

FPLA的规格用输入变量数、与阵列输出端数和或阵列输出端数的乘积来表示。具有熔丝和叠栅注入式MOS两种编程单元。如:

82S100是一个双极型熔丝编程单元,其规格为16×48×8为了控制输出的极性,还经常采用带可编程异或的输出结构,如图8.2.2.图8.2.2FPLA的异或输出结构XOR=1,倒相XOR=0,不倒相第6页/共84页72.时序逻辑型FPLA基本结构图8.2.3时序逻辑型FPLA的电路结构MPR/OE功能00输出选通01输出选通触发器清010输出选通11输出禁止可编程模式第7页/共84页88.3可编程阵列逻辑(PAL)

PAL是70年代后期开始推出的一种PLD器件,采用双极型工艺,熔丝编程。

8.3.1PAL器件的基本电路结构图8.3.1PAL器件的基本电路结构第8页/共84页9图8.3.2编程后的PAL电路(8.3.1)第9页/共84页108.3.2PLA的几种输出电路结构和反馈形式一、专用输出结构图8.3.3具有互补输出的专用输出结构这种专用输出结构只能用来编程产生组合逻辑电路。常用器件有:PAL10H8,PAL14H4PAL10L8,PAL14L4PAL16C1,第10页/共84页11二、可编程输入输出结构图8.3.4PAL的可编程输入/输出结构高阻输出时,I/O可做输入端使用例如PAL16L8、PAL20L10等图8.3.5带有异或门的可编程输入/输出结构第11页/共84页12三、寄存器输出结构图8.3.6PAL的寄存器输出结构

利用寄存器输出结构PAL芯片,可以方便的构成各种时序电路。常用芯片有PAL16R4、PAL16R6、PAL16R8等。第12页/共84页13四、异或输出结构图8.3.7PAL的异或输出结构常用芯片有PAL20×4、PAL20×8、PAL20×10等。I1Q1I1第13页/共84页14五、运算选通反馈结构图8.3.8PAL的运算选通反馈结构第14页/共84页15图8.3.9产生16种算术、逻辑运算的编程情况第15页/共84页16第16页/共84页17第17页/共84页18第18页/共84页19第19页/共84页20

当采用PAL16R4时,触发器的输出和表8.3.2中Y信号反相,转换后得到表8.3.3.化简后得到状态方程组为图8.3.11例8.3.2输出状态的卡诺图第20页/共84页21因此得到D触发器的驱动方程输出方程(8.3.4)(8.3.5)编程后的PAL16R4如图8.3.12第21页/共84页22图8.3.12例8.3.2中编程后的PAL16R4的逻辑图第22页/共84页238.4通用阵列逻辑(GAL)为了克服PAL器件存在的缺点LATTICE公司于1985年首先推出了另一种新型的可编程逻辑器件——通用阵列逻辑GAL。特点:●采用电可擦除的CMOS(E2CMOS)制作.●输出端设置了可编程的输出逻辑宏单元OLMC(系OutputLogicMacroCell的缩写)。通过编程对OLMC编程,实现各种输出电路工作模式,从而增强了器件的通用性。第23页/共84页24图8.4.1GAL16V8的电路结构图8.4.1GAL电路结构(以GAL16V8为例)1.基本结构●32×64位可编程与阵列●

8个OLMC逻辑宏单元●10个输入缓冲器●8个三态输出缓冲器●8个反馈/输入缓冲器●组成或阵列的8个或门包括在8个OLMC中第24页/共84页252.编程单元●每个与阵列的编程交叉点上,都是E2MOS编程单元。如图图8.4.2由3个编程单元构成的与门第25页/共84页26图8.4.3GAL16V8编程单元的地址映像移位脉冲编程数据输入32行与阵列,每行对应64位编程点电子标签,存放各种编程信息,如器件编号、编程日期、电路名称、编程次数等设定OLMC的工作模式和64个乘积项的禁止加密编程后,不能读出验证和进一步编程(对应64个与项)编程后,整体擦除第26页/共84页278.4.2输出逻辑宏单元OLMC1.OLMC的基本结构图8.4.4OLMC的结构框图三态控制选择反馈数据选择第一乘积项选择输出模式选择○根据ACO和AC1(n)的状态决定OLMC是工作在组合输出模式还是寄存器输出模式。根据ACO、AC1(n)的状态决定与逻辑阵列的第一乘积项是否作为或门的输入。用来选择三态的控制方式,如表8.4.1FMUX用来选择反馈信号。如表8.4.2第27页/共84页28图8.4.5GAL16V8结构控制字的组成

异或门用于控制输出函数的极性。当XOR(n)=0时,异或门的输出和或门的输出同相;当XOR(n)=1时,异或门的输出和或门的输出相位相反。输出电路结构的形式受4个数据选择器控制。输出数据选择器OMUX是2选1数据选择器,它根据ACO和AC1(n)的状态决定OLMC是工作在组合输出模式还是寄存器输出模式。第28页/共84页29

乘积项数据选择器PMUX也是2选1数据选择器,它根据ACO、AC1(n)的状态决定来自与逻辑阵列的第一乘积项是否作为或门的一个输入。三态数据选择器TSMUX用来选择三态的控制方式,如表8.4.1第29页/共84页30反馈数据选择器FMUX用来选择反馈信号,如表8.4.2(m)是相邻OLMC的编号。第30页/共84页312.OLMC的工作模式第31页/共84页32专用输入模式专用组合输出模式反馈组合输出模式第32页/共84页33图8.4.6OLMC5种工作模式下的简化电路(图中NC表示不连接)

(a)专用输入模式(b)专用组合输出模式(c)反馈组合输出模式

(d)时序电路中的组合输出模式(e)寄存器输出模式第33页/共84页348.4.3GAL输入特性与输出特性1.输入特性图8.4.7GAL的输入缓冲器电路RC组成噪音滤波网络T1静电保护电路T2、T3和T4、T5组成两级反相器第34页/共84页352.输出特性图8.4.8GAL的输出缓冲器电路特点●输出采用NMOS结构没有锁定效应●输出是软开关特性,减小了动态尖峰电流●驱动能力较大第35页/共84页36图8.4.9GAL的静态输出特性

(a)输出为高电平时(b)输出为低电平时第36页/共84页378.5可擦除的可编程逻辑器件(EPLD)

8.5.1EPLD的基本结构和特点●它采用CMOS和UVEPRO工艺制作,SIMOS管作为编程单元,所以低功耗、高噪声容限、可靠性高、可改写、集成度高、造价便宜。目前EPLD产品的集成度最高已达1万门以上。●输出部分采用了类似于GAL器件的OLMC。可以对OLMC编程,而且还可对OLMC中的触发器预置数和异步置零。●为了提高与或逻辑阵列中乘积项的利用率,有些EPLD的或逻辑阵列部分也引人了可编程逻辑结构。●大多数情况下与或逻辑阵列中每组乘积项数目不同。第37页/共84页38图8.5.1ATMEL公司产AT22V10的电路结构框图第38页/共84页398.5.2EPLD的与-或逻辑阵列图8.5.2每组乘积项分为两部分的可编程结构(如ATV750)特点:●每组乘积项的数目不完全相等;提高乘积项的利用率。●将每组乘积项分为两部分,产生两个逻辑函数。可通过编程可使每部分单独使用,也可产生一个与项更多的与-或项。●可以通过编程实现与项的共享。第39页/共84页40图8.5.3与-或逻辑阵列的乘积项共享结构(如ALTER公司的EP512)第40页/共84页418.5.3EPLD的输出逻辑宏单元(OLMC)

1.AT22V10的OLMC电路结构图图8.5.4AT22V10的OLMC电路结构图MUX1完成组合逻辑输出和寄存器输出组态XOR实现输出极性选择MUX2完成反馈信号的选择同步预置异步置0AT22V10的所有触发器都是同步工作的,AR、SP可由一个可编程的乘积项提供。第41页/共84页422.ATV750的OLMC电路结构图图8.5.5ATV750的OLMC电路结构图每个触发器CLK、AR异步工作,独立编程。MUX完成组合逻辑输出和寄存器输出组态XOR实现输出极性选择第42页/共84页438.6现场可编程门阵列(FPGA)

8.6.1FPGA的基本结构特点:●由三种若干独立的可编程模块和一个存放编程数据的静态存储器构成。密度很高,可达3万门/片以上。●通过编程,可以灵活地组合各种数字系统●缺点是传输时间是不确定的,限制了工作速度。存放编程数据的静态存储器是易失性的。需配备存放数据的EPROM,每次开机重新加载,且保密性不好。第43页/共84页44图8.6.1FPGA的基本结构框图●输入/输出模块IOB(I/OBlock)。通过编程,可根据需要设置为输入或输出●可编程逻辑模块CLB(ConfigurableLogicBlock)。包含组合逻辑电路和触发器,通过编程,可实现规模不大的组合电路和时序电路●互连资源(InterconnectResource)。布线区由不同类型的金属线、可编程开关矩阵、可编程接点,通过编程,实现各模块间的方便连接。第44页/共84页45

静态存储器中的数据是决定各模块工作状态的编程数据,每个存储单元如下:图8.6.2FPGA内静态存储器的存储单元第45页/共84页468.6.2FPGA的IOB和CLB(以Xilinx公司的XC2064为例)一、IOBXC2064有56个可编程的I/O口,每个I/O口如图8.6.3所示。图8.6.3XC2064的IOB电路G2的阈值是可编程的XC2064中共用CLKG1禁止时,为输入方式,G1工作时为输出方式第46页/共84页47二、CLBXC2064具有64个可编程的CLB,排列成8×8矩阵,每个CLB包含组合和存储电路以及控制电路,如图8.6.4所示。图8.6.4XC2064的CLB电路组合逻辑是4入-2出的通用模块,通过编程,实现四、两三、五变量的三种不同组态的逻辑函数。由NMOS管和CMOS反相器组成,输出输人间逻辑关系由一组编程控制信号决定。将编程控制信号与函数对应关系列成函数表,在编程过程中通过查表即可找出所需的编程数据。第47页/共84页48图8.6.5XC2064中CLB的3种组态

(a)四变量任意函数;(b)两个三变量任意函数;(c)五变量逻辑函数第48页/共84页49

图8.6.6所示电路是用NMOS管构成的通用逻辑模块,A、B是两个输人变量,F为输出逻辑函数,C0、C1、C2、C3是编程控制信号。图8.6.6二变量通用逻辑模块的原理图第49页/共84页50

从图中可以看出,它实际上是一个用数据选择器,实现的逻辑函数,把控制地址AB做为了输入变量。

在C0C1C2C3的16种不同取值下,得到A和B的16种函数关系,如表8.6.1所示。第50页/共84页51图8.6.7XC2064中CLB的存储电路异步置位信号可以从输入变量A和组合电路输出F当中选择,F信号还是触发器的输入信号。

时钟信号由MUXI给出,既可选择片内公共时钟CLK,工作在同步方式;又可以选择组合电路的输出G或输人变量C,工作在异步方式。用MUX2还可以选择用时钟的上升(下降)沿(或高(低)电平触发。MUX4可以选组合电路输出G,也可以选输人变量D作为异步置零信号。CLB中存储电路的结构如图8.6.7所示,它只包含一个触发器(在XC3000和XC4000系列FPGA器件中,每个CLB中有两个触发器)第51页/共84页528.6.3FPGA的互连资源

FPGA内有金属线、开关矩阵SM(SwitchingMatrices)和可编程连接点PIP(ProgrammableInterconnectPoints)三类互连资源。图8.6.8FPGA内部的互连资源第52页/共84页53图8.6.9开关矩阵和可编程连接点第53页/共84页54图8.6.10利用水平和垂直通用连线和开关矩阵实现连接第54页/共84页55图8.6.11用直接连线实现连接第55页/共84页568.6.4FPGA编程数据的加载

将编程数据写人FPGA内部编程数据存储器称为加载。整个装载过程是在FPGA内的控制电路操作下自动进行的。下面仍以XC2000系列FPGA为例,说明装载的过程。

装载的操作有不同模式,由模式选择信号M0、M1及M2指定,有主、从模式之分和数据并行输人、串行输人模式之分。图8.6.12(a)是“主并模式”装载的电路图。

XC2064引脚功能的设置情况如下。第56页/共84页57A0~A15是地址代码输出端,装载开始便自动地顺序输出地址代码)给EPROM。装载完成后都可作为用户可编程的1/O引脚用。

D0~D7,是数据输人端,装载完成后都可作为用户可编程的1/O引脚用。M0、M1、和M2给出装载模式选择信号。M0是专用引脚,M2是装载结束后的I/O脚之一,M1是回读信号端.第57页/共84页58PWRDWN是掉电输人信号。当PWRDWN变成低电平时,电路停止工作,并使所有输出变为高阻态。HDC和LDC是两个表示装载数据正在进行的信号端,装载过程中HDC始终为高电平,LDC始终为低电平。装载完成后它们也是用户可编程的1/O引脚。DOUT是数据输出端,在装载过程中,写人数据的同时就把数据又变成串行数据从DOUT端输出,可作为另一片FPGA的串行数据输人。装载结束后它也是一个用户可编程的I/O端。第58页/共84页59RCLK是另一个输出时钟信号,它的频率为CCLK的1/8。当外接动态存储器时,装载期间作读信号端使用,一般情况下不用。CCLK为时钟引脚。在主并模式下它输出时钟信号。在回读时CCLK是一个输人时钟信号端。RESET为复位信号。如果在装人数据的过程中RESET端,出现低电平输人信号,则编程数据存储器将被清除,重新开始装载过程。D/P为装载完成信号端。当装载过程结束,,D/P变成高电平。如果再令D/P变为低电平,则将重新初始化,重新进装载。第59页/共84页60图8.6.12XC2064的主并装载模式

(a)电路接法(b)写入数据的时序图第60页/共84页61图8.6.13石英晶体振荡器电路第61页/共84页62图8.6.14装载过程的流程图

接通电源后,内部的复位电路被触发,开始清除编程数据存储器。如RESET信号无效,电路自动检测M0、M1、M2的状态,以确定装载模式。然后启动并行读入数据,并且可以同时在DOUT读出。装载完成后DONE变为高电平。如果数据读人过程中出现RESET=0信号,则装载过程停止,并清除编程存储器,重新开始装载过程。第62页/共84页631、开发系统软件早期多为一些汇编型软件。要求以化简后的与一或逻辑式输人,不具备自动化简功能,对不同类型PLD的兼容性较差。如由MMI公司研制的PALASM以及随后出现的FM(Fast-Map)等。8.7PLD的编程★必须采用开发系统的支持第63页/共84页64

进人80年代以后,比较流行的有DataI/O公司研制的ABEL和LogicalDevice公司的CUPL。这类软件输人的源程序采用专用的硬件描述语言HDL编写,有自动化简和优化设计功能。另外还有电路模拟和自动测试等附加功能。

80年代后期又出现了既可以用高级编程语言输人,还可以用电路原理图输人。例如DataI/O公司的Synario就属于这样的软件。

90年代以来,PLD开发系统软件开始向集成化方向发展。一些PLD产品公司都推出了集成化开发系统软件(软件包)。它通过一个设计程序管理软件把一些优秀PLD开发软件集成为一个软件系统,在设计时技术人员可以灵活地调用这些资源完成设计工作。属于这种集成化的软件系统有Xilinx公司的XACTS.0,Lattice公司的ISPSynarioSystem等。第64页/共84页652、开发系统的硬件

包括计算机和编程器。编程器是对PLD进行写人和擦除的专用装置,能提供写人或擦除操作所需要的电源电压和控制信号,并通过串行接口从计算机接收编程数据,最终写进PLD中。第65页/共84页66测试。将写好数据的PLD从编程器上取下,用实验方法测试它的逻辑功能,检查它是否达到了设计要求。开始逻辑抽象。得到逻辑函数式、真值表或状态转换表(图)选定PLD的类型和型号选定开发系统。按编程语言的规定格式编写源程序上机运行。将源程序输人计算机,并运行相应的编译程序或汇编程序,产生记录PLD编程数据的标准文件格式JEDEC文件。卸载。就是将JEDEC文件由计算机送给编程器,再由编程器将编程数据写人PLD中。3、PLD的编程步骤第66页/共84页678.8在系统可编程逻辑器件(ISP—PLD)

ISP—PLD:InSystemProgrammablePLD)8.8.1低密度ISP—PLD

低密度ISP—PLD是在GAL电路的基础上加进了写人/擦除控制电路而形成的。例如ispGAL16Z8,它的电路结构框图如图8.8.l所示。在正常工作状态下,附加的控制逻辑和移位寄存器不工作第67页/共84页68图8.8.1ispGAL16z8的电路结构框图第68页/共84页69

●ispGAL16Z8有3种不同的工作方式正常方式诊断方式编程方式工作方式由输人控制信号MODE和SDI指定。

第69页/共84页70接通电源以后如MOD=H、SDI=L,则自动进人正常工作状态S0,与GAL16V8的工作状态相同。当MOD和SDI同时变为高电平(HH)以后,电路进人诊断方式S1。进入编程,将编程数据从SDI移入寄存器将编程数据由SDO从寄存器移出,进行校验。将数据写入E2CROM第70页/共84页718.8.2高密度ISP-PLD特点:●高密度ISP-PLD也称为ispLSI●电路复杂●功能强1.电路结构(ispLSI1032)第71页/共84页72图8.8.3ispSI1032电路结构图32个通用模块GLB,GenreicLogicBlock64个I/O单元I/OCel

温馨提示

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

评论

0/150

提交评论