Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: подключение LPDDR без EDK
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
mr.alexeevas
Добрый день!

Пытаюсь подключить LPDDR напрямую к плис, без использования встроенного процессора. Выбираю корку, подключая к ней машину состояний и PLL. Но при компиляции вылетает ошибка - NgdBuild:455 (подробее на скрине и там же я указал путь, на котором она возникает), решить проблему никак не получается.

Нажмите для просмотра прикрепленного файла

Надеюсь на вашу помощь)

litv
после DCM надо включать не ibufg (он только для входа.) а bufg.
dm.pogrebnoy
Цитата(litv @ Oct 24 2013, 14:41) *
после DCM надо включать не ibufg (он только для входа.) а bufg.


Это вроде правильно, но у человека кажется другая проблема, какой-то сигнал питает два источника.
mr.alexeevas
Цитата(dm.pogrebnoy @ Oct 24 2013, 15:55) *
Это вроде правильно, но у человека кажется другая проблема, какой-то сигнал питает два источника.


Да, судя по ошибке именно так, два источника, а вот в RTL модели это не отследить.

Ibufg находится внутри ip-core на ddr и его оттуда никак не выкинуть, а если на выходе DCM поставить Bufg, ISE ругается на то, что на одной линии подряд стоят 2 буфера

mr.alexeevas
Проблема решилась, в корке на память, на входе тактовой тастоты стоит ibufg и к нему ничего нельзя подвести, кроме как тактовый сигнал с кварца, просто не дает по-другому) Во всех других случая он придумывает какие-то ошибки
Andrew Su
Цитата(mr.alexeevas @ Oct 25 2013, 13:53) *
Проблема решилась, в корке на память, на входе тактовой тастоты стоит ibufg и к нему ничего нельзя подвести, кроме как тактовый сигнал с кварца, просто не дает по-другому) Во всех других случая он придумывает какие-то ошибки

Добрый день.
Опыт решения данной проблемы.
Проект создаем на VHDL/Verilog. Генерируем контроллер памяти. В проект включаем не ****.хсо, а файлы исходных текстов, описывающие контроллер.
В файле memc3_infrastructure находим место, где заходит внешний тактовый сигнал и убираем ibufg
--***********************************************************************
-- SINGLE_ENDED input clock input buffers
--***********************************************************************
-- u_ibufg_sys_clk : IBUFG
-- port map (
-- I => sys_clk,
-- O => sys_clk_ibufg
-- );
добавляем строку
sys_clk_ibufg <= sys_clk;

Можно еще убрать bufg из файла компонента, где генерируется частота (на выходе ADV_PLL),
а в memc3_infrastructure IBUFG заменить на BUFG.

Может пригодится. Удачи.

mr.alexeevas
Цитата(Andrew Su @ Oct 26 2013, 13:32) *
Добрый день.
Опыт решения данной проблемы.
Проект создаем на VHDL/Verilog. Генерируем контроллер памяти. В проект включаем не ****.хсо, а файлы исходных текстов, описывающие контроллер.
В файле memc3_infrastructure находим место, где заходит внешний тактовый сигнал и убираем ibufg
--***********************************************************************
-- SINGLE_ENDED input clock input buffers
--***********************************************************************
-- u_ibufg_sys_clk : IBUFG
-- port map (
-- I => sys_clk,
-- O => sys_clk_ibufg
-- );
добавляем строку
sys_clk_ibufg <= sys_clk;

Можно еще убрать bufg из файла компонента, где генерируется частота (на выходе ADV_PLL),
а в memc3_infrastructure IBUFG заменить на BUFG.

Может пригодится. Удачи.

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