|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 8:03 pm
API/дефиниции за ETH PHY чепове?
| Автор |
Съобщение |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: API/дефиниции за ETH PHY чепове?
аз написах "нормален" суич. селските провайдери с риълтеци по стъбовете не влизат в тая категория. предполагам и Миро не тества, закачен директно към уличния стълб с чипче с 4К памет. колкото до нафлуден суич - то през него не минават и нормални пакети, та провайдера обикновено бързо го хваща и търчи със стълбата. и пак говорим за чипове от изключително ниския сегмент, купени на кашони от но-нейм китаец по критерия "най-ниска цена". нафлуден суич с марвелски чипове (примерно) не съм виждал, а са само 3 пъти по-скъпи (чиповете). въпрос на бизнес модел: скъпо желязо или търчане със стълбата. ама това е друга тема. в случая миро може да не се притеснява за/от колизии.
|
| Съб Май 30, 2015 9:32 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: API/дефиниции за ETH PHY чепове?
Надали е колизии... Вчера дебъгвах 5-6 часа и нямаше ни един получен пакет, а си имам трейс щях да забележа. Освен това Rx линиите към мака ги гледах на скоп - няма никой.... Някаква простотия ще да е, ама днес да си изкарам агрофитнеса пък утре ще го мисля. Много вероятно да е нещо с клоците, честно казано като проца правеше клока изглеждаше по-стабилен. Може хвърчащия монтаж на кварца да дава отражение. Макар че предаването е пушка, не видях ни един проблемен или изпуснат пакет. Ако е от клока няма логика в едната посока да е супер, в другата да няма хептен никой. Явно е простотия, но каква ли 
|
| Нед Май 31, 2015 2:47 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: API/дефиниции за ETH PHY чепове?
Дедо, нафлуден суич съм виждал почти от всеки бранд, стрийминга е едно от нещата което ебава мамата на суичовете, виждал съм до там омотани суичове че нио освен хардуерен рестарт не ги правя, икато почнем от ефтинийки като dlink и стигнем до пребрандирани цискота, минавайки през HP и 3COM. Голямо циско нафлудено дотолкова че да си забрави граматиката не съм виждал, в смисъл нафлудено от апп а не от атака, докато за средните серии на HP въобще не е в сила. Не знам какво точно и как го правят, но факт е че мрът. Верно напоследък явно са се пооправили, може би защото масово се позлват 1 Gb чипсети и някак удържат, но едно време когато 1 Gb беше лукс съм успявал да ги убия само с един мултикаст. Woody има know how и е много наясно къде е ключа от палатката ама сигурно само чете и ни гледа сеира 
|
| Нед Май 31, 2015 3:21 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: API/дефиниции за ETH PHY чепове?
миро,
за всеки канал (RX и TX) има по две възможности за клока - от PHY и от МАС. съответно има регистри И в двете, които сетват пококата на клока. сетни ги MAC RX CLK from PHY PHY RX CLK master MAC TX CLK master PHY TX CLK from MAC
със скопа трябва да виждаш и двата клока, и евентуално данни, когато PHY се е договорило със суича (има кабел и ламбата LINK свети)
|
| Нед Май 31, 2015 6:27 pm |
|
 |
|
woody
Ранг: Форумен бог
Регистриран на: Вто Юли 31, 2007 2:55 pm Мнения: 1792 Местоположение: София
|
 Re: API/дефиниции за ETH PHY чепове?
Хаха, не, ТоНи, средно павиански знания и опит имам по въпроса.  Миро освен да си погледне данните дали спазват setup/hold рестрикциите, че както ДедоБоре спомена по-горе, може да е нещо с клок домейните.
|
| Нед Май 31, 2015 6:28 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: API/дефиниции за ETH PHY чепове?
Нямам такива екстри  LAN8720 e само с RMII интерфейс. При него има само един централен клок, който се ползва от MAC и PHY. Демек с данните не върви клок, което го прави доста капризен като интерфейс. Но така или иначе в момента ползвам PHY-то да изработва клока и в тоя вариант няма пин за вход на клок. Има си кварц 25MHz умножава по две и си го ползва вътрешно. Проблемът е, че от PHY-то не излизат данни. RXER се клати почти в синхрон с CRS_DV демек всеки пакет е сбъркан. В регистрите няма нищо, то почти няма никакви регистри това животно... Нещо ме съмнява какъв клок ползва. Значи когато му подавам аз клок, му подавам 50MHz на XTAL_IN и почти работеше, поне с малки пакети. XTAL_OUT е хвърчащ в тоя вариант. Когато то си прави клок, просто закачам 25MHz кварц. Кварца си работи. Има вариант вместо кварц да му подам 25MHz single ended пак на XTAL_IN. Сега дали ще му подам 25MHz на XTAL_IN или ще сложа кварц все са си 25MHz. Но как разбира дали му подавам 25 или 50MHz идея си нямам. Факт е, че с кварц предава перфектно. Освен това на REF_OUT ми излизат 50MHz и в тоя режим тях ползвам за проца. Освен то вътре нещо да си се бърка и да ползва 25 вместо 50 за получаване, но както казах аз нямам никакъв контрол, нито пинове, нито страпове, нито регистри.... Другият вариант нещо да съм изгорил, но чак пък толкова...
|
| Пон Юни 01, 2015 10:37 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: API/дефиниции за ETH PHY чепове?
Здрасти Миро, ей тук: http://mcu-bg.com/mcu_site/viewtopic.php?f=22&t=13438съм портвал друго phy от FreeRTOS, както съм написал. Там имаше инициализация и за LAN8720, ама явно някъде съм затрил сорса.... а сега не можах да го намеря из нета.... Иначе, 8720 съм го пускал и на 25, и на 50 MHz. Няма проблем, работи си и в двата варианта. По спомен, на 25 MHz зависеше от конфигурацията на единия от светодиодите при стартиране (или някой друг пин да беше), след което той си изработва 50 за външния свят.
|
| Пон Юни 01, 2015 1:07 pm |
|
 |
|
gicho
Ранг: Форумен бог
Регистриран на: Пон Мар 13, 2006 1:59 pm Мнения: 3867 Местоположение: Габрово
|
 Re: API/дефиниции за ETH PHY чепове?
Платката на олимекс е с 8710 и с RMII, там ползват външен 50МХз осцилатор и клатят XTAL1. https://www.olimex.com/Products/ARM/ST/STM32-E407/В IAR проекта има разписана инициализацията на фи-то, не знам дали може да ти помогне с нещо.
|
| Пон Юни 01, 2015 1:15 pm |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: API/дефиниции за ETH PHY чепове?
|
| Пон Юни 01, 2015 2:38 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: API/дефиниции за ETH PHY чепове?
тръгна гадината... Бяха няколко проблема смесени и от там се оплетох. Имах бъгче при проверката на CRC-тата и от там съм губел една част. Другото е, че е доста капризно от към клок. Хвърчащия монтаж на кварц без кондензатори се оказа лоша идея. То аз го видях на скопа, че като минах на кварца отклонението от 0.5 стана 1MHz. Абе с две думи да обобщя в случай, че някой друг тръгне да подкарва: 1) STM-a не може да генерира чисти 50MHz за RMII. To си го пише и в ератата. Но все пак за проби става, работи само дето като се пусне пинг примерно с големи пакети от време на време някой се губи. 2) Ако PHY-то прави клока не трябва да е на хвърчащ монтаж  3) Има и друг вариант, който тествах и не видях никакви проблеми - STM-а ако е с кварц 25MHz тая честота (HSE) се изкарва на MCO1 и се подава на PHY-то (така се пести кварц и проблемите около него). После PHY-то я удвоява и връща 50MHz на проца. От към софтуер.. има много какво да се желае. С тоя драйвер просто отбили номера, колкото да го подкарат "някак си". На някои типове пакети изобщо не гледат CRC-та, инициализацията им е отвратителна, има много ситуации в които кодът им просто ще забие. Примерно: 1) При включване на RMII интерфейса MAC-a задължително трябва да е в ресет, а самото включване отнема време и не винаги става от първия път. Демек трябва си цикълче с таймоут с евентуална проверка/вдигане на ресет и т.н. 2) MAC-a не излиза от ресет ако няма рефернс клок, демек безкрайния цикъл е кофти идея... Тук вече зависи и кой прави клока, щото ако е PHY-то трябва да се провери дали не е влязло да спинка, евентуално да се събуди и т.н. 3) При барането на PHY регистрите не е зле да се съобразят всички битове, щото те примерно пишат директно бита който искат да вдигнат и не мислят за останалите дето се свалят. Айде за тяхното PHY може и така да работи, ама за моето само ресет бита се пише сам. Имаше и още, вече не помня. А да, покрай DMA-то логиката им е много тъпа. Нямат опашки, излишно копират пакетите... Това с глупавото memcpy и аз още не съм го оправил, ама ще го оправя.
|
| Сря Юни 03, 2015 10:49 am |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
 Re: API/дефиниции за ETH PHY чепове?
Като цяло за проблема нищо не мога да кажа, но това с кварца направо ме разби. Никога не съм виждал и не съм успявал да *мръдна* кварц с 500Khz. Това което си ползвал да не е керамичен резонатор!? Нормален кварц да го мръднеш повече от 10Khz си е направо постижение.
|
| Сря Юни 03, 2015 1:36 pm |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
 Re: API/дефиниции за ETH PHY чепове?
Така е. По-скоро би го подкарал на фундаментална честота ( обикновено е 8.3333(3) ), отколкото да го подместиш толкова. А ако честотата е надолу, тогава най-вероятно има пропадания на генерациите кратко време.
|
| Сря Юни 03, 2015 1:49 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: API/дефиниции за ETH PHY чепове?
Mи не знам... то зависи и от скопа какво и как го мери, но и дори абсолютната стойност да е сбъркана то относителната разлика в измерванията е дзверска.
Току-що замерих пак новия вариант - 25MHz повторен/изкаран на пин от кварца на проца - 75kHz. Това отива на пфи-то и то прави 50MHz с std dev=215kHz. При това положение повече от час го бях пуснал да бачка и проверих след това броя грешно получени символи/пакети - НУЛА (phy-то има такъв регистър). Когато PLL-a на проца прави 50MHz както казах отклонението беше 500kHz и в началото имам два пъти трейсвания на phy регистрите през 200-300mS. Ta за тоя интервал грешните символи са някъде 5-10. При по-кофти клок грешните символи/пакети са няколко стотин между трейсването и приемането изчезва. Специално си играхме да тестваме как влияе клока на получаването като пускахме spread-a на PLL-a на проца. Само при минимален spread от време на време някой малкичък пакет успява да се шмугне и да се приеме. При spread от порядъка на 1-2% приемането умирга... точно както и с хвърчащия кварц. Интересното е, че предаването продължава да работи дори и с калпав клок. Не знам как става номера, дали приемниците от другата страна са по-добри и позволяват по-голямо разминаване между локален и мрежовия клок. Не знам. Но с wireshark си виждам пакетчетата дето пращам, а към мен, т.е. от phy-то ми към MAC-a нЕма никой.
|
| Сря Юни 03, 2015 2:15 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: API/дефиниции за ETH PHY чепове?
едва ли... скопа ми все пак е 4Gsps и 1М криви/секунда. Щеше да се види ако има чак такава смяна на честоти. А аз виждам само как танцува леко, но без да разваля синусоидката..
|
| Сря Юни 03, 2015 2:18 pm |
|
 |
|
stefan63
Ранг: Форумен бог
Регистриран на: Вто Фев 07, 2012 11:22 pm Мнения: 3084
|
 Re: API/дефиниции за ETH PHY чепове?
Miro, и ако е заваляло тази вечер при вас - направо си е за банкет . 
|
| Сря Юни 03, 2015 7:52 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 3 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|