Skip to content

This project aims to create visual representations of voltage propogating through analog circuits. It uses Ngspice, Xschem, and Blender.

License

Notifications You must be signed in to change notification settings

sifferman/xschem_3d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3D Circuit Simulation Visualizer

This project aims to create visual representations of voltage propogating through analog circuits. It uses Ngspice, Xschem, and Blender.

Demonstration

Here is a Ring Oscillator being simulated. You can see the voltage propagate through each of the inverters. When a wire has a voltage, it gets bigger; when a FET has current, it turns red.

Ring Oscillator Demo

Here is a D-Flip-Flop being simulated. You can see the voltage propagate as the clock changes.

D-Flip-Flop Demo

Dependencies

Running

# Open schematics with
xschem --rcfile $PDK_ROOT/sky130A/libs.tech/xschem/xschemrc examples/dfxtp/sky130_fd_sc_hd__dfxtp_1.sch
xschem --rcfile $PDK_ROOT/sky130A/libs.tech/xschem/xschemrc examples/ro/ro.sch

# Run ring oscillator example with
python3 xschem3d.py examples/ro/ro.sch examples/ro/ro.stim build.ro
blender --python blender_animate.py -- build.ro/circuit.json

# Run DFF example with
python3 xschem3d.py examples/dfxtp/sky130_fd_sc_hd__dfxtp_1.sch examples/dfxtp/sky130_fd_sc_hd__dfxtp_1.stim build.dfxtp
blender --python blender_animate.py -- build.dfxtp/circuit.json

About

This project aims to create visual representations of voltage propogating through analog circuits. It uses Ngspice, Xschem, and Blender.

Resources

License

Stars

Watchers

Forks

Languages