Jump to content
    

DDR Memory Power Consumption

Всем привет!

Задался вопросом об энергопотреблении динамической памяти, конкретно DDR3, DDR3L и LPDDR2. В даташитах, конечно, присутствует обилие информации, можно посчитать. Но это весьма трудоёмкое занятие, да и ошибок наделать можно -- т.е. достоверность результата может оказаться так себе. Пришла в голову мысль, что наверняка есть какие-то калькуляторы, Power Estimator'ы. Погуглил немного, таки да, есть, у того же Micron. Но оно онлайн и требует регистрации, и тут уже простым VPN не обойтись. 

В общем, может есть ещё какие-то варианты на эту тему? Поделитесь, пожалуйста, кто знает?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Сейчас попробую зарегистрироваться и качнуть актуальные файлики.

Share this post


Link to post
Share on other sites

18 минут назад, dxp сказал:

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

См. /pub/DOC/Datasheets/Micron/Power calculators

Share this post


Link to post
Share on other sites

3 минуты назад, makc сказал:

См. /pub/DOC/Datasheets/Micron/Power calculators

Какое богатство! 🙂 Спасибо вам большое!

Share this post


Link to post
Share on other sites

В продолжение темы. 

Собственно, вопрос об энергопотреблении возник, т.к. одним из вариантов будет устройство с автономным питанием, поэтому тут каждый милливатт не лишний. Контроллер памяти SoC аппаратный и поддерживает DDR3, DDR3L, LPDDR2. Пропускная способность интерфейса памяти требуется весьма скромная -- примерно на порядок ниже, чем может обеспечить та же DDR3, и предпочтительнее выкрутить параметры в пользу энергопотребления. Поэтому, в частности, ширину шины предполагается использовать 16 (опции 16 и 32), частоту по минимуму и выбрать тип микросхемы с наименьшим потреблением.

LPDDR2 хороша в плане гораздо более низкого потребления самого контроллера памяти SoC, но этот вариант отталкивает тем, что по сравнению с той же DDR3 это уже почти экзотика, и, кроме того, не нравятся корпуса: это BGA с шагом либо 0.5 мм, либо 0.65 мм с дурацким расположением пинов и намного худшими возможностями для swap'а. У DDR3 нормальные корпуса с 0.8 мм, которые можно запаять в лабораторных условиях просто на флюс-гель, и свопать пины в пределах байт-лейнов можно без ограничений.

А вот 0.5 мм -- это уже надо на пасту, а это значит трафарет, хорошая паста и т.п. -- в общем, в лабораторных условиях тут уже не особо разбежишься. Как дело обстоит с 0.65 мм, не знаю, опыта с таким нет, если у кого-то есть опыт монтажа таких корпусов (BGA 0.65 мм) на ремонтных станциях или в лабораторных печках на флюс-гель, прошу поделиться.

Посмотрел, что получается в калькуляторе. Выходит, что если режим преимущественно чтение, и чтение ненагруженное -- 10% от пропускной, то потребление получается совсем смешным: 37.6 мВт, из которых половина -- это фоновое потребление:

image.thumb.png.d6af6932a3d894d88334180efd58bc32.png

 

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

Посмотрел LPDDR2, и там в таком режиме получилось почему-то потребление неожиданно даже больше (и это при меньшей скорости -- частоты одинаковые, но DDR3 при равной с DDR2 частоте передаёт данных в два раза больше): 43.3 мВт

image.thumb.png.9508675db12c3c7e6fb6fd3bc3f10cf9.png

 

Это что, так и должно быть?

 

 

Share this post


Link to post
Share on other sites

16 hours ago, dxp said:

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

Согласующие последовательные резисторы к потреблению энергии не имеют никакого отношения.

Share this post


Link to post
Share on other sites

1 час назад, _Sergey_ сказал:

Согласующие последовательные резисторы к потреблению энергии не имеют никакого отношения.

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

Share this post


Link to post
Share on other sites

Разница скорее объясняется величиной резисторов и тем, что DDR3 умеет dynamic ODT, а DDR2 нет.

Share this post


Link to post
Share on other sites

20 часов назад, dxp сказал:

И как корректно посчитать потребление на согласующих цепях по шине адресов?

совсем грубо - по закону Ома (с учетом времени считывания)? сам производитель графики (глазковые диаграммы) из симулятора показывает, думается в нём тоже можно.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...