Перейти к содержанию

    

Ml-605 virtex 6 - организация работы с ddr3

Здравствуйте ув. форумчане. Есть ml605 board. Хочу разобраться с работой ddr3. Подскажите как правильно организовать запись и чтение данных. В самостоятельном поиске пришел к следующему порядку:

1. Fpga

2. Microblaze

3. Axi

4. Ddr3

Если кто может объясните на пальцах(абстрактно) смысл работы и особенности реализации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день! Все верно описали. В простейшем случае используют IP-ядро. Для Xilinx это memory interface generator. Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись. Для вашей платы должен быть reference design с DDR, советую посмотреть.

https://www.xilinx.com/support/documentatio...kits/xtp047.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись.

Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG?

А чтение и запись происходит через шину или через MIG?

 

 

 

Ps: спасибо большое за ссылку. Была полезна.

 

Из ядра торчит пользовательский интерфейс - шина AXI 4 и физический интерфейс к памяти. Собственно через AXI 4 ядру передаются команды на чтение и запись.

Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG?

А чтение и запись происходит через шину или через MIG?

 

 

 

Ps: спасибо большое за ссылку. Была полезна.

 

Или ядро MIG может иметь как пользовательский интерфейс так интерфейс AXI4 в зависимости от настроек ядра?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Вот здесь у меня непонимание и появилось. Получается MIG имеет интерфейс axi и физические линии к ddr3. И я тогда должен писать блок для управления axi? Или ещё и для MIG?

А чтение и запись происходит через шину или через MIG?

Или ядро MIG может иметь как пользовательский интерфейс так интерфейс AXI4 в зависимости от настроек ядра?

 

физические линии протягиваются наружу к ножкам чипа - для "фирменной" платы лучше сохранить оригинальные имена, тогда они автоматом встанут на нужные места

 

какой интерфейс - выбирает пользователь при конфигурации ядра, AXI4 и "простой" интерфейс принципиально похожи - но "простой" проще, если внутри нет Microblaze и самому хочется управлять, то проще его

но по сути все "хитрое" управление DDR спрятано в ядре и проявляет себя неравномерностью (разное время реакции) в операциях с данными, от пользователя нужно только передать чтение/запись, адрес - и соответственно данные или принять данные при чтении

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
какой интерфейс - выбирает пользователь при конфигурации ядра, AXI4 и "простой" интерфейс принципиально похожи - но "простой" проще, если внутри нет Microblaze и самому хочется управлять, то проще его

Тогда возникает вопрос про microblaze.

Как microblaze подключается?

1) вариант Создаётся MIG с шиной axi4 slave => к нему microblaze с axi master => к microblaze прикручивается уже непосредственно мой дизайн.

2) создаётся MIG с интерфейсом простым или axi4 = > к этому интерфейсу я стыкую уже свои блоки.

 

Поправьте пожалуйста, если я что не так понял.

 

 

Уже в даташитах этих начинаю путаться.говорили учи английский.:krapula: :krapula:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Тогда возникает вопрос про microblaze.

Как microblaze подключается?

1) вариант Создаётся MIG с шиной axi4 slave => к нему microblaze с axi master => к microblaze прикручивается уже непосредственно мой дизайн.

2) создаётся MIG с интерфейсом простым или axi4 = > к этому интерфейсу я стыкую уже свои блоки.

 

Поправьте пожалуйста, если я что не так понял.

 

 

Уже в даташитах этих начинаю путаться.говорили учи английский.:krapula: :krapula:

Поищите на сайте xilinx, 100% для этой платы должен быть reference design, где все, что вам

нужно есть, даже больше, какая-нибудь урезана сборка линукс для mb c hello world программкой!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо. Более или менее разобрался со способами организации.

А может кто-нибудь подсказать как просимулировать обмен информацией по uartu через axi4 интерфейс, если нет под рукой непосредственно самого Борда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация