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

    

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/, контора отечественная, сидят(ли) у Федорова

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация