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

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

3天内不再提示

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

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

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

DUTs 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)定义的覆盖组将单独覆盖激励值。但是,如果变量被定义在覆盖类的范围之外,保存来自这些接口的信号值,并且如果在具有有趣值的交叉覆盖中使用,则可以确认数据包已遍历正确的路径并实现数据包可追溯性。

pYYBAGNI16uAUHnaAAJw1tCXZrI234.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_《》方法中的不同索引对具有多个实例的单个覆盖组进行采样。

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

结论

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

审核编辑:郭婷

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

    关注

    31

    文章

    5292

    浏览量

    119802
  • 路由器
    +关注

    关注

    22

    文章

    3692

    浏览量

    113408
收藏 人收藏

    评论

    相关推荐

    Skype提供加密“私人对话”功能 让你对话更安全

    据报道,微软在Skype 中开启了“私人对话”功能,采取加密方式,让你的聊天安全和保密
    发表于 01-12 11:26 5216次阅读

    制造业MES的可追溯是怎样的?MES功能可追溯有什么要求?

    着市场竞争越来越激烈,制造企业需要在产品召回、提高质量、降低成本等各个方面进行提升。而这些方面的提升和改进,需要获取企业生产过程中的各种可追溯数据。可追溯是MES系统的一个重要特性,可追溯
    发表于 09-13 08:00 5次下载
    制造业MES的<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>是怎样的?MES<b class='flag-5'>功能</b>对<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>有什么要求?

    食品的可追溯怎样来完善

    区块链具有独特的功能和特性,对食品可追溯特别有吸引力。
    发表于 08-05 09:59 1588次阅读

    区块链的可追溯可以带来什么好处

    区块链是一个分散的数据库,分散数据库记录了区块链每笔交易的输入输出,从而可以轻松的追踪资产数量变化和交易活动,这就是区块链的可追溯
    发表于 08-13 15:06 1991次阅读

    食品的可追溯如何利用好5G技术

    5G网络有潜力实现动态、的食品追溯——这得益于它能够同时连接到许多低功耗设备,如嵌入式物联网传感器。
    发表于 01-15 15:33 1766次阅读

    关于PCB数据的可追溯

    它。它变得更好了。试着回忆上一次有做的事情。 这也无济于事。最后,最好的建议浮出水面:您应该从上一次回忆起它的步骤回溯您的步骤。 这种简单而又合乎逻辑的范式说明了可追溯的重要
    的头像 发表于 09-28 20:21 2816次阅读

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

      基于将验证事务或数据包的重要接口信号,可以定义覆盖类范围之外的全局变量并用于复制这些信号。
    的头像 发表于 06-20 11:33 632次阅读
    使<b class='flag-5'>用功能</b><b class='flag-5'>覆盖</b><b class='flag-5'>执行</b><b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b><b class='flag-5'>流量</b><b class='flag-5'>可追溯</b><b class='flag-5'>性</b>

    应用程序生命周期管理软件增强产品开发测试和可追溯

      智能手机、汽车系统和智能工业控制设备等项目受益于更好的可追溯。随着越来越多的测试团队采用自动化 ALM 方法来收集和传播可追溯信息,产品质量将继续提高,即使系统变得更加复杂。
    的头像 发表于 06-28 15:18 1152次阅读
    应用程序生命周期管理软件增强产品开发测试和<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>

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

      基于将验证事务或数据包的重要接口信号,可以定义覆盖类范围之外的全局变量并用于复制这些信号。每个接口信号、控制信号也可以这样做,并且可以在一个覆盖组中使用许多全局变量,这将定义这些变量的交叉覆盖
    的头像 发表于 07-05 11:51 588次阅读
    使<b class='flag-5'>用功能</b><b class='flag-5'>覆盖</b><b class='flag-5'>执行</b><b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b><b class='flag-5'>流量</b><b class='flag-5'>可追溯</b><b class='flag-5'>性</b>

    确保红外测温的准确/可追溯

    计量可追溯至关重要,因为准确的温度测量会影响工厂安全、工艺效率、材料强度、产品质量、设备寿命等。
    的头像 发表于 08-29 08:07 1005次阅读
    确保红外测温的准确<b class='flag-5'>性</b>/<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>

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

    很多时候,仅涵盖单个特征和交叉特征是不够的。通过不同数据块、各种控制逻辑和不同 DUT 配置的所有可能组合,检查输入接口的流量是否已到达其他的输出接口,这是一个基本要求。
    的头像 发表于 11-25 16:46 436次阅读
    使<b class='flag-5'>用功能</b><b class='flag-5'>覆盖</b><b class='flag-5'>执行</b><b class='flag-5'>端</b><b class='flag-5'>到</b><b class='flag-5'>端</b><b class='flag-5'>流量</b><b class='flag-5'>可追溯</b><b class='flag-5'>性</b>

    为什么需求可追溯对于当今的嵌入式系统仍然很重要

    挑战在于了解如何在当今动态市场条件和更短的发布时间驱动的快速变化的软件面前保持需求可追溯。了解双向可追溯并知道如何维护它可确保产品功能
    的头像 发表于 04-24 11:00 1086次阅读
    为什么需求<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>对于当今的嵌入式系统仍然很重要

    V850E/PHO2可追溯数据

    V850E/PHO2 可追溯数据
    发表于 05-05 19:52 0次下载
    V850E/PHO2<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>数据

    V850E/PHO2可追溯数据

    V850E/PHO2 可追溯数据
    发表于 06-26 19:44 0次下载
    V850E/PHO2<b class='flag-5'>可追溯</b><b class='flag-5'>性</b>数据

    测试用例怎么写

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