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

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

3天内不再提示

如何验证AMBA系统级环境

星星科技指导员 来源:synopsys 作者:Satyapriya Acharya 2023-05-29 09:33 次阅读

在之前的博客中,我讨论了在验证基于 AMBA 的子系统的复杂 SOC 时面临的一些关键验证挑战。据指出,建立一个可扩展的基于AMBA的核查环境确实是有益的,这种环境可以作最低限度的调整,以便可以重新用于新的系统或衍生物。

为了使 SOC 验证工程师能够创建高度可配置的 AMBA 结构,系统环境应提供占位符,用于将 DUT 与任何典型的 AMBA VIP 组件(如 AXI3/4/ACE、AHB 或 APB)挂钩。通过使用 AMBA 系统环境,我们可以将其配置为使用最少的附加代码实例化尽可能多的 AXI/AHB/APB VIP。因此,这样的环境需要封装以下内容:

气系统环境

AXI (3/4/ACE) 系统环境

AHB系统环境

APB 系统环境

虚拟序列器

AMBA 系统监视器阵列

AMBA 系统环境的配置描述符,可用于配置底层 CHI/AXI/AHB/APB 系统环境

下图显示了此类验证环境的表示形式:

pYYBAGR0AOqAdibTAATRjPApUGc271.png

让我们看看UVM中的哪些功能可以派上用场,为一些重要的系统级功能创建强大的环境:

分层虚拟序列器,以实现各种组件之间的同步:管理总线结构同步的系统序列器可以建模为虚拟序列器,并引用 CHI System Env、AXI System Env、AHB System Env 和 APB System Env 中的虚拟序列器。

利用分析端口进行系统级检查、评分板和响应处理:理想情况下,CHI、AXI、AHB 和 APB 主代理和从代理中的每个端口监视器都有一个分析端口。在事务结束时,主代理和从代理分别将完成的事务对象写入分析端口。可以指定此类上游端口和下游端口,供系统监视器用于跟踪结构中的转换和响应以及执行路由检查。

使用回调启用用户扩展并提取覆盖范围和吞吐量度量: 回调是一种访问机制,允许插入用户定义的代码,并允许在 AMBA 系统环境中访问对象以进行性能分析和吞吐量测量。

要在系统环境中的虚拟序列器上运行的综合序列库: UVM 允许将序列的逻辑集合注册到序列库,并且此集合可以在关联的序列器上执行。然后,系统级序列器协调这些序列集合在不同序列器的执行,以创建有趣的场景组合,同时针对系统级激励视角的最大覆盖范围

从验证的角度来看,系统级检查是关键。如前所述,它们可以包括:

跨 CHI、AXI、AHB 和 APB 端口的数据完整性检查

跨 CHI、AXI、AHB 和 APB 端口的事务路由检查

审核编辑:郭婷

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

    关注

    38

    文章

    3745

    浏览量

    215678
  • AMBA
    +关注

    关注

    0

    文章

    67

    浏览量

    14812
  • DUT
    DUT
    +关注

    关注

    0

    文章

    180

    浏览量

    11997
收藏 人收藏

    评论

    相关推荐

    请问数字电路的系统设计验证工具及流程?

    群主好,我想请教数字电路的系统设计验证工具及流程?即系统工程师常用的硬件描述语言,系统验证工具以及设计
    发表于 09-05 15:11

    AMBA是什么

    定义了一种多总线系统(multilevel busing system),包括系统总线和等级稍低的外设总线。 AMBA支持32位、64位、128位的数据总线,和32位的地址总线,同时支持byt
    发表于 08-05 08:16

    MCU芯片验证的相关资料推荐

    第二章 验证flow验证的Roadmap验证的目标UVM验证方法学ASIC验证分解验证策略和任务
    发表于 11-01 06:28

    AMBA ATP引擎3.1在Linux环境中编写AMBA ATP流量生成

    AMBA ATP 生态系统利用这一机会,Arm在2019年4月推出了AMBA ATP。AMBA ATP是对硬件接口的流量特征进行建模的一种标准规范。作为可在各个
    发表于 07-07 17:09

    AMBA简介

    AMBA规范描述了一种用于设计高性能16和32位微控制器、信号处理器和复杂外围设备的片上通信标准。 AMBA已在中得到验证,并正在设计为: •PDA微控制器,具有大量集成外围设备,但功耗非常低•具有
    发表于 08-10 07:17

    分层验证法在基于AMBA系统中的应用

    分层验证法在基于AMBA系统中的应用 在基于AMBA(Advanced Microcontroller Bus Architecture,先进的微控制器总线体系结构)的
    发表于 03-28 17:05 709次阅读

    Cadence验证IP为ARM AMBA 4协议大幅缩短验证周转时间

    电子设计创新企业Cadence设计系统公司,今天宣布使用ARM AMBA协议类型的Cadence验证IP(VIP)实现多个成功验证项目,这是业界最广泛使用的
    发表于 11-07 08:21 1012次阅读

    Mentor Graphics在其企业验证平台中新增ARM AMBA 5 AHB验证IP

    Mentor Graphics 公司(纳斯达克代码:MENT)今日宣布推出面向 ARM AMBA 5 AHB 片上互连规范的验证 IP (VIP)。该新 VIP 在 Mentor® 企业验证平台
    发表于 11-12 11:28 1147次阅读

    参数化UVM IP验证环境(上)

    的连接、驱动器、监视器、仿真序列以及功能覆盖率的建立。 本文呈现出了一种使用UVM验证方法学构建基于高可配置性的高级微处理器总线架构(AMBA)的IP验证环境,其中会使用到Synops
    发表于 09-15 14:37 6次下载
    参数化UVM IP<b class='flag-5'>验证</b><b class='flag-5'>环境</b>(上)

    Synopsys为Arm AMBA CXS的VIP提供EDA验证解决方案

    AutoTestbench和用于性能验证的VC AutoPerformance。 针对 AMBA CXS协议的验证IP(VIP)的发布进一步加持了AMBA的合作的本质,使生态
    发表于 10-15 09:37 3451次阅读

    基于AMBA总线介绍​

    1.1.AMBA发展史 AMAB1.0 AMBA2.0 AMBA3.0 AMBA4.0 AMBA1.0:ASB协议和APB协议;
    的头像 发表于 05-19 14:22 1874次阅读
    基于<b class='flag-5'>AMBA</b>总线介绍​

    AMBA4 SystemVerilog Asseration验证

    ARM所推出的AMBA4总线相对来讲还是应用广泛的。无论是芯片设计里还是FPGA设计里,时常能见到AMBA4总线的身影。
    的头像 发表于 05-05 15:37 536次阅读
    <b class='flag-5'>AMBA</b>4 SystemVerilog Asseration<b class='flag-5'>验证</b>

    验证必备:AMBA4 SystemVerilog Asseration

    ARM所推出的AMBA4总线相对来讲还是应用广泛的。无论是芯片设计里还是FPGA设计里,时常能见到AMBA4总线的身影。
    发表于 05-24 15:08 534次阅读
    <b class='flag-5'>验证</b>必备:<b class='flag-5'>AMBA</b>4 SystemVerilog Asseration

    AMBA系统监视器、记分板等

    为了验证连接 SoC 内 IP 块和子系统的互连结构,有必要检查数据通过互连时的正确性和完整性。这就是 AMBA 系统监视器为我们所做的。它还确保事务正确路由到其相应的从属服务器。
    的头像 发表于 05-29 09:32 370次阅读
    <b class='flag-5'>AMBA</b><b class='flag-5'>系统</b>监视器、记分板等

    基于AMBA的子系统验证它们需要什么

    从这张图片中,我清楚地看到不同口味的多个AMBA组件的优势(AXI3 / 4,ACE,AHB,APB)。因此,即使我们有所有不同的 VIP 来代表这些 .不同的口味,就完成完整子系统验证而言,这并不是一个灌篮。将所有这些组件拼
    的头像 发表于 05-29 10:35 389次阅读
    基于<b class='flag-5'>AMBA</b>的子<b class='flag-5'>系统</b>:<b class='flag-5'>验证</b>它们需要什么