CN111241781A - ECO method and device - Google Patents
ECO method and device Download PDFInfo
- Publication number
- CN111241781A CN111241781A CN201911424431.XA CN201911424431A CN111241781A CN 111241781 A CN111241781 A CN 111241781A CN 201911424431 A CN201911424431 A CN 201911424431A CN 111241781 A CN111241781 A CN 111241781A
- Authority
- CN
- China
- Prior art keywords
- eco
- netlist
- command
- user
- difference points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000013515 script Methods 0.000 claims abstract description 52
- 238000013461 design Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 10
- 238000012795 verification Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000008439 repair process Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
The ECO method and the ECO device comprise the steps of obtaining a first net list and a second net list, obtaining difference points in the first net list and the second net list, representing the difference points by using a logic cone form, correspondingly displaying the difference points and the logic cone, obtaining an ECO command input by a user, generating an ECO script according to the ECO command, and operating the ECO script. In the technical scheme, the difference points of the first netlist and the second netlist are obtained and are expressed in the form of logic cones, an ECO script is determined and input manually based on the difference points and the logic cones, the ECO script is operated to complete ECO, the efficiency is higher than that of manual ECO, and because the script is compiled manually, compared with an ECO tool, unnecessary logic can be manually distinguished, redundant codes are avoided, the completion degree is favorably improved, and the script is compiled manually under the prompt of the logic cones, the accuracy is high, so that the accuracy cannot be reduced even if the script is manually participated in ECO.
Description
Technical Field
The present application relates to the field of integrated circuits, and in particular, to an ECO method and apparatus.
Background
With the development of technology, integrated circuits are widely used in various industries, and particularly, an important requirement is an integrated circuit with complete functions and no design errors, so that verification of the integrated circuit becomes an important link in the design flow of the integrated circuit.
In the design flow of the asic, after the asic progresses to the physical implementation node, if the function needs to be modified due to verification finding out an RTL (Register transfer level) design defect, in Order to reduce the iteration cycle of the modification process, usually, an ECO (Engineering Change Order) mode is used for netlist modification.
The conventional ECO modes comprise manual ECO and automatic ECO, the manual ECO completely depends on the familiarity of a designer to the design and the network report understanding degree after the synthesis and physical realization, the designer is required to have rich experience, the ECO quantity and the realization difficulty cannot be too high, otherwise, the ECO cannot be completed by manually modifying a netlist, and meanwhile, the accuracy of the ECO is ensured. Therefore, manual ECO is limited to simply modifying the connection relationships or explicit logical expressions in the netlist. Automatic ECO under the condition that the difference of the new netlist and the old netlist is complex, the iteration cycle is long, and even the ECO cannot be completed due to the fact that the ECO is too complex.
How to improve the efficiency and accuracy of the ECO becomes a problem to be solved urgently in the current engineering realization.
Disclosure of Invention
The application provides an ECO method and device, and aims to solve the problem of how to improve the efficiency and accuracy of ECO.
In order to achieve the above object, the present application provides the following technical solutions:
a method of ECO comprising:
acquiring a first net list and a second net list, wherein the first net list is a net list generated according to a first requirement, the second net list is a net list generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed;
obtaining difference points in the first netlist and the second netlist, and representing the difference points by using a logic cone form;
correspondingly displaying the difference points and the logic cones;
acquiring an ECO command input by a user, wherein the ECO command is determined by the user based on the difference points and the logic cone;
generating an ECO script according to the ECO command;
and running the ECO script.
Optionally, after the obtaining of the ECO command input by the user, the method further includes:
and executing the ECO command, and displaying the operation result of the ECO command on the first netlist.
Optionally, the correspondingly displaying the difference point and the logic cone includes:
and correspondingly displaying the difference points and the logic cones according to the sequence of the number of the logic cones from small to large.
Optionally, the obtaining the ECO command input by the user includes:
sequentially receiving the ECO commands input to the difference points one by the user according to the sequence;
the executing the ECO command and displaying the execution result of the ECO command on the first netlist comprises:
after receiving a display instruction of the user, operating an increment ECO command, and adding an operation result of the increment ECO command to a display result, wherein the increment ECO command is the ECO command input by the user since the ECO command was operated last time, and the display result is the display result of the ECO command input by the user after the ECO command was operated last time.
Optionally, the method further includes:
acquiring distinguishing information of a first RTL file and a second RTL file, wherein the first RTL file is an RTL file of the first netlist, and the second RTL file is an RTL file of the second netlist;
and updating the SVF file of the first netlist according to the distinguishing information to obtain the SVF file of the second netlist.
An apparatus of an ECO, comprising:
the device comprises a first obtaining unit and a second obtaining unit, wherein the first obtaining unit is used for obtaining a first net list and a second net list, the first net list is a net list generated according to a first requirement, the second net list is a net list generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed;
the second obtaining unit is used for obtaining difference points in the first netlist and the second netlist and representing the difference points by using a logic cone form;
the display unit correspondingly displays the difference points and the logic cones;
a third obtaining unit, configured to obtain an ECO command input by a user, where the ECO command is determined for the user based on the difference point and the logic cone;
the generating unit is used for generating an ECO script according to the ECO command;
a first running unit for running the ECO script.
Optionally, the method further includes: and the second operation unit is used for operating the ECO command and displaying an operation result of the ECO command on the first netlist.
Optionally, the displaying unit is configured to correspondingly display the difference point and the logic cone, and includes:
the display unit is specifically configured to correspondingly display the difference points and the logic cones in an order from small to large according to the number of the logic cones.
Optionally, the third obtaining unit is configured to obtain an ECO command input by a user, and includes:
the third obtaining unit is specifically configured to sequentially receive the ECO commands input by the user to the difference points one by one according to the sequence;
the second operation unit is configured to execute the ECO command and display an operation result of the ECO command on the first netlist, and includes: the second operation unit is specifically configured to, after receiving a display instruction of the user, operate an incremental ECO command, and add an operation result of the incremental ECO command to a display result, where the incremental ECO command is the ECO command input by the user after the ECO command is operated last time, and the display result is the display result of the ECO command input by the user after the ECO command is operated last time.
Optionally, the method further includes: a fourth obtaining unit, configured to obtain difference information between a first RTL file and a second RTL file, where the first RTL file is an RTL file of the first netlist and the second RTL file is an RTL file of the second netlist; and updating the SVF file of the first netlist according to the distinguishing information to obtain the SVF file of the second netlist.
The method and the device comprise the steps of obtaining a first net list and a second net list, obtaining difference points in the first net list and the second net list, representing the difference points by using a logic cone form, correspondingly displaying the difference points and the logic cone, obtaining an ECO command input by a user, determining the ECO command for the user based on the difference points and the logic cone, generating an ECO script according to the ECO command, and operating the ECO script. In the technical scheme, the difference points of the first netlist and the second netlist are obtained and are expressed in the form of the logic cone, the ECO script is determined and input manually based on the difference points and the logic cone, the ECO script is operated to complete the ECO, the efficiency is higher than that of manual ECO, and because the script is compiled manually, compared with an ECO tool, unnecessary logic can be manually distinguished, redundant codes are avoided, the completion degree is improved, and the script is compiled manually under the prompt of the logic cone, the accuracy is high, so that the accuracy cannot be reduced even if the script is manually participated in the ECO.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a flow chart of a method of ECO as disclosed in embodiments herein;
FIG. 2 is a flow chart of yet another method of ECO as disclosed in embodiments herein;
FIG. 3 is a schematic structural diagram of an ECO apparatus according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of an apparatus disclosed in an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The ECO method provided by the application belongs to the field of functional ECO.
Fig. 1 is a method for ECO provided in an embodiment of the present application, and the method may include the following steps:
s101, obtaining a first netlist and a second netlist.
In this step, the first netlist is a netlist generated according to a first requirement, the second netlist is a netlist generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed. The first requirement and the second requirement are requirements of a user for realizing a target design for the functions of the integrated circuit, and the netlist is used for describing the connection relation between circuit elements. In this embodiment, the first netlist is referred to as an old netlist, and the second netlist is referred to as a new netlist.
In this embodiment, the specific process of obtaining the first netlist includes receiving a first requirement file imported by a user, performing RTL development on the first requirement file to obtain an RTL code, verifying the RTL code to ensure that the function of the RTL code matches with the requirement, and finally performing logic synthesis on the verified RTL code to obtain the first netlist. The process of obtaining the second netlist is the same as the process of obtaining the first netlist, and the detailed process of obtaining the netlist according to requirements can refer to the prior art.
S102, obtaining difference points in the first netlist and the second netlist, and representing the difference points by using a logic cone form.
Because the second requirement is a requirement after the first requirement is changed, and the netlist is obtained according to the requirement, difference points inevitably exist in the first netlist and the second netlist, and the difference points are different points of the connection relationship of the circuit elements of the first netlist relative to the second netlist. In this embodiment, specifically, the difference points between the old netlist and the new netlist can be obtained through formal verification between the old netlist and the new netlist, and the difference points are represented in a logic stack form. Furthermore, the difference points between the old netlist and the new netlist can be obtained by calling a formal verification tool.
It should be noted that at least one logical stack is required for representing one difference, that is, there may be a plurality of logical stacks representing the same difference point. The difference points are represented in a logical stack form, so that a subsequent user can write an ECO command for modifying the difference points according to the logical stack. Further, the difference points may be represented in a logical cone in a formal verification tool.
In this embodiment, specifically, the prior art may be referred to in a manner of determining difference points between an old netlist and an old netlist by formal verification and representing difference points in a logic stack form.
And S103, correspondingly displaying the difference points and the logic cones.
One way to implement this step may be to correspondingly display the difference points and the logic cones in the order from the small number of the logic cones to the large number of the logic cones. The number of the logical cones refers to, for one difference point, the number of the logical cones representing the difference point. Because the difference points are different, the number of logical cones representing the difference points may also be different. In this step, for example, the difference point and the logical pile may be correspondingly displayed in a list form.
And S104, acquiring an ECO command input by a user.
The ECO command is determined by the user based on the difference points and the logic cone, and the user can write the ECO command for modifying the difference points according to the displayed difference points and the logic cone because the logic cone comprises information for indicating the user how to modify the difference points.
In this embodiment, because the difference points and the logic cones are correspondingly displayed in the order from small to large according to the number of the logic cones, the user can input the ECO commands to the difference points one by one according to the displayed order. Correspondingly, the specific way of acquiring the ECO command input by the user is as follows: and sequentially receiving ECO commands input to the difference points one by the user according to the display sequence.
And S105, generating an ECO script according to the ECO command.
One way to implement this step may be to integrate the ECO commands input by the user according to the input sequence of each ECO command to obtain an ECO script.
And S106, running the ECO script.
And after obtaining the ECO script, running the ECO script so as to complete the ECO.
The method provided by the embodiment automatically acquires the difference points of the netlist, expresses the difference points in the form of the logic cone, manually determines and inputs the ECO script based on the difference points and the logic cone, runs the ECO script to complete the ECO, and has higher efficiency than manual ECO.
With reference to fig. 1, fig. 2 illustrates another ECO method provided in the embodiment of the present application, which includes steps S201 to S207 shown in fig. 2, and is different from the embodiment in that: after the step of acquiring the ECO command input by the user, the present embodiment adds the step S205: and executing the ECO command and displaying the operation result of the ECO command on the first netlist.
In this embodiment, the specific manner of running the ECO command and displaying the running result of the ECO command on the first netlist is as follows: and after receiving a display instruction of a user, operating the increment ECO command, and adding an operation result of the increment ECO command to a display result. The incremental ECO command is the ECO command input by the user since the ECO command was run last time, and the display result is the display result of the ECO command input by the user after the ECO command was run last time.
In this embodiment, because the difference points and the logic cones are correspondingly displayed in the order from small to large according to the number of the logic cones, the user can input the ECO commands of the difference points one by one according to the display order, and after the ECO commands are input, in order to determine whether the input ECO commands are correct, the operation of displaying the ECO commands can be performed. After receiving a display instruction input by a user, the system operates an ECO command input by the user and displays an operation result. Because the ECO command is a command for modifying the difference point of the first netlist relative to the second netlist, the operation result of the ECO command on the first netlist is displayed, so that a user can confirm whether the input ECO command is accurate through the operation result, and if the operation result cannot realize the required function, the ECO command can be timely adjusted.
Meanwhile, because the difference points and the logic cones are correspondingly displayed according to the sequence from small to large of the number of the logic cones, a user can write the ECO commands of a plurality of difference points from the difference point with the minimum number of the logic cones and then select the ECO commands to operate together. In addition, the incremental ECO command of the difference point is operated each time from the difference point with the minimum number of the logic cones, and the display result of the incremental ECO command is added, so that the operation and display duration of the incremental ECO command can be reduced.
According to the embodiment provided by the application, after the ECO script is obtained, the ECO script can be operated by adopting a comprehensive tool to obtain the net list after ECO, and the net list is physically realized, so that the Tapout data which can be used after ECO can be obtained. The prior art can be referred to in the process of obtaining the Tapout data by physically realizing the netlist.
It should be noted that, the netlist after ECO only introduces the logic modified according to the requirement into the first netlist which is physically realized, and since the physical design process is not required for the second netlist, the first netlist is repaired by ECO, and the whole design can be completed only by performing partial physical design iteration on ECO, so that the time spent on physical design is greatly reduced compared with the time spent on physical design based on the second netlist. After the ECO operation is completed, the subsequent work is performed according to the normal design flow.
In a real scene of developing an integrated circuit, when an integrated circuit project enters a physical implementation stage, the whole project is in a time convergence state, but when a condition that a function needs to be repaired due to a major defect of RTL design occurs, the function can be repaired in a short time by operating an ECO script corresponding to a difference point of a new netlist and an old netlist without returning to a starting point of the project to rearrange the whole project, so that a large amount of project development time is saved.
Optionally, in the embodiment provided by the application, before generating the ECO script, the difference information between the first RTL file and the second RTL file may be further obtained, and the SVF file of the first netlist is updated according to the difference information to obtain the SVF file of the second netlist. The first RTL file is an RTL file of the first netlist, and the second RTL file is an RTL file of the second netlist.
Since the RTL file is a file that matches the requirement designed by the user, in this embodiment, the second requirement is a requirement after updating the first requirement, so there must be distinguishing information between the second RTL file that matches the second requirement and the first RTL file that matches the first requirement.
In this embodiment, in order to obtain the SVF file of the second netlist, the SVF file of the first netlist may be modified by using the difference information between the first RTL file and the second RTL file, so that the modified SVF file and the second RTL file have a mapping relationship, and the modified SVF file is used as the SVF file of the second netlist. Specifically, the prior art can be referred to a manner of modifying the SVF file by using the distinguishing information.
The following describes a specific application process of the method provided by the present application, taking a design flow of an asic as an example.
Step A1, the user designs the first requirement of the application specific integrated circuit according to the function realization target of the application specific integrated circuit, and inputs the first requirement after the design into the device with ECO function.
Step a2, the ECO-enabled device receives a first requirement of the initial design input by the user, and starts to execute a process of generating a first netlist according to the first requirement and physically implementing the first netlist.
Step a3, in any link of the device from the first requirement to the first netlist and performing physical implementation, if the user needs to improve the function of the integrated circuit, in such a case, the user may modify the first requirement of the initial design to obtain a second requirement, and input the second requirement into the device with the ECO function.
Step a4, after the device receives the second requirement input by the user, the same second netlist is obtained according to the second requirement. And performing formal verification on the original first netlist and the original second netlist to obtain difference points of the two netlists, and representing the difference points in a logic stack form. And then correspondingly displaying the difference points and the logic piles on a front-end interface in a list form according to the sequence of the number of the logic piles from small to large. Meanwhile, an input box of the ECO command and an icon for running the ECO command are included on the interface.
It should be noted that, during the process of performing step a4, the device still performs the steps of step a2 at the same time, that is, after the user inputs the second requirement, the process of continuing to physically implement the first netlist by the device is not affected.
Step a5, the user inputs an ECO command in the input box of the ECO command according to the difference points and the logic heap displayed correspondingly, it should be noted that the ECO command input by the user may be a difference point command or multiple different point commands, and after the user inputs the ECO command, the user can send an instruction for operating the ECO command to the device by clicking an icon for operating the ECO command on the front-end interface.
And step A6, after receiving the command of the user for running the ECO command, the device runs the ECO command, and displays the running result of the ECO command on the first netlist and the second netlist on the front-end interface.
Step A7, the user can judge whether the inputted ECO command is correct by comparing the running result of the ECO command on the first netlist with the second netlist, if not, the user can delete the error ECO command, input the adjusted ECO command in the input box of the ECO command again, and check the running result after clicking the icon of the ECO command. And the user inputs an ECO command through repeated adjustment and clicks the icon for operating the ECO command until the operation result displayed on the front-end interface is consistent with the information content of the second netlist, so that the modification of the difference points can be determined to be completed, and the modified icon is determined on the front-end interface by clicking to indicate that the modification of the equipment is completed.
Step A8, after the device receives the modified instruction, integrating the ECO command input by the user into an ECO script, running the ECO script to obtain a net list after ECO, and physically realizing the net list to obtain Tapout data after ECO.
In step a9, the user can start the manufacturing of the asic according to the last output Tapout data.
According to the application scenario provided by the embodiment of the application, even if the integrated circuit project enters a physical implementation stage and the function of the integrated circuit needs to be modified, the function can be repaired in a short time by running the ECO script corresponding to the difference point of the new netlist and the old netlist without returning to the starting point of the project to rearrange the whole project, so that a large amount of project development time is saved.
In summary, in the technical solution, a formal verification tool is used to obtain difference points of the first netlist and the second netlist, the difference points are expressed in a logic cone form in the tool, a script corresponding to a certain difference point is generated during a repair process based on the logic cone repair difference manually, after all the difference points are repaired, all the repair scripts are unified and synthesized to generate a final version ECO script, and the ECO script is executed in the synthesis tool to complete an ECO operation. Compared with manual ECO, the method has high efficiency, and because the script is compiled by manual operation, compared with the method completely depending on an ECO tool, the method can manually discriminate unnecessary repair actions, and avoid that the repair cycle is too long and even the ECO operation cannot be completed due to tool breakdown caused by more modification differences. The technical scheme is favorable for improving the completion degree, and the script writing, the iteration and the confirmation are gradually completed manually in the formal verification tool, so that the accuracy of the finally-produced ECO script is high, and the final efficiency cannot be reduced although the ECO script is manually participated in.
It should be noted that the above-used tools may be invoked by writing a script. The script and the tool form a functional module to realize the technical scheme.
Corresponding to the method of an ECO provided in the embodiment of the present application, referring to fig. 3, a schematic structural diagram of an ECO apparatus 300 according to an embodiment of the present invention is shown, including:
a first obtaining unit 301, configured to obtain a first netlist and a second netlist, where the first netlist is a netlist generated according to a first requirement, the second netlist is a netlist generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed;
a second obtaining unit 302, configured to obtain a difference point in the first netlist and the second netlist, and represent the difference point by using a logic cone;
a display unit 303, which correspondingly displays the difference points and the logic cones;
a third obtaining unit 304, configured to obtain an ECO command input by a user, where the ECO command is determined for the user based on the difference point and the logic cone;
a generating unit 305, configured to generate an ECO script according to the ECO command;
a first running unit 306, configured to run the ECO script.
The above apparatus further comprises: and a second running unit 307, configured to run the ECO command, and show a running result of the ECO command on the first netlist. A fourth obtaining unit 308, configured to obtain difference information between a first RTL file and a second RTL file, where the first RTL file is an RTL file of the first netlist and the second RTL file is an RTL file of the second netlist; and updating the SVF file of the first netlist according to the distinguishing information to obtain the SVF file of the second netlist.
The specific implementation manner of the display unit 303 correspondingly displaying the difference points and the logic cones is as follows: and correspondingly displaying the difference points and the logic cones according to the sequence of the number of the logic cones from small to large.
The third obtaining unit obtains 304 the ECO command input by the user, and the specific implementation manner is as follows: and sequentially receiving the ECO commands input to the difference points one by the user according to the sequence.
The second operation unit 307 executes the ECO command, and shows a specific implementation manner of an operation result of the ECO command on the first netlist is as follows: after receiving a display instruction of the user, operating an increment ECO command, and adding an operation result of the increment ECO command to a display result, wherein the increment ECO command is the ECO command input by the user since the ECO command was operated last time, and the display result is the display result of the ECO command input by the user after the ECO command was operated last time.
The device provided by the embodiment automatically acquires the difference points between the new netlist and the old netlist, and expresses the difference points in a logic cone form, the ECO script is determined and input manually based on the difference points and the logic cone, the ECO script is operated to complete the ECO, the efficiency is higher than that of manual ECO, and because the script is compiled manually, compared with an ECO tool, unnecessary logic can be manually screened, redundant codes are avoided, the completion degree is favorably improved, and the script is compiled manually under the prompt of the logic cone, the accuracy is high, so that the accuracy is not reduced although the ECO is manually participated.
An embodiment of the present invention further provides an electronic device 400, a schematic structural diagram of which is shown in fig. 4, and the electronic device specifically includes: a processor 401 and a memory 402, the memory 402 being for storing programs; the processor 401 is configured to run a program to implement the method of ECO in the embodiment of the present application.
Embodiments of the present invention further provide a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a computer, the computer is caused to execute the method of the ECO in the embodiments of the present application.
The functions described in the method of the embodiment of the present application, if implemented in the form of software functional units and sold or used as independent products, may be stored in a storage medium readable by a computing device. Based on such understanding, part of the contribution to the prior art of the embodiments of the present application or part of the technical solution may be embodied in the form of a software product stored in a storage medium and including several instructions for causing a computing device (which may be a personal computer, a server, a mobile computing device or a network device) to execute all or part of the steps of the method described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The embodiments are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same or similar parts among the embodiments are referred to each other.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (10)
1. A method of ECO, comprising:
acquiring a first net list and a second net list, wherein the first net list is a net list generated according to a first requirement, the second net list is a net list generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed;
obtaining difference points in the first netlist and the second netlist, and representing the difference points by using a logic cone form;
correspondingly displaying the difference points and the logic cones;
acquiring an ECO command input by a user, wherein the ECO command is determined by the user based on the difference points and the logic cone;
generating an ECO script according to the ECO command;
and running the ECO script.
2. The method of claim 1, further comprising, after said obtaining the user-entered ECO command:
and executing the ECO command, and displaying the operation result of the ECO command on the first netlist.
3. The method of claim 2, wherein the correspondence exposing the difference points and the logical cones comprises:
and correspondingly displaying the difference points and the logic cones according to the sequence of the number of the logic cones from small to large.
4. The method of claim 3, wherein the obtaining the user-entered ECO command comprises:
sequentially receiving the ECO commands input to the difference points one by the user according to the sequence;
the executing the ECO command and displaying the execution result of the ECO command on the first netlist comprises:
after receiving a display instruction of the user, operating an increment ECO command, and adding an operation result of the increment ECO command to a display result, wherein the increment ECO command is the ECO command input by the user since the ECO command was operated last time, and the display result is the display result of the ECO command input by the user after the ECO command was operated last time.
5. The method according to any one of claims 1-4, further comprising:
acquiring distinguishing information of a first RTL file and a second RTL file, wherein the first RTL file is an RTL file of the first netlist, and the second RTL file is an RTL file of the second netlist;
and updating the SVF file of the first netlist according to the distinguishing information to obtain the SVF file of the second netlist.
6. An ECO apparatus, comprising:
the device comprises a first obtaining unit and a second obtaining unit, wherein the first obtaining unit is used for obtaining a first net list and a second net list, the first net list is a net list generated according to a first requirement, the second net list is a net list generated according to a second requirement, and the second requirement is a requirement after the first requirement is changed;
the second obtaining unit is used for obtaining difference points in the first netlist and the second netlist and representing the difference points by using a logic cone form;
the display unit correspondingly displays the difference points and the logic cones;
a third obtaining unit, configured to obtain an ECO command input by a user, where the ECO command is determined for the user based on the difference point and the logic cone;
the generating unit is used for generating an ECO script according to the ECO command;
a first running unit for running the ECO script.
7. The apparatus of claim 6, further comprising: and the second operation unit is used for operating the ECO command and displaying an operation result of the ECO command on the first netlist.
8. The apparatus of claim 7, wherein the presentation unit is configured to correspondingly present the difference point and the logical cone, and comprises:
the display unit is specifically configured to correspondingly display the difference points and the logic cones in an order from small to large according to the number of the logic cones.
9. The apparatus according to claim 8, wherein the third obtaining unit is configured to obtain an ECO command input by a user, and includes:
the third obtaining unit is specifically configured to sequentially receive the ECO commands input by the user to the difference points one by one according to the sequence;
the second operation unit is configured to execute the ECO command and display an operation result of the ECO command on the first netlist, and includes: the second operation unit is specifically configured to, after receiving a display instruction of the user, operate an incremental ECO command, and add an operation result of the incremental ECO command to a display result, where the incremental ECO command is the ECO command input by the user after the ECO command is operated last time, and the display result is the display result of the ECO command input by the user after the ECO command is operated last time.
10. The apparatus of any one of claims 6-9, further comprising: a fourth obtaining unit, configured to obtain difference information between a first RTL file and a second RTL file, where the first RTL file is an RTL file of the first netlist and the second RTL file is an RTL file of the second netlist; and updating the SVF file of the first netlist according to the distinguishing information to obtain the SVF file of the second netlist.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911424431.XA CN111241781A (en) | 2019-12-31 | 2019-12-31 | ECO method and device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911424431.XA CN111241781A (en) | 2019-12-31 | 2019-12-31 | ECO method and device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN111241781A true CN111241781A (en) | 2020-06-05 |
Family
ID=70874165
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201911424431.XA Pending CN111241781A (en) | 2019-12-31 | 2019-12-31 | ECO method and device |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111241781A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116050309A (en) * | 2021-12-31 | 2023-05-02 | 海光信息技术股份有限公司 | Digital circuit design method, device, electronic equipment, storage medium |
| TWI871828B (en) * | 2023-09-20 | 2025-02-01 | 台灣積體電路製造股份有限公司 | Method of designing an integrated circuit, non-transitory computer-readable medium, and computer-implemented system for making a design change to an integrated circuit |
| CN120671610A (en) * | 2025-08-20 | 2025-09-19 | 奇捷科技(深圳)有限公司 | DFT ECO system and method |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5867396A (en) * | 1995-08-31 | 1999-02-02 | Xilinx, Inc. | Method and apparatus for making incremental changes to an integrated circuit design |
| US20050091627A1 (en) * | 2003-10-23 | 2005-04-28 | Lalita Satapathy | Comparison of two hierarchical netlist to generate change orders for updating an integrated circuit layout |
| CN102129493A (en) * | 2011-03-02 | 2011-07-20 | 福州瑞芯微电子有限公司 | Method for realizing automated ECO (Engineering Change Order) netlist in digital IC (Integrated Circuit) design process |
| US20120144353A1 (en) * | 2010-12-06 | 2012-06-07 | Kamdar Chetan C | Method for Implementing Timing Point Engineering Change Orders in an Integrated Circuit Design Flow |
| CN109145517A (en) * | 2018-10-08 | 2019-01-04 | 华大半导体有限公司 | A kind of chip design ECO method of save the cost |
-
2019
- 2019-12-31 CN CN201911424431.XA patent/CN111241781A/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5867396A (en) * | 1995-08-31 | 1999-02-02 | Xilinx, Inc. | Method and apparatus for making incremental changes to an integrated circuit design |
| US20050091627A1 (en) * | 2003-10-23 | 2005-04-28 | Lalita Satapathy | Comparison of two hierarchical netlist to generate change orders for updating an integrated circuit layout |
| US20120144353A1 (en) * | 2010-12-06 | 2012-06-07 | Kamdar Chetan C | Method for Implementing Timing Point Engineering Change Orders in an Integrated Circuit Design Flow |
| CN102129493A (en) * | 2011-03-02 | 2011-07-20 | 福州瑞芯微电子有限公司 | Method for realizing automated ECO (Engineering Change Order) netlist in digital IC (Integrated Circuit) design process |
| CN109145517A (en) * | 2018-10-08 | 2019-01-04 | 华大半导体有限公司 | A kind of chip design ECO method of save the cost |
Non-Patent Citations (1)
| Title |
|---|
| LEI ZHANG;CHANDLER MEI;: "IC设计后优化阶段对大型工程变更单的处理" * |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116050309A (en) * | 2021-12-31 | 2023-05-02 | 海光信息技术股份有限公司 | Digital circuit design method, device, electronic equipment, storage medium |
| CN116050309B (en) * | 2021-12-31 | 2025-08-22 | 海光信息技术股份有限公司 | Design methods, devices, electronic devices, and storage media for digital circuits |
| TWI871828B (en) * | 2023-09-20 | 2025-02-01 | 台灣積體電路製造股份有限公司 | Method of designing an integrated circuit, non-transitory computer-readable medium, and computer-implemented system for making a design change to an integrated circuit |
| CN120671610A (en) * | 2025-08-20 | 2025-09-19 | 奇捷科技(深圳)有限公司 | DFT ECO system and method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107239392B (en) | Test method, test device, test terminal and storage medium | |
| KR20140009297A (en) | Formatting data by example | |
| CN117707983A (en) | Test case code generation method and related equipment | |
| CN111241781A (en) | ECO method and device | |
| CN113177020A (en) | Data processing method and device | |
| CN114091383B (en) | Test sequence generation method, device, system and related equipment | |
| CN118312414A (en) | Chip automatic verification method, electronic device, storage medium and product | |
| CN102722382B (en) | Method and the emulator of list item is loaded in simulation process | |
| CN112052157A (en) | Test message construction method, device and system | |
| US6978216B2 (en) | Testing of integrated circuits from design documentation | |
| US7949509B2 (en) | Method and tool for generating simulation case for IC device | |
| JP2010267209A (en) | Verification support program, verification support apparatus, and verification support method | |
| CN113779918A (en) | SoC simulation method, apparatus, computing device and computer storage medium | |
| CN108334313A (en) | Continuous integrating method, apparatus and code management system for large-scale SOC research and development | |
| CN117435483A (en) | Form tool-based simulation verification excitation generation method, device, medium and terminal | |
| CN113033137B (en) | Method and device for establishing digital component model and server | |
| CN117555792A (en) | Test code generation method and device | |
| CN117574811A (en) | Efficient simulation methods, devices and electronic equipment for single event effects in integrated circuits | |
| JP6318976B2 (en) | DEBUG CIRCUIT, DEBUGGER DEVICE, SEMICONDUCTOR DEVICE, AND DEBUG METHOD | |
| CN116306399A (en) | Verification platform generation method, device, medium and equipment | |
| CN106445826A (en) | Preparing method and producing device of differential package | |
| JP2012168661A (en) | Verification support program, verification support device, and verification support method | |
| JP5120103B2 (en) | Debugging method and debugging program | |
| CN120278113B (en) | Layout constraint testing method, device, equipment and storage medium | |
| CN117893638B (en) | Method, device, equipment and storage medium for generating timing diagram of fusion state machine |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200605 |
|
| WD01 | Invention patent application deemed withdrawn after publication |