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

 
 
> Нестабильная работа внешней памяти
bognev
сообщение Nov 6 2014, 09:44
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 4-06-11
Пользователь №: 65 475



Работаю с памятью DDRII SRAM на виртексе 6. Заявленная частота работы памяти 333 МГц. На плате стоит 2 модуля обработки. На каждом модуле по 6 виртексу и планке памяти. Получается такая проблема, что на плате в левом субмодуле память работает корректно на 200МГц, а на правом субмодуле на 160МГц. Если запустить память на левом субмодуле на 160 МГц, то ее калибровка проходит, но считываемые данные приходят с ошибками. А если запустить память на правом субмодуле на 200 МГц, то калибровка вообще не проходит. Пробовал прошивки 4х платах, такая ситуция только на одной. Причем, на 3х платах память работает корректно, как на 200МГц, так и на 100 МГц.
С памятью работаю с помощью контроллера, сгенерированного в ISE.
Вопрос такой, что может быть не так с той платой? Или в моей прошивке.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
RobFPGA
сообщение Nov 6 2014, 11:15
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!

Не обижайтесь - но прикольно читать такие вопросы.
"справа не работает, а слева ошибки - что делать?"

Было бы куда интересней придумывать ответы если бы Вы указали для начала тип платы (покупная или собственного производства) и хотя бы тип памяти (отдельные чипы или модули SODIM).
Поскольку если плата покупная - то тогда 99% глюки в проекте - не полностью/неправильно заданы времянки, некорректный выбор источника тактовой или некорректная разводка тактовой между модулями, неправильные конфигурация для корки контроллера и т.д. и.т.п.

Если же это изделие собственной выпечки - то тут возможности глюкануть расширяются неимоверно!
И в этом случае легче получить ответ задав этот вечный вопрос "что делать?" в google sm.gif

В любом случае - для отладки такой неприятности нужно сделать маленький проектик ТОЛЬКО для тестирования памяти - выбросив все что для этого не нужно, максимально зафиксировать модули на кристалле. При широкой шине данных памяти отлаживать боле узкими частями (по отдельным банкам DQS)

То что у Вас при пере разводке проекта меняется поведение уже косвенно указывает на глюки в дизайне
могу предположить что где то в 20 строке третьего файла правой части левого модуля wink.gif

Успехов! Rob.

Go to the top of the page
 
+Quote Post
bognev
сообщение Nov 6 2014, 12:28
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 4-06-11
Пользователь №: 65 475



Цитата(RobFPGA @ Nov 6 2014, 14:15) *
Приветствую!

Не обижайтесь - но прикольно читать такие вопросы.
"справа не работает, а слева ошибки - что делать?"

Было бы куда интересней придумывать ответы если бы Вы указали для начала тип платы (покупная или собственного производства) и хотя бы тип памяти (отдельные чипы или модули SODIM).
Поскольку если плата покупная - то тогда 99% глюки в проекте - не полностью/неправильно заданы времянки, некорректный выбор источника тактовой или некорректная разводка тактовой между модулями, неправильные конфигурация для корки контроллера и т.д. и.т.п.

Если же это изделие собственной выпечки - то тут возможности глюкануть расширяются неимоверно!
И в этом случае легче получить ответ задав этот вечный вопрос "что делать?" в google sm.gif

В любом случае - для отладки такой неприятности нужно сделать маленький проектик ТОЛЬКО для тестирования памяти - выбросив все что для этого не нужно, максимально зафиксировать модули на кристалле. При широкой шине данных памяти отлаживать боле узкими частями (по отдельным банкам DQS)

То что у Вас при пере разводке проекта меняется поведение уже косвенно указывает на глюки в дизайне
могу предположить что где то в 20 строке третьего файла правой части левого модуля wink.gif

Успехов! Rob.


Я понимаю, что прошу описать сферического коня в вакууме. Просто вот так сразу написать все не получится. Слишком много)

Плата покупная. http://www.insys.ru/products/dsp/adp201cp5. Память GS8662R36E-333 http://www.datasheetarchive.com/dl/Datashe...DSA00268030.pdf
Я бы сказал, что 100% глюки в дизайне, у самого опыта не так много и в чем копать уже не знаю.

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

Цитата(SM @ Nov 6 2014, 14:38) *
С какой-то долей вероятности можно предположить, что Вы забыли обконстрейнить какие-то важные сигнальные пути. В результате STA отрицательных слаков не дает, а непроверяемые пути - глючат. Это раз. А два (если плата самодельная) - внимательно проверьте цепи VREF, увеличьте емкость по ним.

Можете посоветовать какие сигнальные пути можно считать важными и как их необходимо обконстрейнить?

Сообщение отредактировал bognev - Nov 6 2014, 12:40
Go to the top of the page
 
+Quote Post
SM
сообщение Nov 6 2014, 13:43
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(bognev @ Nov 6 2014, 15:28) *
Можете посоветовать какие сигнальные пути можно считать важными и как их необходимо обконстрейнить?


Какие сигналы - ВСЕ ПОГОЛОВНО, идущие к/от памяти. Как - это обычно описано в документации на примененное ядро контроллера памяти.
Go to the top of the page
 
+Quote Post
bognev
сообщение Nov 6 2014, 14:06
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 4-06-11
Пользователь №: 65 475



Цитата(SM @ Nov 6 2014, 16:43) *
Какие сигналы - ВСЕ ПОГОЛОВНО, идущие к/от памяти. Как - это обычно описано в документации на примененное ядро контроллера памяти.

В документации на ядро для работы с DDRII SRAM есть упоминание о залочивании idelay и больше никаких. http://www.xilinx.com/support/documentatio...ation/ug086.pdf
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bognev   Нестабильная работа внешней памяти   Nov 6 2014, 09:44
- - bogaev_roman   Цитата(bognev @ Nov 6 2014, 12:44) Вопрос...   Nov 6 2014, 10:07
|- - bognev   Цитата(bogaev_roman @ Nov 6 2014, 13:07) ...   Nov 6 2014, 10:16
|- - bogaev_roman   Цитата(bognev @ Nov 6 2014, 13:16) Да, вр...   Nov 6 2014, 10:26
|- - bognev   Цитата(bogaev_roman @ Nov 6 2014, 13:26) ...   Nov 6 2014, 10:27
|- - iosifk   Цитата(bognev @ Nov 6 2014, 16:28) Плата ...   Nov 6 2014, 12:43
||- - bognev   Цитата(iosifk @ Nov 6 2014, 15:43) Написа...   Nov 6 2014, 20:18
||- - bogaev_roman   Цитата(bognev @ Nov 6 2014, 23:18) Проект...   Nov 7 2014, 08:02
|- - RobFPGA   Приветствую! Цитата(bognev @ Nov 6 2014,...   Nov 6 2014, 13:11
||- - bognev   Цитата(RobFPGA @ Nov 6 2014, 16:11) Приве...   Nov 6 2014, 13:27
- - SM   С какой-то долей вероятности можно предположить, ч...   Nov 6 2014, 11:38
- - SM   Определить I/O стандарт (SSTL какой нибудь, смотря...   Nov 6 2014, 14:26
|- - bognev   Цитата(SM @ Nov 6 2014, 17:26) Определить...   Nov 6 2014, 14:41
- - SM   Они и должны быть разные, клоки там дифференциальн...   Nov 6 2014, 14:47
- - bognev   Вопрос такой. Я поставил мультиплексор на вход пам...   Nov 7 2014, 09:43


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 22:21
Рейтинг@Mail.ru


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