Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

One option to create project ist using the "Module Selection Guide" in "_create_win_setup.cmd" on Windows OS and "_create_linux_setup.sh" on Linux OS:

  1. Execute "_create_win_setup.cmd" or "_create_linux_setup.sh"
  2. Select "Module Selection Guide" (press "0" and Enter)
  3. Follow instructions

For manuell configuration or addition command files for execution will be generated with "_create_win_setup.cmd" or "_create_linux_setup.sh". If you use our prepared batch files for project creation do the following steps:

  1. open "design_basic_settings.cmd/.sh" with text editor and set correct quartus path and board part number from <project_root_directory>/board_files/TEIxxxx_devices.csv
  2. run "quartus_create_project_batchmode.cmd/sh".

See  Reference Design: Getting Started for more details.

...

File or DirectoryTypeDescription
<design_name>work, base directoryBase directory with predefined batch files (*.cmd) to generate or open Quartus-Project
<design_name>/backup/generated(Optional) Directory for project backups
<design_name>/board_files/sourceLocal list of available board variants (<board_series>_devices.csv)
<design_name>/consolesourceFolder with different command files. Use _create_win_setup.cmd to generate files on top folder
<design_name>/log/generated(Temporary) Directory with quartus log files (used only with predefined commands from tcl scripts, otherwise this logs will be writen into the Quartus working directory)
<design_name>/prebuilt/prebuiltContains subfolders for different board variants
<design_name>/prebuilt/<device<board_listpart_shortname>prebuiltDirectory with prebuilt programming files (*.pof) for FPGA and different source files for hardware (*.sopcinfo) and software (*.elf) included in subfolders
<design_name>/prebuilt/<device<board_listpart_shortname>/programming_files/prebuiltDirectory with prebuilt programming files (*.pof)
<design_name>/prebuilt/<device<board_listpart_shortname>/hardware/prebuiltDirectory with prebuilt hardware sources (*.sopcinfo)
<design_name>/prebuilt/<device<board_listpart_shortname>/software/prebuiltDirectory with prebuilt software sources (*.elf)
<design_name>/quartus/generated(Temporary) Directory where Quartus project is created. Quartus project file is <design_name>.qpf
<design_name>/scripts/sourceTCL scripts to build a project
<design_name>/settings/source(Optional) Additional design settings: zip_ignore_list.csv, mod_list.csv, preset_qsys.qprs

<design_name>/software/

generated(Temporary) Directory with additional software
<design_name>/source_files/sourceDirectory with source files needed for creating project
<design_name>/source_files/quartus/sourceSource files for Quartus project
<design_name>/source_files/software/sourceSource files for additional software

...

Command files will be generated with "_create_win_setup.cmd" on Windows OS and with "_create_linux.setup.sh" on Linux OS.

Windows Command Files

File NameDescription
Design + Settings
_create_win_setup.cmdUse to create batch files or project with "Module Selection Guide".
design_basic_settings.cmd

Settings for the other *.cmd files. Following Settings settings are avaliable:

  • General Settings:
    • (optional) DO_NOT_CLOSE_SHELL: Shell do not closed after processing
  • Intel settings:
    • QUADIR: Set Intel installation path (Defaultdefault: C:/intelFPGA_lite).
    • QUARTUS_VERSION: Current Quartus Version (Exampledefault: 18.1). Don't change Quartus Version.
      • Intel Software will be searched in:
      • QUARTUS (optional for project creation and programming): %QUADIR%\/%QUARTUS_VERSION%\ /quartus\/

      • SDK (optional for software projects and programming): %QUADIR%\/%QUARTUS_VERSION%\ /nios2eds\/

    • Board Setting:
      • PARTNUMBER: Set Board part number of the project which should be created
        • Available Numbers: (you can use ID,PRODID,BOARDNAME or SHORTNAME from <design_name>/board_files/TEIxxxx_devices.csv list)
        • Used for project creation and programming
        • Example TE0001 TEI0001 Module :
            USE ID                 | USE PRODID                                   
            1. Use ID → PARTNUMBER=1
            |
            1. Use PRODID → PARTNUMBER=TEI0001-02-08-C8 

Hardware Design

quartus_create_project_batchmode.cmd

Create Project with settings from "design_basic_settings.cmd" and source folders. Build all Quartus hardware and software files if the sources are available.

If old quartus project exists, type "y" into the command line input to delete  "<design_name>/quartus/", and "<design_name>/software/" directory with related files before project will created again.

quartus_open_existing_project_guimode.cmdOpens an existing Project from "<design_name>/quartus/<design_name>.qpf"

Linux Command Files

File NameDescription
Design + Settings
_create_linux_setup.shUse to create bash files or project with "Module Selection Guide".
design_basic_settings.sh

Settings for the other *.sh files. Following settings are avaliable:

  • General Settings:
    • (optional) DO_NOT_CLOSE_SHELL: Shell do not closed after processing
  • Intel settings:
    • QUADIR: Set Intel installation path (default: ~/intelFPGA_lite).
    • QUARTUS_VERSION: Current Quartus Version (default: 18.1). Don't change Quartus Version.
      • Intel Software will be searched in:
      • QUARTUS (optional for project creation and programming): %QUADIR%/%QUARTUS_VERSION%/quartus/

      • SDK (optional for software projects and programming): %QUADIR%/%QUARTUS_VERSION%/nios2eds/

    • Board Setting:
      • PARTNUMBER: Set Board part number of the project which should be created
        • Available Numbers: (you can use ID,PRODID,BOARDNAME or SHORTNAME from <design_name>/board_files/TEIxxxx_devices.csv list)
        • Used for project creation and programming
        • Example TEI0001 Module :
          1. Use ID → PARTNUMBER=1
          2. Use PRODID → PARTNUMBER=TEI0001-02-08-C8 

Hardware Design

quartus_create_project_bashmode.sh

Create Project with settings from "design_basic_settings.sh" and source folders. Build all Quartus hardware and software files if the sources are available.

If old quartus project exists, type "y" into the command line input to delete  "<design_name>/quartus/", and "<design_name>/software/" directory with related files before project will created again.

quartus_open_existing_project_guimode.shOpens an existing Project from "<design_name>/quartus/<design_name>.qpf"

Design Environment: Usage

...

  • Install "Quartus Prime 18.1 Lite Edition" (additional recommended: Install "Quartus Prime Software v18.1 Update 1")
  • Automatically configuration of the reference-designs:
    • Run "_create_win_setup.cmd" or "_create_linux_setup.sh"
    • select "Module Selection Guide" and follow instructions.
        • "design_basic_settings.cmd/.sh" will be configured over this menu
  • Manual Configure the reference-design (Note: batch/bash files works only in the basefolder of the project, use "_create_win_setup.cmd"/"_create_linux_setup.sh" or copy manually):
    1. Open “design_basic_settings.cmd/.sh” with a text-editor:
        a. Set correct Quartus Environment:
            @set QUADIR=C:/intelFPGA_lite (example for Windows OS)
            @set QUARTUS_VERSION=18.1
            Program settings will be search in :
            %QUADIR%/%QUARTUS_VERSION%/quartus/
           %QUADIR%/%QUARTUS_VERSION%/nios2eds/
            Example directory: cC:/intelFPGA_lite/18.1/
            Attention: Scripts are supported only with predefined Quartus Version!
        b. Set the correct module part-number:      
            @set PARTNUMBER=x
            You find the available Module Numbers in <design_name>/board_files/<board_series>TEIxxxx_devices.csv
  • Create a project in one step:
    2. Run “quartus_create_project_batchmode.cmd/"quartus_create_project_bashmode.sh"
  • Programming FPGA or flash memory with prebuilt files:
    3. Connect your Hardware-Modul with PC via JTAG
    4. Open "Programmer (Quartus Prime 18.1)" from start menu or run "quartus_open_existing_project_guimode.cmd" and select Tools → Programmer
    5. Select "Add File..." and open correct file from <design_name>/prebuilt/<device<board_listpart_shortname>/programming_files/
    6. Press "Start" to programm FPGA or flash memory

...

List with commands to modify source files during project creation. (<design_name>/settings/mod_list.csv)

Qsys presets file:

Predefined settings for Qsys IP Components (<design_name>/settings/presets_qsys.qprs)

HDL-Design

HDL files can be saved in the subfolder "<design_name>/vhdl/". They will be loaded automatically on project creation. Available formats are *.vhd, *.v and *.sv.

 

...

Checklist / Troubleshoot

  1. Are you using exactly the same Quartus version? If not then the scripts will not work, no need to try.
  2. Ary Are you using Quartus on Windows PC? Quartus works in Linux also, but the scripts are tested on Windows only.
  3. Win OS only: Use short path name, OS allows only 256 characters in normal path.
  4. Linux OS only: Use bash as shell and add access rights to bash files. Check with "ls ls /bin/sh". It should be desplaydisplay: /bin/sh -> bash. Access rights can be changed with "chmod"
  5. Are space character on the project path? Somtimes TCL-Scripts can't handle this correctly. Remove spaces from project path.
  6. Did you have the newest reference design build version? Maybe it's only a bug from a older version.
  7. On project creation process old files will be deleted. Sometimes the access will be denied by os (synchronisiation problem) and the scripts canceled. Please try again. 
  8. If nothing helps, send a mail to Trenz Electronic Support (support[at]trenz-electronic.de) with subject line "[TE-Reference Designs] ",  the complete zip-name from your reference design.

...

DateRevisionQuartus VersionAuthorsDescription

Page info
modified-date
modified-date
dateFormatyyyy-MM-dd

Page info
current-version
current-version
prefixv.

18.1

Page info
modified-user
modified-user

  • add description for *.sh files (Linux OS)
2019-10-29v.418.1Thomas Dück
  • initial release

All

Page info
modified-users
modified-users


...