реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> моделирование DDR2 SDRAM контроллера с UniPHY
_Anatoliy
сообщение Apr 26 2016, 09:38
Сообщение #1


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Первый раз решил промоделировать этот контроллер(Квартус 15.1) и сразу не вышло. Видно что контроллер не подаёт признаков жизни,хотя клок и ресет для него формируются. Подскажите ,плз, на что обратить внимание. Модель микросхемы памяти пока не подключал.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Sergey_Bekrenyov
сообщение Apr 27 2016, 11:21
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 304
Регистрация: 14-12-10
Из: Королёв
Пользователь №: 61 599



Цитата(_Anatoliy @ Apr 26 2016, 12:38) *
Первый раз решил промоделировать этот контроллер(Квартус 15.1) и сразу не вышло. Видно что контроллер не подаёт признаков жизни,хотя клок и ресет для него формируются. Подскажите ,плз, на что обратить внимание. Модель микросхемы памяти пока не подключал.

reset-ов несколько, soft_reset точно был
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 27 2016, 11:52
Сообщение #3


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(warrior-2001 @ Aug 13 2015, 14:01) *
Несколько раз моделировал разные DDR2/DDR3 в QuestaSim. Дело это хлопотное и главное - бесполезное.

Похоже Вы правы,совершенно бесполезный результат симуляции для example_design. Было бы гораздо интересней увидеть сигналы со стороны Avalon, а этого как раз и нет. А вот как это сделать?

Цитата(Sergey_Bekrenyov @ Apr 27 2016, 14:21) *
reset-ов несколько, soft_reset точно был

Да,точно был. Контроллер же должен записать команду в Mode Register памяти после ресета?
Go to the top of the page
 
+Quote Post
Sergey_Bekrenyov
сообщение Apr 27 2016, 12:29
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 304
Регистрация: 14-12-10
Из: Королёв
Пользователь №: 61 599



Цитата(_Anatoliy @ Apr 27 2016, 14:52) *
Похоже Вы правы,совершенно бесполезный результат симуляции для example_design. Было бы гораздо интересней увидеть сигналы со стороны Avalon, а этого как раз и нет. А вот как это сделать?


Да,точно был. Контроллер же должен записать команду в Mode Register памяти после ресета?

Как минимум подать частоту на CK/CK#
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 27 2016, 12:58
Сообщение #5


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(Sergey_Bekrenyov @ Apr 27 2016, 15:29) *
Как минимум подать частоту на CK/CK#

Это да. Кстати,проект не склеивается для симуляции. Есть вот такое сообщение:
Код
# ** Warning: (vsim-3473) Component instance "myddr_inst : myDDR_0002" is not bound.
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Apr 28 2016, 05:11
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 785
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(_Anatoliy @ Apr 27 2016, 18:58) *
Это да. Кстати,проект не склеивается для симуляции. Есть вот такое сообщение:
Код
# ** Warning: (vsim-3473) Component instance "myddr_inst : myDDR_0002" is not bound.
Надо скомпилять либы под альтеровские примитивы и добавить эти либы в проект.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 28 2016, 11:39
Сообщение #7


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(Bad0512 @ Apr 28 2016, 08:11) *
Надо скомпилять либы под альтеровские примитивы и добавить эти либы в проект.

Ага.
1). прошу меня извинить,всё что приводил раньше - это касалось проекта с example_design. Я его таки запустил,но как оказалось толку от него мало,писал выше.
2). сделал проект только с этой коркой, запускаю в квартусе run simulation tool, в папке симуляции появляется скрипт SDRAM_DDR2_run_msim_rtl_vhdl.do. Запускаю компиляцию в Модельсиме, проходит нормально. Запускаю на выполнение скрипт, проходит нормально(я так думаю он и занимается подключением нужных библиотек?). После выполнения скрипта при попытке симуляции наблюдается потеря файла тест-бенча:
Код
# Analyzing design...
# ** Error: (vopt-13130) Failed to find design unit work.Top_tb.

Если же запустить симуляцию сразу после компиляции то тогда выскакивает ошибка
Код
# ** Warning: (vsim-3473) Component instance "myddr_inst : myDDR_0002" is not bound.

К сожалению очень редко работаю с модельсимом и не так хорошо его знаю как хотелось бы.
Что посоветуете?
Go to the top of the page
 
+Quote Post
Maverick
сообщение Apr 28 2016, 11:49
Сообщение #8


я только учусь...
******

Группа: Модераторы
Сообщений: 3 367
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(_Anatoliy @ Apr 28 2016, 14:39) *
Ага.
1). прошу меня извинить,всё что приводил раньше - это касалось проекта с example_design. Я его таки запустил,но как оказалось толку от него мало,писал выше.
2). сделал проект только с этой коркой, запускаю в квартусе run simulation tool, в папке симуляции появляется скрипт SDRAM_DDR2_run_msim_rtl_vhdl.do. Запускаю компиляцию в Модельсиме, проходит нормально. Запускаю на выполнение скрипт, проходит нормально(я так думаю он и занимается подключением нужных библиотек?). После выполнения скрипта при попытке симуляции наблюдается потеря файла тест-бенча:
Код
# Analyzing design...
# ** Error: (vopt-13130) Failed to find design unit work.Top_tb.

Если же запустить симуляцию сразу после компиляции то тогда выскакивает ошибка
Код
# ** Warning: (vsim-3473) Component instance "myddr_inst : myDDR_0002" is not bound.

К сожалению очень редко работаю с модельсимом и не так хорошо его знаю как хотелось бы.
Что посоветуете?

мне когда-то помогло
особенно
Цитата
Design Simulation
To simulate the example design a script needs to be run to set up Modelsim with the appropriate libraries and files
Open the generate_sim_example_design.qpf Quartus project which is located in the folder <>/ddr3_x16_example_design/simulation
From the Tools Menu -> Tcl Scripts.... select the generate_sim_verilog_example_design.tcl and click Run
Open Modelsim and change directory to <>/ddr3_x16_example_design/simulation/verilog/mentor
To start simulation enter "do run.do"
- The simulation will stop once the test complete signal goes high in the test bench
- CLICK ”NO” WHEN ASKED IF YOU WANT TO FINISH, otherwise simulation will be reset
- Observe the results in the ModelSim Wave window


PS думаю у Вас аналогично...


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 28 2016, 11:51
Сообщение #9


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(Maverick @ Apr 28 2016, 14:49) *

Так Вы example_design симулировали или любой свой проект с этим контроллером?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 29 2016, 05:09
Сообщение #10


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Так как ответа нет подозреваю что всё таки example_design... Выше я писал что запустил симуляцию этого проекта но это мне не интересно. Вообще не понятно зачем его делали,полюбоваться сигналами на ножках SDRAM? Мне нужно на SDRAM соорудить нечто похожее на FIFO очень большого размера. Вот обвязку этого FIFO очень хотелось бы отлаживать в симуляторе,поэтому меня интересует возможность наблюдать сигналы корки со стороны Avalon. Т.е. нужно симулировать мой проект в состав которого входит эта корка. Или все предпочитают работать с сигнал-тапом? Имхо не сигнал-тапово это дело. Что же делать,коллеги?
Go to the top of the page
 
+Quote Post
krux
сообщение Apr 29 2016, 12:38
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 565
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



я запускал 3 года назад, но было это муторно и долго.
скриптами не пользовался. просто добавил в mpf файл проекта пути до скомпилированных библиотек, а в ярлыке запуска симуляции добавил их.

uniphy корка вместе с прицепленной памятью добавляет ко времени симуляции достаточно много, поэтому я вместо неё прицепил самописную память нужного объема с интерфейсом avalon. Из специфических "фич" DDR самописный модуль эмулировал задержку на чтение в N тактов, зажимание Ready после burst-ов, refresh.
после чего симуляция стала на полтора порядка быстрее.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 29 2016, 15:41
Сообщение #12


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(krux @ Apr 29 2016, 15:38) *
я запускал 3 года назад, но было это муторно и долго.
скриптами не пользовался. просто добавил в mpf файл проекта пути до скомпилированных библиотек, а в ярлыке запуска симуляции добавил их.

Спасибо,но похоже это не для меня,не очень хорошо знаю модельсим. Раз такая стрёмная ситуация с этой коркой то для себя решил так - сделаю обвеску FIFO, отсимулирую авалоновские сигналы, а с коркой буду стыковаться уже в железе. Геморрой конечно,но другого выхода не вижу. Если вдруг у кого из коллег появятся какие мысли буду рад выслушать.

p.s. лет 15 назад делал свой контроллер для SDRAM SDR, так там нужно было регенерацию делать. А как в этой корке, со стороны авалона нужны какие нибудь движения по поводу регенерации или корка сама всё сделает?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 30 2016, 09:43
Сообщение #13


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Коллеги,проясните ещё один вопрос. В корке есть такой интерфейс afi. Что с ним делать? Куда подключать или оставить висящим? Вроде есть авалон, есть интерфейс внешней памяти - этого же достаточно.
Go to the top of the page
 
+Quote Post
dinam
сообщение May 5 2016, 03:22
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 348
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Очередная подобная темка. Вот последняя http://electronix.ru/forum/index.php?showt...=129760&hl=, в ней приведена ссылка и на мою. Если всё таки осилите, то не сочтите за труд выложить (или в личку) как смогли победить эту проблему.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение May 5 2016, 06:33
Сообщение #15


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 403
Регистрация: 15-07-06
Из: г.Донецк
Пользователь №: 18 832



Цитата(dinam @ May 5 2016, 06:22) *
Очередная подобная темка. Вот последняя http://electronix.ru/forum/index.php?showt...=129760&hl=, в ней приведена ссылка и на мою. Если всё таки осилите, то не сочтите за труд выложить (или в личку) как смогли победить эту проблему.

Та у меня сейчас тоже рутина навалилась,отложил пока разработки. Последнее что придумалось - если контроллер DDR создавать не из IP Catalog, а из QSYS то мы получим папку с исходниками контроллера. Вот и мелькнула мысль тупо скомпилить эти исходники в симуляторе. Попробовал, но споткнулся на библиотеках. Я пишу на VHDL поэтому подключение верилоговских библиотек меня просто ставит в ступор. Пока отложил. Если бы кто-то из интересующихся этой темой любителей верилога проверил этот путь было бы замечательно.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th September 2017 - 21:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01573 секунд с 7
ELECTRONIX ©2004-2016