fertna18 0 22 февраля, 2018 Опубликовано 22 февраля, 2018 · Жалоба Здравствуйте ув. форумчане. Есть ml605 board. Хочу разобраться с работой ddr3. Подскажите как правильно организовать запись и чтение данных. В самостоятельном поиске пришел к следующему порядку: 1. Fpga 2. Microblaze 3. Axi 4. Ddr3 Если кто может объясните на пальцах(абстрактно) смысл работы и особенности реализации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lixlex 0 22 февраля, 2018 Опубликовано 22 февраля, 2018 · Жалоба Добрый день! Все верно описали. В простейшем случае используют IP-ядро. Для Xilinx это memory interface generator. Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись. Для вашей платы должен быть reference design с DDR, советую посмотреть. https://www.xilinx.com/support/documentatio...kits/xtp047.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fertna18 0 22 февраля, 2018 Опубликовано 22 февраля, 2018 · Жалоба Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись. Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG? А чтение и запись происходит через шину или через MIG? Ps: спасибо большое за ссылку. Была полезна. Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись. Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG? А чтение и запись происходит через шину или через MIG? Ps: спасибо большое за ссылку. Была полезна. Или ядро MIG может иметь как пользовательский интерфейс так интерфейс AXI4 в зависимости от настроек ядра? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 22 февраля, 2018 Опубликовано 22 февраля, 2018 · Жалоба Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG? А чтение и запись происходит через шину или через MIG? Или ядро MIG может иметь как пользовательский интерфейс так интерфейс AXI4 в зависимости от настроек ядра? физические линии протягиваются наружу к ножкам чипа - для "фирменной" платы лучше сохранить оригинальные имена, тогда они автоматом встанут на нужные места какой интерфейс - выбирает пользователь при конфигурации ядра, AXI4 и "простой" интерфейс принципиально похожи - но "простой" проще, если внутри нет Microblaze и самому хочется управлять, то проще его но по сути все "хитрое" управление DDR спрятано в ядре и проявляет себя неравномерностью (разное время реакции) в операциях с данными, от пользователя нужно только передать чтение/запись, адрес - и соответственно данные или принять данные при чтении Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fertna18 0 22 февраля, 2018 Опубликовано 22 февраля, 2018 · Жалоба какой интерфейс - выбирает пользователь при конфигурации ядра, AXI4 и "простой" интерфейс принципиально похожи - но "простой" проще, если внутри нет Microblaze и самому хочется управлять, то проще его Тогда возникает вопрос про microblaze. Как microblaze подключается? 1) вариант Создаётся MIG с шиной axi4 slave => к нему microblaze с axi master => к microblaze прикручивается уже непосредственно мой дизайн. 2) создаётся MIG с интерфейсом простым или axi4 = > к этому интерфейсу я стыкую уже свои блоки. Поправьте пожалуйста, если я что не так понял. Уже в даташитах этих начинаю путаться.говорили учи английский.:krapula: :krapula: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mad_kvmg 0 23 февраля, 2018 Опубликовано 23 февраля, 2018 · Жалоба Тогда возникает вопрос про microblaze. Как microblaze подключается? 1) вариант Создаётся MIG с шиной axi4 slave => к нему microblaze с axi master => к microblaze прикручивается уже непосредственно мой дизайн. 2) создаётся MIG с интерфейсом простым или axi4 = > к этому интерфейсу я стыкую уже свои блоки. Поправьте пожалуйста, если я что не так понял. Уже в даташитах этих начинаю путаться.говорили учи английский.:krapula: :krapula: Поищите на сайте xilinx, 100% для этой платы должен быть reference design, где все, что вам нужно есть, даже больше, какая-нибудь урезана сборка линукс для mb c hello world программкой! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fertna18 0 26 февраля, 2018 Опубликовано 26 февраля, 2018 · Жалоба Спасибо. Более или менее разобрался со способами организации. А может кто-нибудь подсказать как просимулировать обмен информацией по uartu через axi4 интерфейс, если нет под рукой непосредственно самого Борда. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться