Waveform generation method and system

By dividing large-scale chip design circuits into local design circuits for parallel simulation and processing, and having sub-devices work collaboratively with the host, the problem of high resource consumption in traditional waveform generation methods is solved, achieving efficient waveform file generation and display.

CN121615580APending Publication Date: 2026-03-06S2C
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511898747.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-16
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

In large-scale chip simulation systems, traditional waveform generation methods consume a large amount of CPU resources and physical transmission bandwidth, resulting in poor waveform generation performance that is difficult to meet current performance requirements.

Method used

By dividing a large-scale chip design circuit into multiple local design circuits and performing simulation operations in parallel, the sub-device sends local debugging data to the slave device for processing. The host device aggregates the local waveform files and forms an index file through network copying. The host device responds to simulation waveform viewing requests and merges and presents the complete waveform.

Benefits of technology

It significantly shortens the waveform file generation time, improves the debugging efficiency of chip simulation, and meets the performance requirements of large-scale simulation systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121615580A_ABST
    Figure CN121615580A_ABST
Patent Text Reader

Abstract

The invention discloses a waveform generation method and system, and the method is executed by a large-scale simulation system, and comprises the steps: responding to a simulation request for a large-scale chip design circuit through each sub-device, and executing simulation operation on a distributed local design circuit in parallel, and sending the local debugging data sampled in the simulation process to the matched slave. And processing the received local debugging data in parallel through each slave to obtain a local waveform file and locally storing the local waveform file. And the host aggregates and stores the local waveform files locally stored by the slaves into the target storage space and forms an index file. And the host responds to the simulation waveform viewing request, calls waveform viewing software to analyze the index file, positions all local waveform files, and merges and presents a complete waveform in a graphical user interface. According to the technical scheme, independent waveform sampling can be carried out on each local design circuit, the waveform file generation time is shortened, and the debugging efficiency of chip simulation is remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of digital integrated circuits, and more particularly to a waveform generation method and system. Background Technology

[0002] With the continuous advancement of integrated circuit technology, chip design scale has expanded to the level of hundreds of millions or even billions of gate-level circuits. Due to the massive scale of chips, they need to be divided into multiple simulation sub-devices for operation, and cascaded large-scale simulation systems are built through cables. In such systems, the traditional waveform capture method is to transmit the waveforms of all sub-devices to a single host in real time, and then have the host centrally generate the waveforms. This mechanism is no longer sufficient to meet current performance requirements, so there is an urgent need for a fast waveform generation method to shorten the waveform generation time.

[0003] When waveform data from multiple sub-devices is transmitted to a single host in real time, it requires a large amount of physical transmission bandwidth. As the number of sub-devices increases, the bandwidth requirement will eventually exceed the physical limit, forming a transmission bottleneck. At the same time, generating waveform files from raw waveform data requires central processing unit (CPU) resources. When waveform data from all sub-devices is generated on a single host, it will consume a large amount of CPU resources. As the number of sub-devices increases and the amount of raw data increases, the waveform generation speed of the host will continue to slow down. Both of these factors will affect waveform generation performance. Summary of the Invention

[0004] This invention provides a waveform generation method and system to solve the problem of low waveform generation performance in large-scale simulation systems for chip verification.

[0005] According to one aspect of the present invention, a waveform generation method is provided, executed by a large-scale simulation system. The large-scale simulation system includes a simulation subsystem and a host subsystem. The simulation subsystem includes multiple sub-devices, and the host subsystem includes multiple slave devices and a host. There is a one-to-one correspondence between the sub-devices and the slave devices. Waveform viewing software is configured on the host. The method includes:

[0006] Each sub-device responds to a simulation request for a large-scale chip design circuit, performs simulation operations on the assigned local design circuit in parallel, and sends the local debugging data sampled during the simulation to the matched slave device.

[0007] In this process, the large-scale chip design circuit is pre-divided into multiple local design circuits, and one local design circuit is assigned to a sub-device to perform simulation operations.

[0008] Each slave device processes the received local debugging data in parallel to obtain a local waveform file, which is then stored locally.

[0009] The host machine uses a network copy method to aggregate and store the local waveform files stored locally on each slave machine into the target storage space, and forms an index file based on the storage location of each local waveform file in the target storage space;

[0010] The host responds to the simulation waveform viewing request, calls the waveform viewing software to parse the index file, and merges and presents the complete waveform that matches each local waveform file in the graphical user interface based on all the local waveform files located in the index file.

[0011] According to another aspect of the present invention, a large-scale simulation system is also provided. The large-scale simulation system includes a simulation subsystem and a host subsystem. The simulation subsystem includes multiple sub-devices, and the host subsystem includes multiple slave devices and a host. There is a one-to-one correspondence between the sub-devices and the slave devices. The host is configured with waveform viewing software, wherein:

[0012] Each sub-device is used to respond to simulation requests for large-scale chip design circuits, perform simulation operations on the assigned local design circuits in parallel, and send the local debugging data sampled during the simulation process to the matched slave device;

[0013] In this process, the large-scale chip design circuit is pre-divided into multiple local design circuits, and one local design circuit is assigned to a sub-device to perform simulation operations.

[0014] Each slave device is used to process the received local debugging data in parallel, obtain local waveform files, and store the local waveform files locally.

[0015] The host is used to aggregate and store the local waveform files stored on each slave device to the target storage space by means of network copying, and to form an index file according to the storage location of each local waveform file in the target storage space; and, in response to the simulation waveform viewing request, to call the waveform viewing software to parse the index file, and to merge and present the complete waveform matching each local waveform file in the graphical user interface according to all the local waveform files located in the index file.

[0016] The technical solution of this invention enables a large-scale chip verification simulation system where each sub-device responds to a simulation request for a large-scale chip design circuit, performs parallel simulation operations on its assigned local design circuit, and sends the sampled local debugging data to a matching slave device. Each slave device processes the received local debugging data in parallel to obtain local waveform files, which are then stored locally. The host device uses a network copy method to aggregate and store the locally stored local waveform files from each slave device into a target storage space, forming an index file based on the storage location of each local waveform file in the target storage space. In response to a simulation waveform viewing request, the host device calls waveform viewing software to parse the index file and, based on all the local waveform files located in the index file, merges and presents a complete waveform matching each local waveform file in the graphical user interface. This technical solution, through a distributed large-scale simulation system including a simulation subsystem and a host subsystem, allows for independent waveform sampling of each local design circuit, shortening waveform file generation time and significantly improving the debugging efficiency of chip simulation.

[0017] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0018] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 This is a flowchart of a waveform generation method provided in Embodiment 1 of the present invention;

[0020] Figure 2 This is a flowchart of a waveform generation method provided in Embodiment 2 of the present invention;

[0021] Figure 3 This is a schematic diagram of the structure of a large-scale simulation system provided in Embodiment 3 of the present invention. Detailed Implementation

[0022] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0023] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0024] Example 1

[0025] Figure 1 This is a flowchart of a waveform generation method provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where the waveform generation performance is low under large-scale simulation systems for chip verification. The method can be executed by a large-scale simulation system, which can be implemented in hardware and / or software, and is generally configured within a computer and chip verification simulation system. The large-scale simulation system includes a simulation subsystem and a host subsystem. The simulation subsystem includes multiple sub-devices, and the host subsystem includes multiple slave devices and a host. There is a one-to-one correspondence between the sub-devices and slave devices. The host is equipped with waveform viewing software. Figure 1 As shown, the method includes:

[0026] S110. Each sub-device responds to a simulation request for a large-scale chip design circuit, performs simulation operations on the assigned local design circuit in parallel, and sends the local debugging data sampled during the simulation to the matched slave device.

[0027] In this process, the large-scale chip design circuit is pre-divided into multiple local design circuits, and each local design circuit is assigned to a sub-device to perform simulation operations.

[0028] Among them, local debugging data can refer to waveform data generated during the simulation operation when a local design circuit is assigned to a sub-device.

[0029] Understandably, before a large-scale chip design circuit can be simulated on a large-scale simulation system, it needs to be divided into multiple local design circuits according to functional modules. Each of these local design circuits is then assigned to a corresponding sub-device for simulation. After the large-scale chip design circuit initiates a simulation request, the sub-devices corresponding to each local design circuit simultaneously execute the simulation operation and send the local debugging data synchronously sampled during the simulation to the corresponding slave device.

[0030] Optionally, each sub-device in the simulation system is connected to the same control signal line, on which a global control switch is installed;

[0031] The global control switch is triggered to close by a simulation request for a large-scale chip design circuit, so as to control each sub-device to sample and acquire local debugging data from the same starting point.

[0032] Understandably, when a large-scale simulation system performs simulation operations, in order to ensure that the sampled local debugging data of each sub-device corresponding to the local design circuit synchronously corresponds to each execution operation in the same simulation request, each sub-device in the simulation system needs to be connected to the same control signal line and uniformly controlled by a global control switch set on the control signal line. This ensures that when the simulation request of the large-scale chip design circuit is initiated, the global control switch is triggered to close, thereby controlling each sub-device to synchronously sample local debugging data from the same starting time point.

[0033] S120. The received local debugging data is processed in parallel by each slave device to obtain a local waveform file, and the local waveform file is stored locally.

[0034] Among them, the local waveform file can refer to the local debugging data sampled during the local circuit design simulation process, which is processed and converted into a digital signal file of the circuit execution status, used to reflect the changes in the high and low levels of digital signals during the local circuit design simulation process.

[0035] Understandably, in order to improve the performance of local waveform files obtained from the local debugging data processing in a large-scale simulation system, local debugging data is received by slave devices corresponding to each sub-device in the simulation subsystem, processed to generate local waveform files, and stored locally on each slave device. Each slave device processes local debugging data independently to generate local waveform files without affecting each other.

[0036] S130. The host uses a network copy method to aggregate and store the local waveform files stored locally by each slave device into the target storage space, and forms an index file according to the storage location of each local waveform file in the target storage space.

[0037] Network copying refers to a data acquisition method where the host and slave devices connect via a network, transferring target data stored on the slave device to the host. The target storage space refers to the storage space on the host used to store partial waveform files received from each slave device; this space can be used as a shared storage space. The index file is an auxiliary file that records the storage location of the partial waveform files, the corresponding slave device attributes, and other relevant information about the waveform files; it can be used to quickly locate and access a specific partial waveform file.

[0038] It is understandable that the host and each slave device can be connected through a high-speed physical transmission channel. The host can use network copying to receive the local waveform files stored on each slave device, aggregate and store them in the target storage space, and form an index file based on the storage location of the local waveform files sent by each slave device in the target storage space. The index file can be used to identify the specific storage location of each local waveform file, the slave device attributes of the corresponding local waveform file, and other information.

[0039] S140. The host responds to the simulation waveform viewing request, calls the waveform viewing software to parse the index file, and merges and presents the complete waveform matching each local waveform file in the graphical user interface based on all the local waveform files located in the index file.

[0040] Specifically, when the host responds to a simulation waveform viewing request, it can call the waveform viewing software to parse the corresponding index file based on the local waveform file information corresponding to the local design circuit to be viewed contained in the waveform viewing request. Then, based on the index file, it can locate all the local waveform files contained in the waveform viewing request. In the graphical user interface of the waveform viewing software, the complete waveforms matching each local waveform file can be merged and displayed by aligning the timestamp information. This enables the waveform information generated by each sub-device in the simulation subsystem to perform local design circuit simulation to be centrally presented on the host waveform viewing software.

[0041] The technical solution of this invention enables a large-scale chip verification simulation system where each sub-device responds to a simulation request for a large-scale chip design circuit, performs parallel simulation operations on its assigned local design circuit, and sends the sampled local debugging data to a matching slave device. Each slave device processes the received local debugging data in parallel to obtain local waveform files, which are then stored locally. The host device uses a network copy method to aggregate and store the locally stored local waveform files from each slave device into a target storage space, forming an index file based on the storage location of each local waveform file in the target storage space. In response to a simulation waveform viewing request, the host device calls waveform viewing software to parse the index file and, based on all the local waveform files located in the index file, merges and presents a complete waveform matching each local waveform file in the graphical user interface. This technical solution, through a distributed large-scale simulation system including a simulation subsystem and a host subsystem, allows for independent waveform sampling of each local design circuit, shortening waveform file generation time and significantly improving the debugging efficiency of chip simulation.

[0042] Example 2

[0043] Figure 2 This is a flowchart of a waveform generation method provided in Embodiment 2 of the present invention. This embodiment is a specific embodiment based on the above embodiments, including the specific methods for each sub-device to acquire local debugging data and transmit it to the corresponding slave device, and the specific methods for the host to display the waveform file. Figure 2 As shown, the method includes:

[0044] S210. After each sub-device receives the control signal generated by the controlled closure of the global control switch, it starts to perform simulation operations in parallel at the same starting time point, and at the same starting time point, it starts to sample various local debugging data at the same data acquisition interval.

[0045] Specifically, when verifying chips in a large-scale simulation system, it is necessary to ensure the synchronous acquisition of local debugging data by each sub-device. A global control switch can be set up to uniformly control the simulation operations of each sub-device. When the large-scale simulation system starts, the global control switch is triggered and closed under control. Each sub-device responds uniformly to the control signal of the global control switch being closed under control, and begins to execute simulation operations in parallel at the same starting time. During the simulation, various local debugging data are sampled at the same pre-set data acquisition interval to ensure that each local debugging data sampling operation of each sub-device is at the same time point.

[0046] S220: Each sub-device encapsulates the local debugging data collected at each acquisition time point into a communication data packet, adds the acquisition time point as a timestamp to the communication data packet, and then sends the communication data packet to the matching slave device.

[0047] Specifically, after each sub-device performs the simulation operation, it needs to send the various local debugging data collected at each acquisition time point to the matching slave device. Therefore, it is necessary to construct a communication data packet according to the pre-agreed communication protocol. The communication data packet can contain a data packet header, data packet content, and data packet tail. When encapsulating the various local debugging data into a communication data packet, the acquisition time point of the local debugging data can be used as a timestamp information and encapsulated together with the data length and data encoding mode into the communication data packet header so that the matching slave device can parse the communication data packet.

[0048] Optionally, each sub-device encapsulates the local debugging data collected at each acquisition time point into a communication data packet, adds the acquisition time point as a timestamp to the communication data packet, and then sends the communication data packet to the matching slave device, including:

[0049] Each sub-device will stitch together the local debugging data collected at multiple consecutive acquisition time points to obtain a list of data for a preset number of clock cycles.

[0050] Each sub-device encapsulates a list of data items into a communication data packet, adds the start collection time corresponding to each data item as a timestamp to the communication data packet, and then sends the communication data packet to the matched slave device.

[0051] Here, the clock cycle can refer to the fixed time interval between two consecutive acquisitions of local debugging data when each sub-device in a large-scale simulation system performs simulation operations. The data list can refer to a list composed of all the local debugging data acquired from a single sub-device after acquiring a preset number of local debugging data according to the clock cycle.

[0052] Understandably, during the simulation operation, each sub-device determines its acquisition time points by using a unified start acquisition time and clock cycle, synchronously acquiring local debugging data. Each sub-device continuously acquires a preset number of local data points according to the determined acquisition time points. The acquired local data are then concatenated to obtain a data list for constructing the communication data packet. When constructing the communication data, the obtained data list can be used as the content of the data packet, and a timestamp corresponding to the start acquisition time point of each data item is added to the data packet header. After adding the necessary data information according to the agreed communication data packet format, the communication data packet can be sent to the matched slave device for subsequent parsing and processing.

[0053] S230: After each slave device performs parallel decapsulation processing on the communication data packets received via the high-speed transmission channel, it parses the local debugging data obtained from the decapsulation based on the timestamp in the communication data packets, and generates a local waveform file in a general format for local storage based on the parsing results.

[0054] The general format can refer to a data format suitable for parsing and expressing communication data packets transmitted from each sub-device to the corresponding matching slave.

[0055] Specifically, after each slave device receives the communication data packet sent by the corresponding matching sub-device through the high-speed transmission channel, it performs decapsulation and processing according to the pre-agreed communication data packet format, obtains information such as the timestamp data packet content, and performs data parsing processing on the data list in the data packet content based on the timestamp information. The parsing results are then used to generate a local waveform file in a general format and stored locally on the slave device.

[0056] Optionally, each sub-device encapsulates the local debugging data collected at each acquisition time point to obtain a communication data packet, including:

[0057] Each sub-device compresses the local debugging data collected at each acquisition time point according to a preset data compression type, and then encapsulates the data compression results to obtain a communication data packet.

[0058] Among them, the data compression type can refer to the method of compressing data used by each sub-device when encapsulating local debugging data.

[0059] Understandably, when each sub-device sends its local debugging data to the matched slave device, the local debugging data can be compressed to improve data transmission efficiency. This compression can be performed on the local debugging data collected at each acquisition time point according to a preset data compression type. Then, the compressed data is concatenated according to the acquisition time point to complete the encapsulation of the communication data packet. Communication data packets constructed through compressed data encapsulation consume fewer storage resources and have a lower occupancy rate on the communication channel, significantly improving the efficiency of each sub-device transmitting communication data packets to the matched slave device.

[0060] Optionally, before parsing the local debug data obtained from decapsulation through each slave device, the following steps are also included:

[0061] Each slave device decompresses the partially encapsulated debugging data according to a preset data compression type to obtain the decompressed partially debug data.

[0062] Understandably, after each slave device receives the communication data packet transmitted by the matched sub-device through the high-speed transmission channel, it decapsulates the data to obtain the compressed data corresponding to the sampled local debugging data at each acquisition time point. The obtained compressed data can be decompressed according to the preset data compression type to obtain the original decompressed local debugging data, which can then be used to generate a complete local waveform file.

[0063] S240. In response to the simulation waveform viewing request, the host calls the waveform viewing software to parse the index file and obtain the storage path of each local waveform file in the target storage space.

[0064] The storage path can refer to a sequence of characters used to identify the specific storage location of a local waveform file in the target storage space.

[0065] Understandably, when the host responds to a simulation waveform viewing request, it first needs to obtain the specific storage path of the waveform file to be viewed in order to obtain the complete waveform file for display. This can be achieved by calling waveform viewing software to parse the index file formed based on the storage locations of the local waveform files of each slave device, thereby obtaining the storage path of each local waveform file in the target storage space.

[0066] S250: After the waveform viewing software called by the host starts execution threads in parallel to match the number of local waveform files, the storage path of each local waveform file is allocated to the matching execution thread, and all local waveform files are started in parallel by each execution thread.

[0067] Specifically, the host determines the number and storage path of the local waveform files to be viewed by the simulation waveform viewing request information, and starts an execution thread that matches the number of local waveform files to be viewed. Each execution thread can obtain complete local waveform file data information according to the allocated local waveform file storage path. All execution threads can process the corresponding local waveform files in parallel and execute the start operation synchronously.

[0068] S260. After drawing waveform images corresponding to each local waveform file through the waveform viewing software called by the host, the waveform images are merged according to the preset waveform merging strategy to obtain a complete waveform, and the complete waveform is displayed in a unified graphical user interface.

[0069] Among them, waveform merging strategy can refer to the method of organizing and merging various local waveform files according to the local design circuit segmentation logic, which can be used to reflect the waveform files generated in the simulation process of a complete large-scale design circuit.

[0070] Understandably, after the host responds to the waveform viewing request, it can call the waveform viewing software to draw the waveform images corresponding to each local waveform file. It can also merge the waveform images according to the preset waveform merging strategy to obtain a complete waveform that can fully reflect the logical functional relationship between each local design circuit after the large-scale design circuit is divided. The obtained complete waveform can be displayed in a unified graphical user interface, comprehensively reflecting the waveform file information of a unified time point and functional logic association.

[0071] The technical solution of this invention enables each sub-device to perform simulation operations in parallel at the same starting time point after receiving the control signal generated by the controlled closure of the global control switch. Each sub-device samples various local debugging data at the same data acquisition interval, encapsulates the data into communication data packets, adds the acquisition time point as a timestamp to the communication data packets, and sends them to the matched slave device. Each slave device decapsulates the communication data packets received via the high-speed transmission channel in parallel, parses the decapsulated local debugging data based on the timestamp in the communication data packets, and generates a local waveform file in a general format for local storage based on the parsing results. The host responds to the simulation waveform viewing request, calls the waveform viewing software to parse the index file, and obtains the storage path of each local waveform file in the target storage space from the index file. Through the waveform viewing software called by the host, execution threads matching the number of local waveform files are started in parallel. The storage path of each local waveform file is allocated to the matching execution thread, all local waveform files are started in parallel, and waveform images corresponding to each local waveform file are drawn. Then, the waveform images are merged according to a preset waveform merging strategy to obtain a complete waveform, which is then displayed in a unified graphical user interface. The above technical solution can acquire local debugging data from each sub-device, construct information data packets containing timestamps, and transmit them to the corresponding slave device. When the host responds to the simulation waveform viewing request, the data is displayed uniformly. This provides a method for efficient transmission and parsing of local debugging data from each sub-device, and meets the functional requirement of uniformly displaying simulation waveforms of multiple local design circuits on the host.

[0072] Example 3

[0073] Figure 3 This is a schematic diagram of the structure of a large-scale simulation system provided in Embodiment 3 of the present invention. Figure 3 As shown, the system includes a simulation subsystem 310 and a host subsystem 320. The simulation subsystem includes multiple sub-devices 3101, 3102…310n, and the host subsystem includes multiple slave devices 3201, 3202…320n and a host 3200. There is a one-to-one correspondence between the sub-devices and slave devices. The host is equipped with waveform viewing software.

[0074] Sub-devices 3101, 3102…310n are used to respond to simulation requests for large-scale chip design circuits, perform simulation operations on the assigned local design circuits in parallel, and send the local debugging data sampled during the simulation process to the matched slave device.

[0075] In this process, the large-scale chip design circuit is pre-divided into multiple local design circuits, and each local design circuit is assigned to a sub-device to perform simulation operations.

[0076] Slave devices 3201, 3202...320n are used to process the received local debugging data in parallel, obtain local waveform files, and store the local waveform files locally.

[0077] The host 3200 is used to aggregate and store the local waveform files stored on each slave device to the target storage space by means of network copying, and to form an index file according to the storage location of each local waveform file in the target storage space; and, in response to the simulation waveform viewing request, to call the waveform viewing software to parse the index file, and to merge and present the complete waveform matching each local waveform file in the graphical user interface according to all the local waveform files located in the index file.

[0078] Optionally, the sub-devices and slave devices establish a communication connection through a high-speed channel, and all slave devices are located within the same local area network;

[0079] High-speed channels include any of the following: PCIe (Peripheral Component Interconnect Express) channel, 10 Gigabit Ethernet channel, or USB (Universal Serial Bus) channel.

[0080] The large-scale simulation system provided in the embodiments of the present invention can execute a waveform generation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0081] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0082] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A waveform generation method characterized by, The method is executed by a large-scale simulation system including a simulation subsystem and a host subsystem, the simulation subsystem including a plurality of sub-devices, the host subsystem including a plurality of slaves and a host, the sub-devices having a one-to-one correspondence with the slaves, and the host being configured with waveform viewing software, and the method includes: In response to a simulation request for a large-scale chip design circuit, each sub-device performs a simulation operation on an assigned local design circuit in parallel and sends local debugging data sampled during the simulation to a matching slave; The large-scale chip design circuit is pre-divided into a plurality of local design circuits, and one local design circuit is assigned to one sub-device for performing a simulation operation; Each slave processes the received local debugging data in parallel to obtain a local waveform file and locally stores the local waveform file; The host aggregates the local waveform files locally stored by the slaves into a target storage space by using network copying and forms an index file according to the storage locations of the local waveform files in the target storage space; In response to a simulation waveform viewing request, the host calls the waveform viewing software to analyze the index file and merge and present a complete waveform matching each local waveform file in a graphical user interface according to all the local waveform files located in the index file.

2. The method of claim 1, wherein, Each sub-device in the simulation system is connected to the same control signal line, and a global control switch is arranged on the control signal line; The global control switch is triggered to close under the control of the simulation request for the large-scale chip design circuit to control each sub-device to start sampling local debugging data from the same starting time point.

3. The method of claim 2, wherein, In response to a simulation request for a large-scale chip design circuit, each sub-device performs a simulation operation on an assigned local design circuit in parallel and sends local debugging data sampled during the simulation to a matching slave, including: After each sub-device receives a control signal generated after the global control switch is controlled to close, the sub-device starts to perform a simulation operation in parallel at the same starting time point and starts to sample each item of local debugging data at the same data sampling interval at the starting time point; Each sub-device encapsulates a communication data packet according to each item of local debugging data collected at each sampling time point, adds the sampling time point as a time stamp to the communication data packet, and then sends the communication data packet to a matching slave.

4. The method of claim 3, wherein, Each sub-device encapsulates a communication data packet according to each item of local debugging data collected at each sampling time point, adds the sampling time point as a time stamp to the communication data packet, and then sends the communication data packet to a matching slave, including: Each sub-device splices each item of local debugging data collected at a plurality of continuous sampling time points to obtain a list of each item of data for a preset number of clock cycles; Each sub-device encapsulates each list of data as a communication data packet, adds a starting sampling time point corresponding to the list of data as a time stamp to the communication data packet, and then sends the communication data packet to a matching slave.

5. The method of claim 3, wherein, Each sub-device is connected with a matched slave through a high-speed transmission channel; Correspondingly, the received local debugging data is processed by each slave in parallel to obtain a local waveform file, and the local waveform file is stored locally, including: After the communication data packet received through the high-speed transmission channel is unpacked by each slave in parallel, the local debugging data obtained by unpacking is parsed based on the timestamp in the communication data packet, and a local waveform file in a general format is generated based on the parsing result and stored locally.

6. The method of claim 1, wherein, In response to a simulation waveform viewing request, the host calls the waveform viewing software to parse the index file, and based on the local waveform files located in the index file, the complete waveform matched with each local waveform file is presented in a graphical user interface, including: In response to a simulation waveform viewing request, the host calls the waveform viewing software to parse the index file, and based on the local waveform files located in the index file, the complete waveform matched with each local waveform file is presented in a graphical user interface, including: After the waveform viewing software called by the host is started, the storage path of each local waveform file is assigned to the matched execution thread, and all local waveform files are started in parallel through each execution thread. After the waveform viewing software called by the host draws the waveform image corresponding to each local waveform file, the waveform images are merged according to a preset waveform merging strategy to obtain a complete waveform, and the complete waveform is displayed in a unified graphical user interface.

7. The method of claim 5, wherein, Each sub-device encapsulates the local debugging data collected at each collection time point to obtain a communication data packet, including: Each sub-device performs data compression on the local debugging data collected at each collection time point according to a preset data compression type, and encapsulates the data compression result to obtain a communication data packet.

8. The method of claim 7, wherein, Before the data analysis of the local debugging data obtained by unpacking is performed by each slave, it further includes: Each slave decompresses the local debugging data obtained by unpacking according to a preset data compression type to obtain decompressed local debugging data.

9. A large scale simulation system, characterized by, A large-scale simulation system includes a simulation subsystem and a host subsystem, the simulation subsystem includes a plurality of sub-devices, the host subsystem includes a plurality of slaves and a host, the sub-devices and the slaves have a one-to-one correspondence, and the host is configured with waveform viewing software, wherein: Each sub-device is configured to perform simulation operation on the assigned local design circuit in parallel in response to a simulation request for a large-scale chip design circuit, and send the local debugging data sampled during the simulation to a matched slave. The large-scale chip design circuit is pre-divided into a plurality of local design circuits, and one local design circuit is assigned to one sub-device for simulation operation. Each slave is configured to process the received local debugging data in parallel to obtain a local waveform file, and store the local waveform file locally. The host is configured to aggregate and store local partial waveform files of each slave into a target storage space by using network copy, and form an index file according to storage positions of the partial waveform files in the target storage space; and in response to a simulation waveform viewing request, call waveform viewing software to analyze the index file, and present a complete waveform matched with each partial waveform file in a graphical user interface according to all partial waveform files located in the index file.

10. The system of claim 9, wherein, The sub-device and the slaves are connected through a high-speed channel, and the slaves are located in the same local area network. The high-speed channel includes any one of a peripheral component interconnect express (PCIE) channel, a gigabit network channel or a universal serial bus (USB) channel.