Jump to content

    
Sign in to follow this  
Edmundo

Open-source эмулятор для TMS320: DLE500USB

Recommended Posts

Таки собрался с силами, и сделал наконец свой первый open-source проект.

http://www.prodigi.ru/

 

Все планировал сделать по-хорошему, но понял, что времени все равно не будет, поэтому пока просто выложил все как есть с комментариями. Страницы нарисовал на коленке, прошу не бить.

 

В будущем планирую пописать статейки про JTAG-протоколы и т.п.

 

Да не сочтут модераторы мой пост моветоном :) Да перенесут, ежели сочтут :)

Share this post


Link to post
Share on other sites
Таки собрался с силами, и сделал наконец свой первый open-source проект.
:a14:

 

Все планировал сделать по-хорошему, но понял, что времени все равно не будет ...
насчет времени: раз уж оpen-source, так наверное надо заинтересовавшихся проектом смотивировать к коллективной работе, т.е. какие-то базовые веб-инструменты для обеспечения совместной работы + какое-нить ToDo по дальнейшему видению развития проекта.

Share this post


Link to post
Share on other sites
насчет времени: раз уж оpen-source, так наверное надо заинтересовавшихся проектом смотивировать к коллективной работе, т.е. какие-то базовые веб-инструменты для обеспечения совместной работы + какое-нить ToDo по дальнейшему видению развития проекта.

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

Насчет дальнейшего to do -- хочется сделать новую железку на более мощном контроллере/процессоре + воткнуть FPGA (типа Cyclone, благо они сейчас весьма доступны). Таким образом совместить снифер с эмулятором, сделать снифер помощнее, плюс переместить функции формирования JTAG-цепочек с компьютера в контроллер (вот скоростища-то будет). Вот тогда заживем :)

А пока на досуге напишу статьи для лучшего понимания сути процессов.

Share this post


Link to post
Share on other sites

Спасибо, интересная реализация, надо будет попробовать в железе. Есть одна просьба- на странице проекта упоминается девайс-снифер жтага. Можно ли на него схемку и программы тоже зашарить? Понимаю, что делалось наверно одноразовое нечто и код будет несовсем прозрачным, но это терпимо.

Share this post


Link to post
Share on other sites
...плюс переместить функции формирования JTAG-цепочек с компьютера в контроллер (вот скоростища-то будет). Вот тогда заживем :)

Т. е. сейчас он работает не в реальном масштабе времени? А эмуляторы от Texas Instruments, например XDS560R, также не позволяет эмулировать работу программы в реальном масштабе времени? Как же тогда измерять реальное время выполнения подпрограмм?

Share this post


Link to post
Share on other sites
Спасибо, интересная реализация, надо будет попробовать в железе. Есть одна просьба- на странице проекта упоминается девайс-снифер жтага. Можно ли на него схемку и программы тоже зашарить? Понимаю, что делалось наверно одноразовое нечто и код будет несовсем прозрачным, но это терпимо.

Зашарить можно, правда там все достаточно кургузо и работать с ним непосвященному непросто. Хочу сделать более продвинутый снифер. Думаю пока, что поставить в сердце -- то ли VC5509 (TMS TMS'у друг :) да и моща неплохая) или какой-нибудь ARM, например STR912. Ну и Cyclone (как писал выше) который будет бегать по state-машине JTAG'а. Если сделать такой снифер/эмулятор, да еще написать неплохой софт/документацию к нему, то любой, у кого есть доступ к стандартному 510-му, сможет добавлять новые функции.

 

Т. е. сейчас он работает не в реальном масштабе времени? А эмуляторы от Texas Instruments, например XDS560R, также не позволяет эмулировать работу программы в реальном масштабе времени? Как же тогда измерять реальное время выполнения подпрограмм?

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

В остальном, после того, как вы нажимаете "Run" (а лучше "Run free") ваша программа работает (ну по крайней мере так по теории polite-эмуляции) так же, как и без эмулятора.

 

Ну а если вы даже суперскоростным 560-м не можете померить время выполнения подпрограмм, то вероятнее всего вы "не умеете его готовить" :)

Share this post


Link to post
Share on other sites
Можно ли на него схемку и программы тоже зашарить? Понимаю, что делалось наверно одноразовое нечто и код будет несовсем прозрачным, но это терпимо.

Зашарил :)

Плюс к этому написал первую статью по теме.

Share this post


Link to post
Share on other sites

Edmundo,

а что из себя представляют драйвера отладчиков в css? Давно хочу заняться чем-то подобным для Analog Devices, но у них в VDSP для каждого отладчика своя dll с ActiveX интерфейсом, как отследить вызовы через него я пока не знаю.

Share this post


Link to post
Share on other sites
Edmundo,

а что из себя представляют драйвера отладчиков в css? Давно хочу заняться чем-то подобным для Analog Devices, но у них в VDSP для каждого отладчика своя dll с ActiveX интерфейсом, как отследить вызовы через него я пока не знаю.

Драйвера отладчиков для CCS фактически представляют собой обычную DLL-ку (только расширение переименовано в *.DVR) с набором определенных public exported функций. CCS при соответствующих действиях (загрузка программы, запуск, просмотр памяти т.п.) просто вызывает эти функции, передавая им какие-то параметры.

Share this post


Link to post
Share on other sites
Тема чрезвычайно интересная. Хотелось бы, чтобы она имела продолжение.

Вообще, если интересно, могу здесь дублировать новости проекта.

 

Разместил простенький софт-проект драйвера-логгера для Code Composer Studio, который имитирует внутрисхемный эмулятор и ведет лог вызовов функций. Будет интересен программистам как образец взаимодействия CCS и DVR-драйверов, а так же как reference frameworks для создания драйвера собственного эмулятора.

 

MyEmulator

Share this post


Link to post
Share on other sites
Таки собрался с силами, и сделал наконец свой первый open-source проект.

http://www.prodigi.ru/

Да, круто :a14:. Даже супер круто :a14: :a14: ...

 

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

 

Пожалуйста, расскажите подробнее о "вполне доступных" внутрисхемных эмуляторах для TMS320.

Share this post


Link to post
Share on other sites

Вообще то, я неточно задал свой вопрос. Я хотел спросить, где можно купить дешевый внутрисхемный эмулятор для TMS320. Чуть позже, в теме Вопросы новичка, AD или TI и др. я, кажется нашел ответ на свой вопрос.

В любом случае, спасибо за ответ rezident. :beer:

Share this post


Link to post
Share on other sites
Вообще то, я неточно задал свой вопрос. Я хотел спросить, где можно купить дешевый внутрисхемный эмулятор для TMS320. Чуть позже, в теме Вопросы новичка, AD или TI и др. я, кажется нашел ответ на свой вопрос.

В любом случае, спасибо за ответ rezident. :beer:

 

http://www.mlabsys.com/, контора отечественная, сидят(ли) у Федорова

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