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

 
 
> Временной анализ корки DDR3
ovs_pavel
сообщение May 22 2013, 18:13
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 275
Регистрация: 19-05-06
Пользователь №: 17 249



Вечер добрый. Коллеги, не подскажите как выполнить временной анализ DDR3 корки для ПЛИС XC7K325T-2FFG900C.
Расскажу что делаю по этапам.

1. Сгенерил корку DDR3, в качестве пользовательского интерфейса взял User Interface (UI). Корку включил в тестовый проект (необходимо разобраться с пользовательскими сигналами, ну и заодно посмотреть, как работает память).
2. Подключил сгенерированный коркой .ucf-файл к проекту. Все скомпилил, вроде ошибок нет.
3. Сделал test bench, в котором сформировал сигнал сброса и дифференциальный тактовый сигнал 200 МГц.
4. Ну и все это запустил на временной анализ, но... тишина, калибровка памяти не начинается.

Пробовал (из UG586) запустить временной анализ корки из папки "example_design". Там все красиво получается, сразу после сброса начинается калибровка памяти и т.д. Но во первых они выполняют поведенческий анализ корки (behavirial), ну и во вторых не все у них там прозрачно.

Я не могу понять почему у меня не запускается процесс калибровки памяти, ведь достаточно наличия двух сигналов - тактовой и сброса.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
dmitry-tomsk
сообщение May 23 2013, 03:50
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ovs_pavel @ May 22 2013, 21:13) *
Вечер добрый. Коллеги, не подскажите как выполнить временной анализ DDR3 корки для ПЛИС XC7K325T-2FFG900C.
Расскажу что делаю по этапам.

1. Сгенерил корку DDR3, в качестве пользовательского интерфейса взял User Interface (UI). Корку включил в тестовый проект (необходимо разобраться с пользовательскими сигналами, ну и заодно посмотреть, как работает память).
2. Подключил сгенерированный коркой .ucf-файл к проекту. Все скомпилил, вроде ошибок нет.
3. Сделал test bench, в котором сформировал сигнал сброса и дифференциальный тактовый сигнал 200 МГц.
4. Ну и все это запустил на временной анализ, но... тишина, калибровка памяти не начинается.

Пробовал (из UG586) запустить временной анализ корки из папки "example_design". Там все красиво получается, сразу после сброса начинается калибровка памяти и т.д. Но во первых они выполняют поведенческий анализ корки (behavirial), ну и во вторых не все у них там прозрачно.

Я не могу понять почему у меня не запускается процесс калибровки памяти, ведь достаточно наличия двух сигналов - тактовой и сброса.

А чем моделируете и из под чего? Возможно, модель памяти подключена с ошибками.
Go to the top of the page
 
+Quote Post
ovs_pavel
сообщение May 23 2013, 08:50
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 275
Регистрация: 19-05-06
Пользователь №: 17 249



Цитата(dmitry-tomsk @ May 23 2013, 07:50) *
А чем моделируете и из под чего? Возможно, модель памяти подключена с ошибками.


А можно поподробнее насчет модели памяти. Нашел такую вот переписку (на англ. сайте):

Quest: I create a DDR3 controller for Virtex 7 through MIG. I want to do simulation in Modelsim. I just have a genral question is:
when we simulation DDR3 controller core in Modelsim, do we need a behavior model in testbench to simulate the DDR3 phy? Or we can don't care about the connections of DDR3 controller to DDR3 phy, simulate the DDR3 controller alone?

Repl: Yes you need a DDR3 model which can be obtained from you memory vendor's website. Or if you are using Micron, MIG can generate it for you with signing the license agreement.

Т.е. получается без подключения верилоговской модели памяти ничего не запуститься? Я на времянке смотрю как раз пины, которые должны подключаться к памяти. На них же хоть какое то "шевеление" должно быть?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение May 23 2013, 10:27
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(ovs_pavel @ May 23 2013, 11:50) *
А можно поподробнее насчет модели памяти. Нашел такую вот переписку (на англ. сайте):

Quest: I create a DDR3 controller for Virtex 7 through MIG. I want to do simulation in Modelsim. I just have a genral question is:
when we simulation DDR3 controller core in Modelsim, do we need a behavior model in testbench to simulate the DDR3 phy? Or we can don't care about the connections of DDR3 controller to DDR3 phy, simulate the DDR3 controller alone?

Repl: Yes you need a DDR3 model which can be obtained from you memory vendor's website. Or if you are using Micron, MIG can generate it for you with signing the license agreement.

Т.е. получается без подключения верилоговской модели памяти ничего не запуститься? Я на времянке смотрю как раз пины, которые должны подключаться к памяти. На них же хоть какое то "шевеление" должно быть?

Не запустится. Кроме того, будьте внимательны, не всегда эта модель подключается корректно, в planahead+modelsim у меня работала без проблем, а в ise+modelsim упорно не видел заголовочный файл, запускалось моделирование с параметрами по умолчанию и сигнала калибровки не было. Смотрите также параметр SIMULATION в модели MIG, без него долго придётся ждать окончания калибровки.
Go to the top of the page
 
+Quote Post
ovs_pavel
сообщение May 23 2013, 12:28
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 275
Регистрация: 19-05-06
Пользователь №: 17 249



Цитата(dmitry-tomsk @ May 23 2013, 14:27) *
Не запустится. Кроме того, будьте внимательны, не всегда эта модель подключается корректно, в planahead+modelsim у меня работала без проблем, а в ise+modelsim упорно не видел заголовочный файл, запускалось моделирование с параметрами по умолчанию и сигнала калибровки не было. Смотрите также параметр SIMULATION в модели MIG, без него долго придётся ждать окончания калибровки.




Сейчас как раз "копаю" исходник корки. Дошел до следующих параметров.
parameter SIM_INIT_OPTION = "SKIP_PU_DLY", // "NONE", "SKIP_PU_DLY", "SKIP_INIT"
parameter SIM_CAL_OPTION = "NONE", // "NONE", "FAST_CAL", "SKIP_CAL"

С ними попробую "поиграться".

Конечно вопрос почему не запуститься остается. Т.к. должна запуститься по определению (хотя бы один раз должны быть выданы сигналы CAS, RAS и т.д. для начала калибровки). Или в модели памяти прописаны некие начальные состояния входов DQ и DQS при которых вообще корка не начинает работать?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 18:00
Рейтинг@Mail.ru


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