1. 最基本的CLB
CLB是FPGA最最基本的单元,不能说是类似于质子和中子的概念,但也至少是原子和分子的概念了。如果是最根本的单元都无法能够很好的理解,那么其实很多FPGA的原理还是停留在一个写写代码,调调时序的小工程师的级别。我想,这应该不是我们所有年轻人的一个追求。

1.1 CLB的初探
首先CLB的最基本资源分为两种,一种是实现组合逻辑资源功能的,一般称为LUT。XILINX的LUT是6输入查找表。一种是Flip-flop,也就是经常听课大家听说的FF,我就觉得这个FF就是寄存器。

我上面的那个图很经典。大家可以看到,一个CLB就是分为两个Slice。Slice通过Matrix Switch(我很想给他起个中文名字,但是有时候我觉得这个中文名字怎么都不太好表达这个意思,就比方,“忽悠”这个中国词语,就很难找到英文和他对应)和其他的Slice链接到一起。
同时又有进位链通过垂直方向和它上面的Slice连接到了一起。如果这个进位链能够很好的使用,能够节省不少的资源。这个地方就记着有这么个概念就行。

又是一个很经典的图。既然我们知道了CLB的内部的一些东西,那么CLB又是怎么相连的呢?这个问题通过我们的经典图形,很清晰的表现出来。CLB是成对的对称的连接在了一起。这样布局的最大好处是什么呢?

首先是增加了芯片的资源数量,同时通过通过共享时钟走线节省了很多资源。这个一个增加一个减少都是帮助大家能够用FPGA的时候能够获得最大的资源享受。也算是花小钱办大事。(这个涉及到了硅片的概念,就不展开去描述了。和大家的设计需求无关。)

另外这种分布的好处和大家相关的好处,大家觉出来是什么了么?这个最大的好处是可以让大家共享一些资源,增加大家布局的时候的资源,这样更容易实现自己的设计。

1.2 CLB与其他资源的互联

CLB不仅仅是和其他资源相连,那么又如何和其他资源相连呢?一样,和CLB之间相连一样,通过Matrix Switch链接到一起。所有资源布线资源都是垂直,水平或者对角线的方向连在了一起。但是各个方向有不同的跨度。
水平方向上的跨度支持:1,2,4,12。
垂直方向上的跨度支持:1,2,16,18。
对角线方向上的跨度支持:1,2,16。

相比Virtex-6来说,垂直方向和对角线方向上的跨度已经做了很大的改进,跨度由原理Virtex-6的4变成了16,Long型有原来的12变成了18。长度的变化也有助于显着提高布通率。不过,布线资源的使用是由工具基于大家的时序约束自我进行的,也就是大家不用记住这些跨度的数量,因为到时候工具会根据你自己需要会自动进行相关布局布线的。

很多东西并不一定需要大家记住,只是大家再选择FPGA的时候做一个参考。因为我们肯定希望花最少的精力设计出一个最牛的设计。然后看着自己的设计,喝杯茶,笑到哭。

原文链接

FPGA从Xilinx的7系列学起(2)相关推荐

  1. FPGA从Xilinx 的7系列学起(1)

    FPGA进入到一个工艺越来越牛的境界,很多人在学习FPGA的时候还在墨守陈规的从Spartan3学起,还是在ISE开始着手,总是觉得工艺是类似的,方法也是类似的.在和很多工程师一起讨论的时候,就明确的 ...

  2. FPGA从Xilinx的7系列学起(7)

    3.最基本的DSP资源 3.1 由FIR滤波器谈起 随着各种应用复杂度的不断提升,传统的DSP和处理器的架构无法支持这么复杂的并行数据算法的需求.FPGA却恰好能够满足这样的需求.FPGA拥有大量的D ...

  3. FPGA从Xilinx的7系列学起(6)

    用户必须要认识到,学习一下技巧可以让更多的逻辑放在更少的Slice中,使工具能够达到既实现设计时序要求又满足用户对功耗的要求.而现在很多用户缺乏代码编写的想法,编写出一个有时序问题的设计.为了满足要求 ...

  4. FPGA从Xilinx的7系列学起(4)

    2. 最基本的BlockRAM 2.1 BlockRAM的初探 BlockRAM资源对FPGA来说也是非常重要的,我们的很多设计用到了BlockRAM以后,可以变得设计非常灵活,这样我们就可以设计出很 ...

  5. FPGA从Xilinx 的7系列学起(5)

    2.4 BlockRAM的级联 7系列BlockRAM存储器可以把两个相邻RAM使用专用的布线资源级联到一起.这个对于工程师的重要性在于仅仅级联两块RAM的时候,可以考虑节省不少的资源.从上面说讲述中 ...

  6. FPGA从Xilinx的7系列学起(3)

    1.3再深入一点的了解CLB 这个图有点大,但是太经典了,搞得我不得不放弃扔掉它的想法.是不是有人已经看迷糊了.那咱就慢慢的清晰呗.有时候也不一定要一开始明白,如果一开始明白,那么会越来越糊涂. 那么 ...

  7. 基于Xilinx的Kintex-7系列XC7K325T的硬件加速卡

    产品型号: B-PCIE-K7F5XILINX的Kintex-7系列FPGA处理器 B-PCIE-K7F5是一款基于PCI Express总线架构的高性能FPGA算法加速卡,该板卡采用Xilinx的高 ...

  8. Xilinx FPGA资源解析与使用系列——Transceiver(十)PRBS、RX Equalizer、CDR

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Xilinx FPGA资源解析与使用系列--Transceiver(十)PRBS.RX Equalizer.CDR PRBS测试序列 ...

  9. Xilinx FPGA资源解析与使用系列——Transceiver(一)参考时钟解析

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Xilinx FPGA资源解析与使用系列--Transceiver(一)参考时钟解析 前言 IP核的部分设置 Quad 的定义是什么? ...

最新文章

  1. ON、WHERE、HAVING的区别
  2. Symbian的内存管理机制
  3. 八、pyqt5按钮类控件——QPushButton、QRadioButton、QCheckBox
  4. 面试官问我JVM内存结构,我真的是
  5. Oracle 查询基础
  6. SQL Server 中 JSON_MODIFY 的使用
  7. 在网上收集了一部分关于使用Google API进行手机定位的资料和大家分享
  8. arm linux 加载.a,如何将libc.a链接到arm-linux中的共享库中使用arm-none-linux-gnueabi-gcc...
  9. python教学视频q_#python如何用pyqt5打开视频(还有PPT)并输出到QLabel上?#python怎么运行视屏教程...
  10. Tableau中的行级数据安全性——第2部分
  11. 07:有趣的跳跃【一维数组】
  12. Android 中文 API (28) —— CheckedTextView
  13. Ubuntu 安装 OpenCV(亲测有效)
  14. 大学生个人网页模板 简单网页制作作业成品 极简风格个人介绍HTML网页设计(舞蹈培训网页)
  15. 防火墙资源(jetio,comodo,outpost,pc tool,zonealarm pro
  16. 翻转数组,将数组倒序输出
  17. 项目管理第十二章项目采购管理
  18. 帝国cms框架的Webshell
  19. View 的各种知识
  20. 知识图谱学习(二):电商知识图谱

热门文章

  1. 【Vegas2006】自我介绍for校青春风采大赛
  2. linux 路由器去广告,linux – 如何正确发送路由器广告?
  3. 两个有序链表排序C语言,K个有序链表的归并排序(C语言)
  4. java int 0.5_java int转float精度缺失原因?
  5. android 计算运动速度,android – 计算参考真北的加速度
  6. 第十六届全国大学生智能汽车竞赛总决赛 AI视觉组线上赛细则
  7. 2021春季学期-创新设计与实践-Lesson6
  8. 磁铁驱动反向续流串接电阻的的分析
  9. css实现提示信息,单纯使用CSS实现动态提示信息
  10. 地址设置nginx负载均衡_nginx负载均衡配置实例