HyperLynx DDR: полезные советы для анализа памяти QDR4

10/2018

Quad Data Rate (QDR-IV) является стандартом высокопроизводительной памяти для сетевых применений и идеально подходит для нового поколения сетевых устройств, коммуникационного оборудования и вычислительных систем.

QDR-IV SRAM-память имеет встроенный блок обнаружения и коррекции ошибок (ECC), обеспечивающий целостность данных. Этот блок способен обработать все одноразрядные ошибки памяти, в том числе, вызванные космическими лучами и альфа-частицами. В результате модули памяти будут иметь коэффициент ошибок программ (SER) не более 0.01 сбоев/МБ. QDR-IV снабжена функцией программируемой чётности адреса, которая обеспечивает целостность данных на адресной шине.

Отличительные особенности QDR SRAM памяти:

  • Встроенный модуль коррекции ошибок обеспечивает целостность данных и исключает программные ошибки
  • Модули доступны в двух версиях: QDR-IV HP (скорость передачи данных 1334 Мтранз/с) и QDR-IV XP (скорость передачи данных 2132 Мтранз/с)
  • Два независимых двунаправленных порта данных памяти DDR1
  • Функция инверсии шины для снижения шумов при одновременном подключении линий ввода и вывода
  • Встроенная схема согласования (ODT) снижает сложность плат
  • Тренинг на перекос для улучшения временных характеристик захвата сигнала
  • Уровень сигналов ввода-вывода: от 1.2В до 1.25В (высокоскоростная приёмопередающая логика (HSTL)/терминированная логика (SSTL)), от 1.1В до 1.2В (POD2)
  • 361-выводной корпус FCBGA3
  • Разрядность шины: x18, x36 бит

Введение

DDRx Wizard является простым в использовании инструментом в HyperLynx, который позволяет в пакетном режиме контролировать временные осциллограммы и проводить анализ целостности сигнала стандартных протоколов DDR JEDEC. DDRx Wizard может быть запущен как на этапе пред топологического анализа по сценарию «что, если», так и на полностью оттрассированной плате. Кроме того, инструмент позволяет импортировать большинство форматов моделей, созданных крупными поставщиками микросхем.

DDRx Wizard позволяет проверить все биты шины памяти на соответствие целостности сигнала, а также на соответствие требованиям синхронизации между сигналами. В этой статье будет подробно представлено использование интерактивного помощника для анализа проектов, реализующих протокол QDR4 (рис.1).

Внутренняя архитектура QDR на примере модуля CY7C4142KV13
Рис. 1. Внутренняя архитектура QDR на примере модуля CY7C4142KV13

Первый взгляд на QDR-IV в HyperLynx DDRx WIZARD

Протокол QDR-IV определяет две однонаправленных пары сигнала строба данных: один для считывания данных, другой для записи, которые поддерживают независимую друг от друга работу и одновременные операции считывания и записи, причем порты могут работать на разных частотах (рис. 2). Таким образом, риск сбоя работы полностью исключен.

Наличие раздельных портов считывания и записи в архитектуре QDR SRAM
Рис. 2. Наличие раздельных портов считывания и записи в архитектуре QDR SRAM

Для этого протокола DDRx Wizard будет использовать отдельные стробы для операций чтения и записи данных. QDR IV обычно реализуется с помощью x36 или x18 разрядной шины (см. рис.3а и 3б).

x36 и x18 разрядной шины

DDRx Wizard позволяет проводить моделирование QDR-IV в три этапа:

  • Проверка чтения данных
  • Проверка записи данных
  • Проверка шины адреса/управления


В виду того, что проверку шины адреса/управления можно проводить независимо от проверок чтения/записи данных, это может сэкономить вам время, за счет совмещения этого этапа с любым из этапов тестирования данных. Далее описаны все три сценария данных тестов.

Технологические особенности

QDR-IV поддерживает технологию псевдо открытый сток (POD) и терминирующую логику Stub Series Terminated Logic (SSTL) (рис. 4).

Рис. 4. Различия POD и SSTL
Рис. 4. Различия POD и SSTL

Независимо от используемого стандарта логики, выберите LPDDR3 в качестве технологии (рис. 5), так как тут нет поддержки Vref training, как в случае с модулем DDR4’s POD. Вместо этого здесь используются фиксированные значения Vref и Vinh/Vinl, аналогичные DDR3 и LPDDR3. Поскольку QDR-IV использует двойную скорость передачи данных для адресных сигналов, подобных LPDDR3, рекомендуется выбрать эту опцию. Далее введите скорость передачи пользовательских данных, например, 1866 MT/s или 2133 MT/s, где MT/s – число мегатранзакций в секунду (megatransfers per second).

Выбор стандарта логики xDDR
Рис. 5. Выбор стандарта логики

Сигнал данных: операция чтения

Для операций чтения сигнала данных DRAM будет управлять сигналами DQ совместно с дифференциальными стробами сигналами QK. Таким образом, настройка фокусируется на операции чтения данных, и назначает нужные цепи (сигналы) к соответствующему QK стробу.
В разделе Nets to Simulate (рис. 6), установите галочку «Только циклы чтения» (Read Cycles Only). Чекбоксы Clock-to-strobe и Address checks не являются обязательными.

Также, проверьте установку чекбокса Compensate signal launch skews to account for variations in time-to-Vmeasure.

HyperLynx DDR Wizzard: чтение данных
Рис. 6. Чтение данных

Убедитесь в том, что выбраны все необходимые стробы данных (рис. 7).

В разделе Data Nets, проверьте правильность соответствия сигналов каждому стробу. Обратите внимание, что для х18 и х36 разрядных шин сигналы отличаются, поэтому убедитесь в правильности распиновки конкретно под ваш случай (рис. 8а и 8б).

HyerLynx DDR: чтение строба данных
Рис. 7. Чтение строба данных
HyperLynx DDR: Группа сигналов для 36-разрядной шины
Рис. 8a. Группа сигналов для 36-разрядной шины
HyperLynx DDR: Группа сигналов для 18-разрядной шины
Рис. 8б. Группа сигналов для 18-разрядной шины

Проверка параллельных шин обычно выполняется установкой/выдержкой времени между стробом и сигналом. Все эти требования, в дополнение к другим временным значениям, необходимы мастеру DDRx Wizard для проверки результатов. Эти значения могут отличаться от микросхемы к микросхеме, поэтому рекомендуется вводить значения, применимые к конкретному устройству памяти. Кроме того, информация о тайминге по умолчанию для LPDDR3 несовместима с QDR-IV. Итак, вся информация по таймингам для QDR-IV должна быть введена и соответствовать документации на вашу микросхему.

Это можно сделать либо с помощью мастера синхронизации (Timing Wizard) (рис. 9), который предлагает пользователю заполнить несколько форм для последующей генерации временных значений либо можете отредактировать .V -файлы синхронизации, соответствующие вашему контроллеру и DRAM.

HyperLynx DDR: настройка значений тайминга
Рис. 9. Настройка значений тайминга

Обратите внимание: поскольку моделирование выполняется в режиме LPDDR3, то и результаты должны быть интерпретированы соответствующим образом.

Сигнал данных: операция записи

Операция записи данных и ее анализ подобен анализу для операции чтения, описанному выше. Но есть два ключевых отличия, которые мы сейчас рассмотрим. За исключением этих двух нюансов, шаги, выполняемые для операции чтения данных, можно повторить для симуляции записи данных.

В разделе Nets to Simulate (рис. 10) убедитесь, что выбран параметр Write Cycles Only.

Также существует возможность имитировать операции записи адресного сигнала (Address Signal write Operations). И не забудьте убедиться, что установлен флажок Compensate Skew Launch to account for variations in time-to-Vmeasure checked.

HyperLynx DDR: Запись данных
Рис. 10. Запись данных

Убедитесь, что в разделе Data Strobe выбраны правильные стробы (рис. 11). Ключевое различие между транзакцией чтения и транзакцией записи — это строб, используемый для синхронизации данных, этот строб отличается от строба, используемого для операции чтения данных (рис. 12 и 13).

HyperLynx DDR Стробы данных записи
Рис. 11. Стробы данных записи
HyerLynx DDRx группы сигналов строба записи (36-разрядной шины)
Рис. 12. Группы сигналов строба записи (36-разрядной шины)

Mentor HyperLynx DDRx: группы сигналов строба записи (18-разрядной шины)
Рис. 13. Группы сигналов строба записи (18-разрядной шины)

Шина адреса, команд и управления

QDR-IV использует дифференциальные клоки CK/CK# для выбора сигналов управления, адреса и командных сигналов. Передний фронт сигнала CK используется для ввода информации о порте A, а задний — для отбора информации о порте B.

Принимая во внимание обеспечение целостности сигнала, осциллограммы для адресных линий должны соответствовать требованиям к установке и задержкам, как переднего, так и заднего фронта тактового сигнала. Это очень похоже на поведение LPDDR3.

Сигналы LDA#, LDB#, RWA# и RWB# синхронизируются с одной скоростью передачи данных (single-data-rate). Значит, эти сигналы синхронизируются только на одном из двух фронтов тактовых импульсов. Сигналы LDA# и RWA# синхронизируются по нарастающему фронту синхроимпульса, а сигналы LDB# и RWB# — по спадающему фронту.

Клоки в значительной степени симметричны — передний дифференциальный фронт не сильно отличается от заднего. Это означает, что для обеспечения целостности сигналов, значения тайминга для LDB# и RWB# должны быть почти одинаковыми, если не идентичными при выборке на переднем или заднем фронте синхросигнала. Сигналы управления LPDDR3 синхронизируются так же только по переднему фронту.

Следующие шаги специфичны для моделирования шин адреса, команд и управления при использовании QDR-IV.

Убедитесь, что В разделе Nets to Simulate установлен флажок Address, Command and Control timing (relative to clocks) (рис. 14).

HyperLynx DDR: Установите флажок Address, Command and Control timing
Рис. 14. Установите флажок Address, Command and Control timing

В разделе Clock Nets удостоверьтесь в том, что выбрана дифференциальная пара тактовых сигналов CK/CK# (рис 15).

HyperLynx DDR: Выбор дифференциального синхросигнала
Рис. 15. Выбор дифференциального синхросигнала

В разделе Addr/Comm Nets убедитесь, что биты А [20:0] выбраны для устройств с разрядностью x36, а биты А [19:0] — для устройств с разрядностью x18. Кроме того, задайте сигналы AP и AINV(рис. 16 и 17).

HyperLynx DDRx: Настройки для х36-битных шин
Рис. 16. Настройки для х36-битных шин
HyperLynx DDRx: Настройки для х18-битных шин
Рис. 17. Настройки для х18-битных шин

В разделе Control Nets выберите сигналы LDA#, LDB#, RWA# и RWB# (Рис. 18).

HyperLynx DDR: Сигналы управления
Рис. 18. Сигналы управления

Как и в случае моделирования сигнала данных, убедитесь, что вы используете правильные файлы с параметрами тайминга. Остальная часть моделирования и оценки результатов аналогична LPDDR3.

Автор: Богдан Филипов менеджер по продукту PADS, Mentor Graphics, АО «Нанософт

Подробнее о HyperLynx: https://www.cad-is.ru/hyperlynx

По вопросам приобретения, бесплатного тестирования и любым вопросам, пожалуйста, обращайтесь: 📨  info@cad-is.ru 📞 7 495 740 05 10 или через форму: https://www.cad-is.ru/forms/price