Forum Discussion

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

Problems detecting different FPGA boards in the same machine

Hi everyone,

we are using two different cards - namely a Nallatech 510T with SDK 17.1 and a Bittware A10PL4 with SDK 17.0.1 - in the same machine but we have a problem when we switch from one to another.

For example, when changing from the 510T to the A10PL4 we

  1. reset the environment variables

  2. set the variables for the Bittware A10PL4 board

  3. run `aocl install`

but things get messy. And, as you can see from the output below `aoc diagnose` doesn't work properly and that `clinfo` still detects the two Arria10 within the 510T but shows an SDK version 17.0.1 which is the one for the A10PL4...

Did any of you have a similar issue? If yes, how did you solve it?

Also, is there a way to get multiple devices at the same time without the need to switch from one to another?

Maybe playing with the board.xml and using different variable names for the environment?

#  aoc --list-boards                                                                                                                       
Board list:
  a10pl4_dd4gb_gx115
  a10pl4_dd4gb_gx115e3
#  aocl diagnose                                                                                                                          
aocl diagnose: Running diagnose from /root/intelFPGA_pro/17.0.1/hld/board/bittware/a10pl4/linux64/libexec
aocl diagnose: failed 32 times. First error below:
Vendor: BittWare Inc
Found no active device installed on the host machine.
Please make sure to: 
      1. Set the environment variable AOCL_BOARD_PACKAGE_ROOT to the correct board package.
      2. Install the driver from the selected board package.
      3. Properly install the device in the host machine.
      4. Configure the device with a supported OpenCL design.
      5. Reboot the machine if the PCI Express link failed.
DIAGNOSTIC_FAILED
#  aocl diagnose acla10pl40                                                                                                               
aocl diagnose: Running diagnose from /root/intelFPGA_pro/17.0.1/hld/board/bittware/a10pl4/linux64/libexec
Using platform: Intel(R) FPGA SDK for OpenCL(TM)
Failed clGetDeviceIDs.
Error code: -1
aocl diagnose: failed.
#  clinfo                                                                                                                                     
Number of platforms                               1                                                                                                                    
  Platform Name                                   Intel(R) FPGA SDK for OpenCL(TM)                                                                                     
  Platform Vendor                                 Intel(R) Corporation                                                                                                 
  Platform Version                                OpenCL 1.0 Intel(R) FPGA SDK for OpenCL(TM), Version 17.0.1                                                          
  Platform Profile                                EMBEDDED_PROFILE                                                                                                     
  Platform Extensions                             cl_khr_byte_addressable_store cles_khr_int64 cl_altera_live_object_tracking cl_altera_compiler_mode cl_khr_icd cl_khr
_3d_image_writes                                                                                                                                                       
  Platform Extensions function suffix             IntelFPGA                                                                                                            
                                                                                                                                                                       
  Platform Name                                   Intel(R) FPGA SDK for OpenCL(TM)                                                                                     
Number of devices                                 2                                                                                                                    
  Device Name                                     p510t_sch_ax115 : nalla_pcie (aclnalla_pcie0)                                                                        
  Device Vendor                                   Nallatech ltd                                                                                                        
  Device Vendor ID                                0x1172                                                                                                               
  Device Version                                  OpenCL 1.0 Intel(R) FPGA SDK for OpenCL(TM), Version 17.0.1                                                          
  Driver Version                                  17.0            
 

4 Replies

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

    I to hope that Intel upgrades Altera "command line" ideology from DOS from XX century and create simple GUI for show all installed Quartus versions (kit boards) and select current on fly, test anybody...

    System variables don`t must cover/hide our work in weaks !

    For Windows and for Linux this is very simple.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    I to hope that Intel upgrades Altera "command line" ideology from DOS from XX century and create simple GUI for show all installed Quartus versions (kit boards) and select current on fly, test anybody...

    System variables don`t must cover/hide our work in weaks !

    For Windows and for Linux this is very simple.

    --- Quote End ---

    Frankly, I would keep using the command line tool.

    But I agree with you that I would love to have a simple knob to switch from one board to another and from one SDK version to another.

    We currently have three different SDK version installed on our system because each board supports a different version. Kind of painful to maintain.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I ran into the same problem a while back when I had Terasic and a Bittware board on the same machine. The problem here is that every company forks Altera's reference PCI-E driver for themselves, and the driver will not work with another company's board. I don't think this problem will be ever addressed, unless Altera unifies all the drivers. Considering the fact the driver probably includes board-specific timing values, I am not sure if this is even possible to unify the drivers. Probably, your best bet is to write some bash script to perform all the necessary operations when you want to switch from one board to another. Or, you could put one of your boards in another machine (which is what I am doing right now).

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

    --- Quote Start ---

    Probably, your best bet is to write some bash script to perform all the necessary operations when you want to switch from one board to another. Or, you could put one of your boards in another machine (which is what I am doing right now).

    --- Quote End ---

    I do have a script that takes care of that, but it turns out the problem is that, at boot time, only one of the board get appropriately detected. If I disable the PCI slot from the BIOS, then I can see the other card. So, the only solution is to move one of the cards to another machine. How inconvenient!!!

    Thanks for sharing your experience HRZ!