Abstract:
The layout verification apparatus includes: a verification unit for obtaining mask data indicating a mask pattern to be drawn on a mask based on layout and wiring data indicating positions of a group of primitive cells and positions of connection wires connected to the group of primitive cells, and for verifying a position of the mask pattern based on the mask data, so as to detect an error part; and a correction hint creating unit for creating correction hint information based on the error part, and for sending the correction hint information to a layout and wiring unit for correcting the layout and wiring data. The correction hint creating unit obtains terminal information indicating positions of a group of terminals included in the group of primitive cells and creates the correction hint information based on the terminal information so that the positions of the group of terminals are not changed by the layout and wiring unit.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to a layout verification apparatus, a layout apparatus, a layout verification method, a layout verification program, and a wiring forming method. 
         [0003]    2. Description of the Related Art 
         [0004]    When a circuit such as a semiconductor integrated circuit is manufactured, a layout pattern thereof is designed first. After that, a photomask (hereinafter, referred simply to as a mask) is created based on the layout pattern. A pattern drawn on the mask is transferred onto a substrate, and thus an actual circuit is obtained. 
         [0005]    When the layout pattern is designed, in the first place, positions of a group of primitive cells are determined, and positions of a group of wirings connecting the primitive cells are determined so that a desired circuit operation may be obtained. Thus, layout and wiring data is obtained. A pattern drawn on the mask is not always identical to a pattern formed actually on the substrate due to various factors including an optical proximity effect and the like. Therefore, it is verified whether or not a desired pattern is obtained by using the layout and wiring data. Further, based on a result of the verification, the layout and wiring data is corrected. After that, final verification is performed about whether or not signal communication timings become desired timings. If there is no problem, the layout and wiring data is output as the layout pattern. 
         [0006]    A technology related to verification and correction of the layout and wiring data is described in Japanese Patent Application Laid-open No. 2007-12687 (hereinafter, referred to as Patent Document 1). Patent Document 1 describes a design assistance system for a semiconductor integrated circuit, which includes: layout means for determining a layout of a chip by defining a plurality of regions in the chip and layouting and connecting cells, wires, and via holes automatically in each region; production easiness analyzing means for analyzing production easiness of the layout based on an occurrence frequency of defect patterns calculated for each region by reading out defect pattern information and verifying the same with a result of the layout determination; and layout correcting means for correcting the layout of the cells, the wires, and the via holes in the region after selectively extracting the region having the occurrence frequency that is a predetermined value or higher. 
         [0007]    In the design assistance system described in Patent Document 1, the result of the determination of the read layout is verified with information of defect patterns when the occurrence frequency of the defect patterns is computed. For performing the verification, it is necessary to prepare the defect pattern information in advance that indicates which layout result becomes a defect pattern. However, it is difficult to cover completely the layout results to be the defect patterns. Therefore, it is considered that the result of the layout determination may include a defect pattern that is not prepared. In this case, the defect part is overlooked. In other words, it is difficult to perform accurate verification by the technology of Patent Document 1. 
         [0008]    In order to perform accurate verification, it is considered to simulate a shape of the pattern that is actually formed and to detect the defect part based on a result of the simulation.  FIG. 1  is a conceptional diagram illustrating an example of a method of detecting the defect part based on a result of the simulation. 
         [0009]    As illustrated in  FIG. 1 , in the first place, a place and route (P&amp;R) tool is used for performing automatic layout and wiring, and hence layout and wiring data  101  is obtained. The layout and wiring data  101  indicates a position of a primitive cell  102  and a position of a connection wire  104  to be connected to the primitive cell. The primitive cell  102  includes a terminal  103 . 
         [0010]    Next, mask data is created based on the layout and wiring data  101 , and the mask data is supplied to a verification tool. Here, the mask data is data indicating patterns drawn on the mask. The information indicating a position of the primitive cell is not necessary for the mask data and therefore is eliminated. The verification tool performs an optical proximity correction (OPC) process based on the mask data. As a result of the OPC process, the mask data is delivered as post-OPC data  105 . In the post-OPC data  105 , a region corresponding to the connection wire  104  and a region corresponding to the terminal  103  are both expressed as a wiring pattern  106 . 
         [0011]    After that, a shape of the pattern that is actually formed on the substrate is simulated based on the post-OPC data  105  so that post-simulation data  107  is obtained. Based on the post-simulation data  107 , verification of an error part is performed. In the example illustrated in  FIG. 1 , there is a narrow space between the wiring pattern  106  and the neighboring pattern in a part of the regions. Such the region is detected as an error part  109 . Based on the error part  109 , a correction hint  108  is created so that the position of the wiring pattern  106  is changed. In this case, the correction hint  108  is created independently of the position of the primitive cell  102 . The correction hint  108  is sent as a notice from the verification tool to the P&amp;R tool. 
         [0012]    The P&amp;R tool corrects the layout and wiring data  101  based on the correction hint  108 . In this case, if the position of the terminal  103  in the primitive cell  102  is changed, the signal communication timing may be shifted so that the final timing verification may not be performed. Therefore, the position of the terminal  103  may not be changed during the correction. However, as described above, the correction hint  108  is created independently of the position of the primitive cell  102 . Therefore, the correction hint  108  for moving the position of the terminal  103  may be created. Such the case may not be supported only by correction of the wiring, and therefore the layout of the primitive cell  102  should be performed again. Otherwise, the pattern itself in the primitive cell  102  should be created again. Redoing the layout or the creation of the primitive cell  102  causes an increase of turn around time (TAT). 
         [0013]    In other words, there is a problem that if the method of detecting the defect part based on the mask data is used, it becomes difficult to correct the layout and wiring data without changing the position of the terminal included in the primitive cell. 
       SUMMARY 
       [0014]    A layout verification apparatus according to the present invention includes: verification means for obtaining mask data indicating a mask pattern to be drawn on a mask based on layout and wiring data indicating positions of a group of primitive cells and positions of connection wires connected to the group of primitive cells, and for verifying a position of the mask pattern based on the mask data, so as to detect an error part; and correction hint creating means for creating correction hint information based on the error part, and for sending the correction hint information to layout and wiring means for correcting the layout and wiring data. The correction hint creating means creates the correction hint information based on terminal information indicating positions of a group of terminals included in the group of primitive cells so that the positions of the group of terminals are not changed by the layout and wiring means. 
         [0015]    According to the present invention, the correction hint creating means creates the correction hint information based on the terminal information. Therefore, it is possible to recognize the position at which the terminal exists when the correction hint is created. Thus, it is possible to create the correction hint such that the position of the terminal is not changed. As a result, the layout and wiring data may be corrected without changing the position of the terminal. Thus, the layout and wiring data may be corrected without redoing the layout of the primitive cell. 
         [0016]    A layout apparatus according to the present invention includes: the above-mentioned layout verification apparatus; and layout and wiring means for correcting positions of the connection wires in the layout and wiring data based on the correction hint information, so as to output the corrected data as wiring layout data. 
         [0017]    A layout verification method according to the present invention includes: obtaining, by a computer, mask data indicating positions of mask regions that are masked when wirings are formed based on layout and wiring data indicating positions of a group of primitive cells and positions of connection wires connected to the group of primitive cells, and verifying the positions of the mask regions based on the mask data, so as to detect an error part; creating, by the computer, correction hint information based on the error part; and sending, by the computer, the correction hint information to layout and wiring means for correcting the layout and wiring data. The creating the correction hint information includes creating the correction hint information based on terminal information indicating positions of a group of terminals included in the group of primitive cells so that the positions of the group of terminals are not changed by the layout and wiring means. 
         [0018]    A layout verification program according to the present invention is a program for realizing, by using a computer, the above-mentioned layout verification method. 
         [0019]    A wiring forming method according to the present invention includes: correcting positions of the connection wires in the layout and wiring data based on the correction hint information that is sent by the above-mentioned layout verification method, so as to create wiring layout data; manufacturing a mask based on the wiring layout data; and forming wirings by using the mask. 
         [0020]    According to the present invention, it is possible to provide a layout verification apparatus, a layout apparatus, a layout verification program, and a wiring forming method, each of which enables correction of the layout and wiring data without changing the position of the terminal even if the method of detecting the defect part based on a result of the simulation is used. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0021]    In the accompanying drawings: 
           [0022]      FIG. 1  is a conceptional diagram illustrating a correction method; 
           [0023]      FIG. 2  is a functional block diagram illustrating a layout apparatus; 
           [0024]      FIG. 3  is a flowchart illustrating a layout verification method; 
           [0025]      FIG. 4  is a conceptional diagram illustrating a method of creating a correction hint; 
           [0026]      FIG. 5  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0027]      FIG. 6  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0028]      FIG. 7A  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0029]      FIG. 7B  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0030]      FIG. 8  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0031]      FIG. 9A  is a conceptional diagram illustrating the method of creating the correction hint; 
           [0032]      FIG. 9B  is a conceptional diagram illustrating the method of creating the correction hint; and 
           [0033]      FIG. 9C  is a conceptional diagram illustrating the method of creating the correction hint. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0034]    Now, an embodiment of the present invention is described with reference to the attached drawings.  FIG. 2  is a schematic block diagram illustrating a layout apparatus  11  according to this embodiment. 
         [0035]    As illustrated in  FIG. 2 , the layout apparatus  11  includes a layout and wiring processing portion  6  for performing a layout and wiring process, and a layout verification apparatus  10  for performing verification of the layout. The layout verification apparatus  10  includes a verification portion  5  and a correction hint creating portion  4 . The verification portion  5  includes an optical proximity correction (OPC) portion  1 , a lithography simulation portion  2 , and an error detection portion  3 . 
         [0036]    The layout and wiring processing portion  6  and the layout verification apparatus  10  are realized by central processing means (CPU) executing a layout program installed in a computer. In particular, the layout verification apparatus  10  is realized by a layout verification program contained in the layout program. In addition, the layout program is copied from a storage medium such as a digital versatile disk (DVD) and is stored in a read only memory (ROM) of the computer. 
         [0037]      FIG. 3  is a flowchart illustrating a layout verification method according to this embodiment. 
         [0038]    Step S 10 ; Perform Layout and Wiring Process 
         [0039]    The layout and wiring processing portion  6  performs the layout of a group of primitive cells and the wiring among the primitive cells, and creates the layout and wiring data. Specifically, the layout and wiring processing portion  6  obtains circuit information and refers to a cell library so as to perform the layout and the wiring. The circuit information indicates a group of functional circuits (logic circuits or the like) to be used and a connection relationship among the functional circuits, and the circuit information is prepared in advance. The cell library is a database indicating a pattern forming each of the functional circuits as the primitive cell. The primitive cell is set for each functional circuit. The cell library is also prepared in advance similarly to the circuit information. 
         [0040]    The layout and wiring data created by the layout and wiring processing portion  6  is converted into mask data and is sent to the layout verification apparatus  10 . The mask data is information indicating a mask pattern to be drawn on a photomask. The mask data is information indicating a region to be shielded from light when exposure is performed and a region through which light may pass when the exposure is performed. In the mask data, the information indicating the position of the primitive cell is lost, and the mask pattern is expressed as graphic data. As the mask data, there is GDS2 data for example. 
         [0041]    Step S 20 ; Perform OPC Process 
         [0042]    In the layout verification apparatus  10 , the OPC portion  1  performs OPC with respect to the mask data, and creates post-OPC data. The post-OPC data is also graphic data similarly to the mask data. The post-OPC data is sent to the lithography simulation portion  2 . 
         [0043]    Step S 30 ; Perform Lithography Simulation 
         [0044]    The lithography simulation portion  2  obtains the post-OPC data and refers to lithography model information so as to perform lithography simulation. The lithography simulation portion  2  determines a shape of the pattern that is actually formed. The determined shape is sent as post-simulation data to the error detection portion  3 . The post-simulation data is also graphic data similarly to the mask data. Note that the lithography model information includes information indicating a parameter that affects a shape of the pattern that is actually formed. For instance, the lithography model information includes information indicating step conditions or the like in the lithography step. 
         [0045]    Step S 40 ; Detect Error 
         [0046]    The error detection portion  3  detects an error part based on the post-simulation data.  FIG. 4  is a conceptional diagram illustrating an example of an operation of the error detection portion  3 .  FIG. 4  illustrates patterns  18  indicated in the post-simulation data. The error detection portion  3  computes a space SP formed between the patterns  18 . If the space SP is smaller than a threshold value that is set in advance, the part is detected as an error part  8 . The error detection portion  3  sends the detected error part  8  associated with its position to the correction hint creating portion  4 . In addition, the post-simulation data is also sent from the error detection portion  3  to the correction hint creating portion  4 . 
         [0047]    Step S 50 ; Acquire Terminal Information 
         [0048]    Then, the correction hint creating portion  4  obtains terminal information from the layout and wiring processing portion  6 . The terminal information indicates a position of a terminal included within the primitive cell. 
         [0049]    Step S 60 ; Create Correction Hint Information 
         [0050]    Next, the correction hint creating portion  4  creates the correction hint information indicating the correction hint, based on the error part  8 . In this case, the correction hint creating portion  4  recognizes a part of the post-lithography-simulation data corresponding to the terminal as a terminal pattern based on the terminal information. In addition, the correction hint creating portion  4  recognizes parts other than the part corresponding to the terminal as a wiring pattern. Then, the correction hint creating portion  4  creates the correction hint information so that the position of the terminal pattern is not changed. The created correction hint information is sent to the layout and wiring processing portion  6 . 
         [0051]    Step S 70 ; Correct Layout and Wiring Data 
         [0052]    Next, the layout and wiring processing portion  6  performs correction of the layout and wiring data based on the obtained correction hint information. Here, the position of the terminal is not changed, and hence the layout and wiring processing portion  6  changes only the position of the wiring that connects the primitive cells. Therefore, the layout and wiring data may be corrected without redoing the layout of the primitive cell. 
         [0053]    Steps S 80  and S 90 ; Is There Any Error? 
         [0054]    Next, based on the corrected layout and wiring data, the process from Step S 20  to Step S 40  is performed again, and the error detection portion  3  performs the detection of the error part again. If no error part is detected, the process of the final timing verification and the like is performed with respect to the layout and wiring data, and then layout data is output (Step S 90 ). The output layout data is used for producing a photomask. The mask pattern drawn on the produced photomask is transferred onto the substrate when the actual circuit is manufactured. Thus, the actual circuit is manufactured. On the other hand, if an error part is detected in Step S 80 , the process of Step S 10  and the subsequent steps is performed. 
         [0055]    As described above, according to this embodiment, the correction hint creating portion  4  obtains the terminal information so as to recognize which part in the graphic data (post-simulation data) is the pattern corresponding to the terminal. Thus, the correction hint creating portion  4  may create the correction hint information so that the position of the terminal part is not changed. As a result, when the layout and wiring data is corrected, it is not necessary to redo the layout of the primitive cell. Thus, the layout and wiring data may be corrected without increasing the TAT. 
         [0056]    Next, an operation of the correction hint creating portion  4  creating the correction hint information is described in detail. 
         [0057]    First, an operation performed when the error part  8  is detected between the wiring patterns is described.  FIG. 5  is a conceptional diagram illustrating an example of the post-simulation data. In  FIG. 5 , the full line indicates a pattern shape after the simulation, and the broken line indicates a pattern shape before the simulation. As illustrated in  FIG. 5 , it is supposed that the space between a first wiring pattern  9 - 1  and a second wiring pattern  9 - 2  is narrow in the post-simulation data and that the error part  8  is detected between the first wiring pattern  9 - 1  and the second wiring pattern  9 - 2 . 
         [0058]    In this case, the correction hint creating portion  4  recognizes a wiring pattern  9 - 3  that is adjacent to the first wiring pattern  9 - 1  except for the second wiring pattern  9 - 2 . The correction hint creating portion  4  determines a length of a space L 1  formed between the wiring pattern  9 - 3  and the first wiring pattern  9 - 1 . In addition, the correction hint creating portion  4  recognizes a wiring pattern  9 - 4  that is adjacent to the second wiring pattern  9 - 2  except for the first wiring pattern  9 - 1 . The correction hint creating portion  4  determines a length of a space L 2  formed between the wiring pattern  9 - 4  and the first wiring pattern  9 - 2 . Then, the correction hint creating portion  4  compares the length of the space L 1  with the length of the space L 2 . If the length of the space L 1  is larger than the length of the space L 2 , the correction hint creating portion  4  creates a correction hint  12  so that a position of the first wiring pattern  9 - 1  is changed. On the other hand, if the length of the space L 2  is larger than the length of the space L 1 , the correction hint creating portion  4  creates the correction hint  12  so that a position of the second wiring pattern  9 - 2  is changed. In the example illustrated in  FIG. 5 , the length of the space L 1  is larger than the length of the space L 2 . Therefore, the correction hint  12  is created so that the first wiring pattern  9 - 1  is moved toward the wiring pattern  9 - 3 . 
         [0059]    As the length of the space between neighboring wiring patterns is smaller, a short circuit may occur more easily. Therefore, if the position of the second wiring pattern  9 - 2  is changed in the example illustrated in  FIG. 5 , the error part  8  is cancelled, but a new error (short circuit) may occur between the second wiring pattern  9 - 2  and the wiring pattern  9 - 4 . In contrast, if the wiring pattern having a larger space with the neighboring wiring pattern (first wiring pattern  9 - 1  in  FIG. 5 ) is moved, the probability of occurrence of a new error may be lowered, and hence the layout and wiring data may be corrected more securely. 
         [0060]    Next, an operation performed when the error part  8  is detected between the terminal pattern and the wiring pattern is described.  FIG. 6  is a conceptional diagram illustrating an example of the post-simulation data. As illustrated in  FIG. 6 , it is supposed that the space between a first terminal pattern  14 - 1  and a third wiring pattern  9 - 5  is narrow and that the error part  8  is detected between the first terminal pattern  14 - 1  and the third wiring pattern  9 - 5 . 
         [0061]    In the case of the example illustrated in  FIG. 6 , the correction hint creating portion  4  creates the correction hint  12  so that the position of the third wiring pattern  9 - 5  is changed. Thus, when the correction is performed, the position of the part corresponding to the third wiring pattern  9 - 5  is changed while the part corresponding to the first terminal pattern  14 - 1  is not changed in the layout and wiring data. 
         [0062]    Next, an operation performed when the error part  8  is detected between the terminal patterns is described.  FIG. 7A  is a conceptional diagram illustrating an example of the post-simulation data. 
         [0063]    It is supposed that the error part  8  is detected between a third terminal pattern  14 - 2  and a fourth terminal pattern  14 - 3  as illustrated in  FIG. 7A . In this case, the correction hint creating portion  4  recognizes a wiring pattern that is connected to the third terminal pattern  14 - 2  or the fourth terminal pattern  14 - 3  as a fourth wiring pattern  9 - 6 . In the example illustrated in  FIG. 7A , the wiring pattern that is connected to the fourth terminal pattern  14 - 3  is recognized as the fourth wiring pattern  9 - 6 . Then, the correction hint creating portion  4  creates the correction hint information so that the position of a part corresponding to the fourth wiring pattern  9 - 6  is changed in the layout and wiring data. 
         [0064]    Specifically, the correction hint creating portion  4  refers to data before the simulation (mask data or post-OPC data) so as to recognize a pattern  9 - 6 * corresponding to the fourth wiring pattern  9 - 6 . Then, the correction hint creating portion  4  changes the position of the pattern  9 - 6 * in the mask data to be correction candidates  16 ( 1 ) to  16 (n) as illustrated in  FIG. 7B . The correction hint creating portion  4  performs the lithography simulation with the lithography simulation portion  2  on each of the mask data (or post-OPC data) that is changed to be the correction candidates  16 ( 1 ) to  16 (n), so as to determine a space SimError ( 1 ) to (n) formed between the third terminal pattern  14 - 2  and the fourth terminal pattern  14 - 3 . The correction hint creating portion  4  creates the correction hint  12  so that the wiring corresponding to the pattern  9 - 6  is changed to be the correction candidate  16  when SimError becomes minimum in the layout and wiring data, and sends the same to the layout and wiring processing portion  6 . 
         [0065]    Note that the lengths and line widths of the correction candidates  16 ( 1 ) to  16 (n) are determined based on the pattern  9 - 6 *. Specifically, the pattern  9 - 6 * extends linearly from the terminal part and is bent at a midpoint. Therefore, the correction hint creating portion  4  determines the length from the terminal part to the bent part of the pattern  9 - 6 * as a length L. In addition, the correction hint creating portion  4  determines the line width of the pattern  9 - 6  as a line width W. Then, the correction hint creating portion  4  sets the correction candidate  16  so that the line width and the length become W and L, respectively. 
         [0066]    As illustrated in  FIG. 7A , if the error part  8  is detected between the terminal pattern  14  and the terminal pattern  14 , it seems difficult to cancel the error because the terminal pattern  14  may not be moved. However, a shape of the terminal that is actually formed may be changed by changing the position of the wiring connected to the terminal. Therefore, if the position of the wiring part connected to the terminal is changed in the layout and wiring data, the layout and wiring data may be corrected more securely. 
         [0067]    Next, another operation performed when the error part  8  is detected between the terminal patterns is described.  FIG. 8  is a conceptional diagram illustrating an example of the post-simulation data. 
         [0068]    It is supposed that the error part  8  is detected between a fourth terminal pattern  14 - 4  and a fifth terminal pattern  14 - 5  as illustrated in  FIG. 8 . In addition, it is supposed that the wiring pattern  9  is not connected to the fourth terminal pattern  14 - 4  and the fifth terminal pattern  14 - 5 . In this case, the correction hint creating portion  4  recognizes the wiring pattern  9  that is adjacent to the fourth terminal pattern  14 - 4  as a fourth neighboring pattern  9 - 7 . In addition, the correction hint creating portion  4  recognizes the wiring pattern  9  that is adjacent to the fifth terminal pattern  14 - 5  as a fifth neighboring pattern  9 - 8 . Further, the correction hint creating portion  4  determines any one of the fourth neighboring pattern  9 - 7  and the fifth neighboring pattern  9 - 8  as an alteration wiring pattern. The correction hint creating portion  4  creates the correction hint information so that the position of the part corresponding to the alteration wiring pattern is changed in the layout and wiring data. 
         [0069]    Specifically, the correction hint creating portion  4  determines a line width W 4  of the fourth neighboring pattern  9 - 7  and a line width W 5  of the fifth neighboring pattern  9 - 8 . In addition, the correction hint creating portion  4  determines a space SP 1 - 1  formed between the fourth neighboring pattern  9 - 7  and the fourth terminal pattern  14 - 4 , and a space SP 1 - 2  formed between the fifth neighboring pattern  9 - 8  and the fifth terminal pattern  14 - 5 . In addition, the correction hint creating portion  4  recognizes the wiring pattern  9 , which is adjacent to the fourth neighboring pattern  9 - 7  and is not the fourth terminal pattern  14 - 4 , as a fourth pattern  9 - 9 . Similarly, the correction hint creating portion  4  recognizes the wiring pattern  9 , which is adjacent to the fifth neighboring pattern  9 - 8  and is not the fifth terminal pattern  14 - 5 , as a fifth pattern  9 - 10 . Then, the correction hint creating portion  4  determines a space SP 2 - 1  formed between the fourth neighboring pattern  9 - 7  and the fourth pattern  9 - 9 , and a space SP 2 - 2  formed between the fifth neighboring pattern  9 - 8  and the fifth pattern  9 - 10 . 
         [0070]    Each of the determined values W 4 , W 5 , SP 1 - 1 , SP 1 - 2 , SP 2 - 1 , and SP 2 - 2  is a parameter that affects the shape of the terminal pattern  14  in the post-simulation data. Therefore, the correction hint creating portion  4  decides which one of the fourth neighboring pattern  9 - 7  and the fifth neighboring pattern  9 - 8  should be set as the alteration wiring pattern based on these parameters. Specifically, the correction hint creating portion  4  computes an evaluation score X-4 for the fourth neighboring pattern  9 - 7  and an evaluation score X-5 for the fifth neighboring pattern  9 - 8  in accordance with the following equations (1) and (2). 
         [0000]        X -4=(α W 4 +γSP 2-1)/β SP 1-1   Equation (1); 
         [0000]        X -5=(α W 5 +γSP 2-2)/β SP 1-2   Equation (2); 
         [0071]    In Equations (1) and (2), α denotes a parameter indicating a weight of the line width W, β denotes a parameter indicating a weight of SP 1 - 1  or SP 1 - 2 , and γ denotes a parameter indicating a weight of SP 2 - 1  or SP 2 - 2 . The parameters are set in advance in a random access memory (RAM) or the like. It is preferable that the weights have a relationship of “γ&gt;β&gt;α”. 
         [0072]    The correction hint creating portion  4  compares the evaluation score X-4 with the evaluation score X-5, and creates the correction hint information so that the position of the part corresponding to the wiring pattern  9  having a larger value is changed in the layout and wiring data. 
         [0073]    As illustrated in  FIG. 8 , if the error part  8  is detected between a terminal pattern and another terminal pattern, and the terminal pattern and the another terminal pattern are not connected to the wiring pattern, it is considered to be difficult to cancel the error part  8 . However, as described above, the shape of the terminal pattern  14  in the post-simulation data may be changed by taking into account the line widths W (W 4  and W 5 ), the spaces SP 1  (SP 1 - 1  and SP 1 - 2 ), and the spaces SP 2  (SP 2 - 1  and SP 2 - 2 ), and hence the layout and wiring data may be corrected more securely. In this case, if the widths W (W 4  and W 5 ) are large while the neighboring spaces SP 1  (SP 1 - 1  and SP 1 - 2 ) are small, the corresponding wiring pattern  9  is moved with high priority because that wiring pattern  9  may cause a short circuit or the like with high probability. In addition, if the spaces SP 2  (SP 2 - 1  and SP 2 - 2 ) are large, the corresponding wiring pattern  9  is moved with high priority because that wiring pattern  9  may be easily moved. 
         [0074]    Note that, in the example described above, the correction hint creating portion  4  creates the correction hint information by taking into account all the line widths W (W 4  and W 5 ), the spaces SP 1  (SP 1 - 1  and SP 1 - 2 ), and the spaces SP 2  (SP 2 - 1  and SP 2 - 2 ). However, it is possible to create the correction hint information by taking into account only the line widths W (W 4  and W 5 ). Similarly, it is also possible to create the correction hint information by taking into account only the spaces SP 1  (SP 1 - 1  and SP 1 - 2 ) or to create the correction hint information by taking into account only the spaces SP 2  (SP 2 - 1  and SP 2 - 2 ). 
         [0075]    Then, an operation is described with regard to the case where the error part  8  is detected between one wiring pattern and another wiring pattern, and the one wiring pattern is connected to the terminal pattern.  FIG. 9A  is a conceptional diagram illustrating an example of the post-simulation data. 
         [0076]    As illustrated in  FIG. 9A , it is supposed that the error part  8  is detected between a wiring pattern  9 - 11  and a wiring pattern  9 - 12 . In addition, it is supposed that the wiring pattern  9 - 11  is connected to a terminal pattern  14 - 6 . 
         [0077]    In this case, the correction hint creating portion  4  creates the correction hint  12  so that the connection between a part corresponding to the wiring pattern  9 - 11  and a part corresponding to the terminal pattern  14 - 6  is maintained in the layout and wiring data. Specifically, as illustrated in  FIG. 9B , the correction hint creating portion  4  creates the correction hint  12  so that a connection part and a correction direction between a part  9 - 11 * corresponding to the wiring pattern  9 - 11  and a part  14 - 6 * corresponding to the terminal pattern  14 - 6  are changed in the layout and wiring data. Alternatively, the correction hint creating portion  4  creates the correction hint  12  so that the position of a part  9 - 12 * corresponding to the wiring pattern  9 - 12  is changed as illustrated in  FIG. 9C . 
         [0078]    In the case of the example illustrated in  FIG. 9A , if the part  9 - 11 * corresponding to the wiring pattern  9 - 11  is moved in the layout and wiring data, the connection with the part  14 - 6 * corresponding to the terminal pattern  14 - 6  may be cut off depending on the moving direction. On the contrary, if the correction hint  12  is created so that the connection is maintained as described above, it is possible to prevent the connection from being cut off. 
         [0079]    As described above, according to this embodiment, the correction hint creating portion  4  obtains the terminal information and creates the correction hint based on the terminal information so that the position of the terminal is not changed. Therefore, despite that the verification is performed based on the mask data that does not contain the information indicating the position of the primitive cell, the layout and wiring data may be corrected without changing the position of the primitive cell. As a result, it is not necessary to create the pattern included in the primitive cell again or to redo the layout of the primitive cell, and hence TAT may be reduced.