Simulation of Signal Reflection in Digital Design

19
refSim - a simulation based signal reflection calculator by Kaushik Patra

description

A project made for SJSU-CMPE296B to simulate signal reflection phenomenon along signal line in digital design.

Transcript of Simulation of Signal Reflection in Digital Design

Page 1: Simulation of Signal Reflection in Digital Design

refSim - a simulation based signal reflection calculator

by Kaushik Patra

Page 2: Simulation of Signal Reflection in Digital Design

Agenda

Why to rebuild reflection calculator

The electrical model

The computational model

User Interface

Tool Architecture

Examples

Implementation challenges

What next ?

Page 3: Simulation of Signal Reflection in Digital Design

Why to rebuild ?Some of us will go into EDA (Electronic Design Automation) industry (like Synopsys, Cadance, even big chip design companies have internal EDA department).

This industry needs people with very good hardware and software knowledge.

This is a very good exercise to learn and experience both hardware and software lessons.

Needs understanding of electrical theory behind signal reflection and how to calculate.

Need computer science knowledge to convert the problem in algorithmic computational domain.

Page 4: Simulation of Signal Reflection in Digital Design

The Electrical Model

Generally the lattice diagram is used.

Since each segment has non uniform delay, lattice diagram calculation becomes complex.

Potential candidate for algorithmic solution.

Page 5: Simulation of Signal Reflection in Digital Design

The Computational Model

Page 6: Simulation of Signal Reflection in Digital Design

The Computational Model

dV

dT

Page 7: Simulation of Signal Reflection in Digital Design

User Interface User will define the PCB trace model in a topology (text) file.

User can also define

cycle time

rise time

fall time

input pulse pattern

simulation resolution

change sensitivity

Page 8: Simulation of Signal Reflection in Digital Design

User Interface

Command line usage is as following

refSim -in <input topology file> [ -chSens <change sensitivity, default 0.001> ]

[ -rtime <rise time, default 0.1 ns> ]

[ -ftime <fall time, default 0.1 ns> ]

[ -ctime <cycle time, default 10 ns> ]

[ -simRes <simulation resolution, default 0.01ns]

[ -bitPat <input bit pattern, default 1]

Page 9: Simulation of Signal Reflection in Digital Design

User Interface

Page 10: Simulation of Signal Reflection in Digital Design

Tool Architecture

Page 11: Simulation of Signal Reflection in Digital Design

Tool Architecture

Page 12: Simulation of Signal Reflection in Digital Design

Example - non uniform delay

Page 13: Simulation of Signal Reflection in Digital Design

Example - non uniform delay

Page 14: Simulation of Signal Reflection in Digital Design

Example - non uniform delay

Page 15: Simulation of Signal Reflection in Digital Design

Implementation challenges

Signal source with configurable rise / fall time.

Page 16: Simulation of Signal Reflection in Digital Design

Implementation challenges

Input voltage pulse train with configurable BIT pattern

0x5A 01011010 and 0x1

right shift(>>)

Page 17: Simulation of Signal Reflection in Digital Design

Implementation challenges

Storage and retrieval of node voltage

Page 18: Simulation of Signal Reflection in Digital Design

Implementation challenges

Event Scheduler Implementation.

‘priority_queue’ of STL has been used

(time,edge) is stored comparing the time.

Need to create own comparator for time.

Signal graph generation

Using GNU plot utility.

Repeat (v,t) points for PWL generation.

(0,0) (2.5,5) (5,10) (2.5,15) (0,20) converted into

(0,0) (0,5) (2.5,5) (2.5,10) (5,10) (5,15) . . .

Page 19: Simulation of Signal Reflection in Digital Design

What Next ?

Extend the algorithm to support complex topologies ( V, tree etc).

Computation model can easily be extended to multiple rows to simulate such complex topology

The primary challenge is to correctly compute the reflection coefficient.

Hopefully some one in next class will pick this up and enhance.

We can even distribute this to others using ‘GNU’ licensing as a ‘class room reflection simulator’