|
|
  |
Boundary-scan testing LPC2000 |
|
|
|
Apr 5 2005, 22:06
|

Адепт
   
Группа: Свой
Сообщений: 520
Регистрация: 15-02-05
Пользователь №: 2 656

|
Цитата(rezident @ Apr 5 2005, 17:45) Цитата(acex2 @ Apr 6 2005, 02:29) Конечно можно, как и любую ИС с JTAG. Где об этом написано/сказано? Вы только слышали/читали или сами применяли каскадирование (именно с LPC)? Честно признаюсь, конкретно фразы "LPC21xx precisely supports boundary-scan testing in chain" я не встречал. Но сама идея граничного сканирования как раз в этом и заключается, что устройству грубо говоря "по барабану" подключено оно в цепочке с другими устройствами или напрямую к адаптеру JTAG. В любом случае получается обычный последовательный регистр: от TDO к TDI, и так далее по цепочке. Просто не надо забывать про буфера на TCK и TMS если в цепи стоит много устройств и частота JTAG высокая. Опять же, помним про pull-up или преобразователи уровней, если стоят устройства с принципиально разными напряжениями I/O. Вы свою проблему подробнее опишите, тогда проще будет подсказать в каком направлении искать.
|
|
|
|
|
Apr 6 2005, 05:42
|
Частый гость
 
Группа: Свой
Сообщений: 174
Регистрация: 9-07-04
Пользователь №: 305

|
Цитата(rezident @ Apr 5 2005, 23:06) Господа, просвятите меня пожалуйста, поддерживают ли ARM фирмы Philips LPC2000 Boundary-scan testing? Т.е. можно ли их каскадировать на JTAG друг с другом и/или с другими устройствами типа CPLD и/или FPGA? Нигде не нашел вразумительного ответа по этому поводу.  На стр.201 User Manual-a для LPC210x четко прописано: For more details refer to IEEE Standard 1149.1 - 1990 Standard Test Access Port and Boundary Scan Architecture. Именно этот стандарт и предполагает интересующее вас каскадирование. И еще: дядя SM каскадировал ARM c кем-то там (см. форум Телесистем) и CCS в этом ему помог....
|
|
|
|
|
Apr 6 2005, 09:55
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(nameless @ Apr 6 2005, 11:42) На стр.201 User Manual-a для LPC210x четко прописано:
For more details refer to IEEE Standard 1149.1 - 1990 Standard Test Access Port and Boundary Scan Architecture.
Именно этот стандарт и предполагает интересующее вас каскадирование. Я знаю про этот стандарт, но в мануале не сказано, что LPC210x ПОЛНОСТЬЮ поддерживает этот стандарт. Или я не нашел этих слов. Цитата(nameless @ Apr 6 2005, 11:42) И еще: дядя SM каскадировал ARM c кем-то там (см. форум Телесистем) и CCS в этом ему помог.... ОК. Спрошу и его тоже. Только по-моему он с другими ARMами работал. Типа OMAP (ARM9+DSP 55x в одном флаконе). И вообще этот вопрос наверное скорее к практикам использования ARM, а не к теоретикам, программирующим на основе прочтения мануалов.  Заранее извините, если кого-то задену этим высказыванием. Без желения обидеть, но лишь для прояснения ситуации.
|
|
|
|
|
Apr 6 2005, 13:31
|

Адепт
   
Группа: Свой
Сообщений: 520
Регистрация: 15-02-05
Пользователь №: 2 656

|
Цитата(rezident @ Apr 6 2005, 07:04) Дык я понимаю, что подразумевает и прочее, но поддерживает ли именно LPC? Проблема в том, чтобы не плодить разъемы для подключения к каждому кристаллу, хочется объединить в цепочку JTAG LPC2138, XC9500XL и Spartan-XL. Обычно именно так и делают - один разъем на всю цепочку. Очень помогает при поиске разрывов и замыканий на плате с несколькими BGA + конфигурировать можно сразу всю плату. Что касается вашей конфигурации, то она должна работать даже без дополнительных буферов и преобразователей уровней - обычная цепочка. Как я писал вышел, LPC "по барабану" стоит он в цепочке или отдельно - он даже определить не сможет в какой конфигурации он подключен. Вопрос только в ваших средствах разработки - они должны поддерживать работу устройства в цепочке, т.е. уметь определять и переводить в BYPASS неиспользуемые устройства.
|
|
|
|
|
Apr 6 2005, 15:04
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(acex2 @ Apr 6 2005, 19:31) Что касается вашей конфигурации, то она должна работать даже без дополнительных буферов и преобразователей уровней - обычная цепочка. Как я писал вышел, LPC "по барабану" стоит он в цепочке или отдельно - он даже определить не сможет в какой конфигурации он подключен. Вопрос только в ваших средствах разработки - они должны поддерживать работу устройства в цепочке, т.е. уметь определять и переводить в BYPASS неиспользуемые устройства. Т.е. Вы хотите сказать, что проблема лишь в программе для отладки, которая работает с JTAG, а не в поддержке Boundary-scan test LPC2138? Ведь если он не полностью поддерживает этот стандарт, то возможно он сам не сможет в BYPASS переключаться. И тогда уже неважно первым или последним он стоит в цепочке JTAG. Программа, которая не поддерживает LPC (ICE Webpack или Xilinx Foundation) вообще не сможет "достучаться" до CPLD или FPGA. Я что-то неверно понимаю?
|
|
|
|
|
Apr 6 2005, 16:13
|

Адепт
   
Группа: Свой
Сообщений: 520
Регистрация: 15-02-05
Пользователь №: 2 656

|
Цитата(rezident @ Apr 6 2005, 12:04) Т.е. Вы хотите сказать, что проблема лишь в программе для отладки, которая работает с JTAG, а не в поддержке Boundary-scan test LPC2138? Я хотел лишь сказать, что в вашем случае единственной проблемой может стать софт, который не поддерживает работу с устройством, включенным в цепочку. Дело в том, что работа с цепочкой из нескольких JTAG устройств требует от софта реализации дополнительных процедур по определению количества устройств в цепи, обнаружения по ID или при помощи пользователя нужного по счету устройства, перевода остальных устройств в BYPASS, учета по одному биту BYPASS-регистра выключенных устройств при загрузке цепей и т.д. Большинство нормальных коммерческих программ этот режим поддерживает по умолчанию, хотя изредка приходилось сталкиваться и с "кривым" в этом плане софтом. Поэтому и написал про возможные проблемы. Цитата(rezident @ Apr 6 2005, 12:04) Ведь если он не полностью поддерживает этот стандарт, то возможно он сам не сможет в BYPASS переключаться. И тогда уже неважно первым или последним он стоит в цепочке JTAG. Программа, которая не поддерживает LPC (ICE Webpack или Xilinx Foundation) вообще не сможет "достучаться" до CPLD или FPGA. Я что-то неверно понимаю? Неверно понимаете. LPC - это ARM и шанс что Philips выкинул из лицензируемой у ARM core обязательный по стандарту BYPASS регистр равна вероятности того, что они вставили туда еще и свой собственный TAP-автомат на основе I2C Все процедуры в JTAG хорошо продуманны и все сводится к тому, чтобы можно было работать с любым выбранным устройством в цепочке, даже если все остальные устройства софту неизвестны. Именно для этого, например, последний бит опционального ID-регистра в JTAG есть константа 1, а значение бита регистра BYPASS равно 0. Цитата(rezident @ Apr 6 2005, 12:04) Не желая никого обидеть, это как раз тот случай с теоретиками из вашего предыдущего поста, которые даже manual читать не хотят
|
|
|
|
|
Apr 7 2005, 07:06
|
Частый гость
 
Группа: Свой
Сообщений: 197
Регистрация: 26-08-04
Пользователь №: 548

|
Имеет место недопонимание того фактора, что ЛПЦ построен на базе ядра ARM7TDMI от фирмы ARM Limited. И работа по интерфейсу JTAG определяется именно этим компонентом системы. Описание работы находится в даташите фирмы ARM Limited http://www.arm.com/pdfs/DDI0234A_7TDMIS_R4.pdf. Ну так вот на странице 146 написано примерно следующее: BYPASS (1111) The BYPASS instruction connects a 1 bit shift register (the BYPASS register) between TDI and TDO. When the BYPASS instruction is loaded into the instruction register, all the scan cells are placed in their normal (system) mode of operation. This instruction has no effect on the system pins. In the CAPTURE-DR state, a logic 0 is captured by the bypass register. In the SHIFT-DR state, test data is shifted into the bypass register via TDI and out via TDO after a delay of one TCK cycle. Note that the first bit shifted out will be a zero. The bypass register is not affected in the UPDATE-DR state. Note that all unused instruction codes default to the BYPASS instruction. В стандарте 1149 описано назначение и применение функции BYPASS Ну я вчера пробовал намекать на это но мое послание почему-то было уничтожено...
|
|
|
|
|
Apr 12 2005, 05:04
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(d__ @ Apr 7 2005, 00:06) Имеет место недопонимание того фактора, что ЛПЦ построен на базе ядра ARM7TDMI от фирмы ARM Limited. Еще добавлю что команда BYPASS обязательна для любого JTAG устройства. И кстати всегда состоит из одних единиц, так что неизвестное устройство тоже переведется в BYPASS когда со входа сдвигаются "1111111....1". Наблюдая когда появится "1" на выходе можно определить общюю длинну цепи командных регистров.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|