1、自动化学院应用电子教学中心自动化学院应用电子教学中心1第九章第九章 可编程逻辑器件可编程逻辑器件9.1 概述概述9.2 PLA与与PAL9.3 通用阵列逻辑通用阵列逻辑9.4 复杂可编程逻辑器件复杂可编程逻辑器件CPLD9.5 现场可编程门阵列现场可编程门阵列FPGA9.6 可编程逻辑器件的开发应用可编程逻辑器件的开发应用自动化学院应用电子教学中心自动化学院应用电子教学中心29.1 概述概述1.可编程逻辑器件的发展过程可编程逻辑器件的发展过程2.可编程逻辑器件的分类可编程逻辑器件的分类自动化学院应用电子教学中心自动化学院应用电子教学中心31.可编程逻辑器件的发展过程可编程逻辑器件的发展过程最早
2、的可编程逻辑器件最早的可编程逻辑器件可编程只读存贮器可编程只读存贮器PROM紫外线可按除只读存贮器紫外线可按除只读存贮器EPROM电可擦除只读存贮器电可擦除只读存贮器EEPROM特点:特点:只能实现简单的逻辑功能只能实现简单的逻辑功能集成度不高,资源利用率低集成度不高,资源利用率低自动化学院应用电子教学中心自动化学院应用电子教学中心41.可编程逻辑器件的发展过程可编程逻辑器件的发展过程通常意义上的可编程逻辑器件通常意义上的可编程逻辑器件(PLD)PLA(可编程逻辑阵列可编程逻辑阵列)PAL(可编程阵列逻辑可编程阵列逻辑)GAL(通用阵列逻辑通用阵列逻辑)特点:特点:电路结构较为复杂电路结构较为
3、复杂实现逻辑功能的基本电路:与或阵列实现逻辑功能的基本电路:与或阵列无法满足大规模数字系统设计的要求,只能替代固无法满足大规模数字系统设计的要求,只能替代固定功能的逻辑芯片定功能的逻辑芯片自动化学院应用电子教学中心自动化学院应用电子教学中心51.可编程逻辑器件的发展过程可编程逻辑器件的发展过程为了弥补为了弥补PLD缺陷,出现了缺陷,出现了CPLD(Complex Programmable Logic Dvice)FPGA(Field Programmable Gate Array)特点:特点:体系结构和逻辑单元灵活体系结构和逻辑单元灵活集成度高以及适用范围宽。集成度高以及适用范围宽。兼容了兼容
4、了PLD和通用门阵列的优点,可实现较大和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。规模的电路,编程也很灵活。自动化学院应用电子教学中心自动化学院应用电子教学中心61.可编程逻辑器件的发展过程可编程逻辑器件的发展过程PAL/GAL等:等:v低密度、早期的低密度、早期的PLD,在低端数字电路领域仍有大量的应用,在低端数字电路领域仍有大量的应用v主要是替代主要是替代74系列逻辑器件系列逻辑器件vGAL器件的供应商主要是器件的供应商主要是Lattice SemiconductorCPLD:v能实现的逻辑功能比能实现的逻辑功能比PAL/GAL有大幅度提高有大幅度提高v主要用于实现中等复杂程度
5、、较高速度的逻辑功能主要用于实现中等复杂程度、较高速度的逻辑功能v主要供应商:主要供应商:Altera、Lattice、XilinxFPGAv高达千万门的集成度高达千万门的集成度v应用与高速、高密度的高端数字系统设计领域应用与高速、高密度的高端数字系统设计领域v主要供应商:主要供应商:Altera、Lattice、Xilinx、Atmel、Actel自动化学院应用电子教学中心自动化学院应用电子教学中心72.可编程逻辑器件的分类可编程逻辑器件的分类按照集成度分类按照集成度分类从集成度上分为从集成度上分为 低密度可编程逻辑器件低密度可编程逻辑器件(LDPLD)高密度可编程逻辑器件高密度可编程逻辑器
6、件(HDPLD)PROM、PLA、PAL和和GAL属于低密度可编程属于低密度可编程逻辑器件。逻辑器件。CPLD和和FPGA属于高密度可编程逻辑器件。属于高密度可编程逻辑器件。自动化学院应用电子教学中心自动化学院应用电子教学中心8按照集成度分类按照集成度分类可编程逻辑器件可编程逻辑器件低密度可编程逻辑器件低密度可编程逻辑器件(LDPLD)PROMPLAPALGALEPLDCPLDFPGA高密度可编程逻辑器件高密度可编程逻辑器件(HDPLD)自动化学院应用电子教学中心自动化学院应用电子教学中心92.可编程逻辑器件的分类可编程逻辑器件的分类按照结构分类按照结构分类可编程逻辑器件都是从可编程逻辑器件都
7、是从“与与-或阵列或阵列”和和“门门阵列阵列”两类基本结构发展起来的,所以又可从两类基本结构发展起来的,所以又可从结构上将其分为两大类器件结构上将其分为两大类器件:PLD器件器件基本结构为与或阵列的器件。基本结构为与或阵列的器件。PLD主要通过修改具有固定内部电路的逻辑功能来编主要通过修改具有固定内部电路的逻辑功能来编程。程。FPGA器件器件基本结构为门阵列的器件。基本结构为门阵列的器件。FPGA主要通过改变内部连线的布线来编程。主要通过改变内部连线的布线来编程。自动化学院应用电子教学中心自动化学院应用电子教学中心102.可编程逻辑器件的分类可编程逻辑器件的分类按编程工艺按编程工艺熔丝编程器件
8、熔丝编程器件:由可以用电流熔断的熔丝组成。:由可以用电流熔断的熔丝组成。PROM等等反熔丝编程器件反熔丝编程器件主要通过击穿介质达到连主要通过击穿介质达到连通线路的目的。通线路的目的。Actel的的FPGA器件器件自动化学院应用电子教学中心自动化学院应用电子教学中心112.可编程逻辑器件的分类可编程逻辑器件的分类按编程工艺按编程工艺SRAM大多数公司的大多数公司的FPGA器件器件 可反复编程,实现系统功能的动态重构可反复编程,实现系统功能的动态重构 每次上电需重新下载,实际应用时需外挂每次上电需重新下载,实际应用时需外挂EEPROM用于保存程序用于保存程序EEPROM大多数大多数CPLD器件器
9、件 可反复编程可反复编程 不用每次上电重新下载,但相对速度慢,功耗较不用每次上电重新下载,但相对速度慢,功耗较大大自动化学院应用电子教学中心自动化学院应用电子教学中心129.2 PLA与与PAL可编程逻辑器件的基本结构可编程逻辑器件的基本结构基本结构基本结构PLD电路的符号表示电路的符号表示PLD器件的编程元件器件的编程元件可编程逻辑阵列可编程逻辑阵列PLA可编程阵列逻辑可编程阵列逻辑PAL自动化学院应用电子教学中心自动化学院应用电子教学中心139.2.1 可编程逻辑器件的基本结构可编程逻辑器件的基本结构PLD器件由输入缓冲电路、与阵列、或阵器件由输入缓冲电路、与阵列、或阵列、输出缓冲电路等四
10、部分组成列、输出缓冲电路等四部分组成自动化学院应用电子教学中心自动化学院应用电子教学中心149.2.1可编程逻辑器件的基本结构可编程逻辑器件的基本结构任何组合逻辑函数均可化为与或式,用任何组合逻辑函数均可化为与或式,用“与门与门-或门或门”二级电路实现,而任何时序二级电路实现,而任何时序电路又都是由组合电路加上存储元件电路又都是由组合电路加上存储元件(触发触发器器)构成。构成。例如例如由由“与或阵列与或阵列”直接输出就构成组合方式输出直接输出就构成组合方式输出“与或阵列与或阵列”送入寄存器后输出构成时序方式送入寄存器后输出构成时序方式输出。输出。自动化学院应用电子教学中心自动化学院应用电子教学
11、中心151.组成部分的符号表示组成部分的符号表示PLD输入缓冲输入缓冲A AB BC C硬线连接硬线连接被编程被编程(接通接通)单元单元被删除被删除(开断开断)单元单元PLDPLD连接表示法连接表示法自动化学院应用电子教学中心自动化学院应用电子教学中心161.组成部分的符号表示组成部分的符号表示(c)或门习惯表示法或门习惯表示法ADBC(d)或门或门PLD表示法表示法ADBC(a)与门习惯表示法与门习惯表示法ADBC(b)与门与门PLD表示法表示法ADBC自动化学院应用电子教学中心自动化学院应用电子教学中心172.与或阵列与或阵列A AB BC CD D自动化学院应用电子教学中心自动化学院应用
12、电子教学中心183.可编程元件可编程元件四种类型可编程元件四种类型可编程元件熔丝熔丝(Fuse)开关开关反熔丝反熔丝(Antifuse)开关开关浮栅编程元件浮栅编程元件(EPROM和和EEPROM)基于基于SRAM的编程元件。的编程元件。自动化学院应用电子教学中心自动化学院应用电子教学中心193.可编程元件可编程元件-熔丝熔丝(Fuse)开关开关AB未烧断熔丝未烧断熔丝烧断熔丝烧断熔丝BABA自动化学院应用电子教学中心自动化学院应用电子教学中心20熔丝熔丝(Fuse)开关开关由用电流熔断的熔断丝组成由用电流熔断的熔断丝组成在编程时,需要保持连接的节点保留熔丝,在编程时,需要保持连接的节点保留熔
13、丝,需要去除连接的节点烧掉熔丝需要去除连接的节点烧掉熔丝熔丝开关烧断后不能够恢复,只能够编程熔丝开关烧断后不能够恢复,只能够编程一次一次保证熔丝熔化时产生的金属物质不影响器保证熔丝熔化时产生的金属物质不影响器件的其他部分,熔丝还需要留出极大的保件的其他部分,熔丝还需要留出极大的保护空间,因此熔丝占用的芯片面积大护空间,因此熔丝占用的芯片面积大 自动化学院应用电子教学中心自动化学院应用电子教学中心21熔丝熔丝(Fuse)开关开关位线位线字线字线自动化学院应用电子教学中心自动化学院应用电子教学中心223.可编程元件可编程元件-反熔丝开关反熔丝开关1.2m场氧化物场氧化物多晶硅多晶硅介质介质扩散层扩
14、散层自动化学院应用电子教学中心自动化学院应用电子教学中心23反熔丝反熔丝(Antifuse)型开关型开关通过击穿介质来达到连通线路通过击穿介质来达到连通线路在未编程时处于开路状态,编程时,在其在未编程时处于开路状态,编程时,在其两端加上编程电压,反熔丝就会由高阻抗两端加上编程电压,反熔丝就会由高阻抗变为低阻抗,从而实现两个极间的连通,变为低阻抗,从而实现两个极间的连通,且编程电压撤除后也一直处于导通状态且编程电压撤除后也一直处于导通状态反熔丝元件占用的硅片面积小,适宜做集反熔丝元件占用的硅片面积小,适宜做集成度很高的可编程逻辑器件的编程元件成度很高的可编程逻辑器件的编程元件 自动化学院应用电子
15、教学中心自动化学院应用电子教学中心243.可编程元件可编程元件-浮栅编程元件浮栅编程元件EPROM的基本结构是一个浮栅管,浮栅管相当于一个的基本结构是一个浮栅管,浮栅管相当于一个电子开关,当编程电压脉冲对浮栅注入电子时,浮栅管电子开关,当编程电压脉冲对浮栅注入电子时,浮栅管截止截止(0状态状态);当浮栅中的电子泄放后,浮栅管回复导;当浮栅中的电子泄放后,浮栅管回复导通通(1状态状态)。控制栅控制栅与字线与字线 相连,控制信相连,控制信息的读出和写入息的读出和写入浮栅浮栅埋在二氧化硅绝缘层,埋在二氧化硅绝缘层,处于电处于电“悬浮悬浮”状态,状态,不与外部导通,注入电不与外部导通,注入电荷后可长期
16、保存荷后可长期保存自动化学院应用电子教学中心自动化学院应用电子教学中心253.可编程元件可编程元件-浮栅编程元件浮栅编程元件Flotox管剖面示意图与快闪存储器管剖面示意图与快闪存储器(FLASH)存储单元详见第存储单元详见第8章。章。自动化学院应用电子教学中心自动化学院应用电子教学中心263.可编程元件可编程元件基于基于SRAM的编程元件的编程元件 字线字线位位线线VCCVCCT自动化学院应用电子教学中心自动化学院应用电子教学中心273.可编程元件可编程元件基于基于SRAM的编程元件的编程元件大多数大多数FPGA用用SRAM来存储配置数据,所以来存储配置数据,所以又称为配置存储器。又称为配置
17、存储器。基本单元是由基本单元是由5个晶体管组成的存储器。个晶体管组成的存储器。由于由于SRAM是易失元件,是易失元件,FPGA每次上电必须每次上电必须重新加载数据,这些加载数据一般要存放到外重新加载数据,这些加载数据一般要存放到外加的加的EPROM中。中。自动化学院应用电子教学中心自动化学院应用电子教学中心289.2.2 PLA的基本结构的基本结构 ABCD或阵列或阵列(可编程可编程)与阵列与阵列(可编程可编程)自动化学院应用电子教学中心自动化学院应用电子教学中心299.2.2 PLA特点:与阵列、或阵列均可编程特点:与阵列、或阵列均可编程 将逻辑函数化简成最简的将逻辑函数化简成最简的“与或式
18、与或式”,根,根据最简的乘积项之和表达式来构成相应的据最简的乘积项之和表达式来构成相应的乘积项的或运算,从而减少了电路的规模。乘积项的或运算,从而减少了电路的规模。输出端有触发器,并反馈到与阵列输出端有触发器,并反馈到与阵列自动化学院应用电子教学中心自动化学院应用电子教学中心309.2.2 PLA 例:用例:用PLA实实现逻辑函数现逻辑函数CABABCCBAYCBACBAABCYCBACBAABCBAABCY210自动化学院应用电子教学中心自动化学院应用电子教学中心319.2.3 PAL1.基本结构基本结构ABCD或阵列或阵列(固定固定)与阵列与阵列(可编程可编程)自动化学院应用电子教学中心自
19、动化学院应用电子教学中心329.2.3 PAL2.PAL器件的特点器件的特点“与或阵列与或阵列”中或阵列固定、与阵列可编程的中或阵列固定、与阵列可编程的结构结构为了增强电路的功能和提高使用的灵活性,增为了增强电路的功能和提高使用的灵活性,增加了各种形式的输出电路和反馈结构,从而构加了各种形式的输出电路和反馈结构,从而构成了不同型号的成了不同型号的PAL器件。器件。自动化学院应用电子教学中心自动化学院应用电子教学中心333.PAL各种的输出电路各种的输出电路1/5专用输出结构专用输出结构一个引脚只能作为输出使用一个引脚只能作为输出使用自动化学院应用电子教学中心自动化学院应用电子教学中心343.P
20、AL各种的输出电路各种的输出电路2/5可编程输入可编程输入/输出结构输出结构通过对三态缓冲器控制端进行编程使得引脚作通过对三态缓冲器控制端进行编程使得引脚作为输入或输出使用。为输入或输出使用。自动化学院应用电子教学中心自动化学院应用电子教学中心353.PAL各种的输出电路各种的输出电路3/5寄存器输出结构:寄存器输出结构:乘积项之和送入到受全局时钟控制的乘积项之和送入到受全局时钟控制的D触发器触发器中,在时钟的上升沿到达中,在时钟的上升沿到达D触发器的输出触发器的输出自动化学院应用电子教学中心自动化学院应用电子教学中心363.PAL各种的输出电路各种的输出电路4/5异或寄存器输出结构:异或寄存
21、器输出结构:通过异或门后送入通过异或门后送入D触发器触发器自动化学院应用电子教学中心自动化学院应用电子教学中心373.异或寄存器输出结构异或寄存器输出结构应用应用&1I/OEN=1&m2m3m7F(A,B,C)=1F(A,B,C)65410,mmmmmCBAF732,mmmCBAF自动化学院应用电子教学中心自动化学院应用电子教学中心383.PAL各种的输出电路各种的输出电路5/5运算选通反馈结构运算选通反馈结构该电路结构在异或寄存器结构的基础上增加了反馈该电路结构在异或寄存器结构的基础上增加了反馈选通电路。选通电路。自动化学院应用电子教学中心自动化学院应用电子教学中心394.PAL应用举例应用
22、举例试用试用PAL16L8实现实现22乘法器乘法器(输入输入A1A0和和B1B0分别为两位二进制数,输出为结果分别为两位二进制数,输出为结果F3F2F1F0)。逻辑方程为:逻辑方程为:自动化学院应用电子教学中心自动化学院应用电子教学中心404.PAL应用举例应用举例自动化学院应用电子教学中心自动化学院应用电子教学中心419.3 GAL1.GAL概述概述由可编程的与阵列去驱动固定的或阵列由可编程的与阵列去驱动固定的或阵列GAL器件的每个输出引脚都接有一个输出逻器件的每个输出引脚都接有一个输出逻辑宏单元辑宏单元OLMC(Output Logic Macro Cell),基本组成结构基本组成结构输入
23、输入电路电路与门与门阵列阵列可编程的输出逻辑宏单元可编程的输出逻辑宏单元(OLMC)和或阵列结构和或阵列结构输入信号输入信号互补互补输入输入乘积项乘积项输出函数输出函数反馈输反馈输入信号入信号自动化学院应用电子教学中心自动化学院应用电子教学中心422.GAL的组成的组成8个输入缓冲器个输入缓冲器(29脚脚)与与8个反馈个反馈/输入缓冲器输入缓冲器8 8个与门可形成与阵列的个与门可形成与阵列的64个乘积项个乘积项8个输出逻辑宏单元个输出逻辑宏单元OLMC系统时钟系统时钟CLK(脚脚1)输入缓冲器输入缓冲器三态输出缓冲器的公用使能信号三态输出缓冲器的公用使能信号OE(脚脚11)的输入的输入缓冲器缓
24、冲器 自动化学院应用电子教学中心自动化学院应用电子教学中心433.输出逻辑宏单元输出逻辑宏单元OLMC 反馈数据选择器反馈数据选择器输出数据输出数据选择器选择器三态数据三态数据选择器选择器乘积项数乘积项数据选择器据选择器自动化学院应用电子教学中心自动化学院应用电子教学中心443.输出逻辑宏单元输出逻辑宏单元OLMC八输入或门八输入或门G1同同“与阵列与阵列”实现实现“与或与或”逻辑。逻辑。异或门异或门G3是极性控制门。是极性控制门。D触发器对异或门的输出起记忆作用,使触发器对异或门的输出起记忆作用,使OLMC组成时序逻辑电路。组成时序逻辑电路。四个数据选择器四个数据选择器乘积项数据选择器乘积项
25、数据选择器PTMUX三态数据选择器三态数据选择器TSMUX反馈数据选择器反馈数据选择器FMUX输出数据选择器输出数据选择器 自动化学院应用电子教学中心自动化学院应用电子教学中心454.OLMC的的5种组态种组态GAL16V8的的OLMC(n)宏单元有宏单元有5种组态种组态专用输入组态专用输入组态专用输出组态专用输出组态复合输入输出组态复合输入输出组态寄存器组态寄存器组态寄存器组合寄存器组合I/O组态组态自动化学院应用电子教学中心自动化学院应用电子教学中心461)专用输入组态专用输入组态在专用输入组态下在专用输入组态下OLMC的输出三态门被禁止,的输出三态门被禁止,此时只能接收相邻此时只能接收相
26、邻OLMC的输出,即本级的输出,即本级OLMC成为专用输入组态。成为专用输入组态。三态门的禁止使得输出通道上的全局控制信号如三态门的禁止使得输出通道上的全局控制信号如CLK、OE信号不再起作用。信号不再起作用。编号为编号为15和和16的的OLMC没有接至相邻输出逻辑宏没有接至相邻输出逻辑宏单元的连线,因此这两个输出逻辑宏单元用作专单元的连线,因此这两个输出逻辑宏单元用作专用输入组态时,不能作为相邻用输入组态时,不能作为相邻OLMC的输入信号的输入信号使用。使用。自动化学院应用电子教学中心自动化学院应用电子教学中心472)专用输出组态专用输出组态不受全局信号不受全局信号CLK和和OE的控制的控制
27、没有反馈到输入的与或阵列没有反馈到输入的与或阵列电路只用作输出,而且电路只用作输出,而且D触发器的输出被旁触发器的输出被旁路,因此专用输出组态是组合输出路,因此专用输出组态是组合输出自动化学院应用电子教学中心自动化学院应用电子教学中心483)反馈选通组合输出组态反馈选通组合输出组态 选通的含义是指乘积项之和经过异或门送选通的含义是指乘积项之和经过异或门送入三态缓冲器,该三态缓冲器受第一个乘入三态缓冲器,该三态缓冲器受第一个乘积项的控制选通输出。积项的控制选通输出。自动化学院应用电子教学中心自动化学院应用电子教学中心494)寄存器输出组态寄存器输出组态 乘积项数据选择器选择第一乘积项作为或乘积项
28、数据选择器选择第一乘积项作为或门输入;输出数据选择器选择门输入;输出数据选择器选择D触发器的输触发器的输出送入三态缓冲器,且三态缓冲器由全局出送入三态缓冲器,且三态缓冲器由全局使能信号来选通使能信号来选通。自动化学院应用电子教学中心自动化学院应用电子教学中心505)时序电路组合输出组态时序电路组合输出组态 至少有一个宏单元为寄存器输出模式,输至少有一个宏单元为寄存器输出模式,输出极性由出极性由XOR(n)来定来定自动化学院应用电子教学中心自动化学院应用电子教学中心519.4 复杂可编程逻辑器件复杂可编程逻辑器件CPLD1.CPLD基本结构与功能基本结构与功能CPLD的基本组成的基本组成 可编程
29、可编程I/O单元单元 可编程连线资源可编程连线资源 若干基本逻辑单若干基本逻辑单 元组成的逻辑块元组成的逻辑块自动化学院应用电子教学中心自动化学院应用电子教学中心521.CPLD的基本结构与功能的基本结构与功能基本逻辑单元是宏单元基本逻辑单元是宏单元(Macro Cell),宏单,宏单元的数量是器件容量的指标之一;元的数量是器件容量的指标之一;宏单元由宏单元由“与或阵列与或阵列”以及多路选择器等以及多路选择器等组成。其中组成。其中“与或阵列与或阵列”是实现逻辑运算是实现逻辑运算中中“与与”、“或或”运算。在表达式的形式运算。在表达式的形式上就是上就是乘积项的累加和乘积项的累加和。CPLD基于乘
30、积项结构实现逻辑功能。基于乘积项结构实现逻辑功能。自动化学院应用电子教学中心自动化学院应用电子教学中心53宏单元宏单元自动化学院应用电子教学中心自动化学院应用电子教学中心541.CPLD的基本结构与功能的基本结构与功能CPLD内部也有一些可编程的触发器,包含内部也有一些可编程的触发器,包含时钟、复位时钟、复位/置位等功能。置位等功能。CPLD也能实现时序逻辑电路。也能实现时序逻辑电路。触发器一般指触发器一般指D触发器触发器触发器的可编程是指对触发器的可编程是指对clk、en、clear、preset进行编程。进行编程。自动化学院应用电子教学中心自动化学院应用电子教学中心55可编程资源可编程资源
31、自动化学院应用电子教学中心自动化学院应用电子教学中心561.CPLD的基本结构与功能的基本结构与功能CPLD内部的逻辑资源通过可编程连线连接内部的逻辑资源通过可编程连线连接在一起。在一起。CPLD的互联资源比较缺乏,且连线相对固的互联资源比较缺乏,且连线相对固定,因此定,因此CPLD的输入管脚到输出管脚的延的输入管脚到输出管脚的延时是可预测的,被称为时是可预测的,被称为Pin to Pin延时,该延时,该参数反映了参数反映了CPLD器件可以实现的最高频率,器件可以实现的最高频率,也就表明了也就表明了CPLD器件的速度等级。器件的速度等级。自动化学院应用电子教学中心自动化学院应用电子教学中心57
32、可编程连线可编程连线ALTERA公司的可编程连线通过一个门控公司的可编程连线通过一个门控电路来实现电路来实现 自动化学院应用电子教学中心自动化学院应用电子教学中心581.CPLD的基本结构与功能的基本结构与功能可编程输入输出单元可编程输入输出单元输入输出控制单元将每一根引脚独立配置成输输入输出控制单元将每一根引脚独立配置成输入、输出或双向工作方式。入、输出或双向工作方式。所有所有I/O引脚都有一个三态缓冲器。引脚都有一个三态缓冲器。自动化学院应用电子教学中心自动化学院应用电子教学中心591.CPLD的基本结构与功能的基本结构与功能总结总结CPLD通过通过“与或阵列与或阵列”实现逻辑函数功能;实
33、现逻辑函数功能;既能实现组合逻辑,也能实现时序逻辑;既能实现组合逻辑,也能实现时序逻辑;CPLD的时钟、使能、复位等信号一般是全局信号,的时钟、使能、复位等信号一般是全局信号,因此设计中不要任意使用时钟、使能、复位等信号;因此设计中不要任意使用时钟、使能、复位等信号;由于内部互联并不灵活,因此会出现内部资源充足,由于内部互联并不灵活,因此会出现内部资源充足,而设计不能编译适配的状况而设计不能编译适配的状况(需要优化设计需要优化设计)I/O引脚既能作为输入也能作为输出。引脚既能作为输入也能作为输出。CPLD的制造工艺是的制造工艺是EEPROM。自动化学院应用电子教学中心自动化学院应用电子教学中心
34、602.ISP在线可编程技术在线可编程技术ISP允许器件在焊接到允许器件在焊接到PCB板上之后对其进板上之后对其进行编程以及根据需要重新进行编程行编程以及根据需要重新进行编程自动化学院应用电子教学中心自动化学院应用电子教学中心61ISP接口接口ISP的专用引脚的专用引脚编程模式控制编程模式控制(TMS)编程时钟编程时钟(TCK)编程数据输入编程数据输入(TDI)编程数据输出编程数据输出(TDO)接口形式接口形式JTAG接口接口自动化学院应用电子教学中心自动化学院应用电子教学中心62ISP的优越性的优越性自动化学院应用电子教学中心自动化学院应用电子教学中心63附:附:Altera公司的公司的MA
35、X系列系列CPLD自动化学院应用电子教学中心自动化学院应用电子教学中心64附:附:MAX系列系列CPLD引脚的分类引脚的分类全局信号全局信号专用引脚专用引脚通用输入输出引脚通用输入输出引脚电源与地电源与地自动化学院应用电子教学中心自动化学院应用电子教学中心65附:附:MAX系列系列CPLD引脚的分类引脚的分类全局信号全局信号INPUT/GCLK1全局时钟信号全局时钟信号INPUT/GCLRn全局清零信号全局清零信号INPUT/OE1全局使能信号全局使能信号INPUT/OE2/GCLK2 全局使能全局使能/时钟信号时钟信号自动化学院应用电子教学中心自动化学院应用电子教学中心66附:附:MAX系列
36、系列CPLD引脚的分类引脚的分类专用引脚:专用引脚:TDI/TMS/TCK/TDO作用作用在线编程在线编程边界扫描边界扫描自动化学院应用电子教学中心自动化学院应用电子教学中心67附:附:MAX系列系列CPLD引脚的分类引脚的分类通用输入输出引脚通用输入输出引脚I/O可编程为:可编程为:IN/OUT/INOUT常见的状态为:高常见的状态为:高/低低/高阻高阻自动化学院应用电子教学中心自动化学院应用电子教学中心68附:附:MAX系列系列CPLD引脚的分类引脚的分类电源与地电源与地电源:电源:VCCINT/VCCIO地:地:GNDINT/GNDIOMAX系列系列CPLD将内核和将内核和IO引脚供电分
37、开引脚供电分开内核的供电电压较低,以降低功耗;内核的供电电压较低,以降低功耗;IO引脚引脚的供电较高,以便于接口。的供电较高,以便于接口。自动化学院应用电子教学中心自动化学院应用电子教学中心69附:附:电源与地电源与地内核电压内核电压 3.3V、2.5V或或1.8V 接受接受 2.5V、3.3V 或或者者 5.0V 输输入入输 出 电 位输 出 电 位标准标准 VCCIO自动化学院应用电子教学中心自动化学院应用电子教学中心709.5 现场可编程门阵列现场可编程门阵列 FPGA9.5.1 FPGA实现逻辑功能的电路结构实现逻辑功能的电路结构基于查找表基于查找表LUT实现逻辑功能实现逻辑功能基于多
38、路选择器实现逻辑功能基于多路选择器实现逻辑功能基于多级与非门实现逻辑功能基于多级与非门实现逻辑功能自动化学院应用电子教学中心自动化学院应用电子教学中心711.查找表查找表FPGA结构结构 查找表查找表LUT由静态存储器由静态存储器SRAM构成构成 LUT大多采用大多采用4输入输入161的的SRAM查找表LUT输入1输入2输入3输入4输出自动化学院应用电子教学中心自动化学院应用电子教学中心721.查找表查找表FPGA结构结构LUT自动化学院应用电子教学中心自动化学院应用电子教学中心731.查找表查找表FPGA结构结构 当输入变量多于当输入变量多于4个时,对逻辑函数需要作适当个时,对逻辑函数需要作
39、适当变换以适应查找表的结构要求,这一步在器件变换以适应查找表的结构要求,这一步在器件设计中称为逻辑分割,逻辑分割需要优化求解。设计中称为逻辑分割,逻辑分割需要优化求解。查找表与门查找表与门查找表与门d3.0d7.4d11.0自动化学院应用电子教学中心自动化学院应用电子教学中心742.多路开关多路开关FPGA结构结构利用多路开关对输入和选择信号进行配置,接到利用多路开关对输入和选择信号进行配置,接到固定电平或输入信号上,以实现逻辑功能固定电平或输入信号上,以实现逻辑功能MUX21二选一电路二选一电路A0A1SAB0B1SBFAFBFSC SDBSSAF)()()(1010BSBSSSASASSS
40、FBBDCAADC自动化学院应用电子教学中心自动化学院应用电子教学中心752.多级与非门多级与非门FPGA结构结构基于基于“与或与或”逻辑块的与非门结构,并用逻辑块的与非门结构,并用一个触发器和一个多路开关来选择组合逻一个触发器和一个多路开关来选择组合逻辑输出、寄存器输出或琐存器输出。辑输出、寄存器输出或琐存器输出。异或门可以形成更大的或函数,用来实现异或门可以形成更大的或函数,用来实现运算功能。运算功能。自动化学院应用电子教学中心自动化学院应用电子教学中心769.5.2 FPGA的基本结构与功能的基本结构与功能FPGA的基本组成的基本组成可编程可编程I/O单元单元可编程逻辑单元可编程逻辑单元
41、嵌入式嵌入式RAM块块布线资源布线资源嵌入式功能块嵌入式功能块硬核硬核RAM块块RAM块块RAM块块RAM块块DLLDLLDLLDLLCLBCLBCLBCLBIO控制块控制块自动化学院应用电子教学中心自动化学院应用电子教学中心779.5.2 FPGA的基本结构与功能的基本结构与功能基本逻辑单元包含了实现逻辑功能的硬件电路基本逻辑单元包含了实现逻辑功能的硬件电路查找表查找表(LUT),以及按照,以及按照1:1配置的配置的Register,它,它们的数量是衡量们的数量是衡量FPGA规模的重要指标。规模的重要指标。实现逻辑功能的基础:实现逻辑功能的基础:LUT用来实现组合逻辑用来实现组合逻辑Regi
42、ster完成时序逻辑设计,且资源丰富。完成时序逻辑设计,且资源丰富。FPGA是基于查找表结构实现逻辑功能的。是基于查找表结构实现逻辑功能的。查找表的输入变量的个数一般为查找表的输入变量的个数一般为4个。个。自动化学院应用电子教学中心自动化学院应用电子教学中心789.5.2 FPGA的基本结构与功能的基本结构与功能丰富的布线资源丰富的布线资源局部布线:指进出可编程逻辑单元的连线资源局部布线:指进出可编程逻辑单元的连线资源 通用布线:位于可编程逻辑单元行列之间的纵横间通用布线:位于可编程逻辑单元行列之间的纵横间隔中,它以通用布线矩阵为中心实现隔中,它以通用布线矩阵为中心实现FPGA内部的互内部的互
43、连连 I/O布线:在可编程逻辑单元和输入输出模块之间的布线:在可编程逻辑单元和输入输出模块之间的布线资源布线资源 全局布线:完成器件内部全局时钟和全局复位全局布线:完成器件内部全局时钟和全局复位/置位置位的布线的布线专用布线专用布线设计者一般不需要进行布线。若能够进行布线,设计者一般不需要进行布线。若能够进行布线,对系统设计的结果对系统设计的结果(速度和面积速度和面积)影响重大。影响重大。自动化学院应用电子教学中心自动化学院应用电子教学中心79丰富的布线资源丰富的布线资源自动化学院应用电子教学中心自动化学院应用电子教学中心80丰富的布线资源丰富的布线资源自动化学院应用电子教学中心自动化学院应用
44、电子教学中心81丰富的布线资源丰富的布线资源开关元件示例开关元件示例自动化学院应用电子教学中心自动化学院应用电子教学中心829.5.2 FPGA的基本结构与功能的基本结构与功能嵌入式嵌入式RAM块块容量不大容量不大被配置成各种形式的存储器被配置成各种形式的存储器内容可寻址的存储器内容可寻址的存储器(Content Addressable Memory)根据根据RAM还可以模拟实现还可以模拟实现ROM自动化学院应用电子教学中心自动化学院应用电子教学中心839.5.2 FPGA的基本结构与功能的基本结构与功能可编程输入输出可编程输入输出自动化学院应用电子教学中心自动化学院应用电子教学中心849.5
45、.2 FPGA的基本结构与功能的基本结构与功能可编程的输入输出单元可编程的输入输出单元可配置为不同的可配置为不同的I/O物理特性物理特性可灵活配置以适配不同的电气标准:可灵活配置以适配不同的电气标准:LVTTL、LVCMOS、SSTL、HSTL、LVDS、LVPECL、PCI等等通过调整匹配阻抗特性、上下拉电阻,可调整通过调整匹配阻抗特性、上下拉电阻,可调整输出驱动电流的大小输出驱动电流的大小自动化学院应用电子教学中心自动化学院应用电子教学中心859.5.3 内嵌功能单元内嵌功能单元内嵌功能单元内嵌功能单元通用程度较高的内嵌功通用程度较高的内嵌功能模块能模块PLL(精度在精度在ps级级)DLL
46、解决时钟错位解决时钟错位(Skew)、时钟抖动、时钟抖动(Jitter)等问题等问题理想时钟理想时钟抖动抖动自动化学院应用电子教学中心自动化学院应用电子教学中心861.PLLCyclone PLL结构示意图结构示意图自动化学院应用电子教学中心自动化学院应用电子教学中心879.5.3 内嵌功能单元内嵌功能单元2.DSP/CPU自动化学院应用电子教学中心自动化学院应用电子教学中心889.5.3 内嵌功能单元内嵌功能单元3.高速串行收发器高速串行收发器并行数据传输并行数据传输 线多占用板面积线多占用板面积 线间有干扰线间有干扰 每根线需要匹配电路每根线需要匹配电路串行数据传输串行数据传输 线少占用的
47、板面积减少;线少占用的板面积减少;信号的干扰降到最小;信号的干扰降到最小;相对于并行传输只用了一小部分的匹配电路相对于并行传输只用了一小部分的匹配电路 没有相位差的问题没有相位差的问题自动化学院应用电子教学中心自动化学院应用电子教学中心899.5.3 内嵌功能单元内嵌功能单元串行收发器串行收发器串行发送单元串行发送单元串行接收单元串行接收单元自动化学院应用电子教学中心自动化学院应用电子教学中心909.5.3 内嵌功能单元内嵌功能单元4.内嵌专用硬核内嵌专用硬核(Hard Core)面向高端特定市场的面向高端特定市场的FPGA自动化学院应用电子教学中心自动化学院应用电子教学中心91FPGA的总结
48、的总结FPGA是基于是基于LUT实现逻辑功能实现逻辑功能FPGA内部包含丰富的寄存器,适合时序逻辑电内部包含丰富的寄存器,适合时序逻辑电路的实现路的实现FPGA内部的连线丰富,长短不一,因此信号的内部的连线丰富,长短不一,因此信号的传输延时很难预测,传输延时很难预测,因此设计时要注意约束时序因此设计时要注意约束时序I/O引脚的配置灵活引脚的配置灵活FPGA是基于是基于SRAM工艺制造,掉电后配置信息工艺制造,掉电后配置信息会丢失会丢失自动化学院应用电子教学中心自动化学院应用电子教学中心929.6 可编程逻辑器件的开发应用可编程逻辑器件的开发应用 1.可编程逻辑器件的设计过程可编程逻辑器件的设计
49、过程 自动化学院应用电子教学中心自动化学院应用电子教学中心939.6 可编程逻辑器件的开发应用可编程逻辑器件的开发应用2.可编程逻辑器件的设计过程与设计原则可编程逻辑器件的设计过程与设计原则(1)改变电路结构,提高系统的速度。)改变电路结构,提高系统的速度。(2)采用流水线技术提高系统的速度。)采用流水线技术提高系统的速度。(3)系统地设计系统时钟。)系统地设计系统时钟。(4)避免毛刺对系统的影响。)避免毛刺对系统的影响。(5)树立硬件优先的思想。)树立硬件优先的思想。(6)采用分层次的模块化设计方法。)采用分层次的模块化设计方法。自动化学院应用电子教学中心自动化学院应用电子教学中心94本章小结(1)掌握可编程逻辑器件的基本知识)掌握可编程逻辑器件的基本知识(2)了解)了解PLA与与PAL(3)掌握)掌握GAL(4)掌握)掌握CPLD的电路结构与原理的电路结构与原理(5)掌握)掌握FPGA的电路结构与原理的电路结构与原理自动化学院应用电子教学中心自动化学院应用电子教学中心95第九章第九章 THE END数字电路与数字电路与系统设计系统设计