Jump to content

    
Sign in to follow this  
MrGalaxy

Вопросы по JTAG boundary scan

Recommended Posts

On 4/27/2020 at 8:40 AM, MrGalaxy said:

Однако, халява не прокатила - для файла .sof и девайса EPF10K50R240 птичка на erase не ставится, эта опция не активна. Так что или стирать конфиг. микросхему, или ставить перемычку.

1957509431_.thumb.png.977ee92041e9271861d3ad85a45d15a1.png

А если сделать пустую прошивку (соответствующую начальному состоянию м/с) и грузить её?...

 

On 4/27/2020 at 9:17 AM, Aleх said:

Но, как по мне, ничего не будет при кз 1-2 выводов. Это штатный режим, КМОП микросхемы от такого не горят.

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

И уж точно я не согласен, что замыкание выводов на КЗ есть штатный режим работы!  Да, может выходы не сгорят, может сгорят, но я не видел ни одного документа, дающего право замыкать выводы друг на друга. (максимум видел для некоторых серий стандартной логики возможность работать на 75 Ом без гарантий параметров).

On 4/27/2020 at 9:45 AM, MrGalaxy said:

А Вы говорите тест делают. Человеческий фактор никто не отменял.

Уж это да. JTAG особенно хорош для тестирования компонентов, соединённых между собой (например проц+память+плис) на плате. Иногда - несколько плат, соединённых вместе. А вот для выявления проблем, аналогичных вышеуказанной, нужно как минимум некое внешнее устройство ввода-вывода стандартных логических сигналов, а иногда нужно спец.устройство (например, у меня ключи 27В 2А - такое чем стандартным нагрузить?).

Share this post


Link to post
Share on other sites
1 hour ago, prostoRoman said:

И уж точно я не согласен, что замыкание выводов на КЗ есть штатный режим работы!  Да, может выходы не сгорят, может сгорят, но я не видел ни одного документа, дающего право замыкать выводы друг на друга. (максимум видел для некоторых серий стандартной логики возможность работать на 75 Ом без гарантий параметров).

Если нет документа, надо руководствоваться опытом, а если и его нет, то просто зравым смыслом. Сопротивление открытого mos огромно, большой ток через него в принципе течь не может. Это отнюдь не TTL, когда микросхемы выгорали с дымком. Кроме того, у ПЛИС достаточно большой корпус для рассеяния тепла, сравните с полуторамперным LDO. Про опыт ... вы где то видели, чтобы от закоротки логика горела? Я - нет, уже лет 20 точно (с тех пор, как ттл перестали использовать).

Share this post


Link to post
Share on other sites
3 часа назад, prostoRoman сказал:

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

Нет. Крутизна фронтов - это slew rate в Альтере, Нагрузочная способность выхода - это, считайте, количество подключенных к выходу p/n ключей. Стабилизации тока разумеется нет.

3 часа назад, prostoRoman сказал:

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

В своё время в даташитах Альтеры на ПЛИС типа MAX700 MAX3000 было примечание, суть которого в следующем: если требуется меньший звон по пинам, то неиспользуемые пины можно подключить к земле снаружи, а в прошивке сделать выход нулем.

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

Share this post


Link to post
Share on other sites
3 часа назад, dvladim сказал:

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

Выравнивающие резисторы много места не займут, зато сколько удовольствия. Хоть кристалл и один, но мало ли что.

Share this post


Link to post
Share on other sites
5 hours ago, Aleх said:

 Про опыт ... вы где то видели, чтобы от закоротки логика горела? Я - нет, уже лет 20 точно (с тех пор, как ттл перестали использовать).

Дело Ваше. Потом не плачьте только. Опус про площадь кристалла - это отдельный шедевр. 

4 hours ago, dvladim said:

Стабилизации тока разумеется нет.

Значит пользоваться этим нельзя. Другое дело, что к JTAG-compatible IO pin могут предъявляться дополнительные требования к стойкости к КЗ (в т.ч. они могут быть реализованы как отдельный каскад с ограничением выходного тока). 

4 hours ago, dvladim said:

В своё время в даташитах Альтеры на ПЛИС типа MAX700 MAX3000 было примечание, суть которого в следующем: если требуется меньший звон по пинам, то неиспользуемые пины можно подключить к земле снаружи, а в прошивке сделать выход нулем.

Правильно, тут вывод не работает против источника питания или против вывода в другом состояние.

4 hours ago, dvladim said:

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

Если уж очень хочется, то хорошенько подумав, можно. На свой страх и риск, если производитель не разрешил этого явно. Просто если что - не докажешь потом, если что...

Share this post


Link to post
Share on other sites
1 час назад, MrGalaxy сказал:

Выравнивающие резисторы много места не займут

29 минут назад, prostoRoman сказал:

Значит пользоваться этим нельзя.

Открытый канал транзистора неплохо аппроксимируется линейным сопротивлением.

31 минуту назад, prostoRoman сказал:

Другое дело, что к JTAG-compatible IO pin могут предъявляться дополнительные требования к стойкости к КЗ

Если это явно не указано (а я такого нигде не видел) то имеет смысл их считать обычными IO в фиксированном режиме.

32 минуты назад, prostoRoman сказал:

Просто если что - не докажешь потом, если что...

Доказывается элементарно. Вставив в разрыв каждого вывода нулевое сопротивление и измерив ток через него прекрасно пролезаем в предельно-допустимый режим.

Share this post


Link to post
Share on other sites
5 hours ago, dvladim said:

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

Подтверждаю, так делают. Мне приходилось проектировать несколько древних микросхем с параллельным PCI, где для достижения нужного выходного тока объединяли пады по 4: выходная логика заводилась параллельно на все 4 пада, а их площадки разваривались на один вывод корпуса. Работало просто замечательно. И ничего не горело, разумеется.

53 minutes ago, prostoRoman said:

Дело Ваше. Потом не плачьте только. Опус про площадь кристалла - это отдельный шедевр.

Я писал про корпус. Не путайте кристалл и корпус, это разные вещи. Кристалл размещен внутри корпуса, в т.н. колодце. Выводы разварены. Если пин много потребляет, ток течет по кольцу вокруг кристалла  -греется весь кристалл, а за ним и корпус. Чем больше корпус, тем больше тепла можно отвести, и больший ток пропустить. Почитайте, как микросхемы внутри сконструированы.

 

Share this post


Link to post
Share on other sites
22 hours ago, dvladim said:

Открытый канал транзистора неплохо аппроксимируется линейным сопротивлением.

Верно. Небольшим номиналом, со всеми вытекающими...

21 hours ago, Aleх said:

Я писал про корпус. Не путайте ........

Не путаю. При КЗ, если повезёт, может выгореть ровно один канал выходного транзистора. Вы за 20 лет замыкания выходов ни разу не удосужились прикинуть ток и мощность КЗ, объём, массу и скорость нагрева канальной структуры выходного ключа? Для начала почитайте книжки самостоятельно.

Share this post


Link to post
Share on other sites

О, ребяты, прям, моя тема...

Производство меня в конец доканало соплями и непропаями, по сему вынудили меня взяться за BoundaryScan. Плотно...

Ситуация: АРМ процессор с нандами, SD, gpio, LCD...

Надо тестить по JTAG. Установил TopJTAG Probe. Игрушка хорошая, но бестолковая. Ногами подрыгать, посмотреть состояние на ногах. Можно, как лог-анализатором подсмотреть, чего и куда шлёт проц.

А вот, написать полноценный тест - никак.

Xочется большего! А именно: хочу увидеть через JTAG NAND, NOR и т.д.  Считать их ID или записать/считать байт. Ну и автоматизировать это. Есть бесплатная софтина, что б скрипты какие поддерживала, что б уж совсем с нуля не писать?

Кое как пробил себе доступ и лицензию к софтине Nebula, но чёт страшно её на конторском компе запускать (просит какие то порты открыть для контроля, контроля чего - не понятно, софтина же бесплатная)

Кстати, не понятно про iMPACT, он может подобные скрипты затягивать, типа для прошивки маленьких ПЗУ(для Non-Xilinx микросхем)? SVF-файл, это случайно не то самое... Зачем то же он BSDL файлы подгружает. Неужели только для того, что бы узнать длину цепочки неведомой микрухи? Не верю. Должно быть, что то мощное.

Share this post


Link to post
Share on other sites
2 hours ago, Trashy_2 said:

 Есть бесплатная софтина, что б скрипты какие поддерживала, что б уж совсем с нуля не писать?

Моя формула успеха была следующая. Для начала необходимо раздобыть:

1. альтеровский байтбластер (чтобы комп подключить к житаг-разъему платы).

2. altera programmer standalone - как-то так называлась, бесплатная. Была под линукс и винду. Плюс, нужен драйвер байтбластера.

3. Качаете альтеровский демонстрационный JAM скрипт (кажется, качал с сайта альтеры) - скрипт умеет определять длину цепи и альтеровские ПЛИС по айдикоду. Скрипт был бесплатный.

Далее, цепляется житаг, поднимается альтеровский житаг-сервер. Работать с ним можно удаленно по сети, что я и делал : стенд в лаборатории, а я у себя в кабинете. А дальше работа выглядела так: из консоли запускается JAM-плеер (название бинарника за давностью лет не вспомню) и передается JAM скрипт на исполнение. Вывод только в консоль, ессно. Т.е. работа выглядела rак: в одном окне в редакторе правлю скрипт, в другом окне в консоли этот скрипт запускаю. Дешево, сердито, и совершенно бесплатно.

Надо сказать, что язык JAM совершенно убогий и примитивный. Но если разделить задачу на процедуры, то возможности становятся практически безграничными. Гипотетически можно было еще нарисовать какое нибудь гуи, но мое руководство устроил и вывод в консоль - благо что пускалось это и из под линукса и из под винды, и может быть даже доса (на производстве компы - архаика).

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

Share this post


Link to post
Share on other sites
2 hours ago, Trashy_2 said:

Xочется большего! А именно: хочу увидеть через JTAG NAND, NOR и т.д.  Считать их ID или записать/считать байт. Ну и автоматизировать это. Есть бесплатная софтина, что б скрипты какие поддерживала, что б уж совсем с нуля не писать?

Да, есть. Все уже придумано до нас :)

UrJtag

Share this post


Link to post
Share on other sites
13 hours ago, Trashy_2 said:

О, ребяты, прям, моя тема...

Производство меня в конец доканало соплями и непропаями, по сему вынудили меня взяться за BoundaryScan. Плотно...

Ситуация: АРМ процессор с нандами, SD, gpio, LCD...

Надо тестить по JTAG. Установил TopJTAG Probe. Игрушка хорошая, но бестолковая. Ногами подрыгать, посмотреть состояние на ногах. Можно, как лог-анализатором подсмотреть, чего и куда шлёт проц.

А вот, написать полноценный тест - никак.

Xочется большего! А именно: хочу увидеть через JTAG NAND, NOR и т.д.  Считать их ID или записать/считать байт. Ну и автоматизировать это. Есть бесплатная софтина, что б скрипты какие поддерживала, что б уж совсем с нуля не писать?

Кое как пробил себе доступ и лицензию к софтине Nebula, но чёт страшно её на конторском компе запускать (просит какие то порты открыть для контроля, контроля чего - не понятно, софтина же бесплатная)

Кстати, не понятно про iMPACT, он может подобные скрипты затягивать, типа для прошивки маленьких ПЗУ(для Non-Xilinx микросхем)? SVF-файл, это случайно не то самое... Зачем то же он BSDL файлы подгружает. Неужели только для того, что бы узнать длину цепочки неведомой микрухи? Не верю. Должно быть, что то мощное.

И у меня такая же ситуация ARM9+DSP, аудиокодек, NAND, SDRAM, периферия на I2C, UART, SPI. В качестве JTAG я использую китайский Jlink и пробовал самодельный на FT232. Пытался разобраться с UrJTAG и OpenOCD но ничего не вышло. Пока остановился на том чтобы освоить программирование NAND флешки через JTAG проца средствами Segger OpenFlashLoader

Share this post


Link to post
Share on other sites
12 hours ago, Raven said:

Да, есть. Все уже придумано до нас :)

UrJtag

Вот голова садовая... Я ж его скачал, установил, прочитал документ, а запустить забыл!  :biggrin:

Спасибо, что напомнили.

12 hours ago, Aleх said:

 JAM скрипт

Я, так и предполагал, что должно быть счастье. Спасибо, если UrJTAG не оправдает надежды, то разберусь с "джемом"...

Share this post


Link to post
Share on other sites

Ну, UrJTAG - это вилы...

Начинается с того, что нет библиотеки libusb0.dll... Не запускается. Пока её найдешь... И хрен его знает, правильный либ или нет... Все инструкции 15 летней давности.

Ни с Альтера ЮСБ-Бластером, ни с Xilinx не стал работать.

Xilinx'а не видит в принципе, а с альтерой пишет, что приконнектился к драйверу, но на команде detect уходит в ступор.

Пробовал вендоры прописывать - ноль.

 

Почему при запуске cable UsbBlaster, он пишет, что приконнектился к libFTD2xx?

Edited by Trashy_2

Share this post


Link to post
Share on other sites
5 hours ago, Trashy_2 said:

Ну, UrJTAG - это вилы...

 

А кто сказал, что  будет легко? Добро пожаловать в мир Open Source, GNU, POSIX etc

 

5 hours ago, Trashy_2 said:

Начинается с того, что нет библиотеки libusb0.dll... Не запускается. Пока её найдешь... И хрен его знает, правильный либ или нет... Все инструкции 15 летней давности.

 

Ну, в значительной части они вроде все еще актуальны. А разработка там продолжается, особенно хорошо видно по их GitHub репозиторию (ну, и по выложенным последним бинарникам тоже). А вообще реальные пацаны :) такие штуки из исходников собирают, под свою платформу/окружение. Заодно в процессе волей-неволей растет уровень понимания инструмента. Там не так уж много для начала вникать надо (а вникать все равно придется, отрасль такая, так лучше уж в этот tool вникать - инвестиции оправдаются). У меня, например, вполне получилось в CygWin собрать (хоть я и не программист).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this