深入浅出FPGA内部资源CLB的解析
FPGA的基本组成单元: CLB资源等
详细介绍一下CLB可分为CLBLL和CLBLM两类, 这是单纯的以Xilinx旗下的FPGA的某一款为例,单纯的只是介绍个概念性的东西。SliceL和SliceM内部都包含4个6输入查找表(LUT6)、3个数据选择器(MUX)、1个进位链(Carry Chain)和8个触发器(Flip-Flop)。
SLICEM(M:Memory):其内部的LUT可以读也可以写,可以实现移位寄存器和64bit的DRAM等存储功能,还可以实现基本的查找表逻辑。SLICEL(L:Logic): 其内部的LUT只可以读,只能实现基本的查找表逻辑。
一.LUT的介绍
对于LUT而言,LUT 可以看作是一个小型的、单口的 RAM,其中地址线是输入信号,存储单元的内容是输出信号。例如,一个 4 输入的 LUT,可以被看作是一个有 16 个地址的 RAM,每个地址存储一个输出值。
假设有一个 4 输入的 LUT 实现一个逻辑函数 𝑓(𝑎,𝑏,𝑐,𝑑)。这意味着 LUT 有 16 个地址,每个地址对应一个 4 位输入的组合(𝑎,𝑏,𝑐,𝑑 作为地址线),每个地址存储一个输出值(0 或 1)。配置 LUT 就是初始化这 16 个存储单元的内容。