Generating the Example Design
Use the following steps to generate the example design from the IP Catalog.
- Create a new project.
- Select the Triple Speed Ethernet MAC core from the IP Catalog and set the
following configurations.
- Turn on Use MAC with Transceiver option.
- Maximum Transmission Unit Frame Length:: 16018
- In the Deliverables tab, turn on the Example Design (Ti375N1156_devkit).
- Click Generate.
The example design is available in <project path>\ip\<ip-module-name>\Ti375N1156_devkit directory.
To run the example design in Auto Negotiation mode (default):
- Open the example design at <project path>\ip\<ip-module-name>\ efx_ethernet_1g_exp.xml
- Compile the design.
- Download the design to the Titanium Ti375 N1156 Development Kit.
- Based on the macros enabled, read the auto negotiation advertised abilities register for the lane in PHY mode.
- Then, override the following bits:
- Bit 12 = 1'b1 (Full duplex)
- Bit [11:10] = 2'b01 (100 Mbps)
- Bit 15 = 1 (Link up)
- Upon assertion of
PHY_INIT_DONE, write the correspondingsignal_okregister bit to1to enable the RX path. - The test passes when:
ln_data_cntandln_frame_cntincrements.ln_err_cntandln_bad_frame_cntremained0.
To run the example design in 2.5G Jumbo mode:
- Open the example design at <project path>\ip\<ip-module-name>\ efx_ethernet_1g_exp.xml
- Change the Speed option to 2.5Gbps for both Lane 0 and Lane 3 in the Interface Designer.
- Press the Generate Interface Output files.
- Only enable the JUMBO macro in Project Editor.
- Compile the design.
- Download the design to the Titanium Ti375 N1156 Development Kit.
- Upon assertion of
PHY_INIT_DONE, write the correspondingsignal_okregister bit to1to enable the RX path. - The test passes when:
ln_data_cntandln_frame_cntincrements.ln_err_cntandln_bad_frame_cntremained0.
| File Name | Description |
|---|---|
| efx_ethernet_1g_exp.sv | Example design of top-level wrapper. |
| <user_given_ip_name>.sv 1 | The generated Triple Speed Ethernet MAC core file is based on the user configuration in Efinity IP Manager. |
| Timing_Ti375.sdc | Constraint file for example design. |
| efx_mac1gbe_exp_apb_master.sv1 | APB master controller module. |
| efx_mac1gbe_exp_apb_decoder.v 1 | APB address decoder module. |
| efx_mac1gbe_exp_pat_gen.sv | Pattern generator module. |
| efx_mac1gbe_exp_checker.sv | Checker module to validate data received. |
| Efx_mac1gbe_exp_speed_ctrl.sv 1 | Auto negotiation sequence module. |
| debug_top.v | Verilog file for EFX debug module. |
| debug_profile.json | Virtual I/O Debugger core file. Load this file in the Efinity Virtual I/O Debugger to customize the example design. See Virtual I/O Debugger Settings. |
1 This module is
encrypted.