V-Series Transceiver PHY IP Core User Guide

ID 683171
Date 7/26/2022
Public
Document Table of Contents

13.4.4.1. 10G PCS Pattern Generators

The 10G PCS supports the PRBS, pseudo-random pattern, and square wave pattern generators. You enable the pattern generator or verifiers in the 10G PCS, by writing a 1 to the TX Test Enable and RX Test Enable bits. The following table lists the offsets and registers of the pattern generators and verifiers in the 10G PCS.

Note:
  • The 10G PRBS generator inverts its pattern before transmission. The 10G PRBS verifier inverts the received pattern before verification. You may need to invert the patterns if you connect to third-party PRBS pattern generators and checkers.
  • All undefined register bits are reserved.
Table 215.   Pattern Generator Registers

Offset

Bits

R/W

Name

Description

0x12D

[15:0]

R/W

Seed A for PRP

Bits [15:0] of seed A for the pseudo-random pattern.

0x12E

[15:0]

Bits [31:16] of seed A for the pseudo-random pattern.

0x12F

[15:0]

Bits [47:21] of seed A for the pseudo-random pattern.

0x130

[9:0]

Bits [57:48] of seed A for the pseudo-random pattern.

0x131

[15:0]

R/W

Seed B for PRP

Bits [15:0] of seed B for the pseudo-random pattern.

0x132

[15:0]

Bits [31:16] of seed B for the pseudo-random pattern.

0x133

[15:0]

Bits [47:32] of seed B for the pseudo-random pattern.

0x134

[9:0]

Bits [57:48] of seed B for the pseudo-random pattern.

0x135

[15:12]

R/W

Square Wave Pattern

Specifies the number of consecutive 1s and 0s. The following values are available: 1, 4, 5, 6, 8, and 10.

[10]

R/W

TX PRBS 7 Enable

Enables the PRBS-7 polynomial in the transmitter.

[8]

R/W

TX PRBS 23 Enable

Enables the PRBS-23 polynomial in the transmitter.

[6]

R/W

TX PRBS 9 Enable

Enables the PRBS-9 polynomial in the transmitter.

[4]

R/W

TX PRBS 31 Enable

Enables the PRBS-31 Polynomial in the transmitter.

[3]

R/W

TX Test Enable

Enables the pattern generator in the transmitter.

[1]

R/W

TX Test Pattern Select

Selects between the square wave or pseudo-random pattern generator. The following encodings are defined:

  • 1’b1: Square wave
  • 1’b0: Pseudo-random pattern or PRBS

[0]

R/W

Data Pattern Select
Selects the data pattern for the pseudo-random pattern. The following encodings are defined:
  • 1’b1: Two Local Faults. Two, 32-bit ordered sets are XORd with the pseudo-random pattern.
  • 1’b0: All 0’s

0x137

[2]

R/W

TX PRBS Clock Enable

Enables the transmitter PRBS clock.

[1]

R/W

TX Square Wave Clock Enable

Enables the square wave clock.

0x15E

[14]

R/W

RX PRBS 7 Enable

Enables the PRBS-7 polynomial in the receiver.

[13]

R/W

RX PRBS 23 Enable

Enables the PRBS-23 polynomial in the receiver.

[12]

R/W

RX PRBS 9 Enable

Enables the PRBS-9 polynomial in the receiver.

[11]

R/W

RX PRBS 31 Enable

Enables the PRBS-31 polynomial in the receiver.

[10]

R/W

RX Test Enable

Enables the PRBS pattern verifier in the receiver.

0x164

[10]

R/W

RX PRBS Clock Enable

Enables the receiver PRBS Clock.

0x169

[0]

R/W

RX Test Pattern Select

Selects between a square wave or pseudo-random pattern. The following encodings are defined:

  • 1’b1: Square wave
  • 1’b0: Pseudo-random pattern or PRBS

PRBS Pattern Generator

To enable the PRBS pattern generator, write 1'b1 to the RX PRBS Clock Enable and TX PRBS Clock Enable bits.

The following table shows the available PRBS patterns:
Table 216.  10G PCS PRBS Patterns
Pattern Polynomial
PRBS-31 X31+x28+1
PRBS-9 X9+x5+1
PRBS-23 X23+x18+1
PRBS-7 X7+x6+1

Pseudo-Random Pattern Generator

The pseudo-random pattern generator is specifically designed for the 10GBASE-R and 1588 protocols. To enable this pattern generator, write the following bits:

  • Write 1'b0 to the TX Test Pattern Select bit.

  • Write 1'b1 to the TX Test Enable bit.

In addition you have the following options:

  • You can toggle the Data Pattern Select bit switch between two data patterns.

  • You can change the value of Seed A and Seed B.

Unlike the PRBS pattern generator, the pseudo-random pattern generator does not require a configurable clock.

Square Wave Generator

To enable the square wave, write the following bits:

  • Write 1'b1 to the TX Test Enable bit.

  • Write 1'b1 to the Square Wave Clock Enable bit.
  • Write 1'b1 to the TX Test Select bit.

  • Write the Square Wave Pattern to 1, 4, 5, 6, 8 or 10 consecutive 1s or 0s.

The RX datapath does not include a verifier for the square wave and does drive a clock.