Summary of Overview of VLSI Design Flow - II

Summary of "Overview of VLSI Design Flow - II"

This lecture continues the discussion on the VLSI Design Flow, focusing on the transition from system-level functional descriptions to RTL (Register Transfer Level) design and methods to bridge the implementation gap between high-level specifications and hardware descriptions.


Main Ideas and Concepts

  1. System-Level to RTL Transition
    • After partitioning a system into hardware and software components, a functional specification for hardware is created.
    • Functional specifications are often written in high-level languages (C, C++, SystemC, MATLAB) for flexibility and early experimentation.
    • The challenge is converting this untimed, high-level functional description into a timed RTL description (Verilog, VHDL, SystemVerilog).
    • This conversion is known as bridging the implementation gap, primarily because high-level specs lack timing details necessary for hardware design.
  2. What is RTL?
    • RTL models the flow of data between registers and includes:
      • Data path: Arithmetic and logical units (ALUs, adders, multipliers, gates).
      • Control path: Finite State Machines (FSMs) generating control signals to direct data movement.
    • RTL supports both sequential (serial) and concurrent (parallel) processing.
    • Hardware Description Languages (HDLs) like Verilog and VHDL are used to describe RTL.
  3. Methods to Fill the Implementation Gap
    • Manual RTL coding: Designers write RTL code manually based on the algorithm.
    • IP Assembly (Reuse): Using pre-designed, pre-verified Intellectual Property (IP) blocks to assemble a system.
    • Behavioral Synthesis (High-Level Synthesis): Automatic tools convert high-level functional descriptions into RTL, considering constraints like latency, resource usage, and power.
  4. System on Chip (SoC) Design and IP Reuse
    • SoC integrates processors, memories, peripherals, analog/RF components, and embedded software on a single chip.
    • Benefits of SoC:
      • Improved productivity by reusing existing IP blocks.
      • Lower design cost and time.
      • Enables complex features on a single chip.
    • IP blocks can be developed in-house or purchased from vendors.
    • IP includes hardware blocks, software (RTOS, drivers), and verification components.
    • Challenges in IP reuse:
      • Sharing and packaging information about IP structure, configuration, and interfaces.
      • Lack of uniform standards complicates IP integration.
      • Ensuring configuration compatibility and consistency among multiple IP blocks.
      • Integration complexity demands structured communication networks like Network on Chip (NoC) instead of ad hoc buses.
      • Verification of integrated IPs is challenging due to large functional space and hardware-software co-verification.
  5. Behavioral Synthesis (High-Level Synthesis)
    • Converts untimed algorithms into timed RTL designs with specified constraints.
    • Inputs to synthesis tools:
      • Algorithmic description (C, C++, SystemC, MATLAB).
      • Constraints (resource usage, latency, clock frequency, power).
      • Library of hardware resources (adders, multipliers, registers).
    • Output: RTL code in Verilog or VHDL.
  6. Cost Metrics in Behavioral Synthesis
    • Area: Number of hardware elements used.
    • Latency: Number of clock cycles before output is valid.
    • Maximum Clock Frequency: Determined by the longest combinational delay between sequential elements.
    • Other metrics: Power dissipation, throughput.
  7. Timing and Maximum Clock Frequency
    • A synchronous circuit consists of combinational and sequential elements.
    • Combinational path: Signal path without any sequential elements (flip-flops, latches).
    • Sequentially adjacent flip-flops: Two flip-flops connected through a combinational path.
    • The clock period must be greater than the maximum combinational delay between flip-flops to ensure correct data capture.
    • Maximum clock frequency \( F_{max} \leq \frac{1}{D_{max}} \), where \( D_{max} \) is the longest combinational delay.
  8. Example of Behavioral Synthesis
    • Algorithm: \( Y = A + B + C \).
    • Three RTL implementations with different trade-offs:
      • RTL1: Two adders in series, latency 1 cycle, larger area, lower max frequency.
      • RTL2: Two adders separated by a flip-flop, latency 2 cycles, larger area, higher max frequency.
      • RTL3: One adder reused over two cycles with multiplexers, smallest area, highest latency, moderate max frequency.
    • Behavioral synthesis tools choose the best implementation based on design constraints (area, latency, frequency).
  9. Merits and Challenges of Behavioral Synthesis
    • Merits:
      • Automates exploration of design alternatives.

Category

Educational

Video