AN 744: Scalable Triple Speed Ethernet Reference Design for Arria 10 Devices

ID 683785
Date 5/13/2016
Public

1.5. Using the Reference Design

Follow these steps to start using the reference design:

  1. Unzip the design files in the project directory.
    • altera_eth_tse_wo_1588.tar.gz—the design without the IEEE 1588v2 feature.
    • altera_eth_tse_w_1588.tar.gz—the design with the IEEE 1588v2 feature.
  2. Change to one of the following working directories:
    • altera_eth_tse_wo_1588 if you are using the design without the IEEE 1588v2 feature.
    • altera_eth_tse_w_1588 if you are using the design with the IEEE 1588v2 feature.
  3. Launch the Quartus II software and open the project file, altera_eth_top.qpf.
  4. The default number of channels for the designs is two. To change the number of channels, open the altera_eth_top.sv file and change the value of the NUM_CHANNELS parameter.
  5. Select Processing > Start Compilation to compile the design example.
    You may see a net delay violation at the end of the compilation, which you can ignore. The cause is the violation of a lower boundary in the altera_avalon_mm_clock_crossing bridge module.
  6. Configure the FPGA on the Arria 10 GX SI development board using the generated programming file, altera_eth_top.sof.
  7. When the FPGA is successfully configured, launch the Clock Control tool. The tool's executable—\examples\board_test_system\ClockControl.exe—is shipped with the Installation Kit for the Arria 10 GX SI development board.
  8. Set Y5 to 125 MHz.
    Figure 3. Clock Control
  9. Reset the system by pressing the user push button S1.
  10. In the Quartus II software, select Tool > System Debugging Tools > System Console.
  11. In the System Console command shell, change to the SystemConsole directory.
  12. Initialize the reference design command list by running this command, source main.tcl.
  13. You can now perform the tests listed below. In these tests, the Triple-Speed Ethernet IP core operates in SGMII mode.
    Option Description
    PHY internal serial loopback

    TEST_PHYSERIAL_LOOPBACK <channel_number> <speed_test> <burst_size>

    Example:

    TEST_PHYSERIAL_LOOPBACK 0 1G 1000

    SMA loopback

    TEST_SMA_LOOPBACK <channel_number> <speed_test> <burst_size>

    Example:

    TEST_SMA_LOOPBACK 0 1G 1000

    SPF+ loopback between 2 channels

    TEST_1588 <from_channel> <to_channel> <speed_test>

    Example:

    TEST_1588 0 0 1G