CTLE
Models continuous time linear equalizer (CTLE)
Libraries:
SerDes Toolbox /
Datapath Blocks
Description
The CTLE block applies a linear peaking filter to equalize the frequency response of a sample-by-sample input signal. The equalization process reduces distortions resulting from lossy channels. The filter is a real one-zero two-pole (1z/2p) filter, unless you define the gain-pole-zero (GPZ) matrix. The time domain filter coefficients can be calculated from one large partial fraction or many cascaded sections.
Ports
Input
WaveIn — Input baseband signal
scalar | vector
Input baseband signal. The input signal can be a sample-by-sample signal specified as a scalar, or an impulse response vector signal.
Data Types: double
Output
WaveOut — Estimated channel output
scalar | vector
Estimated channel output. If the input signal is a sample-by-sample signal specified as a scalar, then the output is also scalar. If the input signal is an impulse response vector signal, then the output is also a vector.
Data Types: double
Parameters
Mode — CTLE operating mode
Adapt
(default) | Off
| Fixed
CTLE operating mode:
Off
— CTLE is bypassed and the input waveform remains unchanged.Fixed
— CTLE applies the CTLE transfer function as specified by Configuration select to the input waveform.Adapt
— If the input signal is an impulse response vector or a waveform vector, then the Init subsystem calls to the CTLE System object™. The CTLE System object determines the CTLE transfer function to maximize the SNR and applies the transfer function to the input waveform for time domain simulation. This optimized transfer function is used by the CTLE for entire time domain simulation. For more information about the Init subsystem, see Statistical Analysis in SerDes SystemsIf the input signal is a sample-by-sample scalar, then the CTLE operates in the
Fixed
mode.
Programmatic Use
Use
get_param(gcb,'Mode')
to view the current CTLE Mode.Use
set_param(gcb,'Mode',value)
to set CTLE to a specific Mode.
Slice select — Select which corner of 3D GPZ matrix to use
0
(default) | nonegative scalar integer
Select which slice, family, or corner of a 3-D GPZ matrix to use during CTLE configuration.
You must set the Specification parameter to 'GPZ
Matrix'
to effectively use the Slice Select
parameter. Depending on how many slices are available in your GPZ matrix, you can then
select the slice you are interested in from a zero-based index available from the
dropdown menu.
You cannot use GPZ for a given slice and the peaking gain, DC gain, or AC gain for another slice.
Programmatic Use
Use
get_param(gcb,'SliceSelect')
to view the current value of Slice select.Use
set_param(gcb,'SliceSelect',value)
to set Slice select to a specific value.
Data Types: double
Configuration select — Select which member of transfer function to apply in fixed mode
0
(default) | 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
Select which transfer function configuration to apply in CTLE fixed mode, specified as a real integer scalar. Depending on the Specification, Configuration select specifies which gain coefficient is applied to the filter transfer function.
For example, setting Configuration select to
n and Specification to 'DC Gain
and Peaking Gain'
selects the (n+1)-th element in the
DC gain (dB) and Peaking gain (dB) vectors
to be applied to the filter transfer function.
If CTLE Mode is set to Adapt
and the
input is an impulse response vector or a waveform vector, Configuration
select is automatically calculated to determine the best eye height
opening. To view the value of the Configuration select parameter,
choose Add Plots > Report in the SerDes Designer
app.
Programmatic Use
Use
get_param(gcb,'ConfigSelect')
to view the current value of Configuration select.Use
set_param(gcb,'ConfigSelect',value)
to set Configuration select to a specific value.
Data Types: double
Specification — Input specification for CTLE response
'DC Gain and Peaking Gain'
(default) | 'DC Gain and AC Gain'
| 'AC Gain and Peaking Gain'
| 'GPZ Matrix'
Defines which inputs will be used for the CTLE transfer function family. There are five inputs which can be used to define the CTLE transfer function family: DC gain (dB), Peaking gain (dB), AC gain (dB), Peaking frequency (Hz), and Gain pole zero matrix.
You can define the CTLE response from any two of the three gains and peaking frequency or you can define the GPZ matrix for the CTLE.
Select
'DC Gain and Peaking Gain'
to specify CTLE response from DC gain (dB), Peaking gain (dB), and Peaking frequency (Hz).Select
'DC Gain and AC Gain'
to specify CTLE response is from DC gain (dB), AC gain (dB), and Peaking frequency (Hz).Select
'AC Gain and Peaking Gain'
to specify CTLE response from AC gain (dB), Peaking gain (dB), and Peaking frequency (Hz).Select
'GPZ Matrix'
to specify CTLE response is from Gain pole zero matrix.
Programmatic Use
Use
get_param(gcb,'Specification')
to view the current CTLE Specification.Use
set_param(gcb,'Specification',value)
to set CTLE to a specific Specification.
Data Types: char
DC gain (dB) — Gain at zero frequency
[0:-1:-8]
(default) | scalar | vector
Gain at zero frequency for the CTLE transfer function, specified as a scalar or a vector in dB. If specified as a scalar, it is converted to match the length of Peaking gain (dB), AC gain (dB), and Peaking frequency (Hz) by scalar expansion. If specified as a vector, the vector length must be the same as the vectors in Peaking gain (dB), AC gain (dB), and Peaking frequency (Hz).
Dependencies
This parameter is only available when Specification is set to
'DC Gain and Peaking Gain'
or 'DC Gain and
AC Gain'
.
Programmatic Use
Use
get_param(gcb,'DCGain')
to view the current value of DC gain (dB).Use
set_param(gcb,'DCGain',value)
to set DC gain (dB) to a specific value.
Data Types: double
Peaking gain (dB) — Difference between AC and DC gain
[0:8]
(default) | scalar | vector
Peaking gain, specified as a scalar or vector in dB. Peaking gain (dB) is the difference between AC gain (dB) and DC gain (dB) for the CTLE transfer function. If specified as a scalar, it is converted to match the length of DC gain (dB), AC gain (dB), and Peaking frequency (Hz) by scalar expansion. If specified as a vector, the vector length must be the same as the vectors in DC gain (dB), AC gain (dB), and Peaking frequency (Hz).
Dependencies
This parameter is only available when Specification is set to
'DC Gain and Peaking Gain'
or 'AC Gain and
Peaking Gain'
.
Programmatic Use
Use
get_param(gcb,'PeakingGain')
to view the current value of Peaking gain (dB).Use
set_param(gcb,'PeakingGain',value)
to set Peaking gain (dB) to a specific value.
Data Types: double
AC gain (dB) — Gain at peaking frequency
0
(default) | scalar | vector
Gain at the peaking frequency for the CTLE transfer function, specified as a scalar or vector in dB. If specified as a scalar, it is converted to match the length of DC gain (dB), Peaking gain (dB), and Peaking frequency (Hz) by scalar expansion. If specified as a vector, the vector length be the same as the vectors in DC gain (dB), Peaking gain (dB), and Peaking frequency (Hz).
Dependencies
This parameter is only available when Specification is set to
'DC Gain and AC Gain'
or 'AC Gain and
Peaking Gain'
.
Programmatic Use
Use
get_param(gcb,'ACGain')
to view the current value of AC gain (dB).Use
set_param(gcb,'ACGain',value)
to set AC gain (dB) to a specific value.
Data Types: double
Peaking frequency (Hz) — Approximate frequency at which CTLE transfer function peaks
5e9
(default) | scalar | vector
Approximate frequency at which CTLE transfer function peaks in magnitude, specified as a scalar or a vector in GHz. If specified as a scalar, it is converted to match the length of DC gain (dB), AC gain (dB), and Peaking gain (dB) by scalar expansion. If specified as a vector, the vector length must be the same as the vectors in DC gain (dB), AC gain (dB), and Peaking gain (dB).
Dependencies
This parameter is not available when Specification is set to
'GPZ Matrix'
.
Programmatic Use
Use
get_param(gcb,'PeakingFrequency')
to view the current value of Peaking frequency (Hz).Use
set_param(gcb,'PeakingFrequency',value)
to set Peaking frequency (Hz) to a specific value.
Data Types: double
Gain pole zero matrix — Gain pole zero
matrix
Gain pole zero, specified as a matrix. Gain pole zero matrix explicitly defines the family of CTLE transfer functions by specifying the DC gain (dB) (dB) in the first column and then poles and zeros in alternating columns. The poles and zeros are specified in Hz. Use the parameter Configuration Select to select filters defined by rows of the GPZ matrix
The block only allows repeated poles or zeros when it uses a cascaded filter. To change the filter method the block uses, look under the mask and double click the CTLE System object. This launches block parameters dialog box, and you can find the Filter method parameter in the Advanced tab.
Complex poles or zeros must have conjugates. The number of poles must be greater than number of zeros for system stability. The block ignores poles and zeros of 0 Hz and you can use them to zero-pad the matrix.
You can define multiple slices of CTLE responses by using a 3-D GPZ matrix. You can concatenate and zero-pad two GPZ matrices to extend to the third dimension.
Example: To create a gain pole zero matrix with three poles and two zeroes, input the matrix as follows: [G, P1, Z1, P2, Z2, P3].
Dependencies
This parameter is only available when Specification is set to
'GPZ Matrix'
.
Programmatic Use
Use
get_param(gcb,'GPZ')
to view the current value of Gain pole zero matrix.Use
set_param(gcb,'GPZ',value)
to set Gain pole zero matrix to a specific value.
Data Types: double
Complex Number Support: Yes
Visualize Response — Plot CTLE response
button
Click to plot the CTLE response. The resulting plot shows CTLE transfer function family curves for different CTLE configurations.
Launch CTLE Fitter App — Launch CTLE Fitter app
button
Click to launch the CTLE fitter app. For more information, see CTLE Fitter.
Mode — Include Mode parameter in IBIS-AMI model
on (default) | off
Select to include Mode as a parameter in the IBIS-AMI file. If you deselect Mode, it is removed from the AMI files, effectively hard-coding Mode to its current value.
Slice select — Include Slice select parameter in IBIS-AMI model
on (default) | off
Select to include Slice select as a parameter in the IBIS-AMI file. If you deselect Slice select, it is removed from the AMI files, effectively hard-coding Slice select to its current value.
Configuration select — Include Configuration select parameter in IBIS-AMI model
on (default) | off
Select to include Configuration select as a parameter in the IBIS-AMI file. If you deselect Configuration select, it is removed from the AMI files, effectively hard-coding Configuration select to its current value.
Version History
Introduced in R2019aR2023b: Slice Select
you can now select which slice, family, or corner of a 3-D GPZ matrix to use during CTLE configuration.
See Also
AGC | serdes.AGC
| serdes.CTLE
| DFECDR | serdes.DFECDR | SaturatingAmplifier
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)