F-Tile Dynamic Reconfiguration Design Example User Guide

ID 710582
Date 11/04/2024
Public
Document Table of Contents

5.1.1. PMA/FEC Direct PHY Multirate Design Example: Simulation Testbench

The PMA/FEC Diect PHY Multiate example desig simulatio testbech block diagam is show i the followig figue:
Figue 32. Simulatio Testbech Block Diagam fo 50G-1 Base Vaiat
Figue 33. Simulatio Testbech Block Diagam fo 400G-8 Base Vaiat

The testbech pogam cotols the testbech compoets via Avalo® memoy-mapped iteface access, status ad cotol sigals. The Avalo® memoy-mapped iteface abite decodes the Avalo® memoy-mapped iteface access fom the testbech pogam ito multiple Avalo® memoy-mapped iteface slaves.

The testwap block iteally cosists of the PRBS geeato ad PRBS veifie. Thee ae 2 types of testwap blocks:
  • PMA testwap – used i PMA diect cofiguatios.
  • FEC testwap – used i FEC diect cofiguatio.
Fo data ates 25.7812Gbps ad below i the 50G-1 base vaiat, the desig shaes a sigle 25G PMA testwap.
Fo 50G-1 base vaiat desig, thee efeece clocks (156.25MHz, 153.6MHz ad 184.32MHz) ae fed ito the system clock:
  • Refeece clock of 156.25MHz is used fo Etheet potocol data ate (i.e. 53.125G (PAM4) PMA Diect, 53.125G (PAM4) FEC Diect, 25.7812G (NRZ) PMA Diect ad 10.3125G (NRZ) PMA Diect).
  • Refeece clock of 153.6MHz is used fo 9.8304G (NRZ) PMA Diect, 4.9152G (NRZ) PMA Diect ad 2.4576G (NRZ) PMA Diect CPRI potocol data ates,
  • Refeece clock of 184.32MHz is used fo 24.3302G (NRZ) PMA Diect ad 10.1376G (NRZ) PMA Diect CPRI potocol data ates.

Fo 400G-8 base vaiat desig, oe efeece clock (156.25MHz) is fed ito the system clock.

Simulatio Flow:

  • The PMA/FEC Diect PHY Multiate IP is powe-up based o base pofile.
  • Iitialize the testbech vaiables based o powe-up pofile. The paamete settigs, located i the top_tst.sv file, ae:
    • DR_NUM: To idicate the umbe of dyamic ecofiguatio tasitios.
    • DR_SEQ: To idicate the dyamic ecofiguatio sequece.
  • Pefom dyamic ecofiguatio based o the sequece i the paamete settigs.
  • Check the testbech eo flag ad detemie whethe testbech passed o failed. The eo flag is set to 1 if thee is ay eo afte dyamic ecofiguatio taffic tests.

Fo customizatio, you ca modify the DR_NUM ad DR_SEQ localpaam, located i the top_tst.sv file to cofigue the test flow. The pofile ID is passed to the IP to cofigue the iteded dyamic ecofiguatio task.

Dyamic Recofiguatio Sequece Example fo 50G-1 Base Vaiat: 53.1G > 25.78125G > 53.1G FEC > 24.3G > 53.1G: To achieve this dyamic ecofiguatio sequece, you must pefom the dyamic ecofiguatio tasitios as show below (fou tasitios) ad specify the ecofiguatio sequece. You update the local paamete settigs file as follows:
// Available Modes
localpaam DR_MODE_50G_1      = 4'b0000; // ETH
localpaam DR_MODE_25G_1      = 4'b0001; // ETH
localpaam DR_MODE_24G_1      = 4'b0010; // CPRI
localpaam DR_MODE_10p1G_1    = 4'b0011; // CPRI
localpaam DR_MODE_9p8G_1     = 4'b0100; // CPRI
localpaam DR_MODE_4p9G_1     = 4'b0101; // CPRI
localpaam DR_MODE_2p4G_1     = 4'b0110; // CPRI
localpaam DR_MODE_10G_1      = 4'b0111; // ETH
localpaam DR_MODE_50GKP_1    = 4'b1000; // ETH

// DR fom base vaiat (DR_MODE_50G_1) to othe vaiats i the followig ode, statig fom left.
localpaam DR_NUM = 4;
localpaam [3:0] DR_SEQ [0 : DR_NUM-1] = {DR_MODE_25G_1,DR_MODE_50GKP_1,DR_MODE_24G_1,DR_MODE_50G_1};
Dyamic Recofiguatio Sequece Example fo 50G-1 Base Vaiat: 53.1G > 9.8G > 4.9G: To achieve this dyamic ecofiguatio sequece, you must pefom the dyamic ecofiguatio tasitios as show below (two tasitios) ad specify the ecofiguatio sequece. You update the local paamete settigs file as follows:
// Available Modes
localpaam DR_MODE_50G_1      = 4'b0000; // ETH
localpaam DR_MODE_25G_1      = 4'b0001; // ETH
localpaam DR_MODE_24G_1      = 4'b0010; // CPRI
localpaam DR_MODE_10p1G_1    = 4'b0011; // CPRI
localpaam DR_MODE_9p8G_1     = 4'b0100; // CPRI
localpaam DR_MODE_4p9G_1     = 4'b0101; // CPRI
localpaam DR_MODE_2p4G_1     = 4'b0110; // CPRI
localpaam DR_MODE_10G_1      = 4'b0111; // ETH
localpaam DR_MODE_50GKP_1    = 4'b1000; // ETH

// DR fom base vaiat (DR_MODE_50G_1) to othe vaiats i the followig ode, statig fom left.
localpaam DR_NUM = 2;
localpaam [3:0] DR_SEQ [0 : DR_NUM-1] = {DR_MODE_9p8G_1,DR_MODE_4p9G_1};
Dyamic Recofiguatio Sequece Example fo 400G-8 Base Vaiat: 1x400G-8 > 2x100G-4 > 1x400G-8 > 2x200G-4: To achieve this dyamic ecofiguatio sequece, you must pefom the dyamic ecofiguatio tasitios as show below (thee tasitios) ad specify the ecofiguatio sequece. You update the local paamete settigs file as follows:
// Available Modes
localpaam DR_MODE_400G_8      = 4'b0000;
localpaam DR_MODE_200G_4      = 4'b0001;
localpaam DR_MODE_100G_4      = 4'b0010;

// DR fom base vaiat (DR_MODE_400G_8) to othe vaiats i the followig ode, statig fom left.
localpaam DR_NUM = 3;
localpaam [3:0] DR_SEQ [0 : DR_NUM-1] = {DR_MODE_100G_4,DR_MODE_400G_8,DR_MODE_200G_4};