реклама на сайте
подробности

 
 
> MIG 7-series энергопотребление, Высокое энергопотребление ядра MIG
Inanity
сообщение Jan 2 2015, 01:13
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653



Здравствуте!

В устройстве применяется Artix-7 XC7A50TCSG325-2L. К ней подключены 2 микросхемы DDR3L (4Gb x8), запитаны от 1.5в (при возможных 1.35в). Соответственно предполагалось иметь 2 контроллера MIG для каждой памяти. Для тестов была пока запаяна только одна микросхема DDR3L. Инициализацию память проходит, memorytest тоже (тест прогонялся примерно 1 час).

Ситуации:
1. ПЛИС с включенным питанием без конфигурации потребляет ~0.7W (темп-ра кристалла ~45град)
2. ПЛИС с проектом microblaze (Helloworld в бесконечном цикле) ~0.9W (темп-ра кристалла ~52град)
3. ПЛИС с проектом microblaze + одна DDR3L (MemoryTest в бесконечном цикле) ~ 2.0W(!) (темп-ра кристалла ~82град!)
Сразу скажу, что даже в таких диких условиях память корректно работает. Однако, температура кристалла и энергопотребление никак не сопоставляется с тем, что
обещал XPE и тем, что было спрогнозировано компилятором:
>>Total On-chip Power 0.78W
>>Junction Temperature 28.7 град
Проверял напряжение всех линий питания под нагрузкой и без - всё в порядке.

Я нахожу ситуацию №3 неадекватной. Я не первый, кто столкнулся с этой проблемой, однако решения ей пока в сети не нашёл:
раз два три

Прикладываю конфиг MIGa для одной из DDR3L:

Цитата
MIG Output Options:
Module Name : SoC_my_mig_7series_0_0
No of Controllers : 1
Selected Compatible Device(s) : xc7a35t-csg325

FPGA Options:
System Clock Type : No Buffer
Reference Clock Type : No Buffer
Debug Port : OFF
Internal Vref : enabled
IO Power Reduction : ON
XADC instantiation in MIG : Enabled

Extended FPGA Options:
DCI for DQ,DQS/DQS#,DM : enabled
Internal Termination (HR Banks) : 40 Ohms

/*******************************************************/
/* Controller 0 */
/*******************************************************/
Controller Options :
Memory : DDR3_SDRAM
Interface : AXI
Design Clock Frequency : 2500 ps ( 0.00 MHz)
Phy to Controller Clock Ratio : 4:1
Input Clock Period : 10000 ps
CLKFBOUT_MULT (PLL) : 8
DIVCLK_DIVIDE (PLL) : 1
VCC_AUX IO : 1.8V
Memory Type : Components
Memory Part : MT41K512M8XX-125
Equivalent Part(s) : MT41K512M8RH-125
Data Width : 8
ECC : Disabled
Data Mask : enabled
ORDERING : Normal

AXI Parameters :
Data Width : 64
Arbitration Scheme : RD_PRI_REG
Narrow Burst Support : 0
ID Width : 1

Memory Options:
Burst Length (MR0[1:0]) : 8 - Fixed
Read Burst Type (MR0[3]) : Sequential
CAS Latency (MR0[6:4]) : 6
Output Drive Strength (MR1[5,1]) : RZQ/6
Controller CS option : Enable
Rtt_NOM - ODT (MR1[9,6,2]) : RZQ/6
Rtt_WR - Dynamic ODT (MR2[10:9]) : Dynamic ODT off
Memory Address Mapping : BANK_ROW_COLUMN


Что пробовал сделать:
1. Первоначально думал, что проблема с памятью. Благо запаял для тестов только одну микр-му. Сконфигал ядро на работу с незапянной памятью и наблюдал такое же высокое потребление. (стало быть дело в MIG?)
2. Пробовал отключать терминирование DQ\DSQ на ПЛИС - не помогло. Кстати работать не перестало, память всё так же инициализируется и проходит memorytest.
3. Версия ПЛИС с индексом -2L позволяет гонять её при напряжении ядра 0.9v. Что соответственно и сделал (1.0v -> 0.9v). Это помогло на ~10% снизить энергопотребление, но проблему не решило.

Заметил следующую одну очень странную особенность: ПЛИС зашита конфигурацией, но кода microblaze нет (ничего не гоняется и по идее DDR3 неактивна, кроме, наверное refresh). После загрузки кода, и запуска проекта (memorytest), потребление НЕ изменяется!! Тогда вопрос, чем занят MIG всё то время, когда я к нему не обращаюсь? Насколько это нормальное поведение контроллера? И почему вообще это ядро так много потребляет?

Сразу скажу, что решить проблему активным охлаждением в моём случае невозможно. Единственно, что возможно - пассивное охлаждение, но рассчитывать на него не хочется.

Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Inanity
сообщение Jan 4 2015, 05:06
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653



Благодарю всех за активное участие, постараюсь ответить на все вопросы по порядку:

TO Bad0512:

Цитата(Bad0512 @ Jan 3 2015, 20:01) *
1. Проверить хотя бы на ещё одной плате необходимо чтобы исключить вариант того, что вы каким-то непонятным образом спалили ПЛИС

Да, скорее всего так и поступлю.

Цитата(Bad0512 @ Jan 3 2015, 20:01) *
3. Если схема ваша позволяет это сделать, то неплохо бы отдельно померить потребление ДДР и банков ПЛИС, которые к ДДР идут. Дабы понять кто всё-таки кушает ток. Если не позволяет - тогда увы.

Боюсь, что не получится, нет возможности замерить отдельно эту линию питания. Да, EMI полезная вещь, но она у меня только на VCCAUX.

Цитата(Bad0512 @ Jan 3 2015, 20:01) *
4. Можно ещё понизить частоту MIG до минимально возможной чтобы понять, является ли это адское потребление статическим или же динамическим (т.е. зависимым от частоты переключения).

Да, буду пробовать это делать. Минимум, который позволяет MIG - 303.25Mhz (какая-то кривая частота правда, 3300ps).

Цитата(Bad0512 @ Jan 3 2015, 20:01) *
5. Собрать ваш дизайн под другое железо (AC701 например) и сравнить потребление.

На AC701 пробовали, правда там so-dimm. А толку? Непонятно как на этой плате потребление линий питания замерить. Там вроде стоит монитор питания от TI, но вроде как чтобы к нему подключиться нужен хитрый программатор USB-to-GPIO adapter, которого нет... Схема на него есть, можно, конечно, собрать или купить, но в наличии его нигде не находил в Москве, а везти долго и сложно, тем более в наше время. А так, плата работает, чип голый, не греется (40-42град).


TO Flood:
Цитата(Flood @ Jan 3 2015, 22:48) *
Есть вариант собрать MIG без процессорной подсистемы - в простом, не embedded маршруте.

Да, знаю, вы о Traffic generetor-е говорите. Это первое, что пробовал. Через ILA смотрел - калибровку проходит, error-ов ни при инициализации, ни при последующей работе нет. Кстати, этот дизайн у меня потребляет 1.55W (ПЛИС + DDR3). А XPE насчитал 0.745W для ПЛИС + примерно 0.25W для DDR3 (моя оценка). Итого где-то на 0.5 вата перебор. Кто-то писал писал про неэффективноcть dc-dc на малых токах, это так, но на плате стоят dc-dc от Enpirion, у них практически у всех 90% начиная с 0.1А.

Цитата(Flood @ Jan 3 2015, 22:48) *
Заодно можно будет повторить тест на 1,35В и оценить разницу.

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

Цитата(Flood @ Jan 3 2015, 22:48) *
Например, подключение незадействованных пинов (например, половину к питанию, половину к земле, как советуют для железобетонных проектов) может сыграть неприятную шутку, если в топе проекта найдутся неиспользованные выходы. Маппер положит их куда-нибудь и, если брошенный выход с нулем попадет на подключенную к питанию ножку, неприятные эффекты будут обеспечены.

Совет для железобетонных проектов принял к сведению, но как это объясняется? По поводу маппера - в курсе, неподключенных пинов не оставляю. Незадействованные пины пробовал подтягивать на 0 и оставлять в Z. Результата нет.


TO RobFPGA:

Цитата(RobFPGA @ Jan 3 2015, 23:56) *
А посмотрите в editore как у Вас idelayctrl используются?


Судя по Report Utilization использован один idelayctrl для одного ядра MIG.


TO VladimirB:

Цитата(VladimirB @ Jan 4 2015, 00:07) *
1) XPE это прикольная тулза - но там есть волшебный параметр ToggleRate, который по умолчанию 12.5% стоит, и если его поменять, например, на 100%, то потребление возрастёт в 8 раз. Вот весь вопрос в том каким вы его задавали в XPE и какой он у вас на самомо деле? К тому же
потребление растёт с температурой: посмотрите какое потребление вам выдаст XPE при 82градусах.


ToggleRate всегда задаю 50% при симуляции. (100% совсем перебор).
Давайте так. Проект с microblaze + одна DDR3:

Верхний скрин - при температуре окр.среды - 25гр. Нижняя - ручная установка на 82град.
Кому интересно, прикладываю XPE проекта:
Прикрепленный файл  powercon.txt ( 25.67 килобайт ) Кол-во скачиваний: 182

(расширение на xpe надо менять)

Сообщение отредактировал Inanity - Jan 4 2015, 05:08
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Jan 4 2015, 21:46
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Inanity @ Jan 4 2015, 08:06) *
Благодарю всех за активное участие, постараюсь ответить на все вопросы по порядку...
...
Да, знаю, вы о Traffic generetor-е говорите. Это первое, что пробовал. Через ILA смотрел - калибровку проходит, error-ов ни при инициализации, ни при последующей работе нет. Кстати, этот дизайн у меня потребляет 1.55W (ПЛИС + DDR3). А XPE насчитал 0.745W для ПЛИС + примерно 0.25W для DDR3 (моя оценка). Итого где-то на 0.5 вата перебор. Кто-то писал писал про неэффективноcть dc-dc на малых токах, это так, но на плате стоят dc-dc от Enpirion, у них практически у всех 90% начиная с 0.1А.
...


Хорошо, а потребление терминирующих резисторов 50Ом_to_VTT считали? У меня по расчётам получилось 20 резисторов 50Ом рассеивают 0.2Вт.
(0.867+0.25+0.2)/0.9 = 1.46Вт - уже близко к вашему реальному
А остальные элементы на плате ничего не потребляют? Кварцевый генератор, например?
LDO совсем нету? А VTT формируете импульсником?
Go to the top of the page
 
+Quote Post
akorud
сообщение Jan 9 2015, 09:32
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 203
Регистрация: 12-11-10
Из: Poland
Пользователь №: 60 842



Цитата
но на плате стоят dc-dc от Enpirion

Немного не в тему, но пользуясь случаем спрошу - как они? А то нас тут убеждают, что лучше ничего нет sm.gif , мы в общем-то и не против попробовать на следующей плате.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Inanity   MIG 7-series энергопотребление   Jan 2 2015, 01:13
- - des00   я бы для проверки сделал большой сдвиговый регистр...   Jan 2 2015, 07:18
- - Dr.Alex   Цитата(Inanity @ Jan 2 2015, 04:13) 1. ПЛ...   Jan 2 2015, 10:21
|- - des00   Цитата(Dr.Alex @ Jan 2 2015, 17:21) У вас...   Jan 2 2015, 12:30
|- - Dr.Alex   Цитата(des00 @ Jan 2 2015, 15:30) Глянул ...   Jan 2 2015, 12:41
- - Inanity   TO des00: --Да, была у меня мысль провести такой...   Jan 2 2015, 19:47
|- - Dr.Alex   Цитата(Inanity @ Jan 2 2015, 23:47) Спаси...   Jan 2 2015, 19:57
||- - Inanity   Цитата(Dr.Alex @ Jan 2 2015, 22:57) ...но...   Jan 2 2015, 20:09
|- - Flood   Цитата(Inanity @ Jan 2 2015, 22:47) ---...   Jan 2 2015, 20:47
|- - Inanity   Цитата(Flood @ Jan 2 2015, 23:47) Отсутст...   Jan 3 2015, 00:47
|- - Dr.Alex   Цитата(Inanity @ Jan 3 2015, 00:09) генер...   Jan 3 2015, 06:53
|- - Flood   Цитата(Inanity @ Jan 3 2015, 03:47) ---По...   Jan 3 2015, 19:48
- - Inanity   Dr.Alex, в таком случае крайней остаётся ПЛИС. Схе...   Jan 3 2015, 13:43
|- - Dr.Alex   Вы не пробовали самое главное:: собрать вторую пла...   Jan 3 2015, 16:58
|- - Bad0512   Цитата(Inanity @ Jan 3 2015, 19:43) Dr.Al...   Jan 3 2015, 17:01
- - RobFPGA   Приветствую! А посмотрите в editore как у Вас...   Jan 3 2015, 20:56
- - VladimirB   Цитата(Inanity @ Jan 2 2015, 04:13) Здрав...   Jan 3 2015, 21:07
|- - Ruslan1   Извините, есть одна ортогональная идея: проверьте,...   Jan 4 2015, 09:04
|- - Bad0512   Цитата(Inanity @ Jan 4 2015, 11:06) На AC...   Jan 4 2015, 13:58
||- - Inanity   Извиняюсь у окружающих, что пропал, временно перек...   Jan 10 2015, 13:58
|- - VladimirB   Цитата(Inanity @ Jan 4 2015, 08:06) ... н...   Jan 11 2015, 20:13
|- - Inanity   Цитата(VladimirB @ Jan 11 2015, 23:13) Ил...   Jan 12 2015, 08:54
- - Flood   Если у вас есть AC701 - с нее и нужно начинать...   Jan 4 2015, 11:02
- - Inanity   Возвращаюсь к проблеме MIG. Кажется удалось локал...   Jan 16 2015, 08:50


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 08:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016