Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Android Hardware Build Linux

MIPS Tempts Hackers With Raspbery Pi-like Dev Board 88

DeviceGuru (1136715) writes "In a bid to harness the energy and enthusiasm swirling around today's open, hackable single board computers, Imagination Technologies, licensor of the MIPS ISA, has unveiled the Creator C120 development board, the ISA's counter to ARM's popular Raspberry Pi and BeagleBone Black SBCs. The MIPS dev board is based on a 1.2GHz dual-core MIPS32 system-on-chip and has 1GB RAM and 8GB flash, and there's also an SD card slot for expansion. Ports include video, audio, Ethernet, both WiFi and Bluetooth 4.0, and a bunch more. OS images are already available for Debian 7, Gentoo, Yocto, and Arch Linux, and Android v4.4 is expected to be available soon. Perhaps the most interesting feature of the board is that there's no pricing listed yet, because the company is starting out by giving the boards away free to developers who submit the most interesting projects."
This discussion has been archived. No new comments can be posted.

MIPS Tempts Hackers With Raspbery Pi-like Dev Board

Comments Filter:
  • Sweet (Score:2, Interesting)

    by Anonymous Coward

    I imagine this'll turn up in CS courses that use Patterson and Hennessey's Computer Organization and Design textbook, which uses the MIPS ISA as the canonical example.

  • no price? (Score:4, Insightful)

    by Anonymous Coward on Saturday August 30, 2014 @07:32AM (#47790463)

    The entire appeal of the raspberry pi was that it cost only $35. This new thing, you won't even tell us the price. If you need to ask, you can't afford it...

    • It's a MIPS board. I have been waiting for this for SO long that I'd consider anything with less than 4 digits. And probably decide not to get it if it turns out to be > $200. I don't apply for the free ones since I just want to toy around with it, not do some specific project with it. ;P
    • by amiga3D ( 567632 )

      I'm surprised no one has simply cloned the pi and sold it cheaper. I guess the pi's price is as low as it's possible to get on this hardware, Broadcom must be just about giving away the hardware. When you think about what they've accomplished at this price point it's truly impressive.

    • Re:no price? (Score:5, Interesting)

      by TheRaven64 ( 641858 ) on Saturday August 30, 2014 @08:27AM (#47790579) Journal
      There's no price yet because they're giving away the first production run to people who are going to do interesting things with them. Unfortunately, this is a really bad time to do anything MIPS related (and I say this as someone who hacks on a MIPS IV compatible softcore [bericpu.org] and the LLVM MIPS back end). Imagination has just released the MIPS64r6 and MIPS32r6 specs. These are the biggest revisions to the MIPS ISA since MIPS III, which introduced 64-bit support. They've removed a load of legacy crap like the lwr and lwl instructions and the branch-likely instruction family and added things like compact (no delay slot) branch instructions, the requirement that hardware supports unaligned loads and stores (or, at least, that the OS traps and emulates them), and added much better support for PC-relative addressing. The result is a nice ISA, which is not backwards compatible with MIPS32r2 or MIPS64r2, the ISA that these boards use. Any investment in software for MIPS now is going to be wasted when products with the new ISA come out.
      • by Anonymous Coward

        Wouldn't it be just a matter of re-compiling your code though?

        I love MIPS and, that is the case in large part, because of its current instruction set. It seems like a bad idea to mess with the current instruction set and break backward compatibility. Why did they decide to do that?

        • Re:no price? (Score:5, Informative)

          by TheRaven64 ( 641858 ) on Saturday August 30, 2014 @10:46AM (#47790969) Journal

          Wouldn't it be just a matter of re-compiling your code though?

          Assuming that your code doesn't do anything that is vaguely MIPS specific. If it is, then there is little benefit in using MIPS32r2 now - ARMv7 is likely to be closer than MIPS32r2 to MIPS32r6 in terms of compatibility with C (or higher-level language) source code compatibility.

          I love MIPS and, that is the case in large part, because of its current instruction set. It seems like a bad idea to mess with the current instruction set and break backward compatibility. Why did they decide to do that?

          Basically, because the MIPS ISA sucks as a compiler target. Delay slots are annoying and provide little benefit with modern microarchitectures. The only way to do PC-relative addressing is an ugly hack in the ABI, requiring that every call uses jalr with $t9 in the call, which means that you can't use bal for short calls. The lwl / lwr instructions for unaligned loads are just horrible and introduce nasty pipeline dependencies. The branch likely instructions are almost always misused, but as they're the only way of doing a branch without a delay slot there's often no alternative.

          • by Brane2 ( 608748 )

            Just curious, what's so wrong with branch with delay slot and isn't that more native way to look at branch ?

            Everywhere where it matters ( loops) there is at least one instruction that can be inserted into slot, so this shouldn't be a problem.

            Isn't this more problem of compilers that weren't designed to use such feature than architecture's wart ?

            It probably can eb hidden within modern implementations, but still it seems nice to have in smallest implementations, possibly on FPGA.

            • Just curious, what's so wrong with branch with delay slot and isn't that more native way to look at branch ?

              They're a pain for people on both sides of the ISA.

              The compiler has to find an instruction that can run after the branch. This is normally trivial for calls, but for conditional branches within a function it's often difficult to find an instruction that you can put there. It has to be one that is either from before the jump (or in both basic blocks after the jump), but that the branch doesn't depend on (because it's executed after the branch instruction). This means that you quite often end up padding

        • by tepples ( 727027 )

          Wouldn't it be just a matter of re-compiling your code though?

          Good luck convincing publishers of existing proprietary applications, libraries, operating systems, and drivers to recompile their code.

      • MIPS32r6 [...] added things like [...] the requirement that hardware supports unaligned loads and stores (or, at least, that the OS traps and emulates them)

        What kind of patent does Imagination Technologies have on features essential to MIPS32r6? And how is it licensed, compared to (say) ARM? If you'll recall, unaligned loads and stores were one of the few things about the original MIPS ISA that were patented.

        • by TheRaven64 ( 641858 ) on Saturday August 30, 2014 @12:38PM (#47791453) Journal
          No idea. I don't know if the instructions for computing PC-relative addresses in an ISA without an architectural PC are patentable. They also exist in RISC V (not sure which came first), so if they do then it's going to be a problem for Kriste et al. Nothing else in there is especially novel: like ARMv8, it's a nicely designed compilation target, but it doesn't do anything that's especially exciting.

          I didn't look at the floating point stuff in much detail, so there may be something there, although the biggest changes in recent versions of the MIPS specs have been that they're more closely aligned with the IEEE floating point standards, so it's hard to imagine anything there.

          The biggest difference between MIPS64r6 and ARMv8 is that the MIPS spec explicitly reserves some of the opcode space for vendor-specific extensions (we use this space, although our core predates the current spec - it's largely codifying existing opcode use). This allows, for example, Cavium to add custom instructions that are useful for network switches but not very useful for other things. ARMv8, in contrast, expects that any non-standard extensions are in the form of accelerator cores with a completely different ISA. This means that any code compiled for one ARMv8 core should run on any ARMv8 implementation, which is a big advantage. With MIPS, anything compiled for the core ISA should run everywhere, but people using custom variants (e.g. Cisco and Juniper, who use the Cavium parts in some of their products) will ship code that won't run on another vendors' chips.

          Historically, this has been a problem for the MIPS ecosystem because each MIPS vendor has forked GCC and GNU binutils, hacked it up to support their extensions, but done so in a way that makes it impossible to merge the code upstream (because they've broken every other MIPS chip in the process) and left their customers with an ageing toolchain to deal with. I've been working with the Imagination guys to try to make sure that the code in LLVM is arranged in such a way that it's relatively easy to add vendor-specific extensions without breaking everything else.

          Imagination doesn't currently have any 64-bit cores to license, but I expect that they will quite soon...

      • by mark-t ( 151149 )

        There's no price yet because they're giving away the first production run to people who are going to do interesting things with them...

        If that were actually the real reason that they don't have a price on it, then that would also imply that they do not want anyone to have one who doesn't already know what they want to do with it, and has an idea that *THEY* approve of.

      • There's no price yet because they're giving away the first production run to people who are going to do interesting things with them.

        The program is now closed anyway, so I guess we'll just have to wait and see

        Thanks for your interest in the MIPS Creator CI20 development board. While the current programme is now closed, stay tuned for more information as the Creator programme progresses as part of the Imagination community.

    • Re:no price? (Score:4, Interesting)

      by LoRdTAW ( 99712 ) on Saturday August 30, 2014 @09:32AM (#47790743)

      It doesn't always have to boil down to price. This is the same argument over and over again from some maker/hacker types who want to turn platforms into religions.

      The Raspberry Pi is a lackluster board with a crummy SoC and limited I/O and no FPU. Not to say that the Raspberry Pi is total crap, it does its intended job very well and there is a lot of community support. Plus where else can you buy a $35 board that runs Linux and X with HDMI USB and Audio?

      But it falls flat in a few areas that is frustrating. First off it has *ONE* PWM output. Anyone looking to use this for motor control has to add an external PWM chip. Not a big deal but an annoying one. Next problem is there is the Ethernet is a USB-Ethernet chip on board, there is no hardware Ethernet NIC on the SoC which robs the CPU of cycles. Next up, and this is my gripe with many boards: no high speed interface. There is so much more these boards could do if we could attach an FPGA to them. Sure there is SPI but it simply isn't fast enough for certain things. The only board that can do this is the Beagle Bone which gives you an external bus interface but that disables the HDMI as the pins are shardes on the SoC. So its a trade off.

      What I want to see in a dev board: dual core SoC w/FPU, 1GB RAM+, GPU, HDMI, SD card, SPI, I2C, 6-8 channels of 16 bit PWM, 8 channels of Analog 12bit-16bit, hardware 10/100 or gbit, 4xUSB host, *external bus interface not shared with I/O*. That's it. Just let me plug an FPGA daughter card that gives me the option to load bit files from the CPU and we are golden. Then we can do what ever crazy thing we want: more custom PWM (e.g. directly drive 3 phase bridges), quadrature encoders, faster ADC's, delta-sigma DAC's, high speed I/O, custom bus interfaces, etc. And make it cost $75. We are close to having a board like this, we just need the interest and the right SoC.

      • I've been looking for some of those features as well (gbit ethernet, extra USB and faster cpu and SATA)
        and the closest thing i found was the Banana PI.
      • It doesn't always have to boil down to price. .......

        The Raspberry Pi is a lackluster board with a crummy SoC and limited I/O and no FPU. Not to say that the Raspberry Pi is total crap, it does its intended job very well and there is a lot of community support. .........

        OK I am a child of the 60s. Time not the drug thing...

        The Raspberry Pi is an astounding teaching tool.
        It is open at all the important levels (hardware and software) that
        are impossible or impracticable for a student and class to explore
        on any other computer.

        At the current price it is less expensive than most textbooks.

        It supports all the tool chains a student needs support on and
        supports virtually any programming language worth teaching
        and worth learning.

        The last turn of the Raspberry Pi gave it more USB p

      • Outside of the 1gb RAM, dual core, and dedicated bus, BeagleBone Black is your board. Unfortunately the new revision have more eMMC and not more RAM for the money.

        As for the bus, the manufacturer has to decide between bringing everything out on high density connectors that are useless for hobbyists, or be selective and use common .1" pitch box headers. BB/BBB, Arduino, and RasPi all owe some of their popularity to that accessibility. The BBB has some limitations imposed by the peripheral choice, though e

      • The RPi SoC has an FPU. It also has some limited form of SIMD.

    • by mark-t ( 151149 )
      I would suggest that the much bigger problem with a lack of price means that it's currently impossible to get one at all, since the giveaway period has also expired [imgtec.com].
  • Why would anyone want to waste time on a project for this board without even knowing what the board eventually is going to cost ?
    Price is an important factor in evaluating the platforms chance for success and developers do not want to develop for a platform that is doomed a priori because it is simply to expensive.

    • by topham ( 32406 )

      Because I don't care what it costs YOU to develop the project, I care what it costs me...

      Ok, that's an over simplification. The board looks pretty sweet and would be an excellent choice for a project I'm working on. I expect that Imagination Technologies is trying to gauge demand, which will affect the price point of the final board / production. I've submitted an entry, however due to timing and their site problems (it initially crashed because of the load) it was a pretty short paragraph or two and I doub

    • by FyRE666 ( 263011 )

      On the projects I work on at least, the cost of the MCU hardware is almost irrelevent. In fact in most commercial projects involving microcontrollers or embedded systems, the cost of development boards is not that important. If you're rolling out a large volume of devices you're almost certainly going to be using a custom board anyway. Aside from all this, I can't imagine the cost of the board will be far out of line with similar products; as it'll need to compete when it's released for sale.

      • Aside from all this, I can't imagine the cost of the board will be far out of line with similar products;

        Depending on how you write the definition, "similar products" can cost anywhere from about $35 on up to about $500.

        • by FyRE666 ( 263011 )

          Which product(s) have the same specs as a RPi and cost $500?

          • Which product(s) have the same specs as a RPi and cost $500?

            If you haven't seen ARM dev boards with lower specs than a RPi which cost that much, then you haven't actually priced them.

    • Why would anyone want to waste time on a project for this board

      You wouldn't waste time on a project for this board as the specs for it seem to be entirely generic. So your project would work just as well on many of the other SBCs out there. There don't seem to be any killer features on this product (possibly the camera) so whatever you were planning to create for a Cubie, or an Olimex or any of the others would work on this one, too. And if it didn't then just toss this variant and continue working on the more mature SBCs

    • by Anonymous Coward

      Another important factor is having a reliable source for your components [wordpress.com] (grumble)

    • by mark-t ( 151149 )

      I would imagine that the reason price hasn't been announced yet is because they don't know just how much they will ultimately be able to make them for themselves, and the giveaway they are doing is to gauge demand so they can figure out how much they have to charge.

      If that's the case, the more ideas that got submitted to them, the better it will be.

      Of course, it also might mean that giving them a preview into what kind of demand to expect, they might know for sure just how much they will able to fleece

  • The site mentions a power supply so what's the power envelope ?
  • I can see this small board stuff getting as fragmented as the bazillions of Linux distributions available. Choosing which board you want to play with will get as complicated as choosing a phone plan. Too much choice is not good. What the right amount of choice is, I don't know.
    • More choice in ISAs is always good.
      • When we had SPARC, MIPS, POWER (w/ all its internal variants - PowerPC/POWER/Power), Motorola's 88K, Intel's i860, Intergraph's Clipper and then DEC went on to add the Alpha to the list, that was too many choices. Instead of a gazillion Linuxes, you had a gazillion Unixes - one for each CPU, such as SunOS, AIX, DG/UX, CLIX, and more for some specific CPUs, such as SCO, Unixware (then separate), Interactive Unix, Dynix for the x86 and Irix/Ultrix/RiscOS for the MIPS II, such a situation was not good. It

        • that was too many choices.

          Now it wasn't. Maybe from some obscure business standpoint it was 'better,' but to me it was like having more playgrounds.

          The reason there are fewer now has nothing to do with standardization, it's because they weren't able to keep up with the manufacturing processes. At the embedded level, where manufacturing process doesn't matter as much, there are still a lot of different ISAs. Recently I've been playing with the Parallax Propeller

  • Slashdot's been running awfully heavy on marketing promotional material, lately, with things that aren't even available yet. This one doesn't even have a price? I thought I checked the "ads disabled" checkbox.

  • Comment removed based on user account deletion
    • by Bert64 ( 520050 )

      Linux support for MIPS is actually pretty good, and has been around at least as long as ARM support if not longer... The rest of the toolchain, like gcc etc also has good MIPS support. There is already 64bit MIPS support in the Linux kernel and has been for a long time too, MIPS is actually one of the oldest 64bit architectures out there.
      MIPS would actually be better off focusing on this, as they have a good head start on ARM when it comes to 64bit and multiprocessing. I used to have a 24 cpu (discrete cpus

    • by Anonymous Coward

      > Why are we still selling 1GB RAM to 2GB RAM devices?

      Microchip still sells the PIC10F200, with 16 bytes of RAM. SoCs exist in every imaginable configuration from there on up to chips which are comparable to a low-end PC, and will continue to do so for the foreseeable future. The top-end will continue to grow, but the bottom-end and middle won't disappear.

      For a "device" which is supposed to run a specific program, with no ability to install additional software, you can determine an upper bound on the res

    • by Misagon ( 1135 )

      1GHz doesn't compare well-enough with >3GHz dual-core Intel product in terms of GUI responsiveness.

      GUI responsiveness is more a matter of software bloat than about hardware.

      A Commodore 64 at 1 MHz running GEOS can sometimes be more responsive than a PC with dual eight-core Haswell Xeons.

    • by Brane2 ( 608748 )

      So what ?

      Many ARMs are sold as unicore 50MHz Cortex 3 for example. Not every application needs 16 cores at 2+GHz, for more than one reason.

      And 64 bits is more of an ograde on x86 than other machines especially if one doesn't have more than 3GiB of RAM.

    • by armanox ( 826486 )

      We're selling them because there is demand for them.

      Also, this device clearly is not targeted to be a desktop replacement.

  • Wake me up when there is pricing, and I'll decide how interested I am. I'm not interested in a product which could cost $INFINITY dollars.

  • by dltaylor ( 7510 ) on Saturday August 30, 2014 @03:56PM (#47792363)

    There appears to be enough RAM and enough compute power, but the Ethernet interface is pathetic. Even in an inexpensive experimenters' board, GBit Ethernet should be standard. For one thing, it's hard to judge the real processing power needed (as a fraction of the available) for networking, when the network, itself, is the bottleneck.

"A mind is a terrible thing to have leaking out your ears." -- The League of Sadistic Telepaths

Working...