eda and numerical analysis in gnu linux

36
EDA & Numerical Analysis in GNU/Linux -Ashwith Jerome Rego [email protected] http://ashwith.wordpress.com

Upload: ashwith-rego

Post on 19-Jul-2016

10 views

Category:

Documents


3 download

DESCRIPTION

Presentation on using EDA s/w on Fedora Linux

TRANSCRIPT

Page 1: EDA and Numerical Analysis in GNU Linux

EDA & Numerical Analysis in GNU/Linux

-Ashwith Jerome Rego [email protected]

http://ashwith.wordpress.com

Page 2: EDA and Numerical Analysis in GNU Linux

Before We Begin

Page 3: EDA and Numerical Analysis in GNU Linux

Instructions

● Make sure you understand.● Stop me immediately if you don't.● Ask the volunteers (or me) for help during

the practical sessions.● There is no such thing as a silly question.

Page 4: EDA and Numerical Analysis in GNU Linux

Why This Workshop?

● Robotics workshop done. What next?

● Equipment isn't cheap.

● Give you legal tools and encourage research.

● Make you start early (2nd year or earlier is ideal).

● Industry tools are similar.

● Jump start into EDA. Then self explore.

● Ethical reasons.

● Encourage FOSS.

● Open source – You can see how they work and even tinker around!

Page 5: EDA and Numerical Analysis in GNU Linux

Why Fedora (Electronic Lab)?● Bleeding edge GNU/Linux distribution.● FEL is maintained by people in the

electronics industry.● Aims to be a complete package which

meets industry standards.

Page 6: EDA and Numerical Analysis in GNU Linux

A Small Note About The “Tinker” Part● Do you like electronics stream subjects as

well as coding?● Look at the code in these projects.● If you're up for it, join them.● Example: DSP/DIP is pretty popular in

college. Consider gimp & audacity.● gEDA has been a GSOC project in the

past.

Page 7: EDA and Numerical Analysis in GNU Linux

What Will We Learn Today?

● Unix Basics.● gEDA (parts of it)

– Schematic Capture

– Symbol Creation

– SPICE simulations

● Scilab– Language Basics

– Some Mathematical Applications

– Engineering Applications

– Xcos demos

Page 8: EDA and Numerical Analysis in GNU Linux

What Will We Be Introduced To?● Python Programming● Sagemath● Maxima● Octave

Page 9: EDA and Numerical Analysis in GNU Linux

Unix – Basic Tutorial

Page 10: EDA and Numerical Analysis in GNU Linux

gEDA Workshop

Page 11: EDA and Numerical Analysis in GNU Linux

gEDA

● EDA tools under the GPL license.● Circuit Design.● Schematic Capture.● Simulation● Prototyping.● Production.● www.geda-project.org

Page 12: EDA and Numerical Analysis in GNU Linux

Procedure

NetlistNetlistGenerationGeneration

SimulationSimulation ResultsResults

PCB DesignPCB Design(Not Today)(Not Today)

SchematicSchematicCaptureCapture

Symbol Symbol CreationCreation

Page 13: EDA and Numerical Analysis in GNU Linux

Drawing Your Circuit: Schematic Capture● Settings: ~/.gEDA/gschemrc &

~/.gEDA/gafrc● Program: gschem● Example 1:

Page 14: EDA and Numerical Analysis in GNU Linux

Schematic to SPICE Netlist

● Program: gnetlist.● What is a SPICE netlist?● Learn to write the netlist yourself.

Page 15: EDA and Numerical Analysis in GNU Linux

Final Step: Simulation & Plotting● Simulation Program: ngspice● Types of analysis (ones you'll be doing today).

– DC

– TRAN

– AC

● You best friend:

evince `rpm -ql ngspice |grep pdf`

● Plotting Program: gaw

Page 16: EDA and Numerical Analysis in GNU Linux

Device Models, TRAN & Example 2

● Source types: Check your “best friend”. We need a sinusoid.

● We need a way to specify the behavior of 1N4004 (Check your best friend again). Go online.

Page 17: EDA and Numerical Analysis in GNU Linux

AC Analysis & Example 3

● AC sources

Page 18: EDA and Numerical Analysis in GNU Linux

Your Turn – Exercise 1: Diode Characteristics

● What type of simulation will you use?● Measuring current?

Page 19: EDA and Numerical Analysis in GNU Linux

Exercise 2: Colpitts Oscillator

● Mutual Inductance?!

Page 20: EDA and Numerical Analysis in GNU Linux

Symbols & Subcircuits:Hierarchical Design

● Opamps are not SPICE primitives. What do we do?

Page 21: EDA and Numerical Analysis in GNU Linux

The 741 Symbol

Page 22: EDA and Numerical Analysis in GNU Linux

Add Symbol To Library

● ~/.gEDA/gafrc

(component-library "/home/fel/fel-workshop/gEDA/symbols")

Page 23: EDA and Numerical Analysis in GNU Linux

Back To the HPF: Exercise 3● You know what to do – run an AC analysis

from 1Hz to 200KHz

Page 24: EDA and Numerical Analysis in GNU Linux

What Next?

● Use this to play with circuits.● Don't blindly believe what the book says –

Check it!● Explore and discover more details on your

own.● Check out KiCad and pcb.

Page 25: EDA and Numerical Analysis in GNU Linux

Introduction to Icarus Verilog● Easy to self learn: http://iverilog.wikia.com/ ● Demo

Page 26: EDA and Numerical Analysis in GNU Linux

Other Tools

● Arduino● Fritzing● MSP430 GCC● Alliance VLSI CAD● Electric VLSI● Magic VLSI Layout

Page 27: EDA and Numerical Analysis in GNU Linux

Scilab

Page 28: EDA and Numerical Analysis in GNU Linux

What Use It?

● Free of charge● Interested in starting a company? Don't

need to worry about licensing.● Free & Open Source – Change it the way

you like.● Ariane space program uses it – out

satellites are in space thanks to their rockets.

● http://www.scilab.org/scilab/gallery/applications

Page 29: EDA and Numerical Analysis in GNU Linux

But We Got Matlab + Torrents!● Don't try you luck with that in research –

you need to do things legally.● Can't do this if you want to start a company

either.● It's not right to steal.● Encourage the use of FOSS software – it

will drive improvement.

Page 30: EDA and Numerical Analysis in GNU Linux

Language Basics

● Variables & Assignments● Basic Operations● Matrices● Branching & Looping● Functions● Plotting● Strings & Printing● Useful functions

Page 31: EDA and Numerical Analysis in GNU Linux

Mathematics

● Linear Algebra● Differential Equations● A lot more possible (complex algebra,

statistics, calculus, etc)

Page 32: EDA and Numerical Analysis in GNU Linux

On To Engineering

● Signals & Systems● Control Systems● Filter Design Examples● Elementary Image Processing (Scilab can

do a lot more though)

Page 33: EDA and Numerical Analysis in GNU Linux

Xcos

Page 34: EDA and Numerical Analysis in GNU Linux

References

● http://www.geda-project.org/

● http://iverilog.wikia.com/

● ngspice manual

● Presentations on Scilab by IITB (available at www.scilab.in)

● Master Scicos by Finn Haugen (home.hit.no/~finnh/scilab_scicos/scicos/)

● Digital Signal Processing – A Computer Based Approach – S. K. Mitra

● Digital Signal Processing using MATLAB – Vinay K. Ingle & John G. Proakis

● Signals & Systems – Simon Haykin & Barry Van Veen

● Signals & Systems – A. V. Oppenheim, A. S. Willsky & S. H. Nawab

● Modern Control Engineering – K. Ogata

Page 35: EDA and Numerical Analysis in GNU Linux

Any Questions?

Page 36: EDA and Numerical Analysis in GNU Linux