FPGA架构
本文介绍了FPGA的架构模块,包括FPGA逻辑块、开关矩阵和IO板。它还提供了基于要移植的应用程序和HDL代码选择FPGA芯片的参数。
FPGA的一般结构由三种类型的资源组成,即可配置逻辑块、输入/输出块或垫片、互连线/开关矩阵。最流行的FPGA是Xilinx virtex-5 FPGA包含6个输入LUT,与mux、逻辑和触发器相关,如下所述。现代fpga包含多达数十万个clb。使用Xilinx ISE和ModelSIM等先进软件进行开发,并生成位流文件,用于配置FPGA。
的基本FPGA架构具有2维逻辑块阵列,用户可以配置逻辑块之间的互连以及每个逻辑块的功能。FPGA架构包括:
可配置逻辑块-它包含数字逻辑,输入输出。它实现了用户逻辑。
互联-它提供逻辑块之间的路由,以实现用户逻辑
开关矩阵-根据逻辑提供互连之间的切换。
输入/输出板-用于外部世界在应用程序中进行通信
逻辑块包括
附近地区:实现组合逻辑功能
寄存器(D翻转):存储LUT的输出
MUX:用于选择逻辑
n位LUT实现为2n x1内存;输入从2n个内存位置中选择一个。内存位置装载的值来自用户的配置位流。Mux控件的输入是CLB的输入。
自适应附近地区
FPGA的基本构件是基于LUT(查找表)的函数生成器。实验后,LUT的输入数量从3个、4个、6个甚至8个不等。现在我们有了自适应LUT,每个LUT提供两个输出,实现了两个函数生成器。
基于应用的fpga类型
fpga按用途分为高端fpga、低端fpga和中端fpga三种。高端fpga是为高性能和逻辑密度而开发的。低端fpga具有低复杂度、低单片功耗和低逻辑密度的特点。中档fpga是上述两者之间的光学解决方案,是为了在成本和性能之间取得平衡而开发的。
高端fpga的例子有Xilinx的Virtex家族,Altera的Stratix家族,Microsemi的ProASIC3家族,Achronix的Speedster 22i家族。
低端fpga的例子有Xilinx的Spartan家族,Altera的Cyclone家族,Lattice semiconductor的Mach XO/ICE40, Microsemi的fusion家族。
中端fpga的例子是Xlinix的Artix-7/Kintex-7系列,Altera的Arria, Lattice semiconductor的ECP3和ECP5系列以及Microsemi的IGL002。
FPGA芯片选择
以上提到的FPGA内部架构元素在FPGA中是非常重要的选择FPGA芯片基于应用。重要的选择参数如下所述。
•芯片上的RAM大小
•输入输出接口
•设备转速等级
•dsp或Multiplier块的数量
•工作温度
•包装尺寸
•设备密度
•输入/输出引脚
除了上述参数外,要移植到所选FPGA芯片上的HDL代码将决定所选设备是否足以存储正在开发的应用程序的逻辑。从综合周期计数报告中也可以推断出同样的情况。
由于先进的高端fpga的可用性,它们已经成为ASIC和ASSP的替代品,一些供应商正在销售适合在ASIC实现之前测试代码的fpga。基于ARM的片上系统(soc)将处理器、内存控制器和外设与定制FPGA结合在一个芯片中。现在fpga有45nm、28nm、20nm和16nm。14纳米和10纳米器件的研究即将展开。
相关链接
什么是FPGA
ASIC与FPGA
FPGA工具包-FPGA评估套件制造商
硬件描述语言(VHDL)的教程
FPGA实现MIMO
基于FPGA的波束形成智能天线