Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17261 Discussions

Automating POF generation

host
New Contributor I
1,814 Views

Hello,

 

I'm using a .pfg script file to convert .sof files into .pof

How can I automate the process such that a .pof file will be generated at the end of every compilation ?

Labels (1)
0 Kudos
1 Solution
FvM
Honored Contributor II
1,713 Views

Scripting is of course the solution.

Call quartus_pfg with respective .pfg configuration in a tcl script, e.g. post_flow.tcl

exec quartus_pfg -c yourpfgfile.pfg

Specify post flow action in your project

set_global_assignment -name POST_FLOW_SCRIPT_FILE "quartus_sh:flow_post.tcl"
 

View solution in original post

3 Replies
Farabi
Employee
1,751 Views

Hello,


Basically, Quartus is built from TCL script. All the instructions are actually running on TCL scripts. You can built an automation script using TCL language. example : https://www.intel.com/content/www/us/en/support/programmable/support-resources/design-examples/quartus/tcl.html


regards,

Farabi


0 Kudos
host
New Contributor I
1,729 Views

Thanks for the link but this doesn't answer my question.

I couldn't find something about generating a .POF from a .SOF using the .PFG.

This is how my .PFG file looks like:

 

<pfg version="1">
<settings custom_db_dir="./" mode="AVSTX16"/>
<output_files>
<output_file name="my_project" directory="output_files/" type="POF">
<file_options/>
<flash_device_id>Flash_Device_1</flash_device_id>
<secondary_file type="MAP" name="my_project_pof">
<file_options/>
</secondary_file>
</output_file>
</output_files>
<bitstreams>
<bitstream id="Bitstream_1">
<path>output_files/my_project.sof</path>
</bitstream>
</bitstreams>
<flash_devices>
<flash_device type="CFI_1Gb" id="Flash_Device_1">
<partition reserved="1" fixed_s_addr="0" s_addr="0x000C0000" e_addr="0x000FFFFF" fixed_e_addr="0" id="OPTIONS" size="0"/>
<partition reserved="0" fixed_s_addr="0" s_addr="0x02C00000" e_addr="0x056FFFFF" fixed_e_addr="0" id="P1" size="0"/>
</flash_device>
</flash_devices>
<assignments>
<assignment page="0" partition_id="P1">
<bitstream_id>Bitstream_1</bitstream_id>
</assignment>
</assignments>
</pfg>

 

As you can see, it's generates the POF from the SOF.

How can I embed this script into my QSF so it will run automatically at the end of each compilation ?

0 Kudos
FvM
Honored Contributor II
1,714 Views

Scripting is of course the solution.

Call quartus_pfg with respective .pfg configuration in a tcl script, e.g. post_flow.tcl

exec quartus_pfg -c yourpfgfile.pfg

Specify post flow action in your project

set_global_assignment -name POST_FLOW_SCRIPT_FILE "quartus_sh:flow_post.tcl"
 

Reply