A kind of data processing system, method and medium

文档序号:1756273 发布日期:2019-11-29 浏览:30次 中文

阅读说明:本技术 一种数据处理系统、方法及介质 (A kind of data processing system, method and medium ) 是由 董刚 赵雅倩 李仁刚 杨宏斌 刘海威 于 2019-08-16 设计创作,主要内容包括:本申请公开了一种数据处理系统、方法及介质,包括卷积运算模块,卷积运算模块包括第一寄存器组、第二寄存器组以及与第一寄存器组和第二寄存器组连接的运算器;第一寄存器组用于获取待处理数据中的本轮待卷积数据,将获取到的本轮待卷积数据传输至运算器,并且在运算器进行本轮卷积运算的过程中,如果待处理数据还未处理完毕,则获取待处理数据中的下一轮待卷积数据并传输至运算器;第二寄存器组用于获取卷积核数据,并将当前获取到的卷积核数据传输至运算器;运算器用于获取所述第一寄存器组传输的每轮待卷积数据,以及获取第二寄存器组传输的卷积核数据,并对获取到的每轮待卷积数据和卷积核数据分别进行卷积运算,以得到相应的卷积运算结果。(This application discloses a kind of data processing system, method and medium, including convolution algorithm module, convolution algorithm module includes the first register group, the second register group and the arithmetic unit connecting with the first register group and the second register group;The epicycle that first register group is used to obtain in pending data waits for convolved data, the epicycle that will acquire waits for that convolved data is transmitted to arithmetic unit, and during arithmetic unit carries out epicycle convolution algorithm, it is finished if pending data is also untreated, obtains the next round in pending data and wait for convolved data and be transmitted to arithmetic unit;The convolution Nuclear Data currently got is transmitted to arithmetic unit for obtaining convolution Nuclear Data by the second register group;Arithmetic unit is used to obtain every wheel of the first register group transmission to convolved data, and obtain the convolution Nuclear Data of the second register group transmission, and convolution algorithm is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got, to obtain corresponding convolution algorithm result.)

1. a kind of data processing system, which is characterized in that including convolution algorithm module, the convolution algorithm module is posted including first Storage group, the second register group and the arithmetic unit being connect with first register group and second register group;Wherein,

First register group, the epicycle for obtaining in pending data wait for convolved data, the epicycle that then will acquire It is transmitted to the arithmetic unit to convolved data, and during the arithmetic unit carries out epicycle convolution algorithm, if described Pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to the fortune Calculate device;

Second register group for obtaining convolution Nuclear Data, and the convolution Nuclear Data currently got is transmitted to described Arithmetic unit;

The arithmetic unit, for obtaining every wheel of the first register group transmission to convolved data, and acquisition described second The convolution Nuclear Data of register group transmission, and convolution fortune is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got It calculates, to obtain corresponding convolution algorithm result.

2. data processing system according to claim 1, which is characterized in that further include:

Control switch, for controlling the stream to convolved data and the convolution Nuclear Data in the convolution algorithm module To.

3. data processing system according to claim 2, which is characterized in that the control switch is described wait roll up for controlling Volume data flows between first register group or flows to the arithmetic unit from first register group.

4. data processing system according to claim 2, which is characterized in that the control switch is for controlling the convolution Nuclear Data flows between second register group or flows to the arithmetic unit from second register group.

5. data processing system according to claim 1, which is characterized in that further include:

Parameter configuration module is used for configuration parameter;Wherein, the parameter includes convolution kernel size, convolution kernel weight and control The switch state of switch;

Convolution algorithm modular structure adjust module, for adjusting the structure of the convolution algorithm module according to the parameter, with into Various sizes of convolution algorithm between the different convolutional layers of row.

6. data processing system according to any one of claims 1 to 5, which is characterized in that transported including multiple convolution Module is calculated, for the difference in pending data described in parallel processing to convolved data.

7. a kind of data processing method, which is characterized in that be applied to data processing system;Wherein, the data processing system packet Convolution algorithm module is included, the convolution algorithm module includes the first register group, the second register group and posts with described first The arithmetic unit that storage group is connected with second register group;Wherein, the data processing method includes:

The epicycle in pending data is obtained by first register group and waits for convolved data, and the epicycle that then will acquire waits for Convolved data is transmitted to the arithmetic unit, and during the arithmetic unit carries out epicycle convolution algorithm, if it is described to Data are also untreated finishes for processing, then obtain the next round in the pending data and wait for convolved data and be transmitted to the operation Device;

Convolution Nuclear Data is obtained by second register group, and the convolution Nuclear Data currently got is transmitted to the fortune Calculate device;

It is posted by every wheel that the arithmetic unit obtains the first register group transmission to convolved data, and acquisition described second The convolution Nuclear Data of storage group transmission, and convolution fortune is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got It calculates, to obtain corresponding convolution algorithm result.

8. a kind of computer readable storage medium, which is characterized in that for saving computer program, wherein the computer journey Data processing method as claimed in claim 7 is realized when sequence is executed by processor.

Technical field

This application involves technical field of data processing, in particular to a kind of data processing system, method and medium.

Background technique

Currently, the research in terms of deep learning is mainly with CNN (i.e. Convolutional Neural Network, convolution Neural network) it is research object.It is also not identical to the performance requirement of CNN due to handling the difference of scene, to develop a variety of Network structure.But the basic composition of CNN is fixed, respectively input layer, convolutional layer, active coating, pond layer and full connection Layer.Wherein input layer is input to testing data in CNN network.Convolutional layer is a partial zones in neuron and input layer Domain is connected, and each neuron calculates the zonule that oneself is connected with input layer and the inner product of oneself weight, that is, is rolled up One layer of product kernel operation.Convolutional layer occupies absolute main body in CNN network structure, and arithmetic speed is directly determined with efficiency The performance of CNN network.Therefore how efficiently, rapidly carry out high-volume convolutional calculation, especially two dimension, Three dimensional convolution It calculates, is a very important part in the CNN network architecture.

In the prior art, the data processing of convolutional layer, which is substantially to follow, first stores or first caches the structure calculated afterwards, Calculate that temporal expense is larger in this way, the speed of convolutional calculation is slower.

Summary of the invention

In view of this, the application's is designed to provide a kind of data processing system, method and medium, data can be allowed It stores and calculates while carrying out, to improve the arithmetic speed of convolution.Its concrete scheme is as follows:

In a first aspect, this application discloses a kind of data processing system, including convolution algorithm module, the convolution algorithm mould Block includes the first register group, the second register group and connect with first register group and second register group Arithmetic unit;Wherein,

First register group, the epicycle for obtaining in pending data wait for convolved data, then will acquire Epicycle waits for that convolved data is transmitted to the arithmetic unit, and during the arithmetic unit carries out epicycle convolution algorithm, if The pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to institute State arithmetic unit;

Second register group is transmitted to for obtaining convolution Nuclear Data, and by the convolution Nuclear Data currently got The arithmetic unit;

The arithmetic unit, for obtaining every wheel of first register group transmission to convolved data, and described in obtaining The convolution Nuclear Data of second register group transmission, and the every wheel got is rolled up respectively to convolved data and convolution Nuclear Data Product operation, to obtain corresponding convolution algorithm result.

Optionally, further includes:

Control switch, for control it is described to convolved data and the convolution Nuclear Data in the convolution algorithm module Flow direction.

Optionally, the control switch flowed between first register group to convolved data for controlling described or from First register group flows to the arithmetic unit.

Optionally, the control switch for control the convolution Nuclear Data flowed between second register group or from Second register group flows to the arithmetic unit.

Optionally, further includes:

Parameter configuration module is used for configuration parameter;Wherein, the parameter include convolution kernel size, convolution kernel weight and The switch state of control switch;

Convolution algorithm modular structure adjusts module, for adjusting the structure of the convolution algorithm module according to the parameter, To carry out the various sizes of convolution algorithm between different convolutional layers.

Optionally, the data processing system, including multiple convolution algorithm modules, for described in parallel processing wait locate The difference in data is managed to convolved data.

Second aspect, this application discloses a kind of data processing methods, are applied to data processing system;Wherein, the number Include convolution algorithm module according to processing system, the convolution algorithm module include the first register group, the second register group and The arithmetic unit being connect with first register group and second register group;Wherein, the data processing method includes:

The epicycle in pending data, which is obtained, by first register group waits for convolved data, the sheet that then will acquire Wheel is transmitted to the arithmetic unit to convolved data, and during the arithmetic unit carries out epicycle convolution algorithm, if institute It states that pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to described Arithmetic unit;

Convolution Nuclear Data is obtained by second register group, and the convolution Nuclear Data currently got is transmitted to institute State arithmetic unit;

Every wheel of first register group transmission is obtained to convolved data by the arithmetic unit, and obtains described the The convolution Nuclear Data of two register groups transmission, and convolution is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got Operation, to obtain corresponding convolution algorithm result.

The third aspect, this application discloses a kind of computer readable storage mediums, for saving computer program, wherein The computer program realizes data processing method above-mentioned when being executed by processor.

As it can be seen that data processing system disclosed in the present application, including convolution algorithm module, the convolution algorithm module includes the One register group, the second register group and the arithmetic unit being connect with first register group and second register group; Wherein, first register group, the epicycle for obtaining in pending data wait for convolved data, the epicycle that then will acquire It is transmitted to the arithmetic unit to convolved data, and during the arithmetic unit carries out epicycle convolution algorithm, if described Pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to the fortune Calculate device;Second register group for obtaining convolution Nuclear Data, and the convolution Nuclear Data currently got is transmitted to described Arithmetic unit;The arithmetic unit for obtaining every wheel of first register group transmission to convolved data, and obtains described the The convolution Nuclear Data of two register groups transmission, and convolution is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got Operation, to obtain corresponding convolution algorithm result.That is, passing through first during arithmetic unit carries out epicycle convolution algorithm The next round that register group obtains in the untreated pending data finished waits for convolved data and is transmitted to arithmetic unit, works as arithmetic unit The convolution algorithm of epicycle is exported as a result, continue next round convolution algorithm, in such manner, it is possible to allow data storage and calculate simultaneously It carries out, into convolution algorithm in the transmission process of data, makes data transmission period and convolution algorithm time consistency, to improve The speed of convolution algorithm.

Detailed description of the invention

In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this The embodiment of application for those of ordinary skill in the art without creative efforts, can also basis The attached drawing of offer obtains other attached drawings.

Fig. 1 is a kind of data processing system structural schematic diagram disclosed in the present application;

Fig. 2 is a kind of two-dimensional convolution computing module partial structure diagram disclosed in the present application;

Fig. 3 is a kind of Three dimensional convolution computing module partial structure diagram disclosed in the present application;

Fig. 4 is a kind of four-dimensional convolution algorithm modular structure schematic diagram disclosed in the present application;

Fig. 5 is a kind of five dimensions convolution algorithm modular structure schematic diagram disclosed in the present application;

Fig. 6 is a kind of specific Three dimensional convolution arithmetic operation flow diagram disclosed in the present application;

Fig. 7 is a kind of specific data processing system partial structure diagram disclosed in the present application.

Specific embodiment

Below in conjunction with the attached drawing in the embodiment of the present application, technical solutions in the embodiments of the present application carries out clear, complete Site preparation description, it is clear that described embodiments are only a part of embodiments of the present application, instead of all the embodiments.It is based on Embodiment in the application, it is obtained by those of ordinary skill in the art without making creative efforts every other Embodiment shall fall in the protection scope of this application.

In the prior art, the data processing of convolutional layer, which is substantially to follow, first stores or first caches the structure calculated afterwards, Calculate that temporal expense is larger in this way, the speed of convolutional calculation is slower.For this purpose, this application provides a kind of data processing systems System, can allow data storage and calculate at the same carry out, to improve the arithmetic speed of convolution.

Shown in Figure 1, the embodiment of the present application discloses a kind of data processing system, including convolution algorithm module, described Convolution algorithm module include the first register group 11, the second register group 12 and with first register group 11 and described the The arithmetic unit 13 of two register groups 12 connection;Wherein,

First register group 11, the epicycle for obtaining in pending data wait for convolved data, then will acquire Epicycle wait for that convolved data is transmitted to the arithmetic unit 13, and carry out the process of epicycle convolution algorithm in the arithmetic unit 13 In, it is finished if the pending data is also untreated, obtains the next round in the pending data and wait for convolved data simultaneously It is transmitted to the arithmetic unit 13;

Second register group 12 is transmitted for obtaining convolution Nuclear Data, and by the convolution Nuclear Data currently got To the arithmetic unit 13;

The arithmetic unit 13, for obtaining every wheel of the transmission of the first register group 11 to convolved data, and acquisition The convolution Nuclear Data that second register group 12 is transmitted, and the every wheel got is distinguished to convolved data and convolution Nuclear Data Convolution algorithm is carried out, to obtain corresponding convolution algorithm result.

As it can be seen that data processing system disclosed in the embodiment of the present application, including convolution algorithm module, the convolution algorithm module Including the first register group, the second register group and the fortune being connect with first register group and second register group Calculate device;Wherein, first register group, the epicycle for obtaining in pending data wait for convolved data, then will acquire Epicycle wait for that convolved data is transmitted to the arithmetic unit, and during the arithmetic unit carries out epicycle convolution algorithm, such as Pending data described in fruit is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to The arithmetic unit;Second register group is transmitted for obtaining convolution Nuclear Data, and by the convolution Nuclear Data currently got To the arithmetic unit;The arithmetic unit, for obtaining every wheel of the first register group transmission to convolved data, and acquisition The convolution Nuclear Data of second register group transmission, and to the every wheel got to convolved data and convolution Nuclear Data respectively into Row convolution algorithm, to obtain corresponding convolution algorithm result.That is, leading to during arithmetic unit carries out epicycle convolution algorithm The next round that the first register group obtains in the untreated pending data finished is crossed to wait for convolved data and be transmitted to arithmetic unit, when The convolution algorithm of arithmetic unit output epicycle as a result, continue next round convolution algorithm, in such manner, it is possible to allow data storage and meter It calculates while carrying out, into convolution algorithm in the transmission process of data, make data transmission period and convolution algorithm time consistency, thus Improve the speed of convolution algorithm.

For example, with reference to shown in Fig. 2, Fig. 2 is a kind of two-dimensional convolution computing module part-structure disclosed in the embodiment of the present application Schematic diagram.Specifically, first register group includes whole registers 1 in two-dimensional convolution computing module, described second is posted Storage group includes whole registers 2 in two-dimensional convolution computing module.

It is understood that the structure of Fig. 2 can be extended by the present embodiment, it is extended to three-dimensional and more high-dimensional Structure.

For example, with reference to shown in Fig. 3, Fig. 3 is a kind of Three dimensional convolution computing module part-structure disclosed in the embodiment of the present application Schematic diagram.Specifically, first register group includes whole registers 1 in Three dimensional convolution computing module, described second is posted Storage group includes whole registers 2 in Three dimensional convolution computing module.

Shown in Figure 4, Fig. 4 is a kind of four-dimensional convolution algorithm modular structure schematic diagram disclosed in the embodiment of the present application.Tool Body, it is extended based on Three dimensional convolution computing module, expands a column Three dimensional convolution computing module, i.e., 1 × 3 three-dimensional Convolution algorithm module constitutes four-dimensional convolution algorithm module.

Shown in Figure 5, Fig. 5 is that one kind five disclosed in the embodiment of the present application ties up convolution algorithm modular structure schematic diagram.Tool Body, it is extended based on Three dimensional convolution computing module, expands a face Three dimensional convolution computing module, i.e., 3 × 3 three-dimensional Convolution algorithm module constitutes five dimension convolution algorithm modules.

Further, the present embodiment can also include control switch, described to convolved data and the convolution for controlling Flow direction of the Nuclear Data in the convolution algorithm module.Specifically, the control switch described exists for controlling to convolved data It is flowed between first register group or flows to the arithmetic unit from first register group, also, control the convolution kernel Data flow between second register group or flow to the arithmetic unit from second register group.That is, the present embodiment Between the register of the first register group, between the register and arithmetic unit of the first register group, the second register group posts A large amount of control switch is arranged between storage and between the register and arithmetic unit of the second register group, for controlling data Flow direction, to meet the needs of different convolution algorithms.

The present embodiment can also include that parameter configuration module and convolution algorithm modular structure adjust module.Specifically, described Parameter configuration module is used for configuration parameter;Wherein, the parameter includes convolution kernel size, convolution kernel weight and control switch Switch state.The convolution algorithm modular structure adjusts module, for adjusting the convolution algorithm module according to the parameter Structure, to carry out the various sizes of convolution algorithm between different convolutional layers.

In a particular embodiment, the data processing system disclosed in this implementation can be with by the control switch The cumulative of several numerical value is formed under the control of parameter preset, waits for the convolution of convolved data with epicycle to obtain a wheel convolution kernel Operation result.

For example, with reference to shown in Fig. 6, Fig. 6 is a kind of specific Three dimensional convolution arithmetic operation stream disclosed in the embodiment of the present application Journey schematic diagram.By the first register group to convolved data input convolution algorithm module, convolution Nuclear Data is inputted into convolution algorithm Second register group of module.By taking convolution kernel size 3 × 3 × 3 as an example, each clock cycle inputs to the first register group simultaneously 3 × 3 input 3 × 3 convolution Nuclear Datas to convolved data and to the second register group.Then after three clock cycle, volume Arithmetic unit in product computing module carries out multiply-add operation, obtains the operation result of data in its adjunct register.And following Three clock cycle in, data in the register in convolution algorithm module are all replaced, the intermediate result in arithmetic unit The output below convolution algorithm module, and the operation of a new round is carried out to adjacent register internal data again, to realize Continuously Three dimensional convolution arithmetic operation.

In some specific embodiments, the pending data can be to be adopted by such as camera or sensor etc. Collect the obtained image data of equipment, is sent into the convolution algorithm module, convolution algorithm required for carrying out, according to obtained operation As a result it to image classification or identification, is mainly used in the fields such as recognition of face, automatic Pilot.Also, the convolution algorithm Module can be realized in the hardware device of CPU or FPGA, wherein the convolution algorithm module is handed over by register and arithmetic unit Fork is composed, and can be neatly realized to any number of data while is written and read using register, avoided out Now there is the case where fixed reading-writing port width and read-write sequence limit similar to RAM, IP in FPGA etc..

Shown in Figure 7, the embodiment of the present application discloses a kind of specific data processing system, including multiple convolution algorithms Module, the convolution algorithm module include the first register group 21, the second register group 22 and with first register group 21 connect 22 arithmetic unit 23 with second register group;Wherein,

First register group 21, the epicycle for obtaining in pending data wait for convolved data, then will acquire Epicycle wait for that convolved data is transmitted to the arithmetic unit 23, and carry out the process of epicycle convolution algorithm in the arithmetic unit 23 In, it is finished if the pending data is also untreated, obtains the next round in the pending data and wait for convolved data simultaneously It is transmitted to the arithmetic unit 23;

Second register group 22 is transmitted for obtaining convolution Nuclear Data, and by the convolution Nuclear Data currently got To the arithmetic unit 23;

The arithmetic unit 23, for obtaining every wheel of the transmission of the first register group 21 to convolved data, and acquisition The convolution Nuclear Data that second register group 22 is transmitted, and the every wheel got is distinguished to convolved data and convolution Nuclear Data Convolution algorithm is carried out, to obtain corresponding convolution algorithm result.

In a particular embodiment, multiple convolution algorithm modules of the present embodiment, for described in parallel processing to The difference in data is handled to convolved data.It is understood that in the present embodiment, the specific scale of the convolution algorithm module It is rule of thumb to summarize the exemplary value got, the convolution algorithm module can be carried out in the case where hardware resource abundance Arbitrary extension improves the degree of parallelism of data processing, accelerates the speed calculated.For example, using multiple Three dimensional convolution computing modules, together When calculate several Three dimensional convolutions.

The embodiment of the present application discloses a kind of data processing method, is applied to data processing system;Wherein, at the data Reason system includes convolution algorithm module, the convolution algorithm module include the first register group, the second register group and with institute State the arithmetic unit that the first register group is connected with second register group;Wherein, the data processing method includes:

The epicycle in pending data, which is obtained, by first register group waits for convolved data, the sheet that then will acquire Wheel is transmitted to the arithmetic unit to convolved data, and during the arithmetic unit carries out epicycle convolution algorithm, if institute It states that pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to described Arithmetic unit;

Convolution Nuclear Data is obtained by second register group, and the convolution Nuclear Data currently got is transmitted to institute State arithmetic unit;

Every wheel of first register group transmission is obtained to convolved data by the arithmetic unit, and obtains described the The convolution Nuclear Data of two register groups transmission, and convolution is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got Operation, to obtain corresponding convolution algorithm result.

As it can be seen that the embodiment of the present application public data processing method, is applied to data processing system, wherein at the data Reason system includes convolution algorithm module, the convolution algorithm module include the first register group, the second register group and with institute State the arithmetic unit that the first register group is connected with second register group;Wherein, the data processing method includes: to pass through institute It states the epicycle that the first register group obtains in pending data and waits for convolved data, the epicycle that then will acquire waits for that convolved data passes The arithmetic unit is transported to, and during the arithmetic unit carries out epicycle convolution algorithm, if the pending data is also It is untreated to finish, then it obtains the next round in the pending data and waits for convolved data and be transmitted to the arithmetic unit;Pass through institute It states the second register group and obtains convolution Nuclear Data, and the convolution Nuclear Data currently got is transmitted to the arithmetic unit;Pass through The arithmetic unit obtains every wheel of the first register group transmission to convolved data, and obtains second register group and pass Defeated convolution Nuclear Data, and convolution algorithm is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got, to obtain Corresponding convolution algorithm result.That is, being obtained during arithmetic unit carries out epicycle convolution algorithm by the first register group Next round in the untreated pending data finished waits for convolved data and is transmitted to arithmetic unit, when the volume of arithmetic unit output epicycle Product operation result, continue next round convolution algorithm, in such manner, it is possible to allow data storage and calculate at the same carry out, in data Transmission process in into convolution algorithm, make data transmission period and convolution algorithm time consistency, to improve convolution algorithm Speed.

In a particular embodiment, the present embodiment can also be controlled described to convolved data and described using control switch Flow direction of the convolution Nuclear Data in the convolution algorithm module.Specifically, can control it is described to convolved data described first It is flowed between register group or flows to the arithmetic unit from first register group, control the convolution Nuclear Data described second It is flowed between register group or flows to the arithmetic unit from second register group.

Specifically, the present embodiment can be with configuration parameter;Wherein, the parameter includes convolution kernel size, convolution kernel weight And the switch state of control switch, and the structure of the convolution algorithm module is adjusted according to the parameter, to carry out different volumes Various sizes of convolution algorithm between lamination.

Further, the present embodiment can use multiple convolution algorithm modular concurrents and handle in the pending data Difference to convolved data.

This implementation embodiment discloses a kind of computer readable storage medium, for saving computer program, wherein described Following data processing method is realized when computer program is executed by processor, and is applied to data processing system;Wherein, the data Processing system includes convolution algorithm module, the convolution algorithm module include the first register group, the second register group and with The arithmetic unit that first register group is connected with second register group;Wherein, the data processing method includes:

The epicycle in pending data, which is obtained, by first register group waits for convolved data, the sheet that then will acquire Wheel is transmitted to the arithmetic unit to convolved data, and during the arithmetic unit carries out epicycle convolution algorithm, if institute It states that pending data is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to described Arithmetic unit;

Convolution Nuclear Data is obtained by second register group, and the convolution Nuclear Data currently got is transmitted to institute State arithmetic unit;

Every wheel of first register group transmission is obtained to convolved data by the arithmetic unit, and obtains described the The convolution Nuclear Data of two register groups transmission, and convolution is carried out respectively to convolved data and convolution Nuclear Data to the every wheel got Operation, to obtain corresponding convolution algorithm result.

As it can be seen that data processing system disclosed in the embodiment of the present application, including convolution algorithm module, the convolution algorithm module Including the first register group, the second register group and the fortune being connect with first register group and second register group Calculate device;Wherein, first register group, the epicycle for obtaining in pending data wait for convolved data, then will acquire Epicycle wait for that convolved data is transmitted to the arithmetic unit, and during the arithmetic unit carries out epicycle convolution algorithm, such as Pending data described in fruit is also untreated to be finished, then obtains the next round in the pending data and wait for convolved data and be transmitted to The arithmetic unit;Second register group is transmitted for obtaining convolution Nuclear Data, and by the convolution Nuclear Data currently got To the arithmetic unit;The arithmetic unit, for obtaining every wheel of the first register group transmission to convolved data, and acquisition The convolution Nuclear Data of second register group transmission, and to the every wheel got to convolved data and convolution Nuclear Data respectively into Row convolution algorithm, to obtain corresponding convolution algorithm result.That is, leading to during arithmetic unit carries out epicycle convolution algorithm The next round that the first register group obtains in the untreated pending data finished is crossed to wait for convolved data and be transmitted to arithmetic unit, when The convolution algorithm of arithmetic unit output epicycle as a result, continue next round convolution algorithm, in such manner, it is possible to allow data storage and meter It calculates while carrying out, into convolution algorithm in the transmission process of data, make data transmission period and convolution algorithm time consistency, thus Improve the speed of convolution algorithm.

In the present embodiment, when the computer subprogram saved in the computer readable storage medium is executed by processor, Following steps can be implemented: control is described to be flowed between first register group to convolved data or posts from described first Storage group flows to the arithmetic unit

In the present embodiment, when the computer subprogram saved in the computer readable storage medium is executed by processor, Following steps can be implemented: control the convolution Nuclear Data and flow between second register group or posted from described second Storage group flows to the arithmetic unit.

In the present embodiment, when the computer subprogram saved in the computer readable storage medium is executed by processor, Following steps can be implemented: configuration parameter;Wherein, the parameter includes convolution kernel size, convolution kernel weight and control The switch state of switch.

In the present embodiment, when the computer subprogram saved in the computer readable storage medium is executed by processor, Following steps can be implemented: adjust the structure of the convolution algorithm module according to the parameter, to carry out different convolutional layers Between various sizes of convolution algorithm.

Each embodiment in this specification is described in a progressive manner, the highlights of each of the examples are with it is other The difference of embodiment, same or similar part may refer to each other between each embodiment.For being filled disclosed in embodiment For setting, since it is corresponded to the methods disclosed in the examples, so being described relatively simple, related place is referring to method part Explanation.

The step of method described in conjunction with the examples disclosed in this document or algorithm, can directly be held with hardware, processor The combination of capable software module or the two is implemented.Software module can be placed in random access memory (RAM), memory, read-only deposit Reservoir (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or technology In any other form of storage medium well known in field.

A kind of data processing system, method and medium provided herein are described in detail above, herein Applying specific case, the principle and implementation of this application are described, and the explanation of above example is only intended to help Understand the present processes and its core concept;At the same time, for those skilled in the art, according to the thought of the application, There will be changes in the specific implementation manner and application range, in conclusion the content of the present specification should not be construed as to this The limitation of application.

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:深度学习网络应用分布自组装指令处理器核、处理器、电路和处理方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!