AnyCPU
http://anycpu.org/forum/

The Mill CPU - uses a belt, not entirely unlike a stack
http://anycpu.org/forum/viewtopic.php?f=3&t=109
Page 1 of 1

Author:  BigEd [ Fri Jan 17, 2014 9:56 am ]
Post subject:  The Mill CPU - uses a belt, not entirely unlike a stack

Elsewhere I was reminded that Ivan Godard of Out-of-the-Box Computing is currently releasing presentations about his new CPU architecture (presently simulated, not yet fabricated.)

[Edit:] It's sort of VLIW, with up to 33 operations per cycle. "If the Mill can pull this off, you'll get a CPU that can get a 10x better performance-per-power rating, and that on a smaller die" - commenter on Reddit.

There are various ideas here - dual PCs travelling in opposite directions, for example - but perhaps the most visible feature is that there's no register file, nor a register stack, but a moving queue of registers of some specific length. Results are plucked out of the queue before they fall off the end, the timing and location of the results depending on the fact that all instruction latencies are fixed (for a given implementation.)

"in the coming months, we will add sections for the Belt, Operands and Data, the Memory Hierarchy, Protection, Software Pipelining, Branch Prediction, and other areas."

See
http://staff.science.uva.nl/~poss/posts ... /mill-cpu/
http://www.reddit.com/r/programming/com ... _metadata/
and various videos and presentations:
http://www.youtube.com/watch?v=jNgIdTUmzEQ
http://ootbcomp.com/docs/

Author:  BitWise [ Fri Jan 17, 2014 11:09 am ]
Post subject:  Re: The Mill CPU - uses a belt, not entirely unlike a stack

It is very reminiscent of reg register ring in SPARC processors. At any time a SPARC function has access to 8 globals registers, 8 local registers, 8 inputs and 8 outputs (if memory serves). When you call a subroutine the ring rotates making the outputs the new inputs and exposing 8 new local variables.

Works really well as long as you do not call deeply and exceed the ring size (which causes the operating system to have to flush the ring to memory)

Author:  BigEd [ Fri Jan 17, 2014 11:48 am ]
Post subject:  Re: The Mill CPU - uses a belt, not entirely unlike a stack

(you remind me of the story of the x87 stack model, which was supposed to allow faulting so the software could assume an unbounded stack, but it didn't work... See section 3 of http://www.cims.nyu.edu/~dbindel/class/ ... 7stack.pdf
and the section starting "Since floating-point expressions are not that complex, Kahan reasoned that eight registers meant that the stack would rarely overflow" in http://www.engr.colostate.edu/~sudeep/t ... 374493.pdf)

Author:  BigEd [ Wed Apr 02, 2014 9:10 am ]
Post subject:  Re: The Mill CPU - uses a belt, not entirely unlike a stack

There's a readable blog post and now something of an official forum/wiki for the Mill:

“The Mill” – It just might Work
Introduction to the Mill CPU Programming Model

via the discussion at https://news.ycombinator.com/item?id=7480278 (which has Ivan Godard as a contributor)

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/