服务器管理控制芯片的视频压缩系统转让专利

申请号 : CN202311604436.7

文献号 : CN117319675B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李拓李晓江邹晓峰满宏涛张贞雷

申请人 : 苏州元脑智能科技有限公司

摘要 :

本申请实施例提供了一种服务器管理控制芯片的视频压缩系统,其中,该系统包括:视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个视频处理模块中部署了交换单元和视频处理单元,交换单元的输入接口与视频处理模块的数据输入端连接,交换单元的第一输出接口与视频处理单元连接,视频处理单元与下一级视频处理模块连接;交换单元还包括第二输出接口,第二输出接口用于在接收到服务器管理控制芯片的交换指令的情况下,将数据输入端传输的输入数据直接传输至下一级视频处理模块。通过本申请,解决了视频压缩系统的稳定性较弱的问题,进而达到了提高视频压缩系统的稳定性的效果。

权利要求 :

1.一种服务器管理控制芯片的视频压缩系统,其特征在于,

所述视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个所述视频处理模块中部署了交换单元和视频处理单元,所述交换单元的输入接口与所述视频处理模块的数据输入端连接,所述交换单元的第一输出接口与所述视频处理单元连接,所述视频处理单元与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;

所述交换单元还包括第二输出接口,所述第二输出接口用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;

所述服务器管理控制芯片,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态,其中,所述交换指令用于将接收到所述交换指令的所述视频处理模块从所述视频压缩系统中短接,所述服务器管理控制芯片将接收到所述交换指令的视频处理模块从所述视频压缩系统中短接,从而检测不经过被短接了的视频处理模块的输入数据能否正常输出,从而确定被短接了的视频处理模块的运行状态是否正常,短接的方式包括将接收到所述交换指令的视频处理模块的数据输入端传输的输入数据直接传输至下一级视频处理模块;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。

2.根据权利要求1所述的系统,其特征在于,

所述第二输出接口采用第一连接方式与所述下一级视频处理模块连接,所述第一连接方式用于将所述第二输出接口连接至所述视频压缩系统的数据输出端,所述视频压缩系统的数据输出端与所述服务器管理控制芯片上的存储器连接;

所述第二输出接口,用于通过所述第一连接方式形成的连接路径,将所述输入数据传输至所述存储器;

所述下一级视频处理模块,用于从所述存储器提取所述输入数据。

3.根据权利要求2所述的系统,其特征在于,

所述N个视频处理模块中的最后一级为输出控制模块,所述输出控制模块的数据输出端与所述存储器连接;

所述第二输出接口与所述输出控制模块的数据输出端连接;

所述第二输出接口用于通过所述输出控制模块的数据输出端将所述数据输入端传输的输入数据传输至所述存储器。

4.根据权利要求2所述的系统,其特征在于,

所述第一连接方式应用于所述N个视频处理模块中所执行的视频处理任务影响视频压缩功能的第一视频处理模块。

5.根据权利要求4所述的系统,其特征在于,

所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;

所述第一视频处理模块包括:所述捕获模块、所述色彩空间转换模块、所述块数据生成模块和所述输出控制模块。

6.根据权利要求1所述的系统,其特征在于,

所述第二输出接口采用第二连接方式与所述下一级视频处理模块连接,所述第二连接方式用于将所述第二输出接口连接至所述下一级视频处理模块的数据输入端;

所述第二输出接口,用于通过所述第二连接方式形成的连接路径,将所述输入数据直接传输至所述下一级视频处理模块。

7.根据权利要求6所述的系统,其特征在于,

所述视频处理模块中还部署了多路选择器,所述多路选择器连接在所述视频处理单元与所述下一级视频处理模块之间;

所述第二输出接口与所述多路选择器连接;

所述第二输出接口用于通过所述多路选择器将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块。

8.根据权利要求6所述的系统,其特征在于,

所述第二连接方式应用于所述N个视频处理模块中所执行的视频处理任务不影响视频压缩功能的第二视频处理模块。

9.根据权利要求8所述的系统,其特征在于,

所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;

所述第二视频处理模块包括:所述缩放模块和所述加密模块。

10.根据权利要求1所述的系统,其特征在于,

所述服务器管理控制芯片,还用于在根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块之后,控制所述目标视频处理模块检测导致所述视频压缩功能发生异常的异常原因。

11.根据权利要求10所述的系统,其特征在于,

所述目标视频处理模块的视频处理单元被配置了多个检测点,所述检测点为所述视频处理单元执行对应的视频处理任务中的任务阶段;

所述服务器管理控制芯片,用于向所述目标视频处理模块发送检测指令,其中,检测指令用于指示所述目标视频处理模块对所述视频处理单元的故障进行检测;

所述目标视频处理模块,用于响应所述检测指令,将所述多个检测点中的每个检测点作为目标检测点,在所述视频处理单元执行对应的视频处理任务达到所述目标检测点的目标任务阶段的情况下,检测所述目标任务阶段的目标运行状态;将所述运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。

12.根据权利要求11所述的系统,其特征在于,

所述目标视频处理模块包括期望分析模块和硬件自检模块,其中,所述期望分析模块中配置了所述多个检测点以及每个检测点对应的期望状态;

所述硬件自检模块,用于在接收到所述检测指令的情况下,从所述期望分析模块中提取每个检测点作为目标检测点,检测所述目标任务阶段的目标运行状态;将所述目标运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。

13.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为捕获模块的情况下,所述多个检测点包括:帧RGB数据的结束阶段,下一行的结束阶段,以及,在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段;

帧RGB数据的结束阶段对应的所述期望状态包括获取到帧RGB数据的期望结束信号;

下一行的结束阶段对应的所述期望状态包括获取到下一行的期望结束信号;

在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段对应的所述期望状态包括在当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值。

14.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为缩放模块的情况下,所述多个检测点包括:滤波开始阶段,滤波结束阶段,以及,输出到后级模块的RGB数据的个数阶段;

滤波开始阶段对应的所述期望状态包括滤波开始状态;

滤波结束阶段对应的所述期望状态包括滤波结束状态;

输出到后级模块的RGB数据的个数阶段对应的所述期望状态包括输出到后级模块的RGB数据的期望个数。

15.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为色彩空间转换模块的情况下,所述多个检测点包括:有效的计算后的YUV数据阶段,对当前分辨率完成分辨率的裁剪阶段,以及,经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段;

有效的计算后的YUV数据阶段对应的所述期望状态包括有效的计算后的YUV期望数据;

对当前分辨率完成分辨率的裁剪阶段对应的所述期望状态包括对当前分辨率完成分辨率的裁剪的期望分辨率;

经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段对应的所述期望状态包括经过分辨率裁剪后应该输出到后级模块的YUV数据的期望个数。

16.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为块数据生成模块的情况下,所述多个检测点包括:Y数据块数据的生成阶段,U数据块数据的生成阶段,V数据块数据的生成阶段,以及,当前压缩模式下所述块数据生成模块输出数据阶段;

Y数据块数据的生成阶段对应的所述期望状态包括完成Y数据块数据的生成;

U数据块数据的生成阶段对应的所述期望状态包括完成U数据块数据的生成;

V数据块数据的生成阶段对应的所述期望状态包括完成V数据块数据的生成;

当前压缩模式下所述块数据生成模块输出数据阶段对应的所述期望状态包括当前压缩模式下所述块数据生成模块输出的期望数据量。

17.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为加密模块的情况下,所述多个检测点包括:软件配置阶段,完成加密结果阶段,以及,将加密完成的数据组合阶段;

软件配置阶段对应的所述期望状态包括获取到软件配置完成加密需要的密钥;

完成加密结果阶段对应的所述期望状态包括加密数据的期望长度;

将加密完成的数据组合阶段对应的所述期望状态包括完成加密完成的数据的组合。

18.根据权利要求12所述的系统,其特征在于,

在所述目标视频处理模块为输出控制模块的情况下,所述多个检测点包括:输入帧头信息阶段,输入帧尾信息阶段,存储器交互阶段,帧头信息写入存储器阶段,以及,将当前帧的帧长度写入存储器阶段;

输入帧头信息阶段对应的所述期望状态包括检测到输入的帧头信息;

输入帧尾信息阶段对应的所述期望状态包括检测到输入的帧尾信息;

存储器交互阶段对应的所述期望状态包括与存储器交互的总线的通道产生有效数据且是正常的突发操作;

帧头信息写入存储器阶段对应的所述期望状态包括将帧头信息写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件读取;

将当前帧的帧长度写入存储器阶段对应的所述期望状态包括将当前帧的帧长度写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件来读取。

19.根据权利要求11所述的系统,其特征在于,

所述目标视频处理模块,还用于在确定所述目标检测点为故障点之后,采用所述目标检测点对应的修复逻辑修复所述故障点。

20.根据权利要求19所述的系统,其特征在于,

所述目标视频处理模块中还部署了硬件修复模块;

所述硬件修复模块,用于所述视频处理单元执行对应的视频处理任务的过程中接管所述目标任务阶段。

21.根据权利要求1所述的系统,其特征在于,

所述服务器管理控制芯片,还用于在每次检测所述运行状态后,向被发送了所述交换指令的视频处理模块发送恢复指令;

所述视频处理模块,用于在接收到所述恢复指令的情况下,恢复至通过所述第一输出接口输出数据。

22.一种服务器管理控制芯片,其特征在于,

包括:视频压缩系统和处理器,其中,

所述视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个所述视频处理模块中部署了交换单元和视频处理单元,所述交换单元的输入接口与所述视频处理模块的数据输入端连接,所述交换单元的第一输出接口与所述视频处理单元连接,所述视频处理单元与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;所述交换单元还包括第二输出接口,所述第二输出接口用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;

所述处理器,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态,其中,所述交换指令用于将接收到所述交换指令的所述视频处理模块从所述视频压缩系统中短接,所述服务器管理控制芯片将接收到所述交换指令的视频处理模块从所述视频压缩系统中短接,从而检测不经过被短接了的视频处理模块的输入数据能否正常输出,从而确定被短接了的视频处理模块的运行状态是否正常,短接的方式包括将接收到所述交换指令的视频处理模块的数据输入端传输的输入数据直接传输至下一级视频处理模块;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。

说明书 :

服务器管理控制芯片的视频压缩系统

技术领域

[0001] 本申请实施例涉及计算机领域,具体而言,涉及一种服务器管理控制芯片的视频压缩系统。

背景技术

[0002] 目前,由于视频压缩系统中的模块众多,并且各个模块的功能十分复杂,在出现异常工作的模块的情况下,会导致整个视频压缩系统的视频压缩功能出现异常,现有技术中,一般通过重新流片组建新的视频压缩系统,但是重新流片也不能确定导致视频压缩系统出现异常的模块,导致视频压缩系统的稳定性较弱。
[0003] 针对相关技术中,视频压缩系统的稳定性较弱等问题,尚未提出有效的解决方案。

发明内容

[0004] 本申请实施例提供了一种服务器管理控制芯片的视频压缩系统,以至少解决相关技术中视频压缩系统的稳定性较弱的问题。
[0005] 根据本申请的一个实施例,提供了一种服务器管理控制芯片的视频压缩系统,所述视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个所述视频处理模块中部署了交换单元和视频处理单元,所述交换单元的输入接口与所述视频处理模块的数据输入端连接,所述交换单元的第一输出接口与所述视频处理单元连接,所述视频处理单元与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;所述交换单元还包括第二输出接口,所述第二输出接口用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;所述服务器管理控制芯片,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。
[0006] 在一个示例性实施例中,所述第二输出接口采用第一连接方式与所述下一级视频处理模块连接,所述第一连接方式用于将所述第二输出接口连接至所述视频压缩系统的数据输出端,所述视频压缩系统的数据输出端与所述服务器管理控制芯片上的存储器连接;所述第二输出接口,用于通过所述第一连接方式形成的连接路径,将所述输入数据传输至所述存储器;所述下一级视频处理模块,用于从所述存储器提取所述输入数据。
[0007] 在一个示例性实施例中,所述N个视频处理模块中的最后一级为输出控制模块,所述输出控制模块的数据输出端与所述存储器连接;所述第二输出接口与所述输出控制模块的数据输出端连接;所述第二输出接口用于通过所述输出控制模块的数据输出端将所述数据输入端传输的输入数据传输至所述存储器。
[0008] 在一个示例性实施例中,所述第一连接方式应用于所述N个视频处理模块中所执行的视频处理任务影响视频压缩功能的第一视频处理模块。
[0009] 在一个示例性实施例中,所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第一视频处理模块包括:所述捕获模块、所述色彩空间转换模块、所述块数据生成模块和所述输出控制模块。
[0010] 在一个示例性实施例中,所述第二输出接口采用第二连接方式与所述下一级视频处理模块连接,所述第二连接方式用于将所述第二输出接口连接至所述下一级视频处理模块的数据输入端;所述第二输出接口,用于通过所述第二连接方式形成的连接路径,将所述输入数据直接传输至所述下一级视频处理模块。
[0011] 在一个示例性实施例中,所述视频处理模块中还部署了多路选择器,所述多路选择器连接在所述视频处理单元与所述下一级视频处理模块之间;所述第二输出接口与所述多路选择器连接;所述第二输出接口用于通过所述多路选择器将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块。
[0012] 在一个示例性实施例中,所述第二连接方式应用于所述N个视频处理模块中所执行的视频处理任务不影响视频压缩功能的第二视频处理模块。
[0013] 在一个示例性实施例中,所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第二视频处理模块包括:所述缩放模块和所述加密模块。
[0014] 在一个示例性实施例中,所述服务器管理控制芯片,还用于在根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块之后,控制所述目标视频处理模块检测导致所述视频压缩功能发生异常的异常原因。
[0015] 在一个示例性实施例中,所述目标视频处理模块的视频处理单元被配置了多个检测点,所述检测点为所述视频处理单元执行对应的视频处理任务中的任务阶段;所述服务器管理控制芯片,用于向所述目标视频处理模块发送检测指令,其中,检测指令用于指示所述目标视频处理模块对所述视频处理单元的故障进行检测;所述目标视频处理模块,用于响应所述检测指令,将所述多个检测点中的每个检测点作为目标检测点,在所述视频处理单元执行对应的视频处理任务达到所述目标检测点的目标任务阶段的情况下,检测所述目标任务阶段的目标运行状态;将所述运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0016] 在一个示例性实施例中,所述目标视频处理模块包括期望分析模块和硬件自检模块,其中,所述期望分析模块中配置了所述多个检测点以及每个检测点对应的期望状态;所述硬件自检模块,用于在接收到所述检测指令的情况下,从所述期望分析模块中提取每个检测点作为目标检测点,检测所述目标任务阶段的目标运行状态;将所述目标运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0017] 在一个示例性实施例中,在所述目标视频处理模块为捕获模块的情况下,所述多个检测点包括:帧RGB数据的结束阶段,下一行的结束阶段,以及,在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段;帧RGB数据的结束阶段对应的所述期望状态包括获取到帧RGB数据的期望结束信号;下一行的结束阶段对应的所述期望状态包括获取到下一行的期望结束信号;在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段对应的所述期望状态包括在当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值。
[0018] 在一个示例性实施例中,在所述目标视频处理模块为缩放模块的情况下,所述多个检测点包括:滤波开始阶段,滤波结束阶段,以及,输出到后级模块的RGB数据的个数阶段;滤波开始阶段对应的所述期望状态包括滤波开始状态;滤波结束阶段对应的所述期望状态包括滤波结束状态;输出到后级模块的RGB数据的个数阶段对应的所述期望状态包括输出到后级模块的RGB数据的期望个数。
[0019] 在一个示例性实施例中,在所述目标视频处理模块为色彩空间转换模块的情况下,所述多个检测点包括:有效的计算后的YUV数据阶段,对当前分辨率完成分辨率的裁剪阶段,以及,经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段;有效的计算后的YUV数据阶段对应的所述期望状态包括有效的计算后的YUV期望数据;对当前分辨率完成分辨率的裁剪阶段对应的所述期望状态包括对当前分辨率完成分辨率的裁剪的期望分辨率;经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段对应的所述期望状态包括经过分辨率裁剪后应该输出到后级模块的YUV数据的期望个数。
[0020] 在一个示例性实施例中,在所述目标视频处理模块为块数据生成模块的情况下,所述多个检测点包括:Y数据块数据的生成阶段,U数据块数据的生成阶段,V数据块数据的生成阶段,以及,当前压缩模式下所述块数据生成模块输出数据阶段;Y数据块数据的生成阶段对应的所述期望状态包括完成Y数据块数据的生成;U数据块数据的生成阶段对应的所述期望状态包括完成U数据块数据的生成;V数据块数据的生成阶段对应的所述期望状态包括完成V数据块数据的生成;当前压缩模式下所述块数据生成模块输出数据阶段对应的所述期望状态包括当前压缩模式下所述块数据生成模块输出的期望数据量。
[0021] 在一个示例性实施例中,在所述目标视频处理模块为加密模块的情况下,所述多个检测点包括:软件配置阶段,完成加密结果阶段,以及,将加密完成的数据组合阶段;软件配置阶段对应的所述期望状态包括获取到软件配置完成加密需要的密钥;完成加密结果阶段对应的所述期望状态包括加密数据的期望长度;将加密完成的数据组合阶段对应的所述期望状态包括完成加密完成的数据的组合。
[0022] 在一个示例性实施例中,在所述目标视频处理模块为输出控制模块的情况下,所述多个检测点包括:输入帧头信息阶段,输入帧尾信息阶段,存储器交互阶段,帧头信息写入存储器阶段,以及,将当前帧的帧长度写入存储器阶段;输入帧头信息阶段对应的所述期望状态包括检测到输入的帧头信息;输入帧尾信息阶段对应的所述期望状态包括检测到输入的帧尾信息;存储器交互阶段对应的所述期望状态包括与存储器交互的总线的通道产生有效数据且是正常的突发操作;帧头信息写入存储器阶段对应的所述期望状态包括将帧头信息写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件读取;将当前帧的帧长度写入存储器阶段对应的所述期望状态包括将当前帧的帧长度写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件来读取。
[0023] 在一个示例性实施例中,所述目标视频处理模块,还用于在确定所述目标检测点为故障点之后,采用所述目标检测点对应的修复逻辑修复所述故障点。
[0024] 在一个示例性实施例中,所述目标视频处理模块中还部署了硬件修复模块;所述硬件修复模块,用于所述视频处理单元执行对应的视频处理任务的过程中接管所述目标任务阶段。
[0025] 在一个示例性实施例中,所述服务器管理控制芯片,还用于在每次检测所述运行状态后,向被发送了所述交换指令的视频处理模块发送恢复指令;所述视频处理模块,用于在接收到所述恢复指令的情况下,恢复至通过所述第一输出接口输出数据。
[0026] 根据本申请的另一个实施例,提供了一种服务器管理控制芯片,包括:视频压缩系统和处理器,其中,所述视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个所述视频处理模块中部署了交换单元和视频处理单元,所述交换单元的输入接口与所述视频处理模块的数据输入端连接,所述交换单元的第一输出接口与所述视频处理单元连接,所述视频处理单元与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;所述交换单元还包括第二输出接口,所述第二输出接口用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;所述处理器,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。
[0027] 通过本申请,视频压缩系统包括依次连接的N个视频处理模块,N为大于1的整数,每个视频处理模块中部署了交换单元和视频处理单元,交换单元的输入接口与视频处理模块的数据输入端连接,交换单元的第一输出接口与视频处理单元连接,视频处理单元与下一级视频处理模块连接,其中,每个视频处理模块中的视频处理单元,用于执行每个视频处理模块在视频压缩系统中的视频处理任务;交换单元还包括第二输出接口,第二输出接口用于在接收到服务器管理控制芯片的交换指令的情况下,将数据输入端传输的输入数据直接传输至下一级视频处理模块;服务器管理控制芯片,用于在视频压缩系统的视频压缩功能发生异常的情况下,向N个视频处理模块的交换单元依次发送交换指令,并检测每次发送交换指令后视频压缩功能的运行状态;根据运行状态从N个视频处理模块中提取导致视频压缩功能发生异常的目标视频处理模块。由于使用服务器管理控制芯片在视频压缩系统的视频压缩功能发生异常的情况下,通过向N个视频处理模块的交换单元依次发送交换指令,从N个视频处理模块中检测得到导致视频压缩功能发生异常的目标视频处理模块,因此,可以解决视频压缩系统的稳定性较弱的问题,达到提高视频压缩系统的稳定性的效果。

附图说明

[0028] 图1是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图一;
[0029] 图2是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图二;
[0030] 图3是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图三;
[0031] 图4是根据本申请实施例的一种视频压缩系统的工作过程的示意图;
[0032] 图5是根据本申请实施例的一种捕获模块的工作过程的示意图;
[0033] 图6是根据本申请实施例的一种缩放模块的工作过程的示意图;
[0034] 图7是根据本申请实施例的一种色彩空间转换模块的工作过程的示意图;
[0035] 图8是根据本申请实施例的一种块数据生成模块的工作过程的示意图;
[0036] 图9是根据本申请实施例的一种加密模块的工作过程的示意图;
[0037] 图10是根据本申请实施例的一种输出控制模块的工作过程的示意图;
[0038] 图11是根据本申请实施例的服务器管理控制芯片的示意图。

具体实施方式

[0039] 下文中将参考附图并结合实施例来详细说明本申请的实施例。
[0040] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0041] 在本实施例中提供了一种服务器管理控制芯片的视频压缩系统,图1是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图一,如图1所示,所述视频压缩系统包括依次连接的N个视频处理模块(102‑1至102‑N),N为大于1的整数,每个所述视频处理模块中部署了交换单元104和视频处理单元106,所述交换单元104的输入接口108与所述视频处理模块的数据输入端连接,所述交换单元104的第一输出接口110与所述视频处理单元106连接,所述视频处理单元106与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元106,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;所述交换单元104还包括第二输出接口112,所述第二输出接口112用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;所述服务器管理控制芯片,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。
[0042] 通过上述服务器管理控制芯片的视频压缩系统,由于使用服务器管理控制芯片在视频压缩系统的视频压缩功能发生异常的情况下,通过向N个视频处理模块的交换单元依次发送交换指令,从N个视频处理模块中检测得到导致视频压缩功能发生异常的目标视频处理模块,因此,可以解决视频压缩系统的稳定性较弱的问题,达到提高视频压缩系统的稳定性的效果。
[0043] 可选的,在本实施例中,上述视频压缩系统使用的场景广泛,可以但不限于包括:视频压缩场景、图像压缩场景、音频压缩场景等等,在如下实施例中,可以但不限于以应用在视频压缩场景为例,对上述视频压缩系统进行说明,但不对使用场景进行限定。
[0044] 可选的,在本实施例中,上述视频压缩系统可以但不限于部署在服务器管理控制芯片上,由服务器管理控制芯片对视频压缩系统进行控制。或者,可以但不限于部署在除服务器管理控制芯片之外的器件上,由服务器管理控制芯片对视频压缩系统部署的器件进行管理等。
[0045] 可选的,在本实施例中,视频压缩系统可以但不限于使用依次连接的N个视频处理模块将输入数据进行压缩处理后并输出,输入数据可以但不限于包括:视频数据、图像数据、文本数据、音频数据等。在输入数据不同的情况下,视频压缩系统中依次连接的N个视频处理模块具有不同的处理能力,比如:在输入数据为视频数据的情况下,视频压缩系统用于将输入的视频数据进行压缩后输出,视频压缩系统中依次连接的N个视频处理模块可以但不限于包括:捕获模块、缩放模块、色彩空间转换模块、BLOCK(块数据)生成模块、JPEG IP(一种用于将BLOCK格式的YUV数据压缩成JPEG格式的模块)、加密模块、输出控制模块等。或者,在输入数据为图像数据的情况下,视频压缩系统用于将输入的图像数据进行压缩后输出,视频压缩系统中依次连接的N个视频处理模块可以但不限于包括:映射器、量化器、符号编码器、符号解码器、逆映射器等。
[0046] 可选的,在本实施例中,视频压缩系统中的每个视频处理模块都可以但不限于部署了交换单元和视频处理单元,每个视频处理模块可以但不限于响应于服务器管理控制芯片的控制,服务器管理控制芯片可以但不限于通过指令对视频处理模块进行控制,指令可以但不限于包括:交换指令、处理指令、数据获取指令等。
[0047] 可选的,在本实施例中,视频处理模块通过数据输入端接收输入数据,可以但不限于将视频处理模块的数据输入端与交换单元的输入接口的连接。或者,可以但不限于将交换单元部署在视频处理模块的数据输出端,将交换单元的输入接口作为视频处理模块的数据输入端。
[0048] 可选的,在本实施例中,交换单元的第一输出接口可以但不限于将从视频处理模块的数据输入端获取的输入数据传输至视频处理单元进行视频处理任务,视频处理单元可以但不限于用于在完成视频处理任务的情况下,将数据输出至下一级视频处理模块的数据输入端。
[0049] 可选的,在本实施例中,每个视频处理模块可以但不限于有其对应的视频处理任务,比如:以视频处理模块包括捕获模块、缩放模块、色彩空间转换模块、BLOCK(块数据)生成模块、JPEG IP、加密模块、输出控制模块为例,捕获模块的视频处理任务可以但不限于包括对原始RGB图像进行捕获;缩放模块的视频处理任务可以但不限于包括对视频的分辨率进行调整;色彩空间转换模块的视频处理任务可以但不限于包括对RGB数据进行矩阵转换;块数据生成模块的视频处理任务可以但不限于包括将YUV(一种颜色编码方法,Y表示明亮度,U和V表示色度)格式的数据,转成YUV BLOCK的数据;JPEG IP的视频处理任务可以但不限于包括输出标准的JPEG格式的压缩视频;加密模块的视频处理任务可以但不限于包括对JPEG格式的视频数据进行加密;输出控制模块的视频处理任务可以但不限于包括将加密后的数据写入存储空间,然后以帧为单位,将帧头,帧尾信息通过寄存器的方式通知软件,然后由驱动进行读取。
[0050] 可选的,在本实施例中,视频压缩系统的视频压缩功能可以但不限于由视频压缩系统中包括的N个视频处理模块实现,视频压缩系统的视频压缩功能发生异常可以但不限于用于指示视频压缩系统中包括的N个视频处理模块存在异常,在视频压缩系统的视频压缩功能发生异常的情况下,服务器管理控制芯片可以但不限于通过下发交换指令检测视频压缩系统中发生故障的视频处理模块,比如:将接收到交换指令的视频处理模块从视频压缩系统中短接,从而检测不经过被短接了的视频处理模块的输入数据能否正常输出,从而确定被短接了的视频处理模块是否正常。
[0051] 因此,交换指令可以但不限于用于将接收到交换指令的视频处理模块从视频压缩系统中短接,视频处理模块响应交换指令通过交换单元从视频压缩系统中短接,短接的方式可以但不限于包括将接收到交换指令的视频处理模块的数据输入端传输的输入数据直接传输至下一级视频处理模块。
[0052] 可选的,在本实施例中,视频处理模块通过交换单元将数据输入端传输的输入数据直接传输至下一级视频处理模块,因此交换单元可以但不限于用于将数据输入端传输的输入数据直接传输至下一级视频处理模块。或者,交换单元还可以但不限于将数据输入端传输的输入数据传输至指定的存储位置,由下一级视频处理模块从指定的存储位置直接获取输入数据从而实现将数据输入端传输的输入数据直接传输至下一级视频处理模块等。
[0053] 可选的,在本实施例中,可以但不限于依次向视频压缩系统中的N个视频处理模块中的每个视频处理模块的交换单元发送交换指令,比如:以视频压缩系统包括依次连接的视频处理模块A、视频处理模块B、视频处理模块C和视频处理模块D,视频处理模块A包括交换单元A、视频处理模块B包括交换单元B、视频处理模块C包括交换单元C、视频处理模块D包括交换单元D为例,可以但不限于向视频处理模块A包括的交换单元A发送交换指令,检测视频压缩系统中的输入数据不经过交换单元A后视频压缩系统的视频压缩功能的运行状态,从而确定视频处理模块A是否存在异常;在检测确定视频处理模块A无异常的情况下,向视频处理模块B包括的交换单元B发送交换指令,检测视频压缩系统中的输入数据不经过交换单元B后视频压缩系统的视频压缩功能的运行状态,从而确定视频处理模块B是否存在异常;在检测确定视频处理模块A和视频处理模块B均无异常的情况下,向视频处理模块C包括的交换单元C发送交换指令,检测视频压缩系统中的输入数据不经过交换单元C后视频压缩系统的视频压缩功能的运行状态,从而确定视频处理模块C是否存在异常;在检测确定视频处理模块A、视频处理模块B和视频处理模块C均无异常的情况下,向视频处理模块D包括的交换单元D发送交换指令,检测视频压缩系统中的输入数据不经过交换单元D后视频压缩系统的视频压缩功能的运行状态,从而确定视频处理模块D是否存在异常。
[0054] 或者,可以但不限于向视频压缩系统中的N个视频处理模块中的多个视频处理模块的交换单元同时发送交换指令,得到一组存在异常视频处理模块的视频处理模块集合,再通过交换单元从视频处理模块集合确定发生异常的目标视频处理模块等。
[0055] 可选的,在本实施例中,可以但不限于通过交换单元的第二输出接口将数据输入端传输的输入数据直接传输至下一级视频处理模块。或者,通过交换单元的第二输出接口将数据输入端传输的输入数据传输至指定的存储位置,由下一级视频处理模块从指定的存储位置直接获取输入数据从而实现将数据输入端传输的输入数据直接传输至下一级视频处理模块等。
[0056] 可选的,在本实施例中,上述交换单元可以但不限于用于接收数据输入端传输的输入数据,并将数据输入端传输的输入数据进行传输,交换单元可以但不限于是具有数据传输功能的接口、功能模块等。
[0057] 在一个示例性实施例中,第二输出接口采用第一连接方式与所述下一级视频处理模块连接,所述第一连接方式用于将所述第二输出接口连接至所述视频压缩系统的数据输出端,所述视频压缩系统的数据输出端与所述服务器管理控制芯片上的存储器连接;所述第二输出接口,用于通过所述第一连接方式形成的连接路径,将所述输入数据传输至所述存储器;所述下一级视频处理模块,用于从所述存储器提取所述输入数据。
[0058] 可选的,在本实施例中,上述服务器管理控制芯片部署了存储器,存储器连接了视频压缩系统的数据输出端,存储器可以但不限于用于接收并存储视频压缩系统处理完成的数据,并将视频压缩系统处理完成的数据传输至用户端进行显示。
[0059] 可选的,在本实施例中,视频处理模块中可以但不限于部署了交换单元和视频处理单元,视频处理单元可以但不限于通过输出端与下一级视频处理模块连接,将执行完成视频处理任务的数据传输至下一级视频处理模块。
[0060] 同时,交换单元可以但不限于通过第二输出接口与下一级视频处理模块连接,交换单元可以但不限于通过第二输出接口形成与下一级视频处理模块之间的传输路径从而能够向下一级视频处理模块传输数据,第二输出接口可以但不限于通过第一连接方式与下一级视频处理模块形成传输路径,比如:第二输出接口连接视频压缩系统的数据输出端,由于视频压缩系统的数据输出端与服务器管理控制芯片上的存储器连接,因此下一级视频处理模块能够从服务器管理控制芯片上的存储器获取第二输出接口向存储器中存入的输入数据,从而形成了第二输出接口与下一级视频处理模块的传输路径。
[0061] 在一个示例性实施例中,图2是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图二,如图2所示,N个视频处理模块(102‑1至102‑N)中的最后一级为输出控制模块202,所述输出控制模块202的数据输出端204与所述存储器连接;所述第二输出接口112与所述输出控制模块202的数据输出端204连接;所述第二输出接口112用于通过所述输出控制模块202的数据输出端204将所述数据输入端传输的输入数据传输至所述存储器。
[0062] 可选的,在本实施例中,视频压缩系统包括依次连接的N个视频处理模块,第N个视频处理模块为输出控制模块,输出控制模块可以但不限于用于与服务器管理控制芯片部署的存储器连接,将视频压缩系统处理完成的数据传输至存储器进行存储。
[0063] 可选的,在本实施例中,交换单元的第二输出接口可以但不限于与输出控制模块的数据输出端连接,从而实现将视频处理模块输入的输入数据从视频处理模块的数据输入端传输至输出控制模块的数据输出端,从而由输出控制模块将视频压缩系统处理完成的数据传输至存储器进行存储。
[0064] 在一个示例性实施例中,第一连接方式应用于所述N个视频处理模块中所执行的视频处理任务影响视频压缩功能的第一视频处理模块。
[0065] 可选的,在本实施例中,第一视频处理模块包括执行视频处理任务对视频压缩系统的视频压缩功能存在影响的视频处理模块,可以但不限于根据是否影响视频压缩系统进行视频压缩的整体流程从而确定对视频压缩系统的视频压缩功能是否存在影响。
[0066] 在一个示例性实施例中,N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第一视频处理模块包括:所述捕获模块、所述色彩空间转换模块、所述块数据生成模块和所述输出控制模块。
[0067] 可选的,在本实施例中,视频压缩系统包括依次连接的捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块。
[0068] 可选的,在本实施例中,捕获模块可以但不限于通过以下方式工作:捕获模块从VGA(Video Graphics Array,视频图形阵列)中采集和捕获原始视频数据,原始视频数据可以但不限于为RGB图像的形式,在捕获模块获取到原始视频数据的RGB图像的情况下,可以但不限于将其转换为数字信号,以便于后续的压缩和处理操作。
[0069] 可选的,在本实施例中,缩放模块可以但不限于通过以下方式工作:对输入数据的分辨率进行调整,可以但不限于包括往小的方向调整分辨率,从而降低压缩视频的数据量,比如:将1024 768的分辨率调整为800 600等。
[0070] 可选的,在本实施例中,色彩空间转换模块可以但不限于通过以下方式工作:色彩空间转换模块对输入数据进行矩阵转换,输入数据可以但不限于包括RGB数据,其转换过程是利用矩阵转换公式完成的。矩阵转换公式可以但不限于包括:Y=(0.257 R)+(0.504 G)+(0.098 B)+16;U=0.148 R–0.291 G+0.439 B+128;V=0.439 R‑0.368 G‑0.071 B+128,其中,系数可以但不限于根据实际情况进行适应性调整。
[0071] 可选的,在本实施例中,块数据生成模块可以但不限于通过以下方式工作:将YUV格式的数据,转成YUV BLOCK的数据,即块数据,块的尺寸根据YUV444、YUV420压缩格式的不同,可以但不限于包括16 16,16 8,8 8等尺寸,因此需要16个Y_RAM,16个U_RAM,16个V_RAM进行数据的缓存。
[0072] 在YUV420模式下的原则是保留全部的Y数据,保留偶数行偶数列的U/V数据,因此可以但不限于通过以下方式工作:依次将第0行、第16行、第32行、第48行……的Y数据写进Y_RAM_0;将第1行、第17行、第33行、第49行……的Y数据写进Y_RAM_1;将第2行、第18行、第34行、第50行……的Y数据写进Y_RAM_2;直至写入完整的第0行至第15行的Y数据。将第0行、第16行、第32行、第48行……的偶数列U数据写进U_RAM_0;将第2行、第18行、第34行、第50行……的偶数列U数据写进U_RAM_1;直至将第14行、第30行、第46行、第62行……的偶数列U数据写进U_RAM_7以及将第14行、第30行、第46行、第62行……的偶数列U数据写进U_RAM_7。
将第0行、第16行、第32行、第48行……的偶数列U数据写进V_RAM_0;将第2行、第18行、第34行、第50行……的偶数列U数据写进V_RAM_1;直至将将第14行、第30行、第46行、第62行……的偶数列U数据写进V_RAM_7。
[0073] 在YUV444模式下的原则是保留全部行全部列的Y、U、V数据,因此可以但不限于通过以下方式工作:将第0行、第8行、第16行、第24行……的Y数据写进Y_RAM_0;将第1行、第9行、第17行、第25行……的Y数据写进Y_RAM_1;将第2行、第10行、第18行、第26行……的Y数据写进Y_RAM_2;直至将第7行、第15行、第23行、第31行……的Y数据写进Y_RAM_7。将第0行、第8行、第16行、第24行……的U数据写进U_RAM_0;将第1行、第9行、第17行、第25行……的U数据写进U_RAM_1;将第2行、第10行、第18行、第26行…的U数据写进U_RAM_2;直至将第7行、第15行、第23行、第31行……的U数据写进U_RAM_7。将第0行、第8行、第16行、第24行……的V数据写进V_RAM_0;将第1行、第9行、第17行、第25行…的V数据写进V_RAM_1;将第2行、第10行、第18行、第26行……的V数据写进V_RAM_2;直至将第7行、第15行、第23行、第31行……的V数据写进V_RAM_7。
[0074] YUV在YUV420模式下读出侧控制逻辑为:依次读16次Y_RAM_0,16次Y_RAM_1……16次Y_RAM_15,这样就形成了16 16的Y_BLOCK数据,依次读8次U_RAM_0,8次U_RAM_1,8次U_RAM_7,形成8 8的U_BLOCK数据,依次读8次V_RAM_0,8次V_RAM_1,8次V_RAM_7,形成8 8的V_BLOCK数据,依次循环。
[0075] YUV在YUV444模式下读出侧控制逻辑为:依次读8次Y_RAM_0,8次Y_RAM_1……8次Y_RAM_7,形成8 8的Y_BLOCK数据,依次读8次U_RAM_0,8次U_RAM_1,8次U_RAM_7,形成8 8的U_BLOCK数据,依次读8次V_RAM_0,8次V_RAM_1,8次V_RAM_7,形成8 8的V_BLOCK数据。
[0076] 可选的,在本实施例中,加密模块可以但不限于通过以下方式工作:加密模块对JPEG格式的视频数据进行加密,加密的方式可以但不限于包括AES128、AES256、RC4等。
[0077] 可选的,在本实施例中,输出控制模块可以但不限于通过以下方式工作:将加密后的数据写入存储器,存储器可以但不限于包括DDR(Double Data Rate,双倍速率同步动态随机存储器),然后以帧为单位,将帧头,帧尾信息通过寄存器的方式通知软件,然后再由EMAC(电子计算机)的驱动进行读取。
[0078] 可选的,在本实施例中,根据捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块的工作方式可知,捕获模块、色彩空间转换模块、块数据生成模块和输出控制模块所执行的视频处理任务影响视频压缩功能,因此第一视频处理模块包括:捕获模块、色彩空间转换模块、块数据生成模块和输出控制模块。
[0079] 在一个示例性实施例中,第二输出接口采用第二连接方式与所述下一级视频处理模块连接,所述第二连接方式用于将所述第二输出接口连接至所述下一级视频处理模块的数据输入端;所述第二输出接口,用于通过所述第二连接方式形成的连接路径,将所述输入数据直接传输至所述下一级视频处理模块。
[0080] 可选的,在本实施例中,视频处理模块中可以但不限于部署了交换单元和视频处理单元,视频处理单元可以但不限于通过输出端与下一级视频处理模块连接,将执行完成视频处理任务的数据传输至下一级视频处理模块。
[0081] 同时,交换单元可以但不限于通过第二输出接口与下一级视频处理模块连接,交换单元可以但不限于通过第二输出接口形成与下一级视频处理模块之间的传输路径从而能够向下一级视频处理模块传输数据,第二输出接口可以但不限于通过第二连接方式与下一级视频处理模块形成传输路径,比如:第二输出接口直接与下一级视频处理模块的数据输入端连接,形成了第二输出接口与下一级视频处理模块的传输路径。
[0082] 在一个示例性实施例中,图3是根据本申请实施例的一种服务器管理控制芯片的视频压缩系统的示意图三,如图3所示,视频处理模块302中还部署了多路选择器304,所述多路选择器304连接在所述视频处理单元306与所述下一级视频处理模块308之间;所述第二输出接口112与所述多路选择器304连接;所述第二输出接口112用于通过所述多路选择器304将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块308。
[0083] 可选的,在本实施例中,上述多路选择器可以但不限于用于将数据输入端传输的输入数据直接传输至下一级视频处理模块的数据输入端。
[0084] 在一个示例性实施例中,第二连接方式应用于所述N个视频处理模块中所执行的视频处理任务不影响视频压缩功能的第二视频处理模块。
[0085] 可选的,在本实施例中,第二视频处理模块包括执行视频处理任务对视频压缩系统的视频压缩功能不存在影响的视频处理模块,可以但不限于根据是否影响视频压缩系统进行视频压缩的整体流程从而确定对视频压缩系统的视频压缩功能是否存在影响。
[0086] 在一个示例性实施例中,N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第二视频处理模块包括:所述缩放模块和所述加密模块。
[0087] 可选的,在本实施例中,根据捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块的工作方式可知,缩放模块和加密模块所执行的视频处理任务不影响视频压缩功能,因此将缩放模块和加密模块确定为第二视频处理模块。
[0088] 在一个示例性实施例中,提供了一种视频压缩系统的工作过程的示例。图4是根据本申请实施例的一种视频压缩系统的工作过程的示意图,如图4所示,视频压缩系统的N个视频处理模块分别为:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、JPEG IP(联合图像专家组知识产权核)模块、加密模块和输出控制模块,以第一视频处理模块包括:捕获模块、色彩空间转换模块、块数据生成模块和输出控制模块,第二视频处理模块包括:
缩放模块和加密模块为例,主机(HOST)的原始视频数据经过视频图形阵列VGA的处理后形成RGB数据,RGB数据有两种输出模式,一种是DVI模式(即VGA的输出1),一种是缓存模式(即VGA的输出2)。
[0089] 视频处理模块可以但不限于响应于服务器管理控制芯片的管理模块的控制,服务器管理控制芯片管理模块可以但不限于用于在视频压缩系统的视频压缩功能发生异常的情况下,向N个视频处理模块的交换单元依次发送交换指令,并检测每次发送交换指令后视频压缩功能的运行状态;根据运行状态从N个视频处理模块中提取导致视频压缩功能发生异常的目标视频处理模块。
[0090] 捕获模块对原始RGB图像进行捕获,包括DVI模式或者缓存模式的原始RGB图像,需要说明的是,对于缓存模式,VGA将原始数据写进了VGA的双倍速率同步动态随机存储器(DDR)缓存(可以但不限于获取一部分的DDR缓存空间作为VGA的显存进行存储),捕获模块从DDR中主动读取RGB原始数据,不同的,DVI模式是由VGA向捕获模块推送原始RGB图像。
[0091] 在视频压缩系统的视频压缩功能发生异常的情况下,可以但不限于通过以下方式检测导致视频压缩功能发生异常的目标视频处理模块:
[0092] 服务器管理控制芯片管理模块依次向每个视频处理模块发送交换指令,对于第一视频处理模块,视频处理模块会将接收到的输入数据通过第一连接方式形成的连接路径传输至输出控制模块的数据输出端,由输出控制模块传输至DDR,再由与视频处理模块连接的下一级视频处理模块从DDR中获取输入数据,再依次执行后续的视频处理任务,通过检测视频压缩功能的运行状态,从而确定视频处理模块是否为目标视频处理模块,下面以块数据生成模块为例,进行进一步的说明,对于第一视频处理模块中的视频处理模块可以但不限于采用类似的处理方式:
[0093] 服务器管理控制芯片管理模块向块数据生成模块的交换单元发送交换指令,块数据生成模块的交换单元响应交换指令通过第一连接方式将数据输入端传输的输入数据传输至输出控制模块,再由输出控制模块将输入数据传输至DDR,其中,交换单元可以但不限于用于将输入数据转换为输出控制模块能够传输的格式,输出控制模块可以但不限于再将输入数据转换为DDR能够识别并存储的格式再传输至DDR内进行存储,对于块数据生成模块的数据输入端传输的输入数据可以但不限于是经过了之前的捕获模块、缩放模块和色彩空间转换模块进行处理之后的输入数据。
[0094] 在块数据生成模块的交换单元将输入数据传输至DDR之后,JPEG IP可以但不限于从DDR中获取块数据生成模块传输的输入数据作为JPEG IP的输入数据再依次进行处理,得到输出控制模块输出的数据,最后根据输出控制模块输出的数据检测视频压缩功能的运行状态,从而检测块数据生成模块是否为目标视频处理单元。
[0095] 对于第二视频处理模块,视频处理模块会将接收到的输入数据通过第二连接方式形成的连接路径直接传输至下一级视频处理模块,从而确定视频处理模块是否为目标视频处理模块,下面以缩放模块为例,进行进一步的说明,对于第二视频处理模块中的视频处理模块可以但不限于采用类似的处理方式:
[0096] 服务器管理控制芯片管理模块向缩放模块的交换单元发送交换指令,缩放模块的交换单元响应交换指令通过多路选择器将数据输入端传输的输入数据传输至色彩空间转换模块进行后续的处理工作,最后根据输出控制模块输出的数据检测视频压缩功能的运行状态,从而检测块缩放模块是否为目标视频处理单元。
[0097] 在一个示例性实施例中,服务器管理控制芯片,还用于在根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块之后,控制所述目标视频处理模块检测导致所述视频压缩功能发生异常的异常原因。
[0098] 可选的,在本实施例中,视频处理模块可以但不限于通过多个任务阶段完成视频处理任务,可以但不限于通过检测视频处理模块执行每一个任务阶段的处理情况检测导致视频处理模块的视频压缩功能发生异常的异常原因。
[0099] 可选的,在本实施例中,视频压缩系统可以但不限于包括一个或者多个发生异常的视频处理模块,可以但不限于依次将每个发生异常的视频处理模块确定为目标视频处理模块执行检测工作。
[0100] 在一个示例性实施例中,目标视频处理模块的视频处理单元被配置了多个检测点,所述检测点为所述视频处理单元执行对应的视频处理任务中的任务阶段;所述服务器管理控制芯片,用于向所述目标视频处理模块发送检测指令,其中,检测指令用于指示所述目标视频处理模块对所述视频处理单元的故障进行检测;所述目标视频处理模块,用于响应所述检测指令,将所述多个检测点中的每个检测点作为目标检测点,在所述视频处理单元执行对应的视频处理任务达到所述目标检测点的目标任务阶段的情况下,检测所述目标任务阶段的目标运行状态;将所述运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0101] 可选的,在本实施例中,每个视频处理模块在视频压缩系统中由其对应的视频处理任务,视频处理模块可以但不限于通过执行多个任务阶段执行视频处理任务,可以但不限于在每个任务阶段设定对应的检测点,比如:在任务阶段结束的情况下,设定检测点用于获取并检测任务阶段输出的数据。或者,在执行任务阶段的过程中,设定检测点用于检测执行任务阶段的时间段是否超过阈值等。
[0102] 可选的,在本实施例中,服务器管理控制芯片可以但不限于通过向目标视频处理模块发送检测指令,目标视频处理模块可以但不限于用于响应检测指令进行任务阶段的检测。检测点可以但不限于由检测指令进行下发,比如:目标视频处理模块接收检测指令,通过解析得到目标检测点。或者,检测指令可以但不限于用于触发检测点,比如:目标视频处理模块中存储了一个或者多个检测点,在接收到检测指令的情况下,触发对应的目标检测点进行任务阶段的检测等。
[0103] 可选的,在本实施例中,可以但不限于根据检测点得到目标任务阶段的目标期望状态,在确定了目标检测点的情况下,获取目标检测点对应的目标期望状态。或者,根据检测指令得到目标任务阶段的目标期望状态,比如:通过解析检测指令得到目标检测点以及目标检测点对应的目标期望状态等。
[0104] 在一个示例性实施例中,目标视频处理模块包括期望分析模块和硬件自检模块,其中,所述期望分析模块中配置了所述多个检测点以及每个检测点对应的期望状态;所述硬件自检模块,用于在接收到所述检测指令的情况下,从所述期望分析模块中提取每个检测点作为目标检测点,检测所述目标任务阶段的目标运行状态;将所述目标运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0105] 可选的,在本实施例中,目标视频处理模块中包括期望分析模块和硬件自检模块,可以但不限于通过期望分析模块存储检测点以及检测点对应的期望状态。
[0106] 可选的,在本实施例中,在接收到检测指令的情况下,可以但不限于通过硬件自检模块从期望分析模块中提取目标检测点,将目标视频处理单元的目标运行状态与目标期望状态进行比对检测目标检测点是否为故障点。
[0107] 可选的,在本实施例中,目标任务阶段的目标期望状态可以但不限于由服务器管理控制芯片下发的或者预先存储在目标视频处理模块中。
[0108] 在一个示例性实施例中,在所述目标视频处理模块为捕获模块的情况下,所述多个检测点包括:帧RGB数据的结束阶段,下一行的结束阶段,以及,在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段;帧RGB数据的结束阶段对应的所述期望状态包括获取到帧RGB数据的期望结束信号;下一行的结束阶段对应的所述期望状态包括获取到下一行的期望结束信号;在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段对应的所述期望状态包括在当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值。
[0109] 可选的,在本实施例中,提供了一种捕获模块的检测点以及目标期望状态的示例,捕获模块的检测点包括帧RGB数据的结束阶段(one_frame_end),下一行的结束阶段(one_line_end),以及,在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段(data_cnt),可以但不限于通过软件下发捕获模块中每个检测点的目标期望状态next_state包括get_ one_frame_end、get_one_line_end、out_data_cnt,其中,get one_frame_end用于指示获取到帧RGB数据的期望结束信号,get_one_line_end用于指示获取到下一行的期望结束信号,out_data_cnt用于指示在当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值,比如:在800 600分辨率下,out_data_cnt=800 600=240000个RGB数据。
[0110] 在一个示例性实施例中,在所述目标视频处理模块为缩放模块的情况下,所述多个检测点包括:滤波开始阶段,滤波结束阶段,以及,输出到后级模块的RGB数据的个数阶段;滤波开始阶段对应的所述期望状态包括滤波开始状态;滤波结束阶段对应的所述期望状态包括滤波结束状态;输出到后级模块的RGB数据的个数阶段对应的所述期望状态包括输出到后级模块的RGB数据的期望个数。
[0111] 可选的,在本实施例中,提供了一种缩放模块的检测点以及目标期望状态的示例,缩放模块的检测点包括滤波开始阶段(filter_begin),滤波结束阶段(filter_end),以及,输出到后级模块的RGB数据的个数阶段(data_cnt),缩放模块中每个检测点的目标期望状态next_state可以但不限于包括begin_filter、filter_end、out_data_cnt,其中,begin_filter用于指示滤波开始状态,filter_end用于指示滤波结束状态,out_data_cnt用于指示输出到后级模块的RGB数据的期望个数。
[0112] 在一个示例性实施例中,在所述目标视频处理模块为色彩空间转换模块的情况下,所述多个检测点包括:有效的计算后的YUV数据阶段,对当前分辨率完成分辨率的裁剪阶段,以及,经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段;有效的计算后的YUV数据阶段对应的所述期望状态包括有效的计算后的YUV期望数据;对当前分辨率完成分辨率的裁剪阶段对应的所述期望状态包括对当前分辨率完成分辨率的裁剪的期望分辨率;经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段对应的所述期望状态包括经过分辨率裁剪后应该输出到后级模块的YUV数据的期望个数。
[0113] 可选的,在本实施例中,提供了一种色彩空间转换模块的检测点以及目标期望状态的示例,色彩空间转换模块的检测点包括有效的计算后的YUV数据阶段(yuv_vld),对当前分辨率完成分辨率的裁剪阶段(rsl_mdy),以及,经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段(out_data_cnt),色彩空间转换模块中每个检测点的目标期望状态next_state可以但不限于包括get_yuv_vld,get_rsl_mdy,get_out_data_cnt,其中,get_yuv_vld用于指示有效的计算后的YUV期望数据,get_rsl_mdy用于指示对当前分辨率完成分辨率的裁剪的期望分辨率,get_out_data_cnt用于指示经过分辨率裁剪后应该输出到后级模块的YUV数据的期望个数。
[0114] 在一个示例性实施例中,在所述目标视频处理模块为块数据生成模块的情况下,所述多个检测点包括:Y数据块数据的生成阶段,U数据块数据的生成阶段,V数据块数据的生成阶段,以及,当前压缩模式下所述块数据生成模块输出数据阶段;Y数据块数据的生成阶段对应的所述期望状态包括完成Y数据块数据的生成;U数据块数据的生成阶段对应的所述期望状态包括完成U数据块数据的生成;V数据块数据的生成阶段对应的所述期望状态包括完成V数据块数据的生成;当前压缩模式下所述块数据生成模块输出数据阶段对应的所述期望状态包括当前压缩模式下所述块数据生成模块输出的期望数据量。
[0115] 可选的,在本实施例中,提供了一种块数据生成模块的检测点以及目标期望状态的示例,块数据生成模块的检测点包括Y数据块数据的生成阶段(Y_BLOCK),U数据块数据的生成阶段(U_BLOCK),V数据块数据的生成阶段(V_BLOCK),以及,当前压缩模式下所述块数据生成模块输出数据阶段(out_data_cnt),块数据生成模块中每个检测点的目标期望状态next_state可以但不限于包括get_Y_BLOCK,get_U_BLOCK,get_V_BLOCK,get_out_data_cnt,其中,get_Y_BLOCK用于指示完成Y数据块数据的生成,get_U_BLOCK用于指示完成U数据块数据的生成,get_V_BLOCK用于指示完成V数据块数据的生成,get_out_data_cnt用于指示当前压缩模式下所述块数据生成模块输出的期望数据量。
[0116] 在一个示例性实施例中,在所述目标视频处理模块为加密模块的情况下,所述多个检测点包括:软件配置阶段,完成加密结果阶段,以及,将加密完成的数据组合阶段;软件配置阶段对应的所述期望状态包括获取到软件配置完成加密需要的密钥;完成加密结果阶段对应的所述期望状态包括加密数据的期望长度;将加密完成的数据组合阶段对应的所述期望状态包括完成加密完成的数据的组合。
[0117] 可选的,在本实施例中,提供了一种加密模块的检测点以及目标期望状态的示例,加密模块的检测点包括软件配置阶段(secret_key),完成加密结果阶段(encry_result),以及,将加密完成的数据组合阶段(get_256Bytes),加密模块中每个检测点的目标期望状态next_state可以但不限于包括get_secret_key、get_encry_result、get_256Bytes,其中,get_secret_key用于指示获取到软件配置完成加密需要的密钥,get_encry_result用于指示加密数据的期望长度,get_256Bytes用于指示完成加密完成的数据的组合。
[0118] 在一个示例性实施例中,在所述目标视频处理模块为输出控制模块的情况下,所述多个检测点包括:输入帧头信息阶段,输入帧尾信息阶段,存储器交互阶段,帧头信息写入存储器阶段,以及,将当前帧的帧长度写入存储器阶段;输入帧头信息阶段对应的所述期望状态包括检测到输入的帧头信息;输入帧尾信息阶段对应的所述期望状态包括检测到输入的帧尾信息;存储器交互阶段对应的所述期望状态包括与存储器交互的总线的通道产生有效数据且是正常的突发操作;帧头信息写入存储器阶段对应的所述期望状态包括将帧头信息写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件读取;将当前帧的帧长度写入存储器阶段对应的所述期望状态包括将当前帧的帧长度写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件来读取。
[0119] 可选的,在本实施例中,提供了一种输出控制模块的检测点以及目标期望状态的示例,输出控制模块的检测点包括输入帧头信息阶段(frame_header),输入帧尾信息阶段(frame_end),存储器交互阶段(axi_aw_w),帧头信息写入存储器阶段(frame_header_addr),以及,将当前帧的帧长度写入存储器阶段(frame_length_addr),输出控制模块中每个检测点的目标期望状next_state态可以但不限于包括get_frame_header、get_frame_end、get_axi_aw_w、get_frame_header_addr、get_frame_length_addr,其中,get_frame_header用于指示检测到输入的帧头信息,get_frame_end用于指示检测到输入的帧尾信息,get_axi_aw_w用于指示与存储器交互的总线的通道产生有效数据且是正常的突发操作,get_frame_header_addr用于指示将帧头信息写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件读取,get_frame_length_addr用于指示将当前帧的帧长度写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件来读取。
[0120] 在一个示例性实施例中,所述目标视频处理模块,还用于在确定所述目标检测点为故障点之后,采用所述目标检测点对应的修复逻辑修复所述故障点。
[0121] 可选的,在本实施例中,目标视频处理模块可以但不限于使用备用的工作模块替代故障点进行工作从而对故障点进行修复。或者,将故障点进行上报。
[0122] 在一个示例性实施例中,所述目标视频处理模块中还部署了硬件修复模块;所述硬件修复模块,用于所述视频处理单元执行对应的视频处理任务的过程中接管所述目标任务阶段。
[0123] 可选的,在本实施例中,硬件修复模块可以但不限于具有能够替代故障点进行工作的功能。
[0124] 可选的,在本实施例中,使用捕获模块的硬件修复模块进行修复可以但不限于包括:在定位到异常原因是无法获得帧RGB数据的期望结束信号的情况下,硬件修复模块可以但不限于将DVI接口上或者是AXI接口上的数据接管到硬件修复模块内部,通过硬件修复模块计算得到帧RGB数据的结束标志,并用该结束标志替换原始逻辑中的帧结束标志进行修复;或者,在定位到异常原因是无法获得行的期望结束信号的情况下,硬件修复模块可以但不限于将DVI接口上或者是AXI接口上的数据接管到硬件修复模块内部,计算得到行的结束标志,并用该结束标志替换原始逻辑中的行结束标志进行修复;或者,在定位到异常原因是当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值异常的时候,硬件修复模块可以但不限于将完成处理的RGB数据重新接管到本模块内部重新进行计数后,输出到后级模块。
[0125] 可选的,在本实施例中,使用缩放模块的硬件修复模块进行修复可以但不限于包括:在硬件修复模块定位到异常原因是输出计数功能异常的情况下,也就是缩放模块输出到后级模块的RGB数据的期望个数异常,硬件修复模块内部的控制逻辑将完成滤波的处理的RGB数据重新接管到本模块内部重新进行计数后,输出到后级模块。
[0126] 在一个示例性实施例中,所述服务器管理控制芯片,还用于在每次检测所述运行状态后,向被发送了所述交换指令的视频处理模块发送恢复指令;所述视频处理模块,用于在接收到所述恢复指令的情况下,恢复至通过所述第一输出接口输出数据。
[0127] 可选的,在本实施例中,在每次检测运行状态后,服务器管理控制芯片向被发送了交换指令的视频处理模块发送恢复指令,恢复其机进行下一次的检测工作或者恢复其在视频压缩系统中的工作。
[0128] 在一个示例性实施例中,提供了一种捕获模块的工作过程的示例。图5是根据本申请实施例的一种捕获模块的工作过程的示意图,如图5所示,捕获模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在捕获模块接收到交换指令的情况下,捕获模块的交换单元将输入数据通过第二输出接口2传输至视频压缩系统的数据输出端,由捕获模块的下一级视频处理模块获取捕获模块传输的数据进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明捕获模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0129] 如果此时视频压缩系统的视频处理结果是正常的,则将捕获模块确定为目标视频处理模块,继续定位分析捕获模块,具体如下:
[0130] 服务器管理控制芯片向捕获模块发送检测指令,捕获模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0131] 使用硬件修复模块尝试修复已有的硬件问题,在定位到异常原因是无法获得帧RGB数据的期望结束信号的情况下,硬件修复模块可以但不限于将DVI接口上或者是AXI接口上的数据接管到硬件修复模块内部,通过硬件修复模块计算得到帧RGB数据的结束标志,并用该结束标志替换原始逻辑中的帧结束标志进行修复;或者,在定位到异常原因是无法获得行的期望结束信号的情况下,硬件修复模块可以但不限于将DVI接口上或者是AXI接口上的数据接管到硬件修复模块内部,计算得到行的结束标志,并用该结束标志替换原始逻辑中的行结束标志进行修复;或者,在定位到异常原因是当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值异常的时候,硬件修复模块可以但不限于将完成处理的RGB数据重新接管到本模块内部重新进行计数后,输出到后级模块。
[0132] 其次,捕获模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO(First In First Out,一种先进先出数据存储)的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0133] 在一个示例性实施例中,提供了一种缩放模块的工作过程的示例。图6是根据本申请实施例的一种缩放模块的工作过程的示意图,如图6所示,缩放模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在缩放模块接收到交换指令的情况下,缩放模块的交换单元将输入数据传输至多路选择器,由多路选择器将输入数据不经过视频处理单元直接传输至下一级视频处理模块进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明缩放模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0134] 如果此时视频压缩系统的视频处理结果是正常的,则将缩放模块确定为目标视频处理模块,继续定位分析缩放模块,具体如下:服务器管理控制芯片向缩放模块发送检测指令,缩放模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0135] 使用硬件修复模块尝试修复已有的硬件问题,当硬件修复模块定位到异常原因是输出计数功能异常的时候,硬件修复模块内部的控制逻辑将完成滤波的处理的RGB数据重新接管到本模块内部重新进行计数后,输出到后级模块。
[0136] 其次,缩放模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0137] 在一个示例性实施例中,提供了一种色彩空间转换模块的工作过程的示例。图7是根据本申请实施例的一种色彩空间转换模块的工作过程的示意图,如图7所示,色彩空间转换模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在色彩空间转换模块接收到交换指令的情况下,色彩空间转换模块的交换单元将输入数据传输至多路选择器,由多路选择器将输入数据不经过视频处理单元直接传输至下一级视频处理模块进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明色彩空间转换模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0138] 如果此时视频压缩系统的视频处理结果是正常的,则将色彩空间转换模块确定为目标视频处理模块,继续定位分析色彩空间转换模块,具体如下:服务器管理控制芯片向色彩空间转换模块发送检测指令,色彩空间转换模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0139] 使用硬件修复模块尝试修复已有的硬件问题,其次,色彩空间转换模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0140] 在一个示例性实施例中,提供了一种块数据生成模块的工作过程的示例。图8是根据本申请实施例的一种块数据生成模块的工作过程的示意图,如图8所示,块数据生成模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在块数据生成模块接收到交换指令的情况下,块数据生成模块的交换单元将输入数据传输至多路选择器,由多路选择器将输入数据不经过视频处理单元直接传输至下一级视频处理模块进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明块数据生成模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0141] 如果此时视频压缩系统的视频处理结果是正常的,则将块数据生成模块确定为目标视频处理模块,继续定位分析块数据生成模块,具体如下:服务器管理控制芯片向块数据生成模块发送检测指令,块数据生成模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0142] 使用硬件修复模块尝试修复已有的硬件问题,该硬件修复模块的目的是尝试修复已有的硬件问题,在等待不到Y BLOCK数据的时候,判定Y_BLOCK的产生逻辑或者是片上Y_RAM出现异常。硬件修复模块要实现的功能是舍弃一部分U/V数据,尽可能的保留Y数据,因为Y是亮度,U/V是色度,人眼对Y分量更加敏感,因此此时硬件修复模块控制Y数据的流向写进U_RAM,而控制U/V分量写进V_RAM,而为了要实现Y_BLOCK U_BLOCK V_BLOCK整体数量上的对应,YUV444模式下需要将U_BLOCK/V_BLOCK的数复制一份,因为此时原本保留8 8的U分量,在硬件修复模块的控制下只保留8 4,而仍需要输出给JPEG IP 8 8的尺寸,因此将84复制一份,变成8 8同样的,原本需要保留8 8的V分量,在硬件修复模块的控制下只保留8 4,而仍需要输出给JPEG IP 8 8的尺寸,因此将8 4复制一份,变成8 8,而YUV420模式下无需这样的处理,因为YUV420模式下,Y的尺寸是16 16,而U/V是8 8,用16个U_RAM组就完全可以放的下8 8的UV分量和V分量。
[0143] 在等待不到U_BLOCK数据的时候,判定U_BLOCK的产生逻辑或者是片上U_RAM出现异常。此时硬件修复模块要做的就是用16个U_RAM来缓存U/V分量,分别产生8 8的U_BLOCK和V_BLOCK。
[0144] 在等待不到V_BLLOCK数据的时候,判定V_BLOCK的产生逻辑或者是片上V_RAM出现异常,此时硬件修复模块要做的就是用16个V_RAM来缓存U/V分量,分别产生8 8的U_BLOCK和V_BLOCK。
[0145] 当定位到异常原因是输出计数模块异常的时候,该硬件修复模块内部的控制逻辑完成将处理的Y_BLOCK/U_BLOCK/V_BLOCK数据重新进行计数后,输出到后级模块。
[0146] 其次,块数据生成模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0147] 在一个示例性实施例中,提供了一种加密模块的工作过程的示例。图9是根据本申请实施例的一种加密模块的工作过程的示意图,如图9所示,加密模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在加密模块接收到交换指令的情况下,加密模块的交换单元将输入数据传输至多路选择器,由多路选择器将输入数据不经过视频处理单元直接传输至下一级视频处理模块进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明加密模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0148] 如果此时视频压缩系统的视频处理结果是正常的,则将加密模块确定为目标视频处理模块,继续定位分析加密模块,具体如下:服务器管理控制芯片向加密模块发送检测指令,加密模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0149] 使用硬件修复模块尝试修复已有的硬件问题,加密模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0150] 在一个示例性实施例中,提供了一种输出控制模块的工作过程的示例。图10是根据本申请实施例的一种输出控制模块的工作过程的示意图,如图10所示,输出控制模块通过数据输入端1接收输入数据,数据输入端1与交换单元的输入接口连接,在输出控制模块接收到交换指令的情况下,输出控制模块的交换单元将输入数据传输至多路选择器,由多路选择器将输入数据不经过视频处理单元直接传输至下一级视频处理模块进行后续处理,如果此时的视频压缩系统的视频处理结果还是异常的,且异常的现象与之前一致,则表明输出控制模块是正常的,造成视频压缩功能异常的原因不是该模块,需继续对其他模块进行定位分析。
[0151] 如果此时视频压缩系统的视频处理结果是正常的,则将输出控制模块确定为目标视频处理模块,继续定位分析输出控制模块,具体如下:服务器管理控制芯片向输出控制模块发送检测指令,输出控制模块的硬件自检模块响应检测指令从期望分析模块中提取目标检测点,检测目标任务阶段的目标运行状态,将目标运行状态与目标任务阶段的目标期望状态进行比对,在目标运行状态与目标期望状态不一致的情况下,确定目标检测点为故障点。
[0152] 使用硬件修复模块尝试修复已有的硬件问题,其次,输出控制模块还包括数据保留模块,该数据保留模块的功能是保留内部处理的关键信息,因为硬件的处理速度更快,保留数据保留模块内部数据处理的所有关键信息,比如当前的所有配置、FIFO的实时空满状态,状态机的跳转流程等,然后将这些关键信息通过交换单元写入到存储器,由软件进行读取分析。
[0153] 在本实施例中还提供了一种服务器管理控制芯片,图11是根据本申请实施例的服务器管理控制芯片的示意图,如图11所示,该服务器管理控制芯片包括视频压缩系统1102和处理器1104,其中,所述视频压缩系统1102包括依次连接的N个视频处理模块(1106‑1至1106‑N),N为大于1的整数,每个所述视频处理模块(1106‑1至1106‑N)中部署了交换单元
1108和视频处理单元1110,所述交换单元1108的输入接口1112与所述视频处理模块的数据输入端连接,所述交换单元1108的第一输出接口1114与所述视频处理单元1110连接,所述视频处理单元1110与下一级视频处理模块连接,其中,每个所述视频处理模块中的所述视频处理单元,用于执行每个所述视频处理模块在所述视频压缩系统中的视频处理任务;所述交换单元1108还包括第二输出接口1116,所述第二输出接口1116用于在接收到所述服务器管理控制芯片的交换指令的情况下,将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块;所述处理器1104,用于在所述视频压缩系统的视频压缩功能发生异常的情况下,向所述N个视频处理模块的交换单元依次发送所述交换指令,并检测每次发送所述交换指令后所述视频压缩功能的运行状态;根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块。
[0154] 通过上述服务器管理控制芯片,由于使用服务器管理控制芯片在视频压缩系统的视频压缩功能发生异常的情况下,通过向N个视频处理模块的交换单元依次发送交换指令,从N个视频处理模块中检测得到导致视频压缩功能发生异常的目标视频处理模块,因此,可以解决视频压缩系统的稳定性较弱的问题,达到提高视频压缩系统的稳定性的效果。
[0155] 可选的,在本实施例中,所述第二输出接口采用第一连接方式与所述下一级视频处理模块连接,所述第一连接方式用于将所述第二输出接口连接至所述视频压缩系统的数据输出端,所述视频压缩系统的数据输出端与所述服务器管理控制芯片上的存储器连接;所述第二输出接口,用于通过所述第一连接方式形成的连接路径,将所述输入数据传输至所述存储器;所述下一级视频处理模块,用于从所述存储器提取所述输入数据。
[0156] 可选的,在本实施例中,N个视频处理模块中的最后一级为输出控制模块,所述输出控制模块的数据输出端与所述存储器连接;所述第二输出接口与所述输出控制模块的数据输出端连接;所述第二输出接口用于通过所述输出控制模块的数据输出端将所述数据输入端传输的输入数据传输至所述存储器。
[0157] 可选的,在本实施例中,所述第一连接方式应用于所述N个视频处理模块中所执行的视频处理任务影响视频压缩功能的第一视频处理模块。
[0158] 可选的,在本实施例中,所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第一视频处理模块包括:所述捕获模块、所述色彩空间转换模块、所述块数据生成模块和所述输出控制模块。
[0159] 可选的,在本实施例中,所述第二输出接口采用第二连接方式与所述下一级视频处理模块连接,所述第二连接方式用于将所述第二输出接口连接至所述下一级视频处理模块的数据输入端;所述第二输出接口,用于通过所述第二连接方式形成的连接路径,将所述输入数据直接传输至所述下一级视频处理模块。
[0160] 可选的,在本实施例中,所述视频处理模块中还部署了多路选择器,所述多路选择器连接在所述视频处理单元与所述下一级视频处理模块之间;所述第二输出接口与所述多路选择器连接;所述第二输出接口用于通过所述多路选择器将所述数据输入端传输的输入数据直接传输至所述下一级视频处理模块。
[0161] 可选的,在本实施例中,所述第二连接方式应用于所述N个视频处理模块中所执行的视频处理任务不影响视频压缩功能的第二视频处理模块。
[0162] 可选的,在本实施例中,所述N个视频处理模块包括:捕获模块、缩放模块、色彩空间转换模块、块数据生成模块、加密模块和输出控制模块;所述第二视频处理模块包括:所述缩放模块和所述加密模块。
[0163] 可选的,在本实施例中,所述服务器管理控制芯片,还用于在根据所述运行状态从N个视频处理模块中提取导致所述视频压缩功能发生异常的目标视频处理模块之后,控制所述目标视频处理模块检测导致所述视频压缩功能发生异常的异常原因。
[0164] 可选的,在本实施例中,所述目标视频处理模块的视频处理单元被配置了多个检测点,所述检测点为所述视频处理单元执行对应的视频处理任务中的任务阶段;所述服务器管理控制芯片,用于向所述目标视频处理模块发送检测指令,其中,检测指令用于指示所述目标视频处理模块对所述视频处理单元的故障进行检测;所述目标视频处理模块,用于响应所述检测指令,将所述多个检测点中的每个检测点作为目标检测点,在所述视频处理单元执行对应的视频处理任务达到所述目标检测点的目标任务阶段的情况下,检测所述目标任务阶段的目标运行状态;将所述运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0165] 可选的,在本实施例中,所述目标视频处理模块包括期望分析模块和硬件自检模块,其中,所述期望分析模块中配置了所述多个检测点以及每个检测点对应的期望状态;所述硬件自检模块,用于在接收到所述检测指令的情况下,从所述期望分析模块中提取每个检测点作为目标检测点,检测所述目标任务阶段的目标运行状态;将所述目标运行状态与所述目标任务阶段的目标期望状态进行比对;在所述目标运行状态与所述目标期望状态不一致的情况下,确定所述目标检测点为故障点。
[0166] 可选的,在本实施例中,在所述目标视频处理模块为捕获模块的情况下,所述多个检测点包括:帧RGB数据的结束阶段,下一行的结束阶段,以及,在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段;帧RGB数据的结束阶段对应的所述期望状态包括获取到帧RGB数据的期望结束信号;下一行的结束阶段对应的所述期望状态包括获取到下一行的期望结束信号;在当前分辨率下每一帧输入到后级模块的RGB数据的个数值阶段对应的所述期望状态包括在当前分辨率下每一帧输入到后级模块的RGB数据的期望个数值。
[0167] 可选的,在本实施例中,在所述目标视频处理模块为缩放模块的情况下,所述多个检测点包括:滤波开始阶段,滤波结束阶段,以及,输出到后级模块的RGB数据的个数阶段;滤波开始阶段对应的所述期望状态包括滤波开始状态;滤波结束阶段对应的所述期望状态包括滤波结束状态;输出到后级模块的RGB数据的个数阶段对应的所述期望状态包括输出到后级模块的RGB数据的期望个数。
[0168] 可选的,在本实施例中,在所述目标视频处理模块为色彩空间转换模块的情况下,所述多个检测点包括:有效的计算后的YUV数据阶段,对当前分辨率完成分辨率的裁剪阶段,以及,经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段;有效的计算后的YUV数据阶段对应的所述期望状态包括有效的计算后的YUV期望数据;对当前分辨率完成分辨率的裁剪阶段对应的所述期望状态包括对当前分辨率完成分辨率的裁剪的期望分辨率;经过分辨率裁剪后应该输出到后级模块的YUV数据的个数阶段对应的所述期望状态包括经过分辨率裁剪后应该输出到后级模块的YUV数据的期望个数。
[0169] 可选的,在本实施例中,在所述目标视频处理模块为块数据生成模块的情况下,所述多个检测点包括:Y数据块数据的生成阶段,U数据块数据的生成阶段,V数据块数据的生成阶段,以及,当前压缩模式下所述块数据生成模块输出数据阶段;Y数据块数据的生成阶段对应的所述期望状态包括完成Y数据块数据的生成;U数据块数据的生成阶段对应的所述期望状态包括完成U数据块数据的生成;V数据块数据的生成阶段对应的所述期望状态包括完成V数据块数据的生成;当前压缩模式下所述块数据生成模块输出数据阶段对应的所述期望状态包括当前压缩模式下所述块数据生成模块输出的期望数据量。
[0170] 可选的,在本实施例中,在所述目标视频处理模块为加密模块的情况下,所述多个检测点包括:软件配置阶段,完成加密结果阶段,以及,将加密完成的数据组合阶段;软件配置阶段对应的所述期望状态包括获取到软件配置完成加密需要的密钥;完成加密结果阶段对应的所述期望状态包括加密数据的期望长度;将加密完成的数据组合阶段对应的所述期望状态包括完成加密完成的数据的组合。
[0171] 可选的,在本实施例中,在所述目标视频处理模块为输出控制模块的情况下,所述多个检测点包括:输入帧头信息阶段,输入帧尾信息阶段,存储器交互阶段,帧头信息写入存储器阶段,以及,将当前帧的帧长度写入存储器阶段;输入帧头信息阶段对应的所述期望状态包括检测到输入的帧头信息;输入帧尾信息阶段对应的所述期望状态包括检测到输入的帧尾信息;存储器交互阶段对应的所述期望状态包括与存储器交互的总线的通道产生有效数据产且是正常的突发操作;帧头信息写入存储器阶段对应的所述期望状态包括将帧头信息写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件读取;将当前帧的帧长度写入存储器阶段对应的所述期望状态包括将当前帧的帧长度写入存储器且获得有效的在存储器中缓存的地址且触发中断通知软件来读取。
[0172] 可选的,在本实施例中,所述目标视频处理模块,还用于在确定所述目标检测点为故障点之后,采用所述目标检测点对应的修复逻辑修复所述故障点。
[0173] 可选的,在本实施例中,所述目标视频处理模块中还部署了硬件修复模块;所述硬件修复模块,用于所述视频处理单元执行对应的视频处理任务的过程中接管所述目标任务阶段。
[0174] 可选的,在本实施例中,所述服务器管理控制芯片,还用于在每次检测所述运行状态后,向被发送了所述交换指令的视频处理模块发送恢复指令;所述视频处理模块,用于在接收到所述恢复指令的情况下,恢复至通过所述第一输出接口输出数据。
[0175] 以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。