The Mill CPU architecture defines a generic Mill processor, from which a family of specific processors can be configured. A particular configuration for a Mill CPU family member is defined by a specification, which is processed by Mill configuration software to build a member-specific assembler, simulator, compiler back-ends, Verilog for the hardware implementation, documentation, and other tools and components. A Mill CPU family member specification is in two parts: one defines the instruction set, and the other defines the components that comprise the functional organization and microarchitecture of the configured family member. The talk will describe the specifications and the software components that perform Mill configuration.
In addition, the talk will include a live demo of configuration. The audience will specify a new instruction and a new Mill family member. The speaker will build a new configuration from the specification, write a short program in Mill assembly language that exercises the new instruction, and execute and debug the program in a software functional simulation of the newly configured family member.
Ivan Godard has designed, implemented or led the teams for 11 compilers for a variety of languages and targets, an operating system, an object-oriented database, and four instruction set architectures. He participated in the revision of Algol68 and is mentioned in its Report, was on the Green team that won the Ada language competition, designed the Mary family of system implementation languages, and was founding editor of the Machine Oriented Languages Bulletin. He is a Member Emeritus of IFIPS Working Group 2.4 (Implementation languages) and was a member of the committee that produced the IEEE and ISO floating-point standard 754-2011.
Ivan is currently CTO at Out-of-the-Box Computing, a startup now emerging from stealth mode. OOTBC has developed the Mill, a clean-sheet rethink of general-purpose CPU architectures. The Mill is the subject of this talk.