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

JTAG цепоча не работает

На новой плате размещал 2 ПЛИС Altera EP20K160EQC144 и 2 EPC2.Решил не ставить кучу разьемов для каждого JTAG а соединить их все последовательно.

 

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

 

Короче ничего не заработало - устройства при сконировании JTAG не видятся.

После 2ух дней ковыряния, лазения осцилографом и отлавливания разных глюков на 2ой плате был получен положительный результат, но после того как плату просушили от отсатков флюса результат испарился. :smile3046:

 

Что имею: соединение по JTAG (JTAG->FPGA1->EPC2->FPGA2-EPC2->JTAG)

 

не колдуя особо приведу схему включения JTAG которую использовал в множестве своих проектов до этого и кусок PCB платы на котором видно как идут проводники между ПЛИС и EPC.

 

байтбластер свой, но уже не первый и работает как часы.

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

 

когда пробуешь делать поиск устройств в JTAG цепочке и трогаешь разьемы EPC руками, то бывает все находится, а бывает находится целая сотня неизвестных устройств.

 

 

Где косяк может быть? Видимо сигналы где-то плохие, но найти где и что мне пока не удалось, да особо и нечем.

В распоряжении пока тестер и старый совковый осцилограф.

post-2-1124472782_thumb.jpg

post-2-1124472798_thumb.jpg

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


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

вот еще пару моментов отснятых более крупно.

 

кто работал - поделитесь кто как огранизовывал длинные JTAG цепочки.

какие резисторы и где.

 

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

post-2-1124473283_thumb.jpg

post-2-1124473296_thumb.jpg

post-2-1124473309_thumb.jpg

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


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

По наличию разьемов для epc могу предположить, что дело именно в них.

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

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


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

2 vetal

 

так как EPC надо все время перетыкать - то работаем на разьемах, причем давно и проблем вроде пока нет. :blink: Все звонили, контакт хороший.

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


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

А пробовали с небольшой емкостью (от десятков пФ до сотен пФ) на TCK играться? Думаю дело в рассогласовании.

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


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

3.14

пробовал играться с резисторами подтягивающими на питание или на землю сигналов JTAG, ставил 1к, 10к - один хер.

 

с кондером не пробовал. куда его? приведи пример.

 

был бы прибор нормальный цифровой - посмотрел бы что реально в линии.

своим C1-55 вижу только что короткий момент как такты идут - вроде идут.

данные разглядеть и их характеристики не удается. :smile3046: видно что где-то не очень хорошие уровни и срезы. может осцилографффф....

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


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

2 udofun

Какая частота TCK (полагаю идет с LPT), если около мегагерца, для начала можешь смело поставить пару кондеров ~500пФ поближе к входам TCK у ПЛИС. Если не поможет, попробуй увеличить до ~700пФ и добавить кондеры ~300пФ на входы TDI.

Возможно это перекос TDI-TCK , если так, то должно вылечиться.

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


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

Вообще-то в Вашей схеме допущена ошибка - сигнал TCK работает на кучу потребителей, это неправильно. К тому же не видно никаких попыток хоть как-то согласовать сигнал с нагрузкой. По хорошему любой синхросигнал работающий на несколько микросхем надо размножать на специальных микросхемах-размножителях и подавать на каждый приёмник - свой. Т.е. линия должна состоять из одного источника и одного приёмника. И даже такую передачу нужно согласовывать. То, что в даташитах часто приводят схемы где всё работает от одного источника - на самом деле не является полноценной электрической схемой, там только лишь показан принцип - не более. На практике все синхросигналы (независимо от рабочих частот) надо разводить по всем правилам ВЧ-дизайна. Дело в том, что современные микросхемы обладают очень быстрыми входами, и реагируют на любой дребезг на фронтах (старые микросхемы к этому не чувствительны, просто не успевают отреагировать на короткий всплеск напряжения, поэтому зачастую те же схемы там работают нормально), а в Вашей схеме дребезга на фронтах просто не может не быть, если отыщите хороший осцилл - обязательно их увидите.

Кроме того плата разведена мягко говоря "не здорово", проблемы те же - пренебрежение правилами ВЧ-дизайна, что только ухудшает картину.

Описанные Вами временные "всплески" работоспособности как раз указывают на то что всё дело в неверном использовании сигнала TCK.

 

Что можно сделать... попытайтесь пустить TCK через буфер размножитель, поставьте согласующие резисторы на этот буфер. Для 50-Омной линии это обычно 33 Ома. Не забудте про задержку сигнала в буфере, её возможно придётся компенсировать.

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


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

Совсем забыл... для того чтобы увидеть дребезг на фронтах - совсем не обязательно искать хороший осциллограф, Вы можете просимулировать нужные цепи встроенным пикадовским симулятором (с использованием IBIS-моделей применяемых микросхем), либо в HyperLynx (что предпочтительнее). Там же можно подобрать необходимые согласующие цепи. Практика показывает, что корректное моделирование даёт довольно точные результаты.

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


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

Может ли помочь в данном случае применение серии abt вместо hc(как я подозреваю) в качестве источника сигнала + небольшие конденсаторы(как советовал 3.14) по каждому входу tck?

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


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

кто работал - поделитесь кто как огранизовывал длинные JTAG цепочки.

какие резисторы и где.''

Если все это на одной плате - должно работать по рекомендованной схеме как JTAG так и режима загрузки от EPC2. Примеры имеются. (Конечно JTAGу должно быть уделено при разводке большее внимание)

Вашим осциллографом лучше не анализировать форму сигнала. Достаточно его наличия.

Попробуйте подтянуть TDO к VCC. В старых даташитах так и было.

Повесить кондесаторы 0.1 мкф на разъем JTAG (на EPC2 каждом не увидел)

VIO зачем на питании (если байтбластер MV)

Отключите высокочастотные генераторы на плате (могут влиять на JTAG)

Поинтересуйтесь, каким припоем паяли (может на барахолке с кислотой купили)

Если ставить буфер, то конечно только 3.3 вольтовые (abt запитывается от 5 вольт)

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


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

Может ли помочь в данном случае применение серии abt вместо hc(как я подозреваю) в качестве источника сигнала + небольшие конденсаторы(как советовал 3.14) по каждому входу tck?

 

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

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


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

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

 

о результатах напишу.

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


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

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

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

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


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

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

Моделирование в твоем случае вряд ли поможет :(

Двухслойка - импеданс линии как "гамбургер", HyperLynx и прочие его роста проги не учтут (ICX сможет, но просто перетащить из PCAD не получится).

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


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

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

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

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

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

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

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

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

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

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