Digital analog hybrid circuit simulation communication method and device

By establishing a mapping relationship between analog simulators and digital simulators in digital-analog hybrid circuit simulations, signal synchronization is achieved, solving the problem of strong tool coupling in the existing technology, and improving simulation efficiency and user configuration and debugging convenience.

CN120373237BActive Publication Date: 2025-09-19BEIJING CORE THINKING TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510514071.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-23
Publication Date
2025-09-19
Estimated Expiration
2045-04-23

AI Technical Summary

Technical Problem

When simulating digital-analog mixed circuits, existing technologies require automatic or manual segmentation of the circuit design hierarchical structure, resulting in extremely strong coupling of the tools and the inability to implement a universal and standardized mixed-signal simulation interface, making user configuration and circuit debugging inconvenient.

Method used

By acquiring the analog and digital netlist files of the mixed-signal circuit, a mapping relationship is established between the analog and digital simulators to achieve signal synchronization. The analog simulator runs simulations before the digital simulator, runs within the scheduled time of the digital simulator's next event, and sends the current wait time to the digital simulator when it pauses, achieving signal synchronization led by the analog simulator.

Benefits of technology

A signal synchronization mechanism is implemented in which the analog simulator leads and the digital simulator follows in the simulation of digital-analog mixed circuits, avoiding the problem of strong tool coupling in the existing technology and improving simulation efficiency and user configuration and debugging convenience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120373237B_ABST
    Figure CN120373237B_ABST
Patent Text Reader

Abstract

The present invention discloses a digital-analog mixed circuit simulation communication method and device, the method comprising: for a digital-analog mixed circuit, obtaining an analog circuit netlist file containing an analog circuit part and a digital circuit netlist file containing a digital circuit part; an analog simulator reads the analog circuit netlist file, and a digital simulator reads the digital circuit netlist file, and establishes a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator; the analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit; the analog simulator performs analog simulation, and the digital simulator performs digital simulation, and during the simulation execution process, synchronizes the signals of the analog simulator and the digital simulator according to conversion events triggered by the mixed signal boundaries until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of circuit simulation technology, and in particular to a digital-analog hybrid circuit simulation communication method and device. Background Art

[0002] A hybrid chip is a special type of integrated circuit (IC) consisting of both analog and digital circuits. It integrates analog and digital signal processing functions on the same chip. This design allows the chip to simultaneously process continuously changing analog signals and discrete digital signals within the same physical package. The analog circuit is the core component, while the digital circuit controls the analog circuit to implement specific algorithms. Hybrid chips have a wide range of applications:

[0003] Communications: In wireless communications and demodulation, hybrid digital-analog chips are used to receive and process analog signals, converting them into digital signals for further processing. Wired communications, such as ADSL / fiber modems, local area networks (LANs), and wide area networks (WANs), also require hybrid digital-analog chips to convert analog signals into digital signals.

[0004] Media field: used for operations such as audio and video encoding and decoding, signal extraction, synthesis, and noise reduction, which require converting analog signals into digital signals for editing and management on electronic devices.

[0005] Image processing field: In the application of image sensors, hybrid analog-digital chips are responsible for converting analog signals into digital signals, thereby improving image quality. They are commonly found in products such as digital audio players, digital audio collectors, and digital audio mixers.

[0006] Other application areas: In the automotive industry, complex mixed-analog and digital chips can be used for vehicle diagnosis, driver assistance systems and vehicle networking technology; in the medical field, they can be used for heart monitoring and medical imaging processing; in the industrial field, they may be used for applications such as motor control, robot control and automation control.

[0007] In summary, hybrid digital-analog chips are not only widely used in the fields mentioned above, but also play a key role in many modern electronic devices. Simulation tool software for hybrid digital-analog chips has a huge application demand.

[0008] Among existing technical solutions, foreign EDA companies, led by Synopsys, Cadence, and Siemens EDA (Mentor Graphics), all provide simulation and verification solutions for mixed-signal (AMS) circuits. For example, Synopsys uses its digital simulator VCS and analog simulator XA for AMS simulation; Cadence uses its digital simulator Xcelium and analog simulator Spectre for AMS simulation. However, these tools are based on two independent, mature digital and analog simulators, combined through internal synchronization mechanisms. These include segmenting mixed-signal circuits and synchronizing data during the simulation phase. However, existing tools have the following problems:

[0009] Existing tools require automatic or manual segmentation of the hierarchical structure of the circuit design, with digital modules being processed by digital simulators and analog modules being processed by analog simulators. The digital simulator and the analog simulator establish two independent topological structures and connection relationships. Existing tools bind a specific digital simulator to an analog simulator, so the tool itself has extremely strong coupling and does not implement a universal standardized mixed-signal simulation interface, which brings many inconveniences to user configuration and circuit debugging. Existing tools all use two independent tools from the same company, implemented by adding internal processing. They cannot be easily modified to be compatible with other third-party simulators, or even different versions of simulators within the same company, and cannot form a standard interface between different tools. This problem also limits the flexibility of users in selecting simulators based on circuit characteristics. Summary of the Invention

[0010] In view of the above problems, embodiments of the present invention are proposed to provide a digital-analog hybrid circuit simulation communication method and apparatus that overcome the above problems or at least partially solve the above problems.

[0011] According to one aspect of an embodiment of the present invention, a digital-analog hybrid circuit simulation communication method is provided, the method comprising:

[0012] For a digital-analog hybrid circuit, obtain an analog circuit netlist file containing an analog circuit portion and a digital circuit netlist file containing a digital circuit portion;

[0013] The analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file, and establishes a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator;

[0014] The analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit;

[0015] The analog simulator performs analog simulation, and the digital simulator performs digital simulation, and during the simulation execution process, the analog simulator and the digital simulator are synchronized according to the conversion event triggered by the mixed signal boundary until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator, runs within the scheduled time of the next event of the digital simulator, and sends the current waiting time of the analog simulator to the digital simulator when the operation is paused, and the digital simulator runs based on the current waiting time of the analog simulator, and sends the new scheduled time of the next event of the digital simulator to the analog simulator when the operation is paused.

[0016] Optionally, the analog circuit netlist file and the digital circuit netlist file include mixed-signal boundaries;

[0017] The analog simulator reads the analog circuit netlist file, the digital simulator reads the digital circuit netlist file, and establishing a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator further includes:

[0018] The analog simulator reads the analog circuit netlist file, and sends the signal name and signal simulation identifier corresponding to the mixed signal boundary to the digital simulator according to the mixed signal boundary in the analog circuit netlist file;

[0019] The digital simulator searches for the mixed signal boundary of the digital circuit netlist file according to the signal name, determines the signal digital identifier corresponding to the signal name, and sends the signal analog identifier and the signal digital identifier to the analog simulator to establish a mapping relationship between the mixed signal boundaries in the analog simulator and the digital simulator.

[0020] Optionally, the analog simulator reads an analog circuit netlist file, the digital simulator reads a digital circuit netlist file, and establishing a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator further includes:

[0021] The analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file;

[0022] Establishing inter-process communication between the analog simulator and the digital simulator;

[0023] A mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator is established based on inter-process communication.

[0024] Optionally, the analog simulator initializing the analog circuit, and the digital simulator initializing the digital circuit further includes:

[0025] The analog simulator initializes the initial values ​​of the analog circuit and determines whether there is a mixed signal boundary triggering an analog-to-digital conversion event;

[0026] If so, send analog-to-digital signal synchronization information to the digital simulator;

[0027] If not, the current waiting time of the analog simulator is sent to the digital simulator;

[0028] After receiving the analog-to-digital signal synchronization information or the current waiting time of the analog simulator, the digital simulator initializes the initial values ​​of the digital circuit and determines whether there is a mixed signal boundary triggering a digital-to-analog event;

[0029] If so, sending digital-to-analog signal synchronization information to the analog simulator, and the analog simulator re-initializes each initial value of the analog circuit according to the digital-to-analog signal synchronization information;

[0030] If not, the next event scheduled time of the digital simulator is sent to the analog simulator.

[0031] Optionally, the analog simulator performs analog simulation, the digital simulator performs digital simulation, and during the simulation execution process, according to a conversion event triggered by a mixed signal boundary, the analog simulator and the digital simulator are synchronized until the simulation is completed, further comprising:

[0032] The analog simulator performs analog simulation to determine whether there is a mixed signal boundary triggering an analog-to-digital conversion event;

[0033] If so, send analog-to-digital signal synchronization information to the digital simulator; add the analog-to-digital event time to the simulation timeline of the digital simulator, perform signal synchronization according to the analog-to-digital signal synchronization information at the analog-to-digital event time, and return the next event scheduled time of the digital simulator to the analog simulator; the analog-to-digital signal synchronization information includes a signal analog identifier, voltage, current, reference voltage and / or equivalent resistance information;

[0034] If not, when the next moment of the simulation timeline of the analog simulator exceeds the next event scheduled time of the digital simulator, the analog simulator is paused, the current waiting time of the analog simulator is sent to the digital simulator, and the digital simulator is waited for to return a new next event scheduled time of the digital simulator;

[0035] as well as,

[0036] The digital simulator performs digital simulation to determine whether there is a mixed signal boundary triggering a digital-to-analog conversion event;

[0037] If so, send digital-to-analog signal synchronization information to the analog simulator; the analog simulator performs signal synchronization according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator; the digital-to-analog signal synchronization information includes a signal digital identifier, voltage, current and / or equivalent resistance information;

[0038] If not, when the next moment of the simulation timeline of the digital simulator exceeds the current waiting time of the analog simulator, the digital simulator is paused and a new next event scheduled time of the digital simulator is sent to the analog simulator;

[0039] When the digital simulator finishes running, it sends a digital simulation end message to the analog simulator. If the analog simulator has not finished running at this time, it sends a preset time to the analog simulator as the next event scheduled time of the digital simulator, so that the analog simulator can continue to execute until the analog simulator finishes running;

[0040] When the simulation simulator is finished running, the simulation end signal is sent to the digital simulator.

[0041] Optionally, sending digital-to-analog signal synchronization information to the analog simulator; the analog simulator performing signal synchronization according to the digital-to-analog signal synchronization information, and returning the current waiting time of the analog simulator to the digital simulator further includes:

[0042] Send digital-to-analog signal synchronization information to the simulator;

[0043] If the simulation timeline of the analog simulator exceeds the digital-to-analog conversion event time, the analog simulator returns to the position corresponding to the digital-to-analog conversion event time, resynchronizes the signal according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator.

[0044] According to another aspect of an embodiment of the present invention, a digital-analog hybrid circuit simulation communication device is provided, comprising:

[0045] A netlist file module is adapted to obtain an analog circuit netlist file containing an analog circuit portion and a digital circuit netlist file containing a digital circuit portion for a digital-analog hybrid circuit;

[0046] A mapping module, adapted for the analog simulator to read in the analog circuit netlist file, and for the digital simulator to read in the digital circuit netlist file, and for establishing a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator;

[0047] An initialization module, adapted for initializing analog circuits by an analog simulator and for initializing digital circuits by a digital simulator;

[0048] The simulation module is suitable for the analog simulator to perform analog simulation and the digital simulator to perform digital simulation, and during the simulation execution process, the analog simulator and the digital simulator are synchronized according to the conversion event triggered by the mixed signal boundary until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator, runs within the scheduled time of the next event of the digital simulator, and sends the current waiting time of the analog simulator to the digital simulator when the operation is suspended, and the digital simulator runs based on the current waiting time of the analog simulator, and sends the new scheduled time of the next event of the digital simulator to the analog simulator when the operation is suspended.

[0049] According to another aspect of an embodiment of the present invention, there is provided a computing device, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus;

[0050] The memory is used to store at least one executable instruction, and the executable instruction enables the processor to execute operations corresponding to the above-mentioned digital-analog hybrid circuit simulation communication method.

[0051] According to another aspect of the embodiments of the present invention, a computer storage medium is provided, wherein the storage medium stores at least one executable instruction, and the executable instruction enables a processor to execute operations corresponding to the above-mentioned digital-analog hybrid circuit simulation communication method.

[0052] According to another aspect of the embodiments of the present invention, a computer program product is provided, comprising at least one executable instruction, wherein the executable instruction enables a processor to execute operations corresponding to the above-mentioned digital-analog hybrid circuit simulation communication method.

[0053] According to the digital analog mixed circuit simulation communication method and device provided by the embodiment of the present invention, a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator is established, so that when a conversion event is triggered, signal synchronization can be performed based on the corresponding mapping relationship. After the analog simulator and the digital simulator are initialized respectively, the two perform circuit simulation, and the analog simulator performs simulation operation before the digital simulator. During the simulation process, signal synchronization can be performed through the conversion event. The analog simulator runs within the scheduled time of the next event of the digital simulator, and the digital simulator runs within the current waiting time of the analog simulator, so that the analog simulator takes the lead and the digital simulator follows to perform circuit simulation. It is not limited by the simulator and can complete the digital analog mixed circuit simulation.

[0054] The above description is only an overview of the technical solutions of the embodiments of the present invention. In order to more clearly understand the technical means of the embodiments of the present invention, they can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the embodiments of the present invention more obvious and easy to understand, the specific implementation methods of the embodiments of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] Various other advantages and benefits will become apparent to those skilled in the art upon reading the detailed description of the preferred embodiment below. The accompanying drawings are for illustration purposes only and are not to be considered as limiting the embodiments of the present invention. The same reference numerals are used throughout the accompanying drawings to denote the same components. In the accompanying drawings:

[0056] Figure 1 A flow chart of a digital-analog hybrid circuit simulation communication method according to an embodiment of the present invention is shown;

[0057] Figure 2 A flow chart of a digital-analog hybrid circuit simulation communication method according to another embodiment of the present invention is shown;

[0058] Figure 3 Shows a schematic diagram of communication interaction between a digital simulator and an analog simulator;

[0059] Figure 4 A schematic structural diagram of a digital-analog hybrid circuit simulation communication device according to an embodiment of the present invention is shown;

[0060] Figure 5 A schematic structural diagram of a computing device according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0061] Exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present invention are shown in the accompanying drawings, it should be understood that the present invention can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided to enable a more thorough understanding of the present invention and to fully convey the scope of the present invention to those skilled in the art.

[0062] Figure 1 FIG. 1 shows a flow chart of a digital analog hybrid circuit simulation communication method according to an embodiment of the present invention. Figure 1 As shown, the method includes the following steps:

[0063] Step S101 : for a digital-analog hybrid circuit, obtaining an analog circuit netlist file including an analog circuit portion and a digital circuit netlist file including a digital circuit portion.

[0064] For a digital-analog hybrid circuit, this embodiment splits the digital-analog hybrid circuit to obtain an analog circuit netlist file containing an analog circuit portion and a digital circuit netlist file containing a digital circuit portion. The circuit structures in the analog circuit netlist file and the digital circuit netlist file are the same. The analog circuit netlist file retains the analog circuit portion and deletes the digital circuit portion, while the digital circuit netlist file retains the digital circuit portion and deletes the analog circuit portion. The analog circuit netlist file and the digital circuit netlist file contain mixed signal boundaries, and corresponding signal conversion events are triggered at the mixed signal boundaries, such as analog-to-digital signal, digital-to-analog signal, etc. Through the signal conversion events, the signal synchronization between the analog simulator and the digital simulator is achieved, so as to complete the simulation of the entire digital-analog hybrid circuit.

[0065] In step S102 , the analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file, and a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator is established.

[0066] Based on the obtained analog circuit netlist file and digital circuit netlist file, the analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file. The analog simulator and the digital simulator realize circuit simulation based on their respective netlist files.

[0067] In addition to their respective circuit parts, the analog circuit netlist file and the digital circuit netlist file also contain mixed signal boundaries. In the circuit structure, the signal affected by digital behavior is a digital circuit, and the signal affected by analog behavior is an analog circuit. The mixed signal boundary refers to the signal affected by both digital and analog behaviors. When the signal crosses the mixed signal boundary, when digital behavior or analog behavior occurs, signal conversion synchronization is required during the simulation process, that is, the digital circuit and the analog circuit signals during the simulation process are converted and synchronized to ensure signal consistency during the circuit simulation process. Therefore, after the analog simulator and the digital simulator read in their respective netlist files, it is also necessary to establish a mapping relationship between the mixed signal boundaries in the analog simulator and the digital simulator. The mapping relationship ensures that the analog simulator and the digital simulator can determine the locations where they need to be synchronized when performing signal synchronization.

[0068] In step S103 , the analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit.

[0069] After establishing the mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator, the analog simulator and the digital simulator can be initialized. In the initialization stage, the analog circuit of the analog simulator can be initialized first to generate the initial value of the analog circuit, or the initial value can be determined according to the configuration information, such as the initial value includes the initial voltage of the analog circuit being 1.8 volts, etc. Here, the analog simulator is initialized first, and then the digital simulator is initialized. When the digital simulator is initialized, if there is a mixed signal boundary during initialization and signal conversion synchronization is required, then when the digital simulator is initialized, a message is sent to inform the analog simulator that the analog simulator can fall back. The change of the analog circuit in the analog simulator is not completed instantly, and there is a rising or falling process. A new initialization can be performed based on the signal after the influence of the digital circuit.

[0070] In step S104 , the analog simulator performs analog simulation, and the digital simulator performs digital simulation. During the simulation execution, the analog simulator and the digital simulator are synchronized according to the conversion event triggered by the mixed signal boundary until the simulation ends.

[0071] After the digital simulator and the analog simulator are initialized, the analog simulator performs analog simulation and the digital simulator performs digital simulation. During the simulation execution process, if a conversion event triggered by a mixed signal boundary occurs, such as analog to digital, digital to analog, etc., the analog simulator can send the corresponding signal synchronization information to the digital simulator when converting analog to digital, and send the corresponding signal synchronization information to the analog simulator when converting digital to analog, to achieve signal conversion synchronization processing.

[0072] Furthermore, during the simulation execution process, in addition to sending corresponding signal synchronization information for conversion events between the digital simulator and the analog simulator, the analog simulator runs within the scheduled time of the next event of the digital simulator. When it exceeds the time, the analog simulator pauses and sends the current waiting time of the analog simulator to the digital simulator. The digital simulator runs based on the current waiting time of the analog simulator. When it exceeds the time, it pauses and sends the new scheduled time of the next event of the digital simulator to the analog simulator, ensuring that the digital simulator and the analog simulator can perform simulation pause or simulation continuation according to the schedule during the simulation execution process, and guaranteeing the signal consistency and integrity during the simulation execution process of the digital simulator and the analog simulator. During the simulation execution process, the analog simulator performs simulation operation before the digital simulator. When the simulation execution process of the digital simulator involves signal conversion and the analog simulator has already simulated the execution position, the analog simulator can determine the position according to the conversion event and then fall back, re-synchronize the signal according to the signal conversion, and re-simulate. The analog simulator simulation execution is faster, and letting it fall back can improve the efficiency of the overall simulation.

[0073] According to the digital analog mixed circuit simulation communication method provided by the embodiment of the present invention, a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator is established, so that when a conversion event is triggered, signal synchronization can be performed based on the corresponding mapping relationship. After the analog simulator and the digital simulator are initialized respectively, the two perform circuit simulation, and the analog simulator performs simulation operation before the digital simulator. During the simulation process, signal synchronization can be performed through the conversion event. The analog simulator runs within the scheduled time of the next event of the digital simulator, and the digital simulator runs within the current waiting time of the analog simulator, so that the analog simulator takes the lead and the digital simulator follows to perform circuit simulation. It is not limited to the simulator and can complete the digital analog mixed circuit simulation.

[0074] Figure 2 FIG. 1 shows a flow chart of a digital analog hybrid circuit simulation communication method according to another embodiment of the present invention. Figure 2 As shown, the method includes the following steps:

[0075] Step S201 : For a digital-analog hybrid circuit, an analog circuit netlist file including an analog circuit portion and a digital circuit netlist file including a digital circuit portion are obtained.

[0076] When processing digital-analog hybrid circuits, the existing technology uses manual or automatic segmentation to divide the digital circuit part and the analog circuit part into different circuit structures, and enter two different digital and analog simulators for parsing and compilation. The analog circuit and digital circuit obtained each form an independent circuit structure. Regardless of whether it is a digital simulator or an analog simulator, they only process their respective partial circuits. There is no communication between the two, resulting in serious fragmentation. Users cannot know the complete circuit, which increases the complexity of circuit debugging.

[0077] This embodiment is directed to a digital-analog hybrid circuit. A mixed signal hierarchical structure comprising a digital circuit portion and an analog circuit portion is first established for the hybrid circuit. The hybrid signal hierarchical structure comprises both digital and analog circuit portions. The hybrid signal hierarchical structure is topologically expanded, and signal analysis is performed on the behavior of the circuit structure. Signals affected by digital behavior are marked as digital circuits, signals affected by analog behavior are marked as analog circuits, and signals affected by both digital and analog behavior are marked as hybrid signal boundaries. Further optimization can be performed based on the hybrid signal boundaries. Digital-to-analog conversion units can be inserted where analog circuits connect analog devices, or where digital circuits connect digital behavior, between the hybrid signal boundaries. During simulation, the inserted digital-to-analog conversion units trigger corresponding analog-to-digital or digital-to-analog conversion events, thereby synchronizing the signals between the two circuits. Based on the optimized hybrid signal hierarchical structure, two digital and analog circuits with identical circuit structures can be obtained. The digital and analog circuits have the same circuit structure and are vertically mapped. The missing analog portion of the digital circuit matches the analog portion of the analog circuit, and the missing digital portion of the analog circuit matches the digital portion of the digital circuit. Generate digital circuit netlist files based on digital circuits, and generate analog circuit netlist files based on analog circuits.

[0078] In step S202 , the analog simulator reads the analog circuit netlist file, the digital simulator reads the digital circuit netlist file, and an inter-process communication is established between the analog simulator and the digital simulator.

[0079] The analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file. Inter-process communication is established between the analog simulator and the digital simulator to facilitate the sending and receiving of information between the two simulators. Establishing inter-process communication can be implemented using, for example, anaConnectMsComm(). The above is an example, and specific implementation settings are not limited here.

[0080] Step S203: establishing a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator based on inter-process communication.

[0081] After the analog simulator reads the analog circuit netlist file, it can send the signal name and signal simulation identifier corresponding to the mixed signal boundary in the analog circuit netlist file to the digital simulator. The content sent by the analog simulator is as follows:

[0082]

[0083] The digital simulator can search for mixed signal boundaries in the digital circuit netlist file based on the signal name. The signal name ieName in the digital circuit netlist file and the analog circuit netlist file are consistent. The corresponding signal digital identifier can be determined based on the determined signal name, so that the digital simulator can determine the one-to-one mapping relationship between the signal digital identifier and the signal analog identifier. The digital simulator then sends the signal analog identifier and the signal digital identifier to the analog simulator. The analog simulator can determine the one-to-one mapping relationship between the signal digital identifier and the signal analog identifier, thereby establishing a mapping relationship between the mixed signal boundaries in the analog simulator and the digital simulator. The content sent by the digital simulator is as follows:

[0084]

[0085] The analog simulator sends, such as sendIeNameIdPairs(uint32_t numPairs,constIeNameIdPair*ieNameIdPairs), and the digital simulator returns, such as receiveIeIdIdPairs(uint32_t&numPairs,IeIdIdPair*&ieIdIdPairs), to establish a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator. This can facilitate the subsequent simulation execution process. When a conversion event is triggered, the location where the conversion event occurs can be accurately located to synchronize the signals.

[0086] The above code is for illustration only. The specific settings will depend on the implementation and are not limited here.

[0087] In step S204 , the analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit.

[0088] During the initialization phase, the analog simulator initializes the initial values ​​of the analog circuit and sets the initial values ​​of the analog circuit. During initialization, it is also necessary to determine whether there is a mixed signal boundary triggering an analog-to-digital event. If so, it is also necessary to send analog-to-digital signal synchronization information to the digital simulator, and the digital simulator needs to perform signal synchronization accordingly. If not, the current waiting time of the analog simulator is sent to the digital simulator, and the digital simulator is required to return information. For example, the digital simulator sends the scheduled time of the next event of the digital simulator to the analog simulator, and the analog simulator can simulate and run within the scheduled time of the next event of the digital simulator according to the scheduled time of the next event of the digital simulator, so that the analog simulator can be paused and scheduled according to the scheduled time during the simulation execution process; or, there is a digital-to-analog event in the digital simulator, and the analog simulator needs to be reinitialized, etc. The specific implementation is determined and is not limited here.

[0089] After the digital simulator receives the analog-to-digital signal synchronization information or the current waiting time of the analog simulator, it initializes the initial values ​​of the digital circuit. During initialization, if the digital simulator receives the analog-to-digital signal synchronization information, it needs to perform signal synchronization and modify the initial values ​​of the digital circuit. If the digital simulator receives the current waiting time of the analog simulator, the digital simulator runs according to the current waiting time of the analog simulator and within the current waiting time of the analog simulator. When the digital simulator is initialized, it is also necessary to determine whether there is a mixed signal boundary triggering a digital-to-analog event. If so, the digital simulator sends the digital-to-analog signal synchronization information to the analog simulator. The analog simulator re-initializes the initial values ​​of the analog circuit based on the digital-to-analog signal synchronization information. The analog simulator then performs simulation based on the new initial values, without the need for mutual signal conversion between the analog simulator and the digital simulator. If there is no digital-to-analog event, the digital simulator sends the next event scheduled time of the digital simulator to the analog simulator. The analog simulator performs simulation based on the next event scheduled time of the digital simulator sent by the digital simulator.

[0090] In step S205 , the simulator performs simulation to determine whether there is a mixed signal boundary triggering an analog-to-digital conversion event.

[0091] The analog simulator and the digital simulator perform circuit simulations, with the analog simulator running before the digital simulator. During the simulation process, the analog simulator determines whether a mixed-signal boundary triggers an analog-to-digital conversion event. If so, it executes step S206. If not, it executes step S207. The analog simulator executes simulations within the next scheduled event time sent by the digital simulator, managing the execution time of the analog simulator.

[0092] Step S206, send analog-to-digital signal synchronization information to the digital simulator, add analog-to-digital event time to the simulation timeline of the digital simulator, perform signal synchronization according to the analog-to-digital signal synchronization information at the analog-to-digital event time, and return the next event scheduled time of the digital simulator to the analog simulator.

[0093] When a mixed-signal boundary triggers an analog-to-digital conversion event during simulation execution, the simulator sends analog-to-digital signal synchronization information. The analog-to-digital signal synchronization information includes information such as signal analog identifier, voltage, current, and equivalent resistance, as shown below:

[0094]

[0095] Among them, voltage is the voltage value of the analog signal, and the digital simulator can convert it into the corresponding digital signal logic value according to the reference voltage. The equivalent resistance is the equivalent resistance of the analog signal, and it is correspondingly set to the driving strength of the digital signal. The current is the current value of the analog signal, and it is correspondingly converted into the corresponding digital signal value, etc. Furthermore, the analog-to-digital signal synchronization information can also include reference voltage, etc., which can use static voltage, that is, the reference voltage is a fixed constant, or dynamic voltage, that is, the reference voltage comes from a signal (analog signal or digital signal), and its value changes in real time during the simulation process. The above is an example, which is set according to the specific implementation situation and is not limited here.

[0096] When an analog simulator sends signals to a digital simulator, such as sendA2DEvents(double time, uint32_t numEvents, const A2DEvent*a2dEvents), time specifies the next time for simulator signal synchronization. When an analog simulator sends signals to a digital simulator, the current simulator wait time is typically sent. This parameter is not required for analog-to-digital conversion. numEvents defines different events, including analog-to-digital conversion events and the current simulator wait time. The corresponding value is sent based on the specific event. a2dEvents represents analog-to-digital signal synchronization information.

[0097] The digital simulator can add an analog-to-digital event time to its simulation timeline. When the simulation reaches the analog-to-digital event time, it performs signal synchronization based on the analog-to-digital signal synchronization information, and obtains the corresponding converted digital voltage, current, resistance (drive strength), etc. After synchronization, it returns the next event scheduled time of the digital simulator to the analog simulator, agreeing on a new next simulation execution time. When the digital simulator returns, it can use receiveIeEvent(ARecvIeEvent&ieEvent), where ARecvIeEvent includes the following data:

[0098]

[0099] After completing signal synchronization, the digital simulator can use the above function to return the next event scheduled time of the digital simulator to the analog simulator. The above is an example, and the specific setting depends on the implementation situation and is not limited here.

[0100] In an optional embodiment, if the next event scheduled time of the digital simulator is t2, and the analog simulator is executing the simulation before reaching time t2, the analog-to-digital event is triggered, and the analog-to-digital signal synchronization information is sent to the digital simulator. After the analog simulator sends the analog-to-digital signal synchronization information, the simulation can be paused first, and the digital simulator adds the analog-to-digital event time t2' to the simulation timeline. When the digital simulator executes the simulation to t2', the signal synchronization is performed according to the analog-to-digital signal synchronization information. After the synchronization is completed, the next event scheduled time of the digital simulator, such as t3, is returned to the analog simulator. The analog simulator continues to execute the simulation according to the returned next event scheduled time of the digital simulator, such as executing to time t3. The above is an example, and the specific setting is based on the implementation situation, and is not limited here.

[0101] Step S207, when the next moment of the simulation timeline of the analog simulator exceeds the next event scheduled time of the digital simulator, the analog simulator is paused, the current waiting time of the analog simulator is sent to the digital simulator, and the digital simulator is waited for to return the new next event scheduled time of the digital simulator.

[0102] When the analog simulator is simulating within the next event scheduled time of the digital simulator, it does not include the mixed signal boundary triggering the analog-to-digital conversion event. The next moment of the simulation timeline of the analog simulator exceeds the next event scheduled time of the digital simulator, then the analog simulator is paused. The analog simulator can use sendWaitTime(doubletime), where time can be set to the current waiting time of the analog simulator, to send the current waiting time of the analog simulator to the digital simulator to wait for the digital simulator to return the new next event scheduled time of the digital simulator, that is, wait for the digital simulator to return the next event scheduled time of the digital simulator based on receiveIeEvent(ARecvIeEvent&ieEvent), and then the analog simulator continues to simulate.

[0103] In step S208 , the digital simulator performs digital simulation to determine whether a mixed signal boundary triggers a digital-to-analog conversion event.

[0104] During the digital simulation process, the digital simulator determines whether there is a mixed signal boundary triggering a digital-to-analog conversion event. If so, execute step S209; if not, execute step S210. The digital simulator simulates and executes within the current waiting time of the analog simulator to manage the execution time of the digital simulator.

[0105] Step S209: Send digital-to-analog signal synchronization information to the analog simulator. The analog simulator performs signal synchronization according to the digital-to-analog signal synchronization information and returns the current waiting time of the analog simulator to the digital simulator.

[0106] When a mixed-signal boundary triggers a digital-to-analog conversion event during simulation execution in the digital simulator, the digital simulator sends digital-to-analog signal synchronization information to the analog simulator. The digital-to-analog signal synchronization information includes signal digital identifiers, voltage, current, equivalent resistance information, etc., as shown below:

[0107]

[0108]

[0109] The voltage is the digital signal logic value, which is converted into the corresponding analog signal voltage based on the reference voltage. The current is the digital signal value, which can be converted into the corresponding analog signal current source. The equivalent resistance is the strength information of the digital signal and can be set as the equivalent resistance of the analog signal. When the digital signal is in a high-impedance state, the corresponding analog signal needs to add an open-circuit resistor, etc. The above is an example, and the specific settings will depend on the implementation and are not limited here.

[0110] The digital simulator can set the digital-to-analog signal synchronization information, digital-to-analog events, etc. of d2aEvents through receiveIeEvent(ARecvIeEvent&ieEvent). The analog simulator performs signal synchronization according to the received digital-to-analog signal synchronization information. After signal synchronization, the current waiting time of the analog simulator is set according to sendWaitTime(double time), the current waiting time of the analog simulator is sent to the digital simulator, and the current waiting time of the analog simulator is returned to the digital simulator.

[0111] Furthermore, if the simulation timeline of the analog simulator has exceeded the digital-to-analog conversion event time, such as when the digital simulator has not yet executed to time A1, the simulation process of the analog simulator has passed time A1, and when the digital simulator executes to time A1, the digital-to-analog conversion event is triggered, informing the analog simulator that the digital-to-analog conversion event occurred at time A1, and the analog simulator returns to the position corresponding to the digital-to-analog conversion event time A1, resynchronizes the signal of A1 according to the digital-to-analog signal synchronization information, and then returns the current waiting time of the analog simulator to the digital simulator to maintain signal synchronization with the digital simulator. The analog simulator executes before the digital simulator. When a conversion event occurs that requires signal synchronization, the analog simulator can fall back and re-execute to synchronize the signal with the digital simulator.

[0112] Step S210: When the next moment of the simulation time axis of the digital simulator exceeds the current waiting time of the analog simulator, the digital simulator is paused and a new scheduled time for the next event of the digital simulator is sent to the analog simulator.

[0113] When the digital simulator is simulating within the current waiting time of the analog simulator, it does not include the mixed signal boundary triggering the digital-to-analog conversion event. When the next moment of the simulation timeline of the digital simulator exceeds the current waiting time of the analog simulator, the digital simulator is paused. The digital simulator sets the next event scheduled time of the digital simulator through receiveIeEvent(ARecvIeEvent&ieEvent), etc., and sends the new next event scheduled time of the digital simulator to the analog simulator.

[0114] In this embodiment, both the digital simulator and the analog simulator are software tools. There is no restriction on the execution order of steps S205-S207 and steps S208-S210, and the corresponding steps are called for execution according to the specific execution situation.

[0115] Step S211: When the digital simulator finishes running, a digital simulation completion message is sent to the analog simulator.

[0116] When the digital simulator finishes running, the digital simulator can set the end of digital simulation through receiveIeEvent(ARecvIeEvent&ieEvent) and notify the analog simulator that the digital simulator simulation has ended.

[0117] Furthermore, if the simulation simulator has not finished running at this time, that is, the digital simulator has not received the simulation end signal sent by the simulation simulator, the digital simulator can send a preset time to the simulation simulator as the next event scheduled time of the digital simulator. The preset time can be set to -1 to ensure that the simulation simulator continues to execute until the simulation simulator finishes running.

[0118] Step S212: When the simulation simulator is finished running, a simulation completion notification is sent to the digital simulator.

[0119] When the analog simulator finishes running, the analog simulator can send the analog simulation end to the digital simulator through sendAnalogFinish(doubletime), informing the digital simulator of the end time, and the digital simulator ends at the same time.

[0120] The simulation process of analog simulator and digital simulator can be found in Figure 3As shown, after the analog simulator and the digital simulator establish inter-process communication, the analog simulator sends analog boundary information, such as sending a signal name and a signal analog identifier to the digital simulator. The digital simulator determines the digital boundary signal information based on the signal name and returns the corresponding digital boundary signal information, including sending the signal analog identifier and the signal digital identifier to the analog simulator, thereby establishing a mapping relationship between the mixed signal boundaries of the analog simulator and the digital simulator. Afterwards, the analog circuit is initialized. During initialization, if there is an analog-to-digital conversion event, the analog-to-digital conversion event is sent to the digital simulator. If not, the current waiting time of the analog simulator is sent. After receiving any information sent by the analog simulator during initialization, the digital simulator initializes the digital circuit. When there is a digital-to-analog conversion event during initialization, the digital-to-analog conversion event is sent to the analog simulator. The analog circuit is reinitialized according to the digital-to-analog conversion. If there is no digital-to-analog conversion event, the digital simulator sends the scheduled time of the next digital simulator event. After the analog circuit and digital circuit are initialized, the simulation operation phase begins. During the simulation operation, the analog simulator and the digital simulator send the corresponding analog-to-digital conversion event or the digital-to-analog conversion event signal synchronization information according to the conversion event triggered by the mixed signal boundary. The corresponding simulator performs signal synchronization. After the signal synchronization is completed, the corresponding analog simulator's current waiting time or the digital simulator's next event scheduled time is sent until the simulation of the analog simulator and the digital simulator is completed. When the digital simulator ends, the end of the digital simulation is sent to the analog simulator. If the analog simulator has not ended, the digital simulator will set the next event scheduled time of the digital simulator to -1 to ensure that the analog simulator can continue to run. After the analog simulator ends, the end of the analog simulation is sent to the digital simulator. At this time, both analog and digital simulations are completed. The above is an example. The order and timing of information sending in each stage such as mixed signal boundary mapping, initialization, and simulation operation are set according to the implementation situation and are not limited here.

[0121] According to the digital analog mixed circuit simulation communication method provided by the embodiment of the present invention, the analog simulator and the digital simulator establish inter-process communication and construct a mapping relationship of the mixed signal boundary for the two so as to determine the corresponding signal synchronization based on the mapping relationship. The analog simulator is initialized before the digital simulator. When there is a digital-to-analog conversion event, the digital simulator will modify the initial value of the analog simulator's signal, and the analog simulator can fall back and reinitialize. After initialization, the analog simulator performs simulation operation before the digital simulator. During the simulation process, signal synchronization is performed according to the corresponding conversion event, and the analog simulator is set to run within the next event scheduled time of the digital simulator, and the digital simulator runs within the current waiting time of the analog simulator, which facilitates the scheduling of the analog simulator and the digital simulator, determines the corresponding time position for signal synchronization, and the analog simulator runs fast. The analog simulator can fall back to correct the signal, thereby improving the overall simulation efficiency. Based on the communication of this application, it is possible to achieve circuit simulation with the analog simulator leading and the digital simulator following, and the digital simulator can be not limited to the simulator to complete the digital analog mixed circuit simulation.

[0122] Figure 4 FIG. 1 shows a schematic diagram of the structure of a digital analog hybrid circuit simulation communication device provided by an embodiment of the present invention. Figure 4 As shown, the device includes:

[0123] The netlist file module 410 is adapted to obtain, for a digital-analog hybrid circuit, an analog circuit netlist file including an analog circuit portion and a digital circuit netlist file including a digital circuit portion;

[0124] A mapping module 420 is adapted to read an analog circuit netlist file into the analog simulator and a digital circuit netlist file into the digital simulator, and establish a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator;

[0125] Initialization module 430, adapted for initializing analog circuits by analog simulators, and initializing digital circuits by digital simulators;

[0126] The simulation module 440 is suitable for the analog simulator to perform analog simulation and the digital simulator to perform digital simulation, and during the simulation execution process, the analog simulator and the digital simulator are synchronized according to the conversion event triggered by the mixed signal boundary until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator, runs within the scheduled time of the next event of the digital simulator, and sends the current waiting time of the analog simulator to the digital simulator when the operation is suspended, and the digital simulator runs based on the current waiting time of the analog simulator, and sends the new scheduled time of the next event of the digital simulator to the analog simulator when the operation is suspended.

[0127] Optionally, the analog circuit netlist file and the digital circuit netlist file include mixed-signal boundaries;

[0128] The mapping module 420 is further adapted to:

[0129] The analog simulator reads the analog circuit netlist file, and sends the signal name and signal simulation identifier corresponding to the mixed signal boundary to the digital simulator according to the mixed signal boundary in the analog circuit netlist file;

[0130] The digital simulator searches for the mixed signal boundary of the digital circuit netlist file according to the signal name, determines the signal digital identifier corresponding to the signal name, and sends the signal analog identifier and the signal digital identifier to the analog simulator to establish a mapping relationship between the mixed signal boundaries in the analog simulator and the digital simulator.

[0131] Optionally, the mapping module 420 is further adapted to:

[0132] The analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file;

[0133] Establishing inter-process communication between the analog simulator and the digital simulator;

[0134] A mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator is established based on inter-process communication.

[0135] Optionally, the initialization module 430 is further adapted to:

[0136] The analog simulator initializes the initial values ​​of the analog circuit and determines whether there is a mixed signal boundary triggering an analog-to-digital conversion event;

[0137] If so, send analog-to-digital signal synchronization information to the digital simulator;

[0138] If not, the current waiting time of the analog simulator is sent to the digital simulator;

[0139] After receiving the analog-to-digital signal synchronization information or the current waiting time of the analog simulator, the digital simulator initializes the initial values ​​of the digital circuit and determines whether there is a mixed signal boundary triggering a digital-to-analog event;

[0140] If so, sending digital-to-analog signal synchronization information to the analog simulator, and the analog simulator re-initializes each initial value of the analog circuit according to the digital-to-analog signal synchronization information;

[0141] If not, the next event scheduled time of the digital simulator is sent to the analog simulator.

[0142] Optionally, the simulation module 440 is further adapted to:

[0143] The analog simulator performs analog simulation to determine whether there is a mixed signal boundary triggering an analog-to-digital conversion event;

[0144] If so, send analog-to-digital signal synchronization information to the digital simulator; add the analog-to-digital event time to the simulation timeline of the digital simulator, perform signal synchronization according to the analog-to-digital signal synchronization information at the analog-to-digital event time, and return the next event scheduled time of the digital simulator to the analog simulator; the analog-to-digital signal synchronization information includes a signal analog identifier, voltage, current, reference voltage and / or equivalent resistance information;

[0145] If not, when the next moment of the simulation timeline of the analog simulator exceeds the next event scheduled time of the digital simulator, the analog simulator is paused, the current waiting time of the analog simulator is sent to the digital simulator, and the digital simulator is waited for to return a new next event scheduled time of the digital simulator;

[0146] as well as,

[0147] The digital simulator performs digital simulation to determine whether there is a mixed signal boundary triggering a digital-to-analog conversion event;

[0148] If so, send digital-to-analog signal synchronization information to the analog simulator; the analog simulator performs signal synchronization according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator; the digital-to-analog signal synchronization information includes a signal digital identifier, voltage, current and / or equivalent resistance information;

[0149] If not, when the next moment of the simulation timeline of the digital simulator exceeds the current waiting time of the analog simulator, the digital simulator is paused and a new next event scheduled time of the digital simulator is sent to the analog simulator;

[0150] When the digital simulator finishes running, it sends a digital simulation end message to the analog simulator. If the analog simulator has not finished running at this time, it sends a preset time to the analog simulator as the next event scheduled time of the digital simulator, so that the analog simulator can continue to execute until the analog simulator finishes running;

[0151] When the simulation simulator is finished running, the simulation end signal is sent to the digital simulator.

[0152] Optionally, the simulation module 440 is further adapted to:

[0153] Send digital-to-analog signal synchronization information to the simulator;

[0154] If the simulation timeline of the analog simulator exceeds the digital-to-analog conversion event time, the analog simulator returns to the position corresponding to the digital-to-analog conversion event time, resynchronizes the signal according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator.

[0155] The description of each module above refers to the corresponding description in the method embodiment and will not be repeated here.

[0156] An embodiment of the present invention further provides a non-volatile computer storage medium storing at least one executable instruction, which can execute operations corresponding to the digital analog hybrid circuit simulation communication method in any of the above method embodiments.

[0157] An embodiment of the present application provides a computer program product, which includes at least one executable instruction or computer program, which can enable a processor to perform operations corresponding to the digital analog hybrid circuit simulation communication method in any of the above method embodiments.

[0158] Figure 5 A schematic structural diagram of a computing device according to an embodiment of the present invention is shown. The specific implementation of the computing device is not limited to the specific implementation of the computing device in the specific embodiment of the present invention.

[0159] like Figure 5 As shown, the computing device may include a processor 502 , a communication interface 504 , a memory 506 , and a communication bus 508 .

[0160] in:

[0161] The processor 502 , the communication interface 504 , and the memory 506 communicate with each other via a communication bus 508 .

[0162] The communication interface 504 is used to communicate with other devices such as clients or other servers.

[0163] The processor 502 is configured to execute the program 510 , and specifically to execute the relevant steps in the above-mentioned embodiment of the digital-analog hybrid circuit simulation communication method.

[0164] Specifically, the program 510 may include program codes, which include computer operation instructions.

[0165] Processor 502 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The one or more processors included in a computing device may be processors of the same type, such as one or more CPUs, or processors of different types, such as one or more CPUs and one or more ASICs.

[0166] The memory 506 is used to store the program 510. The memory 506 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.

[0167] Program 510 can be specifically used to enable processor 502 to execute the digital analog hybrid circuit simulation communication method in any of the above-mentioned method embodiments. The specific implementation of each step in program 510 can refer to the corresponding descriptions in the corresponding steps and units in the above-mentioned digital analog hybrid circuit simulation communication embodiment, and will not be repeated here. Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working process of the above-mentioned devices and modules can refer to the corresponding process description in the above-mentioned method embodiment, and will not be repeated here.

[0168] The algorithm or display provided herein is not inherently related to any particular computer, virtual system or other device. Various general-purpose systems can also be used together with the teachings based on this. According to the above description, it is obvious that the structure required for constructing such systems. In addition, the embodiment of the present invention is not directed to any specific programming language. It should be understood that various programming languages ​​can be utilized to implement the content of the embodiment of the present invention described herein, and the above description of specific languages ​​is for the purpose of disclosing the preferred implementation of the embodiment of the present invention.

[0169] In the description provided herein, numerous specific details are described. However, it is understood that embodiments of the present invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of this description.

[0170] Similarly, it should be understood that in order to streamline the embodiments of the invention and aid in understanding one or more of the various inventive aspects, in the above description of exemplary embodiments of the invention, various features of the embodiments of the invention are sometimes grouped together into a single embodiment, figure, or description thereof. However, this disclosed approach should not be interpreted as reflecting an intention that the claimed embodiments of the invention require more features than are expressly recited in each claim. Rather, as reflected in the claims below, inventive aspects lie in less than all of the features of the individual embodiments disclosed above. Accordingly, the claims that follow the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of the invention.

[0171] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and in addition may be divided into multiple submodules or subunits or subcomponents. All features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed herein may be combined in any combination, except that at least some of such features and / or processes or units are mutually exclusive. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature providing the same, equivalent or similar purpose.

[0172] Furthermore, those skilled in the art will appreciate that although some embodiments herein include certain features included in other embodiments but not other features, combinations of features from different embodiments are intended to be within the scope of the present invention and to form different embodiments. For example, in the claims below, any of the claimed embodiments may be used in any combination.

[0173] The various component embodiments of the present invention can be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. It should be understood by those skilled in the art that a microprocessor or digital signal processor (DSP) can be used in practice to implement some or all of the functions of some or all of the components according to the embodiments of the present invention. The embodiments of the present invention can also be implemented as a device or apparatus program (e.g., a computer program and a computer program product) for executing part or all of the methods described herein. Such a program implementing an embodiment of the present invention can be stored on a computer-readable medium, or can have the form of one or more signals. Such a signal can be downloaded from an Internet website, or provided on a carrier signal, or provided in any other form.

[0174] It should be noted that the above embodiments illustrate rather than limit the embodiments of the invention, and that a person skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between brackets should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The embodiments of the invention may be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In a unit claim enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third etc. does not indicate any order. These words may be interpreted as names. The steps in the above embodiments should not be understood as limiting the order of execution unless otherwise specified.

Claims

1. A digital analog hybrid circuit simulation communication method, characterized in that: It includes: For a digital-analog hybrid circuit, obtain an analog circuit netlist file containing an analog circuit portion and a digital circuit netlist file containing a digital circuit portion; The analog simulator reads the analog circuit netlist file, the digital simulator reads the digital circuit netlist file, and establishes a mapping relationship between the mixed signal boundaries in the analog simulator and the digital simulator; The analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit; The analog simulator performs analog simulation, the digital simulator performs digital simulation, and during the simulation execution process, the analog simulator and the digital simulator are synchronized with each other according to the conversion event triggered by the mixed signal boundary until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator, runs within the scheduled time of the next event of the digital simulator, and sends the current waiting time of the analog simulator to the digital simulator when the operation is suspended, and the digital simulator runs based on the current waiting time of the analog simulator, and sends the new scheduled time of the next event of the digital simulator to the analog simulator when the operation is suspended.

2. The method according to claim 1, characterized in that The analog circuit netlist file and the digital circuit netlist file contain mixed signal boundaries; The analog simulator reads the analog circuit netlist file, the digital simulator reads the digital circuit netlist file, and establishing a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator further includes: The analog simulator reads the analog circuit netlist file, and sends the signal name and signal simulation identifier corresponding to the mixed signal boundary to the digital simulator according to the mixed signal boundary in the analog circuit netlist file; The digital simulator searches for the mixed signal boundary of the digital circuit netlist file according to the signal name, determines the signal digital identifier corresponding to the signal name, and sends the signal analog identifier and the signal digital identifier to the analog simulator to establish a mapping relationship between the analog simulator and the mixed signal boundaries in the digital simulator.

3. The method according to claim 1, characterized in that The analog simulator reads the analog circuit netlist file, the digital simulator reads the digital circuit netlist file, and establishing a mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator further includes: The analog simulator reads the analog circuit netlist file, and the digital simulator reads the digital circuit netlist file; Establishing inter-process communication between the analog simulator and the digital simulator; A mapping relationship between mixed signal boundaries in the analog simulator and the digital simulator is established based on the inter-process communication.

4. The method according to claim 1, wherein The analog simulator initializes the analog circuit, and the digital simulator initializes the digital circuit further comprises: The analog simulator initializes each initial value of the analog circuit and determines whether there is a mixed signal boundary triggering an analog-to-digital conversion event; If so, sending analog-to-digital signal synchronization information to the digital simulator; If not, sending the current waiting time of the analog simulator to the digital simulator; After receiving the analog-to-digital signal synchronization information or the current waiting time of the analog simulator, the digital simulator initializes the initial values ​​of the digital circuit and determines whether there is a mixed signal boundary triggering a digital-to-analog event; If so, sending digital-to-analog signal synchronization information to the analog simulator, and the analog simulator re-initializes each initial value of the analog circuit according to the digital-to-analog signal synchronization information; If not, the next event scheduled time of the digital simulator is sent to the analog simulator.

5. The method according to claim 1, characterized in that The analog simulator performs analog simulation, the digital simulator performs digital simulation, and during the simulation execution process, according to a conversion event triggered by a mixed signal boundary, the analog simulator and the digital simulator are synchronized until the simulation is completed, further comprising: The analog simulator performs analog simulation to determine whether there is a mixed signal boundary triggering an analog-to-digital conversion event; If so, send analog-to-digital signal synchronization information to the digital simulator; add the analog-to-digital event time to the simulation time axis of the digital simulator, perform signal synchronization at the analog-to-digital event time according to the analog-to-digital signal synchronization information, and return the next event scheduled time of the digital simulator to the analog simulator; the analog-to-digital signal synchronization information includes a signal simulation identifier, voltage, current, reference voltage and / or equivalent resistance information; If not, when the next moment of the simulation timeline of the analog simulator exceeds the next event scheduled time of the digital simulator, pausing the analog simulator, sending the current waiting time of the analog simulator to the digital simulator, and waiting for the digital simulator to return a new next event scheduled time of the digital simulator; as well as, The digital simulator performs digital simulation to determine whether there is a mixed signal boundary triggering a digital-to-analog conversion event; If so, sending digital-to-analog signal synchronization information to the analog simulator; the analog simulator performs signal synchronization according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator; the digital-to-analog signal synchronization information includes a signal digital identifier, voltage, current and / or equivalent resistance information; If not, when the next moment of the simulation time axis of the digital simulator exceeds the current waiting time of the analog simulator, pausing the digital simulator and sending a new next event scheduled time of the digital simulator to the analog simulator; When the digital simulator ends, a digital simulation end message is sent to the analog simulator. If the analog simulator has not ended at this time, a preset time is sent to the analog simulator as the next event scheduled time of the digital simulator, so that the analog simulator can continue to execute until the analog simulator ends. When the simulation simulator is finished running, a simulation end message is sent to the digital simulator.

6. The method according to claim 5, characterized in that The sending of digital-to-analog signal synchronization information to the analog simulator; the analog simulator performing signal synchronization according to the digital-to-analog signal synchronization information, and returning the current waiting time of the analog simulator to the digital simulator further comprises: Sending digital-to-analog signal synchronization information to the simulation simulator; If the simulation timeline of the analog simulator exceeds the digital-to-analog conversion event time, the analog simulator returns to the position corresponding to the digital-to-analog conversion event time, resynchronizes the signal according to the digital-to-analog signal synchronization information, and returns the current waiting time of the analog simulator to the digital simulator.

7. A digital analog hybrid circuit simulation communication device, characterized in that: The device includes: A netlist file module is adapted to obtain an analog circuit netlist file containing an analog circuit portion and a digital circuit netlist file containing a digital circuit portion for a digital-analog hybrid circuit; A mapping module, adapted for an analog simulator to read the analog circuit netlist file, a digital simulator to read the digital circuit netlist file, and establish a mapping relationship between the boundaries of each mixed signal in the analog simulator and the digital simulator; an initialization module, adapted for the analog simulator to initialize the analog circuit, and for the digital simulator to initialize the digital circuit; A simulation module is suitable for the analog simulator to perform analog simulation, the digital simulator to perform digital simulation, and during the simulation execution process, the analog simulator and the digital simulator are synchronized in signal according to the conversion event triggered by the mixed signal boundary until the simulation ends; wherein, the analog simulator performs simulation operation before the digital simulator, runs within the scheduled time of the next event of the digital simulator, and sends the current waiting time of the analog simulator to the digital simulator when the operation is suspended, and the digital simulator runs based on the current waiting time of the analog simulator, and sends the new scheduled time of the next event of the digital simulator to the analog simulator when the operation is suspended.

8. A computing device, characterized in that include: A processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus; The memory is used to store at least one executable instruction, and the executable instruction enables the processor to execute an operation corresponding to the digital-analog hybrid circuit simulation communication method according to any one of claims 1 to 6.

9. A computer storage medium, characterized in that The storage medium stores at least one executable instruction, and the executable instruction enables the processor to execute operations corresponding to the digital-analog hybrid circuit simulation communication method according to any one of claims 1 to 6.

10. A computer program product, characterized in that The method comprises at least one executable instruction, wherein the executable instruction enables the processor to execute operations corresponding to the digital-analog hybrid circuit simulation communication method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Circuit simulation method and device

    CN114492280A

  • Digital-analog hybrid simulation method and system for CIS chip

    CN114818575A