[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: pcb crooked traces
At 06:31 AM 10/8/2010, you wrote:
On Fri, Oct 8, 2010 at 5:46 PM, Armin Faltl <armin.faltl@xxxxxx> wrote:
> Gabriel Paubert wrote:
>>
>> Really, the inch is by definition 2540µm, not the other way around since
>> over 50 years ago.
>>
>
> As far as I know, 1" = 25400um, but I see your point ;-)
>
> The only practical consideration I see is, that the internal unit of PCB
> allows handling with integer-arithmetic (makes comparisons a lot
> faster and safer than floating point).
> Assuming 32-bit signed numbers with 1/100mil this gives:
> 254nm resolution and +-545.46m coordinate range
> 32-bit signed and 1nm gives:
> 1nm resolution ;-) and +-2.147m coordinate range
The point is that using 1 nm allows both metric
and inch coordinates to be represented without
introducing errors. Working in units of 0.01 mil
does not allow metric to be expressed without
rounding error. This error may show up in most
designs, but if a consideration is to allow
boards larger than 2 meters across, I would think
that the possibility of rounding error for metric
measurements accumulating to a significant error could be a problem.
> I don't know, if pcb really uses fix-point arithmetics, but even if
> not a reasonable internal unit has some importance. AFAIK with
> floating point, the average internal number should be around 1.
>
> HTH, Armin
>
No floating point, all integer to avoid rounding errors.
DJ, are the pcb units still wrapped in the accessor macros for
converting between internal representation and real world values?
If so... Guys change the converters and have at your hearts content.
It should be a 2 hour patch.
Now for conversion errors, are you really seeing errors in your metric PCBs?
As far as I am concirned the internal unit is meaningless provided it
is fine enough.
I know no fab house that is going to have a
tolerance as good as 254nm or .01mil
That is not the concern. The problem is that on
input a metric value will have a rounding
error. When that error is compounded by the
arithmetic (for example accumulative error in a
large connector or chip pin spacing) the final error can become significant.
So as far as it matters in the real world, getting other things done
in pcb is much more important, than a conversion to metric base units.
meaning proposing that we make PCB 64 bit and nanometers is
redicolus. We will double our ram usage and not gain ANY benifits.
Going to 64 bits buys you nothing if you don't
increase the resolution of your internal units...
other than allowing you to design PCBs nearly the size of the solar system.
And to think this started out cause I suggested to use a really corse
grid to start layouts, and keep things pretty.
Use metric if your primarally using metric parts and use mils if your
using inch defined parts.
Chances are that people arn't placing their parts by snapping to pin
one to move it on grid when placing anyhow.
Why not? That is exactly what I do. I put my
parts on grid and where practical, set the grid
to match my parts. That keeps my traces from having jaggies.
BTW, in the program I use, I can turn on snap to
grid and route orthogonal and 45 degrees
only. This allows me to route from pins to the
grid without having any trace segments that are
not on a 45 degree angle. Does PCB also support this?
BTW, I'd vote for 1 unit, and a scale value. That is if you are
making a 10 meter antenna, Then you set the PCB's scale to 0.1mm.
I'm not sure what that even means. Are you
suggesting that the internal representation be adjusted by the user?
Rick
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user