В этом примере показано, как создать типовые модели IBIS-AMI передатчика и получателя DDR5 с помощью библиотечных блоков в SerDes Toolbox™. Поскольку сигналы DDR5 DQ двунаправлены, этот пример создает модели Tx и Rx для контроллера. Сгенерированные модели соответствуют спецификации IBIS-AMI.
Первая часть этого примера настраивает и исследует целевую архитектуру передатчика и получателя с помощью блоков, требуемых для DDR5 в приложении SerDes Designer. Система SerDes затем экспортируется в Simulink® для дальнейшей индивидуальной настройки и генерации Модели IBIS-AMI.
Введите следующую команду в командном окне MATLAB®, чтобы открыть ddr5_controller
модель:
>> serdesDesigner('ddr5_controller')
У контроллера есть передатчик DDR5 (Tx) использование канала прямой эквализации (FFE) с 5 касаниями. У контроллера также есть получатель DDR5 (Rx) использование непрерывного времени линейного эквалайзера (CTLE) с 8 предопределенными настройками, автоматическим управлением усилением (AGC) и эквалайзером обратной связи решения (DFE) с 4 касаниями со встроенным восстановлением данных часов.
Время символа установлено в 208.3
PS, начиная с цели операционным уровнем является 4.8
Гбит/с для DDR5-4800.
Целевой BER установлен в 100e-18
.
Сигнализация установлена в Single-ended
.
Выборки на Символ и Модуляция сохранены в значениях по умолчанию, которые являются соответственно 16
и NRZ
(не возвратитесь к нулю), соответственно.
Блок Tx FFE настраивается для одного предварительного касания, одного основного касания и трех посткасаний включением пяти весов касания. Это сделано с массивом [0 1 0 0 0], где основное касание задано самым большим значением в массиве. Коснитесь области значений будут добавлены позже в примере, когда модель будет экспортирована в Simulink.
Модель Tx AnalogOut настраивается так, чтобы Напряжением был 1.1
V, Временем нарастания является 100
PS, R (выходное сопротивление) является 50 o
HMS и C (емкость) является 0.65
pF. Фактические аналоговые модели, используемые в итоговой модели, будут сгенерированы позже в этом примере.
Потеря канала установлена в 5
дБ, который типичен для каналов DDR.
Несимметричный импеданс установлен в 40
Омы.
Целевая Частота установлена в 2.4
GHz, который является частотой Найквиста для 4,8 ГГц
Модель Rx AnalogIn настраивается так, чтобы R (входное сопротивление) был 40
Омами и C (емкость) является 0.65
pF. Фактические аналоговые модели, используемые в итоговой модели, будут сгенерированы позже в этом примере.
Блок CTLE настраивается для 8
настройки. Спецификация установлена в DC Gain and AC Gain
. Усиление DC установлено в [0 -1 -2 -3 -4 -5 -6 -7]
дБ. Худая частота установлена в 2.4
GHz. Все другие параметры сохранены в их значениях по умолчанию.
Блок AGC имеет Целевое напряжение RMS по умолчанию 0.3
Вольты.
Блок DFECDR настраивается для четырех касаний DFE включением четырех Начальных наборов весов касания к 0. Минимальное значение касания установлено к [-0.2 -0.075 -0.06 -0.045]
V и Максимальное значение касания установлен в [0.05 0.075 0.06 0.045]
V.
Используйте кнопку SerDes Designer Add Plots, чтобы визуализировать результаты настройки Контроллера DDR5.
Добавьте, что график BER от Добавляет Графики и наблюдает результаты.
Добавьте, что Импульсный График отклика от Добавляет Графики и изменение масштаба в импульсную область, чтобы наблюдать результаты.
Нажмите Save и затем нажмите на кнопку Export, чтобы экспортировать настройку в Simulink для дальнейшей индивидуальной настройки и генерации исполняемых файлов модели AMI.
Вторая часть этого примера берет систему SerDes, экспортируемую приложением SerDes Designer, и настраивает его как требуется для DDR5 в Simulink.
Система SerDes, импортированная в Simulink, состоит из Настройки, Стимула, Tx, Analog Channel и блоков Rx. Все настройки из приложения SerDes Designer были переданы модели Simulink. Сохраните модель и рассмотрите каждую настройку блока.
Дважды кликните Блок Configuration, чтобы открыть диалоговое окно Block Parameters. Значения параметров в течение времени Символа, Выборок на символ, Целевой BER, Модуляцию и Сигнализацию перенесены из приложения SerDes Designer.
Дважды кликните блок Stimulus, чтобы открыть диалоговое окно Block Parameters. Можно установить PRBS (псевдослучайная двоичная последовательность) порядок и количество символов симулировать. Этот блок не перенесен из приложения SerDes Designer.
Дважды кликните блок Tx, чтобы посмотреть в подсистеме Tx. Подсистеме перенесли блок FFE из приложения SerDes Designer. Блок Init также введен, чтобы смоделировать статистический фрагмент модели AMI.
Дважды кликните блок Analog Channel, чтобы открыть диалоговое окно Block Parameters. Значения параметров для Целевой частоты, Потери, Импеданса и параметров Аналоговой модели Tx/Rx перенесены из приложения SerDes Designer.
Дважды кликните на блоке Rx, чтобы посмотреть в подсистеме Rx. Подсистема имеет CTLE, AGC и блоки DFECDR, перенесенные из приложения SerDes Designer. Блок Init также введен, чтобы смоделировать статистический фрагмент модели AMI.
Запустите модель, чтобы симулировать систему SerDes.
Сгенерированы два графика. Первым является живой временной интервал (GetWave) глазковая диаграмма, которая обновляется, когда модель запускается.
После того, как симуляция завершилась, второй график содержит четыре представления статистического (Init) результаты, похожие на то, что доступно в приложении SerDes Designer.
В подсистеме Tx дважды кликните блок FFE, чтобы открыть диалоговое окно FFE Block Parameters.
Веса Касания перенесены из приложения SerDes Designer.
В подсистеме Rx дважды кликните блок CTLE, чтобы открыть диалоговое окно CTLE Block Parameters.
Усиление DC, усиление AC и Худая частота перенесены из приложения SerDes Designer.
Режим CTLE установлен в Adapt
, что означает, что алгоритм оптимизации, встроенный в системный объект CTLE, выбирает оптимальную настройку CTLE во время выполнения.
В подсистеме Rx дважды кликните блок AGC, чтобы открыть диалоговое окно AGC Block Parameters.
Целевое напряжение RMS перенесено из приложения SerDes Designer.
Максимальное усиление установлено в 10
и Усреднение длины (количество битов, по которым вычисляется среднее значение) установлено в 100
. Эти значения разумны для типовых моделей контроллеров.
В подсистеме Rx дважды кликните блок DFECDR, чтобы открыть диалоговое окно DFECDR Block Parameters.
Начальные веса касания, Минимальное значение касания DFE и Максимальные настройки RMS значения касания перенесены из приложения SerDes Designer. Адаптивное усиление и Адаптивный размер шага установлены в 3e-06
и 1e-06
, соответственно, которые являются рыночной стоимостью на основе ожиданий Контроллера DDR5.
Расширьте параметры IBIS-AMI, чтобы показать список параметров, которые будут включены в модель IBIS-AMI.
Отмените выбор смещения Фазы и Ссылочного смещения, чтобы удалить эти параметры из файла AMI, эффективно жесткое кодирование эти параметры к их текущим значениям.
Итоговая часть этого примера берет индивидуально настраиваемую модель Simulink, изменяет параметры AMI для Контроллера DDR5, и затем генерирует "ИБИСА AMI совместимые" исполняемые файлы Моделей контроллеров DDR5, IBIS и файлы AMI.
Откройте диалоговое окно Block Parameter для Блока Configuration и нажмите на кнопку Open SerDes IBIS-AMI Manager. Во вкладке IBIS в менеджере SerDes IBIS-AMI диалоговое окно значения аналоговой модели преобразованы в стандартные параметры IBIS, которые могут использоваться любым средством моделирования промышленного стандарта.
Откройте вкладку AMI-Tx в менеджере SerDes IBIS-AMI диалоговое окно. Зарезервированные параметры перечислены сначала сопровождаемые параметрами модели специфичными, придерживающимися формата типичного файла AMI.
Подсветите TapWeight-1
Нажмите Edit..., чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.2
, и Max = 0.2
.
Нажмите ОК, чтобы сохранить изменения.
Подсветите TapWeight 0.
Нажмите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 1
, Min = 0.6
, и Max = 1
.
Нажать ОК.
Подсветите TapWeight 1.
Выберите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.2
, и Max = 0.2
.
Нажать ОК.
Подсветите TapWeight 2.
Выберите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.1
, и Max = 0.1
.
Нажать ОК.
Подсветите TapWeight 3.
Выберите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.1
, и Max = 0.1
.
Нажать ОК.
Откройте вкладку AMI-Rx в менеджере SerDes IBIS-AMI диалоговое окно. Зарезервированные параметры перечислены сначала сопровождаемые параметрами модели специфичными, придерживающимися формата типичного файла AMI.
Подсветите TapWeight 1.
Нажмите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.2
, и Max = 0.05
.
Нажать ОК.
Подсветите TapWeight 2.
Нажмите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.075
, и Max = 0.075
.
Нажать ОК.
Подсветите TapWeight 3.
Нажмите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.06
, и Max = 0.06
.
Нажать ОК.
Подсветите TapWeight 4.
Нажмите Edit … кнопка, чтобы запустить диалоговое окно Add/Edit Parameter.
Убедитесь, что Формат собирается Расположиться и установить Typ = 0
, Min = -0.045
, и Max = 0.045
.
Нажать ОК.
Чтобы добавить параметры Дрожания для модели Rx нажимают Jitter & Noise... кнопка, чтобы поднять диалоговое окно Rx Jitter&Noise, выбрать Rx_Receiver_Sensitivity, Rx_Clock_Recovery_DCD, поля Rx_Clock_Recovery_Dj и Rx_Clock_Recovery_Rj и нажать ОК, чтобы добавить эти параметры в раздел Reserved Parameters файла AMI Rx. Следующие области значений позволяют вам подстраивать значения дрожания, чтобы удовлетворить требования маски дрожания DDR5.
Выберите Rx_Receiver_Sensitivity, затем нажмите Edit... кнопка, чтобы поднять Добавлять/Редактировать диалоговое окно Параметра AMI.
Установите текущее значение к 0.04
Измените формат в Value
.
Нажмите ОК, чтобы сохранить изменения.
Выберите Rx_Clock_Recovery_DCD, затем нажмите Edit... кнопка, чтобы поднять Добавлять/Редактировать диалоговое окно Параметра AMI.
Установите текущее значение к 0.0125
Измените тип в UI
.
Измените формат в Value
.
Нажмите ОК, чтобы сохранить изменения.
Выберите Rx_Clock_Recovery_Dj, затем нажмите Edit... кнопка, чтобы поднять Добавлять/Редактировать диалоговое окно Параметра AMI.
Установите текущее значение к 0.0175
Измените тип в UI
.
Измените формат в Value
.
Нажмите ОК, чтобы сохранить изменения.
Выберите Rx_Clock_Recovery_Rj, затем нажмите Edit... кнопка, чтобы поднять Добавлять/Редактировать диалоговое окно Параметра AMI.
Установите текущее значение к 0.00375
Измените тип в UI
.
Измените формат в Value
.
Нажмите ОК, чтобы сохранить изменения.
Откройте вкладку Export в менеджере SerDes IBIS-AMI диалоговое окно.
Обновите имя модели Tx к ddr5_controller_tx
Обновите имя модели Rx к ddr5_controller_rx
Обратите внимание на то, что угловой процент Tx и Rx установлен в 10
. Это масштабирует минимальные/максимальные угловые значения аналоговой модели +/-10%.
Проверьте, что модель Dual выбрана и для Tx и для настроек модели Rx AMI. Это создает исполняемые файлы модели, которые поддерживают и статистический анализ (Init) и временной интервал (GetWave) симуляция.
Установите Биты модели Tx игнорировать к 5
с тех пор в Tx FFE существует пять касаний.
Установите Биты модели Rx игнорировать к 250000
позволить достаточное количество времени для Rx DFE касается, чтобы обосноваться во время симуляций области времени.
Проверьте, что и Tx и Rx собираются экспортировать и что все файлы были выбраны, чтобы быть сгенерированными (файл IBIS, файл (файлы) AMI и файл (файлы) DLL).
Установите имя файла IBIS на temp_ddr5_controller.ibs
Нажмите кнопку Export, чтобы сгенерировать модели в директории Target.
Чтобы разместить различную топологию, загружая настройки, скорости передачи данных и передачи, DDR5 требует, чтобы переменная выходная сила диска и вход на - умерли завершение (ODT). В то время как та же алгоритмическая модель AMI используется, несколько аналоговых моделей требуются, чтобы покрывать все эти варианты использования. Генерация этих аналоговых моделей вне осциллографа для этого примера, таким образом, завершенный файл IBS со следующими аналоговыми моделями в нем доступен в текущей директории в качестве примера:
ПОД11_АЙО_ЗО50_ОДТОФФ: выходной импеданс на 50 Ом без входа ODT.
POD11_IN_ODT40_C: Введите с ODT на 40 Ом.
POD11_IN_ODT60_C: Введите с ODT на 60 Ом.
Чтобы сгенерировать этот полный файл IBIS, следующие изменения были внесены в temp_ddr5_controller.ibs с помощью текстового редактора:
Созданный один контакт с signal_name DQ1_controller и model_name dq.
Измененный драйвер Model_type на ввод-вывод и названный им ПОД11_АЙО_З050_ОДТОФФ.
Добавленный две модели получателя и названный ими POD11_IN_ODT40_C и POD11_IN_ODT60_C, соответственно.
Добавленный VI кривых и Алгоритмическая Модель разделяет ко всем вышеупомянутым моделям.
Добавленный Селектор Модели разделяет, это ссылается на вышеупомянутые модели.
Модели IBIS-AMI передатчика и получателя DDR5 теперь завершены и готовы быть протестированными в любом промышленном стандарте средство моделирования модели AMI.