ChinasFanat 0 14 мая, 2019 Опубликовано 14 мая, 2019 · Жалоба Сделали модуль на Arria10 10ax022e4f29i3. Предполагали использовать HardIP PCIe. Создал тестовый проект состоящий из одного контроллера Hard PCIe. Однако, на выходе контроллера не увидели частоты 125 МГц (coreclkout_hip =0). При этом reset_status = 1; rx_is_lockedtoref = 0; rx_is_lockedtodata = 0. Но, serdes_pll_locked = 1! Сначала думал ref_clk 100 MHz не подается на вход, однако остальная часть схемы прекрасно видит эти 100 МГц (включая сигналтап). Такое чувство, что внутренняя pll в HardIP не заводится. Но в гигибитном трансивере все заводится и locked поднимается... Первый раз со мной такое, обычно сгенерил контроллер и он сразу заработал. По крайней мере, на предыдущих Arria 5 и Cyclone 5 все работало с полпинка. Кстати, этот же проект скомпиленный под KIT'овую плату с Arria10 заработал сразу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 14 мая, 2019 Опубликовано 14 мая, 2019 · Жалоба У меня когда не заводилась, я начинал все статусы просматривать. Начиная с прогрузки трансиверов, чтобы выход из резета был строго по документации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ChinasFanat 0 14 мая, 2019 Опубликовано 14 мая, 2019 · Жалоба 22 minutes ago, new123 said: У меня когда не заводилась, я начинал все статусы просматривать. Начиная с прогрузки трансиверов, чтобы выход из резета был строго по документации. Были мысли о резете, пробовали соблюсти все по документации. толку ноль. Причем, кит-овая плата вообще без резета на входе завелась. Вытащили ее из ПК и положили на стол, и она завелась нормально, только rx_is_lockedtodata перестала выдавать, что логично. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 14 мая, 2019 Опубликовано 14 мая, 2019 (изменено) · Жалоба 30 minutes ago, influenza said: Были мысли о резете, пробовали соблюсти все по документации. толку ноль. то есть вы сделали свой контроллер резета? Я тоже так делал, когда проблемный чип был, помогало. Ну а вообще, я предложил просто проследить по статусным сигналам, начиная от Transiever Reconfiguraton, на какой стадии прогрузки что то идет не так, потому уже думать, это быстро вычисляется. Кстати говоря, мне как то помогло вывести из под готовой sys (которая качается с сайта альтеры) Transiever Reconfiguraton, и завести этот контроллер в главный модуль и соединить руками. Но как потом оказалось, это просто слаки у меня были и такой ход частично помог. Все таки думаю, я бы сначала статусные сигналы смотрел, идут ли они в последовательности как в доке. В свое время просто заманался так же корку запускать. А, ну и самое то главное, ltssm то смотрели? На какой стадии все зависает? Код ltssm. Если вдруг он продвинулся дальше, то там в доке есть рекомендации что сделать. Хотя если 125 не увидели, ltssm смотреть толку нет, корка из резета не вышла. Изменено 14 мая, 2019 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 14 мая, 2019 Опубликовано 14 мая, 2019 (изменено) · Жалоба 4 hours ago, influenza said: проект состоящий из одного контроллера Hard PCIe Т.е. больше ничего? Может, Квартус не вывел этот сигнал, раз он не нужен дальше... (хотя должен идти дальше на реконфигурационный драйвер...) Попробовать прикрутить к нему триггер и вывести сигнал с него на ножку микросхемы... 100 МГц refclk - с разъема PCIe? А на реконфигурационный контроллер клок откуда подается, с дополнительного генератора? (хотя, думаю, это неважно) Изменено 14 мая, 2019 пользователем Yuri124 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ChinasFanat 0 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба Это то и странно, из резета не вышла, pll в Hardip частоту не залочила. Хотя в гигабитном трансивере pll входную частоту залочила. До ltssm дело не доходит - все в сбросе. Полярность сброса даже меняли - не помогло)) Все выходы сделаны виртуальными, по отчету квартуса - ничего не выкинулось. (рабочий проект в котором все используется ведется себя также) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба 2 hours ago, influenza said: из резета не вышла это сигнал, который 19 hours ago, influenza said: reset_status = 1 ? Кажется - он 0 = reset, а 1 = не reset. Как понимаю, эта плата - самодельная? Т.е. "сделали модуль" - не понятно, что имеется в виду. А кроме refclk с PCIe еще клок приходит на FPGA? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ChinasFanat 0 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба Плату разработали сами. reset_status = 1 - это значит контроллер в сбросе. это точно. есть еще частота 25 МГц с генератора общего назначения, для других потрохов ПЛИС. К PCIe не относится. Для PCIe только refclk получается.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба rx_busy, tx_busy что показывает? 5 minutes ago, influenza said: Плату разработали сами. reset_status = 1 - это значит контроллер в сбросе. это точно. у меня в SV, reset_status = Active low reset signal. Только что посмотрел в доке Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 15 мая, 2019 Опубликовано 15 мая, 2019 (изменено) · Жалоба Попробую все таки еще раз сказать. Когда у меня были проблемы с плис, я руками создавал reset sequence (свой резет контроллер) и тогда выводил hard ip core из резета сам. Нечто подобное для моего SV. У меня была проблема, что один из трансиверов на RX не заводился по дефолтному резету, пришлось делать самому. Изменено 15 мая, 2019 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 15 мая, 2019 Опубликовано 15 мая, 2019 (изменено) · Жалоба Так а что с тактированием реконфигурационного контроллера? Он у Вас вообще есть? У меня в свое время была мысль попробовать тактировать его от refclk, а потом - пришли другие мысли, ну и поскольку еще цена вопроса дополнительного 100 МГц генератора - копейки, решил даже и не экспериментировать. nreset status (так точно называется, когда выходит из корки) идет у меня на несколько входов reset_n разных блоков, из чего делаю вывод - 0 = reset) Изменено 15 мая, 2019 пользователем Yuri124 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ChinasFanat 0 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба ну да, nreset_status active low. Я пишу про reset_status, который на figure 8-2 выше. Стоит в 1. Реконфигурационного контроллера нет. Пробовал не perst подавать меандр длительностью ~200 мс и 2 сек. Ничего не меняется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба 3 minutes ago, influenza said: Реконфигурационного контроллера нет. У Вас PCIe Gen1? Где-то в доках было, что для такого только можно без этого контроллера. А если Gen2 или 3 - то нужно его добавлять. Или у Вас более новый IP, где он уже внутрях интегрирован и явно снаружи не виден. Если внутри - у меня есть предположение, что его как-то тактировать нужно, и не refclk. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба 21 hours ago, influenza said: этот же проект скомпиленный под KIT'овую плату с Arria10 заработал сразу. Проверьте, что там за клоки подаются на FPGA кроме refclk. Уровень reset_status на рабочей плате - проверяли, стоит 0? Подозреваю, с обозначением сигналов может быть путаница, т.к. на картинке он reset_status, а из корки выходит nreset_status. Ну и в Альтеровских блоках (которые есть в Квартусе) - в памяти, например, reset, в DMA reset_n. И этот nreset_status идет на оба напрямую. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ChinasFanat 0 15 мая, 2019 Опубликовано 15 мая, 2019 · Жалоба есть подозрение что не завели user_clk. На ките там 100 МГц. Пока не точно, будем проверять Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться