Jump to content

    
Sign in to follow this  
Eminem

stm32f4 + ks8721 (проблемы)

Recommended Posts

скорость и режим (Half, Full Dupleks) MAC по любому нужно согласовывать с физикой
- это уже идут настройки Вашего кристалла/драйвера, а не PHY.

Я, настроив свои контроллеры в ПЛИСке, просто ждал появления линка от PHY, и все, начинал работать.

Правда, для меня было совсем не важно в каком режиме, на какой скорости идут обмены, мне нужен был очень медленный обмен, поэтому я и не заморачивался.

 

На начальном этапе на Вашем месте я бы также забил на все эти настройки и поработал с автоматическими настройками PHY, а потом уже можно и поработать напильником для улучшения характеристик.

Share this post


Link to post
Share on other sites
Подключил ее я вроде правильно, кварц 50MHz, адрес физики 0x01 выбран при рестарте, 21 нога в "1" (RMII). Правда есть разночтение в DS насчет 46 ноги, толи подключать ее к +3V3 или к VDPLL (2,5V). На всякий случай приложил схему. Может кто работал с ней сравнит ее со своей схемой.

Попробую конечно не писать ничего в физику, только мне кажется так ничего не получится, ведь MAC и PHY должны как минимум установить у себя одинаковую скорость...

 

По схеме средние точки трансформатора выв.4 и 5 объединены. Не лучше ли их разорвать на всякий случай?

Share this post


Link to post
Share on other sites
R90 на схеме 4.99k. По тех.описанию Rext=R90=6.49k

Я знаю, у меня в схеме два резюка последовательно стоят 1% (1,5K + 4,99K) - в сумме 6,49K. Я в своем проекте попробывал выставить в физику скорость 10Mbit и режим и запретить AutoNegatiation, но когда линк не поднялся, понял что где то в железе накосячил.

 

Вопрос к Вам, как к разработчику на плис - если я на NIOS ядре (Altera) сделаю контроллер с поддержкой SDRAM и TFT и MAC, смогу ли я уменьшить потребление своего камня по сравнению с STM32F439? Просто получается что у меня не используются встроенные ADC и DAC - пока использую внешние, с развязкой.

Нужно ли мне двигаться в этом направлении? Имеет ли это смысл? Можно ли при таком подходе денег с'экономить на конечном устройстве?

 

 

 

 

 

 

 

 

По схеме средние точки трансформатора выв.4 и 5 объединены. Не лучше ли их разорвать на всякий случай?

 

Не думаю, в некоторых RJ45 они соединяются между собой еще в разъеме.

 

Share this post


Link to post
Share on other sites
Не думаю, в некоторых RJ45 они соединяются между собой еще в разъеме.

 

Посмотрел SDK, действительно, обе ноги уходят на +2V5. Но если так, выходные драйвера через обмотки тоже подключены к +2V5. По сути закорочены. Нужны конденсаторы "в разрыв" или по сигнальным цепям, или между средними точками обмоток и +2V5. M.б. они есть внутри разъема. Тогда нужно проверить его схему. Всегда использую 8721, но средние точки обмоток подключаю _через_ конденсаторы TC к +2V5, а RC к 0V.

Share this post


Link to post
Share on other sites
если я на NIOS ядре (Altera) сделаю контроллер с поддержкой SDRAM и TFT и MAC, смогу ли я уменьшить потребление своего камня по сравнению с STM32F439? Просто получается что у меня не используются встроенные ADC и DAC - пока использую внешние, с развязкой.

Нужно ли мне двигаться в этом направлении? Имеет ли это смысл? Можно ли при таком подходе денег с'экономить на конечном устройстве?

 

когда я запихал не очень сложный микроблайз в ксалинкс, я впервые увидел что ПЛИС греется. Эти процы имеют смысл если вы хотите много чего на ПЛИС еще из обвески сделать, чего нет в проце, и иметь к этому доступ через внутренние шины проца. Плата за это глюки в софте разработки, и сложности самого проца, система все же не идеальна.... это про ксалинкс, не думаю что у альтеры сильно лучше...

 

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

Share this post


Link to post
Share on other sites
когда я запихал не очень сложный микроблайз в ксалинкс, я впервые увидел что ПЛИС греется. Эти процы имеют смысл если вы хотите много чего на ПЛИС еще из обвески сделать, чего нет в проце, и иметь к этому доступ через внутренние шины проца. Плата за это глюки в софте разработки, и сложности самого проца, система все же не идеальна.... это про ксалинкс, не думаю что у альтеры сильно лучше...

 

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

 

О... +++ отлично, спасибо. Значит мне хватит то чего знаю CPLD + MK.

 

Посмотрел SDK, действительно, обе ноги уходят на +2V5. Но если так, выходные драйвера через обмотки тоже подключены к +2V5. По сути закорочены. Нужны конденсаторы "в разрыв" или по сигнальным цепям, или между средними точками обмоток и +2V5. M.б. они есть внутри разъема. Тогда нужно проверить его схему. Всегда использую 8721, но средние точки обмоток подключаю _через_ конденсаторы TC к +2V5, а RC к 0V.

 

Эх. Я честно говоря больше программер, чем электронщик. И для меня неуклюжим выглядит замыкание обмоток трансформатора через резисторы в 1% на VDPLL. Тем более "прозвонить" в статике проверив на разрыв дорожек такое теряет почти весь смысл.

Могу только сказать что по подключенной схеме линк 100Mbit поднимается даже без согласующих резисторов на длине 10 метров.

 

В общем может кто-нибудь знающий с ходу здесь ответит - для чего нужны согласующие резисторы?

 

Share this post


Link to post
Share on other sites

При работе с ПЛИС, при софтовой разработке/настройке контроллеров интерфейсов, всегда хочется иметь Hard'овый контроллер, проверенный/протестированный/заточенный под нужнй интерфейс. А с другой стороны, работая с Железными реализациями контроллеров, иногда хочется что-то подправить/переделать под себя, но уже нельзя, т.к. в микруху не полезешь.

При больших загрузках ПЛИСок, да и при больших частотах работы процессов (100-200 МГЦ), ПЛИС начинает нормально греться, поэтому нужно обеспечивать теплоотводы.

Про сам НИОС могу сказать - при нормальных (НЕкривых) настройках вещь стабильная, каких-то непонятных сбоев не наблюдал.

Про контроллеры интерфейсов - здесь да... иногда нужен настоящий "Шаманский" бубен, чтобы ОНО заработало.

Share this post


Link to post
Share on other sites
При работе с ПЛИС, при софтовой разработке/настройке контроллеров интерфейсов, всегда хочется иметь Hard'овый контроллер, проверенный/протестированный/заточенный под нужнй интерфейс. А с другой стороны, работая с Железными реализациями контроллеров, иногда хочется что-то подправить/переделать под себя, но уже нельзя, т.к. в микруху не полезешь.

При больших загрузках ПЛИСок, да и при больших частотах работы процессов (100-200 МГЦ), ПЛИС начинает нормально греться, поэтому нужно обеспечивать теплоотводы.

Про сам НИОС могу сказать - при нормальных (НЕкривых) настройках вещь стабильная, каких-то непонятных сбоев не наблюдал.

Про контроллеры интерфейсов - здесь да... иногда нужен настоящий "Шаманский" бубен, чтобы ОНО заработало.

 

Ясно, большое спасибо за инфу - кроме интерфейсов, мне нужна по идее виртуальная машина, и я подумал, было бы не плохо реализовать некоторые ее команды в железе, пока отодвину ознакомление с FPGA года на два.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this