Domain: opencores.org
Stories and comments across the archive that link to opencores.org.
Comments · 269
-
Re:Open Motorola 68000 series?
You mean like this one? The problem with emulating a 68k is that the best kind of performance you can hope for is enough to make a fast amiga. That's pretty poky even by embedded standards, these days. And it's all well and good to say "but imagine how many of them you could have on a chip!" but then you have to figure out some sensible way to glue them all together. You'd basically end up with an inferior version of the latest SPARC chips, which weren't really competitive anyway. They're only capable of acceptable performance on embarrassingly parallelizable problems, which makes them cool for web service or databases but pretty useless for almost everything else. And since they come with a substantial price tag, it's difficult to justify them over fleets of PCs.
-
Re: No
Sure, go ahead.
But there isn't really any point in open hardware unless you intent to run open software on it too so there is not really any reason to go for the x86 architecture.
You can grab something from OpenCores if you don't want to start from scratch.
Have a look at the Amber project.
Presumably it should be able to boot Linux, but without MMU support. -
Re: No
Sure, go ahead.
But there isn't really any point in open hardware unless you intent to run open software on it too so there is not really any reason to go for the x86 architecture.
You can grab something from OpenCores if you don't want to start from scratch.
Have a look at the Amber project.
Presumably it should be able to boot Linux, but without MMU support. -
Re: Can this CPU be implemented on FPGA?
Do you have a source of open source FPGAs? Most that I know of are very closed.
I'm not sure this is what the GP means. There are already several opensource CPU designs ready for FPGA implementation, for example at opencores.
It's a good point to keep in mind that a closed FPGA toolchain could introduce unintended features in your opensource CPU. However, it's basically the same issue as running Linux on an Intel processor -- the practical implementation is not fully open source, even if the original software is.
-
"microcontroller" vs. "PCB"?
This open source microcontroller has been around for 10+ years:
http://opencores.org/project,c...
This is truly "open source" because you can download the actual VHDL source files and compile them into your own chip design.
The article seems to be confusing a "printed circuit board"(PCB) with a "microcontroller". The author keeps referring to the "HiFive1" as a "microcontroller". It's not. It's a circuit board. The FE310 is the "microcontroller".
From the company website:
HiFive1 Features & Specifications
Microcontroller: SiFive Freedom E310 (FE310)It looks like the Altium files are "open source", but Altium is PCB design software. I don't see a place where you can download the VHDL, Verilog source code or even a netlist and layout(e.g. a GDS file) of the actual FE310 microcontroller. That appears to be proprietary IP. I don't see how this is any more of an "open source" microcontroller than the Atmel or PIC chips.
-
definition of 'open'
Microsoft has an "Open License" which allows you to look at Windows NT source code. it's "open", yes? pay them $USD 1m per year, you get an "open" look at the source code of Windows NT. but if you ever dare to use it, talk about it, or do ANYTHING other than *read* it.... they will sue the fuck out of you.
bottom line: can we PLEASE stop using the word "open" in context with these types of stupid, stupid proprietary arrangements? it really isn't helping.
there are plenty of *LIBRE* licensed implementations of MIPS out there: many people have pointed that out (in comments i can see above this one), they're on http://opencores.org/ - there are at least eight MIPS core implementations that i can see, there, possibly the best one (most complete) is this: http://opencores.org/project,m... which has a 5-stage pipeline and a harvard architecture.
so please, stop using the word "open" to refer to proprietary, restricted and patented material.
-
definition of 'open'
Microsoft has an "Open License" which allows you to look at Windows NT source code. it's "open", yes? pay them $USD 1m per year, you get an "open" look at the source code of Windows NT. but if you ever dare to use it, talk about it, or do ANYTHING other than *read* it.... they will sue the fuck out of you.
bottom line: can we PLEASE stop using the word "open" in context with these types of stupid, stupid proprietary arrangements? it really isn't helping.
there are plenty of *LIBRE* licensed implementations of MIPS out there: many people have pointed that out (in comments i can see above this one), they're on http://opencores.org/ - there are at least eight MIPS core implementations that i can see, there, possibly the best one (most complete) is this: http://opencores.org/project,m... which has a 5-stage pipeline and a harvard architecture.
so please, stop using the word "open" to refer to proprietary, restricted and patented material.
-
OpenRISC
See OpenRISC, which IMO provides a better path for academia.
-
Re:Open Source Funding
But they'd STILL need a factory.
No they wouldn't - the vast majority of silicon vendors are fabless, while some silicon developers don't even sell complete chips at all, only 'IP blocks'. It is absolutely possible to have free/open source chip designs.
I think the big stumbling block currently would be the very limited FOSS tools for synthesis and layout.
-
Re:No FDTI
You very clearly didn't see the die exposure article.
The counterfeit chip is in fact WAY more complex. It's not off the shelf, so to speak. They custom-modified. It's obvious once you start looking at the physical silicon.
Oh, Khyber, Khyber... when will stop pretending to know things? It's "off the shelf" in the sense that they didn't have to design anything... they just grabbed an existing microcontroller design and added an extra module or two to it. tibit didn't say that it was cheaper because it's less complex; he said it's cheaper because, "Whoever packages it didn't have to do all the silicon and driver R&D." Just like there are software libraries that a software developer can grab and use without having to do a lot of work, there are hardware libraries that hardware designers can grab and use without having to do a lot of work. You need to do some AES encryption? No need to design that yourself; grab an AES core. You need to do some low-pass digital filtering? Get a filter core. There's even a site that has open-source hardware cores you can use: OpenCores
-
Re:Proprietary firmware blob?
Link, please?
Sorry it was a RISC not a MIPS http://www.lowrisc.org/
You seem knowledgeable on the subject - are any projects listed on OpenCores sufficient?
no sadly most are crap by modern standards or incomplete.
-
Re:Proprietary firmware blob?
(and there is one btw here's a hint, its a mips)
Link, please?
Every single open source hardware project out there right now is based around a closed source SoC, if you don't like it, go design us some silicon and release it to public domain.
You seem knowledgeable on the subject - are any projects listed on OpenCores sufficient?
-
Re:Why Non-commercial?
The hardware design is open.
Not by any commonly accepted definition of the word "open". The OSS Foundation, the Open Source Hardware movement, the Open Design movement, OpenCores, and even the FSF, consider "no-commercial-use" restrictions to be disqualifying. What OpenPandora is doing, is trying to get the marketing buzz of calling themselves "open" while restricting use of their IP by anyone than would have a reason for using it.
-
Re:OpenRISC hardware?
Well, these, but they look more OpenWRT than Debian.
-
Re:wow, you really get a sense...
-
Re:"Truly free", but with Intel inside(tm)
Anything from OpenCores
-
Re:The legacy of the PDP-11
Indeed. There are several projects around to implement a full PDP-11 in single FPGA. For example:
-
Re:Solution
Eventually all hardware will be like this. What will be your solution then? Don't buy a computer?
Nope, build your own from scratch, even if you have to design the CPU.
-
Re:Not realistic
Which will trend to zero very rapidly.
If there is a demand there will be the offer. I will personally make m/boards for you that run whatever CPU you want and use whatever booting technology you want. If you insist I can use an entirely FPGA-based design that is 100% F/OSS. It may not be as good as an Intel CPU, but it will work.
The only way to block this is to make it illegal. But I cannot imagine how you can make microcontrollers illegal today. Would I need a license to own a debugger or a soldering iron?
-
Re:FPGA Dev Board
^^^ Yes.
For those who don't know what a FPGA is, think of it as being like an ephemeral homebrew ASIC. It's the integrated circuit equivalent of a Star Trek "replicator". FPGAs are usually too expensive to use as compoents in finished commercial projects (at least, mass-market ones), but for prototyping, they're the greatest thing that's ever existed.
Let me put it this way -- Freescale might have discontinued the last of their "real" m68k CPUs and non-Coldfire MCUs, but thanks to the magic of FPGAs, you can synthesize your own whenever you want to ( http://opencores.org/project,tg68 ). With a little tweaking, you can synth a hypothetical 50mhz 68000 that can address 4 gigs of ram, use DDR, and execute "move SR, <ea>" without going down in flames.
With FPGAs, you can make an Amiga, turn it into a Commodore 64, resynth it as an Atari ST with two SID chips hypothetically grafted on, then repurpose it to overlay your own bitmap data on top of HDCP-protected HDMI content (as long as you know how to use Google well enough to find a copy of the leaked HDCP master key).
However, I'd recommend the Xgamestation Mach64 CPLD kit as a first step, instead ( http://www.xgamestation.com/view_product.php?id=40 ). It comes with everything you need, includes a good manual that's well-written and easy to understand, and works flawlessly under Vista & Win7 (including 64-bit) as long as the computer has a real (non-USB) parallel port. AFAIK, it's the ONLY dev board that's targeted towards users who understand programming and have some background in electronics, but nevertheless have some huge gaps in their background knowledge that an EE wouldn't have.
Note: I'm not affiliated with them. Just a really happy and satisfied customer
:-) -
Re:Those performance numbers are BS
Forget the performance numbers, the whole thing is bullshit:
* The proposal is dated December 2, 2012 for an advanced kitchen sink SoC with silicon in July 2013? Really?
* Their never released to market CPU design that beats an ARM on one video decoding benchmark is ready to go, except they need to move it to a new process, double the number of cores, and speed it up by 30%. Trivial, I'm sure.
* This bit here:
What's the next step?
Find investors! We need to move quickly: there's an opportunity to hit
Christmas sales if the processor is ready by July 2013. This should be
possible to achieve if the engineers start NOW (because the design's
already done and proven: it's a matter of bolting on the modern interfaces,
compiling for FPGA to make sure it works, then running verification etc.
No actual "design" work is needed).The design is done! They just have to, you know, grab their perfectly-working peripheral IPs from unstated sources, "bolt them on" to their heavily-modified CPU, and then compile for FPGA. And maybe some timing simulations for their new 40nm process, but I'm sure that won't turn up any problems. And "verification, etc." (aka the part where you actually make it work). And fixing any problems found in silicon. But no *actual* design work is needed.
I have spent the last three months in my day job on a team of a dozen people writing design verification test cases for a new SoC. Fuck you for talking like that's nothing.
* They're going to hit "Christmas sales"? So despite being a real honest for-profit multi-million-selling product, we swear, they're still targeting a consumer shopping season. Hint: you want your chip to go into other products. Products sold at Christmas time are designed long before Christmas. Probably more than six months before, i.e. July 2013. Oops.
* No mention of post-silicon testing, reliability studies, or even whether they've got a test facility lined up, or what kind of resources they need for long-term support. I said it when OpenCores pulled this crap, and I'll say it again. Hardware is not software. You have to think about this stuff. Yield and reliability are what determine whether other companies buy your stuff and whether you make money from it.
Let me offer some advice to anyone who wants to change the semiconductor world overnight with the magic of open source: start small. Really small. Even Linus Torvalds didn't start out planning to conquer the world. Maybe you could start by trying to get open source IP blocks into commercial products. Once there's a bench of solid, field-tested designs, *then* we can talk about funding an attempt to put it all together. But coming out of nowhere and asking for $10 million is not the way to start. Just ask OpenCores -- their big donation drive got them a grand total of $20 thousand.
-
Re:And no proprietary software either
If this processor is going to be designed and licensed under GPLv3 - I guess one won't be able to build any license-compatible proprietary software for it either. Curious - but count me out
:)ah interesting. no, it wouldn't be. i believe there are two separate misunderstandings here.
first: i did actually look some time ago at LEONv..... v2 i think it is, which is LGPL licensed i think by Gaisler Research but the amount of work needed to turn it into a modern GPU/VPU-competitive processor would be too costly. then there is the stuff on http://opencores.org/ but it's not really ready for prime-time - i've been keeping an eye on the projects there for quite some time [none of them are SMP capable for example]
instead, i kept hunting, spoke to tensilica about their core (which is superb btw!), talked to synopsis about their core (ARC), and even came up with a way to do software-interrupt-driven SMP (yes i ran it by alan cox on LKML!). when this current design popped up, and i saw both its capabilities and that they are willing to respect the GPL regarding the toolchain, i jumped at the chance.
second misunderstanding is over design of *hardware* impacting what *software* it can run. it would be necessary to have a modified version of the GPL, stating "all and any software programs running on this hardware *must* be GPL licensed". the impact that this would have would be extremely problematic, as well as being rather fascist and not in the spirit of free software at all.... and, also, as it would be a modified version of the GPL, it wouldn't *be* the GPL, so could not be FSF-Endorsed.
with that as background, to answer the question directly: this is a proprietary design just like all other proprietary designs, using off-the-shelf completed and *tested* hard macros (including the core processor itself albeit only under the MVP Programme), where there is no restriction of any kind on the software that can be run on that processor, be it free software or proprietary software.
anyone can play, in other words.
-
Re:Why should we care?
Ideas are great. I like a lot of his ideas and certain aspects of his philosophy on software. However as you say, they're rather extremist at times and this causes problems because we live in the real world, not an idealist paradise (not yet, and likely not ever).
So ideas are great, but if they can't be implemented in practice without there being some significant pushback that prevents achievement of an outcome, then we have a problem. Stallman says a lot, but if for example I were to follow them to the letter, I'd have no career because no-one but Xilinx developers the (proprietary) software to design on their (proprietary) FPGAs, as a very simple example. Would I like a completely free FPGA along with the software to go with it? Sure! Heck these guys are trying to achieve that very thing (an ASIC, but the same general area: http://opencores.org/). But you're not going to be able to do the high power stuff I'm required to do on those things, hence I need to use proprietary material every single day.
-
Um, yeah, about that
I guess you may be looking for "fully" open in the mathematical sense, which is generally unachievable.
You can go over to OpenCores right now and download the spiffy OR1200 OpenRisc design and run it on the OpenRISC development board, but that board uses Altera FPGAs. Which themselves aren't open. Opencores.org had a failed kickstarter that they ran themselves (probably should have used Kickstarter), which raised about half the money needed to make a comminity sponsored chip of it.
http://opencores.org/or1k/OR1200_OpenRISC_Processor
Since that was not successful, you're stuck buying someone's processor, for which they'll have some ownership. Once you accept that and realize there are enormous numbers of processors out there (not really a lock in), then the question of open is about your ability to redesign the board and exert complete control of all the peripheral chips.
The A13 will let you do that. At release time the RPi would not, due to some documentation restrictions and video binaries, but they are making progress in this vein.
So if you want fully open, (and I certainly do), we need to convince the OpenCores people to run a kickstarter for the remaining funds needed, and contribute. Until then the A13 is as close as we get.
-
Re:We won't know his progress
Bzzzt! Wrong!
OTOH, to use an open CPU design, most people would download it onto an FPGA, which involves proprietary software and hardware. But the CPU logic as such would be open source.
-
Re:Giving up passwords
Full AES encryption of all the data would make the drive horribly slow.
Lulwat? A sub-$100 FPGA can do AES faster than your hard drive can move data. Even cheaper on an ASIC. Here's a free implementation
One of the criteria for choosing an algorithm for AES was that it could be implemented fast in hardware. The only real concern you should have about an "AES" drive is if it's using Electronic Codebook mode instead of a mode specified for disk encryption - and whether key derivation is done securely.
-
Re:Where can I get one?
They are attempting to have an ASIC printed Q1 2012,
Really? I've never seen anything like a concrete schedule from them, or even so much as a sane plan. (There's half sane discussion in the forums but they've never gotten around to actually selecting a plan and committing to it so you have some idea what your donation might actually be used for. Currently it sounds like they're giving up hope on immediately making an ASIC and instead are working on a FPGA version of the SoC as a demonstrator, which they should've been doing anyways.)
but they could really use more donations.
You don't say...
(they have less than $20K which is a drop in the bucket compared to what you need to actually get an ASIC taped out)
Here is a link to details about the system on a chip. It is really quite revolutionary in that it would be the first completely open source SOC (all the way from the instruction set to the hardware layout).
The trouble is it's not clear what it would actually revolutionize. It's not going to compete with commercial ASICs on any front (price, features, performance, whatever). About the only thing it might be able to do is serve as a customizable base for commercial projects, but given its extremely low performance targets there's not going to be many takers. The entire thing has always struck me as a bunch of open source idealists thinking "Everything is better OSS! Chips aren't OSS! We must make OSS chips and then the world will be happy!".
-
Re:Where can I get one?
They are attempting to have an ASIC printed Q1 2012,
Really? I've never seen anything like a concrete schedule from them, or even so much as a sane plan. (There's half sane discussion in the forums but they've never gotten around to actually selecting a plan and committing to it so you have some idea what your donation might actually be used for. Currently it sounds like they're giving up hope on immediately making an ASIC and instead are working on a FPGA version of the SoC as a demonstrator, which they should've been doing anyways.)
but they could really use more donations.
You don't say...
(they have less than $20K which is a drop in the bucket compared to what you need to actually get an ASIC taped out)
Here is a link to details about the system on a chip. It is really quite revolutionary in that it would be the first completely open source SOC (all the way from the instruction set to the hardware layout).
The trouble is it's not clear what it would actually revolutionize. It's not going to compete with commercial ASICs on any front (price, features, performance, whatever). About the only thing it might be able to do is serve as a customizable base for commercial projects, but given its extremely low performance targets there's not going to be many takers. The entire thing has always struck me as a bunch of open source idealists thinking "Everything is better OSS! Chips aren't OSS! We must make OSS chips and then the world will be happy!".
-
Re:OpenRISC on FPGA?Yes, there are several ports for different development boards with FPGAs from Actel, Altera or Xilinx.. Here's a list of some boards that are supported by ORPSoC (The OpenRISC Reference System On Chip) http://opencores.org/or1k/FPGA_Development_Boards Most of them contain UART, Ethernet, GPIO, SPI and in some cases HDMI, USB and Flash.
MinSoC support even more boards (http://opencores.org/project,minsoc) but there are less supported peripherals there. Ethernet and UART IIRC
The cheapest ones are about $50 or $60. Think the de0-nano is cheapest
If you want to try out some OpenRISC developing without having to buy a dev board, there is also the OpenRISC architecture simulator or1ksim http://opencores.org/or1k/Or1ksim It supports UART through xterm or telnet, ethernet with TUN/TAP and a framebuffer
-
Re:OpenRISC on FPGA?Yes, there are several ports for different development boards with FPGAs from Actel, Altera or Xilinx.. Here's a list of some boards that are supported by ORPSoC (The OpenRISC Reference System On Chip) http://opencores.org/or1k/FPGA_Development_Boards Most of them contain UART, Ethernet, GPIO, SPI and in some cases HDMI, USB and Flash.
MinSoC support even more boards (http://opencores.org/project,minsoc) but there are less supported peripherals there. Ethernet and UART IIRC
The cheapest ones are about $50 or $60. Think the de0-nano is cheapest
If you want to try out some OpenRISC developing without having to buy a dev board, there is also the OpenRISC architecture simulator or1ksim http://opencores.org/or1k/Or1ksim It supports UART through xterm or telnet, ethernet with TUN/TAP and a framebuffer
-
Re:Where can I get one?
They are attempting to have an ASIC printed Q1 2012, but they could really use more donations. Here is a link to details about the system on a chip. It is really quite revolutionary in that it would be the first completely open source SOC (all the way from the instruction set to the hardware layout).
-
Re:Where can I get one?
They are attempting to have an ASIC printed Q1 2012, but they could really use more donations. Here is a link to details about the system on a chip. It is really quite revolutionary in that it would be the first completely open source SOC (all the way from the instruction set to the hardware layout).
-
Re:Where can I get one?
Where can I get an OpenRISC CPU and a motherboard that will support it,
http://opencores.org/or1k/FPGA_Development_Boards
I have not bothered to research why its listed as supporting the Spartan-3A DSP 1800 and not the spartan3 dev board I have sitting at home, probably needs more gates? Or depends on some part of the DSP1800's innards? Or simply the dude who did it owned a DSP1800 as opposed to the board I have at home?
and how much do they cost compared to Intel/AMD CPUs of similar performance?
Which vegetable has similar price to an apple or an orange? Perhaps a potatoe?
The thing with FPGAs is... how much do you wanna spend? I know there are simply gigantic FPGA arrays out there, so on one FPGA chip you could probably put a whole Beowulf cluster of a dozen of these things on one chip complete with the ethernet switch that interconnects them. So its kind of meaningless, like debating the weight of a soul.
The goal of a FPGA system is not to be a generic processor, but to use the field programability... you use the embedded CPU for generic "who cares how fast" stuff like a user interface, or a TCP network stack, or a DHCP client. You do all the heavy lifting inside FPGA hardware itself. If you used this CPU for a FPGA based mythtv frontend, you would not write a H.264 decoder in the emulated RISC processor assembly language, you'd use a hardware one (or at least hardware accelerated one) inside the FPGA written in verilog or VHDL. If you're running benchmarks on the FPGA processor trying to optimize it, you're probably doing it Very wrong, or trying some insane level of optimization / price cutting.
-
Re:Too long ?
New, is to stretch it a bit as it's about 12 years old by now
:) Anyways, it is MIPS-inspired, but not compatible. There has been some discussion about making next version MIPS-compatible, but we chose not too, as we would like to add and remove features that can better fit modern embedded systems. Here's a link to the or1200 spec http://opencores.org/websvn,filedetails?repname=openrisc&path=%2Fopenrisc%2Ftrunk%2For1200%2Fdoc%2Fopenrisc1200_spec.pdf -
Re:Right direction
It would take 1,389 flip-flops and 4,610 4-input look-up tables. So that's maybe 700+ 74LS74s and a few thousand 74LS series AND/OR/NAND/NOR/NOT chips. At 4mA per chip you will need a 5A or 10A power supply.
But you could do it the easy way and configure an FPGA using http://opencores.org/project,w.11:
The project contains a complete PDP-11 system: a 11/70 CPU with memory management unit, but without floating point unit, a basic set of UNIBUS peripherals (DL11, LP11, PC11, RK11/RK05), and last but not least a cache and memory controllers for SRAM and PSRAM. The design is FPGA proven, runs currently on Digilent S3BOARD and NEXYS2 boards and boots 5th Edition UNIX and 2.11BSD UNIX.
A $150 FPGA board will be a lot cheaper than a drawer full of TTL. And a USB cable is a very cheap power supply.
And you can have it up and running in a few nights.
-
Re:MIPS
The original ARM designs are from 1985 (approximately). There's also an ARM OpenCore http://opencores.org/project,core_arm which I wasn't aware ARM Ltd had attempted to kill yet?
-
Re:Which will essentially cause nothing more than.
It'd be nice to be clear on licensing, redistribution rights etc.
Proprietary blobs are always very clear on licensing and redistribution rights
:-) That's probably the first thing they tell you when you install them.I'm not sure if the binary firmware blobs in the kernel have any different redistribution restrictions, though
I very much doubt that any such blobs are explicitly licensed for use under Linux and not, say, NetBSD. Your incarnation of the free OS would use the same blob in basically the same way. Of course if your OS can't talk to this or that binary driver, it's just too bad - but it's not the license that forbids you something, it's your new and improved driver API that does you in.
With regard to the freedom to understand (as another poster mentions) there is very little to understand in that code unless you also have the schematic of the hardware, *and* the HDL code for all the ASICs that are involved. For example, the super-duper-secret piece of NVidia code can say this:
uint32_t *p = (uint32_t *) REG_ARRAY_A_AUX_CTRL_REG3;
*p = REG_ARRAY_A_AUX_CTRL_REG3_SETUP1_MASK;What does that tell you? Nothing, unless you - like the NVidia firmware guy - have access to *all* the relevant documentation and on top of that have the phone number of the ASIC developer on a speed dial. Without such information you know just enough to be dangerous
:-) You can change one bit and burn the hardware. A lot of the code is also written in a certain way, and it may be not obvious why. For example, you may "optimize" a piece of code and break everything because the original code was crafted to execute in so many clock cycles or to leave certain registers untouched. We may debate whether this is a good way of writing code or not, but that's how some firmware is written, especially if you can't afford timer interrupts (like when you generate a serial bitstream for a chip that is much faster than your CPU.) In those cases you need to have very good understanding of the hardware that you are driving, and have a datasheet handy.In other words, there is very little to learn from those binary blobs. Life is too short to study some junk code written to run some junk hardware for which you don't have a shred of documentation. And if you really want to learn something, build your own hardware from OpenCores parts and write your own drivers. I think they have a complete set of blocks there to build a decent computer from scratch.
-
Re:This has nothing to do with software patents
That is not true at all. It is a problem with software patents. They are a scandal. Hardware patents have worked well in the past, because hardware development is completely different from software development.
I studied Computer Engineering at University (my degree is in CompSci but I took hardware stuff for my electives) and I can tell you without a doubt that the difference isn't as big as you are making out.
Modern hardware is almost exactly like software (just more complicated due to timing constraints, electrical/complexity constraints, etc). Have a look at this for example, this is part of an Ethernet chip. You may notice that it is code (Verilog), look up Hardware Description Language.
This isn't to say that all hardware patents are bogus of course, there are neat patents on new types of transistor and so forth but the same type of bullshit that happens with software patents is in effect in hardware land as well.
-
Re:I have to say
The reason why open source software works is that it is easy for people to contribute and it is essentially free to give someone a copy. That is not the case with hardware.
Are you ever going to be confused when you learn about FPGAs.
-
Proprietary in what way?
MIPS is a proprietary, licensed technology.
A microprocessor can be covered by three different proprietary rights: trademark, mask work, and copyright. Trademark is easy: "The XXX CPU is compatible with a useful subset of MIPS-I user-mode instructions." Mask work is similar to copyright and is worked around in the same way: design your own CPU based on the ISA description rather than copying from a microscopic photo of the existing CPU. As for patents, someone went down the claims in the patents for the MIPS-I architecture and found prior art for 99 percent of them. Hence Plasma.
-
Re:No Proprietary Technologies?
While the official mips implementation designs are often not open source but rather proprietary licensed in a manner similar to ARM cores as you say, there are only four instructions the implementation of which are (or were - I think the relevant patent may have expired!) patent-monopoly-blocked in the mips instruction set. A cpu can get along just fine without them. While Loongson is now a mips licensee anyway, it originally was making "mostly mips compatible" cpus, missing those four instructions.
There therefore also exist opencores implementationsof "most of the mips instruction set" cpus.
-
MIPS has a free implementation
So is the MIPS.
The MIPS architecture has a Free implementation called Plasma. The trouble is that the PowerVR GPU is also a trade secret. That said, I do plan on buying a Pandora PDA once they get a couple more batches out; it'll surely be better than Apple's "iDon't touch".
-
Even x86 is proprietary technology
How is making a bookmark sync tool available for iPhone any more "helping a commercial company push their proprietary technology" than making binaries available for x86 CPUs? Both ARM and x86 CPUs use proprietary technology subject to patent, trade secret, and either mask work right or HDL copyright, and you'd have to switch to something like the MIPS-compatible CPU written in VHDL to get away from this.
-
Re:Find an author
Since hardware the code is running on is part of the build process, you'd also need to have not only entirely OSS software (ALL OF IT, firmware, bios, everything)
Coreboot.
but you'd also need entirely open source hardware.
The mostly-MIPS-compatible Plasma CPU exists. If the binary produced by a compiler running on an x86 CPU is byte-identical to the binary produced by the same compiler running on a Plasma CPU, is it still a case of turtles all the way down?
-
Re:Due to poor ISPs, that would only promote FOSS
Just wait for the patent trolls to take their toll of free software and hardware platforms able to execute free software.
After it was discovered that virtually all of MIPS' patents had prior art, someone went and made the Plasma CPU, a permissively licensed CPU core written in VHDL and compatible with the MIPS architecture.
-
Re:Not new, and not too useful
Fewer instructions does not always mean that the CPU architecture gets more optimized.
To my knowledge, in terms of gatecount this is the most efficient CPU around:
http://www.opencores.org/project,mcpu
32 Macrocells in a CPLD.
-
Re:Learn Both
Opencodes ? You mean http://opencores.org ?
-
Re:Holy CRAP!
oops, typo... and, if you're interested, check out this
-
Open cores
Excuse my ignorance but is it already possible to have a fully working computer that doesn't perform a single unknown operation?
Possible? Yes. Feasible for an enthusiast? Not in the first quarter of 2009. Intel and AMD CPUs contain secret microcode. There exist Free CPU cores such as the MIPS-compatible Plasma, but as far as I know, none are commercially fabricated in significant quantities.
-
OpenCores.org
To answer the poster's question, the opencores.org site provides a wealth of free FPGA hardware designs.
You can find a full list of their projects here.