第2章-可编程逻辑器件设计方法.pdf
《第2章-可编程逻辑器件设计方法.pdf》由会员分享,可在线阅读,更多相关《第2章-可编程逻辑器件设计方法.pdf(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、可编程逻辑器件原理 主主 讲:何宾讲:何宾 Email: 2013.09 LOGO 内容概述 可编程逻辑器件(Programmable Logic Device,PLD)产生于上世纪70年代,是在专用集成电路(Application Specific Integrated Circuit,ASIC)基础上发展起来的一种新型逻辑器件,是当今数字系统设计的主要硬件平台。其其主要主要特点特点表现表现在基于芯片内提供的通用逻辑设计资源和互在基于芯片内提供的通用逻辑设计资源和互连线,设计者可以在芯片内“定制”数字硬件系统。连线,设计者可以在芯片内“定制”数字硬件系统。注意:由于注意:由于XilinxXi
2、linx将模拟器件也定制到了数字硬件系统中,所以,设计者将模拟器件也定制到了数字硬件系统中,所以,设计者可以在芯片内“定制”数字和模拟混合系统。可以在芯片内“定制”数字和模拟混合系统。可编程逻辑器件制造工艺 熔丝连接技术(PROM)在在这种技术的器件中,所有逻辑的连接都是靠熔丝这种技术的器件中,所有逻辑的连接都是靠熔丝连接的连接的。熔丝器件是一次可编程的,一旦编程,永久不能熔丝器件是一次可编程的,一旦编程,永久不能改变。改变。思考题:这种工艺的优势和劣势?思考题:这种工艺的优势和劣势?可编程逻辑器件制造工艺 反熔丝连接技术 反熔丝技术和熔丝技术相反,在未编程时反熔丝技术和熔丝技术相反,在未编程
3、时,未,未编程时,成高阻编程时,成高阻状态。编程结束后,形成连接。反熔丝器件是一次可编程的,一状态。编程结束后,形成连接。反熔丝器件是一次可编程的,一旦编程,永久不能改变旦编程,永久不能改变。(注:优势和劣势和前面一样)(注:优势和劣势和前面一样)可编程逻辑器件制造工艺 SRAM技术 基于静态存储器基于静态存储器SRAM的可编程器件,值被保存在的可编程器件,值被保存在SRAM的晶的晶体管中。只要供电,器件信息体管中。只要供电,器件信息就不会就不会丢失。特点:丢失。特点:(1)SRAM存储数据需要消耗大量的硅存储数据需要消耗大量的硅面积面积 (2)断电)断电后数据丢失后数据丢失。(3)这种)这种
4、器件可以反复的编程和修改器件可以反复的编程和修改。绝大多数的绝大多数的FPGA都采用这种工艺,这就是为什么都采用这种工艺,这就是为什么FPGA外部都外部都需要有一个需要有一个PROM芯片来保存设计代码的原因。芯片来保存设计代码的原因。思考题:此处所说的“设计代码”的含义是什么?思考题:此处所说的“设计代码”的含义是什么?可编程逻辑器件制造工艺 WL BL V DD M 5 M 6 M 4 M 1 M 2 M 3 BL Q Q 配置控制 读/写控制 数据IO 可编程逻辑器件制造工艺 掩膜技术(ROM)ROM是非易失性是非易失性的器件。系统的器件。系统断电后,信息被保留在存储单断电后,信息被保留在
5、存储单元中元中。ROM单元保存了行和列数据,形成一个阵列,每一列有负单元保存了行和列数据,形成一个阵列,每一列有负载电阻使其保持逻辑载电阻使其保持逻辑1,每个行列的交叉有一个,每个行列的交叉有一个关联晶体管关联晶体管和一个和一个掩膜连接掩膜连接。其特点:。其特点:(1)可以读出信息,)可以读出信息,但是不能写入信息但是不能写入信息。(2)这种技术实现代价)这种技术实现代价比较高比较高,在实际中很少,在实际中很少使用。使用。可编程逻辑器件制造工艺 掩膜技术(ROM)A0An-1 W0 W(2n-1)可编程逻辑器件制造工艺 PROM技术(熔丝连接)PROM是非易失性的,系统断电后,信息被保留在存储
6、单元中是非易失性的,系统断电后,信息被保留在存储单元中。PROM单元保存了行和列数据,形成一个阵列,每一列有负载电单元保存了行和列数据,形成一个阵列,每一列有负载电阻使其保持逻辑阻使其保持逻辑1,每个行列的交叉有一个关联晶体管和一个掩膜,每个行列的交叉有一个关联晶体管和一个掩膜连接连接。特点:。特点:(1)PROM器件可以编程一次,以后只能读数据而不能写入器件可以编程一次,以后只能读数据而不能写入新的数据。新的数据。(2)如果可以多次编程就成为)如果可以多次编程就成为EPROM,EEPROM技术。技术。可编程逻辑器件制造工艺 可编程逻辑器件制造工艺 FLASH技术 FLASH技术的芯片的檫除的
7、速度比技术的芯片的檫除的速度比PROM技术要快的多。技术要快的多。FLASH技术可采用多种结构,与技术可采用多种结构,与EPROM单元类似的具有一个浮单元类似的具有一个浮置栅晶体管单元和置栅晶体管单元和EEPROM器件的薄氧化层特性。器件的薄氧化层特性。可编程逻辑器件内部结构-PROM O 0 I 3 I 2 I 1 I 0 O 1 O 2 O 3 固定固定的与阵列的与阵列 可编程或阵列可编程或阵列 可编程逻辑器件内部结构-PAL 可编程与阵列可编程与阵列 固定的或阵列固定的或阵列 可编程逻辑器件内部结构-PLA 可编程与阵列可编程与阵列 可编程或阵列可编程或阵列 可编程逻辑器件内部结构-CP
8、LD CPLD 由完全可编程的与/或阵列以及宏单元库构成。与与/或阵列是可重新编程的,可以实现多种逻辑功能或阵列是可重新编程的,可以实现多种逻辑功能。宏单元可宏单元可实现组合或时序逻辑的功能模块,同时实现组合或时序逻辑的功能模块,同时还提供了还提供了真值真值或补码输出和以不同的路径反馈等额外的灵活性。或补码输出和以不同的路径反馈等额外的灵活性。可编程逻辑器件内部结构-CPLD XC9500 CPLD内部结构 CPLD芯片内部结构-功能块 FB内部使用积之和表示式(SOP)描述 CPLD芯片内部结构-功能块 可编程与阵列 36个输入提供了个输入提供了72个真和互补个真和互补信号,连接到信号,连接
9、到可编程的“与”可编程的“与”阵阵列,可以生成生成列,可以生成生成90个乘积项个乘积项。乘积项分配器 最多最多可用的可用的90个乘积项可以通过乘积项分配器分配到一个每个个乘积项可以通过乘积项分配器分配到一个每个宏单元宏单元。宏单元 CPLD芯片内部结构-宏单元 组合逻辑 触发器资源 全局设置/复位 全局时钟 乘积项时钟 乘积项复位 乘积项OE 至I/O块 到快速连接矩阵 额外的乘积项,来自其它宏 额外的乘积项,来自其它宏 乘积项设置 乘积项 分配器 CPLD芯片内部结构-快速连接矩阵 快速连接矩阵 功能块 功能块 I/O块 I/O块 线与 CPLD芯片内部结构-IO逻辑 到快速连接矩阵 到其他
10、宏单元 上拉电阻 用户可编程 地 抖动率 控制 I/O块 全局 OE 1 全局 OE 2 全局 OE 3 全局 OE 4 乘积项OE 宏单元 CPLD芯片内部结构-IO块 可编程逻辑器件内部结构-FPGA芯片的内部结构 现场可编程门阵列(Field Programmable Gate Array,FPGA)是在PAL、GAL、EPLD、CPLD等可编程器件的基础上进一步发展起来的,它是作为ASIC领域中的一种半定制电路而出现的。解决解决了定制电路的不足,又了定制电路的不足,又克服克服了原有可编程器件门电路有了原有可编程器件门电路有限的缺点。限的缺点。可编程逻辑器件内部结构-FPGA芯片的内部结
11、构 FPGA需要被反复烧写,它实现组合逻辑的基本结构不可能像ASIC那样通过固定的与非门来完成,而只能采用一种易于反复配置的结构。目前主流FPGA都采用了基于SRAM工艺的查找表结构,也有一些军品和宇航级FPGA采用Flash或者熔丝与反熔丝工艺的查找表结构。FPGA芯片的内部结构-查找表 由布尔代数理论可知,对于一个n输入的逻辑运算,不管是与或非运算还是异或运算等等,最多只可能存在2n种结果。如果如果事先将相应的结果存放于一事先将相应的结果存放于一个存贮个存贮单元,就相当于实现了单元,就相当于实现了与非门电路的功能。与非门电路的功能。FPGA通过通过烧写烧写文件,配置文件,配置查找表的查找表
12、的内容。从而,在内容。从而,在相同的电相同的电路情况下实现了不同的逻辑路情况下实现了不同的逻辑功能。功能。FPGA芯片的内部结构-4输入查找表 实际逻辑电路实际逻辑电路 LUT实现方式实现方式 a,b,c,d输入输入 逻辑输出逻辑输出 RAM地址地址 RAM中存储内容中存储内容 0000 0 0000 0 0001 0 0001 0.1111 1 1111 1 FPGA芯片的内部结构-4输入查找表 查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。目前目前,FPGA中多使用中多使用4输入的输入的LUT,所以每一个,所以每一个LUT可以看成可以看成一个有一个有4位地址
13、线的位地址线的RAM。设计者通过原理图或设计者通过原理图或HDL语言描述了一个语言描述了一个逻辑电路后逻辑电路后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能结果,并把真值开发软件会自动计算逻辑电路的所有可能结果,并把真值表(即结果)事先写入表(即结果)事先写入RAM。这样。这样,每输入一个信号进行逻辑运,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。出即可。FPGA芯片的内部结构-4输入查找表 LUT具有和逻辑电路相同的功能。实际上,LUT具有更快的执行速度和更大的规模。LUT具有下面的
14、特点:(1)LUT实现组合逻辑的功能由输入决定,而不是实现组合逻辑的功能由输入决定,而不是由复杂度由复杂度决定。决定。(2)LUT实现组合逻辑有固定的实现组合逻辑有固定的传输延迟。传输延迟。FPGA芯片的内部结构-6输入查找表 多年以来,四输入 LUT 一直是业界标准。但是,在65nm工艺条件下,相较于其它电路(特别是互连电路),LUT 的常规结构大大缩小。(1)一个具有四倍比特位的六输入)一个具有四倍比特位的六输入LUT(6-LUT)仅仅将仅仅将 CLB 面积提高了面积提高了15%-但是平均而言,每个但是平均而言,每个 LUT 上可集成的逻辑数量上可集成的逻辑数量却增加了却增加了40%。(2
15、)更更高的逻辑密度通常可以降低级联高的逻辑密度通常可以降低级联 LUT 的数目,并且的数目,并且改进关键路径延迟性能。改进关键路径延迟性能。FPGA芯片的内部结构-6输入查找表 新一代的FPGA 提供了真正的 6-LUT,可以将它用作逻辑或者分布式存储器,这时 LUT是一个64 位的分布式 RAM(甚至双端口或者四端口)或者一个32 位可编程移位寄存器。每个每个 LUT 具有两个输出,从而实现了五个变量的两个逻辑函具有两个输出,从而实现了五个变量的两个逻辑函数,存储数,存储32 x 2 RAM 比特,或者作为比特,或者作为16 x 2-bit 的移位寄存器进行的移位寄存器进行工作。工作。FPG
16、A芯片的内部结构-6输入查找表 4/6输入LUT实现8:1多路复用器的原理 FPGA芯片的内部结构(6输入查找表)对 FPGA芯片的内部结构-6输入查找表 XilinxSpartan-6 FPGA芯片的内部版图结构,随着FPGA集成度的不断增加,其功能不断的增强,新一代的FPGA芯片内部结构包含:GTP收发器收发器 CLB单元单元 PCI-E块块 IO组组 存储器存储器控制块控制块 块块存储器存储器 DSP模块模块 时钟时钟管理模块等管理模块等资源资源 FPGA芯片的内部结构-可配置逻辑块(CLB)可配置的逻辑块(Configurable Logic Block,CLB)包含两个包含两个Sli
17、ce 连接到开关阵列连接到开关阵列用于用于 布线布线到其它到其它FPGA资源资源 进位链垂直通过进位链垂直通过Slice0 Switch Matrix Slice0 Slice1 CIN COUT FPGA芯片的内部结构-CLB 可配置的逻辑块(Configurable Logic Block,CLB)是主 要的逻辑资源,用于实现顺序和组合逻辑电路。每个每个CLB连接到一个开关矩阵用于访问通用的布线资源连接到一个开关矩阵用于访问通用的布线资源。一一个个CLB包含一对切片包含一对切片Slice。这这两个切片没有直接的相互连接,每个切片通过列组织在两个切片没有直接的相互连接,每个切片通过列组织在一
18、一起。起。对于对于每个每个CLB,CLB底下的切片标号为底下的切片标号为LICE(0),CLB上面上面的切片标号为的切片标号为SLICE(1)。FPGA芯片的内部结构-可配置逻辑块(CLB)SLICEM:充分的slice LUT能用于逻辑和存储器能用于逻辑和存储器/SRL 有宽的多路复用器和进位链有宽的多路复用器和进位链 SLICEL:只有逻辑和算术运算 LUT 只能用于逻辑只能用于逻辑(不能用于存储器不能用于存储器)有宽的多路复用器和进位链有宽的多路复用器和进位链 SLICEX:只有逻辑 LUT 只能用于逻辑只能用于逻辑(不能用于存储器不能用于存储器)没有宽的多路复用器和进位链没有宽的多路复
19、用器和进位链 SLICEX SLICEM SLICEX SLICEL 或者或者 FPGA芯片的内部结构-CLB FPGA芯片的内部结构-CLB X后面的数字标识切片对内每个切片的位置,以及切片列的位置。X编号计算切片位置从底部以编号计算切片位置从底部以顺序顺序0,1开始计算(第开始计算(第1列列CLB););2,3(第第2列列CLB)Y编号后的数字标识切片的行位置。FPGA芯片的内部结构-CLB 四个LUTs 8个存储元素 4个触发器个触发器/锁存器锁存器 4个触发器个触发器 F7MUX和F8MUX 间接到间接到LUT输出创建多功能输出创建多功能 输出能驱动触发器输出能驱动触发器/锁存器锁存器
20、 进位链(只有Slice0)连接到连接到LUT和和4个触发器个触发器/锁存器锁存器 LUT/RAM/SRL LUT/RAM/SRL LUT/RAM/SRL LUT/RAM/SRL 0 1 FPGA芯片的内部结构-可配置逻辑块(CLB)LUT6 8个寄存器个寄存器 进位逻辑进位逻辑 多功能的多路复用多功能的多路复用 分布式分布式RAM/SRL逻辑逻辑 SliceM(25%)SliceL(25%)SliceX(50%)LUT6 8 个寄存器个寄存器 进位逻辑进位逻辑 多功能的多路复用多功能的多路复用 LUT6 为逻辑进行优化为逻辑进行优化 8个寄存器个寄存器 混合选择混合选择Slice,用于在成本
21、、功耗和性能之间进行权衡,用于在成本、功耗和性能之间进行权衡 FPGA芯片的内部结构-可配置逻辑块(CLB)带有双输出的6输入LUT 5-LUT D A5 A4 A3 A2 A1 5-LUT D A5 A4 A3 A2 A1 A6 A5 A4 A3 A2 A1 O6 O5 6-LUT 带有5个公共输入的LUT 输入输入LUTLUT的最小速度的影响的最小速度的影响 1 1个或两个输出个或两个输出 六个变量的任何函数或者六个变量的任何函数或者 5 5变量的两个独立的函数变量的两个独立的函数 Slice触发器触发器和锁存器和锁存器-触发器触发器/锁存器控制锁存器控制 所有的触发器和触发器/锁存器共享
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 逻辑 器件 设计 方法
限制150内