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

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

3天内不再提示

使用功能覆盖执行端到端流量可追溯性

星星科技指导员 来源:嵌入式计算设计 作者:Shailesh Vasekar 2022-07-05 11:51 次阅读

大多数时候,定义功能覆盖目标是在测试计划准备过程中完成的。对于要验证的被测设备 (DUT) 的每个功能特性,所有可能的激励生成都是通过测试用例并在记分板、模型、检查器和断言的帮助下开发的。我们通过检查该刺激的响应来确认 DUT 的正确性。为了确保我们创建了足够多的输入场景和 DUT 响应组合,根据覆盖组、覆盖点和断言覆盖为每个特征定义了覆盖目标,这让我们对验证特定特征的彻底程度充满信心。

DUT 的 RTL 块进入从覆盖类别得分定义的变量,并在具有不同值命中的交叉覆盖组中使用这些变量将确认输入事务是否遵循指定的设计输出路径。出于几个原因,这非常重要。首先,功能验证记分板确实进行端到端事务检查,但它不确认 DUT 流量路径激励已遵循。其次,单个覆盖组或 UVM RAL Regmodel 功能覆盖或断言覆盖将有助于单个刺激覆盖,但组合使用将确保功能路径的正确性。让我们详细看看我们如何使用功能覆盖来确认从输入到输出端口的流量穿过所需的数据和控制路径。

执行流量追溯

很多时候,仅仅涵盖单个特征和交叉特征是不够的。通过遍历不同数据块、各种控制逻辑和不同 DUT 配置的所有可能组合来检查输入接口的流量是否已到达另一端的输出接口,这是一个基本要求。

在控制块接口上具有用于 DUT 输入、输出接口的单独覆盖组,regmodel 自动生成的功能覆盖可能无法保证基于寄存器配置。输入事务、数据包或命令已通过所需的数据块和控制路径,或已绕过典型的控制块。

使用交叉覆盖,在覆盖类之外定义并用于存储来自各种写入方法的事务的变量上,可以确保这些变量的不同值被命中并跟踪设计的 DUT 路径。覆盖组也将在覆盖类之外定义。

设想

让我们考虑一个场景,如图 1 所示。在一个高度配置的 DUT 中,一个输入……一个数据包可以通过选择的数据路径和控制路径块以及通过基于寄存器配置的选择的数据包路由器端口路由到输出端口。带有字段 RT=2‘b01 的寄存器 CTRNL_RUT 使用 Cntrl_plan1、交换机 1(图中未显示)决定从输入端口 1 通过 DataPath_blk1 到路由器端口 1 并最终到输出端口 1 的数据包路径。但是,寄存器 CTRNL_RUT.RT= 2’b10 将使用 Cntrl_plan2 和路由器端口 2 通过 DataPath_blk2 更改新传入数据包的路由。

在这种情况下,为 datapath_block1、控制路径(即 Cntrl_plane1)和寄存器字段 RT 定义的覆盖组将分别覆盖激励值。但是,如果变量定义在覆盖类范围之外,保存来自这些接口的信号值,并且如果在具有有趣值的交叉覆盖中使用,则可以确认数据包已通过正确的路径并实现数据包可追溯性。

pYYBAGLDtWSAWftzAAK4UEw2WmA780.png

图 1 : 在每个点获取信息的交通跟踪

覆盖实施

在测试平台中,环境类通常具有在其中实例化的所有接口代理、功能覆盖和记分板。IO 和控制接口监视器的分析端口连接到功能覆盖类的出口,以获取接口数据包和事务。所需资源,如 regmodel,将使用 uvm_condig_db 构造将不同的配置对象设置为覆盖类。覆盖实现明智,定义变量,覆盖类之外的数据包存储元素,并使用它们来复制重要接口信号、控制信号和数据包字段的值。这些在覆盖类之外定义的变量将用于交叉覆盖。

如上图 1 所示,覆盖类之外定义的变量将用于保存数据包 ID 等信息,对 DataPath_blk1 有效。对于控制平面,保存准备就绪、状态、目标 ID、路由通道号等信息。可以将 CTRNL_RUT.RT 值等字段的寄存器值与这些变量交叉,以确保如果 RT 的字段值为 01,则 Datapath_blk1 字段和控制计划信号具有感兴趣的值。使用上述方法实现功能覆盖将很有帮助,尤其是在块和集群级别验证的情况下。覆盖类的独立实现探索了具有类似 DUT 接口的项目之间的可重用性选项。

寄存器配置信息也可以通过接口接收,但又需要解码地址和字段,所以使用regmodel会很有意义。Regmodel 带有丰富的 API 和默认序列集,可以使用它们的属性来运行所有寄存器和字段。基于 Regmodel 的自动生成功能覆盖可以单独处理。

嵌入式覆盖组存在一个已知限制。我们不能使用相同覆盖组的多个实例作为数据类型,因此在功能覆盖类之外定义覆盖组将有助于定义覆盖组数组,特别是如果大多数接口属于相同类型,通常会有所帮助网络域 DUT 的情况。具有多个实例的单个覆盖组可以在覆盖类的每个write_《》方法中使用不同的索引进行采样。

代码示例

poYBAGLDtW2AbE3MAAGiD30ZstE115.png

在上面的例子中,covergroup 和 variable 存储来自 write 方法的事务和接口信号,并在类外部声明。这将允许跨覆盖组使用这些变量。

结论

基于将验证事务或数据包的重要接口信号,可以定义覆盖类范围之外的全局变量并用于复制这些信号。每个接口信号、控制信号也可以这样做,并且可以在一个覆盖组中使用许多全局变量,这将定义这些变量的交叉覆盖。这就是您可以确认从输入到输出端口的流量通过所需数据和控制路径的方式。

审核编辑:郭婷

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

    关注

    31

    文章

    5310

    浏览量

    119983
  • 接口
    +关注

    关注

    33

    文章

    8491

    浏览量

    150809
  • 路由器
    +关注

    关注

    22

    文章

    3706

    浏览量

    113516
收藏 人收藏

    评论

    相关推荐

    连接视觉语言大模型与自动驾驶

    自动驾驶在大规模驾驶数据上训练,展现出很强的决策规划能力,但是面对复杂罕见的驾驶场景,依然存在局限性,这是因为
    的头像 发表于 11-07 15:15 146次阅读
    连接视觉语言大模型与<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>自动驾驶

    智己汽车“”智驾方案推出,老司机真的会被取代吗?

    随着智能驾驶技术的发展,行业已经从早期基于简单规则和模块化逻辑的自动驾驶,逐步迈向依托深度学习的高复杂度智能驾驶解决方案,各车企也紧跟潮流,先后宣布了自己的智驾方案。就在近期,智己汽车推出了其
    的头像 发表于 10-30 09:47 172次阅读
    智己汽车“<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>”智驾方案推出,老司机真的会被取代吗?

    让智驾强者愈强时代来临?

    编者语: 「智驾最前沿」微信公众号后台回复: C-0572 ,获取本文参考报告:《信达证券:革命开启,强者愈强时时代即将来临》pdf下载方式。 随着科技进步和汽车技术的发展,智能驾驶时代已然
    的头像 发表于 10-24 09:25 422次阅读
    <b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>让智驾强者愈强时代来临?

    InfiniBand网络解决LLM训练瓶颈

    的,这需要大量的计算资源和高速数据传输网络。InfiniBand(IB)网络作为高性能计算和AI模型训练的理想选择,发挥着重要作用。在本文中,我们将深入探讨大型语言模型(LLM)训练的概念,并探索
    的头像 发表于 10-23 11:26 278次阅读
    <b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>InfiniBand网络解决LLM训练瓶颈

    Mobileye自动驾驶解决方案的深度解析

    自动驾驶技术正处于快速发展之中,各大科技公司和汽车制造商均在争相布局,试图在这个新兴领域占据一席之地。Mobileye作为全球自动驾驶技术的领军企业之一,凭借其独特的自动驾驶解决方案,展现了
    的头像 发表于 10-17 09:35 290次阅读
    Mobileye<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>自动驾驶解决方案的深度解析

    测试用例怎么写

    测试方法,旨在验证整个应用程序从前端后端的流程是否能够按照预期工作。它涉及多个系统组件和接口的交互,确保业务流程的完整和正确。 二、编写
    的头像 发表于 09-20 10:29 331次阅读

    测试不正常如何处理

    正确地协同工作。然而,当测试出现问题时,处理起来可能会相当复杂。 1. 理解测试失败的原因 1.1 确定测试失败的类型 功能失败 :测试用例未能通过因为
    的头像 发表于 09-20 10:25 272次阅读

    恩智浦完整的Matter解决方案

    恩智浦为打造Matter设备,提供了完整的解决方案,从连接和安全解决方案到处理器和软件,应有尽有,为Matter标准的规模化商用提供有力支撑。
    的头像 发表于 08-26 18:04 2485次阅读
    恩智浦完整的Matter<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>解决方案

    实现自动驾驶,唯有

    ,去年行业主流方案还是轻高精地图城区智驾,今年大家的目标都瞄到了(End-to-End, E2E)。
    的头像 发表于 08-12 09:14 612次阅读
    实现自动驾驶,唯有<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>?

    电阻的电流和电压是如何区分的

    电阻,又称为四测量电阻或凯尔文电阻,是一种特殊的电阻器,主要用于精密测量电路中的电阻值。四电阻的电流和电压的区分对于测量的准确
    的头像 发表于 08-05 10:48 907次阅读

    周光:不是真“无图”,谈何

    “如果智能驾驶系统不能彻底摆脱高精度地图,谈何。”   6月1日,元戎启行CEO周光在粤港澳大湾区车展暨2024(第二届)未来汽车先行者大会上表示。   这并非周光第一次强调“无图”方案与
    发表于 06-03 11:06 2808次阅读
    周光:不是真“无图”,谈何<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>

    小鹏汽车发布大模型

    小鹏汽车近日宣布,其成功研发并发布了“国内首个量产上车”的大模型,该模型可直接通过传感器输入内容来控制车辆,标志着智能驾驶技术的新突破。
    的头像 发表于 05-21 15:09 650次阅读

    理想汽车自动驾驶模型实现

    理想汽车在感知、跟踪、预测、决策和规划等方面都进行了模型化,最终实现了的模型。这种模型不仅完全模型化,还能够虚拟化,即在模拟环境中进行训练和测试。
    发表于 04-12 12:17 411次阅读
    理想汽车自动驾驶<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>模型实现

    康谋方案 | 基于场景的硬件在环(HiL)测试智能解决方案

    。同时,针对不同传感器进行协同工作,模拟不同的驾驶环境和交通状况,测试和验证自动驾驶车辆的算法和决策策略,从而确保其安全和可靠。 方案特点 针对ADAS/AD系统进行基于场景的
    的头像 发表于 01-31 17:17 712次阅读
    康谋方案 | 基于场景的<b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b>硬件在环(HiL)测试智能解决方案

    什么是通信?

    是指在两个端点(如传感器、控制单元或执行器)之间安全地传输数据的过程,同时在整个通信链中保证数据的完整和可靠。通过建立安全的路径,
    的头像 发表于 11-24 11:07 1335次阅读