Method and device for implementing pipeline synchronization mechanism, storage medium and electronic device

By creating a set of synchronization modules for the SOC module and controlling its communication connection, the problem of low efficiency in the pipeline synchronization mechanism in VIVADO HLS is solved, and efficient pipeline synchronization control is achieved.

CN114546929BActive Publication Date: 2025-11-04HANGZHOU WEIMING XINKE TECH CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210023418.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-10
Publication Date
2025-11-04
Estimated Expiration
2042-01-10

AI Technical Summary

Technical Problem

In the development and design of VIVADO HLS-based SOCs, the existing pipeline synchronization mechanism is inefficient, labor-intensive, and has poor reusability when the module size is large.

Method used

By creating a corresponding synchronization module for each SOC module, a set of synchronization modules is established, and the working status of the modules is controlled through the communication connection between the synchronization modules, pipeline synchronization is achieved.

Benefits of technology

It improves the implementation efficiency of the pipeline synchronization mechanism in SOC system, saves workload, and supports pipeline synchronization mechanisms for different SOC systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114546929B_ABST
    Figure CN114546929B_ABST
Patent Text Reader

Abstract

The application discloses a kind of implementation method and device of pipeline synchronization mechanism, storage medium and electronic equipment.Therein, the method includes: creating the synchronization module corresponding to each SOC module in system on chip (SOC), to obtain synchronization module set;Current synchronization module sends start working instruction to corresponding target SOC module, to make target SOC module carry out service processing;After current synchronization module sends start working instruction, current synchronization module disconnects with each previous synchronization module in previous synchronization module subset Communication connection;Current synchronization module establishes communication connection with each subsequent synchronization module in subsequent synchronization module subset;Again receive the communication connection request of previous synchronization module subset;When each SOC module of SOC is completed service processing, the pipeline synchronization mechanism of SOC is determined to be obtained.The application solves the technical problem of low efficiency when implementing SOC pipeline synchronization mechanism.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of computers, and in particular, to a pipeline synchronization mechanism implementation method and device, a storage medium and an electronic device. BACKGROUND

[0002] In the development and design of a SOC (System on Chip) based on a VIVADO HLS (High Level Synthesis) system, the SOC is usually divided into multiple sub-modules for parallel development and design. These sub-modules usually work in a multi-level cross-pipeline manner, and it is crucial for the working order between sub-modules to be correctly executed.

[0003] The pipeline synchronization mechanism based on the VIVADO HLS system in the related art adopts the following two schemes: the first scheme is to analyze the connection relationship between sub-modules by the VIVADO HLS tool, thereby directly completing SOC integration. The second scheme is to design a pipeline coordination module according to development requirements. However, when the module scale of the SOC exceeds a certain degree, the VIVADO HLS tool cannot directly complete integration in the first scheme. In the second scheme, a logic engineer needs to design a coordination module for the project alone, and this way will result in low efficiency, large workload and poor reusability of the system pipeline synchronization mechanism in implementation. SUMMARY

[0004] The embodiments of the present application provide a pipeline synchronization mechanism implementation method and device, a storage medium and an electronic device to at least solve the technical problem of low efficiency of the SOC pipeline synchronization mechanism in implementation.

[0005] According to an aspect of the embodiments of the present application, there is provided a method for implementing a pipeline synchronization mechanism, comprising: creating a synchronization module corresponding to each SOC module in a system on chip (SOC) to obtain a set of synchronization modules, the synchronization module being used to control the working state of the SOC module, the SOC module being a module in the SOC that executes tasks in a pipeline; when a current synchronization module in the set of synchronization modules and each previous synchronization module in a subset of previous synchronization modules have established a communication connection, the current synchronization module sends a start working instruction to a target SOC module to make the target SOC module perform service processing; when the current synchronization module has finished sending the start working instruction, the current synchronization module disconnects the communication connection with each previous synchronization module in the subset of previous synchronization modules; when the target SOC module has completed service processing, the current synchronization module establishes a communication connection with each next synchronization module in a subset of next synchronization modules; when the current synchronization module has established the communication connection with each next synchronization module in the subset of next synchronization modules, the current synchronization module receives a communication connection request from the subset of previous synchronization modules again; when each SOC module in the SOC has completed service processing, the pipeline synchronization mechanism of the SOC is determined.

[0006] According to another aspect of the embodiments of the present application, there is also provided an apparatus for implementing a pipeline synchronization mechanism, comprising: a first creating unit configured to create a synchronization module corresponding to each SOC module in a system on chip (SOC) to obtain a set of synchronization modules, the synchronization module being used to control the working state of the SOC module, the SOC module being a module in the SOC that executes tasks in a pipeline; a first sending unit configured to, when a current synchronization module in the set of synchronization modules and each previous synchronization module in a subset of previous synchronization modules have established a communication connection, send a start working instruction to a target SOC module by the current synchronization module to make the target SOC module perform service processing; a disconnection unit configured to, when the current synchronization module has finished sending the start working instruction, disconnect the communication connection with each previous synchronization module in the subset of previous synchronization modules by the current synchronization module; a communication unit configured to, when the target SOC module has completed service processing, establish a communication connection with each next synchronization module in a subset of next synchronization modules by the current synchronization module; a receiving unit configured to, when the current synchronization module has established the communication connection with each next synchronization module in the subset of next synchronization modules, receive a communication connection request from the subset of previous synchronization modules again; and a first determining unit configured to, when each SOC module in the SOC has completed service processing, determine the pipeline synchronization mechanism of the SOC.

[0007] According to a further aspect of the embodiments of the present application, a computer readable storage medium is provided, and the computer readable storage medium stores a computer program. The computer program is configured to execute the implementation method of the pipeline synchronization mechanism when running.

[0008] According to a further aspect of the embodiments of the present application, an electronic device is provided, and the electronic device comprises a memory and a processor. The memory stores a computer program, and the processor is configured to execute the implementation method of the pipeline synchronization mechanism by using the computer program.

[0009] In the embodiments of the present application, a synchronization module corresponding to each SOC module in a system on chip (SOC) is created to obtain a synchronization module set. The synchronization module is used to control the working state of the SOC module. The SOC module is a module in the SOC that executes a task in a pipeline. When a current synchronization module in the synchronization module set establishes a communication connection with each previous synchronization module in a previous synchronization module subset, the current synchronization module sends a start working instruction to a target SOC module to enable the target SOC module to process a service. When the current synchronization module finishes sending the start working instruction, the current synchronization module disconnects the communication connection with each previous synchronization module in the previous synchronization module subset. When the target SOC module completes the service processing, the current synchronization module establishes a communication connection with each next synchronization module in a next synchronization module subset. When the current synchronization module establishes the communication connection with each next synchronization module in the next synchronization module subset, the current synchronization module receives a communication connection request of the previous synchronization module subset again. When each SOC module in the SOC completes the service processing, the pipeline synchronization mechanism of the SOC is determined. By establishing the synchronization module corresponding to each module in the SOC and controlling the pipeline execution step of each module in the SOC according to the direct communication connection relationship of the synchronization module, the efficiency of the pipeline synchronization mechanism of the SOC system in implementation can be improved. The workload of implementing the pipeline synchronization mechanism of the high SOC system can be saved. The pipeline synchronization mechanism can be implemented in different SOC systems, and the technical problem of low efficiency of the pipeline synchronization mechanism of the SOC in implementation is solved. BRIEF DESCRIPTION OF DRAWINGS

[0010] The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiments of the application and serve to explain the principles of the application, and do not limit the application. In the drawings:

[0011] Figure 1 is a schematic diagram of an optional running environment of the implementation method of the pipeline synchronization mechanism according to an embodiment of the present application;

[0012] Figure 2 is a flow chart of an implementation method of an optional pipeline synchronization mechanism according to an embodiment of the present application;

[0013] Figure 3 is a flow chart of an implementation method of another optional pipeline synchronization mechanism according to an embodiment of the present application;

[0014] Figure 4 is a flow chart of an implementation method of yet another optional pipeline synchronization mechanism according to an embodiment of the present application;

[0015] Figure 5 is a structural schematic diagram of an implementation device of an optional pipeline synchronization mechanism according to an embodiment of the present application;

[0016] Figure 6 is a structural schematic diagram of an optional electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0017] In order to make the personnel in the art better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor should belong to the scope of protection of the present application.

[0018] It should be noted that the terms "first", "second", and the like in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and do not necessarily have to be used to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not have to be limited to those steps or units clearly listed, but can include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0019] First, the technical terms involved in the embodiments of the present application are explained as follows:

[0020] VIVADO: VIVADO design suite, is an integrated design environment released by FPGA manufacturer Xilinx. It includes a highly integrated design environment and a new generation of system-to-IC-level tools, which are all based on a shared scalable data model and a common debugging environment. It is also an open environment based on AMBA AXI4 interconnection specification, IP-XACT IP packaging metadata, Tool Command Language (TCL), Synopsys system constraint (SDC), and other open environments that help customize the design flow according to customer needs and comply with industry standards.

[0021] According to an aspect of an embodiment of the present application, a pipeline synchronization mechanism implementation method is provided. As an optional implementation, the pipeline synchronization mechanism implementation method can be applied to, but is not limited to, the environment shown in Figure 1 The application environment is composed of an application end, a synchronization starting module connected to the application end, and a plurality of synchronization module sets connected to the synchronization starting module. The application end includes, but is not limited to, an application program and / or hardware running the application program, and the application program can include an application software or a set of application software and application drivers. Each synchronization module in the synchronization module set corresponds to a hardware module (i.e., an SOC module) for data processing in an SOC system and controls the start or stop of the corresponding hardware module. The synchronization starting module is a module for receiving a trigger signal from the application end. After the synchronization starting module receives the trigger signal from the application end, the signal is sent to the next stage synchronization module, i.e., the first stage synchronization module (synchronization module 1 and synchronization module 2) in the synchronization module set. When the first stage synchronization module is connected to the synchronization starting module, the corresponding SOC module starts to work. When the SOC module completes the work, the first stage synchronization module sends a trigger signal to the second stage synchronization module, so that the corresponding SOC module of the second stage synchronization module starts to work. Until all SOC modules in the SOC system complete the work, it is determined that the pipeline synchronization mechanism of the current SOC system is created.

[0022] The above is only an example, and the present application is not limited thereto.

[0023] In one or more embodiments, as shown in Figure 2 The pipeline synchronization mechanism implementation method includes:

[0024] S202, creating a synchronization module corresponding to each SOC module in a system on chip (SOC), obtaining a synchronization module set, the synchronization module being used to control the working state of the SOC module, and the SOC module being a module for executing tasks in a pipeline in the SOC.

[0025] In the embodiment of the present application, the SOC module can be a CPU module, a GPU module, a Bluetooth module, etc., or a sub-module of a CPU module or a GPU module or a Bluetooth module. Each of the above SOC module or the sub-module of the SOC module is a module that performs a task in a pipeline stage. Each of the SOC module or the sub-module of the SOC module corresponds to a synchronization module. Each synchronization module in the synchronization module set formed by the synchronization modules is responsible for establishing a communication connection with each synchronization module of the previous stage and the next stage, and controls the corresponding SOC module to work. The above is only an example, and the embodiment of the present application does not make any limitation thereto.

[0026] S204, in the case that the current synchronization module in the above synchronization module set establishes a communication connection with each synchronization module in the previous stage synchronization module subset, the current synchronization module sends a start working instruction to the corresponding target SOC module, so that the target SOC module performs service processing; wherein the previous stage synchronization module subset is a set of synchronization modules of the previous stage directly connected to the current synchronization module.

[0027] As shown in Figure 2 , after the synchronization module 3 in the second stage synchronization module establishes a communication connection with the previous stage synchronization module (synchronization module 1), the synchronization module 3 sends a start working instruction to the corresponding SOC module (for example, a Bluetooth module) to make the Bluetooth module start working to perform service processing.

[0028] S206, after the current synchronization module sends the start working instruction, the current synchronization module disconnects the communication connection with each synchronization module in the previous stage synchronization module subset.

[0029] As shown in Figure 2 , after the synchronization module 3 sends a start working instruction to the corresponding SOC module (for example, a Bluetooth module), the synchronization module 3 disconnects the communication connection with the synchronization module 1. When the synchronization module 4 disconnects the direct communication connection with the synchronization module 1 and the synchronization module 5 disconnects the direct communication connection with the synchronization module 2, the service of the SOC module corresponding to the second stage synchronization module is completed.

[0030] S208, in the case that the target SOC module completes service processing, the current synchronization module establishes a communication connection with the next stage synchronization module subset; wherein the next stage synchronization module subset is a set of synchronization modules of the next stage directly connected to the current synchronization module.

[0031] As shown in Figure 2As shown, when the second level synchronization module corresponding SOC module completes the service processing, the second level synchronization module starts to establish a communication connection with the subset of the next level synchronization module, that is, the synchronization module 3 establishes a direct connection with the synchronization module 6 and the synchronization module 8, the synchronization module 4 establishes a direct connection with the synchronization module 6, and the synchronization module 5 establishes a direct connection with the synchronization module 7.

[0032] S210, when the above-mentioned current synchronization module establishes a communication connection with each of the subset of the next level synchronization module, the communication connection request of the above-mentioned subset of the previous level synchronization module is received again.

[0033] As shown, for example, when the above-mentioned current synchronization module (synchronization module 3) establishes a communication connection with each of the subset of the next level synchronization module (synchronization module 6 and synchronization module 8), at this time, the synchronization module 3 can receive the signal of the synchronization module 1 again to establish a communication connection, so that the SOC module corresponding to the synchronization module 3 processes the new service data again. Figure 2

[0034] S212, when each of the above-mentioned SOC modules completes the service processing, the pipeline synchronization mechanism of the above-mentioned SOC is determined.

[0035] Here, as shown in the above-mentioned SOC, when each of the above-mentioned SOC modules completes the service processing, that is, the synchronization module 1 to the synchronization module 10 completes the service processing, the pipeline synchronization mechanism of the above-mentioned SOC is determined. Figure 2

[0036] The embodiment of the application can improve the efficiency of the pipeline synchronization mechanism of the SOC system in implementation by establishing the synchronization module corresponding to each module of the SOC and controlling the pipeline execution step of each module in the SOC according to the direct communication connection relationship of the synchronization module, not only can save the workload of implementing the high SOC system pipeline synchronization mechanism, but also can implement the pipeline synchronization mechanism in different SOC systems, and further solve the technical problem of low efficiency of the SOC pipeline synchronization mechanism in implementation.

[0037] In one or more embodiments, the implementation method of the above-mentioned pipeline synchronization mechanism further comprises:

[0038] Creating a synchronization start module for receiving a trigger signal for triggering the above-mentioned SOC to start the pipeline service.

[0039] Here, by creating a synchronization start module, the trigger signal sent by the application end can be received to further trigger the first level synchronization module subset in the synchronization module set to perform flow control.

[0040] ​​When the synchronization starting module receives the trigger signal of the pipeline service, the synchronization starting module establishes a communication connection with the first-level synchronization module subset in the synchronization module set.

[0041] Here, the trigger signal can include but is not limited to a pipeline work starting signal. When the synchronization starting module receives the trigger signal, the synchronization starting module establishes a communication connection with the first-level synchronization module subset in the synchronization module set. For example, as shown in Figure 2 For example, after the synchronization starting module receives the trigger signal sent by the application end, the synchronization starting module sends the signal to the next-level synchronization module, i.e., the first-level synchronization module (synchronization module 1 and synchronization module 2) in the synchronization starting module set. The first-level synchronization module establishes a communication connection with the synchronization starting module.

[0042] When the synchronization starting module establishes a communication connection with the first-level synchronization module, the first-level synchronization module sends a start work instruction to the SOC module subset corresponding to the first-level synchronization module.

[0043] For example, as shown in Figure 2 For example, when the first-level synchronization module (synchronization module 1 and synchronization module 2) in the synchronization starting module set establishes a communication connection with the synchronization starting module, the first-level synchronization module sends a start work instruction to the SOC module subset corresponding to the first-level synchronization module. For example, the synchronization module 1 sends the start work instruction to the Bluetooth module controlled by the synchronization module 1, and the synchronization module 2 sends the start work instruction to the GPU module controlled by the synchronization module 2.

[0044] The embodiment of the application can improve the efficiency of the SOC system pipeline synchronization mechanism in implementation by establishing a synchronization starting module connected with the application end and controlling the pipeline execution steps of each module in the SOC according to the control instruction sent by the application end.

[0045] In one or more embodiments, before the current synchronization module sends a start work instruction to the corresponding target SOC module, the step S204 further includes:

[0046] The current synchronization module sends a first handshake signal to each of the previous-level synchronization module subset, so that the current synchronization module establishes a communication connection with each of the previous-level synchronization module subset.

[0047] Here, establishing a communication connection can include but is not limited to establishing a communication connection through a handshake protocol. The first handshake signal can be a ready signal as a receiver in the handshake protocol. The current synchronization module provides a slave handshake signal to each of the previous-level synchronization module during initialization. The ready signal in the slave handshake signal is a high-level signal. For example, as shown in Figure 2As shown, the current synchronization module 3 as a receiver sends a ready high-level signal to the front synchronization module 1, indicating that it is ready to receive signals.

[0048] It is determined whether the current synchronization module has established a communication connection with each of the front synchronization module subset.

[0049] The current synchronization module sends a second handshake signal to each of the back synchronization module subset to indicate that the current synchronization module refuses to establish a communication connection.

[0050] Here, the second handshake signal can be a valid signal in the handshake protocol as a sender, which is a handshake signal provided by the current synchronization module to each of the back synchronization modules. For example, as shown in Figure 2 As shown, the current synchronization module 3 as a sender sends a signal with a low-level valid to the back synchronization module 1, indicating that the current synchronization module 3 has not established a communication connection with the synchronization module 3 and the synchronization module 4.

[0051] In one or more embodiments, the determination of whether the current synchronization module has established a communication connection with each of the front synchronization module subset includes:

[0052] According to the number of communication connections established by the current synchronization module and the front synchronization module, it is determined whether the current synchronization module has established a communication connection with each of the front synchronization module subset.

[0053] When the current synchronization module has established a communication connection with the first number of front synchronization modules, it is determined that the current synchronization module has established a communication connection with each of the front synchronization module subset; wherein the first number is the number of synchronization modules in the front synchronization module subset.

[0054] Here, it should be noted that each synchronization module in the synchronization module set only needs to obtain the number of front synchronization modules and the number of back synchronization modules, that is, it can be determined whether the current synchronization module has established a communication connection with the front synchronization module subset or the back synchronization module subset, for example, as shown in Figure 2 As shown, the current synchronization module 3 can determine that it has established a communication connection with each of the front synchronization module subset after determining that it has established a communication connection with the front synchronization module 1. Therefore, the embodiment of the application can control the working process of the SOC pipeline synchronization mechanism by only obtaining the number of front synchronization modules and the number of back synchronization modules of the current synchronization module, and also realizes the reusability of the SOC pipeline synchronization mechanism.

[0055] In one or more embodiments, the current synchronization module disconnects the communication connection with each of the subset of the previous synchronization modules, including:

[0056] The current synchronization module sends a third handshake signal to each of the subset of the previous synchronization modules, so that the current synchronization module disconnects the communication connection with each of the subset of the previous synchronization modules.

[0057] Here, the third handshake signal can be a valid low-level from handshake signal provided by the current synchronization module as a receiver to each of the previous synchronization modules. For example, as shown in Figure 2 The current synchronization module 3 sends a signal with a low-level valid to the previous synchronization module 1 as a receiver, indicating that the current synchronization module 3 does not disconnect the communication connection with the synchronization module 1.

[0058] In one or more embodiments, when the target SOC module completes the service processing, the current synchronization module establishes a communication connection with each of the subset of the next synchronization modules, including: when the target SOC module completes the service processing, the current synchronization module sends a fourth handshake signal to each of the subset of the next synchronization modules, so that the current synchronization module establishes a communication connection with each of the subset of the next synchronization modules.

[0059] Here, the fourth handshake signal can be a valid high-level main handshake signal provided by the current synchronization module as a sender to each of the next synchronization modules. As shown in Figure 2 Assuming that the target SOC module is a Bluetooth module, when the Bluetooth module completes the service processing, the current synchronization module 3 sends a valid high-level main handshake signal to the synchronization module 6 and the synchronization module 8, so that the synchronization module 3 and the synchronization module 6 and the synchronization module 8 establish a communication connection.

[0060] When the current synchronization module establishes a communication connection with each of the subset of the next synchronization modules, the communication connection request of the subset of the previous synchronization modules is received again, including: when the current synchronization module establishes a communication connection with each of the subset of the next synchronization modules, the first handshake signal is sent to the subset of the previous synchronization modules again, to receive the communication connection request of each of the subset of the previous synchronization modules.

[0061] Here, for example, as shown in Figure 2As shown, assuming that the current synchronization module 3 establishes a communication connection with the synchronization module 6 and the synchronization module 8, the current synchronization module 3 sends the signal of the ready high level to the synchronization module 1 again as a receiver, and when the synchronization module 1 receives the signal, the communication connection between the synchronization module 1 and the synchronization module 3 can be re-established.

[0062] In one or more embodiments, when the current synchronization module establishes a communication connection with each of the subset of the next-level synchronization modules, the first handshake signal is sent to the subset of the previous-level synchronization modules again, including:

[0063] When the current synchronization module establishes a communication connection with the second number of next-level synchronization modules, it is determined that the current synchronization module establishes a communication connection with each of the subset of the next-level synchronization modules, and the first handshake signal is sent to the subset of the previous-level synchronization modules again.

[0064] In the embodiment, it should be noted that each synchronization module in the synchronization module set only needs to obtain the number of next-level synchronization modules to determine that the current synchronization module establishes a communication connection with the subset of the next-level synchronization modules, for example, as shown in Figure 2 As shown, after the current synchronization module 3 determines to establish a communication connection with the next-level 2 synchronization modules, it can be determined that a communication connection is established with each of the subset of the previous-level synchronization modules. Therefore, the embodiment of the application can control the working process of the SOC pipeline synchronization mechanism by obtaining the number of the previous-level synchronization modules of the current synchronization module and the number of the next-level synchronization modules, and also realizes the reusability of the SOC pipeline synchronization mechanism.

[0065] In one or more embodiments, before the synchronization start module receives the trigger signal of the pipeline service, the synchronization start module sends a second handshake signal to the subset of the first-level synchronization modules to indicate that the synchronization start module refuses to establish a communication connection with each of the subset of the first-level synchronization modules, and the synchronization start module is configured to be in an idle state, and a state signal corresponding to the idle state is sent to the application end of the SOC.

[0066] Specifically, as shown in Figure 3 Before the synchronization start module receives the trigger signal of the pipeline service, the synchronization start module sends a signal of a low level of valid to the subset of the first synchronization modules, that is, the signal is sent to the synchronization module 1 and the synchronization module 2 to indicate that the synchronization start module refuses to establish a communication connection with the synchronization module 1 and the synchronization module 2, and the synchronization start module is configured to be in an idle state, and a state signal corresponding to the idle state is sent to the application end of the SOC. At this time, the application end knows that the synchronization start module is in the idle state, and can send a pipeline working start instruction.

[0067] In one or more embodiments, the above-mentioned, when the synchronization starting module receives the trigger signal of the pipeline service, the synchronization starting module establishes a communication connection with the first level synchronization module subset in the synchronization module set, comprising: when the synchronization starting module receives the trigger signal sent by the application end, the synchronization starting module sends a fourth handshake signal to the first level synchronization module subset, so that the synchronization starting module establishes a communication connection with each synchronization module in the first level synchronization module subset;

[0068] After the synchronization starting module establishes a communication connection with the first level synchronization module subset in the synchronization module set, it further comprises: configuring the synchronization starting module as a non-idle state; when the synchronization starting module receives the first handshake signal sent by the first level synchronization module subset, configuring the synchronization starting module as an idle state.

[0069] In order to realize the universality and reusability of the SOC pipeline synchronization mechanism, in the embodiment of the application, a synchronization module is instantiated for each sub-module (SOC module) of the VIVADO HLS SOC, and the start and stop of each sub-module are independently controlled by the corresponding synchronization module. The pipeline is executed by the interaction between the synchronization modules, and a first level start module of the pipeline is additionally designed to interact with the host (application end), so as to realize that the entire pipeline starts to work when the host issues a command. Based on this design idea, in an embodiment, as shown in Figure 4 The implementation method of the pipeline synchronization mechanism further comprises: step S302, determining the number of front-level synchronization modules and rear-level synchronization modules of the current synchronization module; step S304, initializing the current synchronization module, taking the current synchronization module as the receiver and pulling up the ready signal; step S306, initializing the current synchronization module, taking the current synchronization module as the sender and pulling down the valid signal. Step S308, after the handshake between the current synchronization module and the front-level synchronization module is completed, the receiver is set to low ready signal, and after all the front-level synchronization modules of the current synchronization module complete the handshake, the current synchronization module sends a task start instruction to the corresponding SOC module. Step S310, after the current synchronization module receives the indication that the corresponding SOC module completes the task, the current synchronization module sets the valid signal to high as the sender; step S312, after the current synchronization module and all rear-level synchronization modules complete the handshake, the current synchronization module is taken as the receiver again, and the ready signal is set to high, completing the level pipeline task.

[0070] In an embodiment, as shown in Figure 5As shown, the implementation method of the above-mentioned pipeline synchronization mechanism further includes: step S402, determining the number of first-level synchronization modules; step S404, initializing the synchronization startup module, setting the synchronization startup module as the sender, and setting the valid signal low; step S406, after receiving the startup command issued by the host, setting the synchronization startup module as the sender, setting the valid signal high, and recording the ready signal of the first-level synchronization module for the host to read; step S408, after the synchronization startup module and the first-level synchronization module complete the handshake, setting the valid signal of the synchronization startup module low; step S410, when the first-level synchronization module sets the ready signal high as the receiver, proceeding to step S406, completing the first-level pipeline operation.

[0071] This invention establishes corresponding synchronization modules for each module of the SOC and controls the pipeline execution steps of each module in the SOC based on the communication connection relationship between the synchronization modules. This improves the efficiency of the SOC system pipeline synchronization mechanism, saves the workload of implementing a high-performance SOC system pipeline synchronization mechanism, and enables the implementation of pipeline synchronization mechanisms in different SOC systems, thereby solving the technical problem of low efficiency in the implementation of the SOC pipeline synchronization mechanism.

[0072] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.

[0073] According to another aspect of the present invention, an apparatus for implementing the pipeline synchronization mechanism in accordance with the above-described method for implementing the pipeline synchronization mechanism is also provided. For example... Figure 6 As shown, the device includes:

[0074] The first creation unit 502 is used to create a synchronization module corresponding to each SOC module in the system-on-a-chip (SOC) to obtain a set of synchronization modules. The synchronization modules are used to control the working state of the SOC modules. The SOC modules are modules in the SOC that execute tasks in a pipeline hierarchical manner.

[0075] The first sending unit 504 is configured to send a start working instruction to a target SOC module by the current synchronization module in the case that the current synchronization module and each of the previous synchronization modules in the previous synchronization module subset are connected, so that the target SOC module processes the service; the previous synchronization module subset is a set of synchronization modules of the same level directly connected to the current synchronization module.

[0076] The disconnection unit 506 is configured to disconnect the current synchronization module from each of the previous synchronization modules in the previous synchronization module subset after the current synchronization module sends the start working instruction.

[0077] The communication unit 508 is configured to establish a communication connection between the current synchronization module and the next synchronization module subset in the case that the target SOC module completes the service processing; the next synchronization module subset is a set of synchronization modules of the next level directly connected to the current synchronization module.

[0078] The receiving unit 510 is configured to receive a communication connection request of the previous synchronization module subset again after the current synchronization module establishes a communication connection with each of the next synchronization modules in the next synchronization module subset.

[0079] The first determination unit 512 is configured to determine the pipeline synchronization mechanism of the SOC when each of the SOC modules of the SOC completes the service processing.

[0080] The embodiment of the application can improve the efficiency of the pipeline synchronization mechanism of the SOC system in implementation by establishing the synchronization modules corresponding to each module of the SOC and controlling the pipeline execution steps of each module in the SOC according to the direct communication connection relationship of the synchronization modules, can not only save the workload of implementing the pipeline synchronization mechanism of the high SOC system, but also can implement the pipeline synchronization mechanism in different SOC systems, and further solves the technical problem of low efficiency of the pipeline synchronization mechanism of the SOC in implementation.

[0081] In one or more embodiments, the implementation device of the pipeline synchronization mechanism comprises:

[0082] The second creation unit is configured to create a synchronization start module for receiving a trigger signal for triggering the SOC to start the pipeline service;

[0083] The first establishment unit is configured to establish a communication connection between the synchronization start module and the first synchronization module subset in the synchronization module set when the synchronization start module receives the trigger signal of the pipeline service.

[0084] The second sending unit is configured to send a start working instruction to the SOC module subset corresponding to the first-level synchronization module when the synchronization starting module and the first-level synchronization module are in communication connection.

[0085] In one or more embodiments, the implementation device of the pipeline synchronization mechanism further includes:

[0086] The second establishing unit is configured to send a first handshake signal to each of the previous-level synchronization module subset to establish communication connection between the current synchronization module and each of the previous-level synchronization module subset.

[0087] The second determining unit is configured to determine whether the current synchronization module establishes communication connection with each of the previous-level synchronization module subset.

[0088] The second sending unit is configured to send a second handshake signal to each of the next-level synchronization module subset to indicate that the current synchronization module refuses to establish communication connection.

[0089] In one or more embodiments, the second determining unit specifically includes:

[0090] The first determining module is configured to determine whether the current synchronization module establishes communication connection with each of the previous-level synchronization module subset according to the number of the previous-level synchronization modules with which the current synchronization module establishes communication connection.

[0091] The first determining module is configured to determine whether the current synchronization module establishes communication connection with each of the previous-level synchronization module subset according to the number of the previous-level synchronization modules with which the current synchronization module establishes communication connection.

[0092] In one or more embodiments, the disconnection unit 506 specifically includes:

[0093] The disconnection module is configured to send a third handshake signal to each of the previous-level synchronization module subset to disconnect the communication connection between the current synchronization module and each of the previous-level synchronization module subset.

[0094] In one or more embodiments, the communication unit 508 specifically includes:

[0095] The third establishing unit is configured to, when the target SOC module completes the service processing, send a fourth handshake signal to each of the subset of the next-level synchronization modules by the current synchronization module, so as to establish a communication connection between the current synchronization module and each of the subset of the next-level synchronization modules.

[0096] The receiving unit 510 specifically includes a receiving module configured to, when the current synchronization module establishes the communication connection with each of the subset of the next-level synchronization modules, send the first handshake signal to the subset of the previous-level synchronization modules again to receive the communication connection request of each of the subset of the previous-level synchronization modules.

[0097] In one or more embodiments, the receiving module specifically includes:

[0098] The first determining sub-unit is configured to, when the current synchronization module establishes the communication connection with the second number of next-level synchronization modules, determine that the current synchronization module establishes the communication connection with each of the subset of the next-level synchronization modules.

[0099] The receiving sub-unit is configured to send the first handshake signal to the subset of the previous-level synchronization modules again to receive the communication connection request of each of the subset of the previous-level synchronization modules.

[0100] In one or more embodiments, the implementation device of the pipeline synchronization mechanism further includes:

[0101] The second sending unit is configured to send a second handshake signal to the subset of the first-level synchronization modules by the synchronization starting module, so as to instruct the synchronization starting module to refuse to establish the communication connection with each of the subset of the first-level synchronization modules.

[0102] The first configuring unit is configured to configure the synchronization starting module as an idle state, and send a state signal corresponding to the idle state to an application end of the SOC.

[0103] In one or more embodiments, the first establishing unit specifically includes:

[0104] The first establishing module is configured to, when the synchronization starting module receives the trigger signal sent by the application end, send a fourth handshake signal to the subset of the first-level synchronization modules by the synchronization starting module, so as to establish the communication connection between the synchronization starting module and each of the subset of the first-level synchronization modules.

[0105] The implementation device of the pipeline synchronization mechanism further includes:

[0106] The third configuring unit is configured to configure the synchronization starting module as a non-idle state.

[0107] A fourth configuration unit, configured to configure the synchronization starting module to be in an idle state when the synchronization starting module receives the first handshake signal sent by the first-level synchronization module subset.

[0108] According to still another aspect of the embodiments of the present application, there is further provided an electronic device for implementing the implementation method of the above-mentioned pipeline synchronization mechanism, which can be a terminal device or a server. The terminal device includes, but is not limited to, at least one of the following: a mobile phone (such as an Android phone, an iOS phone, etc.), a notebook computer, a tablet computer, a palm computer, a MID (Mobile Internet Device), a PAD, a desktop computer, a smart television, etc. The server can be a single server, a server cluster composed of multiple servers, or a cloud server.

[0109] The present embodiment takes the electronic device as a server as an example for illustration. As shown in Figure 6 The electronic device includes a memory 602 and a processor 604, the memory 602 stores a computer program, and the processor 604 is configured to execute the steps in any of the above-mentioned method embodiments by the computer program.

[0110] Optionally, in the present embodiment, the electronic device can be located in at least one of the multiple network devices in a computer network.

[0111] Optionally, in the present embodiment, the processor can be configured to execute the following steps by the computer program:

[0112] S1, creating a synchronization module corresponding to each SOC module in a system on chip (SOC), to obtain a synchronization module set, the synchronization module being used to control the working state of the SOC module, the SOC module being a module in the SOC for performing a task in a pipeline level;

[0113] S2, in the case where a current synchronization module and each previous synchronization module in a previous synchronization module subset in the synchronization module set are in communication connection, the current synchronization module sends a start working instruction to a target SOC module, so as to make the target SOC module perform a service processing; wherein the previous synchronization module subset is a set of previous synchronization modules directly connected to the current synchronization module;

[0114] S3, when the current synchronization module finishes sending the start working instruction, the current synchronization module disconnects the communication connection with each previous synchronization module in the previous synchronization module subset;

[0115] S4, after the target SOC module completes the business processing, the current synchronization module establishes a communication connection with a subset of subsequent synchronization modules; wherein, the subset of subsequent synchronization modules is a set of subsequent synchronization modules that are directly connected to the current synchronization module.

[0116] S5, when the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset, it receives the communication connection request from the preceding synchronization module subset again.

[0117] S6, when each SOC module of the above SOC has completed business processing, determine the pipeline synchronization mechanism of the above SOC.

[0118] Alternatively, as those skilled in the art will understand, Figure 6 The structure shown is for illustrative purposes only. Electronic devices can also be smartphones (such as Android phones, iOS phones, etc.), tablets, PDAs, mobile internet devices (MIDs), PADs, and other terminal devices. Figure 6 This does not limit the structure of the aforementioned electronic devices or electronic equipment. For example, electronic devices or electronic equipment may also include components that are more... Figure 6 The more or fewer components shown (such as network interfaces, etc.), or having the same Figure 6 The different configurations shown.

[0119] The memory 602 can be used to store software programs and modules, such as the program instructions / modules corresponding to the pipeline synchronization mechanism implementation method and apparatus in this embodiment of the invention. The processor 604 executes various functional applications and the pipeline synchronization mechanism by running the software programs and modules stored in the memory 602, thereby implementing the aforementioned pipeline synchronization mechanism implementation method. The memory 602 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 602 may further include memory remotely located relative to the processor 604, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, enterprise intranets, local area networks, mobile communication networks, and combinations thereof. Specifically, the memory 602 may be used, but is not limited to, to store information such as the number of different levels of SOC modules. As an example, such as... Figure 6As shown, the memory 602 can include, but is not limited to, the first creating unit 502, the first sending unit 504, the disconnecting unit 506, the communicating unit 508, the receiving unit 510 and the first determining unit 512 in the implementation device of the pipeline synchronization mechanism. In addition, other module units in the implementation device of the pipeline synchronization mechanism can also be included, which will not be described herein.

[0120] Optionally, the transmission device 606 is configured to receive or send data via a network. The network can include a wired network and a wireless network. In an example, the transmission device 606 includes a network adapter (NIC), which can be connected to other network devices and routers through a network cable to communicate with the Internet or a local area network. In an example, the transmission device 606 is a radio frequency (RF) module, which is configured to communicate with the Internet in a wireless manner.

[0121] In addition, the electronic device further includes a display 608 configured to display each SOC module, and a connection bus 610 configured to connect various module components in the electronic device.

[0122] In other embodiments, the terminal device or the server can be a node in a distributed system, and the distributed system can be a blockchain system. The blockchain system can be a distributed system formed by the plurality of nodes communicating through a network. The nodes can form a peer-to-peer (P2P) network, and any computing device, such as a server or a terminal, can become a node in the blockchain system by joining the P2P network.

[0123] According to an aspect of the present application, a computer program product or a computer program is provided, which includes computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computer device to perform the implementation method of the pipeline synchronization mechanism. The computer program is configured to execute the steps in any of the method embodiments when executed.

[0124] Optionally, in the present embodiment, the computer readable storage medium can be configured to store a computer program for executing the following steps:

[0125] S1, create a synchronization module corresponding to each SOC module in a system on chip (SOC), to obtain a synchronization module set, the synchronization module being used to control a working state of the SOC module, the SOC module being a module in the SOC that executes a task in a pipeline level;

[0126] S2, in a case where a current synchronization module and each previous synchronization module in a previous synchronization module subset in the synchronization module set are communicatively connected, the current synchronization module sends a start working instruction to a target SOC module corresponding to the current synchronization module, so that the target SOC module performs a service processing; the previous synchronization module subset being a set of previous synchronization modules directly connected to the current synchronization module;

[0127] S3, when the current synchronization module finishes sending the start working instruction, the current synchronization module disconnects the communication connection with each previous synchronization module in the previous synchronization module subset;

[0128] S4, in a case where the target SOC module completes the service processing, the current synchronization module establishes a communication connection with a next synchronization module subset; the next synchronization module subset being a set of next synchronization modules directly connected to the current synchronization module;

[0129] S5, when the current synchronization module establishes the communication connection with each next synchronization module in the next synchronization module subset, the communication connection request of the previous synchronization module subset is received again;

[0130] S6, when each SOC module in the SOC completes the service processing, a pipeline synchronization mechanism of the SOC is determined.

[0131] Optionally, in the embodiment, a person skilled in the art can understand that all or part of the steps in the various methods of the above embodiment can be completed by a program instructing a terminal device related hardware, and the program can be stored in a computer readable storage medium, and the storage medium can include a flash disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0132] The above embodiment numbers are only for description, and do not represent the advantages and disadvantages of the embodiments.

[0133] The integrated units in the above embodiments, if implemented in the form of software function units and sold or used as independent products, can be stored in the above computer-readable storage medium. Based on such understanding, the technical solutions of the present application, essentially or in other words, the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a number of instructions to make one or more computer devices (which can be personal computers, servers or network devices, etc.) execute all or part of the steps of the above-mentioned methods of various embodiments of the present application.

[0134] In the above embodiments of the present application, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.

[0135] In several embodiments provided in the present application, it should be understood that the disclosed client can be implemented by other ways. Among them, the above-described device embodiments are only schematic, for example, the division of the above units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the shown or discussed mutual ones can be indirect coupling or communication connection through some interfaces, units or modules, and can be electrical or other forms.

[0136] The units described above as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on multiple network units. Part or all of the units can be selected to achieve the purpose of the embodiment of the present application according to actual needs.

[0137] In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of software function unit.

[0138] The above is only the preferred embodiment of the present application, and it should be pointed out that for ordinary skilled in the art, without departing from the principles of the present application, a number of improvements and refinements can be made, and these improvements and refinements should be considered as the protection scope of the present application.

Claims

1. A method for implementing a pipeline synchronization mechanism, characterized in that, include: Create a synchronization module corresponding to each SOC module in the System-on-a-Chip (SOC) to obtain a set of synchronization modules. The synchronization modules are used to control the working state of the SOC modules. The SOC modules are modules in the SOC that execute tasks in a pipeline hierarchical manner. When the current synchronization module in the set of synchronization modules establishes a communication connection with each preceding synchronization module in the preceding synchronization module subset, the current synchronization module sends a start working instruction to the corresponding target SOC module so that the target SOC module can perform business processing; wherein, the preceding synchronization module subset is the set of preceding synchronization modules that are directly connected to the current synchronization module; After the current synchronization module finishes sending the start working instruction, the current synchronization module disconnects the communication connection with each of the preceding synchronization modules in the preceding synchronization module subset. When the target SOC module completes its business processing, the current synchronization module establishes a communication connection with a subset of subsequent synchronization modules; wherein, the subset of subsequent synchronization modules is a collection of subsequent synchronization modules that are directly connected to the current synchronization module. When the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset, it receives the communication connection request from the preceding synchronization module subset again. When each SOC module of the SOC completes business processing, the pipeline synchronization mechanism of the SOC is determined. Before the current synchronization module sends the start-of-work instruction to the corresponding target SOC module, it also includes: The current synchronization module sends a first handshake signal to each of the preceding synchronization modules in the preceding synchronization module subset, so that the current synchronization module establishes a communication connection with each of the preceding synchronization modules in the preceding synchronization module subset; Determine whether the current synchronization module has established a communication connection with each of the preceding synchronization modules in the preceding synchronization module subset; The current synchronization module sends a second handshake signal to each of the subsequent synchronization modules in the subset of subsequent synchronization modules to indicate that the current synchronization module refuses to establish a communication connection.

2. The method according to claim 1, characterized in that, The method further includes: Create a synchronous startup module for receiving trigger signals that trigger the SOC to start pipeline services; When the synchronization startup module receives the trigger signal of the pipeline service, the synchronization startup module establishes a communication connection with the first-level synchronization module subset in the synchronization module set; When the synchronization startup module establishes a communication connection with the first-level synchronization submodule, the first-level synchronization module sends a start-up command to the SOC module subset corresponding to the first-level synchronization module.

3. The method according to claim 1, characterized in that, The step of determining whether the current synchronization module has established a communication connection with each of the preceding synchronization modules in the subset includes: Based on the number of communication connections established between the current synchronization module and the previous synchronization module, it is determined whether the current synchronization module establishes a communication connection with each of the previous synchronization modules in the subset of previous synchronization modules. When the current synchronization module establishes a communication connection with a first number of preceding synchronization modules, it is determined that the current synchronization module establishes a communication connection with each preceding synchronization module in the preceding synchronization module subset; wherein, the first number is the number of synchronization modules in the preceding synchronization module subset.

4. The method according to claim 1, characterized in that, The current synchronization module disconnects its communication connection with each preceding synchronization module in the preceding synchronization module subset, including: The current synchronization module sends a third handshake signal to each of the preceding synchronization modules in the preceding synchronization module subset, so that the current synchronization module disconnects its communication connection with each of the preceding synchronization modules in the preceding synchronization module subset.

5. The method according to claim 4, characterized in that, When the target SOC module completes business processing, the current synchronization module establishes a communication connection with each subsequent synchronization module in the subset of subsequent synchronization modules, including: When the target SOC module completes the business processing, the current synchronization module sends a fourth handshake signal to each of the subsequent synchronization modules in the subsequent synchronization module subset, so that the current synchronization module establishes a communication connection with each of the subsequent synchronization modules in the subsequent synchronization module subset. The step of receiving a communication connection request from the preceding synchronization module subset again after the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset includes: When the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset, it sends the first handshake signal to the preceding synchronization module subset again to receive the communication connection request from each synchronization module in the preceding synchronization module subset.

6. The method according to claim 5, characterized in that, When the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset, it sends the first handshake signal to the preceding synchronization module subset again, including: When the current synchronization module establishes a communication connection with the second number of subsequent synchronization modules, it is determined that the current synchronization module establishes a communication connection with each subsequent synchronization module in the subset of subsequent synchronization modules; The first handshake signal is sent again to the subset of front-end synchronization modules to receive communication connection requests from each synchronization module in the subset of front-end synchronization modules.

7. The method according to claim 2, characterized in that, Before the synchronous startup module receives the trigger signal of the pipeline service, the following is also included: The synchronization startup module sends a second handshake signal to the first-level synchronization module subset to instruct the synchronization startup module to refuse to establish a communication connection with each synchronization module in the first-level synchronization module subset; Configure the synchronous startup module to an idle state and send the status signal corresponding to the idle state to the application terminal of the SOC.

8. The method according to claim 7, characterized in that, When the synchronization startup module receives the trigger signal of the pipeline service, the synchronization startup module establishes a communication connection with the first-level synchronization module subset in the synchronization module set, including: When the synchronization startup module receives the trigger signal sent by the application terminal, the synchronization startup module sends a fourth handshake signal to the first-level synchronization module subset, so that the synchronization startup module establishes a communication connection with each synchronization module in the first-level synchronization module subset; After the synchronous startup module establishes a communication connection with the first-level subset of synchronous modules in the set of synchronous modules, the method further includes: Configure the synchronous startup module to a non-idle state; When the synchronization startup module receives the first handshake signal sent by the subset of the first-level synchronization modules, the synchronization startup module is configured to be in an idle state.

9. A device for implementing a production line synchronization mechanism, characterized in that, include: The first creation unit is used to create a synchronization module corresponding to each SOC module in the System-on-a-Chip (SOC) to obtain a set of synchronization modules. The synchronization module is used to control the working state of the SOC module. The SOC module is a module in the SOC that executes tasks in a pipeline hierarchical manner. The first sending unit is configured to, when the current synchronization module in the set of synchronization modules has established a communication connection with each of the preceding synchronization modules in the subset of preceding synchronization modules, send a start-working instruction to the corresponding target SOC module so that the target SOC module can perform service processing; wherein, the subset of preceding synchronization modules is a set of synchronization modules of the same level that are directly connected to the current synchronization module; The disconnection unit is used to disconnect the communication connection between the current synchronization module and each of the preceding synchronization modules in the preceding synchronization module subset after the current synchronization module has finished sending the start working instruction. A communication unit is used to establish a communication connection between the current synchronization module and a subset of subsequent synchronization modules when the target SOC module completes business processing; wherein, the subset of subsequent synchronization modules is a set of subsequent synchronization modules directly connected to the current synchronization module; The receiving unit is used to receive the communication connection request of the preceding synchronization module subset again after the current synchronization module establishes a communication connection with each subsequent synchronization module in the subsequent synchronization module subset. The first determining unit is used to determine the pipeline synchronization mechanism of the SOC when each SOC module of the SOC has completed business processing. The second establishment unit is used for the current synchronization module to send a first handshake signal to each of the preceding synchronization modules in the preceding synchronization module subset, so that the current synchronization module establishes a communication connection with each of the preceding synchronization modules in the preceding synchronization module subset; The second determining unit is used to determine whether the current synchronization module has established a communication connection with each of the preceding synchronization modules in the preceding synchronization module subset; The second sending unit is used for the current synchronization module to send a second handshake signal to each of the subsequent synchronization modules in the subset of subsequent synchronization modules, so as to indicate that the current synchronization module refuses to establish a communication connection.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program, when executed, performs the method according to any one of claims 1 to 8.

11. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method described in any one of claims 1 to 8 through the computer program.

Citation Information

Patent Citations

  • Video Synchronization with Distributed Modules

    US20110225256A1