《第2章FPGACPLD结构与应用.ppt》由会员分享,可在线阅读,更多相关《第2章FPGACPLD结构与应用.ppt(69页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 2022/12/22可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2021/9/17 2021/9/1712 2022/12/222.1 PLD概述2.2 简单PLD工作原理2.3 CPLD结构与工作原理2.4 FPGA结构与工作原理2.5 FPGA/CPLDFPGA/CPLD测试技术2.6 FPGA/CPLDFPGA/CPLD产品概述产品概述2.7 CPLD/FPGA编程与配置可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.8 基于FPGA/CPLD的EDA开发流程第第2 2章章 FPGACPLD结构与应用结构与应用2021/9/17 2021/9/1723 2022/12
2、/222.1 可编程逻辑器件(可编程逻辑器件(PLDPLD)概述)概述1.按可编程部位分类:按可编程部位分类:PROMProgrammable Read Only Memory 可编程只读存储器PLAProgrammable Logic Array 可编程逻辑阵列 PALProgrammable Array Logic 可编程阵列逻辑GALGeneric Array Logic 通用阵列逻辑输输入入缓冲缓冲电路电路与与阵阵列列或或阵阵列列输出输出缓冲缓冲电路电路输输入入输输出出2.1.1 2.1.1 简单简单PLDPLD器件结构器件结构可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.1
3、.2 PLD2.1.2 PLD器件分类器件分类2021/9/17 2021/9/1734 2022/12/22CPLD Complex Programmable Logic Device 复杂可编程逻辑器件复杂可编程逻辑器件FPGA Field Programmable Gate Array 现场可编程门阵列现场可编程门阵列2.2.按按集成度分类:按按集成度分类:500门以下门以下2.1 可编程逻辑器件(可编程逻辑器件(PLDPLD)概述)概述可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2021/9/17 2021/9/174 2022/12/222.2 2.2 简单简单PLDPLD原
4、理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示 1 1、逻辑元件符号表示、逻辑元件符号表示可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2021/9/17 2021/9/175 2022/12/22可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2021/9/17 2021/9/176 2022/12/22可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2021/9/
5、17 2021/9/177 2022/12/22常用符号常用符号可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2021/9/17 2021/9/178 2022/12/22可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2021/9/17 2021/9/179 2022/12/22PLDP
6、LD中或阵列表示中或阵列表示可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2 2.2 简单简单PLDPLD原理原理2.2.1 2.2.1 逻辑原件符号表示逻辑原件符号表示2021/9/17 2021/9/1710 2022/12/222.2.2 2.2.2 PROMPROM结构原理结构原理地址译码器:地址译码器:用于完成用于完成PROMPROM存储阵列的行选择。存储阵列的行选择。PROMPROM器件组成器件组成:地址译码器地址译码器+存储单元阵列存储单元阵列+输出缓冲输出缓冲不可编程不可编程2.2 2.2 简单简单PLDPLD原理原理其逻辑函数是:其逻辑函数是:右式可看成是逻辑与运算
7、,所以右式可看成是逻辑与运算,所以可将可将PROMPROM地址译码器看成是一个地址译码器看成是一个与阵列与阵列与阵列与阵列可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2021/9/17 2021/9/1711 2022/12/22存储单元阵列:存储单元阵列:存放数据,输出函数。存放数据,输出函数。F0=Cp-1,0Wp-1+C1,0W1+C0,0W0F1=Cp-1,1Wp-1+C1,0,1W1+C0,1W0Fm-1=Cp-1,m-1Wp-1+C1,m-1W1+C0,m-1W0其中,其中,C Ci,j i,j 是系数,可取是系数,可取0 0、1 1。可见,可见,PROMPROM可以表示为
8、:可以表示为:固定与阵列固定与阵列和和可编程或阵列可编程或阵列两个阵列。两个阵列。PROMPROM器件组成器件组成:地址译码器地址译码器+存储单元阵列存储单元阵列+输出缓冲输出缓冲左式可看成是逻辑或运算,左式可看成是逻辑或运算,所以可将所以可将PROMPROM存储矩阵看存储矩阵看成是一个成是一个或阵列或阵列2.2.2 2.2.2 PROMPROM结构原理结构原理2.2 2.2 简单简单PLDPLD原理原理2021/9/17 2021/9/1712 2022/12/22与阵列与阵列或阵列或阵列两位输出两位输出可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术两位地址两位地址2.2.2 2.2.
9、2 PROMPROM结构原理结构原理2.2 2.2 简单简单PLDPLD原理原理2021/9/17 2021/9/17132021/9/17 2021/9/1714 2022/12/22问题:问题:与阵列是全译码,产生了全部最与阵列是全译码,产生了全部最小项,而在实际应用时,绝大多数组合小项,而在实际应用时,绝大多数组合逻辑函数并不需要所有的最小项。逻辑函数并不需要所有的最小项。PROMPROM器件组成器件组成 可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2.2 2.2.2 PROMPROM结构原理结构原理2.2 2.2 简单简单PLDPLD原理原理2021/9/17 2021/9
10、/1715 2022/12/22使与阵列和或阵列都可编程使与阵列和或阵列都可编程2.2.3 2.2.3 PLAPLA结构原理结构原理 任何组合逻辑函数都可以任何组合逻辑函数都可以化成化成与或表达式与或表达式。任何组合函数都可以采用任何组合函数都可以采用PLAPLA来实现来实现。新的问题:新的问题:PLA PLA的两个阵列可编程,导的两个阵列可编程,导致软件算法过于复杂,且器件致软件算法过于复杂,且器件的运行速度下降。的运行速度下降。使与阵列可编,或阵列固定使与阵列可编,或阵列固定。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2.2 2.2.2 PROMPROM结构原理结构原理2.2
11、 2.2 简单简单PLDPLD原理原理2021/9/17 2021/9/17162021/9/17 2021/9/17172021/9/17 2021/9/1718 2022/12/222.2.3 2.2.3 PALPAL结构原理结构原理0A1A1F0F0A1A1F0F2.2 2.2 简单简单PLDPLD原理原理可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术第第2 2章章 FPGACPLD结构与应用结构与应用2021/9/17 2021/9/1719 2022/12/22PAL16V8PAL16V8结构结构11100100R11100100RQQD11100100R11100100RVc
12、cSG1SL07SL17SG0SL0619 I/O711100100R11100100RQQD11100100R11100100RVccSG1SL06SL16SG1SL0618 I/O61CLK/I02I13I2078150 34 78121115 1619 2023 2427 2831允许输出端再馈入下一个与阵列允许输出端再馈入下一个与阵列。问题:问题:熔丝型,使用不便熔丝型,使用不便可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术可以实现时序系统。可以实现时序系统。2.2 2.2 简单简单PLDPLD原理原理2021/9/17 2021/9/1720可编程逻辑器件及可编程逻辑器件及ED
13、AEDA技术技术 2022/12/22第第2 2章章 可编程逻辑器件可编程逻辑器件OLMCOutput Logic Macro Cell 输出逻辑宏单元输出逻辑宏单元逻辑宏单元逻辑宏单元输入输入/输出口输出口输入口输入口时钟信时钟信号输入号输入三态控制三态控制可编程与阵列可编程与阵列固定或阵列固定或阵列GAL16V82.2.52.2.5 GALGAL结构原理结构原理2021/9/17 2021/9/1721(1)(1)寄存器模式寄存器模式寄存器输出结构:寄存器输出结构:异或门输出经异或门输出经D触触发器至三态门,触发器的时钟端发器至三态门,触发器的时钟端CLK连公共引脚,三态门的使能端连公共连
14、公共引脚,三态门的使能端连公共OE引脚,信号反馈来自触发器。引脚,信号反馈来自触发器。寄存器模式组合双向输出结构:寄存器模式组合双向输出结构:输输出三态门受控,输出反馈至本单元,出三态门受控,输出反馈至本单元,组合输出无触发器。组合输出无触发器。输出逻辑宏单元输出逻辑宏单元OLMCOLMC有三种输出模式。有三种输出模式。寄存器输出结构寄存器输出结构寄存器模式组合双向输出结构寄存器模式组合双向输出结构有两种输出结构有两种输出结构可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2.5 GAL结构原理结构原理2021/9/17 2021/9/1722(2)(2)复合模式复合模式输出逻辑宏单元
15、输出逻辑宏单元OLMCOLMC有三种输出模式。有三种输出模式。有两种输出结构有两种输出结构组合输出结构组合输出结构组合输出双向口结构组合输出双向口结构组合输出双向口结构:组合输出双向口结构:大致与寄存大致与寄存器模式下组合输出双向结构相同,器模式下组合输出双向结构相同,区别是引脚区别是引脚CLKCLK、OEOE在寄存器模式下在寄存器模式下为专用引脚,不可它用。为专用引脚,不可它用。组合输出结构:组合输出结构:无反馈,其他组合无反馈,其他组合输出双向口结构。输出双向口结构。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.2.5 GAL结构原理结构原理2021/9/17 2021/9/17
16、23可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术反馈输入结构:反馈输入结构:输出三态门被禁止,输出三态门被禁止,该单元的该单元的“与与-或或”阵列无输出功阵列无输出功能,但可作为相邻单元的信号反馈能,但可作为相邻单元的信号反馈输入端。输入端。输出反馈结构:输出反馈结构:输出三态门被恒定输出三态门被恒定打开,该单元的打开,该单元的“与与-或或”阵列具阵列具有输出功能,也具有反馈结构。有输出功能,也具有反馈结构。输出结构:输出结构:其输出反馈结构类同,其输出反馈结构类同,但单元的反馈无效。但单元的反馈无效。(3)(3)简单模式简单模式输出逻辑宏单元输出逻辑宏单元OLMCOLMC有三种输出模
17、式。有三种输出模式。有三种输出结构有三种输出结构2.2.5 GAL结构原理结构原理2021/9/17 2021/9/1724 2022/12/22 2.3 C 2.3 CPLDPLD结构与工作原理结构与工作原理CPLDCPLD结构结构CPLDCPLD中一般包含三个主要部分:中一般包含三个主要部分:逻辑阵列块逻辑阵列块-LAB-LAB 可编程连线阵列可编程连线阵列PIAPIA I/OI/O控制块控制块MAX3000A的结构的结构2.3.1逻辑阵列块(逻辑阵列块(LABLAB)每每个个LABLAB由由1616个个宏宏单单元元阵阵列列组组成成,多多个个LABLAB通通过过可可编编程程连连线线阵阵列列
18、(PIAPIA)和和全全局局总总线线连连接接在在一一起起,全全局局总总线线由由所所有有的的专专用用输输入入、I/OI/O引引脚脚和和宏宏单单元元馈给信号。馈给信号。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2021/9/17 2021/9/1725宏单元宏单元可以被单独配置为可以被单独配置为时序逻辑时序逻辑和和组合逻辑组合逻辑工作方式。工作方式。逻辑阵列逻辑阵列 宏单元由三个功能模块组成:宏单元由三个功能模块组成:乘积项选择矩阵乘积项选择矩阵 可编程寄存器可编程寄存器可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.3 C2.3 CPLDPLD结构与工作原理结构与工作原理202
19、1/9/1726可配置可配置寄存器寄存器编程编程单元单元 2022/12/22PRNCLRNENA逻辑阵列全局清零共享逻辑扩 展 项清零时钟清零选择寄 存 器旁路并行扩 展 项通往 I/O模块通往 PIA乘积项选择矩阵来自 I/O引脚全局时钟QDEN来自来自 PIA的的 36个信号个信号快速输入选择快速输入选择2MAX3000A的宏单元结构的宏单元结构2.3 C2.3 CPLDPLD结构与工作原理结构与工作原理时钟时钟/使能使能选择选择2021/9/17 2021/9/17272.3.22.3.2 可编程连线阵列(可编程连线阵列(PIAPIA)PIAPIA把把器器件件中中任任一一信信号号源源连
20、连接接到到其其目目的的地地,所所有有MAXMAX3 3000A000A的的专专用用输输入入、I/OI/O引引脚脚和和宏宏单单元元输输出出均均馈馈送送到到PIAPIA,PIAPIA可可把这些信号送到器件内的各个地方,完成特定任务。把这些信号送到器件内的各个地方,完成特定任务。图示了图示了PIAPIA的信号是如何布线到的信号是如何布线到LABLAB的。的。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.3 C2.3 CPLDPLD结构与工作原理结构与工作原理编程编程单元单元2021/9/17282.3.32.3.3 I/O I/O控制块控制块 输输入入输输出出控控制制单单元元是是内内部部信
21、信号号到到I/OI/O引引脚脚的的接接口口部部分分,可可控控制制I/OI/O引引脚脚单单独独地地配配置置为为输入、输出或双向工作方式。输入、输出或双向工作方式。图图示示,所所有有I/OI/O引引脚脚都都有有一一个个三三态态缓缓冲冲器器。当当三三态态缓缓冲冲器器的的控控制制端端接接到到地地时时,其其输输出出为为高高阻阻态态,此此时时I/OI/O引引脚脚可可作作专专用输入引脚,用输入引脚,当接高电平时,输出使能有效。当接高电平时,输出使能有效。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.3 C2.3 CPLDPLD结构与工作原理结构与工作原理数据选择器选择一路作为控制使能信号。数据选择
22、器选择一路作为控制使能信号。MAX3000AMAX3000A系列器件的系列器件的I/OI/O控制块控制块2021/9/17 2021/9/17292.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.12.4.1 FPGA FPGA分类分类 从逻辑功能块结构上分类,可分为:从逻辑功能块结构上分类,可分为:大部分大部分FPGAFPGA采用基于采用基于SRAM(SRAM(静态随机存储器静态随机存储器)的查找表逻辑的查找表逻辑形成结构。形成结构。查找表查找表Look Up TableLook Up Table(LUTLUT),),是可编程最小逻辑单元。是可编程最小逻辑单元。二二 查找表
23、单元结构查找表单元结构 一个一个N N输入的输入的LUTLUT可以实现可以实现N N个输入个输入变量的任何逻辑功能变量的任何逻辑功能。可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术查找表结构查找表结构多路开关结构多路开关结构多级与非门结构多级与非门结构 2021/9/17 2021/9/17302.4.22.4.2 查找表单元结构查找表单元结构四输入四输入161161RAMRAM可编程逻辑器件及可编程逻辑器件及EDAEDA技术技术2.4 FPGA2.4 FPGA结构与工作原理结构与工作原理 一个四输入的一个四输入的LUTLUT可以实现四个输入变量的任意逻辑函数可以实现四个输入变量的任意逻
24、辑函数。2021/9/17 2021/9/17312.4.3 Cyclone III2.4.3 Cyclone III系列器件的结系列器件的结构与原理构与原理 2.4 FPGA2.4 FPGA结构与工作原理结构与工作原理IEIE是是Cyclone III FPGACyclone III FPGA器件的最基本的可编程单元器件的最基本的可编程单元2021/9/17 2021/9/17322.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021/9/17 2021/9/17332
25、.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021/9/17 2021/9/17342.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021/9/17 2021/9/17352.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021
26、/9/17 2021/9/17362.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021/9/17 2021/9/17372.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构与原理系列器件的结构与原理 2021/9/17 2021/9/17382.4 FPGA2.4 FPGA结构与工作原理结构与工作原理2.4.3 Cyclone III2.4.3 Cyclone III系列器件的结构
27、与原理系列器件的结构与原理 2021/9/17 2021/9/17392.2.5 5 硬件测试硬件测试2.5.1 2.5.1 内部逻辑测试内部逻辑测试 2.5.2 JTAG2.5.2 JTAG边界扫描测试边界扫描测试 JTAGJoint Test Action GroupJTAGJoint Test Action Group联合联合测试行动组。测试行动组。测试引线间隔致密的电路板上集成电路芯片的能力。测试引线间隔致密的电路板上集成电路芯片的能力。大多数大多数CPLD/FPGACPLD/FPGA厂家的器件遵守厂家的器件遵守IEEEIEEE规范,并为输入引规范,并为输入引脚和输出引脚以及专用引脚提
28、供了边界扫描测试脚和输出引脚以及专用引脚提供了边界扫描测试(Board Scan(Board Scan TestTest,BST)BST)的能力。的能力。2021/9/17 2021/9/17402.2.5 5 硬件测试硬件测试2.5.2 JTAG2.5.2 JTAG边界扫描测试边界扫描测试 2021/9/17 2021/9/17412.2.5 5 硬件测试硬件测试2.5.2 JTAG2.5.2 JTAG边界扫描测试边界扫描测试 在芯片内部核心逻辑电路与在芯片内部核心逻辑电路与I/OI/O脚间都增加脚间都增加了寄存器电路,通过将这些了寄存器电路,通过将这些I/OI/O上的寄存器上的寄存器连接起
29、来,可以将测试数据串行输入到被连接起来,可以将测试数据串行输入到被测单元,并从相应端口串行读出。测试关测单元,并从相应端口串行读出。测试关键逻辑。键逻辑。可以实现三方面测试可以实现三方面测试 1 1 芯片级测试;芯片级测试;2 2 板级板级测试;测试;3 3 系统级测试。系统级测试。2021/9/17 2021/9/17422.2.5 5 硬件测试硬件测试2.5.2 JTAG2.5.2 JTAG边界扫描测试边界扫描测试 涉及涉及的端的端口:口:TCLKTCLK、TMSTMS、TDITDI、TDOTDO、TRSTTRST2021/9/17 2021/9/1743 TRSE TRSE(测试复位端口
30、)(测试复位端口)2 2 端口说明端口说明 TMS TMS(Test Mode Select,Test Mode Select,测试模式选择端口)测试模式选择端口)TDI TDI(Test Data In,Test Data In,测试数据输入端口)测试数据输入端口)TDO TDO(Test Data Out,Test Data Out,测试数据输出端口)测试数据输出端口)当器件工作在当器件工作在JTAG BST模式时,使用四个模式时,使用四个I/O引脚和一个引脚和一个可选引脚可选引脚TRST作为作为JTAG引脚。引脚。TCLK TCLK(Test Clock,Test Clock,测试时钟端
31、口)测试时钟端口)2021/9/17 2021/9/17442 2 端口说明端口说明 TDITDI:串行方式输入数据。串行方式输入数据。一种是指令数据,送入指令寄存器,一种是指令数据,送入指令寄存器,另一种是测试数据,输入到相应的边界扫描寄存器中。另一种是测试数据,输入到相应的边界扫描寄存器中。TDOTDO:以串行方式输出的数据有两种。以串行方式输出的数据有两种。一种是从指令寄存器移出来的指令,一种是从指令寄存器移出来的指令,另一种是从边界扫描寄存器中移位出来的数据。另一种是从边界扫描寄存器中移位出来的数据。2021/9/17 2021/9/17452 2 端口说明端口说明 TCLKTCLK:
32、边界扫描测试时钟是独立的,与核心逻辑时钟无关,但边界扫描测试时钟是独立的,与核心逻辑时钟无关,但可以复用。可以复用。TMS TMS:在测试过程中,在测试过程中,TMSTMS控制控制测试电路于数据捕获、移位、测试电路于数据捕获、移位、暂停等不同工作模式。暂停等不同工作模式。该信号在测试时钟上升沿被采集数据,在非测试状态下是高电平该信号在测试时钟上升沿被采集数据,在非测试状态下是高电平。2021/9/17 2021/9/17463 TAP3 TAP控制器控制器 TAPTAP控制器的作用是将串行输入的控制器的作用是将串行输入的TMSTMS信号进行译码,使边界扫描信号进行译码,使边界扫描系统进入相应的
33、测试模式,并产生所需的各控制信号。系统进入相应的测试模式,并产生所需的各控制信号。4 4 寄存器组寄存器组 JTAG BSTJTAG BST需要的寄存器:需要的寄存器:指令寄存器指令寄存器用来决定进行哪种测试或访问数据寄存器操作。用来决定进行哪种测试或访问数据寄存器操作。旁路寄存器旁路寄存器11位寄存器,提供位寄存器,提供TDITDI和和TDOTDO的最小通道。的最小通道。标志寄存器标志寄存器其内容有关该器件的版本号、型号、制造产商。其内容有关该器件的版本号、型号、制造产商。边界扫描寄存器边界扫描寄存器由器件引脚上的所有边界扫描单元构成。由器件引脚上的所有边界扫描单元构成。2021/9/17
34、2021/9/1747第2章 可编程逻辑器件2.5.2 2.5.2 边界扫描测试标准边界扫描测试标准IEEE1149.1IEEE1149.12.5 FPGA/CPLD2.5 FPGA/CPLD测试测试5 5 端口上端口上JTAG BSTJTAG BST与器件的关联结构与器件的关联结构 JTAG BSTJTAG BST与器件与器件I/OI/O引脚关联电路是:引脚关联电路是:3 3位字宽的边界扫描单元。位字宽的边界扫描单元。每个边界扫描单元包括一套捕每个边界扫描单元包括一套捕获寄存器和一套更新寄存器。获寄存器和一套更新寄存器。2021/9/172021/9/17485.JTAG BST5.JTAG
35、 BST系统与系统与FPGAFPGA关联结构关联结构2.5.2 2.5.2 边界扫描测试标准边界扫描测试标准IEEE1149.1IEEE1149.12.5 FPGA/CPLD2.5 FPGA/CPLD测试测试第2章 可编程逻辑器件2021/9/172021/9/17495.JTAG BST5.JTAG BST系统与系统与FPGAFPGA关联结构关联结构2.5.2 2.5.2 边界扫描测试标准边界扫描测试标准IEEE1149.1IEEE1149.12.5 FPGA/CPLD2.5 FPGA/CPLD测试测试第2章 可编程逻辑器件进入边界测试状态时进入边界测试状态时2021/9/172021/9/
36、1750选择命令模式时序选择命令模式时序 TCK TCK(Test Clock,Test Clock,测试时钟端口)测试时钟端口)TMS TMS(Test Mode Select,Test Mode Select,测试模式选择端口)测试模式选择端口)TDI TDI(Test Data In,Test Data In,测试数据输入端口)测试数据输入端口)TDO TDO(Test Data Out,Test Data Out,测试数据输出端口)测试数据输出端口)上电后,上电后,TAPTAP处于复位状态,处于复位状态,BSTBST电路无效电路无效从从TMSTMS加数据,使加数据,使TAPTAP进入相
37、应状态进入相应状态2021/9/172021/9/1751选择命令模式时序选择命令模式时序 TMSTMS端加数据端加数据移出移出IRIR初始化数据初始化数据保持低电平,保持低电平,TAPTAP状态不变状态不变0 01 11 10 00 0TMSTMS端为高电平端为高电平2021/9/172021/9/17522 2.6 .6 FPGA/CPLDFPGA/CPLD产品概述产品概述2.6.1 Lattice公司公司CPLD器件主要系列器件主要系列ispLSI器件系列器件系列ispLSI1000E系列ispLSI2000E/2000VL/200VE系列ispLSI5000V系列ispLSI 8000
38、/8000V系列第2章 可编程逻辑器件2.ACEX系列FPGA3.FLEX系列FPGA4.MAX系列CPLD2 2.6.2 Altera公司公司FPGAFPGA和和CPLDCPLD器件器件主要主要系列系列1.Stratix 系列FPGA2.6.3 Xilinx公司的公司的FPGAFPGA和和CPLDCPLD器件系列器件系列1.Virtex-4系列FPGA2.Spartan器件系列3.XC9500系列CPLD2021/9/172021/9/17532.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件(1 1)基于电可擦除存储单元的)基于电可擦除存储单元的EEPROMEEPR
39、OM或或FlashFlash技术。技术。(2 2)基于)基于SRAMSRAM查找表的编程单元。查找表的编程单元。(3 3)基于一次性可编程反熔丝编程单元。)基于一次性可编程反熔丝编程单元。目前常见的大规模可编程逻辑器件的编程工艺有三种:目前常见的大规模可编程逻辑器件的编程工艺有三种:CPLDCPLD中采用电可擦除存储单元,一旦被编程,掉电后可以保中采用电可擦除存储单元,一旦被编程,掉电后可以保存。存。FPGA FPGA中采用中采用SRAMSRAM查找表的编程单元,编程信息保存在查找表的编程单元,编程信息保存在SRAMSRAM中,中,掉电后编程信息立即丢失,下次上电要重新载入编程信息。掉电后编程
40、信息立即丢失,下次上电要重新载入编程信息。又称为又称为重新配置重新配置-ICR-ICR。同时在不改变电路连接关系情况下,可以对同时在不改变电路连接关系情况下,可以对CPLDCPLD内部改写,内部改写,又称为又称为在系统可编程在系统可编程-ISP-ISP。2021/9/172021/9/17542.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2.7.1 2.7.1 FPGAFPGA配置配置方式方式 SRAM SRAM的易失性,每次上电时,数据都必须重新的易失性,每次上电时,数据都必须重新配置。配置。FPGAFPGA器件主要有两种配置模式:器件主要有两种配置模式:主动配置
41、主动配置和和被动配置被动配置主动配置主动配置被动配置被动配置ASActive Serial ASActive Serial 主动串行模式,使用串行配置器件配置。主动串行模式,使用串行配置器件配置。PSPassive Serial PSPassive Serial 被动串行模式,使用普通配置器件配置。被动串行模式,使用普通配置器件配置。PPSPassive Parallel Synchronous PPSPassive Parallel Synchronous 被动并行同步模式。被动并行同步模式。PPAPassive Parallel Asynchronous PPAPassive Parall
42、el Asynchronous 被动并行异步模式。被动并行异步模式。PSAPassive PSAPassive Serial Serial Asynchronous Asynchronous 被动串行异步模式。被动串行异步模式。JTGAJTGA模式。使用下载电缆通过模式。使用下载电缆通过JTGAJTGA口配置。口配置。2021/9/172021/9/1755JTAG配置端口FPGAPS配置端口PC机配置适配电路配置适配电路配置器件配置器件或配置电或配置电路路AS配置端口专用专用FLASHFLASH配置器件配置器件2.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2.7.
43、1 2.7.1 FPGAFPGA配置配置方式方式2021/9/172021/9/1756此接口既可作编此接口既可作编程下载口,也可作程下载口,也可作JTAGJTAG接口接口 ALTERA 的 ByteBlaster(MV)下载接口2.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2021/9/172021/9/1757 ALTERA 的 ByteBlaster(MV)下载接口2.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2021/9/172021/9/17582.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2.7.2
44、 2.7.2 使用使用PCPC并行口配置并行口配置FPGAFPGAnFPGAFPGA可使用多种配置模式,这些模式通过可使用多种配置模式,这些模式通过FPGAFPGA上的模式选择引上的模式选择引脚:脚:MSEL0MSEL0、MSEL1 MSEL1上设定的电平来决定。参上设定的电平来决定。参见课本见课本P.63P.632021/9/172021/9/17592.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2.7.2 2.7.2 使用使用PCPC并行口配置并行口配置FPGAFPGAFPGA器件配置连线图器件配置连线图 作为作为PSPS配置模式,配置模式,配置模式控制信号配置
45、模式控制信号脚脚MSEL1MSEL1和和MSEL0MSEL0都都接地!接地!被动串行配置模式被动串行配置模式10针标准针标准配置配置/下载接口下载接口通过配置电路通过配置电路与与PCPC机的并行机的并行接口相接接口相接2021/9/172021/9/1760图3-50 多FPGA芯片配置电路初始化指令初始化指令输出低电平,输出低电平,初始化进行初始化进行初始化结束初始化结束输出高电平输出高电平2021/9/172021/9/1761图3-50 多FPGA芯片配置电路2021/9/172021/9/1762由于由于FPGAFPGA易失性,上电后自动配置对于易失性,上电后自动配置对于FPGAFPG
46、A来说是必需的。来说是必需的。配置方法有很多,专用串行配置方法有很多,专用串行PROMPROM器件是其中之一。器件是其中之一。PROMPROM器件提供并行接口,配置器件器件提供并行接口,配置器件EPC1EPC1、EPC2EPC2、EPC1441EPC1441等等 。FPGA的配置电路原理图的配置电路原理图2 2.7.3 .7.3 用配置器件配置用配置器件配置FPGAFPGA2.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2021/9/172021/9/17632 2.7.3 .7.3 用配置器件配置用配置器件配置FPGAFPGA2.7 CPLD和和FPGA的编程与配置
47、的编程与配置第2章 可编程逻辑器件2021/9/172021/9/1764用89C52进行配置2.7 CPLD和和FPGA的编程与配置的编程与配置第2章 可编程逻辑器件2 2.7.4 .7.4 使用单片机配置使用单片机配置FPGAFPGA2021/9/172021/9/17652021/9/172021/9/17662 2.6 .6 FPGA/CPLDFPGA/CPLD产品概述产品概述2021/9/17 2021/9/17672021/9/17 2021/9/1768习习 题题2-1 什么是基于乘积项的可编程逻辑结构?什么是基于查找表的可编程逻辑结构?2-2 FPGA系列器件中的EAB有何作用?2-3 与传统测试技术相比,边界扫描技术有何优点?2-4 解释编程与配置这两个概念。2021/9/17 2021/9/1769