2011A班数电第八章_第1页
2011A班数电第八章_第2页
2011A班数电第八章_第3页
2011A班数电第八章_第4页
2011A班数电第八章_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

1、数字电路与系统数字电路与系统第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用目的与要求:目的与要求:1 1、了解、了解PLDPLD的基本特征、分类、每种类型的特的基本特征、分类、每种类型的特 点及发展概况;点及发展概况;2 2、掌握、掌握PLDPLD的电路表示法的电路表示法 ;3 3、理解、理解PLDPLD实现各种逻辑功能电路的基本原理实现各种逻辑功能电路的基本原理; ;重点与难点:重点与难点:1 1、PLDPLD器件实现各种逻辑功能电路的基本原理;器件实现各种逻辑功能电路的基本原理;2 2、可编程逻辑器件的设计过程;、可编程

2、逻辑器件的设计过程;采用传统设计方法设计复杂数字系统的缺陷:采用传统设计方法设计复杂数字系统的缺陷:1.需要使用数量众多的通用型中小规模数字集需要使用数量众多的通用型中小规模数字集成电路;成电路;2.集成电路和集成电路之间的连线繁杂;集成电路和集成电路之间的连线繁杂;3.系统体积比较大、消耗功率大、可靠性差。系统体积比较大、消耗功率大、可靠性差。4.系统电路一旦制造完成,如果出现问题很难系统电路一旦制造完成,如果出现问题很难修改,需要重新翻工,造成设计成本较高。修改,需要重新翻工,造成设计成本较高。第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用 使用使用PLDPLD设计电路的优势是

3、:设计电路的优势是: 1.1.减轻电路板设计的工作量和难度;减轻电路板设计的工作量和难度; 2.2.减小系统体积,降低功耗、提高可靠性。减小系统体积,降低功耗、提高可靠性。 3.3.由于采用软件编程实现,修改方便,开发由于采用软件编程实现,修改方便,开发 风险较小,设计成本较低。风险较小,设计成本较低。采用可编程逻辑器件设计复杂数字系统的优势:采用可编程逻辑器件设计复杂数字系统的优势: 可编程逻辑器件(可编程逻辑器件(PLDPLD)是一类特殊的芯片,)是一类特殊的芯片,用户可以根据设计的需要,以这类芯片为载体,用户可以根据设计的需要,以这类芯片为载体,对其编程实现所需要的逻辑功能。对其编程实现

4、所需要的逻辑功能。第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用可编程逻辑器件的分类:可编程逻辑器件的分类:PLD简单低密度简单低密度PLDPLDCPLDFPGAPROMPLAPALGAL复杂复杂髙髙密度密度PLDPLD第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用PLDPLD器件中常见到的表示方式器件中常见到的表示方式 :第八章第八章 可编程逻辑器件及其应用可编程逻辑器件及其应用8.1 PROM器件器件 PROM PROM是最早出现的是最早出现的PLDPLD,它是由固定的,它是由固定的“与与”阵列和一个可编程的阵列和一个可编程的“或或”阵列组成的,如下阵列组成的,如下

5、图所示:图所示: 固定固定连接点连接点可编程可编程连接点连接点可编程连接可由熔可编程连接可由熔丝、丝、EPROMEPROM或或E2PROME2PROM技术实现技术实现 例例1 1:用:用PROMPROM阵列实现下列逻辑函数:阵列实现下列逻辑函数: BAYBABAY108.1 PROM器件器件例例2 2:用:用PROMPROM实现一个实现一个2 2位的乘法器。位的乘法器。2 2位乘法器真值表位乘法器真值表8.1 PROM器件器件2 2位乘法器的位乘法器的PROMPROM阵列图阵列图8.1 PROM器件器件 总之,总之,PROMPROM能够实现各种组合逻辑,但当能够实现各种组合逻辑,但当输入信号的

6、数目较多时,其与阵列的规模会变输入信号的数目较多时,其与阵列的规模会变得很大,从而导致器件成本升高、功耗增加、得很大,从而导致器件成本升高、功耗增加、可靠性降低等问题出现。目前这种器件已经较可靠性降低等问题出现。目前这种器件已经较少使用了。少使用了。8.1 PROM器件器件8.2 PLA器件器件 可编程逻辑阵列可编程逻辑阵列PLAPLA是是2020世纪世纪7070年代中年代中期出现的一种可编程逻辑器件,解决了期出现的一种可编程逻辑器件,解决了PROMPROM结构对地址的限制。结构对地址的限制。PLAPLA是简单可编程逻辑是简单可编程逻辑器件中用户可配置性最好的器件,因为它的器件中用户可配置性最

7、好的器件,因为它的“与与”和和“或或”阵列都是可配置的阵列都是可配置的 。未编程的简单的未编程的简单的2 2输入输入2 2输出输出PLAPLA结构结构 可编程可编程连接点连接点可编程可编程连接点连接点8.2 PLA器件器件PLAPLA可以用来实现一些比较复杂布尔代数表达式可以用来实现一些比较复杂布尔代数表达式 例例3 3:用:用PLAPLA实现下面实现下面6 6变量输入的函数表达式:变量输入的函数表达式: 1234fACDEFAEFACDBDfABEFACDBDEFfACDEFABCDACDABDfACDEAEFBDCDEF8.2 PLA器件器件编程后的编程后的PLAPLA如下图所示如下图所示

8、 : 8.2 PLA器件器件 虽然虽然PLAPLA的与门阵列及或门阵列均是可编程的与门阵列及或门阵列均是可编程的,其灵活性较大,但也带来编程困难、价格的,其灵活性较大,但也带来编程困难、价格较高的问题。因此,在市场上没有得到广泛地较高的问题。因此,在市场上没有得到广泛地应用。应用。 8.2 PLA器件器件 可编程阵列逻辑可编程阵列逻辑PALPAL是是2020世纪世纪7070年代末推年代末推出的一种低密度出的一种低密度PLDPLD器件,是第一个具有实用器件,是第一个具有实用意义的可编程逻辑器件。意义的可编程逻辑器件。8.3 PAL器件器件 从结构上看,它实际上是从结构上看,它实际上是PLAPLA

9、的一种变形,的一种变形,将将PLAPLA的可编程的可编程或或阵列变为固定的阵列变为固定的或或阵阵列列。即输入为可编程。即输入为可编程与与阵列结构,输出为阵列结构,输出为固定固定或或阵列结构。阵列结构。一种未编程的一种未编程的PALPAL阵列图阵列图 : 可编程可编程连接点连接点固定固定连接点连接点 用用PALPAL器件实现逻辑函数时,在每个与或函数中,乘积器件实现逻辑函数时,在每个与或函数中,乘积项的个数不能超过项的个数不能超过或或阵列所固定的数目阵列所固定的数目 。8.3 PAL器件器件 为了扩展电路的功能并增加使用的灵活性,为了扩展电路的功能并增加使用的灵活性,PALPAL在与或阵列的基础

10、上,增加了多种输出及反在与或阵列的基础上,增加了多种输出及反馈电路,构成了各种型号的馈电路,构成了各种型号的PALPAL器件。器件。 根据根据PALPAL器件的输出结构和反馈电路的不同器件的输出结构和反馈电路的不同,可将它们大致分成专用输出结构、可编程输入,可将它们大致分成专用输出结构、可编程输入/ /输出结构、寄存器输出结构、异或输出结构等输出结构、寄存器输出结构、异或输出结构等几种类型。几种类型。8.3 PAL器件器件 专用输出结构专用输出结构: 下图所示电路属于专用输出,它的输出端是下图所示电路属于专用输出,它的输出端是与或门:与或门: 8.3 PAL器件 可编程输入可编程输入/ /输出

11、结构输出结构 : 可编程输入可编程输入/输出控制线输出控制线反馈线反馈线8.3 PAL器件器件 寄存器输出结构寄存器输出结构 : 输出端增加输出端增加D D触发器触发器8.3 PAL器件器件 异或输出结构异或输出结构 : 增设异或门增设异或门8.3 PAL器件器件 例例4 4: 用用PALPAL器件实现一个带使能输入的器件实现一个带使能输入的2 2线线 4 4线译码器。线译码器。8.3 PAL器件器件 PAL PAL器件的编号方式器件的编号方式: : 通常从通常从PALPAL的编号中就可以得出该器件的的编号中就可以得出该器件的输入数目、输出数目、输出结构、工作环境输入数目、输出数目、输出结构、

12、工作环境和封装类型等,命名如下图所示:和封装类型等,命名如下图所示: 8.3 PAL器件器件典型典型PALPAL器件介绍器件介绍: : PAL16L8 PAL16L8为可编程输入为可编程输入/ /输出型结构的输出型结构的PALPAL器件器件,它有,它有1616个输入端(包括反馈)、个输入端(包括反馈)、8 8个输出端。每个输出端。每个输出中有个输出中有8 8个乘积项,共有个乘积项,共有6464个乘积项。其中每个乘积项。其中每个输出的第一个乘积项为专用乘积项,用于控制个输出的第一个乘积项为专用乘积项,用于控制三态输出缓冲器的输出。三态输出缓冲器的输出。 8.3 PAL器件器件 通用阵列逻辑通用阵

13、列逻辑GALGAL器件是器件是2020世纪世纪8080年代中期年代中期在在PALPAL基础上发展起来的一种低密度可编程逻辑基础上发展起来的一种低密度可编程逻辑器件。器件。GALGAL器件在结构上采用输出逻辑宏单元器件在结构上采用输出逻辑宏单元OLMCOLMC(Output Logic Macro CellOutput Logic Macro Cell)结构,在工)结构,在工艺上利用艺上利用E2PROME2PROM技术,技术,GALGAL器件具有电可擦除和器件具有电可擦除和可重编程的特点。一种型号的可重编程的特点。一种型号的GALGAL器件可以对几器件可以对几十种十种PALPAL器件做到全兼容,

14、器件做到全兼容,GALGAL的器件几乎完全取的器件几乎完全取代了代了PALPAL,并可以取代大部分中小规模的数字集,并可以取代大部分中小规模的数字集成电路,因而获得了广泛地应用成电路,因而获得了广泛地应用 。8.4 GAL器件器件GAL器件的分类:器件的分类:GALPALPAL型型GALGAL器件器件在系统可编程在系统可编程GALGAL器件器件FPLAFPLA型型GALGAL器件器件8.4 GAL器件器件 PAL PAL型型GALGAL器件采用了器件采用了PALPAL器件器件“与与”阵列和阵列和“或或”阵列的基本结构,但在输出电路中采用了阵列的基本结构,但在输出电路中采用了可编程的输出逻辑宏单

15、元可编程的输出逻辑宏单元OLMCOLMC。这种类型器件中。这种类型器件中典型的代表是典型的代表是GAL16V8GAL16V8,下图给出了内部结构和管,下图给出了内部结构和管脚图。脚图。8.4 GAL器件器件带缓冲器带缓冲器输入端输入端输出三态输出三态控制端控制端系统时钟系统时钟与阵列与阵列输出输出宏单元宏单元8.4 GAL器件器件OLMCOLMC内部结构:内部结构: PTMUX10G1AC0AC1(n)TSMUX00011011UCC0MUX10I/O(n)QQDFMUX10110100AC0*AC1(n)AC1(m)*XOR(n)反馈来自与逻辑阵列CLKOE来自邻级输出(m)CLKOEG28

16、.4 GAL器件器件 SYN SYN、AC0AC0、AC1(n)AC1(n)和和XOR(nXOR(n) )是是OLMCOLMC的控制字,的控制字,SYNSYN、 AC0AC0为各为各OLMCOLMC共用,共用,AC1(n)AC1(n)为第为第n n个个OLMCOLMC专用,专用,XOR(nXOR(n) )每个每个OLMCOLMC占占1 1位位 。 多路开关的状态取决于设计者可编程结构多路开关的状态取决于设计者可编程结构控制字控制字AC0AC0和和AC1(n)AC1(n)的值。的值。8.4 GAL器件器件 各输出宏单元各输出宏单元OLMCOLMC中的结构控制字中的结构控制字SYNSYN、AC0A

17、C0、AC1(n)AC1(n)和和XOR(nXOR(n) )均存放在均存放在GALGAL器件的可编程存储单器件的可编程存储单元中。元中。 GAL16V8 GAL16V8结构控制字结构控制字 32位乘积项禁止4位XOR(n)1位SYN8位AC1(n)1位AC04位XOR(n)32位乘积项禁止12 15(n)12 19(n)16 19(n)PT63PT32PT31PT082位8.4 GAL器件器件 在结构控制位在结构控制位SYNSYN、AC0AC0、AC1(n)AC1(n)和和XOR(nXOR(n) )的的控制下,控制下,OLMCOLMC可以配置成五种工作模式:专用输可以配置成五种工作模式:专用输

18、入模式、专用组合输出模式、选通组合输出模式、入模式、专用组合输出模式、选通组合输出模式、时序电路中的组合输出模式和寄存器型输出模式。时序电路中的组合输出模式和寄存器型输出模式。 下表给出各种模式下结构控制位的配置情况。下表给出各种模式下结构控制位的配置情况。 8.4 GAL器件器件 OLMC OLMC工作模式的配置选择列表工作模式的配置选择列表 8.4 GAL器件器件专用输入模式专用输入模式: CLKNCOLMC(n)OENC至另一个邻级I/O(n)NC来自邻级输出(m)NCCLKOENC反馈8.4 GAL器件器件 专用组合输出模式:专用组合输出模式: CLKNCOLMC(n)OENCI/O(

19、n)NC来 自 邻 级 输 出 ( m)NCCLKOENC反 馈UCCXOR(n)来 自与 逻 辑阵 列8.4 GAL器件器件 选通组合输出模式选通组合输出模式 : CLKNCOLMC(n)OENCI/O(n)NC来自邻级输出(m)NCCLKOENC反馈(c)XOR(n)来自与逻辑阵列8.4 GAL器件器件 时序电路中的组合输出模式时序电路中的组合输出模式 : CLKOLMC(n)OENCI/O(n)NC来自邻级输出(m)CLKOE反馈(d)XOR(n)来自与逻辑阵列未连本宏单元(至寄存器输出单元)(至寄存器输出单元)8.4 GAL器件器件 寄存器型输出模式寄存器型输出模式 : CLKOLMC

20、(n)OEI/O(n)NC来自邻级输出(m)CLKOE反馈(e)XOR(n)来自与逻辑阵列NCDQ8.4 GAL器件器件 在在GALGAL器件中,除了与阵列以外器件中,除了与阵列以外 ,还有一些,还有一些可编程单元,如下图所示为可编程单元,如下图所示为GAL16V8GAL16V8中中可编程单元可编程单元地址和功能划分:地址和功能划分:8.4 GAL器件器件与阵列与阵列编程数据区编程数据区用于编程数据流用于编程数据流的输入和校验的输入和校验用户自定义区,用户自定义区,如识别码、日期等如识别码、日期等制造商用,制造商用,用户不可用用户不可用存储存储结构控制字结构控制字此位编程后,信息不能读出此位编

21、程后,信息不能读出制造商用,制造商用,用户不可用用户不可用擦除擦除编程信息编程信息8.4 GAL器件器件8.5 CPLD器件器件 随着集成工艺的发展,可编程逻辑器件的规随着集成工艺的发展,可编程逻辑器件的规模越来越大,逐渐由低密度的模越来越大,逐渐由低密度的PALPAL器件和器件和GALGAL器件器件发展到高密度的万门以上的复杂可编程逻辑器件发展到高密度的万门以上的复杂可编程逻辑器件(CPLDCPLD)。)。 CPLD CPLD的的I/OI/O端数和内含触发器数多达数百个,端数和内含触发器数多达数百个,其集成度远远高于前面介绍的可编程逻辑器件其集成度远远高于前面介绍的可编程逻辑器件PALPAL

22、和和GALGAL。因此,采用。因此,采用CPLDCPLD设计数字系统,具有体积设计数字系统,具有体积小、功耗低、可靠性高、灵活性强的优点。小、功耗低、可靠性高、灵活性强的优点。 CPLD CPLD的基本结构形式和的基本结构形式和PALPAL、GALGAL相似,都由相似,都由可编程的与阵列、固定的或阵列和逻辑宏单元组可编程的与阵列、固定的或阵列和逻辑宏单元组成,但集成规模比成,但集成规模比PALPAL和和GALGAL大很多。大很多。 CPLD CPLD主要有三个组成部分:主要有三个组成部分:逻辑阵列块(逻辑阵列块(LABLAB)可编程输入可编程输入/ /输出单元输出单元(IOEIOE)可编程连线

23、阵列(可编程连线阵列(PIAPIA) 8.5 CPLD器件器件逻辑块逻辑块内部内部的可的可编程编程连线连线区区I/O单元单元乘积项乘积项阵列阵列乘积项乘积项分配分配宏单元宏单元MacrocellPI CPLD CPLD的组成结构示意图:的组成结构示意图:8.5 CPLD器件器件 逻辑阵列块(逻辑阵列块(LABLAB) 一个一个LABLAB由十多个宏单元的阵列组成由十多个宏单元的阵列组成, ,每个宏每个宏单元由三个功能块组成:单元由三个功能块组成: 逻辑阵列逻辑阵列 乘积项选择矩阵乘积项选择矩阵 可编程寄存器可编程寄存器 它们可以被单独的配置为时序逻辑或组合逻它们可以被单独的配置为时序逻辑或组合

24、逻辑工作方式。如果每个宏单元中的乘积项不够用辑工作方式。如果每个宏单元中的乘积项不够用时,还可以利用其结构中的共享和并联扩展乘积时,还可以利用其结构中的共享和并联扩展乘积项。项。8.5 CPLD器件器件 可编程输入可编程输入/ /输出单元(输出单元(IOEIOE) I/O I/O端常作为一个独立单元处理。通过对端常作为一个独立单元处理。通过对I/OI/O端口编程,可以使每个引脚单独的配置为输入输端口编程,可以使每个引脚单独的配置为输入输出和双向工作、寄存器输入等各种不同的工作方出和双向工作、寄存器输入等各种不同的工作方式。式。 8.5 CPLD器件器件 可编程连线阵列(可编程连线阵列(PIAP

25、IA) 在各在各LABLAB之间以及各之间以及各LABLAB和和I/OI/O单元之间提供单元之间提供互连网络。这种互连机制有很大的灵活性,它互连网络。这种互连机制有很大的灵活性,它允许在不影响引脚分配的情况下改变内部的设允许在不影响引脚分配的情况下改变内部的设计。计。8.5 CPLD器件器件 不同厂商生产的不同厂商生产的CPLDCPLD芯片在内部结构上存在芯片在内部结构上存在着一定的差异,如有的器件采用通互连阵列着一定的差异,如有的器件采用通互连阵列UIMUIM结构,有的采用多阵列矩阵结构,有的采用多阵列矩阵MAXMAX结构,如结构,如MAX7128SMAX7128S,还有的采用灵活逻辑单元阵

26、列,还有的采用灵活逻辑单元阵列FLEXFLEX结结构、大块结构等等,但其基于与或阵列结构的基构、大块结构等等,但其基于与或阵列结构的基本原理是相同的,这里就不再一一阐述了。本原理是相同的,这里就不再一一阐述了。8.5 CPLD器件器件 下面介绍下面介绍CPLDCPLD的典型器件,的典型器件,AlteraAltera公司生公司生产的高密度、高性能产的高密度、高性能CMOSCMOS可编程逻辑器件可编程逻辑器件EPM7128SEPM7128S。外部封装特性:外部封装特性: 64个个I/O端口;端口; 4个直接输入端口个直接输入端口; 在系统编程端口。在系统编程端口。8.5 CPLD器件器件EPM71

27、28SEPM7128S内部结构图内部结构图逻辑逻辑阵列模块阵列模块 可编程可编程互连阵列互连阵列 可编程可编程I/OI/O单元单元 8.5 CPLD器件器件8.6 FPGA器件器件 现场可编程门阵列(现场可编程门阵列(FPGAFPGA)是是2020世纪世纪8080年年代中期出现的高密度代中期出现的高密度PLD PLD ,它它是由若干独立的是由若干独立的可编程逻辑模块组成,用户可以通过编程将这可编程逻辑模块组成,用户可以通过编程将这些模块连接成所需要设计的数字系统。相比其些模块连接成所需要设计的数字系统。相比其它它PLDPLD具有更高的密度、更快的编程速度、更大具有更高的密度、更快的编程速度、更

28、大的设计灵活性等许多优点。的设计灵活性等许多优点。 FPGAFPGA的功能是由逻辑结构的配置数据决定。的功能是由逻辑结构的配置数据决定。器件编程时,将配置数据存放在片内的器件编程时,将配置数据存放在片内的SRAMSRAM或或片外片外ROMROM上;工作时,将根据这些存储数据来配上;工作时,将根据这些存储数据来配置置FPGAFPGA器件的逻辑功能。人们可以控制加载过器件的逻辑功能。人们可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场程,在现场修改器件的逻辑功能,即所谓现场编程。编程。8.6 FPGA器件器件 FPGAFPGA的基本结构:的基本结构:可编程逻辑模块(可编程逻辑模块(CLBCL

29、B)可编程输入可编程输入输出模块(输出模块(IOBIOB)可编程内部可编程内部互连资源(互连资源(ICRICR)8.6 FPGA器件器件XC4000XC4000系列系列FPGAFPGA的基本结构图:的基本结构图:可编程开关矩可编程开关矩阵阵可编程内部互可编程内部互联资源联资源可编程逻辑模可编程逻辑模块块可编程输入可编程输入/输出模块输出模块8.6 FPGA器件器件 可编程逻辑模块可编程逻辑模块(CLB)(CLB) : CLBCLB是是FPGAFPGA的重要组成部分,多个的重要组成部分,多个CLBCLB以二以二维阵列的形式分布在器件的中部。维阵列的形式分布在器件的中部。 下面以下面以XC4000

30、XC4000系列为例,说明系列为例,说明CLBCLB的基本组的基本组成结构。从图中可以看出,每个成结构。从图中可以看出,每个CLBCLB由触发器、由触发器、4 4输入组合逻辑函数发生器、由数据选择器组成的输入组合逻辑函数发生器、由数据选择器组成的内部控制电路组成。内部控制电路组成。8.6 FPGA器件器件XC4000XC4000系列系列CLBCLB的基本结构图:的基本结构图:三个逻辑三个逻辑函数发生函数发生器可实现器可实现最多最多9变变量的任意量的任意组合逻辑组合逻辑函数函数D触发器触发器数字选择器数字选择器8.6 FPGA器件器件 可编程输入可编程输入/ /输出模块输出模块(IOB(IOB

31、) ): IOBIOB分布在分布在FPGAFPGA的周围,提供了器件外部引的周围,提供了器件外部引出端和内部逻辑之间的连接。每个出端和内部逻辑之间的连接。每个IOBIOB控制一个控制一个外部引出端,它可以被编程为输入、输出或双外部引出端,它可以被编程为输入、输出或双向向I/OI/O功能。功能。 下面以下面以XC4000XC4000系列为例,说明系列为例,说明IOBIOB的基本组的基本组成结构。从图中可以看出,每个成结构。从图中可以看出,每个IOBIOB由输入触发由输入触发器、输入缓冲器、输出触发器、输入缓冲器、输出触发/ /锁存器、输出缓冲锁存器、输出缓冲器组成。器组成。8.6 FPGA器件器

32、件XC4000XC4000系列系列IOBIOB的基本结构图:的基本结构图:输入触发器输入触发器输入缓冲器输入缓冲器输出缓冲器输出缓冲器输出触发输出触发/锁存器锁存器8.6 FPGA器件器件 可编程内部互联资源可编程内部互联资源(ICR)(ICR) : ICRICR广泛分布在广泛分布在FPGAFPGA内部的内部的CLBCLB和和IOBIOB周围,周围,由由许多金属线段构成,这些金属线段带有可编许多金属线段构成,这些金属线段带有可编程开关,通过自动布线程开关,通过自动布线提供器件内部任意两点提供器件内部任意两点之间的连接。可将数量很大的之间的连接。可将数量很大的CLBCLB和和IOBIOB连结成连

33、结成各种复杂的系统。各种复杂的系统。 下面以下面以XC4000XC4000系列为例,说明系列为例,说明ICRICR的基本组的基本组成结构。从图中可以看出,成结构。从图中可以看出,ICRICR主要由通用单主要由通用单/ /双双长线连接、长连接、全局连接和可编程开关矩阵长线连接、长连接、全局连接和可编程开关矩阵组成。组成。8.6 FPGA器件器件 通用单长线连接结构通用单长线连接结构 : 通用单长线连接主要用于通用单长线连接主要用于CLBCLB之间的连接,任意两点之间的连接之间的连接,任意两点之间的连接都要通过开关矩阵。它提供了相邻都要通过开关矩阵。它提供了相邻CLBCLB之间的快速互连和复杂互连

34、的之间的快速互连和复杂互连的灵活性。灵活性。8.6 FPGA器件器件 通用双长线连接结构通用双长线连接结构 : 通用双长线线段长度是通用单长线的两倍,它提供了相隔通用双长线线段长度是通用单长线的两倍,它提供了相隔CLBCLB之之间的连接。间的连接。8.6 FPGA器件器件 长线连接结构长线连接结构 : 长线连接分为水平长线和垂直长线,这些长线不经过可编程开关长线连接分为水平长线和垂直长线,这些长线不经过可编程开关矩阵,信号延迟时间小。长线连接主要用于长距离或多分支信号的传矩阵,信号延迟时间小。长线连接主要用于长距离或多分支信号的传送。送。8.6 FPGA器件器件 全局连接结构全局连接结构 :

35、全局连接主要用于传送一些公共信号,如全全局连接主要用于传送一些公共信号,如全局时钟信号、公共控制信号。局时钟信号、公共控制信号。8.6 FPGA器件器件 可编程开关矩阵结构可编程开关矩阵结构 : 每个开关矩阵的连接点上有每个开关矩阵的连接点上有6 6个选通晶体管,进入开关矩阵的信个选通晶体管,进入开关矩阵的信号,可与任何方向的单或双长线互连。号,可与任何方向的单或双长线互连。8.6 FPGA器件器件 基于基于SRAMSRAM结构,可以无限次编程,但它属结构,可以无限次编程,但它属 于易失性元件,每次使用要进行配载;于易失性元件,每次使用要进行配载; FPGAFPGA的特点的特点 : FPGA

36、FPGA的内连线是分布在的内连线是分布在CLBCLB周围,而且编程周围,而且编程 的种类和编程点很多,使得布线相当灵活的种类和编程点很多,使得布线相当灵活, , 在系统速度方面低于在系统速度方面低于CPLDCPLD的速度。的速度。 FPGA FPGA芯片功耗很低,约为芯片功耗很低,约为0.25mW0.25mW5mW5mW,静,静 态时几乎没有功耗。态时几乎没有功耗。 由于由于FPGAFPGA的的CLBCLB规模小,可分为两个独立的规模小,可分为两个独立的 电路,又有丰富的连线,所以系统综合时可电路,又有丰富的连线,所以系统综合时可 进行充分的优化,所以芯片利用率很高。进行充分的优化,所以芯片利

37、用率很高。8.6 FPGA器件器件8.7 可编程逻辑器件的开发可编程逻辑器件的开发 可编程逻辑器件集成度高、速度快、功耗低、可编程逻辑器件集成度高、速度快、功耗低、结构灵活、使用方便、用户可定义逻辑功能和加结构灵活、使用方便、用户可定义逻辑功能和加密功能,可以实现各种逻辑设计,是数字系统设密功能,可以实现各种逻辑设计,是数字系统设计的理想集成电路器件。计的理想集成电路器件。 使用可编程逻辑器件开发数字系统,需要开使用可编程逻辑器件开发数字系统,需要开发软件和开发硬件的支持。发软件和开发硬件的支持。可编程逻辑器件的设计过程可编程逻辑器件的设计过程 :设计准备设计输入设计处理器件编程器件测试时序仿

38、真功能仿真选择设计方案和器件,选择设计方案和器件,进行逻辑设计;进行逻辑设计;原理图输入、硬件描述原理图输入、硬件描述语言输入和波形输入;语言输入和波形输入;对输入文件进行化简、综对输入文件进行化简、综合和优化,适配和布局、合和优化,适配和布局、布线,产生编程文件;布线,产生编程文件;将编程数据放到具体的将编程数据放到具体的PLDPLD中去;中去;不考虑器件实不考虑器件实际特性的逻辑际特性的逻辑功能仿真;功能仿真;考虑器件实际考虑器件实际特性的逻辑功特性的逻辑功能仿真;能仿真;使用仪器对编使用仪器对编程过的器件进程过的器件进行功能测试;行功能测试;8.7 可编程逻辑器件的开发可编程逻辑器件的开

39、发 无论是用高密度无论是用高密度PLDPLD,还是用低密度,还是用低密度PLDPLD进进行逻辑电路设计时,都需要使用相应的软件、行逻辑电路设计时,都需要使用相应的软件、硬件开发工具,各个生产可编程逻辑器件的厂硬件开发工具,各个生产可编程逻辑器件的厂家都提供了相应的软件开发套件,支持原理图家都提供了相应的软件开发套件,支持原理图和硬件描述语言和硬件描述语言HDL(HardwareHDL(Hardware Description Description Language)Language)语言输入。如语言输入。如VerilogVerilog HDL HDL、VHDLVHDL和和ABELABEL等。

40、等。 8.7 可编程逻辑器件的开发可编程逻辑器件的开发硬件描述语言概述硬件描述语言概述 : 硬件描述语言硬件描述语言(HDL)(HDL)是一种专门用于是一种专门用于PLDPLD设计的高级模块化语言,各种设计的高级模块化语言,各种CPLDCPLD开发软件开发软件均有自己特色的均有自己特色的HDLHDL。 其中,最具代表性的是美国国防部开发其中,最具代表性的是美国国防部开发的的VHDLVHDL语言和语言和ViewlogicViewlogic公司开发的公司开发的VerilogVerilog HDLHDL语言。语言。8.7 可编程逻辑器件的开发可编程逻辑器件的开发 例例5.5.使用使用PLDPLD器件

41、设计一位全加器。器件设计一位全加器。 图形输入:图形输入:8.7 可编程逻辑器件的开发可编程逻辑器件的开发 ABELABEL语言逻辑输入:语言逻辑输入: module full_addermodule full_adder title 1 bit full adder title 1 bit full adder IC1 device P16V8C; IC1 device P16V8C; A1,B1,CIN pin2,3,4; A1,B1,CIN pin2,3,4; SUM1,COUT pin18,17; SUM1,COUT pin18,17; equations equations SUM1=A1 $ B1 $ CIN; SUM1=A1 $ B1 $ CIN; COUT=( COUT=(A1 $ B1 A1 $ B1 ) & CIN) # (A1 & B1);) & CIN) # (A1 & B1);模块开始

温馨提示

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

评论

0/150

提交评论