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

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

3天内不再提示

IP仿真的实体或块级别是如何完成的

广州虹科电子科技有限公司 来源:工业通讯 作者:虹科工业控制 2022-06-13 15:54 次阅读

IP核的开发过程中,面临着许多关键技术,比如IP核的规格定义、基于接口的设计、IP核测试存取结构标准、IP核的验证与打包等。对于IP核的验证,主要是建立参照模型和测试平台,然后进行回归测试和形式验证。这里参照的模型主要用于对系统功能进行验证以及和RTL模型的对照验证,该模型主要用Verilog HDL等语言来构造。测试平台的建立与子模块设计并行,搭建验证环境和开发测试用例,并针对IP核的行为级模型对测试环境和测试用例进行调试,从而同步准备好用来仿真测试RTL级IP核的验证环境和测试用例。

仿真和验证是开发任何高质量的基于 FPGA 的 RTL 编码过程的基础。在本系列文章中,我们将分享我们设计过程中的关键步骤,并将基于虹科以太网IP核产品组合进行介绍。

整个过程的关键步骤如下:

面向实体/块的仿真:通过在每个输入信号上生成激励并验证 RTL 代码行为是否符合预期,对构成每个 IP 核的不同模块进行实体/块的仿真。

面向全局的仿真:一旦不同的模块被单独验证,则意味着下一步将整个IP仿真为单个 UUT(被测试单元)。

(On)硬件测试:尽管扩展的仿真计划提供了良好的可信度,但仍有许多corner的情况无法在虚拟环境中验证。对于这些情况,需要基于硬件的测试计划,这也是获得高质量结果的最后一步。

在本篇文章中,我们将描述第一步:IP 仿真的实体或块级别是如何完成的。

面向实体或块的仿真

“面向实体或块的仿真”这一步骤意味着验证在 IP 核内具有特定操作的特定实体或模块的正确操作。每个 IP 核都由许多实体或块组成,为了测试它们,每个实体会有不同的测试平台,通过在输入受到刺激时观察设计的输出来执行设计。这将有助于检查预期的行为。

举个例子就可以很好地理解这个步骤。下面我们先介绍虹科以太网交换机 IP 核的过滤数据库。过滤数据库存储 MAC 地址及其相关信息以做出帧转发决策。它是一个基于哈希的存储器,每个地址条目都有一些存储过滤数据的 bin。该哈希算法还生成过滤数据库内存的索引

958584e0-e8a3-11ec-ba43-dac502259ad0.png

过滤数据库执行有三个主要过程:学习、查找和老化

学习过程负责在满足不同条件时保存帧。

查找过程是在过滤数据库中搜索并获得帧的转发端口掩码的过程。

老化过程根据给定的时间段删除旧的 MAC 条目。

95ceb21e-e8a3-11ec-ba43-dac502259ad0.png

在这个仿真MAC表的具体案例中,请始终尝试测试构成过滤数据库功能的所有机制。从这个意义上说,就像学习不同的MAC,不同的查询、老化是并行完成的,最后需要清除MAC表并验证所有条目都已删除。此外,研究并始终能够测试可能的corner案例也十分重要。

测试和验证复杂 FPGA 设计的第二个关键步骤将在下一篇文章中展开介绍。一旦形成 IP 核的所有实体都按预期工作,全局仿真就会发挥作用。

96237e0c-e8a3-11ec-ba43-dac502259ad0.png

未完待续

IP核可以使开发人员减少工作量,并缩短产品上市时间。虹科目前已有丰富的IP核产品组合,包括TSN IP核、HSR/PRP IP核、以太网IP核、冗余IP核等,可以轻松集成到用户的FPGA中。若想了解更多信息,欢迎通过sales@hkaco.com联系虹科工业控制团队!

原文标题:虹科干货 | 如何测试与验证复杂的FPGA设计(1)——面向实体或块的仿真

文章出处:【微信公众号:广州虹科电子科技有限公司】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

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

    关注

    1602

    文章

    21320

    浏览量

    593194
  • 仿真
    +关注

    关注

    50

    文章

    3872

    浏览量

    132160
  • IP核
    +关注

    关注

    4

    文章

    317

    浏览量

    49043

原文标题:虹科干货 | 如何测试与验证复杂的FPGA设计(1)——面向实体或块的仿真

文章出处:【微信号:Hongketeam,微信公众号:广州虹科电子科技有限公司】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    芯片前仿真和后仿真的区别

    在芯片设计中,前仿真和后仿真都是非常重要的环节,但它们在功能和目的上存在明显的区别。本文将详细介绍前仿真和后仿真的区别,以及它们在芯片设计中的应用和重要性。 一、前
    的头像 发表于 12-13 15:06 2439次阅读

    Saber中如何更好地提高仿真的收敛性(一)

    仿真过程中,由于仿真模型的不连续性,或者模型没有适当地表征/参数化,或者当求解器无法求解控制模型行为的方程时,可能就会出现仿真的收敛问题。
    的头像 发表于 12-05 14:43 645次阅读
    Saber中如何更好地提高<b class='flag-5'>仿真的</b>收敛性(一)

    Xilinx FPGA IP之Block Memory Generator仿真

    上文对BMG ip的基本情况进行了简单的描述,本文通过例化仿真来实际使用功能一下这个IP
    的头像 发表于 11-14 18:24 719次阅读
    Xilinx FPGA <b class='flag-5'>IP</b>之Block Memory Generator<b class='flag-5'>仿真</b>

    EMC仿真的方向 EMC仿真的难处在于哪里?

    目前仿真的方向基本上有两个,一个是以试验测试为导向,对产品进行EMC测试项目的仿真
    的头像 发表于 11-04 17:28 1426次阅读
    EMC<b class='flag-5'>仿真的</b>方向 EMC<b class='flag-5'>仿真的</b>难处在于哪里?

    基于NS2仿真的IP网络性能分析与研究

    电子发烧友网站提供《基于NS2仿真的IP网络性能分析与研究.pdf》资料免费下载
    发表于 10-24 11:41 0次下载
    基于NS2<b class='flag-5'>仿真的</b><b class='flag-5'>IP</b>网络性能分析与研究

    能连arduino仿真的电化学软件

    电子发烧友网站提供《能连arduino仿真的电化学软件.zip》资料免费下载
    发表于 09-18 09:25 5次下载
    能连arduino<b class='flag-5'>仿真的</b>电化学软件

    时序仿真与功能仿真的区别有哪些?

    EDA仿真,它模拟一个数字电路中时序的行为。时序行为通常包括数据信号传输的时序,如周期时间或LATCH信号的上升沿下降沿。它通常应用于验证设计延迟、时序、时序违规和时序冲突等问题。 时序仿真的主要目的是在设计的任何阶段,从RTL级别
    的头像 发表于 09-17 14:15 2871次阅读

    时序仿真与功能仿真的区别在于

    时序仿真与功能仿真的区别在于 时序仿真与功能仿真是电子设计自动化(EDA)中最常见的两种仿真方式。虽然二者都是
    的头像 发表于 09-08 10:39 3186次阅读

    XILINX FPGA IP之DDS Compiler_ip例化仿真

    之前的文章对dds ip 的结构、精度、参数、接口进行了详细的说明,本文通过例化仿真对该IP的实际使用进行演示。本文例化固定模式和可配置模式两种模式分别例化ip
    的头像 发表于 09-07 18:31 942次阅读
    XILINX FPGA <b class='flag-5'>IP</b>之DDS Compiler_<b class='flag-5'>ip</b>例化<b class='flag-5'>仿真</b>

    阐述ADS交流仿真的基本方法和流程

    交流仿真的概念:交流放着是射频电路中最重要的仿真方式之一,主要用于分析电路的小信号特性和噪声特性。
    的头像 发表于 06-29 11:17 9663次阅读
    阐述ADS交流<b class='flag-5'>仿真的</b>基本方法和流程

    ADS的直流仿真实验

    直流仿真是其他仿真的基础,只有在完成直流仿真、确定电路和系统直流工作点的情况下,才能进行其他仿真验证,可以说直流
    的头像 发表于 06-29 10:48 4353次阅读
    ADS的直流<b class='flag-5'>仿真</b>实验

    VCS独立仿真Vivado IP核的问题补充

    仿真Vivado IP核时分两种情况,分为未使用SECURE IP核和使用了SECURE IP核。
    的头像 发表于 06-20 14:23 661次阅读
    VCS独立<b class='flag-5'>仿真</b>Vivado <b class='flag-5'>IP</b>核的问题补充

    VCS独立仿真Vivado IP核的问题补充

    仿真Vivado IP核时分两种情况,分为未使用SECURE IP核和使用了SECURE IP核。
    的头像 发表于 06-06 14:45 1275次阅读
    VCS独立<b class='flag-5'>仿真</b>Vivado <b class='flag-5'>IP</b>核的问题补充

    记录VCS仿真的IP核只有VHDL文件的解决方法

    使用VCS仿真Vivado里面的IP核时,如果Vivado的IP核的仿真文件只有VHDL时,仿真将变得有些困难,VCS不能直接
    的头像 发表于 06-06 11:15 1439次阅读
    记录VCS<b class='flag-5'>仿真的</b><b class='flag-5'>IP</b>核只有VHDL文件的解决方法

    SystemVerilog测试套件加速IP到SoC的重用

    如果没有经过深思熟虑的验证环境,验证团队会浪费大量时间在 SoC 级别重新创建验证环境以实现芯片级验证,因为他们不考虑重用最初开发的环境来验证其块级 IP。即使跨相同的抽象级别,也无法重用相同的验证
    的头像 发表于 05-29 10:13 364次阅读
    SystemVerilog测试套件加速<b class='flag-5'>IP</b>到SoC的重用