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

 
 
> Тест памяти, Подскажите простенький
Alexashka
сообщение Oct 9 2012, 16:55
Сообщение #1


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Добрый день!
Подскажите какой-нибудь несложный тест для SDRAM (DDR, 16 бит).
Гдето тут на форуме попадался довольно простой тест из нескольких этапов с различными паттернами, но к сожалению, найти его не могу.
Программа работает нормально на одной плате и зависает (вылетает в аборт) на другой. Контроллер и память там и там одинаковая. Есть подозрение, что виснет при доступе к DDR. Пробовал записывать чтото типа счетчика и после этого сверять -результата не дало. Нужно чтото более "агрессивное".
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Oct 16 2012, 08:50
Сообщение #2


Гуру
******

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



Тест вроде приведенного выше ничего и не выявит: одиночными записями и чтениями затруднительно создать должную нагрузку на подсистему памяти. Нужно работать через STM/LDM при включенном кэше данных. В особо тяжелых случаях привлечь на помощь DMA.
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Oct 16 2012, 14:06
Сообщение #3


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(aaarrr @ Oct 16 2012, 12:50) *
Тест вроде приведенного выше ничего и не выявит: одиночными записями и чтениями затруднительно создать должную нагрузку на подсистему памяти. Нужно работать через STM/LDM при включенном кэше данных. В особо тяжелых случаях привлечь на помощь DMA.

Я как думал, ДМА может читать быстро, без простоев, значит проблема с таймингами, но почему тогда их увеличение ничего не дает. Кстати гдето был документик software DMA implementation, в нем вроде как раз SIMD инструкции использовались. Будет время попробую такой вариант.
И вот объясните, пожалуйста, как ведут себя контроллер ДМА и ядро когда первому нужно брать данные из памяти, а второму в этоже время - читать код из этой же памяти sm.gif
Помню както попадалась заметка про зависание (LPC2478? не помню уже подробности), когда видеобуфер, который выводится через ДМА и код находятся в одной памяти. С чем в такой ситуации связано зависание? Может быть у меня чтото похожее происходит?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 16 2012, 14:11
Сообщение #4


Гуру
******

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



Цитата(Alexashka @ Oct 16 2012, 18:06) *
И вот объясните, пожалуйста, как ведут себя контроллер ДМА и ядро когда первому нужно брать данные из памяти, а второму в этоже время - читать код из этой же памяти sm.gif

Ведут в соответствии с приоритетами. У кого ниже, тот и будет ждать.

Цитата(Alexashka @ Oct 16 2012, 18:06) *
Помню както попадалась заметка про зависание (LPC2478? не помню уже подробности), когда видеобуфер, который выводится через ДМА и код находятся в одной памяти. С чем в такой ситуации связано зависание? Может быть у меня чтото похожее происходит?

Не помню тем, где обсуждались бы проблемы с зависанием LPC2478 при работе с видеобуфером. Вот "картинка ломается" - это сколько угодно.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 20th August 2025 - 06:34
Рейтинг@Mail.ru


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