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

 
 
> Тестирование внешного RAM, AVR + RAM
zombi
сообщение Feb 4 2009, 14:29
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Имеется система AVR и внешняя энергонезависимая RAM 32Kb.
Как можно протестировать RAM на работоспособность, но так чтобы в случае выключения питания во время теста не испортить содержимое RAM?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 11)
МП41
сообщение Feb 4 2009, 14:36
Сообщение #2


4 синих кубика
****

Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326



Это зависит от структуры данных в памяти, дублируются они, не дублируются, котр. сумма есть или нет и т.д. И насколько память занята полезными данными?


--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
Go to the top of the page
 
+Quote Post
zombi
сообщение Feb 4 2009, 14:52
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(МП41 @ Feb 4 2009, 18:36) *
Это зависит от структуры данных в памяти, дублируются они, не дублируются, котр. сумма есть или нет и т.д. И насколько память занята полезными данными?

Нужно проверить именно работоспособность RAM а не достоверность находящихся в ней данных!
Проверить нуно хотябы что нет кз по ШД т.е. по любому адресу пишется и читается правильно $00,$FF,$55,$AA
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 4 2009, 14:58
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Тогда пишите/читайте в одну, например, последнюю ячейку и не занимайте ее под реальное хранение данных, тогда данные испортятся только в этой ячейке, но вам это не повредит. Тут, правда, может быть нюанс, если память работает только в каком-нибудь страничном режиме, то можете потерять всю страницу, хотя это больше к SDRAM относится, у вас же SRAM, полагаю.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
zombi
сообщение Feb 4 2009, 15:08
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(GDI @ Feb 4 2009, 18:58) *
Тогда пишите/читайте в одну, например, последнюю ячейку и не занимайте ее под реальное хранение данных, тогда данные испортятся только в этой ячейке, но вам это не повредит. Тут, правда, может быть нюанс, если память работает только в каком-нибудь страничном режиме, то можете потерять всю страницу, хотя это больше к SDRAM относится, у вас же SRAM, полагаю.

В таком случае я протестирую только одну ячейку памяти, а хотелось бы всю память протестить.
Да память SRAM, страниц нету.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Feb 4 2009, 15:15
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



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

1) Если устройство включается первый раз, то данных нет и память тестируется полностью.
2) Данные появляются и их достоверность контролируется контрольными суммами.
3) Если контрольные суммы не соответствуют, значит данным верит смысла нет, и память можно тестировать опять полностью.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
Rst7
сообщение Feb 4 2009, 15:22
Сообщение #7


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Используете доп. 3 переменных в ОЗУ. Адрес текущей проверяемой ячейки, данные в ней, флаг валидности.

Проверка каждой ячейки представляет из себя сохранение адреса и содержимого ячейки в вышеописанных переменных и установка флага валидности (именно в таком порядке). Потом тест. Потом восстановление содержимого ячейки и сброс флага валидности.

Если произойдет сброс во время теста, то при установленном флаге валидности востанавливаете текущую тестируемую ячейку.

А вообще это способ себе ноги простреливать, через ресет поднимать состояние из внешнего озу.

PS Лично я рассматриваю эти тесты исключительно как отмазку при разного рода сертификационных испытаниях на соответствие каким-либо требованиям, в которых прописано - вот нужен тест, и писец. Ну и пусть будет, мне не жалко.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
zombi
сообщение Feb 4 2009, 17:50
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(Rst7 @ Feb 4 2009, 19:22) *
PS Лично я рассматриваю эти тесты исключительно как отмазку при разного рода сертификационных испытаниях на соответствие каким-либо требованиям, в которых прописано - вот нужен тест, и писец. Ну и пусть будет, мне не жалко.

Вот именно, нужен какой нибудь тест озу!
Ну не простож написать "RAM test" и через какоето время "completed" можнож в это время и потестить ченить biggrin.gif

Спасибо Rst7 за идею, будем ее думать rolleyes.gif
Go to the top of the page
 
+Quote Post
singlskv
сообщение Feb 4 2009, 18:00
Сообщение #9


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zombi @ Feb 4 2009, 20:50) *
Вот именно, нужен какой нибудь тест озу!
Ну не простож написать "RAM test" и через какоето время "completed" можнож в это время и потестить ченить biggrin.gif
Спасибо Rst7 за идею, будем ее думать rolleyes.gif
Google и поиск по memtest86 Вам в помогут,
все возможные алгоритмы тестирования памяти там уже есть... в исходниках...
Go to the top of the page
 
+Quote Post
Rst7
сообщение Feb 4 2009, 18:43
Сообщение #10


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Ну не простож написать "RAM test" и через какоето время "completed"


Если в ТЗ (или в другом руководящем документе) не указана вероятность пропуска ошибочной ситуации (написано просто "должно быть тестирование памяти", ну или "оборудования" или еще какой хрени), то можно и так. Один раз я так делал. В наглую. Прокатило.

Но лучше какое-нибудь дрючило ячеек написать.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 4 2009, 22:34
Сообщение #11


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Rst7 @ Feb 4 2009, 17:22) *
PS Лично я рассматриваю эти тесты исключительно как отмазку при разного рода сертификационных испытаниях на соответствие каким-либо требованиям, в которых прописано - вот нужен тест, и писец. Ну и пусть будет, мне не жалко.
Тут все же ключевое слово "внешнее" ОЗУ.
Его надо тестировать, без фанатизма конечно, чтобы работоспособность шины проверить.
Go to the top of the page
 
+Quote Post
GDI
сообщение Feb 5 2009, 09:29
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Цитата(zombi @ Feb 4 2009, 18:08) *
В таком случае я протестирую только одну ячейку памяти, а хотелось бы всю память протестить.
Да память SRAM, страниц нету.


Цитата
Проверить нуно хотябы что нет кз по ШД т.е. по любому адресу пишется и читается правильно $00,$FF,$55,$AA
Я из этого исходил, а другие варианты вам ответили уже выше.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post

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

 


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


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