Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба Здравствуйте. Есть кастомная плата с xc7z030fbg676-1. Из-за ограниченного количества PS MIO на пины MIO40-45 на схематике заведено 2 интерфеса (SDIO и SPI) через внешний mux/demux: Вопрос, можно ли обоими интерфейсами пользоваться "статически" или "динамически"? "Статически" - это на одну прошивку один интерфейс. "Динамически" - это в рамках одной прошивки менять тип PS MIO интерфейса на лету. Насколько я понимаю конфигурация PS MIO выполняется за счёт настройки SLCR Registers (как в генерируемом файле ps_init.tcl). А можно ли эти регистры менять прямо из программы процессора? Смотрел ug585-Zynq-7000-TRM, но явного подвтерждения/опровержения пока найти не удалось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба А что помешало отправить кого-нибудь в EMIO? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 2 минуты назад, gosha-z сказал: А что помешало отправить кого-нибудь в EMIO? Об этом надо спрашивать человека занимавшегося схематикой. Видимо предполагалось, что всё надо "впихнуть" в MIO. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 12 minutes ago, Vengin said: Об этом надо спрашивать человека занимавшегося схематикой Ну вот пусть он и решает эту проблему. А то привыкли, видите ли, что проблемы программистов схемотехников не волнуют... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба Ну, если это можно делать программно, то это естественно проще чем переразводить плату. Да и вообще мне и самому интересено, насколько в этом плане гибока подсистема PS цинка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 5 minutes ago, Vengin said: Да и вообще мне и самому интересено, насколько в этом плане гибока подсистема PS цинка. Сгенерите два FSBL, один под SPI, второй под SD, смотрите исходники. Но я бы настучал по голове схемотехнику за такой авангард... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба ЕМНИП динамическая реконфигурация возможна. По крайней мере работал с разработчиком который конфигурировал переферию, уже после загрузки FSBL, на этапе uboot. Но деталей не знаю, не моя специализация) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 7 minutes ago, des00 said: Но деталей не знаю Скорее всего у него все смотрело в EMIO и он делал PL Partial Reconfiguration. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 3 minutes ago, gosha-z said: Скорее всего у него все смотрело в EMIO и он делал PL Partial Reconfiguration. ЕМНИП он работал с портами PS_ХХ, динамической реконфигураци 146% не было) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 43 минуты назад, gosha-z сказал: Сгенерите два FSBL, один под SPI, второй под SD, смотрите исходники. Но я бы настучал по голове схемотехнику за такой авангард... А при чём тут FSBL, и исходники чего смотреть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 1 minute ago, Vengin said: А при чём тут FSBL При том, что он занимается конфигурированием периферии. 2 minutes ago, Vengin said: исходники чего смотреть FSBL 3 minutes ago, des00 said: он работал с портами PS_ХХ Именно менял назначение PS_MIOxx? Хотя, подумалось вот, можно попробовать поиграть с Device Tree Overlays, явно прописывая порты в pinctrl. В теории может и прокатить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 4 minutes ago, gosha-z said: Именно менял назначение PS_MIOxx? Да. При совместной отладке, я отметил что в проекте Vivado конфиурация переферии, в графическом инстансе, не соответствует плате. Как я понимаю это то, что идет в FSBL. На что мне дали ответ что без разницы что там стоит, т.к. переферия конфигурируется как надо, перед запуском линух, в убуте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба C тонкостями FSBL практически не знаком и предполагал, что он больше отвечает за нюансы загрузки. Бегло просмотрел сейчас раздел "Boot and Configuration" в ug585-Zynq-7000-TRM - как-то не особо помогло. В исходникак FSBL тоже не совсем понятно, что смотреть. Да, есть вызов функции ps7_init(). Есть ещё кстати макросы SlcrLock()/SlcrUnlock(). Но даже в какую сторону копать не совсем понятно. Допустим, в FSBL (в post_config?) переключили интерфейс, а что дальше? В моём понимании FSBL ведь выполняется 1 раз? Как это поможет "динамически" и многократно переключать интерфейсы PS_MIO? Продублировал вопрос на форуме Xilinx, глядишь там помогут. Просто сейчас стоит задача понять, возможно ли это в принципе (динамически переключать PS_MIO интерфейсы), или нужно переделывать плату. Да, кстати, там в плане схематики ещё есть нюанс. Дело в том, что этот shared MIO[40-45] интерфейс выводится через коннектор на другую плату. Если прводить оба интерфейса по отдельности, может не хватить места в коннектере. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosha-z 2 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 31 minutes ago, Vengin said: возможно ли это в принципе (динамически переключать PS_MIO интерфейсы) Читать сюда и сюда Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vengin 0 3 июля, 2019 Опубликовано 3 июля, 2019 · Жалоба 19 минут назад, gosha-z сказал: Читать сюда и сюда Интересно. Но это всё применимо только для linux kernel. А для bare-metal тогда как? Кажется, что должна быть более низкоуровневая и универсальная возможность. Но в целом это всё предполагает, что переключение в принципе возможно. А вот как узнать наверняка ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться