| # ROI_HARNESS Minitest |
| |
| ## Purpose |
| Creates an ROI with clk, inputs, and outputs to use as a partial reconfiguration test harness |
| |
| Basic idea: |
| -LOC LUTs in the ROI to terminate input and output routing |
| -Let Vivado LOC the rest of the logic |
| -Manually route signals in and out of the ROI enough to avoid routing loops into the ROI |
| -Let Vivado finish the rest of the routes |
| |
| There is no logic outside of the ROI in order to keep IOB to ROI delays short |
| Its expected the end user will rip out everything inside the ROI |
| |
| To target Arty A7 you should source the artix DB environment script then source arty.sh |
| |
| To build the baseline harness: |
| ``` |
| ./runme.sh |
| ``` |
| |
| To build a sample Vivado design using the harness: |
| ``` |
| XRAY_ROIV=roi_inv.v XRAY_FIXED_XDC=out_xc7a35tcpg236-1_BASYS3-SWBUT_roi_basev/fixed_noclk.xdc ./runme.sh |
| ``` |
| Note: this was intended for verification only and not as an end user flow (they should use SymbiFlow) |
| |
| To use the harness for the basys3 demo, do something like: |
| ``` |
| python3 demo_sw_led.py out_xc7a35tcpg236-1_BASYS3-SWBUT_roi_basev 3 2 |
| ``` |
| This example connects switch 3 to LED 2 |
| |
| ## Result |