Отобразите глазковую диаграмму для сигналов временной области
comm.EyeDiagram
Система object™ отображает несколько трассировок модулируемого сигнала произвести глазковую диаграмму. Можно использовать объект показать характеристики модуляции сигнала, такие как эффекты импульсного формирования или искажений канала. Глазковая диаграмма может измерить характеристики сигнала и построить горизонтальные и вертикальные кривые ванны, когда дрожание и шум выполняют модель [1] двойного Дирака.
Отобразить глазковую диаграмму для входного сигнала:
Создайте comm.EyeDiagram
объект и набор его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.
создает Системный объект глазковой диаграммы со значениями свойств по умолчанию. ed
= comm.EyeDiagram
свойства наборов с помощью одного или нескольких аргумент пары "имя-значение". Заключите каждое имя свойства в одинарные кавычки. Незаданные свойства имеют значения по умолчанию.ed
= comm.EyeDiagram(Name
,Value
)
comm.EyeDiagram('SampleRate',2,'DisplayMode','2D color histogram')
Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их и release
функция разблокировала их.
Если свойство является настраиваемым, можно изменить его значение в любое время.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).
Name
— Заголовок окна глазковой диаграммы'Eye Diagram'
(значение по умолчанию) | вектор символовЗаголовок окна глазковой диаграммы в виде вектора символов.
Настраиваемый: да
Типы данных: char
SampleRate
— Частота дискретизации входного сигнала
(значение по умолчанию) | положительный скаляр с действительным знакомЧастота дискретизации входного сигнала в герц в виде положительного скаляра с действительным знаком.
Типы данных: double
SamplesPerSymbol
— Количество выборок на символ
(значение по умолчанию) | положительное целое числоКоличество выборок на символ в виде положительного целого числа.
Настраиваемый: да
Типы данных: double
SampleOffset
— Количество выборок, чтобы пропустить прежде, чем построить первую точку
(значение по умолчанию) | неотрицательное целое числоКоличество выборок, чтобы пропустить прежде, чем построить первую точку в виде неотрицательного целого числа. Чтобы избежать непорядочного поведения, задайте смещение, чтобы быть меньше продукта свойств SamplesPerSymbol и SymbolsPerTrace.
Настраиваемый: да
Типы данных: double
SymbolsPerTrace
— Количество символов на трассировку
(значение по умолчанию) | положительное целое числоКоличество символов на трассировку в виде положительного целого числа. Чтобы получить измерения глаза и визуализировать кривые ванны, используйте значение по умолчанию 2
.
Настраиваемый: да
Типы данных: double
TracesToDisplay
— Количество трассировок, чтобы отобразиться
(значение по умолчанию) | положительное целое числоКоличество трассировок, чтобы отобразиться в виде положительного целого числа.
Настраиваемый: да
Чтобы включить это свойство, установите свойство DisplayMode на 'Line plot'
.
Типы данных: double
DisplayMode
— Режим отображения глазковой диаграммы'Line plot'
(значение по умолчанию) | '2D color histogram'
Режим отображения глазковой диаграммы в виде одного из этих значений.
'Line plot'
— Наложите трассировки путем строения одного графика для каждой из последних трассировок TracesToDisplay.
'2D color histogram'
— Отобразите цветовой градиент, который показывает, как часто вход совпадает с различным временем и амплитудными значениями.
Настраиваемый: да
Типы данных: char
EnableMeasurements
— Опция, чтобы включить измерения глазковой диаграммыfalse
(значение по умолчанию) | true
Опция, чтобы включить измерения глазковой диаграммы в виде true
или false
. Установите это свойство на true
отобразить панель измерения и вычисления в глазковой диаграмме.
Настраиваемый: да
Типы данных: логический
ShowBathtub
— Опция, чтобы включить визуализацию кривых ванны'None'
(значение по умолчанию) | 'Horizontal'
| 'Vertical'
| 'Both'
Опция, чтобы включить визуализацию ванны изгибается в виде 'None'
, 'Horizontal'
, 'Vertical'
, или 'Both'
.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: char
OverlayHistogram
— Наложение гистограммы'None'
(значение по умолчанию) | 'Jitter'
| 'Noise'
Наложение гистограммы в виде 'None'
, 'Jitter'
, или 'Noise'
.
Чтобы наложить горизонтальную гистограмму на глазковой диаграмме, установите это свойство на 'Jitter'
.
Чтобы наложить вертикальную гистограмму на глазковой диаграмме, установите это свойство на 'Noise'
.
Чтобы не отобразить наложение гистограммы, установите это свойство на 'None'
.
Настраиваемый: да
Чтобы включить это свойство, установите свойство DisplayMode на '2D color histogram'
и свойство EnableMeasurements к true
.
Типы данных: char
DecisionBoundary
— Амплитудный порог уровня
(значение по умолчанию) | скаляр с действительным знакомАмплитудный порог уровня в вольтах в виде скаляра с действительным знаком. Это свойство разделяет различные сигнальные области для горизонтали (дрожание) гистограммы. Сброс гистограмм дрожания, когда это свойство изменяется.
Для сигналов невозврата к нулю (NRZ), набор DecisionBoundary
к 0. Для сигналов возврата к нулю (RZ), набор DecisionBoundary
к половине максимальной амплитуды.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
EyeLevelBoundaries
— Область значений времени для вычисления уровней глаз
(значение по умолчанию) | двухэлементный вектор-строкаОбласть значений времени для вычисления уровней глаз в виде двухэлементного вектора-строки. Задайте векторные значения как проценты длительности символа.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
RiseFallThresholds
— Амплитудные уровни переходов взлета и падения
(значение по умолчанию) | двухэлементный вектор-строкаАмплитудные уровни переходов взлета и падения в виде двухэлементного вектора-строки. Задайте векторные значения как проценты амплитуды глаза. Пересекающиеся гистограммы порогового сброса взлета и падения, когда это свойство изменяется.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
Hysteresis
— Амплитудный допуск горизонтальных пересечений
(значение по умолчанию) | скаляр с действительным знакомАмплитудный допуск горизонтальных пересечений в вольтах в виде скаляра с действительным знаком. Увеличьте это значение, чтобы предоставить больше допуска побочным пересечениям из-за шума. Дрожите и сброс гистограмм взлета и падения, когда это свойство изменится.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
BERThreshold
— BER используется в измерениях глаза1e-12
(значение по умолчанию) | скаляр в области значений [0, 0.5]Частота ошибок по битам (BER), используемая в измерениях глаза в виде скаляра в области значений [0, 0.5]. Системный объект использует это значение, чтобы измерить случайное дрожание, общее дрожание, горизонтальные открытия глаза и вертикальные открытия глаза.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
BathtubBER
— Значения BER раньше вычисляли открытия кривых ванны
(значение по умолчанию) | векторЗначения BER раньше вычисляли открытия кривых ванны в виде вектора элементов в области значений [0, 0.5]. Горизонтальные и вертикальные открытия глаза вычисляются для каждого из значений, заданных этим свойством.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на true
и свойство ShowBathtub к 'Both'
, 'Horizontal'
, или 'Vertical'
.
Типы данных: double
MeasurementDelay
— Длительность исходных данных отбрасывается от измерений
(значение по умолчанию) | неотрицательный скалярДлительность исходных данных отбрасывается от измерений в секундах в виде неотрицательного скаляра.
Чтобы включить это свойство, установите свойство EnableMeasurements на true
.
Типы данных: double
OversamplingMethod
— Сверхдискретизация метода'None'
(значение по умолчанию) | 'Input interpolation'
| 'Histogram interpolation'
Сверхдискретизация метода в виде 'None'
, 'Input interpolation'
, или 'Histogram interpolation'
.
Чтобы построить глазковые диаграммы как можно быстрее, установите OversamplingMethod
к 'None'
. Недостаток к не сверхдискретизации - то, что графики выглядят пикселизированными, когда количество sybomls на трассировку мало.
Чтобы создать более сглаженные, менее пикселизированные графики с помощью небольшого количества символов на трассировку, установите OversamplingMethod
to'Input interpolation'
или 'Histogram interpolation'
. В этом случае, 'Input interpolation'
более быстрый метод интерполяции и приводит к хорошим результатам, когда отношение сигнал-шум (SNR) высоко. С низким ОСШ не рекомендуется этот метод сверхдискретизации, потому что он вводит смещение центрам областей значений гистограммы. 'Histogram interpolation'
не с такой скоростью, как другие методы, но это обеспечивает хорошие результаты, даже когда ОСШ является низким.
Настраиваемый: да
Чтобы включить это свойство, установите свойство DisplayMode на '2D color histogram'
.
Типы данных: char
ColorScale
— Цветовая шкала гистограммы'Linear'
(значение по умолчанию) | 'Logarithmic'
Цветовая шкала гистограммы в виде 'Linear'
или 'Logarithmic'
. Измените это свойство, если определенные области гистограммы включают диспропорциональное число точек. Используйте 'Logarithmic'
опция для глазковых диаграмм с резким peaks, где сигнал повторяющимся образом совпадает с определенным временем и амплитудными значениями.
Настраиваемый: да
Чтобы включить это свойство, установите свойство DisplayMode на '2D color histogram'
.
Типы данных: char
ColorFading
— Цветное исчезновениеfalse
(значение по умолчанию) | true
Цвет, исчезающий в виде true
или false
. Чтобы исчезнуть точки в отображении как, интервал времени после того, как они будут сначала построены увеличения, установил это свойство на true
. Эта анимация напоминает осциллограф.
Настраиваемый: да
Чтобы включить это свойство, установите свойство DisplayMode на 'Line plot'
.
Типы данных: логический
ShowImaginaryEye
— Покажите мнимый компонент сигналаfalse
(значение по умолчанию) | true
Покажите мнимый компонент сигнала в виде true
или false
. Чтобы просмотреть мнимый компонент или квадратурный компонент входного сигнала, установите это свойство на true
.
Настраиваемый: да
Чтобы включить это свойство, установите свойство EnableMeasurements на false
.
Типы данных: логический
YLimits
— Y - пределы по осям
(значение по умолчанию) | двухэлементный вектор-строкаY- глазковой диаграммы в вольтах в виде двухэлементного вектора. Первый элемент соответствует ymin и второму к ymax. Второй элемент должен быть больше первого.
Настраиваемый: да
Типы данных: double
ShowGrid
— Опция, чтобы включить отображение сеткиfalse
(значение по умолчанию) | true
Опция, чтобы включить отображение сетки на глазковой диаграмме в виде true
или false
. Чтобы отобразить сетку на глазковой диаграмме, установите это свойство на true
.
Настраиваемый: да
Типы данных: логический
Position
— Определите объем положения окнаОпределите объем положения окна в пикселях в виде четырехэлементного вектора-строки из формы [left bottom width height].
Настраиваемый: да
Типы данных: double
ed(
отображения и анализируют входной сигнал x
)x
в глазковой диаграмме.
x
— Входной сигналВходной сигнал, который будет анализироваться и отображаться в глазковой диаграмме в виде вектора или матрицы. x
может быть или вектор действительных чисел или комплексный вектор или действительная матрица 2D столбца.
Типы данных: double
Поддержка комплексного числа: Да
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)
comm.EyeDiagram
show | Окно Show scope |
hide | Скройте окно scope |
horizontalBathtub | Горизонтальная кривая ванны |
verticalBathtub | Вертикальная кривая ванны |
jitterHistogram | Гистограмма дрожания |
noiseHistogram | Шумовая гистограмма |
measurements | Измерьте параметры глазковой диаграммы |
Задайте частоту дискретизации и количество выходных выборок на параметры символа.
fs = 1000; sps = 4;
Создайте фильтр передачи и объекты глазковой диаграммы.
txfilter = comm.RaisedCosineTransmitFilter('OutputSamplesPerSymbol',sps); ed = comm.EyeDiagram('SampleRate',fs*sps,'SamplesPerSymbol',sps);
Сгенерируйте случайные символы и примените модуляцию QPSK. Затем отфильтруйте модулируемый сигнал и отобразите глазковую диаграмму.
data = randi([0 3],1000,1); modSig = pskmod(data,4,pi/4); txSig = txfilter(modSig); ed(txSig)
Покажите эффекты различных методов интерполяции для 2D гистограмм для различных условий отношения сигнал-шум (SNR).
Создайте модулятор GMSK и Системные объекты глазковой диаграммы. Укажите, что отображения глазковой диаграммы с помощью 2D цветной гистограммы и строят действительные и мнимые сигналы.
gmsk = comm.GMSKModulator('PulseLength',3); ed = comm.EyeDiagram('DisplayMode','2D color histogram', ... 'ShowImaginaryEye',true,'YLimits',[-2 2]);
Сгенерируйте данные, содержащие положительные и отрицательные значения и примените модуляцию GMSK.
d = 2*randi([0 1],1e4,1)-1; x = gmsk(d);
%Pass the signal through an AWGN channel having a 25 dB SNR and with a fixed seed for repeatable results. randStream = RandStream('mt19937ar','Seed',5489); y = awgn(x,25,'measured',randStream);
Отобразите глазковую диаграмму.
ed(y)
Для небольшого количества выборок на трассировку (16), отсутствие интерполяции вызывает кусочно-непрерывное поведение.
Чтобы компенсировать кусочно-непрерывное поведение, установите OversamplingMethod
свойство к 'Input interpolation'
. Сбросьте объект и отобразите глазковую диаграмму.
ed.OversamplingMethod = 'Input interpolation';
reset(ed)
ed(y)
Интерполяция сглаживает глазковую диаграмму.
Теперь передайте модулируемый GMSK сигнал через канал AWGN, имеющий ОСШ на 10 дБ. Отобразите глазковую диаграмму.
y = awgn(x,10,'measured',randStream);
reset(ed)
ed(y)
Вертикальное чередование является результатом входной интерполяции, которая ограничила точность в условиях низкого ОСШ.
Установите OversamplingMethod
свойство к 'Histogram interpolation'
. Постройте глазковую диаграмму.
ed.OversamplingMethod = 'Histogram interpolation';
reset(ed)
ed(y)
График глазковой диаграммы теперь представляет точно, потому что метод интерполяции гистограммы работает на все значения ОСШ. Этот метод заканчивается в увеличенное время выполнения.
Визуализируйте глазковую диаграмму для входного сигнала двойного Дирака. Вычислите измерения глаза и визуализируйте горизонтальные и вертикальные кривые ванны. Наложите горизонталь (дрожание) гистограмма.
Задайте частоту дискретизации, выборки на символ и количество трассировок.
fs = 10000; sps = 200; numTraces = 2000;
Создайте объект глазковой диаграммы, имеющий эти свойства:
2D цветное отображение гистограммы
Логарифмическая цветовая шкала
Наложение гистограммы дрожания
Горизонтальные и вертикальные кривые ванны
Пределы оси Y [-1.3 1.3]
Увеличенная высота окна
ed = comm.EyeDiagram('SampleRate',fs,'SamplesPerSymbol',sps,'SampleOffset',sps/2, ... 'DisplayMode','2D color histogram','ColorScale','Logarithmic', ... 'EnableMeasurements',true,'OverlayHistogram','Jitter', ... 'ShowBathtub','Both','YLimits', [-1.3 1.3]); ed.Position = ed.Position + [0 0 0 120];
Сгенерируйте форму волны, имеющую двойного Дирака и случайное дрожание. Задайте времена взлета и падения на 3 мс.
src = commsrc.pattern('SamplesPerSymbol',sps,'RiseTime',3e-3,'FallTime', 3e-3); src.Jitter = commsrc.combinedjitter('RandomJitter','on','DiracJitter','on', ... 'DiracDelta',[-10e-04 10e-04],'RandomStd',5e-4);
Сгенерируйте два символа для каждой трассировки.
symbols = src.generate(numTraces*2);
Обработайте данные в пакетах 40e3 символы, добавьте шум и отобразите глазковую диаграмму.
for idx = 1:(numTraces-1)/100 x = symbols(1+(idx-1)*100*2*sps:idx*100*2*sps); % Read 40,000 symbols y = awgn(x,30); % Add noise ed(y); % Display eye diagram end
Отобразите глазковую диаграмму для формы волны, имеющей двойного Дирака и случайное дрожание. Постройте дрожание и шумовые гистограммы.
Задайте частоту дискретизации, выборки на символ и количество параметров трассировок.
fs = 1000; sps = 200; numTraces = 1000;
Создайте объект глазковой диаграммы.
ed = comm.EyeDiagram('SampleRate',fs,'SamplesPerSymbol',sps,'SampleOffset',sps/2, ... 'DisplayMode','2D color histogram','ColorScale','Logarithmic', ... 'EnableMeasurements',true,'YLimits',[-1.2 1.2]);
Сгенерируйте форму волны, имеющую двойного Дирака и случайное дрожание. Задайте времена взлета и падения на 3 мс.
src = commsrc.pattern('SamplesPerSymbol',sps,'RiseTime',3e-3,'FallTime', 3e-3); src.Jitter = commsrc.combinedjitter('RandomJitter','on','DiracJitter','on', ... 'DiracDelta',[-10e-04 10e-04],'RandomStd',5e-4);
Сгенерируйте два символа для каждой трассировки.
x = src.generate(numTraces*2);
Передайте сигнал через канал AWGN с фиксированным seed для повторяемых результатов.
randStream = RandStream('mt19937ar','Seed',5489); y = awgn(x,30,'measured',randStream); ed(y)
Вычислите счет гистограммы дрожания для каждого интервала при помощи jitterHistogram
метод. Постройте гистограмму.
jbins = jitterHistogram(ed); plot(jbins)
Вычислите шумовой счет гистограммы для каждого интервала при помощи noiseHistogram
метод. Постройте гистограмму.
nbins = noiseHistogram(ed); plot(nbins)
Отобразите глазковую диаграмму для формы волны, имеющей двойного Дирака и случайное дрожание. Сгенерируйте и постройте горизонтальные и вертикальные кривые ванны.
Задайте частоту дискретизации, выборки на символ и количество параметров трассировок.
fs = 1000; sps = 200; numTraces = 1000;
Создайте объект глазковой диаграммы.
ed = comm.EyeDiagram('SampleRate',fs,'SamplesPerSymbol',sps,'SampleOffset',sps/2, ... 'DisplayMode','2D color histogram','ColorScale','Logarithmic', ... 'EnableMeasurements',true,'ShowBathtub','Both','YLimits',[-1.2 1.2]);
Сгенерируйте форму волны, имеющую двойного Дирака и случайное дрожание. Задайте времена взлета и падения на 3 мс.
src = commsrc.pattern('SamplesPerSymbol',sps,'RiseTime',3e-3,'FallTime', 3e-3); src.Jitter = commsrc.combinedjitter('RandomJitter','on','DiracJitter','on', ... 'DiracDelta',[-5e-04 5e-04],'RandomStd',2e-4);
Сгенерируйте два символа для каждой трассировки.
x = src.generate(numTraces*2);
Передайте сигнал через канал AWGN с фиксированным seed для повторяемых результатов.
randStream = RandStream('mt19937ar','Seed',5489); y = awgn(x,30,'measured',randStream);
Отобразите глазковую диаграмму.
ed(y)
Сгенерируйте горизонтальные данные о ванне для глазковой диаграммы. Постройте кривую.
hb = horizontalBathtub(ed) semilogy([hb.LeftThreshold],[hb.BER],'b',[hb.RightThreshold],[hb.BER],'b') grid
hb = 1x13 struct array with fields: BER LeftThreshold RightThreshold
Сгенерируйте вертикальные данные о ванне для глазковой диаграммы. Постройте кривую.
vb = verticalBathtub(ed) semilogx([vb.BER],[vb.LowerThreshold],'b',[vb.BER],[vb.UpperThreshold],'b') grid
vb = 1x13 struct array with fields: BER UpperThreshold LowerThreshold
Создайте объединенный объект дрожания, имеющий случайное дрожание с 2e-4 стандартным отклонением.
jtr = commsrc.combinedjitter('RandomJitter','on','RandomStd',2e-4);
Сгенерируйте сигнал NRZ, имеющий случайное дрожание и времена взлета и падения на 3 мс.
genNRZ = commsrc.pattern('Jitter',jtr,'RiseTime',3e-3,'FallTime',3e-3); x = generate(genNRZ,2000);
Передайте сигнал через канал AWGN с фиксированным seed для повторяемых результатов.
randStream = RandStream('mt19937ar','Seed',5489); y = awgn(x,30,'measured',randStream);
Создайте объект глазковой диаграммы. Включите измерения.
ed = comm.EyeDiagram('SamplesPerSymbol',genNRZ.SamplesPerSymbol, ... 'SampleRate',genNRZ.SamplingFrequency,'SampleOffset',genNRZ.SamplesPerSymbol/2, ... 'EnableMeasurements',true,'DisplayMode','2D color histogram', ... 'OversamplingMethod','Input interpolation','ColorScale','Logarithmic','YLimits',[-1.2 1.2]);
Чтобы вычислить времена взлета и падения, определите пороги взлета и падения из уровня глаз и амплитудных измерений глаза. Постройте глазковую диаграмму, чтобы вычислить эти параметры.
ed(y)
Передайте сигнал через объект глазковой диаграммы снова, чтобы измерить времена взлета и падения.
ed(y) hide(ed)
Отобразите данные при помощи measurements
метод.
eyestats = measurements(ed); riseTime = eyestats.RiseTime fallTime = eyestats.FallTime
riseTime = 0.0030 fallTime = 0.0030
Измеренные значения совпадают со спецификацией на 3 мс.
Измерения принимают, что объект глазковой диаграммы имеет допустимые данные. Допустимая глазковая диаграмма имеет две отличных точки пересечения глаза и два отличных уровня глаз.
Чтобы открыть панель измерений, нажмите на кнопку Eye Measurements или выберите Tools > Measurements > Eye Measurements из меню панели инструментов.
Для амплитудных измерений по крайней мере один интервал на вертикальную гистограмму должен достигнуть 10 хитов, прежде чем измерения будут проведены, гарантируя более высокую точность.
Для измерений времени по крайней мере один интервал на горизонтальную гистограмму должен достигнуть 10 хитов, прежде чем измерения будут проведены.
Когда глаз, пересекающий измерение времени, находится в пределах [-0.5/Fs, 0), интервал секунд, измерение времени переносится в конец глазковой диаграммы, т.е. измерение переносится 2×Ts секунды (где T s является временем символа). Для комплексного случая сигнала анализировать метод выдает предупреждение, если пересекающееся измерение времени синфазной ветви переносится, в то время как та из квадратурной ветви не делает (или наоборот). Чтобы избежать переноса времени или предупреждения, добавьте задержку длительности полусимвола с текущим значением в MeasurementDelay
свойство объекта глазковой диаграммы. Эта дополнительная задержка меняет местоположение глаза в аппроксимированном центре осциллографа.
Eye level является амплитудным уровнем, используемым, чтобы представлять биты данных. Для отображенного сигнала NRZ уровни составляют-1 В и +1 В. Уровни глаз вычисляются путем усреднения 2D гистограммы в контурах уровня глаз. Например, когда свойство EyeLevelBoundaries установлено в [40 60]
, то есть, 40% и 60% длительности символа, уровни глаз вычисляются путем оценки среднего значения вертикальной гистограммы в этом окне, отмеченном контурами уровня глаз.
Eye amplitude является расстоянием в V между средним значением двух уровней глаз.
Eye height является расстоянием между μ – 3σ верхнего уровня глаз и μ + 3σ более низкого уровня глаз. μ является средним значением уровня глаз, и σ является стандартным отклонением.
vertical opening является расстоянием между двумя точками, которые соответствуют свойству BERThreshold. Например, для порога BER 10–12, эти точки соответствуют 7σ расстояние от каждого уровня глаз.
eye SNR является отношением различия в уровне глаз для различия вертикальных стандартных отклонений, соответствующих каждому уровню глаз:
где L 1 и L 0 представляет средние значения верхних и более низких уровней глаз и σ1, и σ0 представляют свои стандартные отклонения.
Q factor является добротностью и вычисляется с помощью той же формулы в качестве ОСШ глаза. Однако стандартные отклонения вертикальных гистограмм заменяются вычисленными с анализом двойного Дирака.
crossing levels является амплитудными уровнями, на которых происходят пересечения глаза.
Уровень, на котором входной сигнал пересекает амплитудное значение, задан как свойство DecisionBoundary.
crossing times является временами, в которые происходят пересечения. Времена вычисляются как средние значения горизонтали (дрожание) гистограммы.
Eye delay является средней точкой между двумя пересекающимися разами.
Eye width является горизонтальным расстоянием между μ + 3σ левого времени пересечения и μ – 3σ правильного времени пересечения. μ является средним значением гистограммы дрожания, и σ является стандартным отклонением.
horizontal opening является расстоянием между двумя точками, которые соответствуют свойству BERThreshold. Например, для BER 10–12, эти две точки соответствуют 7σ расстояние с каждого раза пересечения.
Rise time является средним временем между невысоким и высотным зданием / осенние пороги, заданные в глазковой диаграмме. Пороги по умолчанию составляют 10% и 90% амплитуды глаза.
Fall time является средним временем между высокими и низкими порогами повышения/падения, заданными в глазковой диаграмме. Пороги по умолчанию составляют 10% и 90% амплитуды глаза.
Дрожание является отклонением события синхронизации сигнала от его намеченного (идеального) вхождения вовремя [2]. Дрожание может быть представлено с моделью двойного Дирака. Модель двойного Дирака принимает, что дрожание имеет два компонента: deterministic jitter (DJ) и random jitter (RJ).
DJ является расстоянием между двумя peaks гистограмм двойного Дирака. Функция плотности вероятности (PDF) DJ состоит из двух функций дельты.
RJ является Гауссовым неограниченным компонентом дрожания. Случайный компонент дрожания моделируется как нулевая средняя Гауссова случайная переменная с заданным стандартным отклонением σ. RJ вычисляется как:
где
BER является заданным порогом BER. ρ является амплитудой левой и правой функции Дирака, которая определяется из количества интервалов гистограмм дрожания.
Total jitter (TJ) является суммой детерминированного и случайного дрожания, такого что TJ = DJ + RJ.
Общее дрожание PDF является сверткой DJ PDF и RJ PDF.
RMS jitter является стандартным отклонением дрожания, вычисленного в горизонтали (дрожание) гистограмма на контуре решения.
Peak-to-peak jitter является максимальным горизонтальным расстоянием между левыми и правыми ненулевыми значениями в горизонтальной гистограмме каждого раза пересечения.
[1] Стивенс, Выкуп. "Анализ дрожания: модель двойного Дирака, RJ/DJ и Q-шкала". Техническое примечание Agilent (2004).
[2] Оу, N., Т. Фарахмэнд, А. Куо, С. Тэбэйтабэеи и А. Иванов. “Модели дрожания для Проекта и Теста Скорости Гбит/с Последовательные Межсоединения”. Проект IEEE и Тест Компьютеров 21, № 4 (июль 2004): 302–13. https://doi.org/10.1109/MDT.2004.34.
Указания и ограничения по применению:
Генерация кода поддержек MEX путем обработки вызовов объекта как значение внешних параметров. Не поддерживает генерацию кода для автономных приложений.
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.