Visible to Intel only — GUID: xoc1488919241683
Ixiasoft
Step 1: Getting Started
Step 2: Creating a Child Level Sub-module
Step 3: Creating Design Partitions
Step 4: Allocating Placement and Routing Region for PR Partitions
Step 5: Adding the Partial Reconfiguration Controller IP
Step 6: Defining Personas
Step 7: Creating Revisions
Step 8: Compiling the Base Revision
Step 9: Preparing the PR Implementation Revisions for Parent PR Partition
Step 10: Preparing the PR Implementation Revisions for Child PR Partitions
Step 11: Programming the Board
Modifying an Existing Persona
Adding a New Persona to the Design
Visible to Intel only — GUID: xoc1488919241683
Ixiasoft
Updating the Top-Level Design
To update the top.sv file with the PR_IP instance:
- To add the PR_IP instance to the top-level design, uncomment the following code block in the top.sv file:
pr_ip u_pr_ip ( .clk (clock), .nreset (1'b1), .freeze (freeze), .pr_start (1'b0), // ignored for JTAG .status (pr_ip_status), .data (16'b0), .data_valid (1'b0), .data_ready () );
- To force the output ports to logic 1 during reconfiguration, use the freeze control signal output from PR_IP. However, to observe continuous blinking of the LED from the parent PR partition while PR programming the child partition, the freeze control signal does not turn off led_two_on. Ensure that the pr_led_two_on is directly assigned to led_two_on_w. led_three_on_w must choose between logic 1 and pr_led_three_on, based on the freeze signal. Uncomment the following lines of code:
assign led_two_on_w = ? 1'b1 : pr_led_two_on; assign led_three_on_w = freeze ? 1'b1 : pr_led_three_on;
- To assign an instance of the default parent persona (blinking_led), update the top.sv file with the following block of code:
blinking_led u_blinking_led ( .clock (clock), .counter (count_d), .led_two_on (pr_led_two_on), .led_three_on (pr_led_three_on) );
Figure 9. Partial Reconfiguration IP Core Integration