|
|
  |
USB Sniffer, Help!!! |
|
|
|
Aug 27 2015, 15:12
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(GetSmart @ Aug 27 2015, 17:53)  Отъест слишком много ресурсов ЯДРА. На обработке? Не отъест: всего-то сложить по OR два числа и проверить, все ли единицы. Цитата(GetSmart @ Aug 27 2015, 17:53)  Можно предложить на SPI подать D+, а EOP ловить логикой вроде 2ИЛИ с небольшим(и) RC-фильтром, поданным на вход INT процессора. EOP будет виден как строб шириной пару бит в конце пакета (сплошные еденицы). А прерывание обратит на это место внимание ядра. Во-первых, это подразумевает разбор на лету; во-вторых, "это место" получится слишком уж неопределенным из-за латентности прерывания. Тогда уж таймером захватывать.
|
|
|
|
|
Aug 27 2015, 15:59
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(GetSmart @ Aug 27 2015, 18:53)  Какую латентность? На заявленном процессоре и на остальных Кортексах обещали нулевой джиттер. Кто обещал? Цитата(GetSmart @ Aug 27 2015, 18:53)  Но читая мануалы NXP почти нигде не указано сколько задержка в тактах. На arm.com все расписано. Недавно обсуждалось.
|
|
|
|
|
Aug 27 2015, 17:03
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(aaarrr @ Aug 27 2015, 19:59)  Кто обещал? Реклама разработчиков. Но в STM могут быть любые неожиданности. Сам проверял с обработчиком во внутренней RAM и джиттера не наблюдал. С точностью до такта. На 168 МГц два бита EOP выльются в 28 тактов свободы. Джиттер готовности SPI будет сравнимый (на 42 МГц), если SPI байтовый. Так что не надо сгущать краски. OR двух байт тоже быстро, согласен. Если не будет проблем с вычитыванием двух SPI. ----- По недоразумению мой предыдущий пост удалили. Восстанавливаю. Какую латентность? На заявленном процессоре и на остальных Кортексах обещали нулевой джиттер. Но читая мануалы NXP почти нигде не указано сколько задержка в тактах.
Сообщение отредактировал GetSmart - Aug 27 2015, 18:10
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Aug 27 2015, 18:43
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(aaarrr @ Aug 27 2015, 22:30)  Тем не менее, время входа зависит от прерываемого кода. Не очень понял из той ветки: что нужно сделать чтобы это увидеть? Какой код? ЗЫ Проверял не с одним обработчиком в раме, а и основной программой тоже, вместе с таблицей векторов. Цитата(aaarrr @ Aug 27 2015, 22:30)  Только не байт, а слова - у нас же 32 битный процессор, зачем по мелочам размениваться? У NXP SPI/SSP максимум 16 бит. Если у STM 32, то круто.
Сообщение отредактировал GetSmart - Aug 27 2015, 18:48
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Aug 27 2015, 19:13
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(GetSmart @ Aug 27 2015, 21:43)  Не очень понял из той ветки: что нужно сделать чтобы это увидеть? Какой код? Прибавляется такт при прерывании bit-band операций и инструкций с невыровненным доступом. Цитата(GetSmart @ Aug 27 2015, 21:43)  У NXP SPI/SSP максимум 16 бит. Если у STM 32, то круто. Я данные предлагал сложить в RAM при помощи DMA. Далее уже оперировать 32 битными словами.
|
|
|
|
|
Aug 27 2015, 19:35
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Еще джиттер создают late arrival и pop pre-emption, если прерывание не одно. Цитата(GetSmart @ Aug 27 2015, 22:19)  А на CM0 джиттера нет? Только в особом режиме: Цитата The Cortex-M0 and Cortex-M0+ processors have an optional feature to force interrupt response time to have zero jitter. This is done by forcing the interrupt latency to be the worst case (i.e. interrupt latency + wait state effect). This feature is typically not used in microcontrollers (just process the interrupt request as quick as possible), but is used in some special SoC designs that demand zero jitter in interrupt responses. Цитата(GetSmart @ Aug 27 2015, 22:19)  Всё перечисленное легко избегаемо даже в Си-коде. И пугать тактом задержки на фоне EOP равного 28 тактам это как минимум странно. Странно, по-моему, пытаться разбирать поток на лету. Реальные задержки будут далеко не в один такт.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|