1. 24 May, 2023 1 commit
  2. 23 May, 2023 2 commits
  3. 22 May, 2023 4 commits
  4. 21 May, 2023 1 commit
  5. 18 May, 2023 3 commits
    • Jannis Harder's avatar
      sim: Fix cosimulation with nested modules having unconnected inputs · ad2b04d6
      Jannis Harder authored
      When assigning values to input ports of nested modules in cosimulation,
      sim needs to find the actual driver of the signal to perform the
      assignment. The existing code didn't handle unconnected inputs in that
      scenario.
      ad2b04d6
    • Jannis Harder's avatar
      smt2: Use smt bv offset for `$any*`'s smtoffset · e6f39148
      Jannis Harder authored
      While not setting the smtoffset here was clearly a bug, I think using
      `chunk.offset` only worked incidentally. The `smtoffset` is an offset
      into the `smtname, smtid` pair (here `"", idcounter`) which corresponds
      to the smt bitvector `stringf("%s#%d", get_id(module), idcounter)` which
      contains all the chunks this loop is iterating over.
      
      Thus using an incrementing `smtoffset` (like the `$ff`/`$dff` case above
      already does) should be the correct fix.
      e6f39148
    • github-actions[bot]'s avatar
      Bump version · 147cceb5
      github-actions[bot] authored
      147cceb5
  6. 17 May, 2023 5 commits
  7. 15 May, 2023 1 commit
  8. 10 May, 2023 2 commits
  9. 09 May, 2023 7 commits
  10. 08 May, 2023 4 commits
  11. 07 May, 2023 1 commit
  12. 06 May, 2023 1 commit
  13. 05 May, 2023 5 commits
  14. 04 May, 2023 2 commits
  15. 03 May, 2023 1 commit
    • Dag Lem's avatar
      Handling of attributes for struct / union variables · ad437c17
      Dag Lem authored
      (* nowrshmsk *) on a struct / union variable now affects dynamic
      bit slice assignments to members of the struct / union.
      
      (* nowrshmsk *) can in some cases yield significant resource savings; the
      combination of pipeline shifting and indexed writes is an example of this.
      
      Constructs similar to the one below can benefit from (* nowrshmsk *), and
      in addition it is no longer necessary to split out the shift assignments
      on separate lines in order to avoid the error message "ERROR: incompatible
      mix of lookahead and non-lookahead IDs in LHS expression."
      
          always_ff @(posedge clk) begin
              if (rotate) begin
                  { v5, v4, v3, v2, v1, v0 } <= { v4, v3, v2, v1, v0, v5 };
      
                  if (res) begin
                      v0.bytes <= '0;
                  end else if (w) begin
                      v0.bytes[addr] <= data;
                  end
              end
          end
      ad437c17