FPGA - 7系列 FPGA内部结构之CLB -01- CLB资源概述

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介: 本文节选UG474进行整理翻译,用于对CLB进行简单介绍,同时简单介绍了下针对逻辑资源设计的推荐流程。

前言

本文节选UG474进行整理翻译,用于对CLB进行简单介绍,同时简单介绍了下针对逻辑资源设计的推荐流程。

CLB简介

7 系列可配置逻辑块 (CLB) 提供先进的高性能 FPGA 逻辑:

  • 真6 输入查找表 (LUT) 技术
  • 双 LUT5(5 输入 LUT)选项
  • 分布式存储器和移位寄存器逻辑功能
  • 用于算术功能的专用高速进位逻辑
  • 用于有效利用的宽多路复用器

CLB 是实现顺序电路和组合电路的主要逻辑资源。 每个 CLB 元素都连接到一个开关矩阵,用于访问通用路由矩阵。  CLB 元素包含一对切片。

7 系列 FPGA 中的 LUT 可配置为具有一个输出的 6 输入 LUT,或配置为具有独立输出但公共地址或逻辑输入的两个 5 输入 LUT。 每个 5 输入 LUT 输出可以选择在触发器中寄存。 四个这样的 6 输入 LUT 及其八个触发器以及多路复用器和算术进位逻辑形成一个 slice,两个 slice 形成一个 CLB。 每个切片四个触发器(每个 LUT 一个)可以选择配置为锁存器。 在这种情况下,该片中剩余的四个触发器必须保持未使用状态。

7 系列 CLB 特性

7 系列 CLB 与 Virtex-6 FPGA 系列中的 CLB 相同。  CLB 与 Spartan-6 FPGA 系列的 CLB 非常相似,但有以下区别:

  • 列式架构
  • 轻松扩展到更高的密度
  • CLB 之间的更多路由
  • 仅 SLICEL 和 SLICEM(无 Spartan-6 FPGA SLICEX)
  • 所有切片都支持进位逻辑
  • 更多优化

CLB 结构中的通用特性简化了从 Spartan-6 和 Virtex-6 系列到 7 系列器件的设计迁移。 独特的平面布置图意味着在实施最初针对早期 FPGA 的设计之前应消除位置限制。 与 Virtex-6 FPGA 系列相比,互连布线资源在尺寸、数量和灵活性上都有所增加,从而提高了自动布局布线结果的质量。

设备资源

CLB 资源可在所有 7 系列系列中进行扩展,提供可提高效率、IP 实施和设计迁移的通用架构。  CLB 的数量以及 CLB 与其他设备资源的比例区分了 7 系列系列。  7 系列系列之间的迁移不需要对 CLB 进行任何设计更改。

器件容量通常以逻辑单元来衡量,逻辑单元相当于经典的四输入 LUT 和触发器。  7 系列 FPGA CLB 六输入 LUT,丰富的触发器和锁存器,进位逻辑,以及在 SLICEM 中创建分布式 RAM 或移位寄存器的能力,增加了有效容量。 逻辑单元和 6 输入 LUT 的数量之比为 1.6:1。

推荐的设计流程

CLB 资源是针对通用设计逻辑推断的,不需要实例化。 好的 HDL 设计就足够了。 需要注意的一些事项:

  • CLB 触发器具有置位或复位。 设计者不能同时使用 set 和 reset。
  • Flip-flops 很丰富。 应该考虑使用流水线来提高性能。
  • 控制输入在片或CLB 之间共享。 应尽量减少设计所需的独特控制输入的数量。 控制输入包括时钟、时钟使能、设置/复位和写使能。
  • 6 输入 LUT 可用作 32 位移位寄存器以实现高效。
  • 6 输入 LUT 可用作 64 x 1 存储器以满足小型存储要求。
  • 专用进位逻辑有效地实现算术功能。

这些步骤表明了推荐的设计流程:

  1. 使用首选方法(HDL、IP 等)实施设计。
  2. 评估利用率报告以确定使用的资源。
  3. 考虑使用触发器。
  1. 为了提升性能使用流水线操作。
  2. 在专用资源(块 RAM、DSP)的输出端使用专用触发器。
  3. 允许移位寄存器使用 SRL(避免设置/重置)
  1. 尽量减少设置/重置的使用。

reference

  1. UG474
目录
相关文章
|
存储 Kubernetes 负载均衡
【Kubernetes系统原理、核心资源、Pod原理与创建及生命周期管理、Job、Cronjob、Statefulset、Service负载均衡Ingress】
【Kubernetes系统原理、核心资源、Pod原理与创建及生命周期管理、Job、Cronjob、Statefulset、Service负载均衡Ingress】
391 2
|
异构计算 内存技术
FPGA - 7系列 FPGA内部结构之SelectIO -08- 高级逻辑资源之OSERDESE2(二)
FPGA - 7系列 FPGA内部结构之SelectIO -08- 高级逻辑资源之OSERDESE2
511 0
FPGA - 7系列 FPGA内部结构之SelectIO -08- 高级逻辑资源之OSERDESE2(二)
|
7月前
|
存储 芯片 异构计算
LabVIEW如何优化FPGA可用资源或提升速度
LabVIEW如何优化FPGA可用资源或提升速度
53 0
|
负载均衡 网络协议 算法
云计算中的负载均衡技术,确保资源的平衡分配
云计算中的负载均衡技术,确保资源的平衡分配
549 0
|
算法 关系型数据库 MySQL
FPGA:Verilog HDL程序的基本结构
FPGA:Verilog HDL程序的基本结构
166 0
FPGA:Verilog HDL程序的基本结构
|
算法 异构计算
m基于FPGA的分布式FIR滤波器verilog设计,对比普通结构以及DA结构
m基于FPGA的分布式FIR滤波器verilog设计,对比普通结构以及DA结构
190 0
m基于FPGA的分布式FIR滤波器verilog设计,对比普通结构以及DA结构
|
移动开发 算法 异构计算
m基于FPGA的半带滤波器verilog设计,对比普通结构以及乘法器复用结构
m基于FPGA的半带滤波器verilog设计,对比普通结构以及乘法器复用结构
296 0
m基于FPGA的半带滤波器verilog设计,对比普通结构以及乘法器复用结构
|
异构计算
FPGA新起点V1开发板(一)——资源介绍(顺便说下无人机的进度状况)
FPGA新起点V1开发板(一)——资源介绍(顺便说下无人机的进度状况)
188 0
FPGA新起点V1开发板(一)——资源介绍(顺便说下无人机的进度状况)
|
存储 Java 异构计算
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(二)
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述
711 0
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(二)
|
存储 数据可视化 芯片
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(一)
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述
654 0
FPGA - 7系列 FPGA内部结构之Clocking -01- 时钟架构概述(一)