Summary of the invention
The embodiment of the present invention provides a kind of data processing method and device, in order to realize, according to bus bandwidth, adjust in real time the data processing rate of the unit in RAKE receiver, thereby realize the Dynamic Matching of the transmission rate of each unit in bus actual bandwidth and RAKE receiver.
A kind of data processing method that the embodiment of the present invention provides comprises:
Determine multi-path demodulation task groups, and obtain antenna data according to multi-path demodulation task groups;
When the antenna data amount of obtaining meets multi-path demodulation demand, and, when the multipath merged data amount of current cache does not surpass default first threshold, antenna data is carried out to multi-path demodulation;
The multipath symbol that multi-path demodulation is obtained carries out multipath merging, obtains and buffer memory multipath merged data;
When the multipath merged data amount of buffer memory surpasses default first threshold, stop antenna data carrying out multi-path demodulation;
When obtaining same user's the multipath merged data of all RAKE of same Transmission Time Interval TTI, many RAKE data that buffer memory is corresponding with this user merge many RAKE merging data of task;
When maximum rate merges the externally write address in buffer unit of MRC unit, with the symbol level processing unit difference of reading address in buffer unit externally, while being greater than default Second Threshold, many RAKE data corresponding to many RAKE merging data of carrying out buffer memory merge task.
A kind of data processing equipment that the embodiment of the present invention provides comprises:
Divide group task buffer unit, for determining multi-path demodulation task groups;
Antenna data application unit, for obtaining antenna data according to multi-path demodulation task groups;
Task subdivision unit in group, for judging whether the current antenna data amount of obtaining meets multi-path demodulation demand, and whether the multipath merged data amount of current cache surpasses default first threshold;
Multi-path demodulation unit, meets multi-path demodulation demand for the antenna data amount when obtaining, and, when the multipath merged data amount of current cache does not surpass default first threshold, antenna data is carried out to multi-path demodulation;
Multipath merge cells, carries out multipath merging for the multipath symbol that multi-path demodulation is obtained;
Merge symbol buffer unit, the multipath merged data obtaining for buffer memory multipath merge cells, and, when the multipath merged data amount of buffer memory surpasses default first threshold, generate the control information that stops antenna data carrying out multi-path demodulation;
Bus interface and monitoring means, for merging the control information that stops antenna data carrying out multi-path demodulation of symbol buffer unit generation, send to described group of interior task subdivision unit;
Many RAKE merge task buffer units, for when obtaining same user's the multipath merged data of all RAKE of same Transmission Time Interval TTI, and many RAKE merging data of many RAKE data merging task that buffer memory is corresponding with this user;
Many RAKE merge cells, for merge the externally write address of buffer unit of MRC unit when maximum rate, with the symbol level processing unit difference of reading address in buffer unit externally, while being greater than default Second Threshold, many RAKE data corresponding to many RAKE merging data of carrying out buffer memory merge task.
The embodiment of the present invention, determines multi-path demodulation task groups, and obtains antenna data according to multi-path demodulation task groups; When the antenna data amount of obtaining meets multi-path demodulation demand, and, when the multipath merged data amount of current cache does not surpass default first threshold, antenna data is carried out to multi-path demodulation, thereby realized according to bus real-time bandwidth dynamic management multi-path demodulation, can effectively process local sudden heavy traffic condition, reduce data cover risk, improve the stability of system, make full use of the bandwidth resources of bus.And, do not need to increase the processing of cross clock domain, reduce the complexity of system.
Embodiment
The embodiment of the present invention provides a kind of data processing method and device, in order to realize, according to bus bandwidth, adjust in real time the data processing rate of the unit in RAKE receiver, thereby realize the Dynamic Matching of the transmission rate of each unit in bus actual bandwidth and RAKE receiver.
The embodiment of the present invention relates to 3-G (Generation Three mobile communication system), specifically, relates to the multi-path demodulation of Adaptable System bus bandwidth and the hardware resource management scheme of MRC in a kind of WCDMA band processing system.
Referring to Fig. 2, in table, the 2nd column data provides the interface transmission symbol speed between multi-path demodulation unit and MRC unit, and spreading factor SF, multipath number N, clock frequency F1(are the minimum interval of transmission symbol between multi-path demodulation unit and MRC unit) relation.As can be seen from the table, if the multipath number that band processing system is supported is more, the excursion of the interface transmission symbol speed between multi-path demodulation unit and MRC unit is larger, and hardware must can be processed large-scale rate variation, tackle paroxysmal two-forty, guarantee the stability of system.
In table shown in Fig. 2, the 3rd column data has provided the interface transmission symbol speed between multipath merge cells and bus in MRC unit, with the relation of SF, N, F1.Equally, as can be seen from the table, also there is paroxysmal two-forty problem in the interface transmission symbol speed between multipath merge cells and bus.Suppose bus working clock frequency F2, hardware is when design, and requiring bus coideal symbol transmission speed is that bus optimum wideband is 32F2.
Interface transmission rate in comparison diagram 1 between each unit, can find out, when clock F1=F2, can meet the demands in the ideal case, and hardware can stream treatment.But, in actual applications, because the factors such as the arbitration of bus multi-source, external cache unit readwrite bandwidth can affect the actual bandwidth of bus, actual bandwidth relative ideal bandwidth can decay to some extent, the multipath symbol that is transferred to so MRC unit from multi-path demodulation unit there will be accumulation, suppose that bus bandwidth decay factor is a, in the table shown in Fig. 2, the 4th column data provides the relation of multipath symbol accumulation rate and SF, N, a, F1, F2.
Real system is very high to the data integrity of multi-path demodulation, multipath assembling section and requirement of real-time, and the estimation difficulty of bus bandwidth decay factor a is large, this has brought challenge to the estimation multipath data volume that symbol is piled up, the size of piling up symbol data amount directly has influence on the spatial cache that MRC unit is opened up, if it is too little that spatial cache arranges, easily cause symbol data to be lost, arrange and too greatly waste hardware resource, increase the area of circuit.If reduce accumulation rate by improving the mode of bus working clock frequency F2, can in design, introduce different clock-domains, in design, need to increase the processing of cross clock domain, increased the complexity of design.
In addition, between MRC unit and symbol level processing unit, be the mode of length-specific memory space in external cache unit of reading and writing by circulation, realize the transmission of user data.In the local uneven situation of bus actual bandwidth, if MRC processing speed is higher than the processing speed of symbol level processing unit, the mode of this circulation read-write can cause the problem of the data that data cover symbol level processing unit that MRC unit is write do not read.
Therefore, in order to realize the Dynamic Matching of the transmission rate of bus actual bandwidth and each unit of RAKE receiver system.The technical scheme that the embodiment of the present invention provides, Real-Time Monitoring bus bandwidth is also controlled multi-path demodulation and MRC cell processing speed according to monitoring result, reach the Dynamic Matching that maintains transmission rate between each unit interface of RAKE receiver system, guarantee that upstream data service speed is not restricted by hardware resource.
Referring to Fig. 3, a kind of data processing method that the embodiment of the present invention provides, comprises step:
S101, determine multi-path demodulation task groups, and obtain antenna data according to multi-path demodulation task groups.
S102, meet multi-path demodulation demand when the antenna data amount of obtaining, and, when the multipath merged data amount of current cache does not surpass default first threshold, antenna data is carried out to multi-path demodulation.
Preferably, describedly according to multi-path demodulation task groups, obtain antenna data, comprising:
According to the idle information of antenna data buffer unit, take multi-path demodulation task groups as unit, obtain antenna data, and be cached in antenna data buffer unit.
Preferably, described antenna data is carried out to multi-path demodulation, comprising:
Determine the minimum demodulating task of each multi-path demodulation task groups;
Take minimum demodulating task as unit, antenna data is carried out to multi-path demodulation.
Preferably, the method also comprises:
The multipath symbol that multi-path demodulation is obtained carries out multipath merging, obtains and buffer memory multipath merged data;
When the multipath merged data amount of buffer memory surpasses default first threshold, stop antenna data carrying out multi-path demodulation.
Preferably, the method also comprises:
When obtaining same user's the multipath merged data of all RAKE of same Transmission Time Interval TTI, many RAKE data that buffer memory is corresponding with this user merge task;
When maximum rate merges the externally write address in buffer unit of MRC unit, with the symbol level processing unit difference of reading address in buffer unit externally, while being greater than default Second Threshold, many RAKE data of carrying out buffer memory merge task.
Preferably, the method also comprises:
When many RAKE of buffer memory data merging task surpasses the 3rd default threshold value, stop antenna data carrying out multi-path demodulation.
That is to say, preferably, step S102 is: when the antenna data amount of obtaining meets multi-path demodulation demand, and, the multipath merged data amount of current cache does not surpass default first threshold, and, when many RAKE merging tasks of current cache do not surpass the 3rd default threshold value, antenna data is carried out to multi-path demodulation.
The data processing equipment that the embodiment of the present invention provides, can comprise multi-path demodulation dispatch unit and MRC dynamic management unit.
In multi-path demodulation dispatch unit, the multi-path demodulation task of software package scheduling channel, hardware Yi Zuwei unit application antenna data, and in group, task subdivision is arrived to minimum demodulating task.Antenna data application and task subdivision, directly affect the overall performance of system.Antenna data application is only subject to the impact of spatial cache, its application is controlled separated with bus monitoring, in the time of can guaranteeing to allow multi-path demodulation in MRC unit, there have been enough antenna datas to use, reduce bus monitoring and control the impact on multi-path demodulation speed, and Yi Zuwei unit's application antenna data can improve the utilance of antenna data.Task subdivision, can reduce the complexity of bus monitoring control flow, and the granularity of minimum demodulating task, can require according to different systematic functions to arrange, for example a channel time slot.
In MRC dynamic management unit, adopt the mode that multipath symbol memory space buffer memory threshold value is set and safeguards external cache unit read/write address, monitoring bus bandwidth.Influence degree according to different units interface transmission rate to systematic function, controls bus monitoring to be divided into Two monitor levels.First order monitoring, for the transmission path of multi-path demodulation, multipath merging, bus, external cache unit, is monitored short time internal bus bandwidth; Second level monitoring is for the transmission path of many RAKE merging, symbol level processing, bus, external cache unit, to monitor the bus bandwidth in the long period.
MRC dynamic management unit is according to monitoring result, and judging whether needs to produce for stopping the flow control order of multi-path demodulation, informs that multi-path demodulation dispatch unit stops multi-path demodulation.When first order monitoring display short time internal bus bandwidth is lower, directly produce flow control order and control multi-path demodulation, reduce multi-path demodulation processing speed; When second level monitoring display long period internal bus bandwidth is lower, the many RAKE of first buffer memory merge task, reduce MRC cell processing speed, directly do not control multi-path demodulation, only have when many RAKE of buffer memory merging task surpasses threshold value and just produce for stopping the flow control order of multi-path demodulation.
Multi-path demodulation dispatch unit, according to the flow control order receiving, take minimum demodulating task as unit termination or starts multi-path demodulation.
Particularly, referring to Fig. 4, a kind of data processing equipment that the embodiment of the present invention provides comprises: in minute group task buffer unit 101, antenna data application unit 102, group, task subdivision unit 103, antenna data buffer unit 104, multi-path demodulation unit 105, multipath merge cells 106, merging symbol buffer unit 107, bus interface and monitoring means 108, many RAKE merge task buffer unit 109, many RAKE merge cells 110.
Wherein, can will divide task subdivision unit 103 in group task buffer unit 101, antenna data application unit 102, group, antenna data buffer unit 104 and multi-path demodulation unit 105 to form multi-path demodulation dispatch unit; Multipath merge cells 106, merging symbol buffer unit 107, bus interface and monitoring means 108, many RAKE are merged to task buffer unit 109 and many RAKE merge cells 110 composition MRC dynamic management unit.
Divide group task buffer unit 101, for determining multi-path demodulation task groups.
Antenna data application unit 102, for obtaining antenna data according to multi-path demodulation task groups.
Task subdivision unit 103 in group, for judging whether the current antenna data amount of obtaining meets multi-path demodulation demand, and whether the multipath merged data amount of current cache surpasses default first threshold.
Antenna data buffer unit 104, the antenna data obtaining for buffer memory antenna data application unit 102.
Described antenna data application unit 102, according to the idle information of antenna data buffer unit 104, take multi-path demodulation task groups as unit, obtains antenna data, and is cached in antenna data buffer unit 104.
Multi-path demodulation unit 105, meets multi-path demodulation demand for the antenna data amount when obtaining, and, when the multipath merged data amount of current cache does not surpass default first threshold, antenna data is carried out to multi-path demodulation.
Preferably, task subdivision unit 103 in described group, is further used for determining the minimum demodulating task of each multi-path demodulation task groups.
Described multi-path demodulation unit 105, take minimum demodulating task as unit, and antenna data is carried out to multi-path demodulation.
Multipath merge cells 106, carries out multipath merging for the multipath symbol that multi-path demodulation is obtained.
Merge symbol buffer unit 107, the multipath merged data obtaining for buffer memory multipath merge cells 106, and, when the multipath merged data amount of buffer memory surpasses default first threshold, generate the control information that stops antenna data carrying out multi-path demodulation.
Bus interface and monitoring means 108, for merging the control information that stops antenna data carrying out multi-path demodulation of symbol buffer unit 107 generations, send to described group of interior task subdivision unit 103.
Many RAKE merge task buffer units 109, for when obtaining same user's the multipath merged data of all RAKE of same Transmission Time Interval TTI, and many RAKE data merging task that buffer memory is corresponding with this user.
Many RAKE merge cells 110, for merge the externally write address of buffer unit of MRC unit when maximum rate, with the symbol level processing unit difference of reading address in buffer unit externally, while being greater than default Second Threshold, many RAKE data of carrying out buffer memory merge task.Thereby the data of avoiding MRC unit to write, the problem of the data that cover symbol level processing unit does not read.
Wherein, described external cache unit, its functional equivalent, in the external cache unit shown in Fig. 1, merges symbol data, the many RAKE merging of same user symbol data for the single RAKE multipath of buffer memory.
Described MRC unit, its functional equivalent, in the MRC unit shown in Fig. 1, mainly completes the multipath union operation of single RAKE, the many RAKE merging of same user symbol manipulation.
Described symbol level processing unit, its functional equivalent, in the symbol level processing unit shown in Fig. 1, mainly completes the operations such as rate de-matching, turbo decoding.
Preferably, described many RAKE merge task buffer unit 109, are further used for, when many RAKE of buffer memory data merging task surpasses the 3rd default threshold value, generating the control information that stops antenna data carrying out multi-path demodulation.
Described bus interface and monitoring means 108, be further used for described many RAKE to merge the control information that stops antenna data carrying out multi-path demodulation that task buffer unit 109 generates, and sends to described group of interior task subdivision unit 103.
Provide a specific embodiment below.
Referring to Fig. 5, divide group task buffer unit to receive minute group task buffer memory that upper application software issues, in one group task, comprise M bar channel, every channel needs the multipath symbol of a demodulation K time slot, upper application software is when issuing minute group task, do not need to monitor the situation of hardware resource and bus bandwidth, the flow control of hardware is sightless to software.
Divide group task buffer unit when hardware is idle, software configuration task is handed down to task subdivision unit in antenna data application unit and group.
Antenna data application unit, the idle information of storage according to antenna buffer unit feedback, take task groups as unit application antenna data, between different task group, the memory space of antenna data adopts the mode recycling, when current task group completes the minimum demodulating task of M bar channel, discharge the memory space of length-specific to next task group application antenna data, guarantee the continuity of demodulation between different task group.
Task subdivision unit in group, segments the task of software configuration and reorder, and task subdivided into minimum demodulating task: the k of each a channel time slot.Then, in the mode of channel polling, reset task, first minimum demodulating task of article one channel ..., M bar channel first minimum demodulating task; Article one second of channel minimum demodulating task ..., second minimum demodulating task of M bar channel ..., by that analogy.Task subdivision and reordering is the successful committed step of flow control.
Antenna data buffer unit is responsible for buffer memory antenna data, and safeguard the service condition of memory space, antenna data buffer memory is fed back to task subdivision unit in group, when antenna data is during enough for multi-path demodulation, in group, task subdivision unit, according to the flow control information of MRC dynamic management unit feedback, judges whether to start take minimum demodulating task as unit execution multi-path demodulation.Therefore, merging symbol buffer unit, to need the maximum amount of data of buffer memory can be 1 times, 1.5 times or 2 times of k the time slot data volume of spreading factor while being 2*2.
Wherein, described antenna data is enough for multi-path demodulation, can be that when between the user of task in group, maximum delay skew is d time slot, the antenna data length that minimum demodulating required by task of demodulation is wanted is k+d time slot.The value of described d and k, can arrange according to actual needs, for example: the span of d can be (0,1], the span of k can be (0,15].
In MRC dynamic management unit, multipath merge cells receives the multipath symbol from the output of multi-path demodulation dispatch unit, completing channel compensation and multipath merges, merge symbol buffer unit and be responsible for buffer memory multipath merged data, and to outside buffer unit, initiate write data requests by bus, when its write request of external cache cell response, just corresponding data is sent.
The memory space of buffer memory multipath merged data is arranged to rational threshold value, merge first threshold default in symbol buffer unit, for example, suppose that storage size is L, first threshold is preset as to 1.5 times of k time slot data volume that L deducts spreading factor 2*2.When buffer data size surpasses first threshold, feed back flow control information to bus interface and monitoring means.When all RAKE data of the complete user's of hardware acquisition a TTI, RAKE merging task is cached to many RAKE and merges task buffer unit, and read address (externally data address during read data in buffer unit) according to the symbol level of symbol level processing unit feedback, judge whether that allowing to carry out many RAKE merges task, when the difference of reading address when the write address of MRC unit (data address while externally writing data in buffer unit) and symbol level is less than default Second Threshold, do not allow to carry out many RAKE and merge task, wherein, described Second Threshold predeterminable for spreading factor be 2*2+2*4 and the unique user symbol data amount that is modulated to 16QAM mode 1 times, 1.5 times or 2 times.If allow to carry out many RAKE, merge task, by many RAKE merge cells, by bus, from external cache unit, read the symbol of corresponding RAKE, complete many RAKE and merge, and amalgamation result is write in external cache unit.When many RAKE of buffer memory merging task surpasses the 3rd default threshold value, many RAKE merge buffer unit feedback flow control information to bus interface and monitoring means, wherein, described the 3rd threshold value can be supported number of users setting according to system, for example for example be set to the 80%(of system support number of users, system supports that number of users is at 100 o'clock, and the 3rd threshold value is 80).
The operation that bus interface and monitoring means are carried out comprises: the read-write operation of bus; Realize the read and write access of each unit to outside buffer unit in embodiment of the present invention device; Receive the flow control information that merges symbol buffer unit and many RAKE merging task buffer unit, and feed back to multi-path demodulation dispatch unit, reach flow control object, the speed of each interface of system realizes Dynamic Matching.
In sum, the technical scheme that the embodiment of the present invention provides, can pass through Real-Time Monitoring bus bandwidth, dynamic management multi-path demodulation and MRC resource, the speed that reaches each interface of system realizes Dynamic Matching, the size that can effectively reduce the memory (RAM) of buffer memory multipath symbol data, greatly reduces circuit area and hardware resource; Can effectively process local sudden heavy traffic condition, reduce data cover risk, improve the stability of system; Make full use of the bandwidth resources of bus.Meanwhile, allow to adopt the clock of same frequency between unit and bus, avoid occurring different clock zones, hardware just does not need to increase the processing of cross clock domain like this, reduces the complexity of design.
Those skilled in the art should understand, embodiments of the invention can be provided as method, system or computer program.Therefore, the present invention can adopt complete hardware implementation example, implement software example or in conjunction with the form of the embodiment of software and hardware aspect completely.And the present invention can adopt the form that wherein includes the upper computer program of implementing of computer-usable storage medium (including but not limited to magnetic disc store and optical memory etc.) of computer usable program code one or more.
The present invention is with reference to describing according to flow chart and/or the block diagram of the method for the embodiment of the present invention, equipment (system) and computer program.Should understand can be in computer program instructions realization flow figure and/or block diagram each flow process and/or the flow process in square frame and flow chart and/or block diagram and/or the combination of square frame.Can provide these computer program instructions to the processor of all-purpose computer, special-purpose computer, Embedded Processor or other programmable data processing device to produce a machine, the instruction of carrying out by the processor of computer or other programmable data processing device is produced for realizing the device in the function of flow process of flow chart or a plurality of flow process and/or square frame of block diagram or a plurality of square frame appointments.
These computer program instructions also can be stored in energy vectoring computer or the computer-readable memory of other programmable data processing device with ad hoc fashion work, the instruction that makes to be stored in this computer-readable memory produces the manufacture that comprises command device, and this command device is realized the function of appointment in flow process of flow chart or a plurality of flow process and/or square frame of block diagram or a plurality of square frame.
These computer program instructions also can be loaded in computer or other programmable data processing device, make to carry out sequence of operations step to produce computer implemented processing on computer or other programmable devices, thereby the instruction of carrying out is provided for realizing the step of the function of appointment in flow process of flow chart or a plurality of flow process and/or square frame of block diagram or a plurality of square frame on computer or other programmable devices.
Obviously, those skilled in the art can carry out various changes and modification and not depart from the spirit and scope of the present invention the present invention.Like this, if within of the present invention these are revised and modification belongs to the scope of the claims in the present invention and equivalent technologies thereof, the present invention is also intended to comprise these changes and modification interior.