# Analog Channel

Construct loss model from channel loss metric or impulse response

• Library:
• SerDes Toolbox / Utilities

## Description

The Analog Channel block constructs a loss model using a channel loss metric or an impulse response from another source in a SerDes Toolbox™ model. Analog model inputs are only used for IBIS file construction when using impulse response. For more information, see Analog Channel Loss in SerDes System.

## Ports

### Input

expand all

Input signal, specified as a waveform.

Data Types: `double`

### Output

expand all

Modified output data that includes the effect of a lossy printed circuit board transmission line model according to the method outlined in [1].

Data Types: `double`

## Parameters

expand all

### Channel Model

Source of channel model.

• Select `Loss model` to model the analog channel from a loss model.

• Select `Impulse response` to model the analog channel from an impulse response.

#### Programmatic Use

• Use `get_param(gcb,'ChannelType')` to view the current Channel model.

• Use `set_param(gcb,'ChannelType',value)` to set a specific Channel model.

Frequency for the desired channel loss, specified as a positive real scalar in hertz. It corresponds to the Nyquist frequency of the system.

#### Dependencies

This parameter is only available when `Loss model` is selected as Channel model.

#### Programmatic Use

• Use `get_param(gcb,'TargetFrequency')` to view the current value of Target frequency (Hz).

• Use `set_param(gcb,'TargetFrequency',value)` to set Target frequency (Hz) to a specific value.

Data Types: `double`

Channel loss at the target frequency, specified as a scalar in dB.

#### Dependencies

This parameter is only available when `Loss model` is selected as Channel model.

#### Programmatic Use

• Use `get_param(gcb,'Loss')` to view the current value of Loss (dB).

• Use `set_param(gcb,'Loss',value)` to set Loss (dB) to a specific value.

Data Types: `double`

Characteristic impedance of the channel, specified as a positive real scalar in ohms. Impedance (Ohms) depends on the setting of Signaling in the Configuration tab in the SerDes Designer app or in the Configuration block.

• If Signaling is set to `Differential`, the default value of Impedance (Ohms) is `100`.

• If Signaling is set to `Single-ended`, the default value of Impedance (Ohms) is `50`.

#### Dependencies

This parameter is only available when `Loss model` is selected as Channel model.

#### Programmatic Use

• Use `get_param(gcb,'Zc')` to view the current value of Impedance.

• Use `set_param(gcb,'Zc',value)` to set Impedance to a specific value.

Data Types: `double`

User provided impulse response, specified as a unitless matrix. Impulse response is used to construct a channel loss model from the user-defined impulse response of the system.

You can use user specified impulse response to define your own crosstalk. If you decide to include crosstalk from your custom impulse response, you can specify upto six crosstalk stimuli as new columns in the impulse response.

#### Dependencies

This parameter is only available when ```Impulse response``` is selected as Channel model

#### Programmatic Use

• Use `get_param(gcb,'ImpulseResponse')` to view the current value of Impulse response.

• Use `set_param(gcb,'ImpulseResponse',value)` to set Impulse response to a specific value.

Data Types: `double`

Sample interval of the user provided impulse response, specified as a positive real scalar in seconds.

Data Types: `double`

Analog Model

Single-ended impedance of the transmitter analog model, specified as a nonnegative real scalar in ohms.

#### Programmatic Use

• Use `get_param(gcb,'TxR')` to view the current value of Tx R (Ohms).

• Use `set_param(gcb,'TxR',value)` to set Tx R (Ohms) to a specific value.

Data Types: `double`

Capacitance of the transmitter analog model, specified as a nonnegative real scalar in farads.

#### Programmatic Use

• Use `get_param(gcb,'TxC')` to view the current value of Tx C (F).

• Use `set_param(gcb,'TxC',value)` to set Tx C (F) to a specific value.

Data Types: `double`

Single-ended impedance of the receiver analog model, specified as a nonnegative real scalar in ohms.

#### Programmatic Use

• Use `get_param(gcb,'RxR')` to view the current value of Rx R (Ohms).

• Use `set_param(gcb,'RxR',value)` to set Rx R (Ohms) to a specific value.

Data Types: `double`

Capacitance of the receiver analog model, specified as a nonnegative real scalar in farads.

#### Programmatic Use

• Use `get_param(gcb,'RxC')` to view the current value of Rx C (F).

• Use `set_param(gcb,'RxC',value)` to set Rx C (F) to a specific value.

Data Types: `double`

20%−80% rise time of the stimulus input to transmitter analog model, specified as a positive real scalar in seconds.

#### Programmatic Use

• Use `get_param(gcb,'RiseTime')` to view the current value of Rise time (s).

• Use `set_param(gcb,'RiseTime',value)` to set Rise time (s) to a specific value.

Data Types: `double`

Peak-to-peak voltage at the input of transmitter analog model, specified as a positive real scalar in volts.

#### Programmatic Use

• Use `get_param(gcb,'VoltageSwingIdeal')` to view the current value of Voltage (V).

• Use `set_param(gcb,'VoltageSwingIdeal',value)` to set Voltage (V) to a specific value.

Data Types: `double`

### Crosstalk

Select to include crosstalk in the simulation. By default, this option is deselected.

Magnitude

Specify the magnitude of the near and far end aggressors. You can choose to include maximum allowed crosstalk for specifications such as `100GBASE-CR4`, `CEI-25G-LR`, `CEI-28G-SR`, `CEI-28G-VSR`, or you can specify your own custom crosstalk integrated crosstalk noise (ICN) level.

#### Programmatic Use

• Use `get_param(gcb,'CrosstalkSpecification')` to view the current value of Specification.

• Use `set_param(gcb,'CrosstalkSpecification',value)` to set Specification to a specific value.

Desired integrated crosstalk noise (ICN) level of the far end aggressor, specified as a nonnegative real scalar in volts. ICN specifies the strength of the crosstalk.

#### Dependencies

This parameter is only available when you choose `Custom` as crosstalk Specification.

#### Programmatic Use

• Use `get_param(gcb,'FEXTICN')` to view the current value of Far end crosstalk ICN (V).

• Use `set_param(gcb,'FEXTICN',value)` to set Far end crosstalk ICN (V) to a specific value.

Data Types: `double`

Desired integrated crosstalk noise (ICN) level of the near end aggressor, specified as a nonnegative real scalar in volts. ICN specifies the strength of the crosstalk.

#### Dependencies

This parameter is only available when you choose `Custom` as crosstalk Specification.

#### Programmatic Use

• Use `get_param(gcb,'NEXTICN')` to view the current value of Near end crosstalk ICN (V).

• Use `set_param(gcb,'NEXTICN',value)` to set Near end crosstalk ICN (V) to a specific value.

Data Types: `double`

FEXT Stimulus

Symbol time of the far end crosstalk (FEXT) stimulus, specified as a positive real scalar in seconds.

#### Programmatic Use

• Use `get_param(gcb,'UIFEXT')` to view the current value of Symbol Time (s) in FEXT stimulus.

• Use `set_param(gcb,'UIFEXT',value)` to set Symbol Time (s) in FEXT stimulus to a specific value.

Data Types: `double`

Delay offset of the far end crosstalk (FEXT) stimulus, specified as a positive real scalar in seconds.

#### Programmatic Use

• Use `get_param(gcb,'DelayFEXT')` to view the current value of Delay (s) in FEXT stimulus.

• Use `set_param(gcb,'DelayFEXT',value)` to set Delay (s) in FEXT stimulus to a specific value.

Data Types: `double`

Modulation levels of the far end crosstalk (FEXT) stimulus, specified between `NRZ` (2-level) and `PAM4` (4-level).

#### Programmatic Use

• Use `get_param(gcb,'ModulationFEXT')` to view the current value of Modulation in FEXT stimulus.

• Use `set_param(gcb,'ModulationFEXT',value)` to set Modulation in FEXT stimulus to a specific value.

Pseudorandom binary sequence (PRBS) order of the far end crosstalk (FEXT) stimulus.

#### Programmatic Use

• Use `get_param(gcb,'OrderFEXT')` to view the current value of PRBS Order in FEXT stimulus.

• Use `set_param(gcb,'OrderFEXT',value)` to set PRBS Order in FEXT stimulus to a specific value.

Data Types: `double`

NEXT Stimulus

Symbol time of the near end crosstalk (NEXT) stimulus, specified as a positive real scalar in seconds.

#### Programmatic Use

• Use `get_param(gcb,'UINEXT')` to view the current value of Symbol Time (s) in NEXT stimulus.

• Use `set_param(gcb,'UINEXT',value)` to set Symbol Time (s) in NEXT stimulus to a specific value.

Data Types: `double`

Delay offset of the near end crosstalk (NEXT) stimulus, specified as a positive real scalar in seconds.

#### Programmatic Use

• Use `get_param(gcb,'DelayNEXT')` to view the current value of Delay (s) in NEXT stimulus.

• Use `set_param(gcb,'DelaynEXT',value)` to set Delay (s) in NEXT stimulus to a specific value.

Data Types: `double`

Modulation levels of the near end crosstalk (NEXT) stimulus, specified between `NRZ` (2-level) and `PAM4` (4-level).

#### Programmatic Use

• Use `get_param(gcb,'ModulationNEXT')` to view the current value of Modulation in NEXT stimulus.

• Use `set_param(gcb,'ModulationNEXT',value)` to set Modulation in NEXT stimulus to a specific value.

Pseudorandom binary sequence (PRBS) order of the near end crosstalk (NEXT) stimulus.

#### Programmatic Use

• Use `get_param(gcb,'OrderFEXT')` to view the current value of PRBS Order in FEXT stimulus.

• Use `set_param(gcb,'OrderFEXT',value)` to set PRBS Order in FEXT stimulus to a specific value.

Data Types: `double`

expand all

expand all

## References

[1] IEEE 802.3bj-2014. "IEEE Standard for Ethernet Amendment 2: Physical Layer Specifications and Management Parameters for 100 Gb/s Operation Over Backplanes and Copper Cables." URL: https://standards.ieee.org/standard/802_3bj-2014.html.

[2] Stephen Hall and Howard Heck. Advanced Signal Integrity for High-Speed Digital Designs. Hoboken, NJ: Wiley Press, 2009.

## Version History

Introduced in R2019a