Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: DDR High Performance Controller
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
torik
Такие дела. На отладке NiosII CycloneII Edition есть DDR память 16 бит.
Настраиваем контроллер High Performance DDR на частоту 100 МГц, FULL. Шина данных на выходе контроллера будет 16*2 = 32 бита.
Таким образом получаем шину 100 МГц 32 бита.

Я подключаю к ней свое устройство и... наблюдаю сигналтабом совершенно не ту картину, на которую рассчитывал. Получается пропускная способность как на 50 МГц. На приложенном рисунке видно, что на чтение одного байта тратится 2 такта (верхний datavalid, нижний waitrequest).

Что это может быть за фигня?
torik
Причем это происходит только на DDR памяти. На другом типе памяти (SDRAM, SSRAM) - все нормально...
Может надо как-то использовать half-rate? Но судя по описанию на DDR контроллер, в этом нет необходимости.
Serhiy_UA
Вы свой DDR HP контроллер используете под программную память для NiosII, или как-то иначе?
У меня задача такая, NiosII на on-chip memory, а DDR под отдельный FSM, и пока планирую использовать half-rate.
Правда, не определился с типом IP-корки, пока прорабатываю три варианта:
altmemphy
ddr controller
ddr hp controller
Gantz
Вы уверены в IP core которое используете и установленном режиме?
torik
Память не для ниоса, а для видео. Да и есть ли разница, кто будет использовать память?

Цитата
Вы уверены в IP core которое используете и установленном режиме?

Делал согласно документации на этот контроллер (хотя мог чего-нибудь напутать, не без этого). Испоьзовал режим full-rate. Half-rate для меня менее удобен, т.к. в этом случае шина будет 64 бита, а мне удобнее 32.

Вот выкладываю проектик, в SOPC установлен контроллер DDR (QII8.1). Поглядите, может увидите явную нелепость...



Проверил - на half-rate память ведет себя точно также...
torik
Там на закладке визарда PHY Settings есть нечто Address/command clock settings -> Clock phase. Возможные варианты 0, 90, 180, 270. Какую необходимо установить для full и half, кто знает? Что-то в даташите на контроллер вообще не нашел...
Serhiy_UA
Посмотрите на простой DDR and DDR2 SDRAM Controller (не HP), то там нет градаций full/half, да и Burst lengths там длинее 2, 4, or 8, в отличии от HP, где только 2 и 4.
Или только DDR and DDR2 SDRAM High-Performance?

У меня критично иметь Burst lengths = 8
torik
Да, спасибо.
Все-таки осилил HP. Дело оказалось как раз в Burst lengths - согласно документации в моем случае она должна быть 2.
Все заработало.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.