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

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

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Аннотация: Цель лекции: рассмотреть процесс тестирования и отладки микропроцессорных систем, используемые при этом методы и средства.
Ключевые слова: микропроцессорная система, эксплуатация, цикла, объект, очередь, регистровая память, микроконтроллер, микропроцессор, pentium, AMD, TLB, АЛУ, запоминающее устройство, запрос прерывания, сигнал помехи, последовательный интерфейс, ОЗУ, метод раскрутки, блок памяти, ПО, распределение функций, быстродействие, стоимость, емкость памяти, критерии выбора, энергопотребление, тестовая программа, точность, опыт, тактовая частота, длина, класс, алгоритм функционирования, генератор импульсов, ПЗУ, логический анализатор, модифицируемость, разъем, адаптер, процессор, прерывание, порт ввода-вывода, пользователь, evaluation board, Макетирование, плата, периферия, поле, АЦП, монитор, программа, канал связи, прикладная программа, интегральная схема, периферийное устройство, память, MCS, программатор, отладка, запись, регистрация, анализ, мегабит, поиск, компонент, сигнатурный анализ, принципиальная схема, сигнатура, интеллектуализация, JTAG, joint, group, IEEE, контроллер, персональный компьютер, порт, логический, центральный процессор, информация, последовательный порт, ЯВУ, интерфейс, PCI-X, core, edition, режим отладки, probing, mode, редактор связей, загрузчик, ассемблер, компилятор, Си, модуль, симулятор, логическая модель, исполнение, условное или, меню, разработка программного обеспечения, моделирование, представление, корректность, этап жизненного цикла

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

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

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

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

Рассмотрим в первую очередь особенности МП БИС и микропроцессорной системы в целом как объекта контроля, которые затрудняют процедуру контроля и поиска неисправностей.

  1. Высокая сложность БИС. Полная проверка схемы должна обеспечивать проверку ее работоспособности при всех возможных состояниях.

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

    Самой известной ошибкой этого рода является, безусловно, ошибка в процессоре обработки чисел с плавающей точкой микропроцессора Pentium, выпущенного в 1993 году. Она проявлялась в неточном выполнении операции деления (погрешность в 8-м десятичном знаке после запятой) для некоторых операндов. Ошибка проявлялась, только если делитель содержал шесть последовательных бит, с 5-го по 10-й, установленныхв единицу. Она была вызвана дефектами в микрокоде реализации алгоритма деления. Вероятность обнаружения ошибки оценивалась как один к девяти миллионам, а вероятность встречи с ней - 1 раз в 27 000 лет. Однако несмотря на это, фирма Intel пошла на то, чтобы заменить по требованию все дефектные процессоры, понеся при этом, естественно, значительные убытки.

    Аналогичная ошибка была выявлена в конце 2007 года в четырехъядерных серверных процессорах Barcelona, а также в чипах Phenom для настольных компьютеров компании AMD. Она была связана с особенностями реализации буфера быстрого преобразования адреса ( TLB ) кэш-памяти третьего уровня. Ошибка в отдельных ситуациях приводила к зависанию системы.

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

  2. Малое количество контрольных точек схем. Несмотря на то что корпуса современных микропроцессорных БИС имеют до 1,5 тыс. выводов, сложность микропроцессоров такова, что непосредственно подать тестовое воздействие на любую точку схемы невозможно. Также невозможно напрямую проверить состояние какого-либо узла БИС. Это требует подачи сложных последовательностей сигналов на доступные для воздействия точки схемы и синхронного анализа длинных последовательностей состояний в точках, доступных для прямого контроля. Поэтому воздействия и представления результатов носят косвенный, опосредованный характер, что может привести к неверной интерпретации получаемых при тестировании данных.
  3. Неразделимость аппаратуры и программного обеспечения. Аппаратура и программное обеспечение МПС представляют собой единый комплекс. Свои функции микропроцессорная система выполняет под воздействием программ, часть из которых к тому же хранится в постоянной памяти БИС и системы. Ошибки в работе системы могут быть обусловлены как неисправностями аппаратной части, так и ошибками, допущенными при разработке ПО.
  4. Сложность и неразделимость аппаратуры, составляющей микропроцессорную систему. МПС, особенно на этапе ее эксплуатации, невозможно разделить на функциональные узлы для их автономной проверки. Это объясняется конструктивными и схемотехническими особенностями микропроцессорных средств. Во-первых, чисто конструктивно подключить тестирующую аппаратуру к отдельным БИС, составляющим систему, весьма сложно. Во-вторых, разделение микропроцессорной системы на отдельные функциональные узлы при современном уровне интеграции элементов на кристалле невозможно. Сам микропроцессор содержит широкий набор функционально различных устройств от целочисленного АЛУ до запоминающих устройств различного вида и назначения. В то же время одни и те же функции распределяются по различным БИС. Например, обработкой прерываний занимается как сам микропроцессор, так и контроллер приоритетных прерываний, входящий в состав схем чипсета, которые, в свою очередь, выполняют множество других функций. Поэтому проверка выполнения той или иной функции в микропроцессорной системе затрагивает работу всех составляющих ее схем и предъявляет высокие требования к квалификации обслуживаемого персонала.
  5. Необходимость одновременного контроля состояния большого числа многоразрядных шин. Общая разрядность шин, по которым происходит взаимодействие между компонентами микропроцессорной системы, весьма велика. Но главную проблему составляет не только количество точек, в которых требуется анализировать сигналы. Простая регистрация их поведения мало что даст для определения места и характера неисправности.

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

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

Наряду с имеющимися трудностями в процессе контроля и отладки микропроцессорная система имеет ряд достоинств, облегчающих этот процесс.

  1. Способность к самоконтролю, то есть способность МП под действием программы сравнительно небольшого объема генерировать очень большие тестовые последовательности. В этом случае используется метод раскрутки. Сначала отлаживается синхронизация МПС и создается некоторое ядро из микропроцессора и памяти небольшой емкости. В память записывается программа, которая под управлением микропроцессора генерирует тесты для контроля всего ОЗУ, а затем, по мере подключения новых блоков памяти, - и для других узлов микропроцессорной системы.
  2. Способность микропроцессора к логической обработке информации, что позволяет сравнивать отклики проверяемых узлов с эталонными без применения дополнительной аппаратуры. При этом значительно уменьшается объем информации, которую должна зафиксировать контрольноиспытательная аппаратура, а весь анализ получаемой информации (например, сравнение получаемых реакций с эталонными) выполняет сам МП, который может не только определить характер неисправности, но иногда и точно указать ее место.
  3. Программная доступность всех узлов МПС позволяет микропроцессору выдавать на них тестовые воздействия, получать и анализировать реакции на эти воздействия.
  4. При составлении тестовых и диагностических программ разработчик имеет дело не с новым языком программирования контрольной аппаратуры, а с привычными средствами программирования микропроцессора.
  5. Важной особенностью МПС, как и других цифровых систем, является стандартное представление электрических сигналов. Это позволяет упростить контроль состояния точек и свести его лишь к определению принадлежности данного состояния к зоне сигнала 0 или 1. Прибегать к измерениям аналоговых величин - длительности фронта импульса, амплитуды сигнала и т. п. - приходится только при подозрении на выход из строя одного из электронных компонентов схемы.
< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Владислав Салангин
Владислав Салангин

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

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