Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LX9 Board и LPDDR
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
ZZZRF413
Всем доброго дня!

Помогите пожалуйста разобраться и научиться работать с памятью DDR типа.
У меня есть оценочная плата LX9 Board со Spartan6. На плате установлена память LPDDR. Я посмотрев ug388 и ug416, а также попробовав ихний пример для платы, написал свой простой пример для понимания. Мой пример не работает. Суть примера очень проста: записать данные в ОЗУ по определенному адресу,затем их считать по тому же адресу и сравнить с константой. В случае совпадения зажечь светодиод. Согласно диаграммам работы описанным в ug388 я формирую сигналы для контроллера памяти с генерированного с помощью MIG. Судя по Chipscope чтение с памяти не осуществляется.

Привожу исходный код проекта
1) Main.vhd - верхний(топовый) модуль проекта. Я его делал на основе примеров из IP и демонстрационного примера для платы.
2) BC.vhd - модуль формирования проекта. Некоторые вещи введены для Chipscopa.
3) Main.ucf.txt - UCF файл.
А также диаграммы Chipscope и отдельно диаграмма моделирования модуля управления.
ZZZRF413
Все оказалось как обычно просто и банально: в Main.vhd в место где идет привязка тактовых сигналов
Код
c3_sys_clk<=mem_clk;
-- c3_p0_cmd_clk<=clk;
-- c3_p1_cmd_clk<=clk;
-- c3_p0_wr_clk<=clk;
-- c3_p1_wr_clk<=clk;
--c3_clk0<=clk;
  c3_p0_cmd_clk<=c3_clk0;
c3_p1_cmd_clk<=c3_clk0;
c3_p0_wr_clk<=c3_clk0;
c3_p1_wr_clk<=c3_clk0;

c3_sys_rst_n<='0';
--c3_rst0<='0';

не были добавлены
Код
c3_p0_rd_clk<=c3_clk0;
c3_p1_rd_clk<=c3_clk0;


Мой пример теперь работает.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.