当前位置:首页 > 新闻资讯 > FPGA之家动态 >

FPGA底层资源介绍

时间:2024-08-09      来源:网络搜集 关于我们 0

最近狼哥搜罗了一些资料,把xilinx FPGA芯片的底层资源捋了一下,今天和大家分享下。

以Xilinx家的FPGA为例,FPGA的底层资源一般包含可编程输入输出单元(IOB),可编程逻辑单元(CLB),完整的始终管理(CMT),嵌入块状RAM(BRAM),布线资源以及底层内嵌的专用功能单元,下图右边就是FPGA资源排列的样子。

IOB

IOB:可编程输入输出单元,可以分为HP Bank (High Performance) ,高速设计,最高电压1.8V;HR Bank (High Range),可以支持到3.3V。可编程输入/输出单元简称I/O单元,是芯片与外界电路的接口部分,完成不同电气特性下对输入/输出信号的驱动与匹配要求,FPGA内的I/O按组分类,每组都能够独立地支持不同的I/O标准。通过软件的灵活配置,可适配不同的电气标准与I/O物理特性,可以调整驱动电流的大 小,可以改变上、下拉电阻。目前,I/O口的频率也越来越高,一些高端的FPGA通过DDR寄存器技术可以支持高达2Gbps的数据速率。

CLB

可配置逻辑块(CLB),CLB是FPGA内的基本逻辑单元。CLB的实际数量和特性会依器件的不同而不同,但是每个CLB都包含一个可配置开关矩阵,此矩阵由4或6个输入、一些选型电路(多路复用器等)和触发器组成。开关矩阵是高度灵活的,可以对其进行配置以便处理组合逻辑、移位寄存器或RAM。在Xilinx公司的FPGA器件中,CLB由多个(一般为4个或2个) 相同的Slice和附加逻辑构成,每个CLB模块不仅可以用于实现组合逻辑、时序逻辑,还可以配置为分布式RAM和分布式ROM。CLB根据包含资源的不同可以分成CLBLM和CLBLL,它们两个的区别在于CLBLM的LUT可以配置成分布式RAM,而CLBLL的不行。

SLICE

Slice是Xilinx公司定义的基本逻辑单位,Slice由查找表、函数复用器进位 逻辑、算术逻辑、存储逻辑组成。算术逻辑包括一个异或门(XORG)和一个专用与门(MULTAND),一个异或门可以使一个Slice实现2bit全加操作,专用与门用于提高乘法器的效率;

进位逻辑由专用进位信号和函数复用器(MUXC)组成,用于实现快速的算术加减法操作,用于提高CLB模块的处理速度;6输入函数发生器用于实现6输入LUT、分布式RAM或64比特移位寄存器。

LUT

不论是 SLICEL还是SLICEM,他们的 LUT6 都可以作为ROM使用,配置为:64x1 (占用 1 个 LUT6,64 代表深度,1 代表宽度)128x1(占用 2 个 LUT6,128 代表深度,1 代表宽度)256X1(占用 4 个 LUT6,256 代表深度,1 代表宽度)但SLICEM中的LUT还可以配置为移位寄存器,每个LUT6可实现深度为32的移位寄存器,且同一个SLICEM中的4xLUT6可级联实现128深度的移位寄存器。此外既然 SLICEM中的M代表memory的意思,所以增加了更多存储功能。可以配置为 RAM,尤其指分布式RAM(DRAM/LUTRAM)。

MUX

MUX:实现更多位的数据选择器,1LUT6可以组成一个4:1MUXLUT6中的4个输入作为41的输入端,LUT6的另外2个输入作为选择器的选择端。MUX将LUT6组合到一起可以实现更多路的数据选择器。

CARRY&FF

CARRY

进位链用于实现加法和减法运行。可以看到它内部实际还包含多个MUX和2输入异或门(XOR)。

Flip-Flop (触发器)

每个SLICE中有多个触发器。触发器可分为两大类:

1.边沿敏感的D触发器(Flip-Flop)

2.电平敏感的锁存器(Flop&Latch)

CMT

BRAM

布线资源

底层内嵌专用功能单元

*******往期精彩文章列表********FPGA图像无极缩放.Demo2FPGA图像无极缩放.Demo1FPGA图像算法.无极缩放基于Zynq的图像处理入门课程FPGA图像算法.导向滤波点击上面链接查看详情报名微信号:MyWork666888   QQ交流群:539625033
注明:本内容来源网络,不用于商业使用,禁止转载,如有侵权,请来信到邮箱:429562386ⓐqq.com 或联系本站客服处理,感谢配合!

用户登陆

    未注册用户登录后会自动为您创建账号

提交留言