2009-03-15 8 views
3

Я пытаюсь создать временную шкалу для моего встроенного кода в реальном времени. Мне нужно показать все прерывания, что их запускает, когда они обслуживаются, как долго они выполняются и т. Д. Я выполнил профилирование и получил необработанные данные, теперь мне нужен способ показать график времени графически, масштабировать.Что такое хороший инструмент для графического отображения субмиллисекундных временных графиков?

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

Я надеюсь произвести что-то вроде этого: .
К сожалению, моя сложнее, но это общая идея.

ответ

2

Таким образом, в этом масштабе ваши абсциссы будут чистым числом (например, микросекунд с момента запуска или некоторых таких). Графические инструменты для графического отображения подобных вещей являются обычным явлением.

Я предлагаю что-то вроде gnuplot, но я подозреваю, что проблема связана с проблемой, чем это видно в вашем резюме.

А, изображение делает все намного понятнее. Если gnuplot не сделает это за вас, я предлагаю другое предложение (или, по крайней мере, сказать вам, что я буду делать): напишите его с нуля.

В частности, я бы, вероятно, скомпилировал что-то на языке сценариев (ruby, python, whatever), чтобы читать данные и генерировать код pic, который выглядел так, как я хотел. Если вы решите пойти по этому маршруту, вот overview of pic basics, а также manual. Если вы копаете, вы должны иметь что-то правдоподобное через час, и в течение недели у вас будет что-то, что подходит вам лучше, чем любое приложение с графическим интерфейсом.

+0

Да, моя ось X будет в тиках процессора (10 нс). Я проведу gnuplot. Я не уверен, насколько сложно было бы представить его мои данные в формате, который он мог бы использовать. – AShelly

+0

Я никогда не замечал картинки раньше. Это выглядит многообещающе. – AShelly

+0

Принято: Я никогда не получал pic, чтобы полностью работать на моей платформе Windows (в основном проблемы с ghostscript), но это было лучшее решение. – AShelly

0

Я чувствую к вам. В моей системе у нас есть 1,1 миллисекундный цикл и 13 точек измерения над четырьмя различными компонентами. Я подозреваю, что вы сталкиваетесь с такой же сложностью.

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

Мы широко используем R Project, управляемый кодом Python, с помощью RPy R/Python bridge, чтобы генерировать наши графики. Эта настройка работает очень хорошо для нас и позволила нам автоматизировать процесс. Python используется для сбора и очистки данных из системы реального времени, а R - для рисования.

Поддержка графической подстройки R обширна, позволяя вам контролировать все аспекты сюжета, местоположения, размеры и т. Д. Сначала это может быть пугающим, но есть отличная книга R Graphics, которая помогает с компаньоном website that contains all of the book's examples.

Что бы вы ни выбрали, убедитесь, что есть возможность автоматизировать с помощью скриптов. Объем данных, создаваемых системами реального времени, слишком много, чтобы справляться без гибких инструментов.

0

gtkwave может использоваться

 Смежные вопросы

  • Нет связанных вопросов^_^