Mail Archives: geda-user/2014/01/28/13:25:19
--001a11c308d6e1e11f04f10bef4f
Content-Type: text/plain; charset=KOI8-R
Content-Transfer-Encoding: quoted-printable
>
>
> How do you propose to solve it?
>
;I see some ways of solve problem, but the best of these I think is
placing symbol information in scheme file.
That makes more sense than the current "Embed Component in schem" mode.
Right now if you instantiate a component multiple times then a complete
copy of the symbol is inserted for each instance. Your way only saves one
copy.
But it is not the best solution.
40 years ago you could design a printed circuit board or an IC using the
same schematic entry system. All you did was change libraries. But IC
designers have long since dumped schematic entry because most schematic
entry tools are simply not able to handle large designs. PC boards have
grown about 1 or 2 orders of magnitude more complex over the last 40 years
while IC have grown 6 or 8 orders. You are now having to deal with designs
where you have component name collisions and your tools do not work. IC
designers hit that bump 30 years ago.
Might I suggest that we see how they solved this problem and do the same?
You cannot select a component with only it's component name. IC tools
require the component name, library name, vendor name ,revision number and
variant name. You will have cases where you need two different revisions of
the same component at the same time.
The biggest problem with your solution is that it makes a copy of the
design data. When you are dealing with big designs you never copy anything.
Everything is assigned a unique location and any time it is needed then it
is fetched from that location. If you don't follow this rule then your data
can go viral as it is passed around,reused, modified and fixed. Then you
try to do a design with components that contain non-matching viral copies
of some original component.
You will want to have a local copy of all your designs in your design
environment but these are always clones of an RCS database from the
original source. You also do periodic checks to see if there is a newer
version available from the vendor.
John Eaton
On Tue, Jan 28, 2014 at 6:55 AM, =E1=CC=C5=CB=D3=C5=CA =E8=C1=D2=D8=CB=CF=
=D7=D3=CB=C9=CA
<svetonomer AT gmail DOT com>wrote:
>
>
>
> 2014/1/28 <karl AT aspodata DOT se>
>
>>
>> How do you propose to solve it?
>>
> I see some ways of solve problem, but the best of these I think is placin=
g
> symbol information in scheme file.
>
> Small example:
> Scheme file need split into 2 parts.
> 1 part is scheme.
> -------LIBRARY------
> 2 part is library.
>
> In part No2 (library section) gschem copy added symbols wholly:
> C .......... triac-1.sym
> {
> P....
> {
> T...
> T...
> L...
> }
> P....
> ....
> L....
> }
> C .... .... .. .. descriptor_1
> ......
> C .... .... .. .. descriptor_2
> .....
>
> But in first part (sheme part) all as at present:
> C 53500 46700 1 0 0 triac-1.sym
> {
> T 54600 47500 5 10 1 1 0 0 1
> refdes=3DTR?
> T 53500 46700 5 10 0 1 0 0 1
> footprint=3DTO220
> }
> C.....
> ....
> C.....
>
> and others.
>
> When gschem opens .SCH file, it reads characters not from the symbol file=
s(component-library-path), but from LIBRARY section
> of this .SCH file.
>
--001a11c308d6e1e11f04f10bef4f
Content-Type: text/html; charset=KOI8-R
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div><div><div><div><div><div><div><div><div class=3D"gmai=
l_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8e=
x;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
How do you propose to solve it?<br></blockquote></div>=9A;I see some ways o=
f solve problem, but the best of these I think is placing symbol informatio=
n in scheme file.<br><br><br></div>That makes more sense than the current &=
quot;Embed Component in schem" mode.=9A Right now if you instantiate a=
component multiple times then a complete copy of the symbol is inserted fo=
r each instance. Your way only saves one copy.<br>
<br><br></div>But it is not the best solution.<br><br><br><br></div>40 year=
s ago you could design a printed circuit board or an IC using the same sche=
matic entry system. All you did was change libraries. But IC designers have=
long since dumped schematic entry because most schematic entry tools are s=
imply not able to handle large designs.=9A PC boards have grown about 1 or =
2 orders of magnitude more complex over the last 40 years while IC have gro=
wn 6 or 8 orders. You are now having to deal with designs where you have co=
mponent name collisions and your tools do not work. IC designers hit that b=
ump 30 years ago.<br>
<br></div>Might I suggest that we see how they solved this problem and do t=
he same?<br><br><br></div>You cannot select a component with only it's =
component name. IC tools require the component name, library name, vendor n=
ame ,revision number and variant name. You will have cases where you need t=
wo different revisions of the same component at the same time. <br>
<br><br></div>The biggest problem with your solution is that it makes a cop=
y of the design data. When you are dealing with big designs you never copy =
anything. Everything is assigned a unique location and any time it is neede=
d then it is fetched from that location. If you don't follow this rule =
then your data can go viral as it is passed around,reused, modified and=9A =
fixed. Then you try to do a design with components that contain non-matchin=
g viral copies of some original component.<br>
<br></div>You will want to have a local copy of all your designs in your de=
sign environment but these are always clones of an RCS database from the or=
iginal source.=9A You also do periodic checks to see if there is a newer ve=
rsion available from the vendor.<br>
<br></div>John Eaton<br><br>=9A<br><div><div><div><br>=9A <br><div><div><di=
v><div><div><br><br><div><br><br><div><br></div></div></div></div></div></d=
iv></div></div></div></div></div><div class=3D"gmail_extra"><br><br><div cl=
ass=3D"gmail_quote">
On Tue, Jan 28, 2014 at 6:55 AM, =E1=CC=C5=CB=D3=C5=CA =E8=C1=D2=D8=CB=CF=
=D7=D3=CB=C9=CA <span dir=3D"ltr"><<a href=3D"mailto:svetonomer AT gmail DOT co=
m" target=3D"_blank">svetonomer AT gmail DOT com</a>></span> wrote:<br><blockqu=
ote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc s=
olid;padding-left:1ex">
<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><br><div class=3D"gmail=
_quote">2014/1/28 <span dir=3D"ltr"><<a href=3D"mailto:karl AT aspodata DOT se=
" target=3D"_blank">karl AT aspodata DOT se</a>></span><br><blockquote class=3D=
"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(2=
04,204,204);padding-left:1ex">
<br>
How do you propose to solve it?<br></blockquote></div>I see some ways of so=
lve problem, but the best of these I think is placing symbol information in=
scheme file.<br><br></div><div class=3D"gmail_extra">Small example:<br>
</div><div class=3D"gmail_extra">Scheme file need split into 2 parts.<br></=
div><div class=3D"gmail_extra">1 part is scheme.<br></div><div class=3D"gma=
il_extra">-------LIBRARY------<br></div><div class=3D"gmail_extra">2 part i=
s library.<br>
<br></div><div class=3D"gmail_extra">In part No2 (library section) gschem c=
opy added symbols wholly:<br></div><div class=3D"gmail_extra">C .......... =
triac-1.sym<br>{<br></div><div class=3D"gmail_extra">P....<br>{<br></div><d=
iv class=3D"gmail_extra">
T...<br></div><div class=3D"gmail_extra">T...<br></div><div class=3D"gmail_=
extra">L...<br></div><div class=3D"gmail_extra">}<br></div><div class=3D"gm=
ail_extra">P....<br>....<br></div><div class=3D"gmail_extra">L....<br></div=
><div class=3D"gmail_extra">
}<br>C .... .... .. .. descriptor_1<br>......<br>C .... .... .. .. descript=
or_2<br>.....<br><br>But in first part (sheme part) all as at present:<br><=
/div><div class=3D"gmail_extra">C 53500 46700 1 0 0 triac-1.sym<br>
=9A {<br>
=9A T 54600 47500 5 10 1 1 0 0 1<br>
=9A refdes=3DTR?<br>
=9A T 53500 46700 5 10 0 1 0 0 1<br>
=9A footprint=3DTO220<br>
=9A }<br></div><div class=3D"gmail_extra">C.....<br>....<br></div><div clas=
s=3D"gmail_extra">C.....<br><br></div><div class=3D"gmail_extra">and others=
.<br></div><div class=3D"gmail_extra">
<br></div><div class=3D"gmail_extra"><span lang=3D"en"><span>When gschem</s=
pan> <span>opens .SCH file</span><span>, it</span> <span>reads characters</=
span> <span>not from</span> <span>the symbol files</span> (component-librar=
y-path), but from LIBRARY<span></span> <span>section of this .SCH file.</sp=
an><span></span></span></div>
</div>
</blockquote></div><br></div>
--001a11c308d6e1e11f04f10bef4f--
- Raw text -