реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
serj1979
сообщение Aug 21 2018, 12:55
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 25-12-15
Из: Пенза
Пользователь №: 89 844



Цитата(MPetrovich @ Aug 21 2018, 15:34) *
Просто хотелось бы сразу опробовать разные варианты, могущие разрешить ситуацию.

Да фиг знает... программатор точно исправен, другие ПЛИСины шьёт?
Конденсаторы земля/питание стоят?
Шьёте Impactом из WebPack(версия какая)?

Сообщение отредактировал serj1979 - Aug 21 2018, 12:56
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 21 2018, 14:12
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



Шью Impactом. Программатор до этой ПЛИСины (пару недель назад) работал нормально. Никто кроме меня им не пользуется)))
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 22 2018, 04:11
Сообщение #18


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(MPetrovich @ Aug 21 2018, 15:34) *
Есть))) Специально проверил. Только относится она по моему к случаю, представленному на рисунке чуть выше этой фразы. А изображена там схема прошивки цепочки ПЛИСов да еще с мультиплексором на пути ТСК. Возможно в этом случае "целостность цепи сигнала ТСК" будет действительно критичной.


Такие проблемы бывают и в совсем простых конфигурациях, типа Вашей. Поэтому правило общее и этому стоит уделять внимание, чтобы не иметь проблем в будущем при отладке.

Цитата
В моем случае я шью напрямую одну ПЛИС и вряд ли согласование по сопротивлению будут столь критичны.


В варианте соединения типа точка-точка тоже есть место для получения отраженного сигнала и результата в виде звона на линии, если нет согласования по импедансу. Можете попробовать взять любой пакет моделирования, тот же HyperLynx, промоделировать и посмотреть. Кстати, если есть возможность, то посмотрите форму сигнала TCK. Может быть это наведет на какие-то мысли.



--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
vladec
сообщение Aug 22 2018, 06:16
Сообщение #19


Профессионал
*****

Группа: Свой
Сообщений: 1 167
Регистрация: 3-10-05
Из: Москва
Пользователь №: 9 158



В моей практике раньше случались такие проблемы при длинном кабеле переходника от программатора до разъема на плате
Go to the top of the page
 
+Quote Post
Yuri124
сообщение Aug 22 2018, 07:25
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 10-08-18
Пользователь №: 106 692



Можно попробовать сигналы TCK, TDI, TDO от программатора до разъема на плате завести витыми парами (каждый сигнальный проводник свит с земляным проводником,а земляные - с каждой стороны подключены к земляным контактам разъема). Но, конечно, еще и от разводки сигналов JTAG по плате может зависеть - как расположена возвратная земля по отношению к сигнальным трассам. Но это больше на мегагерцах сказывается.
Ну и предложение включить в разрыв TCK резистор несколько десятков Ом поддержу - подавит возможный звон от отражений.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 22 2018, 07:33
Сообщение #21


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(MPetrovich @ Aug 21 2018, 17:12) *
Шью Impactом. Программатор до этой ПЛИСины (пару недель назад) работал нормально. Никто кроме меня им не пользуется)))

Как я понял Вы ID прочитать не можете. Значит проблемы все же аппаратные. А что написано в bsdl-файле о максимальной частоте TCK? Как тут указывали, можно просто сделать небольшой переходник с согласующими резисторами.
И еще. Как там с питанием. Может быть у древнего спартанца 5 вольт питание, а у бластера можно подавать только 3?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 22 2018, 13:16
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



 Уменьшено до 95%
Прикрепленное изображение
3264 x 1836 (2.75 мегабайт)

Прикрепил фото сигналов JTAG на осциллографе. Сверху вниз: TCK; TDI; TDO; TMS
Опробовал подключение различных сопротивлений последовательно с ТСК. Результат тот же - JTAG не видит м/сх.
По осциллограмме видно, что ТСК вполне приличной формы с минимальными звонами. Да и остальные сигналы тоже.

Цитата(iosifk @ Aug 22 2018, 08:33) *
Как я понял Вы ID прочитать не можете.

Да. И поскольку ID читается в начале каждой операции, то ни одной операции я не могу совершить через JTAG
Цитата
А что написано в bsdl-файле о максимальной частоте TCK?

Честно сказать ни разу не пользовался данными из bsdl-файла. Да и ниже 750кГц я по любому не смогу опуститься.
Цитата
Как тут указывали, можно просто сделать небольшой переходник с согласующими резисторами.

пробовал - пофиг...
Цитата
И еще. Как там с питанием. Может быть у древнего спартанца 5 вольт питание, а у бластера можно подавать только 3?

Питание ядра 1,8 вольт, питание переферии 1,2...3,6 вольт. Я использую 3.3В
Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 22 2018, 13:22
Сообщение #23


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(MPetrovich @ Aug 22 2018, 16:16) *
Прикрепил фото сигналов JTAG на осциллографе. Сверху вниз: TCK; TDI; TDO; TMS
Честно сказать ни разу не пользовался данными из bsdl-файла. Да и ниже 750кГц я по любому не смогу опуститься.

Мои статьи:
JTAG тестирование. Совр Электр №2,3,4,5 за 2007

См. рис. 9. Там расписано, как выглядят диаграммы команд в сигналах JTAG.
Попробуйте найти в программе программатора только команду чтения ID. Первые 4 клока TCK переводят порт JTAG в состояние сброс. И далее по диаграммам переходов все можно отследить...
См. рис. 10... Вот как выглядит чтение ID

А в bsdl-файле написано, какой ID должен прочитаться...
Если будут вопросы по статьям, то могу ответить по скайпу голосом...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 22 2018, 13:42
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



Цитата
Попробуйте найти в программе программатора только команду чтения ID.

Это каким образом я вытащу из Impact команду чтения ID?
По факту первая же команда при запуске JTAG это и есть чтение ID. Только после корректного прочтения продолжается выполнение других команд.
Я осциллограмму привел больше для того, чтобы показать форму сигналов и то, что программатор их формирует. А вот ответа от м/сх кроме одиночного падения TDO в ноль нету.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 22 2018, 14:11
Сообщение #25


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(MPetrovich @ Aug 22 2018, 16:42) *
Это каким образом я вытащу из Impact команду чтения ID?

Думаю так:
Импакт - файл - инициализация цепи.

Правда сейчас проверить не на чем...

И еще.
Output - SVF файл - создать SVF файл

Вот в этом файле можно прочесть "что отправляли" и "что получили"...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 22 2018, 14:21
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



В моем случае: Operation -> Initialize Chain
Опробовал. То же самое на экране осциллографа.
А можно ли закольцевать TDI->TDO, чтобы проверить программатор?
Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 22 2018, 15:06
Сообщение #27


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(MPetrovich @ Aug 22 2018, 17:21) *
А можно ли закольцевать TDI->TDO, чтобы проверить программатор?

Проверить можно на любом исправном стартовом наборе.
А "закольцовывать" вообще смысла нет. Просто для этого нужно в цепь поставить триггер с TCK на тактовом... А зачем?
На исправном даете команду чтения ID. Потом сравниваете с Вашей платой. В SVF файле сразу же можно прочитать что подавали и что получили. ID и коды команд - записаны в bsdl файле...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 23 2018, 05:55
Сообщение #28


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



Вот что написано у меня в файле xc2s300e.bsd:
entity generated_xc2s300e is

generic (PHYSICAL_PIN_MAP : string := "X_PACKAGE");

port (TCK: in bit; TDI: in bit; TDO: out bit; TMS: in bit);

use STD_1149_1_2001.all;
attribute Component_Conformance of xc2s300e : entity is "STD_1149_1_2001";

attribute PIN_MAP of xc2s300e : entity is PHYSICAL_PIN_MAP;

constant X_PACKAGE:PIN_MAP_STRING := "TCK : 1," & "TDI : 2," & "TDO : 3," & "TMS : 4";
attribute Tap_Scan_In of TDI: signal is true;
attribute Tap_Scan_Mode of TMS: signal is true;
attribute Tap_Scan_Out of TDO: signal is true;
attribute Tap_Scan_Clock of TCK: signal is (1.0e06, BOTH);

attribute Instruction_Length of xc2s300e: entity is 2;
attribute Instruction_Opcode of xc2s300e: entity is "BYPASS (11)";
attribute Instruction_Capture of xc2s300e: entity is "01";
attribute Boundary_Length of xc2s300e: entity is 1;
attribute Boundary_Register of xc2s300e: entity is "0 (BC_1, *, control, 0)";

end xc2s300e;

Не пойму где тут указан ID?
В файл .svf у меня вообще ничего не пишется, он пуст.

Прошу прощения .svf не пустой...

// Created using Xilinx iMPACT Software [ISE - 9.2i]
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET;
STATE IDLE;
FREQUENCY 1E6 HZ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
HDR 0 ;
TDR 0 ;
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 23 2018, 06:20
Сообщение #29


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(MPetrovich @ Aug 22 2018, 16:16) *
Питание ядра 1,8 вольт, питание переферии 1,2...3,6 вольт. Я использую 3.3В


Банк 2 тоже запитан от 3,3 В?


Цитата(MPetrovich @ Aug 23 2018, 08:55) *
Вот что написано у меня в файле xc2s300e.bsd:


Не знаю где Вы взяли такой файл. У меня в ISE 14.7 он выглядит иначе, см. вложение.

В нем есть строки:
Код
attribute IDCODE_REGISTER of XC2S300E_BARE : entity is
    "XXXX" &    -- version
    "0000101" &    -- family
    "000100000" &    -- array size
    "00001001001" &    -- manufacturer
    "1";        -- required by 1149.1


Это и есть ID кристалла.

PS: а TDI/TDO местами не пробовали поменять? wink.gif
Прикрепленные файлы
Прикрепленный файл  xc2s300e.bsd.zip ( 15.3 килобайт ) Кол-во скачиваний: 3
 


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
MPetrovich
сообщение Aug 23 2018, 06:28
Сообщение #30


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 25-07-16
Пользователь №: 92 691



Цитата
Банк 2 тоже запитан от 3,3 В?

Да
Цитата
Не знаю где Вы взяли такой файл. У меня в ISE 14.7 он выглядит иначе, см. вложение.

У меня ISE 9.2 и там формируется такой вот файл(пожимаю плечами) :-)
А в ISE 14.7 разве есть такой древний кристалл?

Сообщение отредактировал MPetrovich - Aug 23 2018, 06:29
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 17:20
Рейтинг@Mail.ru


Страница сгенерированна за 0.014 секунд с 7
ELECTRONIX ©2004-2016