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

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

3天内不再提示

工程师:有关赛灵思器件调试视频应用的经验总结

工程师人生 来源:Xilinx工程师 作者:Xilinx工程师 2020-11-16 15:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

引言

本篇博文并非技术类文章,但无疑是专为技术人员撰写的。完成几个项目之后,您心知肚明这些项目能够一蹴而就或多或少都掺杂些运气成分。您可能会遇到人为错误、事先未曾预料到的困难、甚至是超出您控制的问题(比如,源端 (source) 或接收端 (sink) 设备的问题)。

工程师的职责就是解决问题。只要采用正确的方法,就可以快速找到并解决问题根源,而不会对项目产生影响(希望项目规划为此预留了一些时间)。

我在赛灵思全球技术支持 (WTS) 部门供职多年,因此,我尝试将所学到的有关如何在赛灵思器件上调试视频应用的经验加以总结融会贯通。


步骤 1 - 深入透彻了解系统

开始调试前,您必须明确了解自己的系统的运作方式。首先简单描述期望的系统用途,包括期望的系统功能。例如,记录系统是否仅支持 1080p 视频,或者是否支持从 SD 到 UHD 范围内的各种分辨率。

记得画一张系统原理图,很有用。原理图的主要作用在于展示流经系统的数据。 您甚至可以给系统添加对应于所写描述的标签。 如果要使用软件应用,那么还有必要画一张描述此类应用的基本软件流程图。

这不仅有助于您更好地了解自己的系统并识别潜在的故障点,对于愿意帮助您调试系统的任何其他人同样很有帮助。

步骤 2 - 尝试失败

第 2 步是尝试明确可反复重现问题的步骤。这将有助于您明确哪些变化因素会导致系统故障以及哪些变化因素对于问题没有影响。

它还可以帮助您集中精力解决根因,并提供一种实施修复后的验证手段。

在这一步中,您通常需要捕获有关系统行为和交互的数据。

例如,在视频系统中,您可能想要了解不同输入(即,GPU 之类的视频源端)或不同输出(即显示器或测试设备之类的接收端 (sink))是否会生成不同行为。

执行此类测试时,需捕获有关系统输入和输出的详细信息,包括系统的视频源端 (source) 和/或视频接收端 (sink) 的说明,以及测试期间配置。

如果故障可重现,请记录相关系统和配置信息,然后检查更改某个变量(例如,尝试改变输入,或者改变输入运行的操作系统)后是否仍旧会发生故障。

应最大限度减少每次测试期间所改变的参数数量,最好每次仅调整一个参数。

步骤 3 - 识别问题根源

故障可重现后,下一步要做的就是识别问题的根源。

首先我要介绍的方法我称之为逐个击破法。

即,重现故障后,我会尝试通过移除系统部分器件来确认问题是否仍然存在。

为确认设计分割位置,最佳方法是参阅步骤 1 中创建的原理图。 例如,如果在视频设计的传递部分发生故障,那么我会通过观察原理图来确认设计的捕获和显示部分的合理分割位置。然后,我会测试移除源端的情况下,使用测试模式生成器来向外发送固定模式并确认结果。

如果问题仍然存在,即可知我无需再检查输入,而是只需对系统的显示或输出部分集中执行其他调试步骤即可。 应该注意的是,这可能需要修改设计才能实现,但通常系统由软件控制,可通过软件来开启和关闭测试模式,而无需修改设计本身。

尽可能限定问题范围后,即可寻找可用工具来调试问题。

对于视频系统,您可添加 Integrated Logic Analyzer (ILA),如视频系列 31 - 使用 ILA 调试视频系统中所示。使用步骤 1 中的原理图来寻找放置探针的最佳位置。这将有助于您确认数据路径中是否有个别 IP 未按期望的方式运行,例如,未使用或未生成任何数据或者生成的数据错误。

如果系统使用的是 Linux 或者软件应用可输出至 UART,那么请使用所获得的输出来收集调试数据。它可提供有关应用运行失败的阶段或者失败原因的信息。 并且,调试时请放心在应用中随意添加更多打印或日志记录功能,解决问题后可随时将其移除。

注释:使用 UART 时,有时最好先捕获数据,稍后再打印,因为打印信息过多可能导致出现更多中断从而改变整个系统的行为。

并且,许多应用或驱动具有内置调试功能,甚至可能已提供调试应用,例如,Linux 上提供的 media-ctrl 或 modetest 命令。 您可参阅 IP/驱动/应用文档来了解相关信息。

如果应用已挂起,还可以通过“Debug”模式来运行应用,逐步分析应用以确认其挂起位置。

步骤 4 - 利用关键字来描述问题

在各种调试方法中并未论及此方法,但别忘了我们身处于互联网和搜索引擎的时代。

就像在步骤 1 中描述系统一样,只要把问题描述缩短到几个关键字,不仅可以帮助您明确问题核心,还将帮助您在网上找到相关问题(和解决方案),从而帮助您解决问题。

如果您已确认问题发生在某个具体 IP 上,那么第一个关键字就是此 IP 的名称。

然后,尝试寻找到描述该问题的单个关键字。 如果在输出控制台中包含错误,那么轻而易举就能找到这个关键字。

如果所选关键字并未返回任何结果,有时需要寻找描述相同问题的近义词或其他方法。 比如,“我的屏幕上为何会出现噪点?”或者“我的屏幕为何有雪花?”

步骤 5 - 查找相关已知问题

他人可能遇到过相同的问题,因此寻找相关问题记录总归有利无害。 您可利用许多资源来查找已知问题或者更详细的调试信息。

您可以通过直接搜索预定义位置来寻找所需信息。 通过缩小搜索范围,可以提高找到相关问题的几率。

您可通过下列位置来查找赛灵思视频系统相关信息:

  • IP 产品指南 (PG):
    • 大部分 IP 产品指南都包含调试部分(通常位于附录部分中)。请务必遵循提供的所有步骤进行操作。这些步骤是根据他人使用 IP 中所遇到的问题编写的,因此很可能对您会有所帮助。
    • 您还可以尝试在产品指南中使用步骤 4 中定义的关键字来执行搜索。
  • IP 主答复记录 (AR):
    • 每个赛灵思 IP 都有其主答复记录,其中列出了赛灵思已知的各种核的所有已知问题。您可以在这里进行搜索,以确认您的问题是否存在相关记录以及修复方法。

查找特定 IP 的主答复记录的途径之一是访问视频设计中心 (Video Design Hub)。在 IP 类别下,可以查找主答复记录和产品指南。

  • 在网络信息膨胀的时代背景下,可能他人在别处已提出过与您相同的问题,尤其是在赛灵思论坛上。请善用搜索引擎以及来自步骤 5 的关键字来搜索答案。

如果找不到任何相关主题,那么您可藉此机会在赛灵思社区论坛上创建新主题。

  • 对于 Linux 系统,赛灵思还提供维基百科页面,其中包含在基于 Linux 的系统中使用 IP 的相关具体信息。赛灵思维基百科包含对应于所有 Linux 驱动的页面。

    这些驱动页面包含有关 Linux 驱动支持的硬件功能的信息以及测试和调试信息,可有助于您重现并识别系统故障。

编辑:hfy


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

    关注

    33

    文章

    1797

    浏览量

    133159
  • 工程师
    +关注

    关注

    59

    文章

    1600

    浏览量

    70660
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    218015
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    做了电子工程师之后,最好拍的视频出现了#硬件设计 #电子DIY #电子工程师

    电子工程师
    安泰小课堂
    发布于 :2025年06月24日 17:45:57

    工程师分享的模电设计经验

    模拟电路的设计是工程师们最头疼,但也是最致命的设计部分。尽管目前数字电路、大规模集成电路的发展非常迅猛,但是模拟电路的设计仍是不可避免的,有时也是数字电路无法取代的,例如RF射频电路的设计。 本文总结了模拟电路设计中应该注意的问题。
    的头像 发表于 05-29 09:38 424次阅读

    工程师经验分享:社区之星 赵云 沉着稳定才能做好技术

    控制算法理论和实践有过推导和大量的研发调试经验。   工作经历: 华为技术有限公司---芯片验证工程师 上海问问网络科技有限公司---电机驱动软件工程师       社区访谈: 社区小
    的头像 发表于 04-15 15:58 1000次阅读
    <b class='flag-5'>工程师</b><b class='flag-5'>经验</b>分享:社区之星  赵云 沉着稳定才能做好技术

    GaN E-HEMTs的PCB布局经验总结

    GaN E-HEMTs的PCB布局经验总结
    的头像 发表于 03-13 15:52 1039次阅读
    GaN E-HEMTs的PCB布局<b class='flag-5'>经验总结</b>

    电子工程师的电源设计经验分享

    作为一名电子工程师,电源设计一直是我在工作中重点关注的领域。电源设计不仅需要扎实的理论基础,还需要丰富的实践经验。以下是我多年工作中总结的一些经验: 一、电源设计的核心理念 电源设计的
    的头像 发表于 01-21 15:53 892次阅读

    电子工程师的PCB设计经验

    本文分享了电子工程师在PCB设计方面的经验,包括PCB布局、布线、电磁兼容性优化等内容,旨在帮助初学者掌握PCB设计的关键技术。
    的头像 发表于 01-21 15:15 2362次阅读

    电子工程师的电源设计经验

    本文分享了电子工程师在电源设计方面的经验,包括电源电路的设计要点、电源管理芯片的选择、电源完整性优化等内容,旨在帮助初学者掌握电源设计的关键技术。
    的头像 发表于 01-21 15:14 841次阅读

    电子工程师的电路设计经验分享

    本文分享了电子工程师在电路设计方面的丰富经验,包括项目开发步骤、电路设计核心思想、元器件选择与优化等内容,旨在帮助初学者快速提升电路设计能力。
    的头像 发表于 01-21 15:13 1229次阅读

    电子工程师经验分享

    电子工程师在实际工作中积累了丰富的经验,这些经验对于新手工程师和电子专业的学生具有重要的参考价值。 一、电路设计经验 电路设计核心思想 电路
    的头像 发表于 01-14 10:14 1068次阅读

    低温失效的原因,有没有别的方法或者一些见解?

    低温失效的原因,有没有别的方法或者一些见解。就是芯片工作温度在100°--40°区间,然后呢我们到了0°以下就不工作了,然后在低温的情况下监测了电流和电压都正常,频率也都正常,频率不是FPGA的频率是晶振的频率,焊接的话七
    发表于 12-30 16:28

    有考虑深圳国企岗位的基带硬件工程师吗?

    基带工程师(岗位进去主要做信创类和5G手持终端模块类等) 考虑可微信联系:Bonnie2017060132 职位介绍 1、从事MTK/高通等平台的手机硬件设计。能够独立完成器件选型,原理图
    发表于 12-12 14:49