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

Не программируется EPC16QC100!

Процесс Program идёт до 100%, а последующие верификация и Blank-Check выдают ошибку на 3-х процентах процесса. Чтение содержимого EPC по команде Examine обнаруживает, что EPC действительно содержит другие данные, а точнее сказать пуста (много FF), т.е. программирование не прошло!? Не пойму в чем дело...

На JTAG цепь и кабель как-то не думается, ведь верификация проходит, да и сама ПЛИС (2-е устройство в JTAG цепи) конфигурится на ура... Может, я задаю неверные настройки pof-файла для EPC? Подскажите какие должны быть правильные

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


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

Не забыли закоротить между собой ноги С-A0, A0-F; С-A1, A1-F и т.д. а таже WE#C, WE#F и RP#C, RP#F?

 

А насчет настроек... У меня EPC4 нормально програмится и верифаится. Кусочек из отчета ассемблера прикрепил.

CUT_cyclone_test.map.zip

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


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

Не забыли закоротить между собой ноги С-A0, A0-F; С-A1, A1-F и т.д. а таже WE#C, WE#F и RP#C, RP#F?

все это я не забыл, конечно...

а вот монтажник даже дополнительную закороточку мне поставил, как говорится на всякий случай, чтобы я пару деньков был делом занят :)

 

В общем, сейчас опишу проблему и её решение, может кому пригодится потом:

Итак, система: EPC16 и ПЛИС Stratix соединены по схеме Passive Serial и объединены JTAG-цепочкой.

1. Признаки проблемы:

а) процесс программирования EPC идёт нормально, но верификация не проходит (данные не совпадают);

б) по включению питания процесс конфигурации Stratix из EPC16 не идёт: на выходе DCLK нет частоты, DCLK=0, хотя CONF_ DONE=0, NSTATUS=1, nINIT_CONF=1;

в) по JTAG от компьютера Stratix конфигурится без проблем.

 

В принципе, признак а) объясняет признак б), т.к. информация о источнике такт. частоты заложена в EPC и, по всей видимости источник был выбран внешний.

 

Анализ записываемых и читаемых из EPC данных привел к разгадке. Поиск повторяющихся данных выявил их наличие начиная с адресов 8040h, A040h, C040h. Отсюда моментальный и однозначный вывод: залип между 13-й и 14-й адресными ножками, что и подтвердилось при тщательном осмотре микросхемы. По устранию всё заработало как часы.

 

Попутно, кстати, столкнулся с ситуацией, что и Stratix по JTAG перестал шиться, при этом NSTATUS сидел в нуле. Оказалось, что так ведёт седя EPC в стертом состоянии.

 

Все так чрезмерно описал, потому что на радостях и может кому пригодится.

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


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

Ну, поздравляю :)

 

Кстати вопрос: вы EPCшку программируете по JTAG, а оттуда в Stratix - PS. Все операции - последовательно. Так почему тогда влияют на запись в EPC ПАРАЛЛЕЛЬНЫЕ ноги адреса EPC? Внутренняя сруктура операций у нее такая?

 

:bb-offtopic:

 

А по поводу бессмертных строк:

МОНТАЖНИК, ПОДКИНУЛ ПРОБЛЕМ, @#$%!!!

Тут недавно что-то похожее было: напаяли все кроме разъема - ну не было к тому времени разъема - а косить надо <_< Вот и ковырялись себе с настройкой без него. Все вроде ничего...

Тут подъехал разъем - все в монтаж - напаяли, включаем - не включается - блок питания пищит, выдает перегруз и не хочет... Ползали, ползали - нашли - хороший такой кусок плавленого припоя на ногах ПЛИСины... как раз землю и питание коротит...

 

Мораль: смотри в оба :)

 

:bb-offtopic:

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


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

Ну, поздравляю :)

спасибо :)

Кстати вопрос: вы EPCшку программируете по JTAG, а оттуда в Stratix - PS. Все операции - последовательно. Так почему тогда влияют на запись в EPC ПАРАЛЛЕЛЬНЫЕ ноги адреса EPC? Внутренняя сруктура операций у нее такая?

Потому что, внутри EPC16 стоит обычная параллельная Flash-память фирмы Sharp, пишет в неё контроллер какой-нибудь встроенный, принимая команды по JTAG, а писать во Flash, не используя её адресные ножки ну никак нельзя :) Ножки же выведены наружу на случай, если хочешь свои данные хранить во флэшке.

А по поводу бессмертных строк:

МОНТАЖНИК, ПОДКИНУЛ ПРОБЛЕМ, @#$%!!!

Тут недавно что-то похожее было: напаяли все кроме разъема - ну не было к тому времени разъема - а косить надо  <_< Вот и ковырялись себе с настройкой без него. Все вроде ничего...

Тут подъехал разъем - все в монтаж - напаяли, включаем - не включается - блок питания пищит, выдает перегруз и не хочет... Ползали, ползали - нашли - хороший такой кусок плавленого припоя на ногах ПЛИСины... как раз землю и питание коротит...

 

Мораль: смотри в оба :)

:cheers:

Вот как раз вторая проблема по очереди подошла: неимоверно греется АЦП, хотя работает. Толи так и должно быть, то ли очередной сюрприз от монтажника пока не понимаю. А вообще от чего может греться АЦП, будучи в рабочем состоянии?

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


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

Это по-моему новая тема :) А что за АЦП? И что вы от него хотите в смысле скорости?

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


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

согласен, что новая тема, чуть позже наверное её открою, пока по исследую некоторые моменты самостоятельно. А АЦП такой: AD9410, желаемая скорость 100МГц.

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


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

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

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

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

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

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

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

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

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

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