|
JTAG, SVF формат данных, непонятка |
|
|
|
 |
Ответов
|
Jun 7 2009, 09:19
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Ну и что? Перевожу (если Вы сами не в состоянии):
Если в новой команде сканирования происходит смена длины потока, то должна быть указана новая SMASK, иначе будет взята SMASK, принятая по умолчанию. SMASK используется и в том случае, если не указан параметр TDI.
В моем плеере в процессе парсинга SVF-файла все полностью соответствует этому требованию. Если указана - берется указанная, если не указана - берется по умолчанию. Если TDI не указано - маску не сбрасываю, а оставляю.
Ну, блин, храню я ее в какой-то внутренней структуре, ну меняю я ее по этому правилу, НО ЗАЧЕМ ОНА НУЖНА? ГДЕ ЕЕ И ДЛЯ ЧЕГО ИСПОЛЬЗОВАТЬ?>
|
|
|
|
|
Jun 7 2009, 09:53
|
Частый гость
 
Группа: Участник
Сообщений: 76
Регистрация: 4-06-07
Пользователь №: 28 178

|
Цитата(SM @ Jun 7 2009, 12:19)  Ну и что? Перевожу (если Вы сами не в состоянии):
Если в новой команде сканирования происходит смена длины потока, то должна быть указана новая SMASK, иначе будет взята SMASK, принятая по умолчанию. SMASK используется и в том случае, если не указан параметр TDI.
В моем плеере в процессе парсинга SVF-файла все полностью соответствует этому требованию. Если указана - берется указанная, если не указана - берется по умолчанию. Если TDI не указано - маску не сбрасываю, а оставляю.
Ну, блин, храню я ее в какой-то внутренней структуре, ну меняю я ее по этому правилу, НО ЗАЧЕМ ОНА НУЖНА? ГДЕ ЕЕ И ДЛЯ ЧЕГО ИСПОЛЬЗОВАТЬ?> Если в новой команде сканирования происходит смена длины потока, то обязана быть указана новая SMASK, иначе будет взята неопределенная SMASK, принятая по умолчанию, что является ошибкой. SMASK используется и в том случае, если не указан параметр TDI.
А нужно это для того, чтобы при "проталкивании" данных с TDO предыдущего элемента цепочки на TDI следующего Ваш SVF player позаботился о том, чтобы туда вошли только значащие биты. Это своего рода внутренний КПП. В отличии от SMASK, MASK является внешним КПП, контроллирующим поток данных на TDO последнего элемента в цепочке.
|
|
|
|
|
Jun 7 2009, 10:24
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(Leonid.K. @ Jun 7 2009, 13:53)  Если в новой команде сканирования происходит смена длины потока, то обязана быть указана новая SMASK, иначе будет взята неопределенная SMASK, принятая по умолчанию, что является ошибкой. SMASK используется и в том случае, если не указан параметр TDI.
Ой-ой-ой, и где же это сказано, что неуказание SMASK и использование значения по умолчанию является ошибкой? Только не своими словами, а цитату плиз. Во всех SVF файлах, которые генерят мне средства разработки альтеры и lattice я вообще ни одного SMASK никогда не видел, и везде использовано значение по умолчанию. И SMASK по умолчанию отнюдь не неопределенная, в все единицы. If a scan command changes the length of the last scan of the same type and the SMASK parameter is absent, the smask pattern used is all cares.Цитата(Leonid.K. @ Jun 7 2009, 13:53)  А нужно это для того, чтобы при "проталкивании" данных с TDO предыдущего элемента цепочки на TDI следующего Ваш SVF player позаботился о том, чтобы туда вошли только значащие биты. Это своего рода внутренний КПП. Можно как-то по-русски, чтобы понятно было? На конкретном примере. Вот пример: HIR 5 TDI(1F); TIR 8 TDI(FF); ... ... ... SIR 8 TDI(5C) SMASK(F3); Я выталкиваю с TDO моего тап контроллера последовательность из 5 бит единиц HIR, потом 8 бит (в порядке их следования от LSB к MSB 0,0,1,1,1,0,1,0), потом 8 бит единиц TIR. Куда конкретно мне применить этот SMASK (F3) и как.
|
|
|
|
|
Jun 7 2009, 14:40
|
Частый гость
 
Группа: Участник
Сообщений: 76
Регистрация: 4-06-07
Пользователь №: 28 178

|
Цитата(SM @ Jun 7 2009, 13:24)  Ой-ой-ой, и где же это сказано, что неуказание SMASK и использование значения по умолчанию является ошибкой? Только не своими словами, а цитату плиз. Во всех SVF файлах, которые генерят мне средства разработки альтеры и lattice я вообще ни одного SMASK никогда не видел, и везде использовано значение по умолчанию. И SMASK по умолчанию отнюдь не неопределенная, в все единицы. If a scan command changes the length of the last scan of the same type and the SMASK parameter is absent, the smask pattern used is all cares.
Можно как-то по-русски, чтобы понятно было? На конкретном примере.
Вот пример:
HIR 5 TDI(1F); TIR 8 TDI(FF); ... ... ... SIR 8 TDI(5C) SMASK(F3);
Я выталкиваю с TDO моего тап контроллера последовательность из 5 бит единиц HIR, потом 8 бит (в порядке их следования от LSB к MSB 0,0,1,1,1,0,1,0), потом 8 бит единиц TIR. Куда конкретно мне применить этот SMASK (F3) и как. If a new scan command is specified which changes the length of the data pattern with respect to a previous scan, the SMASK parameter must be specified, otherwise the default SMASK pattern used is undefined and is an error.
TDI(5C) 0011 0101 SMASK(F3) 1100 1111 Биты, выделенные красным в TDI не имеют значения, в соответствии с нулями в маске SMASK.
|
|
|
|
|
Jun 7 2009, 15:12
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(Leonid.K. @ Jun 7 2009, 18:40)  If a new scan command is specified which changes the length of the data pattern with respect to a previous scan, the SMASK parameter must be specified, otherwise the default SMASK pattern used is undefined and is an error. Это из какого документа? В спецификации Rev.E (в том числе в той, которую Вы же и привесили http://electronix.ru/forum/index.php?act=a...t&id=33413) такого нет! Более того, там указано совершенно однозначно: " If a scan command changes the length of the last scan of the same type and the SMASK parameter is absent, the smask pattern used is all cares." Если это из апноты ксилинкса, то это свидетельствует лишь о том, что их реализация не соответствует спецификации, и, соответственно, некорректна. (у меня к их апнотам давно доверие потеряно, и это лишнее подтверждение) Цитата(Leonid.K. @ Jun 7 2009, 18:40)  TDI(5C) 0011 0101 SMASK(F3) 1100 1111 Биты, выделенные красным в TDI не имеют значения, в соответствии с нулями в маске SMASK.
Ну и я знаю, что они не имеют значения, потому, что в маске там нули, и я не спрашивал, что означает SMASK, на этот вопрос спецификация ответ дает. Вопрос был: Какие конкретные действия должны быть предприняты в плеере с этой маской SMASK?
|
|
|
|
Сообщений в этой теме
SM JTAG, SVF формат данных May 19 2009, 18:01 Leonid.K. Цитата(SM @ May 19 2009, 21:01) Поясните ... Jun 5 2009, 15:49 SM Цитата(Leonid.K. @ Jun 5 2009, 19:49) Раз... Jun 5 2009, 16:02  Leonid.K. Цитата(SM @ Jun 5 2009, 19:02) Спасибо, к... Jun 6 2009, 07:45   SM Цитата(Leonid.K. @ Jun 6 2009, 11:45) ... Jun 6 2009, 09:46    Oldring Цитата(SM @ Jun 6 2009, 13:46) Так что во... Jun 6 2009, 10:57     SM Цитата(Oldring @ Jun 6 2009, 14:57) IMHO ... Jun 6 2009, 11:05      Leonid.K. Цитата(SM @ Jun 6 2009, 14:05) Ну так и у... Jun 6 2009, 13:28       SM Цитата(Leonid.K. @ Jun 6 2009, 17:28) Гос... Jun 6 2009, 20:42        Leonid.K. Цитата(SM @ Jun 6 2009, 23:42) Господин, ... Jun 7 2009, 05:00         SM Цитата(Leonid.K. @ Jun 7 2009, 09:00) Есл... Jun 7 2009, 08:14          Leonid.K. Цитата(SM @ Jun 7 2009, 11:14) Мне не в л... Jun 7 2009, 09:12     Leonid.K. Цитата(SM @ Jun 7 2009, 18:12) Это из как... Jun 11 2009, 18:54
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|