Mill Computing, Inc. Forums The Mill Architecture Is every belt address always valid?

  • Author
    Posts
  • joseph.h.garvin
    Participant
    Post count: 21
    #909 |

    That is, if I give b5 to an instruction when only one item has ever been pushed on the belt, what happens? Since the belt appears to stay at maximum size once reached I’m guessing to keep the hardware simple the belt is always initialized to be full of 0s and the appearance in the slides of the belt growing was just to make things easier to understand.

    Edit: actually NaR seems like a better choice than 0

  • Will_Edwards
    Moderator
    Post count: 98

    Its not so obvious at first, but uninitialized slots don’t have scalarity nor size. The instructions don’t encode this metadata either, so consequently an op wouldn’t know what to do.

    Referencing uninitialized slots is a programmer error, and faults.

    There are recipes for getting scalars and vectors of zeros or Nones and a few other utility constants cheaply.

You must be logged in to reply to this topic.