Visible to Intel only — GUID: dmq1634754093053
Ixiasoft
1. Quick Start Guide
2. Detailed Description for CPRI Multirate Design Example
3. Detailed Description for Ethernet Multirate Design Example
4. Detailed Description for Ethernet Multirate Design Example with Enabled Auto-Negotiation and Link Training
5. Detailed Description for PMA/FEC Direct PHY Multirate Design Example
6. Detailed Description for Ethernet to CPRI Design Example
7. F-Tile Dynamic Reconfiguration Design Example User Guide Archives
8. Document Revision History for the F-Tile Dynamic Reconfiguration Design Example User Guide
Visible to Intel only — GUID: dmq1634754093053
Ixiasoft
2.1.1. CPRI Multirate Design Example: Simulation Testbench
Figure 7. Simulation Testbench Block Diagram
The testbench program is controlling the testbench components via Avalon® memory-mapped interface access, status and control signals. The Avalon® memory-mapped interface arbiter is used to decode the Avalon® memory-mapped interface access from testbench program into multiple Avalon® memory-mapped interface slaves.
Simulation Flow for Design Example:
- Disable the Testbench packet round-trip measurement.
- Power up the CPRI PHY Multirate IP DUT based on profile 0 (24G RS-FEC).
- Initialize the testbench variables based on power-up profile. The variables are:
- cpri_speed: To indicate the speed of the current profile.
- enable_rsfec: To indicate whether RS-FEC is enabled or disabled for the current profile.
- current_dr_profile: To indicate the ID of the current profile.
- Perform dynamic reconfiguration.
- Check the testbench error flag and determine whether testbench passed or failed. This error flag is set to 1 if there is any error after dynamic reconfiguration traffic tests.
For customization, you can modify the DR_NUM and DR_SEQ localparam to configure test flow. Profile ID is passed into Dynamic Reconfiguration IP to configure the intended dynamic reconfiguration task.
- DR_NUM: Number of Dynamic Reconfiguration transition
- DR_SEQ: Dynamic Reconfiguration sequence
- DR_NUM = 2
- DR_SEQ = {DR_TO_4P9G, DR_TO_10G};
Default configuration for the design example:
localparam DR_TO_24G_RSFEC = 4'h0; localparam DR_TO_24G = 4'h1; localparam DR_TO_12G_RSFEC = 4'h2; localparam DR_TO_12G = 4'h3; localparam DR_TO_10G_RSFEC = 4'h4; localparam DR_TO_10G = 4'h5; localparam DR_TO_9P8G = 4'h6; localparam DR_TO_6G = 4'h7; localparam DR_TO_4P9G = 4'h8; localparam DR_TO_3G = 4'h9; localparam DR_TO_2P4G = 4'ha; localparam DR_TO_1G = 4'hb; localparam DR_NUM = 5; localparam [3:0] DR_SEQ [DR_NUM-1 : 0] = {DR_TO_24G_RSFEC, DR_TO_2P4G, DR_TO_4P9G, DR_TO_9P8G, DR_TO_10G};