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

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

3天内不再提示

利用ORAN IP的例子工程来做仿真

XILINX开发者社区 来源:XILINX开发者社区 作者:XILINX开发者社区 2022-03-11 09:42 次阅读

目前的 ORAN IP提供两种例子工程:

1. 一个是新建Block Design,添加IP之后,通过运行Block Automation来产生一个例子。这个例子不仅包含了ORAN IP,也将物理层所需要的10G/25G以太网IP和一个1588 PTP的用例都囊括了。该例子工程主要用于做板上demo,具体后续上板操作方式,以及相关软件驱动,可以在下面这个AR里了解到详情:

https://support.xilinx.com/s/article/1254509

2. 另一个方式是直接从IP Catalog里添加一个新的ORAN IP到Vivado工程里面,然后右键点击这个IP,选择Open IP Example Design…,这样产生的例子工程,只包含了一个ORAN IP,没有以太网等。但是其在ORAN IP外添加了testbench和测试用例,因此这个例子工程可以用来跑仿真。产生完毕之后,直接点击Vivado里面的Run Behavioral Simulation,就能把仿真跑起来,并查看例子是如何完成ORAN的同步,以及收发数据。

接下来,本文将指导用户,如何使用第二种方式产生的例子工程,添加自己的数据激励,用于完成自己所需要的仿真验证。

首先,用户的测试数据激励,是来自物理层以太网的数据包,一般会用pcap文件(如果还没有的话,可以先搜索例子工程目录下面,有几个pcap文件的例子,供参考)。使用Wireshark打开pcap文件(注意选ORAN协议),就可以看到包里面具体数据的解析了,如下图:

5eb56434-908e-11ec-952b-dac502259ad0.png

而IP仿真例子工程里用的数据激励则来自于memory文件,如下图,找到对应目录下的文件,客户可以手动或者自己写个脚本,修改里面数据为自己的数据激励(比如先从Wireshark里导出一个JSON的数据文件),就可以拿例子工程仿真来仿自己的数据源了。

5eccdede-908e-11ec-952b-dac502259ad0.png

Memory文件里面的数据激励,按如下格式排列:

在每个以太网包开始之前有两行:

第一行是包开始的时间,

第二行是包长度,下图中的这个例子,就是IP例子工程提供的数据激励用例,第一个包长度为6e,即长度为110 bytes。

5f08752a-908e-11ec-952b-dac502259ad0.png

这样在仿真的时候,就可以在以太网的RX侧到ORAN的defm这个接口处,看到上面这些数据了,如下图:

5f4b1164-908e-11ec-952b-dac502259ad0.png

例子仿真工程当中,其它用户还需要修改的地方,有以下两处:

1. 按照用户需求,配置ORAN的寄存器,打开“demo_tb.v”进行修改。

a. 可以直接修改下面这段tb里的配置,也可以先注释掉下面这段配置。

5f6f9c32-908e-11ec-952b-dac502259ad0.png

b. 然后用exdes_axi_wr来将你需要配置的寄存器值依次写入,如下:

exdes_axi_wr(`IP_BASE_ADDR + `hE600 , `hxxxx );

exdes_axi_wr(`IP_BASE_ADDR + `hE608 , `hx );

exdes_axi_wr(`IP_BASE_ADDR + `h6110 , `hx );

2. 由于产生的这个例子工程,总是用的200MHz内部时钟。还可以修改时钟频率为用户实际设计里的时钟频率。

由于时钟用到的地方不少,需要修改的地方包括例子工程里面的以下几处:

a. ORAN IP产生的图形界面里面

b. IP “torwave”的产生图形界面里面,包括Clocks For 10ms,1ms,Ps Per Clock

c. Clocking Wizard的clk_out2输出

d. 还有“radio_start_recover”,如果用到的话

e. 以及demo_tb.v里的clk_in_ps

5f934d58-908e-11ec-952b-dac502259ad0.png

总之,经过以上的修改,用户就可以利用ORAN IP提供的例子工程,跑自己的数据激励仿真了。这样用户就可以验证IP的配置,针对自己的ORAN下行(以太网接口)数据,是否能正确工作起来。

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

    关注

    12

    文章

    1838

    浏览量

    85260
  • IP
    IP
    +关注

    关注

    5

    文章

    1701

    浏览量

    149497
  • 仿真
    +关注

    关注

    50

    文章

    4070

    浏览量

    133549

原文标题:开发者分享|如何利用 ORAN IP 的例子工程做仿真

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    端到端已,智驾仿真测试该怎么

    端到端智驾方案因强泛化能力、可持续学习与升级等优势备受瞩目,但这对仿真测试带来了巨大挑战。康谋探索了一种有效的端到端智驾仿真解决方案,优化仿真引擎和数据传输,利用中间件技术缩短数据传输
    的头像 发表于 12-04 09:59 2495次阅读
    端到端已<b class='flag-5'>来</b>,智驾<b class='flag-5'>仿真</b>测试该怎么<b class='flag-5'>做</b>?

    Efinity FIFO IP仿真问题 -v1

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

    代理IP的质量并非单纯以定价高低判断

    IP
    jf_62215197
    发布于 :2024年10月18日 07:31:52

    如何利用海外爬虫IP进行数据抓取

    利用海外爬虫IP进行数据抓取需要综合考虑多个方面。
    的头像 发表于 10-12 07:54 181次阅读

    请问利用SPICE模型能不能进行PCB的SI仿真

    现想用CadencePCB的的SI仿真,但是有些器件没有IBIS仿真模型,只有SPICE模型,请问利用SPICE模型能不能进行PCB的SI仿真
    发表于 09-04 06:06

    如何利用python和API查询IP地址?

    在Python中,直接查询IP地址的地理位置或详细信息(如所属国家、城市等)通常需要依赖外部API服务,因为Python标准库本身不提供直接查询IP地址地理位置的功能。以下是一个使用requests
    发表于 08-28 11:55

    IP 地址在XSS中的利用与防范

    ​随着互联网的普及和Web应用的广泛使用,跨站脚本攻击(XSS)成为了网络安全领域中的一个重要威胁。在XSS攻击中,攻击者常常会巧妙地利用各种元素,包括用户的IP地址,实现其恶意目的。 跨站脚本
    的头像 发表于 08-07 16:43 240次阅读

    如何利用海外住宅IP协助企业进行网络营销

    IP
    jf_62215197
    发布于 :2024年07月30日 07:42:36

    利用逆变器PSPICE仿真模型模拟瞬间动态响应

    电子发烧友网站提供《利用逆变器PSPICE仿真模型模拟瞬间动态响应.docx》资料免费下载
    发表于 06-05 13:18 0次下载

    FPGA开发如何降低成本,比如利用免费的IP内核

    。 验证和测试:集成IP内核后,需要对整个设计进行验证和测试,以确保内核的正确性和性能。这可以通过仿真、硬件在环测试或实际硬件测试完成。 优化和迭代:根据测试结果,可能需要对设计进行优化,如调整内核
    发表于 04-28 09:41

    如何利用Tcl脚本在Manage IP方式下实现对IP的高效管理

    在Vivado下,有两种方式管理IP。一种是创建FPGA工程之后,在当前工程中选中IP Catalog,生成所需IP,这时相应的
    的头像 发表于 04-22 12:22 796次阅读
    如何<b class='flag-5'>利用</b>Tcl脚本在Manage <b class='flag-5'>IP</b>方式下实现对<b class='flag-5'>IP</b>的高效管理

    如何用ProteusTLE9877的仿真

    我需要做基于方波控制的车用电子水泵控制器,芯片是TLE9877,方波控制带霍尔传感器的三相BLDC电机,电机参数是额定电压16V,额定功率300W,额定转速300转/分,我不太会烧录芯片,想用ProteusTLE9877的仿真,我应该怎么
    发表于 02-01 06:58

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

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

    怎么用Vivado覆盖率分析

    在做仿真的时候往往会去做代码覆盖率和功能覆盖率的分析,保证仿真的比较充分完备的。
    的头像 发表于 01-03 12:34 1651次阅读
    怎么用Vivado<b class='flag-5'>做</b>覆盖率分析