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

 
 
 
Reply to this topicStart new topic
> Программирование ATSAM-контроллеров через JTAG
Pasha_a13
сообщение Feb 25 2014, 16:46
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



Добрый день!

Подскажите пожалуйста, имеется ли возможность программирования ATMEL ATSAM-контроллеров через JTAG ?
Я имею ввиду открытость и доступность информации по JTAG-командам. Я не нашел ничего полезного, к сожалению.
Мне необходимо сделать на микроконтроллере программатор, с помощью которого можно было бы шить установленные в изделии контроллеры ATSAM3N и подобные. Эти контроллеры можно прошить через встроенный бутлоадер, однако у меня наружу с изделия выведены только JTAG-и контроллеров.
Программатор должен быть именно автономный, без ПК.

Спасибо!

Go to the top of the page
 
+Quote Post
kovigor
сообщение Feb 25 2014, 17:38
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Pasha_a13 @ Feb 25 2014, 20:46) *
Программатор должен быть именно автономный, без ПК.

Взять какой-нибудь маленький нетбук, подключить к нему тот же JetLink и программировать. Автономность обеспечивается благодаря наличию в нетбуке аккумулятора ...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 25 2014, 17:44
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(kovigor @ Feb 25 2014, 21:38) *
Взять какой-нибудь маленький нетбук, подключить к нему тот же JetLink и программировать. Автономность обеспечивается благодаря наличию в нетбуке аккумулятора ...

ИМХО, сложно слишком. На производстве должна быть коробочка с одной кнопкой и двумя лампочками.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Feb 25 2014, 17:46
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(aaarrr @ Feb 25 2014, 21:44) *
ИМХО, сложно слишком. На производстве должна быть коробочка с одной кнопкой и двумя лампочками.

Для производства можно разориться на покупной автономный программатор, а не делать его самому. А для поездок по объектам и командировкам вариант с нетбуком очень даже привлекателен.
Еще вариант - предусмотреть в ПО возможность загрузки и прошивки новых версий по любому из удобных разработчику интерфейсов, например, UART, I2C, USB ...
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Feb 25 2014, 20:08
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



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

Сообщение отредактировал Pasha_a13 - Feb 25 2014, 20:09
Go to the top of the page
 
+Quote Post
Forger
сообщение Feb 26 2014, 04:16
Сообщение #6


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

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Pasha_a13 @ Feb 25 2014, 20:46) *
Программатор должен быть именно автономный, без ПК.

Вот этот (он даже на батарейках), этот или его клоны: вот и вот.


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Feb 26 2014, 08:04
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



Цитата(Forger @ Feb 26 2014, 07:16) *
Вот этот (он даже на батарейках), этот или его клоны: вот и вот.

Все это здорово конечно, проблема в том что у меня стоит задача что именно мое устройство должно шить изделия по JTAG (во-первых это устройство должно быть дешевым, чего не скажешь про покупные программаторы, во-вторых будут использовать свои уже имеющиеся протоколы удаленной загрузки прошивки в программатор. Также имеются еще другие нюансы.) и варианты покупного изделия не рассматриваются.
Потому я и прошу подсказать по поводу того есть ли описания атмеловского протокола работы через JTAG.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 26 2014, 08:29
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



JTAG - это стандарт. скорее надо читать его...
а в целом уверен, что ваша зарплата помноженная на врем разработки будет сильно перекрывать стоимость любого фабричного девайса.
Go to the top of the page
 
+Quote Post
Forger
сообщение Feb 26 2014, 10:12
Сообщение #9


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

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Pasha_a13 @ Feb 26 2014, 12:04) *
Все это здорово конечно, проблема в том что у меня стоит задача что именно мое устройство должно шить изделия по JTAG (во-первых это устройство должно быть дешевым, чего не скажешь про покупные программаторы, во-вторых будут использовать свои уже имеющиеся протоколы удаленной загрузки прошивки в программатор. Также имеются еще другие нюансы.) и варианты покупного изделия не рассматриваются.
Потому я и прошу подсказать по поводу того есть ли описания атмеловского протокола работы через JTAG.

Вы, похоже, ни разу не догоняете, во что ввязываетесь: попытка приладить к велосипеду колесо от трактора sm.gif
Во-первых, как я понял, на вашем девайсе вытащен наружу JTAG, за что уже нужно лишать премии ))
Во-вторых, через JTAG шьется прошивка открыто, т.е нешифрованная, поэтому при желании ее оттуда легко выколупать и сделать клон девайса, если дать в руки юзеру некую коробочку с торчащим оттуда JTAG.
Чтобы этого избежать, в девайсе выносится наружу UART, USB, ETH и др. интерфесы, внутри девайса крутится загрузчик с дешифровальщиком.
Юзеру передается зашифрованная прошивка и он уже обновляет пришивку либо через комп либо через вашу дополнит. самодельную коробочку (это для случая наступления 90-х годов прошлого века, когда ноутбук или планшет был тока у богатеев sm.gif).


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Feb 26 2014, 10:28
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



Проблема создания клона девайса не беспокоит в данном случае, т.к. сама железка не автономная, она работает в составе комплекса и толку с нее никакого нет отдельно от всего остального оборудования.
Go to the top of the page
 
+Quote Post
Forger
сообщение Feb 26 2014, 10:37
Сообщение #11


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

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(Pasha_a13 @ Feb 26 2014, 14:28) *
Проблема создания клона девайса не беспокоит в данном случае, т.к. сама железка не автономная, она работает в составе комплекса и толку с нее никакого нет отдельно от всего остального оборудования.

В таком случае вам нужно тока это. См. внимательно на цену.
Если и это очень дорого, то мой вам совет: увольняйтесь и ищите другую более адекватную фирму sm.gif

Скачиваете с сайта segger набор софта, устанавливаете.
Запускаете J-Flash, он используется для конфигурирования процесса программирования и создает файл конфига, который вместе с прошивкой заливается внутрь автономного программатора (см. первую ссылку).
В файле конфига можно добавить нужные поля, чтобы расширить возможности просто прошивки: например, хитрая залочка некоторых чипов, которая требует записи некоторых данных в некоторые регистры программируемого проца (с таким я столкнулся для семейства STM32Lxxx).


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Mar 1 2014, 19:09
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



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

Сообщение отредактировал Pasha_a13 - Mar 1 2014, 19:16
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Mar 2 2014, 05:36
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Потому что надо конкретно ставить ваши цели.

Если цель сэкономить деньги - то нужно готовое устройство потому что это всегда дешевле разработки

Если цель создать свой жетаг ради жетага, то готовое устройство не подойдет

Если цель тестировать устройство шевеля его ногами, то гораздо правильнее и безопаснее делать это не через жетаг, а через доп интерефейс usb, uart, ethernet. Потому что можно организовать доп защиту и не надо перегружать устройство. JTAG дает слишком большую свободу, защиту организовать очень трудно и на лету не подключитесь. Такая же ситуация со сменой прошивки, JTAG не дает вам возможностей проверки, через него зальете что хотите. А бутлоадер дает возможность устройству проверить входной файл на совместимость.

В общем вы просто выпадаете из общей практике выводя наружу устройства слишком опасный инструмент. Пользователи могут спокойно через этот порт заливать программы, которые будут сжигать ваше устройство, и вы ничего никогда не докажете, а если докажете, пользователи не будут брать ваше устройство.
Go to the top of the page
 
+Quote Post
Pasha_a13
сообщение Mar 2 2014, 09:23
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244



Спасибо за ответ!
С приведенными Вами аргументами действительно не поспоришь.
Я согласен что для целей тестирования лучше использовать отдельную программу заливаемую через какой-либо из интерфейсов...она лучше сможет протестировать все остальные узлы в изделии.

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

Потому и стоит задача использовать jtag, чтобы использовать один интерфейс программирования для разных типов контроллеров, потому как PIC32 не имеет (в отличии от атмела) встроенного бутлоадера, первичное программирование нужно производить программатором либо через ICSP(фактически тот же jtag) либо через JTAG.

Тестируемое-программируемое изделие будет подключаться к программатору через специфический разъем с кучей дополнительных контактов (для тестирования изделия), а прошивка в сам программатор будет заливаться удаленно нашими специалистами, пользователь не будет иметь возможности что-то там изменить.
JTAG в изделии выводиться не напрямую а через специальные коммутаторы и таким образом он фактически защищен снаружи.
Go to the top of the page
 
+Quote Post
alx2
сообщение Mar 3 2014, 04:39
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(Pasha_a13 @ Mar 2 2014, 14:23) *
Я согласен что для целей тестирования лучше использовать отдельную программу заливаемую через какой-либо из интерфейсов...она лучше сможет протестировать все остальные узлы в изделии.

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


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post

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

 


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


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