[i] Запускаем отладку многопроцессорной системы
В данной статье будет рассмотрена настройка IDE CM-LYNX, обеспечивающая отладку сразу нескольких процессоров К1967ВНxx. Связь отладчика с процессором осуществляется посредством JTAG-интерфейса, поэтому, чтобы в режиме отладки иметь доступ сразу к нескольким процессорам, необходимо объединить процессоры в JTAG-цепочку. В рассматриваемом проекте будет использоваться два процессора K1967ВН02BG, соединенные в JTAG-цепочку.
1. Настройка проекта
В качестве тестового примера для отладки будет использоваться проект "Hello World", описанный в статье "[i] Создаем проект в среде CM-LYNX". По статье выполняются все пункты по созданию проекта до настроек режима Debug. Далее настройка режима Debug будет несколько отличаться от стандартной.
Нужно создать отладочную конфигурацию. Для этого необходимо нажать на стрелку у значка "жука" и перейти в пункт "Debug configurations", как это показано на рисунке 1.
Рисунок 1 - Расположение опции Debug configurations в среде CM-LYNX
Так как выбран toolchain LLVM, то в открывшемся окне слева нужно выбрать тип Milandr VN1967 LLDB и нажать на кнопку "New". Наглядно на рисунке 2.
Рисунок 2 - Создание конфигурации отладки в окне Debug Configurations
Будет создана конфигурация {Name_project} Debug. Теперь во вкладке main необходимо указать количество ядер, то есть 2, а далее, в столбце Program, указать для каждого ядра проект для отладки. Обратите внимание, что для примера отлаживается один проект, и оба ядра будут работать с ним. Настройка отладки нескольких процессоров в окне "Debug Configurations" представлена на рисунке 3.
Рисунок 3 - Настройка отладки нескольких процессоров в окне Debug Configurations
После нажатия на кнопку "Debug" среда автоматически загрузит во все процессоры копию программы в соответствии с отладочной информацией о многопроцессорной конфигурации, хранящейся в "dxe"-файле, и запустится режим отладки.
2. Режим Debug
Теперь после запуска режима Debug в отладочной сессии будет отображаться два потока, по одному потоку на каждый процессор. Пример на рисунке 4.
Рисунок 4 - Пример запущенного режима отладки для двух процессоров
Выбрав соответствующий поток, можно по отдельности запускать выполнение программы на разных процессорах. Чтобы запустить выполнение программы одновременно на двух процессорах, есть возможность воспользоваться функцией "Multisession Commands Mode", которая выделена красным на рисунке 5.
Рисунок 5 - Расположение функции Multisession Commands Mode
Когда данная функция активирована, отладочные команды (Resume, Suspend, Terminate, Step Into, Step Over, Step Return) выполняются одновременно для всех активных процессоров.
Сохранить статью в PDF