Kozio представляет универсальное решение для верификации электроники

30.10.2013

Макс Максфильд делает обзор свежего решения от Kozio, созданного для верификации электронных печатных плат, СнК и ПЛИС.

Макс Максфильд делает обзор свежего решения от Kozio, созданного для верификации электронных печатных плат, СнК и ПЛИС.

 

Компания Kozio анонсировала невероятно интересную разработку на базе своей фирменной технологии верификации. Новое решение настолько всеобъемлюще, что трудно понять, откуда начать обзор, поэтому давайте рассмотрим всё по порядку.

Тестирование печатных плат

Я вспоминаю ранние 80-ые, когда создавал тестовые программы для печатных плат. Такие программы запускались на функциональных тестерах. Вы задавали тестовый набор на входах и фиксировали момент времени. Затем вы задавали следующий тестовый набор и фиксировали время. Далее вы снова делали то же самое. На каком-то этапе данные начинали появляться на выходах, а ваша программа проверяла выходные параметры на соответствие ожидаемым значениям. Если обнаруживалась разница, то следующим шагом нужно было исследовать неисправный компонент либо подозрительную дорожку печатной платы. Но это уже другая история.

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

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

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

Ещё хуже то, что разработчики ПО обычно не знают все тонкости работы аппаратной части, у них обычно нет опыта разработки тестовых программ на уровне печатной платы. Обычный сценарий для разработчиков ПО – это ожидание загрузки операционной системы (для простоты обсуждения представим, что это Linux). Затем они пишут несколько простых тестов на запись и считывание данных из памяти. Проблема в том, что загрузка такой ОС как Linux требует определённого времени. Другая проблема заключается в том, что написание даже простой программы тестирования памяти требует значительного опыта. Написание всесторонних тестов для проверки всех аспектов работы, например, USB-интерфейсов, может даже сильного специалиста поставить на колени.

Компания Kozio решила сосредоточиться на решении данной задачи. Сложно рассмотреть комплексное решение от Kozio целиком, поэтому детальную информацию вы найдёте на вебсайте компании. Достаточно будет сказать, что Kozio разработала специальную ОС для верификации и тестирования под названием VTOS. Это чрезвычайно быстрая операционная система, занимающая немного места в оперативной памяти. Компания также разработала пакет тестировочных утилит, способных распознавать различные типы памяти и разнообразные периферийные устройства, например, USB-интерфейсы. Всё, что необходимо сделать – это выбрать соответствующие тесты и указать адреса карты распределения регистров, начальные и конечные адреса и т.п. Данные тесты могут быть запущены индивидуально либо в качестве регриссионной последовательности. Они могут использоваться в качестве «go/no-go»-тестов платы либо для исследования любого проблемного места.

 

Операционная система VTOS и руководство по тестированию могут автоматически загружаться и выполняться с основной системной памяти, с USB-носителя или SD-карты.

Новые решения работают на многих процессорах от таких разработчиков как ARM, Applied Micro, Intel, Freescale Semiconductor, Texas Instruments, и Xilinx. «Что? Xilinx?, ¬– я слышу вопрос. – Разве они не ПЛИС выпускают?». А я вам отвечу чуть позже.

Тестирование СнК

На сегодняшний день мы видим всё больше и больше продуктов, на печатных платах которых совместно с модулями памяти и прочими компонентами располагаются так называемые СнК - системы-на-кристаллах. Исходя из названия данных устройств, СнК обычно включают 1 или 2 процессорных ядра, встроенную память, реализацию интерфейсов (USB, Ethernet, или PCIe), ряд периферийных функций и средства аппаратного ускорения.

А здесь меня ждал сюрприз. Я полагал, что VTOS используется для тестирования печатных плат, на которых располагаются СнК. Однако данная ОС позволяет тестировать саму СнК (виртуально).

 

Когда происходит верификация печатной платы, работа идёт с её физической реализацией. Когда же идёт верификация виртуальной СнК, всё что у вас есть – модель на языке описания оборудования (HDL). Сегодняшние методы верификации на базе HDL включают программную симуляцию и аппаратную эмуляцию. Но если же стратегия верификации основывается на загрузке ОС Linux и запуске тестировочных программ, то пройдёт много времени, прежде чем будет получен результат.

Для сравнения, ОС VTOS занимает настолько мало места в оперативной памяти, что можно использовать программный симулятор либо аппаратный эмулятор для загрузки данной ОС и запуска тестировочных программ непосредственно на СнК. Здорово, да?

Тестирование ПЛИС

Мы подошли к месту, где в истории нас ждёт новый поворот. Такие компании как Altera и Xilinx недавно представили новый класс ПЛИС, включающих процессор, интерфейс и периферийные ядра с традиционными программируемыми конвейерами. Altera называет данные компоненты СнК-ПЛИС, Xilinx зовёт их программируемыми СнК (All Programmable SoCs). Несмотря на различия в некоторых деталях, в данных устройствах реализована подсистема микроконтроллера с двумя ядрами ARM Cortex-A9 (включая блоки вычисления с плавающей запятой, кэш-память, счётчики, таймеры и т.д.), работающая в паре с различными интерфейсами (SPI, I2C, CAN, и т.д.) и динамическим контроллером памяти. Всё это дополняется большим объёмом традиционных программируемых конвейеров, набором высокоскоростных последовательных интерфейсов и значительным количеством портов GPIO.

Важной новостью на сегодня является то, что Kozio анонсировала библиотеку функционального тестирования системного уровня на базе VTOS для программируемых СнК Xilinx Zynq-7000. Они могут использоваться совместно с платформами Cadence Virtual System Platform либо ZedBoard.

Существует несколько преимуществ в новом подходе к тестированию схем с ПЛИС. Во-первых, возможна верификация виртуальной версии схемы (pre-silicon) на системном уровне с использованием программного симулятора (либо в физической ПЛИС) для проверки всех заявленных функций. Аналогичные повторяемые сценарии тестирования можно произвести ещё и на финальной стадии производства (post-silicon). (В случае использования ПЛИС можно воспользоваться её физической реализацией. Я использую термины "pre-silicon" и "post-silicon" для сравнения с процессом производства СнК, который мы обсудили ранее.)

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

Я думаю, мы видим старт совершенно нового подхода в тестировании и верификации СнК и ПЛИС. А что по этому поводу думаете вы?

- Макс Максфильд

EE Times



Наши новости один раз в неделю на ваш емайл
Подписаться на почтовую рассылку / Авторам сотрудничество
ТМ Электроникс



Экспресс доставка электронных компонентов - Оптовые поставки с онлайн складов и складов производителей.
Оптовые поставки с онлайн складов и складов производителей.
Подписаться на новости

Хотите интересные новости электроники? Подпишитесь на рассылку наших новостей.


Новости электроники

Еще новости

В архив даташитов сегодня добавили