Method for automatically arranging parts and automatic part arrangement program

The automatic part placement method optimizes semiconductor chip arrangement by using stretch and array settings to reduce user burden and computational load, addressing inefficiencies in existing methods.

JP7702927B2Active Publication Date: 2025-07-04MITSUBISHI ELECTRIC CORP
View PDF 16 Cites 0 Cited by

Patent Information

Application Number
JP2022154719
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-09-28
Publication Date
2025-07-04
Estimated Expiration
2042-09-28

AI Technical Summary

Technical Problem

Existing methods for automatically arranging semiconductor parts in semiconductor chips for power devices face challenges such as increased user burden and computational load due to complex geometric arrangements and small coordinate intervals, leading to inefficient placement processes.

Method used

An automatic part placement method that involves acquiring part boundary conditions, placement orders, and boundary line conditions, followed by stretch and array settings to optimize placement, reducing user burden and computational load.

Benefits of technology

The method efficiently arranges semiconductor parts with reduced user settings and computational load, achieving optimal placement similar to manual methods while minimizing gaps and time, thus improving chip design efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007702927000001
    Figure 0007702927000001
  • Figure 0007702927000002
    Figure 0007702927000002
  • Figure 0007702927000003
    Figure 0007702927000003
Patent Text Reader

Abstract

To provide an automatic part arrangement method that reduces a burden of setting for automatic part arrangement on a user and places less load on a computer.SOLUTION: An automatic part arrangement method comprises a part condition acquisition step (a) of acquiring a part boundary condition; a part arrangement order acquisition step (b) of obtaining an arrangement order in an arrangement area; a boundary line acquisition step (c) of acquiring a boundary line boundary condition indicating a boundary part; a stretch setting confirmation step (d) of confirming whether the part has stretch setting; a continuous arrangement confirmation step (e) of confirming whether or not continuous arrangement is possible on the boundary line of the part; a stretching step (f) of stretching, on the basis of a length of the border line, the part by an integral number of times from original part size to create a stretch part; a part arrangement step (g) that arranges the stretch part; and an updating step (h) of updating, after the part arrangement step, the boundary line and the boundary line boundary condition. By repeating steps (a) to (h), a plurality of types of parts can be automatically arranged in the arrangement area.SELECTED DRAWING: Figure 26
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method for automatically arranging parts, and more particularly, to a method for automatically arranging a plurality of types of semiconductor parts constituting a semiconductor chip.

Background Art

[0002] In the automatic placement and wiring of semiconductor devices, as disclosed in Patent Document 1, there is a method of automatically placing and wiring a digital circuit by blocking an analog circuit and a digital circuit with a boundary line. However, a semiconductor chip for a power device has a structure in which a plurality of unit cells having the same structure are arranged in parallel, and the arrangement has strong geometric elements, which cannot be handled by the automatic placement and wiring method disclosed in Patent Document 1.

[0003] For the automatic placement of semiconductor parts of a semiconductor chip for a power device, there is a map method in which an arrangement map is read by a program and then the arrangement quantity and dimension are adjusted to finely adjust the chip size. However, the map method has the following problems.

[0004] That is, in the case of the map method, since it is necessary to distinguish between the arrangement quantity adjustment parts and the fixed parts for chip size adjustment, the user's setting quantity increases.

[0005] In addition, when there is an arrangement of the same part, it is necessary to set the coordinates for each part, and even when using an array, it is necessary to set the number of arrays in the vertical and horizontal directions.

[0006] In addition, since the rotation and inversion settings of parts are associated with coordinates, if the rotation and inversion directions are different for each coordinate even for the same part, the user's setting quantity increases.

[0007] On the other hand, when freely arranging without using the map method, there is a method of providing a mesh and setting arrangement coordinates in advance for identifying the presence or absence of part arrangement. However, for a semiconductor chip for a power device, the size reaches several centimeters, while the arrangement coordinate interval is 0.1 μm or less. Therefore, 1010 More than one mesh is required, increasing the load on the computer.

Prior Art Documents

Patent Documents

[0008]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0009] The present disclosure has been made to solve the above problems, and an object thereof is to provide a method for automatically arranging parts that reduces the burden of setting for automatically arranging parts of a user and has a small load on a computer.

Means for Solving the Problems

[0010] The automatic part placement method according to the present disclosure is an automatic part placement method for automatically placing a plurality of types of parts in a placement area set by a computer-aided design tool. Each of the plurality of types of parts has a rectangular shape with sides parallel to the first direction and the second direction orthogonal to each other in the placement area. A part condition acquisition step (a) for acquiring a part boundary condition indicating adjacent placement parts that can be placed adjacent to the part set for each part, a part placement order acquisition step (b) for acquiring the placement order of the parts in the placement area set for each part, a boundary line acquisition step (c) for acquiring a boundary line boundary condition indicating boundary parts that can be placed in two regions separated by a boundary line parallel to the first direction or the second direction set in the placement area, a stretch setting confirmation step (d) for comparing the part boundary condition and the boundary line boundary condition and confirming the presence or absence of a stretch setting for the part when they match, a continuous placement confirmation step (e) for confirming the possibility of continuous placement of the part on the boundary line based on the part boundary condition when there is the stretch setting, a stretch step (f) for stretching the part by an integer multiple from the original part size to a stretch part based on the length of the boundary line when the continuous placement of the part is possible, a part placement step (g) for placing the stretch part, and an update step (h) for updating the boundary line and the boundary line boundary condition after the part placement step. By repeating the steps (a) to (h), the plurality of types of parts are automatically placed in the placement area.

Advantages of the Invention

[0011] According to the automatic part placement method according to the present disclosure, by providing a stretch step of stretching a part by an integer multiple from the original part size to a stretch part, the burden of setting for automatic placement of parts by the user can be reduced, and the load applied to the computer can be decreased.

Brief Description of the Drawings

[0012]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

Figure 23

Figure 24

Figure 25

Figure 26

Figure 27

Figure 28

Figure 29

Figure 30

Figure 31

Figure 32

Figure 33

Figure 34

Figure 35

Embodiments for Carrying Out the Invention

[0013] <Prior Art> Prior to the description of the embodiments, the boundary method of automatic placement, which is the prior art for realizing the present disclosure, will be described.

[0014] In the manufacturing process of semiconductor devices, photolithography technology is used for transferring patterns onto semiconductor substrates. In photolithography technology, light is irradiated through a photomask onto a photosensitive material coated on the semiconductor substrate. The photomask has the pattern of the semiconductor chip drawn on it, and a CAD (computer-aided design) device, also referred to as a CAD tool, is used to create the photomask. The CAD drawing of the photomask created using the CAD device has a hierarchical structure. That is, by dividing it into a file in which multiple types of parts constituting the semiconductor chip are arranged and a file in which each type of part is drawn, the overall image of the semiconductor device can be easily managed.

[0015] In a power device, which is a semiconductor device for power control, in order to control a large current, a plurality of transistors called unit cells (hereinafter referred to as "cells") are arranged in parallel connection. The number of cells arranged reaches, for example, several million. In the CAD drawing for the power device, semiconductor parts (hereinafter referred to as "parts") are arranged without gaps in the arrangement area of the semiconductor chip. Arranging the parts in place without gaps is achieved by automatically arranging the parts on the drawing screen of the CAD device.

[0016] Under the condition that the parts are arranged without gaps, the parts are in contact with the parts of other semiconductor chips. This is defined as being in contact with the dicing line etc. in the initial state. By giving adjacent conditions, that is, boundary conditions, to the parts, any semiconductor chip can be arranged. This is called the boundary method of automatic placement.

[0017] The boundary method of automatic placement consists of the following preliminary preparations and processes.

[0018] <User's preliminary preparations> Figures 1 to 3 schematically show the files prepared in advance by the user. Figure 1 shows a plurality of parts CAD files and a plurality of parts setting files, and the two correspond one-to-one. Figure 2 is a command file, which describes the chip drawing size, the setting of the arrangement order of parts, the setting of arrangement options, etc. Figure 3 is a stretch setting file, which is prepared as needed. The stretch setting will be described later.

[0019] The user prepares a group of CAD parts to be arranged, sets boundary conditions for all corners and all sides of all parts, sets the permitted rotations and inversions, and describes them in the parts setting file. These will be described later.

[0020] Here, the boundary conditions specifically refer to the parts adjacent to the corners and sides. The CAD program determines the placement location of the parts from the placed parts and these boundary conditions.

[0021] The boundary conditions set by the user for the parts only need to be the boundary conditions necessary for arranging the parts.

[0022] Even if the user does not set the size of the parts, if the CAD device has a function to output the part outline, that is, coordinates or dimensions, the CAD program can set it. If this function is not available in the CAD device and it is desired to automatically recognize the size of the parts, a separate program needs to be created.

[0023] The user sets stretch conditions for the parts as needed. This is called stretch setting. If the CAD device is equipped with a stretch function, the stretch setting can be set by the CAD program. If this function is not available in the CAD device, a separate program needs to be created.

[0024] The user prepares a command file. FIG. 4 is a diagram schematically showing an example of the command file prepared in advance by the user. As shown in FIG. 4, the command file describes, as execution commands, the chip drawing size (unit: mm), the names of files, the arrangement order of parts, and the arrangement options. For the description of commands, the programming language equipped in the CAD device is used, but in FIG. 4, for convenience, the commands are shown in Japanese.

[0025] In FIG. 4, as the names of files, the directory name where the files are located is shown, and as the arrangement option, "2 boundary condition arrangement 1" is described, which will be explained later.

[0026] Also, if the basic settings of the arrangement options are preset in the CAD program and the description of the arrangement options is omitted, the basic settings will be applied, and the description of the arrangement options can be omitted.

[0027] <Process> Next, the execution process of the boundary method of automatic placement will be described.

[0028] (1) Part condition acquisition process When a plurality of types of parts are rectangular parts having sides parallel to the X direction or the Y direction in the X direction and the Y direction orthogonal to each other in the chip placement area on the CAD tool, for each type of part, obtain the part boundary condition indicating the types of parts (adjacent placement parts) that are permitted to be placed adjacent to the part. This can be obtained from the command file shown in FIG. 4.

[0029] A total of eight boundary conditions, namely four sides and four vertices, can be set for the rectangular part. Fig. 5 is a diagram schematically showing an example of part boundary conditions. As shown in Fig. 5, for the four sides of the rectangular part, a Top boundary condition (BT), a Bottom boundary condition (BB), a Left boundary condition (BL), and a Right boundary condition (BR) are set. Also, for the four vertices, a Corner0 boundary condition (BC0), a Corner1 boundary condition (BC1), a Corner2 boundary condition (BC2), and a Corn3 boundary condition (BC3) are set. Further, in Fig. 5, the coordinates of the upper right vertex are set as (Xmax, Ymax), and the coordinates of the lower left vertex are set as (Xmin, Ymin).

[0030] Also, Fig. 6 is a diagram schematically showing an example of a part arrangement format. As shown in Fig. 6, the part arrangement format is described as (Xmin, Ymin, Xmax, Ymax, Bottom boundary condition, Right boundary condition, Top boundary condition, Left boundary condition, Corner0 boundary condition, Corner1 boundary condition, Corner2 boundary condition, Corner3 boundary condition, permitted rotation and inversion directions).

[0031] (2) Part placement order acquisition step Obtain the placement order in the chip placement area, which is set for each type of part. This can be obtained from the command file shown in Fig. 4.

[0032] (3) Boundary line acquisition step Acquire the boundary line boundary condition indicating the parts (boundary parts) that are permitted to be placed in two regions separated by a boundary line, where an area end line indicating the end of the chip placement area and a boundary line parallel to the X direction or the Y direction are arranged.

[0033] In the initial state where no parts are arranged, initial lines are arranged in the drawing area of the semiconductor chip. Four initial lines are arranged so as to surround the rectangular drawing area. FIG. 7 is a diagram schematically showing the chip arrangement area, that is, the initial lines defining the chip screen. As shown in FIG. 7, as the initial lines, Line XLine0, Line XLine1, Line YLine0, and Line YLine1 are arranged. Also, in FIG. 7, the coordinates of the upper right vertex are set as (Xmax, Ymax), and the coordinates of the lower left vertex are set as (Xmin, Ymin).

[0034] In FIG. 7, boundary conditions are set outside each of the four lines (boundary lines). That is, a Bottom boundary condition (DL) is set outside Line XLine0, a Top boundary condition (DL) is set outside Line XLine1, a Left boundary condition (DL) is set outside Line YLine0, and a Right boundary condition (DL) is set outside Line YLine1.

[0035] Here, assuming that there is a dicing line (DL) outside the drawing area of the semiconductor chip, the boundary condition is set as DL here. The dicing line (DL) can also be treated as a part.

[0036] Note that in FIG. 7, since the chip screen is defined by four lines, no boundary condition is set inside, but boundary conditions can be set for the two regions divided by the lines respectively. FIG. 8 shows that Top and Bottom boundary conditions are set for the upper and lower two regions divided by the X line. FIG. 9 shows that Left and Right boundary conditions are set for the left and right two regions divided by the Y line.

[0037] Here, FIG. 10 is a diagram schematically showing the setting contents of the lines. In the XLine array format, (Xmin, Y, Xmax, Y, Bottom boundary condition, Top boundary condition) is described, and in the YLine array format, (X, Ymin, X, Ymax, Left boundary condition, Right boundary condition) is described.

[0038] Also, FIG. 11 is a diagram schematically showing the setting contents of the initial lines shown in FIG. 7 as an example of the line settings. For Line0, (Xmin, Ymin, Xmax, Ymin, DL, none) is described, for XLine1, (Xmin, Ymax, Xmax, Ymax, none, DL) is described, for YLine0, (Xmin, Ymin, Xmin, Ymax, DL, none) is described, and for YLine1, (Xmin, Ymax, Xmax, Ymax, none, DL) is described.

[0039] In the initial state, the boundary condition DL is set for one boundary condition of each line, and the boundary condition "none" (blank) indicating a blank is set for the other boundary condition.

[0040] (4) Component placement process Compare the component boundary condition set for the component with the boundary line boundary condition set for the boundary line arranged in the chip placement area, and place the component when they match. FIG. 12 is a schematic diagram for explaining the component placement process.

[0041] In FIG. 12, in the chip placement area of the left figure, part A is placed at the lower left, and the situation where a new part A is placed with the boundary part BP to its immediate right is shown. In this case, by making the part boundary condition of the new part A coincide with the boundary line boundary condition of the chip placement area, the new part A is placed as shown in the right figure of FIG. 12. In this case, the Left boundary condition of line YLine2 is part A, the Bottom boundary condition of line YLine0 is DL, the Left boundary condition of the new part A is part A, and the Bottom boundary condition of the new part A is DL, so the part boundary condition and the boundary line boundary condition coincide. Note that the part placement as shown in FIG. 12 is referred to as "2 boundary condition placement 1".

[0042] (5) Boundary line update process After placing the parts in the part placement process, the boundary lines and the boundary line boundary conditions are updated. The boundary lines are updated to surround adjacent to the blank area. As shown in the right figure of FIG. 12, the boundary line XLine2 is set along the upper side of the two parts A, and the line YLine2 is set along the right side of the newly placed part A.

[0043] Also, FIG. 13 is a schematic diagram for explaining another example of the part placement process. In FIG. 13, in the chip placement area of the left figure, part A is placed at the lower left, and the situation where a new part A is placed diagonally up to its immediate right with the boundary part BP is shown. In this case, the boundary condition Corner0 of the new part A is compared with the boundary conditions XLine2 and YLine2 of the chip placement area, and the new part A is placed when the conditions Corner0 = XLine2 and Corner0 = YLine2 are satisfied. In this case, the Bottom boundary condition of line YLine2 is part A, the Left boundary condition of line YLine2 is part A, and the boundary condition of Corner0 of the new part A is part A, so the part boundary condition and the boundary line boundary condition coincide.

[0044] The right figure of FIG. 13 shows a state where Line XLine3, Line XLine4, Line YLine3, and Line YLine4 are set along the four sides of the newly arranged Part A. Note that the part arrangement as shown in FIG. 13 is referred to as "Two-Boundary-Condition Arrangement 2".

[0045] (6) First Repeating Step The part arrangement step and the boundary line update step are repeatedly executed.

[0046] (7) Part Type Change Step When the part boundary condition and the boundary line boundary condition do not match, the type of the part to be arranged is changed to a different type of part whose arrangement order is the next. This can suppress the time spent on part arrangement from becoming too long.

[0047] (8) Second Repeating Step According to the arrangement order, the first repeating step or the part type change step is repeatedly executed. By repeating the part arrangement step, the arrangement of the semiconductor chips is completed.

[0048] <Application to Power Devices> FIG. 14 is a schematic diagram for explaining the change of the chip size. In a power device, the larger the number of cells, the better the current driving ability. Therefore, when it is desired to increase the number of cells compared to the part arrangement shown in the left figure of FIG. 14, the chip arrangement area is expanded as shown in the right figure of FIG. 14. Here, in the left figure of FIG. 14, parts A, B, C, and D are arranged. Among them, the four central parts D correspond to cells, and the surrounding parts A, B, and C correspond to, for example, the terminal structure of the power device.

[0049] When adjusting the chip size to a size larger than the cell outer dimension, it can be done by adjusting the number of cells. However, when adjusting the outer dimension of the chip to a size smaller than the cell outer dimension, it is done by adjusting the outer dimension of the part, that is, stretching the part.

[0050] Figure 15 is a schematic diagram for explaining the stretching of parts. When increasing the number of cells compared to the part arrangement shown in the left diagram of Figure 15, first, in order to grasp the width for adjusting the part dimensions, as shown in the upper right diagram of Figure 15, arrange parts A, B, C, and D in order along the part arrangement order and part boundary conditions. Note that the gap can be calculated using the boundary line (line) that defines the gap as shown in the upper right diagram of Figure 15.

[0051] After creating the state of the upper right diagram of Figure 15, delete the arranged parts and return the lines to the initial state. Then, by rearranging while stretching parts A to C by the grasped gap between the parts, fill the gap as shown in the lower right diagram of Figure 15.

[0052] In the boundary method of automatic placement which is the prior art, the number of cells is automatically adjusted, but ingenuity is required for adjusting the outer dimensions of the parts.

[0053] Hereinafter, a stretching method by provisional placement of the boundary line will be described with reference to Figure 16. Figure 16 is a schematic diagram for explaining the basic flow of adjusting the outer dimensions of parts. The uppermost row of Figure 16 schematically shows that dimension adjustment parts A, B, and C have been detected by the CAD device.

[0054] When the dimension adjustment parts are detected, the CAD program enters the provisional placement process of the boundary line and sets an initial line in the drawing area of the semiconductor chip as shown in the left diagram in the middle row of Figure 16.

[0055] During the provisional placement process of the boundary line, the CAD program proceeds with the boundary placement process without stretching, but updates only the boundary line without arranging the parts as shown in the right diagram in the middle row of Figure 16 to grasp the stretch dimension. That is, the stretch dimension is calculated by grasping the two protrusions of the boundary line in the figure.

[0056] Next, the CAD program returns the boundary line to its initial state as shown in the lower left figure of Fig. 16, and while applying the calculated stretch dimensions to the dimension adjustment parts A to C, relocates the parts, so as to obtain a part arrangement in which the stretched dimension adjustment parts A to C surround a plurality of parts D, as shown in the lower right figure of Fig. 16.

[0057] Here, the difference between manual placement and automatic placement will be described with reference to Figs. 17 and 18. Fig. 17 is a schematic diagram for explaining the manual placement of parts. As shown in Fig. 17, in manual placement, parts B and C are placed as one part. The parts D corresponding to the cells are arranged in a 2×2 array.

[0058] Fig. 18 is a schematic diagram for explaining the automatic placement of parts. As shown in Fig. 18, in automatic placement, parts B, C, and D are placed in small pieces. When the parts are made into small pieces, the following problems occur. That is, the placement time becomes longer as the number of parts to be placed increases. Also, since the CAD drawing of the chip by automatic placement is different from the CAD drawing of the chip by manual placement, it is difficult for the user to edit the CAD drawing of the chip by automatic placement.

[0059] With respect to the method for automatically placing parts in the prior art described above, the present disclosure provides a CAD drawing with a short placement time and similar to manual placement. Further, in the present disclosure, a method for placing parts that are cut into small pieces in the prior art in an optimal state is provided.

[0060] As a method for optimally placing small parts, stretching and arraying can be considered. Here, stretching and arraying will be described as functions provided in the CAD device. If this function is not available in the CAD device, a program for the corresponding process is added.

[0061] In the automatic placement boundary method, as described with reference to FIG. 7, a boundary line and boundary line boundary conditions are set in the chip placement area. Also, the boundary line of the chip placement area has 1 boundary line / 1 boundary condition. FIG. 19 is a schematic diagram showing an example of setting the boundary line of the chip placement area. As shown in FIG. 19, the lines on the continuous same part A are defined by one line A, and even for the same part A, in the case of a single part A, it is defined by another line D. Also, for a part like part B, different lines such as line G and line F are defined for multiple sides. Therefore, the stretch amount and the number of arrays can be calculated from the length of the boundary line of the chip placement area.

[0062] When using stretch, the stretch of the fragmented parts competes with the stretch in the temporary placement process of the boundary line. The temporary placement of the boundary line aims to adjust dimensions that cannot be adjusted by the number of parts by stretch, as described with reference to FIG. 16.

[0063] If the fragmented parts are stretched normally during the temporary placement of the boundary line, the fragmented parts will stretch both the dimensions that can be adjusted by the number of parts and the dimensions that cannot be adjusted by the number of parts, so the purpose of the temporary placement of the boundary line cannot be achieved.

[0064] FIG. 20 is a schematic diagram for explaining a failure example of stretch. As shown in the left diagram in the middle of FIG. 20, after an initial line is drawn in the drawing area of the semiconductor chip and normal stretch is performed, parts B and C are stretched, and as shown in the right diagram in the middle of FIG. 20, the gap in the temporary placement of the boundary line is filled.

[0065] The CAD program returns the boundary line to the initial state and rearranges the parts as shown in the left diagram at the bottom of FIG. 20, but as shown in the right diagram at the bottom of FIG. 20, the stretched parts B and C surround the parts D arranged in an array, but a gap remains.

[0066] To avoid this problem, the CAD program is set so that the stretch amount of the fragmented parts is only an integer multiple of the outer dimensions of the fragmented parts.

[0067] FIG. 21 is a schematic diagram for explaining a successful example of stretching. When the CAD program detects the dimensional adjustment parts, it enters the provisional arrangement process of the boundary line, and sets an initial line in the drawing area of the semiconductor chip as shown in the left figure in the middle row of FIG. 21.

[0068] During the provisional arrangement process of the boundary line, the CAD program proceeds with the boundary arrangement process without stretching, but grasps the stretch dimension by updating only the boundary line without arranging the parts as shown in the right figure in the middle row of FIG. 21. That is, the stretch dimension is calculated by grasping the two protrusions of the boundary line in the figure. At this time, stretching is performed according to the rule that the stretch amount of the fragmented parts is only an integer multiple of the outer dimension of the fragmented parts. This will be further described in Embodiment 1.

[0069] Next, the CAD program returns the boundary line to the initial state as shown in the left figure in the lower row of FIG. 21, and applies the calculated stretch dimension to the dimensional adjustment parts A to C, so that the stretched dimensional adjustment parts A to C surround the parts D arranged in an array as shown in the right figure in the lower row of FIG. 21, and a part arrangement is obtained.

[0070] <Embodiment 1> Next, Embodiment 1 of the automatic part arrangement method according to the present disclosure will be described with reference to FIGS. 22 to 25.

[0071] (1) Preparation in advance First, in addition to the prior art, stretching is set for the fragmented parts to be stretched. In the prior art, stretching was used in the provisional arrangement process of the boundary line. If it is desired to identify whether stretching is used for the fragmented parts or for the provisional arrangement of the boundary line, an identifier is set.

[0072] (2) Example of part arrangement in the prior art FIG. 22 is a schematic diagram for explaining an example of the arrangement of parts according to the prior art. In FIG. 22, the part A has boundary conditions corresponding to the boundary conditions of the parts shown in FIG. 5. That is, the left diagram of FIG. 22 shows the setting file of part A, and the items BB (Bottom boundary condition), BR (Right boundary condition), BT (Top boundary condition), BL (Left boundary condition), BC0 (Corner0 boundary condition), BC1 (Corner1 boundary condition), BC2 (Corner2 boundary condition), BC3 (Corn3 boundary condition) are set in order from the top. Further, an item R for setting the rotation of part A is provided, and R0 representing no rotation is set in item R.

[0073] In the setting file of part A, part B is set in item BB, and part C is set in item BL.

[0074] In the second diagram from the left in FIG. 22, a chip arrangement area is shown where part B is arranged at the lower and upper parts of the right side of the long and narrow part C in the direction perpendicular to the paper surface (Y-axis direction). The boundary conditions corresponding to the boundary conditions of the boundary lines shown in FIG. 7 are set in the chip arrangement area.

[0075] That is, in the chip arrangement area, as lines XLine parallel to the horizontal direction of the paper surface (X-axis direction), XLine1 and XLine2 are set, and as lines YLine parallel to the Y-axis direction, YLine1 and YLine2 are set.

[0076] Part B is set as the Bottom boundary condition in XLine1, and part B is set as the Top boundary condition in XLine2. Also, part B is set as the Left boundary condition in YLine1, and part C is set as the Left boundary condition in YLine2.

[0077] When referring to such lines XLine and YLine one by one, for line XLine1, the parts B and A of the Bottom boundary condition match, and the part B set in item BB of part A also matches. For line YLine2, the parts C and A of the Left boundary condition match, and the part C set in item BL of part A also matches. Therefore, as shown in the third figure from the left in Fig. 22, part A can be arranged on top of the lower part B.

[0078] After arranging part A, as shown in the third figure from the left in Fig. 22, update and add the boundary lines of the chip placement area. That is, update the coordinates of line XLine1 and line YLine2, add line XLine3 above the upper side of part A, set part A as the Bottom boundary condition, add line YLine4 to the right side of part A, and set part A as the Left boundary condition.

[0079] Repeat the comparison between the part boundary condition of part A and the boundary line boundary condition of the chip placement area, the arrangement of part A, and the update of the boundary lines. However, if it becomes impossible to match the boundary conditions even when referring to lines XLine and YLine one by one, complete the arrangement of part A.

[0080] In the example of Fig. 22, in the setting file of part A, only part B is set in item BB, so part A cannot be arranged on top of part A, and as shown in the third figure from the left in Fig. 22, part A cannot be arranged continuously. In such a case, in the example of the command file shown in Fig. 4, perform the arrangement according to the method of Embodiment 1 for part D described next to part A in the part arrangement order.

[0081] Fig. 23 is a schematic diagram for explaining another example of the arrangement of parts according to the prior art. In Fig. 23, the left figure shows the setting file of part A. Different from Fig. 22, both part B and part A are set in item BB. The setting of the boundary lines in the chip placement area based on such a setting is the same as that of Fig. 22 in the second and third figures from the left in Fig. 23.

[0082] However, in the configuration file of Part A, since Part B and Part A are set in item BB, as shown in the fourth figure from the left in Figure 23, Part A can be continuously arranged on top of Part A. Furthermore, as shown in the fifth figure from the left in Figure 23, Part A can be continuously arranged further, and as shown in the sixth figure from the left in Figure 23, Part A can be continuously arranged without gaps from the lower Part B to the upper Part B.

[0083] (3) Stretch Arrangement Example of Cut - up Parts Next, the arrangement example when a stretch setting is applied to the cut - up parts will be described with reference to Figures 24 and 25.

[0084] Figure 24 is a schematic diagram for explaining the arrangement example when a stretch setting is applied to the cut - up parts. In Figure 24, the left figure shows the configuration file of Part A. In addition to the items in the left figure of Figure 22, an item S for the stretch setting of the cut - up parts is provided, and S1 indicating "with stretch" is set in item S. Also, the stretch setting can be read from the data of Part A through the CAD device when the CAD device has the stretch function and the setting content can be referred to.

[0085] In the stretch process of the cut - up parts, first, it is confirmed whether Part A can be stretched on the boundary lines on Part B and on the boundary lines on Part C where the boundary conditions match. In Figure 24, it is confirmed whether Part A can be continuously arranged in the right direction and the upward direction of Part A. From the boundary condition setting of Part A, since Part A is not described in item BL of Part A, it cannot be continuously arranged in the right direction of Part A. Also, since Part A is not described in item BB of Part A, it cannot be continuously arranged in the upward direction of Part A.

[0086] Therefore, as shown in the third figure from the left in Figure 24, even if Part A can be arranged on the lower Part B, Part A cannot be stretched either in the right direction or in the upward direction.

[0087] FIG. 25 is a schematic diagram for explaining another example of the arrangement when a stretch setting is applied to the shredded parts. In the stretch process of the shredded parts, it is confirmed whether part A can be continuously arranged on the boundary line on part B and on the boundary line on part C where the boundary conditions match. In FIG. 25, the left figure shows the setting file of part A. Different from FIG. 24, in item BB, part B and part A are set, and part A can be continuously arranged in the upward direction of part A. Also, in the setting file of part A, in item S of the stretch setting of the shredded parts, S1 indicating "with stretch" is set, so the stretch setting is obtained.

[0088] Based on such a setting, for the setting of the boundary line in the chip placement area, since part A can be stretched on the boundary line on part C in the second figure from the left in FIG. 25, the height C of the boundary line on part C is evaluated. The height C of the boundary line is obtained when the boundary line on the right side of part C is set.

[0089] In the evaluation process of the height C of the boundary line, for the height h of part A shown in the third figure from the left in FIG. 25, the maximum integer n such that C≧(n + 1)·h is calculated. As shown in the fourth figure from the left in FIG. 25, part A with a height of h is stretched by the stretch dimension of n·h, and the stretched part is arranged as the stretch part SP.

[0090] After arranging the stretch part SP, as shown in the fifth figure from the left in FIG. 25, it is defined as a new boundary line to be arranged in the chip placement area so as to surround the blank area.

[0091] In this way, in the automatic placement of parts, by using the shredded parts as stretch parts, the parts can be placed in the chip placement area without gaps.

[0092] The flowchart of the automatic component placement method according to Embodiment 1 described above is shown in FIG. 26. As shown in FIG. 26, in the component condition acquisition step (S1) of the automatic component placement method according to Embodiment 1, a component boundary condition indicating adjacent placement components that can be placed adjacent to each component is acquired for each component. Next, in the component placement order acquisition step (S2), the placement order for each component in the set placement area is acquired. Next, in the boundary line acquisition step (S3), a boundary line boundary condition indicating boundary components that can be placed in two regions separated by a boundary line parallel to the first direction or the second direction orthogonal to the set placement area is acquired. Next, in the stretch setting confirmation step (S4), the component boundary condition and the boundary line boundary condition are compared, and when they match, the presence or absence of the stretch setting of the component is confirmed. And when there is a stretch setting, in the continuous placement confirmation step (S5), based on the component boundary condition, the possibility of continuous placement on the boundary line of the component is confirmed. Next, when continuous placement of the component is possible, in the stretch step (S6), the component is stretched by an integer multiple from the original component size based on the length of the boundary line to obtain a stretched component. Next, in the component placement step (S7), the stretched component is placed. After that, in the update step, the boundary line and the boundary line boundary condition are updated.

[0093] The automatic component placement method according to Embodiment 1 described above is stored in the storage device of the CAD tool as a program of the CAD tool, and the automatic placement of components is executed by a processor such as a CPU (Central Processing Unit) executing the program stored in the storage device.

[0094] <Embodiment 2> Next, Embodiment 2 of the automatic component placement method according to the present disclosure will be described with reference to FIGS. 27 to 34.

[0095] (1) Component placement example of the prior art Figure 27 is a schematic diagram for explaining an example of the arrangement of parts according to the prior art. In Figure 27, boundary conditions corresponding to the boundary conditions of the parts shown in Figure 5 are set for part A. That is, the left figure of Figure 27 shows the setting file of part A, and items BB, BR, BT, BL, BC0, BC1, BC2, and BC3 are set in order from the top. Furthermore, an item for setting the rotation of part A is provided as item R, and R0 indicating no rotation is set for item R.

[0096] In the setting file of part A, part B is set for item BB, and part C is set for item BL.

[0097] In the second figure from the left in Figure 27, part C is installed on the left end of the long and narrow part B in the X-axis direction, and part D is installed on the upper part of part C. Also, a chip arrangement area where part E is arranged in contact with the right side of part C is shown.

[0098] In such a chip arrangement area, the part B with the Bottom boundary condition and part A, and the part B set for item BB of part A coincide, and the part C with the Left boundary condition and part A, and the part C set for item BL of part A coincide. Therefore, as shown in the third figure from the left in Figure 27, part A can be arranged above part B and in contact with the left side of the part.

[0099] In the example of Figure 27, in the setting file of part A, only part C is set for item BL. Therefore, part A cannot be arranged to the right of part A, and as shown in the third figure from the left in Figure 26, part A cannot be continuously arranged in the X-axis direction above part B.

[0100] Figure 28 is a schematic diagram for explaining another example of the arrangement of parts according to the prior art. In Figure 28, the left figure shows the setting file of part A. However, different from Figure 27, part C and part A are set for item BL. The setting of the boundary line in the chip arrangement area based on such a setting is the same as that of Figure 27 in the second figure from the left in Figure 28.

[0101] However, in the configuration file of Part A, since Part C and Part A are set for item BL, as shown in the third figure from the left in Fig. 28, Part A can be continuously arranged in the X-axis direction above Part B.

[0102] Fig. 29 is a schematic diagram for explaining another example of the arrangement of parts according to the prior art. In Fig. 29, the left figure shows the configuration file of Part A. Different from Fig. 27, Part B and Part A are set for item BB. The setting of the boundary line in the chip arrangement area based on such a setting is the same as that in Fig. 27 for the second figure from the left in Fig. 29.

[0103] However, in the configuration file of Part A, since Part B and Part A are set for item BB, as shown in the third figure from the left in Fig. 29, Part A can be continuously arranged in the Y-axis direction above Part A.

[0104] Fig. 30 is a schematic diagram for explaining another example of the arrangement of parts according to the prior art. In Fig. 30, the left figure shows the configuration file of Part A. Different from Fig. 27, Part B and Part A are set for item BB, and Part C and Part A are set for item BL. The setting of the boundary line in the chip arrangement area based on such a setting is the same as that in Fig. 27 for the second figure from the left in Fig. 30.

[0105] However, in the configuration file of Part A, since Part B and Part A are set for item BB and Part C and Part A are set for item BL, as shown in the third figure from the left in Fig. 30, Part A can be continuously arranged in the X-axis direction above Part B, and Part A can be continuously arranged in the Y-axis direction above Part A.

[0106] (2) Array arrangement example Next, an example of the arrangement when an array arrangement is set for the fragmented parts will be described with reference to Figs. 31 to 34.

[0107] FIG. 31 is a schematic diagram for explaining an arrangement example when an array arrangement of parts is set. In FIG. 30, the left figure shows the setting file of part A. In addition to the items in the left figure of FIG. 27, an item A for array setting is provided, and A1 indicating that there is an array setting is set in item A. Note that the presence or absence of the array setting can also be in a form of additional setting in the arrangement option for the parts described in the arrangement order of the command file.

[0108] In the array arrangement process, first, it is confirmed whether part A can be arranged on the boundary line on part B and on the boundary line on part C where the boundary conditions match. In FIG. 31, it is confirmed whether part A can be arranged in the right direction and the upward direction of part A. From the boundary condition setting of part A, since part A is not described in item BL of part A, it cannot be arranged in the right direction of part A. Also, since part A is not described in item BB of part A, it cannot be arranged in the upward direction of part A.

[0109] Therefore, as shown in the third figure from the left in FIG. 31, even if part A can be arranged on part B, part A cannot be arranged in the right direction or the upward direction, and part A is not arranged in an array but is arranged as a part.

[0110] FIG. 32 is a schematic diagram for explaining another example of the arrangement when an array arrangement of parts is set. In FIG. 32, the left figure shows the setting file of part A. Different from FIG. 31, part C and part A are set in item BL.

[0111] In the array arrangement process, since the array arrangement on the boundary line on part B where the boundary conditions match is permitted, the boundary line width wb on part B is evaluated. The boundary line width wb is obtained when the boundary line of the upper side of part B is set.

[0112] In the evaluation step of the boundary line width wb, for the width wa of the part A shown in the third figure from the left in FIG. 32, the maximum integer n such that wb ≥ wa·n is calculated. In the example of FIG. 32, since the part A cannot be arranged in an array on the boundary line of the part A, the number of array arrangements in the Y direction is 1, and as shown in the fourth figure from the left in FIG. 32, n×1 parts A are arranged as the array AR in the X direction.

[0113] FIG. 33 is a schematic diagram for explaining another example of the arrangement when the array arrangement of the parts is set. In FIG. 33, the left figure shows the setting file of the part A. However, different from FIG. 31, in the item BB, the part B and the part A are set.

[0114] In the array arrangement step, since the array arrangement on the boundary line of the part C with matching boundary conditions is permitted, the boundary line height hc of the part C is evaluated. The boundary line height hc is obtained when the boundary line on the right side of the part C is set.

[0115] In the evaluation step of the boundary line height hc, for the height ha of the part A shown in the third figure from the left in FIG. 33, the maximum integer m such that hc ≥ ha·m is calculated. In the example of FIG. 33, since the part A cannot be arranged in an array on the boundary line of the part B, the number of array arrangements in the X direction is 1, and as shown in the fourth figure from the left in FIG. 33, m×1 parts A are arranged as the array AR in the Y direction.

[0116] FIG. 34 is a schematic diagram for explaining another example of the arrangement when the array arrangement of the parts is set. In FIG. 34, the left figure shows the setting file of the part A. However, different from FIG. 31, in the item BB, the part B and the part A are set, and in the item BL, the part C and the part A are set.

[0117] In the array arrangement step, since the array arrangement on the boundary line on the part B with matching boundary conditions is permitted, the boundary line width wb on the part B is evaluated. Also, since the array arrangement on the boundary line of the part C with matching boundary conditions is permitted, the boundary line height hc of the part C is evaluated.

[0118] In the evaluation step of the boundary line width wb, for the width wa of the part A shown in the third figure from the left in FIG. 34, the maximum integer n such that wb ≧ wa·n is calculated, and for the height ha of the part A, the maximum integer m such that hc ≧ ha·m is calculated. In the example of FIG. 34, since part A can be arranged in an array both on the boundary line of part A and on the boundary line of part B, as shown in the fourth figure from the left in FIG. 34, n×m parts A in the X direction and the Y direction are arranged as an array AR.

[0119] If it is desired to avoid an array arrangement of 1×1, when the number of parts in both the X direction and the Y direction is one, part arrangement is selected instead of array arrangement. For this purpose, an array arrangement switch is provided so that array arrangement or part arrangement can be selected.

[0120] After the number of array arrangements is determined, it is defined as a new boundary line to be arranged in the chip arrangement area so as to surround the blank area.

[0121] In this way, in the automatic placement of parts, by arranging the fragmented parts in an array, the parts can be placed in the chip placement area without gaps.

[0122] The flowchart of the method for automatically arranging parts in Embodiment 2 described above is shown in FIG. 35. As shown in FIG. 35, in the method for automatically arranging parts in Embodiment 1, in the part condition acquisition step (S11), a part boundary condition indicating adjacent arrangement parts that can be arranged adjacent to each part is acquired for each part. Next, in the part arrangement order acquisition step (S12), the arrangement order to the arrangement area set for each part is acquired. Next, in the boundary line acquisition step (S13), a boundary line boundary condition indicating boundary parts that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction orthogonal to the arrangement area is acquired. Next, in the array setting confirmation step (S14), the part boundary condition and the boundary line boundary condition are compared, and when they match, the presence or absence of the array setting of the part is confirmed. Then, when there is an array setting, in the continuous arrangement confirmation step (S15), based on the part boundary condition, the possibility of continuous arrangement on the boundary line of the part is confirmed. Next, when continuous arrangement of parts is possible, in the array number calculation step (S16), the array number of the array arrangement in which parts are arranged as an integer multiple of the part size based on the length of the boundary line is calculated. Next, in the array arrangement step (S17), the parts are arranged in an array based on the array number. After that, in the update step (S18), the boundary line and the boundary line boundary condition are updated.

[0123] The method for automatically arranging parts in Embodiment 2 described above is stored in the storage device of the CAD tool as a program of the CAD tool, and the automatic arrangement of parts is executed by a processor such as a CPU executing the program stored in the storage device.

[0124] It should be noted that within the scope of the present disclosure, the embodiments can be freely combined with each other, or each embodiment can be appropriately modified or omitted.

[0125] The present disclosure described above is summarized as an appended note.

[0126] (Appended Note 1) A method for automatically arranging parts that automatically arranges multiple types of parts in an arrangement area set by a computer-aided design tool, each of the multiple types of parts has a rectangular shape with sides parallel to a first direction and a second direction orthogonal to each other in the arrangement area, (a) a part condition acquisition step of acquiring a part boundary condition indicating adjacent arrangement parts that can be arranged adjacent to the part set for each part, (b) a part arrangement order acquisition step of acquiring an arrangement order to the arrangement area set for each part, (c) a boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area, (d) a stretch setting confirmation step of comparing the part boundary condition and the boundary line boundary condition and confirming the presence or absence of a stretch setting of the part when they match, (e) a continuous arrangement confirmation step of confirming the possibility of continuous arrangement of the part on the boundary line based on the part boundary condition when there is the stretch setting, (f) a stretch step of stretching the part by an integer multiple from the original part size to a stretch part based on the length of the boundary line when the continuous arrangement of the part is possible, (g) a part arrangement step of arranging the stretch part, (h) an update step of updating the boundary line and the boundary line boundary condition after the part arrangement step, and comprising: By repeating the steps (a) to (h), the method for automatically arranging parts automatically arranges the multiple types of parts in the arrangement area.

[0127] (Supplementary Note 2) A method for automatically arranging parts that automatically arranges multiple types of parts in an arrangement area set by a computer-aided design tool, each of the multiple types of parts has a rectangular shape with sides parallel to a first direction and a second direction orthogonal to each other in the arrangement area, (a) A part condition acquisition step of acquiring a part boundary condition indicating an adjacent arrangement part that can be arranged adjacent to the part set for each part; (b) A part arrangement order acquisition step of acquiring an arrangement order to the arrangement area set for each part; (c) A boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) An array setting confirmation step of comparing the part boundary condition and the boundary line boundary condition and checking the presence or absence of an array setting of the part when they match; (e) When there is the array setting, a continuous arrangement confirmation step of checking the possibility of continuous arrangement of the parts on the boundary line based on the part boundary condition; (f) An array number calculation step of calculating the number of arrays of the parts as an integer multiple of the part size based on the length of the boundary line when the continuous arrangement of the parts is possible; (g) An array arrangement step of arranging the parts in an array based on the number of arrays; (h) An update step of updating the boundary line and the boundary line boundary condition after the array arrangement step, comprising: A method for automatically arranging parts, which automatically arranges the plurality of types of parts in the arrangement area by repeating the steps (a) to (h).

[0128] (Supplementary Note 3) In the step (d), when the part boundary condition and the boundary line boundary condition do not match, (i) A method for automatically arranging parts according to Supplementary Note 1 or Supplementary Note 2, comprising a part type change step of changing the part to a different type of part whose arrangement order is next to the part.

[0129] (Supplementary Note 4) A program for automatically arranging parts that causes a computer to execute steps of automatically arranging a plurality of types of parts in an arrangement area set by a computer-aided design tool, Each of the plurality of types of parts has a rectangular shape with sides parallel to a first direction and a second direction orthogonal to each other in the arrangement area, and (a) a part condition acquisition step of acquiring a part boundary condition indicating an adjacent arrangement part that can be arranged adjacent to the part set for each part; (b) a part arrangement order acquisition step of acquiring an arrangement order to the arrangement area set for each part; (c) a boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) a stretch setting confirmation step of comparing the part boundary condition and the boundary line boundary condition, and confirming the presence or absence of a stretch setting of the part when they match; (e) a continuous arrangement confirmation step of confirming the possibility of continuous arrangement of the part on the boundary line of the part based on the part boundary condition when there is the stretch setting; (f) a stretch step of stretching the part by an integer multiple from the original part size based on the length of the boundary line to make a stretch part when the continuous arrangement of the part is possible; (g) a part arrangement step of arranging the stretch part; (h) an update step of updating the boundary line and the boundary line boundary condition after the part arrangement step, and comprising A parts automatic arrangement program for automatically arranging the plurality of types of parts in the arrangement area by repeating the steps (a) to (h).

[0130] (Supplementary Note 5) A parts automatic arrangement program for causing a computer to execute a step of automatically arranging a plurality of types of parts in an arrangement area set by a computer-aided design tool, Each of the plurality of types of parts has a rectangular shape with sides parallel to a first direction and a second direction orthogonal to each other in the arrangement area, and (a) A part condition acquisition step of acquiring a part boundary condition indicating an adjacent arrangement part that can be arranged adjacent to the part set for each part; (b) A part arrangement order acquisition step of acquiring an arrangement order to the arrangement area set for each part; (c) A boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) A step of comparing the part boundary condition and the boundary line boundary condition, and checking the presence or absence of an array setting of the part when they match; (e) When there is the array setting, a continuous arrangement confirmation step of confirming the possibility of continuous arrangement of the parts on the boundary line of the parts based on the part boundary condition; (f) An array number calculation step of calculating the number of arrays of the parts as an integer multiple of the part size based on the length of the boundary line when the continuous arrangement of the parts is possible; (g) An array arrangement step of arranging the parts in an array based on the number of arrays; (h) An update step of updating the boundary line and the boundary line boundary condition after the array arrangement step, comprising: A parts automatic arrangement program for automatically arranging the plurality of types of parts in the arrangement area by repeating the steps (a) to (h).

[0131] (Appendix 6) In the step (d), when the part boundary condition and the boundary line boundary condition do not match, (i) A parts automatic arrangement program according to Appendix 4 or Appendix 5, comprising a part type change step of changing the part to a different type of part whose arrangement order is next to the part.

Explanation of Signs

[0132] AR Array, BP Boundary Part, SP Stretch Part.

Claims

1. A method for automatically arranging parts, which automatically arranges multiple types of parts in an arrangement area set by a computer-aided design tool, comprising: Each of the multiple types of parts has a rectangular shape with sides parallel to the first direction and the second direction orthogonal to each other in the arrangement area, (a) a part condition acquisition step of acquiring a part boundary condition indicating adjacent arrangement parts that can be arranged adjacent to the part set for each part; (b) a part arrangement order acquisition step of acquiring the arrangement order of each part to the arrangement area set for each part; (c) a boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) a stretch setting confirmation step of comparing the part boundary condition with the boundary line boundary condition and confirming the presence or absence of a stretch setting of the part when they match; (e) a continuous arrangement confirmation step of confirming the possibility of continuous arrangement of the part on the boundary line based on the part boundary condition when there is the stretch setting; (f) a stretch step of stretching the part by an integer multiple from the original part size to a stretch part based on the length of the boundary line when the continuous arrangement of the part is possible; (g) a part arrangement step of arranging the stretch part; (h) an update step of updating the boundary line and the boundary line boundary condition after the part arrangement step, wherein by repeating the steps (a) to (h), the multiple types of parts are automatically arranged in the arrangement area. A method for automatically arranging parts.

2. A method for automatically arranging parts, which automatically arranges multiple types of parts in an arrangement area set by a computer-aided design tool, comprising: Each of the multiple types of parts has a rectangular shape with sides parallel to the first direction and the second direction orthogonal to each other in the arrangement area, (a) a part condition acquisition step of acquiring a part boundary condition indicating adjacent arrangement parts that can be arranged adjacent to the part set for each part; (b) a part arrangement order acquisition step of acquiring the arrangement order of each part to the arrangement area set for each part; (c) A boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) An array setting confirmation step of comparing the part boundary condition and the boundary line boundary condition, and confirming the presence or absence of the array setting of the part when they match; (e) A continuous arrangement confirmation step of confirming the possibility of continuous arrangement of the parts on the boundary line based on the part boundary condition when there is the array setting; (f) An array number calculation step of calculating the number of arrays for array arrangement of the parts as an integer multiple of the part size based on the length of the boundary line when the continuous arrangement of the parts is possible; (g) An array arrangement step of arranging the parts in an array based on the number of arrays; (h) An update step of updating the boundary line and the boundary line boundary condition after the array arrangement step, comprising: By repeating the steps (a) to (h), an automatic part arrangement method for automatically arranging the plurality of types of parts in the arrangement area.

3. In the step (d), when the part boundary condition and the boundary line boundary condition do not match, (i) The automatic part arrangement method according to claim 1 or claim 2, comprising a part type change step of changing the part to a different type of part whose arrangement order is next to the part.

4. A part automatic arrangement program for causing a computer to execute a step of automatically arranging a plurality of types of parts in an arrangement area set by a computer-aided design tool, Each part of the plurality of types of parts is rectangular having sides parallel to the first direction and the second direction orthogonal to each other in the arrangement area, (a) A part condition acquisition step of acquiring a part boundary condition indicating an adjacent arrangement part that can be arranged adjacent to the part set for each part; (b) A part arrangement order acquisition step of acquiring the arrangement order of each part to the arrangement area set for each part; (c) A boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) A stretch setting confirmation step of comparing the part boundary condition and the boundary line boundary condition, and checking the presence or absence of the stretch setting of the part when they match; (e) When there is the stretch setting, a continuous arrangement confirmation step of checking the possibility of continuous arrangement on the boundary line of the part based on the part boundary condition; (f) When the continuous arrangement of the part is possible, a stretch step of stretching the part by an integer multiple from the original part size based on the length of the boundary line to obtain a stretched part; (g) A part arrangement step of arranging the stretched part; (h) An update step of updating the boundary line and the boundary line boundary condition after the part arrangement step, and comprising: By repeating the steps (a) to (h), an automatic part arrangement program for automatically arranging the plurality of types of parts in the arrangement area.

5. An automatic part arrangement program for causing a computer to execute a step of automatically arranging a plurality of types of parts in an arrangement area set by a computer-aided design tool, Each part of the plurality of types of parts has a rectangular shape having sides parallel to the first direction and the second direction orthogonal to each other in the arrangement area, (a) A part condition acquisition step of acquiring a part boundary condition indicating an adjacent arrangement part that can be arranged adjacent to the part set for each part; (b) A part arrangement order acquisition step of acquiring an arrangement order of each part set for each part to the arrangement area; (c) A boundary line acquisition step of acquiring a boundary line boundary condition indicating a boundary part that can be arranged in two regions separated by a boundary line parallel to the first direction or the second direction set in the arrangement area; (d) A step of comparing the part boundary condition and the boundary line boundary condition, and checking the presence or absence of the array setting of the part when they match; (e) When there is the array setting, a continuous arrangement confirmation step of checking the possibility of continuous arrangement on the boundary line of the part based on the part boundary condition; (f) When the continuous arrangement of the part is possible, an array number calculation step of calculating the number of arrays of an array in which the part is arranged as an integer multiple of the part size based on the length of the boundary line; (g) An array arrangement step of arranging the part based on the number of arrays; After the array placement step (h), an update step of updating the boundary line and the boundary line boundary conditions, An automatic placement program for parts that automatically places the plurality of types of parts in the placement area by repeating the steps (a) to (h).

6. In the step (d), when the boundary condition of the part does not match the boundary line boundary condition, The automatic placement program for parts according to claim 4 or claim 5, comprising: (i) a part type change step of changing the part to a different type of part whose placement order is next to that of the part.

Citation Information

Patent Citations

  • System for supporting layout design for embedded array and device for generating mask data for base array

    JP1997160941A

  • Printed circuit board designing device

    JP1997259155A

  • Method and device for designing lsi layout, cell library and semiconductor integrated circuit device

    JP1999045942A

  • Device and method for designing analog cell layout

    JP2003085224A

  • Interface for analyzing finite-element, computer-readable storage medium which records program of interface for analyzing finite-element, method for analyzing finite-element using high value-added communication network, parallel processing computer for analyzing finite-element, and computer for analyzing finite-element

    JP2006164219A