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

 
 
> MicroBlaze. Ошибки в работе с DDR3 памятью
Чиповод
сообщение Sep 21 2011, 11:34
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 85
Регистрация: 11-01-11
Из: Москва
Пользователь №: 62 160



Здравствуйте,

в проекте с MicroBlaze использую контроллер DDR3 памяти - axi_s6_ddrx. Все работает хорошо, но время от времени при переразводке проекта возникает такой симптом: начинаю дебажить программу в SDK, программа грузится, иду по шагам, после нескольких шагов получаю сообщение вида

Код
Error: MicroBlaze Pipeline Stalled on a Blocking Instruction or Invalid Bus Access
    Stalled PC: 0xc0000030
Try Resetting the Processor to Continue..


Код грузится во внешнюю DDR3 память. Причем, если не повезло с разводкой ошибка возникает всегда, только на разных адресах. Бывает что программа вообще не загружается, не проходит проверка elf файла.

Насколько я понимаю происходит неправильное чтение инструкции из DDR3 памяти и MicroBlaze дает клина. Т.е проблема в DDR3 контроллере. Частота DDR3 памяти 300МГц.

Кристалл забит на 80% и я понимаю, что это не очень хорошо. Из констрейнов относящихся к теме, имеется по сути один - на тактовую частоту входного клока, который идет на корку clock_generator. Он выполняется.

Нужны ли какие-нибудь констрейны для правильной работы DDR3 контроллера или за всем этим следит генератор корок?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Чиповод
сообщение Sep 26 2011, 06:37
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 85
Регистрация: 11-01-11
Из: Москва
Пользователь №: 62 160



Цитата(Kuzmi4 @ Sep 26 2011, 10:02) *
2 Чиповод
у меня SP-605 с ES чипом, память микроновская. DDR3 пробовал давно и без Blaze-а, но бегало без ошибок laughing.gif
Это хорошо, а то народ жалуется, что в инженерных сэмплах MCB сырой был. А как вы кстати тестировали на ошибки?

Я тут разбираюсь со своими зверушками. Clock для памяти среда XPS предложила мне сделать без глобальных клоковых буферов. Я, в таком случае, решил зажать его констрейном MAX_SKEW. Это помогло, из 8 разводок - 7 оказалось удачных (раньше было примерно 50 на 50). Но нужно, конечно, окончательно разобраться.
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Sep 26 2011, 07:12
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



Цитата(Чиповод @ Sep 26 2011, 09:37) *
..А как вы кстати тестировали на ошибки?....

Та вот начитался я как и вы про "сырой MCB", ну и наваял специально проектиГ - там внутри всё проверялось, генерились тестовые паттерны по разному. После проверки отправлялся результат (+ подсветка леда если ошибка хоть одна была ), и всё запускалось по кругу. "Беспредела" не было замечено wink.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Чиповод   MicroBlaze. Ошибки в работе с DDR3 памятью   Sep 21 2011, 11:34
- - DmitryR   Генератор корок генерирует констрейны (в отдельный...   Sep 22 2011, 10:44
- - Чиповод   Ага, он генерирует и сам подключает, но там только...   Sep 22 2011, 12:37
|- - DmitryR   Плату сами делали или на ките гоняете?   Sep 22 2011, 12:47
- - Чиповод   Использую доску SP-605, по схематику на ней стоит ...   Sep 26 2011, 05:36
|- - DmitryR   Цитата(Чиповод @ Sep 26 2011, 08:36) На с...   Sep 26 2011, 08:41
- - Kuzmi4   2 Чиповод у меня SP-605 с ES чипом, память микроно...   Sep 26 2011, 06:02
- - Koluchiy   Гонял немножко DDR3 на SP605 с ES. Особо хитрых те...   Sep 28 2011, 06:33
- - Sergey_Bekrenyov   Помнится раньше у Xilinx были софтовые тесты для п...   Sep 30 2011, 19:41
- - Чиповод   ЦитатаПомнится раньше у Xilinx были софтовые тесты...   Oct 12 2011, 12:33
- - Koluchiy   Уже не очень хорошо помню, но вообще там было дост...   Oct 14 2011, 16:48


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

 


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


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