xilinxfpga开发实用教程——fpga结构

上传人:桔**** 文档编号:486320434 上传时间:2022-07-15 格式:DOC 页数:6 大小:119KB
返回 下载 相关 举报
xilinxfpga开发实用教程——fpga结构_第1页
第1页 / 共6页
xilinxfpga开发实用教程——fpga结构_第2页
第2页 / 共6页
xilinxfpga开发实用教程——fpga结构_第3页
第3页 / 共6页
xilinxfpga开发实用教程——fpga结构_第4页
第4页 / 共6页
xilinxfpga开发实用教程——fpga结构_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《xilinxfpga开发实用教程——fpga结构》由会员分享,可在线阅读,更多相关《xilinxfpga开发实用教程——fpga结构(6页珍藏版)》请在金锄头文库上搜索。

1、word1.2.1 FPGA工作原理与简介如前所述,FPGA是在PAL、GAL、EPLD、CPLD等可编程器件的根底上进一步开展的产物。它是作为ASIC领域中的一种半定制电路而出现的,即解决了定制电路的不足,又克制了原有可编程器件门电路有限的缺点。 由于FPGA需要被反复烧写,它实现组合逻辑的根本结构不可能像ASIC那样通过固定的与非门来完成,而只能采用一种易于反复配置的结构。查找表可以很好 地满足这一要求,目前主流FPGA都采用了基于SRAM工艺的查找表结构,也有一些军品和宇航级FPGA采用Flash或者熔丝与反熔丝工艺的查找表结 构。通过烧写文件改变查找表内容的方法来实现对FPGA的重复配

2、置。 根据数字电路的根本知识可以知道,对于一个n输入的逻辑运算,不管是与或非运算还是异或运算等等,最多只可能存在2n种结果。所以如果事先将相应的结果存放于一个存贮单元,就相当于实现了与非门电路的功能。FPGA的原理也是如此,它通过烧写文件去配置查找表的内容,从而在一样的电路情况下实现了不同的逻辑功能。 查找表Look-Up-Table简称为LUT,LUT本质上就是一个RAM。目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有 4位地址线的 的RAM。 当用户通过原理图或HDL语言描述了一个逻辑电路以后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能结果,并把真值表即结果事

3、先写入 RAM,这样,每输入一个信号进展逻辑运算就等于输入一个地址进展查表,找出地址对应的内容,然后输出即可。 下面给出一个4与门电路的例子来说明LUT实现逻辑功能的原理。例1-1:给出一个使用LUT实现4输入与门电路的真值表。表1-1 4输入与门的真值表从中可以看到,LUT具有和逻辑电路一样的功能。实际上,LUT具有更快的执行速度和更大的规模。 由于基于LUT的FPGA具有很高的集成度,其器件密度从数万门到数千万门不等,可以完成极其复杂的时序与逻辑组合逻辑电路功能,所以适用于高速、高密度 的高端数字逻辑电路设计领域。其组成局部主要有可编程输入/输出单元、根本可编程逻辑单元、内嵌SRAM、丰富

4、的布线资源、底层嵌入功能单元、内嵌专用单 元等,主要设计和生产厂家有Xilinx、Altera、Lattice、Actel、Atmel和QuickLogic等公司,其中最大的是 Xilinx、Altera、Lattice三家。如前所述,FPGA是由存放在片内的RAM来设置其工作状态的,因此工作时需要对片内RAM进展编程。用户可根据不同的配置模式,采用不同的编程方式。FPGA有如下几种配置模式: 并行模式:并行PROM、Flash配置FPGA; 主从模式:一片PROM配置多片FPGA; 串行模式:串行PROM配置FPGA; 外设模式:将FPGA作为微处理器的外设,由微处理器对其编程。 目前,FP

5、GA市场占有率最高的两大公司Xilinx和Altera生产的FPGA都是基于SRAM工艺的,需要在使用 时外接一个片外存储器以保存程序。上电时,FPGA将外部存储器中的数据读入片内RAM,完成配置后,进入工作状态;掉电后FPGA恢复为白片,内部逻辑 消失。这样FPGA不仅能反复使用,还无需专门的FPGA编程器,只需通用的EPROM、PROM编程器即可。Actel、QuickLogic等公司还 提供反熔丝技术的FPGA,只能下载一次,具有抗辐射、耐上下温、低功耗和速度快等优点,在军品和航空航天领域中应用较多,但这种FPGA不能重复擦写, 开发初期比拟麻烦,费用也比拟昂贵。Lattice是ISP技

6、术的发明者,在小规模PLD应用上有一定的特色。早期的Xilinx产品一般不涉与军品和宇 航级市场,但目前已经有Q Pro-R等多款产品进入该类领域。 1.2.2 FPGA芯片结构目前主流的FPGA仍是基于查找表技术的,已经远远超出了先前版本的根本性能,并且整合了常用功能如RAM、时钟管理 和DSP的硬核ASIC型模块。如图1-1所示注:图1-1只是一个示意图,实际上每一个系列的FPGA都有其相应的内部结构,FPGA芯片主 要由6局部完成,分别为:可编程输入输出单元、根本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件 模块。图1-1 FPGA芯片

7、的内部结构每个模块的功能如下:1 可编程输入输出单元IOB可编程输入/输出单元简称I/O单元,是芯片与外界电路的接口局部,完成不同电气特性下对输入/输出信号的驱动与匹配要求,其示意结构如图1-2所示。 FPGA内的I/O按组分类,每组都能够独立地支持不同的I/O标准。通过软件的灵活配置,可适配不同的电气标准与I/O物理特性,可以调整驱动电流的大 小,可以改变上、下拉电阻。目前,I/O口的频率也越来越高,一些高端的FPGA通过DDR存放器技术可以支持高达2Gbps的数据速率。 图1-2 典型的IOB内部结构示意图外部输入信号可以通过IOB模块的存储单元输入到FPGA的内部,也可以直接输入FPGA

8、 内部。当外部输入信号经过IOB模块的存储单元输入到FPGA内部时,其保持时间Hold Time的要求可以降低,通常默认为0。 为了便于管理和适应多种电器标准,FPGA的IOB被划分为假如干个组bank,每个bank的接口标准由其接口电压VCCO决定,一个bank只能有 一种VCCO,但不同bank的VCCO可以不同。只有一样电气标准的端口才能连接在一起,VCCO电压一样是接口标准的根本条件。 2 可配置逻辑块CLB CLB是FPGA内的根本逻辑单元。CLB的实际数量和特性会依器件的不同而不同,但是每个CLB都包含一个可配置开关矩阵,此矩阵由4或6个输入、一些 选型电路多路复用器等和触发器组成

9、。 开关矩阵是高度灵活的,可以对其进展配置以便处理组合逻辑、移位存放器或RAM。在Xilinx公司的FPGA器件中,CLB由多个一般为4个或2个 一样的Slice和附加逻辑构成,如图1-3所示。每个CLB模块不仅可以用于实现组合逻辑、时序逻辑,还可以配置为分布式RAM和分布式ROM。 图1-3 典型的CLB结构示意图Slice是Xilinx公司定义的根本逻辑单位,其内部结构如图1-4所示,一个Slice由两个4输入的函数、进位 逻辑、算术逻辑、存储逻辑和函数复用器组成。算术逻辑包括一个异或门XORG和一个专用与门MULTAND,一个异或门可以使一个Slice实现 2bit全加操作,专用与门用于

10、提高乘法器的效率;进位逻辑由专用进位信号和函数复用器MUXC组成,用于实现快速的算术加减法操作;4输入函数发生 器用于实现4输入LUT、分布式RAM或16比特移位存放器Virtex-5系列芯片的Slice中的两个输入函数为6输入,可以实现6输入LUT或 64比特移位存放器;进位逻辑包括两条快速进位链,用于提高CLB模块的处理速度。图1-4 典型的4输入Slice结构示意图3 数字时钟管理模块DCM 业内大多数FPGA均提供数字时钟管理Xilinx的全部FPGA均具有这种特性。Xilinx推出最先进的FPGA提供数字时钟管理和相位环路锁定。相位环路锁定能够提供准确的时钟综合,且能够降低抖动,并实

11、现过滤功能。 4 嵌入式块RAMBRAM 大多数FPGA都具有内嵌的块RAM,这大大拓展了FPGA的应用X围和灵活性。块RAM可被配置为单端口RAM、双端口RAM、内容地址存储器 CAM以与FIFO等常用存储结构。RAM、FIFO是比拟普与的概念,在此就不冗述。CAM存储器在其内部的每个存储单元中都有一个比拟逻辑,写入 CAM中的数据会和内部的每一个数据进展比拟,并返回与端口数据一样的所有数据的地址,因而在路由的地址交换器中有广泛的应用。除了块RAM,还可以将 FPGA中的LUT灵活地配置成RAM、ROM和FIFO等结构。在实际应用中,芯片内部块RAM的数量也是选择芯片的一个重要因素。 单片块

12、RAM的容量为18k比特,即位宽为18比特、深度为1024,可以根据需要改变其位宽和深度,但要满足两个原如此:首先,修改后的容量位宽 深度不能大于18k比特;其次,位宽最大不能超过36比特。当然,可以将多片块RAM级联起来形成更大的RAM,此时只受限于芯片内块RAM的数量,而 不再受上面两条原如此约束。 5 丰富的布线资源 布线资源连通FPGA内部的所有单元,而连线的长度和工艺决定着信号在连线上的驱动能力和传输速度。FPGA芯片内部有着丰富的布线资源,根据工艺、长 度、宽度和分布位置的不同而划分为类不同的类别。第一类是全局布线资源,用于芯片内部全局时钟和全局复位/置位的布线;第二类是长线资源,

13、用以完成芯片 Bank间的高速信号和第二全局时钟信号的布线;第三类是短线资源,用于完成根本逻辑单元之间的逻辑互连和布线;第四类是分布式的布线资源,用于专有时 钟、复位等控制信号线。 在实际中设计者不需要直接选择布线资源,布局布线器可自动地根据输入逻辑网表的拓扑结构和约束条件选择布线资源来连通各个模块单元。从本质上讲,布线资源的使用方法和设计的结果有密切、直接的关系。 6 底层内嵌功能单元 内嵌功能模块主要指DLLDelay Locked Loop、PLLPhase Locked Loop、DSP和CPU等软处理核Soft Core。现在越来越丰富的内嵌功能单元,使得单片FPGA成为了系统级的设

14、计工具,使其具备了软硬件联合设计的能力,逐步向SOC平台过渡。 DLL和PLL具有类似的功能,可以完成时钟高精度、低抖动的倍频和分频,以与占空比调整和移相等功能。Xilinx公司生产的芯片上集成了 DLL,Altera公司的芯片集成了PLL,Lattice公司的新型芯片上同时集成了PLL和DLL。PLL 和DLL可以通过IP核生成的工具方便地进展管理和配置。DLL的结构如图1-5所示。图1-5 典型的DLL模块示意图7. 内嵌专用硬核 内嵌专用硬核是相对底层嵌入的软核而言的,指FPGA处理能力强大的硬核Hard Core,等效于ASIC电路。为了提高FPGA性能,芯片生产商在芯片内部集成了一些

15、专用的硬核。例如:为了提高FPGA的乘法速度,主流的FPGA 中都集成了专用乘法器;为了适用通信总线与接口标准,很多高端的FPGA内部都集成了串并收发器SERDES,可以达到数十Gbps的收发速度。 Xilinx公司的高端产品不仅集成了Power PC系列CPU,还内嵌了DSP Core模块,其相应的系统级设计工具是EDK和Platform Studio,并依此提出了片上系统System on Chip的概念。通过PowerPC、Miroblaze、Picoblaze等平台,能够开发标准的DSP处理器与其相关应用,达到SOC的开发目 的。 1 软核 软核在EDA设计领域指的是综合之前的存放器传

16、输级RTL模型;具体在FPGA设计中指的是对电路的硬件语言描述,包括逻辑描述、网表和帮助文档等。 软核只经过功能仿真,需要经过综合以与布局布线才能使用。其优点是灵活性高、可移植性强,允许用户自配置;缺点是对模块的预测性较低,在后续设计中存在发 生错误的可能性,有一定的设计风险。软核是IP核应用最广泛的形式。 2 固核固核在EDA设计领域指的是带有平面规划信息的网表;具体在FPGA设计中可以看做带有布局规划的软核,通常以RTL代码和对应具体工艺网表的混合形式提 供。将RTL描述结合具体标准单元库进展综合优化设计,形成门级网表,再通过布局布线工具即可使用。和软核相比,固核的设计灵活性稍差,但在可靠性上有较 大提高。目前,固核也是IP核的主流形式之一。 3 硬核 硬核在EDA设计领域指经过验证的设计版图;具体在FPGA设计中指布局和工艺固

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号