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

 
 
 
Reply to this topicStart new topic
> Загадочное поведение SDRAM с AT91SAM9260, Загадочное поведение SDRAM с AT91SAM9260
shamill
сообщение Jun 23 2010, 11:12
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 26-01-09
Пользователь №: 43 939



Здравствуйте, уважаемые господа !
Есть одна серьезная проблема, без устранения которой не можем продолжать дальнейшее выполнение
своего проекта. Наш проект представляет собой некий WEB контроллер на AT91SAM9260 под Linux.
За основу проекта взята отладочная плата AS-9260 производства компании Argussoft, которая в свою
очередь построена на основе AT91SAM9260-EK производства Atmel за той лишь разницей, что на плате
Atmel установлено 64 Мб SDRAM, а на плате Argussoft 32 Мб.
Проблема состоит в том, что приложение Linux работает не стабильно, в частности при чтении и записи
во SPI Flash происходят ошибки ядра типа kernel oops и kernel panic ... Тестировали с различными версиями ядра
от 2.6.18 до 2.6.33 - картина одинаковая. Дальнейшие исследования показали, что описанные нестабильности
связаны с некорректной работой процессора с SDRAM, в частности:
1. Тестирование с использованием утилиты memtester под управлением Linux - при тестировании объема
более 1-го мегабайта возникают те же ошибки.
2. Тестирование с использованием утилиты mtest под управлением U-Boot - при тестировании объема менее
8-ми мегабайт тест проходит успешно в любой области памяти из доступного объема 32 мегабайта. При
тестировании объема памяти более 8-ми мегабайт, начиная с любого адреса, возникает ошибка, состоящая
в том что при чтении блока часть данных не совпадает с записанными (чтение и запись про-
исходит 32-битными словами), а именно, если записали 8 мегабайт и 4 байта, то первые 4 байта (в начале
тестируемого блока) оказываются отличными от записанных (закономерно инвертирован 22-й бит - при записи
0x00000000 чтение возвращает 0x00200000, а при записи 0xFFFFFFFF чтение возвращает 0xFFDFFFFF).
Такая ошибка происходит для любого превышения над 8-ю мегабайтами.
Если модифицировать mtest таким образом, чтобы запись и чтение выполнялись не для 32-х разрядных
слов, а для 8-ми - тест проходит успешно).
3. Тестирование через пакет SAMBA - ошибки возникают при записи в SDRAM любого файла объемом более 8-ми
мегабайт при последующем сравнении с исходным.
4. Тестирование из под IAR - идентично тестированию из под U-Boot (в IAR перенесен исходный код утилиты
mtest).
Если кто-то в состоянии оказать нам помощь в решении данной проблемы - прошу откликнуться.
Мы готовы предложить выгодные условия совместного сотрудничества.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 23 2010, 11:57
Сообщение #2


Гуру
******

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



MT48LC16M16 (AT91SAM9260-EK) отличаются от MT48LC16M8 (AS-9260) вдвое большим числом рядов, что явно не было учтено в ПО. Исправьте настройки SDRAMC.
Кроме того, плата AS-9260 выполнена без учета ерраты и рекомендаций Atmel'а, что само по себе может привести к проблемам с SDRAM.
Go to the top of the page
 
+Quote Post
shamill
сообщение Jun 23 2010, 13:39
Сообщение #3





Группа: Новичок
Сообщений: 2
Регистрация: 26-01-09
Пользователь №: 43 939



Цитата(aaarrr @ Jun 23 2010, 15:57) *
MT48LC16M16 (AT91SAM9260-EK) отличаются от MT48LC16M8 (AS-9260) вдвое большим числом рядов, что явно не было учтено в ПО. Исправьте настройки SDRAMC.
Кроме того, плата AS-9260 выполнена без учета ерраты и рекомендаций Atmel'а, что само по себе может привести к проблемам с SDRAM.


Спасибо, уважаемый ! Взгляд уже в мыле... Все проверили - действительно, поменяв dftSize, внимания на параметр AT91C_SDRAMC_NR_13 уже
не хватило. Замена AT91C_SDRAMC_NR_13 на AT91C_SDRAMC_NR_12 решила проблему...
Go to the top of the page
 
+Quote Post

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

 


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


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