Национальный исследовательский ядерный университет «МИФИ»
Опубликован: 03.03.2010 | Доступ: свободный | Студентов: 5328 / 1303 | Оценка: 4.35 / 3.96 | Длительность: 24:14:00
ISBN: 978-5-9963-0267-3
Специальности: Разработчик аппаратуры
Лекция 17:

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

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Эмулятор ПЗУ

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

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

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

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

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

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

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Владислав Салангин
Владислав Салангин

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

Михаил Королёв
Михаил Королёв