July 10th, 2020 Progress Report

Synth Tiles From Node
 
    New prjxray-db should be merged soon, allowing for the synth tile from node work to be merged early next week.

Heterogeneous Synth Tiles

    The heterogeneous synth tiles pull request is ready to be merged, other than one vivado diff-fasm test that failed.  After loading the design into vivado and tracing back pips to compare with the original fasm, it is clear this is an uncovered bug in fasm2bels.  acomodi and litghost are planning to look into a fix next week so this work can be merged.
         
Overlay Device Generation

    I created a pull request for adding the overlay python object to prjxray.  I need to do some cleanup there and add some prjxray test cases.
   
     I also believe overlay generation is working completely. I have yet to write a comprehensive test case, but I am able to generate reasonable architecture and rr_graph files. The next step will be writing an initial testcase for generating different PR regions and merging the fasm with a generated overlay for testing on hardware. Overlay generation pull request. This work will need a lot of rebasing and cleanup after dependencies are merged.

    Assuming how testing goes, my next step will be writing increasingly complex test cases to ensure everything is working as expected (including multiple pr regions and a non-trivial overlay, potentially a NoC based overlay). I am also starting the think very seriously about supporting online partial reconfiguration too. I think it is at least very feasible to support online PR without the "reset_after_reconfig" flag (which requires additional logic to ensure a reasonable state of registers without having to reset the entire chip). A good starting place for online partial reconfig is the work by BYU for Maverick, but I need to figure out how to properly integrate this work with updated versions of symbiflow.

Comments