[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [usb] RE: usb



At 10:48 AM 3/8/00 -0500, you wrote:
>I think the GPL is suitable for certain source codes like Verilog, VHDL, C &
>C++ as far as simulation goes.

Actually no. For example, if you were integrating models of commercial
items, e.g., memory, you might not have the right to release that portion
of your overall simulation model.

Also, the GPL is very specific with the word "software". I suspect that a
good lawyer would be able to show that the license doesn't apply at all to
a Verilog/VHDL design used for anything but simulation.

>source code, or a derivative of that code, that the source code be made
>readily available to anyone who uses that physical core.

What is the source code in this context. GPL and related licenses are clear
that make files needed to generate the binary must be released. Do the
synthesis scripts need to be released? How much else?

>use something like Mosis if we were to use a fab, so fab specs aren't going
>to be a big secret (AFAIK).  

Not true. I use MOSIS brokered fabs and sign non-disclosure licenses to
gain access to the specs for the contracted fabs. Also, if you are not
using public domain cell libraries then there is an issue related to their
use.

>I was under the impression that most of this
>stuff was to be synthesized on an FPGA (virtex?).

With high end Virtex FPGAs being over a thousand dollars many of the cores
that are being proposed will be very expensive implemented that way. If we
want to only be designing stuff for simulation or those few people who can
afford those costs that is fine, but I thought the intent was to create an
open environment for sharing intellectual property.

>Is it a concern if somebody synthesizes a core from the HGPL'd code with
>secret fab specs that allow higher MHz?  This seems to me to be analogous to
>writing one's own super special highly optimized compiler to compile GPL'd
>code that will run faster than the rest.  If one were to write this compiler
>on their own, they would be under no obligation to share that compiler code.
>If they distributed their highly optimized binary, they would only be
>obligated to make available the source to that binary.

An excellent point, but what is "source" for a hardware design? If I make
changes in the design to improve the design for a synthesizer/cell
library/layout that you don't have what is my responsibility to release
such information?

>The EFF might be interested and able to help with the modification to the
>GPL.
>Does this make sense?

Absolutely. My major concern is that people are volunteering their time for
a certain objective, but without the necessary legal structure in place
then we need to be very careful that they are getting what they expected. I
attached a post I made some time ago about this issue.

Joe



-------------

While I generally agree that we should be using a GNU GPL, my concern is
that any license agreement used for open IP hardware provide for use of the
cores in ASICs. In order to do so we need to permit:

* Necessary changes to deal with proprietary tools, cell libraries, etc.
Some of these changes may be confidential.
* Ability to integrated cores with proprietary cores.
* Ability to modify core as necessary to integrate with proprietary cores.
Even the interface to some cores is confidential.
* Ability to modify design to meet the specific requirements of a project.
I believe that it is reasonable to require that these changes to be made
publicly available even if they would represent a development branch that
active open source developers would not be interested in.

The open IP hardware community should expect and require:
* that improvements to the general good be shared with everyone
* that users contribute design changes to increase the usability and
applicability of the core
* that documentation, supporting tools, and verification results be freely
shared

I am not a lawyer (but forgive me for doing what people normally do after
saying that and make legal points)

1. The unmodified GNU GENERAL PUBLIC LICENSE really only applies to software.

2. Translating the GPL from software to hardware I believe would require
the ASIC developer to release the masks for any design incorporating a GPL
core. That means that they couldn't use proprietary cores or cells in their
design. (Does anyone have an open-IP 0.35um cell library in the fab of my
choice that I can use with my copy of Synopsys Design Compiler?) For our
custom hardware design projects fabs require us to sign non-disclosure
agreements. I don't know that a completely open IP cell library is even
possible. Strict compliance with GPL seems to imply that you can't use the
IP for ASICs.

3. The GNU Library General Public License seems like a better model as it
provides for combining proprietary and open stuff. It also was written for
software and not hardware though.

4. It is not clear to me the provisions of this license (ref. para. 5 & 6)
would be interpreted for a hardware development.

5. Some provisions in the LGPL do appear to present problems to the ASIC
developer, e.g., "For an executable, the required form of the "work that
uses the Library" must include any data and utility programs needed for
reproducing the executable from it." Does that mean that I need to provide
a copy of Synopsys Design Compiler ($200K+ to anyone who asks me to buy a
copy for them)?

Regards,

Joe

VP Engineering, The iTv Corporation
jaz@itvc.com