Убить MAX

E-mail Печать PDF

Сколько раз можно перешить EPM240?
Честно говоря я никогда не задавался этим вопросом.
Работаю с разными CPLD очень давно и не помню ни одного случая отказов программирования. С другой стороны, могу понять людей, которые сталкиваются с такими чипами впервые.
В документации на MAX-II (icon Описание на микросхемы Altera серии MAX-II (4.96 Мбайт)) с удивлением обнаружил такую таблицу:
Количество циклов программирования Altera CPLD MAX-II

Странность здесь даже не в малом количестве циклов, а в том, что это "Maximum", хотя по логике вещей производитель был-бы обязан гарантировать хотя бы какой-нибудь "Minimum".
Тем неменее наши читатели уже неоднократно задавали нам этот вопрос.
Поиски ответа в интернете тоже не дали никаких результатов, поэтому единственное, что мы можем в этом случае сделать - это поставить практический эксперимент.

Хотя сделать правильный эксперимент довольно сложно.
Флешка чипа EPM240 размером около 8 килобайт и разбита на две части - CFM (около 7кб, для конфигурации чипа), и UFM (1кб для использования в пользовательских проектах).
Если с пользовательской UFM все чисто, туда можно записывать любую информацию, то в CFM произвольную информацию записывать нельзя. Поэтому для тестов мы взяли один из  реальных проектов, сделав для него *.mif (Memory Initialization File), состоящий из всех нулей.
Для автоматизации процесса программирования был написан такой батец:


:m0
echo 1 >>count.txt
quartus_pgm -m jtag -c USB-Blaster -o rb;max2.pof
goto n%ERRORLEVEL%
goto end
:n0
quartus_pgm -m jtag -c USB-Blaster -o pv;max2.pof
goto m%ERRORLEVEL%
:n1
:n2
:n3
:n4
:m1
:m2
:m3
:m4
:end
echo errorlevel%ERRORLEVEL% >>count.txt


В нем программатор запускается два раза. Первый раз выполняются процедуры "Erase" и "Blank-Check", второй - "Program" и "Verifi".
Если все процедуры выполнились без ошибок, то в файл count.txt
дописывается "1" и цикл повторяется. По количеству "1" в файле count.txt
можно судить о количестве выполненных циклов программирования.
Для эксперимента мы взяли произвольный "марсоход", наклеили на него отличительную метку и, 01.09.2010 в 18:30, запустили  тест.

Опасаясь, что ни мы, ни наши читатели могут не дождаться результатов,
03.09.2010 в 08:30 тест был принудительно остановлен, так и не выдав ни одной ошибки.
За 38 часов работы было выполнено 13940 ( тринадцать тысяч девятьсот сорок ) циклов программирования. После этого в нашего "мученика науки" мы зашили и протестировали несколько других проектов - все успешно заработали.

Окончательные выводы делать конечно Вам.

 

 

Комментарии 

 
+1 #2 Anton 15.09.2010 11:54
Спасибо, познавательно. Напишите пожалуйста дату производства чипа. Может технология изменилась, а в даташите как по старинке.
Имею на своей отладочной платке CPLD epm3128. Убить за два года не смог, сделал очень много перепрошивок, точно более 200. Разве что спалил около пяти пинов. :oops:
Та же ситуация с Атмеловскими МК
Цитировать
 
 
0 #1 Vladimir 03.09.2010 09:40
Я так и предпологал :) помоему или забыли написать 000 или 00 :) Просто не поместилось в таблицу. У меня возникл этот вопрос когда я начал делать свою плату - когда прочитал что на 100 раз перезаписать - то я начал думать как сделать так чтобы легко менялась :) Самих чипов у меня 5 штук есть точно. A у меня есть ещё и
EPM570T100C5N. Поэтому мене было её жалко убить. И я думал куда её применить перед её "смертью" :) Так чтобы уже там и осталась с парой цыклов перезаписи...
Цитировать
 

GitHub YouTube Twitter

Подписка RSS

marsohod.org - лента

Последние комментарии: