CN115758977A - Layout generation method and device, electronic equipment and medium - Google Patents

Layout generation method and device, electronic equipment and medium Download PDF

Info

Publication number
CN115758977A
CN115758977A CN202211521265.7A CN202211521265A CN115758977A CN 115758977 A CN115758977 A CN 115758977A CN 202211521265 A CN202211521265 A CN 202211521265A CN 115758977 A CN115758977 A CN 115758977A
Authority
CN
China
Prior art keywords
module
port
sub
target
modules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211521265.7A
Other languages
Chinese (zh)
Inventor
王建
王侃毓
张俊
张泽飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Analog Semiconductor Technology Co ltd
Original Assignee
Shanghai Analog Semiconductor Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Analog Semiconductor Technology Co ltd filed Critical Shanghai Analog Semiconductor Technology Co ltd
Priority to CN202211521265.7A priority Critical patent/CN115758977A/en
Publication of CN115758977A publication Critical patent/CN115758977A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

The embodiment of the application relates to a method and a device for generating a layout, electronic equipment and a medium. The method comprises the following steps: acquiring first position information and first connection information of a plurality of ports; determining a target sub-module matched with each port according to the first connection information of each port and second connection information of each candidate sub-module, wherein the target sub-module is one of the candidate sub-modules; determining the second position information of the target sub-module matched with each port according to the first position information of each port; and generating a target module layout based on the second position information of the target sub-module matched with each port, wherein the target module layout comprises the candidate sub-modules and the ports. The method can automatically generate the layout of the target module without manual operation, thereby improving the generation efficiency of the layout.

Description

Layout generation method and device, electronic equipment and medium
Technical Field
The embodiment of the application relates to the technical field of layout design, in particular to a method and a device for generating a layout, electronic equipment and a medium.
Background
The layout design of a semiconductor integrated circuit can be divided into two stages, namely a module-level layout design and a chip-level design, wherein the module-level layout design comprises the placement of each functional module on a layout, and each functional module is provided with a plurality of ports and the like which are externally connected.
The functional module may include a plurality of sub-functional modules, ports of the functional module are connected to sub-ports of the sub-functional modules in a matching manner, and in the process of designing the functional module, for each port, the sub-functional module connected to the port is usually found manually, and the position relationship of the sub-functional module is manually adjusted based on the position of the port. However, manual approaches are inefficient, resulting in inefficient generation of a layout for the functional module.
Disclosure of Invention
The embodiment of the application provides a method and a device for generating a layout, an electronic device and a medium, which can automatically generate the layout of a target module without manual operation, so that the generation efficiency of the layout can be improved.
In a first aspect, an embodiment of the present application provides a method for generating a layout, including:
acquiring first position information and first connection information of a plurality of ports;
determining a target sub-module matched with each port according to the first connection information of each port and second connection information of each candidate sub-module, wherein the target sub-module is one of the candidate sub-modules;
determining second position information of the target sub-module matched with each port according to the first position information of each port;
and generating a target module layout based on the second position information of the target sub-module matched with each port, wherein the target module layout comprises the candidate sub-modules and the ports.
In some embodiments, the obtaining the first location and the first connection information of each of the plurality of ports comprises:
generating the plurality of ports and arranging the plurality of ports along a target direction;
the first location information and the first connection information of each of the plurality of ports are extracted, respectively.
In some embodiments, the first location information is center coordinates.
In some embodiments, the determining the second location information of the target sub-module matched by each port according to the first location information of each port includes:
determining the abscissa of each port as the abscissa of the target submodule matched with each port;
and determining the sum of the ordinate of each port and a preset value as the ordinate of the target sub-module matched with each port.
In some embodiments, the difference in the respective sizes of the plurality of candidate sub-blocks is less than a preset threshold.
In some embodiments, before determining the target sub-candidate module matched to each port according to the first connection information of each port and the second connection information of each of the plurality of sub-candidate modules, the method further includes:
and selecting the plurality of sub-candidate modules, and extracting the second connection information of the plurality of candidate sub-modules respectively.
In some embodiments, the generating a layout of a target module based on the second position information of the target sub-module matched by each port includes:
and generating a layout of the target module based on the plurality of ports and the plurality of target sub-modules located at the second position information.
In a second aspect, an embodiment of the present application provides an apparatus for generating a layout, including:
the device comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring first position information and first connection information of a plurality of ports;
a determining module, configured to determine, according to the first connection information of each port and second connection information of each of multiple candidate sub-modules, a target sub-module matched to each port, where the target sub-module is one of the multiple candidate sub-modules; determining the second position information of the target sub-module matched with each port according to the first position information of each port;
and the generating module is used for generating a layout of the target module based on the second position information of the target sub-module matched with each port, wherein the layout of the target module comprises the candidate sub-modules and the ports.
In a third aspect, an embodiment of the present application provides an electronic device, including: a processor for executing a computer program stored in a memory, the computer program, when executed by the processor, implementing the steps of any of the methods provided by the first aspect.
In a fourth aspect, an embodiment of the present application provides a computer storage medium, where a computer program is stored, and when the computer program is executed by a processor, the computer program implements the steps of any one of the methods provided in the first aspect.
According to the technical scheme of the embodiment of the application, the first position information and the first connection information of each of a plurality of ports are acquired; determining a target sub-module matched with each port according to the first connection information of each port and the second connection information of each candidate sub-module, wherein the target sub-module is one of the candidate sub-modules; determining second position information of a target sub-module matched with each port according to the first position information of each port; the layout of the target module is generated based on the second position information of the target sub-module matched with each port, the layout of the target module comprises a plurality of candidate sub-modules and a plurality of ports, and therefore the positions of the candidate sub-modules can be set based on the position information of the ports, the layout of the target module is automatically generated, manual operation is not needed, the generation efficiency of the layout can be improved, and time and labor cost can be saved.
The foregoing description is only an overview of the technical solutions of the embodiments of the present application, and the embodiments of the present application can be implemented according to the content of the description in order to make the technical means of the embodiments of the present application more clearly understood, and the detailed description of the present application is provided below in order to make the foregoing and other objects, features, and advantages of the embodiments of the present application more clearly understandable.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the description below are some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
Fig. 1 is a schematic flowchart of a method for generating a layout according to an embodiment of the present disclosure;
fig. 2 is a schematic flow chart of a method for generating another version according to an embodiment of the present disclosure;
fig. 3 is a schematic flowchart of a method for generating another version according to an embodiment of the present application;
fig. 4 is a schematic flowchart of a method for generating another version according to an embodiment of the present application;
fig. 5 is a schematic flowchart of a method for generating another version according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a layout generation apparatus according to an embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs; the terminology used in the description of the application herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.
The terms "comprising" and "having," and any variations thereof, in the description and claims of this application and the description of the drawings are intended to cover, but not to exclude, other elements. The word "a" or "an" does not exclude a plurality.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearances of the phrase "an embodiment" in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. It is explicitly and implicitly understood by one skilled in the art that the embodiments described herein can be combined with other embodiments.
The term "and/or" herein is merely an association describing an associated object, meaning that three relationships may exist, e.g., a and/or B, may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" herein generally indicates that the former and latter related objects are in an "or" relationship.
The directional terms used in the following description are intended to refer to directions illustrated in the drawings and are not intended to limit the specific construction of the seat assembly of the present application. For example, in the description of the present application, the terms "front", "back", "left", "right", "top", "bottom", and the like indicate orientations or positional relationships based on those shown in the drawings, and are only for convenience in describing the present application and simplifying the description, but do not indicate or imply that the device or element being referred to must have a particular orientation, be constructed in a particular orientation, and be operated, and thus should not be construed as limiting the present application.
Further, expressions of directions indicated for explaining the operation and configuration of each member of the seat assembly of the present embodiment, such as the X direction, the Y direction, and the Z direction, are not absolute but relative, and although these indications are appropriate when each member of the battery pack is in the position shown in the drawings, when these positions are changed, these directions should be interpreted differently to be changed correspondingly.
Furthermore, the terms "first," "second," and the like in the description and claims of the present application or in the above-described drawings are used for distinguishing between different objects and not necessarily for describing a particular sequential order, and may explicitly or implicitly include one or more of the features.
In the description of the present application, unless otherwise specified, "plurality" means two or more (including two), and similarly, "plural groups" means two or more (including two).
In the description of the present application, it should be noted that, unless otherwise explicitly specified or limited, the terms "mounted," "connected," and "connected" are to be construed broadly, e.g., "connected" or "connected" of a mechanical structure may refer to a physical connection, e.g., a physical connection may be a fixed connection, e.g., a fixed connection by a fastener, such as a screw, bolt, or other fastener; the physical connection can also be a detachable connection, such as a mutual clamping or clamping connection; the physical connection may also be an integral connection, for example, a connection made by welding, gluing or integrally forming the connection. "connected" or "connected" of circuit structures may mean not only physically connected but also electrically connected or signal-connected, for example, directly connected, i.e., physically connected, or indirectly connected through at least one intervening component, as long as the circuits are in communication, or communication between the interiors of two components; signal connection may refer to signal connection through a medium, such as radio waves, in addition to signal connection through circuitry. The specific meaning of the above terms in the present application can be understood in a specific case by those of ordinary skill in the art.
The method provided by the embodiment of the application is applied to a layout design scene of a functional module, and a target module in the embodiment of the application is a module being designed. The layout of the target module includes a plurality of candidate sub-modules, and the functions implemented in the plurality of candidate sub-modules may be the same or different, which is not specifically limited in the embodiment of the present application. The layout of the target module further comprises a plurality of ports, wherein each port can be connected with the sub-ports of the candidate sub-modules in the inner pair and can be connected with the ports of the modules adjacent to the target module in the outer pair.
Each port in the embodiment of the present application corresponds to one matched candidate sub-module, and the matched candidate sub-module may be denoted as a target sub-module, so that the target sub-module is one candidate sub-module of all candidate sub-modules.
In this embodiment, the first location information is location information of a port, the second connection information is connection information of the port, the second location information is location information of a candidate sub-module, and the second connection information is connection information of the candidate sub-module.
The technical solutions of the method examples in the present application will be described in detail below with reference to several specific embodiments.
Fig. 1 is a schematic flow chart of a method for generating a layout according to an embodiment of the present application, and as shown in fig. 1, the method for generating a layout specifically includes the following steps:
s101, acquiring first position information and first connection information of each of a plurality of ports.
As a detailed description of one possible implementation when S101 is performed, as shown in fig. 2:
s1011, a plurality of ports are generated and arranged in a target direction.
Illustratively, the layout of the target module is designed based on the circuit of the target module, which includes the circuits of the plurality of candidate sub-modules, so that the layout of the target module can be determined to include a plurality of ports based on the input and output terminals in the circuit of the target module. In addition, based on the connection relationship between the circuits of the candidate sub-modules in the circuit of the target module and the determined plurality of ports, the first position information and the first connection information of each port may be determined. A plurality of ports may be generated based on the first location information and the first connection information of each port.
The target direction may be an arrangement direction of ports of modules adjacent to the target module, a long side direction of the target module, or a short side direction of the target module, which is not specifically limited in the embodiment of the present application. In some embodiments, the target direction is an arrangement direction of ports of modules adjacent to the target module, and a pitch of the plurality of ports in the target module is equal to a pitch of the ports in the modules adjacent to the target module, so that the two adjacent modules are connected conveniently. In other embodiments, the target direction is a long side direction of the target module, and the distance between the plurality of ports in the target module is a preset port distance, so that the distance between the ports can be increased, and the risk of short circuit of the target module is reduced.
S1012, first position information and first connection information of each of the plurality of ports are extracted.
Based on the above embodiment, when a plurality of ports are generated, each port carries its own first location information and first connection information, so that all the ports are selected, and the first location information and the first connection information of each port can be extracted and stored, thereby facilitating subsequent applications.
As a specific description of another possible implementation manner when performing S101, a file for generating a plurality of ports may be acquired, and the first connection information and the first location information of each port in the file may be extracted.
S102, determining a target sub-module matched with each port according to the first connection information of each port and the second connection information of each candidate sub-module.
The target sub-module is one of a plurality of candidate sub-modules.
For example, based on the circuits of multiple candidate sub-modules in the circuit of the target module, the candidate sub-modules corresponding to the circuits of the multiple candidate sub-modules may be determined, and thus, multiple candidate modules may be obtained. The candidate sub-modules may be the same sub-module or different sub-modules. For example, the target module includes candidate sub-modules A1, A2, A3, B1, B2, and C1, where the candidate sub-modules A1, A2, and A3 are all sub-modules a, the candidate sub-modules B1 and B2 are all sub-modules B, and the candidate sub-module C1 is sub-module C.
Second connection information of each candidate sub-module can be determined based on the connection relation of the circuit of each candidate sub-module in the circuit of the target module and the determined plurality of ports, and accordingly a plurality of candidate sub-modules are generated, and each candidate sub-module corresponds to one piece of second connection information. Here, the plurality of candidate sub-modules may be generated by calling one or more of the plurality of candidate sub-modules from the already designed set of sub-modules.
For the first connection information of each port, the second connection information of all candidate sub-modules may be traversed, and one piece of second connection information matching the first connection information is determined from the second connection information of all candidate sub-modules, and then the candidate sub-module corresponding to the second connection information matching the first connection information is the target sub-module matching the port corresponding to the first connection information.
For example, the plurality of ports includes ports M1, M2, M3, and M4, where the first connection information of the port M1 is N1, the first connection information of the port M2 is N2, the first connection information of the port M3 is N3, and the first connection information of the port M4 is N4. The plurality of candidate sub-modules include candidate sub-modules A1, A2, A3, and A4, where the second connection information of the candidate sub-module A1 is N2, the second connection information of the candidate sub-module A2 is N3, the second connection information of the candidate sub-module A3 is N1, and the second connection information of the candidate sub-module A4 is N4. Obviously, the first connection information of the port M1 matches with the second connection information of the candidate sub-module A3, the first connection information of the port M2 matches with the second connection information of the candidate sub-module A1, the first connection information of the port M3 matches with the second connection information of the candidate sub-module A2, the first connection information of the port M4 matches with the second connection information of the candidate sub-module A4, then the target sub-module matched with the port M1 is the candidate sub-module A3, the target sub-module matched with the port M2 is the candidate sub-module A1, the target sub-module matched with the port M3 is the candidate sub-module A2, and the target sub-module matched with the port M4 is the candidate sub-module A4.
It should be noted that, in the above embodiment, only the first connection information is the same as the second connection information as a condition for determining that the first connection information and the second connection information match.
S103, according to the first position information of each port, determining second position information of the target sub-module matched with each port.
Based on the above embodiment, the first location information of each port and the target sub-module matched with each port may be obtained, the first location information of each port may be reasonably converted, and the converted first location information may be used as the second location information of the target sub-module matched with each port.
For example, the first position information of the port M1 is P1, the first position information of the port M2 is P2, the first position information of the port M3 is P3, the first position information of the port M4 is P4, the first position information P1 is converted into P1', the first position information P2 is converted into P2', the first position information P3 is converted into P3', and the first position information P4 is converted into P4'. Based on the above embodiment, the second position information of the target sub-module A1 is P2', the second position information of the target sub-module A2 is P3', the second position information of the target sub-module A3 is P1', and the second position information of the target sub-module A4 is P4' can be obtained.
And S104, generating a layout of the target module based on the second position information of the target sub-module matched with each port.
The layout of the target module includes a plurality of candidate sub-modules and a plurality of ports.
For example, each target sub-module is automatically moved to a corresponding position based on the second position information of each target sub-module, and since the second position information of the target sub-module is related to the first position information of the ports, the target sub-modules may be moved to a region near the matched ports, and the target sub-modules may be arranged according to the order of the ports, so as to generate the layout of the target module.
In the embodiment of the application, the first position information and the first connection information of each of a plurality of ports are acquired; determining a target sub-module matched with each port according to the first connection information of each port and the second connection information of each candidate sub-module, wherein the target sub-module is one of the candidate sub-modules; determining second position information of a target sub-module matched with each port according to the first position information of each port; the layout of the target module is generated based on the second position information of the target sub-module matched with each port, the layout of the target module comprises a plurality of candidate sub-modules and a plurality of ports, and therefore the positions of the candidate sub-modules can be set based on the position information of the ports, the layout of the target module is automatically generated, manual operation is not needed, the generation efficiency of the layout can be improved, and time and labor cost can be saved.
In some embodiments, fig. 3 is a schematic flow chart of a method for generating another version provided in an embodiment of the present application, and fig. 3 is a detailed description of a possible implementation manner when executing S103 on the basis of the embodiment shown in fig. 1, as follows:
and S1031, determining the abscissa of each port as the abscissa of the target sub-module matched with each port.
For example, the first location information may be a center coordinate, and the center point of the port is denoted as c, and the first location information of the port may be coordinates (Xc, yc). In the case where a plurality of ports are arranged in the X direction, the abscissa Xc of each port may be taken as the abscissa of the target sub-module to which each port is matched.
S1032, determining the vertical coordinate of the target sub-module matched with each port according to the sum of the vertical coordinate of each port and the preset value.
Illustratively, the preset value Y th Can be a value set manually, e.g. preset value Y th Is-30 μm. On the basis of the above embodiment, the ordinate Yc and the preset value Y of each port can be obtained th Of (a) is the sum of Yc-Y th And Yc-Y th As the ordinate of the target sub-module for each port match. Thus, the second position information of the target submodule is (Xc, yc-Y) th )。
In the embodiment of the application, the abscissa of each port is determined as the abscissa of the target submodule matched with each port; the sum of the vertical coordinate of each port and the preset value is determined as the vertical coordinate of the target submodule matched with each port, the target submodule can be arranged in the area near the matched port, and the area occupied by the layout of the target module can be reduced.
On the basis of the above embodiment, the difference between the respective sizes of the plurality of candidate sub-modules is smaller than a preset threshold.
For example, if the plurality of candidate sub-modules include a plurality of identical sub-modules, the plurality of identical sub-modules are obtained by calling one sub-module for multiple times, so that the sizes of the plurality of identical sub-modules are identical, and the difference between the sizes of the plurality of identical sub-modules is 0, which is obviously smaller than the preset threshold. If the plurality of candidate sub-modules includes a plurality of different sub-modules, the difference between the respective sizes of the plurality of different sub-modules needs to be smaller than a preset threshold, that is, the size difference between the plurality of different sub-modules is smaller.
Therefore, the difference of the distance between the adjacent candidate sub-modules is small, and aiming at the implementation mode of determining the second position information of the target sub-module, the adjacent candidate sub-modules can be prevented from being overlapped, and the success rate of generating the layout can be improved.
It should be noted that, in the embodiment of the present application, the candidate sub-block size may be a length in the X direction. In practical applications, the size of the candidate sub-module may also be the length in the Y direction; alternatively, the length in the X direction may be multiplied by the length in the Y direction, which is not particularly limited in the present application.
In the embodiment of the application, the difference value of the sizes of the candidate sub-modules is smaller than the preset threshold value, so that the adjacent candidate sub-modules can be prevented from being overlapped, and the success rate of generating the layout can be improved.
In some embodiments, fig. 4 is a flowchart illustrating a method for generating another version provided in an embodiment of the present application, and fig. 4 is a detailed description of a possible implementation manner for acquiring the second connection information of each candidate sub-module before executing S102 on the basis of the embodiment shown in fig. 1, as follows:
s201, selecting a plurality of sub-candidate modules, and respectively extracting respective second connection information of the plurality of candidate sub-modules.
When a plurality of candidate sub-modules are generated, each candidate sub-module carries the second connection information of the candidate sub-module, and therefore, the second connection information of each candidate sub-module can be extracted by selecting all the candidate sub-modules.
As a specific description of another possible implementation manner of obtaining the second connection information of each candidate sub-module, a file for generating a plurality of candidate sub-modules may be obtained, and the second connection information of each candidate sub-module in the file may be extracted.
In some embodiments, fig. 5 is a flowchart illustrating a method for generating another version provided in an embodiment of the present application, and fig. 5 is a detailed description of a possible implementation manner when executing S104 on the basis of the embodiment shown in fig. 1, as follows:
and S104', generating a layout of the target module based on the plurality of ports and the plurality of target sub-modules positioned at the second position information.
Illustratively, the position of each port in the plurality of ports is a position corresponding to the corresponding first position information, the target sub-module matched with each port corresponds to one piece of second position information, and the target sub-module is moved to the position corresponding to the second position information, so that the position of each target sub-module is the position corresponding to the second position information. At this time, all the ports and all the target sub-modules are already placed at corresponding positions, and in addition, each port is electrically connected with the matched target sub-module, so that the final layout of the target module can be obtained.
An embodiment of the present application further provides a layout generating apparatus, and fig. 6 is a schematic structural diagram of the layout generating apparatus provided in the embodiment of the present application, and as shown in fig. 6, the layout generating apparatus includes:
the obtaining module 110 is configured to obtain first location information and first connection information of each of the plurality of ports.
A determining module 120, configured to determine, according to the first connection information of each port and second connection information of each of multiple candidate sub-modules, a target sub-module that is matched to each port, where the target sub-module is one of the multiple candidate sub-modules; and determining second position information of the target sub-module matched with each port according to the first position information of each port.
A generating module 130, configured to generate a layout of a target module based on the second position information of the target sub-module matched by each port, where the layout of the target module includes the multiple candidate sub-modules and the multiple ports.
In some embodiments, the obtaining module 110 is further configured to generate the plurality of ports and arrange the plurality of ports along a target direction; the first position information and the first connection information of each of the plurality of ports are extracted, respectively.
In some embodiments, the first location information is center coordinates.
In some embodiments, the determining module 120 is further configured to determine the abscissa of each port as the abscissa of the target sub-module matched to each port; and determining the sum of the ordinate of each port and a preset value as the ordinate of the target sub-module matched with each port.
In some embodiments, the difference in the respective sizes of the plurality of candidate sub-blocks is less than a preset threshold.
In some embodiments, the generating means of the layout further comprises:
and the extracting module is used for selecting the plurality of sub-candidate modules and respectively extracting the second connection information of the plurality of candidate sub-modules.
In some embodiments, the generating module 130 is further configured to generate a layout of the target module based on the plurality of ports and the plurality of target sub-modules located at the second location information.
The apparatus provided in the present disclosure may be configured to perform the steps of the method embodiments, and the implementation principle and the technical effect are similar, which are not described herein again.
The present application further provides an electronic device, comprising: a processor for executing a computer program stored in a memory, the computer program, when executed by the processor, implementing the steps of the above-described method embodiments.
Fig. 7 is a schematic structural diagram of an electronic device provided in an embodiment of the present application, and fig. 7 shows a block diagram of an exemplary electronic device suitable for implementing an embodiment of the present invention. The electronic device shown in fig. 7 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in FIG. 7, electronic device 12 is embodied in the form of a general purpose computing device. The components of electronic device 12 may include, but are not limited to: one or more processors 16, a system memory 28, and a bus 18 that connects the various system components (including the system memory 28 and the processors 16).
Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, industry Standard Architecture (ISA) bus, micro-channel architecture (MAC) bus, enhanced ISA bus, video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Electronic device 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by electronic device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
The system memory 28 may include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM) 30 and/or cache memory 32. The electronic device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from and write to non-removable, nonvolatile magnetic media (commonly referred to as "hard drives"). A magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 18 by one or more data media interfaces. System memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
A program/utility 40 having a set (at least one) of program modules 42 may be stored, for example, in system memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may comprise an implementation of a network environment. Program modules 42 generally carry out the functions and/or methodologies of embodiments described herein.
Processor 16 executes various functional applications and data processing, such as implementing method embodiments provided by embodiments of the present invention, by executing at least one of a plurality of programs stored in system memory 28.
The present application also provides a computer-readable storage medium having stored thereon a computer program which, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
Any combination of one or more computer-readable media may be employed. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The present disclosure also provides a computer program product which, when run on a computer, causes the computer to perform the steps of implementing the above-described method embodiments. The embodiment of the application also provides an electronic device.
Those of skill in the art will understand that while some embodiments herein include certain features included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the application and form different embodiments. For example, in the claims, any of the claimed embodiments may be used in any combination.
The above embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.

Claims (10)

1. A method for generating a layout is characterized by comprising the following steps:
acquiring first position information and first connection information of a plurality of ports;
determining a target sub-module matched with each port according to the first connection information of each port and second connection information of each candidate sub-module, wherein the target sub-module is one of the candidate sub-modules;
determining second position information of the target sub-module matched with each port according to the first position information of each port;
and generating a target module layout based on the second position information of the target sub-module matched with each port, wherein the target module layout comprises the candidate sub-modules and the ports.
2. The method of claim 1, wherein obtaining the first location and the first connection information for each of the plurality of ports comprises:
generating the plurality of ports and arranging the plurality of ports along a target direction;
the first location information and the first connection information of each of the plurality of ports are extracted, respectively.
3. The method of claim 1, wherein the first location information is a center coordinate.
4. The method of claim 3, wherein the determining the second location information of the target sub-module that each port matches according to the first location information of each port comprises:
determining the abscissa of each port as the abscissa of the target submodule matched with each port;
and determining the sum of the ordinate of each port and a preset value as the ordinate of the target sub-module matched with each port.
5. The method of claim 4, wherein the difference between the respective sizes of the plurality of candidate sub-blocks is less than a preset threshold.
6. The method according to any one of claims 1 to 5, wherein before determining the target sub-candidate module matched to each port according to the first connection information of each port and the second connection information of each of the plurality of sub-candidate modules, the method further comprises:
and selecting the plurality of sub-candidate modules, and respectively extracting the second connection information of the plurality of candidate sub-modules.
7. The method according to any one of claims 1 to 5, wherein the generating a layout of a target module based on the second position information of the target sub-module matched by each port comprises:
and generating a layout of the target module based on the plurality of ports and the plurality of target sub-modules located at the second position information.
8. A layout generation apparatus, comprising:
the device comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring first position information and first connection information of a plurality of ports;
a determining module, configured to determine, according to the first connection information of each port and second connection information of each of multiple candidate sub-modules, a target sub-module that is matched with each port, where the target sub-module is one of the multiple candidate sub-modules; determining second position information of the target sub-module matched with each port according to the first position information of each port;
and the generating module is used for generating a layout of the target module based on the second position information of the target sub-module matched with each port, wherein the layout of the target module comprises the candidate sub-modules and the ports.
9. An electronic device, comprising: a processor for executing a computer program stored in a memory, the computer program, when executed by the processor, implementing the steps of the method of any of claims 1-7.
10. A computer storage medium, characterized in that the computer storage medium has stored thereon a computer program which, when being executed by a processor, carries out the steps of the method according to any one of claims 1-7.
CN202211521265.7A 2022-11-30 2022-11-30 Layout generation method and device, electronic equipment and medium Pending CN115758977A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211521265.7A CN115758977A (en) 2022-11-30 2022-11-30 Layout generation method and device, electronic equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211521265.7A CN115758977A (en) 2022-11-30 2022-11-30 Layout generation method and device, electronic equipment and medium

Publications (1)

Publication Number Publication Date
CN115758977A true CN115758977A (en) 2023-03-07

Family

ID=85341316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211521265.7A Pending CN115758977A (en) 2022-11-30 2022-11-30 Layout generation method and device, electronic equipment and medium

Country Status (1)

Country Link
CN (1) CN115758977A (en)

Similar Documents

Publication Publication Date Title
CN110096309B (en) Operation method, operation device, computer equipment and storage medium
CN110096310B (en) Operation method, operation device, computer equipment and storage medium
CN110597559A (en) Computing device and computing method
US10528670B2 (en) Amendment source-positioning method and apparatus, computer device and readable medium
CN110119807B (en) Operation method, operation device, computer equipment and storage medium
CN110489428B (en) Multi-dimensional sparse matrix compression method, decompression method, device, equipment and medium
CN111381871A (en) Operation method, device and related product
CN114528044B (en) Interface calling method, device, equipment and medium
CN109284108A (en) Date storage method, device, electronic equipment and storage medium
CN115758977A (en) Layout generation method and device, electronic equipment and medium
CN111047005A (en) Operation method, operation device, computer equipment and storage medium
CN109542837B (en) Operation method, device and related product
CN109558565B (en) Operation method, device and related product
CN109543835B (en) Operation method, device and related product
CN111401536A (en) Operation method, device and related product
CN111381872A (en) Operation method, device and related product
CN111290789B (en) Operation method, operation device, computer equipment and storage medium
CN112395008A (en) Operation method, operation device, computer equipment and storage medium
CN113378505B (en) Wiring layout adjustment method and device, electronic equipment and storage medium
CN112395009A (en) Operation method, operation device, computer equipment and storage medium
CN111353124A (en) Operation method, operation device, computer equipment and storage medium
CN110263337A (en) Input behavior recognition methods, device, equipment and medium
CN111382390B (en) Operation method, device and related product
CN111382851A (en) Operation method, device and related product
CN111026440B (en) Operation method, operation device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination