- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
查找表型FPGA的可编程逻辑块是查找表,由查找表构成函数发生器,通过查找表来实现逻辑函数。 查找表的物理结构是静态存储器(SRAM)。M个输入项的逻辑函数可以由一个2M位容量的SRAM实现,函数值存放在SRAM中。SRAM的地址线起输入线的作用,地址即输入变量值,SRAM的输出为逻辑函数值,由连线开关实现与其他功能块的连接。 查找表结构的函数功能非常强。M个输入的查找表可以实现任意一个有M个输入项的组合逻辑函数,这样的函数有2M个。用查找表实现逻辑函数时,把对应函数的真值表预先存放在SRAM中即可实现相应的函数运算。 目前FPGA中多使用4输入的LUT,每一个LUT可以看成一个有4位地址线的16×1的RAM。当用户通过原理图或HDL语言描述了一个逻辑电路以后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。下表是一个用LUT实现4输入与门的例子。 用LUT实现4输入与门 实际逻辑电路 LUT的实现方式 ??????????????????????????????????????????????????????????????????????????????????? ???????????????????????????????????? a,b,c,d 输入 逻辑输出 地址 RAM中 存储的内容 0000 0 0000 0 0001 0 0001 0 .... 0 ... 0 1111 1 1111 1 N个输入的逻辑函数需要2N的容量的SRAM来实现,一般多个输入的查找表采用多个逻辑块级连的方式 从表可见,当4输入与门的输入端a, b, c, d变化时,对应的输出端也跟着变化,如果把与门输入端的4个管脚看作LUT的输入地址,其寻址空间为16,只要在这16个存储单元中存放和与门对应的逻辑值,那么就实现了用LUT替代与门的作用。 下面以两大主要FPGA生产商Xilinx的主流器件来说明FPGA的内部结构图。 (1)Xilinx公司的Spartan-II系列FPGA内部 结构图,它由四部分组成: CLB模块 I/O模块 RAM模块 可编程连线 Xilinx公司的Spartan-II系列FPGA内部结构 在Spartan-II中,一个CLB包括两个Slice模块,每个Slice模块又包含两个LUT、两个触发器和相关逻辑。Slice可以看成是Spartan-II器件实现逻辑功能的最基本结构。Xilinx公司的其他系列的FPGA器件的内部结构与此类似。 下图是Spartan-II器件内部Slice的结构图。 Spartan-II器件内部Slice的结构图 Spartan-II器件内部I/O模块结构图 Spartan-II器件内部互连资源结构图 CPLD与FPGA的区别 CPLD FPGA 内部结构 Product-term Look-up Table 程序存储 内部EEPROM SRAM,外挂EEPROM 资源类型 组合电路资源丰富 触发器资源丰富 集成度 低 高 使用场合 完成控制逻辑 能完成比较复杂的算法 速度 慢 快 其他资源 - EAB,锁相环 保密性 可加密 一般不能保密 FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。因此,需在FPGA外加EPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中。CPLD器件一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。 FPGA器件含有丰富的触发器资源,易于实现时序逻辑,如果要求实现较复杂的组合电路则需要几个CLB结合起来实现。CPLD的与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少。 FPGA为细粒度结构,CPLD为粗粒度结构。FPGA内部有丰富连线资源,CLB分块较小,芯片的利用率较高。CPLD的宏单元的与或阵列较大,通常不能完全被应用,且宏单元之间主要通过高速数据通道连接,其容量有限,限制了器件的灵活布线,因此CPLD利用率较FPGA器件低。 FPGA为非连续式布线,CPLD为连续式布线。FPGA器件在每次编程时实现的逻辑功能一样,但走的路线不同,因此延时不易控制,要求开发软件允许工程师对关键的路线给予限制。CPLD每次布线路径一样,CPLD的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连。连续式互连结构消除了分段式互连结构在定时上的差异,并在逻辑单元之间提供快速且具有固定延时的通路。CPLD的延时较小。 PLD器件的命名与选型 EPM7 128 S
文档评论(0)