реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> LPC2368 + D9161A (RMII) - не передает пакеты в сетку, ARP пакеты принимает, передает назад в PHY - компьютер не ловит!
zltigo
сообщение Nov 8 2008, 08:11
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(VslavX @ Nov 8 2008, 09:29) *
просто волосы дыбом встают....

Лично у меня волосы дыбом встают от описаной картины smile.gif. Даже ума не приложу, что надо было сотворить c бедным контроллером для тактого. Из всего перечисленного, действительно, с временными параметрами у NXP в подавляющем большинстве случаеев в документации просто никак sad.gif. Приходится заниматься лабораторными работами на отладочных платах.


Цитата(VslavX @ Nov 8 2008, 09:29) *
Посмотрел "модный" KSZ8041 и "зрелый" KS8721. У них Tsu - те же самые 4нс, от DM9161 никак не отличаются....

Естественно не отличаются и проблема не в PHY или LPC.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 8 2008, 09:21
Сообщение #17


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(zltigo @ Nov 8 2008, 10:11) *
Лично у меня волосы дыбом встают от описаной картины smile.gif. Даже ума не приложу, что надо было сотворить c бедным контроллером для тактого.

Да JTAG - вообще вещь темная - полно всяких недокументированных регистров - у каждого производителя свой набор внутренних "примочек". Я с этим сбоем пытался разобраться - в принципе, мой монитор просто непрерывно читает регистр 4 ICE (Debug Comms Control Register), когда флажок готовности DCC появляется - считываются собственно принятые данные . Цикл чтения регистров ICE не особо сложный, но там есть фаза вывода адреса и типа операции. И что-то по цепям (если трогать плату рукой) "проскакивает" и цикл чтения ICE заканчивается не совсем так как положено. Состояние TAP-контроллера при этом вроде адекватное - все документированное нормально доступно без сброса TAP-а. Работа JTAG полностью восстанавливается перезаписью IR и регистра номера цепочки. Такое иногда у меня бывает на разных процесорах, но почему у LPC при этом отпадает EMAC RAM - хз. Наверное, чтобы дать мне повод поворчать smile.gif.
Если от аппаратных "помех" полностью избавляться - то, имхо, нужен JTAG с гальваноразвязкой, наверное они бывают, но я таких не видел, сам спокойно пользую обычный альтеровский байт-бластер. Баг "с отвалом" бывает не особо часто (особенно если руками не лезть куда не надо smile.gif) , при отладке вполне терпимо, так особо напрягаться с разработкой спец.адаптера смысла не вижу пока.

Цитата(zltigo @ Nov 8 2008, 10:11) *
Из всего перечисленного, действительно, с временными параметрами у NXP в подавляющем большинстве случаеев в документации просто никак sad.gif. Приходится заниматься лабораторными работами на отладочных платах.

Ну вот я тоже позанимался - вижу опережение данных перед тактовой на 6нс - не работает. Просмотрел буквально всю смысловую часть пакета (паддинг там однородный - смотреть все данные нечего - они не меняются) на TXD0/TXD1/TXEN - везде есть четко минимум 5.8нс, то есть ни помех и ничего такого подозрительного - а пакет "не прошел". На 100% в трассировке, конечно, уверенным быть нельзя - буду еще играться, но она сделана вполне добротно (даже не мной, а проинструктированным коллегой - в две головы думали smile.gif) - не в первый раз сотня/полусотня МГц на двухслойке подымается.
Цитата(zltigo @ Nov 8 2008, 10:11) *
Естественно не отличаются и проблема не в PHY или LPC.

Не знаю, имхо, LPC тоже "хорош" - иметь Tpd 12-14нс на 50МГц интерфейсе - не камильфо, приходится из-за этого ерундой страдать. Напишу-ка я еще пару "злобных" писем в NXP smile.gif - попробую недостающие цифры с них сторбить.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 8 2008, 10:16
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(VslavX @ Nov 8 2008, 12:21) *
..иметь Tpd 12-14нс на..

Вопрос в том, чем все это смотрели? Осциллограф гигагерцовый, щупы активные....? В противном случае видимое имеет сильные отличия от реальности.


Цитата(VslavX @ Nov 8 2008, 12:21) *
..спокойно пользую обычный альтеровский байт-бластер.

Это следует понимать, как нечто самодельное функционально совместимое с LPTшным байтбластером?
Подключенное в лучшем случае 10pin шлейфом в 20pin стандартный ARM JTAG? Или экономия еще больше - в стиле http://electronix.ru/forum/index.php?showtopic=54883&hl= sad.gif?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 8 2008, 20:36
Сообщение #19


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(zltigo @ Nov 8 2008, 12:16) *
Вопрос в том, чем все это смотрели? Осциллограф гигагерцовый, щупы активные....? В противном случае видимое имеет сильные отличия от реальности.

Увы, скоп скромный - с полосой всего лишь 350МГц и на 2Gs, щупы обычные. В абсолютных значениях сигнала может быть оно и отличается от реальности, но дельты видно отлично. А щупы из комплекта, ну не фонтан, но и не столь уж плохи - я ими DDR-333 шину данных отлаживал - нормально, жить можно. Ну и экспериментальный факт - добавили задержку 3нс (BTW, мой неидеальный скоп это четко показал) - и все жужжит. И Davicom в даташите указал Tsu, а вот NXP свой Tpd стыдливо зажал. Пока верим Davicov-у smile.gif - потому как больше нечему верить. Ответит NXP - обсудим.
Цитата(zltigo @ Nov 8 2008, 12:16) *
Это следует понимать, как нечто самодельное функционально совместимое с LPTшным байтбластером?
Подключенное в лучшем случае 10pin шлейфом в 20pin стандартный ARM JTAG? Или экономия еще больше - в стиле http://electronix.ru/forum/index.php?showtopic=54883&hl= sad.gif?

Угу. Cкорее мелкосерийное, уже штук 200-300 раздали за 10 лет. И экономия - то само собой - "Наташа, Вас никогда не били мокрым веслом по голому заду?" - а меня, случается, за лишние резисторы-конденсаторы 0805 "бьют" biggrin.gif. И "плебейские" SAM7xx работают по этому "экономическому" разъему практически без сбоев - хоть при разработке, хоть серийно biggrin.gif , а вот "аристократические" LPC - как-то сбоят crying.gif.
Go to the top of the page
 
+Quote Post
lebiga
сообщение Nov 9 2008, 15:15
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 22-06-06
Из: Киев
Пользователь №: 18 292



Цитата(VslavX @ Nov 8 2008, 12:21) *
Ну вот я тоже позанимался - вижу опережение данных перед тактовой на 6нс - не работает.


Мне немного помог конденсатор 15пик на тактовую и включенная подтяжка этого сигнала в LPC2368.
НО все это шаманство, день от дня работает по-разному. Платы с starterkit (8 шт) с LPC2378 и KS8721BL работают как часы. То ли я так развел неудачно, то ли 2368 и 2378 EMAC модули различатся ???
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 9 2008, 19:00
Сообщение #21


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(lebiga @ Nov 9 2008, 17:15) *
Мне немного помог конденсатор 15пик на тактовую и включенная подтяжка этого сигнала в LPC2368.
НО все это шаманство, день от дня работает по-разному. Платы с starterkit (8 шт) с LPC2378 и KS8721BL работают как часы. То ли я так развел неудачно, то ли 2368 и 2378 EMAC модули различатся ???

С конденсатором как раз понятно - затянулся немного фронт, пороги переключения у двух отдельных чипов (9161 и LPC) разные, и зависят от кучи факторов - вот времянка немного и "сыграла" .
А какой именно "старперкит", если не секрет? Печатная плата там случайно не 4-х+ слойная?
Я сейчас пробую именно на 2378 - симптомы те же самые что и у Вас. Есть платы и на 2368 - могу и их погонять (трассировка, правда, там совсем другая - эксперимент не слишком корректный будет), но не думаю, что 78-ые принципиально от 68-ых отличаются.
Посмотрел даташит на SAM7X - у них Tpd по данным ETXxx до 15.9нс. Теперь я понимаю почему у них в Errata на SAM7X есть скромный такой пунктик "RMII is not functional" smile.gif. А вот Tsu по ERXxx/ERDV - достаточно хороши - 2нс . Глупо, конечно, экстраполировать данные от SAM7 на LPC (ну ясен пень - SAM7 в тыщу разов круче biggrin.gif) , но технология более-менее одинаковая, будем надеятся что прием со сдвинутой RMII-тактовой заработает на LPC23xx нормально. А там может и NXP чего хорошего по времянке отпишет.
Go to the top of the page
 
+Quote Post
lebiga
сообщение Nov 10 2008, 08:20
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 22-06-06
Из: Киев
Пользователь №: 18 292



Цитата(VslavX @ Nov 9 2008, 22:00) *
А какой именно "старперкит", если не секрет? Печатная плата там случайно не 4-х+ слойная?

SK-LPC2378-S300
плата двухслойная
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 12 2008, 17:56
Сообщение #23


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(lebiga @ Nov 10 2008, 10:20) *
SK-LPC2378-S300
плата двухслойная

Да, там дизайн платы любопытный - двухсторонний монтаж, CPU и PHY практически один над другим с разных сторон платы - бутербродиком.
Я запустил, наконец, EMAC на прием. Tpd у DM9161 на линиях ERXD[1..0] примерно 13нс, задерживаем тактовую на DM9161 на 3нс, получаем Tsu на LPC по входам ERXD[1..0] примерно 4 нс. При этом все устойчиво работает - и прием и передача. Полдня пинговалось 1500-байтовыми пакетами - 0% loss.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 12 2008, 19:40
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(VslavX @ Nov 12 2008, 20:56) *
Да, там дизайн платы любопытный - двухсторонний монтаж...

Eсть несколько плат LPC24/23 двуслойных с односторонним монтажем и при этом без всяких проблем.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 12 2008, 21:02
Сообщение #25


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(zltigo @ Nov 12 2008, 21:40) *
Eсть несколько плат LPC24/23 двуслойных с односторонним монтажем и при этом без всяких проблем.

Угу. Я пока "для себя" проблему так разложил - 30% трассировка, 70% проблема Давикома.
Трассировка у нас на этой проблемной плате неидеальная - есть что поулучшать, но и не беспредел - все возвратные земельки/питания в наличии имеются, раздача клоков выравнена и согласована - никаких "левых: отражений. А вот Давиком - чип достаточно древний и с достаточно мутным даташитом, да и скоп показывает, что вроде как все требования Tsu/Th выполняются.
Сейчас будет еще одна итерация платы с 9161 (время жмет - не дали добро на быстрый перепрыг на Макрель) - там с длиной тактовых цепей и землями поиграемся - в свете результатов экспериментов, ну а потом - вплотную займемся Макрелью.
NXP на вопрос по Tpd/Tsu/Th уже полторы недели молчит, на ранее заданные вопросы по MII management - три недели молчок. Подтверждение на вопросы пришло - типа рассматривают. Ну OK, еще подождем - все пока обычно - как для бесплатного саппорта.
Go to the top of the page
 
+Quote Post
lebiga
сообщение Nov 13 2008, 08:21
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 22-06-06
Из: Киев
Пользователь №: 18 292



Цитата(VslavX @ Nov 12 2008, 20:56) *
Да, там дизайн платы любопытный - двухсторонний монтаж, CPU и PHY практически один над другим с разных сторон платы - бутербродиком.
Я запустил, наконец, EMAC на прием. Tpd у DM9161 на линиях ERXD[1..0] примерно 13нс, задерживаем тактовую на DM9161 на 3нс, получаем Tsu на LPC по входам ERXD[1..0] примерно 4 нс. При этом все устойчиво работает - и прием и передача. Полдня пинговалось 1500-байтовыми пакетами - 0% loss.


А теперь попробуйте погреть процессор или собрать в корпус и поганять. Только проц нагревается до 40-50 - идет пропадание пакетов. Пришлось мне ставить вентилятор - не мог сдать проект вовремя...
Go to the top of the page
 
+Quote Post
VslavX
сообщение Nov 13 2008, 12:23
Сообщение #27


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(lebiga @ Nov 13 2008, 10:21) *
А теперь попробуйте погреть процессор или собрать в корпус и поганять. Только проц нагревается до 40-50 - идет пропадание пакетов. Пришлось мне ставить вентилятор - не мог сдать проект вовремя...

Погрел - нормально все. "Прогнал" три платы примерно в диапазоне 5..70C. Плата с задержкой тактовой на PHY работает при любой температуре 5..70. Еще одна плата (без доработки для задержки) - работает примерно 20..70, вторая плата (тоже без задержки) - 35..70. В моем случае нагрев только помогает smile.gif. Прием пакетов работает везде и при любой температуре.
Go to the top of the page
 
+Quote Post
lebiga
сообщение Dec 10 2008, 10:35
Сообщение #28


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 22-06-06
Из: Киев
Пользователь №: 18 292



В общем так... После многочисленных тестов на трех видах разводки плат с DM9161AE, LPC2368 и LPC2387 сделал вывод - DM9161 для LPC НЕ ПОДХОДИТ, работа всегда неустойчива, настроить требует больших затрат, при этом работоспособность и надежность не гарантируется. Одни платы работают только на 10М, другие зависят от температуры, третьи вообще не обмениваются по RMII (настройка по MDIO выполняется). Перешел на KS8721BL - и забыл о всех этих проблемах, на 100М валит хороший поток, ничего не греется.
Go to the top of the page
 
+Quote Post
VslavX
сообщение Dec 10 2008, 11:03
Сообщение #29


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(lebiga @ Dec 10 2008, 12:35) *
В общем так... После многочисленных тестов на трех видах разводки плат с DM9161AE, LPC2368 и LPC2387 сделал вывод - DM9161 для LPC НЕ ПОДХОДИТ, работа всегда неустойчива, настроить требует больших

А у нас - получилось smile.gif. Схема трассировки клока RMII такая - разветвление возле генератора 50МГц, потом стоят два резистора по 27Ом, и цепь от генератора на DM9161 длинее на 25-30 см чем до процессора. Все работает на нескольких разных платах - 2368/78/88 и приразных температурах. Второй вариант - цепи тактовой примерно одинаковые, резисторы - там же (возле генератора), но на вход тактовой RMII процессора добавить 20-30пФ - тоже работает - выходные данные просто "переезжают" на следующий период. Затягивать фронты на DM9161 - нельзя, иначе его внутренняя PLL периодически улетает не пойми куда, а вот LPC - гораздо лояльней к фронтам. Но по итогам - да, согласен - 9161 с LPC "не дружит", в серии тоже переходим на Micrel.
Go to the top of the page
 
+Quote Post
brag
сообщение Dec 16 2008, 11:30
Сообщение #30


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046



прочитал этот топик, думаю, стоит ли использовать LPC2378+KS8721 или LAN8700 для ethernet-задач..сейчас надо начинать проект, вот и думаю, что бы влепить...
то ли рискнуть LPC23, то ли sam7x, то-ли что-нибудь от ST...

я так понимаю, что более стабильно работает MII из за низкой частоты, прочитав тему, понял,что проблеммы из за Tpd/Tsu/Th

Сообщение отредактировал brag - Dec 16 2008, 11:34
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 05:41
Рейтинг@Mail.ru


Страница сгенерированна за 0.01509 секунд с 7
ELECTRONIX ©2004-2016