首页 > 编程知识 正文

fpga i2c(FPGA内部结构)

时间:2023-05-05 10:10:06 阅读:74792 作者:4455

CLB是指可编程逻辑块(Configurable Logic Blocks ),顾名思义是可编程数字逻辑电路。 CLB是FPGA中的三个基本逻辑单元。 CLB的实际数量和特性因设备而异,但每个CLB都可以放置。 在Xilinx公司的FPGA设备中,CLB由两个相同的SliceL或一个SliceL和一个SliceM组成。 每个Slice不仅仅是为了实现组合逻辑、时序逻辑。 其中,SliceM也可以构成为分散RAM和分散ROM。

以Xilinx的ZYNQ的7000系列为例,介绍其功能和结构

ZYNQ7000系列采用Xilinx全新的第四代ASMBL体系结构。

新体系结构优化了芯片布局,消除了由于IO数量增加而导致的芯片阵列大小限制

新体系结构可以满足将电源和接地放置在芯片的何处;

增加了更多的电源和土地

允许多个功能完全不同的IP单元在芯片中独立放置;

独特的SSI技术;

分布式RAM和移位寄存器只在SliceM上

1.Slice3360(1Slice=4lut8ff ) slice是Xilinx公司定义的基本逻辑单元,其内部结构如图1-4所示,一个slice来自四个6输入LUTS、进位逻辑、算术逻辑、存储逻辑和多选择器算术逻辑包含异或门(XORG )。 “异或”门可以使用专用门在一个Slice中实现2位完全加法操作,以提高乘法器的效率。 进位逻辑由专用的进位信号和函数多路复用器(MUXC )组成,用于实现高速算术加减运算操作。 四输入函数发生器用于实现四输入LUT、分布式RAM或16位移位寄存器。 (在Virtex-5系列芯片的Slice上,两个输入函数为6输入,可实现6输入LUT或64位移位寄存器。 ); 进位逻辑包括两个高速进位链,用于提高CLB模块的处理速度

每个Slice都包括:

4个6输入查找表LUT

8个存储单元

多路复用器

进位逻辑

所有Slice都使用这些单元提供逻辑、算术和ROM功能。 有

一些slice还支持两种附加功能:使用分布式存储数据

RAM和32位寄存器的移位数据。 支持这些附加功能的slice

被称为SLICEM; 其他东西叫SLICEL。

SLICEL如图2-4所示。

每个CLB可以包含两个SLICEL或一个SLICEL和一个SLICEM。

Slices分为SliceL和SliceM,一般是SliceLSliceM的数量

2.LUT查找表

一个片段包括四个6输入LUT,两个LUT可以在F7MUX中级联以形成一个7输入LUT,一个片段可以形成两个7输入LUT,并且在F8MUX中级联以形成8输入LUT 逻辑资源换算关系: 6输入查找表是4输入查找表的1.6倍查找表LUT的本质是RAM,一个多路复用器LUT参与进位逻辑,可以通过算术运算单元进行异或运算等,可以直接输出

3 .每个存储器单元Slice有8个存储器单元,4个可以配置在DFF或锁存器中,剩下的4个只能配置在DFF中

控制信号

另一方面,SliceL和SliceM的最大区别在于没有分布式RAM和移位寄存器。

4 .分布式ram (仅slicem ) slicem可以被配置为分布式ram,并且在多位的情况下,需要增加相应倍数的LUT以实现并行。

分布式RAM比块RAM更灵活,但块RAM的资源很宝贵,分布式RAM适用于小型存储场景。

5 .移位寄存器(仅限SliceM ) SliceM可在不使用触发器的情况下配置为32位移位寄存器,而四个LUT可级联到128位移位寄存器。 SliceM之间的级联也可以形成更大的移位寄存器

6 .一个多路复用器mux的LUT可以配置为4:1MUX

两个LUT最多可以配置为8:1MUX

四个LUT最多可以配置为16:1MUX

通过配线资源连接多个Slice,也可以形成更大规模的设计

但是,占用布线资源,产生大延迟

有两个高速进位链连接到此列上、下slice的进位链,实现数据运算时的进位操作。 每个slice都有一个4位进位链,每个位由进位MUX和异或组成

可以在实现加减法器时生成进位逻辑,也可以生成一般逻辑。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。