the belt is really just a front for a bunch of renamed registers, it's very likely that the data doesn't need to get put into a register bank but can instead stay inside the output latches of the execution units and get fed to the input latches of the next execution unit that needs it.hoho wrote:I assumed as much but I'm still waiting to know how they have solved their register layout. From what you said here it seems like it's registers are all effectively general purpose, just simd instructions take a bunch of those registers as one chunk and execute SIMD instructions on them.NotABiter wrote:And that Mill also has vector processing?
decoding an instruction will involve a looking at previous instructions (or updating a cache as things get decoded to find where belt position n is at the moment and then setting the what the guy calls a "crossbar" (effectively a n to n multiplexer with decent parallel capacity) to move the data around. This may also include putting in moves to the general register bank for long lived values.