System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开实施例涉及数据处理领域,具体地涉及一种基于异构计算的视频编解码方法、装置、设备及介质。
技术介绍
1、异构计算实质使用不同类型指令集和体系架构的计算单元组成系统的计算方式,常见的计算单元包括cpu、gpu、fpga、npu、dsp或asic等芯片,这些芯片组合通常集成在soc系统中。异构计算可以有效经济地获取高性能计算能力,计算资源利用率高,可扩展性好,发展潜力大。
2、异构计算芯片中的ai图像增强,超低延时视频直播,云游戏,高压缩率转码的场景均需要使用多个视频编/解码硬核进行视频/图像序列的压缩和解压。这些编/解码器一般是根据不同的应用场景集成在soc系统中。现有技术中,这些编/解码器的指令更新速度、可扩展性以及工作效率均待进一步完善。
技术实现思路
1、本专利技术的目的在于提供一种基于异构计算的视频编解码方法、装置、设备及介质,以便于至少部分地解决上述问题。
2、根据本公开的一个方面,提出一种基于异构计算的视频编解码方法,包括:
3、确定编码器和/或解码器的数量,
4、外部处理器通过控制总线基于编码或解码任务将编码指令或解码指令预存到指令存储器中,并通过数据总线将原始视频和/或图像预存到原始视频和/或图像存储器中,
5、响应于接收到所述编码指令或解码指令,指令解析器解析并配置所述编码或解码指令到所述编码器或解码器,
6、响应于所述编码器或解码器的读请求,所述原始视频和/或图像存储器返回原始视频和/或图
7、响应于所述编码器或解码器的写请求,将所述压缩码流或解压码流写入目的视频和/或图像存储器,
8、视频或图像压缩或解压缩完成,返回中断信号至状态处理器,多路中断信号汇聚后,通过控制总线发给任务调度器,
9、响应于接收到多路中断状态,任务调度器基于多路中断状态决定编码或解码指令的分发,
10、响应于所述编码或解码任务完成,所述任务调度器通知所述外部处理器,从所述目的视频和/或图像存储器中取走所述压缩码流或解压码流码流。
11、在一些实施例中,该方法还包括,所述读请求根据编码或解码指令中携带的原始视频和/或图像地址信息,发给存储访问控制器进行虚拟地址和物理地址的转换,所述存储访问控制器基于多个读请求进行存储访问的仲裁,并将仲裁后的读请求及其物理地址发给所述原始视频和/或图像存储器。
12、在一些实施例中,该方法还包括,所述写请求根据编码或解码指令中携带的目的视频和/或图像存储地址信息,发给存储访问控制器进行虚拟地址和物理地址的转换,所述存储访问控制器基于多个写请求进行存储访问的仲裁,并将仲裁后的写请求及其物理地址发给目的视频/图像存储器。
13、在一些实施例中,该方法还包括,每一帧编码指令或解码的指令与原始视频和/或图像是一一匹配的,由外部处理器从片上或者片外存储搬移到指令存储器中,指令存储器即将写满时停止搬移,指令存储器即将耗尽时需要立即更新指令,若指令耗尽,则停止编码或解码。
14、在一些实施例中,该方法还包括,所述响应于接收到多路中断状态,任务调度器基于多路中断状态决定编码指令或解码指令的分发,具体为,
15、任务调度器根据状态处理器上报的多路中断状态判断当前编解码器状态,对于已经结束编码或解码任务的编码器或解码器,下发停止指令,对于需要等待任务的编码器或解码器,下发等待指令,对于继续执行下一帧的编码器或解码器下发下一帧指令。
16、在一些实施例中,该方法还包括,所述确定编码器或解码器的数量,具体为根据应用场景选通或屏蔽部分编码器或解码器。
17、在一些实施例中,该方法还包括,任务调度器基于编码器或解码器的负载进行编码指令或解码指令的分发。
18、在一些实施例中,该方法还包括,所述响应于接收到所述编码指令或解码指令,指令解析器解析并配置所述编码或解码指令到所述编码器或解码器,具体为,所述指令解析器判定控制总线发来的地址,解析出指令发往的目的编码器或解码器,并生成写使能配置寄存器,或者所述指令解析器生成读使能信号,将目的编码器或解码器中寄存器的值读出来,形成指令返回给任务调度器。
19、根据本公开的另一个方面,提出一种基于异构计算的视频编解码装置,包括:
20、确定模块,用于确定编码器和/或解码器的数量,
21、指令预存模块,用于由外部处理器通过控制总线基于编码或解码任务将编码指令或解码指令预存到指令存储器中,并通过数据总线将原始视频和/或图像预存到原始视频和/或图像存储器中,
22、指令解析模块,用于响应于接收到所述编码指令或解码指令,指令解析器解析并配置所述编码或解码指令到所述编码器或解码器,
23、码流生成模块,用于响应于所述编码器或解码器的读请求,所述原始视频和/或图像存储器返回原始视频和/或图像码流序列至所述编码器或解码器进行压缩或解压,生成压缩码流或解压码流,
24、码流写入模块,用于响应于所述编码器或解码器的写请求,将所述压缩码流或解压码流写入目的视频和/或图像存储器,
25、中断处理模块,用于视频或图像压缩或解压缩完成,返回中断信号至状态处理器,多路中断信号汇聚后,通过控制总线发给任务调度器,
26、任务调度模块,用于响应于接收到多路中断状态,任务调度器基于多路中断状态决定编码或解码指令的分发,
27、码流取出模块,用于响应于所述编码或解码任务完成,所述任务调度器通知所述外部处理器,从所述目的视频和/或图像存储器中取走所述压缩码流或解压码流码流。
28、本申请实施例还提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,执行如上任一实施例方法中的步骤。
29、本申请实施例还提供一种计算机可读存储介质,存储有计算机程序,其特征在于:所述计算机程序被处理器运行时执行如上任一实施例方法中的步骤。
30、本专利技术旨在实现一种基于异构计算的视频编解码方法和装置,通过本专利技术实施例的方法,相比现有技术本专利技术具有如下优点:
31、指令的更新速度快,本专利技术由硬件实现快速更新视频/图像编/解码器的指令,期间不需要软件通过外部处理器来逐级逐个下发指令,
32、可灵活扩展,视频/图像编码器和视频/图像解码器的外部接口高度统一,统一的架构,可以根据任务侧重点灵活扩展,满足多种定制化需求,形成多路视频编/解码阵列,
33、可以实现多路视频/图像并行编/解码,视频/图像编/解码器可以统计通过数据总线读写存储器的数据量,据此来判断数据总线的空闲程度,进而判定视频/图像编/解码器的负载状态;反馈给任务调度器后,任务调度器将任务发往负载轻的视频/图像编/解码器;视频/图像编/解码器可以同时工作本文档来自技高网...
【技术保护点】
1.一种基于异构计算的视频编解码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于:
5.根据权利要求1-4任一项所述的方法,其特征在于:
6.根据权利要求1-4任一项所述的方法,其特征在于:
7.根据权利要求5所述的方法,其特征在于:
8.根据权利要求1所述的方法,其特征在于:
9.一种基于异构计算的视频编解码装置,其特征在于,所述装置包括:
10.一种电子设备,其特征在于:包括存储有可执行程序代码的存储器以及与所述存储器耦合的处理器;其中,所述处理器调用所述存储器中存储的可执行程序代码,执行如权利要求1-8任一项所述的方法。
11.一种计算机可读存储介质,存储有计算机程序,其特征在于:所述计算机程序被处理器运行时执行如权利要求1-8任一项所述的方法。
【技术特征摘要】
1.一种基于异构计算的视频编解码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于:
5.根据权利要求1-4任一项所述的方法,其特征在于:
6.根据权利要求1-4任一项所述的方法,其特征在于:
7.根据权利要求5所述的方法,其特征在于:
【专利技术属性】
技术研发人员:赖明亮,王爽,苗鑫,汪振国,
申请(专利权)人:沐曦集成电路南京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。