Linux-running MIPS CPU available for free to universities – full Verilog code
blog.imgtec.com
blog.imgtec.com
elegant as in simplified to the bone, but also a market failure compared to not so reduced ARM
>You’ve been here for two months, and now you want to give our IP away!
haha, nice try Imagination Technologies, you arent giving anything for free. Later on in the blog post is a mere mention of all the proprietary IP, patents and licenses they are NOT granting/licensing. This is a huge win for Imagination, somehow they managed to convince a ton of universities to base their curriculum on Img proprietary design, this is as big as Nvidia "helping out" with heterogenous computing courses resulting in universities universally (hah) ignoring OpenCL, and exclusively teaching proprietary CUDA.
We are granting an open license, which means you can see the code. CPU IP usually includes many options (i.e. parameters) that need to be set by design teams before doing any FPGA integration work (synthesis, functional simulation and verification, place and route, etc.). Setting those parameters up requires a lot of expertise which is usually accumulated over years of work in SoC design.
The blog article mentions a case where a university struggled to configure the MIPSfpga CPU because (naturally) IP can be quite complex, especially if you haven’t used it before. So we’ve actually done a lot of work to create a pre-configured, pre-validated version that is easy to use by academics (lecturers, students, etc.) for FPGAs. Of course, we also state in the press release that users can change it but they need to talk to us first to ensure that the changes they make are valid and sensible. The last thing you want is to break a CPU architecture; this will affect not just the behavior of the hardware, but also the toolchain.
I know it's become a bit of a tradition to abuse the word "open" in technology circles, but this is really pushing it a bit far. Even Microsoft didn't have the gall to call its "shared source" initiative "open".
There are tons of MIPS SoCs out there, mostly in various Chinese devices (the ones which are too cheap for ARM?) so I wouldn't say they failed completely, but in terms of performance or power efficiency MIPS is definitely behind compared to ARM or x86:
http://www.extremetech.com/extreme/188396-the-final-isa-show...
AFAIK all the patents on early x86 have expired, and IMHO that's a far more interesting architecture to study...
As for compilers, neither ARM's nor Intel's compiler were used for the other CPUs, so I think that's a fair comparison. ...and I thought one of the reasons to choose a very simple RISC like MIPS was that its simplicity made compiler optimisations easier?
By interesting do you mean awful? The only reason for clinging on to x86 is maintaining compatibility with old proprietary (almost entirely windows) software.
ah, to have such a failure that gets my chip in embedded use for decades including some game machines and some not too shabby workstations
Edit: Fixed typo.
Open cores might get close to an implementation, but usually they break code compatibility or implement older versions of the architecture, which limits your ability to run (or update to) a modern Linux kernel or use a standard toolchain from established providers.
I think this announcement is particularly important because it gives students the chance to study a piece of RISC history. When I was in University studying for my Electrical Engineering degree, we were asked to clone an 8-bit MCU. While it was a useful exercise, everyone was dreaming of seeing a fully open MIPS CPU. We were taught it yes, in the Computer Architecture course, but never got a chance to see any RTL code.
RTL code + slides beats slides in my book so that's why I feel this announcement is so important for me, personally - but also for universities worldwide.
MIPS is a very popular architecture, having shipped in over 800 million devices last year.
Now these universities that teach MIPS in their coursework have a chance to enhance the course by giving students access to the RTL too. When those students leave university, they will have the skills required to understand and work with a commercially-available CPU architecture.
The vast majority of practical references in the book are based on the MIPS architecture (as an example of a RISC processor).
Reference:
http://www.oracle.com/technetwork/systems/opensparc/openspar...