Data processing method and system, computer equipment and storage medium
By opening up multiple memory units and a temporary storage unit in the memory of the embedded system, collecting and re-planing the storage location of data in a specific order, the problem that traditional DMA data processing methods require a large amount of memory space is solved, and efficient data is achieved Processing and memory footprint savings.
Patent Information
- Application Number
- CN202510024649.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-08
- Publication Date
- 2025-02-11
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Traditional DMA data processing methods require a large amount of memory space, resulting in inefficient data processing in embedded systems with limited memory space.
A plurality of memory units are opened in memory to collect data from multiple channels in the first order, and a temporary storage unit is opened in memory to temporarily store data moved from one of the memory units. The target storage locations of the data received by the multiple memory units are re-planned in the second order, and the data of the non-target storage location is moved to the corresponding target storage location.
Through this method, complex data or large amounts of information can be processed efficiently in a small memory space, improving data processing efficiency, and saving memory footprint.
Smart Images

Figure CN119415047A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing of embedded systems, and in particular to a data processing method, system, computer equipment and storage medium. Background Art
[0002] With the widespread application of embedded systems, how to efficiently process and analyze data has become an important research field. DMA (Direct Memory Access) is increasingly used and performs data transfer tasks in different application scenarios. Its main function is to replace the CPU (Central Processing Unit) in the data transfer process. The CPU only needs to prepare and provide DMA data transfer control information in advance. With minimal intervention, DMA can actively transfer data from the source address space to the target address space. The transfer address can point to memory or peripherals, and after the transfer is completed, DMA notifies the CPU according to the configured control information.
[0003] Based on the basic concept of DMA transmission, various hardware designs have emerged. Although they are sufficient to meet functional requirements, they are not necessarily the most optimized designs in terms of architecture and performance. In particular, the amount of control information that DMA needs to process is large, and how to effectively manage this information has become an important issue in DMA design.
[0004] Traditional DMA data processing methods often require a large amount of memory space, which increases the burden of data processing and reduces the efficiency of data processing for embedded systems with limited memory space. Summary of the invention
[0005] The present invention provides a data processing method, system, computer equipment and storage medium to solve the problems existing in the prior art.
[0006] The present invention provides a data processing method, comprising:
[0007] Open up multiple memory units in the memory;
[0008] Collecting data from the plurality of channels in a first order, and sequentially storing the data in the plurality of memory units;
[0009] A temporary storage unit is opened in the memory for temporarily storing data moved from one of the memory units;
[0010] re-planning target storage locations of the data received by the plurality of memory units according to a second order;
[0011] Determine whether each data is in its target storage location, and move the data in non-target storage locations to the temporary storage unit;
[0012] Find the target storage location of the non-target storage location data, and move the non-target storage location data to the corresponding target storage location.
[0013] As a preferred solution, the step of finding the target storage location of the non-target storage location data and moving the non-target storage location data to the corresponding target storage location specifically includes the following steps:
[0014] S01, searching for data whose target storage location is the empty memory unit, and moving the data from the original memory unit to the empty memory unit, so that the original memory unit becomes a new empty memory unit;
[0015] S02, finding a target storage location of the data stored in the temporary storage unit, and moving the existing data in the memory unit of the target storage location to the new empty memory unit;
[0016] S03, moving the data stored in the temporary storage unit to the memory unit at the target storage location.
[0017] As a preferred solution, collecting data of multiple channels in a first order includes:
[0018] Get the number of channels N;
[0019] Get the data collection times S of each channel;
[0020] Collect one data from each channel in order to complete one round of data collection, and then repeat the collection for S rounds.
[0021] As a preferred solution, collecting data from multiple channels in a first order and sequentially storing the data in the multiple memory units includes:
[0022] Determine that the number of memory cells opened in the memory is S*N;
[0023] storing the data collected by the multiple channels in the multiple memory units in sequence according to a first order;
[0024] The first sequence is to arrange the data obtained by completing a round of data collection for each channel in order of precedence to form a first sub-sequence, and then arrange the data in order of precedence using the result of the first sub-sequence arrangement as an arrangement unit.
[0025] As a preferred solution, the second order is: all channels are numbered in sequence, the data collected by the same channel are arranged adjacent to each other, the data collected by one channel are arranged immediately after the arrangement is completed, and the target storage location of the data collected by the channel with the earlier number is arranged in front, and so on, until the data collected by all channels are classified and arranged.
[0026] As a preferred solution, step S01 further includes the following sub-steps:
[0027] S011, calculating the arrangement order M of the empty memory cells, and determining that the arrangement order M corresponds to the data collected by the Nth channel in the Sth round in the second order;
[0028] S012, selecting the data collected by the Nth channel in the Sth round from the data in all non-target storage locations and moving them to the empty memory unit.
[0029] As a preferred solution, in step S02, the specific process of finding the target storage location of the data stored in the temporary storage unit is:
[0030] It is determined that the data stored in the temporary storage unit is collected by which channel in which round, and then the memory unit corresponding to the data is searched in the second sequence, and the memory unit is determined as the target storage location.
[0031] The present invention also provides a data processing system, including a processing module, a DMA data acquisition module and a memory module; wherein:
[0032] The DMA data acquisition module is used to acquire data of multiple channels in a first order and store the data in the memory module;
[0033] The memory module is used to open up a plurality of memory units and receive the data one by one according to the first sequence, and the memory module is also used to open up a temporary storage unit to temporarily store the data moved from one of the memory units;
[0034] The processing module is used to re-plan the target storage locations of the data received by the plurality of memory units according to the second order;
[0035] The processing module is also used to determine whether each data is in its own target storage position, move the data in the non-target storage position to the temporary storage unit in turn, find the target storage position of the non-target storage position data, and move the non-target storage position data to the corresponding target storage position.
[0036] The present invention also provides a computer device, including a processor and a memory, wherein a computer program is stored in the memory, and when the processor executes the computer program, the data processing method of any of the above schemes is implemented.
[0037] The present invention also provides a computer storage medium, wherein the computer storage medium stores a computer program, and when the computer program is executed, the data processing method of any of the above schemes is implemented.
[0038] The advantages of the present invention are as follows: by opening up multiple memory units in the memory to receive data collected by multiple channels one by one in the first order, and opening up another temporary storage unit in the memory for temporarily storing data moved from one of the memory units, the temporary storage unit can free up an empty memory unit for the memory unit storing data, so that the data stored in the multiple memory units can be rearranged according to the target storage position planned in the second order to facilitate the direct reading and use of the data by the CPU. Since only one temporary storage unit needs to be opened up in the memory to complete the data rearrangement task for the data stored in the multiple memory units, the memory usage consumption of the data rearrangement process can be greatly saved, and the need to process complex data or data with a large amount of information in a small memory space can be met. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0040] Figure 1 It is a flow chart of the data processing method of the present invention;
[0041] Figure 2 A schematic diagram of a data rearrangement process of the data processing method of the present invention;
[0042] Figure 3 It is a structural schematic diagram of the data processing system of the present invention;
[0043] Figure 4 A schematic diagram of data being stored in a first order in the data processing method of the present invention;
[0044] Figure 5 A schematic diagram of rearranging and storing data in a second order in the data processing method of the present invention;
[0045] Figure 6 A schematic diagram of comparing storage positions of data arranged in a first order and data rearranged in a second order in the data processing method of the present invention;
[0046] Figure 7 for Figure 2 Schematic diagram of the specific operation flow of step S01;
[0047] Figure 8 A schematic diagram of moving data from a non-target storage location to a target storage location through transition of a temporary storage unit in the data processing method of the present invention;
[0048] Fig. 9 It is a schematic diagram of moving the non-target storage location data temporarily stored in the temporary storage unit to the target storage location in the data processing method of the present invention.
[0049] Figure 3 Among them, 1. Processing module; 2. DMA data acquisition module; 3. Memory module.
[0050] The above drawings have shown clear embodiments of the present invention, which will be described in more detail below. These drawings and text descriptions are not intended to limit the scope of the present invention in any way, but to illustrate the concept of the present invention for those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION
[0051] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0052] The terms used in the embodiments of the present invention are only for the purpose of describing specific embodiments, and are not intended to limit the present invention. The singular forms "a", "an" and "the" used in the embodiments of the present invention are also intended to include plural forms, unless the context clearly indicates other meanings.
[0053] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. In the description of the present invention, the meaning of "multiple" and "several" is two or more, unless otherwise clearly and specifically defined.
[0054] It should be understood that the term "and / or" used in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.
[0055] As used herein, the words "if" and "if" may be interpreted as "at the time of" or "when" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrases "if it is determined" or "if (stated condition or event) is detected" may be interpreted as "when it is determined" or "in response to determining" or "when detecting (stated condition or event)" or "in response to detecting (stated condition or event)", depending on the context.
[0056] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a product or system including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such a product or system. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the product or system including the elements.
[0057] The technical solution of the present invention and how the technical solution of the present invention solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present invention will be described below in conjunction with the accompanying drawings.
[0058] The data processing method provided by the present invention is mainly applied to instruments or devices equipped with embedded systems. For example, in the field of medical devices, various devices for outputting energy to achieve treatment, such as ultrasonic therapeutic devices, gold micro-needle therapeutic devices, microwave therapeutic devices, photon therapeutic devices, etc., are all equipped with embedded systems. Therefore, the data processing method provided by the present invention is also actually applied in the embedded system environment of these devices that can output energy to achieve treatment.
[0059] like Figure 1 As shown, a data processing method provided by the present invention comprises the following steps:
[0060] Open up multiple memory units in the memory;
[0061] Collecting data from the plurality of channels in a first order, and sequentially storing the data in the plurality of memory units;
[0062] Specifically, the data of multiple channels are collected in a first order through the DMA data acquisition module, and the same number of memory units are opened up in the memory according to the number of data collected in the multiple channels. One memory unit receives one data correspondingly, and the collected data are placed in the memory unit one by one in sequence according to the first order.
[0063] A temporary storage unit is additionally opened in the memory for temporarily storing data moved from one of the memory units; specifically, a temporary storage unit is additionally opened in the memory, the temporary storage unit has the same size as one of the memory units, and is used to temporarily store data moved from one of the memory units.
[0064] The target storage locations of the data received by the multiple memory units are re-planned according to the second order; although the DMA data acquisition module has put the data collected by the multiple channels into the memory according to the first order, the data stored in the memory arranged in the first order is not yet data arranged according to the established rules. When the CPU calls, it still needs to go through a search process, which affects the data reading efficiency. Therefore, the stored data needs to be re-sorted to determine the target storage location of each data.
[0065] Determine whether each data is in its target storage location, and move the data in non-target storage locations to the temporary storage unit;
[0066] Find the target storage location of the non-target storage location data, and move the non-target storage location data to the corresponding target storage location.
[0067] Since the target storage position of each data is re-planned according to the second order, the target storage position of each data can be compared with the position of each data in the first order to determine whether the current position in the first order is consistent with the target storage position, so as to determine whether each data is in its target storage position. If the current position in the first order is inconsistent with the target storage position, the position of the data in the first order is a non-target storage position, and its target storage position needs to be found. The temporary storage unit can temporarily store data at a non-target storage position, freeing up storage space for a data in the memory unit sequence, so that the data at the non-target storage position can be rearranged and moved to the corresponding target storage position.
[0068] like Figure 2 As shown, in the above steps, finding the target storage location of the non-target storage location data and moving the non-target storage location data to the corresponding target storage location specifically includes the following steps:
[0069] S01, searching for data whose target storage location is the empty memory unit, and moving the data from the original memory unit to the empty memory unit, so that the original memory unit becomes a new empty memory unit;
[0070] S02, finding a target storage location of the data stored in the temporary storage unit, and moving the existing data in the memory unit of the target storage location to the new empty memory unit;
[0071] S03, moving the data stored in the temporary storage unit to the memory unit of the target storage location.
[0072] In the above steps, collecting data of multiple channels in a first order includes:
[0073] Get the number of channels N;
[0074] Get the data collection times S of each channel;
[0075] Collect one data from each channel in order to complete one round of data collection, and then repeat the collection for S rounds.
[0076] like Figure 3 As shown, assuming there are 3 channels (the channels here can be serial ports or data transmission nodes), marked as ADC1, ADC2 and ADC3 in order, the DMA data acquisition module collects data 5 times on each channel, then collects 1 data on the three channels ADC1, ADC2 and ADC3 in order and puts it into the memory, completing one round of data collection, and then enters the next round of data collection, and repeats this cycle for 5 rounds.
[0077] In the above steps, collecting data from multiple channels in a first order and sequentially storing the data in the multiple memory units includes:
[0078] Determine that the number of memory cells opened in the memory is S*N;
[0079] storing the data collected by the multiple channels in the multiple memory units in sequence according to a first order;
[0080] The first sequence is to arrange the data obtained by completing a round of data collection for each channel in order of precedence to form a first sub-sequence, and then arrange the data in order of precedence using the result of the first sub-sequence arrangement as an arrangement unit.
[0081] Combination Figure 3 and Figure 4As shown, the three channels mentioned above collected five rounds of data in sequence, so 5*3=15 memory units are opened in the memory, and the 15 memory units are numbered R1, R2, R3, R4, R5... R15 in sequence, and the data collected by the three channels in the first round are numbered ADC1-101, ADC2-201 and ADC3-301 in sequence, the data collected by the three channels in the second round are numbered ADC1-102, ADC2-202 and ADC3-302 in sequence, the data collected by the three channels in the third round are numbered ADC1-103, ADC2-203 and ADC3-303 in sequence... ...The data collected by the three channels in the fifth round are numbered ADC1-105, ADC2-205 and ADC3-305 in sequence. Then the arrangement result of the memory units corresponding to the storage of the above collected data in the first order is:
[0082] ADC1-101→R1, ADC2-201→R2, ADC3-301→R3, ADC1-102→R4, ADC2-202→R5, ADC3-302→R6... ...ADC1-105→R13, ADC2-205→R14, ADC3-305→R15.
[0083] In the above steps, the second order arrangement process is: all channels are numbered in sequence, the data collected by the same channel are arranged adjacently, and after the data collected by one channel is arranged, the data of another channel is arranged immediately, and the target storage location of the data collected by the channel with the earlier number is arranged in front, and so on, until the data collected by all channels are classified and arranged.
[0084] like Figure 5 As shown, according to the arrangement process of the second order: the three channels are numbered ADC1, ADC2 and ADC3 in sequence, among which the five data collected by channel ADC1 are sorted as ADC1-101, ADC1-102, ADC1-103, ADC1-104, ADC1-105, followed by the five data collected by channel ADC2 being sorted as ADC2-201, ADC2-202, ADC2-203, ADC2-204, ADC2-205, and finally the five data collected by channel ADC3 are sorted as ADC3-301, ADC3-302, ADC3-303, ADC3-304, ADC3-305. At this point, the classification and arrangement of the data collected by the three channels are completed.
[0085] Therefore, if you want to determine whether the data collected by the three channels is in your target storage position under the first order arrangement and according to the second order arrangement rules, you can compare the storage position of the first order arrangement with the storage position of the second order arrangement to see whether the storage position of the same data in the first order arrangement is the same as the storage position of the second order arrangement. If they are not the same, the data can be determined as non-target storage position data.
[0086] like Figure 6 As shown, on the left are the storage positions of the data collected by the three channels arranged in the first order, and on the right are the storage positions of the data collected by the three channels rearranged in the second order. By comparing the storage positions of the same data in the first order arrangement with the storage positions in the second order arrangement, it can be seen that except for the three data ADC1-101, ADC2-203, and ADC3-305 which are in their target storage positions under the first order arrangement, the remaining data are all in non-target storage positions under the first order arrangement, and are all non-target storage position data, and all need to be moved to the corresponding target storage positions. For example, the data ADC2-201 stored in the memory unit R2 should be moved to the memory unit R6, the data ADC3-301 stored in the memory unit R3 should be moved to the memory unit R11, the data ADC1-102 stored in the memory unit R4 should be moved to the memory unit R2, and so on.
[0087] like Figure 7 As shown, step S01 further includes the following sub-steps:
[0088] S011, calculating the arrangement order M of the empty memory cells, and determining that the arrangement order M corresponds to the data collected by the Nth channel in the Sth round in the second order;
[0089] S012, selecting the data collected by the Nth channel in the Sth round from the data in all non-target storage locations and moving them to the empty memory unit.
[0090] Combination Figure 6 , Figure 8 and Fig. 9 As shown, the temporary storage unit is marked as R0. Since the data ADC2-201 stored in the memory unit R2 is non-target storage location data, the data ADC2-201 is moved to the temporary storage unit R0 for temporary storage. At this time, the memory unit R2 becomes an empty memory unit. The memory unit R2 corresponds to the data ADC1-102 collected by the first channel ADC1 in the second round in the second sequence. Through the above judgment, it can be known that the data ADC1-102 is non-target storage location data, and its current storage location is the memory unit R4, so the data ADC1-102 is moved from the memory unit R4 to the memory unit R2, and the memory unit R4 becomes a new empty memory unit at this time.
[0091] In step S03, the specific process of finding the target storage location of the data stored in the temporary storage unit is as follows:
[0092] It is determined that the data stored in the temporary storage unit is collected by which channel in which round, and then the memory unit corresponding to the data is searched in the second sequence, and the memory unit is determined as the target storage location.
[0093] As mentioned above, the data temporarily stored in temporary storage unit R0 is ADC2-201. Data ADC2-201 is the data collected by the second channel in the first round. By searching in the second sequence, it can be known that data ADC2-201 corresponds to memory unit R6. Therefore, memory unit R6 is the target storage location of data ADC2-201.
[0094] The existing data ADC3-202 in the memory unit R6 is moved to the new empty memory unit R4, and the data ADC2-201 stored in the temporary storage unit R0 is moved to the memory unit R6. At this time, the temporary storage unit R0 is restored to an empty memory unit, and the data position rearrangement and movement process is completed. Repeat the above data position rearrangement and movement process until all data are stored in the memory unit of the target storage position.
[0095] The present invention also provides a data processing system, comprising a processing module 1, a DMA data acquisition module 2 and a memory module 3; wherein:
[0096] The DMA data acquisition module is used to acquire data of multiple channels in a first order and store the data in the memory module;
[0097] The memory module is used to open up a plurality of memory units and receive the data one by one according to the first sequence, and the memory module is also used to open up a temporary storage unit to temporarily store the data moved from one of the memory units;
[0098] The processing module is used to re-plan the target storage locations of the data received by the plurality of memory units according to the second order;
[0099] The processing module is also used to determine whether each data is in its own target storage position, move the data in the non-target storage position to the temporary storage unit in turn, find the target storage position, and move the data in the non-target storage position to the corresponding target storage position.
[0100] The present invention also provides a computer device, including a processor and a memory, wherein a computer program is stored in the memory, and when the processor executes the computer program, the data processing method of any of the above schemes is implemented.
[0101] The present invention also provides a computer storage medium, wherein the computer storage medium stores a computer program, and when the computer program is executed, the data processing method of any of the above schemes is implemented.
[0102] The advantages of the present invention are as follows: by opening up multiple memory units in the memory to receive data collected by multiple channels one by one in the first order, and opening up another temporary storage unit in the memory for temporarily storing data moved from one of the memory units, the temporary storage unit can free up an empty memory unit for the memory unit storing data, so that the data stored in the multiple memory units can be rearranged according to the target storage position planned in the second order, so as to facilitate the direct reading and use of the data by the CPU. Since only one temporary storage unit needs to be opened up in the memory to complete the data rearrangement task for the data stored in the multiple memory units, the memory usage consumption of the data rearrangement process can be greatly saved, and the need to process complex data or data with a large amount of information in a small memory space can be met.
[0103] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, memory module, memory, database or other media used in the embodiments provided by the present invention can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory unit, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided by the present invention may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided by the present invention may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic unit, a data processing logic unit based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0104] Those skilled in the art will readily appreciate other embodiments of the present invention after considering the specification and practicing the applications disclosed herein. The present invention is intended to cover any variations, uses or adaptations of the present invention that follow the general principles of the present invention and include common knowledge or customary techniques in the art that are not disclosed by the present invention. The description and examples are to be considered exemplary only, and the true scope and spirit of the present invention is indicated by the following claims.
[0105] It should be understood that the present invention is not limited to the exact construction that has been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present invention is limited only by the appended claims.
Claims
1. A data processing method, characterized in that: include: Open up multiple memory units in the memory; Collecting data from the plurality of channels in a first order, and sequentially storing the data in the plurality of memory units; A temporary storage unit is opened in the memory for temporarily storing data moved from one of the memory units; re-planning target storage locations of the data received by the plurality of memory units according to a second order; Determine whether each data is in its target storage location, and move the data in non-target storage locations to the temporary storage unit; Find the target storage location of the non-target storage location data, and move the non-target storage location data to the corresponding target storage location.
2. The data processing method according to claim 1, characterized in that: The step of finding the target storage location of the non-target storage location data and moving the non-target storage location data to the corresponding target storage location specifically includes the following steps: S01, searching for data whose target storage location is an empty memory cell, moving the data from the original memory cell to the empty memory cell, and the original memory cell becomes a new empty memory cell; S02, finding a target storage location of the data stored in the temporary storage unit, and moving the existing data in the memory unit of the target storage location to the new empty memory unit; S03, moving the data stored in the temporary storage unit to the memory unit at the target storage location.
3. The data processing method according to claim 2, characterized in that: The collecting of data of multiple channels in a first order comprises: Get the number of channels N; Get the data collection times S of each channel; Collect one data from each channel in order to complete one round of data collection, and then repeat the collection for S rounds.
4. The data processing method according to claim 3, characterized in that: The collecting data from the plurality of channels in a first order and sequentially storing the data in the plurality of memory units comprises: Determine that the number of memory cells opened in the memory is S*N; storing the data collected by the multiple channels in the multiple memory units in sequence according to a first order; The first sequence is to arrange the data obtained by completing a round of data collection for each channel in order of precedence to form a first sub-sequence, and then arrange the data in order of precedence using the result of the first sub-sequence arrangement as an arrangement unit.
5. The data processing method according to claim 4, characterized in that: The second order is: number all channels in sequence, arrange the data collected by the same channel adjacently, arrange the data collected by one channel immediately after the arrangement is completed, and arrange the target storage location of the data collected by the channel with the earlier number in front, and so on, until the data collected by all channels are classified and arranged.
6. The data processing method according to claim 5, characterized in that: Step S01 further includes the following sub-steps: S011, calculating the arrangement order M of the empty memory cells, and determining that the arrangement order M corresponds to the data collected by the Nth channel in the Sth round in the second order; S012, selecting the data collected by the Nth channel in the Sth round from the data in all non-target storage locations and moving them to the empty memory unit.
7. The data processing method according to claim 5 or 6, characterized in that: In step S02, the specific process of finding the target storage location of the data stored in the temporary storage unit is as follows: It is determined that the data stored in the temporary storage unit is collected by which channel in which round, and then the memory unit corresponding to the data is searched in the second sequence, and the memory unit is determined as the target storage location.
8. A data processing system, characterized in that: It includes a processing module, a DMA data acquisition module and a memory module; among which, The DMA data acquisition module is used to acquire data of multiple channels in a first order and store the data in the memory module; The memory module is used to open up a plurality of memory units and receive the data one by one according to the first sequence, and the memory module is also used to open up a temporary storage unit to temporarily store the data moved from one of the memory units; The processing module is used to re-plan the target storage locations of the data received by the plurality of memory units according to the second order; The processing module is also used to determine whether each data is in its own target storage location, move the data in the non-target storage location to the temporary storage unit, find the target storage location of the non-target storage location data, and move the non-target storage location data to the corresponding target storage location.
9. A computer device, characterized in that: The method comprises a processor and a memory, wherein the memory stores a computer program, and when the processor executes the computer program, the data processing method according to any one of claims 1 to 7 is implemented.
10. A computer storage medium, characterized in that: The computer storage medium stores a computer program, and when the computer program is executed, the data processing method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Embedded type finger print reconstruction accelerator and dynamic finger print reconstruction method
CN101408934A
Many-core parallel optimization algorithm for solving discrete memory access problem of unstructured grid
CN112445604A
Multi-channel memory storage device, control circuit unit and data reading method thereof
CN114333930A
System and method for data sorting
CN118656050A
DDR distribution method and system based on multichannel intermediate frequency signal acquisition
CN119046185A