Integrated development system and integrated development method for chip design
Through the integrated development system of chip design, automated management of code merging and testing, the problems of confusion and human errors of code management are solved, and an efficient and accurate chip design and development process is achieved.
Patent Information
- Application Number
- CN202510884309.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-07-29
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In chip design, the code management is chaotic, the updates and iterations are not timely, and the frequent occurrence of human errors, resulting in the extended development cycle and inefficient efficiency.
It provides an integrated development system for chip design, including code database, task establishment module, code inspection module, code merging module and code operation platform. Through automated process management of code merging and testing, it reduces human errors and realizes seamless connection and efficient management of code.
It improves the efficiency of chip design and development, reduces the impact of human errors, ensures the efficiency and accuracy of code management, and supports the high-quality completion of complex chip projects.
Smart Images

Figure CN120387403A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of chip design, and particularly to an integrated development system and an integrated development method for chip design. Background Art
[0002] The core of chip development lies in the deep coordination of software and hardware architectures, and is realized by driving physical circuits through multi-level codes. With the increasing scale and complexity of chip design, the challenges for chip software and hardware code management and testing are also increasing. Manual integration testing not only takes a lot of time and effort, but also easily introduces errors artificially, resulting in chaotic management of code data versions. Moreover, there are many management projects involved in chip design and development, and human errors such as untimely release and incorrect data release are likely to occur in the data update and iteration after code testing. Therefore, in chip development and design, problems such as code management, code update, personnel management, and code testing management will lead to the chip development and design cycle not meeting expectations, and it is difficult to improve the development efficiency. Summary of the Invention
[0003] The purpose of the present invention is to provide an integrated development system and an integrated development method for chip design, which can automatically realize the integration of chip design and development, thereby improving the development efficiency and reducing the influence of human errors in development.
[0004] To solve the above technical problems, the present invention is realized through the following technical solutions: The present invention provides an integrated development system for chip design, including: A code database for storing trunk codes and branch codes; A task establishment module, triggered by an external operation, the task establishment module establishes a branch to be merged and a merge task, and outputs the execution information of the merge task before the merge task is executed, wherein the branch to be merged stores the branch codes; A code inspection module, before executing the merge task, the code inspection module audits the branch codes, and triggers the execution of the merge task after the branch codes pass the audit; A code merge module, executing the merge task, and sequentially merging the branch codes in the branch to be merged into the trunk codes in the order of the establishment time of the multiple merge tasks; and A code running platform, connected to the code database, and running and testing the trunk codes according to a preset cycle or after the branch codes are merged, recording the error positions of the trunk codes, outputting the running test data of the trunk codes, and sending an alarm message to the person in charge of the error positions.
[0005] In an embodiment of the present invention, the code running platform includes: A keyword trigger unit, configured to store preset keywords and, after receiving the preset keywords, trigger the establishment of the branch to be merged and the merging task; and A first time-driven trigger unit, which triggers the establishment of the branch to be merged and the merging task when the timing duration reaches a first preset period.
[0006] In an embodiment of the present invention, multiple merging tasks are arranged in priority according to the time of task establishment. The earlier the task establishment time is, the higher the task priority is.
[0007] In an embodiment of the present invention, the integrated development system includes: A data management platform, connected to the code running platform, receiving the code running data of the code running platform. The data management platform allows the code running platform to access by token; and An error code management platform, connected to the code running platform, receiving the alarm information when the main code runs into an error. The error code management platform allows the code running platform to access by token and allows the responsible person of the error code to log in.
[0008] In an embodiment of the present invention, the token is stored in the running code of the integrated development system and is distributed in isolation from the running code.
[0009] In an embodiment of the present invention, the integrated development system includes an automatic configuration module, which is enabled before chip design and configures the real-time information sharing interface of the code database, the account information allowed to access the code database, the task execution pipeline of the code running platform, and the information of the token for accessing the code database.
[0010] In an embodiment of the present invention, the code running data includes the number of error vectors, the name of the test item, and the running test result of the main code. The alarm information includes the error information of the error vector and the reproduction instruction.
[0011] In an embodiment of the present invention, the task management module includes a second time-driven trigger unit. When the timing duration reaches a second preset period and there is no merging task being executed at the same time, the code running platform runs all the main code and outputs the code running data and the alarm information.
[0012] In an embodiment of the present invention, the code inspection module includes: A first-stage inspection unit, which performs a smoke test, code quality inspection, code compliance inspection, and specific vector inspection on the branch code after the branch code is compiled; and The second-stage inspection unit is started after the inspection by the first-stage inspection unit passes. The second-stage inspection unit checks the consistency between the branch code and the trunk code, and triggers the operation of the code merging module after the consistency check passes.
[0013] The present invention provides an integrated development method for chip design, and the method includes the following steps: Update the branch code and store the updated branch code in the code database; Under the trigger of an external operation, establish a branch to be merged and a merge task, and output the execution information of the merge task before the merge task is executed, wherein the branch code is stored in the branch to be merged; Before executing the merge task, review the branch code, and execute the merge task after the branch code passes the review; Obtain the trunk code and the branch code, and in the merge task, sequentially merge the branch code in the branch to be merged into the trunk code according to the creation time sequence of the multiple merge tasks; and Run and test the trunk code at a preset period or after merging the branch code, record the error location of the trunk code, output the running test data of the trunk code, and send an alarm message to the person in charge of the error location.
[0014] In an embodiment of the present invention, the step of establishing the merge task includes: Establish the merge task and store the established merge task in the task queue; and In the task queue, sort the priorities of the multiple merge tasks according to the creation time of the merge tasks, wherein the earlier the creation time of the merge task, the higher the priority.
[0015] As described above, the present invention provides an integrated development system and an integrated development method for chip design, which comprehensively improve the technical efficiency of chip design and development through full-process automatic control, multi-level quality assurance, intelligent collaborative management, and highly reliable security design. The present invention can minimize problems such as human errors, process chaos, and testing delays that are likely to occur in chip design and development. At the same time, through data-driven and automated mechanisms, seamless connection from code writing to test verification is achieved, providing strong support for the efficient and high-quality completion of complex chip design projects.
[0016] Of course, it is not necessary for any product implementing the present invention to simultaneously achieve all the above-mentioned advantages. Description of the Drawings
[0017] To more clearly illustrate the technical solutions of the embodiments of the present invention, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0018] Figure 1 It is a schematic structural diagram of an integrated development system for chip design in an embodiment of the present invention.
[0019] Figure 2 It is a schematic structural diagram of a code database in an embodiment of the present invention.
[0020] Figure 3 It is a schematic structural diagram of a code operation platform in an embodiment of the present invention.
[0021] Figure 4 It is a schematic structural diagram of a pipeline trigger module in an embodiment of the present invention.
[0022] Figure 5 It is a schematic structural diagram of a code inspection module in an embodiment of the present invention.
[0023] Figure 6 It is a flowchart of an integrated development method for chip design in an embodiment of the present invention.
[0024] In the figure: 100, code database; 110, storage unit; 120, conflict detection unit; 200, code operation platform; 210, pipeline trigger module; 211, keyword trigger unit; 212, first time-driven trigger unit; 213, second time-driven trigger unit; 220, code acquisition module; 230, verification and testing module; 240, compilation module; 250, data transmission module; 300, task establishment module; 400, task management module; 500, code inspection module; 510, first-stage inspection unit; 520, second-stage inspection unit; 600, code merging module; 700, data management platform; 800, error code management platform; 900, automatic configuration module. Detailed implementation manners
[0025] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present invention.
[0026] Please refer to Figure 1As shown in the figure, the present invention provides an integrated development system for chip design. The integrated development system includes a code database 100, a task creation module 300, a task management module 400, a code inspection module 500, a code merging module 600, a code running platform 200, a data management platform 700, an error code management platform 800, and an automatic configuration module 900. Among them, the code database 100 is used to store the trunk code and branch codes. The trunk code is the key code of a chip design project and is also used to represent the final code result of the chip design project. After being designed by designers, the branch codes are added to the trunk code, thus realizing the program development participated by multiple people. Among them, triggered by an external operation, the task creation module 300 creates a branch to be merged and a merge task, and outputs the execution information of the merge task before the merge task is executed, where the branch to be merged stores the branch codes. Before executing the merge task, the code inspection module 500 reviews the branch codes, and triggers the execution of the merge task after the branch codes pass the review. The code merging module 600 executes the merge task, and sequentially merges the branch codes in the branch to be merged into the trunk code according to the creation time sequence of multiple merge tasks. The code running platform 200 is connected to the code database 100, and runs the test trunk code according to a preset period or after the branch codes are merged, records the error positions of the trunk code, outputs the test data of the trunk code running, and sends an alarm message to the person in charge of the error positions.
[0027] Please refer to Figure 1 As shown in the figure, in an embodiment of the present invention, before starting a chip design project, the automatic configuration module 900 can be used to customize the configuration of the code database 100 and the code running platform 200, and complete the communication connection between the code database 100 and the code running platform 200. In this embodiment, the code database 100 can be a cloud-based version control platform, such as bitbucket. Configuring the code database 100 includes configuring Webhooks. It should be noted that Webhooks is a lightweight, HTTP-based callback mechanism used to achieve real-time communication between applications or services. By configuring Webhooks, real-time communication between the code database 100 and the code running platform 200 can be achieved. When the events set in the present invention occur, direct data transfer can be realized between the code database 100 and the code running platform 200 without going through an interrogation process.
[0028] Please refer to Figure 1As shown, in an embodiment of the present invention, the configuration code running platform 200 includes the pipeline of the configuration platform, the server and repository information of the configuration code database 100, the address for accessing the code database 100, the account information for logging in to the code database 100, the token information for accessing the code data, the branch information called for configuring the build merge task, the script address triggered in the automatic control system or the pipeline script address of the code running platform 200. It should be noted that the pipeline is a collection of a series of automated stages. For example, the pipeline in this embodiment includes code pulling, code compilation, code testing, and so on. The pipeline of the configuration code running platform 200 is specifically configured through code or interface to achieve end-to-end process control. In this embodiment, steps such as configuring the server and repository information of the code database 100, the address for accessing the code database 100, the account information for logging in to the code database 100, and the token information for accessing the code data are used to establish an automated integration association between the code database 100 and the code running platform 200. Among them, configuring the server of the code database 100 is used to configure, for example, the instance address of Bitbucket. Configuring the repository information is used to specify the repository address that needs to be monitored under the git version control system. Configuring the account information for logging in to the code database 100 is used to provide the permission to access the code database 100. Configuring the token information for accessing the code data is used to ensure that the direct communication request sent by the code database 100 to the code running platform 200 is legal.
[0029] Please refer to Figure 1 and Figure 2 As shown, in an embodiment of the present invention, the code database 100 includes a storage unit 110 and a conflict detection unit 120, where the storage unit 110 is used to store code information. In this embodiment, during the design and development process, when it is necessary to upload the branch code, a merge branch to be merged is created in the code database 100, and the branch code is uploaded to the corresponding merge branch to be merged through the git command. In the present invention, the R & D personnel have no right to directly merge the branch code into the main code to avoid code management chaos. In the code database 100, the conflict detection unit 120 detects whether there is a conflict between the branch code and the main code in the merge branch to be merged. For example, if there are modifications to the same area of the same file and it is impossible to confirm which side is accurate, the modification at the corresponding position is recognized as a conflict, and the R & D personnel are required to repair the conflict code before performing the merge check. In this embodiment, the conflict detection unit 120 can first merge the branch code in the merge branch to be merged with the main code in a simulated merge manner. If there is a direct conflict, the conflict is marked. In the case of a conflict mark, the merge process of this branch code is aborted until the conflict is resolved.
[0030] Please refer to Figures 1 to 3As shown, in an embodiment of the present invention, the code running platform 200 includes a pipeline trigger module 210, a code acquisition module 220, a verification and testing module 230, a compilation module 240, and a data transmission module 250. Among them, the pipeline trigger module 210 can be triggered after the input of a keyword or triggered regularly. In this embodiment, the keywords that can trigger the start of the pipeline are pre-configured in the pipeline trigger module 210. And, the keyword trigger method is, for example, inputting a keyword to the code running platform 200. Among them, keyword trigger is the first trigger method, and regular trigger is the second trigger method. For the same task at the same time, either of these two trigger methods can be used. In this embodiment, after the code merging is completed, the code acquisition module 220 acquires the trunk code from the code database 100. The verification and testing module 230 runs the trunk code and completes a comprehensive test of the trunk code. The present invention does not limit the types and quantities of tests. Among them, the compilation module 240 is used to compile the trunk code and the branch code. The data transmission module 250 is used to complete the data transmission to the data management platform 700 and the error code management platform 800.
[0031] Please refer to Figures 1 to 4 As shown, in an embodiment of the present invention, the pipeline trigger module 210 includes a keyword trigger unit 211, a first time-driven trigger unit 212, and a second time-driven trigger unit 213. Among them, the keyword trigger unit 211 and the first time-driven trigger unit 212 are used to trigger the establishment of a merge task. The keyword trigger unit 211 triggers the establishment of the branch to be merged and the merge task after receiving a keyword or detecting a keyword in the platform comment area. The first time-driven trigger unit 212 is a trigger unit combined with a timer. Specifically, when the timing duration reaches the first preset period, it triggers the establishment of the branch to be merged and the merge task. In this embodiment, the keyword trigger unit 211 and the first time-driven trigger unit 212 are parallel and independent of each other. For different merge tasks, they can be triggered independently and separately. For the same task, either one can be triggered according to the order of the trigger time. In this embodiment, the orderly trigger of tasks can be specifically achieved through task priorities. In this example, the second time-driven trigger unit 213 is used to trigger the start of the code acquisition module 220 and the verification and testing unit. Specifically, when the timing duration reaches the second preset period and there is no ongoing merge task at the same time, the code runs all the trunk code through the verification and testing unit, and outputs the code running data and alarm information to the data management platform 700 and the error code management platform 800.
[0032] Please refer to Figures 1 to 5As shown, in an embodiment of the present invention, after the pipeline trigger unit triggers the establishment of the branch to be merged and the merge task, the task establishment module 300 establishes the corresponding branch to be merged and the merge task, and pulls the trunk code into the branch to be merged. In this embodiment, the task management module 400 includes a task queue unit, an address generation unit, a task tracking unit, and a task abort unit. Among them, the task queue unit sorts the priorities of the merge tasks according to the establishment time of the merge tasks. When multiple merge tasks are to be executed, the multiple merge tasks are executed sequentially according to the priorities, and only one merge task is executed at the same time. Before the next merge task is executed after a merge task is executed, the address generation unit generates a task address. The task address includes network address information of the code running platform 200, the task name of the merge task, the execution status of the merge task, and so on. For example, the task address can be represented as http: / / <jenkins serveraddress> / job / <repo address> / <job ID>. Through the task address, developers can track the immediate status of the task at any time and determine whether to abort the merge task according to the immediate status of the task. The task tracking unit is used to track the execution status of the merge task. The task abort unit can receive external input to abort the merge task. When the merge task is aborted, the current merge task is determined to be executed. If it is necessary to merge the current branch to be merged into the trunk code again, a merge task can be re-established on the original branch to be merged, or a merge task can be established on the newly created branch to be merged. If the current merge task is being executed, the remaining merge tasks are in a waiting state. The merge tasks that have been executed are cleared from the task queue by the task queue unit.
[0033] Please refer to Figures 1 to 5 As shown, in an embodiment of the present invention, the code acquisition module 220 retrieves the trunk code and the main code of the branch to be merged from the code database 100 through a token. In the present invention, the code running platform 200 can default to retrieve the trunk code or default to retrieve the trunk code. In this embodiment, the trunk code is retrieved from the code database 100 by default, and the code merge module 600 completes the execution of the merge task. Among them, the integrated development system provided by the present invention can run automatically after configuration. Therefore, the token is saved in the program code of each module unit, and the permissions of the program code are set to isolate the token and the running code of the system to prevent the token from being exposed to ordinary users. For example, the token can be saved in the program code that is not open to ordinary users.
[0034] Please refer to Figures 1 to 5As shown, in an embodiment of the present invention, before executing the next merge task, the trunk code in the branches to be merged of the next merge task is first audited and inspected. In this embodiment, before the code inspection module 500 inspects, the compilation module 240 compiles the code and triggers the code verification personnel review mechanism. The code operation platform 200 checks whether the trunk code has passed the inspection by the corresponding reviewer through the API interface of the code database 100. After the review is completed, proceed to the next step; otherwise, output an error and exit. The next merge task is terminated and skipped, and the next next merge task is executed. In this embodiment, different reviewers can be specified according to different directories of the code. Only after all the reviewers corresponding to the directory where the trunk code is located pass the review, it is determined that the trunk code passes the preliminary review. Then the code inspection module 500 is started. The code inspection module 500 runs before executing the current merge task, and the code inspection module 500 includes a first-stage inspection unit 510 and a second-stage inspection unit 520. Among them, after the trunk code is compiled, the first-stage inspection unit 510 performs a smoke test, code quality inspection, code compliance inspection, and specific vector inspection on the trunk code. The second-stage inspection unit 520 is started after the inspection of the first-stage inspection unit 510 passes. The second-stage inspection unit 520 checks the consistency between the trunk code and the main trunk code, and after the consistency check passes, triggers the operation of the code merge module 600. The present invention does not limit the directory form and directory content of the code.
[0035] Please refer to Figures 1 to 5As shown, in an embodiment of the present invention, after the branch code compilation passes, it triggers test and inspection items such as the smoke test, code quality inspection, code compliance inspection, and specific vector inspection of the first-stage inspection unit 510. Through the pipeline control of the code running platform 200, a comprehensive inspection and verification are performed on the branch code to be merged. In the smoke test, test vectors with high coverage for each module are selected to form a complete test vector list for the smoke test. If all tests pass, it can be considered that the branch code passes the smoke test. Any failed test vector will display an error log. The code quality inspection will verify the synthesizability of the branch code. If there are errors, the code inspection module 500 will display error messages. The code compliance inspection will further check the writing plan of the code, including items such as module calls, definitions and uses of clock reset terminals, and uses of memories. In the test of specific vector inspection, the first-stage inspection unit 510 performs test inspections on specific test vectors, including the test vectors being updated in the branch to be merged. After all inspection items of the first-stage inspection unit 510 pass, the second-stage inspection unit 520 is then started. Among them, the second-stage inspection unit 520 checks the front-back consistency between the branch code and the main code to ensure that the code has not been tampered with during the inspection process. For example, before and during the execution of the merge task, any update to the code will cause a change in the corresponding commit ID of the code, and any change will cause the consistency check to fail. If any inspection fails, the merge task will end and be re-queued. In this embodiment, the commit ID is a unique identifier generated by the Git version control system for each code submission.
[0036] Please refer to Figures 1 to 5 As shown, in an embodiment of the present invention, after all inspections of the code inspection module 500 pass, specifically, after the inspection of the second-stage inspection unit 520 passes, the code merge module 600 is started to execute the merge task. The code merge module 600 retrieves the main code and the branch code through tokens and merges the branch code into the main code to form a new main code. In the present invention, the integrated development system controls the code merge process in the entire design and development cycle. Only the code merge module 600 mentioned in the present invention can merge the main code and the branch code, and the R & D personnel do not have the merge permission, thus avoiding problems such as low efficiency and prone to human errors caused by excessive R & D personnel and redundant R & D project designs. For R & D designers, the task establishment method combining keyword control and timing control, as well as the working methods of multi-level inspections and the platform running the code by itself to complete the merge and inspection, can also enable R & D personnel to concentrate their efforts on code design. It should be noted that the multiple modules and units mentioned in the present invention can exist in the form of program codes and are implemented by the code running platform 200 to perform the functions corresponding to the program codes.
[0037] Please refer to Figures 1 to 3 As shown, in an embodiment of the present invention, the code running platform 200 receives a trigger signal from the second time-driven trigger unit 213, and regularly performs a comprehensive regression test on the main code through the verification test module 230. In this embodiment, the code acquisition module 220 acquires the main code from the code database 100, and then the verification test module 230 runs the main code. After the test is completed, the code running data of the verification test module 230 is sent to the data management platform 700 through the data transmission module 250 by virtue of the token permission. When the main code runs with an error, the verification test module 230 records the code content at the error location and generates an alarm message, and sends the alarm message to the error code management platform 800 through the data transmission module 250 by virtue of the token permission. Among them, the alarm message can be sent to the corresponding R & D personnel to improve the corresponding R & D personnel's handling of error codes. In an embodiment of the present invention, the code running data includes the number of error vectors, the name of the test item, and the running test result of the main code, and the alarm message includes the error information of the error vector and the reproduction instruction. In the present invention, the regression test of the verification test module 230 can be triggered with a second preset period accurate to seconds. When the regression test is in progress, the merge task can be paused. Among them, the code running platform 200 can also send the register list and code-related information to the data management platform 700 through the data transmission module 250, and the release period can be triggered regularly or triggered after each merge task is completed.
[0038] Please refer to Figure 1 and Figure 6 As shown, the present invention also provides an integrated development method for chip design, including steps S100 to S500.
[0039] Step S100: Update the branch code and store the updated branch code in the code database 100.
[0040] Step S200: Under the trigger of an external operation, establish a branch to be merged and a merge task, and output the execution information of the merge task before the merge task is executed, where the branch to be merged stores the branch code.
[0041] Step S300: Before executing the merge task, review the branch code, and execute the merge task after the branch code passes the review.
[0042] Step S400: In the merge task, in the order of the establishment time of multiple merge tasks, sequentially merge the branch code in the branch to be merged into the main code.
[0043] Step S500: Run the test main code at a preset period or after merging the branch codes, record the error positions of the main code, output the running test data of the main code, and send an alarm message to the person in charge of the error positions.
[0044] Please refer to Figure 1 and Figure 6 As shown, in an embodiment of the present invention, in step S100, the update of the branch code is performed by the R & D personnel themselves. In step S200, a pending merge branch and a merge task are established under the trigger of a keyword or a first preset period, and the corresponding branch code is placed in the pending merge branch. In step S300, if it is the turn of the current merge task to be executed, before executing the merge task, the branch code is checked by an audit mechanism. After passing the checks of all auditors, the branch code is then subjected to a first-stage check to ensure that there are no problems with the branch code. Then, the branch code is subjected to a second-stage check to ensure that there are no problems with the consistency between the branch code and the main code. In step S400, after all the audit checks pass, the branch of the pending merge branch is merged into the main code. If any of the check items fails, the current merge task is terminated and the next merge task is continued. In step S500, regression testing is regularly performed on the main code according to a second preset period, and the running test data of the regression testing is sent to the data management platform 700. When an error occurs in the regression testing, the error position can be marked, an alarm message is generated, and the alarm message is sent to the error code management platform 800.
[0045] Please refer to Figure 1 and Figure 6 As shown, in an embodiment of the present invention, in the step of establishing a merge task, the merge task is stored in a task queue. In the task queue, the priorities of multiple merge tasks are sorted according to the creation time of the merge tasks, and the merge task with an earlier creation time has a higher priority. For a merge task that is aborted or fails to merge, the merge task can be removed from the task queue.
[0046] The embodiments of the present invention disclosed above are only used to help explain the present invention. The embodiments do not describe all the details in detail, nor do they limit the invention to the specific embodiments described. Obviously, many modifications and variations can be made according to the content of this specification. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the present invention, so that those skilled in the art in the relevant technical field can well understand and utilize the present invention. The present invention is only limited by the claims and the full scope and equivalents.
Claims
1. An integrated development system for chip design, characterized in that, Including: A code database for storing trunk code and branch code; A task creation module, triggered by an external operation, the task creation module creates a branch to be merged and a merge task, and outputs execution information of the merge task before the merge task is executed, wherein the branch to be merged stores the branch code; A code checking module, before executing the merge task, the code checking module audits the branch code, and triggers the execution of the merge task after the branch code passes the audit; A code merging module, executing the merge task, and sequentially merging the branch code in the branch to be merged into the trunk code according to the creation time sequence of multiple merge tasks; And A code running platform, connected to the code database, and runs and tests the trunk code according to a preset period or after the branch code is merged, records the error position of the trunk code, outputs the running test data of the trunk code, and sends an alarm message to the person in charge of the error position.
2. An integrated development system for chip design according to claim 1, characterized in that, The code running platform includes: A keyword trigger unit for storing preset keywords and triggering the creation of the branch to be merged and the merge task after receiving the preset keywords; and A first time-driven trigger unit, when the timing duration reaches a first preset period, triggers the creation of the branch to be merged and the merge task.
3. An integrated development system for chip design according to claim 1, characterized in that, Multiple merge tasks arrange priorities according to the task creation time, and the earlier the task creation time, the higher the task priority.
4. An integrated development system for chip design according to claim 1, characterized in that The integrated development system includes: A data management platform, connected to the code running platform, receiving the code running data of the code running platform, and the data management platform allows the code running platform to access by a token; and An error code management platform, connected to the code running platform, receiving the alarm message when the trunk code runs in error, wherein the error code management platform allows the code running platform to access by a token and allows the responsible person of the error code to log in.
5. The integrated development system for chip design according to claim 4, characterized in that, The token is stored in the running code of the integrated development system and is isolated and distributed from the running code.
6. The integrated development system for chip design according to claim 5, characterized in that, The integrated development system includes an automatic configuration module, which is enabled before chip design and configures the real-time information sharing interface of the code database, the account information allowed to access the code database, the task execution pipeline of the code running platform, and the information of the token for accessing the code database.
7. An integrated development system for chip design according to claim 4, characterized in that, The code running data includes the number of error vectors, the test project name, and the running test result of the trunk code, and the alarm message includes the error information of the error vector and the reproduction instruction.
8. An integrated development system for chip design according to claim 1, characterized in that, The task management module includes a second time-driven trigger unit, when the timing duration reaches a second preset period and there is no merge task being executed at the same time, the code running platform runs all the trunk code and outputs the code running data and the alarm message.
9. An integrated development system for chip design according to claim 1, characterized in that, The code checking module includes: The first-stage inspection unit, after the branch code is compiled, performs a smoke test, code quality inspection, code compliance inspection, and specific vector inspection on the branch code; and The second-stage inspection unit is started after the inspection of the first-stage inspection unit passes. The second-stage inspection unit checks the consistency between the branch code and the trunk code, and triggers the operation of the code merging module after the consistency check passes.
10. An integrated development method for chip design, characterized in that, It includes the following steps: Update the branch code and store the updated branch code in the code database; Under the trigger of an external operation, establish a branch to be merged and a merge task, and output the execution information of the merge task before the merge task is executed, where the branch code is stored in the branch to be merged; Before executing the merge task, review the branch code, and execute the merge task after the branch code passes the review; Obtain the trunk code and the branch code, and in the merge task, sequentially merge the branch code in the branch to be merged into the trunk code according to the chronological order of establishment of the multiple merge tasks; And Run the test on the trunk code at a preset cycle or after merging the branch code, record the error location of the trunk code, output the running test data of the trunk code, and send an alarm message to the person in charge of the error location.
Citation Information
Patent Citations
Keyword-driven software testing method and system
CN104965790A
An automatic software system quality inspection and rapid iteration method
CN109684215A
Control system based on DevOps platform
CN115794193A
Task management system
CN116452141A
Method, system and equipment for automatically compiling program and storage medium
CN119105763A