Forum Discussion

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

Flash programmer problem

I try to work with the flash programmer on my custom board

At the SOPC builder (board description) I describe my board, only the FLASH tab (I didn’t enter netlist), when I open the flash programmer it give me the error "the target board description was not found check the target board selection in SOPC builder for this system".

Do any one know what is my problem ??

More details:

The Jtag chain work fine (the flash programmer "target connection" detect it).

I work with SOPC builder 6.0 and Qurtus II 6.0

I work with cyclone II.

Thanks

Gil

7 Replies

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

    For each Flash component in sopc builder (EPCS or CFI) you have to specify which of the flash chips from the board description it is. Open the flash component in sopc and select a chip.

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

    Thank you for your response, but I try it and it is not the problem.

    The compilation went well. But when the flash programmer read the ptf file it looks like it have some problem with the board description.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    This is a workig generic (without netlist ...) board description (class.ptf) for a Cyclone II chip with both the EPCS and a CFI flash present. Compare it with yours.

    CLASS ecs8_board
    {
       BOARD_DEFAULTS 
       {
          class = "ecs8_board";
          class_version = "1.0";
          device_family = "CYCLONEII";
          altera_avalon_epcs_flash_controller 
          {
             reference_designators = "flash_serial";
          }
          altera_avalon_cfi_flash 
          {
             reference_designators = "flash_parallel";
          }
          reference_designators = "flash_parallel,flash_serial";
          initial_system_file = "";
          CONFIGURATION hardware_image
          {
             reference_designator = "flash_serial";
             offset = "0x00000000";
             menu_position = "0";
          }
       }
       USER_INTERFACE 
       {
          USER_LABELS 
          {
             name = "ecs8_board";
          }
          WIZARD_UI bind
          {
             PINASSIGNER 
             {
                java = "com.altera.pinassigner.ui.SopcPinAssigner";
             }
          }
       }
       SOPC_Builder_Version = "6.00";
       NETLIST 
       {
          NETLIST_INFO 
          {
             IGNORE 
             {
                net = "(VCC|GND).*";
                device = "C+";
             }
             PIN_CONNECTION_TYPE Rnnn
             {
                ids = "R+";
                CONNECT 
                {
                   pin1 = "1";
                   pin2 = "2";
                }
             }
          }
       }
       ASSOCIATED_FILES 
       {
          Bind_Program = "bind";
       }
       type = "board";
    }
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    inside the .ptf file

    inside MODULE your_epcs_controller_name {}

    check for the line (as it should look in your example):

     flash_reference_designator = "U1";

    but now I have no further ideas

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

    I checked it and unfortunately it is "U1" so it is not that ...

    thank you anyway

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

    You may try to Flash your board using programming scripts directly from the cygwin shell.

    The script can be found in (since the script was probably not yet created for your project try one from the demo projects for the development board):

    ...\quartus_project\software\software_project\Debug

    Modify the script and run it, if you do not know what command parameters mean do

     nios2-flash-programmer --help

    You may omit checking of sysid or place --accept-bad-sysid in the scripts to avoid errors...

    But this might not solve the problem, try starting a new project from scratch:

    - start a new Quartus project with the same pinout definitions (they can be found in the .qsf file)

    - start a new sopc project

    - create a new board description from the sopc menu (the epcs flash can be called anything, U1 does not seem to appropriate)

    - select the board description

    - select only some essential components (cpu, memory, epcs, a timer)

    - generate the sopc project

    - in quartus connect SOPC IO signals with chip pins

    ...

    Be sure to use a slightly different name for the quartus project, sopc project and board description.

    Learn to compare source files, this is a list of source files for a simple hardware project, all other files are generated or copied from libraries.

    my_project.qpf (nothing useful, only project definition)

    my_project.qsf (specifies the chip, pinout, ... can usually be safely modified in a text editor)

    my_project.bdf or my_project.vhd (top level project source file)

    my_sopc_project.ptf (description of the SOPC builder component)

    /my_project_board/class.ptf (board description, did you check this?)

    IzI