Перейти к содержанию
    

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

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

http://www.prodigi.ru/

 

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

 

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

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

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Зашарил :)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Edmundo,

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Edmundo,

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тема чрезвычайно интересная. Хотелось бы, чтобы она имела продолжение.

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

 

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

 

MyEmulator

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

http://www.prodigi.ru/

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

http://projects.caxapa.ru/index.html?ID=6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...