Legal Issues Reproducing Old CPU

Guest
This might not be the best group to ask, but I figured I would start here. I need to duplicate a 35-year-old CPU. Are there legal ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP core. I assume the partial compliance is in part not to run into licensing issues and have TI sue them. However, I need to duplicate the CPU's instruction set and associated cycle count exactly, so I'm pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.
 
Am 18.09.2013 06:30, schrieb ditiris@gmail.com:
This might not be the best group to ask, but I figured I would start
here. I need to duplicate a 35-year-old CPU. Are there legal
ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP
core. I assume the partial compliance is in part not to run into
licensing issues and have TI sue them. However, I need to duplicate
the CPU's instruction set and associated cycle count exactly, so I'm
pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.

IANAL, but AFAIK, reproducing instruction set and cycle count exactly is
OK, unless some of the instructions are patented. Patents expire after
at most 20 years in any part of the world that I know of, so with a
35-year-old CPU you should be ok.

Philipp
 
Philipp Klaus Krause wrote:
Am 18.09.2013 06:30, schrieb ditiris@gmail.com:
This might not be the best group to ask, but I figured I would start
here. I need to duplicate a 35-year-old CPU. Are there legal
ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP
core. I assume the partial compliance is in part not to run into
licensing issues and have TI sue them. However, I need to duplicate
the CPU's instruction set and associated cycle count exactly, so I'm
pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.


IANAL, but AFAIK, reproducing instruction set and cycle count exactly is
OK, unless some of the instructions are patented. Patents expire after
at most 20 years in any part of the world that I know of, so with a
35-year-old CPU you should be ok.

Philipp

I think you need to be careful. While patents do expire (patents from
35 years ago expired after 17 years IIRC), copyrights generally do not.
On the other hand it would be unusual for the owners of such old
copyrights to pursue legal action against you unless you were making
a lot of these devices. Still you're better off getting legal advice
from someone who knows more about these issues, especially if you're
intending to make significant money from this copying effort.

--
Gabor
 
On 9/17/2013 10:30 PM, ditiris@gmail.com wrote:
This might not be the best group to ask, but I figured I would start here. I need to duplicate a 35-year-old CPU. Are there legal ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP core. I assume the partial compliance is in part not to run into licensing issues and have TI sue them. However, I need to duplicate the CPU's instruction set and associated cycle count exactly, so I'm pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.

Is this an educational exercise or a product development case ?
 
On 9/18/2013 12:30 AM, ditiris@gmail.com wrote:
This might not be the best group to ask, but I figured I would start here. I need to duplicate a 35-year-old CPU. Are there legal ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP core. I assume the partial compliance is in part not to run into licensing issues and have TI sue them. However, I need to duplicate the CPU's instruction set and associated cycle count exactly, so I'm pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.

Although I am not a lawyer... My understanding is that you can
duplicate any hardware that is not patented. Few CPUs involve patents
that can not be circumvented by not duplicating the exact circuit. One
exception is the ARM7 (at least the 7). It has some feature of some
interrupt instruction that requires a piece of hardware that is
patented. That is the only example I know of.

Since you are looking at duplicating a 35 year old CPU, I think it would
be pretty safe. Which CPU is it, if you don't mind?

--

Rick
 
On 9/18/2013 9:53 AM, GaborSzakacs wrote:
Philipp Klaus Krause wrote:
Am 18.09.2013 06:30, schrieb ditiris@gmail.com:
This might not be the best group to ask, but I figured I would start
here. I need to duplicate a 35-year-old CPU. Are there legal
ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP
core. I assume the partial compliance is in part not to run into
licensing issues and have TI sue them. However, I need to duplicate
the CPU's instruction set and associated cycle count exactly, so I'm
pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.


IANAL, but AFAIK, reproducing instruction set and cycle count exactly is
OK, unless some of the instructions are patented. Patents expire after
at most 20 years in any part of the world that I know of, so with a
35-year-old CPU you should be ok.

Philipp

I think you need to be careful. While patents do expire (patents from
35 years ago expired after 17 years IIRC), copyrights generally do not.
On the other hand it would be unusual for the owners of such old
copyrights to pursue legal action against you unless you were making
a lot of these devices. Still you're better off getting legal advice
from someone who knows more about these issues, especially if you're
intending to make significant money from this copying effort.

Copyright does not cover a design, it only covers an expression. If you
reverse engineered the chip and were making identical chips, that would
be covered by copyright... But just duplicating the functionality, even
by constructing a gate level copy of the CPU, would not be covered by
copyright.

I am also not a lawyer...

--

Rick
 
rickman wrote:
On 9/18/2013 9:53 AM, GaborSzakacs wrote:
Philipp Klaus Krause wrote:
Am 18.09.2013 06:30, schrieb ditiris@gmail.com:
This might not be the best group to ask, but I figured I would start
here. I need to duplicate a 35-year-old CPU. Are there legal
ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP
core. I assume the partial compliance is in part not to run into
licensing issues and have TI sue them. However, I need to duplicate
the CPU's instruction set and associated cycle count exactly, so I'm
pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.


IANAL, but AFAIK, reproducing instruction set and cycle count exactly is
OK, unless some of the instructions are patented. Patents expire after
at most 20 years in any part of the world that I know of, so with a
35-year-old CPU you should be ok.

Philipp

I think you need to be careful. While patents do expire (patents from
35 years ago expired after 17 years IIRC), copyrights generally do not.
On the other hand it would be unusual for the owners of such old
copyrights to pursue legal action against you unless you were making
a lot of these devices. Still you're better off getting legal advice
from someone who knows more about these issues, especially if you're
intending to make significant money from this copying effort.

Copyright does not cover a design, it only covers an expression. If you
reverse engineered the chip and were making identical chips, that would
be covered by copyright... But just duplicating the functionality, even
by constructing a gate level copy of the CPU, would not be covered by
copyright.

I am also not a lawyer...

Watch out! How are you going to have the same instruction set without
"copying" it? If the instruction set itself is copyrighted (IIRC this
was the case for the Intel 8080) you could have ompletely different
underlying hardware and still infringe on the copyright. I seem to
recall that some people worked around this by simply changing the
instruction mnemonics...

--
Gabor
 
On Wednesday, September 18, 2013 4:30:15 PM UTC+12, dit...@gmail.com wrote:
This might not be the best group to ask, but I figured I would start here. I need to duplicate a 35-year-old CPU. Are there legal ramifications doing this?

Which core ?
If you are doing this to keep a legacy product alive, and keep off the chip-sales commercial radar ( ie no product names mentioned ) - then no one will know, and even if they did know, are unlikely to care.

Even more direct commercial replacements, of very old devices, seems to be fine, and you are a long way from this.

A good example is http://www.tekmos.com/products

Here, they even mention vendor names and part numbers, and pitch directly for chip sales, but the vendors do not care, as they no longer have direct commercial offering.

-jg
 
On 9/18/2013 3:01 PM, GaborSzakacs wrote:
rickman wrote:
On 9/18/2013 9:53 AM, GaborSzakacs wrote:
Philipp Klaus Krause wrote:
Am 18.09.2013 06:30, schrieb ditiris@gmail.com:
This might not be the best group to ask, but I figured I would start
here. I need to duplicate a 35-year-old CPU. Are there legal
ramifications doing this?

For instance on OpenCores they have a partially-compliant C54x DSP
core. I assume the partial compliance is in part not to run into
licensing issues and have TI sue them. However, I need to duplicate
the CPU's instruction set and associated cycle count exactly, so I'm
pretty much going to copy the CPU using the existing documentation.

Thanks in advance for the help.


IANAL, but AFAIK, reproducing instruction set and cycle count
exactly is
OK, unless some of the instructions are patented. Patents expire after
at most 20 years in any part of the world that I know of, so with a
35-year-old CPU you should be ok.

Philipp

I think you need to be careful. While patents do expire (patents from
35 years ago expired after 17 years IIRC), copyrights generally do not.
On the other hand it would be unusual for the owners of such old
copyrights to pursue legal action against you unless you were making
a lot of these devices. Still you're better off getting legal advice
from someone who knows more about these issues, especially if you're
intending to make significant money from this copying effort.

Copyright does not cover a design, it only covers an expression. If
you reverse engineered the chip and were making identical chips, that
would be covered by copyright... But just duplicating the
functionality, even by constructing a gate level copy of the CPU,
would not be covered by copyright.

I am also not a lawyer...


Watch out! How are you going to have the same instruction set without
"copying" it? If the instruction set itself is copyrighted (IIRC this
was the case for the Intel 8080) you could have ompletely different
underlying hardware and still infringe on the copyright. I seem to
recall that some people worked around this by simply changing the
instruction mnemonics...

No, the instruction set is a concept and is not copyrightable. The Z80
had the same instructions the 8080 had including the opcodes. They
changed the nemonics because they could be copyrighted... possibly.

Don't confuse the design with the code. There are also issues with the
size of the material "copied". A title of a book is not copyright
protected for example. So you will find a NOP instruction in many CPU
designs even though the 8080 had one. They even use the same nemonic in
many CPU instruction sets.

--

Rick
 
On 9/18/2013 12:01 PM, GaborSzakacs wrote:

Watch out! How are you going to have the same instruction set without
"copying" it? If the instruction set itself is copyrighted (IIRC this
was the case for the Intel 8080) you could have ompletely different
underlying hardware and still infringe on the copyright. I seem to
recall that some people worked around this by simply changing the
instruction mnemonics...

I thought the mnemonics were copyrighted. Not the instruction set.

Rob.
 
rickman <gnuarm@gmail.com> wrote:

(snip on duplicating an old CPU)

Copyright does not cover a design, it only covers an expression. If you
reverse engineered the chip and were making identical chips, that would
be covered by copyright... But just duplicating the functionality, even
by constructing a gate level copy of the CPU, would not be covered by
copyright.

I suppose I wouldn't be surprised if someone would claim copyright
infringement on a gate level copy, but it isn't likely that anyone
would do that. The technology changes enough that gate level doesn't
really apply. (Note that an FPGA implementation of the same netlist,
implemented using LUTs, wouldn't be a gate level copy, anyway.)

Older CPUs liked to use pass transistors. Intel, more than many
others, liked to use dynamic logic. (With a minimum clock frequency.)
It isn't likely one would do either of those today.

You might get cycle accurate by wasting some cycles that would
otherwise not be needed in current logic.

Do you need to duplicate the exact signals on the chip, or just
the instruction level function and timing?

> I am also not a lawyer...

Neither am I. (IANALE.)

-- glen
 
On 9/19/2013 3:16 AM, glen herrmannsfeldt wrote:
rickman<gnuarm@gmail.com> wrote:

(snip on duplicating an old CPU)

Copyright does not cover a design, it only covers an expression. If you
reverse engineered the chip and were making identical chips, that would
be covered by copyright... But just duplicating the functionality, even
by constructing a gate level copy of the CPU, would not be covered by
copyright.

I suppose I wouldn't be surprised if someone would claim copyright
infringement on a gate level copy, but it isn't likely that anyone
would do that. The technology changes enough that gate level doesn't
really apply. (Note that an FPGA implementation of the same netlist,
implemented using LUTs, wouldn't be a gate level copy, anyway.)

Of course neither of us are lawyers, but I'm pretty sure that gate a
level copy would not be a violation of copyright. Copyright violation
would require that you actually copy some feature of the chip. But then
I guess you could argue that the gate inter-connectivity is a feature of
the chip.

I guess this is above my pay grade...


Older CPUs liked to use pass transistors. Intel, more than many
others, liked to use dynamic logic. (With a minimum clock frequency.)
It isn't likely one would do either of those today.

That was *very* old CPUs... But then he did say 35 years. That would
be 1980'ish, so integrated circuit CPUs were around and the pass
transistor FF was used then.

--

Rick
 
Rob Gaddi <rgaddi@technologyhighland.invalid> wrote:

(snip on using pass transistors and/or dynamic logic)

I was under the impression that they still did; that a Core i7 for
instance has for any given core a minimum frequency to keep it alive,
otherwise you have to put it into sleep. I can't imagine they manage
to put together a chip with a 3.6 GHz clock frequency out of classic
CMOS.

They may or may not use dynamic logic, but many processors now have
a PLL based frequency multiplier on the clock. That has a minimum
clock frequency.

The 8086 and 8088 have dynamic logic with, if I remember, a 2MHz
clock minumum. The 8080 is dynamic, but the Z80 is static.
At some point, that was a useful advantage.

-- glen
 
On Thu, 19 Sep 2013 04:39:53 -0400
rickman <gnuarm@gmail.com> wrote:

On 9/19/2013 3:16 AM, glen herrmannsfeldt wrote:

[snip]

Older CPUs liked to use pass transistors. Intel, more than many
others, liked to use dynamic logic. (With a minimum clock frequency.)
It isn't likely one would do either of those today.

That was *very* old CPUs... But then he did say 35 years. That would
be 1980'ish, so integrated circuit CPUs were around and the pass
transistor FF was used then.

--

Rick

I was under the impression that they still did; that a Core i7 for
instance has for any given core a minimum frequency to keep it alive,
otherwise you have to put it into sleep. I can't imagine they manage
to put together a chip with a 3.6 GHz clock frequency out of classic
CMOS.

--
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order. See above to fix.
 
On Saturday, September 21, 2013 1:59:18 AM UTC+12, dit...@gmail.com wrote:
I will need to reproduce all logical levels into and out of the chip with timing faithful to the original chip (or as close as I can get it, divide is going to be an issue). A lot of the circuits on the board are old 54-series discrete logic, so those all get sucked in too, so we wind up emulating the tri-state internal to the FPGA. Outside, we have lots of level converters and discrete control to faithfully replicate the 5V tri-state.

If you are doing the CPU plus external logic, then you are even safer, as your end result looks nothing like the original, nor can it drop into an original socket.

What Clock Speed, Code and Data memory do you need to have, to match the original ?
 
ditiris@gmail.com wrote:

Wow, lots of activity since I last checked. To answer some questions:

This is for business, not an educational exercise.

The chip is in the TI 9900 family (weird architecture).
. . . .

However, we're still going to consult with a lawyer just to be sure.

You might try to contact TI directly. I have found that the silicon
companies can be quite co-operative given a some good reasons
why you need to do this. Often helping customers even when they
are not going to gain in future consideration. Hiding from them
until they find you can be messy all round.

A gentle engineering approach perhaps passing the material you
intend to disclose to them past a lawyer to understand pitfalls
will often solve problems like this.

Walter..
 
On 26/09/13 20:12, Walter Banks wrote:
ditiris@gmail.com wrote:

Wow, lots of activity since I last checked. To answer some questions:

This is for business, not an educational exercise.

The chip is in the TI 9900 family (weird architecture).
. . . .

However, we're still going to consult with a lawyer just to be sure.

You might try to contact TI directly. I have found that the silicon
companies can be quite co-operative given a some good reasons
why you need to do this. Often helping customers even when they
are not going to gain in future consideration. Hiding from them
until they find you can be messy all round.

A gentle engineering approach perhaps passing the material you
intend to disclose to them past a lawyer to understand pitfalls
will often solve problems like this.

Walter..

Almost certainly, TI will be unhelpful here. To give a proper answer,
they would have to involve their own lawyers to figure out what to say,
and that is simply too expensive for a case like this. So they will
either say nothing at all, or say "No". If you are really lucky, you
might get something that implies that they don't care, without actually
saying so directly.

I think, however, that /if/ things get ugly in the future and TI tries
to sue you, then you could point to such an conversation with TI as
evidence that you did your best to do the right thing.
 
David Brown <david@westcontrol.removethisbit.com> wrote:

(snip)

Almost certainly, TI will be unhelpful here. To give a proper answer,
they would have to involve their own lawyers to figure out what to say,
and that is simply too expensive for a case like this. So they will
either say nothing at all, or say "No". If you are really lucky, you
might get something that implies that they don't care, without actually
saying so directly.

Note that not all companies are like that. Sun released verilog
code for 64 bit SPARC. You can legally build and sell one.
It seems to be now on the Oracle web site.

I think, however, that /if/ things get ugly in the future and TI tries
to sue you, then you could point to such an conversation with TI as
evidence that you did your best to do the right thing.

-- glen
 
On Fri, 27 Sep 2013 15:32:31 +0200, David Brown wrote:

On 27/09/13 13:51, glen herrmannsfeldt wrote:
David Brown <david@westcontrol.removethisbit.com> wrote:

(snip)

Almost certainly, TI will be unhelpful here. To give a proper answer,
they would have to involve their own lawyers to figure out what to
say,
and that is simply too expensive for a case like this. So they will
either say nothing at all, or say "No". If you are really lucky, you
might get something that implies that they don't care, without
actually saying so directly.

Note that not all companies are like that. Sun released verilog code
for 64 bit SPARC. You can legally build and sell one.
It seems to be now on the Oracle web site.

I don't mean to say that TI are particularly secretive or awkward about
these things. It's just a matter of economics - a big company is
unlikely to give you permission to copy their IP without first passing
it through the lawyers. When it is an active decision from the company
- such as with Sun, where they felt it would be a good idea if more
people used SPARCs even if they were not made by Sun - it is worth
calling the lawyers. When it is a single person asking, with no return
for TI, then doing things legally correctly means quite a lot of time
and money for TI. While TI staff have always been nice and helpful in
my experience, there is a limit to how much you can expect them to do to
be "nice".

TI recently released a lot of code for a slightly newer CPU, I think it
would be worth talking to them about the 9900.
 
On 27/09/13 13:51, glen herrmannsfeldt wrote:
David Brown <david@westcontrol.removethisbit.com> wrote:

(snip)

Almost certainly, TI will be unhelpful here. To give a proper answer,
they would have to involve their own lawyers to figure out what to say,
and that is simply too expensive for a case like this. So they will
either say nothing at all, or say "No". If you are really lucky, you
might get something that implies that they don't care, without actually
saying so directly.

Note that not all companies are like that. Sun released verilog
code for 64 bit SPARC. You can legally build and sell one.
It seems to be now on the Oracle web site.

I don't mean to say that TI are particularly secretive or awkward about
these things. It's just a matter of economics - a big company is
unlikely to give you permission to copy their IP without first passing
it through the lawyers. When it is an active decision from the company
- such as with Sun, where they felt it would be a good idea if more
people used SPARCs even if they were not made by Sun - it is worth
calling the lawyers. When it is a single person asking, with no return
for TI, then doing things legally correctly means quite a lot of time
and money for TI. While TI staff have always been nice and helpful in
my experience, there is a limit to how much you can expect them to do to
be "nice".

I think, however, that /if/ things get ugly in the future and TI tries
to sue you, then you could point to such an conversation with TI as
evidence that you did your best to do the right thing.

-- glen
 

Welcome to EDABoard.com

Sponsor

Back
Top