Visible to Intel only — GUID: fiu1666136220951
Ixiasoft
Partial Reconfiguration External Configuration Controller Intel FPGA IP
Reference Design Requirements
Reference Design Walkthrough
Hardware Testing Flow
Document Revision History for AN 991: Partial Reconfiguration via Configuration Pins (External Host) Reference Design for Intel® Agilex® F-Series FPGA Development Board
Step 1: Getting Started
Step 2: Creating a Design Partition
Step 3: Allocating Placement and Routing Region for a PR Partition
Step 4: Adding the Partial Reconfiguration External Configuration Controller Intel FPGA IP
Step 5: Defining Personas
Step 6: Creating Revisions
Step 7: Compiling the Base Revision
Step 8: Preparing PR Implementation Revisions
Step 9: Programming the Board
Visible to Intel only — GUID: fiu1666136220951
Ixiasoft
Step 8: Preparing PR Implementation Revisions
You must prepare the PR implementation revisions before you can compile and generate the PR bitstream for device programming. This setup includes adding the static region .qdb file as the source file for each implementation revision. In addition, you must specify the corresponding entity of the PR region.
- To set the current revision, click Project > Revisions, select blinking_led_default as the Revision name, and then click Set Current.
- To verify the correct source for each implementation revision, click Project > Add/Remove Files in Project. The blinking_led.sv file appears in the file list.
Figure 9. Files Page
- Repeat steps 1 through 2 to verify the other implementation revision source files:
Implementation Revision Name Source File blinking_led_default blinking_led.sv blinking_led_empty blinking_led_empty.sv blinking_led_slow blinking_led_slow.sv - To verify the .qdb file associated with the root partition, click Assignments > Design Partitions Window. Confirm that the Partition Database File specifies the blinking_led_static.qdb file, or double-click the Partition Database File cell to specify this file.
Alternatively, the following command assigns this file:
set_instance_assignment -name QDB_FILE_PARTITION \ blinking_led_static.qdb -to |
- In the Entity Re-binding cell, specify the entity name of each PR partition that you change in the implementation revision. For the blinking_led_default implementation revision, the entity name is blinking_led. In this tutorial, you overwrite the u_blinking_led instance from the base revision compile with the new blinking_led entity.
Note: A placeholder entity rebinding assignment is added to the implementation revision automatically. However, you must change the default entity name in the assignment to an appropriate entity name for your design.
Implementation Revision Name Entity Re-binding blinking_led_default blinking_led blinking_led_slow blinking_led_slow blinking_led_empty blinking_led_empty Figure 10. Entity Rebinding
Verify that each of the following lines now exists in the appropriate .qsf:
##blinking_led_default.qsf set_instance_assignment -name ENTITY_REBINDING blinking_led \ -to u_blinking_led ##blinking_led_slow.qsf set_instance_assignment -name ENTITY_REBINDING blinking_led_slow \ -to u_blinking_led ##blinking_led_empty.qsf set_instance_assignment -name ENTITY_REBINDING blinking_led_empty \ -to u_blinking_led
- To compile the design, click Processing > Start Compilation. Alternatively, the following command compiles this project:
quartus_sh --flow compile blinking_led –c blinking_led_default
- Repeat the above steps to prepare blinking_led_slow and blinking_led_empty revisions:
quartus_sh --flow compile blinking_led –c blinking_led_slow
quartus_sh --flow compile blinking_led –c blinking_led_empty
Note: You can specify any Fitter specific settings that you want to apply during the PR implementation compilation. Fitter specific settings impact only the fit of the persona, without affecting the imported static region.