Data processing method, device, computer equipment and storage medium
Technical field
The present invention relates to wireless communication field more particularly to a kind of data processing method, device, computer equipment and storages
Medium.
Background technique
In wireless communication procedure, base station end first converts transmission block, then the data packet after conversion is transmitted, whole
A complex disposal process degree is higher.And Radio Access Network has the demand of high-throughput, it means that there is a large amount of data packet
It transmits, these data packets will also be converted before being transmitted, and therefore, with the increase of data packet number, treatment process can go out
Existing bottleneck.
In the prior art, the method that industry uses multiprocessor to cooperate with is to complete the processing to transmission block, to overcome place
Manage bottleneck.However, the method for multiprocessor collaboration only improves the data packet number that base station can be handled, but still need first one
A processor converts transmission block, carries out this complicated process, then after waiting transmission block conversion by another processor,
The transmission block is handled, time overhead is larger.
Therefore, the process time expense for handling data between processor in the prior art larger be one and urgently to be resolved ask
Topic.
Summary of the invention
The embodiment of the present application provides a kind of data processing method, device, computer equipment and storage medium, solves existing
The problem for having the process time expense for handling data in technology between processor larger.
The embodiment of the present invention provides a kind of data processing method, this method comprises:
By first processor, according to the first protocol stack function set, by the first kind data packet processing of input for extremely
A few data block, and generate at least one descriptor;At least one described data block is for being spliced into Second Type data packet;
Each descriptor is corresponding with a data block at least one described data block at least one described descriptor, the description
Symbol includes the initial address and length of the data block;
By second processor, according to the length at least one described descriptor in each descriptor, from the descriptor
In initial address, copy the corresponding data block of the descriptor, and will copy in the data block and at least one described data block
The data block of shellfish is spliced, and the Second Type data packet is formed;
The Second Type data packet is handled according to second protocol stack function set by the second processor.
Optionally, if the second processor uses address align from first processor copy data block process
Copy mode, then the descriptor of the first data block further include first data block first address and tail address corresponding to data
Byte enable instruction, the byte enable instruction is used to indicate the invalid data in first data block;Institute
Stating the first data block is any data block at least one described data block;
The second processor is by after first data block copy, according to the byte enable instruction, institute
It states invalid data in the first data block to reject, and first data block is eliminated to the data block after invalid data and institute
It states copied data block at least one data block to be spliced, forms the Second Type data packet.
Optionally, the mode for copying the corresponding data block of the descriptor is direct memory access DMA mode.
Optionally, corresponding protocol layer in the first protocol stack function set and the second protocol stack function set
It includes at least one of the following: physical PHY layer, multiple access access channel MAC layer, control rlc layer and packet data convergence without link layer
Face GTP-U layers of PDCP layers of agreement, SDAP layers of service data adapting protocol and general packet radio service technology Tunneling Protocol-User.
It optionally, will at least one described data according to the precedence of each descriptor at least one described descriptor
Block is spliced into one Second Type data packet.
In the embodiment of the present invention, by first processor, according to the first protocol stack function set, by the first kind of input
Data packet processing be include the Second Type data packet of at least one data block, and for each data block generate one include the number
According to the initial address of block and the descriptor of length.According to the length and initial address in each descriptor, without first at first
Reason device forms the Second Type data packet that can directly handle of second processor, Second Type data packet by second processor by pair
Each data block copy and the mode that the data block after copy is spliced with copied data block is completed by the way, when reducing
Between expense.
The embodiment of the present invention provides a kind of computer equipment, including memory, first processor and second processor, described
Memory is stored with computer program, and the first processor and second processor realize this hair when executing the computer program
A kind of data processing method and optional method that bright embodiment provides.
The embodiment of the present invention provides a kind of computer readable storage medium, is stored thereon with computer program, when the meter
Calculation machine program is performed, and a kind of data processing method and optional method such as provided in an embodiment of the present invention are performed.
The embodiment of the present invention provides a kind of data processing equipment, which includes:
First processing module, for passing through first processor, according to the first protocol stack function set, by the first kind of input
The processing of type data packet is at least one data block, and generates at least one descriptor;At least one described data block is for splicing
At Second Type data packet;Each descriptor and one at least one described data block at least one described descriptor
Data block is corresponding, which includes the initial address and length of the data block;
Data transmission module, for by second processor, according at least one described descriptor in each descriptor
Length, the initial address from the descriptor copies the corresponding data block of the descriptor, and by the data block and it is described at least
Copied data block splicing, forms the Second Type data packet in one data block;
Second processing module, for by the second processor, according to second protocol stack function set, processing described the
Two type data packets.
Optionally, if the second processor uses address align from first processor copy data block process
Copy mode, then the descriptor of the first data block further include first data block first address and tail address corresponding to data
Byte enable instruction, the byte enable instruction is used to indicate the invalid data in first data block;Institute
Stating the first data block is any data block at least one described data block;
The data transmission module is also used to the second processor by after first data block copy, according to institute
Byte enable instruction is stated, the invalid data in first data block is rejected, and first data block is eliminated
Data block after invalid data is spliced with copied data block at least one described data block, forms described second
Type data packets.
Optionally, the data transmission module, for it is corresponding to copy the descriptor with direct memory access DMA mode
Data block.
Optionally, corresponding protocol layer in the first protocol stack function set and the second protocol stack function set
It includes at least one of the following: physical PHY layer, multiple access access channel MAC layer, control rlc layer and packet data convergence without link layer
Face GTP-U layers of PDCP layers of agreement, SDAP layers of service data adapting protocol and general packet radio service technology Tunneling Protocol-User.
Optionally, the data transmission module, successive time for each descriptor at least one descriptor according to
At least one described data block is spliced into one Second Type data packet by sequence.
Detailed description of the invention
Fig. 1 is the corresponding schematic diagram for handling transmission block in the prior art of the embodiment of the present invention;
Fig. 2 is the corresponding flow chart of steps of a kind of data processing method that the embodiment of the present invention proposes;
Fig. 3 is the corresponding multiprocessor interaction schematic diagram of a kind of data processing method that the embodiment of the present invention proposes;
Fig. 4 is that a kind of corresponding first kind data packet processing of data processing method provided in an embodiment of the present invention is at least
The schematic diagram of one data block;
Fig. 5 is that a kind of at least one corresponding data block of data processing method provided in an embodiment of the present invention is spliced into second
The schematic diagram of type data packets;
Fig. 6 is a kind of schematic diagram of the corresponding removal redundant data of data processing method provided in an embodiment of the present invention;
Fig. 7 is a kind of corresponding structural schematic diagram of data processing equipment provided in an embodiment of the present invention.
Specific embodiment
In order to better understand the above technical scheme, below in conjunction with Figure of description and specific embodiment to above-mentioned
Technical solution is described in detail, it should be understood that the specific features in the embodiment of the present application and embodiment are to the application skill
The detailed description of art scheme, rather than the restriction to technical scheme, in the absence of conflict, the embodiment of the present application
And the technical characteristic in embodiment can be combined with each other.
As Internet application flourishes, demand of the people to flow is growing day by day, and wireless communication is accessed as flow
The most universal mode has obtained lasting evolution development, the evolution including WiMAX, the evolution of mobile broadband, to prop up
Hold efficient flow access.But regardless of being mobile broadband or WiMAX, main function is all that upstream bandwidth is converted to
Wireless access bandwidth efficiently to support the access of mobile terminal, and then allows the deployable various Internet applications of terminal.Channel radio
During letter, base station end first converts transmission block, then the data packet after conversion is transmitted, entire complex disposal process
It spends higher.And Radio Access Network has the demand of high-throughput, it means that there is a large amount of data packet to transmit, these data
Packet will also be converted before being transmitted, and therefore, with the increase of data packet number, treatment process will appear bottleneck.
As shown in Figure 1, for the corresponding schematic diagram for handling transmission block in the prior art of the embodiment of the present invention.
It is Internet protocol (Internet Protocol, IP) data packet, side of eating dishes without rice or wine that base station, which returns data format used in side,
Data format used is that multiple access accesses channel (Multiple Access Channel, MAC) data packet and protocol Data Unit
(Protocol Data Unit, PDU) data packet.Therefore, in base station end, need to do packet conversion, the transition period, which can extract, to be belonged to
The data packet of same user equipment (User Equipment, UE) passes through general packet radio service technology tunnel at S1 layers first
Road agreement (General Packet Radio Service Tunnelling Protocol, GTP) is the GTP PDUs received
Header information GTP Hrd is removed, data packet is converted into Packet Data Convergence Protocol (Packet Data Convergence
Protocol, PDCP) service data unit (Service Data Unit, SDU).Then increase the head letter of layer toward IP data packet
It ceases PDCP Hrd and forms PDCP PDU, the SDU as radio link layer control protocol (Radio Link Control, RLC) layer;
Then according to air-interface scheduling resource size, PDCP data packet is cut, then selects several PDCP data packets, including
In the presence of the PDCP data packet cut, be stitched together the head information RLC Hrd added again, forms RLC PDU, connects as multiple access
Enter the SDU of channel (Multiple Access Channel, MAC) layer, then increases MAC layer head information MAC toward RLC data packet
Hrd and filling content Padding, forms MAC PDU, which is passed to (Physical, PHY) physical layer as transmission block,
To complete IP packet and packet format conversion of eating dishes without rice or wine, to send and receive signals in wireless side, entire complex disposal process degree is very
It is high.And the high demand of handling up of Radio Access Network means have a large amount of data packet to transmit, this certainly will lead to packet conversion process
Load increases, and brings challenges directly to the processing capacity of base station.
In the prior art, the method that industry uses multiprocessor to cooperate with is to complete the processing to transmission block, to overcome place
Manage bottleneck.However, the method for multiprocessor collaboration only improves the data packet number that base station can be handled, but still need first one
A processor converts transmission block, carries out this complicated process, then after waiting transmission block conversion by another processor,
The transmission block is handled, time overhead is larger.
Therefore, the process time expense for handling data between processor in the prior art larger be one and urgently to be resolved ask
Topic.
As shown in Fig. 2, the corresponding flow chart of steps of a kind of data processing method proposed for the embodiment of the present invention.
Step 201: by first processor, according to the first protocol stack function set, by the first kind data packet of input
Processing is Second Type data packet, and generates at least one descriptor.
Step 202: being retouched according to the length in descriptor each at least one descriptor from this by second processor
The initial address in symbol is stated, copies the corresponding data block of the descriptor, and will copy in the data block and at least one data block
The data block of shellfish is spliced, and the Second Type data packet is formed.
Step 203: the Second Type number is handled according to second protocol stack function set by the second processor
According to.
In step 201~step 203, corresponding association in the first protocol stack function set and second protocol stack function set
View layer includes at least one of the following: physical PHY layer, multiple access access channel MAC layer, controls rlc layer and packet data without link layer
It is PDCP layers of convergence protocol, service data adapting protocol (SDAP, Service Data Adaptation Protocol) layer, general
It is grouped wireless service technology Tunneling Protocol-User face (GTP-U, GRPS Tunnelling Protocol-User Plane) layer.
It should be noted that corresponding protocol layer is only with above-mentioned association in the first protocol stack function set and second protocol stack function set
Discuss layer citing, however it is not limited to above-mentioned protocol layer.It is the embodiment of the present invention that step 201~203, Fig. 3, which is described in detail, below with reference to Fig. 3
A kind of corresponding multiprocessor interaction schematic diagram of the data processing method proposed.
In step 201, the first kind data packet of input first processor 301 is the untreated initial transmission block in base station,
Including one or more data blocks.What first kind data packet and Second Type data packet were stored in first processor first deposits
In reservoir 3011, need to obtain first kind data packet from first memory 3011.Specifically by the first protocol stack function Ji Chu
Reason module 3012 is handled first kind data packet for Second Type data packet according to the first protocol stack function collection.Second Type
Data packet includes at least a data block;Each descriptor and one at least one data block at least one descriptor
Data block is corresponding, which includes the initial address and length of the data block, at least one descriptor is distributed across one and retouches
It states in symbol list, is specifically executed by descriptor configuration module 3013.A kind of optional embodiment is to be retouched according at least one
The initial address for stating each descriptor in symbol, determines the arrangement order in descriptor list between each descriptor.By the first of input
Type data packets processing is the concrete mode of Second Type data packet are as follows: (1) if the data block needs of first kind data packet are gone
Except information such as heads, the initial address and length for recording the data block are only generated;(2) if the data block of first kind data packet needs
Corresponding header information of each protocol layer in the first protocol stack function set etc. is added, directly by the corresponding data of the protocol layer
The tail portion for first kind data packet that block is added to that treated, and record the initial address and length of the data block.
It should be noted that although at least one data block contains the corresponding data block of each protocol layer, but can't
It is directly handled by second processor 302, the sequence of each data block does not adjust also, therefore is being transferred to second processor 302
Second memory 3021 during, it is also necessary to each data at least one data block of Second Type data packet to be formed
Block is spliced.
In step 202, since each descriptor includes the initial address of corresponding data block at least one descriptor
And length, second processor 302 are copied and are spliced to data block according to each descriptor.Wherein, the descriptor pair is copied
A kind of optional way for the data block answered is direct memory access (Direct Memory Access, DMA) mode.
Specifically, second processor 302 gets descriptor list by descriptor receiving module 3023 first, and according to
The sequence of each data block in the Second Type data packet that second processor 302 can be handled directly, by data copy control module
3022 are successively copied and are spliced to each data block.It is already described in step 201, it is respectively retouched according to according at least one descriptor
The initial address for stating symbol determines the arrangement order in descriptor list between each descriptor.The directly basis of second processor 302 should
Arrangement order at least a data block will be spliced into Second Type data packet.Specifically, second processor 302 is described from one
The initial address of symbol starts to copy, and until the length until copying data reaches the data length recorded in descriptor, and will copy
This data block of shellfish is directly appended to copied data block by arrangement order.
If the first data block uses alignment of data mode storing data, a kind of optional embodiment of the step is, the
The descriptor of one data block further include the first data block first address and tail address corresponding to data the enabled instruction letter of byte
Breath, byte enable instruction are used to indicate the invalid data in the first data block;First data block is at least one data block
Middle any data block;Second processor is by after the first data block copy, according to byte enable instruction, the first data block
In invalid data reject, and the first data block eliminated in data block and at least one data block after invalid data
The data block of copy is spliced, and Second Type data packet is formed.
In step 203, second processor 302 will at least data block splicing after, being formed directly to be handled
Second Type data packet.Second protocol stack function collection processing module 3024 in second protocol stack function set further according to being related to
Each agreement layer function, handles Second Type data packet.
For one of step 201~step 203 data processing method and optional embodiment, the embodiment of the present invention is mentioned
For a kind of computer equipment, including memory, first processor and second processor, it is stored with computer program in memory,
The first processor and second processor are used to realize step 201~step 203 by executing the computer program.
For one of step 201~step 203 data processing method and optional embodiment, the embodiment of the present invention is mentioned
For a kind of computer readable storage medium, it is stored thereon with computer program, which, which is performed, realizes step 201
~step 203.
A kind of specific embodiment of data processing method is described with specific embodiment below:
As shown in figure 4, being at a kind of corresponding first kind data packet of data processing method provided in an embodiment of the present invention
Reason is the schematic diagram of at least one data block.
The memory space that first processor distribution storage size is 64MB is used as the reception caching of IP data packet, base
Address is BaseAddrForIPData;And it distributes the memory allocation that storage size is 8MB and is used as the slow of information
It deposits, base address is denoted as BaseAddrForHrd.Transmission Time Interval corresponding to the T0 moment, by receive three IP data
Packet is buffered in the memory space of BaseAddrForIPData direction.At least one data block is GTP1 Hdr to idle sub-block
Transmission block.
This Transmission Time Interval, the resource size that Resource Scheduler is scheduled to user 1 can just load 2.5 IP data
Packet, therefore, first processor is first according to data packet transformation processing step, by GTP1 Hdr, GTP2 Hdr, GTP3 Hdr and free time
After sub-block removal, PDCP Hrd first is added to the load of three IP data packets, RLC Hrd is then added again, finally adds MAC
Hrd and Padding, thereby determines that, current transmission time interval, and Second Type data packet is made of 9 data blocks, i.e., one
MAC Hrd, RLC Hrd, three PDCP Hrd, three IP load, a Padding.Therefore, processor 1 needs to form
Descriptor list including 9 descriptors, each descriptor respectively correspond the starting point of a data block in above-mentioned 9 data blocks
Location and data length, it is contemplated that the forming process of entire transmission block, orderliness arranges between different sub-blocks, therefore, descriptor list
The arrangement of middle descriptor need to be consistent with the arrangement order of data block each in transmission block, ultimately forms descriptor list, each description
Symbol includes the initial address and length of corresponding data block, i.e. { startAi, Leni } in Fig. 4, i=0, and 1 ..., 8, it is sent to the
Two processors.
As shown in figure 5, being spelled for a kind of at least one corresponding data block of data processing method provided in an embodiment of the present invention
It is connected in the schematic diagram of Second Type data packet.
After second processor receives descriptor list, each descriptor is taken out one by one, the starting being directed toward according to descriptor
Address and data length from the first memory of first processor copy data to the second memory of second processor, complete
At the data splicing of a transmission block, spliced storage form is a complete transmission block as shown in Figure 5, i.e. Second Type
Data packet.
Second processor then triggers the fortune of second protocol layer function set after the copy for completing Second Type data packet
It calculates, is finally completed the processing of a transmission block.It should be noted that being copied if first processor carries out data from second processor
The process of shellfish, can only according to certain bit wide be aligned be copied (such as 32 bit aligneds), and the storage of data block data be by
It is aligned (such as 8 bit aligneds) stored according to another bit wide, then data block data copy procedure is carried out based on descriptor
The head and the tail of each data block can be caused the byte data of some redundancies occur due to being copied according to 32 bit aligneds, that is, schemed
Blank lattice in 6, eventually leads to after the data copy of different data block or can not stringent Coutinuous store.
Therefore, it is necessary to increase the operation for rejecting the invalid data being mingled between data block in data copy control module,
After guaranteeing data copy with this, stringent Coutinuous store between the data block in second memory.Specifically, Second Type in Fig. 6
Data packet and each data block all store from right to left.For example, 0 first effective byte data of data block are
D0B0, therefore data block 0 is stored to Second Type data packet directly since D0B0 and is similarly also skipped in data block 0
Remaining redundant data.After a data block end of transmission, next data block proposes redundant data still according to aforesaid way,
Finally obtain the Second Type data packet of a stringent Coutinuous store.
In the prior art, first processor need disperse in first processor memory IP data sub-block, head Information Number
It is spliced into one shown in fig. 5 complete Second Type data packet according to sub-block, then this complete transmission block is sent to second
Processor, entire treatment process cause at first processor since first processor needs to complete the splicing of mass data packet
Reason is time-consuming to be increased, the final process performance for influencing whole system.And the solution of the present invention is used, since first processor is to transmission
The treatment process of block only needs to calculate the packet number for constituting a transmission block and corresponding header packet information generates, sub-block data
Splicing completed by the way by copy procedure, expense is not introduced, so that first processor is not necessarily to enormous amount and storage address point
Scattered sub-block does copy splicing, and the time overhead of first processor is effectively reduced, improves the processing capacity of whole system.This hair
It is bright to be spelled by handling sub-block data in sharing data packet format conversion process using data transmission procedure between processor for protocol stack
It is connected into the operation of this high complexity of complete transmission block, the processing of significant increase whole system is handled up.
In the embodiment of the present invention, by first processor, according to the first protocol stack function set, by the first kind of input
Data packet processing be include the Second Type data packet of at least one data block, and for each data block generate one include the number
According to the initial address of block and the descriptor of length.According to the length and initial address in each descriptor, without first at first
Reason device forms the Second Type data packet that can directly handle of second processor, Second Type data packet by second processor by pair
Each data block copy and the mode that the data block after copy is spliced with copied data block is completed by the way, when reducing
Between expense.
As shown in fig. 7, being a kind of corresponding structural schematic diagram of data processing equipment provided in an embodiment of the present invention.
The embodiment of the present invention provides a kind of data processing equipment, which includes:
First processing module 701, for by first processor, according to the first protocol stack function set, by the of input
The processing of one type data packets is at least one data block, and generates at least one descriptor;At least one described data block is used for
It is spliced into Second Type data packet;In at least one described descriptor each descriptor at least one described data block
One data block is corresponding, which includes the initial address and length of the data block;
Data transmission module 702, for passing through second processor, according to each descriptor at least one described descriptor
In length, the initial address from the descriptor copies the corresponding data block of the descriptor, and by the data block and it is described extremely
Copied data block splicing, forms the Second Type data packet in a few data block;
Second processing module 703, for handling institute according to second protocol stack function set by the second processor
State Second Type data packet.
Optionally, if the second processor uses address align from first processor copy data block process
Copy mode, then the descriptor of the first data block further include first data block first address and tail address corresponding to data
Byte enable instruction, the byte enable instruction is used to indicate the invalid data in first data block;Institute
Stating the first data block is any data block at least one described data block;
The data transmission module 702, is also used to the second processor for after first data block copy, according to
The byte enable instruction rejects the invalid data in first data block, and first data block is rejected
Data block after invalid data is spliced with copied data block at least one described data block, forms described the
Two type data packets.
Optionally, the data transmission module 702, it is corresponding for direct memory access DMA mode, copying the descriptor
Data block.
Optionally, corresponding protocol layer in the first protocol stack function set and the second protocol stack function set
It includes at least one of the following: physical PHY layer, multiple access access channel MAC layer, control rlc layer and packet data convergence without link layer
Face GTP-U layers of PDCP layers of agreement, SDAP layers of service data adapting protocol and general packet radio service technology Tunneling Protocol-User.
Optionally, the data transmission module 702, for according at least one described descriptor each descriptor it is successive
At least one described data block is spliced into one Second Type data packet by order.
It should be understood by those skilled in the art that, the embodiment of the present invention can provide as method, system or computer program
Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the present invention
Apply the form of example.Moreover, it wherein includes the computer of computer usable program code that the present invention, which can be used in one or more,
The computer program implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) produces
The form of product.
The present invention be referring to according to the method for the embodiment of the present invention, the process of device (system) and computer program product
Figure and/or block diagram describe.It should be understood that every one stream in flowchart and/or the block diagram can be realized by computer program instructions
The combination of process and/or box in journey and/or box and flowchart and/or the block diagram.It can provide these computer programs
Instruct the processor of general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce
A raw machine, so that being generated by the instruction that computer or the processor of other programmable data processing devices execute for real
The device for the function of being specified in present one or more flows of the flowchart and/or one or more blocks of the block diagram.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing devices with spy
Determine in the computer-readable memory that mode works, so that it includes referring to that instruction stored in the computer readable memory, which generates,
Enable the manufacture of device, the command device realize in one box of one or more flows of the flowchart and/or block diagram or
The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device, so that counting
Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer or
The instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram one
The step of function of being specified in a box or multiple boxes.
Although preferred embodiments of the present invention have been described, it is created once a person skilled in the art knows basic
Property concept, then additional changes and modifications may be made to these embodiments.So it includes excellent that the following claims are intended to be interpreted as
It selects embodiment and falls into all change and modification of the scope of the invention.
Obviously, various changes and modifications can be made to the invention without departing from essence of the invention by those skilled in the art
Mind and range.In this way, if these modifications and changes of the present invention belongs to the range of the claims in the present invention and its equivalent technologies
Within, then the present invention is also intended to include these modifications and variations.