一种数据处理方法、控制器及可读存储介质与流程

文档序号:29045167发布日期:2022-02-25 21:49阅读:50来源:国知局
一种数据处理方法、控制器及可读存储介质与流程

1.本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、控制器及可读存储介质。


背景技术:

2.pool算法是神经网络计算中常用的算法,它以下采样的方式来降低输出特征向量的数量。
3.在相关技术中,神经网络中对pool算法的常见操作是通过移动计算窗口,不断地从计算窗口中读取数据进行max pool(计算窗口中数据的最大值)或average pool(计算窗口中数据的平均值)。但是,不同位置的计算窗口会大量使用重复的数据,这些重复的数据会反复从内存中读取,消耗了大量的操作时间,这样降低了pool操作的效率。
4.上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。


技术实现要素:

5.本发明的主要目的在于提供一种数据处理方法、控制器及可读存储介质,旨在解决pool操作需要反复从内存中读取重复的数据的技术问题,旨在提高pool操作的效率。
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.本发明实施例提出的一种数据处理方法、控制器及可读存储介质,所述数据处理方法应用于数据处理系统的控制器,首先获取数据矩阵目标行对应的行数据,并将获取到的所述行数据保存至所述行缓冲器中,其中,每一个行缓冲器保存一个所述目标行对应的行数据,所述目标行为预设计算窗口所在行中除最后一行的任意行;控制所述行缓冲器输出保存的行数据至所述计算模块;从所述数据矩阵中获取所述预设计算窗口所在行中的最后一行对应的行数据并输入所述计算模块。由于控制所述数据处理系统的行缓冲器进行数据缓存,以及用于控制所述行缓冲器输出数据至所述数据处理系统的计算模块中,从而达成了一次性读取数据的技术效果,与传统的pool操作相比,本发明实施例提出的数据处理方法不需要反复读取重复的数据,使得减少了大量的操作时间,提高了pool操作的效率。
附图说明
33.图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
34.图2为本发明数据处理方法的一实施例的流程示意图;
35.图3为本发明数据处理方法一实施例应用场景第一示意图;
36.图4为本发明数据处理方法一实施例应用场景第二示意图;
37.图5为本发明数据处理方法的另一实施例的流程示意图。
38.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
39.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
40.如图1所示,图1是本发明实施例方案涉及的硬件运行环境的控制器结构示意图。
41.如图1所示,该控制器可以包括:处理器1001,例如cpu,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
42.本领域技术人员可以理解,图1中示出的控制器结构并不构成对控制器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
43.在图1所示的终端中,处理器1001可以用于调用存储器1005中存储的数据处理程序,并执行以下操作:
44.获取数据矩阵目标行对应的行数据,并将获取到的所述行数据保存至所述行缓冲器中,其中,每一个行缓冲器保存一个所述目标行对应的行数据,所述目标行为预设计算窗口关联的数据行;
45.控制所述行缓冲器输出所述预设计算窗口对应的第一子数据至所述计算模块;
46.从所述数据矩阵中获取所述预设计算窗口对应的第二子数据,并将所述第二子数据输入所述计算模块,其中,所述预设计算窗口对应的数据包括所述第一子数据和所述第二子数据;
47.通过所述计算模块确定所述预设计算窗口内的数据对应的计算结果。
48.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
49.在所述预设计算窗口移动时,获取所述预设计算窗口水平方向移动的第一步长和竖直方向移动的第二步长。
50.根据所述第一步长、所述第二步长确定所述计算模块的计算范围;
51.根据所述计算范围更新确定待更新数据行,并根据所述待更新数据行对应的数据更新所述行缓冲器中保存的数据。
52.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
53.所述第一子数据为所述预设计算窗口对应行数据中的除最后一行的行数据,所述第二子数据为所述预设计算窗口对应行数据中的最后一行的行数据。
54.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下
操作:
55.控制第一行缓冲器保存数据矩阵的第一目标行数据;
56.判断第二目标行数据是否为所述预设计算窗口所在行中的最后一行的行数据,其中,所述第二目标行数据是所述第一目标行数据对应行的下一行对应的行数据。
57.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
58.若所述第二目标行数据不是所述最后一行的行数据,则控制所述第一行缓冲器保存所述第二目标行数据,同时所述第一行缓冲器向第二行缓冲器输出所述第一目标行数据,控制所述第二行缓冲器保存所述第一行缓冲器的输出的所述第一目标行数据;
59.若所述第二目标行数据是所述最后一行的行数据,则执行所述控制所述行缓冲器输出所述预设计算窗口对应的第一子数据至所述计算模块的步骤。
60.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
61.所述计算模块包括第一计算模块和第二计算模块,所述通过所述计算模块确定所述预设计算窗口内的数据对应的计算结果的步骤包括:
62.控制所述第一计算模块接收所述第一子数据和所述第二子数据,并按照第一预设计算模式处理,得到第一计算结果;
63.将所述第一计算结果输出至所述第二计算模块,并按照第二预设计算模式处理,得到第二计算结果。
64.进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
65.所述计算模块是对所述预设窗口内数据的最大值计算或者平均值计算。
66.pool算法是神经网络计算中常用的算法,它以下采样的方式来降低输出特征向量的数量。
67.在相关技术中,神经网络中对pool算法的常见操作是通过移动计算窗口,不断地从计算窗口中读取数据进行计算,但是不同位置的计算窗口会大量使用重复的数据,这些重复的数据会反复从内存中读取,消耗了大量的操作时间,这样降低了pool操作的效率。
68.为了减少操作时间,提高pool操作的效率,本发明实施例提供了一种数据处理方法、控制器和可读存储介质,其中所述方法的主要步骤包括:
69.获取数据矩阵目标行对应的行数据,并将获取到的所述行数据保存至所述行缓冲器中,其中,每一个行缓冲器保存一个所述目标行对应的行数据,所述目标行为预设计算窗口关联的数据行;
70.控制所述行缓冲器输出所述预设计算窗口对应的第一子数据至所述计算模块;
71.从所述数据矩阵中获取所述预设计算窗口对应的第二子数据,并将所述第二子数据输入所述计算模块,其中,所述预设计算窗口对应的数据包括所述第一子数据和所述第二子数据;
72.通过所述计算模块确定所述预设计算窗口内的数据对应的计算结果。
73.这样通过将数据矩阵的行数据保存至行缓冲器中,再通过行缓冲器输出至计算模块中,达成了一次性读取数据的效果,因此,基于上述实施例给出的方案,可以减少读取数
据的时间,提高pool操作的效率。
74.以下,通过具体示例性方案对本发明权利要求要求保护的内容,进行解释说明,以便本领域技术人员更好地理解本发明权利要求的保护范围。可以理解的是,以下示例性方案不对本发明的保护范围进行限定,仅用于解释本发明。
75.示例性地,参照图2,在本发明数据处理方法的一实施例中,所述数据处理方法包括以下步骤:
76.步骤s10、获取数据矩阵目标行对应的行数据,并将获取到的所述行数据保存至所述行缓冲器中,其中,每一个行缓冲器保存一个所述目标行对应的行数据,所述目标行为预设计算窗口关联的数据行;
77.本实施方案中,所述数据矩阵是由数个元素组成的m*n矩阵,这些元素可以是数字或者来自图片识别的特征向量,矩阵的每一行数据数量相等,每一列数据数量相等。
78.可选地,所述行缓冲器对应一个目标行,所以行缓冲器至少有一个,在保存对应行的行数据时,可以从左至右保存行数据,也可以从右至左保存行数据,或者均按列排序对应地保存行数据。
79.具体地,行缓冲器可以是事先例化了地若干个用于数据存储的line buffer,也可以是根据预设计算窗口直接例化,line buffer的数量和预设计算窗口的行数(kh)有关,line buffer的深度和数据矩阵的宽度(w)有关。line buffer用fifo实现,fifo是先进先出存储器,既先进去的数据先出来。fifo里面有数据可以读取,fifo没有存满能够写入数据。如此,可以保证需要先处理的计算窗口里的数据可以先保存先输出,以使可以先行处理。
80.可选地,预设计算窗口可以为系统默认的宽度和高度,也可以是在进行数据处理操作之前,用户根据需求通过用户接口对预设计算窗口的设置。
81.步骤s20、控制所述行缓冲器输出所述预设计算窗口对应的第一子数据至所述计算模块;
82.本实施方案中,数据处理系统的控制器控制所有行缓冲器输出保存的第一子数据至计算模块,每一个行缓冲器同时输出数据,以方便计算模块对预设计算窗口的数据能同时处理,提高计算模块接受数据的效率。
83.可选地,每一个行缓冲器输出的数据的先后顺序应该和保存时存入数据的先后顺序一致,以保证计算模块先处理的数据和预设的处理顺序一致。
84.步骤s30、从所述数据矩阵中获取所述预设计算窗口对应的第二子数据,并将所述第二子数据输入所述计算模块,其中,所述预设计算窗口对应的数据包括所述第一子数据和所述第二子数据;
85.本实施方案中,预设计算窗口对应的数据包括第一子数据和第二子数据,其中,第二子数据可以预设计算窗口对应的数据,可以为预设计算窗口对应的多个行数据,也可以为一个预设计算窗口对应的行数据,也可以不含有预设计算窗口对应的数据,如果不含有预设计算窗口对应的数据,则不需要从所述数据矩阵中获取所述预设计算窗口对应的第二子数据。
86.可选地,所述第一子数据为所述预设计算窗口所在行中的除最后一行的行数据,所述第二子数据为所述预设计算窗口所在行中的最后一行的行数据,如此,需要行缓存器的个数为kh-1,行缓存器的深度为w,一方面保证了数据传输时通道的流畅性,一方面减少
行缓存器的使用,节约资源。
87.具体地,控制第一行缓冲器保存数据矩阵的第一目标行数据;
88.判断第二目标行数据是否为所述预设计算窗口所在行中的最后一行的行数据,其中,所述第二目标行数据是所述第一目标行数据对应行的下一行对应的行数据。若所述第二目标行数据不是所述最后一行的行数据,则控制所述第一行缓冲器保存所述第二目标行数据,同时所述第一行缓冲器向第二行缓冲器输出所述第一目标行数据,控制所述第二行缓冲器保存所述第一行缓冲器的输出的所述第一目标行数据;若所述第二目标行数据是所述最后一行的行数据,则执行所述控制所述行缓冲器输出所述预设计算窗口对应的第一子数据计算模块的步骤。如此,本实施方式中计算模块接收的数据来自行缓冲器和数据矩阵,可以减少行数据输入行缓冲器的时间,节约资源。
89.步骤s40、通过所述计算模块确定所述预设计算窗口内的数据对应的计算结果。
90.本实施方案中,计算模块收到行缓冲器输出的第一子数据和从数据矩阵中获取的第二数据,并对其进行数据处理,从而获得计算结果。计算模块是对所述预设窗口内数据的最大值计算或者平均值计算,计算模块可以包括第一计算模块和第二计算模块,控制第一计算模块接收所述第一子数据和第二子数据,并按照预设计算模式处理,可以是对第一子数据的最大值计算或者累加值计算,得到第一计算结果;将第一计算结果输出至第二计算模块,并按照预设计算模式处理,可以是对第一计算结果的最大值计算或者平均值,得到第二计算结果。
91.可以理解的是,第一子数据和第二子数据同时输入至计算模块,相当于将预设窗口中对应的列数据输入至计算模块,并对列数据进行计算,所得计算结果个数由预设计算窗口的宽度决定。
92.可以理解的是,第二计算模块对第一计算模块的计算结果处理是按照不同位置上的预设计算窗口来分组计算,第二计算结果的数量与预设计算窗口移动的次数有关。
93.参照图3,在本实施例一应用场景中,存在宽度为8、高度为8的数据矩阵,预设计算窗口宽度为3、高度为3,水平方向的第一移动步长为1,竖直方向第二移动步长为1,参考图3,具体操作步骤为:获取数据矩阵目标行对应的行数据,即第一行、第二行;将获取到的所述行数据保存至所述行缓冲器中,控制第一行对应的行数据存储到line buffer0中,直到第一行数据存储完成,控制第一行数据存储到line buffer0中,直到第一行数据存储完成,同时控制第二行对应的行数据存储到line buffer0中;控制line buffer0,line buffer1同时向第一计算模块输出数据,同时输入第三行对应的行数据,输入三次后,初始位置的预设计算窗口的三列数据(实线框内数据),输出完毕,并对其进行最大值计算处理,得到第一列数据最大值16、第二列数据最大值17和第三列数据最大值18,这三个最大值即为初始位置的预设计算窗口对应地第一计算结果,将第一运算结果输入到第二计算模块当中,对第一计算结果进行最大值运算,得到第二计算结果18,即初始位置的预设计算窗口对应数据的最大值,输出第四次,得到第四列数据最大值19,第二列数据最大值17、第三列数据最大值18和第四列数据最大值19,即移动后预设计算窗口对应地第一计算结果,将其输入到第二计算模块当中,对第一计算结果进行最大值运算,得到第二计算结果19,即移动后预设计算窗口对应数据(虚线框内数据)的最大值,与相关技术相比,没有对第2列数据和第3列数据重复读取,pool操作效率明显提高。
94.本实施例中,通过获取数据矩阵目标行对应的行数据,并将获取到的行数据保存至行缓冲器中,其中,每一个行缓冲器保存一个目标行对应的行数据,目标行为预设计算窗口关联的数据行;再控制行缓冲器输出预设计算窗口对应的第一子数据至第一计算模块,从所述数据矩阵中获取预设计算窗口对应的第二子数据,并将第二子数据输入第一计算模块,其中,预设计算窗口对应的数据包括第一子数据和第二子数据,第一计算模块处理预设计算窗口的数据并输出计算结果,如此,对预设计算窗口中的数据处理时,由行缓存器直接输出和数据矩阵直接输入至计算模块,对新的数据直接处理,不需要反复读取重复的数据,可以直接处理输出的计算结果,使得减少了大量的操作时间。实现了pool操作不需要反复读取预设计算窗口对应的重复数据,减少了大量的操作时间,提高了pool操作的效率。
95.可选地,参照图5,基于上述任一实施例,在本发明数据处理方法的另一实施例中,所述数据处理方法包括:
96.步骤s50、在所述预设计算窗口移动时,获取所述预设计算窗口水平方向移动的第一步长和竖直方向移动的第二步长;
97.本实施方案中,预设计算窗口会在数据矩阵上水平方向移动或者竖直方向移动,且移动的步长不会改变,预设计算窗口在水平方向的移动与目标行的方向一致,竖直方向的移动在水平方向移动后发生,继而继续进行水平方向移动;预设窗口的水平方向移动方向决定了数据保存到行缓冲器里的先后顺序,以保证输出的计算结果可以与计算窗口对应。
98.可选地,第一步长和第二步长,可以为系统默认,也可以是在进行数据处理操作之前,用户根据需求通过用户接口对预设计算窗口移动的设置。
99.步骤s60、根据所述第一步长、所述第二步长确定所述计算模块的计算范围。
100.本实施方案中,预设计算窗口在数据矩阵上水平方向移动或者竖直方向移动,参考图3,预设计算窗口(虚线框内)先从a位置水平移动到b位置,然后移动到c位置,c位置相较于b位置,有竖直方向的移动,水平方向移动时会产生需要计算的新列数据,竖直方向移动时会产生需要计算的新行数据,第一步长决定了行缓冲器输出到计算模块以及数据矩阵输入到计算模块的数据。
101.可以理解的是,本实施例中提到的竖直方向移动是预设计算窗口相对于前一位置的竖直方向移动,而不是预设计算窗口的实际移动路线,第二步长是预设计算窗口相对于前一位置的竖直方向移动的距离。
102.通过第一步长决定计算范围时,还需获取预设计算窗口的宽度,然后比较步长与预设计算窗口宽度的大小;若所述步长大于所述预设计算窗口的宽度,所述计算范围为所述计算模块收到的与所述预设计算窗口移动时覆盖区域对应的数据,预设计算窗口每移动一次,便会跳过部分数据,计算模块对这些预设计算窗口覆盖不到的数据不做计算,可以减少计算模块处理数据的时间。若所述步长小于或等于所述预设计算窗口的宽度,所述计算范围为所述计算模块收到的与所述预设计算窗口移动时覆盖区域对应的数据,预设计算窗口移动时,其对应的数据全部被选取,均需对其计算,计算模块需要对全部数据进行计算处理。
103.本实施方案中,计算模块会预设计算窗口中对应的行数据进行计算,预设计算窗口在初始位置时,计算模块会生成该初始位置上对应的计算结果,预设计算窗口每进行一
次移动,预设计算窗口会对应新的数据,计算模块只需要对新的数据进行计算并得到新的计算结果,新的计算结果可以和预设计算窗口上一位置的计算结果结合,得到移动后预设计算窗口对应的计算结果。
104.步骤s70、根据所述计算范围更新确定待更新数据行,并根据所述待更新数据行对应的数据更新所述行缓冲器中保存的数据。
105.本实施方案中,预设计算窗口在数据矩阵上水平方向移动或者竖直方向移动,水平方向移动时会产生需要计算的新列数据,竖直方向移动时会产生需要计算的新行数据,第二步长决定输入到计算模块中的行数据的计算范围。
106.当预设计算窗口在竖直方向进行移动的时候,会产生新的计算范围,对应产生新的数据行,将所述计算范围的对应行与所述行缓冲器内的数据行进行对比,所述待更新数据行是未保存在所述行缓存器内的所述计算范围的对应行,从数据矩阵中获取所述更新数据行对应的行数据,并将所述更新数据行对应的行数据保存至所述行缓存器。如果移动后预设计算窗口对应的行数据中,存在行数据未存入行缓冲器,则需要对行缓冲器内的数据进行更新。获取所述计算范围需要行数据,判断行数据是否未存入所述行缓冲器的行数据,若未存入所述行缓冲器,从数据矩阵中获取行数据存入所述缓存器中,其中,每一个行缓冲器保存一个行数据。
107.可选地,因为每一个行缓冲器保存一个行数据,所以当行缓冲器每存入一个新的行数据的同时,行缓冲器保存的一个行数据将会流出,这个流出的行数据是在行缓冲器保存的行数据中最先存入的行数据,同步地,最先存入的行数据的下一行数据将会输入到最先存入的行数据对应的行缓冲器中,整个过程是一个数据流动的过程,只要有新的行数据存入行缓冲器,就会引起行缓冲器中数据的流动。
108.参照图3,在本实施例一应用场景中,存在宽度为8、高度为8的数据矩阵,预设计算窗口宽度为3、高度为3,水平方向的第一移动步长为1,竖直方向第二移动步长为1,参考图4,具体操作步骤为:预设窗口在数据矩阵上移动,移动方向为,由于预设窗口在数据矩阵上水平方向的移动,产生了新的计算范围,即需要计算的第四列数据,获取计算窗口水平方向移动的第一步长,确定了计算范围是第2列数据、第3列数据和第4列数据,由于第2列数据和第3列数据已经输入到计算模块中并得到结果,所以行缓冲器只需再同时输出一次数据至第一计算模块,得到第4列数据最大值19,将第2列数据、第3列和第4列的第一计算结果输入到第二计算模块,对第一计算结果进行最大值运算,得到第二计算结果19,即移动后预设计算窗口(虚线框内)对应数据的最大值。
109.在水平方向的移动完成后,预设计算窗口进行竖直方向的移动,参考图3,预设计算窗口从b位置移到c位置,对应地产生了新的计算范围,即需要计算的第四行数据,目前行缓冲器line buffer0保存的数据为第二行数据,行缓冲器line buffer1保存的数据为第一行数据,将第三行数据输入到line buffer0中,同步地,line buffer0的第二行数据输入到line buffer1中,line buffer1中原有的第一行数据流出,数据在行缓存器中流动,直到第三行数据输入完毕,第一行数据流出完毕。预设计算窗口再一次水平方向移动,移动方向与上一次水平方向移动方向相同,控制line buffer0,line buffer1同时向第一计算模块输出数据,同时输入第四行对应的行数据进出计算模块,进行新一轮计算。
110.本实施例中,预设计算窗口会按照预先设定的步长在数据矩阵上水平方向移动或
者竖直方向移动,在所述预设计算窗口移动时,获取所述预设计算窗口水平方向移动的第一步长和竖直方向移动的第二步长;根据所述第一步长、所述第二步长确定所述计算模块的计算范围;根据所述计算范围更新确定待更新数据行,并根据所述待更新数据行对应的数据更新所述行缓冲器中保存的数据,通过获取第一步长和第二步长确定计算范围,并对行缓冲器里的数据进行了更新,从而减少了不必要的数据读取过程,减少了数据处理的时间,提高了数据处理的效率。
111.此外,本发明实施例还提出一种数据处理系统的控制器,所述控制器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上述的数据处理方法的步骤。
112.此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上述的数据处理方法的步骤。
113.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
114.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
115.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
116.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1