CN106301466A - A kind of multi-path demodulation method and apparatus - Google Patents
A kind of multi-path demodulation method and apparatus Download PDFInfo
- Publication number
- CN106301466A CN106301466A CN201510271723.XA CN201510271723A CN106301466A CN 106301466 A CN106301466 A CN 106301466A CN 201510271723 A CN201510271723 A CN 201510271723A CN 106301466 A CN106301466 A CN 106301466A
- Authority
- CN
- China
- Prior art keywords
- task
- node
- chain table
- linked list
- period
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000002457 bidirectional effect Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000005562 fading Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
- H04B1/7097—Interference-related aspects
- H04B1/711—Interference-related aspects the interference being multi-path interference
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Radio Transmission System (AREA)
Abstract
The embodiment of the invention discloses a kind of multi-path demodulation method, including: in current symbol period, when i-th subcycle arrives, detect whether Task-list corresponding to described i-th subcycle is empty, wherein, described Task-list be the task that comes into force of the i-th subcycle in the symbol period before described current symbol period as task node, i is positive integer;When described Task-list is non-NULL chained list, one by one the task that comes into force that task node in described Task-list is corresponding is carried out multi-path demodulation.The embodiment of the present invention also discloses a kind of multi-path demodulation device simultaneously.
Description
Technical Field
The present invention relates to the field of wireless communications, and in particular, to a multipath demodulation method and apparatus.
Background
In a Wideband Code Division Multiple Access (WCDMA) system, due to the existence of obstacles, a wireless signal sent by User Equipment (UE) may form different multipath fading channels through various propagation paths such as direct radiation, reflection, refraction, and the like, and the wireless signal reaches a receiver through propagation. The receiver realizes the reception of the user signal by a method of demodulating different multipaths belonging to each user equipment respectively and then combining the multipaths.
In the disclosed prior art, firstly, all multi-path demodulation tasks (hereinafter referred to as tasks) configured by software are stored in a First-in First-out (FIFO) memory, then the tasks in the FIFO are analyzed, the task information is stored in a task state table by taking the tasks as units, then the system scans the state table by a fixed scanning period, such as 32 chip times, to determine whether the tasks are configured, whether the configured tasks are effective, whether the effective time of the tasks which are not effective arrives, and the like, and then the obtained effective tasks are sent to a next-stage processing module for multi-path demodulation processing. Thus, as long as the scanning period is reached, the system needs to scan the state table, and the time spent for scanning the state table is not reduced due to the reduction of the number of configured tasks, thereby resulting in low efficiency of the system for scheduling tasks.
Disclosure of Invention
In view of this, embodiments of the present invention are expected to provide a multipath demodulation method and apparatus, so as to improve the efficiency of scheduling tasks in the multipath demodulation process.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
the embodiment of the invention provides a multipath demodulation method, which comprises the following steps:
in the current symbol period, when an ith sub-period arrives, detecting whether a task linked list corresponding to the ith sub-period is empty, wherein the task linked list takes an effective task of the ith sub-period as a task node, and i is a positive integer;
and when the task chain table is not empty, performing multi-path demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one.
In the above scheme, the method further comprises:
in the last symbol period, when the ith sub-period arrives, detecting an effective task from configured tasks, and reading the task type of the effective task;
and maintaining the effective tasks to the task linked list according to the task types.
In the above solution, when the task type is new, the maintaining the validated task to the task linked list according to the task type includes:
taking the effective task as a new task node and inserting the new task node into the head of the task linked list;
and adding 1 to the node count of the task chain table.
In the foregoing solution, when the task type is delete, the maintaining the validated task to the task linked list according to the task type includes:
deleting the task node corresponding to the validated task from the task linked list;
and subtracting 1 from the node count of the task chain table.
In the foregoing solution, when the task type is updated, the maintaining the validated task to the task linked list according to the task type includes:
determining task nodes corresponding to the effective tasks in the task linked list;
and updating the task node based on the task information of the validated task.
In the above scheme, the method further comprises:
and when the ith sub-period arrives, detecting an effective task from the configured tasks, and generating the task linked list for the effective task.
In the foregoing solution, when the task chain table is not empty, performing multipath demodulation on task nodes of the task chain table one by one includes:
when the task linked list is not empty, antenna data corresponding to the task linked list is obtained;
and performing multi-path demodulation on the task nodes in the task chain table one by one based on the antenna data.
In the above scheme, the multi-path demodulation of the task nodes in the task chain table one by one includes:
executing the following steps aiming at each task node of the task package:
and based on the task parameters of the task nodes, sequentially performing interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data.
The embodiment of the invention also provides a multipath demodulation device, which comprises: the system comprises a task scheduling module and a multipath demodulation module; wherein,
the task scheduling module is used for detecting whether a task linked list corresponding to the ith sub-cycle is empty or not when the ith sub-cycle arrives in the current symbol cycle, wherein the task linked list takes the effective task of the ith sub-cycle as a task node, and i is a positive integer;
and the multipath demodulation module is used for performing multipath demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one when the task chain table is not empty.
In the above scheme, the task scheduling module is further configured to detect, in a last symbol period, a validated task from the configured tasks when the ith sub-period arrives, and read a task type of the validated task; and maintaining the effective tasks to the task linked list according to the task types.
In the above scheme, when the task type is newly established, the task scheduling module is specifically configured to insert the validated task as a new task node into the head of the task linked list; and adding 1 to the node count of the task chain table.
In the above scheme, when the task type is deletion, the task scheduling module is specifically configured to delete the task node corresponding to the validated task from the task linked list; and subtracting 1 from the node count of the task chain table.
In the above scheme, when the task type is update, the task scheduling module is specifically configured to determine a task node corresponding to the validated task in the task linked list; and updating the task node based on the task information of the validated task.
In the foregoing solution, the task scheduling module is further configured to detect a valid task from configured tasks when the ith sub-period arrives, and generate the task linked list for the valid task.
In the above scheme, the multipath demodulation module is specifically configured to obtain antenna data corresponding to the task linked list when the task linked list is not empty; and performing multi-path demodulation on the task nodes in the task chain table one by one based on the antenna data.
In the foregoing solution, the multipath demodulation module is specifically configured to execute the following steps for each task node of the task packet: and based on the task parameters of the task nodes, sequentially performing interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data.
The embodiment of the invention provides a multipath demodulation method and a multipath demodulation device, wherein in the current symbol period, when the ith sub-period arrives, whether a task chain table corresponding to the ith sub-period is empty is detected, wherein the task chain table takes the effective task of the ith sub-period as a task node, and then when the task chain table is a non-empty chain table, the multipath demodulation is carried out on the task nodes in the task chain table one by one. It can be seen that, since the effective task in the ith sub-period is used as the task node in the task chain table, in the current symbol period, when the ith sub-period arrives, it is only required to detect whether the corresponding task chain table is empty, and if not, the effective tasks corresponding to the task nodes in the task chain table are scheduled and demodulated, and the state of each task is not indiscriminately confirmed, so that the effective tasks in the sub-period can be determined, and thus, the time for determining the effective tasks in the sub-period is greatly shortened, and the efficiency of scheduling tasks in the multipath demodulation process is improved.
Drawings
Fig. 1 is a functional block diagram of a multipath demodulation apparatus in an embodiment of the present invention;
FIG. 2 is a schematic diagram of a bi-directional task chain table in an embodiment of the present invention;
FIG. 3 is a flow chart of a multi-path demodulation method according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a multipath demodulation apparatus in an embodiment of the present invention.
Detailed Description
The technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
The embodiment of the invention provides a multipath demodulation method, which is applied to a multipath demodulation device, wherein the device can be a base station in a WCDMA system.
As shown in fig. 1, the multipath demodulation apparatus includes: a task scheduling module 11 and a multipath demodulation module 12. The task scheduling module 11 is configured to schedule a multi-path demodulation task (hereinafter referred to as a task) configured by an external configuration processor 13 to the multi-path demodulation module 12 according to task effective time; the multipath demodulation module 12 is used for performing multipath demodulation on each scheduled validated task and sending a demodulation result to the external demodulation result processing module 14 for subsequent processing;
further, the configuration processor 11 is configured to configure task parameters of a task, a task request, an antenna data storage base address, and report task information such as a data storage base address; and a demodulation result processing module 14, configured to perform subsequent processing on the demodulation result, such as channel estimation and multipath combining.
A multipath demodulation method provided in an embodiment of the present invention is described below with reference to the above multipath demodulation apparatus.
First, a symbol (symbol) period of the system time corresponds to 256 chip times, and the 256 chip times can be divided into M time segments, each time segment is 1 sub-period, and M is a positive integer. That is, one symbol period is divided into M sub-periods. For example, M takes 8, i.e., a symbol period is divided into 8 sub-periods, sub-period 0, sub-period 1, sub-period …, and sub-period 7, each of which is 32 chip times. Of course, one symbol period may also be divided into 4 sub-periods, and each sub-period is 64 chip times, which is not particularly limited in the present invention.
In a specific implementation process, before a task scheduling module schedules a task for the first time, a processor is configured to configure task parameters, task requests, antenna data storage base addresses, reported data storage base addresses and other task information of the task, the configured task information is stored in a cache region of the task scheduling module, then, in a symbol period, when an ith sub-period arrives, the task scheduling module determines a task which takes effect in the sub-period in the configured task as an effective task, namely, the task scheduling module periodically detects the cache region, checks whether the task which takes effect in the ith sub-period exists, and if so, determines the tasks as the effective tasks and generates a task linked list for the tasks; if not, the task scheduling module waits for the arrival of the next sub-period.
In practical application, the task scheduling module performs timing according to a sub-period, when the timing is reached, the task scheduling module determines the effective tasks of the sub-period from the configured tasks in the cache region, namely, compares the task effective time of the configured tasks with the system time, and when the two are consistent, the task is considered to be effective, namely the effective task, otherwise, the task is not effective, and the other configured tasks are continuously compared until all the configured tasks are compared. Then, the task scheduling module groups the effective tasks, and divides the tasks with the same sub-period number of the effective time of the tasks into a task group. Since one sub-cycle is taken as the cycle time, the sub-cycle numbers of the task effective time of the effective tasks detected by the task scheduling module when each sub-cycle arrives are the same, then the tasks form a task group, and finally, the task scheduling module establishes a task linked list for each task group. For example, the task groups with the sub-period numbers of sub-period 0, sub-period 1, …, and sub-period 7 of the task effective time respectively correspond to the task linked list sub-period 0_ DL, sub-period 1_ DL, sub-period …, and sub-period 7_ DL. At this time, each validated task in the task group is a task node in the corresponding task chain table.
For example, if the preset time is 1 sub-period, then, before the task scheduling module schedules the task for the first time, in a symbol period, when the ith sub-period arrives, the timing also arrives, at this time, the task scheduling module determines the task that takes effect in the ith sub-period from the configured tasks, that is, the effective task in the ith sub-period, and establishes a task linked list for the effective task, then, when the (i + 1) th sub-period arrives, the timing of the timer arrives, and the task scheduling module determines the effective task in the (i + 1) th sub-period from the newly configured tasks, establishes a task linked list for the effective task, and so on until all the effective tasks in the symbol period establish the task linked list. Wherein i is an integer of 0 or more and less than M.
Of course, the preset time may also be an integer multiple of a sub-period, such as 2 sub-periods, 3 sub-periods, 5 sub-periods, and 7 sub-periods, which is specifically to be the standard, and the present invention is not limited specifically.
In another embodiment, the task scheduling module may generate an empty task list for each sub-period in advance, and then, before the task scheduling module schedules the task for the first time, the configuration processor configures task parameters, task requests, antenna data storage base addresses, reported data storage base addresses and other task information of the task, and stores the task information of the configured task in a buffer of the task scheduling module, and then, in a symbol period, when an ith sub-period arrives, a task scheduling module determines a task which takes effect in the sub-period in configured tasks as an effective task, namely, the task scheduling module periodically detects the cache region, checks whether the task which takes effect in the ith sub-period exists, determines the tasks as the effective tasks if the task which takes effect in the ith sub-period exists, and adds the effective tasks as task nodes into a task linked list of the ith sub-period; if not, the task scheduling module waits for the arrival of the next sub-period.
Through the process, the task scheduling module generates a corresponding task linked list for the validated task of each sub-period before the task is scheduled for the first time. Then it is determined that,
in each next symbol period, a new task may need to be added to the corresponding task list, or some tasks need to be deleted from the task list or parameters need to be updated, and at this time, the task scheduling module also maintains the task list.
Specifically, in a symbol period, when the ith sub-period arrives, at this time, if the task scheduling module detects that a new task is in effect at this time from the configured tasks, that is, when an effective task is detected, first, the task types of the effective tasks are read to determine whether the task type of the effective task is new, deleted or parameter updated, and then, according to the task type, the effective task is maintained in the task chain table of the ith sub-period.
In a first case, when the task type is new, the step of maintaining the validated task to the task chain table according to the task type includes: and taking the effective task as a new task node, inserting the effective task into the head of the task chain table, and adding 1 to the node count of the task chain table.
Specifically, the task scheduling module reads the task parameter of the validated task and the sub-cycle number of the current system time, and simultaneously, the task scheduling module calculates the user time of the validated task for executing this time, and then, the calculated user time, the task number of the task, the task validation time, the parameter area number, the task chain table number and other task information are combined to form a new task node which is inserted into the head of the task chain table, and at this time, the node count value of the task chain table is added by 1.
In the second case, when the task type is delete, the step of maintaining the validated task to the task linked list according to the task type includes: and deleting the task node corresponding to the validated task from the task linked list of the ith sub-period, and subtracting 1 from the node count of the task linked list.
Specifically, the task scheduling module reads the task number of the validated task, then determines the task node corresponding to the validated task according to the task number, and finally deletes the task node from the task chain table where the task node is located. At this time, the node count value of the task link list is decremented by 1.
In a third case, when the task type is update, the step of maintaining the validated task to the task linked list according to the task type includes: determining a task node corresponding to the effective task in the task linked list of the ith sub-period; and updating the task nodes based on the task information of the validated tasks.
Specifically, the task scheduling module reads the task number of the validated task, determines the task node corresponding to the validated task on the task chain table of the ith sub-cycle according to the task number, and then updates the new task information of the validated task to the corresponding task node. At this time, since only the task information of the task nodes in the task chain table of the ith sub-period is updated and the number of the task nodes in the task chain table is not changed, the node count value of the task chain table of the ith sub-period is not changed.
In practical applications, there may be situations where the task list is replaced for a validated task with a task type of parameter update, for example, when the ith sub-period is reached, the task scheduling module detects the effective task S and obtains the task type as parameter update, then the task scheduling module reads the task number of the effective task S first, then, determining that the task node corresponding to the validated task S is in the task chain table of the (i-1) th sub-period according to the task number, the task scheduling module deletes the task node in the task chain table of the (i-1) th sub-period, since the sub-period number of the task effective time of the effective task S is i, next, the task scheduling module forms the task information of the effective task S into a new task node, and inserts the new task node into the head of the task linked list of the ith sub-period. At this time, the node count value of the task chain table of the i-1 th sub-period is subtracted by 1, and the node count value of the task chain table of the i-th sub-period is added by 1.
And in each symbol period, the task scheduling module executes the flow and maintains the task linked list of each sub-period.
It should be noted that the task linked list may be a one-way linked list, a two-way linked list, or a linked list in other forms, and the present invention is not limited specifically.
Further, when the task linked list is a doubly linked list, since node addresses of the existing doubly linked list are randomly allocated, when a certain node is searched, the doubly linked list may need to be traversed, and a long time is consumed. In order to save time and improve the efficiency of searching for nodes, in the embodiment of the present invention, the task linked list may adopt a bidirectional linked list as shown in fig. 2, each node address of the bidirectional linked list is fixed, and each node address is logically arranged in sequence according to the order of the task numbers from small to large. Specifically, the Offset Address in fig. 2 is the node Address (byte Address) of the doubly linked list corresponding to all tasks supported by the multipath demodulation apparatus, and the task node of each doubly linked list occupies a storage space of 12 bytes; n is the maximum number of tasks supported by the multipath demodulation device, and then the number of the tasks supported by the multipath demodulation system is 0, 1, 2, …, n-1; the priority is a pointer pointing to a predecessor node; next is a pointer to a successor node; head is a pointer to the Head task node; NULL is NULL pointer; the Task _ p Info is the Task information of the validated Task p, including the Task number, the Task parameter area number, the user time, and so on.
In practical applications, even if a task with a certain task number is not configured, the space of the task in the doubly linked list storage area is allocated.
Therefore, by adopting the bidirectional linked list, the corresponding task linked list and the task nodes can be immediately determined according to the task number in the effective task and the sub-cycle number of the task effective time, and the bidirectional linked list does not need to be traversed. Moreover, since the bidirectional linked list can be used for bidirectional query, after the address of a certain node is known, the predecessor node and successor node of the node can be known without traversing the linked list, so that the task linked list can be the bidirectional linked list as shown in fig. 2 in the embodiment of the invention, and thus, the operations of creating, deleting, updating parameters and the like of the task can be efficiently completed in the maintenance process of the successor task.
Next, when each symbol period arrives, the task scheduling module schedules each task linked list maintained in the previous symbol period, so that the multipath demodulation module performs multipath demodulation on each validated task corresponding to the task linked lists.
Then, as shown in fig. 3, the method includes:
s301: in the current symbol period, when the ith sub-period arrives, detecting whether a task chain table corresponding to the ith sub-period is empty;
specifically, when the ith sub-cycle arrives, the task scheduling module needs to schedule the task chain table corresponding to the sub-cycle, so that it is first detected whether the task chain table is empty. If the sub-period is empty, the task scheduling module waits for the next sub-period, namely the arrival of the (i + 1) th sub-period, so as to schedule a task linked list corresponding to the (i + 1) th sub-period; if not, go to step S302.
It should be noted that, in the first symbol period, the task scheduling module establishes task linked lists for all the validated tasks, and then, in the second symbol period, when the ith sub-period arrives, if the sub-period does not have a corresponding task linked list, the task scheduling module waits for the arrival of the next sub-period; when the ith sub-period arrives, the sub-period has a non-empty task linked list, and then the task scheduling module schedules the task linked list. Then, as the symbol period is repeated, most of the sub-periods, even each sub-period, have a corresponding task chain table.
S302: and when the task chain table corresponding to the ith sub-period is not empty, performing multi-path demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one.
In a specific embodiment, S302 includes: when the task scheduling module determines that a task linked list corresponding to the ith sub-period is non-empty, antenna data corresponding to the task linked list is obtained; and according to the antenna data, performing multi-path demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one. In this way, the demodulation results for each validated task can be obtained.
Specifically, firstly, a task scheduling module makes up all task nodes in a task chain table into a task packet, antenna data corresponding to all tasks in the task packet are the same, then task packet parameters of the task packet are sent to a multipath demodulation module, the multipath demodulation module obtains all antenna data required by the current execution of the task packet according to the task parameters of the task packet, then the task scheduling module sends the task parameters of the task nodes to the multipath demodulation module one by one from the head of the task chain table, and the multipath demodulation module performs interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data which is just obtained according to the task parameters corresponding to the task nodes, so as to obtain the demodulation result of the task nodes.
For example, the multipath demodulation apparatus may further include a Direct Memory Access (DMA) module. Assuming that 2 non-empty task nodes exist in a task chain table corresponding to the ith sub-period, a task scheduling module firstly forms the two task nodes into a task packet, saves the number of tasks of the task packet and parameters required by antenna data reading to a task packet parameter storage address in a memory, simultaneously generates a task packet parameter moving DMA command, and then sends the command to the tail of a parameter moving DMA command queue in a DMA module. Then, the task scheduling module generates a task parameter moving DMA command aiming at the first task node, issues the task parameter moving DMA command to the tail of the parameter moving DMA command queue, generates a task parameter moving DMA command aiming at the second task node, and issues the task parameter moving DMA command to the tail of the parameter moving DMA command queue. Meanwhile, when the DMA module detects that the parameter moving DMA command queue is not empty, the parameter moving DMA command is taken out from the parameter moving DMA command queue and is executed in sequence. That is to say, a task packet parameter moving DMA command is executed first, the task packet parameter is moved to a multipath demodulation module, the multipath demodulation module obtains corresponding antenna data according to the task packet parameter, then the DMA module executes the task parameter moving DMA command of a first task node, the task parameter of the first task node is moved to the multipath demodulation module, and the multipath demodulation module performs interpolation, first descrambling and despreading, frequency offset compensation and second despreading in sequence on the antenna data according to the task parameter, so that a demodulation result of the first task node is obtained. Similarly, after the DMA module moves the task parameter of the first task node to the multipath demodulation module, the DMA module executes a task parameter moving DMA command of the second task node, and moves the task parameter of the second task node to the multipath demodulation module, and the multipath demodulation module performs interpolation, first descrambling and despreading, frequency offset compensation, and second despreading on the antenna data in sequence according to the task parameter, so as to obtain a demodulation result of the second task node.
In a specific implementation process, the multipath demodulation module sends demodulation results to the demodulation result processor one by one in the process of performing multipath demodulation on task nodes one by one, so that the demodulation result processor performs subsequent processing such as channel estimation, multipath combination and the like on the demodulation results.
Further, under the condition that the multipath demodulation apparatus further includes a DMA module, the multipath demodulation module may further store the demodulation results one by one into a buffer of the demodulation result processor after obtaining the demodulation result of each task, and at the same time, correspondingly generate the reported data moving DAM command and issue the command to the tail of the reported data moving DAM command queue. Meanwhile, when the DMA module detects that the reported data transfer DMA command queue and the demodulation result buffer area are not empty, the DMA module takes the reported data transfer DMA command out of the reported data transfer DMA command queue and sequentially executes the reported data transfer DMA command queue and reports the demodulation results in the demodulation result buffer area to the demodulation result processor one by one, so that the reporting of the demodulation results and the transfer of the parameter data can be realized by the same module in time division multiplexing, and the types of modules and the hardware resource overhead which need to be developed are reduced.
Therefore, since the effective task of the ith sub-period is taken as the task node in the task chain table, in the current symbol period, when the ith sub-period arrives, only the corresponding task chain table needs to be detected whether to be empty, if not, each effective task corresponding to the task node in the task chain table is scheduled and demodulated, and the effective task of the sub-period can be determined without confirming the state of each task indiscriminately.
Based on the same inventive concept, the embodiment of the present invention further provides a multipath demodulation apparatus, which is consistent with the multipath demodulation apparatus described in one or more embodiments above.
As shown in fig. 1, the multipath demodulation apparatus includes: a task scheduling module 11 and a multipath demodulation module 12; the task scheduling module 11 is configured to detect whether a task chain table corresponding to an ith sub-period is empty when the ith sub-period arrives in a current symbol period, where the task chain table uses a validated task of the ith sub-period as a task node, and i is a positive integer; and the multipath demodulation module 12 is used for performing multipath demodulation on the validated tasks corresponding to the task nodes in the task chain table one by one when the task chain table is not empty.
In the above scheme, the task scheduling module 11 is further configured to detect, in the last symbol period and when the ith sub-period arrives, a valid task from the configured tasks, and read a task type of the valid task; and maintaining the effective tasks to a task linked list according to the task types.
In the above scheme, when the task type is new, the task scheduling module 11 is specifically configured to insert a validated task as a new task node into the head of the task linked list; the node count of the task chain table is incremented by 1.
In the above scheme, when the task type is deletion, the task scheduling module 11 is specifically configured to delete a task node corresponding to an effective task from the task chain table; the node count of the task list is decremented by 1.
In the above scheme, when the task type is update, the task scheduling module 11 is specifically configured to determine a task node corresponding to a validated task in a task chain table; and updating the task node based on the task information of the validated task.
In the above scheme, the task scheduling module 11 is further configured to detect a validated task from the configured tasks when the ith sub-period arrives, and generate a task chain table for the validated task.
In the above scheme, the multipath demodulation module 12 is specifically configured to obtain antenna data corresponding to the task chain table when the task chain table is not empty; and performing multi-path demodulation on the task nodes in the task chain table one by one based on the antenna data.
In the above scheme, the multipath demodulation module 12 is specifically configured to execute the following steps for each task node of a task packet: and based on task parameters of the task nodes, sequentially performing interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data.
In practical applications, as shown in fig. 4, the functions of the task scheduling module 11 may be performed by the timer 111, the task scheduling processor 112, and the memory 113. The timer 111 is configured to time whether a validated task exists or not; a task scheduling processor 112, configured to establish a task linked list for the validated tasks, and maintain the task linked list in a symbol period; the method is also used for scheduling the task linked list when the ith sub-period arrives in the current symbol period; and the memory 113 is used for storing the task parameters of the validated tasks.
The functions of the multipath demodulation module 12 can be performed by the antenna data module 121 and the multipath demodulation calculation module 122. The antenna data module 121 is configured to read corresponding antenna data according to the task packet parameters, and send the antenna data to the multipath demodulation and calculation module 122; and the multipath demodulation calculation module 122 is configured to perform interpolation, first descrambling and despreading, frequency offset compensation, and second despreading on the antenna data in sequence according to the task parameter of each task node.
Optionally, the multipath demodulation module 12 may further include a data reporting module, configured to report the demodulation result demodulated by the multipath demodulation calculation module 122 to a next-stage processor, that is, a demodulation result processor, so as to perform subsequent processing such as channel estimation and multipath combining.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.
Claims (16)
1. A method of multipath demodulation, comprising:
in the current symbol period, when an ith sub-period arrives, detecting whether a task linked list corresponding to the ith sub-period is empty, wherein the task linked list takes an effective task of the ith sub-period as a task node, and i is a positive integer;
and when the task chain table is not empty, performing multi-path demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one.
2. The method of claim 1, further comprising:
in the last symbol period, when the ith sub-period arrives, detecting an effective task from configured tasks, and reading the task type of the effective task;
and maintaining the effective tasks to the task linked list according to the task types.
3. The method of claim 2, wherein when the task type is new, the maintaining the validated task to the task chain table according to the task type comprises:
taking the effective task as a new task node and inserting the new task node into the head of the task linked list;
and adding 1 to the node count of the task chain table.
4. The method of claim 2, wherein when the task type is delete, the maintaining the validated task to the task list according to the task type comprises:
deleting the task node corresponding to the validated task from the task linked list;
and subtracting 1 from the node count of the task chain table.
5. The method of claim 2, wherein when the task type is update, the maintaining the validated task to the task list according to the task type comprises:
determining task nodes corresponding to the effective tasks in the task linked list;
and updating the task node based on the task information of the validated task.
6. The method of claim 1, further comprising:
and when the ith sub-period arrives, detecting an effective task from the configured tasks, and generating the task linked list for the effective task.
7. The method of claim 1, wherein the multipath demodulation for task nodes of the task chain table one by one when the task chain table is non-empty comprises:
when the task linked list is not empty, antenna data corresponding to the task linked list is obtained;
and performing multi-path demodulation on the task nodes in the task chain table one by one based on the antenna data.
8. The method of claim 7, wherein multipath demodulating task nodes in the task list one by one comprises:
executing the following steps aiming at each task node of the task package:
and based on the task parameters of the task nodes, sequentially performing interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data.
9. A multipath demodulation apparatus, comprising: the system comprises a task scheduling module and a multipath demodulation module; wherein,
the task scheduling module is used for detecting whether a task linked list corresponding to the ith sub-cycle is empty or not when the ith sub-cycle arrives in the current symbol cycle, wherein the task linked list takes the effective task of the ith sub-cycle as a task node, and i is a positive integer;
and the multipath demodulation module is used for performing multipath demodulation on the effective tasks corresponding to the task nodes in the task chain table one by one when the task chain table is not empty.
10. The apparatus according to claim 9, wherein the task scheduling module is further configured to detect a validated task from the configured tasks and read a task type of the validated task when the ith sub-period arrives in the last symbol period; and maintaining the effective tasks to the task linked list according to the task types.
11. The apparatus according to claim 10, wherein when the task type is a new task type, the task scheduling module is specifically configured to insert the validated task as a new task node into a head of the task chain table; and adding 1 to the node count of the task chain table.
12. The apparatus according to claim 10, wherein when the task type is delete, the task scheduling module is specifically configured to delete a task node corresponding to the validated task from the task chain table; and subtracting 1 from the node count of the task chain table.
13. The apparatus according to claim 10, wherein when the task type is update, the task scheduling module is specifically configured to determine a task node corresponding to the validated task in the task chain table; and updating the task node based on the task information of the validated task.
14. The apparatus of claim 9, wherein the task scheduling module is further configured to detect a validated task from the configured tasks when the ith sub-period arrives, and generate the task list for the validated task.
15. The apparatus according to claim 9, wherein the multipath demodulation module is specifically configured to obtain antenna data corresponding to the task chain table when the task chain table is not empty; and performing multi-path demodulation on the task nodes in the task chain table one by one based on the antenna data.
16. The apparatus according to claim 15, wherein the multipath demodulation module is specifically configured to perform, for each task node of the task packet, the following steps: and based on the task parameters of the task nodes, sequentially performing interpolation, first descrambling and despreading, frequency offset compensation and second despreading on the antenna data.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510271723.XA CN106301466B (en) | 2015-05-25 | 2015-05-25 | A kind of multi-path demodulation method and apparatus |
PCT/CN2015/096052 WO2016188076A1 (en) | 2015-05-25 | 2015-11-30 | Multi-path demodulation method, device and computer storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510271723.XA CN106301466B (en) | 2015-05-25 | 2015-05-25 | A kind of multi-path demodulation method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106301466A true CN106301466A (en) | 2017-01-04 |
CN106301466B CN106301466B (en) | 2019-05-31 |
Family
ID=57392572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510271723.XA Active CN106301466B (en) | 2015-05-25 | 2015-05-25 | A kind of multi-path demodulation method and apparatus |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106301466B (en) |
WO (1) | WO2016188076A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1075021A (en) * | 1992-01-31 | 1993-08-04 | 国际商业机器公司 | Multimedia operation system and method |
CN103744730A (en) * | 2014-01-27 | 2014-04-23 | 北京京东尚科信息技术有限公司 | Task scheduling method and device |
CN104639208A (en) * | 2013-11-11 | 2015-05-20 | 深圳市中兴微电子技术有限公司 | Task processing method and device for implementing multi-path search |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7464380B1 (en) * | 2002-06-06 | 2008-12-09 | Unisys Corporation | Efficient task management in symmetric multi-processor systems |
CN104239134B (en) * | 2013-06-21 | 2018-03-09 | 华为技术有限公司 | The task management method and device of a kind of many-core system |
-
2015
- 2015-05-25 CN CN201510271723.XA patent/CN106301466B/en active Active
- 2015-11-30 WO PCT/CN2015/096052 patent/WO2016188076A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1075021A (en) * | 1992-01-31 | 1993-08-04 | 国际商业机器公司 | Multimedia operation system and method |
CN104639208A (en) * | 2013-11-11 | 2015-05-20 | 深圳市中兴微电子技术有限公司 | Task processing method and device for implementing multi-path search |
CN103744730A (en) * | 2014-01-27 | 2014-04-23 | 北京京东尚科信息技术有限公司 | Task scheduling method and device |
Also Published As
Publication number | Publication date |
---|---|
CN106301466B (en) | 2019-05-31 |
WO2016188076A1 (en) | 2016-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3860134B2 (en) | Cell search apparatus and method for providing multi-search in a mobile communication system | |
CN110377570B (en) | Node switching method and device, computer equipment and storage medium | |
CN114080067A (en) | Discontinuous Reception (DRX) configuration method, device and equipment | |
JP2017526223A (en) | Data transmission method and device | |
US9008070B2 (en) | Information communication apparatus and program storage medium | |
EP3574616B1 (en) | Processing real-time multipoint-to-point traffic | |
JP2020537373A (en) | Carrier selection method, terminal device, and computer storage medium | |
CN106301466B (en) | A kind of multi-path demodulation method and apparatus | |
US10499423B2 (en) | Channel allocation system and method for accommodating multiple nodes in sensor network | |
CN101222658B (en) | Transmission method, insertion method and combination method for paging broadcast message | |
KR20120050273A (en) | Apparatus and method for beacon frame dissemination in vehicular ad-hoc network | |
CN104170461A (en) | Data transmission method and base station | |
CN106878176B (en) | message forwarding method and device | |
CN104639208B (en) | Task processing method and device for implementing multi-path search | |
CN109413122B (en) | Data processing method, network processor and computer storage medium | |
CN107257550B (en) | Signal processing method, base station and computer storage medium | |
JP6293696B2 (en) | Radio environment estimation method, radio environment estimation apparatus, and radio environment estimation program | |
CN115173907B (en) | Codebook determining and receiving method and device, terminal and network side equipment | |
CN115941135A (en) | Codebook determination method, device, terminal and network side equipment | |
CN115941134A (en) | Codebook determination method, device, terminal and network side equipment | |
CN102265542B (en) | Data processing method, device and system | |
Chaowei et al. | RFID Tag Management Scheme for Large-Scale Logistics System Based on LTE-A Structure | |
CN105302634B (en) | The method for parallel processing and device of event | |
CN103199976B (en) | Channel detection method, base station and subscriber equipment | |
CN106465364B (en) | GP length determination and uplink data packet sending method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |