Особенности контроля и отладки МПС на различных этапах жизненного цикла



Рассмотренные особенности тестирования и отладки микропроцессорных систем по-разному преломляются на различных этапах их существования.

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

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

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

С точки зрения контроля и диагностики МПС данный этап имеет следующие особенности:

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

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

Инструментальные средства контроля и диагностики на этом этапе должны отвечать следующим требованиям:

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

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

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

Контроль на этом этапе проводится с использованием отработанных тестовых программ. Тестирование проводится на специально разработанных контрольных стендах (в случае достаточно большого объема производства), предназначенных для выдачи тестовых воздействий и автоматического анализа реакций на них. Как правило, на этом этапе проводится только контроль работоспособности системы по принципу "годен - не годен". Определение места и характера неисправности проводится более высококвалифицированным персоналом в ходе отдельного процесса.

Контроль в процессе эксплуатации, как правило, проще, чем на предыдущих этапах, по следующим причинам:

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

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

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

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

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

Средства контроля и отладки должны:

  • управлять поведением системы и/или ее модели;
  • собирать информацию о поведении системы и/или ее модели, обрабатывать и представлять на удобном для разработчика уровне;
  • моделировать поведение внешней среды проектируемой системы.

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

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

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

В начале проводится автономная отладка аппаратной и программной частей МПС. Отладка аппаратуры предполагает тестирование отдельных устройств микропроцессорной системы: процессора, ОЗУ, контроллеров внешних устройств, блока питания, генератора тактовых импульсов и т. д.

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

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

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

Внутрисхемный эмулятор

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

Внутрисхемный эмулятор (ВСЭ) - это наиболее мощное и универсальное отладочное средство, которое делает процесс функционирования отлаживаемой системы прозрачным, то есть легко контролируемым, произвольно управляемым и модифицируемым. Основная область применения ВСЭ в настоящее время - это разработка встраиваемых систем на базе однокристальных микроконтроллеров. ВСЭ представляет собой программно-аппа ратное средство, способное заменить эмулируемый МК в реальной схеме.

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

С точки зрения процесса отладки ВСЭ выполняет в составе отладочного комплекса следующие функции:

  • управление ходом вычислительного процесса в макетном образце МПС: инициализацию начального состояния управляющих и информационных регистров МК и запуск программы отлаживаемой МПС по шагам или до выполнения заданного условия;
  • сбор информации о ходе вычислительного процесса отлаживаемой МПС и передачу ее в отладочный комплекс для преобразования, анализа, отображения и документирования;
  • задание программных воздействий на макетный образец непосредственно из ОЗУ отладочного комплекса.

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

События, вызывающие прерывание программы, могут включать:

  • выполнение заданного числа шагов;
  • появление заданной комбинации логических состояний на шинах МПС;
  • появление заданной последовательности таких комбинаций.

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

Платы развития

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

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

Иногда предусмотрена уже готовая разводка для установки дополнительных устройств, рекомендуемых фирмой, например, ПЗУ, ОЗУ, ЖКИ-дисплей, клавиатура, АЦП и т. д.

Эти средства могут применяться для следующих целей:

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

ПЗУ-мониторы

В качестве вспомогательного средства при использовании внутрисхемного эмулятора применяются резидентные мониторы отладки, или ПЗУмониторы (ROM-monitors). ПЗУ-монитор - это очень простая и по возможности небольшая программа, дающая пользователю возможность в определенной степени контролировать выполнение тестируемой программы, одновременно работающей в целевом устройстве. В простейшем случае отладочный монитор поставляется в виде микросхемы ПЗУ, которая вставляется в специальную розетку на плате развития. Плата также имеет ОЗУ для программ пользователя и канал связи с внешним компьютером или терминалом. Прикладная программа должна быть специально подготовлена: в нужные места необходимо вставить вызовы отладочных подпрограмм монитора. Готовую прикладную программу получают из отлаженной путем удаления всех вызовов мониторных функций и самого монитора отладки.

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

Эмулятор ПЗУ

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

Для выполнения функций загрузки и изменения содержимого памяти эмулятор должен иметь средства для подключения к внешнему устройству. Как правило, роль такого устройства выполняет внешняя ЭВМ.

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

Эмулятор ПЗУ используется как для замены на этапе отладки внешней постоянной памяти микроконтроллера, так и для эмулирования его внутренней памяти команд. В последнем случае находящаяся на кристалле МК память должна быть сконфигурирована таким образом, чтобы все обращения к ПЗУ команд приводили к обращению исключительно к внешней памяти. Например, в микроконтроллерах с архитектурой MCS-51 для этой цели может служить специальный вход DEMA.

В конце этапа отлаженная программа заносится с помощью программатора в энергонезависимую память МК, и проверяется работа МПС без эмулятора ПЗУ на реальных частотах.

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

Логический анализатор

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

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

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

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

Основу логического анализатора составляет память логических последовательностей (ПЛП). Тактовые сигналы записи в ПЛП могут вырабатываться внутренним генератором ЛА или поступать от контролируемой схемы. В последнем случае тактовые сигналы могут стробироваться другими внешними сигналами или их комбинацией. В случае заполнениявсего объема ПЛП запись в нее продолжается циклически с нулевого адреса. Таким образом, в памяти всегда хранятся N последних принятых слов, где N - емкость ПЛП.

Режим регистрации продолжается до появления события, заданного оператором при настройке, или комбинации таких событий. Регистрация может быть прекращена не только непосредственно в момент события, но и через определенное число тактов после него. В этом случае в ПЛП фиксируются состояния сигналов в контрольных точках в моменты как предшествовавшие событию, так и непосредственно следовавшие за ним, что облегчает анализ ситуации (рис. 17.1). Количество тактов последействия также определяется при настройке.

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

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

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

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

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

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, превращается во внутрисхемный эмулятор.


Дата добавления: 2022-01-22; просмотров: 53; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!