|
Проблема с JTAG, Вместо цепочки в iMPACT unknow bypass |
|
|
|
Dec 17 2013, 11:55
|
Узкополосный широкополосник
     
Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462

|
Цитата(Raven @ Dec 16 2013, 18:57)  С этим полностью согласен. Однако с отражениями, по идее, должны успешно справляться резисторы последовательного согласования, устанавливаемые у выходов-источников сигнала. И снижать уровень переотражений в нагрузку до приемлемого уровня (чтобы не было значимых 'сёдел' на фронтах, во всяком случае). Другое дело, что они не всегда имеют подходящее сопротивление. Одностороннее согласование не дает никаких гарантий, да и седла образуются только если сопротивление нагрузки чисто активное, чего как мы знаем в реальной жизни не бывает. Цитата(Raven @ Dec 16 2013, 18:57)  Такой подход (с буферизацией 1:N) - это, конечно, правильно, и точно должно убивать проблему на корню, но и дороговато. SN74AUP3G34 или SN74AUC2G34 с объединенными входами - это дорого, много места занимает и потребляет? Цитата(Raven @ Dec 16 2013, 18:57)  С другой стороны, почти вся схемотехника evaluation boards, с которыми имел дело, не имеет подобного. Причем, во всех этих случаях соображения экономии совершенно разработчиков не обременяли (учитывая цену плат и их основную задачу). В очередной раз убеждаюсь, что большинство не означает правильно.
|
|
|
|
|
Dec 17 2013, 16:26
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(Suho @ Dec 17 2013, 12:26)  .... *** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates .... Setting cable speed to 6 MHz. .... Для начала - уменьшите fTCK до более адекватных 1-3 MHz (а для проверки принципиальной работоспособности - до предельно низких возможных, ну, скажем, до 50-100 kHz). Цитата(rloc @ Dec 17 2013, 15:55)  Одностороннее согласование не дает никаких гарантий Ну, это уже философский вопрос. Какие дополнительные гарантии нужны, если после проверки на серии образцов все прекрасно работает? И в похожих решениях вокруг тоже. Гарантии в дополнение к этому - дополнительная цена (в широком смысле - чипы, место на плате, потребление и т.п.). Зачем платить больше, если область применения такой маниакальности не требует? Цитата(rloc @ Dec 17 2013, 15:55)  SN74AUP3G34 или SN74AUC2G34 с объеденными входами - это дорого, много места занимает и потребляет? В сравнении с резисторами? Шутите!  Цитата(rloc @ Dec 17 2013, 15:55)  В очередной раз убеждаюсь, что большинство не означает правильно. Большинство в данном случае означает еще и некоторую статистику применения, что имеет значение IMHO.
|
|
|
|
|
Dec 18 2013, 05:33
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 19-11-05
Пользователь №: 11 087

|
Цитата(Raven @ Dec 17 2013, 20:26)  Для начала - уменьшите fTCK до более адекватных 1-3 MHz (а для проверки принципиальной работоспособности - до предельно низких возможных, ну, скажем, до 50-100 kHz). Минимум, что можно поставить в настройках кабеля 750 кГц. Вот зарисовал осциллограммы выходных сигналов при инициализации:  Сигналы напрямую идут на флеш XC1802VQ44, за ней стоит XC2S200.
|
|
|
|
|
Dec 18 2013, 07:25
|
Узкополосный широкополосник
     
Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462

|
Цитата(Raven @ Dec 17 2013, 20:26)  В сравнении с резисторами? В соответствие с IEEE 1149.7, рекомендуют 1) Для схем разветвления типа "звезд" X, T и TX выравнивать длины, рассчитывать резистор для последовательного согласования источника в зависимости от количества потребителей, ставить дополнительные резисторы для изоляции входных емкостей, симулировать. 2) Буферизовать тактовый сигнал, особенно в случаях, когда используются микросхемы без встроенного механизма улучшения электромагнитной совместимости (slew rate, impedance matching). Кто выполняет рекомендации по первому пункту? Каждый разработчик вправе выбирать, как лучше строить.
|
|
|
|
|
Dec 18 2013, 09:43
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(Suho @ Dec 18 2013, 09:33)  Минимум, что можно поставить в настройках кабеля 750 кГц. Вот зарисовал осциллограммы выходных сигналов при инициализации: На данных картинках никакого криминала не видно. К тому же, сложно что-то оценивать по выхваченной откуда-то из процесса обмена картине, без привязки к конкретному событию. Лучше приведите полный лог iMPACT'а при прогоне, скажем IDCODE для одного из устройств в цепочке, или определите правильный кабель в HW настройках, и потом приведите полный лог энумерации JTAG цепочки. В общем, побольше информации из логов, но только с корректным пояснением, в каких условиях они снимались. Кстати, чтобы сразу разделить проблему: а на данном экземпляре платы LPT-кабель все распознает корректно, или с ним тоже проблемы?
|
|
|
|
|
Dec 18 2013, 12:42
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 19-11-05
Пользователь №: 11 087

|
Цитата(Raven @ Dec 18 2013, 13:43)  На данных картинках никакого криминала не видно. К тому же, сложно что-то оценивать по выхваченной откуда-то из процесса обмена картине, без привязки к конкретному событию.
Лучше приведите полный лог iMPACT'а при прогоне, скажем IDCODE для одного из устройств в цепочке, или определите правильный кабель в HW настройках, и потом приведите полный лог энумерации JTAG цепочки.
В общем, побольше информации из логов, но только с корректным пояснением, в каких условиях они снимались.
Кстати, чтобы сразу разделить проблему: а на данном экземпляре платы LPT-кабель все распознает корректно, или с ним тоже проблемы? В том-то и проблема. До этого я работал с Parallel Cable III. Ни каких проблем с ним нет. Все отлично работает и программируется. Распознается. Тут принесли Platform Cable USB. Воткнул его и ничего. Мертво все. Лог соединения кабеля я приводил выше. Пробовал на разных скоростях. Может просто, где-то принципиально ошибаюсь? И подключения Parallel Cable III и Platform Cable USB различаются. Вот кусок схемы:
|
|
|
|
|
Dec 18 2013, 18:52
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(Suho @ Dec 18 2013, 16:42)  В том-то и проблема. До этого я работал с Parallel Cable III. Ни каких проблем с ним нет. Все отлично работает и программируется. Распознается. Тут принесли Platform Cable USB. Воткнул его и ничего. Мертво все. Ну, уже что-то понятно. Значит, принципиально JTAG на плате рабочий. Проблема только с USB кабелем. Цитата(Suho @ Dec 18 2013, 16:42)  Может просто, где-то принципиально ошибаюсь? И подключения Parallel Cable III и Platform Cable USB различаются. Нет, подключение принципиально не должно отличаться. Если, конечно, все необходимые подтягивающие резисторы установлены, как это и положено, на "принимающей" плате. И ее функционирование в этом смысле не зависит от JTAG-кабеля (от того, есть или нет соответствующие резисторы на стороне кабеля). У вас никаких положенных, вообще-то, резисторов нет и в помине - все JTAG сигналы напрямую подключены к разъему, и все. Не исключено, что параллельный кабель резистор(ы) имеет, а USB-шный - нет. Но это только одна из версий, лежащая на поверхности. Все же, как правило, всю эту JTAG братию не так легко сбить с пути истинного. Но в китайских кабелях бывают непропаи контактов (например, того же TDO) - вот и вариант для наблюдаемого эффекта. А чтобы точнее определиться - нужны дополнительные логи, с конкретными последовательностями 0./1 на входе и выходе. iMPACT выдает такие. Возможно, при других исходных данных и в ответ на другие команды, но точно выдает (посмотрите, например, более ранние сообщения из этого же топика). Кстати, из лога следует (если я не отстал от жизни), что шефство над кабелем пытается взять Digilent plugin, а это вовсе не родной драйвер для Xilinx USB Platform Cable (а, видимо, Digilent'овский для их USB-JTAG наплатного модуля). У вас точно родной Platform Cable? Все ли правильно у вас определяется по USB драйверной части? В общем, попробуйте вначале добиться соответствия между реальным железом (USB Platform Cable) и тем, как он распознался в iMPACT'е. Попробуйте проделать все так, как в соответствующем Application Note об установке USB Platform Cable говорится (только поищите свежую инфу, адекватную вашему ISE - драйвера могли поменяться).
|
|
|
|
|
Jan 14 2014, 08:36
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 19-11-05
Пользователь №: 11 087

|
Цитата(Raven @ Dec 18 2013, 22:52)  Ну, уже что-то понятно. Значит, принципиально JTAG на плате рабочий. Проблема только с USB кабелем.
Нет, подключение принципиально не должно отличаться. Если, конечно, все необходимые подтягивающие резисторы установлены, как это и положено, на "принимающей" плате. И ее функционирование в этом смысле не зависит от JTAG-кабеля (от того, есть или нет соответствующие резисторы на стороне кабеля). У вас никаких положенных, вообще-то, резисторов нет и в помине - все JTAG сигналы напрямую подключены к разъему, и все. Не исключено, что параллельный кабель резистор(ы) имеет, а USB-шный - нет.
Но это только одна из версий, лежащая на поверхности. Все же, как правило, всю эту JTAG братию не так легко сбить с пути истинного. Но в китайских кабелях бывают непропаи контактов (например, того же TDO) - вот и вариант для наблюдаемого эффекта.
А чтобы точнее определиться - нужны дополнительные логи, с конкретными последовательностями 0./1 на входе и выходе. iMPACT выдает такие. Возможно, при других исходных данных и в ответ на другие команды, но точно выдает (посмотрите, например, более ранние сообщения из этого же топика).
Кстати, из лога следует (если я не отстал от жизни), что шефство над кабелем пытается взять Digilent plugin, а это вовсе не родной драйвер для Xilinx USB Platform Cable (а, видимо, Digilent'овский для их USB-JTAG наплатного модуля). У вас точно родной Platform Cable? Все ли правильно у вас определяется по USB драйверной части?
В общем, попробуйте вначале добиться соответствия между реальным железом (USB Platform Cable) и тем, как он распознался в iMPACT'е. Попробуйте проделать все так, как в соответствующем Application Note об установке USB Platform Cable говорится (только поищите свежую инфу, адекватную вашему ISE - драйвера могли поменяться). В общем, после влезания с осциллографом куда надо и не надо было выявлено, что в кабеле погорел входной компаратор на TDO. Всем спасибо за помощь.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|