|
Spartan-6 и китайский клон загрузочного кабеля |
|
|
|
Jun 27 2013, 15:58
|
Группа: Участник
Сообщений: 13
Регистрация: 8-05-08
Из: Санкт-Петербург
Пользователь №: 37 373

|
А в BSDL-файле нет случайно раздела compliance pattern? C текстом, аналогичным нижеприведенному? (взял из первого попавшегося файла)
-- Compliance-Enable Description
attribute COMPLIANCE_PATTERNS of XC6VLX365T_FF1759 : entity is "(PROGRAM_B, HSWAPEN) (10)";
Если "да", то для корректной работы JTAG-автомата необходимо эти условия соблюсти, т.е. произвести соответствующие переключения цепей, подходящих к данным пинам.
|
|
|
|
|
Jun 28 2013, 07:55
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325

|
Цитата(Raven @ Jun 26 2013, 15:25)  Есть ли какие-то новости? Или это конструкция выходного дня, и спрашиваю рановато? Действительно, конструкция выходного дня. Снял осциллограммы. Но интерпретировать их пока не могу. На картинках цикл считывания ID в разных временных масштабах. Желтая линий - клоки TCK, голубая - TDI, красная - TDO На последней картинке самое начало цикла обмена. Видно, что TDO до некоторого времени в третьем состоянии, потом там появляются данные, потом снова уходит в третье состояние.
Цитата(givcha @ Jun 27 2013, 19:58)  А в BSDL-файле нет случайно раздела compliance pattern? C текстом, аналогичным нижеприведенному? (взял из первого попавшегося файла)
-- Compliance-Enable Description
attribute COMPLIANCE_PATTERNS of XC6VLX365T_FF1759 : entity is "(PROGRAM_B, HSWAPEN) (10)";
Если "да", то для корректной работы JTAG-автомата необходимо эти условия соблюсти, т.е. произвести соответствующие переключения цепей, подходящих к данным пинам. Честно говоря, не очень понимаю, что все это значит. Тем не менее - спасибо - буду разбираться.
|
|
|
|
|
Jun 28 2013, 11:39
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Это уже какой-то материал. Правда, без waveform'ы TMS разбираться будет плохо, и останется приличный процент гадания на кофейной гуще, но можно попробовать. Однако, если есть возможность снять то же самое, но с TMS,- было бы очень здорово (можно за счет замены TDI линии наTMS - что выдает на TDI iMPACT, мы уже видим).
Было бы здорово еще поподробнее рассмотреть во времени (растянуть по времени) зависимости между TCK, TDI, TDO, TMS (по фронтам или спадам драйвится - сейчас непонятно).
Кстати, а какой масштаб по оси X (временной)? Интересно в свете проверки рабочих частот TCK.
Сообщение отредактировал Raven - Jun 28 2013, 11:59
|
|
|
|
|
Jun 28 2013, 12:00
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325

|
Цитата(Raven @ Jun 28 2013, 15:39)  Это уже какой-то материал. Правда, без waveform'ы TMS разбираться будет плохо, и останется приличный процент гадания на кофейной гуще, но можно попробовать. Однако, если есть возможность снять то же самое, но с TMS,- было бы очень здорово (можно за счет замены TDI линии наTMS - что выдает на TDI iMPACT, мы уже видим).
Было бы здорово еще поподробнее рассмотреть во времени (растянуть по времени) зависимости между TCK, TDI, TDO, TMS (по фронтам или спадам драйвится - сейчас непонятно). TMS досниму. На второй картинке можно разглядеть, что по спадам драйвится. Насколько я вижу. На 2-ой и 4-ой картинке 2мкс/дел. Клок был 3 МГц. Так и получается.
|
|
|
|
|
Jul 2 2013, 14:36
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Проверил работу iMPACT'а у себя с моделированием неисправностей типа "нет соединения". Для отладки продуктивнее оказалось использовать функционал <iMPACT Menu> :: Debug -> Chain Integrity Test (что неудивительно, в общем-то, :-) для такой ситуации). Разобрался, что iMPACT тут делает (ничего хитрого, могу изложить подробнее, если надо). В общем, итог такой. Если все JTAG сигналы от кабеля к разъему на плате, кроме TDI, имеют хороший контакт (TDI - no connect), то наблюдается поведение, аналогичное вашему случаю: Цитата(Pavel_I @ Jun 21 2013, 00:46)  Вот лог при попытке сделать Chain Integrity Test
Maximum TCK operating frequency for this device chain: 25000000. Validating chain... INFO:iMPACT:1206 - Instruction Capture = '111111110101' INFO:iMPACT:1207 - Expected Capture = '101010XXXX01' INFO:iMPACT:2130 - Boundary-scan chain test failed . Please check tdi->tdo connection between the cable and device:'1' ( 'xc6slx16'). A problem may exist in the hardware configuration. Check that the cable, scan chain, and power connections are intact, that the specified scan chain configuration matches the actual hardware, and that the power supply is adequate and delivering the correct voltage.
И это хорошо объясняет, почему цепочка в самом начале энумерируется, а при попытке выполнить иную задачу все накрывается. Поскольку TCK,TDO и TMS сигналы подключены хорошо, то : 1) переключения в машине состояний TAP'а проходят корректно (TCK, TMS); 2) соответственно, перевод TAP FSM в состояние Test-Logic-Reset и загрузка "инструкции по умолчанию" - IDCODE - тоже проходит нормально; 3) выдвигание содержимого всех IDCODE регистров JTAG-цепочки тоже идет хорошо (TDO предполагаем работающим). А вот биты, которые вдвигаются через TDI и потом ожидаются, в конце концов, на выходе из TDO,- вот они теряются. Вместо них вдвигаются 1-цы. Что мы и видим в логе, и что служит причиной ругани iMPACT'а. Зеленым цветом я подкрасил выдвигаемое в ходе Integrity Test'а защелкнутое содержимое IR'а, а красным - то, что вдвигалось по TDI со стороны кабеля и отвечающие им реальные биты на TDO. И понятно, почему невозможно вдвинуть какую-нибудь JTAG инструкцию со стороны кабеля, даже ту же IDCODE для выполнения IDCODE looping'а (TDI не работает, как положено).
|
|
|
|
|
Jul 2 2013, 21:25
|
Частый гость
 
Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325

|
Цитата(Raven @ Jul 2 2013, 18:36)  Проверил работу iMPACT'а у себя с моделированием неисправностей типа "нет соединения". Для отладки продуктивнее оказалось использовать функционал <iMPACT Menu> :: Debug -> Chain Integrity Test (что неудивительно, в общем-то, :-) для такой ситуации). Разобрался, что iMPACT тут делает (ничего хитрого, могу изложить подробнее, если надо).
В общем, итог такой. Если все JTAG сигналы от кабеля к разъему на плате, кроме TDI, имеют хороший контакт (TDI - no connect), то наблюдается поведение, аналогичное вашему случаю: Браво! В точку. Виноватым оказался переходник, который раньше никогда не использовался. Не был должным образом пропаен контакт TDI (третий контакт слева на фото). Теперь все работает. Осциллографом смотрел до этого переходника.
|
|
|
|
|
Jul 3 2013, 11:31
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Рад, что помогло. Кстати, китайцы, похоже, еще кое на чем сэкономили. Судя по осциллограмме, на TDO отчетливо видно z-state, а хорошие люди делают pull-up на TDO (4.7 - 10 кОм), поскольку чей-то выход - он же ведь еще и чей-то вход ....  и негоже, чтобы он болтался в воздухе.
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|