Summary of "Overview of VLSI Design Flow - III"
Summary of "Overview of VLSI Design Flow - III"
This lecture, part of a VLSI Design Flow course, focuses on the RTL to GDS implementation flow, specifically the Logic Synthesis stage. It builds upon previous lectures that covered pre-RTL (system-level) design and sets the stage for the next topic, physical design.
Main Ideas and Concepts
- VLSI Design Flow Overview
- The entire design flow from idea to chip is divided into three parts:
- Pre-RTL flow (system-level design)
- RTL to GDS flow (Logic Synthesis + physical design)
- Post-GDS flow (fabrication-related steps)
- This lecture covers the Logic Synthesis part of the RTL to GDS flow.
- The entire design flow from idea to chip is divided into three parts:
- Logic Synthesis Definition
- Process of converting RTL (Register Transfer Level) description into an equivalent netlist (interconnection of logic gates).
- Logic gates are selected from technology libraries.
- The netlist functionally matches the RTL but represents the design in terms of gates.
- Inputs to Logic Synthesis
- RTL design: Written in hardware description languages like Verilog or VHDL.
- Library files: Contain Standard Cells (logic gates) with transistor-level details, usually in Liberty format (.lib).
- Constraints file: Defines design goals like timing requirements and signal characteristics, typically in Synopsys Design Constraints (.sdc) format.
- Outputs of Logic Synthesis
- A netlist representing the design as interconnected logic gates.
- The netlist can be viewed as a schematic or as a Verilog file.
- Example of RTL to Netlist Conversion
- RTL describing a multiplexer and flip-flop is synthesized into a netlist containing corresponding multiplexers and flip-flops instantiated from the library.
- Both RTL and netlist are functionally equivalent.
- Role of Constraints
- Constraints guide optimization goals such as minimizing area, power, or maximizing performance.
- For example, relaxed timing constraints may lead the tool to select smaller-area cells.
- Challenges in Logic Synthesis
- Translating RTL to gates is straightforward.
- The main challenge is optimization: selecting and connecting library cells to meet performance, power, and area (PPA) goals while maintaining functional equivalence.
- Important Terminologies
- Design: The top-level entity/module representing the circuit.
- Ports: Interfaces through which the design communicates with the external environment.
- Input ports (primary inputs)
- Output ports (primary outputs)
- Cells: Basic entities in the library representing combinational or sequential logic functions.
- Instances: Specific occurrences of cells inside the design.
- Pins: Interfaces of cells or instances through which signals enter or leave.
- Nets: Wires connecting pins of different instances or ports.
- Pin Naming Convention
- Pins are uniquely identified by combining the instance name and pin name using a separator ("/"), e.g.,
i1/a.
- Pins are uniquely identified by combining the instance name and pin name using a separator ("/"), e.g.,
- Logic Synthesis Internal Steps
- RTL Synthesis: Converts RTL constructs into a netlist of generic logic gates (e.g., AND, OR, flip-flop) without transistor-level details.
- Logic Optimization: Minimizes the netlist in terms of area or other metrics, similar to Boolean minimization but on a much larger scale.
- Technology Mapping: Maps generic gates to specific Standard Cells from the technology library.
- Standard Cells have transistor-level implementations with known power, delay, and area characteristics.
- Multiple versions of a cell (e.g., inverters with different drive strengths) allow optimization trade-offs.
- Technology-Dependent Optimization: Further optimization using accurate power, performance, and area estimates now possible with mapped Standard Cells.
- Outcome
- The final output of Logic Synthesis is an optimized netlist implemented in terms of Standard Cells.
- This netlist is then passed to the physical design stage (covered in the next lecture).
Detailed Bullet Point Summary of Logic Synthesis Methodology
- Inputs to Logic Synthesis Tool:
- RTL design (Verilog/VHDL)
- Technology library (.lib files containing Standard Cells)
- Constraints file (.sdc defining timing and other design goals)
- Steps inside Logic Synthesis:
- RTL Synthesis
- Parse and elaborate RTL code.
- Translate RTL constructs to generic logic gates (AND, OR, flip-flops, multiplexers).
- Logic Optimization
- Perform Boolean logic minimization and optimizations to reduce area or improve other metrics.
- Handle large-scale circuits with advanced algorithms beyond
- RTL Synthesis
Category
Educational