Перейти к содержанию
    

тоже напоролся на глюки с памятью (9260 + память от микрон) - не грузится линукс. плату разводили в четырех слоях, с выравниванием длины линий, проходных резисторов нет. в плате один слой отдан под землю, но конструктор отделил землю SDRAM от земли процессора и свел их вместе отдельно. наверное думал что так будет лучше. экспериментальным путем выяснилось что это не так - пробовал восстановить разрыв перемычками - глюков поубавилось. но запустить memtest под линуксом удалось только понизив частоту SDRAM до 50 МГц.

интересно другое. у меня на столе есть отладочная плата от olimex (9260 + память от самсунга). так вот на ней присутствует интересная доработка - под ножку процессора, что выдает 100 МГц клок на память, подсунут проходной резистор 47 Ом (т.е. натурально - отогнули ножку и подсунули резистор :07: ), в конце этой линии у мк/сх памяти линия нагружена тоже резистром 47 Ом в параллель с конденсатором 10 пик (ну или меньше). если эту доработку порушить - память отказывается работать напрочь - проверял. :)

ну и напоследок - никто мне не может объяснить почему 9260 спокойно грузится у меня (и у olimex тоже) из nand-flash? вроде как по errata не должен же. процессор конечно ревизии А - других достать невозможно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попрбуйте в SDRAMC_HSR записать 1 (во время инита) ...

Насчет загрузки из NAND, массово не проверял, но тоже замечал что грузится, видимо дело вероятностное (зря в еррате писать не будут :)) ...

Изменено пользователем starterkit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

при конфигурации "enable decode cycle" в SDRAMC_HSR у меня на плате memtest на 100 МГц пошел нормально однако. знать бы теперь что это такое. :) в последнем даташите от атмела такой регистр не описан. не ткнете меня в какой-ндь документ? или тоже только в .h файле этот регистр нашли? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, в даташитах про него ни слова (по крайней мере пару месяцев назад), не помню уже точно, этот бит (там один 0 бит в регистре), как следует из названия, добавляет такт ...

Чудодейственная штука ;)

Изменено пользователем starterkit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

google находит много ссылок на SDRAMC_HSR. В первую очередь видел для AT91SAM9260 и других. В datasheet на AT91SAM9260 не нашел (может плохо искал). Посмотрите тексты ядра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

э... гуглить тоже пробовал - большинство ссылок ведет именно на .h файлы, а не на документацию. из документов нашел только AppNote: Using the AVR32 SDRAM controller , но и там только написано что такой регистр есть и больше ничего. что же касается ядра, то оно память конфигурировать не должно (как мне кажется). это дело загрузчиков. ни bootstrap ни u-boot этот регистр не использует.

так что темное какое-то дело. недокументированные вещи - дело стремное...

мы лучше плату переразведем. :)

но эксперимент был интересный, спасибо. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мы лучше плату переразведем.

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

Вы ради эксперимента попробуйте чип сменить (желательно из другой партии), 50/50 что и проблемы как бы нет :) ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если в серию пойдет, то все равно плату переразводить - ошибки поправить. когда (и если) случится - отпишусь по результатам.

ну а чипов других под рукой нет... из одной партии микросхемы менять не хочется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Итог обсуждения - добро пожаловать в целостность сигналов :))

А в целостности сигналов важна не частота прямоугольных импульсов, а крутизна их фронтов. И если SDRAM рассчитана на 133 MHz, то от уменьшения рабочей частоты до 1 Hz ситуация принципиально не улучшится, едиственное что из-за увеличения задержек возможно будет иногда работать.

 

Ну и конечно устройства такого класса требуют (!) как минимум двух слоев питания (gnd+vcc). Я знаю что "и на двухслойке отлично работает" ;), но если Вы думаете о качестве, то про такой вариант нужно сразу забыть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну про двухслойный платы никто и не говорит - это я тоже не сторонник.

ну а по поводу частоты я бы поспорил. мне кажется что уменьшение частоты снижает требования к качеству этих самых фронтов - крутизне и времени переходных процессов. по временной диаграмме что получается - если сигналы ставятся по одному фронту clk, то считываются они по другому фронту clk. соответственно на частоте 1 Гц все будет работать железно - к приходу следующего фронта все переходные процессы гарантированно закончатся. ну если только сам clk не будет "звенеть" так, что сформирует ложные срабатывания, конечно. но с этим на низкой частоте можно легко бороться.

да и питание на низкой частоте возможно станет почище - из-за уменьшения среднего потребления и более качественной фильтрации. так что...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Железно на 1 Hz будет работать если фронты будут монотонными и не будет over- и undershoot выше допустимого уровня, в чем я не уверен (для данного примера). А остальные мысли поддерживаю :)

HyperLynx и ICX Pro в помощь топикстартеру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вообще-то плохо развести SDRAM это надо очень постараться.

Если проц и RAM не дальше 3-х см друг от друга можно смело разводить как заблагорассудится.

Никаких опасных овершутингов там не возникнет на частоте 133 МГц так точно.

Тем более, что часто у процов и RAM можно регулировать силу драйверов.

Всякие резисторы тем более незачем если шина только между RAM и процом.

HyperLynx - здесь пустая трата времени, достаточно выдержать зазоры и очень приблизительно волновое сопротивление.

 

Большинство вышеперечисленных траблов с RAM-ом очень напоминают элементарную некорректную инициализацию или конфликты на внутренних шинах самого процессора.

 

 

Железно на 1 Hz будет работать если фронты будут монотонными и не будет over- и undershoot выше допустимого уровня, в чем я не уверен (для данного примера). А остальные мысли поддерживаю :)

HyperLynx и ICX Pro в помощь топикстартеру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сейчас опять всплыла проблема... теперь уже с нормальными микросхемами... от Samsung... запускаем наш тест (просто постоянно и максимально быстро рисует квадратики с заливкой черным/белым цветом на дисплее). В партии из 10 приборов 4 прибора валятся через 2-10 секунд после запуска.

 

Впаял в линию SCK для SDRAM резистор на 18 Ом... время работы увеличилось до 4 минут... потом повисло. Впаял 100 Ом работает уже больше 40 минут... никаких проблем.

 

Проц SAM9260.

 

memtester прошла

Изменено пользователем MTh

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а у Вас к слову что на процах написано. Я както с пообщался - понял что с 9260 надо уходить на 9XE

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...