Dieter wrote:

Depends on how you define that.  I know of at least one free-design
mainboard (schematics, PAL/GAL programming information, gerbers, etc.
are all available).  But I doubt that the internals of the chips used
are freely available.  While ideally we would have full information
including gate level schematics and photolithography masks, I might
be willing to settle for "only" having all the documention we need
to use the part, not everything we need to duplicate it.  Perhaps
we need to define levels of openness?
I sort of like:

"Free hardware" -- total documentation of design to specified depth

"Open hardware" -- specification of hardware interfaces adequate
                               to support software development

"Depth of Design Freedom" or "Degrees of Design Freedom"
might be a useful generic concept, though I don't know if it's sensible
to use numbers for it.  It depends greatly on what kind of
system you are designing.

For example, a car might be "free-designed" in many different
aspects:

1) frame and body design;
2) wiring harness;
3) control system electronics and sensors;
4) embedded computer (assumes digital ignition) PCBs;
5) chip designs on PCBs;
6) discrete components;
7) molecular compositions of components (e.g. non-patented plastics)
8) free software installed on the micro-controller board
....?

You can vaguely think of a complex system as a tree of
systems built on top of each other -- each node in the tree
can be described as "Free" or "Open" in the above senses.

Note that the freedom of discrete components is relatively
pointless, because they have a well-defined "interface" (e.g.
a capacitor has a capacitance, voltage rating, polarity, etc),
and may be safely substituted from dozens of different
manufacturers, or, with some difficulty, manufactured custom.
IOW, it's a commodity product.  We can, I think, rely on standard
capacitor sizes being manufactured for decades, at least.

At some level, this can even be said of whole computers (say
"ARM single-board-computers running Linux, built to the
PC-104 form-factor").  The whole design might be proprietary,
but the openness of the interface, combined with a large number
of independent suppliers makes the secrecy of design irrelevant.

Except for obsolescence.  Eventually PC-104 will be a dead standard.
With no free design available, that wipes out any design based on
it.  You might want that anyway (the newer stuff will almost certainly
be an improvement), but having it forced on you is undesireable. Could
be you have an application where a PC-104 will be just fine (or a
Commodore 64, for that matter).  This may seem silly to a computer
science expert, but someone trying to design a factory assembly
line that they want to use for 20-30 years might think that stability
of the electronics is really important.

A lot of the innovative leverage of free-design is this issue of
de-coupling: you try to make projects independent of each other
by relying on standard interfaces instead of single suppliers. Likewise,
free design provides future-proofing and interfaces you can rely
on to be available.

Proprietary chipsets, while often cost-effective in the near-term,
tie a PCB design down to a particular supplier, who might disappear.

That means that the top-level design will become worthless.

This isn't so bad if you're operating in a commercial proprietary
situation -- you make your money during the operational life of
the supplier, and you don't care that you are repeating effort,
or that your effort will have to be repeated in the future. Because
it's paid for.

But for example, the most famous free hardware computer, the
LART, is no longer manufacturable, because you can't get the
(proprietary) chips any more.  This is true for PC chipsets, too.

In the free world, though, you have to reduce losses almost to
nil. That's why free-design works so much better for software
than hardware, because, while platforms may change, it's always
been possibly to maintain abstract programming-language layers
which persist across decades. I was still maintaining and installing
Fortran code written in the late 1970s as late as 2002 (AFAIK, the
software in question is still in use).

I know that Open Cores has amassed a pretty large design library,
and I have been surprised at the stuff I've seen listed, but I'm not
sure how complete their coverage of "boring" stuff like motherboard
chipsets would be.

And although I'm certainly an interested observer, I'm not trained
to do hardware design at all -- so I have at best a rather conceptual
and non-technical understanding of "FPGA", "ASIC", etc. I know what
they are, but there's no way I have any business trying to design them!

Nor do I necessarily know enough to know how realistic my
question is.  Which is why I ask, of  course. ;-D

Certainly, though, that is the question that I think these developments
lead towards -- will there ever be a 100% free hardware platform to run
100% free software on?  I admit, I'm uncertain of the practical benefits
of such a goal, but it's got an amazing "geek factor". ;-)

Realistically, it's probably more important to have a free embedded
platform.  There are certainly a few things in this category, though I'm
not sure how complete the freedom of their design is (but for example,
I recently came across a free-designed soft-core FPGA-based
microcontroller board, which seemed to be nearly a single-chip design
with a few discrete electronics).

--
Terry Hancock ([EMAIL PROTECTED])
Anansi Spaceworks http://www.AnansiSpaceworks.com


_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to