Data read-write processing method, storage space allocation method, device and equipment
Through centralized distribution of storage space in the baseband link, the problem of low -utilization of repetitive storage resources in traditional technologies has been solved, and more efficient data access and processing is achieved.
Patent Information
- Application Number
- CN202411378523.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2025-01-21
AI Technical Summary
In the traditional baseband link functional module, each module independently allocates storage space, resulting in a low reuse rate of storage resources.
Centralized allocation and multiplexing of storage space is achieved by determining the first interface type of each first module in the second module and generating first information based on the type to indicate the storage unit where the storage space of the first module is located. .
It improves the reuse rate of storage resources, reduces the waiting time of each module in the baseband link during read and write operations, optimizes the data access path, and reduces bottlenecks caused by competition.
Smart Images

Figure CN119336653A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present application relate to the field of communication technology, and specifically to a data reading and writing processing method, a storage space allocation method, a device, and a device. Background Art
[0002] In the functional modules of the baseband link, it is usually necessary to allocate corresponding storage space for input and output data to support read and write operations. Traditionally, each functional module is allocated independent memory space. Although this method ensures the isolation and security of data processing, it also leads to a low reuse rate of storage resources. Summary of the invention
[0003] The embodiments of the present application provide a data read and write processing method, a storage space allocation method, a device and an apparatus to solve the problem of low storage resource reuse rate.
[0004] In a first aspect, a data reading and writing processing method is provided, which is applied to a first module and includes:
[0005] Acquire first information from a second module, where the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface;
[0006] A read operation and / or a write operation is performed on a storage unit where the storage space of the first interface is located according to the first information.
[0007] Optionally, the type includes at least one of the following:
[0008] An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level;
[0009] An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1;
[0010] An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
[0011] Optionally, the first information is determined based on the type of the first interface, including:
[0012] The first information is determined based on the type of the first interface and a first allocation principle;
[0013] The first allocation principle includes at least one of the following:
[0014] The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0015] The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0016] The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0017] The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0018] Optionally, the storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0019] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0020] Optionally, the first information includes at least one of the following:
[0021] second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0022] The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0023] Optionally, the output interface includes at least one of the following: a first output interface and a second output interface;
[0024] The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
[0025] Optionally, the first allocation principle further includes at least one of the following:
[0026] The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0027] The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
[0028] Optionally, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0029] Optionally, the first module includes a functional module on a baseband link, and the second module includes a functional module for performing data management of the baseband link.
[0030] In a second aspect, a storage space allocation method is provided, which is applied to a second module and includes:
[0031] Determining a type of a first interface of each first module in the communication device;
[0032] Determine, according to the type of the first interface, first information, where the first information is used to indicate a storage unit where a storage space of the first interface is located;
[0033] The first information is sent to the first module.
[0034] Optionally, the method further includes:
[0035] The size of the storage space that needs to be allocated to the first interface is determined.
[0036] Optionally, the method further includes:
[0037] The storage space required to be allocated to each storage unit is determined according to the first information and the size of the storage space required to be allocated to each of the first interfaces.
[0038] Optionally, determining the storage space required to be allocated to each storage unit according to the first information and the size of the storage space required to be allocated to each of the first interfaces includes:
[0039] Determine a first set of each first module according to the first information, the first set including all first interfaces of the first module allocated to the same storage unit, and the size of the storage space of each first interface;
[0040] Determine a second set for each storage unit according to the first sets of all the first modules, wherein the second set includes first sets of different first modules corresponding to the same storage unit;
[0041] Determining a maximum storage space required to be allocated to the storage unit according to the second set;
[0042] The size of the actual storage space required by each storage unit is determined according to the maximum storage space required to be allocated to the storage unit.
[0043] Optionally, the type includes at least one of the following:
[0044] An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level;
[0045] An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1;
[0046] An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
[0047] Optionally, determining the first information according to the type of the first interface includes:
[0048] Determining first information according to the type of the first interface and a first allocation principle;
[0049] The first allocation principle includes at least one of the following:
[0050] The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0051] The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0052] The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0053] The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0054] Optionally, the storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0055] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0056] Optionally, the first information includes at least one of the following:
[0057] second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0058] The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0059] Optionally, the output interface includes at least one of the following: a first output interface and a second output interface;
[0060] The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
[0061] Optionally, the first allocation principle also includes:
[0062] The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0063] The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
[0064] Optionally, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0065] Optionally, the first module includes a functional module on a baseband link, and the second module includes a functional module for performing data management of the baseband link.
[0066] In a third aspect, a data reading and writing processing device is provided, which is applied to a first module and includes: a first transceiver unit and a first processing unit;
[0067] a first transceiver unit, configured to obtain first information from a second module, wherein the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface;
[0068] The first processing unit is used to perform a read operation and / or a write operation on the storage unit where the storage space of the first interface is located according to the first information.
[0069] Optionally, the type includes at least one of the following:
[0070] An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level;
[0071] An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1;
[0072] An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
[0073] Optionally, the first information is determined based on the type of the first interface, including:
[0074] The first information is determined based on the type of the first interface and a first allocation principle;
[0075] The first allocation principle includes at least one of the following:
[0076] The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0077] The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0078] The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0079] The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0080] In a fourth aspect, a storage space allocation device is provided, which is applied to a second module and includes: a second transceiver unit and a second processing unit;
[0081] A second processing unit, configured to determine a type of a first interface of each first module in the communication device;
[0082] The second processing unit is further used to determine first information according to the type of the first interface, where the first information is used to indicate a storage unit where the storage space of the first interface is located;
[0083] The second transceiver unit is used to send the first information to the first module.
[0084] Optionally, the second processing unit is further used to determine a size of storage space that needs to be allocated to the first interface.
[0085] Optionally, the second processing unit is further used to determine the storage space that needs to be allocated to each storage unit according to the first information and the size of the storage space that needs to be allocated to each first interface.
[0086] Optionally, the second processing unit is further used to: determine a first set of each first module based on the first information, the first set including all first interfaces of the first module allocated to the same storage unit, and the size of the storage space of each first interface; determine a second set of each storage unit based on the first sets of all first modules, the second set including first sets of different first modules corresponding to the same storage unit; determine the maximum storage space required to be allocated to the storage unit based on the second set; determine the size of the actual storage space required for each storage unit based on the maximum storage space required to be allocated to the storage unit.
[0087] In a fifth aspect, a communication device is provided, comprising a processor, a memory, and a program or instruction stored in the memory and executable on the processor, wherein the program or instruction, when executed by the processor, implements the steps of the method described in the first aspect or the second aspect.
[0088] In a sixth aspect, a readable storage medium is provided, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the method described in the first aspect or the second aspect are implemented.
[0089] In a seventh aspect, a computer program product is provided, comprising computer instructions, which, when executed by a processor, implement the steps of the method described in the first aspect or the second aspect.
[0090] In the present application, the first module determines the storage unit where the second module allocates the storage space for the first interface of the first module through the first information, and the storage unit is defined based on the type of the first interface. Then the first module performs a read operation and / or a write operation on the storage unit where the storage space of the first interface is located according to the first information. The design of this mechanism supports the second module to uniformly allocate the required storage space to the first interface of each first module according to the execution order of the first module on the baseband link. This centralized storage space allocation method can maximize the reuse rate of storage resources. In addition, it effectively reduces the waiting time of each first module on the baseband link when performing read and write operations. Specifically, when multiple first modules share the same storage unit, data can be quickly accessed or updated, thereby reducing data transfer delays. Moreover, unified storage management can optimize data access paths and reduce bottlenecks caused by competition between various first modules. BRIEF DESCRIPTION OF THE DRAWINGS
[0091] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings:
[0092] Figure 1 is a flow chart of a data reading and writing processing method provided by an embodiment of the present application;
[0093] Figure 2 is a flow chart of a storage space allocation method provided by an embodiment of the present application;
[0094] Figure 3 It is a schematic diagram of the existing on-chip links and the interaction between on-chip storage and external storage;
[0095] Figure 4 It is a schematic diagram of the on-chip link and on-chip storage interaction provided by an embodiment of the present application;
[0096] Figure 5 is a functional module flow chart of a receiving link provided by an embodiment of the present application;
[0097] Figure 6 is a schematic diagram of a data reading and writing processing device provided in an embodiment of the present application;
[0098] Figure 7 is a schematic diagram of a storage space allocation device provided in an embodiment of the present application;
[0099] Figure 8 It is a schematic diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0100] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0101] The term "comprise" and any variation thereof in the specification and claims of the present application are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units need not be limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. In addition, the use of "and / or" in the specification and claims to indicate at least one of the connected objects, such as A and / or B, means that A alone, B alone, and A and B exist in three cases.
[0102] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way.
[0103] In the development of functional modules of baseband links, there are many characteristics, such as many types of links (for example, baseband links include data channel links, control channel links, reference signal links, etc.), many functional modules (for example, functional modules include automatic gain control (AGC), channel estimation, channel equalization, demodulation, decoding, scrambling, etc.), many input and output interface data and parameters of functional modules, and large demand for internal storage space (also referred to as memory). Among them, memory management of input and output data of functional modules is crucial. For general chips or hardware systems, storage space is limited and precious. Effective management of storage space can not only optimize the resources of the entire hardware design, but also improve the convenience of later testing of modules.
[0104] At the same time, due to the limited number and size of internal storage space (Data Memory, DM) of general chips, conventional baseband link implementations need to rely on external double data rate (Double Data Rate, DDR) storage space or shared storage space (Shared Memory, SM) space to support the entire link function and performance requirements. Not only does it increase external resource costs, but internal / external data interaction will also consume processing time, and processing efficiency is bound to affect the overall system performance.
[0105] Therefore, the calculation of storage space occupied by functional modules and effective reuse arrangement are key steps in development and implementation, and are also the focus of hardware resource optimization in chip design. For example, for small base station baseband chips, with the increase in cell capacity and number of antennas, the maximum reuse of storage resources under limited chip storage resources is required to support higher-specification product requirements and improve chip data interaction efficiency. These bring challenges to link design and development.
[0106] See also Figure 1 An embodiment of the present application provides a data reading and writing processing method, which is applied to a first module. The first module may be a functional module in a communication device that requires allocation of storage space. The above-mentioned communication device may include but is not limited to a terminal, a base station, a television, etc. The specific steps include: step 11 and step 12.
[0107] Step 11: Acquire first information from the second module, where the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface;
[0108] Optionally, the first module includes a functional module on the baseband link, for example, the first module includes but is not limited to at least one of an automatic gain control module, a channel estimation module, a channel equalization module, a demodulation module, a decoding module, and a scrambling module, and the second module includes a functional module that performs data management of the baseband link, for example, the second module can be a processing module on the baseband link. It can be understood that the number of the first module and the second module on the baseband link is not specifically limited in this embodiment.
[0109] It should be noted that the storage space of the first interface refers to the space used to store input data or output data of the first interface or the space required for internal calculation. Optionally, the first interface includes an interface to which storage space needs to be allocated, and the first interface may be a physical interface or a virtual interface.
[0110] Optionally, the first information may be determined by the second module based on the type of the first interface, and the first information may also be referred to as a storage space ownership identifier of the interface data.
[0111] Optionally, the type includes at least one of the following: a) an input interface, the data of the input interface includes the original data of the external input and / or the output data of the first module of the previous level, and the number of the first modules of the previous level can be one or more; b) an output interface, the data of the output interface includes the input data of the first module of the next level or the first modules of the next N levels, N is greater than 1, and the number of the first modules of the next level or the first modules of the next N levels can be one or more; c) an intermediate computing interface, the data of the intermediate computing interface is used for internal calculations of the current first module.
[0112] Optionally, the type of the first interface can be used to indicate the function and / or order of the first module on the baseband link. For example, if the first interface is an input interface, the first module obtains the data output by the first module of the previous level through the input interface; if the first interface is an output interface, the first module provides input data to the first module of the next level or the first module of the next N levels through the output interface; if the first interface is an intermediate calculation interface, the first module performs internal calculations through the first interface, and the order depends on the processing results of the input and output data, thereby affecting the execution of the subsequent first module. Therefore, the function and / or order of the first module on the baseband link can be effectively indicated by the type of the first interface.
[0113] In this embodiment, the second module can allocate the storage unit where the storage space is located for the first interface of the first module based on the type of the first interface. This mechanism supports the unified allocation of the storage space required for the first interface of each first module according to the execution order of the first modules on the baseband link. This not only improves the reuse rate of the resources (i.e., storage unit) of the storage space, but also effectively reduces the waiting time in the read / write operation of each first module on the baseband link, thereby significantly improving the processing speed of the entire baseband link.
[0114] Optionally, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0115] Optionally, the on-chip memory or the external memory may include multiple storage partitions, and the storage unit may be one or more storage partitions located on the on-chip memory or the external memory.
[0116] In the case where the storage unit only includes on-chip memory, the overall repeated flow of data with the external storage space is reduced, and the internal and external data interaction is converted into direct interaction within the chip, saving interface delay overhead, saving external storage occupancy, saving chip resource costs, and greatly improving the processing efficiency of the entire chip.
[0117] In the case where the storage unit includes an on-chip memory and an external memory, by using a combination of the on-chip memory and the external memory, resources can be dynamically allocated according to the needs of data processing. Frequently accessed data can be stored in the on-chip memory to increase the read and write speed, while large-capacity, low-frequency data can be stored in the external memory, thereby saving space in the on-chip memory.
[0118] Step 12: Based on the first information, perform a read operation and / or a write operation on the storage unit where the storage space of the first interface is located.
[0119] In this embodiment, the first module can determine the storage unit where the storage space of the first interface is uniformly allocated by the second module according to the type of the first interface of the first module according to the first information. For example, when the first interface is the input interface of the first module, the first module indicates the storage unit where the storage space of the first interface of the first module is located according to the first information, and the first module reads the data output by the first module of the previous level from the storage unit; when the first interface is the output interface of the first module, the first module indicates the storage unit where the storage space of the first interface of the first module is located according to the first information, and the first module writes the data processed by the first module into the storage unit; when the first interface is the intermediate computing interface of the first module, the first module indicates the storage unit temporarily occupied by the storage space of the first interface of the first module according to the first information to support the internal computing process. In this way, firstly, the access delay is reduced, because the first module can read and write data directly from the specified storage unit, avoiding the time of repeatedly searching for the location. Secondly, the clear allocation of storage units helps to optimize the data flow, so that each first module can quickly write the processing results into the pre-allocated output storage unit without waiting for the storage management operation of other modules. In addition, multiple first modules can perform read and write operations at the same time without waiting for each other, thereby improving the parallel processing capability of the overall system. At the same time, this clear storage allocation reduces read / write conflicts, makes data interaction more efficient, avoids the occurrence of competition conditions, and ensures smooth data transmission. Finally, by giving priority to the use of on-chip memory (if any), the first module can quickly obtain commonly used data, reduce the call to the external memory, improve the access speed, and reduce the total bandwidth demand. In summary, this embodiment significantly improves the processing efficiency of the baseband link.
[0120] In an implementation manner of the present application, the first information is determined based on the type of the first interface, including:
[0121] The first information is determined based on the type of the first interface and a first allocation principle;
[0122] The first allocation principle includes at least one of the following:
[0123] 1) The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0124] The storage unit where the storage space of the input interface of the first module is located is different from the storage unit where the storage space of the output interface is located. This design can effectively avoid conflicts caused by simultaneous read and write operations, ensure data consistency and integrity, and thus improve system stability and reliability. By eliminating potential competition conditions, data flow can be managed more efficiently and performance can be optimized.
[0125] 2) The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0126] By determining the storage space of the input interface of the current first module based on the storage space of the output interface of the previous first module, a clear and direct data transfer path can be established. This allocation principle ensures that data can flow smoothly from one first module to the next, reducing delays that may occur during data transmission. In addition, clear data dependencies significantly improve the efficiency of the system in data preparation and processing. When the current first module needs to process the data generated by the previous first module, it can directly access the associated storage unit without additional search or copy operations, thereby speeding up the overall execution speed. At the same time, this association simplifies the processing logic, allowing each first module to more easily predict and manage the received data, improving the convenience of debugging and optimization.
[0127] 3) The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0128] The intermediate computing interface of the first module only needs to temporarily occupy the storage space during the calculation process, and the storage space can be released after the calculation is completed. Therefore, the specific location of the storage unit where the storage space of the intermediate computing interface is located can be unrestricted. The design that the storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit of the input or output interface can flexibly optimize the data processing process according to specific needs. If the intermediate computing interface shares the same storage unit with the input or output interface, the data copying and transmission time can be significantly reduced, because the data can be directly read and written, thereby speeding up the processing speed, which is suitable for application scenarios with high real-time requirements. On the other hand, allowing the intermediate computing interface to have an independent storage unit provides greater flexibility. In the complex data processing process, storing the intermediate calculations in different units can help the module manage the state and data more effectively and prevent potential interference and conflicts. This design supports more complex calculation logic, so that the first module can perform multi-step processing without affecting the stability of input and output data.
[0129] 4) The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0130] When the storage space of the input interface of the previous first module is different from the storage space of the input interface of the current first module, this allocation principle can effectively avoid data overlap and potential conflicts, thereby ensuring that each first module can operate independently and stably. In a multiple first module environment, clearly distinguishing these storage units helps prevent inconsistencies caused by data sharing, for example, ensuring that the current first module always processes with the latest and correct data. When multiple first modules can read input data independently from their respective storage units, the entire system can use resources more efficiently, reduce latency, and improve response speed. This is especially important for real-time data processing scenarios. In applications that require fast response, ensure that there is no strong dependency between modules in order to give full play to the advantages of parallel computing.
[0131] In one embodiment of the present application, the storage unit where the storage space of the input interface of the previous first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0132] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0133] In this embodiment, the storage unit where the storage space of the input interface of the previous first module is located is different from the storage unit of the input interface of the current first module, while the storage unit of the input interface of the next first module is the same as the storage unit of the input interface of the previous module. Such a design can realize the effective reuse of storage resources. First, by ensuring that the input interface of the current first module is independent of the previous first module, data conflicts and confusions can be effectively avoided. This separation enables each first module to focus on its own processing tasks, thereby improving the accuracy of data processing and the stability of the system. Secondly, the input interface of the next first module reuses the storage unit of the input interface of the previous first module, realizing the optimized use of storage resources. This design not only reduces the demand for additional storage resources, but also improves the utilization rate of storage resources. By directly accessing the latest input data of the previous first module, the next first module can quickly obtain the required information, reduce the overhead of data replication, and make data flow more efficient. In addition, this reuse of storage resources also simplifies data management. When multiple first modules share the same storage unit, the system architecture becomes more concise and easy to maintain. Overall, this design significantly improves the efficiency of storage resources, the accuracy of data processing, and the maintainability of the system.
[0134] In one embodiment of the present application, the first information includes at least one of the following:
[0135] 1) second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0136] By obtaining the second information in the first information in step 11, the specific storage unit where the storage space of the first interface of the first module is located can be accurately indicated, thereby improving the accuracy and flexibility of data operations. Clear storage unit indication helps the first module to quickly locate the data that needs to be accessed, avoiding the delay caused by multi-level searches, thereby effectively reducing the time of read and write operations. Secondly, by using secondary information, the storage strategy can be dynamically adjusted and optimized according to the needs of different first modules. For example, when multiple first modules need to access the same storage unit, the access order can be scheduled to improve resource utilization. At the same time, because the second information can provide the specific address of the required data, it simplifies the data management process, allowing developers to locate problems more quickly when maintaining the system, which helps to improve the maintainability and reliability of the system.
[0137] 2) Third information, where the third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0138] In step 11, by obtaining the third information in the first information, the storage partition where the storage space of the first interface is located can be indicated. This design advantage is reflected in the efficient use of storage resources and the improvement of the overall performance of the system. First, the clear storage partition indication enables the first module to quickly understand the logical structure of its data storage, so as to perform targeted read and write operations. Especially in large systems, shared storage may cause resource competition, and the partition concept helps the first module to reasonably divide the storage area, effectively reducing the probability of occurrence of competition conditions. Secondly, the use of the third information can adapt to different load requirements and data access modes. In specific scenarios, some storage partitions may require higher priority access, and the third information can assist the second module in making resource allocation decisions to ensure the execution efficiency of key tasks. At the same time, the third information also helps to provide a flexible storage management strategy during the system expansion process, so as to facilitate the dynamic adjustment of the scale and attributes of the storage partition according to business needs. In general, the third information not only improves the efficiency of data access, but also enhances the flexibility and scalability of storage management, thereby providing a guarantee for the stable operation of the system.
[0139] In one embodiment of the present application, the output interface includes at least one of the following: a) a first output interface and b) a second output interface;
[0140] Among them, the data of the first output interface includes the input data of the first module of the next level, which is the data that will be used immediately as input by the first module of the next level; the data of the second output interface includes the input data of the first module of the next N levels, which is not needed to be used temporarily and needs to be retained for use in the subsequent first module other than the next one.
[0141] In the present application, the output interface can be further divided into a first output interface and a second output interface based on whether the output data is immediately used by the next-level first module, so as to select different storage units.
[0142] In one implementation of the present application, the first allocation principle further includes at least one of the following:
[0143] 1) The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0144] By separating the reading and writing of storage space in different storage units, the risk of read-write conflicts is avoided and the reading and writing delays and waiting of storage space are reduced.
[0145] 2) The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first module is located.
[0146] In the present application, when allocating storage units, the first information and the first allocation principle can realize cyclic alternation and the storage units are not occupied at the same time, thereby maximizing the reuse of the storage space of the first interface data. This mechanism ensures that the storage units read and written at the same time are independent of each other, saves memory space, and balances the storage size between the storage units, thereby improving the performance of the entire baseband design.
[0147] like Figure 3 As shown, each functional module in the traditional baseband link is independently allocated storage space, for example, module 1 (the first first module) is allocated partition 1, module 2 (the second first module) is allocated partition 2, module 3 (the third first module) is allocated partition 3, ..., module N (the Nth first module) is allocated partition N, further, module 1, module 2, module 3, ..., module N can also share the same external storage.
[0148] In the present application, the storage space of the first interface of each first module is multiplexed and arranged according to the execution order of each first module, such as Figure 4As shown, the read operation of module 1 and the write operation of module 2 are for the same partition 1, and the write operation of module 1 and the read operation of module 2 are for the same partition 2, which improves the reuse rate of storage resources. Furthermore, in this application, module 1, module 2, module 3, ..., module N may not need to use external storage, thereby reducing the interaction between internal storage and external storage and improving the processing efficiency of the overall link.
[0149] In the present application, the first module determines the storage unit where the second module allocates the storage space for the first interface of the first module through the first information, and the storage unit is defined based on the type of the first interface. Then the first module performs a read operation and / or a write operation on the storage unit where the storage space of the first interface is located according to the first information. The design of this mechanism supports the second module to uniformly allocate the required storage space to the first interface of each first module according to the execution order of the first module on the baseband link. This centralized storage space allocation method can maximize the reuse rate of storage resources (i.e., storage units). In addition, this design effectively reduces the waiting time of each first module on the baseband link when performing read and write operations. Specifically, when multiple first modules share the same storage unit, data can be quickly accessed or updated, thereby reducing data transfer delays. Moreover, unified storage management can optimize data access paths and reduce bottlenecks caused by competition between various first modules.
[0150] See also Figure 2 , an embodiment of the present application provides a storage space allocation method, which is applied to the second module, and the specific steps include: step 21, step 22 and step 23.
[0151] Step 21: Determine the type of the first interface of each first module in the communication device;
[0152] Optionally, the first module includes a functional module on the baseband link, for example, the first module includes but is not limited to at least one of an automatic gain control module, a channel estimation module, a channel equalization module, a demodulation module, a decoding module, and a scrambling module, and the second module includes a functional module that performs data management of the baseband link, for example, the second module can be a processing module on the baseband link. It can be understood that the number of the first module and the second module on the baseband link is not specifically limited in this embodiment.
[0153] Step 22: determining first information according to the type of the first interface, where the first information is used to indicate a storage unit where the storage space of the first interface is located;
[0154] Optionally, the type includes at least one of the following: a) an input interface, the data of the input interface includes the original data of the external input and / or the output data of the first module of the previous level, and the number of the first modules of the previous level can be one or more; b) an output interface, the data of the output interface includes the input data of the first module of the next level or the first modules of the next N levels, N is greater than 1, and the number of the first modules of the next level or the first modules of the next N levels can be one or more; c) an intermediate computing interface, the data of the intermediate computing interface is used for internal calculations of the current first module.
[0155] In this embodiment, the second module can allocate the storage unit where the storage space is located for the first interface of the first module based on the type of the first interface. This mechanism supports the unified allocation of the storage space required for the first interface of each first module according to the execution order of the first modules on the baseband link. This not only improves the reuse rate of the resources (i.e., storage unit) of the storage space, but also effectively reduces the waiting time in the read / write operation of each first module on the baseband link, thereby significantly improving the processing speed of the entire baseband link.
[0156] Step 23: Send the first information to the first module.
[0157] In this embodiment, the first information can be used by the first module to perform a read operation and / or a write operation on the storage unit where the storage space of the first interface of the first module is located.
[0158] In one embodiment of the present application, the method further includes:
[0159] The size of the storage space that needs to be allocated to the first interface is determined.
[0160] Optionally, the size of the storage space that needs to be allocated to the first interface=the data length of the first interface*the data bit width of the first interface.
[0161] In one embodiment of the present application, the method further includes:
[0162] The storage space required to be allocated to each storage unit is determined according to the first information and the size of the storage space required to be allocated to each of the first interfaces.
[0163] In one implementation of the present application, determining the storage space required to be allocated to each storage unit according to the first information and the size of the storage space required to be allocated to each of the first interfaces includes:
[0164] Determine a first set of each first module according to the first information, the first set including all first interfaces of the first module allocated to the same storage unit, and the size of the storage space of each first interface;
[0165] Determine a second set for each storage unit according to the first sets of all the first modules, wherein the second set includes first sets of different first modules corresponding to the same storage unit;
[0166] Determining a maximum storage space required to be allocated to the storage unit according to the second set;
[0167] The size of the actual storage space required by each storage unit is determined according to the maximum storage space required to be allocated to the storage unit.
[0168] The implementation method of the present application optimizes the memory management in the baseband link by dynamically allocating storage space, and formulates corresponding strategies for the storage capacity required by each first interface. First, by analyzing the first information, the first set of each first module, that is, all the first interfaces allocated to the same storage unit and their corresponding storage space size, is determined. This process ensures that memory management is performed according to actual needs rather than fixed allocation, thereby improving the utilization efficiency of storage resources. Secondly, according to the first set of each first module, the second set of each storage unit is constructed, and the first sets of different first modules are aggregated together. This method enables the system to comprehensively evaluate the storage requirements of different first modules and further determine the maximum storage space required to be allocated for each storage unit. This flexibility not only reduces memory waste, but also improves the overall system performance, reduces data access latency, and improves response speed. Finally, by finally confirming the actual storage space required for each storage unit, this mechanism simplifies the memory management process and makes it more efficient. Overall, this implementation method enhances the compatibility and scalability of the system, provides support for new functions that may be added in the future, and provides a more efficient and flexible storage solution for the communication system. By reasonably allocating and using storage space, the working efficiency and performance of the baseband link are significantly improved.
[0169] In one implementation manner of the present application, determining the first information according to the type of the first interface includes:
[0170] Determining first information according to the type of the first interface and a first allocation principle;
[0171] The first allocation principle includes at least one of the following:
[0172] 1) The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0173] 2) The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0174] 3) The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0175] 4) The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0176] In one embodiment of the present application, the storage unit where the storage space of the input interface of the previous first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0177] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0178] In one embodiment of the present application, the first information includes at least one of the following:
[0179] 1) second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0180] 2) Third information, where the third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0181] In one embodiment of the present application, the output interface includes at least one of the following: a first output interface and a second output interface;
[0182] The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
[0183] In one implementation of the present application, the first allocation principle further includes:
[0184] 1) The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0185] 2) The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first module is located.
[0186] In one implementation of the present application, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0187] In one embodiment of the present application, the first module includes a functional module on a baseband link, and the second module includes a functional module for performing data management of the baseband link.
[0188] The storage space allocation method provided by the present application effectively improves the management efficiency of storage resources in the communication device. The method can perform refined storage space division by identifying and classifying the first interface type of each first module. First, by accurately determining the first interface type, a reasonable storage strategy can be formulated for the characteristics and requirements of different interfaces, thereby ensuring that storage resources can be reused between each first module, saving storage space, and balancing the storage size between storage units, thereby improving the performance of the entire baseband design. Then, the corresponding first information is generated according to the type of the first interface, and the storage unit where the storage space of the interface is located is indicated. This process ensures that when data is transmitted, each module can obtain the required information in a timely and effective manner, reduces the search time and complexity, improves the data access speed, and realizes the separation of reading and writing of storage space in different storage units, avoiding the risk of read-write conflicts on the system, and reducing the read-write delay and waiting of storage space. In addition, the first information is sent to the first module, so that the information between modules is transparent, and the coordination ability of the overall system is enhanced. Through this dynamic storage space management method, the communication device can respond to changing needs more quickly, while also improving the utilization rate of storage resources and reducing potential resource waste.
[0189] The implementation of the present application is described below in conjunction with Example 1 and Example 2.
[0190] Embodiment 1
[0191] Step 1: Determine the classification of the first interface:
[0192] Optionally, in step 1, the storage space size required by each first interface may also be calculated, for example, storage space size=data length×data bit width.
[0193] In step 1, according to the implementation algorithm flow of the baseband link, each first module of the baseband link is determined, and the first interface to which storage space needs to be allocated is classified, and the type of the first interface includes but is not limited to at least one of the following:
[0194] (1) Input interface;
[0195] Input interface (IN): The data of the input interface of each first module mainly includes the original data of external input and the data of the output interface of the first module at the previous level. Generally, the input data of the current first module is no longer useful after being used by the operation of this module, and the memory can be released. Of course, some data may need to be used by one or more subsequent first modules.
[0196] Optionally, the storage space may be an internal storage space (ie, memory).
[0197] (2) Output interface;
[0198] Output interface: The data of the output interface of each first module is generally used as the input data of the subsequent first module. The output interface can be divided into two categories: the first output interface (OUT) and the second output interface (OUT'). The first output interface is a data interface that will be used immediately as input by the next-level first module, referred to as the first category (immediate use). When the data of the output interface is used up by the next-level first module, the storage space of the output interface will be released and can be used by other interfaces; the second output interface is a data interface that does not need to be used temporarily and needs to be reserved for use by the next subsequent first module, referred to as the second category (remote use).
[0199] (3) Intermediate computing interface.
[0200] Intermediate computing port (TMP): refers to the temporary storage space required for the internal calculation of the current first module. It is only occupied during the intermediate calculation process of the current first module. After the calculation of the first module is completed, the storage space can be released.
[0201] Table 1:
[0202]
[0203] Taking Table 1 as an example, the baseband link includes module 1 (i.e., the first first module), module 2 (i.e., the second first module), ..., module N (i.e., the Nth first module), and the input interface of module 1 includes: the first input interface (IN 1,1 ), the second input interface (IN 1,2 ), the third input interface (IN 1,3 )…, the first output interface in the output interface of module 1 includes: a first first output interface (OUT 1,1 ), the second first output interface (OUT 1,2 ), the third first output interface (OUT 1,3 ), ..., the second output interface includes: a first second output interface (OUT 1,1 '), the second second output interface (OUT 1,2 '), the third second output interface (OUT 1,3 '), ..., the intermediate computing interface of module 1 includes: the first intermediate computing interface (TMP 1,1 ), the second intermediate computing interface (TMP 1,2 ), the third intermediate computing interface (TMP 1,3It can be understood that the description of the input interface, output interface and intermediate calculation module of module 2, ..., module N can refer to the introduction of the above module 1, and will not be repeated here.
[0204] Step 2: Determine the storage space ownership identifier of the interface data (ie, the first information);
[0205] Since the storage space is limited, the number of first modules on the baseband link may be relatively large, so the storage space allocated to the first modules is generally reused as much as possible.
[0206] The first allocation principle of the present application is highly connected multiplexing. The minimum reusable storage unit size is calculated, and the input interface or output interface of the same first module is allocated to different storage units. This ensures that the same storage unit will not be read or written at the same time, avoiding unexpected storage unit operation errors.
[0207] The specific method is as follows:
[0208] (1) The storage space design for the entire link is implemented through three different storage units, which are defined as a first storage unit, a second storage unit, and a temporary storage unit.
[0209] For example, the first memory is represented by DM0, the second memory is represented by DM1, and the third memory is represented by DM2; the input interface is represented by A m,n Indicates; output interface is B m,n Indicates; intermediate calculations are done with C m,n Indicates; m indicates the first module identifier, for example, "m=1" indicates the first first module, "m=2" indicates the second first module; n indicates the number of interfaces of the first module, for example, "n=1" indicates the first interface of the first module, "n=2" indicates the second interface of the first module. Taking the first interface of the first first module as the input interface as an example, the first interface of the first first module can be represented as A 1,1 .
[0210] (2) Starting from the input of the first first module: the storage space allocated for the input interface of the first first module is all on DM1; the storage space allocated for the first output interface (first-level output OUT) is on DM2, and the storage space allocated for the second output interface (second-level output OUT') is on DMi (i≠0), where i can be determined based on which first module uses the output data of the second output interface as input data. Ensure that the storage space of the input interface and the output interface are not in the same DM;
[0211] (3) The input data of the second first module includes the data output by the first output interface of the first first module, and the storage space allocated for the first output interface of the first first module is in DM2 (that is, according to the output interface B of the first module (the first first module) of the upper level of the second first module). 1,n The assigned DM2 is determined as the input A of the second first module 2,n The allocated storage space is also in DM2), so that the storage space allocated for the input of the second first module is in the same DM. Then the output interface B of the second first module is 2,n The allocated storage space is in DM1. This ensures that the input interface and the output interface are in different storage spaces. The storage space required for the input interface and the output interface of the subsequent first module can be cyclically and alternately allocated in DM1 and DM2.
[0212] Since the storage space of the input interface and the output interface will be released after use, the storage space required for the input interface and the output interface of the adjacent first module can be allocated alternately to DM1 and DM2. As long as the minimum storage space reuse size is calculated, data can be cyclically read and written using the minimum storage space on DM1 and DM2.
[0213] For secondary output interface B m,n(DMi) '(i≠x), since the time it is used by the first module of the next stage is uncertain, it cannot be allocated on the DM where the current first module allocates storage space. It is necessary to determine the allocation location of the storage space in the first module where it is used. m,n ''s DM allocation is preferred to be consistent with the DM allocation position (assuming it is y, y = 0 / 1) of the current first module's input interface A and output interface B. If y is the same as x, it means B m,n 'Cannot be assigned to DMy, then B m,n 'Allocate to DM 2; ensure that the storage space of the input interface and the output interface of the first module are in different DMs.
[0214] After the above steps, the DM position allocation of the storage space of the first interface of the first module on the entire baseband link is completed, which can ensure that the input interface A and the first output interface B and part of the second output interface B' are cyclically and alternately allocated to DM0 and DM1, and part of the second output interface B' is distributed in DM 2; the intermediate calculation Cm can be directly allocated to the same DM as Bm.
[0215] Table 2
[0216]
[0217]
[0218] The baseband link includes module 1 (i.e., the first first module), module 2 (i.e., the second first module), module 3 (i.e., the third first module), module 4 (i.e., the fourth first module), ..., module N (i.e., the Nth first module), wherein:
[0219] The first input interface (IN 1,1 )'s storage space is identified as A 1,1(DM0) , the second input interface (IN 1,2 )'s storage space is identified as A 1,2(DM0) The third input interface (IN 1,3 )'s storage space is identified as A 1,3(DM0) The storage space ownership identifiers of other input interfaces can be deduced in the same way. The storage space ownership identifier is used to indicate on which storage unit the storage space is located.
[0220] The first output interface (OUT 1,1 )'s storage space is identified as B 1,1(DM1) , the second output interface (OUT 1,2 )'s storage space is identified as B 1,2(DM1) The third output interface (OUT 1,3 )'s storage space is identified as B 1,3(DM1) The storage space ownership identification of other output interfaces can be deduced in the same way.
[0221] The first output interface (OUTPUT 1,1 ')'s storage space is identified as B 1,1(DMi) , the second output interface (OUT 1,2 ')'s storage space is identified as B 1,2(DMi) The third output interface (OUT 1,3 ')'s storage space is identified as B 1,3(DMi) The storage space ownership identification of other output interfaces can be deduced in the same way, i≠0.
[0222] The first intermediate computing interface (TMP) of module 1 1,1 )'s storage space is identified as C 1,1(DMj) , the second intermediate computing interface (TMP 1,2 )'s storage space is identified as C 1,2(DMj) The third intermediate computing interface (TMP 1,3 )'s storage space is identified as C 1,3(DMj) The storage space ownership identification of other output interfaces can be deduced in the same way, and j can be equal to 0 or 1.
[0223] The first input interface (IN 2,1)'s storage space is identified as A 2,1(DM1) , the second input interface (IN 2,2 )'s storage space is identified as A 2,2(DM1) , ..., the Pth input interface (IN 2,P )'s storage space is identified as B 1,1(DM1) , the P+1th input interface (IN 2,P+1 )'s storage space is identified as B 1,2(DM1) The storage space ownership identification of other input interfaces can be deduced in the same way.
[0224] The first output interface (OUT 2,1 )'s storage space is identified as B 2,1(DM0) , the second output interface (OUT 2,2 )'s storage space is identified as B 2,2(DM0) , the third output interface (OUT 2,3 )'s storage space is identified as B 2,3(DM0) The storage space ownership identification of other output interfaces can be deduced in the same way.
[0225] The first output interface (OUTPUT 2,1 ')'s storage space is identified as B 2,1(DMi) ', the second output interface (OUT 2,2 ')'s storage space is identified as B 2,2(DMi) '. The third output interface (OUT 2,3 ')'s storage space is identified as B 2,3(DMi) ', the storage space ownership identification of other output interfaces can be deduced in the same way, i≠1.
[0226] The first intermediate computing interface (TMP) of module 2 2,1 )'s storage space is identified as C 2,1(DMj) , the second intermediate computing interface (TMP 2,2 )'s storage space is identified as C 2,2(DMj) The third intermediate computing interface (TMP 2,3 )'s storage space is identified as C 2,3(DMj) The storage space ownership identification of other output interfaces can be deduced in the same way, where j is equal to 0 or 1.
[0227] The first input interface (IN 3,1 )'s storage space is identified as A 3,1(DM0) , the second input interface (IN 3,2 )'s storage space is identified as A 3,2(DM0) , ..., Qth input interface (IN 3,Q)'s storage space is identified as B 2,1(DM0) , the N+1th input interface (IN 3,Q+1 )'s storage space is identified as B 2,2(DM0) , ... Rth input interface (IN 3,R )'s storage space is identified as B 1,1(DMi=2) ', the storage space ownership identification of other input interfaces can be deduced in the same way.
[0228] The first output interface (OUTPUT 3,1 )'s storage space is identified as B 3,1(DM1) , the second output interface (OUT 3,2 )'s storage space is identified as B 3,2(DM1) , the third output interface (OUT 3,3 )'s storage space is identified as B 3,3(DM1) The storage space ownership identification of other output interfaces can be deduced in the same way.
[0229] The first output interface (OUTPUT 3,1 ')'s storage space is identified as B 3,1(DMi) ', the second output interface (OUT 2,2 ')'s storage space is identified as B 2,2(DMi) '. The third input interface (OUT 2,3 ')'s storage space is identified as B 2,3(DMi) ', the storage space ownership identification of other output interfaces can be deduced in the same way, i≠0.
[0230] The first intermediate computing interface (TMP) of module 3 3,1 )'s storage space is identified as C 3,1(DMj) , the second intermediate computing interface (TMP 3,2 )'s storage space is identified as C 3,2(DMj) The third intermediate computing interface (TMP 3,3 )'s storage space is identified as C 3,3(DMj) The storage space ownership identification of other output interfaces can be deduced in the same way, where j is equal to 0 or 1.
[0231] The first input interface (IN N,1 )'s storage space is identified as A N,1(DM1) , the second input interface (IN N,2 )'s storage space is identified as A N,2(DM1) , ..., the Oth input interface (IN N,O )'s storage space is identified as B N-1,1(DM1) , O+1th input interface (IN N,O+1)'s storage space is identified as B N-1,2(DM1) , ... the Mth input interface (IN N,M )'s storage space is identified as B n,1(DMi) ', the storage space ownership identification of other input interfaces can be deduced in the same way.
[0232] The first output interface (OUT N,1 )'s storage space is identified as B N,1(DM1) , the second output interface (OUT N,2 )'s storage space is identified as B N,2(DM1) , the third input interface (OUT N,3 )'s storage space is identified as B N,3(DM1) The storage space ownership identification of other output interfaces can be deduced in the same way.
[0233] The first intermediate computing interface (TMP) of module N N,1 )'s storage space is identified as C N,1 , the second intermediate computing interface (TMP N,2 )'s storage space is identified as C N,2 The third intermediate computing interface (TMP N,3 )'s storage space is identified as C N,3 The storage space ownership identification of other output interfaces can be deduced in the same way.
[0234] Step 3: Calculation of the minimum reuse space:
[0235] In step 2, the storage unit allocation identifiers are completed for all the first interfaces. At this time, the maximum storage space required to be divided in each DM needs to be calculated.
[0236] The first interfaces of the same DM identifier of each first module are divided into a first set, such as {A 1,1(DM0) , A 1,2(DM0) ,...}, indicating that this is the first interface that needs to occupy DM at the same time and needs to exist at the same time. The required DM size is the sum of the storage spaces allocated to the first interfaces in the first set.
[0237] The first memory contains the second set of the first set: X X,1(DM0) ={A 1,1(DM0) ,A 1,2(DM0) ,…},X X,2(DM0) ={A 3,1(DM0) ,A 3,2(DM0) ,…},…;
[0238] The second memory contains the second set of the first set: Y X,1(DM1) = {B 1,1(DM1) ,B1,2(DM1) ,B 1,2(DMi=1) ',…},Y X,2(DM1) ={A 2,1(DM1) ,A 2,2(DM1) ,…},…;
[0239] The temporary storage contains the second set of the first set: Z X,1(DM2) = {B 1,1(DMi=2) '},Z X,2(DM2) = {B x,x(DMi=2) '},…;
[0240] The second set of DMi contains the first set: M X,1(DMi) ={C 1,1(DMj) ,C 1,2(DMj) ,…},M X,2(DMi) {C 2,1(DMj) ,C 2,2(DMj) ,…},…;
[0241] Find the largest first set among the second sets, which is the size of the actual storage space required for the DM. (The DM of the intermediate computing interface C can be allocated in the first memory, the second memory, or the temporary storage area);
[0242] The maximum storage space required for DM0 is: MAX{}={X X,1(DM0) ,X X,2(DM0) ,…};
[0243] The maximum storage space that DM1 needs to allocate: MAX{}={Y X,1(DM1) ,Y X,2(DM1) ,…};
[0244] The maximum storage space that DM2 needs to allocate: MAX{}={Z X,1(DM2) ,Z X,2(DM2) ,…};
[0245] The maximum storage space required by DMi: MAX{}={M X,1(DMi) ,M X,2(DMi) ,…};
[0246] Table 3
[0247]
[0248] Through the above steps, all first interfaces of the first modules of the baseband link can be marked with DM allocation marks, and the size of the storage space required to be allocated on each DM can be calculated.
[0249] This embodiment realizes seamless ping-pong multiplexing of storage space, and occupies the smallest and most optimal storage space. For designs with multiple baseband links, this method can be used to obtain the minimum storage space occupied by all baseband links, thereby evaluating and designing the total storage space size of all baseband links. Then, according to the physical mapping of the storage space, the storage space address and length of each baseband link are allocated to complete the storage space design of the baseband link. At the same time, with the help of the programming function of matlab or excel, automatic classification and sorting can be achieved, and when there are changes in modules or interfaces, they can be quickly rearranged and updated.
[0250] Embodiment 2: Module storage space design of a baseband link of format 2 of a physical uplink control channel (PUCCH) of a baseband chip of a small base station.
[0251] The first module flow chart of the PUCCH Format2 receiving link is as follows: Figure 5 As shown. It involves multiple first modules such as channel data extraction, gain adjustment, separation of data and demodulation reference signal (DMRS), channel estimation, minimum mean square error (MMSE) filtering, channel equalization, quadrature phase shift keying (QPSK) demodulation, descrambling, RM / Polar decoding, power calculation, decoding and reporting of main parameters. In particular, the equalization module involves matrix operations and decomposition under different numbers of antennas (for example, 2ant / 4ant), different algorithm implementations, complex processes, and different storage requirements for interfaces and intermediate calculations.
[0252] In the early stage of development and design, it is necessary to evaluate the size of the storage space of the input interface, output interface or intermediate computing interface of each first module of the baseband link, and arrange the location of the appropriate storage space to ensure the correctness of the pipeline operation between each first module, while fully considering the optimization of the storage space on the chip.
[0253] The storage space allocation mechanism of the present application is adopted to classify and identify the first interface, as shown in Table 4.
[0254] Table 4
[0255]
[0256] Finally calculated:
[0257] (1) First memory: The largest storage space is 48KB for the inverse matrix output of the equalized four-antenna HH'+Rnn;
[0258] (2) Second memory: The largest storage space is 36KB for the lower triangular output of the balanced four-antenna HH'+Rnn;
[0259] (3) Temporary memory: The largest storage space is the winner filter coefficient table + equalization reciprocal table, totaling 34KB;
[0260] Therefore, the maximum total storage space requirement of the PUCCH Format 2 link can be estimated through the above process. Similarly, the storage space of other baseband links can also be arranged and counted before development, so as to complete all the storage space occupied by baseband processing.
[0261] This embodiment has been verified by the application of domestic baseband chips, saving more than 10% of storage space compared with the previous traditional design, and reducing the data interaction time and control logic in the corresponding space, greatly improving the processing efficiency of the chip. It can meet the development needs of multi-cell and multi-antenna, and achieve the specification design that other manufacturers have not achieved with the same chip.
[0262] See also Figure 6 , an embodiment of the present application provides a data reading and writing processing device, which is applied to a first module, and the device 600 includes: a first transceiver unit 601 and a first processing unit 602;
[0263] A first transceiver unit 601 is used to obtain first information from a second module, where the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface;
[0264] The first processing unit 602 is configured to perform a read operation and / or a write operation on a storage unit where the storage space of the first interface is located according to the first information.
[0265] In one embodiment of the present application, the type includes at least one of the following:
[0266] An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level;
[0267] An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1;
[0268] An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
[0269] In an implementation manner of the present application, the first information is determined based on the type of the first interface, including:
[0270] The first information is determined based on the type of the first interface and a first allocation principle;
[0271] The first allocation principle includes at least one of the following:
[0272] The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0273] The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0274] The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0275] The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0276] In one embodiment of the present application, the storage unit where the storage space of the input interface of the previous first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0277] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0278] In one embodiment of the present application, the first information includes at least one of the following:
[0279] second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0280] The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0281] In one embodiment of the present application, the output interface includes at least one of the following: a first output interface and a second output interface;
[0282] The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
[0283] In one implementation of the present application, the first allocation principle further includes at least one of the following:
[0284] The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0285] The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
[0286] In one implementation of the present application, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0287] In one embodiment of the present application, the first module includes a functional module on a baseband link, and the second module includes a functional module for performing data management of the baseband link.
[0288] The device provided in the embodiment of the present application can realize Figure 1 The various processes implemented by the method embodiment shown achieve the same technical effect and will not be described again here to avoid repetition.
[0289] See also Figure 7 , an embodiment of the present application provides a storage space allocation device, which is applied to the second module, and the device 700 includes: a second transceiver unit 701 and a second processing unit 702;
[0290] The second processing unit 702 is used to determine the type of the first interface of each first module in the communication device;
[0291] The second processing unit 702 is further used to determine first information according to the type of the first interface, where the first information is used to indicate a storage unit where the storage space of the first interface is located;
[0292] The second transceiver unit 701 is configured to send the first information to the first module.
[0293] In an implementation manner of the present application, the second processing unit 702 is further configured to: determine a size of a storage space that needs to be allocated to the first interface.
[0294] In one implementation of the present application, the second processing unit 702 is further configured to determine the storage space required to be allocated to each storage unit according to the first information and the size of the storage space required to be allocated to each of the first interfaces.
[0295] In one embodiment of the present application, the second processing unit 702 is further configured to: determine a first set according to the first information, the first set including all first interfaces allocated to the same storage unit and the size of the storage space of each first interface;
[0296] Determining a maximum storage space required to be allocated to the storage unit according to the first set;
[0297] The size of the actual storage space required by each storage unit is determined according to the maximum storage space required to be allocated to the storage unit.
[0298] In one embodiment of the present application, the type includes at least one of the following:
[0299] An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level;
[0300] An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1;
[0301] An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
[0302] In one implementation of the present application, the second processing unit 702 is further configured to: determine first information according to the type of the first interface and the first allocation principle;
[0303] The first allocation principle includes at least one of the following:
[0304] The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located;
[0305] The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located;
[0306] The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located;
[0307] The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
[0308] In one embodiment of the present application, the storage unit where the storage space of the input interface of the previous first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including:
[0309] The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
[0310] In one embodiment of the present application, the first information includes at least one of the following:
[0311] second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located;
[0312] The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
[0313] In one embodiment of the present application, the output interface includes at least one of the following: a first output interface and a second output interface;
[0314] The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
[0315] In one implementation of the present application, the first allocation principle further includes:
[0316] The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located;
[0317] The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
[0318] In one implementation of the present application, the storage unit includes at least one of the following: an on-chip memory and an external memory.
[0319] In one embodiment of the present application, it is characterized in that the first module includes a functional module on the baseband link, and the second module includes a functional module for performing data management of the baseband link.
[0320] The device provided in the embodiment of the present application can realize Figure 2The various processes implemented by the method embodiment shown achieve the same technical effect and will not be described again here to avoid repetition.
[0321] like Figure 8 As shown, the embodiment of the present application also provides a communication device 800, including a processor 801, a memory 802, a program or instruction stored in the memory 802 and executable on the processor 801, and the program or instruction is executed by the processor 801 to implement the above Figure 1 or Figure 2 The various processes of the method embodiment can achieve the same technical effect. To avoid repetition, they will not be described here.
[0322] The embodiment of the present application also provides a readable storage medium, wherein a program or instruction is stored on the readable storage medium, and when the program or instruction is executed by the processor, the above Figure 1 or Figure 2 The various processes of the method embodiment shown can achieve the same technical effect, and will not be described again here to avoid repetition.
[0323] The processor is the processor in the terminal described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0324] The steps of the method or algorithm described in conjunction with the contents disclosed in this application can be implemented in hardware or by executing software instructions in a processor. The software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM, flash memory, ROM, EPROM, EEPROM, registers, hard disks, mobile hard disks, read-only optical disks, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be carried in an ASIC. In addition, the ASIC can be carried in a core network interface device. Of course, the processor and the storage medium can also exist in the core network interface device as discrete components.
[0325] Those skilled in the art should be aware that in one or more of the above examples, the functions described in this application can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any media that facilitates the transmission of a computer program from one place to another. The storage medium can be any available medium that a general or special-purpose computer can access.
[0326] The specific implementation methods described above further illustrate the purpose, technical solutions and beneficial effects of the present application in detail. It should be understood that the above description is only the specific implementation methods of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent substitutions, improvements, etc. made on the basis of the technical solutions of the present application should be included in the scope of protection of the present application.
[0327] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the embodiments of the present application may adopt the form of complete hardware embodiments, complete software embodiments, or embodiments in combination with software and hardware. Moreover, the embodiments of the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0328] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0329] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1A function specified in one or more boxes.
[0330] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0331] Obviously, those skilled in the art can make various changes and modifications to the embodiments of the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A data reading and writing processing method, applied to the first module, characterized in that: include: Acquire first information from a second module, where the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface; A read operation and / or a write operation is performed on a storage unit where the storage space of the first interface is located according to the first information.
2. The method according to claim 1, characterized in that The type includes at least one of the following: An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level; An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1; An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
3. The method according to claim 2, characterized in that The first information is determined based on the type of the first interface, including: The first information is determined based on the type of the first interface and a first allocation principle; The first allocation principle includes at least one of the following: The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located; The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located; The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located; The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
4. The method according to claim 3, characterized in that The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including: The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
5. The method according to claim 1, characterized in that The first information includes at least one of the following: second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located; The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
6. The method according to claim 3, characterized in that The output interface includes at least one of the following: a first output interface and a second output interface; The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
7. The method according to claim 6, characterized in that The first allocation principle also includes at least one of the following: The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located; The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
8. The method according to claim 1, characterized in that The storage unit includes at least one of the following: an on-chip memory and an external memory.
9. The method according to any one of claims 1 to 8, characterized in that: The first module includes a functional module on a baseband link, and the second module includes a functional module that performs data management of the baseband link.
10. A storage space allocation method, applied to the second module, characterized in that: include: Determining a type of a first interface of each first module in the communication device; Determine, according to the type of the first interface, first information, where the first information is used to indicate a storage unit where a storage space of the first interface is located; The first information is sent to the first module.
11. The method according to claim 10, characterized in that The method further comprises: The size of the storage space that needs to be allocated to the first interface is determined.
12. The method according to claim 11, characterized in that The method further comprises: The storage space required to be allocated to each storage unit is determined according to the first information and the size of the storage space required to be allocated to each of the first interfaces.
13. The method according to claim 12, characterized in that Determining the storage space required to be allocated to each storage unit according to the first information and the size of the storage space required to be allocated to each of the first interfaces includes: Determine a first set of each first module according to the first information, the first set including all first interfaces of the first module allocated to the same storage unit, and the size of the storage space of each first interface; Determine a second set for each storage unit according to the first sets of all the first modules, wherein the second set includes first sets of different first modules corresponding to the same storage unit; Determining a maximum storage space required to be allocated to the storage unit according to the second set; The size of the actual storage space required by each storage unit is determined according to the maximum storage space required to be allocated to the storage unit.
14. The method according to claim 10, characterized in that The type includes at least one of the following: An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level; An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1; An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
15. The method according to claim 14, characterized in that Determining first information according to the type of the first interface includes: Determining first information according to the type of the first interface and a first allocation principle; The first allocation principle includes at least one of the following: The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located; The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located; The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located; The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
16. The method according to claim 15, characterized in that The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, including: The storage unit where the storage space of the input interface of the previous level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located, and the storage unit where the storage space of the input interface of the next level first module is located is the same as the storage unit where the storage space of the input interface of the previous level first module is located.
17. The method according to claim 10, characterized in that The first information includes at least one of the following: second information, where the second information is used to indicate a storage unit where the storage space of the first interface is located; The third information is used to indicate a storage partition where the storage space of the first interface is located, and the storage partition is at least a part of a storage unit.
18. The method according to claim 15, characterized in that The output interface includes at least one of the following: a first output interface and a second output interface; The data of the first output interface includes the input data of the first module of the next level, and the data of the second output interface includes the input data of the first module of the next N levels.
19. The method according to claim 18, characterized in that The first allocation principle also includes: The storage unit where the storage space of the first output interface of the current first module is located is different from the storage unit where the storage space of the input interface of the current first module is located; The storage unit where the storage space of the second output interface of the current first module is located is determined based on the storage unit where the storage space of the input interface of the lower N-level first modules is located.
20. The method according to claim 10, characterized in that The storage unit includes at least one of the following: an on-chip memory and an external memory.
21. The method according to any one of claims 10 to 20, characterized in that The first module includes a functional module on a baseband link, and the second module includes a functional module that performs data management of the baseband link.
22. A data reading and writing processing device, applied to the first module, characterized in that: include: a first transceiver unit and a first processing unit; a first transceiver unit, configured to obtain first information from a second module, wherein the first information is used to indicate a storage unit where a storage space of a first interface of the first module is located, and the first information is determined based on a type of the first interface; The first processing unit is used to perform a read operation and / or a write operation on the storage unit where the storage space of the first interface is located according to the first information.
23. The device according to claim 22, characterized in that The type includes at least one of the following: An input interface, wherein data of the input interface includes original data input from the outside and / or output data of the first module at the previous level; An output interface, wherein data of the output interface includes input data of the first module of the next level or the first module of the next N levels, where N is greater than 1; An intermediate calculation interface, the data of which is used for internal calculation of the current first module.
24. The device according to claim 23, characterized in that The first information is determined based on the type of the first interface, including: The first information is determined based on the type of the first interface and a first allocation principle; The first allocation principle includes at least one of the following: The storage unit where the storage space of the input interface of the current first module is located is different from the storage unit where the storage space of the output interface is located; The storage unit where the storage space of the input interface of the current first module is located is determined based on the storage unit where the storage space of the output interface of the previous level first module is located; The storage unit where the storage space of the intermediate computing interface of the current first module is located is the same as or different from the storage unit where the storage space of the input interface or the output interface of the current first module is located; The storage unit where the storage space of the input interface of the previous-level first module is located is different from the storage unit where the storage space of the input interface of the current first module is located.
25. A storage space allocation device, applied to the second module, characterized in that: include: a second transceiver unit and a second processing unit; A second processing unit, configured to determine a type of a first interface of each first module in the communication device; The second processing unit is further used to determine first information according to the type of the first interface, where the first information is used to indicate a storage unit where the storage space of the first interface is located; The second transceiver unit is used to send the first information to the first module.
26. The device according to claim 25, characterized in that The second processing unit is further used to determine the size of the storage space that needs to be allocated to the first interface.
27. The device according to claim 26, characterized in that The second processing unit is further used to determine the storage space required to be allocated to each storage unit according to the first information and the size of the storage space required to be allocated to each of the first interfaces.
28. The device according to claim 27, characterized in that The second processing unit is further used to: determine a first set according to the first information, the first set including all first interfaces allocated to the same storage unit and the size of the storage space of each first interface; determine the maximum storage space required to be allocated to the storage unit according to the first set; The size of the actual storage space required by each storage unit is determined according to the maximum storage space required to be allocated to the storage unit.
29. A communication device, characterized in that: The method comprises a processor, a memory, and a program or instruction stored in the memory and executable on the processor, wherein the program or instruction, when executed by the processor, implements the steps of the method according to any one of claims 1 to 21.
30. A readable storage medium, characterized in that: The readable storage medium stores a program or instruction, and when the program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 21 are implemented.
31. A computer program product, characterized in that The method comprises computer instructions which, when executed by a processor, implement the steps of the method according to any one of claims 1 to 21.