-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Introduce dynamic AXI runt tests #2139
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
3 tasks
Changes dockerfile
nathanielnrn
force-pushed
the
dynamic-axi-tests
branch
from
June 14, 2024 19:01
c2809ef
to
9d73f7f
Compare
nathanielnrn
added a commit
that referenced
this pull request
Jun 15, 2024
* add method to get a confg key witha constrained set of values * Add dynamic generation for `axi-wrapped` state Use `--set dynamic=true` targeting 1--to axi-wrapped` * add method to get a confg key witha constrained set of values * Make InvalidValue a c-like struct and fix err msg * formatting * change debug representation to a join * formatting * trigger ci * Introduce dynamic AXI runt tests (#2139) * wip move axi tests around * remove hardcoded dyn-mem-vec-add from dynamic axi generator * add raw dynamic axi generator tests * add dyn_mem import into dynamic axi generator * more dynamic axi runt tests * fud2 cocotb tests for dynamic axi * remove hardcoded compute * remove stderr ipe to dev/null in fud2 cocotb axi tests * return 2> dev/null in runt cocotb axi tests * more runt fixes * more runt fixes, cocotb dynamic test still fails on CI * upgrade pip to get latest stable version of cocotb Changes dockerfile * hook up xPROT signals correctly * add ARPROT in places as well * update runt tests * fix xPROT connections, revert cocotb in dockerfile to 1.6.2
nathanielnrn
added a commit
that referenced
this pull request
Jun 15, 2024
* Being work on dynamic AXI wrapper. Currently, have reduced complexity of channels by not tracking transfer counts and transaction counts and similar. Changes are a bit haphazard, so be careful about assuming aything is "done". Perhapes the AR and AW channels are indeed finished. TODO: Create address-translate module. In particular look at interface for mulitpliers as we might only have pipelined version * add new const_mult to py-builder * AW AR R and W channels might be done. Need to make sure write channel interface is correct. Then need to tie everything together according to diagram. * Finish(?) read and write controller in builder TODO: Wire up translator, read controller, write controller. Then test if this works with current test bench/executor * begin axi dynamic read controller * refactor reg calls in dynamix yxi generator * add import for const-mult in py-builder * WIP: need to work on axi-seq-mem-comp. Namley, need to be able to add attributes to ports * add support for port attributes with method * refactor to also have outputs iwth attributes * remove extra files added somehow * Add attributes to (and rename) add_comp_ports * Fix some formatting issues, should pass runt tests * find and replace add_comp_params * Work on tying together axi_seq_mem comps * WIP: have control program for axi_seq_mem maybe * Fix some misnamed signals. TODO: AFter getting subtyping working want to instantiate an `axi-seq-mem` in the top level wrapper, pass that in as a seq-mem to the main kernel * WIP: attempt at implementing subtyping. TBD if this works * typo in structure * change error for wellformedness subtyping runt test * compile_invoke now compiles, tbd if actually works * some clippy fixes * wip compile invoke changes * added debugging stuff to invoke, still a WIP * WIP: Need to do clean up but also this might allow subtyping???? Hope so * add comments to well-formed * maybe works? * seems to be working! * update runt tests * make clippy happy * formatting * update comments * more runt tests * replace hashed map with linkedhashmap for determinism * fix bug where iterating over too many ports in comp_ports in compile_invoke * more runt tests for subtyping * might be done with generator? need to fix compiler errors * add hardcoded vec_add for convenience: todo: not recognizing seq_mem_d1 * get rid of static interval annotation in axi_seq_mem * first pass at adding dynamic memories * add dyn-mems to primitve library * add yxi support for dyn-mems in calyx-ir-utils * make clippy happy * add yxi test for dyn-mems * formatting * add all mems to generated dynamic axi interface * add input to padding. Execution completes but incorrect writing to sum0 * change test yxi to dynamic from seq mems * drive read_data out properly in read_channel * derive partialeq and eq for InLineAttributes * extract `get_concrete_port` as helper function * compile_invoke formatting * WIP: extract require_subtype. TODO: allow it to take in StaticInvoke as well * factor out subtyping check * elaborate on some comments in well_formed * improve comments * working dynamic generator??????? * rename axi_seq_mem to axi_dyn_mem * [fud2] Add dynamic generation option to `axi-wrapped` state (#2136) * add method to get a confg key witha constrained set of values * Add dynamic generation for `axi-wrapped` state Use `--set dynamic=true` targeting 1--to axi-wrapped` * add method to get a confg key witha constrained set of values * Make InvalidValue a c-like struct and fix err msg * formatting * change debug representation to a join * formatting * trigger ci * Introduce dynamic AXI runt tests (#2139) * wip move axi tests around * remove hardcoded dyn-mem-vec-add from dynamic axi generator * add raw dynamic axi generator tests * add dyn_mem import into dynamic axi generator * more dynamic axi runt tests * fud2 cocotb tests for dynamic axi * remove hardcoded compute * remove stderr ipe to dev/null in fud2 cocotb axi tests * return 2> dev/null in runt cocotb axi tests * more runt fixes * more runt fixes, cocotb dynamic test still fails on CI * upgrade pip to get latest stable version of cocotb Changes dockerfile * hook up xPROT signals correctly * add ARPROT in places as well * update runt tests * fix xPROT connections, revert cocotb in dockerfile to 1.6.2 --------- Co-authored-by: eys29 <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Moves around and generalizes some AXI
runt
tests to work across the read-compute-write version we have as well as this new dynamic version. Also changes some small things in the dynamic generator to work correctly with tests. Builds on #2136.