说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211071044.4 (22)申请日 2022.08.31 (71)申请人 瀚博半导体 (上海) 有限公司 地址 201210 上海市浦东 新区自由贸易试 验区集创路200号、 银冬路491号1幢8 层 (72)发明人 邵奇 贺秋丽  (74)专利代理 机构 北京市汉坤律师事务所 11602 专利代理师 魏小薇 吴丽丽 (51)Int.Cl. G06F 9/54(2006.01) G06F 9/50(2006.01) G06F 9/48(2006.01) (54)发明名称 用于芯片的数据交互方法、 装置和人工智能 芯片 (57)摘要 本公开提供一种用于芯片的数据交互方法、 装置、 人工智能芯片、 电子设备和介质。 芯片的驱 动软件架构 包括用户层和内核层, 用户层包括用 户态驱动, 并且内核层包括内核态驱动。 该方法 包括: 执行模型启动进程和执行用户程序进程, 用户程序进程包括针对模型的访问请求; 响应于 模型启动进程从用户态驱动进入内核态驱动, 在 内核层中建立交互池, 以使内核态驱动能够通过 交互池与模 型交互; 响应于用户程序进程从用户 态驱动进入内核态驱动, 由内核态驱动根据访问 请求, 通过交互池访问模型, 以获取模型针对访 问请求的运算结果; 以及将运算结果提供给用户 程序进程。 权利要求书4页 说明书12页 附图6页 CN 115391066 A 2022.11.25 CN 115391066 A 1.一种用于芯片的数据交互方法, 所述芯片的驱动软件架构包括用户层和内核层, 所 述用户层包括用户态驱动, 并且所述内核层包括内核态驱动, 所述方法包括: 执行模型启动进程和执行用户程序进程, 所述用户程序进程包括针对模型的访问请 求; 响应于所述模型启动进程从所述用户态驱动进入所述内核态驱动, 在所述内核层中建 立交互池, 以使所述内核态驱动能够通过 所述交互池与所述模型交 互; 响应于所述用户程序进程从所述用户态驱动进入所述内核态驱动, 由所述内核态驱动 根据所述访问请求, 通过所述交互池访问所述模型, 以获取所述模型针对所述访问请求的 运算结果; 以及 将所述运算结果提供给所述用户程序进程。 2.根据权利要求1所述的方法, 其中, 所述模型启动进程包括第一子线程, 并且所述执 行模型启动进程包括在所述第一子线程期间查询来自所述内核态驱动的所述访问请求; 并且其中, 响应于所述用户程序进程从所述用户态驱动进入所述内核态驱动, 由所述 内核态驱动根据所述访问请求, 通过所述交互池访问所述模型, 以获取所述模型针对所述 访问请求的运 算结果包括: 响应于所述用户程序进程从所述用户态驱动进入所述内核态驱动, 由所述内核态驱动 将所述访问请求写入所述交 互池; 将所述交 互池中的所述访问请求 提供给所述第一子线程; 以及 响应于查询到来自所述内核态驱动的所述访问请求, 所述第 一子线程从所述模型获取 所述运算结果。 3.根据权利要求2所述的方法, 其中, 由所述内核态驱动将所述访问请求写入所述交互 池包括: 由所述内核态驱动将所述访问请求写入所述交互池中与所述用户程序进程相对应的 请求池, 并且其中, 将所述交 互池中的所述访问请求 提供给所述第一子线程包括: 响应于所述访问请求已被写入所述请求池, 产生请求满足信号; 根据所述请求满足信号, 从所述请求池中获取 所述访问请求; 以及 将所获取的所述访问请求 提供给所述第一子线程。 4.根据权利要求2所述的方法, 其中, 将所述 运算结果提供给所述用户程序进程包括: 所述第一子线程将所述运算结果写入所述交互池中与所述用户程序进程相对应的响 应池; 响应于所述 运算结果已被写入所述响应池, 产生响应满足信号; 根据所述响应满足信号, 从所述响应池中获取 所述运算结果; 以及 将所述运算结果提供给所述用户程序进程。 5.根据权利要求2所述的方法, 其中, 所述模型启动进程进一步包括主线程, 并且执行 模型启动进程包括执 行所述主线程中的以下操作: 加载所述模型; 以及 建立所述用户态驱动与所述内核态驱动之间的连接, 其中, 所述模型启动进程通过所 述连接从所述用户态驱动进入所述内核态驱动。权 利 要 求 书 1/4 页 2 CN 115391066 A 26.根据权利要求5所述的方法, 其中, 执行模型启动进程进一步包括执行所述主线程中 的以下操作: 建立至少一个子线程, 其中, 所述至少一个子线程包括所述第一子线程; 以及 响应于所述至少一个子线程中的任意 一个子线程退 出, 退出所述主线程。 7.根据权利要求6所述的方法, 其中, 建立至少一个子线程包括建立第二子线程, 并且 执行模型启动进程进一 步包括执 行所述第二子线程中的以下操作: 响应于获取到用户输入的主动退出请求和/或响应于所述第一子线程退出, 退出所述 第二子线程。 8.根据权利要求5所述的方法, 还 包括在所述执 行用户程序进程之前: 判断所述模型 是否已完成加载; 响应于判定所述模型已完成加载, 判断所述模型 是否已完成初始化; 以及 响应于判定所述模型已完成初始化, 完成所述内核态驱动的初始化。 9.根据权利要求1至8中任一项所述的方法, 还 包括: 获取所述模型产生的中断信号; 以及 经由所述内核层中的模型中断子线程将所述中断信号提供给所述内核态驱动中的中 断处理程序, 并且同时向所述模型启动进程反馈指示中断已处 理的信号。 10.根据权利要求1至8中任一项所述的方法, 其中, 所述芯片的驱动软件架构还包括与 所述内核层交互的硬件层, 并且所述交互池是所述硬件层中的存储区域在所述内核层中的 映射。 11.根据权利要求1至8中任一项所述的方法, 其中, 所述方法用于验证芯片, 并且所述 模型是C++模型或寄存器传输级RTL仿真模型。 12.一种用于芯片的数据交互装置, 所述芯片的驱动软件架构包括用户层和内核层, 所 述用户层包括用户态驱动, 并且所述内核层包括内核态驱动, 所述装置包括: 进程执行模块, 被配置为执行模型启动进程和执行用户程序进程, 所述用户程序进程 包括针对 模型的访问请求; 交互池建立模块, 被配置为响应于所述模型启动进程从所述用户态驱动进入所述内核 态驱动, 在所述内核层中建立交互池, 以使所述内核态驱动能够通过所述交互池与所述模 型交互; 以及 交互模块, 被配置为响应于所述用户程序进程从所述用户态驱动进入所述内核态驱 动, 使所述内核态驱动根据所述访问请求, 通过所述交互池访问所述模型, 以获取所述模型 针对所述访问请求的运 算结果; 并且所述交 互模块还被 配置为将所述 运算结果提供给所述用户程序进程。 13.根据权利要求12所述的装置, 其中, 所述模型启动进程包括第一子线程, 并且所述 进程执行模块被进一步配置为在所述第一子线程期间查询来自所述内核态驱动的所述访 问请求; 并且其中, 所述交 互模块被进一 步配置为: 响应于所述用户程序进程从所述用户态驱动进入所述内核态驱动, 使所述内核态驱动 将所述访问请求写入所述交 互池; 将所述交 互池中的所述访问请求 提供给所述第一子线程; 以及权 利 要 求 书 2/4 页 3 CN 115391066 A 3

.PDF文档 专利 用于芯片的数据交互方法、装置和人工智能芯片

文档预览
中文文档 23 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共23页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 用于芯片的数据交互方法、装置和人工智能芯片 第 1 页 专利 用于芯片的数据交互方法、装置和人工智能芯片 第 2 页 专利 用于芯片的数据交互方法、装置和人工智能芯片 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:14:39上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。