Board card arrangement method, electronic device, storage medium and program product
By acquiring the module and structural information of the board, overlapping and non-overlapping areas are determined, and the module settings in different areas are indicated based on this information. This solves the problem of low efficiency in the layout of boards of different shapes and achieves efficient module layout.
Patent Information
- Application Number
- CN202511242280.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-02
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2045-09-02
AI Technical Summary
In existing technologies, designing the layout of different types of circuit boards individually leads to a waste of manpower and results in low efficiency in circuit board layout.
By acquiring multiple module information and structural information related to the functions of the first and second boards, their overlapping and non-overlapping areas are determined, and the module settings in different areas are indicated based on this information, thus realizing the module arrangement of two different types of boards.
It improves the efficiency of board layout, enabling the simultaneous layout of modules with different board shapes, and reduces manpower waste.
Smart Images

Figure CN120805823B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of servers, and particularly relates to a card arrangement method, an electronic device, a storage medium and a program product. BACKGROUND
[0002] In order to adapt to servers of different sizes, the cards in the servers can be designed into multiple different forms.
[0003] In the related art, the arrangement of the modules in the cards can be designed separately according to different forms of the cards, so that the cards can realize corresponding functions. However, separate arrangement design for different form cards will cause waste of manpower, thereby leading to low efficiency of card arrangement. SUMMARY
[0004] The present application provides a card arrangement method, an electronic device, a storage medium and a program product to at least solve the problem of low efficiency of card arrangement.
[0005] The present application provides a card arrangement method, comprising:
[0006] obtaining first information corresponding to a plurality of first modules associated with functions of a first card and a second card, and structure information of the first card and the second card, the first card and the second card being different in form, the first information including sub-function modules in the plurality of first modules and component information in each sub-function module;
[0007] determining, according to the structure information, a first region overlapping between the first card and the second card and a second region not overlapping;
[0008] determining, according to the first region and the first information, second information, the second information being used to indicate modules arranged in the first region;
[0009] arranging, according to the second information, the plurality of first modules on the first region and the second region to obtain arrangement information of the first card and the second card.
[0010] The present application also provides a card arrangement device, comprising an obtaining module, a first determining module, a second determining module and a first arrangement module, wherein,
[0011] The obtaining module is used to obtain first information of a plurality of first modules corresponding to a first card and a second card, and structure information of the first card and the second card, the first card and the second card being different in form;
[0012] The first determining module is used to determine, according to the structure information, a first region overlapping between the first card and the second card and a second region not overlapping;
[0013] The second determining module is configured to determine second information according to the first region and the first information, the second information being used to indicate a module arranged in the first region.
[0014] The first arranging module is configured to arrange the plurality of first modules on the first region and the second region according to the second information, to obtain arrangement information of the first board card and the second board card.
[0015] The application further provides an electronic device, comprising a memory configured to store a computer program, and a processor configured to execute the computer program to implement the steps of the arrangement method of the board card.
[0016] The application further provides a computer readable storage medium, which stores a computer program, wherein the computer program is executed by a processor to implement the steps of the arrangement method of the board card.
[0017] The application further provides a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the steps of the arrangement method of the board card.
[0018] According to the application, when the board card needs to be arranged, the electronic device can obtain the first information of the plurality of first modules corresponding to the first board card and the second board card, the structure information of the first board card and the second board card, and the forms of the first board card and the second board card are different; according to the structure information, the first region overlapping between the first board card and the second board card and the second region not overlapping are determined; according to the first region and the first information, the second information is determined, the second information being used to indicate a module arranged in the first region; according to the second information, the plurality of first modules are arranged on the first region and the second region, to obtain the arrangement information of the first board card and the second board card. In this way, according to the above method, the first region overlapping between two board cards with different forms and the second region not overlapping can be determined, the module arranged in the overlapping region and the module arranged in the non-overlapping region are determined according to the second information, so that the modules in the two board cards with different forms can be arranged at the same time, and the arrangement efficiency of the board card is improved. BRIEF DESCRIPTION OF DRAWINGS
[0019] In order to more clearly illustrate the embodiments of the application, the drawings needed in the embodiments will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the application, and other drawings can be obtained by those skilled in the art without creative effort.
[0020] Figure 1 The system architecture diagram provided for the embodiments of the application;
[0021] Figure 2A flowchart of a method for arranging the board card according to an embodiment of the present application is shown in FIG. 1.
[0022] Figure 3 A schematic diagram of the first region and the second region according to an embodiment of the present application is shown in FIG. 2.
[0023] Figure 4 A schematic diagram of the setting process of the plurality of first modules according to an embodiment of the present application is shown in FIG. 3.
[0024] Figure 5 A schematic diagram of the first structural member region according to an embodiment of the present application is shown in FIG. 4.
[0025] Figure 6 A schematic diagram of the third region, the fourth region, and the fifth region according to an embodiment of the present application is shown in FIG. 5.
[0026] Figure 7 A schematic diagram of the determination process of the arrangement information of any one of the first modules according to an embodiment of the present application is shown in FIG. 6.
[0027] Figure 8 A schematic diagram of the preset arrangement of any one of the top sub-modules according to an embodiment of the present application is shown in FIG. 7.
[0028] Figure 9 A schematic diagram of the arrangement device of the board card according to an embodiment of the present application is shown in FIG. 8.
[0029] Figure 10 A schematic diagram of another arrangement device of the board card according to an embodiment of the present application is shown in FIG. 9.
[0030] Figure 11 A schematic diagram of the electronic device according to an embodiment of the present application is shown in FIG. 10. DETAILED DESCRIPTION
[0031] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments of the present application. Based on the embodiments in the present application, any other embodiments obtained by those skilled in the art without creative work fall within the protection scope of the present application.
[0032] It should be noted that, in the description of the present application, the terms “comprise”, “contain” or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. The terms “first”, “second” and the like in the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence.
[0033] In the related art, the arrangement of modules in a board card can be designed separately according to different forms of the board card, so that the board card can realize corresponding functions. However, since the functional modules of the board cards realizing the same functions are basically the same, separate arrangement design for different form board cards will cause waste of manpower, thereby resulting in low efficiency of board card arrangement.
[0034] To solve the above problems, in the embodiments of the present application, when it is necessary to arrange a board card, an electronic device can obtain first information of a plurality of first modules corresponding to a first board card and a second board card, structure information of the first board card and the second board card, the first board card and the second board card being different in form; determine a first region overlapping between the first board card and the second board card and a second region not overlapping according to the structure information; determine second information according to the first region and the first information, the second information being used to indicate modules arranged in the first region; determine second modules arranged in the first region and third modules arranged in the second region from the plurality of first modules according to the second information; arrange the second modules in the first region of the first board card and the second board card; and arrange the third modules in the second region of the first board card and the second board card. In this way, by the above method, the first region overlapping between two board cards of different forms and the second region not overlapping can be determined, the second modules arranged in the first region and the third modules arranged in the second region are determined according to the second information, so that the modules in two board cards of different forms can be arranged at the same time, and the arrangement efficiency of the board card is improved.
[0035] In order for those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the drawings and specific embodiments.
[0036] In combination with the specific application environment architecture or specific hardware architecture on which the arrangement method of the board card depends, the specific application environment architecture or specific hardware architecture is described herein. For reference Figure 1 , Figure 1 The system architecture diagram provided by the embodiments of the present application is shown. Please refer to Figure 1 , which includes an electronic device, the electronic device can receive structure information of a plurality of form board cards to be arranged and information of functional modules arranged on the board cards, and arrange each board card to obtain arrangement information of board cards with similar arrangement.
[0037] The technical solutions of the present application and how the technical solutions of the present application solve the above technical problems will be described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes can not be described again in some embodiments. The embodiments of the present application will be described below with reference to the drawings.
[0038] Figure 2This is a flowchart illustrating the board arrangement method provided in the embodiments of this application, as shown below. Figure 2 As shown, embodiments of this application provide a method for arranging circuit boards. The method is described in detail below:
[0039] S201. Obtain the first information of multiple first modules corresponding to the first board and the second board, and the structural information of the first board and the second board.
[0040] The execution subject in this application embodiment can be an electronic device, which can be a device with on-device computing capabilities, such as a server or terminal device. The execution subject can also be a circuit board arrangement device disposed within the electronic device. The circuit board arrangement device can be implemented through software or through a combination of software and hardware.
[0041] The first and second boards can be circuit boards installed inside the server, which can be used to expand and enhance the server's functionality.
[0042] The first board and the second board can be two boards that perform the same function but have different forms. Optionally, the first board can be in the form of a standard card, while the second board can be in the form of an OpenCompute Project (OCP) card.
[0043] The first module can be a functional module set on the first board and the second board. It is understood that the first board and the second board perform the same functions, that is, the first modules on the first board and the second board are also the same. For example, the first module can be a processor module, a memory module, a power supply module, etc.
[0044] The first information of the first module may refer to the preset module schematic information. The first information may include the name of the first module, the identifier of the first module, at least one sub-module contained in the first module, at least one component contained in the sub-module, the name of the component, the height of the component, the size of the component, etc.
[0045] The first information of any first module can be determined in the following way: First, determine at least one sub-module of the first module, whereby the sub-module indicates the signal type of the first module. For example, the sub-module may include a sensor module, a flash memory module, a bus module, a memory module, etc.; determine at least one component corresponding to each sub-module, and the information of each component. For example, the component may include a resistor, capacitor, diode, transistor, etc., and the component information may include the component's height, size, etc.; based on the information of each sub-module, each component, and each component, obtain the first information of the first module.
[0046] For example, the first information of the first module can be as shown in Table 1. Please refer to Table 1.
[0047] Table 1
[0048]
[0049] The structural information of the first and second circuit boards can refer to their corresponding dimensions and structures. For example, the structural information of the first circuit board may include its length, width, top height, bottom height, and the location of structural components. Understandably, the structural information of the first and second circuit boards will differ.
[0050] S202. Based on the structural information, determine the first overlapping region and the second non-overlapping region between the first board and the second board.
[0051] The overlapping first region can refer to the area with the largest possible size after overlapping the first and second boards. The non-overlapping second region can refer to the area where the first and second boards do not overlap after the first region is determined.
[0052] The overlapping first region and the non-overlapping second region can be determined in the following way: the structural information may include the first structural information of the first board and the second structural information of the second board; the size of the first board is determined based on the first structural information; the size of the second board is determined based on the second structural information; and the first region and the second region are determined based on the size of the first board and the size of the second board.
[0053] For example, assuming the first board is 5 cm long and 3 cm wide, and the second board is 6 cm long and 2 cm wide, then after overlapping the first and second boards, the largest area that can be obtained is 5 cm long and 2 cm wide. That is, the first area is the area that is 5 cm long and 2 cm wide, and the second area is the remaining unoverlapped area.
[0054] Optionally, the first and second regions can also be determined as follows: based on the dimensions of the first and second boards, determine the target vertex between the first and second boards; based on the target vertex, overlap the first and second boards; rotate the first board around the target vertex as the rotation center to create an overlapping area between the first and second boards; determine the largest overlapping area that appears during the rotation as the first region, and determine the area where the first and second boards do not overlap when the first region appears as the second region.
[0055] The following examples illustrate the non-overlapping first region and the non-overlapping second region.
[0056] Figure 3 This is a schematic diagram of the first and second regions provided for embodiments of this application. Please refer to...Figure 3 This includes a first board, a second board, a first region, and a second region. Based on the target vertex, the first and second boards are overlapped. Using the target vertex as the rotation center, the first board is rotated until an overlapping area appears between it and the second board. The largest overlapping area that appears during the rotation is defined as the first region. Figure 3 The gray area in the image is defined as the second area, and the area where the first board and the second board do not overlap when the first area appears is defined as the second area.
[0057] S203. Determine the second information based on the first region and the first information.
[0058] The second information can be used to indicate the modules set in the first area.
[0059] The second information can be determined as follows: Based on the first information, determine the area corresponding to multiple first modules; among the multiple first modules, determine the sixth module with the largest area and the seventh module with an area greater than or equal to a first threshold; determine the area difference between the first region and the sixth module; based on the area difference and the area of the seventh module, determine the eighth module that can be set in the first region within the seventh module; determine the second information based on the sixth and eighth modules. The first threshold can be a user-preset value, for example, 5. The area of the first module can be determined based on the arrangement information of the components within the first module.
[0060] For example, suppose there are first modules A, B, C, D, and E, the first threshold is 5, and the area of the first region is 20. Among them, the area of first module A is 8, the area of first module B is 3, the area of first module C is 4, the area of first module D is 5, and the area of first module E is 6. Then, the first module A with the largest area can be determined as the sixth module, and the first modules D and E with areas greater than or equal to the first threshold are the seventh modules. The area difference between the first region and the sixth module is 12. Since the area of first module D is 5 and the area of first module E is 6, first modules D and E can both be set in the first region. That is, first modules D and first modules E can be determined as the eighth module. Therefore, the modules set in the first region as indicated by the second information are first modules A, D, and E.
[0061] S204. Based on the second information, multiple first modules are set on the first area and the second area to obtain the arrangement information of the first board and the second board.
[0062] The layout information of the first and second boards can be used to indicate the layout positions of the modules on the first and second boards. The layout information can be obtained based on the positions of multiple first modules on the first and second boards.
[0063] Multiple first modules can be set on a first area and a second area in the following manner: based on second information, determine a second module set in the first area and a third module set in the second area from among the multiple first modules; set the second module in the first area of the first board and the second board; set the third module in the second area of the first board and the second board.
[0064] For example, assuming there are first module A, first module B, first module C, first module D and first module E, and the second information indicates that the modules set in the first area are first module A and first module B, then it can be determined that first module A and first module B are second modules set in the first area, and first module C, first module D and first module E are third modules set in the second area. First module A and first module B are set in the first area of the first board and the second board, and first module C, first module D and first module E are set in the second area of the first board and the second board.
[0065] In this embodiment, when it is necessary to arrange the boards, the first information of multiple first modules corresponding to the first board and the second board, and the structural information of the first board and the second board can be obtained. The first board and the second board can be two boards that perform the same function but have different forms. The first module can be a functional module set on the first board and the second board. The structural information of the first board and the second board can refer to the size and structure of the first board and the second board. According to the structural information, the first overlapping area and the second non-overlapping area between the first board and the second board are determined. The first area can refer to the area with the largest area that can be obtained after overlapping the first board and the second board. The second area can refer to the area where the first board and the second board do not overlap after determining the first area. According to the first area and the first information, the second information is determined. The second information can be used to indicate the module set in the first area. According to the second information, multiple first modules are set on the first area and the second area to obtain the arrangement information of the first board and the second board. The arrangement information can be used to indicate the arrangement position of the modules on the first board and the second board. In this way, by using the above method, for the first board and the second board with different shapes but the same function, the second module set in the first area and the third module set in the second area can be determined according to the second information based on the first overlapping area and the non-overlapping second area between the two boards. Thus, the modules in the two different shapes of boards can be arranged at the same time, which improves the board arrangement efficiency.
[0066] Based on any of the above embodiments, the following, in conjunction with Figure 4 The setup process for several first modules is explained in detail.
[0067] Figure 4 This is a schematic diagram illustrating the setup process of several first modules provided in embodiments of this application. Please refer to... Figure 4 The method may include:
[0068] S401. Based on the second information, determine the second module set in the first area and the third module set in the second area among the multiple first modules.
[0069] The second information can be used to indicate the modules set in the first area. The second module set in the first area can be determined from multiple first modules through the second information. After the second module is determined, the remaining modules among the multiple first modules are determined as the third module.
[0070] S402. Set the second module in the first area of the first board and the second board.
[0071] Based on the first structural information of the first board and the second structural information of the second board, a first structural component region and a second structural component region can be determined. The first structural component region can be the area occupied by the structural component of the first board on the first board, and the second structural component region can be the area occupied by the structural component of the second board on the second board. Based on the first and second structural component regions, a first target region can be determined within the first region. The first target region is a region where the first region does not overlap with either the first or second structural component regions. The structural component can be a gold finger, connector, etc.
[0072] The first structural component area can be determined as follows: Based on the first structural information, determine the first pin position, silkscreen position, and trace width of the structural component on the first board; based on the pin position, determine the position of the structural component on the first board; using the silkscreen position as a reference line, measure a first distance into the board, the length of which is equal to the sum of the trace width and the width of the structural component, to obtain a first reference line parallel to the silkscreen position; the area between the first reference line and the first board that overlaps with the structural component is defined as the first structural component area.
[0073] The second structural component area can be determined as follows: Based on the second structural information, determine the pin positions, silkscreen positions, and trace widths of the structural components on the second board. Based on the pin positions, determine the position of the structural components on the second board. Using the silkscreen position as a baseline, measure a second distance into the board. The length of the second distance is equal to the sum of the trace width and the width of the structural component. Obtain a second baseline parallel to the silkscreen position. Define the area between the second baseline and the second board that overlaps with the structural components as the second structural component area.
[0074] The first structural component area will be explained below with specific examples.
[0075] Figure 5 This is a schematic diagram of the first structural component region provided in an embodiment of this application. Please refer to... Figure 5 This includes a first board, a first region, a first structural component region, a structural component, a first baseline, a first distance, and a silkscreen position. Using the silkscreen position as the baseline, a first distance is measured into the board to obtain a first baseline parallel to the silkscreen position. The region between the first baseline and the first board, which overlaps with the structural component, is defined as the first structural component region.
[0076] In the second module, the sixth module, which has the largest area, is identified. Based on the component information of the sixth module, the corresponding trace width can be determined. The sixth module is placed within the first target area such that the distance from any long side and any wide side of the sixth module to the side of the first target area is equal to the trace width.
[0077] In the second module, the eighth module, excluding the sixth module, is identified and placed in the remaining area within the first target area.
[0078] Optionally, the placement method of the eighth module in the remaining area of the target area can be determined as follows: determine the number of pins corresponding to each eighth module, sort the eighth modules in descending order of the number of pins, and place each eighth module in the remaining area in this order, wherein the larger the number of pins, the closer it is to the sixth module.
[0079] S403. Based on the second region, determine the first sub-region and the second sub-region, and overlap the first sub-region and the second sub-region to obtain the third region, the fourth region, and the fifth region.
[0080] The first sub-region is the region located on the first board within the second region, and the second sub-region is the region located on the second board within the second region.
[0081] The third region is the largest area after the first and second sub-regions overlap. The fourth region is the non-overlapping area in the first sub-region, and the fifth region is the non-overlapping area in the second sub-region.
[0082] The third, fourth, and fifth regions will be explained below with specific examples.
[0083] Figure 6 A schematic diagram of the third, fourth, and fifth regions provided for embodiments of this application. Please refer to... Figure 6 It includes a first board, a second board, a first region, a first sub-region, a second sub-region, a third region, a fourth region, and a fifth region. The first region and the second region can be determined by overlapping the first board and the second board. The first sub-region located on the first board and the second sub-region located on the second board can be determined based on the second region. The third region with the largest overlapping area, the fourth region in the first sub-region that does not overlap, and the fifth region in the second sub-region that does not overlap are obtained by overlapping the first sub-region and the second sub-region.
[0084] S404. In the third module, determine the fourth module that can be accommodated in the third area and the fifth module that cannot be accommodated in the third area.
[0085] Based on the dimensions of the first and second boards, the area of the third region can be determined. The area of each third module is then determined, and the third modules are sorted in descending order of area. The third modules are then placed in the third region in this order until N third modules are placed in the third region, and the (N+1)th module cannot be placed in the third region. The first N third modules are then designated as the fourth module, and the remaining modules in the third region are designated as the fifth module.
[0086] S405. Set the fourth module in the third area, and set the fifth module in both the fourth and fifth areas.
[0087] exist Figure 4In the illustrated embodiment, when multiple first modules need to be configured, a second module and a third module can be determined from among the multiple first modules based on the second information. The second module is then configured in the first region of the first board and the second board. Based on the second region, a first sub-region and a second sub-region are determined. The first sub-region and the second sub-region are overlapped to obtain a third region, a fourth region, and a fifth region. In the third module, a fourth module that can be accommodated in the third region and a fifth module that cannot be accommodated in the third region are determined. The fourth module is configured in the third region, and the fifth module is configured in the fourth and fifth regions. In this way, by the above method, the second module with a larger area can be configured in the first region of the first board and the second board. Then, the largest overlapping third region is determined in the non-overlapping region. The fourth module with a larger area that can be placed is placed in the third region of the first board and the second board. The remaining fifth module is configured in the fourth and fifth regions, thereby ensuring a high similarity in the module layout of the first board and the second board. On the one hand, the efficiency of the design of the first board and the second board is improved through automated layout. On the other hand, the high similarity can improve the convenience of subsequent board testing.
[0088] Based on any of the above embodiments, the following, in conjunction with Figure 7 The process of determining the layout information of the first module is explained in detail.
[0089] Figure 7 This is a schematic diagram illustrating the process of determining the layout information of any first module as provided in an embodiment of this application. Please refer to... Figure 7 The method may include:
[0090] S701. Based on the structural information, determine the top height and bottom height of the first board and the second board.
[0091] In this case, the bottom height of the first and second boards is less than the top height. For example, the top height can be 2cm and the bottom height can be 1cm.
[0092] S702. Based on the top height, bottom height, and information of each component, determine the first component located at the top of the board and the second component located at the bottom of the board.
[0093] Understandably, for any given first module, some of the components of that first module can be located on the top of the board, while others can be located on the bottom of the board.
[0094] The first and second components can be determined as follows: Among multiple components, a third component whose height is less than the bottom height and a fourth component whose height is greater than or equal to the bottom height are identified; the quantity difference between a first quantity of the third component and a second quantity of the fourth component is determined, wherein the first quantity is greater than or equal to the second quantity; when the quantity difference is less than or equal to a second threshold, the third component is identified as the second component located at the bottom of the board, and the fourth component is identified as the first component located at the top of the board; when the quantity difference is greater than the second threshold, multiple fifth components are selected from the third components based on the quantity difference, and these multiple fifth components and the fourth component are identified as the first components located at the top of the board, while the remaining components in the third component are identified as the second components located at the bottom of the board. The second threshold can be a user-preset value, for example, the second threshold can be 2.
[0095] Understandably, when there is a large difference in the number of the first component at the top and the second component at the bottom, it is necessary to adjust the number of components at the top and bottom to ensure a balance in the number of components at the top and bottom, thereby ensuring the reliability of the first module's operation.
[0096] S703. Arrange the first and second components to obtain the arrangement information of the first module.
[0097] The layout can be processed as follows: Based on the component information, determine the pin information of each component; in the first component, determine at least one top submodule, where each top component within the top submodule belongs to the same submodule and has the same pin information, and the top components within the top submodule are placed according to a preset layout; in the second component, determine at least one bottom submodule, where each bottom component within the bottom submodule belongs to the same submodule and has the same pin information, and the bottom components within the bottom submodule are placed according to a preset layout; based on at least one top submodule, determine the pin information of each top submodule, and based on the pin information of each top submodule, obtain the layout of the top submodule according to the preset layout; based on at least one bottom submodule, determine the pin information of each bottom submodule, and based on the pin information of each bottom submodule, obtain the layout of the bottom submodule according to the preset layout; based on the layout of the top submodule and the layout of the bottom submodule, obtain the layout information of the first module.
[0098] For example, the preset arrangement may refer to: determining at least one component belonging to the same sub-module, determining the size of each component, determining the component with the longest side length among the components, determining the length of the component as the first length, determining the target frame, fixing the length of any side of the target frame as the first length; placing each component into the target frame; determining the pin information of each component, and placing components with the same pin information in parallel.
[0099] The following example illustrates the preset layout.
[0100] Figure 8 This document provides a schematic diagram illustrating a preset arrangement of any top sub-module, as required by an embodiment of this application. Please refer to [link / reference]. Figure 8 Each top submodule includes top device A, top device B, and top device C, where top device A has the longest side. Pin information A and pin information B are identical, and pin information C and pin information D are identical. The length of the longest side of top device A is defined as the first length. This first length is then fixed as the length of any side of the target frame. The target frame is determined by placing components with identical pin information in parallel, thus obtaining the top submodule.
[0101] exist Figure 7 In the illustrated embodiment, when it is necessary to determine the layout information of the first module, the top and bottom heights of the first and second boards can be determined based on the structural information. Based on the top and bottom heights and the information of each component, the first component located at the top of the board and the second component located at the bottom of the board are determined. The first and second components are then arranged to obtain the layout information of the first module. Using this method, the component distribution at the top and bottom of the first module can be determined based on the top and bottom heights, ensuring a balanced component distribution and thus improving the stability of the first module. Furthermore, by pre-setting the layout, the rules for the arrangement of each component can be kept consistent, and the occupied area can be reduced. The consistent arrangement rules ensure the overall layout consistency, and reducing the occupied area improves the utilization rate of the board.
[0102] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.
[0103] Figure 9 This is a schematic diagram of the board arrangement device provided in the embodiments of this application. Figure 9As shown, embodiments of this application also provide a board arrangement device 10, including: an acquisition module 11, a first determination module 12, a second determination module 13, and a first arrangement module 14, wherein,
[0104] The acquisition module 11 is used to acquire first information corresponding to multiple first modules associated with the functions of the first board and the second board, as well as structural information of the first board and the second board. The first board and the second board have different forms. The first information includes sub-functional modules in the multiple first modules and component information in each sub-functional module.
[0105] The first determining module 12 is used to determine, based on the structural information, the overlapping first region and the non-overlapping second region between the first board and the second board;
[0106] The second determining module 13 is used to determine second information based on the first region and the first information, wherein the second information is used to indicate the module set in the first region;
[0107] The first layout module 14 is used to set multiple first modules on the first area and the second area according to the second information, so as to obtain the layout information of the first board and the second board.
[0108] The board arrangement device provided in this application embodiment can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar, and will not be described again here.
[0109] In one possible design, the first arrangement module 14 is specifically used for,
[0110] Based on the second information, a second module disposed in the first region and a third module disposed in the second region are determined among the plurality of first modules;
[0111] The second module is disposed in the first area of the first board and the second board;
[0112] The third module is disposed in the second area of the first board and the second board.
[0113] In one possible design, the first arrangement module 14 is specifically used for,
[0114] The first sub-region and the second sub-region are overlapped to obtain the largest overlapping third region, the fourth region that does not overlap in the first sub-region, and the fifth region that does not overlap in the second sub-region.
[0115] The third module is set in the third region, the fourth region, and the fifth region.
[0116] In one possible design, the first arrangement module 14 is specifically used for,
[0117] In the third module, a fourth module that can be accommodated in the third region and a fifth module that cannot be accommodated in the third region are determined;
[0118] The fourth module is placed in the third region, and the fifth module is placed in both the fourth and fifth regions.
[0119] In one possible design, the second determining module 13 is specifically used for,
[0120] Based on the first information, determine the area corresponding to the plurality of first modules;
[0121] Among the plurality of first modules, the sixth module with the largest area and the seventh module with an area greater than or equal to the first threshold are determined;
[0122] Determine the area difference between the first region and the sixth module;
[0123] Based on the area difference and the area of the seventh module, an eighth module that can be set in the first region is determined in the seventh module;
[0124] The second information is determined based on the sixth module and the eighth module.
[0125] In one possible design, the first determining module 12 is specifically used for,
[0126] The dimensions of the first board are determined based on the first structural information;
[0127] The dimensions of the second board are determined based on the second structural information;
[0128] The first region and the second region are determined based on the dimensions of the first board and the second board.
[0129] In one possible design, the first determining module 12 is specifically used for,
[0130] Based on the dimensions of the first board and the second board, determine the target vertex between the first board and the second board;
[0131] Based on the target vertex, the first region and the second region are determined.
[0132] In one possible design, the first determining module 12 is specifically used for,
[0133] Based on the target vertex, overlap the first board and the second board;
[0134] The first board is rotated around the target vertex as the rotation center, so that an overlapping area appears between the first board and the second board;
[0135] The largest overlapping area that occurs during the rotation is defined as the first area, and the area where the first board and the second board do not overlap when the first area occurs is defined as the second area.
[0136] In one possible design, the acquisition module 11 is specifically used for,
[0137] Identify at least one submodule of the first module, the submodule being used to indicate the signal type of the first module;
[0138] Identify at least one component corresponding to each submodule, and the information of each component, wherein the component information includes the height of the component;
[0139] Based on the information of each sub-module, each component, and each component, the first information of the first module is obtained.
[0140] The board arrangement device provided in this application embodiment can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar, and will not be described again here.
[0141] Figure 10 This is a schematic diagram of another board arrangement device provided in an embodiment of this application. Figure 9 Based on what is shown, as Figure 10 As shown, the board arrangement device 10 further includes: a second arrangement module 15, wherein,
[0142] The second arrangement module 15 is used to determine at least one sub-module of the first module, wherein the sub-module is used to indicate the signal type of the first module;
[0143] Identify at least one component corresponding to each submodule, and the information of each component, wherein the component information includes the height of the component;
[0144] Based on the information of each sub-module, each component, and each component, the first information of the first module is obtained.
[0145] In one possible design, the second row module 15 is specifically used for,
[0146] Based on the structural information, the top height and bottom height of the first board and the second board are determined, wherein the bottom height is less than the top height;
[0147] Based on the top height, the bottom height, and the information of each component, determine the first component located at the top of the board and the second component located at the bottom of the board;
[0148] The first component and the second component are arranged to obtain the arrangement information of the first module.
[0149] In one possible design, the second row module 15 is specifically used for,
[0150] Among multiple components, a third component whose height is less than the bottom height and a fourth component whose height is greater than or equal to the bottom height are identified;
[0151] Determine the quantity difference between a first quantity of the third component and a second quantity of the fourth component, wherein the first quantity is greater than or equal to the second quantity;
[0152] When the quantity difference is less than or equal to the second threshold, the third component is determined to be the second component located at the bottom of the board, and the fourth component is determined to be the first component located at the top of the board;
[0153] When the quantity difference is greater than the second threshold, multiple fifth components are selected from the third components according to the quantity difference, and the multiple fifth components and the fourth component are determined as the first components located at the top of the board, and the remaining components in the third components are determined as the second components located at the bottom of the board.
[0154] In one possible design, the second row module 15 is specifically used for,
[0155] Determine the pin information of each component;
[0156] At least one top sub-module is determined in the first component, and each top device in the top sub-module belongs to the same sub-module and the pin information of each top device is the same. Each top device in the top sub-module is placed according to a preset arrangement.
[0157] In the second component, at least one bottom sub-module is determined, and each bottom device in the bottom sub-module belongs to the same sub-module and the pin information of each bottom device is the same. The bottom devices in the bottom sub-module are arranged according to a preset layout.
[0158] Based on the at least one top submodule, determine the pin information of each top submodule, and based on the pin information of each top submodule, obtain the arrangement of the top submodules;
[0159] Based on the at least one bottom submodule, determine the pin information of each bottom submodule, and based on the pin information of each bottom submodule, obtain the arrangement of the bottom submodules;
[0160] The arrangement information of the first module is obtained based on the arrangement of the top sub-module and the arrangement of the bottom sub-module.
[0161] The board arrangement device provided in this application embodiment can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar, and will not be described again here.
[0162] Figure 11 A schematic diagram of the structure of the electronic device provided in this application. Figure 11 As shown, the electronic device 50 provided in this embodiment includes at least one processor 501 and a memory 502. Optionally, the electronic device 50 further includes a communication component 503. The processor 501, memory 502, and communication component 503 are connected via a bus.
[0163] In the specific implementation process, at least one processor 501 executes computer execution instructions stored in memory 502, causing at least one processor 501 to execute the above-described board arrangement method embodiment.
[0164] The specific implementation process of processor 501 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0165] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.
[0166] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0167] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0168] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described board arrangement method embodiments when running.
[0169] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0170] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described board arrangement method embodiments.
[0171] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described board layout method embodiments.
[0172] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0173] The foregoing has provided a detailed description of a board layout method, electronic device, storage medium, and program product provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A method for arranging circuit boards, characterized in that, include: Acquire first information corresponding to multiple first modules associated with the functions of the first board and the second board, as well as structural information of the first board and the second board. The first board and the second board have different forms. The first information includes sub-modules of indicator signal types in the first module and component information in each sub-module. Based on the structural information, determine the first overlapping region and the second non-overlapping region between the first board and the second board; Based on the first region and the first information, second information is determined, and the second information is used to indicate the module set in the first region; Based on the second information, a second module disposed in the first region and a third module disposed in the second region are determined among the plurality of first modules, wherein the area of the second module is greater than or equal to a first threshold. The second module is placed in the first area of the first board and the second board, and the third module is placed in the second area of the first board and the second board, so as to obtain the layout information of the first board and the second board; The step of setting the plurality of first modules in the first region further includes: Based on the first structural information of the first board and the second structural information of the second board, a first structural component area and a second structural component area are determined. The first structural component area is the area occupied by the structural component of the first board on the first board, and the second structural component area is the area occupied by the structural component of the second board on the second board. Based on the first structural component region and the second structural component region, a first target region is determined within the first region. The first target region is a region in which the first region does not overlap with either the first structural component region or the second structural component region. The plurality of first modules are set in the first target area.
2. The method according to claim 1, characterized in that, The second region includes a first sub-region located on the first board and a second sub-region located on the second board; The third module is disposed in the second region of the first board and the second board, including: The first sub-region and the second sub-region are overlapped to obtain the largest overlapping third region, the fourth region that does not overlap in the first sub-region, and the fifth region that does not overlap in the second sub-region. The third module is set in the third region, the fourth region, and the fifth region.
3. The method according to claim 2, characterized in that, Setting the third module in the third region, the fourth region, and the fifth region includes: In the third module, a fourth module that can be accommodated in the third region and a fifth module that cannot be accommodated in the third region are determined; The fourth module is placed in the third region, and the fifth module is placed in both the fourth and fifth regions.
4. The method according to any one of claims 1-3, characterized in that, Based on the first region and the first information, the second information is determined, including: Based on the first information, determine the area corresponding to the plurality of first modules; Among the plurality of first modules, the sixth module with the largest area and the seventh module with an area greater than or equal to the first threshold are determined; Determine the area difference between the first region and the sixth module; Based on the area difference and the area of the seventh module, an eighth module that can be set in the first region is determined in the seventh module; The second information is determined based on the sixth module and the eighth module.
5. The method according to any one of claims 1-3, characterized in that, The structural information includes the first structural information of the first board and the second structural information of the second board; Based on the structural information, the overlapping first region and the non-overlapping second region between the first board and the second board are determined, including: The dimensions of the first board are determined based on the first structural information; The dimensions of the second board are determined based on the second structural information; The first region and the second region are determined based on the dimensions of the first board and the second board.
6. The method according to claim 5, characterized in that, Determining the first region and the second region based on the dimensions of the first board and the second board includes: Based on the dimensions of the first board and the second board, determine the target vertex between the first board and the second board; Based on the target vertex, the first region and the second region are determined.
7. The method according to claim 6, characterized in that, Determining the first region and the second region based on the target vertex includes: Based on the target vertex, overlap the first board and the second board; The first board is rotated around the target vertex as the rotation center, so that an overlapping area appears between the first board and the second board; The largest overlapping area that occurs during the rotation is defined as the first area, and the area where the first board and the second board do not overlap when the first area occurs is defined as the second area.
8. The method according to any one of claims 1-3, characterized in that, For any given first module; obtain the first information of multiple first modules corresponding to the first board and the second board, including: Identify at least one submodule of the first module, the submodule being used to indicate the signal type of the first module; Identify at least one component corresponding to each submodule, and the information of each component, wherein the component information includes the height of the component; Based on the information of each sub-module, each component, and each component, the first information of the first module is obtained.
9. The method according to claim 8, characterized in that, The method further includes: Based on the structural information, the top height and bottom height of the first board and the second board are determined, wherein the bottom height is less than the top height; Based on the top height, the bottom height, and the information of each component, determine the first component located at the top of the board and the second component located at the bottom of the board; The first component and the second component are arranged to obtain the arrangement information of the first module.
10. The method according to claim 9, characterized in that, The information of the components includes the height of the components; based on the top height, the bottom height, and the information of each component, the first component located at the top of the board and the second component located at the bottom of the board are determined, including: Among multiple components, a third component whose height is less than the bottom height and a fourth component whose height is greater than or equal to the bottom height are identified; Determine the quantity difference between a first quantity of the third component and a second quantity of the fourth component, wherein the first quantity is greater than or equal to the second quantity; When the quantity difference is less than or equal to the second threshold, the third component is determined to be the second component located at the bottom of the board, and the fourth component is determined to be the first component located at the top of the board; When the quantity difference is greater than the second threshold, multiple fifth components are selected from the third components according to the quantity difference, and the multiple fifth components and the fourth component are determined as the first components located at the top of the board, and the remaining components in the third components are determined as the second components located at the bottom of the board.
11. The method according to claim 10, characterized in that, The information of the components also includes the pin information of the components; the first component and the second component are arranged to obtain the arrangement information of the first module, including: Determine the pin information of each component; At least one top sub-module is determined in the first component, and each top device in the top sub-module belongs to the same sub-module and the pin information of each top device is the same. Each top device in the top sub-module is placed according to a preset arrangement. In the second component, at least one bottom sub-module is determined, and each bottom device in the bottom sub-module belongs to the same sub-module and the pin information of each bottom device is the same. The bottom devices in the bottom sub-module are arranged according to a preset layout. Based on the at least one top submodule, determine the pin information of each top submodule, and based on the pin information of each top submodule, obtain the arrangement of the top submodules; Based on the at least one bottom submodule, determine the pin information of each bottom submodule, and based on the pin information of each bottom submodule, obtain the arrangement of the bottom submodules; The arrangement information of the first module is obtained based on the arrangement of the top sub-module and the arrangement of the bottom sub-module.
12. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the board layout method as described in any one of claims 1 to 11 when executing the computer program.
13. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the board arrangement method as described in any one of claims 1 to 11.
14. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the board arrangement method as described in any one of claims 1 to 11.
Citation Information
Patent Citations
PCB module automatic layout method and device, electronic equipment and storage medium
CN118070735A