第7章可编程逻辑器件和现场-数字逻辑-课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第7章可编程逻辑器件和现场-数字逻辑-课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 逻辑 器件 现场 数字 课件
- 资源描述:
-
1、第七章 可编程逻辑器件n7.1概述n7.2可编程逻辑器件基础nPLD逻辑表示法n逻辑阵列的PLD表示法应用举例n通用阵列逻辑GAL 7.1概述n可编程专用集成电路ASIC(Application Specific Integrated Circuit)是面向用户特定用途或特定功能的大规模、超大规模集成电路。n分类:按功能分为数字的、模拟的、数字和模拟混和三种。按制造方式分为全定制、半定制ASIC、可编程三种。根据芯片的集成度和结构复杂度分类n简单可编程逻辑器件SPLD:集成度小于PALCE22V10或 GAL22V10的PLD。n特点是都具有可编程的与阵列、不可编程的或阵列、输出逻辑宏单元OL
2、MC和输入输出逻辑单元IOC。n复 杂 可 编 程 逻 辑 器 件 C P L D:集 成 度 大 于PAL22V10或GAL22V10的PLD都可视为CPLD。nCPLD在集成度和结构上呈现的特点是具有更大的与阵列和或阵列,增加了大量的宏单元和布线资源,触发器的数量明显增加。高速的译码器、多位计数器、寄存器、时序状态机、网络适配器、总线控制器等较大规模的逻辑设计可选用CPLD来实现。因此,具有复杂算法的数字滤波器等数字信号处理单元的逻辑设计也可选用这些具有更高集成度CPLD来实现。根据芯片的集成度和结构复杂度分类n现场可编程逻辑门阵列 FPGA:现场可编程门阵列FPGA是集成度和结构复杂度最
3、高的可编程ASIC。n运算器、乘法器、数字滤波器、二维卷积器等具有复杂算法的逻辑单元和信号处理单元的逻辑设计可选用FPGA实现。可编程ASIC的编程方式n可编程ASIC的编程方式有两种,一种是采用专用编程器进行编程,一种是在系统编程。n后者甩掉了专用编程器,而且也不用将芯片从电路系统取下,只利用计算机和一组下载电缆就可以在系统编程。nLattice和Xilinx等几家大公司现在都有在系统可编程ASIC产品。在系统编程方式方便了用户。可编程ASIC的一般开发步骤n设计输入(entry)n功能模拟(function simulation)n逻辑分割(partitioning)n布局和布线(plac
4、e and routing)n时间模拟(timing simulation)n写入下载数据(download)ASIC开发步骤流程图PLD的逻辑表示 nPLD中阵列及其阵列交叉点的逻辑表示n1.PLD中阵列交叉点的逻辑表示n2.PLD中与阵列和或阵列的逻辑表示nPLD中基本逻辑单元的PLD表示n1.输入缓冲器和反馈缓冲器n2.输出极性可编程的异或门n3.地址选择可编程的数据选择器n4.可编程数据分配器的逻辑表示1.PLD中阵列交叉点的逻辑表示nPLD逻辑阵列中交叉点的连接方式采用图7-7所示的几种逻辑表示。图图7-7(a)表示实体连结,就是行线和列线在这个交叉点处实在连接,这个交叉点是不可编程
5、点不可编程点,在交叉点处打上黑实点。不可编程点(b)表示可编程连接。无论或 表示该符号所在行线和列线交叉处是个可编程点可编程点,具有一个可编程单元。在采用熔丝工艺的PLD器件中,器件出厂后用户编程之前,所有可编程点处的熔丝都处于接通状态,习惯上都用表示熔丝接通,因此可编程点上处处都打或 。可编程点PLD器件被用户编程后,可编程点上的熔丝有的烧断,有的接通。编 程后可在编程点上仍打有,这时的表示可编程点被编程后熔丝接通。熔丝烧断的可编程点上的消失,行线和列线不相接,这种情况用图(c)表示。熔丝烧断点PLD中与阵列和或阵列的逻辑表示n与阵列如图(a)所示。n在二极管与门的各支路与输出之间接入熔丝。
6、熔丝保留的各支路的输入为有效输入,输出F是熔丝保留各支路输入的与逻辑函数的。PLD中与阵列和或阵列的逻辑表示n图(b)是PLD表示。图(a)和图(b)是熔丝全部保留的与阵列表示情况。F(A,B,C)=0。PLD中与阵列和或阵列的逻辑表示n图(c)是烧断3个熔丝的情况,图(d)是图(c)的PLD表示。n可编程或阵列,其构成原理与可编程的与阵列相同。可编程或阵列n可编程或阵列,其构成原理与可编程的与阵列相同。1.输入缓冲器和反馈缓冲器n在PLD中有二种特殊的缓冲器,它们是输入缓冲器和反馈缓冲器,这二种缓冲器有相同的电路构成,图7-10给出它们的PLD表示,它们是单输入、双输出的缓冲器单元,一个是高
7、有效输出端,即同极性输出端。另一个是低有效输出端,即反极性输出端。n与曾经学过的输出三态缓冲器不同,虽然输出三态缓冲器也有三个端,但只有一个输入和一个输出端,另一个是使能控制端。图7-101.输入缓冲器和反馈缓冲器n原则上说,输出三态缓冲器有二个输入端一个输出端。注意二者之间的区别。n输入缓冲器和反馈缓冲器输出只有0、1两个逻辑状态。而输出三态缓冲器除了有0、1两个逻辑状态外,还有一个称为高阻(Z)的状态。图7-102.输出极性可编程的异或门n在PLD中为了实现输出极性可编程,常采用图(a)所示的异或门结构。PPQ10n当熔丝烧断,异或门输出极性为低有效,即 n否则异或门输出高有效Q0=P 0
8、=P。2.输出极性可编程的异或门n图(b)是编程后熔丝保留,输出极性编程为高有效。图(c)是编程熔丝烧断,输出极性编程为低有效。3.地址选择可编程的数据选择器n地址选择可编程的数据选择器如图7-12所示。n地址选择端编程后,若列线与行线相接且接地,其输入为逻辑0。否则,列线与行线断开其输入为逻辑1。n根据编程情况,地址选择端的输入有00,01,10,11四种情况。4.可编程数据分配器的逻辑表示n如图7-13所示。在图7-13中核心部分是可编程逻辑分配器根据可编程熔丝S1S0的不同编程情况,乘积项簇分别被分配到n+1号、n号、n-1号、n-2号宏单元。nFUSE1正常时(默认状态)不熔断,乘积项
9、簇的信号传不到n号宏单元。n若编程后FUSE1熔断,乘积项簇信号可以传到n号宏单元。n如果FUSE2熔断,异或门反极性传输,否则异或门原极性传输,n号宏单元接收信号与乘积项簇信号同相。FUSE2为又一个可编程点。5.激励方式可编程的时序记忆单元的PLD表示n时序记忆单元有二种,即锁存器和触发器。n输出的状态只受输入激励信号控制的时序记忆单元是锁存器。n只有在时钟信号控制下才能得到受输入激励信号决定的相应输出状态的时序记忆单元是触发器。n二种时序记忆单元的根本区别是输出状态的变化是否取决于时钟信号的控制。5.激励方式可编程的时序记忆单元的PLD表示n由图7-14看出,通过编程,若线与行线断开,其
10、输入为逻辑1。根据编程情况,地址选择端的输入有00,01,10,11四种情况。5.激励方式可编程的时序记忆单元的PLD表示n使R/L端为0,Q端的输出状态只与激励信号有关并受D决定,图7-14所示电路为D锁存器。n通过编程,若使R/L端为1,图7-14所示电路只有在时钟脉冲信号CLK的驱动下,Q端的状态变化受D端的激励信号决定,该电路具有D触发器功能。6.PLD中与阵列的缺省表示n在PLD器件与阵列中常看到图7-15中给出的几种表示。输出为Z1的与门4个输入变量全部被编程后输入,4个交叉点均画。因此,01BBAAZ6.PLD中与阵列的缺省表示02BBAAZ同理:Z2为Z1的缺省表示。这时的阵列
11、交叉点上均未画,而在与门符号内却画有,。6.PLD中与阵列的缺省表示n输出为Z3的与门输入阵列交叉点上无,与门符号内也无,这是浮动状态的逻辑表示。浮动输入状态代表与阵列编程后熔丝全部熔断,4个输入全都不同与门相接,相当与门输入悬空,与门输出为高电平,即输出逻辑“1”7.双向输入/输出和反馈输入的逻辑表示n双向输入/输出和反馈输入结构是PLD结构的特点之一,乘积项Pn+1为三态输出缓冲器的使能端控制信号。n由于各阵列交叉点无一个,呈悬浮状态,n+1号与门输出为逻辑“1”。或阵列输出的Sm信号加在IOm引脚上,作为输出信号。同时,Sm信号又通过反馈缓冲器被反馈到与阵列。n这个输出带反馈的组态方式采
12、用图7-16(b)所示的PLD表示。Feedback=SmFeedbackn在图7-17(a)中,乘积项Pn+1作为三态输出缓冲器的使能端控制信号。n由于各阵列交叉点全打有,所以n+1号与门输出为逻辑“0”,三态输出缓冲器禁止,其输出为高阻。n这时,或阵列输出信号Sm与IOm引脚断开,加在IOm引脚上的输入信号则可通过反馈缓冲器加到与阵列上。n这种输出三态缓冲器高阻且加在输出引脚上的信号借助反馈缓冲器成为输入信号的组态方式用图7-17(b)表示。Feedback=SmFeedback通用阵列逻辑GAL nGAL的结构及其工作原理nGAL的基本阵列结构n通用型GALl6V8的电路结构nGAL16
13、V8的结构控制字nGAL16V8的OLMCnGAL的工作模式和逻辑组态nGAL16V8的行地址图nGAL16V8的编程GAL的基本阵列结构n图7-19给出GAL的基本结构框图。n由图7-19看出GAL是由可编程的与阵列、固定不可编程)的或阵列、可编程的输出逻辑宏单元OLMC)三部分主要电路构成。逻辑宏单元输入/输出口输入口时钟信号输入三态控制可编程与阵列固定或阵列2.GAL的开发流程(开发步骤)n(1)建立用户源文件n用户源文件就是设计者书写的描述所要实现逻辑电路功能的软件程序的集合。其软件程序必须符合某一可编程逻辑设计语言的语法规范。现在广泛使用的有ABEL-HDL,VHDL,Verilog
14、-VHDL等硬件描述语言。n(2)编译用户源文件n要想使建立起来的用户源文件变成要下载的数据文件(JEDEC),必须经过若干步的语言处理程序。如语法检查、逻辑化简、功能模拟、时间模拟等。经过专用软件处理后,证明用户建立的源文件正确无误,最后将其转换成要下载的编程数据文件(JEDEC。把上述的一系列处理过程称为编译。3.器件编程n在专用的软件系统环境下,启动编程器,使计算机和编程器进行通信。将JEDEC数据文件下载到编程器上。n选择目标器件的制造厂家、型号进行器件匹配。n将GAL器件插入插座并锁紧。这一步必须注意芯片引脚序号与插座引脚号要对应。否则器件可能被毁坏。n下载编程。即将下载到编程器上的
15、JEDEC数据文件写入到GAL芯片中。4.实际功能验证n将芯片从编程器取下,放到实验电路中或实际工作的系统中进行实际功能验证,如果功能正确,说明开发工作结束。如果功能验证不正确,则还要返回到第一步重新修改设计。ABEL硬件描述语言规则概要 n一、标识符与关键字n标识符n标识符用来标识器件、器件管脚或节点、集合、输入/输出信号、常量、宏及变量。n所有这些标识符都遵从同样的命名规则,具体规则如下:n标识符最多31个字符长,必须以字母或下划线打头。n除第一个字符外,标识符可由大小写字母、数字、波浪线()和下划线(_)组成。ABEL硬件描述语言规则概要 n标识符中不能使用空格,单词间分隔需用下划线。n
16、标识符中不能使用句点,除非是一个合法的点后缀名。n标识符的命名不能与系统软件的关键字相同。n标识符可以用大写、小写或混合字体输入,但其意义与字体有关。n例如,以全部小写字母输入的标识符output与开头字母大写的Output就为不同的标号。ABEL硬件描述语言规则概要 n为了更具体地说明信号的性质,在标识符后面可以加点后缀。nABEL-HDL的合法点后缀n.FC 触发器模式控制n.CLK 边沿触发器的时钟输入n.CE 时钟门控触发器的时钟使能输入n.LE 锁存器的锁存使能输入(低电平有效)n.LH 锁存器的锁存使能输入(高电平有效)n.LD 寄存器加载输入ABEL硬件描述语言规则概要 n.PR
17、 寄存器预置(同步或异步)n.RE 寄存器复位(同步或异步)n.SET 与器件无关的同步预置(等效于.SP加属性buffer)n.CLR 与器件无关的同步复位(等效于.SR加属性buffer)n.SP 同步寄存器预置n.SR 同步寄存器复位n.ASET 与器件无关的异步预置(等效于.AP加属性buffer)ABEL硬件描述语言规则概要 n.ACLR 与器件无关的异步复位(等效于.AR加属性buffer)n.AP 异步寄存器预置n.AR 异步寄存器复位n.OE 输出使能n.PIN 引脚反馈n.COM 触发器数据输入端(D端)的组合逻辑反馈信号n.FB 寄存器反馈(Q或!Q,与输出引脚同相)ABE
18、L硬件描述语言规则概要 n.Q 寄存器反馈(Q瑞)n.D 在等式左边为D型触发器的数据输入在等式右边为组合逻辑反馈信号(送往D的信号)n.J JK触发器的J输入n.K JK触发器的K输入n.S SR蚀发器的S输入n.S SR触发器的R输入n.T T触发器的T输入ABEL硬件描述语言规则概要 n关键字n关键字是一种特殊的标识符,被ABEL视为保留字,不能用来给器件、管脚、节点、常量、集合、宏定义及信号命名在源文件中使用关键字时,仅表明这个关键字的作用。一旦关键字被用于错误场合,语言处理程序将标出错误。n硬件描述语言中的关键字不区分大小写,可以用大写、小写或混合字体输入。ABEL硬件描述语言规则概
19、要 n表2-3按字母顺序列出ABEL,HDL的关键字。nAsync_reset 异步复位状态描述语句nCase-Endcase 条件选择语句nDeclarations 定义段关键字nDevice 器件定义语句*nEnd 结束语句*nEquations 逻辑方程关键字*nFunctional_block 功能模块定义语句ABEL硬件描述语言规则概要 nFuses 熔丝状态定义语句nGoto 无条件转移语句nIf-Then-Else 条件转移语句(只能用在状态图中)nInterface 功能模块接口定义语句nIstype 属性定义语句nLibrary 库引用语句nMacro 宏定义语句nModul
20、e 模块语句nNode 节点定义语句ABEL硬件描述语言规则概要 nOptions 控制选项定义语句nPin 引脚定义语句*nProperty 特征定义语句nState 状态描述语句nState_diagram 状态图关键字nState_register 状态寄存器说明语句nSync_reset 同步复位状态描述语句nTest_vectors 测试向量*nTitle 标题语句*ABEL硬件描述语言规则概要 nTruth_table 真值表表头关键字*nWhen-Then-Else 条件转移语句(只能用在方程中)nWith-Endwith 转移方程语句ABEL硬件描述语言规则概要 n二、常量与数
展开阅读全文