数据写入方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:19424830 阅读:15 留言:0更新日期:2018-11-14 10:30
本发明专利技术公开了一种数据写入方法,在写入数据的过程中,能够判断当前写入的数据帧是否为当前数据包中的最后一个数据帧,若该数据帧为最后一个数据帧,则直接跳转到下一个数据包的写入地址继续写入数据。可见,该方法能够预先确定下一个数据包的写入地址,因此不需要通过对每个数据包中的数据帧都进行计数,再根据计数结果决定下一个数据包的写入地址,因此大大降低了写入数据时针对数据帧丢失的解决方法的复杂度。此外,本发明专利技术还提供了一种数据写入装置、设备及计算机可读存储介质,其作用与上述方法的作用相对应。

【技术实现步骤摘要】
数据写入方法、装置、设备及计算机可读存储介质
本专利技术涉及计算机领域,特别涉及一种数据写入方法、装置、设备及计算机可读存储介质。
技术介绍
在高速数据采集系统中,源端采集到的的数据可以使用数据流的格式经由底层高速串行链路传输到存储端,采用流格式传输的大致过程是:建立链路连接,发送开始标志位,发送数据,发送结束标志位。而在通常情况下,存储端会将开始标志和结束标志之间的一段数据封装成一个数据包,然后以包为基本单位传输到后端的文件系统进行数据的存储,也就是说一个数据包包括多个数据帧。然而,存在的一种情况,就是在发送数据的过程中,由于链路环境改变或其他原因导致部分数据丢失,例如丢失一个或多个数据帧,从而导致数据包有缺失数据的现象。而在后端的数据存储过程一般是由多个数据包一起存储到某个文件中,文件的大小可以达到数兆字节或者更大,一旦其中的某个数据包出现缺失,将会导致整个文件后续的数据出现错位的情况,这种情况对数据正确性影响是极大的。因而为解决这种问题,在实现数据接收功能时,都要对接收的数据包进行检查,一旦出现部分数据缺失,就需要对该数据包进行填充,来保证后续数据存储到文件中相对位置的正确性。现有的流数据填充方式的一般是先在数据接收端缓存接收到的数据,一般采用FIFO(firstinfirstout)存储结构对数据进行缓存,在数据帧写入FIFO的同时针对每帧数据设置标志位,用于标识此帧数据是否是此包数据的最后一帧。然后从FIFO中读出数据,并对读出的数据帧数进行计数,一旦计数结果小于协议规定一个数据包中数据帧的个数,则表示出现了丢失数据的情况,就需要包的尾部进行数据的填充。但是,这种方法需要对每个数据帧设置标志,而且还要对每个数据包内的数据帧的个数进行统计,实现起来比较繁琐。可见,针对数据包中数据帧的缺失,如何提供一种较为简单的解决方法,是亟待本领域技术人员解决的问题。
技术实现思路
本专利技术的目的是提供一种数据写入方法、装置、设备及计算机可读存储介质,用以解决在写入数据时针对数据帧丢失的传统解决方法较为复杂的问题。为解决上述技术问题,本专利技术提供了一种数据写入方法,包括:在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧;若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据。其中,所述在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧包括:在写入数据的过程中,判断当前写入的数据帧是否为有效数据帧;若所述数据帧为有效数据帧,则判断所述数据帧是否为当前数据包中最后一个数据帧。其中,所述在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧包括:在向BRAM存储结构写入数据的过程中,判断是否接收到数据包结束信号。其中,在所述若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据之后,包括:在读取数据的过程中,判断当前读取的地址上是否不存在所述数据帧;若所述当前读取的地址上不存在所述数据帧,则将预设默认数据帧作为读取结果。本专利技术还提供了一种数据写入装置,包括:判断模块:用于在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧;跳转模块:用于若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据。其中,所述判断模块包括:第一判断单元:用于在写入数据的过程中,判断当前写入的数据帧是否为有效数据帧;第二判断单元:用于若所述数据帧为有效数据帧,则判断所述数据帧是否为当前数据包中最后一个数据帧。其中,所述判断模块具体用于:在向BRAM存储结构写入数据的过程中,判断是否接收到数据包结束信号。其中,所述装置还包括:当前地址判断模块:用于在读取数据的过程中,判断当前读取的地址上是否不存在所述数据帧;读取结果确定单元:用于若所述当前读取的地址上不存在所述数据帧,则将预设默认数据帧作为读取结果。此外,本专利技术还提供了一种数据写入设备,包括:存储器:用于存储计算机程序;处理器:用于执行所述计算机程序以实现如上所述的数据写入方法的步骤。最后,本专利技术还提供了一种计算机可读存储介质,所述计算机存储介质上保存有计算机程序,所述计算机程序被处理器执行时实现如上所述的一种数据写入方法的步骤。本专利技术所提供的一种数据写入方法,在写入数据的过程中,能够判断当前写入的数据帧是否为当前数据包中的最后一个数据帧,若该数据帧为最后一个数据帧,则直接跳转到下一个数据包的写入地址继续写入数据。可见,该方法能够预先确定下一个数据包的写入地址,因此不需要通过对每个数据包中的数据帧都进行计数,再根据计数结果决定下一个数据包的写入地址,因此大大降低了写入数据时针对数据帧丢失的解决方法的复杂度。此外,本专利技术还提供了一种数据写入装置、设备及计算机可读存储介质,其作用与上述方法的作用相对应,这里不再赘述。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种数据写入方法实施例的实现流程图;图2为本专利技术提供的基于BRAMWrapper模块的数据写入方法的整体实现框图;图3为本专利技术提供的一种数据写入装置的结构框图。具体实施方式本专利技术的核心是提供一种数据写入方法、装置、设备及计算机可读存储介质,有效降低了在写入数据时针对数据丢失的解决方法的复杂程度。为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。下面对本专利技术提供的数据写入方法实施例进行介绍,参见图1,该实施例包括:步骤S10:在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧。具体的,在写入数据的过程中,可以先判断当前写入的数据帧是否为有效数据帧,若所述数据帧为有效数据帧,再去判断所述数据帧是否为当前数据包中最后一个数据帧。需要说明的是,本实施例中判断当前写入的数据帧是否为当前数据包中的最后一个数据帧的依据,可以为在数据帧甚至是数据包之外的标识信息来判断。例如,在数据包与数据包之间设置标识信息,当接收到标识信息,就表示前一个数据包已经完全接受完毕。此外,这里的写入数据更多的是数据的缓存,比如,在接收数据的时候,可能先将数据缓存在某个模块中,当缓存到一定量,才去这个模块读取数据。步骤S11:若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据。值得注意的是,在本实施例中,会预设设置好下一个数据包的存储位置。举例来讲,对于在物理空间上连续存储的数据包,假设一个完整的数据包占用256个地址空间,而当前写入的数据包的起始地址为100F,那么下一个数据包的写入地址为100F+256,即1F0F。本实施例中,在写入数据的同时,还可以读取数据。在读取数据的过程中,可以判断当前读取的地本文档来自技高网
...

【技术保护点】
1.一种数据写入方法,其特征在于,包括:在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧;若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据。

【技术特征摘要】
1.一种数据写入方法,其特征在于,包括:在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧;若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据。2.如权利要求1所述的方法,其特征在于,所述在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧包括:在写入数据的过程中,判断当前写入的数据帧是否为有效数据帧;若所述数据帧为有效数据帧,则判断所述数据帧是否为当前数据包中最后一个数据帧。3.如权利要求1所述的方法,其特征在于,所述在写入数据的过程中,判断当前写入的数据帧是否为当前数据包中最后一个数据帧包括:在向BRAM存储结构写入数据的过程中,判断是否接收到数据包结束信号。4.如权利要求1-3任意一项所述的方法,其特征在于,在所述若所述数据帧为当前数据包中最后一个数据帧,则跳转到下一数据包的写入地址继续写入数据之后,包括:在读取数据的过程中,判断当前读取的地址上是否不存在所述数据帧;若所述当前读取的地址上不存在所述数据帧,则将预设默认数据帧作为读取结果。5.一种数据写入装置,其特征在于,包括:判断模块:用于在写入数据的过程中,判断当前写入的数据帧是否为当前数据包...

【专利技术属性】
技术研发人员:谢丽佳
申请(专利权)人:湖南博匠信息科技有限公司
类型:发明
国别省市:湖南,43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1