0% found this document useful (0 votes)
1 views24 pages

Module 1 - Logic Simulation

The document provides an overview of logic simulation in the context of testing VLSI circuits, defining simulation and its purpose for design verification. It discusses various types of simulations, modeling for simulation, signal states, and the differences between compiled-code and event-driven simulations. Additionally, it covers delay models and algorithms used in simulation processes.

Uploaded by

RAJESH SKR
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views24 pages

Module 1 - Logic Simulation

The document provides an overview of logic simulation in the context of testing VLSI circuits, defining simulation and its purpose for design verification. It discusses various types of simulations, modeling for simulation, signal states, and the differences between compiled-code and event-driven simulations. Additionally, it covers delay models and algorithms used in simulation processes.

Uploaded by

RAJESH SKR
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SRI RAMAKRISHNA ENGINEERING COLLEGE

VATTAMALAIPALAYAM, N.G.G.O. COLONY POST,


COIMBATORE – 641 022.

Module 1-Introduction to Testing

Logic Simulation

6/26/2025 Testing of VLSI Circuits 1


Simulation Defined

• Definition: Simulation refers to modeling of a design, its function and


performance.
• A software simulator is a computer program; an emulator is a hardware
simulator.
• Simulation is used for design verification:
• Validate assumptions
• Verify logic
• Verify performance (timing)
• Types of simulation:
• Logic or switch level
• Timing
• Circuit
• Fault Source: Vishwani slides

6/26/2025 Testing of VLSI Circuits 2


Simulation for Verification

Specification

Synthesis

Response Design Design


analysis changes (netlist)

Computed True-value
Input stimuli
responses simulation

6/26/2025 Testing of VLSI Circuits 3


Modeling for Simulation

• Modules, blocks or components described by


• Input/output (I/O) function
• Delays associated with I/O signals
• Examples: binary adder, Boolean gates, FET, resistors and
capacitors
• Interconnects represent
• ideal signal carriers, or
• ideal electrical conductors
• Netlist: a format (or language) that describes a design as an
interconnection of modules. Netlist may use hierarchy.

6/26/2025 Testing of VLSI Circuits 4


Signal States

• Two-states (0, 1) can be used for purely combinational logic with


zero-delay.
• Three-states (0, 1, X) are essential for timing hazards and for sequential
logic initialization.
• Four-states (0, 1, X, Z) are essential for MOS devices. See example
below.
• Analog signals are used for exact timing of digital logic and for analog
circuits.
Note: X= unknown state
Z= high impedance state

6/26/2025 Testing of VLSI Circuits 5


Modeling Levels

Modeling Circuit Signal Timing Application


Level description values

Function, Programming 0, 1 Clock Architectural and


behavior, RTL language-like HDL boundary functional
verification
Logic Connectivity of 0, 1, X Zero-delay Logic verification
Boolean gates, and Z unit-delay, and test
flip-flops and multiple- delay
transistors
Switch Transistor size 0, 1 Zero-delay Logic
and connectivity, and X verification
node capacitances
Timing Transistor technology Analog Fine-grain Timing verification
data, connectivity, voltage timing
node capacitances
Circuit Tech. Data, active/ Analog Continuous Digital timing
passive component voltage, time and analog
connectivity current Circuit verification

6/26/2025 Testing of VLSI Circuits 6


Kinds of Logic Level Simulation

• Compiled-code simulation
• Applicable to zero-delay combinational logic
• Also used for cycle-accurate synchronous sequential circuits for logic
verification
• Efficient for highly active circuits, but inefficient for low-activity
circuits
• High-level (e.g., C language) models can be used
• Event-driven simulation
• Only gates or modules with input events are evaluated (event means a
signal change)
• Delays can be accurately simulated for timing verification
• Efficient for low-activity circuits
• Can be extended for fault simulation

6/26/2025 Testing of VLSI Circuits 7


Logic States for Simulation

• Combinational and synchronous circuits with a known initial state


– Two logic states (0, 1)
•Good to compute logic behavior
•Not enough for detecting hazards

• Sequential circuits with an unknown initial state


– Three states (0, 1 & u) -ie.,(3-valued logic)
•u (unknown state) represents
– Initial state of flip-flops & RAMs
– Interpreted as either 0 or 1

6/26/2025 Testing of VLSI Circuits 8


Truth Table for 3-valued Logic

outputs
AND 0 1 u
0 0 0 0
inputs
1 0 1 u
u 0 u u

outputs
OR 0 1 u
0 0 1 u
inputs

1 1 1 1
u u 1 u

6/26/2025 Testing of VLSI Circuits 9


Information Loss of 3-valued Logic

Source: T. Kim Cheng slides

6/26/2025 Testing of VLSI Circuits 10


Compiled code Algorithm

• Step 1: Levelize combinational logic and encode in a compilable


programming language
• Step 2: Initialize internal state variables (flip-flops)
• Step 3: For each input vector
– Set primary input variables
– Repeat (until steady-state or max. iterations)
• Execute compiled code
– Report or save computed variables

6/26/2025 Testing of VLSI Circuits 11


Compiled code simulation - example

6/26/2025 Testing of VLSI Circuits 12


Contd.,

•Elements are simulated in ascending order of logic level


•Time required to simulate a vector = t*N
• t : time required to simulate an element & N : number of
elements

Problems with compiled simulators


•0-delay model : timing cannot be properly modeled
•No hazard or signal propagation is predicted
•Simulation time = t*N could be slow

6/26/2025 Testing of VLSI Circuits 13


Event Driven Simulation

• For each new input vector, the ratio of lines which change values to the
total number of lines in the circuit is called the activity A.
–Typically A = 2 to10 %
• An event is a change in value of a signal line.
• The output of a gate i will only change value when one or more of its
inputs change value.
–Element i need only be simulated when an event occurs at one of its
inputs
• When an event does occur, then every element to which this line fans out
to, is called potentially active.
• Simulating these potentially active lines alone can result in significant
savings in computation time.

6/26/2025 Testing of VLSI Circuits 14


Contd.,

6/26/2025 Testing of VLSI Circuits 15


Algorithm – simplified version

6/26/2025 Testing of VLSI Circuits 16


Data Structure

6/26/2025 Testing of VLSI Circuits 17


Delay Models

Zero delay: Output changes instantly in response to an input


Unit delay: All gates have one unit delay
Transport delay:
–transition independent
–transition dependent : rise & fall delays are specified separately
Ambiguous delay or Minmax delay
Inertial delay: All circuits require energy to switch states. The minimum duration
for which an input change should persist in order for the device to switch states is
called inertial delay.
• Input inertial delay dI
– An input pulse whose duration is less than dI is filtered (or suppressed) by
the gate.
• Output inertial delay dO
– The gate output cannot generate a pulse whose duration is less than dO

6/26/2025 Testing of VLSI Circuits 18


Example

6/26/2025 Testing of VLSI Circuits 19


Event -driven Simulation with Delay

6/26/2025 Testing of VLSI Circuits 20


Time Flow Mechanism and Scheduling

6/26/2025 Testing of VLSI Circuits 21


Time Wheel

6/26/2025 Testing of VLSI Circuits 22


Example for event driven with scheduling

6/26/2025 Testing of VLSI Circuits 23


Thank You

6/26/2025 Testing of VLSI Circuits 24

You might also like