OpenCores.org ARM Clone Removed From Web
An Anonymous Coward writes: ""A clone of the ARM7 32-bit RISC processor core, previously available free for download from the Internet, has been taken down or hidden" pending discussions between the core's designer and a Chinese representative of ARM Holdings plc (Cambridge, England)."
Remember, this is a reverse-engineered "clone in the form of a synthesizable Verilog language description."
Having a synthesizable core does NOT mean that you can just drop it into any modern design. The deliverables for a commercially usable core are significant. Typically you need the following:
* Verilog code.
* TWO sets of timing constraints in Synopsys SDC format - one for synthesis, the other for static timing analysis and back-end physical design (i.e. defined clocks, high fanout nets like resets/selects, false/multicycle paths, case analysis statements for setting fastest propagation mode through the design).
* Synthesis scripts, which have specific mappings to the standard-cell libraries of the particular process (except if implemented in an FPGA).
* SRAM macro definitions and how they plug into the Verilog code (again, highly library/process specific and not relevant for an FPGA, assuming you can find enough on-board FPGA SRAM to equal the caches necessary for the ARM7)
* All JTAG-related files, including BSDL and tap controller specs.
* Scan and functional test vectors for Verilog VCS or NC-Verilog to show the core works.
I'm sure I've missed a couple of things, but you get all of that, PLUS implementation support from ARM engineers. Mere Verilog code is not going to threaten ARM, and the expense that a company would go to in supporting its own core implementation wouldn't justify the cost in development time. Especially when there are other competitors ready to do it faster and quicker.
So, IMO, I say SCREW ARM. Arrogant bastards who don't want people to learn about their own cores. Heck, big EDA companies give away their software to universities for education but that can't be used for commercial purposes (which was a big advantage in me getting a job in teh industry). Why can't ARM get their act together and do the same? It will only help to have engineers out of school who know their stuff.
The idea that a verilog description can infringe a patent is very problematic. Patents are supposed to teach an invention, but collect roalties on (or block) implementations. A verilog description is nothing more than a very detailed teaching of how to practice the art described in the patent. If the patent is valid (and you don't have any other objections to patent law in general) then there is no legal problem blocking someone from making a chip based on the verilog. But a patent holder has absolutely no right to block someone from teaching, in great detail, how to practice the art described in the patent (which after all was what the inventor was supposed to do when the patent was filed in the first place). Unless there is some trade secret misappropriation going on here, or unless ARM is claiming a copyright on their architecture that blocks any implementation of it, ARM appears to have no legal basis for what they are doing. As for the copyright theory, good luck getting that to stand in the US (see Lotus v. Borland).
Does it violate a patent, though?
I don't know a whole lot about the patents in question, but it would seem to me that compatibility shouldn't necessarily imply patent infringement. If I achieve ARM compatibility using totally different methods than those used in the actual ARM processors (a lookup table instead of an algorithm, an instruction decoder based on classical design principles instead of the latest and greatest, etc.), I don't see how it's an infringement upon their intellectual property-- it's functionally the same, but it uses different methods to acheive that functionality.
On the other hand, if the core in question DOES violate patents... well, ARM does need to protect its intellectual property.
There may not be much difference in the minds of manufacturers between programming a chip to act like another chip (but slower) and using a poor quality Star Trek replicator to make a copy of it. You suddenly are capable of doing things with your hardware for free that you used to have to give them money (by buying *their* hardware) to be able to do.
I can see in the near future that this may become a big issue for chip manufacturers - between FPGAs which do emulation in hardware and companies like Transmeta that do the emulation in software, the risk gets larger as the technology gets better. How long will it be before the operators of file-sharing servers get sued by the CFAA (Chip Fabricators Association of America (fictitious organization, as if it weren't obvious)) because they are letting people swap source code for programmable microprocessors that works better than the original hardware?
How different is that from suing OpenCores.org for providing instructions for making a clone?
Are the instructions protected as free speech? Will source code implementations be similarly protected?
I know which way the RIAA, MPAA, Microsoft, etc. would like to see it go, but I also know that I don't want to live in a world where the inventor of the replicator will be sued for being an accessory to patent infringement.
I think it's time to write another letter to my congressmen...
"Space Exploration is not endless circles in low earth orbit." -Buzz Aldrin
Speaking from a position of total ignorance is easy. Having just come back from three months working in China with Chinese engineers on a number of projects, I can make the following observations:
1. China is the most capitalist country on the Earth. Far more so than the U.S. China is currently opening up its markets to the world, the US is busily closing theirs ("Export Enhancement Program" = subsidies for inefficient farmers, tariffs against Australian lamb imports despite WTO rulings etc. etc. etc.).
2. Chinese people in 2001 enjoy significantly more freedom than even 10 years ago.
3. There is a clear path outlined between where they are now and a democratic future. Already you don't have to be a member of the communist party to run for office at the local level. Also, Hong Kong today is more democratic than at the time of the British handover.
4. Some parts of China are experimenting with increased freedoms of expression, such as Shanghai and the Shenzhen special economic zone next to HK. This will only continue to improve.
5. Government is much more transparent than my experience of US buearocracy. Public comment is welcomed on many major decisions such as public works programs.
6. The US hypocritically compains about China's human rights record. The US also has a death penalty - so China executes more people (about 4x per capita) - this makes the US executions OK? Plenty of innocent people have been put to death in the US (particularly by the Texecutioner). If you're black or hispanic and poor, you are far more likely to be found guilty on the basis of the same evidence than a wealthy white person. Human rights? Hah! The US is responsible for overthrowing democracies in Central and South America and for sponsoring wars and terrorism elsewhere in the world (who was it who created and installed Saddam and Osama in the first place?). Don't complain about the human rights record of China (which is making significant improvements in this area) while you are sliding backwards.
7. Democracy in the US? Who was it who won your last presidential election?
- Daniel (heartily sick of American lecturing on human rights and democracy).