1. Nov 07, 2023
  2. Nov 04, 2023
    • Schuyler Eldridge's avatar
      fixup! Add SparseVec · 7b5d6fc6
      Schuyler Eldridge authored
      7b5d6fc6
    • Schuyler Eldridge's avatar
      fixup! Add SparseVec · 3a8d7a99
      Schuyler Eldridge authored
      3a8d7a99
    • Schuyler Eldridge's avatar
      Add SparseVec · 8c2efa6c
      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>
      8c2efa6c
  3. Nov 03, 2023
  4. Nov 02, 2023
  5. Nov 01, 2023
  6. Oct 27, 2023
  7. Oct 26, 2023
  8. Oct 25, 2023
  9. Oct 24, 2023
  10. Oct 22, 2023
  11. Oct 21, 2023
  12. Oct 19, 2023
  13. Oct 18, 2023
  14. Oct 17, 2023
  15. Oct 16, 2023
  16. Oct 14, 2023