标识

英特尔 50G 以太网设计实例ample

intel-50G-以太网-设计-Examp乐PRODACT-IMG

50GbE 快速入门指南

50GbE IP核提供仿真测试台和硬件设计examp支持编译和硬件测试的文件。 当您生成设计前ampLE,参数编辑器自动创建 file在硬件中模拟、编译和测试设计是必需的。 您可以将编译后的硬件设计下载到 Arria 10 GT 设备。

笔记: 这个设计前ample 以 Arria 10 GT 器件为目标,需要 25G 重定时器。 请联系您的英特尔 FPGA 代表,询问适合运行此硬件前的平台amp乐。 在某些情况下,可能会借出合适的硬件。 此外,Intel 提供了一个只编译的 examp可以用来快速估计 IP 内核面积和时序的项目。

图 1. 设计实例amp文件用法intel-50G-以太网-设计-Example-FIG-1

英特尔公司。 版权所有。 英特尔、英特尔标识和其他英特尔标志是英特尔公司或其子公司的商标。 英特尔保证其 FPGA 和半导体产品的性能符合英特尔的标准保证,符合当前规格,但保留随时更改任何产品和服务的权利,恕不另行通知。 除非英特尔明确书面同意,否则英特尔不承担因应用或使用此处描述的任何信息、产品或服务而产生的任何责任或义务。 建议英特尔客户在依赖任何已发布的信息以及下订单购买产品或服务之前获取最新版本的设备规格。 *其他名称和品牌可能是其他人的财产。

设计防爆amp文件目录结构

图 2. 50GbE 设计实例amp文件目录结构intel-50G-以太网-设计-Example-FIG-2

硬件配置及测试 files(硬件设计前ample) 位于ample_dir>/hardware_test_design. 模拟 files(仅用于模拟的测试平台)位于ample_dir>/前ample_testbench.仅编译的设计 examp乐位于ample_dir>/compilation_test_design.

仿真设计实例amp组件

图 3. 50GbE 仿真设计实例amp框图intel-50G-以太网-设计-Example-FIG-3

仿真前ample设计顶层测试 file 就是basic_avl_tb_top.sv这个 file 实例化并连接一个 ATX PLL。 它包括一个任务 send_packets_50g_avl,用于发送和接收 10 个数据包。

表 1. 50GbE IP 核测试平台 File 描述

File 姓名 描述
测试台和仿真 Files
basic_avl_tb_top.sv 顶层测试平台 file. 测试平台实例化 DUT 并运行 Verilog HDL 任务以生成和接受数据包。
测试台脚本
运行_vsim.do 运行测试平台的 ModelSim 脚本。
运行_vcs.sh 用于运行测试平台的 Synopsys VCS 脚本。
运行_ncsim.sh 运行测试平台的 Cadence NCSim 脚本。
运行_xcelium.sh 用于运行测试平台的 Cadence Xcelium* 脚本。

硬件设计实例amp组件

图 4. 50GbE 硬件设计示例amp高级框图intel-50G-以太网-设计-Example-FIG-4

50GbE 硬件设计实例ample包括以下组件

  • 50GbE IP 内核。
  • 协调 IP 核编程和数据包生成的客户端逻辑。
  • ATX PLL 用于驱动器件收发器通道。
  • IOPLL 从 100 MHz 输入时钟生成 50 MHz 时钟到硬件设计前amp勒。
  • JTAG 与系统控制台通信的控制器。 您通过系统控制台与客户端逻辑通信。

表 2. 50GbE IP 核硬件设计实例ample File 描述

File 名字 描述
eth_ex_50g.qpf Quartus Prime 项目 file
eth_ex_50g.qsf Quartus工程设置 file
eth_ex_50g.sdc Synopsys 设计约束 file. 你可以复制和修改这个 file 用于您自己的 50GbE 设计。
持续…

50GbE 快速入门指南

File 名字 描述
eth_ex_50g.v 顶层 Verilog HDL 设计实例ample file
常见的/ 硬件设计前amp支持 files
硬件测试/main.tcl 主要的 file 用于访问系统控制台

生成设计实例ample

图 5. 程序intel-50G-以太网-设计-Example-FIG-5

图 6. 前amp50GbE 参数编辑器中的设计选项卡intel-50G-以太网-设计-Example-FIG-6

按照以下步骤生成硬件设计示例amp文件和测试台

  1. 根据您使用的是 Intel Quartus® Prime Pro Edition 软件还是 Intel Quartus Prime Standard Edition 软件,执行以下操作之一: 在 Intel Quartus Prime Pro Edition 中,点击 File ➤ New Project Wizard 创建一个新的 Quartus Prime 工程,或者 File ➤ Open Project 打开现有的 Quartus Prime 工程。 该向导会提示您指定一个设备。 在Intel Quartus Prime Standard Edition软件中,在IP Catalog(Tools IP Catalog)中,选择Arria 10 target device family。
  2. 在 IP 目录中,找到并选择 50G 以太网。 出现“新 IP 变体”窗口。
  3. 为您的 IP 变体指定一个顶级名称,然后单击“确定”。 参数编辑器添加顶级 .qsys(在 Intel Quartus Prime 标准版中)或 .ip(在 Intel Quartus Prime 专业版中) file 自动添加到当前项目。 如果系统提示您手动添加 .qsys 或 .ip file 到项目,单击项目➤添加/删除 Files 在项目中添加 file.
  4. 在 Intel Quartus Prime Standard Edition 软件中,您必须在 Device 字段中选择特定的 Arria 10 器件,或者保留 Quartus Prime 软件建议的默认器件。
    笔记: 硬件设计前amp文件用目标板上的设备覆盖选择。 您从 design ex 的菜单中指定目标板ampEx 中的 le 选项ample 设计选项卡(步骤 8)。
  5. 单击确定。 出现参数编辑器。
  6. 在 IP 选项卡上,为您的 IP 内核变体指定参数。
  7. 在前ample 设计选项卡,用于 Examp设计 Files,选择Simulation选项生成testbench,选择Synthesis选项生成硬件设计examp乐。 仅 Verilog HDL files 生成。
    笔记: 功能性 VHDL IP 内核不可用。 仅指定 Verilog HDL,用于您的 IP 核设计前amp勒。
  8. 对于硬件板,选择 Arria 10 GX 收发器信号完整性开发套件。
    笔记: 请联系您的英特尔 FPGA 代表,了解适合运行此硬件的平台信息amp勒。
  9. 单击生成 Example 设计按钮。 选择前任amp出现 le Design Directory 窗口。
  10. 如果你想修改设计前amp默认显示的文件目录路径或名称 (alt_e50_0_example_design), 浏览到新路径并输入新设计 examp文件目录名 (ample_dir>)。
  11. 单击“确定”。
  12. 请参阅 KDB Answer 如何补偿 Arria 10 PLL 参考时钟的 PLL 级联或非专用时钟路径的抖动? 对于解决方法,您应该在 .sdc 的 hardware_test_design 目录中应用 file.

笔记: 您必须查阅此 KDB 答复,因为 50GbE IP 内核中的 RX 路径包括级联 PLL。 因此,IP 内核时钟可能会在 Arria 10 器件中经历额外的抖动。 此 KDB 答复阐明了需要解决方法的软件版本。

相关信息
KDB 回答:如何补偿 Arria 10 PLL 参考时钟的 PLL 级联或非专用时钟路径的抖动?

模拟 50GbE 设计实例amp测试平台

图 7. 程序intel-50G-以太网-设计-Example-FIG-7

按照以下步骤模拟测试台

  1. 切换到testbench仿真目录ample_dir>/前ample_testbench。
  2. 为您选择的支持的模拟器运行模拟脚本。 该脚本在模拟器中编译并运行测试平台。 请参阅表“模拟测试台的步骤”。
  3. 分析结果。 成功的testbench发送十个数据包,接收十个数据包,并显示“Testbench complete”。

表 3. 模拟测试平台的步骤

模拟器 指示
模型模拟 在命令行中,键入 vsim -do run_vsim.do

如果您更喜欢在不启动 ModelSim GUI 的情况下进行仿真,请键入 vsim -c -do run_vsim.do

笔记: ModelSim* – 英特尔 FPGA 版模拟器无法模拟此 IP 核。 您必须使用另一个受支持的 ModelSim 模拟器,例如 ModelSim SE。

数控模拟 在命令行中,键入 sh run_ncsim.sh
版本控制系统 在命令行中,键入 sh run_vcs.sh
西利姆 在命令行中,键入 sh run_xcelium.sh

成功的测试运行显示确认以下行为的输出

  1. 等待 RX 时钟稳定
  2. 打印 PHY 状态
  3. 发送 10 个数据包
  4. 收到10个数据包
  5. 显示“测试平台完成”。

以下ample 输出说明成功的模拟测试运行

  • #Ref 时钟以 625 MHz 运行,因此所有时钟周期都可以使用整数。
  • #将报告的频率乘以 33/32 以获得实际时钟频率。
  • #等待RX对齐
  • #RX 校正锁定
  • #RX 通道对齐锁定
  • #TX启用
  • #** 发送数据包 1…
  • #** 发送数据包 2…
  • #** 发送数据包 3…
  • #** 发送数据包 4…
  • #** 发送数据包 5…
  • #** 发送数据包 6…
  • #** 发送数据包 7…
  • #** 收到数据包 1…
  • #** 发送数据包 8…
  • #** 收到数据包 2…
  • #** 发送数据包 9…
  • #** 收到数据包 3…
  • #** 发送数据包 10…
  • #** 收到数据包 4…
  • #** 收到数据包 5…
  • #** 收到数据包 6…
  • #** 收到数据包 7…
  • #** 收到数据包 8…
  • #** 收到数据包 9…
  • #** 收到数据包 10…
  • #**
  • #** 测试平台完成。
  • #**
  • #************************************************

编译和配置 Design Examp硬件中的文件

编译硬件设计前amp文件并在您的 Arria 10 GT 设备上配置它,请按照以下步骤操作

  1. 确保硬件设计前ample生成完成。
  2. 在 Intel Quartus Prime 软件中,打开 Intel Quartus Prime 工程ample_dir>/hardware_test_design/eth_ex_50g.qpf。
  3. 在编译之前,确保您已经实施了 KDB Answer 中的解决方法如何补偿 Arria 10 PLL 参考时钟的 PLL 级联或非专用时钟路径的抖动? 如果与您的软件版本相关。
  4. 在处理菜单上,单击开始编译。
  5. 生成 SRAM 对象后 file .sof,按照以下步骤对硬件设计进行编程ampArria 10 设备上的文件:
  • 在工具菜单上,单击程序员。
  • 在编程器中,单击硬件设置。
  • 选择一个编程设备。
  • 选择带有 10G 重定时器的 Arria 25 GT 板并将其添加到您的 Intel Quartus Prime 会话中。
  • 确保模式设置为 JTAG.
  • 选择 Arria 10 器件并单击添加器件。 程序员显示电路板上设备之间连接的框图。
  • 在您的 .sof 所在行中,选中 .sof 对应的复选框。
  • 选中程序/配置列中的框。
  • 单击“开始”

笔记: 这个设计前ample 以 Arria 10 GT 器件为目标。 请联系您的英特尔 FPGA 代表,询问适合运行此硬件前的平台ample

相关信息

  • KDB 回答:如何补偿 Arria 10 PLL 参考时钟的 PLL 级联或非专用时钟路径的抖动?
  • 分层和基于团队的设计的增量编译
  • 编程英特尔 FPGA 设备

测试 50GbE 硬件设计实例ample

编译 50GbE IP 核设计 ex 后amp文件并在您的 Arria 10 GT 器件上配置它,您可以使用系统控制台对 IP 内核及其嵌入式 Native PHY IP 内核寄存器进行编程。 打开系统控制台并测试硬件设计amp乐,请按照下列步骤操作:

  1. 硬件设计ex之后amp文件在 Arria 10 器件上配置,在 Intel Quartus Prime 软件中,在 Tools 菜单上,点击 System Debugging Tools > System Console。
  2. 在 Tcl 控制台窗格中,键入 cd hwtest 将目录更改为ample_dir>/hardware_test_design/hwtest.
  3. 键入 source main.tcl 以打开与 J 的连接TAG 掌握。

您可以使用以下设计示例对 IP 内核进行编程amp文件命令

  • chkphy_status:显示时钟频率和 PHY 锁定状态。
  • start_pkt_gen:启动数据包生成器。
  • stop_pkt_gen:停止数据包生成器。
  • loop_on:打开内部串行环回
  • loop_off:关闭内部串行环回。
  • reg_read : 返回 IP 核寄存器值.
  • reg_write :写到地址处的 IP 核寄存器.

相关信息

  • 50GbE 设计实例ample Registers on page 13 硬件设计前的寄存器映射amp勒。
  • 使用系统控制台分析和调试设计

设计防爆amp文件说明

设计前ample 演示了具有符合 IEEE 50ba 标准 CAUI-802.3 规范的收发器接口的 4GbE 内核的功能。 您可以从 Ex 生成设计ample 50GbE 参数编辑器中的设计选项卡。 生成设计前amp文件中,您必须首先为您打算在最终产品中生成的 IP 核变体设置参数值。 生成设计前ample 创建 IP 核的副本; 测试平台和硬件设计前amp请使用此变体作为 DUT。 如果您未将 DUT 的参数值设置为与最终产品中的参数值相匹配,设计前amp您生成的 le 不会执行您想要的 IP 内核变体。

笔记: 测试台展示了 IP 内核的基本测试。 它无意替代完整的验证环境。 您必须在仿真和硬件中对自己的 50GbE 设计进行更广泛的验证。

相关信息
英特尔 Arria® 10 50Gbps 以太网 IP 内核用户指南

设计防爆amp文件行为
测试平台通过 IP 内核发送流量,测试 IP 内核的发送端和接收端。 在硬件设计前amp例如,您可以在内部串行环回模式下对 IP 内核进行编程,并在发送端生成通过接收端环回的流量。

设计防爆amp接口信号
50GbE 测试台是独立的,不需要您驱动任何输入信号。

表 4. 50GbE 硬件设计实例amp接口信号

信号 方向 评论
 

clk50

 

输入

以 50 MHz 驱动。 目的是通过电路板上的 50 Mhz 振荡器驱动它。
时钟参考 输入 以 644.53125 MHz 驱动。
 

cpu_resetn

 

输入

复位 IP 核。 低电平有效。 将全局硬复位 csr_reset_n 驱动到 IP 内核。
持续…

英特尔公司。 版权所有。 英特尔、英特尔标识和其他英特尔标志是英特尔公司或其子公司的商标。 英特尔保证其 FPGA 和半导体产品的性能符合英特尔的标准保证,符合当前规格,但保留随时更改任何产品和服务的权利,恕不另行通知。 除非英特尔明确书面同意,否则英特尔不承担因应用或使用此处描述的任何信息、产品或服务而产生的任何责任或义务。 建议英特尔客户在依赖任何已发布的信息以及下订单购买产品或服务之前获取最新版本的设备规格。 *其他名称和品牌可能是其他人的财产。

信号 方向 评论
tx_串行[1:0] 输出 收发器 PHY 输出串行数据。
rx_串行[1:0] 输入 收发器 PHY 输入串行数据。
 

 

 

 

 

 

user_led[7:0]

 

 

 

 

 

 

 

输出

状态信号。 硬件设计前ample 连接这些位以驱动目标板上的 LED。 各个位反映以下信号值和时钟行为:

• [0]:IP核的主复位信号

• [1]:clk_ref 的分割版本

• [2]:clk50的分频版

• [3]:100 MHz 状态时钟的分频版本

• [4]:tx_lanes_stable

• [5]:rx_block_lock

• [6]:rx_am_lock

• [7]:rx_pcs_ready

相关信息
Interfaces and Signal Descriptions 提供 50GbE IP 内核信号及其所属接口的详细说明。

50GbE 设计实例amp文件寄存器

表 5. 50GbE 硬件设计实例amp寄存器映射
列出硬件设计前的内存映射寄存器范围amp乐。 您可以在系统控制台中使用 reg_read 和 reg_write 函数访问这些寄存器。

字偏移 登记类别
0x300–0x5FF 50GbE IP 内核寄存器。
0x4000–0x4C00 Arria 10 动态重配置寄存器。 Lane 0 的寄存器基地址为 4000x0,Lane 0 的寄存器基地址为 4400x1。

相关信息

  • 测试 50GbE 硬件设计实例amp第 11 页的文件访问 IP 核和 Native PHY 寄存器的系统控制台命令。
  • 50GbE 控制和状态寄存器描述 描述了 50GbE IP 内核寄存器。

文档修订历史

表 6. 50G 以太网设计实例amp用户指南修订历史

日期 发布 更改
2019.04.03 17.0 添加了运行 Xcelium 模拟的命令。
 

 

 

2017.11.08

 

 

 

17.0

添加了指向 KDB Answer 的链接,该链接为英特尔 Arria® 10 设备上由于 IP 核中的级联 ATX PLL 引起的潜在抖动提供了解决方法。

參閱 生成设计实例ample 在第7页和 编译和 配置设计实例amp硬件中的文件 在第10页。

这个设计前amp用户指南尚未更新以反映

笔记: 晚于 Intel Quartus Prime 软件版本的 Intel Quartus Prime 版本中设计生成的微小变化

v17.0。

2017.05.08 17.0 首次公开发布。

英特尔公司。 版权所有。 英特尔、英特尔标识和其他英特尔标志是英特尔公司或其子公司的商标。 英特尔保证其 FPGA 和半导体产品的性能符合英特尔的标准保证,符合当前规格,但保留随时更改任何产品和服务的权利,恕不另行通知。 除非英特尔明确书面同意,否则英特尔不承担因应用或使用此处描述的任何信息、产品或服务而产生的任何责任或义务。 建议英特尔客户在依赖任何已发布的信息以及下订单购买产品或服务之前获取最新版本的设备规格。 *其他名称和品牌可能是其他人的财产。

文件/资源

英特尔 50G 以太网设计实例ample [pdf] 用户指南
50G 以太网设计实例ample, 50G, 以太网设计实例ample, 设计前ample

参考

发表评论

您的电子邮件地址不会被公开。 必填字段已标记 *