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

下载本文档

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

文档简介

第八章可编程逻辑器件

8·1概述

8·3可编程阵列逻辑PAL

8·4

通用阵列逻辑GAL

8·6现场可编程门阵列FPGA

本章小结返回主目录8.1概述可编程逻辑器件(PLD)是20世纪80年代发展起来的一种通用的可编程的数字逻辑电路。它是一种标准化、通用的数字电路器件,集门电路、触发器、多路选择开关、三态门等器件和电路连线于一身。PLD使用起来灵活方便,可以根据逻辑要求设定输入与输出之间的关系,也就是说PLD是一种由用户配置某种逻辑功能的器件。

PLD在制造工艺上,采用过TTL、CMOS、ECL、静态RAM等技术,器件类型有PROM、EPROM、PROM、PLA、PAL、GAL、EPLD、CPLD、FPGA等。作为一种理想的设计工具,PLD具有通用标准器件和半定制电路的许多优点,给数字系统设计者带来很多方便。其优点如下:(1)简化设计。由于PLD的可编程性和灵活性,电路设计结束后,可随意进行修改或删除,无需重新布线和生产印刷板,大大缩短了系统的设计周期。(2)高性能。现在市场上提供的PLD器件的性能超过了最快的标准分立逻辑器件的性能,而且一片PLD芯片的功耗比分立器件组合而成的电路的功耗要小。(3)可靠性高。采用PLD器件将使所用器件的数目减少,也使印刷板面积减少,密度下降,这些都大大提高了电路的可靠性,同时也将减少干扰和噪声,使系统的运行更可靠。(4)成本下降。采用PLD设计数字系统,由于所用器件少,用于器件测试及装配的工作量也少,所以系统的成本将下降。

(5)硬件加密。使用PLD器件构成的数字系统,其内部结构是由设计者通过编程实现的。有些PLD器件(例如GAL)还提供一个能被编程的保密单元,可用来防止检验和读出芯片中的程序,这对于保持芯片设计的专利、防止他人抄袭有很大好处。

8·3PAL器件结构及其应用

8·3·1PAL的基本电路结构

8·3·2PAL的几种输出电路结构和反馈形式

8·3·3PAL应用举例

8·3·1PAL的基本电路结构

PAL是在ROM和PLA基础上发展起来的,它同ROM和PLA一样都采用“阵列逻辑”技术。在阵列逻辑中,既要求有规则的阵列结构,又要求实现灵活多样的逻辑功能,同时还要求编程简单,易于实现。PAL是为适应这种要求而产生的。它比PROM灵活,便于完成多种逻辑功能,同时又比PLA工艺简单,易于编程和实现。图8.1PAL结构

PAL的基本结构由可编程的与阵列和固定的或阵列组成,如图8.1所示。这种结构形式为实现大部分逻辑函数提供了最有效的方法。PAL每一个输出包含的乘积项数目是由固定连接的或阵列提供的,一般函数包含3至4个乘积项,而PAL可提供7至8个乘积项的与或输出。该输出通过触发器送给输出缓冲器,同时也可以将状态反馈回与阵列。这种反馈功能使PAL器件具有记忆功能,既可以记忆先前的状态,又可以改变功能状态,因此PAL器件可以构成状态时序机,实现加、减计算及移位、分支操作等。8·3·2PAL的几种输出电路结构和反馈形式

PAL器件的与阵列是可编程的,而或阵列是不可编程的。用PAL实现逻辑函数时,每个输出是若干个与项的和,而与项的数目已由制造厂固定(4个、8个等)。在PAL产品中,一个输出的最多与项可达8个。

PAL备有多种输出结构,有专用输出、I/O输出、寄存器输出、异或输出和算术选通反馈输出等结构,它不仅可以构成组合逻辑电路,也可以构成时序逻辑电路。不同型号的芯片对应一种固定的输出结构,由生产厂家来决定。

一.

专用输出结构图8.2是专用输出结构的逻辑图。它是在基本门阵列的输出加上反相器得到的。基本门阵列的输出结构也属于专用输出结构。图8.2专用输出结构图

二.可编程输入/输出(I/O)结构图8.3是I/O输出结构的逻辑图。该图的或门实现7个与项的逻辑加,其输出为三态门G3。它受到与门G2输出(第一个与项)的控制。如果编程时使此与项常为0,即该与门的所有输入端都接通,则三态门处于高阻态,此时,I/O端可作为输入端,G4为输入缓冲器。相反,编程后G2与门的所有输入项都断开,三态门被选通,I/O只能作输出端,这时,缓冲器G4将输出反馈到输入。但是反馈回来的信号能否成为与门输入,还要视编程而定。图8.3I/O输出结构三.寄存器输出结构图8.4是寄存器输出结构的逻辑图。它是在基本门阵列基础上加入D触发器得到的。在时钟CLK的上升沿,或门的输出存入D触发器,同时Q端通过OE控制的三态门G3输出。另外,通过缓冲器G2反馈至与门阵列。这样,PAL便成了具有记忆功能的时序网络,从而满足设计时序电路的需要。图8.4寄存器输出结构

四.异或结构图8.5是异或输出结构的逻辑图。它是把与项之和分成了两部分,经异或运算后,在时钟CLK的上升沿将异或结果存入D触发器,通过OE控制的三态门G6输出。这样处理后,它除了具有寄存器输出结构的特征外,还能实现时序逻辑电路的保持功能。图8.5异或输出结构五.运算选通反馈结构算术选通反馈结构是在异或结构基础上加入反馈选通电路得到的,如图8.6所示。反馈选通电路可以对反馈项和输入项A实现4种逻辑加操作,反馈选通的4个或门输出分别为(A+Q)、(+Q)、(A+)、(+)。这4种结果反馈到与门阵列之后,可获得更多的逻辑组合。图8.6算术选通反馈结构

8·3·3PAL的应用举例

图8.7表示了PAL16H8的逻辑图,它有64×32个熔丝点,输出电路有8个D触发器,是寄存器输出结构。图8.8是PAL14H4的应用实例图,它具有寄存器的输出结构。对于该器件的开发,可以按照实训8中的方法来实现。首先编写正确的ABEL源程序,然后进行编译,生成相应的.JED文件,最后通过编程器根据.JED文件对芯片写入。这样,就可以得到与.JED文件完全对应的实例图8.8。类似于图8.8的表示方法也是.JED文件的一种熔丝图表现。图8.7PAL16H8逻辑图

图8.8中交叉处的“×”表示熔丝保留,意味着该与线含有竖线对应的变量;交叉处无“×”表示熔丝烧断,表示该与线不含有相应的变量。如果一条与线上的熔丝全保留,则这条与线的值恒为0;如果一条与线上的熔丝全烧断,则这条与线的值恒为1。按图8.8的接法,I1、I2、I3、I4为4个输入量,O1、O2、O3、O4为4个输出量。标有“NC”符号的输入端,表示该输入端不接输入信号。按照上述分析,输入、输出的逻辑关系为O1=I1I2I3+I2I3I4+I2I3+I1I2O2=图8.8PAL14H4的应用实例接线图

8·4通用阵列逻辑GAL

8·4·1GAL的电路结构8·4·2输出逻辑宏单元(OLMC)8·4·3GAL的输入特性和输出特性8·4·1GAL的电路结构GAL芯片的特点(1)采用E2CMOS工艺,最大运行功耗45mA,最大维持功耗35mA,存取速度高达15~25ns。具有可重复擦除和编程的功能。(2)具有输出逻辑宏单元(OLMC),可灵活设计各种复杂逻辑。(3)GAL16V8可以模拟20引脚的PAL器件,可代替21种PAL产品;GAL20V8可以模拟24引脚的PAL器件,可代替21种PAL产品。

(4)具有高速编程、重新编程的功能。一个GAL芯片重新编程的次数大于100次。(5)具有加密单元,可防止复制;具有电子标签,可用作识别标志;可预置和加电复位全部寄存器,具有100%的功能可实验性。数据保存期可超过20年8.4.2输出逻辑宏单元(OLMC)

1.OLMC的结构

GAL器件输出端都是输出逻辑宏单元(OLMC)结构。无论是GAL16V8还是GAL20V8,它们内部都有8个OLMC。8个OLMC在相应的控制字的作用下,具有不同的电路结构这带来了GAL的灵活性和方便性。深刻理解OLMC的结构和原理是使用GAL器件设计数字系统的关键。下面我们简单讨论OLMC的结构。图8.9OLMC的结构

OLMC的结构示于图8.9。OLMC中的或门G1完成或操作;异或门G2完成极性选择,同时还有一个D触发器和4个多路选择器。OLMC在相应的控制下,具有不同的电路结构。因此,GAL器件提供了比目前的PAL器件更大的功能、更方便的应用。

2.OLMC的五种工作方式在结构控制字的作用下,GAL的输出逻辑宏单元可以有5种组态,即5种工作方式。只有深刻理解OLMC的5种工作方式,才能编制出正确的源程序。正确的源程序经过GAL编译程序(例如ABEL软件)编译后,才能生成正确的控制字和JEDEC文件,才能使GAL的各OLMC置成符合要求的电路结构,从而才能完成设计任务。下面以GAL16V8为例说明5种工作方式。(1)专用组合输入方式。

SYN、AC0、AC1(n)=101时,相应单元的OLMC的电路结构为专用组合输入方式。该方式中,OLMC是组合逻辑电路。1、11脚和2~9脚一样,可作为普通的数据输入使用,共10个;输出三态门禁止工作使I/O端不能作为输出,只能借用邻级的反馈开关作组合电路的反馈输入使用。由于GAL16V8的15、16脚(GAL20V8的18、19脚)因无反馈开关而不能作反馈输入使用,即不是101方式,它们只能作组合输出的100方式。(2)专用组合输出方式。

SYN、AC0、AC1(n)=100时,相应单元的OLMC的电路结构为专用组合输出方式。该方式中,OLMC是组合逻辑电路。1、11脚和2~9脚一样作为普通的数据输入使用;输出三态门控制信号接VCC,输出始终允许;相应的I/O只能作纯组合输出,不能作反馈输入使用,输出函数的或项最多8个。从以上101和100两种方式可看出,一个GAL芯片的8个OLMC(以GAL16V8为例,即12~19脚)可以都用作纯组合输出(皆为100方式),但8个OLMC不可以都用作纯组合输入(皆为101方式),起码必须有15、16脚是作100方式输出端,也就是说,101方式必须和100方式并存时GAL芯片才有意义。101和100方式用于无反馈的纯组合电路的设计。例8.1利用GAL器件设计一个8输入的与门和一个8输入的或非门。此电路要求16个输入端和2个输出端,所以用GAL16V8就可以完成设计。其逻辑表达式为

O1=A1·A2·A3·A4·A5·A6·A7·A8O2=

这是一个纯组合电路,安排引脚时可以按照101和100方式。GAL16V8的1,11和2~9脚为10个直接输入端,8个OLMC(12~19脚)中,15、16脚只能作输出,其余的6个设计为输入信号。(3)带反馈的组合型输出方式。

SYN、AC0、AC1(n)=111时,相应单元的OLMC的电路结构为反馈组合输出方式。该方式中,1、11脚和2~9脚一样作为普通的数据输入端使用,输出三态门控制信号是第一个与项,故输出函数的或项最多7个;13~18脚的I/O端既可输出,也可使用本单元的反馈开关作反馈输入使用;12、19脚因无反馈开关使用(分别被11脚、1脚占用)只能作输出而不能作反馈输入。(4)时序逻辑中的组合输出方式。

SYN、AC0、AC1(n)=011时,相应单元的OLMC为时序逻辑中的组合输出方式。此方式下,引脚1和11分别为CK和OE输入信号;12、19和13~18脚既可输出,也可作反馈输入使用,输出函数的或项最多7个。但8个OLMC(12~19脚)不允许全是组合电路,至少要有一个是时序型输出,即010方式。因此011方式用于既有组合电路又有时序电路的数字系统中。(5)时序型输出方式。

SYN、AC0、AC1(n)=010时,被组态的OLMC的电路结构为时序型输出方式。该方式中,引脚1和11分别为CK和OE输入信号,8个OLMC可以都是时序型输出的010方式,每个I/O端既可作输出也可利用本单元的反馈开关作反馈输入,输出函数的或项最多8个。010方式用于纯时序电路的设计。

8·6现场可编程门阵列FPGA8·6·1

FPGA的基本结构8·6·2

FPGA的其它情况8.6现场可编程门阵列FPGA8.6.1FPGA的基本结构

FPGA属于前面所述的第一类LCA结构,图8.10是该结构的平面示意图。下面对该结构作一简要介绍如图8.10所示,它由CLB构成二维阵列,块之间有纵向、横向两种布线通道,其连线的可编程资源由SRAM控制,芯片的四周是输入/输出模块,这些IOB也是由逻辑门和触发器等组成。例如XC3000系列,它有64个CLB,排列成8行×8列的矩阵,每个CLB都由一个组合逻辑电路、两个触发器和若干多路选择器组成。其中组合逻辑电路为32×1的查表存储器方式组成,它可实现五变量的任意函数,或者任意两组四变量的函数(总数不超过5个变量)。两个输出可以为组合的或者是寄存器型的。由于有时钟端口、两个触发器,它也可以方便地实现时序逻辑功能。

2.可编程输入/输出块IOB

每一个IOB可以根据需要,通过编程控制的存储器单元来定义3种不同的功能:输入、输出、双向。当IOB作为输入接口使用时,输入信号通过缓冲器后直接进入芯片内部,也可通过寄存器输入。当IOB作为输出口使用时,来自芯片内部的信号直接或经D触发器寄存后经输出缓冲器输出。输出缓冲器还可以定义为三态输出。每一个IOB的设置选择有:是否倒相,信号输出翻转速率,是否接高阻值的上拉电阻等。此外,每一个输入电路还具有钳位二极管来提供静电保护,以防止由输入产生电流死锁。

3.可编程内部连接线PIC

可编程内部连接线主要由金属线段组成,它分布于CLB阵列周围,通过由SRAM配置控制的可编程开关实现系统逻辑的布线。主要有三种类型的连线:内部连线、长线和直接连线。XC3000系列的长线含有复用总线和宽位“线与”功能。直接连线资源常被用来进行CLB-CLB之间、CLB-IOB之间的连接,具有布线短、延迟小的特点。长线用于传递传输距离长的或要求偏移率低的信号。

8.6.2

FPGA的其它情况FPGA开发过程如下:因为FPGA中SRAM的配置数据在芯片关机或掉电后数据将丢失,所以首先要将FPGA内部的逻辑硬件连结关系数据烧制在一片单独的EPROM中。在印刷电路板上,该EPROM与FPGA芯片以并行接口的方式实现连接,这样在加电或复位时,EPROM中的结构码内容就可以以并行方式首先打入FPGA芯片的RAM中,从而完成对FPGA芯片的构造,此后EPROM即可与FPGA芯片脱钩,FPGA可以开始独立工作。这种独特的工作方式也是XilinxFPGA的一大特色。设计开发XilinxFPGA必须要有XACT(Xilinx自动CAE工具:XilinxAutomaticCAETools)开发系统和相应的设计软件,例如OrCAD,Viewlogic设计软件等。下面以OrCAD和XACT开发系统为例介绍其设计开发的具体步骤。(1)应用SDT进行电路图编辑,用Annotate,ERC,Cleanup,Netist等进行必要的后处理,生成NET、PIN等描述元件和连结关系的网表文件。(2)应用VST对NET网表电路进行逻辑功能模拟.这时采用的是单位时延模拟,用以验证设计功能的正确性,如果需要修改,则返回步骤(1)。(3)应用PIN2XNF将网表文件转换为Xilinx格式网表XNF(XilinxNetistFormat,Xilinx网表格式)。(4)应用XNFMAP对网表进行逻辑划分,利用AP2LCA进行逻辑优化,产生初始的版图平面布局。(5)应用自动布局布线工具APR以及XACT交互编辑工具生成芯片内部的布局布线信息文件LCA(LogicCellArray,逻辑单元列阵)。(6)应用LCA2XNF,XNF2VST进行后处理,生成含有时延信息的网表文件NET。

(7)应用VST进行时序仿真和验证。如不合格,可返回步骤(1)去修改电路或者到步骤(5)去人工修改版图;如果满足设计要求,则直接到步骤(8)。(8)应用Makebits,Makeeprom和LCA网表文件进行位流编译生成构造码。通过EPROM写入器将构造码写入EPROM中。一个芯片烧制

温馨提示

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

评论

0/150

提交评论