Forum Discussion
a10gx board installation on Linux system - errors
An a10gx board previously used on a Windows machine with a 16.1_pro package w/o any problems (installed, initialized (flash was programmed with 'acl0 boardtest.aocx', loaded and ran 'hello-world' and 'vector_addition') is now intended for use on a Linux machine with the 17.0 package, The variables on this Linux system are pretty standard:
QUARTUS_BASEDIR=/local/home/evgeniy/intelFPGA_pro/17.0/ QUARTUS_ROOTDIR=/local/home/evgeniy/intelFPGA_pro/17.0/quartus QSYS_ROOTDIR=/local/home/evgeniy/intelFPGA_pro/17.0/qsys/bin ALTERAOCLSDKROOT=/local/home/evgeniy/intelFPGA_pro/17.0/hld AOCL_BOARD_PACKAGE_ROOT=/local/home/evgeniy/intelFPGA_pro/17.0/hld/board/a10_ref PATH=$PATH:$QUARTUS_ROOTDIR:$QUARTUS_ROOTDIR/bin:$QSYS_ROOTDIR:$ALTERAOCLSDKROOT/bin:$AOCL_BOARD_PACKAGE_ROOT/linux64/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ALTERAOCLSDKROOT/host/linux64/lib:$AOCL_BOARD_PACKAGE_ROOT/linux64/lib The system is able to see the board with the 'aoc --list-boards' command. However, the installation with 'aocl install' fails. Please, see attached screenshot. 'aocl-diagnose' also fails. Any suggestions? Thank you!12 Replies
- Altera_Forum
Honored Contributor
Could it be because Altera is incompetent ?
My experience so far is the following: 1.) The A10 GX board does not fit inside my machine. It appears to not conform to PCIe standards, the cooling fans overlap the next PCI slot, the card is too high, and possibly also too long. (I had to completely deconstruct my workstation to get the card to fit into the PCIe slot. 2.) The installation instructions are completely unclear, and there appear to be multiple versions of the instructions for the same Dev kit. 3.) The installation instructions contain incorrect characters in Text fields meant to be copied. Clearly nobody has tested that copying and pasting of the commands works. 4.) The installation instructions don't actually work. I had to find a file named board_env.xml and copy it into the AOCL_BOARD_PACKAGE_ROOT directory. It should have been there already. 4.) Installation instructions fail: aocl flash command produces "No flash routine supplied." Who does the quality control for this stuff ? - Altera_Forum
Honored Contributor
The screenshot is too small to see anything in it but it seems you are getting some errors during the compilation of the kernel driver; my guess is that you are using an unsupported Linux or Linux kernel. Even though v17.0 now officially supports Ubuntu, I recommend sticking with CentOS v6.x or v7.x. The PCI-E driver will fail to compile on any other Linux.
- Altera_Forum
Honored Contributor
Thank you. Interesting... The 'hello_world' example compiles into the .aocx file with 17.0 and this particular version of Ubuntu. I checked out of curiosity.
- Altera_Forum
Honored Contributor
The compiler itself will probably work with any Linux distribution and any Linux kernel; the problem is the PCI-E driver which will only compile on supported OSes/OS kernels.
- Altera_Forum
Honored Contributor
Do I then need the 'Everything' CentOS version or the 'Minimal' will be sufficient?
- Altera_Forum
Honored Contributor
Also, will CentOS install as a virtual machine work?
- Altera_Forum
Honored Contributor
Minimal CentOS should work, but you obviously need basic packages that are needed for compilation (make, gcc, etc.)
Virtual Machine will certainly not work since you won't have access to the PCI-E ports from the VM. Note that you don't have to install CentOS on your development machine; you can just put the board on a CentOS machine but design, test and compile the kernels on your development machine and then transfer the aocx binary and the host code to the CentOS machine and compile the host code and run the kernel on the FPGA. P.S. Since v17.0 is supposed to officially support Ubuntu, you can always open a support ticket with Altera and complain as to why the PCI-E driver does not compile on a supported OS. - Altera_Forum
Honored Contributor
--- Quote Start --- Could it be because Altera is incompetent ? My experience so far is the following: 1.) The A10 GX board does not fit inside my machine. It appears to not conform to PCIe standards, the cooling fans overlap the next PCI slot, the card is too high, and possibly also too long. (I had to completely deconstruct my workstation to get the card to fit into the PCIe slot. 2.) The installation instructions are completely unclear, and there appear to be multiple versions of the instructions for the same Dev kit. 3.) The installation instructions contain incorrect characters in Text fields meant to be copied. Clearly nobody has tested that copying and pasting of the commands works. 4.) The installation instructions don't actually work. I had to find a file named board_env.xml and copy it into the AOCL_BOARD_PACKAGE_ROOT directory. It should have been there already. 5.) Installation instructions fail: aocl flash command produces "No flash routine supplied." Who does the quality control for this stuff ? --- Quote End --- I think that# 4 below will fix your aocl flash problem, as I had a similar problem at one point. I had problems with Quartus Pro 17 in the past, and moved to Quartus Pro 16.0 and successfully ran the basic boardtest.aocx (found below). I'm now trying Quartus Pro 17.0 again for the potential speed improvements, but I am not able to get things working, much the same as you. I'm experiencing a new problem now that I'd love help on if anyone has an idea. Running: Quartus Pro 17.0, Centos 7, Arria 10 GX Development Board.- I had similar problems, but got the PCIe slot to work as well.
- The install instructions to follow are in the following link. https://www.altera.com/documentation/tgy1490191698959.html
- Don't copy the commands from the text in the link. You are correct in that they contain characters that do not work. Type the commands as they look.
- When it says to uncompress the “ALTERAOCLSDKROOT/boards/a10_ref/bringup/a10_ref_initialization.tgz” to a temporary directory, make sure that the temporary directory is the “ALTERAOCLSDKROOT/boards/a10_ref/bringup” directory. Make a copy of the bringup directory first if you'd like.
- Altera_Forum
Honored Contributor
@c.peterson.intel, the instructions in the page you linked are completely correct and accurate, and if they are followed properly, everything will work correctly. You can extract the "a10_ref_initialization.tgz" file anywhere you want; you should just make sure to run the quartus_pgm commands from that folder. That is all.
The fact that your board is not detected is more likely than not because you did not correctly follow the procedure for programming the board via JTAG and rebooting your machine (one soft and one hard reboot). - Altera_Forum
Honored Contributor
I discovered - quite by accident - that *NOT* performing the soft reboot (Step 5) is essential.
I skipped that step, and performed the next step (Step 6), and suddenly everything started working. I have no idea why that would be, other than that the A10 board somehow loses all the configuration you send to it via the jtag command after the soft reboot and before "aocl flash acl0 boardtest.aocx" step.