0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

HDMI VCU118设计移植到VCU128开发板的步骤解析

454398 来源: 赛灵思中文社区论坛 作者: 赛灵思中文社区论 2020-11-20 11:44 次阅读

简介与视频示例设计概览

许多视频 IP 核都附带有示例设计。这些设计用于 IP 演示,并提供示例以供您在自己的设计中使用 IP 核时作为参考。

这些 IP 示例设计的介绍请参阅 IP《产品指南》第 5 章。

在IP主页上,Document Navigator 或视频设计中心内可找到《产品指南》。

HDMI VCU118 示例设计简介

赛灵思 HDMI IP 核分为两种:源端 (Source) IP 核 (HDMI 1.4/2.0 TX Subsystem) 和 Sink IP 核 (HDMI 1.4/2.0 RX Subsystem)。

这些 IP 核的介绍请参阅 (PG235) 和 (PG236)。《产品指南》第 5 章中包含HDMI 1.4/2.0 示例设计的表格。

通过该表可以看到,其中包含 VCU118 示例设计,但不含 VCU128 示例设计。

注意:如该表所示,传递模式下无 DRU 时钟可用,因为并无任何振荡器引脚信号输出至 HDMI 核附近 bank 中的 gtrefclk。

教程

以下是我将 HDMI VCU118 设计移植到 VCU128 开发板时所使用的步骤。这些步骤仅作为示例以供参考,并非唯一方法。

1. 移植设计的第一步是确保已构建新硬件平台用于为设计提供支持。

最好首先罗列出 HDMI 设计要求。通过使用《产品指南》中的图 5-3 并聚焦高亮的 I/O,设计要求一目了然。

注意:VCU118 与 VCU128 开发板都不具有 nidru gtrefclk。

设计要求列表:

TMDS 时钟引脚信号已输出至 FMC
已通过 3 个 GT 引脚将发射器数据引脚信号输出至 FMC
发射器参考时钟引脚信号已从 FMC 输入
接收器参考时钟引脚信号已输出至 FMC
接收器参考时钟引脚信号已从 FMC 输入
已通过 3 个 GT 引脚将接收器数据引脚信号输出至 FMC
**请核实周围各 bank 以确认是否存在可编程 NI-DRU 时钟源

2. 已知设计要求情况下即可检查 VCU128 以确认是否已满足这些要求。

为此,我们可以查阅 VCU128 原理图、VCU128 开发板用户指南以及wikipinout.xml 并对比FMC 文档(如下图所示)

通过使用上述文档即可将列表转换为引脚名称。

M2C -> 夹层卡到载卡(FMC -> 开发板)

C2M -> 载卡到夹层卡(开发板 -> FMC)

TMDS 时钟引脚信号已输出至 FMC -> LA27_P
已通过 3 个 GT 引脚将发射器数据引脚信号输出至 FMC -> DP0_C2M_P 至 DP2_C2M_P
发射器参考时钟引脚信号已从 FMC 输入 -> GBTCLK1_M2C_P
接收器参考时钟引脚信号已输出至 FMC -> LA00_CC_P
接收器参考时钟引脚信号已从 FMC 输入 -> GBTCLK0_M2C_P
已通过 3 个 GT 引脚将接收器数据引脚信号输出至 FMC -> DP0_M2C_P 至 DP2_M2C_P
**请核实周围各 bank 以确认是否存在可编程 NI-DRU 时钟源
bank124 周围无可用时钟

通过查看设计可以发现,在图 5-3 中并未显示全部引脚。

Si5324 RST
FMC_IIC_SCL
FMC_IIC_SDA
rs232_uart_rxd ->UART0_RXD
rs232_uart_txd ->UART0_TXD
reset -> CPU_Reset
RX_DDC_OUT_scl_io ->LA16_P
RX_DDC_OUT_sda_io ->LA16_N
TX_DDC_OUT_scl_io->29_P
TX_DDC_OUT_sda_io->29_N
TX_EN_OUT ->LA26_P
TX_CLK_SEL_FPGA -> LA18_CC_P
用于选择是否使用第 4 个 GT 或 LVDS 引脚作为 HDMI TMDS 时钟。
RX_HPD_OUT -> LA20_N
RX_I2C_EN_N_OUT -> LA22_P
RX_DET_IN -> LA03_P
SI5324_LOL_IN ->LA02_N
TX_HPD_IN -> LA31_N

3. 鉴于已知 I/O 引脚存在并且已正常连接到 FMC,下一步即可构建 VCU118 示例设计。

注意:该过程的介绍请参阅《产品指南》第 5 章。

4. 完成设计构建后,需要更新所有 VCU118 特定参数。这样在更改部件号时,连接将保持断开状态。

在此设计中,MMCM 是直接以 VCU118 为目标的唯一 IP。

4.1. 打开 mb_ss_0 块并打开时钟向导 (clk_wiz)。

4.2. 单击“Clear board parameters”以清空开发板参数。这将删除 VCU 特定参数。

4.3. 将“Source”更新为“Differential clock capable pin”,然后保存块设计

5. 设置新项目目标 -> VCU128 (XCVU37P-L2FSVH2892E)

6. 将 IP 更新到新项目

打开 IP 集成器、选择报告 IP 状态,然后升级所有 IP。

验证其中不存在任何错误。

注意:不保证这对所有设计或移植都有效。如果此步骤无效,请使用先前的设计作为示例并手动构建新项目.

7. 鉴于当前项目目标为 VCU128 并且 IP 已升级,我们需要编辑 VPHY,设置正确的 bank 目标并使用正确的时钟。

通过 VCU128 文档可知,所使用的 GT 位于 bank 124 中。Bank 124 为 X0Y0。

由于 GT 位于 bank 124 中,但当前使用的 TX reference0 时钟来自 bank 125,因此需要将参考时钟设置为 southrefclk0。

由于当前使用的是 North/South refclk,因此需根据 (PG230) 《Vivado PHY 控制器产品指南》中所述更新管脚。

8. 请核实连接状态,确保所有引脚均已连接,然后验证设计并运行综合。

9. 完成综合后,即可更新约束。

打开 Synthesized Design,依次单击“layout -> I/O planning”。

在此视图中,选择 I/O 端口,然后使用新管脚对其进行更新。(GT TX/RX 引脚将已填充完成)

完成操作后,请保存以便更新约束文件 (.xdc)。

10. 约束更新完成后,请运行实现并生成比特流。

11. 导出硬件用于 SDK。

单击“File -> Export Hardware

12. 最后,针对 VCU118 使用相同流程来构建应用示例设计。

打开 SDK

新建 BSP (File -> New SDK)

单击 MSS 标签,选中 HDMI 1.4/2.0 RX Subsystem 驱动程序,然后单击“Import Examples”。

在打开的标签中,单击“Passthrough MicroBlaze”。

这将生成软件项目。对其执行构建,这样即可创建 ELF。

13. 大功告成!在硬件中执行测试以验证移植的示例设计是否正常运行

编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • HDMI
    +关注

    关注

    32

    文章

    1639

    浏览量

    151531
  • 振荡器
    +关注

    关注

    28

    文章

    3801

    浏览量

    138800
  • 赛灵思
    +关注

    关注

    32

    文章

    1794

    浏览量

    131120
收藏 人收藏

    评论

    相关推荐

    VCU驱动行驶功能策略

    整车 Ready 状态,VCU 根据驾驶员输入信息(加速踏板、制动踏板、档位、驾驶模式),结合车辆状态信息(车速、电池 SOC、电池最大放电电流、电池最大充电电流、电机最大输出扭矩),计算车辆驱动扭矩需求,发送扭矩需求和电机模式请求给 MCU,MCU 控制驱动电机输出车辆驱动行驶所需扭矩
    的头像 发表于 10-22 16:40 222次阅读
    <b class='flag-5'>VCU</b>驱动行驶功能策略

    为Xilinx® Zynq®UltraScale™系列多处理器中的VCCINT_VCU轨供电

    电子发烧友网站提供《为Xilinx® Zynq®UltraScale™系列多处理器中的VCCINT_VCU轨供电.pdf》资料免费下载
    发表于 09-25 10:54 0次下载
    为Xilinx® Zynq®UltraScale™系列多处理器中的VCCINT_<b class='flag-5'>VCU</b>轨供电

    替代FM25V20A,国产FRAM SF25C20在整车VCU中的应用

    替代FM25V20A,国产FRAM SF25C20在整车VCU中的应用
    的头像 发表于 09-06 09:53 229次阅读
    替代FM25V20A,国产FRAM SF25C20在整车<b class='flag-5'>VCU</b>中的应用

    整车控制器VCU应用层算法开发流程

    一、整车控制器(VCU)功能整车控制器新能源汽车整车控制器(VehicleControlUnit,简称VCU)是电动汽车中的关键部件,负责对整车进行控制和管理。新能源汽车整车控制功能具有驾驶员意图
    的头像 发表于 08-27 16:23 4023次阅读
    整车控制器<b class='flag-5'>VCU</b>应用层算法<b class='flag-5'>开发</b>流程

    新能源汽车之整车控制器VCU到底有什么用?

    一、工作进度表二、工作成果展示01ADC移植驱动验证核心代码02ADC驱动框架运行基本逻辑03ADC移植的相关接口04ADC初始化参数说明05ADC资源部分展示图三
    的头像 发表于 06-19 08:10 265次阅读
    新能源汽车之整车控制器<b class='flag-5'>VCU</b>到底有什么用?

    新能源汽车核心技术加油站-VCU

    新能源汽车核心技术加油站-VCU
    的头像 发表于 04-20 08:10 305次阅读
    新能源汽车核心技术加油站-<b class='flag-5'>VCU</b>

    fpga开发板使用教程

    FPGA开发板的使用教程主要包括以下几个关键步骤
    的头像 发表于 03-14 15:50 925次阅读

    移植libmodbus库米尔-全志T113-i开发板

    测试开发板在工业领域的应用,modbus作为工业领域的一个重要协议,那好就移植libmodbus库。
    的头像 发表于 03-05 22:37 2145次阅读
    <b class='flag-5'>移植</b>libmodbus库<b class='flag-5'>到</b>米尔-全志T113-i<b class='flag-5'>开发板</b>

    【鸿蒙】标准系统移植指南

    标准系统移植指南 本文描述了移植一块开发板的通用步骤,和具体芯片相关的详细移植过程无法在此一一列举。后续社区还会陆续发布
    的头像 发表于 02-27 14:36 788次阅读
    【鸿蒙】标准系统<b class='flag-5'>移植</b>指南

    从01实现VCU:新能源汽车整车控制器

    一、项目简介1、项目整体介绍VCU(Vehiclecontrolunit)整车控制器,作为新能源汽车中央控制单元是整个汽车控制系统的核心。下面框图展现了VCU在汽车中的作用。2、VCU整体结构3
    的头像 发表于 02-24 08:09 1359次阅读
    从0<b class='flag-5'>到</b>1实现<b class='flag-5'>VCU</b>:新能源汽车整车控制器

    ELF 1技术贴|如何将Python3.6.9移植开发板

    如何进行交叉编译并移植ELF1开发板上。在网址:https://www.python.org/ftp/python/下载Python-3.6.9.tar.xz压缩
    的头像 发表于 02-22 14:06 388次阅读
    ELF 1技术贴|如何将Python3.6.9<b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>开发板</b>上

    arm开发板如何安装linux系统

    安装Linux系统ARM开发板是一个复杂的过程,涉及多个步骤和不同的工具。下面是一个详实且细致的教程,包含了从准备工作到最终启动Linux系统的所有
    的头像 发表于 01-24 14:19 2717次阅读

    VCU硬件组成和作用介绍

    随着汽车处理器技术的发展,VCU逐渐从16位处理器芯片过渡到32位处理器芯片,32位处理器芯片已经成为行业的主流产品。
    的头像 发表于 01-09 13:59 1068次阅读
    <b class='flag-5'>VCU</b>硬件组成和作用介绍

    DshanMCU-R128s2 R128 DevKit 开发板

    针对 R128 模组,百问科技推出了 R128 DevKit 开发板作为快速开发评估工具。 特性: 板载 R128-S2-N16R16 模组
    的头像 发表于 12-22 12:02 565次阅读
    DshanMCU-R<b class='flag-5'>128</b>s2 R<b class='flag-5'>128</b> DevKit <b class='flag-5'>开发板</b>

    使用全志R128实现LVGL的移植

    我们使用的开发板是 R128-Devkit,需要开发 C906 核心的应用程序,所以载入方案选择 r128s2_module_c906
    的头像 发表于 11-13 10:14 1477次阅读
    使用全志R<b class='flag-5'>128</b>实现LVGL的<b class='flag-5'>移植</b>