在Vivado 2019.2中基于 VCK190 评估板创建工程

本篇博文将为您详解如下所述设计创建步骤:
在 vivado 中构建基于 versal 的 ip 集成器 (ip integrator) 设计
创建器件镜像
在 vitis 中构建平台和系统工程
在 vck190 评估板上运行和调试应用
versal上的ps-gem
千兆以太网 mac (gem) 可提供符合 ieee 802.3-2016 标准的硬核 10/100/1000 mbps 接口。
在 ps 低功耗域 (lpd) 中有 2 个 gem 控制器。
每个控制器均独立运行,且各含 1 个管理数据输入/输出 (mdio) 接口以供其外部 phy 配合 rgmii 接口使用。
gem 包含下列组件:
1 个 mac 用于控制传输、接收、地址检查和环回
配置寄存器,可提供控制和状态寄存器、统计数据寄存器和同步逻辑
1 个直接内存访问 (direct memory access) 模块,用于控制 dma 传输和 dma 接收
1 个时间戳单元 (tsu),用于计算 ieee 1588 定时器值,其中包含实时时钟
在无需 dma 操作的系统应用中,可使用配置选项移除 dma 模块,并且可使用外部 fifo 接口将 gem 集成到 soc 环境中。
gem 块包含以下信号接口:
连接到外部 phy 的 gmii 和 rgmii
1 个用于外部 phy 管理的 mdio 接口
1 个 apb 从接口,用于访问 gem 寄存器
1 个用于内存访问的 axi4 dma 主接口
无需 dma 功能的应用内包含 1 个可选 fifo 接口
1 个可选时间戳接口
i/o 选项包括:
布线到 lpd mio 管脚的 rgmii (v2.0),用于连接到外部 phy
gmii 和 mii 布线到 pl,以便映射到 gt 或(可选)可借助 pl 逻辑来转换为其它协议
每个控制器内的诊断内部环回
注:versal 中不支持内部 serdes 接口 (sgmii)。在 mpsoc 器件中支持此类接口。
在 vck190 器件上,gem0 和 gem1 均硬连线到板上的 2 个外部 rgmii phy。
有 2 个 rj45 端口,分别用于 gem0 和 gem1。如要测试 gem1 rgmii 端口,请确保 gem0 rgmii 端口同样通过电缆连接,因为此端口使用共享 mdio 线(使用 gem0 mdio 作为主接口)。
请参阅以下 vck190 截屏。在右上角有 2 个 rj45 端口用于 versal 以太网。
在 vivado 中创建 ip integrator 设计
请下载随附的 tcl 文件并遵循以下步骤进行操作。
1. 在 vivado 2019.2 中基于 vck190 评估板创建工程。
2. 创建块设计。
3. 找到 vck190_1g.tcl。以下是 ip integrator 画布中的原理图。
4. 生成 hdl 封装文件。
5. 单击“运行实现 (run implementation)”和“生成器件镜像 (generate device image)”。
6. 导出包含器件镜像的硬件设计。
注:单独使用“运行块自动化设置功能 (run block automation)”时,cip 与 noc 之间部分连接缺失。随附的 tcl 文件可用于确保 cip 和 noc 中配置设置正确。
在 vitis 中构建并运行 lwip 应用
我们已构建了 ip integrator 设计并已导出了含器件镜像的硬件设计。现在,我们将在 vitis 中创建 lwip 示例,并在 vck190 评估板上运行。
1. 启动 vitis。
2. 使用来自以上设计的 xsa 文件创建应用工程。
3. 从 sdk 中选择“lwip 响应服务器 (lwip echo server)”。
4. 在 sdk 中构建平台和系统工程。选中 lwip 响应服务器应用时,会自动设置 lwip 库的 bsp 设置。用户还可以选择仅创建并构建平台工程,但这样需手动设置 bsp 设置。
5. 在 vck190 开发板上运行 lwip 示例。以下即 uart 控制台输出:
6. 以下是 ping 测试输出:
要切换到 gem1 rj45 以便进行测试,用户应使用 xpar_xemacps_1_baseaddr 修改 platform_config.h。
可在 bsp 的 xparameters.h 中找到以太网定义。请参阅以下示例
在 platform_config.h 中,更改以下定义:
将此定义更新为:
#define platform_emac_baseaddrxpar_xemacps_1_baseaddr
现在,您可重新构建应用并重新运行测试。
lwip性能
以下是 lwip 响应服务器应用的 bsp 设置。
parameter dhcp_does_arp_check = true
parameter lwip_dhcp = true
parameter pbuf_pool_size = 2048
对于 lwip tcp/udp 性能服务器,默认将设置下列参数。
parameter mem_size = 524288
parameter memp_n_pbuf = 1024
parameter n_tx_descriptors = 512
parameter pbuf_pool_size = 16384
这些 lwip 参数对于性能调优至关重要。
用户应参阅 lwip 文档中的“配置内存选项”、“配置封装缓存 (pbuf) 内存选项”和“temac 适配器选项”部分,以了解有关各参数的更多信息。
https://china.xilinx.com/support/documentation/user_guides/ug1137-zynq-ultrascale-mpsoc-swdev.pdf
这些参数可控制所分配和使用的内存量以及 pbuf 和描述符数量。
如果系统受到限制,无法处理这些包,则 bd 和 pbuf 将被快速用尽,且无法根据要求快速清空以供使用。由此导致性能受到影响。
但我们还应平衡可使用的内存量,以便在用于性能基准测试的评估板上将这些参数调整为适合 1gbps 的最优值。您可以此为参考,根据自己的要求来对这些参数进行调优。


江森自控智能家居控制系统上市 将为房地产商及消费者提供更多的附加值
受到芯片断供影响,零部件巨头面临停工风险
联发科发布面向高端手机的5G芯片
电竞大时代百企共争鸣 中国游戏产业年会电竞分论坛蓄势待发
同兴达:子公司芯片金凸块全流程封装测试项目启动量产
在Vivado 2019.2中基于 VCK190 评估板创建工程
晶体二极管的类型和选用
格芯出售德国工厂近1000台设备给台积电,晶圆产能减半
基于USB-C PD 3.0有源钳位反激的开关电源方案
腾讯发布新一季度财报:真正让银行颤抖的并不是马云,而是腾讯,微信月活9.63亿
新华三集团出席本次展会并全面展示了智能网络联接能力
口罩拉伸带拉力测试仪介绍
不怕苹果降财测 鸿海旗下新普12月营收续创新高
意大利欲在2022年前实现100万辆电动汽车上路的目标,成欧洲电动汽车市场领头羊
土壤微量元素仪器厂家有哪些详细介绍
路由器搜索不到WiFi信号是怎么回事
BrightWay公司在车辆上应用军用夜视技术,减少交通事故的发生
常用外围硬件电路设计
ADT7310 精确度为±0.5°C的16位数字SPI温度传
电源管理ic是什么