1. Dec 06, 2023
  2. Dec 05, 2023
  3. Dec 02, 2023
  4. Dec 01, 2023
  5. Nov 30, 2023
  6. Nov 29, 2023
  7. Nov 28, 2023
  8. Nov 23, 2023
  9. Nov 17, 2023
  10. Nov 16, 2023
  11. Nov 15, 2023
    • Schuyler Eldridge's avatar
      Add SparseVec · e3bcc90d
      Schuyler Eldridge authored
      
      
      Add a new utility, SparseVec.  This exposes a normal Vec-like dynamic
      access API.  However, the dynamic access is implemented one of three ways:
      
        1. Using a binary decoder
        2. Using a one-hot decoder
        3. Using when statements
      
      This is added to better support a design pattern ("vec--decoder pattern")
      where a large, sparse vector is used to describe a decoder.  This pattern,
      if unchecked and used in a parametric generator, can cause the vector to
      grow extremely large and cause backend tools to complain.
      
      Specifically, Cadence tooling is known to set limits on the addressable
      range of a "memory" and will error if these are exceeded.  This
      vec--decoder pattern can easily exceed this if designers are not careful.
      
      Signed-off-by: default avatarSchuyler Eldridge <schuyler.eldridge@sifive.com>
      e3bcc90d
  12. Nov 14, 2023
  13. Nov 11, 2023