EP4381414A1 - Automatic redistribution layer via generation - Google Patents
Automatic redistribution layer via generationInfo
- Publication number
- EP4381414A1 EP4381414A1 EP22764921.7A EP22764921A EP4381414A1 EP 4381414 A1 EP4381414 A1 EP 4381414A1 EP 22764921 A EP22764921 A EP 22764921A EP 4381414 A1 EP4381414 A1 EP 4381414A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- vias
- metal layers
- attributes
- recited
- layers
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/18—Chip packaging
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/12—Printed circuit boards [PCB] or multi-chip modules [MCM]
Definitions
- the semiconductor package utilizes controlled collapse chip connection (C4) interconnections, which is also referred to as flip-chip interconnection.
- C4 bumps are connected to vertical through silicon vias (TSVs) formed in a silicon package substrate that has connections to the printed circuit board using bump pads.
- TSVs vertical through silicon vias
- Groups of TSVs forming through silicon buses are used as interconnects between a base die, one or more additional integrated circuits, and routing on a printed circuit board (PCB) such as a motherboard or a card.
- PCB printed circuit board
- the demand for SiPs and more signal interconnects between the integrated circuits and the printed circuit board (PCB) also increases the demand for package substrates and interposers.
- the package substrate is a part of the chip package that provides mechanical base support as well as provides an electrical interface for the signal interconnects.
- An interposer is an intermediate layer between the one or more integrated circuits and either flip chip bumps or other interconnects and the package substrate. When used, the interposer provides the electrical interface for the signal interconnects between the die assembled on it (die-to-die interconnects) and the package substrate (die-to-package interconnects).
- the terms package substrate and interposer are used interchangeably.
- the one or more integrated circuits within the semiconductor package have signal routes connected between them and the motherboard (or printed circuit board) using redistribution layers.
- the signal routes of the redistribution layers are signal routes located between the micro-bumps that make contact with pads on the integrated circuit and through silicon vias (TSVs) of a silicon package substrate.
- FIG. 1 is a generalized diagram of a computing system.
- FIG. 2 is a generalized diagram of a cross-sectional view of a semiconductor package metal layer scheme.
- FIG. 3 is a generalized diagram of metal layers of redistribution layers.
- FIG. 4 is a generalized diagram of metal layers of redistribution layers.
- FIG. 5 is a generalized diagram of metal layers of redistribution layers.
- FIG. 6 is a generalized diagram of a graphical user interface.
- FIG. 7 is a generalized diagram of one embodiment of a method for automatic via generation in redistribution layers.
- FIG. 8 is a generalized diagram of one embodiment of a method for automatic via generation in redistribution layers.
- FIG. 9 is a generalized diagram of a computing system.
- a user defines attributes to use for automatic via generation in redistribution layers of a semiconductor package.
- the user provides the attributes through a graphical user interface (GUI).
- GUI graphical user interface
- the user provides the attributes through a text file or an executable file written in one of a variety of scripting languages.
- a computing device used by the user includes hardware, such as circuitry of a processor, to execute instructions of an automatic via generator.
- the automatic via generator uses the attributes, a copy of a redistribution layer (RDL) netlist of the signal routes within the RDL, and a copy of the RDL mask layout data representing the signal masks of the metal layers within the RDL.
- RDL redistribution layer
- the processor of the computing device executes the instructions of the automatic via generator, the processor identifies metal overlap regions between metal layers of the RDL.
- the metal overlap regions are also referred to as metal overlap junction areas, or overlap junction areas.
- the metal overlap regions are between adjacent metal layers of the RDL such as the metal layers RDL1 and RDL2.
- the metal overlap regions are between two non-adjacent metal layers of the RDL such as the metal layers RDL1 and RDL4 such as a through hole via.
- the metal overlap regions are between a pin of the surface mount device (SMD) pin layer and a metal layer of the RDL.
- SMD surface mount device
- the metal overlap regions are between a metal layer of the RDL and an underbump metallurgy (UBM) layer providing electrical connection to a C4 bump.
- UBM underbump metallurgy
- the metal overlap regions have a square or rectangular shape such as a metal overlap region between two metal layers of the RDL.
- the metal overlap regions have a circular shape such as a metal overlap region between a metal layer of the RDL and a pin of the SMD pin
- the metal overlap region between two metal layers is equal to or greater than a minimum overlap junction area threshold.
- the processor divides an overlap region in half to allow via layers to be placed both above and below the overlap region. Based on attributes received from the user, the processor places via layers of different types in the overlap region.
- the computing system 100 includes the client computing device 150, the servers 120A-120D that include hardware for executing software and supporting the organizational center 110, a network 140, and the data storage 130 that includes one or more data stores supported and used by the organizational center 110.
- the client computing device 150 includes the client computing device 150, the servers 120A-120D that include hardware for executing software and supporting the organizational center 110, a network 140, and the data storage 130 that includes one or more data stores supported and used by the organizational center 110.
- the client computing device 150 which is also referred to as client device 150, includes hardware, such as circuitry of a processor, to execute instructions of the redistribution layer (RDL) automatic via generator 160.
- the RDL automatic via generator 160 (or via generator 160) uses a copy of data stored in the data storage 130 and attributes 166 provided by a user. In an implementation, the user provides the attributes 166 through the graphical user interface (GUI) 162. Examples of data used by the via generator 160 are copies of the RDL mask layout data 132, the RDL netlist, and at least a portion of the design rule checks (DRCs) 136.
- DRCs design rule checks
- the client device 150 includes a desktop computer or a mobile computing device such as a laptop, a tablet computer, and so forth.
- the client device 150 includes hardware circuitry such as a processing unit 170 for processing instructions of computer programs.
- the processing unit 170 includes one or more homogeneous cores of a processor.
- the processing unit includes heterogeneous cores such as a parallel processing architected core and a general-purpose core as used in central processing units (CPUs).
- the parallel architected core may be a graphics processing unit (GPU), a digital signal processing unit (DSP) or other.
- the client device 150 includes a network interface (not shown) supporting one or more communication protocols for data and message transfers through the network 140.
- the network 140 includes multiple switches, routers, cables, wireless transmitters and the Internet for transferring messages and data.
- the network interfaces of the organizational center 110 and the client device 150 support at least the Hypertext Transfer Protocol (HTTP) for communication across the World Wide Web.
- HTTP Hypertext Transfer Protocol
- the organizational center 110 also communicates with the data storage 130 for storing and retrieving data.
- the organizational center 110 is an infrastructure for a vendor producing one or more hardware products.
- the organizational center 110 includes an intranet network providing a private network accessible only to an organization's staff.
- An intranet portal is used to provide access to resources with a user-friendly interface such as graphical user interfaces (GUIs) and dashboards.
- GUIs graphical user interfaces
- the information and services made available by the organizational center 110 is unavailable to the general public through direct access.
- the staff members are able to access resources through the organizational center 110 to communicate with other staff members, collaborate on projects and monitor product development, update products, documents and tools stored in a centralized repository and so forth.
- the servers 120A-120D used for supporting the organizational center 110 and resources accessed through the organizational center 110 include a variety of server types such as database servers, computing servers, application servers, file servers, mail servers and so on.
- the servers 120A-120D and the client device 150 operate with a client-server architectural model.
- the client device 150 includes a copy of a particular version of a given software product or tool such as the via generator 160.
- the version of the via generator 160 is based on at least the operating system and the processor(s) used by the client device 150.
- the via generator 160 includes an engine 164 that when executed by the processor 170, causes the processor 170 to automatically generate vias in a layout mask representation of signal routes in redistribution layers.
- the signal routes of the redistribution layers are signal routes located between an integrated circuit and a printed circuit board.
- the signal routes of the redistribution layers are signal routes located between the micro-bumps that make contact with pads on the integrated circuit and through silicon vias (TSVs) of a silicon package substrate.
- TSVs silicon vias
- the organizational center 110 is an infrastructure for a vendor producing one or more hardware products.
- the integrated circuit is one of a variety of types of integrated circuits being developed for production. With possibly tens of thousands of metal layers used to provide the signal routes in the redistribution layers, manually placing vias on these metal layers takes weeks or months.
- the via generator 160 performs this placement in a more efficient manner.
- the redistribution layers include control signal routes and data signal routes
- the via generator 160 provides automatic via generation for signal routes of the redistribution layers that provide one of a power supply voltage reference level or a ground reference voltage level used by the integrated circuit. To do so, the via generator 160 uses attributes 166 provided by a user.
- the user provides the attributes 166 to the via generator 160 through the graphical user interface (GUI) 162.
- GUI graphical user interface
- the user provides the attributes 166 to the via generator 160 through a text file or an executable file written in one of a variety of scripting languages.
- the processor 170 executes the code of the engine 164 of the via generator 160, the processor 170 automatically generates vias in an order of sequences specified by the attributes 166. Each sequence identifies a pair of adjacent metal layers in the redistribution layers.
- the via generator 160 additionally uses copies of the RDL mask layout
- the integrated circuit is a system on a chip (SoC). As shown, one SOC is used in the hardware product. However, other examples of integrated circuits are possible and contemplated such as one or more of a CPU, a GPU, a multimedia engine, an application specific integrated circuit (ASIC), a digital signa processor (DSP), and so forth.
- the interconnect 240 provides a connection between the multiple redistribution layers (RDLs) 1 to 4 and the package substrate and motherboard. In some implementations, it is common to have a few hundred UBM layers and C4 bumps. Additionally, although four metal layers (RDLs 1-4) are used in redistribution lay ers 230, in other implementations a different number of metal layers is used. Between adjacent metal layers (RDLs 1-4) of the redistribution layers 230 are the vias of the layers labeled Via2 to Via4, which
- the SoC 210 may have signals routed both to and from other SOCs (not shown) and the motherboard (printed circuit board) through at least the interconnect 240.
- the signals are routed through the metal layers of the redistribution layers 230 such as the metal layer designated as redistribution layer 1 (RDL1) and the metal layer designated as redistribution layer 4 (RDL4). These metal layers are also referred to as conductor 1 and conductor 4, respectively.
- the signals are also routed through the pins of the surface mount device (SMD) Pin layer, and the via lay ers Vial to Via5.
- SMD surface mount device
- the redistribution layers 230 include control signal routes and data signal routes, here, the signal routes shown distribute one or more of a power supply voltage reference level and a ground reference voltage level used by the SoC 210 and the SoC 212.
- Each of the SoC 210 and the SoC 212 is capable of using one or more power supply voltage reference levels and one or more ground reference voltage levels.
- each of the SoC 210 and the SoC 212 has tens of thousands of nodes using pads 220 for receiving the power supply voltage reference levels and the one or more ground reference voltage levels while there are hundreds of UBMs for transferring these voltage reference levels. The routing of these signals becomes complex.
- FIG. 4 a generalized block diagram of metal layers 400 is shown. Materials and structures previously described are numbered identically. As shown, two horizontal signal routes in the metal layer RDL1 302 are connected by a vertical signal route in the metal layer RDL2 304. The cross sections of the side A and the side B are also provided to aid viewing the layout in three dimensions.
- the metal layers of RDL1 302 make a physical connection with the metal layer of RDL2 304 with the placement of vias of the Via2 layer 306. Due to the larger width of the metal layer of RDL2 304, two columns of 2 vias of the Via2 layer 306 are placed.
- metal layer RDL3 502 two horizontal signal routes in the metal layer RDL3 502 are connected by the same vertical signal route in the metal layer RDL2 304.
- the metal layer RDL3 502 is located above the metal layer RDL2 304 using the previous orientation for metal layers 300-500 (of FIG. 3 and FIG. 4).
- each of the two metal layers RDL1 302, the single metal layer RDL2 304, and the two metal layers RDL3 502 are physically connected.
- a table is provided with multiple fields.
- Field 604 indicates the adjacent layers to customize for automatic via generation. As shown, the first row indicates a metal layer RDL1 and the SMD pin layer. The Vial layer is between these two layers (RDL1 and SMD pin). The second row indicates the metal layer RDL1 and the metal layer RDL2. The Via2 layer is between these two metal layers (RDL1 and RDL2). The third and fourth rows follow this same convention for identifying via layers. The last row indicates a metal layer (RDL4) and the UBM physically connected to C4 bumps. The Via5 layer is between these two layers (RDL4 and UBM).
- Field 606 indicates a via pad stack for each of the via layers.
- the user selects “rail right edge” as the starting point, and the user selects “vertical” for the direction, which is the third sub-field.
- the vertical and horizontal directions are used to determine the placement of the pad stacks of the multiple vias that are placed in the metal overlap region. Examples of placing multiple vias in the metal overlap region are provided in Figures 3-5.
- one of the sub-fields of field 610 or another field (not show n ) of GUI 600 includes an indication that allows the user to specify the type of hole and corresponding type of via.
- the user is able to specify whether the hole of the via is a hole of a through hole via, a hole of multiple holes of a stack of micro vias, a hole of a blind microvia, a hole of a buried hole, or a hole of a copper filled microvia.
- the selection of the type of hole and corresponding type of via is not permitted by the user. Rather, the semiconductor fabrication process already defines the type of hole and corresponding type of via
- SUBSTITUTE SHEET (RULE 26) between metal layers of the RDL. This information is provided by another file that is accessed by the RDL automatic via generator when generating the vias based on the attributes provided by the user.
- a row of the table identifies one or more via layers that skips a metal layer.
- a row indicates the metal layers RDL2 and RDL4.
- One or more vias are between these two metal layers (RDL2 and RDL4), but does not traverse through the metal layer RDL3.
- RDL2 and RDL4 the metal layers that skips a metal layer.
- the type of hole and corresponding type of via between metal layers of the RDL are specified by the user or they are already specified by the semiconductor fabrication process.
- Another field or other indicator indicates that there is no metal layer RDL3 in these particular overlap regions. Therefore, only dielectric is present with no metal of the metal layer RDL3 between RDL2 and RDL4 in these particular overlap regions.
- one or more fields of the table of the GUI 600 includes a cross-section definition of the via layers identifying a thickness (depth) of the corresponding vias between corresponding metal layers.
- the pad stack definition provides the diameters of the vias as described earlier.
- a field of the table of the GUI 600 indicates via stacking rules such as vias of the Vial layer and the Via3 layer are allowed to be placed (stacked) in a same vertically aligned overlap region, whereas, vias of the Via2 layer are not permitted to be placed in this same vertically aligned overlap region.
- Field 620 indicates the sequence order to use for the automatic via generation in the redistribution layers. It is unnecessary to traverse the via layers in a continuous adjacent manner. The user is able to customize the order of the via layers that the automatic via generator uses. It is noted that in some cases, the automatic via generator defaults to using a maximum number of vias of the Vial layer to fit inside of an area of a pin of the SMD pin layer while still satisfying a DRC using the pitch of the Vial layer. In various implementations, the pins of the SMD pin layer are significantly larger than the vias of the Vial layer.
- one or more via layers have multiple sequence numbers indicating that a reiteration occurs for a particular via layer.
- a first pass of the Via2 layer adds only a single column of vias of the Via2 layer on the right edge of the vertical metal layer RDL2.
- the placement of the vias of the Via2 layer has completed.
- SUBSTITUTE SHEET (RULE 26) overlapping a metal layer RDL1 as shown in metal layers 400, it is possible to add more vias of the Via2 layer.
- Field 630 allows the user to indicate whether to allow DRC violations. For example, the user wishes to stagger the vias of two different layers such as vias of the Vial layer and the Via3 layer. Therefore, more vias fit within a particular area while still satisfying DRC spacing at a same via layer. Field 630 also allows the user to indicate whether a report is to be generated providing result information of the automatic via generation using the attributes provided in the multiple fields of the GUI 600.
- FIG. 7 one embodiment of a method 700 for automatic via generation in redistribution layers is shown.
- the steps in this embodiment are shown in sequential order. However, in other embodiments, some steps occur in a different order than shown, some steps are performed concurrently, some steps are combined with other steps, and some steps are absent.
- a user selects attributes to customize automatic via generation in redistribution layers (block 702).
- the user provides the attributes to an automatic via generator through the graphical user interface (GUI).
- GUI graphical user interface
- the GUI 600 (of FIG. 6) is one example.
- the user provides the attributes to the automatic via generator through a text file or an executable file written in one of a variety of scripting languages.
- the user initiates execution of the automatic via generator and a processor of a corresponding computing device performs automatic via generation in the redistribution layers based on the attributes (block 704).
- this automatic generation includes receiving attributes such as reference metal identification, a starting point, a direction, and a sequence. Additionally, an overlap region is identified as discussed above.
- attributes may include pitch and size information for a given layer that is used to determine spacing between vias.
- the automatic process is configured to divide the overlap region in half and place vias both above and below' the overlap region. Subsequently, the user executes one or more tools to perform design rule check (DRC) verification and layout versus schematic (LVS) verification (block 706).
- DRC design rule check
- LVS layout versus schematic
- the user determines whether the results of the automatic via generation satisfy design requirements such as a measure of via redundancy and a measure of equivalent via resistance in a particular area of the redistribution layers. If the results do not satisfy design requirements (“no” branch of the conditional block 708), then control flow' of method 700 returns to block 702 where
- SUBSTITUTE SHEET (RULE 26) the user selects attributes. If the results satisfy design requirements (“yes” branch of the conditional block 708), then the design of the semiconductor package is taped out and fabricated (block 710). [0052] If an electnc potential is not applied to a first node of an integrated circuit in the semiconductor package (“no” branch of the conditional block 712), then the semiconductor package waits for power up (block 714). However, if a potential is applied to the first node created a potential difference (“yes” branch of the conditional block 710), then metal layers and vias that were automatically generated in the redistribution layers conveys a current between the integrated circuit and the motherboard (block 716).
- FIG. 8 one embodiment of a method 800 for automatic via generation in redistribution layers is shown.
- a user defines attributes for an automatic via generator to use for automatic via generation in redistribution layers.
- the user provides the attributes to the automatic via generator through the graphical user interface (GUI).
- GUI graphical user interface
- the GUI 600 (of FIG. 6).
- the user provides the attributes to the automatic via generator through a text file or an executable file written in one of a variety of scripting languages.
- the processor executes the instructions of the automatic via generator, the processor define pads at far ends of the redistribution layers (block 802). For example, the user defines a pitch to use inside pads.
- the user defines a pitch of vias of the Vial layer to connect to pins of the SMD pin layer.
- the user selects the pitch to both satisfy preexisting DRC rules and to maximize the number of vias of the Vial layer making physical connection to a corresponding pin of the SMD pin layer.
- the processor defines the pins of the SMD pins layer at the top of the stack of redistribution layers and defines the vias of the Via5 layer at the bottom of the stack of the redistribution layers, where the top and bottom are indication of orientation
- the processor calculates the metal overlap regions (block 804). Examples of metal overlap regions between the metal layers RDL1 and RDL2 are shown in metal layers 300-500 (of Figures 3-5). Examples of metal overlap regions between the metal layers RDL2 and RDL3 are shown in metal layers 500 (of FIG. 5).
- the processor calculates metal overlap regions between a pin of the SMD pin layer and a metal layer of the RDL. In yet other examples, the processor calculates metal overlap regions between a metal layer of the RDL and an under-bump metallurgy (UBM) layer providing electrical connection to a C4 bump.
- UBM under-bump metallurgy
- the shapes of the metal overlap regions are squares, rectangles, or circles based on the upper and lower layers used to define the metal overlap regions. In some implementations, based on received attributes, the processor divides an overlap region in half to allow via layers to be placed both above and below
- SUBSTITUTE SHEET (RULE 26) the overlap region.
- An example of this type of via placement is shown in metal layers 500 (of FIG. 5).
- the processor places vias of different via layer types (e.g., Via2, Via3) in the overlap region.
- Via2 vias e.g., Via2, Via3
- the bottom (below) vias are placed in the other half. If the two adjacent layers overlapping regions are not in the same location, the overlap region is fully utilized for bottom vias and vice versa (example, RDL1 and RDL3 are not in the same plane).
- Such an approach may be used in cases where DRC constraints do not permit stacking of vias.
- the processor generates the vias based on an indicated sequence (block 806).
- the indicated sequence is specified in the received attributes from the user.
- the sequence order determines which via layer to use to initiate the automatic via generation and each subsequent via layer to select for further automatic via generation.
- the vias are placed based on the size and pitch corresponding to the currently selected via layer so as to satisfy DRC rules.
- the processor does not change the dimensions of the metal layers of signal routes. If multiple sequences for certain via layers are specified in the received attributes, the processor places additional vias in the via layers where possible. Although in some cases via redundancy already exists, the automatic via generator still increases the via count where possible.
- the processor generates a report (block 808).
- the processor maintains a log file during the automatic via generation and uses the corresponding information to provide summarized results in the report. In various implementations, the processor writes a file located in a known destination.
- a computing system 900 that utilizes redistribution layers with automatically placed vias.
- the computing system 900 utilizes a chip package 940, which includes the automatically generated vias in the redistribution layers.
- the chip package 940 uses one of a ball grid array (BGA) surface mount package, a chip scale package (CSP), and a System in Package (SiP) that communicates with other components on a motherboard (or printed circuit board).
- BGA ball grid array
- CSP chip scale package
- SiP System in Package
- the computing system 900 includes the processor 910 and the memory 930 in the chip package 940.
- only one of the processor 910 and the memory 930 is included in the chip package 940.
- Interfaces such as a memory controller, a bus or a communication fabric, one or more phased locked loops (PLLs) and other clock generation circuitry, a power management unit, and so forth, are not shown for ease of illustration.
- the chip package 940 is connected to the disk memory 954 through the memory bus 950 and the input/output (I/O) controller and bus 952.
- the computing system 900 includes one or more of other processors of a same type or a different type than processor 910, one or more peripheral devices, a network interface, one or more other memory devices, and so forth.
- the functionality of the computing system 900 is incorporated on a system on chip (SoC).
- SoC system on chip
- the functionality of the computing system 900 is incorporated on a peripheral card inserted in a motherboard.
- the computing system 900 is used in any of a variety of computing devices such as a desktop computer, a tablet computer, a laptop, a smartphone, a smartwatch, a gaming console, a personal assistant device, and so forth.
- the memory 930 includes one of a variety of types of dynamic random access memories (DRAMs).
- the memory 930 stores at least a portion of an operating system (OS) 932, one or more applications represented by code 934, and at least source data 936.
- OS operating system
- the memory 930 stores a copy of these software components 932, 934 and 936 that have original copies stored on disk memory 954.
- Memory 930 is also capable of storing intermediate result data and final result data generated by the processor 910 when executing a particular application of code 934.
- the off-chip disk memory 954 includes one or more hard disk drives (HDDs) and Solid-State Disks (SSDs) comprising banks of Flash memory.
- the I/O controller and bus 952 supports communication protocols with the off-chip disk memory 954.
- a single operating system 932 and a single instance of code 934 and source data 936 are shown, in other implementations, another number of these software components are stored in memory 930 and disk memory 954.
- the operating system 932 includes instructions for initiating the boot up of the processor 910, assigning tasks to hardware circuitry, managing resources of the computing system 900 and hosting one or more virtual environments.
- SUBSTITUTE SHEET conveyed or stored on a computer readable medium.
- Numerous types of media which are configured to store program instructions are available and include hard disks, floppy disks, CD- ROM, DVD, flash memory, Programmable ROMs (PROM), random access memory (RAM), and various other forms of volatile or non-volatile storage.
- a computer accessible storage medium includes any storage media accessible by a computer during use to provide instructions and/or data to the computer.
- a computer accessible storage medium includes storage media such as magnetic or optical media, e.g., disk (fixed or removable), tape, CD-ROM, or DVD-ROM, CD-R, CD-RW, DVD-R, DVD-RW, or Blu-Ray.
- Storage media further includes volatile or non-volatile memory media such as RAM (e.g. synchronous dynamic RAM (SDRAM), double data rate (DDR, DDR2, DDR3, etc.) SDRAM, low-power DDR (LPDDR2, etc.) SDRAM, Rambus DRAM (RDRAM), static RAM (SRAM), etc.), ROM, Flash memory, nonvolatile memory (e.g. Flash memory) accessible via a peripheral interface such as the Universal Serial Bus (USB) interface, etc.
- RAM e.g. synchronous dynamic RAM (SDRAM), double data rate (DDR, DDR2, DDR3, etc.) SDRAM, low-power DDR (LPDDR2, etc.) SDRAM, Rambus DRAM (RDRAM), static RAM (SRAM), etc.
- ROM nonvolatile memory
- Flash memory accessible via a peripheral interface such as the Universal Serial Bus (USB) interface
- USB Universal Serial Bus
- Storage media includes microelectromechanical systems (MEMS), as well as storage media accessible via a communication medium such as a
- program instructions include behavioral-level descriptions or register-transfer level (RTL) descriptions of the hardware functionality in a high level programming language such as C, or a design language (HDL) such as Verilog, VHDL, or database format such as GDS II stream format (GDSII).
- RTL register-transfer level
- HDL design language
- GDSII database format
- the description is read by a synthesis tool, which synthesizes the description to produce a netlist including a list of gates from a synthesis library.
- the netlist includes a set of gates, which also represent the functionality of the hardware including the system.
- the netlist is then placed and routed to produce a data set describing geometric shapes to be applied to masks.
- the masks are then used in various semiconductor fabrication steps to produce a semiconductor circuit or circuits corresponding to the system.
- the instructions on the computer accessible storage medium are the netlist (with or without the synthesis library) or the data set, as desired. Additionally, the instructions are utilized for purposes of emulation by a hardware based type emulator from such vendors as Cadence®, EVE®, and Mentor Graphics®.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202163228552P | 2021-08-02 | 2021-08-02 | |
| US17/562,833 US11960813B2 (en) | 2021-08-02 | 2021-12-27 | Automatic redistribution layer via generation |
| PCT/US2022/037897 WO2023014512A1 (en) | 2021-08-02 | 2022-07-21 | Automatic redistribution layer via generation |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4381414A1 true EP4381414A1 (en) | 2024-06-12 |
Family
ID=83191878
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP22764921.7A Pending EP4381414A1 (en) | 2021-08-02 | 2022-07-21 | Automatic redistribution layer via generation |
Country Status (4)
| Country | Link |
|---|---|
| EP (1) | EP4381414A1 (en) |
| JP (1) | JP7769092B2 (en) |
| KR (1) | KR20240035626A (en) |
| WO (1) | WO2023014512A1 (en) |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5798937A (en) * | 1995-09-28 | 1998-08-25 | Motorola, Inc. | Method and apparatus for forming redundant vias between conductive layers of an integrated circuit |
| JP4349742B2 (en) * | 2000-12-27 | 2009-10-21 | 富士通マイクロエレクトロニクス株式会社 | Circuit design apparatus and circuit design method |
| JP2002270992A (en) * | 2001-03-14 | 2002-09-20 | Fujitsu Ltd | Wiring device |
| US6978433B1 (en) * | 2002-09-16 | 2005-12-20 | Xilinx, Inc. | Method and apparatus for placement of vias |
| US20050234684A1 (en) * | 2004-04-19 | 2005-10-20 | Mentor Graphics Corp. | Design for manufacturability |
| WO2007066411A1 (en) * | 2005-12-09 | 2007-06-14 | Fujitsu Limited | Designing apparatus for circuits of semiconductor devices or the like, method of designing the circuits and designing program |
| US7302662B2 (en) * | 2006-03-28 | 2007-11-27 | National Tsing Hua University | Method for post-routing redundant via insertion in integrated circuit layout |
| US8276104B2 (en) * | 2010-12-09 | 2012-09-25 | Spansion Llc | Stress reduction on vias and yield improvement in layout design through auto generation of via fill |
| JP5535301B2 (en) * | 2012-12-14 | 2014-07-02 | キヤノン株式会社 | Printed circuit board design support program, printed circuit board design support method, and printed circuit board design support apparatus |
| US10204203B2 (en) * | 2012-12-31 | 2019-02-12 | Synopsys, Inc. | Pattern-based power-and-ground (PG) routing and via creation |
| US9305131B2 (en) * | 2013-12-03 | 2016-04-05 | Mediatek Inc. | Method for flip chip packaging co-design |
| CN111027272B (en) * | 2019-11-28 | 2024-12-31 | 中国科学院微电子研究所 | Method and device for generating through hole layer layout |
| CN112466815B (en) * | 2020-11-24 | 2023-08-15 | 上海华力集成电路制造有限公司 | A Method for Adding Redundant Via Holes |
-
2022
- 2022-07-21 WO PCT/US2022/037897 patent/WO2023014512A1/en not_active Ceased
- 2022-07-21 KR KR1020247006826A patent/KR20240035626A/en active Pending
- 2022-07-21 EP EP22764921.7A patent/EP4381414A1/en active Pending
- 2022-07-21 JP JP2024502026A patent/JP7769092B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023014512A1 (en) | 2023-02-09 |
| JP2024532658A (en) | 2024-09-10 |
| JP7769092B2 (en) | 2025-11-12 |
| KR20240035626A (en) | 2024-03-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11894359B2 (en) | Distributed semiconductor die and package architecture | |
| TWI877096B (en) | Method for generating three-dimensional integrated circuit design | |
| US8689160B2 (en) | Method and apparatus of an integrated circuit | |
| US8775998B2 (en) | Support device of three-dimensional integrated circuit and method thereof | |
| CN107066681B (en) | Integrated circuits and computer-implemented methods of fabricating integrated circuits | |
| CN110675903A (en) | Configurable random access memory (RAM) arrays including through-silicon vias (TSVs) bypassing the physical layer | |
| KR102714620B1 (en) | Functionally redundant semiconductor dies and package | |
| CN112733483B (en) | Method for modeling high-speed channel, method for designing and manufacturing semiconductor package | |
| US20250029900A1 (en) | Glass core package substrates | |
| Murali et al. | Heterogeneous 3D ICs: Current status and future directions for physical design technologies | |
| US11960813B2 (en) | Automatic redistribution layer via generation | |
| WO2023014512A1 (en) | Automatic redistribution layer via generation | |
| CN119294341B (en) | Simulation method and device of chip system and related equipment | |
| US12488171B2 (en) | Through silicon via macro with dense layout for placement in an integrated circuit floorplan | |
| US20230032595A1 (en) | Automated redistribution layer power connections | |
| WO2023014514A1 (en) | Automated redistribution layer power connections | |
| CN117642746A (en) | Automatic redistribution layer via generation | |
| CN117616418A (en) | Automated redistribution layer power connections | |
| CN116108796A (en) | Wafer substrate layout generation method, device, equipment and storage medium | |
| US12575449B2 (en) | Backside power delivery and power grid pattern to support 3D die stacking | |
| Heinig et al. | 14 Overview of 3D CAD Design Tools | |
| JP2015141650A (en) | verification method, verification apparatus and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20240124 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |