[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: Introduction and some questions/thoughts on gEDA/gaf...
Not all glue logic devices are created equal. There are devices made by
different manufacturers that have the same part number that are *not*
interchangeable under all conditions. The pinout is the same- Everything
appears to be the same when you look at the data sheet until you look at the
diagram of the internal logic of how the chip works. In essence, the structure
of the internal logic of a given device that is made by multiple
manufacturers differs. That is, Unless one manufacturer has granted a
license to another manufacturer to make a device using their logic and
process. So, tags don't work - They just cover up the problem.
Also, this issue goes way beyond glue logic into many other families of
devices.
To add to what Marvin said, I have first hand seen where two vendors of
a particular comparator were not the same because the ESD protection was
significantly better from one vendor than another. Learned the hard way
when purchasing "saved some money".
This isn't limited to semiconductors by any stretch. Take an
electrolytic capacitor of a particular capacitance and voltage rating.
Now see how many variations in ESR (causes internal heating if you're
using this in a switching power supply app), quoted lifetime,
temperature at which that lifetime is quoted at, etc. Of course the
symbol can always be the same.
What I've seen in at least one large company is the CAD libraries are
all organized by internal part number anyway. In other words, if you
want a "1206 size, metal film, 1/8W, 1% 4.99k ohm resistor", you simply
instantiate a "192837.sym" which you know because you have some silly
notebook on your desk listing all the common passives you use and you
have the internal part number database open to search for the
semiconductors.
Something which is missing is a means to have a component have 1 extra
level of hierarchy though. I'd like to be able to create a single, for
example, NPN symbol. Then create a library of components which all use
that symbol but each element in the library also then contains
information on what package to use, a mapping from package pin to symbol
pin (package #1 -> symbol 'e', package #2 -> symbol 'b', package #3 ->
symbol 'c'). This way I don't end up copying the actual graphic symbol
50 times. It would also be nice to be able to associate some
information on how it should netlist for different targets. That might
make it easier to truely support multiple simulators as well as pcb.
I think at some point gschem may need to start storing elements both by
the symbol name and the library from whence it came. Currently the
library search path matters, and its only a matter of time I think until
this starts to cause grief.
-Dan