FPGA之初探

FPGA的构成

基本逻辑单元CLB

CLB是FPGA的基本逻辑单元, 一个 CLB 包括了 2 个 Slices,所以知道Slices的数量就可以知道FPGA的"大概"逻辑资源容量了。一个 Slice 等于 4 个6输入LUT+8个触发器(flip-flop)+算数运算逻辑,每个 Slice 的 4 个触发器(虽然有 8个flip-flop,但是每个 LUT 分配一个 flip-flop)可以配置成锁存器,这样会有4 个触发器(flip-flop)未被使用。对于CLB来说,里面的Slice有2种类型。一种是SLICEL,另外一种是SLICEM.SLICEM的功能更强大,SLICEM可以当作分布式RAM 或者ROM,或者实现移位寄存器。

对于 XILINX 7 系列的 FPGA 来说,SLICEM 约占三分一的 Slices。比如对于 7K325T的 FPGA,有 16000个SLICEM,即16000X4X64bit=4096Kb的 distributed RAM或者2000kb的Shift Register。

slice 的基本结构

•四个逻辑函数生成器(查找表)

•8 个存储单元

•多功能多路复选器

• 快速进位逻辑

FPGA 的逻辑、算术和 ROM 功能就是靠 Slice 实现,其中 slice 又分 SLICEL 和 SLICEM,SLICEM 的功能更强 大,除了具备 SLICEL 的所有功能,还能实现分布式 RAM、ROM 和实现移位逻辑

slicel的结构图

slicem的结构图

对比 SLICEM 和 SLICEL,可以看到以上结构图中,他们的差异在查找表上,SLICEM 的查找表结构功能更复杂。 SLICEM 增加了写操作的控制信号,以及移动位进位的功能。

相关推荐
风_峰7 小时前
Ubuntu Linux SD卡分区操作
嵌入式硬件·ubuntu·fpga开发
FPGA_Linuxer7 小时前
FPGA 40 DAC线缆和光模块带光纤实现40G UDP差异
网络协议·fpga开发·udp
风_峰21 小时前
Petalinux相关配置——ZYNQ通过eMMC启动
嵌入式硬件·ubuntu·fpga开发
风_峰21 小时前
【ZYNQ开发篇】Petalinux和电脑端的静态ip地址配置
网络·嵌入式硬件·tcp/ip·ubuntu·fpga开发
碎碎思1 天前
一块板子,玩转 HDMI、USB、FPGA ——聊聊开源项目 HDMI2USB-Numato-Opsis
fpga开发
ooo-p1 天前
FPGA学习篇——Verilog学习Led灯的实现
学习·fpga开发
嵌入式-老费1 天前
Zynq开发实践(FPGA之选择开发板)
fpga开发
风_峰1 天前
PuTTY软件访问ZYNQ板卡的Linux系统
linux·服务器·嵌入式硬件·fpga开发
电子凉冰2 天前
FPGA入门-状态机
fpga开发
Aczone282 天前
硬件(十)IMX6ULL 中断与时钟配置
arm开发·单片机·嵌入式硬件·fpga开发