目录

IOB

基本可编程逻辑单元(CLB)

BLOCK RAM

DSP48

GTX固核


学了这么久,也该自己总结下FPGA内部结构了,不能总是说FPGA内部有LUT,触发器,选择器,太笼统了,思路一点也不清晰。真怀疑上次我这么回答的,会不会因此而减分(应该会吧)。

这篇文章结合自己以往所学所遇之经验来说说FPGA内部之结构。


以K7为例,具体型号是xc7k325tffg676-2为例:

先说说其内部的时钟域:

           

从左到右,从下到上,命名为XmYn,其中m为列,n是行。总共有14个时钟域。

IOB

IOB为可编程输入输出单元,是芯片与外界电路的接口部分,完成不同电气特征下对输入输出信号的驱动与匹配要求。

参考链接

FPGA的Bank分为HP Bank和HR Bank,二者对电压的要求范围不同,HR支持更大的电压范围。

         

如下为单个IO的结构:

      

可见一个IOB里面不仅包含PAD,还有IBUF以及OBUF。它的附近还有ILOGIC可用。

这些都是其可编程特性的支撑。

基本可编程逻辑单元(CLB)

每个CLB包含两个SLICE,SLICE有两种类型,分别为SLICEL和SLICEM。如下图为

  

SLICE中的结构如下:

包含4个6输入的LUT,二个2选1的多路选择器,一个进位链,还有8个触发器。

SLICEL和SLICEM的区别在于LUT的不同,下图左边为SLICEL的LUT,右边为SLICEM的LUT:

    

可见,SLICEM的LUT更加的强大,可以配置为LUT,RAM,ROM或移位寄存器,因此可以实现LUT的逻辑功能,也能作为存储单元和移位寄存器。

BLOCK RAM

当我们要实现一个SRAM,FIFO以及ROM等,我们需要选择是使用LUT资源呢还是BLOCK RAM资源。

这里的BLOCK RAM就是FPGA的内部专有资源之一。

如下图绿色框里是DSP资源,而红色框内是RAM资源。

如下图第一列为BLOCK RAM36,其中每个block RAM中又分为上下两块,上半部分为18RAMB下半部分为FIFO18,

在FIFO例化的时候可以将BLOCK RAM设置为FIFO,不会使用额外的CLB资源,并且这部分RAM是真双口RAM。

            

DSP48

DSP资源在上面说RAM时候已经给出了,就是绿色的一列:

可用使用这一资源进行加法,乘法运算,这样会节省LUT资源。

例如我做FFT的时候,其中的复乘法就用了大量的DSP资源。

GTX固核

GTX固核位于MGT Bank上,在IOB附近,

   

当然在普通Bank上的IOB附近还有很多时钟资源,例如PLL,MMCM资源。

   

大概就这些,当然还有一些细小的结构,这里不在赘述。

本想写更多细节,例如在哪个实际情况中用到这些资源,但是实在没时间了,大致写下吧。

参考博文:

https://blog.csdn.net/Reborn_Lee/article/details/80339429

FPGA底层资源介绍相关推荐

  1. Xilinx 7系列 FPGA CLB资源介绍

    赛灵思 7系列 FPGA CLB资源介绍 ---主要来源于官方技术手册ug474_7Series_CLB.pdf FPGA共有6大组成部分:1.可编程输入输出I/O单元:2.基本可编程逻辑单元CLB: ...

  2. FPGA底层资源综述

    FPGA底层资源主要是Slices.IOBs.Memory.Multipliers.Global clock buffers等等,下面对各类资源进行详细的解读. 一.Slices 7系列FPGA的sl ...

  3. FPGA内部资源介绍

    逻辑资源块是FPGA中最重要的资源,它在FPGA芯片中占到比重最大.Xilinx公司称它为CLB,即Configurable Logic Blocks:而Altera公司称它为ALM,即Adapive ...

  4. FPGA底层资源之CLB详解

    CLB是用于xilinx中实现时序电路和组合电路的主要逻辑资源. XIlinx7系列FPGA的CLB有如下特点: •真6输入查找表(LUT)技术 •双LUT5(5输入LUT)选项 •分布式ram和移位 ...

  5. 上海安路科技的PH1系列FPGA的内部BRAM资源介绍

    上海安路科技的PH1系列的内部BRAM资源介绍 1,PH1 系列 FPGA 底层由 I/O.PLL.ERAM.DSP.PLB.PMB.SERDES.PCIE.CONFIG 等模块 构成,具体 PH1A ...

  6. 赛灵思FPGA中的主要时钟资源介绍

    把握DCM.PLL.PMCD 和MMCM 知识是稳健可靠的时钟设计策略的基础. 赛灵思在其FPGA 中提供了丰富的时钟资源,大多数设计人员在他们的FPGA 设计中或多或少都会用到.不过对FPGA设计新 ...

  7. 沧小海笔记本之A7系列FPGA资源介绍

    目录 第一部分:I / OBANK部分资源介绍 1.1  I/O BANK概述与ILOGIC资源概述 1.2  IDELAYE2.IDELAYCTRL和OLOGIC的资源介绍 1.3  OSERDES ...

  8. (78)FPGA内部资源与FPGA开发流程-面试必问(二)(第16天)

    (78)FPGA内部资源与FPGA开发流程-面试必问(二)(第16天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA内部资源与FPGA开发流程-面试必问 ...

  9. FPGA基础资源之IOB的应用

    FPGA基础资源之IOB的应用 1.应用背景 在我们做时序约束时,有时候需要对FPGA驱动的外围器件进行input_delay/output_delay进行约束.不知道,大家有没有被以下这种类似的现象 ...

最新文章

  1. LeetCode简单题之长度为三且各字符不同的子字符串
  2. 根据当前时间查询上月26号的日期 本月月25号的日期
  3. java bean 工厂模式_Spring框架通过工厂创建Bean的三种方式实现
  4. 如何备份桌面文件呢?
  5. JS的typeof力所能及已经力所不及
  6. idea错误提示不明显_淘宝镜像错误导致vue项目一系列异常
  7. Intel Edison学习笔记(一)—— 刷系统
  8. Read_books_水煮三国
  9. HTTP TFP状态解释
  10. Android简易Flash播放器
  11. java jdk 配置不成功_JDK配置环境变量不成功的原因
  12. 熟悉又陌生的 k8s 字段:finalizers
  13. 【网络基础】第01章 黑客攻防常用命令
  14. esp32cam应用一 点亮我的TFT小屏幕
  15. eclipse team没有选项_eclipse的TEAM没有选项
  16. 基于Arduino平台dmp库+匿名四轴上位机测试MPU6050
  17. BTT控制系统六自由度仿真
  18. 啊哈瞬间之tableSizeFor函数
  19. 云计算相关的国内核心期刊
  20. 关于python安装模块之后pychram仍然提示没有安装模块的问题

热门文章

  1. CLLocationCoordinate2D 用法 和一个最隐蔽的错误
  2. 把jquery的this写入选择器里(伪写入)哈哈~
  3. python中rfind函数_Python rfind()方法
  4. awk取文本列_awk命令结构/内置变量/获取文本某行或某列
  5. android捕获方法,android捕获Home键的方法
  6. 纯html css博客,纯HTML+CSS打造动画
  7. access vba 常量数组赋值_VBA数组是什么?有何作用?别担心,你只需用1分钟就明白它是什么...
  8. Java程序员面试如何超常发挥?
  9. php捕获500错误信息,php – 如何获取有关错误500的更多信息 – 内部服务器错误?...
  10. java火箭应用_从C++入手,探寻java的特点