КАТАЛОГ

Аппаратные средства разработки

LAUTERBACH
LAUTERBACH
Аппаратно-программные средства отладки компании LAUTERBACH


ПРОИЗВОДИТЕЛЬ: LAUTERBACH

ОПИСАНИЕ:

Аппаратно-программные средства отладки компании LAUTERBACH

ВНУТРИСХЕМНЫЙ ОТЛАДЧИК ICD

  • Легкая отладка на языке высокого уровня и на уровне ассемблера.
  • Интерфейс ко всем компиляторам.
  • Настройка на операционную систему реального времени.
  • Интерфейс со всеми хостами.
  • Быстрая загрузка.
  • Показ внутренней и внешней периферии на логическом уровне.
  • Программирование флеш-памяти.
  • Контрольные точки аппаратных средств и триггеры (если поддерживается встроенным интерфейсом микросхемы).
  • Отладка мультипроцессорных и многоядерных конфигураций.
  • Возможность расширения для трассировки и поддержки триггеров.
  • Трассировка на уровне программного обеспечения.
  • Виртуальный анализатор.
  • Программное обеспечение, совместимое со всеми инструментами TRACE32.

СЕМЕЙСТВО TRACE32-ICD

TRACE32-ICD

Успешный внутрисхемный отладчик с возможностью расширения для трассировки доступен с 1995 года. Он поддерживает больше 15 архитектур, включая такие популярные архитектуры, как ARM и PowerPC.

TRACE32-ICD – микропроцессорные средства разработки, основанные на отладке и логической трассировке (BDM, JTAG, ETM, OCDS, NEXUS), встроенные в микросхему. На этой основе TRACE32-ICD обеспечивает очень эффективный по стоимости отладчик плюс мощный трассировщик и инструмент анализа на этапе исполнения. TRACE32-ICD может быть связан с хостом через Ethernet, USB или параллельный интерфейс LPT.

TRACE32-POWERDEBUG/POWERTRACE

TRACE32-POWERDEBUG/POWERTRACETRACE32-PowerDebug/PowerTrace – дальнейшее развитие успешного продукта TRACE32-ICD, основывается на многолетнем опыте внутрисхемной отладки и разработке средств трассировки специалистами Lauterbach. TRACE32-PowerDebug обеспечивает повышенную производительность системы.

Главные особенности TRACE32-PowerTrace – повышенная производительность системы, очень большая память трассировки, расширенные возможности измерений во время выполнения и анализ производительности. Таким образом, TRACE32-ICD PowerTrace играет важную роль при проверке качества программного обеспечения.

КОНЦЕПЦИЯ АППАРАТНЫХ СРЕДСТВ

TRACE32-ICD Интерфейсы с хостом

  • LPT
  • Ethernet
  • USB

Power Debug Module

Универсальные аппаратные средства отладчика для всех архитектур.

Специфичный для CPU кабель отладки (Debug cable)(Дополнительный) модуль трассировки на базе RISC-архитектуры

Универсальные аппаратные средства трассировки для всех архитектур:

  • поддержка трассировки шины или программ/потока данных;
  • 64/128/256/512 K фреймов памяти трассировки;
  • 94 канала;
  • максимальная скорость для каждого CPU;
  • 36-битовые временные отметки с разрешением 25 нс.

Препроцессор, специфичный для CPU

Специфичный для CPU препроцессор для передачи данных трассировки от целевой платформы до модуля трассировки на базе RISC-архитектуры.

TRACE32-ICD POWERDEBUG

Power Debug Module

Универсальные аппаратные средства отладчика для всей архитектуры. Связь с хостом через Ethernet или USB.

Кабель отладки, специфичный для CPU (Debug cable)

TRACE32-ICD

TRACE32-ICD POWERTRACE PowerTrace

  • Универсальные аппаратные средства отладчика для всех архитектур.
  • Ethernet- или USB-интерфейсы.
  • Поддержка трассировки программ и потока данных.
  • 16M фреймов памяти трассировки.
  • 96 каналов.
  • Максимальная скорость для каждого CPU.
  • 32-битовые временные отметки с разрешением 20 нс.
  • Анализ времени исполнения и производительности.
  • Покрытие кода.

Кабель отладки, специфичный для CPU

Препроцессор, специфичный для CPU

Специфичный для CPU препроцессор для передачи данных трассировки от целевой платформы до памяти трассировки в устройстве PowerTrace.

МОНИТОР TRACE32-ICD

TRACE32-ICD

Монитор TRACE32-ICD основан на решении ROM Монитора. Программа монитора размером 8 Кбайт может быть расположена в любом месте адресного пространства. Монитор может быть прилинкован и загружен отдельно, или он может быть прилинкован и загружен вместе с пользовательской программой.

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

Взаимодействие между отладчиком на хосте и программой монитора на целевой платформе осуществляется с использованием симулятора стираемой программируемой постоянной памяти (EPROM) или через RS232.

Симулятор EPROM может поддерживать два 8-битовых или один 16-битовый EPROM.

Комбинация нескольких модулей позволяет 32- или 64-битовые конфигурации. Во время симуляции EPROM целевой системы может имитироваться программное обеспечение в симуляторе EPROM.

Интерфейсы с хостом:

  • LPT
  • Ethernet
  • USB

Симулятор EPROM

  • Универсальный симулятор EPROM
  • 8/16/64 Mбит симулятор ERPOM.
  • Время доступа 40 нс.
  • 5V и 3.3V.
  • Коннектор к DIL, PLCC, SO44 и универсальный коннектор ESICON.
TRACE32-ICD

ОТЛАДКА МУЛЬТИПРОЦЕССОРНЫХ СИСТЕМ

Максимум 4 отладчика может быть присоединено к хост-интерфейсу для конфигурирования мультипроцессорной среды разработки. Также можно использовать 2 отладчика и 2 модуля трассировки. Для задания конфигурации многопроцессорной системы в TRACE32 используется файл конфигурации.

СТАРТ/ОСТАНОВ СИНХРОНИЗАЦИИ

Если несколько процессоров должны быть включены и остановлены одновременно в максимально возможной степени, необходимо определить, какие функции являются ведущими (master) и какие подчиненными в полной конфигурации. Система может также быть установлена так, чтобы все процессоры рассматривались как ведущие и ведомые – так, что когда любой процессор запущен, все другие процессоры запускаются, и когда любой процессор остановлен, все другие останавливаются. Синхронное начало может быть выполнено в пределах приблизительно 10 микросекунд. Синхронная остановка, например, в контрольной точке может быть осуществлена точно. При этом основное требование: у интерфейса отладки используемого процессора должны быть триггерный вход и триггерный выход. Если дело обстоит не так, то асинхронная остановка должна быть осуществлена средствами программного обеспечения, которое, однако, требует большего времени.

TRACE32-ICD

ОТЛАДКА МНОГОЯДЕРНЫХ СИСТЕМ

Выражение «отладка многоядерных систем» применено к тестированию нескольких ядер на чипе. Если есть несколько ядер, объединенных на чипе, и у каждого ядра есть свой собственный интерфейс отладки, могут использоваться те же самые аппаратные средства и конфигурация программного обеспечения, что и для отладки мультипроцессорных систем. Возникает другая ситуация, когда все ядра управляются через один и тот же интерфейс отладки для экономии ресурсов. Это возможно, например, в конфигурации из нескольких каскадируемых ядер, которые работают через единственный порт отладки. Подобное решение является популярным в настоящее время для чипов с ядрами ARM, так как такую конфигурацию очень легко осуществить с помощью интерфейса JTAG.

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

Если более чем одно ядро должно быть проверено одновременно, необходимы несколько модулей отладки, как и в случае отладки мультипроцессорной системы. Должны быть несколько коннекторов отладки с теми же самыми сигналами JTAG на целевой системе. Кроме того, можно использовать адаптер, который разделяет интерфейс JTAG для нескольких отладчиков. Так как несколько отладчиков теперь используют один и тот же порт отладки, должны быть сделаны шаги, чтобы гарантировать, что только один отладчик получает доступ к порту отладки в любой момент времени. Это может быть автоматизировано задачей отладки на хосте, управляющем тем, кто имеет исключительный доступ к порту отладки с помощью программных средств семафора. Существуют и другие опции конфигурации для многократных ядер в чипе, кроме конфигурации в виде цепочки.

КОНЦЕПЦИЯ ОТЛАДЧИКА НА УРОВНЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

СИМВОЛЬНАЯ ОТЛАДКА

Иерархическая база данных символов обеспечивает поддержку структурированной символьной отладки. Символьные имена могут иметь до 255 значащих символов типа long и могут использоваться для показа адреса программы, названия модуля и класса памяти. Дисассемблер может использовать символы для меток и/или операндов. Также могут использоваться имена для C++.

ОТЛАДКА НА УРОВНЕ ЯЗЫКА ВЫСОКОГО УРОВНЯ

TRACE32 может загрузить вывод всех стандартных компиляторов для C, C++, Java, Паскаль, Modula2, PEARL и АДА от большинства продавцов компиляторов. Показ программы и отладка могут быть сделаны на ассемблере, языке высокого уровня или в смеси обоих. Можно построить окна для ассемблера и окна для языка высокого уровня на экране одновременно. Могут быть показаны и изменены все типы переменных, определенных для языка высокого уровня. Адреса могут быть абсолютными, относительными или базироваться по номеру строки.

ОТЛАДКА

Отладчик использует следующую реализацию контрольной точки, чтобы остановить выполнение программы на определенной команде:

  • неограниченное число контрольных точек программного обеспечения для кода в RAM;
  • ограниченное число так называемых внутрисхемных контрольных точек для кода в ROM или флеш-памяти.

Могут также использоваться внутрисхемные контрольные точки, чтобы остановить выполнение программы после доступа чтения – записи к определенному адресу памяти.

Число доступных внутрисхемных контрольных точек зависит от ресурсов, которые обеспечивает используемый центральный процессор.

РАСШИРЕННЫЕ ВОЗМОЖНОСТИ КОНТРОЛЬНЫХ ТОЧЕК

TRACE32-ICD обеспечивает также простой путь для установки сложных условий останова:

  • установка контрольных точек при чтении и записи определенных значений данных;
  • соединение контрольной точки с условием;
  • соединение контрольной точки с командами, которые выполняются всякий раз, когда достигается контрольная точка.

Также возможна комбинация всех этих вариантов.

НАСТРОЙКА НА ОПЕРАЦИОННЫЕ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ (RTOS)

Внутрисхемные отладчики обеспечивают функции показа, близко отражающие набор команд интегрированного отладчика RTOS.

Могут быть показаны ресурсы системы, например задачи, объекты, разделы, очереди, области и семафоры.

ПЕРИФЕРИЯ

Показ периферии микросхемы.

  • Определяемый пользователем показ периферии микросхемы.
  • Выпадающее меню параметров настройки.
  • Дополнительное описание для каждого поля.

ПРОГРАММИРОВАНИЕ ФЛЕШ-ПАМЯТИ

TRACE32 поддерживает программирование внешней флеш-памяти так же, как программирование внутренней флеш-памяти микроконтроллеров. Программированием может управлять отладчик или процедура на целевой системе.

ТРАССИРОВКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

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

Типичное использование трассировки программного обеспечения – трассировка и анализ переключателей задачи. Трассировка процесса выполнения программы доступна для архитектуры, которая обеспечивает способность трассировки ветвлений, как все семейства PowerPC и SuperH SH4.

АНАЛИЗ ПРОИЗВОДИТЕЛЬНОСТИ

TRACE32-ICD предлагает долговременный анализ производительности. Например, чтобы определить, какие функции или модули используются больше всего в общем времени работы, текущий счетчик программы периодически регистрируется и статистически оценивается.

ВИРТУАЛЬНЫЙ АНАЛИЗАТОР

TRACE32-ICD обеспечивает возможность контроля изменения в отобранных данных в течение времени. Основное требование для этой возможности: интерфейс отладки используемого центрального процессора должен поддерживать чтение памяти целевой системы в то время, когда программа работает. Чтобы контролировать отобранные данные, виртуальный анализатор читает соответствующие ячейки памяти в фиксированном шаблоне времени во время работы программы и передает их содержимое в память виртуального трассировщика. Так как виртуальный трассировщик – это программное обеспечение, он может иметь любой размер.

МОЩНЫЙ ЯЗЫК СКРИПТОВ

Пакетный язык скриптов PRACTICE в TRACE32 поддерживает автоматическое тестирование, автоматические конфигурирование системы и конструирование командных макроопределений для ускорения цикла разработки.

НАСТРОЙКА GUI

Пользовательский интерфейс TRACE32 открыт и позволяет адаптировать меню, кнопки и диалоги к требованиям пользователя.

КОНЦЕПЦИЯ ТРАССИРОВКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

ТРАССИРОВКА ШИНЫ

Расширение трассировки TRACE32-ICD работает как трассировка шины на некоторых центральных процессорах. Поскольку шина прослеживает адрес и данные шины, определенные строки состояния записываются для каждого цикла шины. В результате доступна полная информация о программе и потоке данных.

ВЫБОРОЧНАЯ ТРАССИРОВКА

Расширение трассировки для TRACE32-ICD обеспечивает некоторые основные характеристики для выборочной трассировки.

ТРАССИРОВКА ЯЗЫКА ВЫСОКОГО УРОВНЯ (HLL)

Система трассировки контекста (CTS) позволяет показать также регистровые и стековые переменные при показе трассировки. Для каждого шага языка высокого уровня, считанного в буфер трассировки, разработчик получает:

  • текущие значения переменной;
  • результат шага программы;
  • точное время.

CTS может также использоваться для детального анализа вложенных функций во всей памяти трассировки. Выдаются параметры функции, возвращаемые значения и время выполнения для каждой функции. Этот анализ может также быть выполнен графически в форме дерева запроса.

ТРАССИРОВКА ПРОЦЕССА ВЫПОЛНЕНИЯ ПРОГРАММЫ

Расширение трассировки TRACE32-ICD работает как трассировка процесса выполнения программы для большинства центральных процессоров. Из-за высоких скоростей большинство центральных процессоров не обеспечивает полную видимость внутренней программы и потока данных. Они оборудованы так называемым портом трассировки (специальные штырьки центрального процессора). Через этот порт поступает сокращенная информация о внутренней программе, которая выполняется.

Это сокращенная информация включает информацию статуса программы, адреса перехода прямых/косвенных ветвей и на некоторых центральных процессорах – сокращенную информацию потока данных. TRACE32-ICD считывает эту информацию для каждых часов и обрабатывает данные, чтобы предложить разработчику полную информацию о программе/потоке данных. Сокращенные данные включают небольшое количество информации, чтобы обеспечить возможность выборочной трассировки.

АНАЛИЗ ПРОИЗВОДИТЕЛЬНОСТИ, ОСНОВАННЫЙ НА ТРАССИРОВКЕ

Измерение производительности, используемое в TRACE32-ICD, является статистическим процессом. Такое измерение не имеет абсолютно никакого влияния на поведение в реальном времени.

ОТЛАДЧИК ОТ LAUTERBACH ДЛЯ ОСРВ LYNXOS

Основные свойства:

  • Оперативный, дружелюбный показ ресурсов системы LynxOS.
  • Отладка ядра и/или приложений.
  • Специфичный именно для LynxOS показ распечатки трассировки.
  • Статистическая оценка и графический показ работы нити.
  • Оценка времен работы функций нити.
  • Статистическая оценка и графический показ состояния нити.
  • Показ содержимого стека нити.
  • Функции языка PRACTICE для данных LynxOS.
  • Специальное выпадающее меню для LynxOS.

Система TRACE32 включает конфигурируемый многозадачный отладчик, обеспечивающий символьную отладку в ОСРВ. TRACE32 содержит готовую к работе конфигурацию для ядра реального времени LynxOS от LynuxWorks. В результате сотрудничества с LynuxWorks Lauterbach построил очень удобный интерфейс для LynxOS, который обеспечивает самую эффективную отладку с помощью TRACE32 целевых платформ, работающих в среде LynxOS.

ИССЛЕДОВАНИЕ ОСРВ LYNXOS С ПОМОЩЬЮ TRACE32

ОПЕРАТИВНЫЙ, ДРУЖЕЛЮБНЫЙ ПОКАЗ РЕСУРСОВ СИСТЕМЫ LYNXOS

Отладчик ОСРВ TRACE32 для LynxOS обеспечивает функции, близкие к набору команд SKDB (Simple Kernel Debugger) LynxOS. Процессы и нити могут быть показаны и исследованы. Кроме того, при использовании двухпортовой памяти эмуляторов (если они доступны), показ всех этих областей может быть осуществлен в режиме реального времени.

Таблицы обновляются непрерывно, вообще не затрагивая приложение.

Окно списка процессов

Окно списка процессов

Окно списка нитей

Окно списка нитей

ОТЛАДКА ЯДРА И/ИЛИ ПРИЛОЖЕНИЯ

TRACE32 – это прежде всего инструмент отладки аппаратно-программных средств, поэтому вы в состоянии отладить очень многие вещи, включая код загрузки, фазу инициализации платы, процедуры прерываний, драйверы, ядро, и т. д. TRACE32 включает полную поддержку MMU, обеспечивая механизмы просмотра памяти на целевой платформе, используя виртуальные или физические адреса вместе с таблицами перекодировки одних в другие. Дополнительно у TRACE32 есть специальная поддержка MMU сразу нескольких адресных пространств, которая позволяет отлаживать одновременно несколько приложений LynxOS (процессов). Внутренняя логика предоставляет свободный проход по всем областям памяти всех процессов. Специальный механизм обнаружения процесса позволяет останавливать приложение точно в пункте входа в процесс, разрешая вам отладить ваш процесс прямо от main() функции.

Список контролируемых процессов

Список контролируемых процессов

КОНТРОЛЬНЫЕ ТОЧКИ, ОТНОСЯЩИЕСЯ К НИТИ

Может быть установлен любой набор контрольных точек в отладчике TRACE32, в зависимости от конкретной нити. Это означает, что контрольная точка остановится в том случае, если принадлежит указанной нити. Это позволяет привязывать трассу отладки к конкретной нити даже в разделяемом коде.

Список точек прерывания с привязкой к нитям

Список точек прерывания с привязкой к нитям

СОДЕРЖИМОЕ СТЕКА НИТИ

В режиме реального времени системы весьма важно знать, какой объем стека используется каждой нитью. С этой целью специальное окно показывает нить и максимальное использование объема стека каждой отдельной нитью.

Окно содержимого стека нити

Окно содержимого стека нити

ДИНАМИЧЕСКОЕ ИЗМЕРЕНИЕ РАБОТЫ НИТИ

Во время работы LynxOS TRACE32 способен к рекуррентной оценке каждой работающей нити и сбору результатов. Например, может показываться графически и постоянно обновляться процент процессорного времени, который тратится на каждую нить системы. Чем более длительное время осуществляется измерение, тем более точные результаты получаются. Эта особенность доступна даже без какого-либо аппаратного трассировщика.

Список измерения производительности

Список измерения производительности

ПОКАЗ РАСПЕЧАТКИ ТРАССИРОВКИ, СПЕЦИФИЧНЫЙ ДЛЯ LYNXOS

Данные, зарегистрированные в оперативном буфере трассировки (если он доступен), могут быть показаны и интерпретированы специальным образом применительно к операционной системе. Например, переключения нити могут показываться вместе c другой информацией.

СТАТИСТИЧЕСКАЯ ОЦЕНКА И ГРАФИЧЕСКИЙ ПОКАЗ РАБОТЫ НИТИ

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

ОЦЕНКА РАБОТЫ ФУНКЦИЙ, ПРИВЯЗАННАЯ К КОНКРЕТНОЙ НИТИ

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

СТАТИСТИЧЕСКАЯ ОЦЕНКА И ГРАФИЧЕСКИЙ ПОКАЗ СОСТОЯНИЙ НИТИ

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

ФУНКЦИИ ЯЗЫКА PRACTICE ДЛЯ ДАННЫХ OS

Поддержка LynxOS включает расширенные функции языка PRACTICE для специальных данных LynxOS, которые используются в скриптах установки и тестирования. Например, функция task.proc.space (hello_ world) возвращает id области памяти MMU, которую использует этот процесс.

СПЕЦИАЛЬНОЕ ВЫПАДАЮЩЕЕ МЕНЮ ДЛЯ LYNXOS

Поскольку меню пользовательского интерфейса TRACE32 может быть полностью настроенo, вы можете создать новое выпадающее меню, включающее специальные команды операционной системы LynxOS. Мы поставляем поддержку LynxOS с примером для такого специального меню, которое обеспечивает быстрый и свободный доступ к особенностям LynxOS.


ТЕХНИЧЕСКАЯ ИНФОРМАЦИЯ: