Interlaken IP Core (2nd Generation) Design Example User Guide

Similar documents
Intel Stratix 10 Low Latency 40G Ethernet Design Example User Guide

Low Latency 100G Ethernet Design Example User Guide

Low Latency 100G Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

Low Latency 40G Ethernet Example Design User Guide

25G Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

H-tile Hard IP for Ethernet Intel Stratix 10 FPGA IP Design Example User Guide

Intel Stratix 10 H-tile Hard IP for Ethernet Design Example User Guide

SerialLite III Streaming IP Core Design Example User Guide for Intel Stratix 10 Devices

SerialLite III Streaming IP Core Design Example User Guide for Intel Arria 10 Devices

High Bandwidth Memory (HBM2) Interface Intel FPGA IP Design Example User Guide

AN 836: RapidIO II Reference Design for Avalon-ST Pass-Through Interface

Interlaken (2nd Generation) Intel FPGA IP User Guide

Interlaken IP Core (2nd Generation) User Guide

AN 830: Intel FPGA Triple-Speed Ethernet and On-Board PHY Chip Reference Design

AN 830: Intel FPGA Triple-Speed Ethernet and On-Board PHY Chip Reference Design

Intel Arria 10 Native Floating- Point DSP Intel FPGA IP User Guide

Intel Stratix 10 H-Tile PCIe Link Hardware Validation

Interlaken (2nd Generation) Intel Stratix 10 FPGA IP User Guide

Intel Arria 10 and Intel Cyclone 10 Avalon-ST Hard IP for PCIe* Design Example User Guide

100G Interlaken MegaCore Function User Guide

Intel Arria 10 and Intel Cyclone 10 Avalon -MM Interface for PCIe* Design Example User Guide

100G Interlaken MegaCore Function User Guide

Intel Cyclone 10 External Memory Interfaces IP Design Example User Guide

AN 834: Developing for the Intel HLS Compiler with an IDE

Intel FPGA Temperature Sensor IP Core User Guide

External Memory Interfaces Intel Arria 10 FPGA IP Design Example User Guide

Customizable Flash Programmer User Guide

50G Interlaken MegaCore Function User Guide

AN 839: Design Block Reuse Tutorial

SDI II Intel FPGA IP User Guide

Intel Quartus Prime Pro Edition Software and Device Support Release Notes

Intel Acceleration Stack for Intel Xeon CPU with FPGAs 1.0 Errata

100G Interlaken MegaCore Function User Guide

Intel MAX 10 User Flash Memory User Guide

Intel Stratix 10 External Memory Interfaces IP Design Example User Guide

Intel Stratix 10 Logic Array Blocks and Adaptive Logic Modules User Guide

Dynamic Reconfiguration of PMA Controls in Stratix V Devices

Altera ASMI Parallel II IP Core User Guide

Generic Serial Flash Interface Intel FPGA IP Core User Guide

Intel FPGA Voltage Sensor IP Core User Guide

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board

Intel Quartus Prime Software Download and Installation Quick Start Guide

AN 464: DFT/IDFT Reference Design

Fixed-Point IP Cores (ALTERA_FIXED- POINT_FUNCTIONS) User Guide

MAX 10 User Flash Memory User Guide

ASMI Parallel II Intel FPGA IP Core User Guide

Intel Quartus Prime Pro Edition

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board

AN 756: Altera GPIO to Altera PHYLite Design Implementation Guidelines

Intel Stratix 10 Low Latency 100- Gbps Ethernet IP Core User Guide

Intel Quartus Prime Pro Edition Software and Device Support Release Notes

Intel Quartus Prime Pro Edition Software and Device Support Release Notes

Remote Update Intel FPGA IP User Guide

Intel FPGA Low Latency Ethernet 10G MAC Design Example User Guide for Intel Stratix 10 Devices

9. Functional Description Example Designs

Timing Analyzer Quick-Start Tutorial

AN 797: Partially Reconfiguring a Design on Intel Arria 10 GX FPGA Development Board

2.5G Reed-Solomon II MegaCore Function Reference Design

Low Latency 100G Ethernet Intel Stratix 10 FPGA IP Core User Guide

Low Latency 40- and 100-Gbps Ethernet MAC and PHY MegaCore Function User Guide

LDPC IP Core User Guide

PCI Express*: Migrating to Intel Stratix 10 Devices for the Avalon Streaming Interface

Mailbox Client Intel Stratix 10 FPGA IP Core User Guide

Intel Cyclone 10 GX CvP Initialization over PCI Express User Guide

3. ALTGX_RECONFIG IP Core User Guide for Stratix IV Devices

Intel Xeon with FPGA IP Asynchronous Core Cache Interface (CCI-P) Shim

Intel FPGA Fault Injection IP Core User Guide

AN 803: Implementing Analog-to- Digital Converter Multi-Link Designs with Intel Arria 10 JESD204B RX IP Core

PCI Express Multi-Channel DMA Interface

Using the Transceiver Reconfiguration Controller for Dynamic Reconfiguration in Arria V and Cyclone V Devices

AN 826: Hierarchical Partial Reconfiguration Tutorial for Stratix 10 GX FPGA Development Board

JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide

Intel Stratix 10 Analog to Digital Converter User Guide

Arria 10 Transceiver PHY User Guide

Low Latency 40- and 100-Gbps Ethernet MAC and PHY MegaCore Function User Guide

AN 818: Static Update Partial Reconfiguration Tutorial

Quick Start Guide for Intel FPGA Development Tools on the Nimbix Cloud

AN 818: Static Update Partial Reconfiguration Tutorial

AN 779: Intel FPGA JESD204B IP Core and ADI AD9691 Hardware Checkout Report

Intel Stratix 10 Configuration via Protocol (CvP) Implementation User Guide

Stratix 10 Serial Flash Mailbox Client Intel FPGA IP Core User Guide

DDR and DDR2 SDRAM Controller Compiler User Guide

Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Quick Start User Guide

Partial Reconfiguration Solutions IP User Guide

Simulating the ASMI Block in Your Design

Implementing 9.8G CPRI in Arria V GT and ST FPGAs

AN 370: Using the Intel FPGA Serial Flash Loader with the Intel Quartus Prime Software

Intel Acceleration Stack for Intel Xeon CPU with FPGAs Version 1.2 Release Notes

25G Ethernet Intel Stratix 10 FPGA IP User Guide

Altera I/O Phase-Locked Loop (Altera IOPLL) IP Core User Guide

25G Ethernet Intel Stratix 10 FPGA IP User Guide

Ethernet Link Inspector User Guide v3.0 for Intel Stratix 10 Devices

Arria 10 JESD204B IP Core Design Example User Guide

Intel Quartus Prime Standard Edition Software and Device Support Release Notes

10. Introduction to UniPHY IP

Intel Quartus Prime Standard Edition Software and Device Support Release Notes

Ethernet Link Inspector User Guide v4.1 for Intel Stratix 10 Devices

Intel Stratix 10 MX HBM2 IP User Guide

Mailbox Client Intel Stratix 10 FPGA IP Core User Guide

Intel Cyclone 10 GX Transceiver PHY User Guide

Transcription:

Interlaken IP Core (2nd Generation) Design Example User Guide UG-20051 2017.09.19 Subscribe Send Feedback

Contents Contents 1 Quick Start Guide... 3 1.1 Directory Structure... 4 1.2 Design Components... 5 1.3 Generating the Design...5 1.4 Simulating the Design... 6 1.5 Compiling and Testing the Design... 7 2 Design Example Description...8 2.1 Features...8 2.2 Hardware and Software Requirements... 8 2.3 Functional Description... 8 2.4 Design Example Behavior... 9 2.5 Interface Signals...10 2.6 Register Map... 10 A Document Revision History... 12 2

1 Quick Start Guide 1 Quick Start Guide The Interlaken IP core (2 nd Generation) feature a simulating testbench and a hardware example design that supports compilation and hardware testing, to help you understand usage. When you generate the example design, the parameter editor automatically creates the files necessary to simulate, compile, and test the design in hardware. You can download the compiled hardware design and run it on the Intel Stratix 10 Transceiver Signal Integrity Development Kit. The testbench and example design support numerous variants (parameter combinations) of the Interlaken IP core. However, they do not cover all possible parameterizations of the Interlaken IP core (2 nd Generation). In addition, for most IP core variations, Intel provides a compilation-only example project that you can use to quickly estimate IP core area and timing. Figure 1. Development Steps Compilation (Simulator) Functional Simulation Design Example Generation Compilation (Quartus Prime) Hardware Testing Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. *Other names and brands may be claimed as the property of others. ISO 9001:2008 Registered

1 Quick Start Guide 1.1 Directory Structure Figure 2. Directory Structure of the Generated Example Design <uflex_ilk_0_example_design> example_design_s10 ilk_uflex ilk_uflex.ip hwtest sysconsole.testbench.tcl quartus example_design.qpf example_design.qsf example_design.sdc rtl example_design.sv ilk_ch_num_checker.sv ilk_eop_checker.sv testbench vcstest.sh vlog_pro.do <design component> sim synth ilk_uflex.cmp ilk_error_checker.sv ilk_uflex.csv ilk_oob_flow_rx_dcfifo.v ilk_oob_flow_rx.v ilk_oob_flow_tx.v ilk_pkt_checker.sv ilk_pkt_gen.sv ilk_pld_checker ilk_reset_delay.v ilk_sop_checker.sv ilk_uflex.qgsimc ilk_uflex.html ilk_uflex.qip ilk_uflex.sip ilk_uflex.spd ilk_uflex.xml ilk_uflex_generation.rpt ilk_uflex.qgsynthc ilk_status_sync.v ilk_top.v ilk_traffic_buf.sv ilk_traffic_buf_w4.sv ilk_traffic_buf_w8.sv ilk_traffic_buf_w16.sv one_shot.v test_agent.sv test_dut.sv test_env.sv test_host.sv test_infra.sv top_tb.sv The hardware configuration, simulation, and test files are located in <example_design_install_dir>/uflex_ilk_0_example_design. 4

1 Quick Start Guide 1.2 Design Components Figure 3. Design Example Block Diagram JTAG Interface Packet Generator Packet Checker Interlaken IP Core (2nd Generation) TX RX System Console 1.3 Generating the Design Figure 4. Procedure Start Parameter Editor Specify IP Variation and Select Device Select Design Parameters Specify Example Design Initiate Design Generation Follow these steps to generate the Intel Stratix 10 hardware example design and testbench: 1. In the IP Catalog (Tools > IP Catalog), select the Intel Stratix 10 target device family. 2. In the IP Catalog, locate and double-click Interlaken IP core (2nd Generation). The New IP Variation window appears. 3. Specify a top-level name for your custom IP variation. The parameter editor saves the IP variation settings in a file named <your_ip>.ip. 4. You must select a specific Intel Stratix 10 device in the Device field, or keep the default Intel Quartus Prime software device selection. 5. Click OK. The parameter editor appears. 5

1 Quick Start Guide Figure 5. Parameter Editor 6. On the IP tab, specify the parameters for your IP core variation. 7. On the Example Design tab, select the Simulation option to generate the testbench, and select the Synthesis option to generate the hardware example design. Note: At least one of the Simulation and Synthesis check boxes from Example Design Files must be selected to allow generation of Example Design Files. 8. For Generated HDL Format, only Verilog is available. 9. For Target Development Kit select the Intel Stratix 10 Transceiver Signal Integrity Development Kit. If you select a development kit, then the target device (selected in step 4) for Example Design is changed to match the device on target board. 10. Click the Generate Example Design button. 1.4 Simulating the Design Figure 6. Procedure Change to Testbench Directory Run <Simulation Script> Analyze Results Follow these steps to simulate the testbench: 1. Change to the testbench simulation directory <design_example_dir>/ example_design_s10/testbench. 2. Run the simulation script for the supported simulator of your choice. The script compiles and runs the testbench in the simulator. Your script should check that the SOP and EOP counts match after simulation is complete. Refer to the table "Steps to Run Simulation". 3. Analyze the results. 6

1 Quick Start Guide Table 1. Steps to Run Simulation Simulator ModelSim VCS In the command line, type -do vlog_pro.do In the command line, type sh vcstest.sh Instructions A successful simulation ends with the following message: Test PASSED 1.5 Compiling and Testing the Design Figure 7. Procedure Compile Design in Quartus Prime Software Set up Hardware Program Device Test Design in Hardware To compile and run a demonstration test on the hardware example design, follow these steps: 1. Ensure hardware example design generation is complete. 2. Open the Intel Quartus Prime project <user-specified location>/ example_design_s10/quartus/example_design.qpf, where <user-specified location> is the directory location you specified when you generated the testbench and hardware example design. 3. On the Processing menu, click Start Compilation. 4. After successful compilation, a.sof file will be generated in your specified directory. Follow these steps to program the hardware example design on the Intel Stratix 10: a. On the Tools menu, click Programmer. b. In the Programmer, click Hardware Setup. c. Select a programming device. d. Select and add the Intel Stratix 10 Transceiver Signal Integrity Development Kit to which your Intel Quartus Prime session can connect. e. Ensure that Mode is set to JTAG. f. Select the Intel Stratix 10 device and click Add Device. The Programmer displays a block diagram of the connections between the devices on your board. g. In the row with your.sof, check the box for the.sof. h. Check the box in the Program/Configure column. i. Click Start. 5. After the hardware example design is configured on the Intel Stratix 10 device, in the Intel Quartus Prime software, on the Tools menu, click System Debugging Tools > System Console. 6. In the Tcl Console pane, type sysconsole_testbench.tcl. 7. Type run_example_design. 7

2 Design Example Description 2 Design Example Description 2.1 Features The example design demonstrate the functionalities of the Interlaken IP core. You can generate the design from the Example Design tab of the Interlaken IP core graphical user interface (GUI) in the IP parameter editor. Internal TX to RX serial loopback mode. Automatically generates fixed size packets. Basic packet checking capabilities. You can use system console to reset the design for re-testing purpose. 2.2 Hardware and Software Requirements To test the example design, use the following hardware and software: Intel Quartus Prime Pro Edition software System Console Modelsim-SE or VCS simulator Intel Stratix 10 Transceiver Signal Integrity Development Kit for hardware testing 2.3 Functional Description The hardware example design connects system and PLL reference clocks and required design components. After you program the device on the Intel Stratix 10 transceiver signal integrity development board, the example design configures the IP core in internal loopback mode and generates packets on the IP core TX user data transfer interface. The IP core sends these packets on the internal loopback path through the transceiver. After the IP core receiver receives the packets on the loopback path, it processes the Interlaken packets and transmits them on the RX user data transfer interface. The example design checks that the packets it receives on the IP core RX user data transfer interface are consistent with the packets sent in. Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. *Other names and brands may be claimed as the property of others. ISO 9001:2008 Registered

2 Design Example Description Figure 8. Interlaken IP Core Design Example Block Diagram Stratix 10 Transceiver Signal Integrity Development Board Stratix 10 Device Hardware Example Design tx_serial_clk ATX PLL pll_ref_clk PLL Reference Clock Generator Packet Generator TX Lanes tx_pin Control and Status Register Control Packet Checker Interlaken IP Core (2nd Generation) Transceiver rx_pin RX Lanes System PLL mm_clk usr_clk clk50 The hardware example design includes external PLLs. You can examine the clear text files to view sample code that implements one possible method to connect external PLLs to the Interlaken IP core. The hardware example design packs six Interlaken lanes in a transceiver block, and connects all of the channels in the same transceiver block to a single ATX PLL. IP core connects the ATX PLL to the tx_pll_locked and tx_pll_powerdown ports. This simple connection model is only one of many options available to you for configuring and connecting the external PLLs in your Interlaken design. 2.4 Design Example Behavior Immediately following configuration on the Intel Stratix 10 device, when you type run_example_design in system console, the Interlaken IP core hardware example design performs the following actions: 1. Resets the Interlaken IP core. 2. Configures the Interlaken IP core in internal loopback mode. 3. Sends a sequence of 100 256-byte Interlaken packets with predefined data in the payload to the TX user data transfer interface of the IP core. 9

2 Design Example Description Note: For single segment Interleaved mode, the hardware example design sends 128-byte bursts. 4. Checks the received packets and reports the status. The packet checker included in the hardware example design provides the following basic packet checking capabilities: Checks that the transmitted packet sequence is not violated. Checks that the received data matches expected values. 2.5 Interface Signals Table 2. Design Example Interface Signals Port Name Direction Width (Bits) Description clk50 Input 1 pll_ref_clk Input 1 System clock input. Clock frequency must be 50 MHz. Transceiver reference clock. Drives the RX CDR PLL. rx_pin Input Number of lanes Receiver SERDES data pin. tx_pin Output Number of lanes Transmit SERDES data pin. usr_pb_reset_n Input 1 System reset. 2.6 Register Map Table 3. Design Example Register Map Offset Name Access Description 8'h00 8'h01 8'h02 System PLL reset RO Reserved Reserved Following bits indicates system PLL reset request and enable value: Bit [0] - sys_pll_rst_req Bit [1] - sys_pll_rst_en 8'h03 RX lane aligned RO Indicates the RX lane alignment. 8'h04 WORD locked RO [NUM_LANES 1:0] Word (block) boundaries identification. 8'h05 Sync locked RO [NUM_LANES 1:0] Metaframe synchronization. 8'h06-8'h09 CRC32 error count RO Indicates the CRC32 error count. 8'h0A CRC24 error count RO Indicates the CRC24 error count. 8'h0B Overflow/Underflow signal RO Following bits indicate: Bit [3] - TX underflow signal Bit [2] - TX overflow signal Bit [1] - RX overflow signal 8'h0C SOP count RO Indicates the number of SOP. 8'h0D EOP count RO Indicates the number of EOP 8'h0E Error count RO Indicates the number of following errors: continued... 10

2 Design Example Description Offset Name Access Description Loss of lane alignment Illegal control word Illegal framing pattern Missing SOP or EOP indicator 8'h0F send_data_mm_clk RW Write 1 to enable the generator signal. 8'h10 Reserved 8'h11 System PLL lock RO PLL lock indication. Note: Design Example register address starts with 0x20** while the Interlaken IP core register address starts with 0x10**. Access code: RO Read Only, and RW Read/Write. System console reads the example design registers and reports the test status on the screen. 11

A Document Revision History A Document Revision History Table 4. Revision History Date 2017.09.19 Changes Made following changes to Simulating the Design section: Corrected simulation directory location. Updated command to simulate the testbench in VCS simulator. Modified testbench display message. 2016.10.31 Initial release Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. *Other names and brands may be claimed as the property of others. ISO 9001:2008 Registered