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
    +关注

    关注

    1624

    文章

    21608

    浏览量

    601079
  • 仿真
    +关注

    关注

    50

    文章

    4015

    浏览量

    133317
  • IP核
    +关注

    关注

    4

    文章

    325

    浏览量

    49367

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

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

收藏 人收藏

    评论

    相关推荐

    Efinity FIFO IP仿真问题 -v1

    Efinity目前不支持联合仿真,只能通过调用源文件仿真。 我们生成一个fifo IP命名为fifo_sim 在Deliverables中保留Testbench的选项。 在IP的生成目
    的头像 发表于 10-21 11:41 754次阅读
    Efinity FIFO <b class='flag-5'>IP</b><b class='flag-5'>仿真</b>问题 -v1

    机器人仿真的类型和优势

    机器人仿真使机器人工程师和研究人员能够创建机器人及其环境的虚拟模型。这项技术支持在仿真的无风险环境中测试和验证机器人设计与控制算法以及与各种元素进行交互。通过使用仿真软件,可以预测和分析机器人在各种条件下的行为,而不需要物理原型
    的头像 发表于 10-14 10:43 354次阅读
    机器人<b class='flag-5'>仿真的</b>类型和优势

    域名、IP 地址、网址分别是什么?有什么区别呢?

    域名、IP 地址和网址我们经常会听到这三个名词,尤其是当你想要开通一个网站的时候,但很多人对它们之间的区别并不十分清楚,那么域名、IP 地址、网址分别是什么?有什么区别呢?接下来让我来一一
    的头像 发表于 09-18 11:13 357次阅读
    域名、<b class='flag-5'>IP</b> 地址、网址分<b class='flag-5'>别是</b>什么?有什么区别呢?

    tina仿真的噪声分析,可以分析电流噪声吗?

    tina仿真的噪声分析,可以分析电流噪声吗
    发表于 08-06 08:23

    如何设置LTspice来让仿真的速度快一些?

    我在用LTspice做电源仿真的时候,我发现仿真的速度很慢,该如何设置LTspice来让仿真的速度快一些,thanks
    发表于 01-05 07:03

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

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

    介绍一种通过SystemC做RTL/C/C++联合仿真的方法

    当FPGA开发者需要做RTL和C/C++联合仿真的时候,一些常用的方法包括使用MicroBlaze软核,或者使用QEMU仿真ZYNQ的PS部分。
    的头像 发表于 12-13 10:11 1709次阅读
    介绍一种通过SystemC做RTL/C/C++联合<b class='flag-5'>仿真的</b>方法

    西门子博途: 功能、组织介绍-从设备上传

    请注意,加载单个时,变量其它可能引用的所需不会与各个一起加载。在加载过程中,将根据名称重新分配对变量和的引用。加载操作
    的头像 发表于 12-10 16:06 2525次阅读
    西门子博途: 功能<b class='flag-5'>块</b>、组织<b class='flag-5'>块</b>介绍-从设备上传

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

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

    AD9164在tx_ enable pin上重置nco的级别是多少?

    当我配置注册簿 0x3F = 0xc8 以使用 tx_ enable 重置 NCO时, 在 tx_ enable pin 上重置 nco 的级别是多少? a high place( logic 1) or a l低 (logic 0) plate ?
    发表于 12-01 08:29

    仿真能给你提速50%——说说系统仿真的重要性

    我调试过其他同事的产品,并且把相应的链路,也量化到仿真软件里。然后花时间,验证出正确的仿真设置,仿真一些指标对接收机性能的影响。并且,在实验室实测,对比测试和仿真的差别,发现吻合的很好
    的头像 发表于 11-27 16:59 1087次阅读
    <b class='flag-5'>仿真</b>能给你提速50%——说说系统<b class='flag-5'>仿真的</b>重要性

    模拟电路仿真的基本原理

    电子发烧友网站提供《模拟电路仿真的基本原理.pdf》资料免费下载
    发表于 11-27 09:34 0次下载
    模拟电路<b class='flag-5'>仿真的</b>基本原理

    PCB仿真软件有哪些?PCB仿真软件是如何进行LAYOUT仿真的

    PCB仿真软件有哪些?PCB仿真软件是如何进行LAYOUT仿真的? PCB仿真软件是为了帮助电子工程师在设计和开发PCB电路板时进行各种仿真
    的头像 发表于 11-24 14:51 1.1w次阅读

    Xilinx FPGA IP之Block Memory Generator仿真

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

    包络仿真的四个步骤过程

    最近探索仿真的时候,在DF下仿真射频系统时,需要用到包络仿真(envelope simulation),所以就扒拉着看了一点ADS里面关于其的help内容。以下为翻译记录。
    的头像 发表于 11-08 14:23 999次阅读
    包络<b class='flag-5'>仿真的</b>四个步骤过程