一种基于fc-av协议的提高ddr2带宽利用率的发送视频数据存储方法

文档序号:9814129阅读:420来源:国知局
一种基于fc-av协议的提高ddr2带宽利用率的发送视频数据存储方法
【技术领域】
[0001 ]本发明属于计算机硬件技术,涉及一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法。
【背景技术】
[0002]FC-AV协议定义了视频数据到FC(光纤通道)的映射办法,在实现大分辨率的视频数据向FC映射时,一般需要采用DDR2存储器作为视频数据的缓存,在向DDR2存储器存放视频数据时,传统的存储方法是按地址递增依次存储整帧视频数据,该方法导致向DDR2存储视频数据的写操作和从DDR2读取视频数据的读操作这两种操作在大部分时间里都是针对DDR2的同一逻辑bank进行,当对DDR2的读、写操作同时进行时,根据DDR2的页面管理原理,这时DDR2的带宽利用率非常低。

【发明内容】

[0003]本发明为解决【背景技术】中存在的上述技术问题,而提供一种简单易行、应用广泛的提高DDR2带宽利用率的基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法。
[0004]本发明的技术解决方案是:一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特殊之处在于:该方法包括以下步骤:
[0005]I)将DDR2存储器的每个逻辑bank都划分为多个相等大小的数据缓存区,每个缓存区可存放发送视频数据中的一行视频数据;
[0006]2)每一行发送视频数据写入DDR2存储器时,按逻辑bank顺序轮换存放在数据缓冲区。
[0007]上述步骤2)中发送视频数据存入DDR2时以视频行为单位,一次写入一行;
[0008]上述FC-AV协议处理电路从DDR2中读取视频数据时以视频行为单位,一次读出一行,并以写入的顺序读取视频数据。
[0009]该方法还包括步骤3)通过读写指针来指示DDR2中存储的视频数据量。
[0010]上述步骤3)的具体步骤如下:
[0011]3.1)当向DDR2写入一行数据后,写指针加一,一帧视频数据全部写入DDR2后,写指针清零;
[0012]3.2)当从DDR2中读出一行数据后,读指针加一,一帧视频数据全部读出后,读指针清零;读写指针相等时,DDR2中数据为空;读写指针不等时,读取DDR2中的数据。
[0013]本发明提供的一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法通过发送视频数据以视频行为单位在DDR2存储器中以逻辑bank顺序轮换存储,使得向DDR2存储视频数据的写操作和从DDR2读取视频数据的读操作这两种操作在大部分时间里都是针对DDR2的不同逻辑bank进行,当对DDR2的读、写操作同时进行时,根据DDR2的页面管理原理,这时DDR2的带宽利用率非常高。
【附图说明】
:
[0014]图1为本发明基于FC-AV协议的发送视频电路结构图;
[0015]图2为本发明的发送视频数据在DDR2中的存储示意图。
【具体实施方式】
[0016]下面结合附图和实施例对本发明做进一步说明:
[0017]参见图1,本发明提供的一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,将发送视频数据以视频行为单位在DDR2存储器中以逻辑bank顺序轮换存储。其包括以下步骤:
[0018]I)将DDR2存储器的每个逻辑bank都划分为多个相等大小的数据缓存区,每个缓存区可存放发送视频数据中的一行视频数据;
[0019]2)每一行发送视频数据写入DDR2存储器时,按逻辑bank顺序轮换存放在数据缓冲区。
[0020]发送视频数据存入DDR2时以视频行为单位,一次写入一行;FC-AV协议处理电路从DDR2中读取视频数据时以视频行为单位,一次读出一行,并以写入的顺序读取视频数据。
[0021]3)通过读写指针来指示DDR2中存储的视频数据量;
[0022]3.1)当向DDR2写入一行数据后,写指针加一,一帧视频数据全部写入DDR2后,写指针清零;
[0023]3.2)当从DDR2中读出一行数据后,读指针加一,一帧视频数据全部读出后,读指针清零;读写指针相等时,DDR2中数据为空;读写指针不等时,才读取DDR2中的数据。
[0024]下面通过举例对本发明做进一步详细说明。
[0025]参见图2,以DDR2存储器有4个逻辑bank,要发送的视频其分辨率为1600x1200为例,该视频每行1600个像素,每个像素3个字节,即每行视频数据共有4800字节,为方便设计,每个数据缓冲区大小设计为8K字节,即每个数据缓冲区能存放一行视频数据,共划分1200个数据缓冲区,每个逻辑bank有300个数据缓冲区。
[0026]每一行发送视频数据写入DDR2存储器时,按逻辑bank顺序轮换存放在数据缓冲区,即发送视频数据的起始行第O行视频数据存储在逻辑bankO的第I个数据缓冲区中,第I行视频数据存储在逻辑bankl的第I个数据缓冲区中,第2行视频数据存储在逻辑bank2的第I个数据缓冲区中,第3行视频数据存储在逻辑bank3的第I个数据缓冲区中,第4行视频数据存储在逻辑bankO的第2个数据缓冲区中,第5行视频数据存储在逻辑bankl的第2个数据缓冲区中,第6行视频数据存储在逻辑bank2的第2个数据缓冲区中,第7行视频数据存储在逻辑bank3的第2个数据缓冲区中,依次类推,第1196行视频数据存储在逻辑bankO的第300个数据缓冲区中,第1197行视频数据存储在逻辑bankl的第300个数据缓冲区中,第1198行视频数据存储在逻辑bank2的第300个数据缓冲区中,最后一行即第1199行视频数据存储在逻辑bank3的第300个数据缓冲区中。
[0027]按照上述存储方法存放发送视频数据,发送视频数据写入DDR2中,和从DDR2中读取视频数据,都是针对DDR2的不同逻辑bank进行,根据DDR2的页面管理原理,每个逻辑bank在同一时间能且只能打开一个页面,即每个逻辑bank只能打开一行地址,因此对DDR2同时写入、读取视频数据时,不存在页面冲突,故DDR2的带宽利用率最高。
[0028]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细地说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特征在于:该方法包括以下步骤: 1)将DDR2存储器的每个逻辑bank都划分为多个相等大小的数据缓存区,每个缓存区可存放发送视频数据中的一行视频数据; 2)每一行发送视频数据写入DDR2存储器时,按逻辑bank顺序轮换存放在数据缓冲区。2.根据权利要求1所述的基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特征在于:所述步骤2)中发送视频数据存入DDR2时以视频行为单位,一次写入一行。3.根据权利要求2所述的基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特征在于:所述FC-AV协议处理电路从DDR2中读取视频数据时以视频行为单位,一次读出一行,并以写入的顺序读取视频数据。4.根据权利要求1或2或3所述的基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特征在于:该方法还包括步骤3)通过读写指针来指示DDR2中存储的视频数据量。5.根据权利要求4所述的基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法,其特征在于:所述步骤3)的具体步骤如下: .3.1)当向DDR2写入一行数据后,写指针加一,一帧视频数据全部写入DDR2后,写指针清零; .3.2)当从DDR2中读出一行数据后,读指针加一,一帧视频数据全部读出后,读指针清零;读写指针相等时,DDR2中数据为空;读写指针不等时,读取DDR2中的数据。
【专利摘要】本发明涉及一种基于FC-AV协议的提高DDR2带宽利用率的发送视频数据存储方法。该方法包括以下步骤:1)将DDR2存储器的每个逻辑bank都划分为多个相等大小的数据缓存区,每个缓存区可存放发送视频数据中的一行视频数据;2)每一行发送视频数据写入DDR2存储器时,按逻辑bank顺序轮换存放在数据缓冲区。本发明通过按视频行在DDR2中以逻辑bank的顺序轮换存储,解决了对DDR2同时读写数据时的页面冲突问题,最大程度的提高了DDR2的带宽利用率。
【IPC分类】H04N21/44, H04N21/433, H04L12/863, H04N5/76
【公开号】CN105577569
【申请号】CN201510930172
【发明人】刘承禹, 王婷, 卢俊, 刘浩, 张玲
【申请人】中国航空工业集团公司西安航空计算技术研究所
【公开日】2016年5月11日
【申请日】2015年12月11日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1