Integrated circuit design
Integrated circuit design, semiconductor design, chip design or IC design, is a sub-field of electronics engineering, encompassing the particular logic and circuit design techniques required to design integrated circuits. An IC consists of miniaturized electronic components built into an electrical network on a monolithic semiconductor substrate by photolithography.
IC design can be divided into the broad categories of digital and analog IC design. Digital IC design is to produce components such as microprocessors, FPGAs, memories and digital ASICs. Digital design focuses on logical correctness, maximizing circuit density, and placing circuits so that clock and timing signals are routed efficiently. Analog IC design also has specializations in power IC design and RF IC design. Analog IC design is used in the design of op-amps, linear regulators, phase locked loops, oscillators and active filters. Analog design is more concerned with the physics of the semiconductor devices such as gain, matching, power dissipation, and resistance. Fidelity of analog signal amplification and filtering is usually critical, and as a result analog ICs use larger area active devices than digital designs and are usually less dense in circuitry.
Modern ICs are enormously complicated. An average desktop computer chip, as of 2015, has over 1 billion transistors. The rules for what can and cannot be manufactured are also extremely complex. Common IC processes of 2015 have more than 500 rules. Furthermore, since the manufacturing process itself is not completely predictable, designers must account for its statistical nature. The complexity of modern IC design, as well as market pressure to produce designs rapidly, has led to the extensive use of tools in the IC design process, known as electronic design automation tools. The design of some processors has become complicated enough to be difficult to fully test, and this has caused problems at large cloud providers. In short, designing an IC using EDA software consists of designing, testing, and verifying the instructions that the IC will carry out.
Fundamentals
Integrated circuit design involves the creation of electronic components, such as transistors, resistors, capacitors and the interconnection of these components onto a piece of semiconductor, typically silicon. A method to isolate the individual components formed in the substrate is necessary since the substrate silicon is conductive and often forms an active region of the individual components. The two common methods are p-n junction isolation and dielectric isolation. Attention must be given to power dissipation of transistors and interconnect resistances and current density of the interconnect, contacts and vias since ICs contain very tiny devices compared to discrete components, where such concerns are less of an issue. Electromigration in metallic interconnect and ESD damage to the tiny components are also of concern. Finally, the physical layout of certain circuit subblocks is typically critical, in order to achieve the desired speed of operation, to segregate noisy portions of an IC from quiet portions, to balance the effects of heat generation across the IC, or to facilitate the placement of connections to circuitry outside the IC.Design flow
A typical IC design cycle involves several steps:- System specification
- # Feasibility study and die size estimate
- # Function analysis
- Architectural or system-level design
- Logic design
- # Analogue design, simulation, and layout
- # Digital design and simulation
- # System simulation, emulation, and verification
- Circuit design
- #Digital design synthesis
- #Design for testing and automatic test pattern generation
- #Design for manufacturability
- Physical design
- #Floorplanning
- #Place and route
- #Parasitic extraction
- Physical verification and signoff
- #Static timing
- #Co-simulation and timing
- Mask data preparation
- #Chip finishing with tape out
- #Reticle layout
- #Layout-to-mask preparation
- Reticle fabrication
- Photomask fabrication
- Wafer fabrication
- Packaging
- Die test
- #Post silicon validation and integration
- # Device characterization
- # Tweak
- Chip deployment
- #Datasheet generation
- # Ramp up
- # Production
- # Yield analysis / warranty analysis reliability
- #Failure analysis on any returns
- # Plan for next generation chip using production information if possible
Summary
Roughly saying, digital IC design can be divided into three parts.- Electronic system-level design: This step creates the user functional specification. The user may use a variety of languages and tools to create this description. Examples include a C/C++ model, VHDL, SystemC, SystemVerilog, transaction-level models, Simulink, and MATLAB.
- RTL design: This step converts the user specification into a register transfer level description. The RTL describes the exact behavior of the digital circuits on the chip, as well as the interconnections to inputs and outputs.
- Physical circuit design: This step takes the RTL, and a library of available logic gates, and creates a chip design. This step involves use of IC layout editor, layout and floor planning, figuring out which gates to use, defining places for them, and wiring them together.
A standard cell normally represents a single logic gate, a diode or simple logic components such as flip-flops, or logic gates with multiple inputs. The use of standard cells allows the chip's design to be split into logical and physical levels. A fabless company would normally only work on the logical design of a chip, determining how cells are connected and the functionality of the chip, while following design rules from the foundry the chip will be made in, while the physical design of the chip, the cells themselves, are normally done by the foundry and it comprises the physics of the transistor devices and how they are connected to form a logic gate. Standard cells allow chips to be designed and modified more quickly to respond to market demands, but this comes at the cost of lower transistor density in the chip and thus larger die sizes.
Foundries supply libraries of standard cells to fabless companies, for design purposes and to allow manufacturing of their designs using the foundry's facilities. A process design kit may be provided by the foundry and it may include the standard cell library as well as the specifications of the cells, and tools to verify the fabless company's design against the design rules specified by the foundry as well as simulate it using the foundry's cells. PDKs may be provided under non-disclosure agreements. Macros/macrocells/macro blocks, macrocell arrays and IP blocks have greater functionality than standard cells, and are used similarly. There are soft macros and hard macros. Standard cells are usually placed following standard cell rows.