A .Net CPU
An anonymous reader writes "Windows for devices has an article about the .Net CPU. The chip is programmed with a subset of the CLR and runs the same software as the SPOT smart watches. Among other things, "[t]he computer module is implemented in the format of a 32-pin "DIP" (dual inline package) chip, allowing the module to conveniently plug into a standard 32-pin DIP socket. In addition, the ".netcpu CPU Module" integrates 4MB of nonvolatile Flash memory (interfaced via an SPI interface on the SoC). It also provides 24 general purpose digital I/O lines, which are multiplexed with other functions including 8 VTU ports, a USB port, two serial ports, and SPI and I2C interfaces." More information about the product can be found at the .netcpu company website."
It's an embedded chip which has a CLR on top of it. Nice idea, sorry that Sun thought of it earlier ( The Green Project) - Sun seems to be consistently missing the BUS here. They came up with "Network is the computer" and now MS is selling ".NET " :)
I've seen a couple of stack based engines but by its polymorphic natureQuidquid latine dictum sit, altum videtur
I'm waiting for a Parrot chip.
Now that would be exciting.
Parrot is not a very good design to put on a chip, for one single reason.
Too Many opcodes (1500 at my current count and growing).Morover parrot has opcodes which do very complicated things like "print_nc" which prints a FLOATVAL constant. Compared to that IL opcodes are simpler and JVM is still more simpler (CVM is even simpler - which is what I'm working on now).
Parrot is too complex, period.Quidquid latine dictum sit, altum videtur
this thing seems like an overpriced piece of junk just trying to hawk its .NET and VS support. Most of the microcontrollers out there i have seen can in some way or another be programmed in C and its various forms. 200 dollars just for the cpu seems to be asking a lot when the only advantage i see is that is 4mb of flash, and other MC's can always be expanded to that anyway. Besides the fact that other MC's out there that are cheaper also contain a whole lot more peripherals and features than this one. But maybe thats just me
Isn't this exactly like the Java CPU that Sun was selling a few years back? And it was simply a close relative of the Lisp processors from the 80s.
C#, Java. .Net, J2EE. CLR, JVM. .NET CPU, Java CPU. So should we expect Microsoft to simply repeat everything that Sun did with Java? If so, wake me up when they declare they're going to release CLR under an open source license.
When referring to packaging, FBGA is usually Fine Ball Grid Array. I really doubt it's a typo. From the programmers point of view, the package virtually never significant.
Overall, this sounds remarkably similar to picoJava, which, last I checked, was going nowhere, and for good reason.
Designing bytecode formats for VMs is not really the same as designing opcodes for microprocessors -- shoehorning hardware that way is painful and generally results in less elegant, more expensive designs.
OTOH, the bytecodes in question aren't really significantly worse than, say, x86, and look where that is today...
This has been available for a long time with open access to the design from Sun as the picoJava CPU core. It was not an economically viable CPU and I think this's one of the reasons why Sun released it.
Banu
Although I agree with you that it isn't the case to troll everything that has "microsoft" into it, I think that an high income isn't the first requirement for someone that foreseek freedom of choice and information (why develop Free Software, else?).
The fact that 85% of the computer world use MS systems doesn't mean that it's the best thing to do. Still, things are (really) slowly changing. Maybe I'll live the day when the market share between MS and *nixes 'll be 50%-50%... and that would mean real competition, not just "smithe the infidel with teh big hammer" as almost everyone on both sides tries to do (often don't understanding really what's right to "fight" for).
42.
It's an ARM CPU, not a .NET CPU.
It loads ".NET Embedded" from firmware.
This is like saying an iPaq has a WindowsCE CPU.
Read this paper about how many hoops you have to go through to get a decent interpreter for .NET. And it blatantly ignores the _Main() x86 native code that's in the .exe files.
Quidquid latine dictum sit, altum videtur
Yeah riiiiight have you ever seriously looked at the spec of these 'java chips'? They are not as advanced as Sun may have you believe..
.NET chip....
* No floating point 16-bit int instead of 32 bits.
* All types (byte, short, char, int and boolean) use 2 bytes,
though byte and short arrays use 1 byte per element.
* Only one-dimensional arrays (can use the index to simulate a 2-D array.)
* Single byte ASCII strings instead of two byte Unicode
* Only a single thread available, though a timer allows for
scheduling of multiple tasks. (Plus the VP objects run independently)
* No interfaces, though sub-classing of an abstract base class is allowed.
* A subset of the core libraries is available. (Remember also that
all linked classes must be downloaded with the program and fit into
the 32kb of memory.)
* No garbage collection. All objects created will last for the
duration of the program.
Compare that to this
* 384K of SRAM, single cycle access
* 27 MHz ARM7TDMI
* FBGA chip form
* ~450,000 instructions per second
* 4MB non volatile flash
* 1.8-volt core, 3.3-volt I/O
* 32768 Hz real-time clock
* 32-pin pinout, including 24 GPIO ports multiplexed with other functions (8 VTU ports, dual serial ports, SPI, and USB port)
* SPI and I2C interfaces
and its multithreaded, too