Jump to content

    

EPM3032 и JTAG

Нарисовал схему, в которой по ошибке выход TDO используется еще и как пользовательский выход (TMS, TCK и TDI используются только для JTAGа). И что, теперь я не имею возможности менять прошивку через JTAG? Или всетаки без TDO можно ее обновить?

Share this post


Link to post
Share on other sites

Т.е. если если в прошивке EPM3000 на TDO назначен IO, то потом эту прошивку через JTAG не перешьешь? Это вы уже экспериментально проверили или пока только сомневаетесь?

 

А на счет перешивки без TDO - как вариант изврата с обманом программатора - в параллель ставяться две одинаковые CPLD, у одной TDO оторван. Программатор получает все нужные ему ID и отклики от первой, ну за одно программица и вторая.

Share this post


Link to post
Share on other sites

Возможно у меня был похожий случай, только с EPM7128 и ATF1508. Проект занял практически весь кристал, осталось 4 ячейки, при этом TDO оказался занят под зарытую ячейку, но как выход он уже работать не мог, прошивал я при этом ATF1508 естественно после конвертации pof2jed. Так программа ATISP отказывалась программировать из-за этой занятой ячейки. Так как опыт у меня небольшой я пытался руками переопределить ячейки и затем заново откомпилить :)

Но потом нашел флажок JTAG - enable, после чего все наладилось. Сейчас я заливаю в EPM7128 с Максом II и Квартусом там такого флажка на поверхности я не неблюдал (в настройках наверняка где-нибудь зарыт), но все многократно компилится и программируется без проблем.

Конечно в моем случае была зарытая ячейка, а не выход пользователя, но возможно это не принципиально.

Конечно же TDO должен выходить на JTAG

Share this post


Link to post
Share on other sites

cms:

Я пока только сомневаюсь, но несовсем ясно, как же функционирует пин двойного назначения.

 

Обман программатора не имеет смысла т.к. при этом требуется нормальный чип. И что с ним делать после прошивки? В помойку?

Share this post


Link to post
Share on other sites

Чистым MAX'ом сделать так нельзя, если ему взводишь флаг JTAG disable, то программатор отказывается в принципе заливать проект, а без флага - не компилит.

Share this post


Link to post
Share on other sites

Могу ошибаться, но кажется, что если ножки JTAG использованы (запрограммированны) как вход/выход, то в будущем для перешивки этой микросхемы MV бластер уже не подойдет. Нужно будет искать фирму, имеющую специальный программатор. :( А это влечет за собой еще и то, что микросхема не должна быть запаяна, а например стоять на панельке или каком то переходнике.

Share this post


Link to post
Share on other sites

Так народ, эта тема для меня становится очень интересной, есть ли кто-нибудь кто точно знает чем грозит определение TDO как пользовательский I/O? Или я попробую испортить CPLD ради эксперимента.

Share this post


Link to post
Share on other sites

У Altera это описано во многих местах: да Вы можете использовать (запрограммировать) ноги JTAG как пользовательские I/O ноги, но для следующего перепрограммирования (если в этом появится необходимость) потребуется "дорогой параллельный программатор" - поскольку внутрисхемное JTAG-программирование станет недоступным.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this