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

 
 
> Проверка SDRAM (ну и вообще памяти)
kolobochishe
сообщение Feb 14 2011, 10:00
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 240
Регистрация: 14-04-10
Из: Россия, г.Челябинск
Пользователь №: 56 634



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

Есть проблема: программы с объявленным массивом более 10кБ не грузится J-TAG программатором в модуль mini3250 (LPC3250 с 64МБ памяти SDRAM)

Можно ли проверить работу SDRAM с помощью такого кода?

Код
int i, pattern, pread;
int * p;

pattern = 0x0F0F0F0F;

for (i = 0x80000000; i<0x88000000; i++)
{
  p = (int *) i;
  * p = pattern;
  pread = * p;
  if (pread =! pattern)
  {
    printf ("Write test data to adr %X\n", p);
    printf ("Reading %X\n", pread);
  }
}

printf ("Testing completed\n");


Мою проверку память проходит, но программа так и не грузится.

Реализация памяти - 2 чипа 16Mx16 включенных параллельно. Разделены только 32 бита данных. Одна часть в одном чипе, вторая - во втором.

Ну и верхний адрес проверки что-то не совпадает. По идее должно быть не больше 0x81FF FFFF. Но проверка проходит. Такое ощущение что по верхним адресам расположено что-то еще.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DpInRock
сообщение Feb 14 2011, 10:24
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Крестьянин говорит: у меня мешок с картошкой на телегу не грузится.
Не может такого быть. Правильно. Не может.
Ибо крестьянин скажет - нет места, или там у мешка ноги вырастают и он убегает.

Гордыня - это когда вместо проверки программы начинаешь проверять оборудование. Смертный грех.

Начните лучше сначала.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
kolobochishe
сообщение Feb 14 2011, 10:35
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 240
Регистрация: 14-04-10
Из: Россия, г.Челябинск
Пользователь №: 56 634



Цитата(DpInRock @ Feb 14 2011, 15:24) *
Гордыня - это когда вместо проверки программы начинаешь проверять оборудование. Смертный грех.

Начните лучше сначала.


Наверно плохо я объяснил. Есть пример для платы PHYTEC3250. У меня же mini3250. Взял пример POWERPAC'овский от PHYTEC. Пример LED_BLINK работает. Но как добавляешь к нему чего побольше, начинаются проблемы. Притом что линковка проходит нормально. Тайминги проверил. На первый взгляд все нормально.

Цитата(MaslovVG @ Feb 14 2011, 15:26) *
При тестировании памяти желательно сначала записывать весь тестируемый массив, и лишь затем проверять его правильность.
Я предпочитаю писать псевдрслучайную М последовательность. Это позволяет обнаружить не только ошибки в ячейках но и ошибки дешифрации адресов и адресной шины (обрывы залипания на 0 или 1 отдельных битов как данных так и адресов).


спасибо sm.gif а поконкретнее, как сгенерировать эту последовательность?
Go to the top of the page
 
+Quote Post



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

 


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


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