Intel® Quartus® Prime Standard Edition User Guide: Partial Reconfiguration

ID 683499
Date 9/24/2018
Public
Document Table of Contents

1.10. Programming Files for a Partial Reconfiguration Project

You must generate PR bitstream(s) based on the designs and send them to the control block for partial reconfiguration.

Compile the PR project, including the base revision and at least one reconfigurable revision before generating the PR bitstreams. The Intel® Quartus® Prime Programmer generates PR bitstreams. This generated bitstream can be sent to the PR ports on the control block for partial reconfiguration.

Figure 17. PR Project with Three Revisions

Consider a partial reconfiguration design that has three revisions and one PR region, a base revision with persona a, one PR revision with persona b, and a second PR revision with persona c.

When these individual revisions are compiled in the Intel® Quartus® Prime software, the assembler produces Masked SRAM Object Files (.msf) and the SRAM Object Files ( .sof) for each revision. The .sof files are created as before (for non-PR designs). Additionally, .msf files are created specifically for partial reconfiguration, one for each revision. The pr_region.mfsf file is the one of interest for generating the PR bitstream. It contains the mask bits for the PR region. Similarly, the static.msf file has the mask bits for the static region. The .sof files have the information on how to configure the static region as well as the corresponding PR region. The pr_region.msf file is used to mask out the static region so that the bitstream can be computed for the PR region. The default file name of the pr region .msf corresponds to the LogicLock region name, unless the name is not alphanumeric. In the case of a non-alphanumeric region name, the .msf file is named after the location of the lower left most coordinate of the region.

Note: Altera recommends naming all LogicLock regions to enhance documenting your design.
Figure 18. Generation of Partial-Masked SRAM Object Files (.pmsf)

You can convert files in the Convert Programming Files window or run the quartus_cpf -p command to process the pr_region.msf and .sof files to generate the Partial-Masked SRAM Object File (.pmsf).

The .msf file helps determine the PR region from each of the .sof files during the PR bitstream computation.

Once all the .pmsf files are created, process the PR bitstreams by running the quartus_cpf -o command to produce the raw binary .rbf files for reconfiguration.

If one wishes to partially reconfigure the PR region with persona a, use the a.rbf bitstream file, and so on for the other personas.

Figure 19. Generating PR Bitstreams

This figure shows how three bitstreams can be created to partially reconfigure the region with persona a, persona b, or persona c as desired.

In the Intel® Quartus® Prime software, the Convert Programming Files window supports the generation of the required programming bitstreams. When using the quartus_cpf from the command line, the following options for generating the programming files are read from an option text file, for example, option.txt.

  • If you want to use SCRUB mode, before generating the bitstreams create an option text file, with the following line:

    use_scrub=on

  • If you have initialized M20K blocks in the PR region (ROM/Initialized RAM), then add the following line in the option text file, before generating the bitstreams:

    write_block_memory_contents=on

  • If you want to compress the programming bitstream files, add the following line in the option text file. This option is available when converting base .sof to any supported programming file types, such as .rbf, .pof and JTAG Indirect Configuration File (. jic).

    bitstream_compression=on