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

 
 
> Как отлаживаете свои проекты?, Сбор возможных вариантов
Muscat
сообщение Jan 18 2011, 06:48
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 277
Регистрация: 8-04-09
Из: Москва
Пользователь №: 47 382



Утро доброе

Задумался я тут вот над каким вопросом.
Долго ли коротко ли, на VHDL-ли на Verilog-ли, проект написан и даже синтезировался, и даже прошился в ПЛИС и даже кажется работает как надо.

И тут появляется лично у меня вопрос, который очень бледно освещен в книгах, ну разве что кроме "Курса молодого бойца" Максфилда

Какими средствами вы отлаживаете свои проекты?

Я для себя пока опробовал несколько путей

1) Простой проект. Отладка по аналогии с отладкой на уровне разработки. Пишется TestBench модуль, который может выдавать ряд простейших воздействий, затем модуль присовокупляется к проекту, запускается. Управление кнопками, просмотр реакции на осциллографе.
Плюсы подхода
- Каждый сигнал можно просмотреть хоть в цифровом, хоть в аналоговом виде, отловить все задержки.
Минус такого подхода
- Ограниченность вариантов входных воздействий
- На экране осциллографа больше 16 сигналов не разглядишь.

2) Отладка в цифре. Метод, который я сейчас пытаюсь применить к своему проекту. Большинство современных DevKit'ов имееют встроенный RS232 модуль или того лучше - преобразрователь USB->RS232, а на PC устанавливается драйвер виртуального КОМ-порта. Тогда физически RS232 нигде не появляется, ограничение на скорость повышаются до уровня USB, а мы имеем возможность работать с железкой через старый добрый UART.
Далее пишется, или скачивается с OpenCores, модуль RS232, дописывается модуль хранения и выдачи этих данных, а так же приема данных с ПЛИС.
Следующий этап - программная часть комплекса. Тут можно использовать объектно-ориентированный язык, на вроде С++ или среды DELPHI, можно попробовать писать из среды мат.моделирования Matlab,чем я сейчас как раз и занимаюсь.
Плюсы метода - объем входных последовательностей для тестирования ничем не ограничен, полностью управляется с PC, на нем же просмотр полученных результатов. Минусы если что можно компенсировать добавлением осциллографа.

А какие пути используете вы?
Многообещающе выглядит решение от компании Mathworks и Xilinx, по включению ПЛИС в качестве модуля в среды Simulink через JTAG с отслеживанием состояния всех ножек сразу.
Пробовали ли вы другие какие то интерфейсы? Можно ли включить ПЛИС в среду ModelSim и отслеживать состояния выходов так же, как при моделировании?

В общем предлагаю всем поделиться частью своего опыта


--------------------
Because it's there
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Sergey'F
сообщение Apr 12 2011, 16:21
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 17-09-05
Из: Москва
Пользователь №: 8 660



Простите за оффтоп, но с недавних пор меня мучает один вопрос - как доказать корректность тестбенча, который ты сам разработал?
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 12 2011, 16:52
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Sergey'F @ Apr 12 2011, 20:21) *
Простите за оффтоп, но с недавних пор меня мучает один вопрос - как доказать корректность тестбенча, который ты сам разработал?



Никак. Это основы науки о тестировании - сам программист не должен тестировать свои программы. laughing.gif


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Sergey'F
сообщение Apr 12 2011, 17:18
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 17-09-05
Из: Москва
Пользователь №: 8 660



Цитата(Oldring @ Apr 12 2011, 20:52) *
Никак. Это основы науки о тестировании - сам программист не должен тестировать свои программы. laughing.gif

Хорошо, тогда как доказать корректность тестбенча, который кто-то разработал? laughing.gif

Недавно делал один модуль - в определенный момент я уже мог по входным воздействиям и тактам доказать, что он правильно работает, он уже работал в железе, а написать корректно работающий тестбенч и прогнать его мне удалось в последнюю очередь. Таким образом, если сложность разработки тестбенча превышает сложность разработки тестируемого модуля, а вероятность ошибки при проектировании обоих допустить равной, получается плохо. Это меня и мучает.
Go to the top of the page
 
+Quote Post
Nix_86
сообщение Apr 12 2011, 18:24
Сообщение #5


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

Группа: Свой
Сообщений: 85
Регистрация: 7-04-11
Пользователь №: 64 200



Цитата(Sergey'F @ Apr 12 2011, 21:18) *
Хорошо, тогда как доказать корректность тестбенча, который кто-то разработал? laughing.gif

Встречаются вещи на которые есть официальные тесты или методика тестирования от разработчика стандарта, если не ошибаюсь таковые имеются для CAN 2.0 протокола. О других регламетированных тестах мне неизвестно sm.gif Поэтому самостоятельно разработанный тестбенч - не более чем проверка соответствия разработанного дизайна поставленной цели. К сожалению, никто не застрахован от неправильного понимания спецификации на интерфейс как бы точно и однозначно она не была написана. Отсюда вижу одно решение проблемы - разбор аналогов, использование верификационных IP-ядер, накопление опыта. Лучше лишний раз перестраховаться. cool.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Muscat   Как отлаживаете свои проекты?   Jan 18 2011, 06:48
- - Костян   QUOTE (Muscat @ Jan 18 2011, 04:48) Много...   Jan 18 2011, 07:16
- - Muscat   Интересует в первую очередь личный опыт использова...   Jan 18 2011, 07:33
- - Kuzmi4   Сначала как-то вот так http://www.ovmworld.org/...   Jan 18 2011, 07:41
- - bogaev_roman   Цитата(Muscat @ Jan 18 2011, 09:48) Каким...   Jan 18 2011, 07:56
- - Muscat   bogaev_roman вот как раз к описанному вами я и хоч...   Jan 18 2011, 08:03
|- - bogaev_roman   Цитата(Muscat @ Jan 18 2011, 11:03) bogae...   Jan 18 2011, 08:26
- - IL-76   Модель в Modelsim-е (прошу прощения за тавтологию)...   Jan 18 2011, 08:05
- - Muscat   bogaev_roman , Спасибо огромное за информацию. Да,...   Jan 18 2011, 08:45
|- - DmitryR   Цитата(Muscat @ Jan 18 2011, 11:45) Я соб...   Jan 18 2011, 09:50
- - Muscat   DmitryR, был бы премного благодарен, если вы показ...   Jan 18 2011, 10:08
|- - DmitryR   У меня к сожалению сейчас нет Matlab, но как я пом...   Jan 18 2011, 10:48
|- - _Anatoliy   Цитата(Muscat @ Jan 18 2011, 12:08) Dmitr...   Jan 18 2011, 10:49
|- - bogaev_roman   Цитата(Muscat @ Jan 18 2011, 13:08) Dmitr...   Jan 18 2011, 10:51
- - almost   Есть ещё такая прекрасная вещь как DSP Builder (от...   Jan 18 2011, 12:18
- - XVR   Кстати по поводу отладки - никто не знает, где мож...   Jan 18 2011, 13:05
|- - ADA007   Цитата(XVR @ Jan 18 2011, 16:05) PS. Если...   Apr 12 2011, 13:48
|- - XVR   Цитата(ADA007 @ Apr 12 2011, 17:48) А есл...   Apr 12 2011, 17:54
|- - ADA007   Цитата(XVR @ Apr 12 2011, 20:54) Не всех,...   Apr 13 2011, 05:57
- - Shtirlits   А для этого может уже понадобиться мозг, так как в...   Apr 12 2011, 16:14
- - Shtirlits   Очень волнующая меня тема. Считаю, что для повышен...   Apr 12 2011, 20:06


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

 


RSS Текстовая версия Сейчас: 3rd July 2025 - 17:49
Рейтинг@Mail.ru


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