Методы и средства отладки микропроцессорных систем

Автор: Пользователь скрыл имя, 22 Октября 2012 в 20:14, реферат

Краткое описание

Число возможных состояний определяется количеством внутренних элементов памяти. Взяв для примера только регистровую память однокристального микроконтроллера (32 регистра по 8 разрядов), получим 2256 состояний. Для полного их перебора с частотой 100 МГц потребуется время порядка 1067 лет! Очевидно, что такой вариант неприемлем и никогда на практике не реализуется. Следовательно, любая МП БИС может содержать неисправности. Самое неприятное в этой ситуации то, что эти неисправности носят характер сбоев, то есть проявляются только при определенном сочетании данных внутри БИС, и поэтому весьма трудно поддаются выявлению.

Файлы: 1 файл

Методы и средства отладки микропроцессорных систем.doc

— 142.00 Кб (Скачать)

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

Сигнатурный анализатор

Поиск неисправности в МПС с  помощью логического анализатора  требует высокой квалификации персонала. Для каждой конкретной неисправности  необходимо заново разрабатывать процедуру испытаний, настраивать прибор на новый режим работы, который, по мнению оператора, позволит обнаружить и локализовать неисправность. Поэтому ЛА используются в основном на этапе разработки МПС. В то же время он малопригоден на этапах производства и эксплуатации системы. Здесь большее распространение получили принципы сигнатурного анализа, которые, не требуя высокой квалификации персонала, позволяют быстро и точно отыскивать вышедший из строя компонент МПС с помощью недорогого и компактного оборудования.

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

В настоящее время в связи  со все возрастающей интеллектуализацией  устройств сигнатурные анализаторы  постепенно утрачивают свои позиции.

JTAG-эмулятор

В последнее время компании - производители микропроцессоров и микроконтроллеров интегрируют в свои новые разработки модули с функциями встроенной отладки - отладчики на кристалле. Для поддержки функций встроенной отладки необходим специальный канал связи с компьютером. Чаще всего в качестве такого канала используется тестовый последовательный интерфейс типа JTAG, поэтому аппаратное средство отладки, построенное на базе встроенного в кристалл отладочного модуля, часто называют JTAG-эмулятором. Аббревиатура JTAG возникла по наименованию разработчика - объединенной группы по тестам JoINT Test Action Group.

Интерфейсом JTAG, реализованным согласно стандарту IEEE 1149.1-2001, управляет одно устройство-контроллер (чаще всего  это персональный компьютер, оснащенный соответствующим программным обеспечением и интерфейсным адаптером), к которому может быть подключено несколько тестируемых устройств.

В состав интерфейса JTAG входят 5 однонаправленных последовательных линий связи (один из сигналов необязательный). Эти сигналы  образуют тестовый порт ТАР (Test Access Port), через который тестируемое устройство подключается к тестирующему оборудованию (контроллеру).

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

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

JTAG-эмулятор позволяет  выполнять следующие действия:

  1. Пошаговый (на уровне машинных команд) режим выполнения программы.
  2. Заморозка периферии при останове: в момент перехода в режим останова выполнения программы пользователя JTAG-эмуляторблокирует источник тактовой частоты, управляющий работой центрального процессора и периферийных устройств. Это обеспечивает точное отслеживание модельного времени. JTAG-эмулятор обеспечивает точное соответствие времени выполнения программы пользователя времени работы периферийных устройств.
  3. Доступ к ресурсам микроконтроллера при останове: JTAG-эмулятор предоставляет доступ ко всем ресурсам микроконтроллера в режиме останова выполнения программы пользователя.

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

Однако он имеет ряд очевидных достоинств:

  1. Низкая стоимость средства отладки: в простейшем случае JTAGэмулятор может состоять из кабеля, соединяющего порт компьютера с JTAG-портом на отлаживаемой плате. Все режимы отладки микроконтроллера поддерживаются программным обеспечением.
  2. Максимально точное соответствие условий отладки рабочим условиям серийного изделия: отладка МПС может осуществляться на серийной плате, дополненной только 5-контактным разъемом порта ТАР на серийном МП. Как следствие, электрические и временные характеристики системы в процессе отладки абсолютно идентичны характеристикам рабочего режима.
  3. Возможность одновременного тестирования нескольких устройств, объединенных JTAG-цепочкой, причем стандарт не вводит никаких ограничений на количество устройств в цепочке.

К недостаткам JTAG -эмулятора относятся следующие:

  1. Необходимое условие использования JTAG-эмулятора - наличие встроенной в микроконтроллер Flash-памяти программ, поскольку для загрузки программы пользователя при отладке JTAG-эмулятор задействует собственную память микроконтроллера. В микроконтроллерах, у которых применяется другой тип памяти программ (например, только ППЗУ), реализация JTAG-эмулятора на кристалле невозможна.
  2. JTAG-эмулятор имеет ограниченное (обычно не более 8) количество точек останова.
  3. Трудности в реализации пошагового режима на уровне операторов языка высокого уровня, так как для отработки этого режима в исходный текст отлаживаемой программы в начале каждого оператора ЯВУ должна вставляться команда вызова отладочного монитора, а количество контрольных точек ограниченно.
  4. Программа пользователя, которая загружается для отладки, имеет больший размер и большее времен выполнения, чем рабочая программа, в связи с необходимостью вставки в нее команд вызова отладочного монитора. Это нарушает, хотя и несущественно, масштаб реального времени выполнения программы пользователя в режиме отладки с JTAG-эмулятором.
  5. JTAG-эмулятор не поддерживает точки останова по сложным (комплексным) условиям, которые реализованы, например, во внутрисхемных эмуляторах.

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

Интерфейс JTAG применяется не только для тестирования, но и для программирования различных устройств, в том числе и энергонезависимой памяти микроконтроллеров. Контакты для сигналов JTAG имеются на шине PCI, однако в их использовании единообразия не наблюдается (либо остаются неподключенными, либо соединяются для организации цепочки).

Отметим, что интерфейсом JTAG в настоящее  время оснащаются не только однокристальные  микроконтроллеры и сигнальные процессоры, но и универсальные микропроцессоры  вплоть до моделей с наивысшей  на сегодняшний день производительностью, например, Intel Core i7

ExTReme Edition. Здесь он позволяет  не только тестировать сам  процессор (это не представляет  особого прикладного интереса), но  и организовать зондовый режим  отладки (probe mode). Зондовый режим является мощным средством отладки системного программного обеспечения; обычный процессор, связанный с тестовым контроллером интерфейсом JTAG, превращается во внутрисхемный эмулятор.

Средства разработки и отладки  программного обеспечения

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

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

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

Традиционным языком программирования для МПС, работающих в реальном масштабе времени (а именно к этому классу относится большинство систем управления, сбора и обработки информации на базе однокристальных микроконтроллеров и ЦСП), является Ассемблер. В настоящее время в распоряжение разработчиков практически повсеместно предоставляется также компилятор с языка Си, а иногда Си++ и даже Паскаля. Как правило, в этом случае используются специальные оптимизирующие компиляторы, но даже они не всегда позволяют написать приемлемую по времени выполнения и объему памяти программу, что вызывает необходимость их доработки на Ассемблере.

Редактор связей собирает единый исполняемый модуль из нескольких объектных программных модулей.

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

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

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

Симулятор охватывает сразу несколько  процессоров одного семейства. Выбор  конкретного типа МП среди моделей  семейства обеспечивается соответствующими опциями меню. При этом моделируется работа ЦП, всех портов ввода/вывода, прерываний и другой периферии.

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

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

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

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

Изначально симуляторы создавали сами разработчики МП БИС и продавали их по очень низкой цене или даже поставляли бесплатно, для того чтобы потенциальные пользователи могли заранее познакомиться с особенностями новых схем и начать разработку ПО для них до появления на рынке достаточного количества новых БИС. Ныне симуляторы поставляет множество производителей эмуляторов и компиляторов, в то время как традиционные поставщики - производители интегральных схем - предпочитают покидать этот рынок.

Комплексная отладка микропроцессорных  систем

Как правило, микропроцессорная система  на основе МК или ЦСП - это система  реального времени, то есть корректность ее функционирования зависит от времени  выполнения отдельных программ и  скорости работы аппаратуры. Поэтому  система считается отлаженной после того, как рабочие программы правильно функционируют на действительной аппаратуре системы в реальных условиях.

Дополнительным свойством, которым  должны обладать средства комплексной  отладки по сравнению со средствами автономной отладки, является возможность управления поведением МПС и сбора информации о ее поведении в реальном времени.

Эти средства позволяют вести разработку и отладку, постепенно усложняя аппаратуру и программы. При этом разработка, изготовление и отладка проводятся поэтапно с нарастанием сложности. Новые блоки аппаратуры и программы вводятся в создаваемую систему, присоединяясь к проверенной ее части.

На этапе комплексной отладки  микропроцессорной системы используются следующие основные приемы:

  1. пошаговое отслеживание поведения системы;
  2. останов функционирования системы при возникновении определенного события;
  3. чтение и изменение содержимого памяти или регистров системы в момент останова;
  4. отслеживание поведения системы в реальном времени.

Информация о работе Методы и средства отладки микропроцессорных систем