serdes.Stimulus
Set a pseudorandom binary sequence (PRBS) pattern and number of symbols to simulate in SerDes model
Description
The serdes.Stimulus
System object™ sets the PRBS pattern and the number of symbols to simulate in a SerDes Toolbox™ model.
To set the PRBS pattern and the number of symbols:
Create the
serdes.Stimulus
object and set its properties.Call the object with arguments, as if it were a function.
To learn more about how System objects work, see What Are System Objects?
Creation
Description
returns a
stimulus
= serdes.StimulusStimulus
object that outputs the PRBS or custom data pattern
waveform.
sets properties using one or more name-value arguments. Enclose each property name in
quotes. Unspecified properties have default values.stimulus
= serdes.Stimulus(Name,Value
)
Example: stimulus = serdes.Stimulus('Modulation',4,'Delay',10e-12)
returns a Stimulus
object that uses a four-level pulse amplitude
modulation (PAM4) modulation scheme and has a delay of 10e-12
seconds.
Properties
Object Functions
To use an object function, specify the
System object as the first input argument. For
example, to release system resources of a System object named obj
, use
this syntax:
release(obj)
Examples
Tips
If the PRBS waveform specification definition is incomplete, then extended defaults will be applied. For instance, if Modulation is 4 but Seed is incomplete or incorrect, a valid Seed value will be found and used.
The PAMn waveform specification creates pulse amplitude modulation (PAM) signals for 2 to 16 levels. This random integer generator selects 16 bits from a PRBS31 data stream to form an integer between 0 and 2^16-1. This integer is then linearly mapped to the range of [0.501, N + 0.499] which is then rounded to an integer in the range of 1 to N, where N is the desired number of PAM levels. This uniform integer then selects the appropriate symbol voltage from the
MapToVoltage
property.The injected jitter is accumulated as follows:
DJ: jitter
= 2*Dj
*(rand(1)-0.5);Rj: jitter
=Rj
*randn(1);DCD: jitter = DCD/2*(-1.0)^N, where N is the symbol index
Sj
: jitter =pSj
*sin(N*T*2*pi*SjFrequency
), where N is the symbol index, T is the symbol time.Jitter is injected in the symbol to waveform conversion and therefore jitter cannot be injected when the Specification is 'Sampled Voltage'.
Version History
Introduced in R2021b