电子技术基础—第7章可编程逻辑器件-课件

PPT
  • 阅读 75 次
  • 下载 0 次
  • 页数 96 页
  • 大小 1.262 MB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
电子技术基础—第7章可编程逻辑器件-课件
可在后台配置第一页与第二页中间广告代码
电子技术基础—第7章可编程逻辑器件-课件
可在后台配置第二页与第三页中间广告代码
电子技术基础—第7章可编程逻辑器件-课件
可在后台配置第三页与第四页中间广告代码
电子技术基础—第7章可编程逻辑器件-课件
电子技术基础—第7章可编程逻辑器件-课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 96
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】电子技术基础—第7章可编程逻辑器件-课件.ppt,共(96)页,1.262 MB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-45519.html

以下为本文档部分文字说明:

第七章可编程逻辑器件7.1概述7.2可编程逻辑器件基础PLD逻辑表示法逻辑阵列的PLD表示法应用举例7.3通用阵列逻辑GAL7.1概述PLD出现的背景电路集成度不断提高SSIMSILSIVLSI计算机技

术的发展使EDA技术得到广泛应用设计方法的发展自下而上自上而下用户需要设计自己需要的专用电路专用集成电路(ASIC-ApplicationSpecificIntegratedCircuits)开发周期长,投入大,风险大可编程器件PLD:开发周期短,

投入小,风险小7.1概述PLD器件的优点集成度高,可以替代多至几千块通用IC芯片极大减小电路的面积,降低功耗,提高可靠性具有完善先进的开发工具提供语言、图形等设计方法,十分灵活通过仿真工具来验证设计的正确性可以反复地擦除、编程,方便设计的修改和升级灵活地定义管脚功能,减轻设计工作

量,缩短系统开发时间,保密性好7.1概述PLD的发展趋势向高集成度、高速度方向进一步发展最高集成度已达到400万门向低电压和低功耗方向发展5V3.3V2.5V1.8V更低内嵌多种功能模块RAM,ROM,FIFO,DSP,CPU向

数、模混合可编程方向发展7.1概述大的PLD生产厂家www.altera.com最大的PLD供应商之一www.xilinx.comFPGA的发明者,最大的PLD供应商之一www.latticesemi.comISP技术的发明者www.actel.com提供军品及宇航级产品7.1概述可编程

专用集成电路ASIC(ApplicationSpecificIntegratedCircuit)是面向用户特定用途或特定功能的大规模、超大规模集成电路。分类:按功能分为数字的、模拟的、数字和模拟混和三种。按制造方式分为全

定制、半定制ASIC、可编程三种。PLD器件的分类--按集成度可编程逻辑器件(ProgrammableLogicDevice)为通用器件,分为低密度PROM,EPROM,EEPROM,PAL,PLA,GAL只能完成较小规模的逻辑电路高密度,已经有超过400万门的器件EP

LD,CPLD,FPGA可用于设计大规模的数字系统集成度高,甚至可以做到SOC(SystemOnaChip)PLD器件的分类--按结构特点基于与或阵列结构的器件--阵列型PROM,EEPROM,PAL,GAL,CPLDCPLD的代表芯片如:Altera的MAX系列

基于门阵列结构的器件--单元型现场可编程逻辑门阵列FPGA:是集成度和结构复杂度最高的可编程ASIC。运算器、乘法器、数字滤波器、二维卷积器等具有复杂算法的逻辑单元和信号处理单元的逻辑设计可选用FPGA实现。按制造技术和编程方式进行分类熔

丝或反熔丝编程器件--Actel的FPGA器件体积小,集成度高,速度高,易加密,抗干扰,耐高温只能一次编程,在设计初期阶段不灵活SRAM--大多数公司的FPGA器件可反复编程,实现系统功能的动态重构每次上电需重新

下载,实际应用时需外挂EEPROM用于保存程序EEPROM--大多数CPLD器件可反复编程不用每次上电重新下载,但相对速度慢,功耗较大可编程ASIC的编程方式可编程ASIC的编程方式有两种:采用专用编程器进行编程在系统编程甩掉了专用编程

器,而且也不用将芯片从电路系统取下,只利用计算机和一组下载电缆就可以在系统编程。Lattice和Xilinx等几家大公司现在都有在系统可编程ASIC产品。在系统编程方式方便了用户。可编程ASIC的一般开发步骤设计输入(entry)功能模拟(func

tionsimulation)逻辑分割(partitioning)布局和布线(placeandrouting)时间模拟(timingsimulation)写入下载数据(download)ASIC开发步骤流程图状态机输入逻辑图输入波形输入HDL输入设计输入功能模拟逻辑分割时间模拟编

程下载设计输入布局布线器件验证YNNY图7-1ASIC开发步骤流程图TOP—DOWN设计思想自顶向下(TOP—DOWN)设计首先是从系统级开始入手。把系统分成若干基本单元模块,然后再把作为基本单元的这些模块分成下一层的子模块。顶层模块模块A模块B模块C模块A1模块A2模块

B1模块B2模块C1模块C2模块C3图7-2top-down设计图TOP—DOWN设计思想采用TOP—DOWN层次结构化设计方法,设计者可在一个硬件系统的不同层次的模块下进行设计。总体设计师可以在上层

模块级别上对其下层模块设计者所做的设计进行行为级模拟验证。在TOP—DOWN的设计过程中,划分每一个层次模块时要对目标模块做优化,在实现模块时要进行模拟仿真。虽然TOP—DOWN的设计过程是理想的,但它的缺点是得到的最小可实现的物理单元不标准,成本可能较高。BOTTOM—UP设计思想BOTT

OM—UP层次结构化设计是TOP—DOWN设计的逆过程。它虽然也是从系统级开始的,即从图7-2中设计树的树根开始,但在层次模块划分时,首先考虑的是实现模块的基本物理单元是否存在,划分过程必须是从存在的基

本单元出发。BOTTOM—UP设计思想设计树最末枝上的单元要么是已经制造出的单元,要么是已经开发成功的单元,或者是可以买得到的单元。自底向上(BOTTOM—UP)的设计过程采用的全是标准单元,通常比较经济。但完全采用自

底向上的设计有时不能完全达到指定的设计目标要求。BOTTOM—UP设计思想用可编程ASIC实现一个好的电子系统设计通常采用TOP—DOWN和BOTTOM—UP两种方法的结合,充分考虑设计过程中多个指标的平衡。设计库及库元件在层次设计中所用的模块有两种:预先设计好的标准模块由用户设计的具有特

定应用功能的模块前者一般要存放在EDA开发系统中各种类型的文件库之中,后者必须经过模型仿真和调试证明无误后,建立一个图形符号存放在用户的设计库中准备在更上层的设计中使用。设计库及库元件设计库中比较高级的模块一般由两个模型构

成:模块的图形符号模块的功能模型图形符号在建立原理图时使用,功能模型在逻辑模拟仿真时使用。设计库及库元件模块的功能模型可以是逻辑图形式,也可以是VHDL描述的,还可以是真值表或逻辑方程式描述的。一个已知的图形符号可以用来代表一个或几个功能模型,这些模型的功能相同,参数可以不同。例如2输入与

非门7400、74LS00,74S00,功能相同,但是传输延时,功耗不相同。画层次原理图画层次原理图类似于用逻辑门符号画一个逻辑图,先将选用的模块符号和连结器符号放在画页上,然后用连线将它们连结起来,最后将选用的符号名放在相应的模

块及其结点上。选用符号名要注意遵循以下规则:一般把在一个层次原理图中所使用的模块的每一个拷贝叫做这个模块的例化。画层次原理图为了模拟仿真和建立设计文件,每个例化都要起一个名字。AdderModule:

FA4KeypadinputStorageregisterDisplaydriver4位全加器模块FA4起名为Adder。画层次原理图Adder的模块由4个一位全加器子模块FA1实现,这四个子模块分别起名为add0、add1、add

2、add3。AdderModule:FA4KeypadinputStorageregisterDisplaydirveradd0Moudle:FA1add1Moudle:FA1add2Moudle:FA1add3Moudle:FA1a0b0a1a2a3b1b2

b3s0s1s2s3GNDNC画层次原理图构成一位全加器的各个逻辑门及其信号线也要起一个名,它们的名字分别是X1、X2、A1、A2、A3、R1。A1X1X2R1A2A3abcinscoutx1画层次原理图为了调试或模拟

仿真,常常要研究模块中的一个指定信号。例如,假设要研究图7-3中1位全加器FA1的工作情况,需要观察完整系统模拟时的信号x1的值。因为有4个FA1的例化,例化名称要被合并成如下的信号名,顶层模块名/次层模块名:信号名。因此,要监视全加

器add2这个例化中信号线x1的时候,这个信号名应该写成Adder/add2:x1通过上述的书写规则,就可指定顶层模块中adder中的模块add2的信号x1,这个起名规则可以扩展到任何一个层次。层次联接器

符号和总线为了建立层次原理图,一个抽象级别的模块输入和输出引脚的名称要与次层模块原理图相应信号的名称保持唯一性或者一致性,如图7-4所示。A1X1X2R1A2A3abcinscoutx1Module:FA1abcinscout输入连接器输出连接器层次联接器符号和总线当

模块有多重输入和输出信号时,层次的相互连接器画成如图7-5所示的总线形式。A(3:0)={A(3)A(2)A(1)A(0)}B(3:0)={B(3)B(2)B(1)B(0)}S(3:0)={S(3)S(2)S(1)S(0)}FA4A(3:

0)B(3:0)S(3:0)A(0)A(1)A(2)A(3)B(0)B(1)B(2)B(3)S(0)S(1)S(2)S(3)A0A1A2A3B0B1B2B3S0S1S2S3(a)层次联接器符号和总线为了进一步简化模块原理图画法,有时常常在模块上定义多重引脚,如图7-5(b)所示

。PinA(3:0)PinS(3:0)PinB(3:0)A(3:0)B(3:0)S(3:0)FA4(b)每个多重引脚代表一组相关信号的集合,允许把总线直接联接到模块的引脚上,但是必须清楚每条总线代表的是4个信号的联接。层次化设计的模拟采用层次设

计实现的系统必须进行设计模拟和验证。一个层次设计中最底层的元件或模块必须首先进行模拟仿真,当其工作正确之后,再进行高一抽象级别模块的模拟仿真。最后还要对最上层系统进行模拟仿真,最终完成系统设计。层次化设计的模拟在模拟仿真时,首先

要将模块用相应的电路来代替,称为展平,展平工作一直做到最底层模块都用基本的逻辑门实现为止。在展平过程中所有元件及所有的信号线都必须有指定过的名称。模拟仿真结果可以是给出正确的波形,也可以是给出一些时延参数。图6给出的是用总线表示的波形。层次化设计的模拟图6给出的是用总线表示的波形。01111

011101100000000S(3:0)01100110011001100000A(3:0)00010001010101010000B(3:0)1210750TimeA(3:0)B(3:0)S(3:0)000000000000011001100101000110

110111051015Time表格形式的模拟值波形表示的模拟值7.2可编程逻辑器件基础⒈PLD的逻辑表示⑴PLD中阵列及其阵列交叉点的逻辑表示⑵PLD中基本逻辑单元的PLD表示⒉逻辑阵列的PLD表示法应用举例⒈PLD的

逻辑表示⑴PLD中阵列及其阵列交叉点的逻辑表示①PLD中阵列交叉点的逻辑表示②PLD中与阵列和或阵列的逻辑表示①PLD中阵列交叉点的逻辑表示PLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。(a)(b)(c)

(a)表示实体连结,就是行线和列线在这个交叉点处实在连接,这个交叉点是不可编程点,在交叉点处打上实心点。①PLD中阵列交叉点的逻辑表示PLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。(a)(b)(c)(b)表示可编程连接。无论×或表示该符号所在行线和

列线交叉处是可编程点,具有一个可编程单元。①PLD中阵列交叉点的逻辑表示PLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。(a)(b)(c)在采用熔丝工艺的PLD器件中,器件出厂后用户编程之前,所有可编程点处的熔丝都处

于接通状态,习惯上都用×表示熔丝接通,因此可编程点上处处都打×或。①PLD中阵列交叉点的逻辑表示PLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。(a)(b)(c)PLD器件被用户编程后,可编程点上的熔丝有的烧断,有的接通。编程后可在编程

点上仍打有×,这时的×表示可编程点被编程后熔丝接通。①PLD中阵列交叉点的逻辑表示PLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。(a)(b)(c)熔丝烧断的可编程点上的×消失,行线和列线不相接,这种情况用图(c)表示。②PLD中与阵列和或阵列的逻辑表

示与阵列如图(a)所示。熔丝+VCCRF(A,B,C)(a)AABBCC在二极管与门的各支路与输出之间接入熔丝。熔丝保留的各支路的输入为有效输入,输出F是熔丝保留各支路输入的与逻辑函数。图(b)是PLD表示。A(b)F(A,B,C)=0CCABB图

(a)和图(b)是熔丝全部保留的与阵列表示情况。F(A,B,C)=0。②PLD中与阵列和或阵列的逻辑表示图(c)是烧断3个熔丝的情况,图(d)是图(c)的PLD表示。熔丝+VCCR(c)AABBCCF(A,B,C)=ABCAABBCC(d)F(A,B,C)=A

BC②PLD中与阵列和或阵列的逻辑表示可编程或阵列,其构成原理与可编程的与阵列相同。p1Rp2p3f(p1,p2,p3)=p1+p2+p3(a)f(p1,p2,p3)=p1+p2+p3(b)p1p2p3②PLD中与阵列和

或阵列的逻辑表示图(c)是烧断1个熔丝的情况,图(d)是图(c)的PLD表示。p1Rp2p3f(p1,p2,p3)=p1+p3(c)f(p1,p2,p3)=p1+p3(d)p1p2p3⒈PLD的逻辑表示⑵PLD中基本逻辑单元的PLD表示①输入缓冲器和反馈缓冲

器②输出极性可编程的异或门③地址选择可编程的数据选择器④可编程数据分配器的逻辑表示⑤激励方式可编程的时序记忆单元的PLD表示⑥PLD中与阵列的缺省表示⑦双向输入/输出和反馈输入的逻辑表示①输入缓冲器和反馈缓冲器在PLD中有二种特殊的缓冲器,它们是输入缓冲

器和反馈缓冲器,这二种缓冲器有相同的电路构成,图7-10给出它们的PLD表示,它们是单输入、双输出的缓冲器单元,一个是高有效输出端,即同极性输出端。另一个是低有效输出端,即反极性输出端。AAA①输入缓冲器和反馈缓冲器与曾经学过的输出

三态缓冲器不同,注意二者之间的区别。输入缓冲器和反馈缓冲器输出只有0、1两个逻辑状态。而输出三态缓冲器除了有0、1两个逻辑状态外,还有一个称为高阻(Z)的状态。AAA②输出极性可编程的异或门在PLD中为了实现输出极性可编程,常采用图(a)所示的异或门结构。P

PQ10当熔丝烧断,异或门输出极性为低有效,即否则异或门输出高有效Q0=P⊕0=P。Q0PRVDD熔丝Q0P(a)②输出极性可编程的异或门图(b)是编程后熔丝保留,输出极性编程为高有效。图(c)是编程熔丝烧断,输出极性编程为低有效。PQ0=P+1=P(c)Q0=P+0=PP(b

)③地址选择可编程的数据选择器地址选择可编程的数据选择器如图7-12所示。MUXMUX(b)(a)MUXMUX图7-12地址选择可编程数据选择器PLD表示地址选择端编程后,若列线与行线相接且接地,其输入为逻辑0。否则,列线与行线断开其输入为逻辑1。二选一数据选择器四选一数据选择器根据编程情况,地

址选择端的输入有00,01,10,11四种情况。④可编程数据分配器的逻辑表示可编程逻辑分配器如图7-13所示。乘积项簇到n-1到n-2来自n-1到n+1来自n+1来自n+2去n号宏单元RR熔丝1熔丝2VDDVDDS1S0图7-13可编程逻辑分配器图中的核心部分是可编程逻辑分配器

可编程熔丝S1S0的不同编程值,使乘积项簇分别被分配到n+1号、n号、n-1号、n-2号宏单元。FUSE1正常时(默认状态)不熔断,乘积项簇的信号传不到n号宏单元。若编程后FUSE1熔断,乘积项簇信号可以传到n号宏单元。如果FUSE2熔断,异或门反极性传输,否则异或门原极性传

输,n号宏单元接收信号与乘积项簇信号同相。⑤激励方式可编程的时序记忆单元的PLD表示时序记忆单元有二种,即锁存器和触发器。输出的状态只受输入激励信号控制的时序记忆单元是锁存器。只有在时钟信号控制下才能得到受输入激励信号决定的相应输出状态的时序记忆单元是触发器。二种时序记忆单元的根本区别

是输出状态的变化是否取决于时钟信号的控制。⑤激励方式可编程的时序记忆单元的PLD表示图7-14是激励方式可编程的时序记忆单元的PLD表示。DQCLKR/LReset通过编程,使R/L端为0,Q端的输出状态只与激励信号有关并受D决定,图所示电路为D锁存器。通过编程

,若使R/L端为1,电路只有在时钟脉冲信号CLK的驱动下,Q端的状态变化受D端的激励信号决定,该电路具有D触发器功能。⑥PLD中与阵列的缺省表示在PLD器件与阵列中常看到图7-15中给出的几种表示。输出为Z1的与门4个

输入变量全部被编程后输入,4个交叉点均画×。因此,01BBAAZZ1=0Z3=1ABZ2=0图7-15PLD中与阵列的默认表示⑥PLD中与阵列的缺省表示02BBAAZ同理:Z2为Z1的

缺省表示。这时的阵列交叉点上均未画×,而在与门符号内却画有×,。Z1=0Z3=1ABZ2=0图7-15PLD中与阵列的默认表示⑥PLD中与阵列的缺省表示输出为Z3的与门输入阵列交叉点上无×,与门符号内也无×,

这是浮动状态的逻辑表示。浮动输入状态代表与阵列编程后熔丝全部熔断,4个输入全都不同与门相接,相当与门输入悬空,与门输出为高电平,即输出逻辑“1”Z1=0Z3=1ABZ2=0图7-15PLD中与阵列的默认表示⑦双向输入/输出和反馈输入的逻

辑表示双向输入/输出和反馈输入结构是PLD结构的特点之一,乘积项Pn+1为三态输出缓冲器的使能端控制信号。„„P1Pn„Pn+11nn+1IOmSm(a)I1In1SmSmSmIOm(output)(b)Feedback=Sm⑦双向输入/输出和反馈输入的逻辑表示由

于各阵列交叉点全打有×,所以n+1号与门输出为逻辑“0”,三态输出缓冲器禁止,其输出为高阻。„„P1Pn„Pn+11nn+1IOmSm(a)I1In××××××SmIOm(input)(b)0高阻×加到与阵列上⒉逻辑阵列的PLD表示法应用举例二位串行进位加法器的原

理框图如图7-18(a)所示。C1(7)FAFAA1B1(3)(4)A0B0(1)(2)C-1(5)S1C0S0(9)(6)(8)(a)输入输入输入1iii1iii1iii1iiiiCBACBACBACBAS输入输出1ii1iiiiiCB

CABAC其阵列表示如图7-18(b)所示。⒉逻辑阵列的PLD表示法应用举例1iii1iii1iii1iiiiCBACBACBACBAS1ii1iiiiiCBCABACA0(1)B0(2)A1(3)B

1(4)C-1C0C1S0S112345678910111213141516(5)(6)(7)(8)(9)(b)12345678910111213141516×7.3通用阵列逻辑GAL⒈GAL(Generic

ArrayLogic)的结构及其工作原理GAL的基本阵列结构GAL的工作模式和逻辑组态GAL16V8的编程GAL22V10介绍⒉VHDL语言介绍⒊GAL应用举例7.3通用阵列逻辑GAL⒈GAL的结构及其工作原理⑴GAL

的基本阵列结构通用型GAL16V8的电路结构GAL16V8的结构控制字GAL16V8的OLMC⑵GAL的工作模式和逻辑组态⑶GAL16V8的编程⑴GAL的基本阵列结构图7-19给出GAL的基本结构框图。可编程与阵列可编程宏单元固定或阵

列I2I1I0O2O1O0图7-19GAL的基本阵列结构框图I/CLKGND1234567891011121314151617181920VccI/OEOC/OR/II(b)(a)1918171615141312111003278315164

232453132640397474885655963CKOLMC(19)OLMC(18)OLMC(17)OLMC(16)OLMC(15)OLMC(14)OLMC(13)OLMC(12)mmmmmmmmOE4

781112151619202324272831312827242320191615034781112图7-20GAL16V8的逻辑图逻辑宏单元输入/输出口输入口时钟信号输入使能控制可编程与阵列固定或阵列2,3,4,5,6,7,8,9是专用输入引脚1,11,12,13,14

,17,18,19各引脚可通过编程组态设为输入引脚12,13,14,17,18,19各引脚可通过编程组态设为输出引脚,15,16专用输出引脚GAL16V8的结构控制字GAL和PAL不同之处是GAL的输出

电路增加了输出逻辑宏单元OLMC(OutputLogicMacroCell)。GAL的输出电路可编程。GAL的结构控制字有5种,82位:SYN:同步控制字1位,对8个宏单元是公共的;AC0:结构控制字1位,对8个宏单元是公共的;AC1(n):结构控制字8位,每个宏

单元一个;XOR(n):极性控制字8位,每个宏单元一个;PTD:乘积项禁止控制字64位,每个与门一个。GAL16V8的OLMC的内部电路构成OLMC的内部电路构成如图7-21所示。01PTMUX11100100TSMUXDQQFMUX10-11-0-10-010OMUX来自”与”阵列反

馈CKCKG1G2VCCAC0AC1(n)OR8XOR(n)AC0AC1(m)AC1(n)OEOE来自邻级输出(m)I/O’(n)乘积项多路开关输出多路开关三态多路开关反馈多路开关来自1号引脚导通高阻OE=1,导通OE=0,高阻用户编程决定输出三态缓冲器状态V

CC地电平OE第一与项00011011TSMUX输入信号AC0AC1(n)表7-1AC0AC1(n)对TSMUX控制表Q端信号本级输出端邻级输出地电平反馈缓冲器输入端信号来源寄存器Q端本级输出邻级输出地电平10—11—0—10—0FMUX输入

信号AC0AC1(n)AC1(m)表7-2AC0AC1对FMUX控制表AC0和AC1(n)对TSMUX的全部控制作用见表7-1。导通高阻OE=1,导通OE=0,高阻用户编程决定输出三态缓冲器状态VCC地电平OE第一与项00011011TS

MUX输入信号AC0AC1(n)表7-1AC0AC1(n)对TSMUX控制表FMUX的全部控制功能如表7-2所示。Q端信号本级输出端邻级输出地电平反馈缓冲器输入端信号来源寄存器Q端本级输出邻级输出地电平10—11—0—10—0FMUX输

入信号AC0AC1(n)AC1(m)表7-2AC0AC1对FMUX控制表⑵GAL的工作模式和逻辑组态GAL16V8、GAL20V8系列器件的OLMC有寄存器模式、复杂模式、简单模式三种工作模式。用户通过输出引脚定义方程确

定OLMC的工作模式。输出引脚定义方程有A型、B型、C型三种。它们与工作模式的关系如表7-3所示。表7-3OLMC的工作模式同引脚定义方程的关系输出引脚方程类型输出引脚定义方程式工作模式A型B型C型引脚名:=逻辑方程式引脚名=逻辑方程式引脚名.OE=逻辑方

程式引脚名=<逻辑方程式>SYN=0,AC0=1寄存器模式SYN=1,AC0=1复杂模式SYN=1,AC0=0简单模式⑵GAL的工作模式和逻辑组态输出逻辑宏单元三种模式又分为七种逻辑组态,其隶属关系如表7-4所示。⑵GAL的工作模式和逻辑组态表7-4三种模式和七种

组态的关系工作模式逻辑组态寄存器模式复杂模式简单模式⑴寄存器输出组态⑵组合输出组态⑶有反馈组合输出⑷无反馈组合输出⑸无反馈组合输出组态⑹本级输出邻级输入组态⑺相邻输入组态CKOEXORDQQ-(a)(a)寄存器模式寄存器输出组态:寄存器输出010功能AC1

(n)AC0SYN低有效高有效01输出极性XOR•1脚作为寄存器输出级的公共时钟CK端;11脚作为寄存器输出级的公共使能OE端。XOR(b)(b)寄存器模式组合输出组态:在一个带寄存器GAL中的组合输出110功能AC1(n)AC0SYN

低有效高有效01输出极性XOR•1和11号总是分别作为时钟CK端和使能端OE。•引脚1和11为输入,所有输出为组合逻辑输出。•13~18号宏单元可构成这种组态XOR(c)(c)复杂模式有反馈组合输出组态:低有效高有效01输出极性XOR所有输出为组合逻辑111功能AC1(n)AC0SYN

•12,19号宏单元可构成这种组态XOR(d)(d)复杂模式无反馈组合输出组态:低有效高有效01输出极性XOR所有输出为组合逻辑101功能AC1(n)失效AC0=SYNSYNAC1(m)=SYN1•15,16

号宏单元可构成这种组态XOR(e)VCC(e)简单模式无反馈组合输出组态:所有输出为组合逻辑001功能AC1(n)AC0SYN低有效高有效01输出极性XOR•15和16号宏单元也能构成这种组态XOR(f)Vccm(f)简单模式本级组合输出邻级

输入组态:所有输出为组合逻辑001功能AC1(n)AC0SYN低有效高有效01输出极性XOR•输出缓冲器失效•除15和16号宏单元外都可构成这种组态(g)GND(g)简单模式邻级输入组态:所有输出为组合逻辑101功能AC1(n)AC0SYN无效无效01输出极性XOR⑶is

pGAL22V10In-SystemProgrammableE2CMOSPLDGenericArrayLogic⑶ispGAL22V1022V10没有结构体控制位,能实现16V8和20V8所能实现的全部功能;22V10具有更多的乘积项,增加了2个通用的输入端,其输出使能控制比20V8更好

。22V10的每个输出宏单元可配置成有(或没有)寄存器。22V10的宏单元和16V8的不同。用单个乘积项控制输出缓冲器(寄存器和组合配置)。每个输出至少有8个乘积项是可用的,内部引脚有更多的乘积项可用。引脚1输入的时钟信号作为

组合输入,对于任何乘积项都是可用的。⑶ispGAL22V10单个乘积项可用来产生一个全局性的异步复位信号,使所有内部触发器都复位为0。单个乘积项可用来产生一个全局性的同步预置信号,使所有内部触发器在时钟的上升沿到来时置位为

1。可以通过编程改变输出极性。在寄存器配置下,极性的改变发生在D触发器的输出端,而不是在输入端。⑶GAL的开发流程(开发步骤)①建立用户源文件用户源文件就是设计者书写的描述所要实现逻辑电路功能的软件程序的集合。

其软件程序必须符合某一可编程逻辑设计语言的语法规范。现在广泛使用的有ABEL-HDL,VHDL,Verilog-VHDL等硬件描述语言。②编译用户源文件要想使建立起来的用户源文件变成要下载的数据文件(JEDEC),必须经过若干步的语言处理程序。如语法检查、逻

辑化简、功能模拟、时间模拟等。经过专用软件处理后,证明用户建立的源文件正确无误,最后将其转换成要下载的编程数据文件(JEDEC)。把上述的一系列处理过程称为编译。③器件编程在专用的软件系统环境下,启动编程器,使计算机和编程器进行通信。将JEDEC数据文件下载到编程器上。

选择目标器件的制造厂家、型号进行器件匹配。将GAL器件插入插座并锁紧。这一步必须注意芯片引脚序号与插座引脚号要对应。否则器件可能被毁坏。下载编程。即将下载到编程器上的JEDEC数据文件写入到GAL芯片中。⑶GAL的开发流程(开发步骤)④实际功能验

证将芯片从编程器取下,放到实验电路中或实际工作的系统中进行实际功能验证,如果功能正确,说明开发工作结束。如果功能验证不正确,则还要返回到第一步重新修改设计。⑶GAL的开发流程(开发步骤)用GAL实现基本逻辑门的设计201918161715141312111245678910GN

D用GAL16V8代替bcdemnpqhVCCauvwxyji3z用GAL实现基本逻辑门的设计LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC

_UNSIGNED.ALL;entityexample1isport(a,b,c,d,e,m,n,p,q,h,i,j:instd_logic;u,v,w,x0,y0,z0:outstd_logic);用GAL实现基本逻辑门的设计attributeLOC:string;attrib

uteLOCofa:signalis"p19";attributeLOCofb:signalis"p1";attributeLOCofc:signalis"p2";attributeLOCofd:signalis"p3";attributeLOCof

e:signalis"p4";attributeLOCofm:signalis"p5";attributeLOCofn:signalis"p6";attributeLOCofp:signalis"p7";attributeLOCof

q:signalis"p8";attributeLOCofh:signalis"p9";attributeLOCofu:signalis"p18";attributeLOCofv:signalis"p17";attributeLOCofw:signalis"p16"

;attributeLOCofx0:signalis"p15";attributeLOCofy0:signalis"p14";attributeLOCofz0:signalis"p13";end;用GAL实现基本逻辑门的设计architecturearch_Gate

ofexample1isbeginu<=nota;v<=bandc;w<=dore;x0<=not(morn);y0<=not(pxorq);z0<=not(handiandj);endarch_Gate;用GAL实现组合-时序混合逻辑电路20Vcc1CLK19181716

1514131211NCX1QDQAQBYNCOENCQD4进位的记数器2345678910ASBDNCIEGNDNC图7-31用GAL构成逻辑电路实例QB(d)四进制计数器的等效电路QAFDDQCQFDD

QCQQBQA11QBQAOEAS*B*SAS+BS1X10(a)X1输出的等效阵列图ASBASBAS+BSAS+BS1(b)Y输出的等效阵列图(c)D触发器的等IIEEIIY1DDCLKD1输出的等效阵列图(c)

D触发器的等效电路图IIY1DDFDCLKOEDQC1用GAL实现组合-时序混合逻辑电路libraryieee;useieee.std_logic_1164.all;useieee.std_logic

_arith.all;uesieee.std_logic_unsigned.all;entitytest2isport(clk,a,s,b,d,i,e,oe:instd_logic;x1,qd,qa,qb,y:outstd_l

ogic);用GAL实现组合-时序混合逻辑电路attributeLOC:string;attributeLOCofclk:signalis"p1";attributeLOCofa:signalis"p2";attributeLOC

ofs:signalis"p3";attributeLOCofb:signalis"p4";attributeLOCofd:signalis"p5";attributeLOCofi:signalis"p8";attributeLOCofe:signalis"p9";attribut

eLOCofoe:signalis"p11";attributeLOCofx1:signalis"p18";attributeLOCofqd:signalis"p16";attributeLOCofqa:signalis"p15

";attributeLOCofqb:signalis"p14";attributeLOCofy:signalis"p13";end;用GAL实现组合-时序混合逻辑电路architectureexam2_archi

tectureoftest2issignalq:std_logic_vector(1downto0);signalqt:std_logic;beginx1<=(aands)or(notsandb);用GAL实现组合-时序混合逻辑电路process(clk)beginif(clk

='1'andclk'event)thenq<=q+1;--计数器加1,q为数组qt<=d;--D触发器endif;endprocess;用GAL实现组合-时序混合逻辑电路process(oe)beginifoe='0'thenqa<=

q(0);qb<=q(1);qd<=qt;elseqa<='Z';qb<='Z';qd<='Z';endif;endprocess;用GAL实现组合-时序混合逻辑电路process(i,e)beginife='1'theny<=noti;elsey<

='Z';endif;endprocess;endexam2_architecture;

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?