第2章fpga的硬件结构及运算功能.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 FPGA的硬件结构及运算功能 何宾 2009.08 本章概述 本书所有的信号处理的实现都是在Xilinx公司的 FPGA芯片上实现。 本章主要介绍Xilinx的三个最重要的FPGA产品 Virtex-II,Virtex-4和Virtex-5的内部结构及主要的功能, 在此基础上介绍了基于FPGA算数运算的一些基本理论。 了解这些FPGA的内部结构及功能,为读者深入掌握 使用FPGA实现数字信号处理算法打下良好基础。 Virtex-II的逻辑资源 --Virtex-II的CLB 如图所示,Xilinx的Virtex-II系列的FPGA内的一个 CLB包含四片slice单元,而Virtex和Spartan系列的 FPGA每个CLB 包含两片slice单元。下面给出CLB实现 的功能: Virtex-II的逻辑资源 --Virtex-II的CLB 1. CLB中的slice逻辑可实现任何的数字逻辑设计; 2. Slice在CLB中被互连到一起并且通过开关矩阵将 CLB连接起来; 3.Cin和Cout信号对实现算术功能非常重要。每个 CLB列中存在两个相互独立的Cin/Cout列; 4.一片slice可实现一个2位全加器,所以一个CLB可 实现两个独立的4位全加器,作为与其它CLB 协同工作 的高位宽度加法运算的一部分。 Virtex-II的逻辑资源 --Virtex-II的CLB 一旦设计人使用VHDL或Verilog语言完成设计输入,设 计将被综合,并得出一个在指定FPGA上实现的方案。设 计者指定目标器件的类型(比如厂商,系列,规格,封装 类型,速率等级)。综合处理是一个复杂的过程,它将任 何可综合的VHDL/Verilog通过软件工具转转换为FPGA可 以识别的比特流文件。 对于Xilinx的产品,综合工具将决定如何使用可用的 slice逻辑来执行设计的数字逻辑操作。由FPGA制造商提 供的工具通过一系列的复杂操作来接收设计文件,其目的 是将设计转化成一种比特流,该比特流可被下载并对 FPGA 进行配置。 Virtex-II的逻辑资源 --Virtex-II的Slice Slice是CLB内的功能单元。衡量Xilinx FPGA资源规 模的主要标准是slice的数量。图2.2给出了Slice的内部结 构。在Slice内实现用户设计的逻辑行为操作。 Virtex-II的逻辑资源 --Virtex-II的Slice Slice可以完成的功能主要有: 1) 用户设计功能的绝大部分可通过CLB中的slice来实 现; 2) 不同slice之间存在着多种互连的可行性; 3) LUT可实现任何4输入布尔函数。绝大部分的数字逻 辑设计均可使用4输入LUT执行逻辑操作来实现; 4) LUT可用做移位寄存器SRL或者RAM; Virtex-II的逻辑资源 --Virtex-II的Slice 寄存器提供了实现同步逻辑的方法; 1)当FPGA工作频率较高时,正确的使用寄存器显得 十分重要,不正确的使用寄存器将降低系统的工作性 能; 2)多路复用器和CY单元提供了slice中信号布线的可 能性; 3)底部还包括了算术逻辑与门单元,使得乘法的实 现更为有效。 Virtex-II的逻辑资源 --Virtex-II查找表 Virtex-II的FPGA内部使用的是四输入的LUT。LUT 的功能主要有: 1) 一个4输入布尔函数映射到FPGA内的LUT中;加载 到LUT中的比特位包含了用于配置器件的比特流。 综合工具将决定用于实现用户设计的LUT的内容,多 数情况下设计人员不需要关注这一点。偶尔情况下,需要 设计人员人工指定设计的某些部分,并确定LUT的内容 (例如,该如何将它们连接在一起)。在对时间和芯片面 积要求极为苛刻的应用时,为保证LUT能够满足性能要 求,就需要设计人员进行手工优化。 这些手工优化类似于用汇编/机器代码人工编写部分 的软件代码,在人工优化时,不需要编译器做这个工作。 Virtex-II的逻辑资源 --移位寄存器 如图2.3所示,Xilinx的LUT可实现一个16位移位寄存 器(称为SRL16),并且当它与LUT的寄存器连接在一起 时,可以在半个slice中实现17个可能的延迟操作。移位

文档评论(0)

wx171113 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档