Jump to content

    
Sign in to follow this  
shems

Тестирование сигнальных процессоров через JTAG порт

Recommended Posts

Друзья, есть задача тестирования микросхем TSM320VC5416 на входном контроле.

Остановились на двух платформах:

1. jtag.com

2. xjtag.com

 

 

Если я правильно понимаю, интерфейс (железа) у обеих платформ один и тот же, отличается софт. В смысле все делает софт.

 

Вопрос:

1. Тест "Boundary Scan" это стандартная процедура для тестирования пинов микросхемы. Можно ли тестировать также внутренние FLASH SRAM модули через тот же JTAG порт и ПО JTAG системы (без прошивки тестирующей программы)?

2. Компания TI предоставляет среду разработки с дебагером и JTAG адаптером. Можно ли этот адаптер применить (имеет ли драйвер адаптера открытый API) для тестирования внутренних модулей микросхемы без разработки тестирующей прошивки?

 

 

Пожалуйста, напишите, кто работал с выше упомянутыми системами.

 

Заранее благодарен!

Share this post


Link to post
Share on other sites
Пожалуйста, напишите, кто работал с выше упомянутыми системами.

 

0. Знаком с Jtag Technologies (jtag.com). Насчет железа не совсем понятно, что Вы имели в виду. Контроллеры скорее всего у них свои собственные, но поддерживаются и широко распространенные Altera, Xilinx и т.п. (у Jtag Technologies точно поддерживаются).

 

1. Тестирование с помощью граничного сканирования основывается на стандартах, которые дополняются-развиваются. В базовом варианте, IEEE 1149.1, тестируются только пины. Новые возможности (например контроль процессорного ядра) появляются, но они основываются на встроенных функциях эмуляции/отладки, присущие современным RISC-архитектурам (ARM, Cortex и т.д.). TSM320VC5416 уже давно не новый процессор, у него контролировать ядро думаю не получится.

 

2. Про открытый ли драйвер API и поможет ли это Вам, не знаю. В свое время изделия с этим процессором у нас тестировались методом разработки программ в Code Composer Studio.

 

3. В последнее время у нас эти процессора применяются мало, может поделитесь зачем их надо проверять на входном контроле, может нас тоже что-нибудь нехорошее поджидает?

 

Share this post


Link to post
Share on other sites

Тестирование CPU, представленного в виде черного ящика (а именно это только и позволяет Boundary Scan),- вещь если и возможная теоретически, то крайне неэффективная и потому вряд ли наработанная для тех процессоров, где имеются возможности On-Chip Debugging (OCD). Если интересны составляющие этой неэффективности - можем рассмотреть подробнее, а сейчас опустим.

 

Для TI's 54xx DSP есть вполне разумные по цене решения в аппаратной части (за программную не скажу - поисследуйте самостоятельно):

XDS100v2 - StarterKit

XDS100v2 (тот же, но на Украине - otladka.com.ua)

XDS510 - набор Сделай Сам

 

Думаю, есть и еще. Почему бы ими не воспользоваться?

 

 

Share this post


Link to post
Share on other sites

Задача возникает от идеи создания универсального тестера СБИС.

Вот привожу ссылку на тестер СБИС FORMULA HF3 компании Форм.

http://form.ru/?option=com_content&vie...191&vmenu=0

 

Какой метод используется для проведения функционального тестирования микропроцессоров, в данном случае TI, на таких тестерах? Конфигурирование внутренних логических модулей через JTAG как в отладочных системах, или все таки тестовая прошивка разработанная в С, которая проводит тестирование и выдает результат тестеру СБИС.

 

Вот вчера получил ответ от XJAG.

 

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

 

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

1) самостоятельно выяснить правильную последовательность доступа к этим блокам через TAP;

2) самостоятельно составить тестирующую программу, которая управляя такими сигналами как TCK и TMS реализует тест;

3) запустить составленный тест в XJDeveloper.

 

Тестирующая программа описывается на встроенном в XJTAG языке под названием XJEase, и может выглядеть приблизительно вот так:

 

INT i;

JTAG

SET TMS := 1, TCK := 0;

FOR i := 0 TO 5

SET TCK := 1;

SET TCK := 0;

END;

INJTAGSTATE "RESET"

END;

 

 

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

 

 

 

Share this post


Link to post
Share on other sites
Друзья, есть задача тестирования микросхем TSM320VC5416 на входном контроле.

Остановились на двух платформах:

1. jtag.com

2. xjtag.com

 

Тут сразу могу сказать следующее.

Обычно jtag-сканирование применяют для проверки припайки микросхемы к плате.

Стандартные команды и их адреса можно прочитать в BSDL файле. Они относятся в основном только к сканированию. А вот адреса и команды, предназначенные для работы с внутрисхемным отладчиком обычно ни одна фирма не отдает. Хотите получить? Заключайте договор, платите деньги и сертифицируйтесь. Они это воспринимают как то, что Вы хотите сделать свой программный инструмент, а потом им же и торговать. А если инструмент "кривой", то клиенты будут гробить микросхемы.. То же самое и с API. Ксайлинкс с большим трудом открыл и дал исходники. И то, только мне и не для "распространения"...

Так что идею проверки "всех микросхем" сразу забудьте...

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

А еще есть выводы, которые не охватываются jtag-ом. И есть аналоговые узлы, такие как PLL... Как их будете проверять? Как будете проверять токи утечки по входам? И что сами эти входу не пробиты?

Посмотрите у меня на сайте, если что-то найдете полезное, то и хорошо. Удачи!

 

Share this post


Link to post
Share on other sites
Друзья, есть задача тестирования микросхем TSM320VC5416 на входном контроле.

Остановились на двух платформах:

1. jtag.com

2. xjtag.com

 

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

http://www.asset-intertech.com/

Share this post


Link to post
Share on other sites

Забыть эту идею навсегда.

Для реальных тестов таких чипов нужно

Нетлист + СДФ - тестируем чисто логику

Описание ИП для памятей

 

Проще наверное сразу украсть тест программу у Тексаса

Share this post


Link to post
Share on other sites
Забыть эту идею навсегда.

Для реальных тестов таких чипов нужно

Нетлист + СДФ - тестируем чисто логику

Описание ИП для памятей

 

Проще наверное сразу украсть тест программу у Тексаса

Согласен, вы правы!

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

К тому же новые чипы памяти имеют интерфейс JTAG, по которому можно подключатся к внутреннему БИСТ контроллеру, и запускать внутренний БИСТ тест.

 

Share this post


Link to post
Share on other sites

Из сообщений в этой ветке, если я правильно понял, следует, что Вы shems хотите (или Вас заставляют) сделать что-то наподобие проверки по ТУ для импортных микросхем, начиная с TMS5416.

Согласен с другими участниками обсуждения, что это или не совсем в правовом поле, или (и) дорого стоит, и результат не гарантирован.

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

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

 

Share this post


Link to post
Share on other sites
На данном этапе нужна система для отбраковки чипов на входном контроле.

 

К тому же новые чипы памяти имеют интерфейс JTAG, по которому можно подключатся к внутреннему БИСТ контроллеру, и запускать внутренний БИСТ тест.

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

Так вот, дальше есть два варианта.

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

2. Нашли одну "неисправную"... Обратились к поставщику. И далее получаем ответ, что мол если транспортная тара вами распакована, и микросхемы из тары вами изъяты, то претензий к поставщику быть не может... ОК!!! перематерили поставщика и обратились к изготовителю. Изготовитель предложит Вам прислать к нему микросхемы на проверку. Причем все за Ваш счет. И только в том случае, если изготовитель будет уверен, что вы нигде ничего не нарушили, то он вам микросхему заменит. А если вы примените какой либо стенд или софт для "проверки" и они не будут сертифицированы изготовителем, то он на все ваши претензии гордо наплюет... Написано, что используя JTAG неправильно есть вероятность сжечь микросхемы. Ну и "получите"... Что будете делать в этом случае?

 

А вот про это " подключатся к внутреннему БИСТ контроллеру" написано в BSDL файле? Там указан адрес и коды для БИСТ? Если нет, то увы, это только Ваша мечта...

 

 

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

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

 

Share this post


Link to post
Share on other sites
...

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

Скорее всего, в подавляющем числе случаев, вообще никак.

 

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

 

...

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

...

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

Edited by prig

Share this post


Link to post
Share on other sites
1. Тест "Boundary Scan" это стандартная процедура для тестирования пинов микросхемы. Можно ли тестировать также внутренние FLASH SRAM модули через тот же JTAG порт и ПО JTAG системы (без прошивки тестирующей программы)?

2. Компания TI предоставляет среду разработки с дебагером и JTAG адаптером. Можно ли этот адаптер применить (имеет ли драйвер адаптера открытый API) для тестирования внутренних модулей микросхемы без разработки тестирующей прошивки?

 

2 - без прошивки большую часть проверить (то есть, то, что больше всего подвержено "кремниевым" багам, память, логику и т.п.) не получится

но, это все проверяется и выбраковывается 2 раза - на пластине и после попила (не того :), а на отдельные чипы) и корпусирования

то есть смысла проверять внутренности в изделии нет.

 

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

 

теоретически, как правило, процессорный jtag позволяет залезть на шину и сгенерить обращение по шине к тому же UART или MCBSP, чтоб он сгенерил на выходах чего-нибудь, но тут нужно иметь тактовую, ну и доку (например, на PPC или MIPS-овский jtag обычно все открыто), ну и преимуществ перед BS по проверке IO я не вижу

 

ну и у ТИ протоколы общения по JTAG-у закрытые, может их хакнули, а может и нет - я не знаю.

Share this post


Link to post
Share on other sites

2 shems:

 

Главный вопрос: вам шашечки, или ехать? Что в данном случае значит - вам нужно сделать хорошую видимость входного контроля, или реально нужно проверить, а будут ли привезенные чипы способны выполнять свои основные функции?

 

Первый вариант комментировать не хочется... Если все же второе, то любой мало-мальский функциональный тест, бегущий на CPU и задействующий хотя бы основную периферию, даст вам в разы лучшее функциональное покрытие, чем самый изощренный BS-based тест. О разнице во времени тестирования вообще не говорю. При том, что на его разработку скорее всего понадобится времени уж точно не больше, чем на BS (скорее меньше).

 

В общем, извините, но я немного охлажу ваш пыл как неофита в этой во всех остальных смыслах полезной сфере (JTAG & boundary scan tests) - серебряной пули не существует, на каждое семейство используемых у вас CPU целесообразнее разрабатывать свое семейство функцональных тестов. И это не так страшно, как может показаться на первый взгляд. Структурирование, модульность, языки высокого уровня и ре-использование кода-то никто не отменял!

Share this post


Link to post
Share on other sites
2 shems:

 

Главный вопрос: вам шашечки, или ехать? Что в данном случае значит - вам нужно сделать хорошую видимость входного контроля, или реально нужно проверить, а будут ли привезенные чипы способны выполнять свои основные функции?

 

Первый вариант комментировать не хочется... Если все же второе, то любой мало-мальский функциональный тест, бегущий на CPU и задействующий хотя бы основную периферию, даст вам в разы лучшее функциональное покрытие, чем самый изощренный BS-based тест. О разнице во времени тестирования вообще не говорю. При том, что на его разработку скорее всего понадобится времени уж точно не больше, чем на BS (скорее меньше).

 

В общем, извините, но я немного охлажу ваш пыл как неофита в этой во всех остальных смыслах полезной сфере (JTAG & boundary scan tests) - серебряной пули не существует, на каждое семейство используемых у вас CPU целесообразнее разрабатывать свое семейство функцональных тестов. И это не так страшно, как может показаться на первый взгляд. Структурирование, модульность, языки высокого уровня и ре-использование кода-то никто не отменял!

 

Спасибо за пост. Задача стала актуальной, после того как был обнаружен дефект в чипах от Aeroflex. Когда было обнаружено, было уже очень поздно, отказали некоторые сектора ОЗУ!

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

Нашли некоторые промышленные тестеры и возник вопрос. Есть ли механизм создавать универсальный тестер для процессоров? А так как на данный момент нужно проверить именно процессоры от TI, то вопрос так и был поставлен.

 

 

Share this post


Link to post
Share on other sites

Я же сказал - универсального решения нет. Даже если пойти по пути BoundaryScan тестирования внутренностей чипа (к чему вас, как я вижу, все время клонит какая-то сила :)), все равно неизбежно придется вызнавать и учитывать особенности данного семейства и даже модели процессора. Так лучше уж делать это наиболее эффективным способом - и это не BoundaryScan.

 

BoundaryScan - это, в большой степени, инструмент для connectivity тестирования. А не для тестов функционирования CPU, памяти и т.п.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this