Jump to content

    

SAU510 without CCS

Имеется-ли возможность загрузки и запуска .out-файлов в ОЗУ CPU посредством эмулятора класса SAU510 без использования CCS?

Желательно с минимальным кол-вом нажатий или вообще из командной строки.

И чтобы грузить и стартовать разные .out-файлы в разные устройства в JTAG-цепочке (каждый файл для своего устройства).

Нужно для первоначальной прошивки устройств на двухядерных CPU (OMAP L137) в условиях производства через SAU510 ISO PLUS (или SAU510 просто).

Share this post


Link to post
Share on other sites
Имеется-ли возможность загрузки и запуска .out-файлов в ОЗУ CPU посредством эмулятора класса SAU510 без использования CCS?

Желательно с минимальным кол-вом нажатий или вообще из командной строки.

И чтобы грузить и стартовать разные .out-файлы в разные устройства в JTAG-цепочке (каждый файл для своего устройства).

Нужно для первоначальной прошивки устройств на двухядерных CPU (OMAP L137) в условиях производства через SAU510 ISO PLUS (или SAU510 просто).

Возможно, это Вам поможет:

http://sauris.de/ru/articles/SAUFlash_and_TCLXDS/

Share this post


Link to post
Share on other sites
Нужно для первоначальной прошивки устройств на двухядерных CPU (OMAP L137) в условиях производства через SAU510 ISO PLUS (или SAU510 просто).

Вообще, для этого есть SauFlash, она умеет шить некоторые виды памяти у L138. Поправить чутка скрипты, и пойдет для L137 (даже проще, чем для 138 они будут, так как у L137 DSP сразу запущен, а прошивка делается его силами). Так что почти все за Вас уже сделано. И под Linux host тоже.

Share this post


Link to post
Share on other sites
Вообще, для этого есть SauFlash, она умеет шить некоторые виды памяти у L138. Поправить чутка скрипты, и пойдет для L137 (даже проще, чем для 138 они будут, так как у L137 DSP сразу запущен, а прошивка делается его силами). Так что почти все за Вас уже сделано. И под Linux host тоже.

Это хорошо, но это мне известно, есть у меня такой скрипт и шил я им прекрасно.

Нужно не это.

Нужна именно загрузка в ОЗУ CPU и старт там ПО. А не зашивка его в SPI-флешку.

После такого старта ПО, оператор должен далее штатным образом обновить ПО через рабочий интерфейс (ПО примет себя самого и запишет в SPI-флешь).

Так нужно, потому что, при штатном обновлении, встроенное ПО принимает от внешнего прошивающего ПО кроме прошивки ещё и некоторую конфигурационную инфу,

которую добавляет к записываемому образу.

Можно конечно записать этим скриптом встроенное ПО, потом запустить его и обновить штатно. Но боюсь, что на производстве могут

забывать вторую стадию (раз ПО уже заработало) и изделие будет уходить без конфигурационной инфы. А это надо исключить.

Share this post


Link to post
Share on other sites

Так выдерите из sauflash.tcl кусок, когда он загружает trgcode в процессор и стартует его. Вообще, TCLXDS позволяет делать полное управление процессором, включая загрузку, чтение-запись памяти и регистров, старт/стоп, точки останова, а также разбор исполняемых COFF файлов от CCS.

 

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

 

UPD:

Если интересует, как именно устроена загрузка COFF в процессор, загляните в xdshelp.tcl (в tcl/lib/....)

Ну а документация на TCLXDS присутствует в doc/ , если при установке была выбрана русская документация (английской версии ее до сих пор нет)

 

UPD2:

Для нескольких ядер тоже без проблем, только, разумеется, надо приконнектиться к обоим, и между коннектами сделать wakeup кому надо. Пример такого также есть в sauflash для L138.

Edited by SAURIS GmbH

Share this post


Link to post
Share on other sites
Так выдерите из sauflash.tcl кусок, когда он загружает trgcode в процессор и стартует его. Вообще, TCLXDS позволяет делать полное управление процессором, включая загрузку, чтение-запись памяти и регистров, старт/стоп, точки останова, а также разбор исполняемых COFF файлов от CCS.

Да, наверное так и придётся сделать если припрёт. Не хочется возиться с этим, думал есть готовое решение...

 

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

Да и производство вроде не массовое, а мелкое будет. Овчинка выделки не стоит. Главное чтобы без конфига не уходило случайно.

А то при таком изготовлении мелкими партиями от случая к случаю, когда нет отработанногоо техпроцесса, это как раз очень вероятно.

 

Если интересует, как именно устроена загрузка COFF в процессор, загляните в xdshelp.tcl (в tcl/lib/....)

Да знаю я его. Штатный загрузчик (по рабочему протоколу) писал тоже я. Он разбирает .ais и грузит его через рабочее ПО.

 

Ну а документация на TCLXDS присутствует в doc/ , если при установке была выбрана русская документация (английской версии ее до сих пор нет)

Для нескольких ядер тоже без проблем, только, разумеется, надо приконнектиться к обоим, и между коннектами сделать wakeup кому надо. Пример такого также есть в sauflash для L138.

А зачем к обоим коннектиться? Можно ведь только к DSP. Ведь ПО рассчитано что первоначально стартует только DSP. А весь ARM-код расположен в памяти,

видимой DSP-ядру. Можно загрузить в ОЗУ и далее снять reset с DSP-ядра.

 

PS: Изначально, когда проект только начинался, я планировал что начальная загрузка ПО будет производиться по UART (и на плате есть джампер включающий загрузку с UART).

Но потом мне так и не удалось добиться загрузки ПО UART. Хотя вроде формировал .ais по всем правилам (знаю что для загрузки через UART он должен быть другим чем через SPI (штатный режим)).

Не грузились даже готовые примеры.

Т.е. - насколько я помню, загрузка начиналась, доходила до какого-то блока и там всё застревало. Причину мне найти не удалось, поэтому забил.

Share this post


Link to post
Share on other sites
Да, наверное так и придётся сделать если припрёт. Не хочется возиться с этим, думал есть готовое решение...

Ну, по сути, оно и есть почти готовое решение. Подсуньте Ваш .out как бы как trgcode сауфлаша, он его загрузит, стартанет, ну и вывалится с ошибкой ожидания останова (который ожидает от штатного trgcode).

 

Да знаю я его. Штатный загрузчик (по рабочему протоколу) писал тоже я. Он разбирает .ais и грузит его через рабочее ПО.

Я имел в виду, как это делается средствами TCLXDS через JTAG. И в TCLXDS есть средства работы с COFF (.out), а с AIS и прочими бутлоадерскими таблицами - нету.

 

А зачем к обоим коннектиться? Можно ведь только к DSP. Ведь ПО рассчитано что первоначально стартует только DSP. А весь ARM-код расположен в памяти,

видимой DSP-ядру. Можно загрузить в ОЗУ и далее снять reset с DSP-ядра.

 

Ну это Вам виднее, как это конкретно реализовать. Я говорил о том, что средствами TCLXDS можно спокойно работать одновременно с несколькими ядрами.

Edited by SAURIS GmbH

Share this post


Link to post
Share on other sites

Здравствуйте.

Есть проблема - необходимо научиться загружать ПО в микроконтроллер TMS320F2808 с помощью SAU510USB IsoPlus без CCStudio. Для этого необходимо для начала создать hex-файл с помощью hex2000.exe. Кто-нибудь владеет искусством правильного применения консольной утилиты hex2000.exe? У меня не получается получить файл с по-байтовым (8 бит) представлением данных. На сайте поддержки SAU510USB IsoPlus не смогли оказать помощь.

Share this post


Link to post
Share on other sites
На сайте поддержки SAU510USB IsoPlus не смогли оказать помощь.

 

Приветствую!

Собственно за Вас никто документацию читать не будет.

Инструкции по работе с данной утилитой очень подробно описаны в документации,

в разделе "Hex Conversion Utility Description"

Share this post


Link to post
Share on other sites
Собственно за Вас никто документацию читать не будет.

Приветствую.

Я по этой инструкции и пытаюсь сделать. Правда файл за 2005 год. Вроде бы все необходимые опции выставляю, но утилита не генерирует файл если поставить опцию "- memwidth 8" Работает только при "- memwidth 16". Может новый файл поможет. Спасибо.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this