CN105472390B - 一种视频解码方法和系统 - Google Patents
一种视频解码方法和系统 Download PDFInfo
- Publication number
- CN105472390B CN105472390B CN201510995609.1A CN201510995609A CN105472390B CN 105472390 B CN105472390 B CN 105472390B CN 201510995609 A CN201510995609 A CN 201510995609A CN 105472390 B CN105472390 B CN 105472390B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- operation request
- counting
- axi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明公开了一种视频解码系统和方法,所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口。当视频解码器在解码某一帧数据时发生错误,视频解码器会将该错误帧已经发至AXI总线上的数据操作请求全部处理完成后,复位该错误帧并开始下一帧数据的解析,不仅可以有效防止错误帧码流数据的数据操作请求对下一帧数据解析的影响,同时错误帧只处理已发送的数据操作请求,并不需要继续将错误帧全部解析完成,有利于节省功耗,因而在计算机芯片领域具有广阔的市场前景。
Description
技术领域
本发明涉及计算机芯片领域,尤其涉及一种视频解码方法和系统。
背景技术
AXI(advanced extensible interface)是一种总线协议,该协议是ARM公司提出的AMBA 3.0协议中最重要的部分之一。AXI总线是一种面向高性能、高带宽、低延迟的片内总线。由于视频在解码过程中IP对带宽的需求是比较高的,因而其往往会采用AXI总线来实现数据交互。
视频码流数据在传输过程中,由于受到信道等因素各种影响,经常会出现一些错误。而码流数据的解码一般是以帧为单位,当某一帧的码流数据发生错误时,如果未对该帧的码流数据的操作请求进行及时处理,往往会发生连锁反应,影响到下一帧码流数据的解析。如何保证当视频解码模块在解析当前错误帧时,解码器IP不会挂死现象并且能顺利地解析下一帧码流数据,且保证下一帧码流数据解析的正确性,是计算机芯片领域一个亟需解决的问题。
发明内容
为此,需要提供一种视频解码的技术方案,用以解决视频码流数据在某一帧发生错误时,容易出现IP挂死现象、影响到后续帧码流数据的正常解析的问题。
发明人提供了一种视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口,所述AXI接口包括错误控制模块;所述处理单元与解码模块连接,所述解码模块与复位模块连接,所述复位模块与AXI接口连接,所述AXI接口与解码模块连接;所述错误控制模块与AXI总线连接;
所述解码模块用于发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址;
所述错误控制模块用于记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求;
当前帧数据发生错误时,错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则所述AXI总线用于根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,所述AXI总线用于根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则所述处理单元用于发送复位信息至解码模块,所述复位模块用于根据复位信息对解码模块进行帧间复位,所述解码模块用于开始解析下一帧数据。
进一步地,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接;则所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“错误控制模块用于记录当前帧未被执行的数据操作请求个数”具体包括:
第一计数模块用于记录写地址通道中尚未执行写数据操作的存储地址的个数;
第二计数模块用于记录写数据通道中尚未执行写数据操作的待写入数据的个数;
第三计数模块用于记录读数据通道中尚未执行读数据操作的存储地址的个数;
第四计数模块用于记录读地址通道中尚未执行读数据操作的待读取数据的个数。
进一步地,所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
进一步地,所述“错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数不为0”具体包括:错误控制模块用于判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值均不为0。
发明人还提供了一种视频解码方法,所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口,所述AXI接口包括错误控制模块;所述处理单元与解码模块连接,所述解码模块与复位模块连接,所述复位模块与AXI接口连接,所述AXI接口与解码模块连接;所述错误控制模块与AXI总线连接;则所述方法包括以下步骤:
解码模块发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址;
错误控制模块记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求;
当前帧数据在解析过程中发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,解码模块开始解析下一帧数据。
进一步地,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接;则所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“错误控制模块记录当前帧未被执行的数据操作请求个数”具体包括:
第一计数模块记录写地址通道中尚未执行写数据操作的存储地址的个数;
第二计数模块记录写数据通道中尚未执行写数据操作的待写入数据的个数;
第三计数模块记录读数据通道中尚未执行读数据操作的存储地址的个数;
第四计数模块记录读地址通道中尚未执行读数据操作的待读取数据的个数。
进一步地,其特征在于,所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
进一步地,所述“错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0”具体包括:错误控制模块判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值是否均不为0。
上述技术方案所述的视频解码系统和方法,所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口。所述方法包括以下步骤:首先解码模块发送一个或多个当前帧的数据操作请求至AXI总线,而后错误控制模块记录当前帧未被执行的数据操作请求个数。当前帧数据发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,解码模块开始解析下一帧数据。这样,即使视频解码器在解码某一帧数据时发生错误,会将该错误帧已经发至AXI总线上的数据操作请求全部处理完成后,复位该错误帧并开始下一帧数据的解析,不仅可以有效防止错误帧码流数据的数据操作请求对下一帧数据解析的影响,同时错误帧只处理已发送的数据操作请求,并不需要继续将错误帧全部解析完成,有利于节省功耗,因而在计算机芯片领域具有广阔的市场前景。
附图说明
图1为本发明一实施方式涉及的视频解码系统的示意图;
图2为本发明一实施方式涉及的视频解码方法的示意图;
附图标记说明:
101、处理单元;
102、视频解码器;111、解码模块;112、复位模块;113、AXI接口;114、错误控制模块;
103、AXI总线;
104、存储单元。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
所述系统包括视频解码器102、处理单元101、AXI总线103和存储单元104;所述视频解码器102包括解码模块111、复位模块112和AXI接口113,所述AXI接口113包括错误控制模块114;所述处理单元101与解码模块111连接,所述解码模块111与复位模块112连接,所述复位模块112与AXI接口113连接,所述AXI接口113与解码模块111连接;所述错误控制模块114与AXI总线103连接;
所述解码模块111用于发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址;
所述错误控制模块114用于记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求;
当前帧数据发生错误时,错误控制模块114用于判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则所述AXI总线103用于根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元104中读取当前帧待解码的数据,或者,所述AXI总线103用于根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元104;否则所述处理单元101用于发送复位信息至解码模块111,所述复位模块112用于根据复位信息对解码模块进行帧间复位,所述解码模块111用于开始解析下一帧数据。
在使用视频解码系统时,首先解码模块发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址。
而后错误控制模块记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求。在本实施方式中,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接。所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“错误控制模块用于记录当前帧未被执行的数据操作请求个数”具体包括:第一计数模块用于记录写地址通道中尚未执行写数据操作的存储地址的个数;第二计数模块用于记录写数据通道中尚未执行写数据操作的待写入数据的个数;第三计数模块用于记录读数据通道中尚未执行读数据操作的存储地址的个数;第四计数模块用于记录读地址通道中尚未执行读数据操作的待读取数据的个数,优选的,所述计数模块为计数器。
AXI接口与AXI总线通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道进行连接。以写数据操作请求为例,解码模块发送的写数据操作请求中的执行写数据操作的存储单元地址(以下简称“写地址)会通过写地址通道发送给AXI总线,解码模块发送的写数据操作请求中的待写入的数据(以下简称“写数据”)会通过写数据通道发送给AXI总线。AXI总线接收写数据和写地址后,会将写数据写入与AXI总线连接的存储单元写地址对应的位置中。在本实施方式中,所述存储单元为DDR存储器。解码模块发送给AXI总线的写数据操作请求可能为多个,而同一时间内AXI总线只能向存储单元中写入一个写数据操作对应的写数据,因而尚未执行写数据操作的数据操作请求就被缓存于AXI总线,并且第一计数模块记录写地址通道中尚未执行写数据操作的存储地址的个数;第二计数模块记录写数据通道中尚未执行写数据操作的待写入数据的个数。当前帧某一写数据操作请求被执行时(即AXI总线将当前帧某一写数据写入存储单元中的写地址位置时),AXI总线会通过写响应通道给错误控制模块发送一写完成响应反馈,错误控制模块接收写完成响应反馈,将第一计数模块和第二计数模块的值减1。读数据操作同理可得,通过计数单元的值可以准确知道当前AXI总线上当前帧未被执行的数据操作请求个数。
当前帧数据发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0。在本实施方式中,所述“错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数不为0”具体包括:错误控制模块用于判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值是否均不为0。即判断写数据通道上是否还存在当前帧需要写入存储单元中的写数据,写地址通道上是否还有当前帧需要执行写操作的存储单元的存储地址,读地址通道上是否还有当前帧需要执行读操作的存储单元的存储地址,读数据通道上是否还有当前帧执行读数据操作的待读取数据。若是则AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元。若当前帧未被执行的数据操作请求个数不为0(即第一计数模块、第二计数模块、第三计数模块和第四计数模块任一计数模块的值不为0),说明当前帧在解析发生错误时,AXI总线上仍然残存有当前帧未被执行的数据操作请求,如果不对这些数据操作请求进行有效处理,则会影响下一帧数据的正常解析。例如第一计数模块和第二计数模块的值不为0,则说明AXI总线上尚未被执行的写地址和写数据个数不为0,因而AXI总线会执行将写数据写入存储单元该写数据对应的写地址位置。再如第三计数模块和第四计数模块的值不为0,则说明AXI总线上尚未被执行的读地址和读数据个数不为0,因而AXI总线会继续从存储单元的读地址位置读取该读地址对应的读数据,并将读数据发送给视频解码。
若错误控制模块判断所记录的当前帧未被执行的数据操作请求个数为0,则说明器当前帧不存在着未被执行的数据操作请求。因而处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,所述解码模块开始解析下一帧数据。在本实施方式中,所述处理单元为CPU。复位模块根据复位信息对解码模块进行帧间复位,即对解码模块进行IP复位,停止解码模块继续发送当前错误帧的数据操作请求至AXI总线,而是根据响应CPU发送的复位信号,开始下一帧数据的解析。这样,在解析下一帧数据时,由于当前帧(错误帧)的数据操作请求已被全部处理完成,因而不会影响下一帧数据的解析,进而保证了后续帧视频码流数据解析的准确性。
以及发明人还提供了一种视频解码方法,请参阅图2,为本发明一实施方式涉及的视频解码方法的流程图。所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口,所述AXI接口包括错误控制模块;所述处理单元与解码模块连接,所述解码模块与复位模块连接,所述复位模块与AXI接口连接,所述AXI接口与解码模块连接;所述错误控制模块与AXI总线连接;则所述方法包括以下步骤:
首先进入步骤S201解码模块发送一个或多个当前帧的数据操作请求至AXI总线。所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址。
而后进入步骤S202错误控制模块记录当前帧未被执行的数据操作请求个数。所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求。在本实施方式中,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接。所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;在解码器发送错误后,当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“错误控制模块用于记录当前帧未被执行的数据操作请求个数”具体包括:第一计数模块用于记录写地址通道中尚未执行写数据操作的存储地址的个数;第二计数模块用于记录写数据通道中尚未执行写数据操作的待写入数据的个数;第三计数模块用于记录读数据通道中尚未执行读数据操作的存储地址的个数;第四计数模块用于记录读地址通道中尚未执行读数据操作的待读取数据的个数,优选的,所述计数模块为计数器。
AXI接口与AXI总线通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道进行连接。以写数据操作请求为例,解码模块发送的写数据操作请求中的执行写数据操作的存储单元地址(以下简称“写地址)会通过写地址通道发送给AXI总线,解码模块发送的写数据操作请求中的待写入的数据(以下简称“写数据”)会通过写数据通道发送给AXI总线。AXI总线接收写数据和写地址后,会将写数据写入与AXI总线连接的存储单元写地址对应的位置中。在本实施方式中,所述存储单元为DDR存储器。解码模块发送给AXI总线的写数据操作请求可能为多个,而同一时间内AXI总线只能向存储单元中写入一个写数据操作对应的写数据,因而尚未执行写数据操作的数据操作请求就被缓存于AXI总线,并且第一计数模块记录写地址通道中尚未执行写数据操作的存储地址的个数;第二计数模块记录写数据通道中尚未执行写数据操作的待写入数据的个数。当前帧某一写数据操作请求被执行时(即AXI总线将当前帧某一写数据写入存储单元中的写地址位置时),AXI总线会通过写响应通道给错误控制模块发送一写完成响应反馈,错误控制模块接收写完成响应反馈,将第一计数模块和第二计数模块的值减1。读数据操作同理可得,通过计数单元的值可以准确知道当前AXI总线上当前帧未被执行的数据操作请求个数。
而后进入步骤S203当前帧数据发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0。在本实施方式中,所述“错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数不为0”具体包括:错误控制模块用于判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值是否均不为0。即判断写数据通道上是否还存在当前帧需要写入存储单元中的写数据,写地址通道上是否还有当前帧需要执行写操作的存储单元的存储地址,读地址通道上是否还有当前帧需要执行读操作的存储单元的存储地址,读数据通道上是否还有当前帧执行读数据操作的待读取数据。若是则进入步骤S204AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元。若当前帧未被执行的数据操作请求个数不为0(即第一计数模块、第二计数模块、第三计数模块和第四计数模块任一计数模块的值不为0),说明当前帧在解析发生错误时,AXI总线上仍然残存有当前帧未被执行的数据操作请求,如果不对这些数据操作请求进行有效处理,则会影响下一帧数据的正常解析。例如第一计数模块和第二计数模块的值不为0,则说明AXI总线上尚未被执行的写地址和写数据个数不为0,因而AXI总线会执行将写数据写入存储单元该写数据对应的写地址位置。再如第三计数模块和第四计数模块的值不为0,则说明AXI总线上尚未被执行的读地址和读数据个数不为0,因而AXI总线会继续从存储单元的读地址位置读取该读地址对应的读数据,并将读数据发送给视频解码器。
若错误控制模块判断所记录的当前帧未被执行的数据操作请求个数为0,则说明器当前帧不存在着未被执行的数据操作请求。因而可以进入步骤S205处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,解码模块开始解析下一帧数据。在本实施方式中,所述处理单元为CPU。复位模块根据复位信息对解码模块进行帧间复位,即对解码模块进行IP复位,停止解码模块继续发送当前错误帧的数据操作请求至AXI总线,而是根据响应CPU发送的复位信号,开始下一帧数据的解析。
上述技术方案所述的视频解码系统和方法,所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口。所述方法包括以下步骤:首先解码模块发送一个或多个当前帧的数据操作请求至AXI总线,而后错误控制模块记录当前帧未被执行的数据操作请求个数。当前帧数据发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,解码模块开始解析下一帧数据。这样,即使视频解码器在解码某一帧数据时发生错误,会将该错误帧已经发至AXI总线上的数据操作请求全部处理完成后,复位该错误帧并开始下一帧数据的解析,不仅可以有效防止错误帧码流数据的数据操作请求对下一帧数据解析的影响,同时错误帧只处理已发送的数据操作请求,并不需要继续将错误帧全部解析完成,有利于节省功耗,因而在计算机芯片领域具有广阔的市场前景。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
Claims (8)
1.一种视频解码系统,其特征在于,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口,所述AXI接口包括错误控制模块;所述处理单元与解码模块连接,所述解码模块与复位模块连接,所述复位模块与AXI接口连接,所述AXI接口与解码模块连接;所述错误控制模块与AXI总线连接;
所述解码模块用于发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址;
所述错误控制模块用于记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求;
当前帧数据发生错误时,错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则所述AXI总线用于根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,所述AXI总线用于根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则所述处理单元用于发送复位信息至解码模块,所述复位模块用于根据复位信息对解码模块进行帧间复位,所述解码模块用于开始解析下一帧数据。
2.如权利要求1所述的视频解码系统,其特征在于,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接;则所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:
第一计数模块用于记录写地址通道中尚未执行写数据操作的存储地址的个数;
第二计数模块用于记录写数据通道中尚未执行写数据操作的待写入数据的个数;
第三计数模块用于记录读数据通道中尚未执行读数据操作的存储地址的个数;
第四计数模块用于记录读地址通道中尚未执行读数据操作的待读取数据的个数。
3.如权利要求2所述的视频解码系统,其特征在于,所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
4.如权利要求2所述的视频解码系统,其特征在于,所述“错误控制模块用于判断所记录的当前帧未被执行的数据操作请求个数是否不为0”具体包括:错误控制模块用于判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值是否均不为0。
5.一种视频解码方法,其特征在于,所述方法应用于视频解码系统,所述系统包括视频解码器、处理单元、AXI总线和存储单元;所述视频解码器包括解码模块、复位模块和AXI接口,所述AXI接口包括错误控制模块;所述处理单元与解码模块连接,所述解码模块与复位模块连接,所述复位模块与AXI接口连接,所述AXI接口与解码模块连接;所述错误控制模块与AXI总线连接;则所述方法包括以下步骤:
解码模块发送一个或多个当前帧的数据操作请求至AXI总线,所述数据操作请求包括写数据操作请求或读数据操作请求,所述写数据操作请求包括执行写数据操作的存储地址以及待写入的数据;所述读数据操作请求包括执行读数据操作的存储地址;
错误控制模块记录当前帧未被执行的数据操作请求个数,所述未被执行的数据操作请求为缓存于AXI总线且尚未执行写数据操作或读数据操作的数据操作请求;
当前帧数据发生错误时,错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0,若是则AXI总线根据当前帧未被执行的读数据操作请求中执行读数据操作的存储单元地址,从所述存储单元中读取当前帧待解码的数据,或者,AXI总线根据当前帧未被执行的写数据操作请求中执行写数据操作的存储地址,将当前帧解码后的数据写入存储单元;否则处理单元发送复位信息至解码模块,复位模块根据复位信息对解码模块进行帧间复位,解码模块开始解析下一帧数据。
6.如权利要求5所述的视频解码方法,其特征在于,所述AXI总线与AXI接口通过写地址通道、写数据通道、写响应通道、读地址通道、读数据通道连接;则所述错误控制模块包括计数单元,所述计数单元用于记录当前帧未被执行的数据操作请求个数;所述计数单元包括第一计数模块、第二计数模块、第三计数模块和第四计数模块;则所述“计数单元记录当前帧未被执行的数据操作请求个数”具体包括:
第一计数模块记录写地址通道中尚未执行写数据操作的存储地址的个数;
第二计数模块记录写数据通道中尚未执行写数据操作的待写入数据的个数;
第三计数模块记录读数据通道中尚未执行读数据操作的存储地址的个数;
第四计数模块记录读地址通道中尚未执行读数据操作的待读取数据的个数。
7.如权利要求6所述的视频解码方法,其特征在于,所述“计数单元用于记录当前帧未被执行的数据操作请求个数”具体包括:初始化计数单元的初始值,所述计数单元的初始值为解码模块发送至AXI总线的当前帧的数据操作请求的个数;当AXI总线每执行完成一当前帧的数据操作请求后,所述计数单元的值减一。
8.如权利要求6所述的视频解码方法,其特征在于,所述“错误控制模块判断所记录的当前帧未被执行的数据操作请求个数是否不为0”具体包括:错误控制模块判断第一计数模块、第二计数模块、第三计数模块、第四计数模块的值是否均不为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510995609.1A CN105472390B (zh) | 2015-12-25 | 2015-12-25 | 一种视频解码方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510995609.1A CN105472390B (zh) | 2015-12-25 | 2015-12-25 | 一种视频解码方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105472390A CN105472390A (zh) | 2016-04-06 |
CN105472390B true CN105472390B (zh) | 2018-05-25 |
Family
ID=55609606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510995609.1A Active CN105472390B (zh) | 2015-12-25 | 2015-12-25 | 一种视频解码方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105472390B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106921597B (zh) * | 2017-03-10 | 2020-04-10 | 成都振芯科技股份有限公司 | 一种fpd-link低电压差分信号视频传输中的双向控制系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1167981A (zh) * | 1995-12-25 | 1997-12-17 | 索尼公司 | 编码数字信号的解码装置和方法 |
US5892982A (en) * | 1995-11-29 | 1999-04-06 | Matsushita Electric Industrial Co., Ltd. | External expansion bus interface circuit for connecting a micro control unit, and a digital recording and reproducing apparatus incorporating said interface circuit |
WO2005076623A2 (en) * | 2004-02-09 | 2005-08-18 | Matsushita Electric Industrial Co., Ltd. | Broadcast receiving apparatus, broadcast receiving method, broadcast receiving program, and broadcast receiving circuit |
CN105163126A (zh) * | 2015-09-06 | 2015-12-16 | 福州瑞芯微电子股份有限公司 | 一种基于hevc协议的硬件解码方法和装置 |
-
2015
- 2015-12-25 CN CN201510995609.1A patent/CN105472390B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892982A (en) * | 1995-11-29 | 1999-04-06 | Matsushita Electric Industrial Co., Ltd. | External expansion bus interface circuit for connecting a micro control unit, and a digital recording and reproducing apparatus incorporating said interface circuit |
CN1167981A (zh) * | 1995-12-25 | 1997-12-17 | 索尼公司 | 编码数字信号的解码装置和方法 |
WO2005076623A2 (en) * | 2004-02-09 | 2005-08-18 | Matsushita Electric Industrial Co., Ltd. | Broadcast receiving apparatus, broadcast receiving method, broadcast receiving program, and broadcast receiving circuit |
CN105163126A (zh) * | 2015-09-06 | 2015-12-16 | 福州瑞芯微电子股份有限公司 | 一种基于hevc协议的硬件解码方法和装置 |
Non-Patent Citations (1)
Title |
---|
H.263视频编码流的时域错误掩盖;梁柱;《中国图象图形学报A辑》;20021130(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN105472390A (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103546467B (zh) | 在TCP/IP网络上应用Modbus RTU协议的方法 | |
US20230064411A1 (en) | I2c bus communication control method, device and system, and readable storage medium | |
US10592376B2 (en) | Real-time hierarchical protocol decoding | |
CN105573951B (zh) | 一种针对数据流传输的ahb总线接口系统 | |
CN105117360A (zh) | 基于fpga的接口信号重映射方法 | |
CN100596077C (zh) | 通道化逻辑单通道统计的方法和装置 | |
CN104320317B (zh) | 一种以太网物理层芯片状态的传送方法和装置 | |
CN104714907B (zh) | 一种pci总线转换为isa和apb总线设计方法 | |
CN116089343A (zh) | 一种基于axi的数据存储方法、装置、存储介质及设备 | |
CN109902000B (zh) | 变速多通道调试追踪系统、方法、设备及存储介质 | |
CN105874774B (zh) | 用于在帧的处理过程中保持计数表的计数表保持装置以及相关的保持方法 | |
CN105472390B (zh) | 一种视频解码方法和系统 | |
CN102629235A (zh) | 一种提高ddr存储器读写速率的方法 | |
US8321604B2 (en) | Real-time USB class level decoding | |
CN110209605A (zh) | Pcie总线网卡的寄存器读写方法和计算设备 | |
CN105573947B (zh) | 一种基于apb总线的sd/mmc卡控制方法 | |
CN104991745B (zh) | 一种存储系统数据写入方法和系统 | |
CN104216856A (zh) | 一种dcr总线和apb总线之间的总线桥 | |
CN101594305B (zh) | 一种报文处理方法及装置 | |
CN101197985B (zh) | 数据传输装置和传输控制方法 | |
CN103853680A (zh) | 总线信号监测装置及方法 | |
EP3125251A1 (en) | Hamming code-based data access method and integrated random access memory | |
CN107844447A (zh) | 多通道串行总线高速数据采集处理系统及方法 | |
CN104702921A (zh) | 一种基于fc-av协议的帧接收控制电路及方法 | |
CN110851390B (zh) | 一种基于fpga实现4m 1553b总线协议的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 350003 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China Patentee after: Ruixin Microelectronics Co., Ltd Address before: 350003 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China Patentee before: Fuzhou Rockchips Electronics Co.,Ltd. |