Simulation system for simulating communication baseband system

By introducing driver adaptation modules into the simulation system of the communication baseband system, and automatically converting register definitions and parameter definitions, the problem of additional code writing in data interaction under heterogeneous architecture is solved, reducing development costs and improving efficiency.

CN119201333AActive Publication Date: 2024-12-27SHANGHAI XINJIXUN COMM TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411043774.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-02-18
Filing Date
2024-07-31
Publication Date
2024-12-27
Estimated Expiration
2044-07-31

AI Technical Summary

Technical Problem

In the prior art, in the simulation test of communication baseband systems, due to the existence of heterogeneous architecture, developers need to write additional conversion code for data interaction, resulting in high development costs.

Method used

An simulation system is designed, including a communication software simulator and a communication algorithm simulator. By driving the adapter module, the data interaction is realized, reducing the need for additional code writing.

Benefits of technology

It reduces development costs, improves the automation efficiency of data interactions, and reduces the workload of developers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201333A_ABST
    Figure CN119201333A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computer simulation, in particular to a simulation system for simulating a communication baseband system, comprising a communication software simulator which generates a virtual operating system in which to-be-tested communication software runs; the communication algorithm simulator is provided with a virtual accelerator chip, and the virtual accelerator chip is used for calculating a to-be-processed task of the to-be-tested communication software; and the driving adaptation module is respectively connected with the communication software simulator and the communication algorithm simulator. The method has the beneficial effects that in the process that the communication software simulator and the communication algorithm simulator output corresponding data to the opposite end, the corresponding data is obtained and automatically converted between the parameter definition and the register definition, and then the data is transmitted to the opposite end to be processed. According to the process, the definition is automatically obtained by the driving adaptation module, the corresponding interface is generated, corresponding codes do not need to be additionally compiled, and the development cost is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of computer simulation, and in particular to a simulation system for simulating a communication baseband system. Background Art

[0002] Modern communication baseband chips generally adopt the architecture of general-purpose processor + dedicated accelerator, in which the general-purpose processor (such as ARM / DSP, etc.) runs the communication software, performs complex protocol processing and multi-task scheduling, and drives various accelerator modules to perform data operations; the dedicated accelerator is a series of dedicated ASIC modules that execute specific signal / data processing algorithms. The verification and testing of communication baseband chips is a huge and complex task, and a very important link is the testing and verification of communication software and communication algorithms. Communication software and communication algorithms generally construct a large number of unit test cases to verify their respective functions, but an integrated test solution is also needed to cover the communication process, software and hardware interfaces, and software and hardware timing. Usually, tens of thousands of test cases are required to fully cover the communication protocol, and such a large number of test cases have high requirements for the cost and efficiency of the test system.

[0003] In the prior art, the simulation test for the communication baseband system as a whole mainly includes the simulation of the communication software and the simulation of the algorithm accelerator. Among them, the communication software mainly runs on the operating system obtained by the simulator virtualization, which is constructed by programming languages ​​such as VC and runs in a virtualized environment, and can receive external stimuli, perform corresponding operations according to a predetermined process, and exchange data and perform business scheduling with external functional modules, especially algorithm accelerators, so as to realize the corresponding functions. The simulation of the algorithm accelerator is usually realized by using a simulation platform such as Matlab, which also has a corresponding interface to receive external data, be scheduled by an external module, and then perform corresponding calculation processing and feedback corresponding calculation results. The above two sets of simulators will finally run in the same computer device to simulate and interact respectively, so as to realize the verification of the system as a whole.

[0004] However, in the actual implementation process, the inventors found that the two simulators mentioned above are heterogeneous architectures in the actual development process, such as the combination of VC+Matlab. In this architecture, the software running in the virtualized environment schedules the algorithm accelerator by reading and writing registers, which is consistent with the real machine environment; while the simulated algorithm accelerator exchanges parameters, which makes the docking process between the two relatively difficult, requiring developers to write additional corresponding conversion codes for interaction. Summary of the invention

[0005] In view of the above problems existing in the prior art, a simulation system for simulating a communication baseband system is now provided.

[0006] The specific technical solutions are as follows:

[0007] A simulation system for simulating a communication baseband system, comprising:

[0008] A communication software simulator, wherein the communication software simulator generates a virtual operating system in which the communication software to be tested runs;

[0009] A communication algorithm simulator, wherein the communication algorithm simulator is constructed with a virtual accelerator chip, and the virtual accelerator chip is used to calculate the tasks to be processed of the communication software to be tested;

[0010] A driver adaptation module, wherein the driver adaptation module is connected to the communication software simulator and the communication algorithm simulator respectively;

[0011] When the communication software to be tested schedules the virtual accelerator chip to perform calculations, the driver adaptation module obtains first data output by the communication software simulator, and parses the first data to obtain a register definition corresponding to the communication software to be tested;

[0012] The driver adaptation module converts the register definition into a parameter definition corresponding to the virtual accelerator chip to obtain second data, and then transmits the second data to the communication algorithm simulator;

[0013] When the virtual accelerator chip returns the calculation result to the communication software to be tested, the driver adaptation module obtains the third data output by the communication algorithm simulator, and parses the third data to obtain the parameter definition;

[0014] The driver adaptation module converts the parameter definition into the register definition to obtain fourth data, and then transmits the fourth data to the communication software simulator.

[0015] On the other hand, the communication software simulator is provided with a first interface information output module, which extracts a software interface from the communication software to be tested and generates the register definition;

[0016] The first interface information output module sends the register definition to the driver adaptation module;

[0017] The communication algorithm simulator is provided with a second interface information output module, which extracts a chip interface from the virtual accelerator chip and generates the parameter definition;

[0018] The second interface information output module sends the parameter definition to the drive adaptation module.

[0019] On the other hand, the drive adaptation module includes:

[0020] A register acquisition module, wherein the register acquisition module reads a register position corresponding to the register definition in the first data according to the register definition to obtain register data;

[0021] A data unpacking module, wherein the data unpacking module is connected to the register acquisition module, and the data unpacking module unpacks the register data according to the parameter definition to obtain the second data.

[0022] On the other hand, the drive adaptation module includes:

[0023] A data parsing module, wherein the data parsing module receives the third data and parses the third data to obtain a variable value;

[0024] A data packaging module, wherein the data packaging module is connected to the data parsing module, and the data packaging module packages the variable values ​​to form the fourth data.

[0025] On the other hand, the drive adaptation module includes:

[0026] A software scanning module, wherein the software scanning module is connected to the communication software simulator and the communication algorithm simulator respectively;

[0027] The software scanning module scans the first program file corresponding to the communication software to be tested in the communication software simulator and the second program file corresponding to the virtual accelerator chip in the communication algorithm simulator respectively;

[0028] When the first program file or the second program file is changed, the software scanning module controls the first interface information output module to update the register definition, or controls the second interface information output module to update the parameter definition.

[0029] On the other hand, the simulation system further comprises:

[0030] A test module is connected to the communication software simulator, and generates and sends external stimuli to the communication software simulator according to the test items to implement the test of the communication software to be tested.

[0031] On the other hand, the communication algorithm simulator comprises:

[0032] A first process handshake module, wherein the first process handshake module generates a first start signal after the communication algorithm simulator is initialized;

[0033] The drive adaptation module comprises:

[0034] a second process handshake module, which controls the driver adapter module to start after receiving the first start signal, and generates a second start signal after the driver adapter module is initialized;

[0035] The communication software simulator comprises:

[0036] A third process handshake module, wherein the third process handshake module controls the communication software simulator to start after receiving the second start signal.

[0037] On the other hand, the communication software simulator includes a first timing module, and the communication algorithm simulator includes a second timing module;

[0038] When the communication software simulator is configured in the timing master mode, the first timing module sends a first clock signal to the second timing module, and the second timing module generates timing information according to the first clock signal;

[0039] When the communication software simulator is configured as a timing slave mode, the second timing module sends a second clock signal to the first timing module, and the first timing module generates the timing information according to the first clock signal.

[0040] The above technical solution has the following advantages or beneficial effects:

[0041] In view of the problem that the hybrid architecture simulation system in the prior art needs to develop additional corresponding conversion codes during the data interaction process, and the development cost is high, in this embodiment, a driver adaptation module is constructed for the communication software simulator and the communication algorithm simulator. In the process of the communication software simulator and the communication algorithm simulator outputting corresponding data to the other end, the driver adaptation module obtains the corresponding data and automatically converts between parameter definition and register definition, and then transmits it to the other end for processing. In the above process, the driver adaptation module automatically obtains the definition and generates the corresponding interface, and there is no need to write additional corresponding code, which reduces the development cost. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] The embodiments of the present invention will be described more fully with reference to the attached drawings, which are provided for illustration and description only and are not intended to limit the scope of the present invention.

[0043] Figure 1 It is an overall schematic diagram of an embodiment of the present invention;

[0044] Figure 2 This is a schematic diagram of an interface information output module in an embodiment of the present invention;

[0045] Figure 3 A schematic diagram of a register acquisition module in an embodiment of the present invention;

[0046] Figure 4 This is a schematic diagram of a data analysis module in an embodiment of the present invention;

[0047] Figure 5 A schematic diagram of a software scanning module in an embodiment of the present invention;

[0048] Figure 6 This is a schematic diagram of a test module in an embodiment of the present invention;

[0049] Figure 7 This is a schematic diagram of a process handshake module in an embodiment of the present invention;

[0050] Figure 8 Schematic diagram of a timing module in an embodiment of the present invention. DETAILED DESCRIPTION

[0051] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0052] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments may be combined with each other.

[0053] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments, but they are not intended to limit the present invention.

[0054] The present invention comprises:

[0055] A simulation system for simulating a communication baseband system, such as Figure 1 As shown, including:

[0056] A communication software simulator 1, wherein the communication software simulator 1 generates a virtual operating system, and the communication software 1A to be tested runs in the virtual operating system;

[0057] The communication algorithm simulator 2 is constructed with a virtual accelerator chip 2A, and the virtual accelerator chip 2A is used to calculate the tasks to be processed of the communication software 1A to be tested;

[0058] A driver adaptation module 3, the driver adaptation module 3 is respectively connected to the communication software simulator 1 and the communication algorithm simulator 2;

[0059] When the communication software 1A to be tested schedules the virtual accelerator chip 2A to perform calculations, the driver adaptation module 3 obtains the first data output by the communication software simulator 1, and parses the first data to obtain the register definition corresponding to the communication software 1A to be tested;

[0060] The driver adaptation module 3 converts the register definition into a parameter definition corresponding to the virtual accelerator chip 2A to obtain second data, and then transmits the second data to the communication algorithm simulator 2;

[0061] When the virtual accelerator chip 2A returns the calculation result to the communication software 1A to be tested, the driver adaptation module 3 obtains the third data output by the communication algorithm simulator 2, and parses the third data to obtain the parameter definition;

[0062] The driver adaptation module 3 converts the parameter definition into a register definition to obtain fourth data, and then transmits the fourth data to the communication software simulator 1 .

[0063] Specifically, in view of the problem that the hybrid architecture simulation system in the prior art needs to develop additional corresponding conversion codes during the data interaction process, and the development cost is high, in this embodiment, a driver adaptation module 3 is constructed for the communication software simulator 1 and the communication algorithm simulator 2. In the process that the communication software simulator 1 and the communication algorithm simulator 2 output the corresponding data to the other end, the driver adaptation module 3 obtains the corresponding data and automatically converts between the parameter definition and the register definition, and then transmits it to the other end for processing. In the above process, the driver adaptation module 3 automatically obtains the definition and generates the corresponding interface, and there is no need to write the corresponding code, which reduces the development cost.

[0064] In one embodiment, Figure 2 As shown, the communication software simulator 1 is provided with a first interface information output module 11, and the first interface information output module 11 extracts the software interface of the communication software 1A to be tested and generates a register definition;

[0065] The first interface information output module 11 sends the register definition to the driver adaptation module 3;

[0066] The communication algorithm simulator 2 is provided with a second interface information output module 21, which extracts the chip interface of the virtual accelerator chip 2A and generates parameter definitions;

[0067] The second interface information output module 21 sends parameter definitions to the drive adaptation module 3 .

[0068] Specifically, in order to achieve a better automatic conversion effect, in this embodiment, a first interface information output module 11 is provided in the communication software simulator 1, and a second interface information output module 21 is provided in the communication algorithm simulator 2. When the communication software 1A to be tested is configured in the communication software simulator 1, the first interface information output module 11 extracts the software interface part for inputting and outputting data in the communication software 1A to be tested, and determines the corresponding register position, thereby generating the corresponding register definition. Similarly, when the second interface information output module 21 is configured in the communication algorithm simulator 2, the second interface information output module 21 extracts the chip interface of the virtual accelerator chip 2A and generates a parameter definition corresponding to each interface. After obtaining the register definition and the parameter definition, the driver adaptation module 3 establishes a corresponding mapping relationship between the two, so that when register data is received, it can be converted into the corresponding parameter variable; or when the parameter variable is received, it is converted into the register address and the written data.

[0069] In one embodiment, Figure 3 As shown, the drive adaptation module 3 includes:

[0070] A register acquisition module 31, the register acquisition module 31 reads a register position corresponding to the register definition in the first data according to the register definition to obtain register data;

[0071] The data unpacking module 32 is connected to the register acquisition module 31 , and the data unpacking module 32 unpacks the register data according to the parameter definition to obtain the second data.

[0072] Specifically, after the communication software simulator 1 sends the first data, the register acquisition module 31 reads the first data according to the pre-configured register definition. Thus, the register position configured by the register definition is acquired, and the register data at the position is obtained. This part of the register data is the data that needs to be transmitted to the virtual accelerator 2A. Subsequently, the data unpacking module 32 unpacks the register data according to the parameter definition, configures the corresponding parameter definition, and obtains the second data that can be input into the communication algorithm simulator 2.

[0073] like Figure 4 As shown, the drive adaptation module 3 also includes:

[0074] A data analysis module 33, the data analysis module receives the third data and obtains a variable value by analyzing the third data;

[0075] The data packaging module 34 is connected to the data analysis module 33 , and the data packaging module 34 packages the variable values ​​to form fourth data.

[0076] Specifically, when the communication algorithm simulator 2 sends the third data, the data parsing module receives the third data and parses the third data to obtain variable values ​​according to the parameter definition, and each variable value has a corresponding parameter definition. Subsequently, the data packaging module 34 packages the variable values ​​according to the register definition, and assigns the variable values ​​to the corresponding addresses as register data according to the comparison relationship between the parameter definition and the register definition to form the fourth data.

[0077] In one embodiment, Figure 5 As shown, the drive adaptation module 3 includes:

[0078] A software scanning module 35, the software scanning module 35 is connected to the communication software simulator 1 and the communication algorithm simulator 2 respectively;

[0079] The software scanning module 35 scans the first program file corresponding to the communication software 1A to be tested in the communication software simulator 1 and the second program file corresponding to the virtual accelerator chip 2A in the communication algorithm simulator 2 respectively;

[0080] When the first program file or the second program file is changed, the software scanning module 35 controls the first interface information output module 11 to update the register definition, or controls the second interface information output module 21 to update the parameter definition.

[0081] Specifically, in order to realize the automatic update of relevant definitions, in this embodiment, a software scanning module 35 is set in the driver adapter module 3, and the software scanning module 35 can detect the communication software simulator 1 and the communication algorithm simulator 2 respectively, and obtain the first program file corresponding to the communication software 1A to be tested and the second program file corresponding to the virtual accelerator chip 2A. It is easy to determine whether the first program file or the second program file has changed according to information such as file size and modification time. If a change occurs, a corresponding enable signal is generated to the first interface information output module 11, so that the first interface information output module 11 rescans the file to update the register definition, or the second interface information output module 21 rescans the file to update the parameter definition, so as to realize the automatic update of the interface.

[0082] In one embodiment, Figure 6 As shown, the simulation system also includes:

[0083] The test module 4 is connected to the communication software simulator 1 . The test module 4 generates and sends external stimuli to the communication software simulator 1 according to the test items to implement the test of the communication software 1A to be tested.

[0084] Specifically, in order to realize the simulation process of the communication software to be tested, in this embodiment, a test module 4 is also set in the simulation system. A large number of use cases for testing the communication software to be tested are stored in the test module 4. When testing is required, the test module 4 can read the corresponding use case and generate a corresponding external stimulus to input into the communication software simulator 1, and the communication software simulator 1 can transmit the external stimulus to the communication software to be tested 1A according to the corresponding virtualization interface, thereby realizing the test process of the communication software to be tested.

[0085] In one embodiment, Figure 7 As shown, the communication algorithm simulator 2 includes:

[0086] A first process handshake module 22, which generates a first start signal after the communication algorithm simulator 2 is initialized;

[0087] The drive adaptation module 3 includes:

[0088] The second process handshake module 36 controls the driver adapter module 3 to start after receiving the first start signal, and generates a second start signal after the driver adapter module is initialized;

[0089] Communications Software Simulator 1 includes:

[0090] The third process handshake module 12 controls the communication software simulator 1 to start after receiving the second start signal.

[0091] Specifically, in order to achieve a better process association between the above three modules, in this embodiment, corresponding process handshake modules are configured for the three groups of processes, namely, the communication algorithm simulator 2, the driver adaptation module 3 and the communication software simulator 1, respectively, for transferring data between different processes. Generally speaking, the driver adaptation module 3 needs to monitor the communication algorithm simulator 2 and the communication software simulator 1 to obtain the corresponding first data or third data. In this regard, the communication algorithm simulator 2, the driver adaptation module 3 and the communication software simulator 1 need to be started, initialized and handshake in sequence according to the corresponding timing. By configuring the above-mentioned first process handshake module 22, the second process handshake module 36 and the third process handshake module 12 to detect the operating status of the corresponding modules respectively, and generate corresponding start signals after the initialization is completed, it is possible to achieve the creation of a correct monitoring relationship between the processes of the above three modules, which is convenient for subsequent data exchange.

[0092] In one embodiment, Figure 8 As shown, the communication software simulator 1 includes a first timing module 13, and the communication algorithm simulator 2 includes a second timing module 23;

[0093] When the communication software simulator 1 is configured in the timing master mode, the first timing module 13 sends a first clock signal to the second timing module 23, and the second timing module 23 generates timing information according to the first clock signal;

[0094] When the communication software simulator 1 is configured as a timing slave mode, the second timing module 23 sends a second clock signal to the first timing module 13, and the first timing module 13 generates timing information according to the first clock signal.

[0095] Specifically, considering that the above-mentioned communication software simulator 1 and communication algorithm simulator 2 are heterogeneous architectures, the clock frequencies may be different, which makes it impossible for the two to interact normally. In this embodiment, a first timing module 13 and a second timing module 23 are respectively set in the communication software simulator 1 and the communication algorithm simulator 2, and the first clock signal or the second clock signal is transmitted to each other. In the actual operation process, according to the relevant configuration, the communication software simulator 1 and the communication algorithm simulator 2 can be agreed to work in the timing master mode or the timing slave mode respectively, and then the simulator in the timing master mode generates the first timing signal or the second timing signal, so that the other end performs timing according to the received first timing signal or the second timing signal, and realizes clock synchronization under the heterogeneous architecture.

[0096] The above are only preferred embodiments of the present invention, and are not intended to limit the implementation methods and protection scope of the present invention. Those skilled in the art should be aware that all solutions obtained by equivalent substitutions and obvious changes made using the description and illustrations of the present invention should be included in the protection scope of the present invention.

Claims

1. A simulation system for simulating a communication baseband system, characterized in that: include: A communication software simulator, wherein the communication software simulator generates a virtual operating system in which the communication software to be tested runs; A communication algorithm simulator, wherein the communication algorithm simulator is constructed with a virtual accelerator chip, and the virtual accelerator chip is used to calculate the tasks to be processed of the communication software to be tested; A driver adaptation module, wherein the driver adaptation module is connected to the communication software simulator and the communication algorithm simulator respectively; When the communication software to be tested schedules the virtual accelerator chip to perform calculations, the driver adaptation module obtains first data output by the communication software simulator, and parses the first data to obtain a register definition corresponding to the communication software to be tested; The driver adaptation module converts the register definition into a parameter definition corresponding to the virtual accelerator chip to obtain second data, and then transmits the second data to the communication algorithm simulator; When the virtual accelerator chip returns the calculation result to the communication software to be tested, the driver adaptation module obtains the third data output by the communication algorithm simulator, and parses the third data to obtain the parameter definition; The driver adaptation module converts the parameter definition into the register definition to obtain fourth data, and then transmits the fourth data to the communication software simulator.

2. The simulation system according to claim 1, characterized in that The communication software simulator is provided with a first interface information output module, which extracts a software interface from the communication software to be tested and generates the register definition; The first interface information output module sends the register definition to the driver adaptation module; The communication algorithm simulator is provided with a second interface information output module, which extracts a chip interface from the virtual accelerator chip and generates the parameter definition; The second interface information output module sends the parameter definition to the drive adaptation module.

3. The simulation system according to claim 1, characterized in that: The drive adaptation module comprises: A register acquisition module, wherein the register acquisition module reads a register position corresponding to the register definition in the first data according to the register definition to obtain register data; A data unpacking module, wherein the data unpacking module is connected to the register acquisition module, and the data unpacking module unpacks the register data according to the parameter definition to obtain the second data.

4. The simulation system according to claim 1, characterized in that: The drive adaptation module comprises: A data parsing module, wherein the data parsing module receives the third data and parses the third data to obtain a variable value; A data packaging module, wherein the data packaging module is connected to the data parsing module, and the data packaging module packages the variable values ​​to form the fourth data.

5. The simulation system according to claim 2, characterized in that: The drive adaptation module comprises: A software scanning module, wherein the software scanning module is connected to the communication software simulator and the communication algorithm simulator respectively; The software scanning module scans the first program file corresponding to the communication software to be tested in the communication software simulator and the second program file corresponding to the virtual accelerator chip in the communication algorithm simulator respectively; When the first program file or the second program file is changed, the software scanning module controls the first interface information output module to update the register definition, or controls the second interface information output module to update the parameter definition.

6. The simulation system according to claim 1, characterized in that: The simulation system also includes: A test module is connected to the communication software simulator, and generates and sends external stimuli to the communication software simulator according to the test items to implement the test of the communication software to be tested.

7. The simulation system according to claim 1, characterized in that: The communication algorithm simulator comprises: A first process handshake module, wherein the first process handshake module generates a first start signal after the communication algorithm simulator is initialized; The drive adaptation module comprises: a second process handshake module, which controls the driver adapter module to start after receiving the first start signal, and generates a second start signal after the driver adapter module is initialized; The communication software simulator comprises: A third process handshake module, wherein the third process handshake module controls the communication software simulator to start after receiving the second start signal.

8. The simulation system according to claim 1, characterized in that: The communication software simulator includes a first timing module, and the communication algorithm simulator includes a second timing module; When the communication software simulator is configured in the timing master mode, the first timing module sends a first clock signal to the second timing module, and the second timing module generates timing information according to the first clock signal; When the communication software simulator is configured as a timing slave mode, the second timing module sends a second clock signal to the first timing module, and the first timing module generates the timing information according to the first clock signal.

Citation Information

Patent Citations

  • Straight-through passage method for system call and conversion for processor emulation model

    CN101187881A

  • Data transmission method, system and device between virtual machine and accelerator

    CN112351089A

  • Simulation verification method and system based on combination of virtual platform and FPGA

    CN112560377A

  • Simulation communication method and device based on chip to-be-tested design

    CN116070564A