Test Ethernet Communication on Arria V GX FPGA Tutorial

Thank you to Sarthak Bansal, one of my REUs, for figuring all of this out and teaching me how to run the test!


If you have been trying to test Ethernet communication using Intel’s “Single-Port Triple-Speed Ethernet and On-Board PHY Chip Reference Design” and can’t seem to get it to work, here is your solution!

Ultimately, a line is missing from the code, “set PHY_STATUS_ADDRESS 0X284;” in the tse_marvel_phy.tcl file. We have added this one line onto line 50 and provided the updated code on github. Follow the steps below to run the Internal MAC Loopback Test!

Step 1: Open archived project in Quartus

Download the code for the tutorial from https://github.com/JuliaKay23/Internal-MAC-Loopback-Test-Arria-V-GX

Open Quartus (version 15.0 or newer) and click “Open Project”. This tutorial will be using version 19.1.

Open the top.qar project to un-archive the project.


Step 2: Connect the FPGA to power and the PC

Connect the FPGA to the PC using a USB-C to USB-A cable.

Connect the FPGA to power using the provide power cable.

Make sure to turn the FPGA on using the on-board power switch.


Step 3: Compile and upload the project on the FPGA

Run a “Full Compilation” by using the keyboard command “Ctrl+L”.

Once the compilation is done, upload the project by selecting “Tools” then “Programmer”. You should see this window pop-up.

Click “Auto-Detect” and select your device. The board for this tutorial is “5AGXFB3H4”.

If this dialog box pops up click “Yes”.

Click “Add File…” and select “top_time_limited.sof”. The Programmer should look like this.

Click the “5ABXFB3H4” square and delete it. Now, the Programmer should look like this.

Click “Start”. When the OpenCore Plus Status box pops up DO NOT click “Cancel”. Simply navigate back to the Quartus window.


Step 4: Open the System Console and run the Internal MAC Loopback Test

Use any text editor to open the config.tcl script and change “set LOOP_ENA” from 0 to 1.

In Quartus click “Tools”, highlight “System Debugging Tools”, and select “System Console”.

In the TCL Console box type cd sc_tcl to navigate to the folder that contains all of the tcl scripts.

Again in the TCL Console box type source config.tcl to run the config file.

Then type source eth_gen_start.tcl to run the Internal MAC Loopback Test.

cd sc_tcl
source config.tcl
source eth_gen_start.tcl

If successful you will see the following result:

Congratulations! You have successfully ran the Internal MAC Loopback Test.


Official documentation on the test can be found in an647.pdf attached below.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website at WordPress.com
Get started
%d bloggers like this: