The CPRI specification allows for the transport of vendor-specific data in certain sub channels of the control-word stream. The vendor-specific subchannels begin at subchannel 3 and end at the subchannel before the Ethernet data begins. If an Ethernet channel is not in use, the subchannels up to 63 can be used for vendor-specific data. In normal CPRI operation subchannel 3 and subchannels 8 to 15 are reserved. Subchannels 4 to 7 are reserved for the transport of control AxC information.
Port | Direction | Clock Domain | Description |
---|---|---|---|
vendor_tx_data | In | System Clock | Current vendor-specific control word for transmission. This port is 128-bits wide when 24,330.24, 12,165.12, 10,137.6, 9,830.4 or 8,110.08 Mb/s operation is supported, 80-bits wide when 6,144.0, 64-bits wide when 4,915.2 Mb/s operation is supported and 40-bits wide otherwise. |
vendor_tx_xs[1:0] | Out | System Clock | Current Control Word Index (Xs) for transmission |
vendor_tx_ns[5:0] | Out | System Clock | Current Subchannel Index (Ns) for transmission |
vendor_rx_data | Out | System Clock | Current received vendor-specific control word. This port is 128-bits wide when 24,330.24, 12,165.12, 10,137.6, 9,830.4 or 8,110.08 Mb/s operation is supported, 80-bits wide when 6,144.0, 64-bits wide when 4,915.2 Mb/s operation is supported and 40-bits wide otherwise. |
vendor_rx_xs[1:0] | Out | System Clock | Control word index (Xs) for received vendor-specific control word |
vendor_rx_ns[5:0] | Out | System Clock | Subchannel index (Ns) for received vendor-specific control word |
vs_negotiation_complete | In | System Clock | Vendor-specific negotiation complete. This port should be held Low until vendor-specific negotiation is complete. This causes the start-up state machine in the CPRI core to pause in state E, “Interface and vendor-specific negotiation” until vs_negotiation_complete is asserted High. If no vendor-specific negotiation is required then this port should be tied High. |
The interface for the vendor-specific data is
presented to the client logic much like it is on the I/Q data interface. On transmit, the
core presents the current control word index Xs and the subchannel number Ns on ports
vendor_tx_xs
and vendor_tx_ns
, respectively. If this subchannel is in the vendor-specific range,
the core captures the data on the vendor_tx_data
port on
assertion of the iq_tx_enable
signal and sends it out in
the correct basic frame. If the subchannel is not in the vendor-specific range, the core
ignores data on the vendor_tx_data
port.
On receive, the core presents the last received
subchannel number Ns and control word index Xs on ports vendor_rx_ns
and
vendor_rx_xs
, respectively. If the subchannel is in the vendor-specific
range, the vendor_rx_data
port signals the value received in that
subchannel control word. If the subchannel is not in the vendor-specific range, the
vendor_rx_data
port can drive all logic 0s. See the following figure.
The vendor-specific data takes several cycles to
settle at the vendor_rx_data
output. The number of cycles is dependent on
the size of the control word. The data is stable when
basic_frame_first_word
is asserted at the end of the frame.
The valid widths for the
vendor_tx_data
and vendor_rx_data
ports vary according
to line speed. The valid bits are:
- vendor_tx_data[7:0] and vendor_rx_data[7:0] at 614.4 Mb/s
- vendor_tx_data[15:0] and vendor_rx_data[15:0] at 1,228.8 Mb/s
- vendor_tx_data[31:0] and vendor_rx_data[31:0] at 2,457.6 Mb/s
- vendor_tx_data[39:0] and vendor_rx_data[39:0] at 3,072 Mb/s
- vendor_tx_data[63:0] and vendor_rx_data[63:0] at 4,915.2 Mb/s
- vendor_tx_data[79:0] and vendor_rx_data[79:0] at 6,144.0 Mb/s
- vendor_tx_data[127:0] and vendor_rx_data[127:0] at 8,110.08, 9,830.4, 10,137.6, 12,165.12, and 24,330.24 Mb/s
Invalid bits are ignored on transmit and driven to logic 0s on receive.
In addition to the vendor-specific control words the vendor-specific interface also provides access to the control words in subchannels 4 to 7. These can be used to convey AxC specific control information in GSM based systems.