跳到主要内容
Xilinx 7 系列 FPGA 数据手册核心特性与选型指南 | 极客日志
编程语言 算法
Xilinx 7 系列 FPGA 数据手册核心特性与选型指南 7 系列 FPGA 涵盖 Spartan、Artix、Kintex 及 Virtex 四大系列,基于 28nm HPL 工艺。文章详细对比了各系列的逻辑单元、DSP 性能、收发器带宽及封装选项。重点解析了 CLB 架构、时钟管理单元 (MMCM/PLL)、块 RAM 配置、SelectIO 技术及 PCIe 集成模块。同时提供了 AES 加密、部分重配置及 XADC 等高级功能说明,辅助工程师进行硬件选型与系统架构设计。
7 系列 FPGA 数据手册:概述
DS180 (v2.6.1) 中文版 2020 年 9 月 8 日
概述
Xilinx 7 系列 FPGA 包含四个 FPGA 系列,可满足从低成本、小尺寸、成本敏感、高容量应用到对连接带宽、逻辑容量和信号处理能力要求最高的超高端高性能应用的全部系统需求。7 系列 FPGA 包括:
Spartan-7 系列: 针对低成本、最低功耗和高 I/O 性能进行了优化。提供低成本、极小外形封装,以实现最小的 PCB 面积。
Artix-7 系列: 针对需要串行收发器和高 DSP 及逻辑吞吐量的低功耗应用进行了优化。为高吞吐量、成本敏感型应用提供最低的总物料清单成本。
Kintex-7 系列: 针对最佳性价比进行了优化,与上一代相比性能提升 2 倍,开创了一类新的 FPGA。
Virtex-7 系列: 针对最高的系统性能和容量进行了优化,系统性能提升 2 倍。通过堆叠硅片互联 (SSI) 技术实现最高性能的设备。
7 系列 FPGA 基于最先进的高性能、低功耗 (HPL)、28 nm、高 K 金属栅极 (HKMG) 工艺技术,实现了无与伦比的系统性能提升,提供 2.9 Tb/s 的 I/O 带宽、200 万逻辑单元容量和 5.3 TMAC/s 的 DSP 性能,同时比上一代器件功耗降低 50%,为 ASSP 和 ASIC 提供了完全可编程的替代方案。
7 系列 FPGA 特性摘要
基于真正的 6 输入查找表 (LUT) 技术的先进高性能 FPGA 逻辑,可配置为分布式存储器。
36 Kb 双端口块 RAM,内置 FIFO 逻辑,用于片上数据缓冲。
高性能 SelectIO™技术,支持高达 1,866 Mb/s 的 DDR3 接口。
高速串行连接性,内置多千兆位收发器,速率从 600 Mb/s 到最高 6.6 Gb/s 至 28.05 Gb/s,提供特殊的低功耗模式,针对芯片到芯片接口进行了优化。
用户可配置的模拟接口 (XADC),包含双通道 12 位 1MSPS 模数转换器,带有片上温度和电源传感器。
DSP Slice,包含 25×18 乘法器、48 位累加器和预加器,用于高性能滤波,包括优化的对称系数滤波。
强大的时钟管理单元 (CMT),结合了锁相环 (PLL) 和混合模式时钟管理器 (MMCM) 模块,实现高精度和低抖动。
使用 MicroBlaze™处理器快速部署嵌入式处理。
用于 PCI Express® (PCIe) 的集成块,支持高达 x8 Gen3 的端点 (Endpoint) 和根端口 (Root Port) 设计。
广泛的配置选项,包括支持通用存储器、带有 HMAC/SHA-256 认证的 256 位 AES 加密,以及内置的 SEU 检测与校正。
低成本、键合线、裸片倒装和高信号完整性倒装封装,在同一封装内提供不同家族成员间的轻松迁移。
所有封装均提供无铅 (Pb-free) 版本,选定封装提供含铅 (Pb) 选项。
采用 28 nm、HKMG、HPL 工艺、1.0V 内核电压工艺技术以及 0.9V 内核电压选项(实现更低功耗)设计,实现高性能和最低功耗。
表 1:7 系列 FPGA 系列对比
最大能力 Spartan-7 Artix-7 Kintex-7 Virtex-7 逻辑单元 102K 215K 478K 1,955K 块 RAM (1) 4.2 Mb 13 Mb 34 Mb 68 Mb DSP Slice 160 740 1,920 3,600 DSP 性能 (2)
MicroBlaze CPU (3) 260 DMIPS 303 DMIPS 438 DMIPS 441 DMIPS
收发器速度 - 6.6 Gb/s 12.5 Gb/s 28.05 Gb/s
串行带宽 - 211 Gb/s 800 Gb/s 2,784 Gb/s
PCIe 接口 - x4 Gen2 x8 Gen2 x8 Gen3
存储器接口 800 Mb/s 1,066 Mb/s 1,866 Mb/s 1,866 Mb/s
I/O 电压 1.2V–3.3V 1.2V–3.3V 1.2V–3.3V 1.2V–3.3V
封装选项 低成本、键合线 低成本、键合线、裸片倒装 裸片倒装和高性能倒装 最高性能倒装
额外的存储器可用分布式 RAM 的形式提供。
峰值 DSP 性能数据基于对称滤波器实现。
峰值 MicroBlaze CPU 性能数据基于微控制器预设。
Spartan-7 FPGA 特性摘要 表 2:Spartan-7 FPGA 按器件分类特性摘要
器件 逻辑单元 CLB DSP Slice (2) 块 RAM 块 (3) CMT (4) PCIe GT XADC 块 总 I/O Bank (5) 最大用户 I/O Slice (1) 最大分布式 RAM (Kb) 18 Kb 36 Kb 最大 (Kb) XC7S6 6,000 938 70 10 10 5 180 2 0 0 XC7S15 12,800 2,000 150 20 20 10 360 2 0 0 XC7S25 23,360 3,650 313 80 45 22.5 810 3 0 0 XC7S50 52,160 8,150 600 120 75 37.5 1,350 5 0 0 XC7S75 76,800 12,000 832 140 90 45 1,620 8 0 0 XC7S100 102,400 16,000 1,100 160 120 60 2,160 8 0 0
表 3:Spartan-7 FPGA 器件 - 封装组合和最大 I/O
封装 CPGA196 CSGA225 CSGA324 FTGB196 FGGA484 FGGA676 尺寸 (mm) 8 x 8 13 x 13 15 x 15 15 x 15 23 x 23 27 x 27 球间距 (mm) 0.5 0.8 0.8 1.0 1.0 1.0 器件 HR I/O(1) HR I/O(1) HR I/O(1) HR I/O(1) HR I/O(1) HR I/O(1) XC7S6 100 100 100 XC7S15 100 100 100 XC7S25 150 150 100 XC7S50 210 100 250 XC7S75 338 400 XC7S100 338 400
HR = 高范围 I/O,支持 1.2V 至 3.3V 的 I/O 电压。
Artix-7 FPGA 特性摘要 表 4:Artix-7 FPGA 按器件分类特性摘要
器件 逻辑单元 可配置逻辑块 (CLB) DSP48E1 Slice (2) 块 RAM 块 (3) CMT (4) PCIe (5) GTPS XADC 块 总 I/O Bank (6) 最大用户 I/O (7) Slice (1) 最大分布式 RAM (Kb) 18 Kb 36 Kb 最大 (Kb) XC7A12T 12,800 2,000 171 40 40 20 720 3 1 4 XC7A15T 16,640 2,600 200 45 50 25 900 5 1 4 XC7A25T 23,360 3,650 313 80 45 22.5 810 3 1 4 XC7A35T 33,280 5,200 400 90 100 50 1,800 5 1 4 XC7A50T 52,160 8,150 600 120 150 75 2,700 5 1 4 XC7A75T 75,520 11,800 892 180 210 105 3,780 6 1 8 XC7A100T 101,440 15,850 1,188 240 270 135 4,860 6 1 8 XC7A200T 215,360 33,650 2,888 740 730 365 13,140 10 1 16
表 5:Artix-7 FPGA 器件 - 封装组合和最大 I/O
封装 (1) CPG236 CPG238 CSG324 CSG325 FTG256 SBG484 FGG484(2) FBG484(2) FGG676(3) FBG676(3) FFG1156 尺寸 (mm) 10x10 10x10 15x15 15x15 17x17 19x19 23x23 23x23 27x27 27x27 35x35 球间距 (mm) 0.5 0.5 0.8 0.8 1.0 0.8 1.0 1.0 1.0 1.0 1.1 器件 GTP(4) I/O HR(5) GTP(4) I/O HR(5) GTP I/O HR(5) GTP(4) I/O HR(5) GTP(4) I/O HR(5) GTP(4) XC7A12T 2 100 2 100 2 150 XC7A15T 4 150 4 4 250 XC7A25T 2 100 2 100 2 150 XC7A35T 4 150 4 4 250 XC7A50T 4 150 4 4 250 XC7A75T 8 XC7A100T 8 XC7A200T
每个 7 系列 FPGA Slice 包含四个 LUT 和八个触发器;只有部分 Slice 可以使用其 LUT 作为分布式 RAM 或 SRL。
每个 DSP Slice 包含一个预加器、一个 25x18 乘法器、一个加法器和一个累加器。
块 RAM 本质上大小为 36 Kb;每个块也可以用作两个独立的 18 Kb 块。
每个 CMT 包含一个 MMCM 和一个 PLL。
Artix-7 FPGA 的 PCI Express 接口块支持高达 x4 Gen2。
不包括配置 Bank 0。
此数字不包括 GTP 收发器。
CP、CS、FT 和 FG 封装中的 GTP 收发器支持高达 6.25 Gb/s 的数据速率。
HR = 高范围 I/O,支持 1.2V 至 3.3V 的 I/O 电压。
所有列出的封装均为无铅 (Pb-free)。某些封装提供含铅 (Pb) 选项。
FGG484 和 FBG484 封装的器件引脚布局兼容。
FGG676 和 FBG676 封装的器件引脚布局兼容。
Kintex-7 FPGA 特性摘要 表 6:Kintex-7 FPGA 按器件分类特性摘要
器件 逻辑单元 可配置逻辑块 (CLBs) DSP Slice(2) 块 RAM 块 (3) CMT (4) PCIe (5) GTXs XADC 块 总 I/O Bank (6) 最大用户 I/O (7) Slice (1) 最大分布式 RAM (Kb) 18 Kb 36 Kb 最大 (Kb) XC7K70T 65,600 10,250 838 240 270 135 4,860 6 1 8 XC7K160T 162,240 25,350 2,188 600 650 325 11,700 8 1 8 XC7K325T 326,080 50,950 4,000 840 890 445 16,020 10 1 16 XC7K355T 356,160 55,650 5,088 1,440 1,430 715 25,740 6 1 24 XC7K410T 406,720 63,550 5,663 1,540 1,590 795 28,620 10 1 16 XC7K420T 416,960 65,150 5,938 1,680 1,670 835 30,060 8 1 32 XC7K480T 477,760 74,650 6,788 1,920 1,910 955 34,380 8 1 32
表 7:Kintex-7 FPGA 器件 - 封装组合和最大 I/O
封装 (1) FBG484 FBG676(2) FFG676(2) FBG900(3) FFG900(3) FFG901 FFG1156 尺寸 (mm) 23x23 27x27 27x27 31x31 31x31 31x31 35x35 球间距 (mm) 1.0 1.0 1.0 1.0 1.0 1.0 1.0 器件 GTX (4) I/O GTX (4) I/O GTX I/O GTX (4) HR(5) HP(6) HR(5) HP(6) XC7K70T 4 185 100 8 200 100 XC7K160T 4 185 100 8 250 150 8 XC7K325T 8 250 150 8 250 150 16 XC7K355T XC7K410T 8 250 150 8 250 150 16 XC7K420T XC7K480T
每个 7 系列 FPGA Slice 包含四个 LUT 和八个触发器;只有部分 Slice 可以使用其 LUT 作为分布式 RAM 或 SRL。
每个 DSP Slice 包含一个预加器、一个 25x18 乘法器、一个加法器和一个累加器。
块 RAM 本质上大小为 36 Kb;每个块也可以用作两个独立的 18 Kb 块。
每个 CMT 包含一个 MMCM 和一个 PLL。
Kintex-7 FPGA 的 PCI Express 接口块支持高达 x8 Gen2。
不包括配置 Bank 0。
此数字不包括 GTX 收发器。
所有列出的封装均为无铅 (Pb-free)。某些封装提供含铅 (Pb) 选项。
FBG676 和 FFG676 封装的器件引脚布局兼容。
FBG900 和 FFG900 封装的器件引脚布局兼容。
FB 封装中的 GTX 收发器支持以下最大数据速率:FBG484 中为 10.3Gb/s;FBG676 和 FBG900 中为 6.6Gb/s。详情请参阅 Kintex-7 FPGAs 数据手册:直流与交流开关特性 (DS182)。
HR = 高范围 I/O,支持 1.2V 至 3.3V 的 I/O 电压。
HP = 高性能 I/O,支持 1.2V 至 1.8V 的 I/O 电压。
Virtex-7 FPGA 特性摘要 器件 逻辑单元 可配置逻辑块 (CLBs) DSP Slice(2) 块 RAM 块 (3) CMT (4) PCIe (5) GTX GTH GTZ XADC 块 总 I/O Bank (6) 最大用户 I/O (7) SLR (8) Slice (1) 最大分布式 RAM (Kb) 18 Kb 36 Kb 最大 (Kb) XC7V585T 582,720 91,050 6,938 1,260 1,590 795 28,620 18 3 36 0 0 1 XC7V2000T 1,954,560 305,400 21,550 2,160 2,584 1,292 46,512 24 4 36 0 0 1 XC7VX330T 326,400 51,000 4,388 1,120 1,500 750 27,000 14 2 0 28 0 1 XC7VX415T 412,160 64,400 6,525 2,160 1,760 880 31,680 12 2 0 48 0 1 XC7VX485T 485,760 75,900 8,175 2,800 2,060 1,030 37,080 14 4 0 56 0 1 XC7VX550T 554,240 86,600 8,725 2,880 2,360 1,180 42,480 20 2 0 80 0 1 XC7VX690T 693,120 108,300 10,888 3,600 2,940 1,470 52,920 20 3 0 80 0 1 XC7VX980T 979,200 153,000 13,838 3,600 3,000 1,500 54,000 18 3 0 72 0 1 XC7VX1140T 1,139,200 178,000 17,700 3,360 3,760 1,880 67,680 24 4 0 96 0 1 XC7VH580T 580,480 90,700 8,850 1,680 1,880 940 33,840 12 2 0 48 8 1 XC7VH870T 876,160 136,900 13,275 2,520 2,820 1,410 50,760 18 3 0 72 16 1
(注:原文第 6 页表格内容不完整,仅列出表头,故此处省略)
表 11:Virtex-7 HT FPGA 器件 - 封装组合和最大 I/O
封装 (1) FLG1155 FLG1931 FLG1932 尺寸 (mm) 35 x 35 45 x 45 45 x 45 球间距 1.0 1.0 1.0 器件 GTH GTZ I/O HP(2) XC7VH580T 24 8 400 XC7VH870T
所有列出的封装均为无铅 (Pb-free),符合豁免 15。某些封装提供含铅 (Pb) 选项。
HP = 高性能 I/O,支持 1.2V 至 1.8V 的 I/O 电压。
堆叠硅片互联 (SSI) 技术 创建大容量 FPGA 面临许多挑战,Xilinx 通过 SSI 技术解决了这些问题。SSI 技术使得多个超级逻辑区域 (SLR) 能够结合在一个无源中介层上,采用业界领先的成熟制造和组装技术,创建一个拥有超过一万个 SLR 间连接的单个 FPGA,提供具有低延迟和低功耗的超高带宽连接。Virtex-7 FPGA 中使用两种类型的 SLR:Virtex-7 T 器件中使用的逻辑密集型 SLR,以及 Virtex-7 XT 和 HT 器件中使用的 DSP/块 RAM/收发器资源丰富的 SLR。SSI 技术使得生产比传统制造方法能力更强的 FPGA 成为可能,从而能够以更快的速度和更低的风险制造出有史以来容量最高、性能最强的 FPGA。数千个跨接 SLR 的超长线 (SLL) 路由资源和超高性能时钟线确保设计能够无缝地跨越这些高密度可编程逻辑器件。
CLB、Slice 和 LUT
真正的 6 输入查找表 (LUT)
LUT 内的存储能力
寄存器和移位寄存器功能
7 系列 FPGA 中的 LUT 可以配置为一个 6 输入 LUT(64 位 ROM)带一个输出,或配置为两个 5 输入 LUT(32 位 ROM)带独立输出但共用地址或逻辑输入。每个 LUT 输出可以选择性地在触发器中寄存。四个这样的 LUT 及其八个触发器,以及多路复用器和算术进位链构成一个 Slice,两个 Slice 构成一个可配置逻辑块 (CLB)。每个 Slice 中的八个触发器中的四个(每个 LUT 一个)可以选择性地配置为锁存器。
所有 Slice 中的 25% 至 50% 还可以将其 LUT 用作分布式 64 位 RAM、32 位移位寄存器 (SRL32) 或两个 SRL16。现代综合工具充分利用这些高效的逻辑、算术和存储特性。
时钟管理
用于低偏斜时钟分配的高速缓冲器和路由
频率合成和相位偏移
低抖动时钟生成和抖动滤波
每个 7 系列 FPGA 拥有多达 24 个时钟管理单元 (CMT),每个 CMT 由一个混合模式时钟管理器 (MMCM) 和一个锁相环 (PLL) 组成。
混合模式时钟管理器 (MMCM) 和锁相环 (PLL) MMCM 和 PLL 共享许多特性。两者都可以作为宽范围频率的频率合成器和输入时钟的抖动滤波器。两个组件的核心都是一个压控振荡器 (VCO),它根据从鉴频鉴相器 (PFD) 接收的输入电压来加速或减速。
有三组可编程分频器:D、M 和 O。预分频器 D(可通过配置及之后的 DRP 编程)降低输入频率,并馈送到传统 PLL 鉴频鉴相器的一个输入端。反馈分频器 M(可通过配置及之后的 DRP 编程)作为乘法器,因为它对 VCO 输出频率进行分频后馈送到鉴相器的另一个输入端。必须适当选择 D 和 M,以使 VCO 保持在其指定的频率范围内。VCO 有八个等间距的输出相位(0°、45°、90°、135°、180°、225°、270°和 315°)。每个相位都可以被选择来驱动一个输出分频器(PLL 有 6 个,O0 到 O5;MMCM 有 7 个,O0 到 O6),每个分频器可通过配置编程为 1 到 128 之间的任何整数。
MMCM 和 PLL 有三种输入抖动滤波选项:低带宽、高带宽或优化模式。低带宽模式具有最佳的抖动衰减,但相位偏移不是最小。高带宽模式具有最佳的相位偏移,但抖动衰减不是最佳。优化模式允许工具找到最佳设置。
MMCM 附加可编程特性 MMCM 可以在反馈路径(作为乘法器)或一个输出路径中拥有一个分数计数器。分数计数器允许 1/8 的非整数增量,从而可以将频率合成能力提高 8 倍。
MMCM 还可以提供固定或动态相位偏移,偏移增量很小,取决于 VCO 频率。在 1600 MHz 时,相位偏移时间增量为 11.2 ps。
时钟分配 每个 7 系列 FPGA 提供六种不同类型的时钟线(BUFG、BUFB、BUFIO、BUFH、BUFMR 和高性能时钟),以满足高扇出、短传播延迟和极低偏斜的不同时钟需求。
全局时钟线 在每个 7 系列 FPGA(XC7S6 和 XC7S15 除外)中,32 条全局时钟线具有最高的扇出,可以到达每个触发器时钟、时钟使能、置位/复位以及许多逻辑输入。在任何时钟区域内,有 12 条由水平时钟缓冲器 (BUFH) 驱动的全局时钟线。每个 BUFH 可以独立使能/禁用,允许在一个区域内关闭时钟,从而提供对哪些时钟区域消耗功耗的精细控制。全局时钟线可以由全局时钟缓冲器驱动,这些缓冲器也可以执行无毛刺时钟多路复用和时钟使能功能。全局时钟通常由 CMT 驱动,这可以完全消除基本的时钟分配延迟。
区域时钟 区域时钟可以驱动其区域内所有时钟目的地。一个区域被定义为 50 个 I/O 和 50 个 CLB 高、芯片一半宽的区域。7 系列 FPGA 拥有 2 到 24 个区域。每个区域有四条区域时钟走线。每个区域时钟缓冲器可以由四个时钟能力输入引脚中的任何一个驱动,其频率可以选择性地除以 1 到 8 之间的任何整数。
I/O 时钟 I/O 时钟特别快,仅服务于 I/O 逻辑和串行器/解串器 (SerDes) 电路,如 I/O 逻辑部分所述。7 系列器件具有从 MMCM 到 I/O 的直接连接,用于低抖动、高性能接口。
块 RAM
双端口 36 Kb 块 RAM,端口宽度最大为 72 位
可编程 FIFO 逻辑
内置可选的错误校正电路
每个 7 系列 FPGA 拥有 5 到 1,880 个双端口块 RAM,每个存储 36 Kb。每个块 RAM 有两个完全独立的端口,除了存储的数据外,两者不共享任何东西。
同步操作 每次存储器访问,无论是读还是写,都由时钟控制。所有输入(数据、地址、时钟使能和写使能)都被寄存。没有时钟,什么都不发生。输入地址始终被时钟控制,保持数据直到下一次操作。可选的输出数据流水线寄存器允许更高的时钟速率,但代价是多一个周期的延迟。
在写操作期间,数据输出可以反映先前存储的数据、新写入的数据,或者保持不变。
可编程数据宽度 每个端口可以配置为 32K×1、16K×2、8K×4、4K×9(或 8)、2K×18(或 16)、1K×36(或 32)或 512×72(或 64)。两个端口可以有任何不同的数据宽高比,没有任何限制。
每个块 RAM 可以分为两个完全独立的 18 Kb 块 RAM,每个都可以配置为从 16K×1 到 512×36 的任何宽高比。前面描述的整个 36 Kb 块 RAM 的所有特性也适用于每个较小的 18 Kb 块 RAM。
只有在简单双端口 (SDP) 模式下,才能访问大于 18 位(18 Kb RAM)或 36 位(36 Kb RAM)的数据宽度。在此模式下,一个端口专用于读操作,另一个端口专用于写操作。在 SDP 模式下,一侧(读或写)可以是可变的,而另一侧固定为 32/36 或 64/72 位。
双端口 36 Kb RAM 的两侧都可以是可变宽度的。
两个相邻的 36 Kb 块 RAM 可以配置为一个级联的 64K×1 双端口 RAM,无需任何额外逻辑。
错误检测与校正 每个 64 位宽的块 RAM 可以生成、存储和利用额外的八个汉明码位,并在读取过程中执行单比特错误校正和双比特错误检测 (ECC)。当写入或读取外部 64 至 72 位宽的存储器时,也可以使用 ECC 逻辑。
FIFO 控制器 内置的 FIFO 控制器用于单时钟(同步)或双时钟(异步或多速率)操作,递增内部地址并提供四个握手标志:满 (full)、空 (empty)、几乎满 (almost full) 和几乎空 (almost empty)。几乎满和几乎空标志可自由编程。与块 RAM 类似,FIFO 的宽度和深度是可编程的,但写和读端口始终具有相同的宽度。
首字直通 (First word fall-through) 模式在第一次读操作之前就将第一个写入的字呈现在数据输出上。在第一个字被读出后,此模式与标准模式没有区别。
数字信号处理 - DSP Slice
25×18 二进制补码乘法器/累加器,高分辨率(48 位)信号处理器
省电的预加器,用于优化对称滤波器应用
高级特性:可选的流水线、可选的 ALU、用于级联的专用总线
DSP 应用使用许多二进制乘法器和累加器,最好在专用的 DSP Slice 中实现。所有 7 系列 FPGA 都拥有许多专用的、全定制、低功耗的 DSP Slice,在保持系统设计灵活性的同时,兼顾了高速度和小面积。
每个 DSP Slice 主要由一个专用的 25×18 位二进制补码乘法器和一个 48 位累加器组成,两者均可高达 741 MHz 运行。乘法器可以被动态旁路,两个 48 位输入可以馈送到单指令多数据 (SIMD) 算术单元(双 24 位加/减/累加或四 12 位加/减/累加)或逻辑单元,该逻辑单元可以对两个操作数产生任意十种不同的逻辑功能。
DSP 包含一个额外的预加器,通常用于对称滤波器。这种预加器提高了密集设计的性能,并将 DSP Slice 数量减少多达 50%。DSP 还包含一个 48 位宽的模式检测器,可用于收敛性或对称舍入。当与逻辑单元结合使用时,模式检测器还能够实现 96 位宽的逻辑功能。
DSP Slice 提供了广泛的流水线和扩展能力,提高了许多应用的速率和效率,这些应用超越了数字信号处理,例如宽动态总线移位器、存储器地址发生器、宽总线多路复用器和内存映射 I/O 寄存器文件。累加器也可以用作同步加/减计数器。
输入/输出
高性能 SelectIO 技术,支持 1,866 Mb/s DDR3
封装内集成高频去耦电容,以增强信号完整性
数字控制阻抗,可置于高阻态以实现最低功耗、高速 I/O 操作
I/O 引脚的数量取决于器件和封装尺寸。每个 I/O 都是可配置的,可以符合大量的 I/O 标准。除了电源引脚和少数专用配置引脚外,所有其他封装引脚都具有相同的 I/O 能力,仅受某些分组规则约束。7 系列 FPGA 中的 I/O 分为高范围 (HR) 和高性能 (HP) 两类。HR I/O 提供最宽的电压支持范围,从 1.2V 到 3.3V。HP I/O 针对最高性能操作进行了优化,电压范围为 1.2V 至 1.8V。
7 系列 FPGA 中的 HR 和 HP I/O 引脚按 bank 组织,每个 bank 有 50 个引脚。每个 bank 有一个共同的 VCCO 输出电源,也为某些输入缓冲器供电。某些单端输入缓冲器需要内部产生或外部施加的参考电压 (VREF)。每个 bank 有两个 VREF 引脚(配置 bank 0 除外)。单个 bank 只能有一个 VREF 电压值。
Xilinx 7 系列 FPGA 采用多种封装类型以满足用户需求,包括用于最低成本的小尺寸键合线封装;传统的高性能倒装芯片封装;以及在更小尺寸和高性能之间取得平衡的裸片倒装封装。在倒装芯片封装中,硅片通过高性能倒装工艺连接到封装基板。受控 ESR 分立去耦电容器安装在封装基板上,以优化在输出同时开关 (SSO) 条件下的信号完整性。
I/O 电气特性 单端输出使用传统的 CMOS 推挽输出结构,向 VCCO(高)或地(低)驱动,并且可以置于高阻态。系统设计人员可以指定压摆率和输出强度。输入始终处于活动状态,但在输出活动时通常被忽略。每个引脚可以选择性地具有弱上拉或弱下拉电阻。
大多数信号引脚对可以配置为差分输入对或输出对。差分输入引脚对可以选择性地用内部 100Ω电阻端接。所有 7 系列器件都支持 LVDS 以外的差分标准:RSDS、BLVDS、差分 SSTL 和差分 HSTL。
每个 I/O 都支持存储器 I/O 标准,例如单端和差分 HSTL,以及单端 SSTL 和差分 SSTL。SSTL I/O 标准可以支持高达 1,866 Mb/s 的数据速率,用于 DDR3 接口应用。
三态数字控制阻抗和低功耗 I/O 特性 三态数字控制阻抗 (T_DCI) 可以控制输出驱动阻抗(串联端接),或者可以为输入信号提供到 VCCO 的并联端接或到 VCCO/2 的分裂(戴维南)端接。这允许用户为使用 T_DCI 的信号消除片外端接。除了节省电路板空间外,端接在输出模式或三态时会自动关闭,与片外端接相比节省了大量功耗。I/O 还具有用于 IBUF 和 IDELAY 的低功耗模式,以进一步节省功耗,特别是在用于实现存储器接口时。
I/O 逻辑
输入和输出延迟 所有输入和输出都可以配置为组合式或寄存式。所有输入和输出都支持双数据速率 (DDR)。任何输入和某些输出可以单独延迟最多 32 个增量,每个增量为 78 ps、52 ps 或 39 ps。这种延迟通过 IDELAY 和 ODELAY 实现。延迟步进数可以通过配置设置,并且在使用过程中也可以递增或递减。
ISERDES 和 OSERDES 许多应用将高速、位串行 I/O 与器件内部较慢的并行操作相结合。这需要在 I/O 结构内部包含串行器和解串器 (SerDes)。每个 I/O 引脚拥有一个 8 位 IOSERDES(ISERDES 和 OSERDES),能够执行可编程宽度为 2、3、4、5、6、7 或 8 位的串并或并串转换。通过级联两个相邻引脚的 IOSERDES(默认为差分 I/O),还可以支持 10 位和 14 位的更宽转换。ISERDES 具有特殊的过采样模式,能够进行异步数据恢复,适用于诸如基于 1.25 Gb/s LVDS I/O 的 SGMII 接口等应用。
低功耗千兆位收发器
高性能收发器,根据系列不同,线速率可达 6.6 Gb/s (GTP)、12.5 Gb/s (GTX)、13.1 Gb/s (GTH) 或 28.05 Gb/s (GTZ),为实现首个单器件 400G 解决方案奠定基础。
针对芯片到芯片接口优化的低功耗模式。
先进的发送预加重和去加重、接收器线性均衡 (CTLE) 和决策反馈均衡 (DFE),适用于长距离或背板应用。
接收均衡自动自适应和片上眼图扫描,便于串行链路调谐。
将超快串行数据传输到光模块、同一 PCB 上的 IC 之间、经过背板或更长距离,正变得越来越流行和重要,以使客户线卡能够扩展到 100 Gb/s 乃至 400 Gb/s。这需要专用的片上电路和能够应对这些高数据速率下信号完整性问题的差分 I/O。
7 系列 FPGA 中的收发器数量范围从 Artix-7 系列中的多达 16 个收发器电路,到 Kintex-7 系列中的多达 32 个,再到 Virtex-7 系列中的多达 96 个。每个串行收发器都是一个组合的发送器和接收器。各种 7 系列串行收发器使用环形振荡器和 LC 振荡器组合,或者对于 GTZ,使用单一的 LC 振荡器架构,以实现灵活性和性能的理想结合,同时允许 IP 在家族成员之间移植。不同的 7 系列家族成员提供不同的最高数据速率。GTP 最高工作于 6.6Gb/s,GTX 最高工作于 12.5Gb/s,GTH 最高工作于 13.1Gb/s,GTZ 最高工作于 28.05Gb/s。可以使用基于 FPGA 逻辑的过采样来实现更低的数据速率。串行发送器和接收器是独立的电路,使用先进的 PLL 架构将参考频率输入乘以某些可编程数值(最高 100),以产生位串行数据时钟。每个收发器都有大量用户可定义的特性和参数。所有这些都可以在器件配置期间定义,并且许多也可以在操作期间修改。
发送器 发送器本质上是一个并串转换器,转换比为 16、20、32、40、64 或 80。此外,GTZ 发送器支持高达 160 位的数据宽度。这允许设计者在高性能设计中权衡数据路径宽度与时序裕量。这些发送器输出通过单通道差分输出信号驱动 PC 板。TXOUTCLK 是适当分频的串行数据时钟,可直接用于寄存来自内部逻辑的并行数据。输入的并行数据通过一个可选的 FIFO 馈送,并具有用于 8B/10B、64B/66B 或 64B/67B 编码方案的额外硬件支持,以提供足够的跳变。位串行输出信号驱动两个封装引脚,输出差分信号。该输出信号对具有可编程的信号摆幅以及可编程的预加重和去加重,以补偿 PC 板损耗和其他互连特性。对于较短通道,可以降低摆幅以减少功耗。
接收器 接收器本质上是一个串并转换器,将输入的位串行差分信号转换为 16、20、32、40、64 或 80 位的并行字流。此外,GTZ 接收器支持高达 160 位的数据宽度。这允许 FPGA 设计者权衡内部数据路径宽度与逻辑时序裕量。接收器接收输入的差分数据流,通过可编程的线性和决策反馈均衡器(以补偿 PC 板和其他互连特性),并使用参考时钟输入启动时钟识别。不需要单独的时钟线。数据模式使用非归零 (NRZ) 编码,并通过使用所选编码方案可选地保证足够的数据跳变。然后,并行数据使用 RXUSRCLK 时钟传输到 FPGA 逻辑中。对于短通道,收发器提供一种特殊的低功耗模式 (LPM),可将功耗降低约 30%。
带外信令 收发器提供带外 (OOB) 信令,通常用于在高速串行数据传输未激活时,从发送器向接收器发送低速信号。这通常在链路处于断电状态或尚未初始化时完成。这有利于 PCI Express 和 SATA/SAS 应用。
用于 PCI Express 设计的集成接口模块
符合 PCI Express 基本规范修订版 2.1 或 3.0(取决于系列),具有端点 (Endpoint) 和根端口 (Root Port) 能力
根据器件系列,支持 Gen1 (2.5 Gb/s)、Gen2 (5 Gb/s) 和 Gen3 (8 Gb/s)
高级配置选项、高级错误报告 (AER) 和端到端 CRC(ECRC)
多功能和单根 I/O 虚拟化 (SR-IOV) 支持,可通过软逻辑封装实现或集成在模块中(取决于系列)
所有 Artix-7、Kintex-7 和 Virtex-7 器件都包含至少一个用于 PCI Express 技术的集成块,可配置为端点或根端口,符合 PCI Express 基本规范修订版 2.1 或 3.0。根端口可用于构建兼容的根复合体 (Root Complex) 的基础,允许通过 PCI Express 协议进行自定义 FPGA 到 FPGA 通信,并将 ASSP 端点设备(如以太网控制器或光纤通道 HBA)连接到 FPGA。
该模块可根据系统设计要求进行高度配置,可以 1、2、4 或 8 通道运行在 2.5 Gb/s、5.0 Gb/s 和 8.0 Gb/s 数据速率。对于高性能应用,该模块的高级缓冲技术提供高达 1,024 字节的灵活最大有效负载大小。该集成模块连接到集成的高速收发器以实现串行连接,并连接到块 RAM 以实现数据缓冲。这些元素结合起来实现了 PCI Express 协议的物理层、数据链路层和事务层。
Xilinx 提供了一个轻量级、可配置、易于使用的 LogiCORE™IP 封装,将各种构建模块(用于 PCI Express 的集成块、收发器、块 RAM 和时钟资源)结合到端点或根端口解决方案中。系统设计人员可以控制许多可配置参数:通道宽度、最大有效负载大小、FPGA 逻辑接口速率、参考时钟频率以及基址寄存器解码和过滤。
Xilinx 为该集成模块提供了两种封装:AXI4-Stream 和 AXI4(内存映射)。请注意,传统的 TRN/本地链接 (Local Link) 不适用于 7 系列器件中用于 PCI Express 的集成模块。AXI4-Stream 是为现有集成模块客户设计的,支持从 TRN 轻松迁移到 AXI4-Stream。AXI4(内存映射)是为 Xilinx 平台工作室/EDK 设计流程和基于 MicroBlaze™处理器的设计而设计的。
配置
高速 SPI 和 BPI(并行 NOR)配置
内置多引导 (MultiBoot) 和安全更新能力
带 HMAC/SHA-256 认证的 256 位 AES 加密
内置 SEU 检测与校正
部分重配置
Xilinx 7 系列 FPGA 将其定制配置存储在 SRAM 型内部锁存器中。根据器件大小和用户设计实现选项,配置位最多可达 450 Mb。配置存储器是易失性的,每次 FPGA 上电时必须重新加载。随时拉低 PROGRAM_B 引脚也可以重新加载此存储器。有几种加载配置的方法和数据格式,由三个模式引脚决定。
SPI 接口(x1、x2 和 x4 模式)和 BPI 接口(并行 NOR x8 和 x16)是用于配置 FPGA 的两种常用方法。用户可以直接将 SPI 或 BPI 闪存连接到 FPGA,FPGA 的内部配置逻辑从闪存中读取比特流并自行配置。FPGA 会自动动态检测总线宽度,无需任何外部控制或开关。支持的总线宽度为:SPI 的 x1、x2 和 x4;BPI 的 x8 和 x16。更宽的总线宽度可以提高配置速度,并减少 FPGA 上电后启动所需的时间。并非所有器件 - 封装组合都支持某些配置选项,如 BPI。有关详细信息,请参阅 UG470《7 系列 FPGA 配置用户指南》。
在主模式 (Master mode) 下,FPGA 可以从内部产生的时钟驱动配置时钟,或者为了更高速的配置,FPGA 可以使用外部配置时钟源。这使得在保持主模式易用性特点的同时实现高速配置。FPGA 也支持高达 32 位宽的从模式 (Slave mode),这对于处理器驱动的配置特别有用。
FPGA 能够使用 SPI 或 BPI 闪存用不同的映像重新配置自身,无需外部控制器。如果数据传输过程中出现任何错误,FPGA 可以重新加载其原始设计,确保过程结束时 FPGA 可操作。这对于最终产品发货后更新设计特别有用。客户可以用早期版本的设计发货,从而更快地将产品推向市场。此功能允许客户在产品已经在现场时,使其最终用户保持最新的设计。
动态重配置端口 (DRP) 使系统设计人员能够轻松访问 MMCM/PLL、XADC、收发器和 PCI Express 集成块的配置和状态寄存器。DRP 的行为类似于一组内存映射寄存器,用于访问和修改模块特定的配置位以及状态和控制寄存器。
加密、回读和部分重配置 在所有 7 系列 FPGA(XC7S6 和 XC7S15 除外)中,包含敏感客户 IP 的 FPGA 比特流可以通过 256 位 AES 加密和 HMAC/SHA-256 认证进行保护,以防止未经授权的设计复制。FPGA 在配置期间使用内部存储的 256 位密钥进行实时解密。该密钥可以存放在电池备份 RAM 或非易失的 eFUSE 位中。
大多数配置数据可以在不影响系统操作的情况下回读。通常,配置是一种全有或全无的操作,但 Xilinx 7 系列 FPGA 支持部分重配置。这是一个极其强大和灵活的特性,允许用户更改 FPGA 的部分区域,而其他部分保持不变。用户可以对这部分区域进行分时复用,以将更多 IP 适配到更小的器件中,从而节省成本和功耗。在适用于某些设计时,部分重配置可以极大地提高 FPGA 的通用性。
XADC(模数转换器)
双通道 12 位 1 MSPS 模数转换器 (ADC)
多达 17 个灵活且用户可配置的模拟输入
片上或外部参考选项
片上温度(最大误差±4°C)和电源(最大误差±1%)传感器
通过 JTAG 连续访问 ADC 测量值
所有 Xilinx 7 系列 FPGA(XC7S6 和 XC7S15 除外)都集成了一种称为 XADC 的新型灵活模拟接口。当与 7 系列 FPGA 的可编程逻辑能力相结合时,XADC 可以满足广泛的数据采集和监控需求。欲了解更多信息,请访问:http://www.xilinx.com/ams。
XADC 包含两个 12 位 1 MSPS ADC,带有独立的跟踪保持放大器、一个片上模拟多路复用器(支持多达 17 个外部模拟输入通道)以及片上温度和电源传感器。这两个 ADC 可以配置为同时采样两个外部输入模拟通道。跟踪保持放大器支持一系列模拟输入信号类型,包括单极性、双极性和差分。模拟输入可以支持至少 500 KHz 的信号带宽,采样率为 1 MSPS。可以使用外部模拟多路复用器模式和专用模拟输入来支持更高的模拟带宽(参见 UG480《7 系列 FPGA 和 Zynq-7000 All Programmable SoC XADC 双通道 12 位 1 MSPS 模数转换器用户指南》)。
XADC 可选地使用片上参考电路(±1%),从而无需任何外部有源元件即可进行基本的片上温度和电源轨监控。要实现 ADC 的完整 12 位性能,建议使用外部 1.25V 参考 IC。
如果设计中未实例化 XADC,则默认情况下它会数字化所有片上传感器的输出。最新的测量结果(连同最大值和最小值读数)存储在专用寄存器中,可随时通过 JTAG 接口访问。用户定义的报警阈值可以自动指示过温事件和不可接受的电源变化。用户指定的限制(例如 100°C)可用于启动自动断电。
7 系列 FPGA 订购信息 表 12 显示了不同器件系列中可用的速度和温度等级。某些器件可能并非在每个速度和温度等级中都可用。
器件系列 器件 速度等级、温度范围和操作电压 Spartan-7 所有器件 -2C (1.0V) 商业级 0°C 至 +85°C\n-2I (1.0V) 工业级 -40°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C\n-1I (1.0V) 工业级 -40°C 至 +100°C\n-1Q (1.0V) 扩展级 (Q) -40°C 至 +125°C\n-1LI (0.95V) 低功耗工业级 -40°C 至 +100°C Artix-7 所有器件 -3E (1.0V) 扩展级 (E) 0°C 至 +100°C\n-2C (1.0V) 商业级 0°C 至 +85°C\n-2I (1.0V) 工业级 -40°C 至 +100°C\n-2LE (1.0V 或 0.9V) 低功耗扩展级 0°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C\n-1I (1.0V) 工业级 -40°C 至 +100°C\n-1LI (0.95V) 低功耗工业级 -40°C 至 +100°C Kintex-7 XC7K70T, XC7K160T, XC7K325T, XC7K355T, XC7K410T, XC7K420T, XC7K480T -3E (1.0V) 扩展级 (E) 0°C 至 +100°C\n-2C (1.0V) 商业级 0°C 至 +85°C\n-2I (1.0V) 工业级 -40°C 至 +100°C\n-2LE (1.0V 或 0.9V) 低功耗扩展级 0°C 至 +100°C\n-2LI (0.95V) 低功耗工业级 -40°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C\n-1I (1.0V) 工业级 -40°C 至 +100°C Virtex-7 T XC7V585T, XC7V2000T -3E (1.0V) 扩展级 (E) 0°C 至 +100°C\n-2C (1.0V) 商业级 0°C 至 +85°C\n-2I (1.0V) 工业级 -40°C 至 +100°C\n-2LE (1.0V) 低功耗扩展级 0°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C\n-1I (1.0V) 工业级 -40°C 至 +100°C\n*(针对 XC7V2000T)* -2GE (1.0V), -2LE (1.0V) Virtex-7 XT XC7VX330T, XC7VX415T, XC7VX485T, XC7VX550T, XC7VX690T, XC7VX980T, XC7VX1140T -3E (1.0V) 扩展级 (E) 0°C 至 +100°C\n-2C (1.0V) 商业级 0°C 至 +85°C\n-2I (1.0V) 工业级 -40°C 至 +100°C\n-2LE (1.0V) 低功耗扩展级 0°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C\n-1I (1.0V) 工业级 -40°C 至 +100°C\n*(针对 XC7VX980T, XC7VX1140T)* 额外选项:-2GE (1.0V) Virtex-7 HT 所有器件 -2C (1.0V) 商业级 0°C 至 +85°C\n-2GE (1.0V) 千兆位以太网级 0°C 至 +100°C\n-2LE (1.0V) 低功耗扩展级 0°C 至 +100°C\n-1C (1.0V) 商业级 0°C 至 +85°C
相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
Base64 字符串编码/解码 将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
Base64 文件转换器 将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
Markdown转HTML 将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
HTML转Markdown 将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
JSON 压缩 通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online