# Patent

## Title
Crosstalk analysis method

## Abstract

One implementation of the disclosure provides a crosstalk analysis method executed by a computer. The method includes steps of: executing a layout program; executing a crosstalk analysis program; acquiring, by the crosstalk analysis program, a plurality of parameters from a layout result generated by the layout program; estimating a crosstalk value according to the parameters; determining whether the crosstalk value is larger than a predetermined value; providing a layout suggestion table when the crosstalk value is larger than the predetermined value.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This Application is a continuation of pending U.S. patent application Ser. No. 13/958,813, filed on Aug. 5, 2013, which claims priority of Taiwan Patent Application No. 101128189, filed on Aug. 6, 2012, the entireties of which are incorporated by reference herein.


BACKGROUND
1. Field
The present disclosure relates to a crosstalk analysis method, and more particularly, to a crosstalk analysis method in a dual stripe line difference layer.
2. Description of the Related Art
Nowadays, lighter and thinner electronic products are a trend. The functions of electronic products are variable and complex. Due to the mechanical limitations and cost limitations of the electronic products, one way to achieve lighter and thinner electronic products, is to reduce the thickness of the printed circuit board of electronic products, while increasing the number of layers. However, these types of designs cause high speed signal interference on the printed circuit board. Thus, the quality of the electronic products manufactured thereby is not easily controlled and defects of the electronic products are not easily detected.
BRIEF SUMMARY OF THE DISCLOSURE
An embodiment of the disclosure provides a crosstalk analysis method executed by a computer. The method comprises steps of: executing a layout program; executing a crosstalk analysis program; acquiring, by the crosstalk analysis program, a plurality of parameters from a layout result generated by the layout program; estimating a crosstalk value according to the parameters; determining whether the crosstalk value is larger than a predetermined value; and generating a layout suggestion when the crosstalk value is larger than the predetermined value. Notably, the layout suggestion may relate to the entire layout or some line segments of the layout. In other embodiments, a routing suggestion replaces the layout suggestion.
Another embodiment of the disclosure provides a crosstalk analysis method executed by a computer. The method comprises steps of: executing a layout program; executing a crosstalk analysis program; acquiring, by the crosstalk analysis program, a plurality of parameters from a layout result generated by the layout program; estimating a crosstalk value according to the parameters; determining whether the crosstalk value is larger than a predetermined value; generating a layout suggestion when the crosstalk value is larger than the predetermined value.
A detailed description is given in the following embodiments with reference to the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
The present disclosure can be more fully understood by reading the subsequent detailed description and examples with references made to the accompanying drawings, wherein:
FIG. 1 is a schematic diagram showing a layout of dual stripeline difference layers.
FIG. 2 is a schematic diagram showing another layout of dual stripeline difference layers.
FIG. 3 is a schematic diagram showing a form format in a database that provides parameters for calculating a crosstalk according to an embodiment of the disclosure.
FIG. 4A is a flowchart of a crosstalk analysis method according to an embodiment of the disclosure.
FIG. 4B is a flowchart of a crosstalk analysis method according to another embodiment of the disclosure.
FIG. 5 shows an interface of a crosstalk analysis program according to an embodiment of the disclosure.
FIG. 5A shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 5B shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 5C shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 5D shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 6 is a flowchart for setting parameters for a crosstalk analysis according to an embodiment of the disclosure.
FIG. 7 shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 7A shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 7B shows an interface of a crosstalk analysis program according to another embodiment of the disclosure.
FIG. 8 is a schematic diagram showing a layout suggestion according to an embodiment of the disclosure.
FIG. 9 is a flowchart of a crosstalk analysis method according to another embodiment of the disclosure.
FIG. 10 is a schematic diagram of a crosstalk analysis device according to an embodiment of the disclosure.
FIG. 11 is a schematic diagram of a computer using the crosstalk analysis program.



DETAILED DESCRIPTION OF THE DISCLOSURE
The following description is of the best-contemplated mode of carrying out the disclosure. This description is made for the purpose of illustrating the general principles of the disclosure and should not be taken in a limiting sense. The scope of the disclosure is best determined by reference to the appended claims.
Of the current circuit designs, the dual stripeline difference layer design easily generates interference between lines. The interference is the so-called crosstalk. FIG. 1 is a schematic diagram showing a layout of dual stripeline difference layers. In FIG. 1, the layout of the dual stripeline difference layers comprises a first layer 11, a second layer 12 and an adhesion layer 13. When a first signal line in the first layer 11 and a second signal line in the second layer 12 transmit signals simultaneously, it easily causes crosstalk.
FIG. 2 is a schematic diagram showing another layout of dual stripeline difference layers. The parameters related to the crosstalk are explained in FIG. 2. In FIG. 2, a shift, a thickness and a relative distance exist between the signal line 21 and the signal line 22. The relative distance can be estimated by the following equation:

Relative Distance (mil)=(Shift{circumflex over (0 )}2+Thinkness{circumflex over (0)}2)^0.5

Furthermore, the crosstalk is related to trace widths of the signal lines 21 and 22, and a parallel length between the signal lines 21 and 22. Moreover a database storing parameters of each line segment of the layout may be created to reduce the time for estimating the crosstalk of each line segment. Please refer to FIG. 3. FIG. 3 is a schematic diagram showing a form in a database that provides parameters for calculating a crosstalk according to an embodiment of the disclosure. In FIG. 3, the operating voltage and the rise time are input by the engineer. The parameters of trace width, thickness, shift and parallel length can be provided by layout software. In another embodiment, the crosstalk analysis software acquires the parameters from the layout software. In other embodiments, the parameters can be obtained by the crosstalk analysis software. For example, when the layout software generates a layout, the crosstalk analysis software estimates the length of each line segment and a distance between any two line segments with the help of a coordinate system.
FIG. 4A is a flowchart of a crosstalk analysis method according to an embodiment of the disclosure. In step S41, the user sets the parameters required by a crosstalk analysis software. The parameters include trace width, shift and parallel length, name of the line segment, operating voltage, rise time and others. Simultaneously, in step S46, a database is created to store parameters for each crosstalk analysis. In step S42, the user executes a layout simulation program. When the user completes a layout design, the user compiles the layout design via the layout simulation program and then, step S43 is executed. In step S43, a crosstalk program is executed and the layout design is analyzed according to the parameters set in step S41. The crosstalk program may require the layout simulation program to provide the parameters. If necessary, the crosstalk program may require a user to input some parameters via a pop-out window generated by the crosstalk program.
In step S44, the crosstalk program estimates a crosstalk value of each line segment according to the parameters. An embodiment of a crosstalk estimation equation is provided in the following:

FXTLK(mV)=346+15.3*Relative Distance(mil)−161*Relative Distance(mil){circumflex over (0 )}0.5+7.21*Trace Width(mil)−3.40*Rise(ps){circumflex over (0 )}0.5+27.1*Work Voltage(V)+1.07*Parallel Length(mil){circumflex over (0 )}0.5

The meaning of each parameter is explained in the following.
FXTLK(mV): Far end crosstalk. Generally speaking, the amplitude of the far end crosstalk may affect the quality of signal clearly.
Relative Distance(mil): The distance between an interference source line and a signal line affected by the interference source line.
Trace Width(mil): The width of the interference source line.
Rise(ps): The rise time of the interference signal. The rise time is the duration for the voltage to be increased from 20% to 80% of the maximum voltage of the output voltage.
Working Voltage(V): The maximum voltage of the output voltage.
When step S44 is executed, the crosstalk program also executes step S47. The calculated results are stored in a crosstalk simulation database. For example, assuming the name of the circuit board designed by a user is Project_1, the crosstalk simulation database creates a database corresponding to the Project_1, and stores simulation results and parameters of the circuit board. In step S45, the crosstalk analysis program determines whether a crosstalk value of a line segment is larger than a predetermined value. If not, the crosstalk analysis of the line segments is finished. If the crosstalk value of the line segments is larger than a predetermined value, step S48 is executed. In step S48, the crosstalk analysis program shows an energy value of each line segment of the layout for an engineer to modify. In this embodiment, the crosstalk program and the layout program are executed simultaneously. The crosstalk program transmits specific parameters to the layout program and the layout program can label the line segment having a crosstalk value which is larger than the predetermined value in a different color. In another embodiment, the crosstalk program only shows the crosstalk values of the line segments having a crosstalk value which is larger than the predetermined value in the layout.
FIG. 4B is a flowchart of a crosstalk analysis method according to another embodiment of the disclosure. In step S401, the user sets the parameters required by a crosstalk analysis program. The parameters include trace width, shift and parallel length, name of the line segment, operating voltage, rise time and others. Simultaneously, in step S407, a database is created to store parameters for each crosstalk analysis. For example, the user can store crosstalk parameters of important signal lines or all the signal lines of a chipset in the database. When the user executes a crosstalk analysis program, the user can load the parameters of the chipset from the database automatically or manually. In this embodiment, the crosstalk parameters of other controller or circuit elements are also stored in the database.
In step S402, the user acquires a crosstalk analysis program to analyze the crosstalk values and provides layout suggestions or routing suggestions to reduce the crosstalk of the dual stripeline layout. In step S408, the user stores the layout suggestions or routing suggestions into a layout suggestion database for the engineer to modify the layout or routing. In step S403, the user uses a simulation analysis program and a layout program to analyze a layout. Then, in step S404, the user uses the simulation analysis program to analyze crosstalk of the dual stripeline layout.
The user can also create a crosstalk analysis result database of the dual stripeline layout in step S409. Therefore, the user can use previous analysis results as a baseline to analyze the current analysis result. For example, assuming a crosstalk value of a signal line was 8% for a previous analysis result, and is 10% for the current analysis result, the user has to determine whether the routing has to be modified for the current layout.
In step S405, the simulation analysis program determines whether the crosstalk of a signal in the layout is less than 10% or the crosstalk is less than corresponding value stored in the crosstalk analysis result database. If yes, the simulation analysis is finished. If not, step S406 is executed. In step S406, the layout engineer can modify the routing according to the layout suggestion or routing suggestion.
FIG. 5 shows an interface of a crosstalk analysis program according to an embodiment of the disclosure. The interface of the crosstalk analysis program mainly comprises five parts. The area 51 shows the analysis result of the crosstalk analysis program. When a crosstalk of a line segment is larger than a predetermined value, the related information of the line segments will be shown in area 51. The area 52 shows the information setting of the line segments to be analyzed. The area 53 shows the parameter setting of the line segments to be analyzed. The area 54 shows the commands of the crosstalk analysis program. For detail descriptions and explanations of areas 51-54, reference may be made to FIGS. 5A-5D.
FIG. 5A shows an interface of a crosstalk analysis program according to another embodiment of the disclosure. FIG. 5A described the functions in the area 51. The Victim Aggressor List shows the line segments having a larger crosstalk than a predetermined value. NR is a noise ratio. A user can set the NR threshold of line segments that will be shown in the Victim Aggressor List. The NR threshold may be less than 5%, between 5% and 10%, or more than 10%. In other words, the Victim Aggressor List shows the line segments having an NR that is less than 5%, more than 10% or between 5% and 10%. When the user selects the line segment in the Victim Aggressor List, the field INFOR and the information field at a right side show the information of the selected line segment.
FIG. 5B shows an interface of a crosstalk analysis program according to another embodiment of the disclosure. A user can select a signal to be analyzed via the fields in the FIG. 5B. A user can select the field “Check All Nets” to analyze all of the signals or input the name of signals that do not need to be analyzed in the field “Exclude Net Name”. In other embodiments, the user can directly input the signal or signal group to be analyzed. A user can use the field or function “Edit/Creak” to create signal groups.
FIG. 5C shows an interface of a crosstalk analysis program according to another embodiment of the disclosure. A user can set the layer having a signal line to be analyzed and the layer where an interference line is at via the fields Layer Pair 1 and Layer Pair 2. Furthermore, the user can input the thickness of each layer in the field “Dielectric Thickness”. The user can also input a first predetermined value of a parallel length of the signal line and the interference line. Only when the parallel length of the signal line and the interference line is larger than the first predetermined value, the crosstalk analysis is executed. The user can also set a second predetermined value of the signal line and the interference line and only when a shift value between the signal line and the interference line is larger than the second predetermined value, will the crosstalk analysis program analyze the signal line. The user can also set a third predetermined value of the signal line and the interference line and only when a distance value between the signal line and the interference line is less than the second predetermined value, will the crosstalk analysis program analyze the signal line.
FIG. 5D shows an interface of a crosstalk analysis program according to another embodiment of the disclosure. FIG. 5D shows some commands of the crosstalk analysis program. A user can use the “BACK UP” command to back up the analysis result or load a previous analysis result via a “LOAD” command. When the user finishes setting the parameters required for the crosstalk analysis program, the user clicks the “CHECK: button to start the analysis.
FIG. 6 is a flowchart for setting parameters for a crosstalk analysis according to an embodiment of the disclosure. In step S61, a parameter match function is executed. The crosstalk analysis program executes the function according to the name of the circuit that the user wants to analyze. In step S62, the crosstalk analysis determines whether the database contains matched data. If yes, step S63 is executed and the crosstalk analysis program automatically loads and sets corresponding parameters. If not, step S64 is executed. In step S64, a parameter setting function is executed. In step S65, the user selects the signal name and inputs corresponding parameters in step S66. The input parameters may be the parameters listed in FIG. 3. In step S67, the input parameters are stored in a database. In step S68, the crosstalk analysis program stores the user's input parameters.
FIG. 7 shows an interface of a crosstalk analysis program according to another embodiment of the disclosure. Note that only a schematic diagram is shown in FIG. 7 and reference may be made to FIGS. 7A and 7B for further detail. The following paragraph describes the meaning of the fields according to the operation of a crosstalk analysis program. First, the user loads the parameter configuration file set in FIG. 6 via the field 71 (Imo/Exo). Then, the user inputs the name of the signal that needs not be analyzed via the field 72 (Exclude Net Name). Next, the user sets the layers where the signal to be analyzed is at and corresponding parameters via field 73. In the field 74, the user sets or modifies the parameters of the signal. After setting the parameters, the user clicks the CHECK button in FIG. 7B to execute the crosstalk analysis.
After the crosstalk analysis is completed, the analysis results are shown in FIG. 7A. Field 75 is provided to set the line segment to be shown in the Victim Aggressor List. A user can set the Victim Aggressor List to show the line segments having an NR that is less than 5%, more than 10% or between 5% and 10%. When an option “Failed NR” is selected, the crosstalk analysis program filters the analysis result and shows line segments having a larger crosstalk than a threshold, such as 5%. The Victim Aggressor List shows the line segments having a larger crosstalk than a predetermined value. NR is a noise ratio. The “Seg Length” in field 77 checks the line segments having a parallel length that is longer than 200 mils and determines whether the routing needs to be changed. Y means the routing needs to be changed and N means the routing doesn't need to be changed. The “INFO” in field 78 and the information field at the right side show information related to the signal selected in field 76.
The Victim Aggressor List shows the line segments having a larger crosstalk than a predetermined value. NR is a noise ratio. A user can set a NR threshold of line segments that will be shown in the Victim Aggressor List. The NR threshold may be less than 5%, between 5% and 10% or more than 10%. In other words, the Victim Aggressor List shows the line segments having an NR that is less than 5%, more than 10% or between 5% and 10%. When the user selects the line segment in the Victim Aggressor List, the field INFOR and the information field at the right side show the information of the selected line segment.
FIG. 8 is a schematic diagram showing a layout suggestion according to an embodiment of the disclosure. The field 81 shows the routing that should be avoided. The field 82 shows the suggested layout or routing by the crosstalk analysis program. The routing comprises an angle of the signal line and a minimum distance between the signal line and the interference source line.
FIG. 9 is a flowchart of a crosstalk analysis method according to another embodiment of the disclosure. In step S91, the user first sets the parameters required by the crosstalk analysis program. The parameters include trace width, shift and parallel length, name of the line segment, operating voltage, rise time and others. In step S92, the user executes a layout simulation program. When the user completes a layout design, the user compiles the layout design via the layout simulation program and step S93 is executed simultaneously. In step S93, a crosstalk analysis program is executed and acquires values of the parameters set in step S91 from the layout simulation program. If any parameter value needs to be input by the user, a window pops up for the user.
In step S94, the crosstalk analysis program calculates a crosstalk value of each line segment according to the received parameters.
In step S95, the crosstalk analysis program determines whether a crosstalk value of a line segment is larger than a predetermined value. If not, the crosstalk analysis of the line segment is finished. If the crosstalk value of the line segment is larger than a predetermined value, step S96 is executed. In step S96, the crosstalk analysis program first determiners whether the line segment is on an exclusion list. The exclusion list records at least one line segment which does not need to be analyzed by the crosstalk analysis program. If the line segment is on the exclusion list, the crosstalk analysis is finished. If not, step S97 is executed. In step S97, the crosstalk analysis program labels the line segment and shows a layout suggestion and related parameters. In this embodiment, the crosstalk program and the layout program are executed simultaneously. The crosstalk program transmits specific parameters to the layout program and the layout program can label the line segment having a crosstalk value which is larger than the predetermined value in a different color.
FIG. 10 is a schematic diagram of a crosstalk analysis device according to an embodiment of the disclosure. The crosstalk analysis device comprises a layout module 101 and a crosstalk analysis module 102. Notably, the layout module 101 and the crosstalk analysis module 102 may be implemented by hardware or a program, list of codes or software executed by a processor or a controller. The layout module 101 generates a layout according to input data of a user. The crosstalk analysis module 102 receives the layout and executes a crosstalk analysis program. The crosstalk analysis module 102 comprises a data acquisition module 103 and an analysis module 104. The data acquisition module 103 acquires parameters from a layout generated by the layout module 101 and transmits the received parameters to the analysis module 104 for processing. Notably, the described module may be implemented by hardware or a program, list of codes or software executed by a processor or a controller.
FIG. 11 is a schematic diagram of a computer using the crosstalk analysis program according to an embodiment of the disclosure. The computer 110 comprises a processor 111, a layout program 112 and a crosstalk analysis program 113. The layout program 112 and the crosstalk analysis program 113 are executed by the processor. When the layout program 112 compiles a layout, the crosstalk program is activated and acquires necessary parameters from the layout generated by the layout program 112 or input by the user. Then, the crosstalk analysis program 113 executes crosstalk analysis according to the received parameters and provides a layout suggestion.
While the disclosure has been described by way of example and in terms of the preferred embodiments, it is to be understood that the disclosure is not limited to the disclosed embodiments. To the contrary, it is intended to cover various modifications and similar arrangements (as would be apparent to those skilled in the art). Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.

## Claims

1. A crosstalk analysis method, comprising:
using a computer to perform the following:
executing a layout program;
executing a crosstalk analysis program;
acquiring, by the crosstalk analysis program, a plurality of parameters from a layout result generated by the layout program;
estimating a crosstalk value according to the parameters;
determining whether the crosstalk value is larger than a predetermined value;
providing a layout suggestion table when the crosstalk value is larger than the predetermined value;
fabricating an integrated circuit using the layout result and the layout suggestion table; and
creating a database for storing the parameters by units of project, wherein the crosstalk analysis program provides an interface showing information of the layout result, and the interface includes a first area arranged to display the parameters of the lines from the layout result, the first area comprises a first field and a second field, wherein the first field is arranged to be provided to set the line to be shown in the second field, and the first area further comprises a third field arranged to show a plurality of line segments of the selected line displayed on the second field and the corresponding information of the line segments.

2. The method as claimed in claim 1, wherein the layout suggestion table comprises at least one layout-parameter set corresponding to at least one line segment, the crosstalk value of the line segment is larger than the predetermined value, and the layout-parameter set comprises a plurality of layout parameters.

3. The method as claimed in claim 2, wherein the layout parameters of each of the layout-parameter sets are arranged to be provided for users to re-arrange the line segment to cause the crosstalk value of the line segment re-arranged with the layout parameters to be less than the predetermined value.

4. The method as claimed in claim 3, wherein the layout parameters of each of the layout-parameter sets comprise an angle of the line segments and a minimum distance between the line segment and an interference source.

5. The method as claimed in claim 3, wherein the parameters comprise a horizontal displacement, a vertical displacement, a relative distance between the interference line segment and the first line segment, a layout layer of the first line segment and a width of the line segment.

6. The method as claimed in claim 2, wherein the crosstalk value is caused by a signal coupling between an interference line segment and the line segment.

7. A crosstalk analysis method, comprising:
using a computer to perform the following:
executing a layout program;
executing a crosstalk analysis program;
setting a plurality of parameters;
creating a database for storing the parameters by units of project;
selecting a first line segment;
acquiring values of the parameters corresponding the first line segment;
estimating a crosstalk value of the first line segment according to the values;
determining whether the crosstalk value is larger than a predetermined value;
generating a layout suggestion table when the crosstalk value is larger than the predetermined value; and
fabricating an integrated circuit using the layout result and the layout suggestion Table,
wherein the crosstalk analysis program provides an interface showing information of the layout result, and the interface includes a first area arranged to display the parameters of the lines from the layout result, the first area comprises a first field and a second field, wherein the first field is arranged to be provided to set the line to be shown in the second field, and the first area further comprises a third field arranged to show a plurality of line segments of the selected line displayed on the second field and the corresponding information of the line segments.

8. The method as claimed in claim 7, wherein the layout suggestion table comprises at least one layout-parameter set corresponding to the first line segment, and the layout-parameter set comprises a plurality of layout parameters.

9. The method as claimed in claim 8, wherein the layout parameters of each of the layout-parameter sets are arranged to be provided for users to re-arrange the first line segment to cause the crosstalk value of the first line segment re-arranged with the layout parameters to be less than the predetermined value.

10. The method as claimed in claim 9, wherein the layout parameters of each of the layout-parameter sets comprise an angle of the line segments and a minimum distance between the line segment and an interference source.

11. The method as claimed in claim 9, wherein the parameters comprise a horizontal displacement, a vertical displacement, a relative distance between the interference line segment and the first line segment, a layout layer of the first line segment and a width of the first line segment.

12. The method as claimed in claim 8, wherein the crosstalk value is caused by a signal coupling between an interference line segment and the first line segment.