В этом примере показано, как создать спецификацию IEEE 802.3ck основанные на ADC модели IBIS-AMI передатчика и приемника с помощью библиотечных блоков в библиотеке SerDes Toolbox™ и пользовательских блоках, чтобы смоделировать агностический временем ADC. Сгенерированные модели соответствуют стандарту IBIS-AMI. Виртуальный узел выборки, который существует в основанных на ноже системах SerDes, но не существует в основанных на ADC системах SerDes, эмулирован, чтобы допускать виртуальную генерацию глазковой диаграммы в Simulink® и средствах моделирования IBIS-AMI для оценки канала.
Этот пример использует скрипт MATLAB®, чтобы сначала создать Систему SerDes, представляющую передатчик и приемник архитектуры ADC и затем экспортировать в модель SerDes Simulink. Введите эту команду в окне команды MATLAB, чтобы запустить скрипт:
buildSerDesADC
Система SerDes сконфигурирована со следующими атрибутами прежде чем быть экспортируемым в Simulink. Обратите внимание на то, что пользовательские блоки будут функционировать как передачи, пока индивидуальные настройки Simulink, обсужденные позже в примере, не будут применены.
Время символа установлено в 18,8235 пикосекунд, начиная с максимума, допустимого 802.3ck, операционная скорость передачи данных является 106.25Gb/s.
Целевой BER установлен в 1e-4.
Выборки на Символ установлены в 32.
Модуляция установлена в PAM4.
Сигнализация установлена в Дифференциал.
Блок Tx FFE настраивается для 3 предварительных касаний и 1 посткасания включением 5 весов касания.
Блок Tx VGA используется, чтобы управлять амплитудой запуска.
Модель Tx AnalogOut настраивается так, чтобы Напряжение составило 1 В, Время нарастания составляет 6,161 пикосекунд, R (выходное сопротивление) 50 Ом, и C (емкость) 5fF согласно 802.3ck спецификация.
Потеря канала установлена в 15 дБ.
Целевая Частота установлена в частоту Найквиста.
Дифференциальный импеданс сохранен в значении по умолчанию 100 Омами.
Модель Rx AnalogIn настраивается так, чтобы R (входное сопротивление) составил 50 Ом, и C (емкость) равняется 5 и следующие согласно 802.3ck спецификация.
Шумовой пользовательский блок вводит Гауссов шум к форме волны области времени.
Каскад 3 блоков Rx CTLE настраивается для 7, 21, и 1 настройка соответственно. GPZ (Нуль полюса Усиления) матричные данные для каждого выведен из передаточной функции, поданной 802.3ck поведенческая спецификация CTLE.
Пользовательский блок VGA Rx применяет адаптированное усиление.
Блок Saturating Amplifier применяет нелинейность без памяти.
Пользовательский блок ADC квантует сигнал области времени.
Пользовательский Rx FFE имеет 21 касание (3 - пред и касания с 17 посткурсорами), чьи веса будут автоматически вычислены во время глобальной адаптации Rx.
Блок Rx DFECDR настраивается для касаний DFE. Касание DFE ограничивается, чтобы быть +/-0.5-вольтовая амплитуда.
Вторая часть этого примера берет систему SerDes, экспортируемую скриптом, и настраивает его как требуется для основанного на ADC SerDes в Simulink.
Система SerDes, экспортируемая в Simulink, состоит из Настройки, Стимула, Tx, Analog Channel и блоков Rx.
Продвиньте в подсистеме Tx.
Продвиньте в подсистеме Rx.
Модель, экспортируемая из Приложения SerDes, должна быть сначала настроена, чтобы представлять основанный на ADC SerDes Rx путем настройки дополнительных блоков Rx и изменения блочного кода Rx Init.
Шум в подсистеме Rx может быть смоделирован при выходе, или во входе. Вход относился, источник шума формируется последующей эквализацией, подготавливает (CTLE & FFE), и следовательно лучше отражается, как шум формируется действительной системой. С другой стороны, выведите отнесенный шум, не формируется и не получает, как изменение настроек на CTLE и FFE влияет на шум.
Убывайте в блок Pass-Through под названием Шум путем нажатия на стрелку вниз на блоке.
Укажите существующий системный объект на системный объект Noise.m в директории в качестве примера. Смотрите Реализацию Пользовательский CTLE в SerDes Toolbox Блок PassThrough.
В маске системного объекта сконфигурируйте Время Символа, Демонстрационный Интервал и Модуляцию с системными переменными.
Создайте параметр IBIS-AMI в менеджере по IBIS-AMI по блоку Noise под названием NoisePSD с помощью изображенных атрибутов. Значение 8.2e-9 прибывает из стандарта COM. Смотрите Управление Параметры AMI.
Соедините сгенерированный постоянный блок с Шумовым входным портом.
Убывайте в блок Pass-Through под названием VGA.
Укажите существующий системный объект на serdes.VGA системный объект, включенный в SerDes Toolbox.
В маске системного объекта выключите Порт Режима, чтобы обеспечить блок, чтобы быть включенными.
Создайте параметр IBIS-AMI в менеджере по IBIS-AMI по блоку VGA под названием Усиление с помощью изображенных атрибутов.
Соедините сгенерированное чтение хранилища данных, чтобы Получить входной порт. Удалите запись хранилища данных, когда это будет не использовано, потому что значение только обновляется в Init и не временном интервале.
Адаптация VGA является прямой, необходимое усиление вычисляется в Init как отношение целевой импульсной амплитуды по сравнению с максимальным пиковым значением входного ответа импульса. Все же необходимое усиление VGA может отличаться для различных настроек CTLE, следовательно усиление VGA должно будет быть оценено в каждой итерации общего алгоритма, описанного ранее.
Используемая модель ADC является агностическим временем ADC, означая, что каждая точка в симуляции квантуется, а не только в момент выборки. Однако DFE и восстановление тактового сигнала будут все еще только использовать выборки ADC в момент выборки. Агностический временем ADC допускает генерацию эквивалентной формы волны, как замечено в DFE подведение итогов узла: обеспечение конструкции глазковой диаграммы сигнала с репрезентативной высотой и шириной.
Убывайте в блок Pass-Through, названный ADC
Укажите существующий системный объект на системный объект ADC.m в директории в качестве примера.
В маске системного объекта сконфигурируйте Время Символа, Демонстрационный Интервал и Модуляцию с системными переменными.
Убывайте в блок Pass-Through по имени Rx_FFE
Укажите существующий системный объект на serdes.FFE системный объект, включенный в SerDes Toolbox.
В основной вкладке маски системного объекта выключите Порт Режима и выключите, Нормируют Касания. Во вкладке "Дополнительно" сконфигурируйте Время Символа и Демонстрационный Интервал с системными переменными.
Создайте структуру касания в менеджере по IBIS-AMI по блоку Rx_FFE с 3 предшествующими касаниями, 17 касаниями курсора сообщения и изображенными атрибутами.
[zeros(1,3) 1 zeros(1,17)]
Соедините сгенерированное чтение хранилища данных, чтобы Коснуться входного порта Весов. Удалите запись хранилища данных, когда это будет не использовано.
Rx FFE работает с выборочными данными ADC, а не с непрерывной формой волны. Однако во время статистической адаптации, это принято, что все точки формы волны, даже промежуточные выборки данных, доступны. Rx FFE только адаптируется в пользовательском коде пользователя Инита; адаптации помогает обеспеченная функция adaptFFE. Цель адаптации Rx FFE состоит в том, чтобы управлять выходным ответом импульса, учитывая входной ответ импульса, такой, что пред и выборки данных о курсоре сообщения управляются, чтобы обнулить. Это не означает, что импульсный ответ будет нулем кроме в точке курсора. Скорее во многом как синхронизирующая форма волны ISI только управляется, чтобы обнулить в точках выборки данных.
Когда Rx FFE работает с выборочными данными, первый шаг в процессе адаптации, в adaptFFE, должен принять фазу выборки данных для входного ответа импульса. Используемый подход является жадным, чтобы принять, что мы можем обеспечить выборку так, чтобы курсор приземлился на пик входящего импульсного ответа.
Когда Rx FFE, в подсистеме Rx, сопровождается DFE с 1 касанием, Rx FFE не должен обнулять, обеспечивают 1-й курсор сообщения. Скорее Rx FFE должен гарантировать, что 1-й посткурсор находится в пределах области значений эквализации DFE с 1 касанием. Обратите внимание на то, что, если бы сообщение Rx DFE не используется, то цель была бы к нулевой силе всеми пред - и ISI посткурсора.
Учитывая теперь произведенный входной ответ импульса, цель состоит в том, чтобы найти ответ фильтра, который управляет пред - и выборки данных посткурсора, чтобы обнулить, или в случае 1-й выборки курсора сообщения в область значений DFE. Эта задача оптимизации очень тесно связана с решением набора линейных уравнений, где мы должны найти обратную матрицу. Эта матрица, которая должна быть инвертирована, является матрицей, составленной из циркулярного переключенного входа произведенный импульсный ответ. Эта инвертированная матрица, затем умноженная на желаемый выход, предназначается для импульсного ответа: [0, 0, 0, 1, bmax, 0, 0 …] для случая предшественника с 3 касаниями Rx FFE, где этот 1 обозначает позицию курсора и bmax, обозначает максимальную область значений DFE. Необходимые КИХ-коэффициенты фильтра Rx FFE являются продуктом инвертированной, циркулярной переключенной входной матрицы импульсного ответа и желаемого выходного ответа импульса.
Адаптация DFECDR следует за адаптацией Rx FFE. DFECDR является стандартным блоком в тулбоксе SerDes, обратитесь к онлайн-документации для блока DFECDR.
Этот пример использует Александра (скорострельное оружие) детектор фазы, а не детектор фазы скорости в бодах, который обычно используется в основанных на ADC системах SerDes. Этот выбор моделирования упрощает пример, когда детектор фазы скорости в бодах взаимодействовал бы со сходимостью адаптации. Основанные на ADC системы SerDes должны бороться со взаимодействием между точкой блокировки CDR и адаптацией Rx FFE & DFE.
В этом примере адаптация подсистемы Rx выполняется в статистической области: включая коадаптацию CTLE, FFE и DFE, чтобы достигнуть самого лучшего BER, учитывая канал и используемые настройки Tx FFE. Оптимизированные настройки для CTLE и FFE останутся фиксированными во время симуляций временного интервала, в то время как DFE и CDR продолжают адаптироваться во время симуляции временного интервала.
Измените пользовательскую пользовательскую область кода Init с кодом, которому предоставляют пример. Смотрите Глобально Адаптируют Компоненты Приемника Используя Импульсные Метрики Ответа, чтобы Улучшать Производительность SerDes.
Нажмите Refresh Init на диалоговом окне маски Init, чтобы обновить код на основе предыдущих шагов.
Нажмите Show Init на диалоговом окне маски Init, чтобы открыть код Init.
Скопируйте код в adcInitCustomUserCode.m
в рамках директории в качестве примера.
edit adcInitCustomUserCode.m
Вставьте скопированный код незадолго до конца пользовательской пользовательской области кода. Убедитесь, что параметры AMI наверху пользовательской пользовательской области сохраняются. Не изменяйте код вне конца пользовательской пользовательской области.
Статистический алгоритм адаптации обрабатывает импульсную характеристику, хотя каждый из блоков подсистемы Rx, и измеряет получившийся показатель качества импульсной характеристики. Когда это - основанная на ADC система, используемый показатель качества является сигналом к шуму (ОСШ), где шумовая часть также включает невязку пред - и ISI посткурсора.
В общем случае статистическая адаптация Rx продолжит можно следующим образом:
Выбрана начальная установка CTLE
Установка VGA выбрана таким образом, что импульсная амплитуда находится в пределах целевых границ
Rx FFE автоматически настроен так, чтобы ISI в точках выборки данных был минимизирован.
DFE адаптируется, чтобы удалить ISI посткурсора.
ОСШ в точках выборки данных оценен.
Шаги выше повторяются для каждой возможной установки CTLE, отслеживания значений ОСШ для каждой установки. Установка с самым высоким ОСШ выбрана в качестве глобальной точки адаптации.
Посетите диалоговое окно маски блока Stimulus и количество изменения символов к 4 000.
Посетите вкладку экспорта менеджера по IBIS-AMI и обновитесь, Rx игнорируют биты к 2 000. Это и предыдущая модификация гарантируют, что адаптация области времени имеет достаточное количество времени, чтобы сходиться. Большее число символов и игнорирует время, приведет к более реалистическим результатам.
Запустите модель, чтобы симулировать основанную на ADC систему SerDes.
В примере квантование ADC установлено в 6b по умолчанию. Попытайтесь изменить квантование ADC в более низкую сумму, наблюдайте, как форма глаза временного интервала затронута уменьшаемой точностью ADC.
Итоговая часть этого примера берет индивидуально настраиваемую основанную на ADC модель SerDes Simulink и затем генерирует IBIS-AMI совместимая модель: включая исполняемые файлы модели, IBIS и файлы AMI.
Текущий IBIS стандарт AMI не имеет нативной поддержки основанного на ADC SerDes. Текущий стандарт записан для основанных на ноже SerDes, которые содержат узел сигнала, где компенсируемая форма волны сигнала наблюдается. В основанном на ноже SerDes этот узел существует в DFE, прямо перед сэмплером решения. Непрерывная аналоговая форма волны заметна в том узле, который включает эффект всех восходящих эквалайзеров (таких как CTLE) и эквализация из-за DFE, как взвешенное касание и возвратил предшествующие решения. Такой узел подведения итогов не существует в основанном на ADC SerDes, из-за ADC в системе. В действительной основанной на ADC системе SerDes ADC доказывает вертикальный срез хотя глаз в момент выборки. Чтобы эмулировать виртуальный узел, агностический временем ADC используется. Этот ADC квантует каждую точку во входящей аналоговой форме волны на уровне такта симуляции: т.е. . 1/fB/SPS, где SPS является количеством отсчетов на символ и fB, является скоростью в бодах. Rx FFE также обрабатывает входной сигнал как непрерывную форму волны, а не как выборки. Однако Rx FFE применяет одно касание значения в течение тактов СВЕРХЗВУКОВОЙ симуляции. DFE является запасом DFE от SerDes Toolbox и записан для ножа, базирующегося SerDes. Эта цепь сигнала позволяет, чтобы средство моделирования целостности сигнала смогло наблюдать виртуальный глаз в основанной на ADC системе.
Откройте вкладку Export в менеджере SerDes IBIS-AMI диалоговое окно.
Проверьте, что модель Dual выбрана и для Tx и для Настроек Модели AMI Rx. Это создаст исполняемые файлы модели, которые поддерживают и статистический (Init) и временной интервал (GetWave) анализ.
Установите Биты модели Tx игнорировать значение к 5, поскольку существует три касания в Tx FFE.
Установите Биты модели Rx игнорировать значение к 20 000, чтобы позволить достаточному количеству времени для касаний Rx DFE обосновываться во время симуляций области времени.
Установите Модели экспортировать и как Tx и как Rx так, чтобы все файлы были выбраны, чтобы быть сгенерированными (файл IBIS, файлы AMI и файлы DLL).
Нажмите кнопку Export, чтобы сгенерировать модели в директории Target.
FFE | CTLE | DFECDR | VGA | SaturatingAmplifier