Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
12 years ago

qsf file

Hi,

i generate the qsf file from c# to text file and then i load it to quartos 13.0.

1. i need to know if the location of the string commands must be at fixed places in the file or it could be any were in the file ?

is there a legality at the location of those commands ?

F.E :

At file that i compiled i see at the qsf file first of all the "set_global_assignment" commands , then "set_location assingment" commands and then "set_instance_assignment" commands (File Attached at txt format)

it should be at this order ?

2.Are there global commands or fixed strings at the qsf file that doesn't change no matter what the designer choose ?

Thanks for help. :)

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Rather than generating a QSF directly, I recommend you generate a Tcl script, which will then create the QSF for you. A Tcl script has a lot of advantages, including that any syntax errors will be more easily discovered in the command line. You could also have a static Tcl script that creates the project and then sources the C# generated assignments.

    See http://www.altera.com/support/software/scripting/sof-qts-scripting.html

    As for your specific question, the QSF does not have any sections, so assignments can be put anywhere, except from *_FILE assignments which need to be ordered within themselves in the order you want the tool to read them
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi,

    QSF Files mean "Quartus Setting File" and they are TCL (Tool Command Language) scripts :

    usualy, All lines begin with a command follow by arguments BUT you may have substitutions of command (enclosed by square brackets) and variable (character '$' and name of variable).

    A line that begins by a '#' is a comment BUT be careful about brackets even in comments (common newbie error).

    QSF are written in very simple TCL (no nested command, no procedures...)

    TCL is case sensitive !

    1. I don't think there is an order but it could be. See Quartus scripting in www.altera.com

    2. there are a few commands that are ignored (backward compatibility, or simply useless commands) (Maybe I misunderstood your question)

    3. there is an order on the files read by Quartus software. See Quartus scripting in www.altera.com or in help (quite ugly to search)
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    i got your recommendation about Tcl script . i looked at the link that you sent me but i didnt find out how i can i write script that generate QSF file .

    can i run the TCl script via command prompt ? if yes , what is the command that operate TCl script ?

    i need to write a script that create the QSF file according to the user requirements (pin assignments , current strength , I/O standard , slew rate , etc...)

    and i need to send those requirements to the script from the C# GUI .
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    can i run the TCl script via command prompt ? if yes , what is the command that operate TCl script ?

    i need to write a script that create the QSF file according to the user requirements (pin assignments , current strength , I/O standard , slew rate , etc...)

    and i need to send those requirements to the script from the C# GUI .

    --- Quote End ---

    This tutorial uses Tcl scripts for synthesis and simulation;

    http://www.alterawiki.com/wiki/using_the_usb-blaster_as_an_sopc/qsys_avalon-mm_master_tutorial

    as do the other example zip files downloadable from here

    http://www.ovro.caltech.edu/~dwh/correlator/cobra_docs.html

    Take a look at them.

    The Tcl scripts create a Quartus project, which includes the .qpf file and the .qsf file. Using Tcl allows you to consider these files as "generated" and as such you can ignore them (much like a C programmer does not care about .o files, they're just an intermediate file).

    If you want a GUI to represent your Tcl settings, then you'll just have to write your C# to understand the Tcl file.

    Cheers,

    Dave