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

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

3天内不再提示

XRT_Kernel与XRT_IP介绍

XILINX开发者社区 来源:XILINX开发者社区 作者:Yang Chen 2022-07-04 11:09 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文作者:赛灵思工程师 Yang Chen

从2020.2开始,XRT提供了新的Native API,以区别行业标准OpenCL API的,在FPGA加速应用上,两者都是可以使用的。XRT Native API的优势是更加契合FPGA加速应用,而OpenCL的优势则是平台通用性比较好。

XRT Native API里面有两个API比较有意思,可能会产生混淆,一个是xrt_kernel,另一个是xrt_ip。IP这个概念,在FPGA中还是比较常用的,典型的就是IP catalog里面的IP,当然这次讲到的IP更倾向于custom IP,即用户自定义IP(以下略作IP)。无论使用Vitis_hls, V++,Package_xo中哪种生成方法,最后生成的kernel的端口类型都是固定的,另外控制端口AXI_LITE的寄存器配置也是保持固定的(当然会因参数数量不同而变化)。

截取以下网址-page 274 S_AXILITE Control Register Map作参考:

(https://www.xilinx.com/support/documentation/sw_manuals/xilinx2021_2/ug1399-vitis-hls.pdf )

97321a98-f21b-11ec-ba43-dac502259ad0.png

这些寄存器设置都是工具自动生成的,用户不需要进行修改。具体这些信号是如何让控制这些模块的,以后有机会可以再讲。那么如果有些需求是,我是一名RTL设计者,设计里面有Xilinx IP需要配置功能,我想用更多一点的寄存器空间作额外配置,现有的寄存器空间不够,不能满足我的要求:假设,一个IP中内嵌了一个axi_timer IP(截图取自:https://www.xilinx.com/support/documentation/ip_documentation/axi_timer/v2_0/pg079-axi-timer.pdf page 12)

那么我该如何配置它呢?

97624f06-f21b-11ec-ba43-dac502259ad0.png

这时,之前提到xrt_ip就可以派上用场了,用户可以自己定制控制寄存器而不用受限于规定的control register map,当然端口类型还是需要按照kernel的要求来设计。沿用上述的寄存器配置,我们可以额外地添加寄存器:

97785fe4-f21b-11ec-ba43-dac502259ad0.png

所以我们可以看到,kernel应该算IP中的一个子集,只是IP的话更加的灵活些。但是由于IP控制寄存器配置的不固定,导致xrt无法自动管理IP(不知道哪个寄存器代表的含义),所以只能提供了寄存器接口让用户自己访问控制。从这方面来说,使用的便利性会降低,无论是IP的启动停止,还是寄存器配置都需要用户来控制。相对来说,xrt_kernel匹配的set_arg,run,wait等操作,它能够代替用户做一些底层操作,更加地省时省力。

原文标题:开发者分享|XRT Native API: XRT_Kernel & XRT_IP 介绍

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

审核编辑:汤梓红

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

    关注

    1664

    文章

    22502

    浏览量

    639054
  • 寄存器
    +关注

    关注

    31

    文章

    5619

    浏览量

    130395
  • IP
    IP
    +关注

    关注

    5

    文章

    1882

    浏览量

    156681
  • API
    API
    +关注

    关注

    2

    文章

    2473

    浏览量

    67003
  • Kernel
    +关注

    关注

    0

    文章

    50

    浏览量

    12126

原文标题:开发者分享|XRT Native API: XRT_Kernel & XRT_IP 介绍

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    海外静态IP和海外动态IP有哪些区别?怎么选择?

    这个问题其实对于需要做跨境、电商、社媒运营的人问的比较多,所以本篇内容为大家来详细介绍下,具体如下: 一、什么是静态IP、动态IP? 1、静态IP(Static
    的头像 发表于 04-13 12:36 86次阅读
    海外静态<b class='flag-5'>IP</b>和海外动态<b class='flag-5'>IP</b>有哪些区别?怎么选择?

    沐曦股份联合上海人工智能实验室发布高性能GPU算子生成系统Kernel-Smith

    近日,上海人工智能实验室和沐曦股份联合发布了高性能GPU算子生成系统—— Kernel-Smith。
    的头像 发表于 04-08 15:39 310次阅读
    沐曦股份联合上海人工智能实验室发布高性能GPU算子生成系统<b class='flag-5'>Kernel</b>-Smith

    知识分享|连接器 IP 防护等级全攻略

    工业、车载、户外及新能源领域,连接器的防护性能直接影响设备可靠性。IP防护等级是评判连接器防水、防尘能力的核心标准。面对IP44、IP54、IP65、
    的头像 发表于 03-20 13:51 502次阅读
    知识分享|连接器 <b class='flag-5'>IP</b> 防护等级全攻略

    智多晶MCU硬核IP全面升级|CM3和STAR新特性介绍

    IP进行了重大升级,不仅在底层架构上实现了突破,更在易用性和扩展性上带来了显著提升。本文将为您详细介绍Cortex-M3(CM3)与STAR Processor的最新特性。 一、架构重组 CM3和STAR的IP做了整合,在接口
    的头像 发表于 02-12 10:09 808次阅读
    智多晶MCU硬核<b class='flag-5'>IP</b>全面升级|CM3和STAR新特性<b class='flag-5'>介绍</b>

    深入剖析ARM64内核关键文件:kernel-6.1/arch/arm64/kernel/head.S

    在 ARM64 架构的 Linux 内核开发中,arch/arm64/kernel/head.S是一个绕不开的关键文件—— 它是内核启动早期的 “桥梁”,承接 Bootloader 与内核初始化核心
    的头像 发表于 02-04 17:35 1380次阅读
    深入剖析ARM64内核关键文件:<b class='flag-5'>kernel</b>-6.1/arch/arm64/<b class='flag-5'>kernel</b>/head.S

    智多晶SerDes 2.0 IP介绍

    为了满足用户对SerDes日益增涨和多样化的要求。智多晶SerDes IP推出了2.0版本的升级,本次升级相比1.0版本主要带来了以下的变化。
    的头像 发表于 08-16 15:32 1634次阅读
    智多晶SerDes 2.0 <b class='flag-5'>IP</b><b class='flag-5'>介绍</b>

    请问InConnect 是否可以用实际 IP 而不是用虚拟 IP 映射实际IP

    但是这样子使用的话,我只能通过这个虚拟IP来连接设备,那样子我的PLC编程软件就不能连接上设备了因为IP和实际的不一样,我能通过什么办法来让映射出来的虚拟IP和我的实际设备IP一致吗?
    发表于 08-06 07:54

    【HZ-RK3568开发板免费体验】3、开启Linux Kernel RT功能

    微提供配套SDK的Preempt-RT补丁。 1、Linux PREEMPT_RT补丁 Linux Kernel应用补丁的指令格式如下 patch -p1 < path
    发表于 07-22 14:03

    IP防护等级说明

    IP防护等级说明
    发表于 06-24 16:55 2次下载

    光庭信息SOME/IP平台融合解决方案介绍

    随着汽车EE架构向 "中央计算 + 区域控制 + 以太网" 演进,面向服务架构(SOA)成为主流。作为车载服务化通信核心组件,SOME/IP 协议栈的跨平台兼容性与系统解耦能力,正成为车企应对车型快速迭代的关键技术支点。
    的头像 发表于 06-11 15:00 1728次阅读
    光庭信息SOME/<b class='flag-5'>IP</b>平台融合解决方案<b class='flag-5'>介绍</b>

    IP6802 5W方案

    本文介绍了国内团队自主研发的无线充电芯片IP6802,其单芯片构建完整生态IP6802的革命性突破,将传统分立式电路浓缩为单芯片解决方案,实现了智能功率管理、动态功率管理、温度守护者等功能。
    的头像 发表于 06-02 08:57 920次阅读
    <b class='flag-5'>IP</b>6802 5W方案

    IP6825+IP5306充电宝:重新定义便携电源的无线充电体验

    本文主要介绍了两种充电宝方案:IP6825和IP5306。IP6825是创新解决方案,通过高效充放电和磁吸无线充电将充电宝的便捷性和功能性提升。IP
    的头像 发表于 05-19 08:56 1766次阅读
    <b class='flag-5'>IP6825+IP</b>5306充电宝:重新定义便携电源的无线充电体验

    智多晶eSPI_Slave IP介绍

    eSPI总线具有低功耗、管脚数量少、高效的数据传输等优点,常用于与EC、BMC、SIO等外设的通信,是PC中CPU与这些外设通信的主流协议。智多晶eSPI_Slave IP符合eSPI标准规范,支持相关协议属性。
    的头像 发表于 05-08 16:44 1623次阅读
    智多晶eSPI_Slave <b class='flag-5'>IP</b><b class='flag-5'>介绍</b>

    灿芯半导体受邀参加IP-SoC Silicon Valley 2025

    。作为一站式定制芯片及IP供应商,灿芯半导体受邀参展,向与会观众介绍公司设计服务的成功案例和丰富的自研IP
    的头像 发表于 04-28 11:52 1142次阅读

    智多晶FIFO_Generator IP介绍

    FIFO_Generator是智多晶设计的一款通用型FIFO IP。当前发布的FIFO_Generator IP是2.0版本,相比之前的1.1版本主要新增了非等比输入输出数据位宽支持和异步FIFO跨时钟级数配置功能。
    的头像 发表于 04-25 17:24 2013次阅读
    智多晶FIFO_Generator <b class='flag-5'>IP</b><b class='flag-5'>介绍</b>