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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> FPGA + 4GB DDR2, что? где? когда?
bark
сообщение Sep 5 2011, 08:42
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Подскажите пожалуйста с информацией о использовании памяти с FPGA.
я по этому вопросу совсем не в теме. мне поставили задачу сейчас начинаю собирать информацию и просматривать старые темы форума.
чтобы не изобретать себе пройденные грабли спрошу у вас.

Задача: прилепить 4ГБайт оперативы к Cyclone IV. память вероятно DDR2

Критерии: желательно поменьше микросхем памяти использовать, скорость надо иметь порядка 4Гбит/с или выше, можно ли этим нормально воспользоваться без Nios?
Вопросы:
1. как это оптимально сделать.
2. на какие и чьи чипы памяти смотреть.
3. как со стороны FPGA пользовать память? (корка альтеры наверняка ведь есть подходящая или в циклоне есть контроннер памяти?)
4. Подводные камни.

понимаю что большинство ответов найти можно и самому(и этим я тоже занимаюсь), но увы как говорится "на вчера".


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 5 2011, 10:49
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Вот смотрите: сайт Микрона сообщает, что максимальная емкость одного кристалла - 4 Гбит. То есть, даже самых больших кристаллов потребуется 8 штук. А более ходовых, на 2 Гбита, и вовсе 16. Прикручивать можно, только этот объем сожрет довольно много выводов. Скажем, байтовая шина * 8 кристаллов = 64 бита данных DDR2. Разводить такую плату будет непросто.
А вот со скоростью проблем не должно быть совсем. Одна линия данных даст около 400 Мбит/с, а 64 линии - 25.6 Гбит/с. И это при довольно хилой частоте в 200 МГц. Но нужно обратить внимание на линии адреса и управления. Их придется разветвить на 8 кристаллов и смотреть, хватит ли драйверов альтеровских на 8 входов.
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 5 2011, 11:10
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Я вот попробовал вставить инстанцию Альтеровского ДДР контроллера.. там есть уже готовые профили для разных кристаллов. один из них тоже Микроновский, но на 1ГБ.
Micron MT47H32M16-5E.
может конечно по факту чип достать трудно..

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


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 5 2011, 11:50
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Так а Вы на сколько кристаллов рассчитываете? MT47H32M16 - это 512 Мбит. 1Гбит - это MT47H64M16. Но при ваших объемах (если это не описка) потребуется 32 кристалла по 1Гбит. Я не думаю, что это будет изящным решением...

Сообщение отредактировал Hoodwin - Sep 5 2011, 12:35
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 5 2011, 12:29
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



мне бы конечно чем меньше чипов тем лучше. всё-таки плата не резиновая и разводить много кристалов не хочется.


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 5 2011, 12:37
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



а в штуках это сколько? sm.gif По-моему, даже 8 кристаллов - это некоторый перебор. не говоря уже о 16 или 32...
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 5 2011, 13:51
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



ну хотелось бы не больше 8. как я понимаю так получится при использованиии 512Мбайтных чипов.
а что с FPGA? корки типа Альтеровской сами заботятся о рефреше и времянках? со стороны пользователя это просто ММ доступ к данным ?


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 5 2011, 14:25
Сообщение #8


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



буковские планки 2x2GB поставить и не париться


--------------------
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 5 2011, 14:56
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Не слишком ли много ног потребуется?
они как-то каскадируются?


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
maksimp
сообщение Sep 5 2011, 18:05
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 313
Регистрация: 2-07-11
Пользователь №: 66 023



А если DDR3 поставить? Там микросхемы вероятно большего объёма чем DDR2 (так как новее).
Нормальная частота DDR3 - 300 МГц и выше. Единственная дешёвая ПЛИС которая может так работать - Spartan 6.
Но у DDR3 есть специальный режим с выключенный DLL, при котором частота 125 Мгц или ниже - так Cyclone 4 может работать. Можно например 16 МГц сделать. Тогда времянки гораздо легче обеспечить, и буферов выходных ПЛИС хватит по выходной мощности.

Сообщение отредактировал maksimp - Sep 5 2011, 18:07
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Sep 6 2011, 05:32
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(des00 @ Sep 5 2011, 17:25) *
буковские планки 2x2GB поставить и не париться

Кому-то удалось реально использовать подобные SO-DIMM DDR2 в своих проектах с ПЛИС от Altera?
Мог бы кто рассказать об основных особенностях этого процесса, типа: какая была мегафункция, итоговая частота обращения, тонкости трассировки и т.п.?
Кстати, ссылка не работает...


Go to the top of the page
 
+Quote Post
des00
сообщение Sep 6 2011, 05:58
Сообщение #12


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serhiy_UA @ Sep 6 2011, 00:32) *
Кому-то удалось реально использовать подобные SO-DIMM DDR2 в своих проектах с ПЛИС от Altera?
Мог бы кто рассказать об основных особенностях этого процесса, типа: какая была мегафункция, итоговая частота обращения, тонкости трассировки и т.п.?
Кстати, ссылка не работает...

ссылка из местной сети, забыл как то что сайт снаружи томска не виден. коллеги пришивали такую память на 4 ый виртекс, все работало без сбоев на частоте в 350 МГц, если мне память не изменяет. делали на mpmc. не альтера конечно, но важен сам факт.

ЗЫ. а трассировать да, судя по плате "весело" было.


--------------------
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 6 2011, 06:22
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



А у меня ссылка на память открывается.

у Альтеры достаточно будет "DDR and DDR2 SDRAM High-Performance Controllers and ALTMEMPHY IP" чтобы использовать внешнюю память?
или тут ещё ньюансы есть.. типа фитеров у сети или ещё что-то?

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

И кстати как память вообще работает? там типа ведь МемориМап? и никакого дуплекса? или запись или чтение? причем бёрстами. так?


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Sep 6 2011, 06:25
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(des00 @ Sep 6 2011, 08:58) *
... но важен сам факт.

Хорошо бы иметь такой факт для Altera...

Получается что LogiCORE IP Multi-Port Memory Controller (MPMC) (v6.03.a) только для Xilinx, а для Altera нет? http://www.xilinx.com/support/documentatio...tation/mpmc.pdf

Создается впечатление, что у Xilinx при обслуживании SDRAM дела обстоят несколько лучше, или это не так?
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 6 2011, 08:43
Сообщение #15


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Цитата
у Альтеры достаточно будет "DDR and DDR2 SDRAM High-Performance Controllers and ALTMEMPHY IP" чтобы использовать внешнюю память?
или тут ещё ньюансы есть.. типа фитеров у сети или ещё что-то?


Судя по описанию, достаточно. Но я бы сказал, что 90% времени Вы проведете за изучением того, что Вам не нужно и как это не использовать. Потому что эти деятели писали талмуд сразу под все семейства FPGA и под все виды DDR памятей. В итоге, настройка HPC2 потребует от вас знаний не только о DDR2, но и о DDR, об отличиях DDR и DDR2 в во времянках обращений, времянках и параметрах инициализации и т.п. Я это пробовал читать когда-то, но довольно быстро охладел, времени стало жалко.

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


ну, если Вы только еще начинаете проектировать, то могу посоветовать нарисовать "bubbling idiot" - муляж двигалки всеми ногами: шин адреса, данных, сигналов управления. Пусть это будут разряды счетчиков или какие-то другие моргалки. Потом настроить правильно все I/O стандарты и попробовать собрать. Это Вам даст гарантию, что в будущем проект вообще соберется. Я когда схему рисовал вначале, по традиции этого не делал, упаковал банки почти под завязку (зато в два банка уложился), а потом решил проверить, соберется или нет. И вот оказалось, что не собирается. Примерно 10-15% выводов пришлось освободить и оставить неподключенными. Пришлось занять еще банк и только после этого стало собираться. В общем, об этом всем тоже можно почитать в даташите, но там это описано несколько отвлеченно, что вот выходы не должны быть на два пада вблизи входов и т.п., только пады - это понятие, относящееся к кристаллу, и в зависимости от типа корпуса подключение падов к пинам может быть разным, так что в уме это не прикинуть.


Цитата
И кстати как память вообще работает? там типа ведь МемориМап? и никакого дуплекса? или запись или чтение? причем бёрстами. так?


Память работает как и обычная SDRAM. Только для снижения потребления сам массив работает на меньшей частоте, чем шина. Ну и отсюда всякие штуки с burst-ами, чтобы уравнять производительность массива и шины. Это если совсем в двух словах.

Мой опыт показывает, что если кристаллов мало (2-4), Вы можете поставить их в упор к FPGA, частоты I/O у Cyclon-ов достаточно низкие и разводить это можно вообще как обычный SDRAM, то есть 1) вообще не заморачиваться с терминаторами, 2) вообще не выравнивать трассы. Важно только правильно подключить все VREF'ы и правильно развести memory clock. Больше того, можно даже не ставить самую большую drive strength. Так, в частности, рекомендует TI подключать DDR2 к своим DSP, хотя частота там выше.

Поэтому я рекомендовал бы Вам подумать нельзя ли сократить объем памяти до такого, какой можно охватить 4 кристаллами. Это существенно упростило бы жизнь.
Что касается модулей памяти, предложенных des00, то тут еще нужно учитывать ваши требования по надежности (вибрации и т.п.). Я вот не люблю, когда какой-нибудь Kontron делает промышленную embedded PC, при этом делает память в виде SODIMM, хотя мог бы просто припаять туда кристаллы большой емкости и вообще вопрос памяти закрыть. Большинство пользователей всегда берет память с большим запасом, потому что программисты почти никогда не думают, что будет с их программами, когда память физически кончится.
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 6 2011, 11:01
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Hoodwin, спасибо. Учту при проектировании.
Объем памяти уменьшить вероятно не получится.

есть девборда с 256МБ DDR2. на ней могу попробовать отработать сам обмен с памятью. поэтому и важным вопросом был "что и как использовать" в качестве контроллера памяти.


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 6 2011, 12:19
Сообщение #17


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Не хочу показаться навязчивым, но вот летом занимался контроллером и даже выложил его на публичное тестирование. Смотрите вот эту ветку.
Если есть доска, с которой можно скопировать топологию, то можете обкатать на ней решение и повторить с большим объемом памяти.
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 12 2011, 08:17
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



доска есть с СIII. на ней две независимых памяти висит. всего 256Мб.


сейчас пытаюсь на най скомпилировать Альтеровскую корку выдаёт ошибку
Error: The DDIO_OUT WYSIWYG primitive "DDR2_01:DDR2_inst_01|DDR2_01_controller_phy|...|ddio_outa[0]" feeding the pin "ddr2_ck_p[1]" has multiple fan-outs

вроде разобрался.. дело было вроде в несоответствии направлений пинов на разных уровнях. (bidir/output)


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Sep 19 2011, 11:02
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



А нет ли уже готовой платы с FPGA Cyclone III или IV с логической емкостью не ниже 120, на которой стояло бы 6-8 корпусов DDR2 SDRAM примерно по 64М*16 каждый? Допускается, если памяти будет больше, а других узлов больше не требуется, т.е только память и FPGA ...
Создавать самому плату с нуля, как-то рискованно, уж очень жесткие требования к трассировке...
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 19 2011, 11:29
Сообщение #20


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serhiy_UA @ Sep 19 2011, 06:02) *
А нет ли уже готовой платы с FPGA Cyclone III или IV с логической емкостью не ниже 120, на которой стояло бы 6-8 корпусов DDR2 SDRAM примерно по 64М*16 каждый?

есть такие но с разъемом под ДДР %)


--------------------
Go to the top of the page
 
+Quote Post
Serhiy_UA
сообщение Sep 19 2011, 12:32
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112



Цитата(des00 @ Sep 19 2011, 14:29) *
есть такие но с разъемом под ДДР %)

Дайте ссылку, пожалуйста...
Почему после ДДР усмешка? Нужен обработчик с большой памятью, сделать который самому и без тренировки тяжело и долго, а времени маловато...
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 19 2011, 14:41
Сообщение #22


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serhiy_UA @ Sep 19 2011, 07:32) *
Дайте ссылку, пожалуйста...

http://www.altera.com/products/devkits/alt...it-st3-dsp.html
в свое время была аналогичная борда на 120 ом сыклоне правда втором, у нас где то на работе валяется
Цитата
Почему после ДДР усмешка?

кхм, вроде я такой смайлик уже лет 7 использую %)



--------------------
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 20 2011, 06:31
Сообщение #23


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Цитата(des00 @ Sep 19 2011, 17:41) *
http://www.altera.com/products/devkits/alt...it-st3-dsp.html
в свое время была аналогичная борда на 120 ом сыклоне правда втором, у нас где то на работе валяется

кхм, вроде я такой смайлик уже лет 7 использую %)


ну вообще-то это стратикс, а не сциклон. и всё равно вариант не интересный.
там есть более привлекательная борда.


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 20 2011, 07:44
Сообщение #24


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(bark @ Sep 20 2011, 01:31) *
ну вообще-то это стратикс, а не сциклон. и всё равно вариант не интересный.
там есть более привлекательная борда

о кстати спасибо, вот та борда на сыклоне что у нас на работе есть http://www.buyaltera.com/scripts/partsearc...ame=544-1699-ND
ну а ваша стоит не гуманно, сильно не гуманно


--------------------
Go to the top of the page
 
+Quote Post
bark
сообщение Sep 20 2011, 08:18
Сообщение #25


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 16-11-09
Из: Украина Юг
Пользователь №: 53 659



Цитата(des00 @ Sep 20 2011, 10:44) *
о кстати спасибо, вот та борда на сыклоне что у нас на работе есть http://www.buyaltera.com/scripts/partsearc...ame=544-1699-ND
ну а ваша стоит не гуманно, сильно не гуманно

ну по сравнению с той бордой на 3 стратиксе вполне гуманно. почти та же цена, только гораздо более оснащенная плата.
а какая ориентировочная цена на эту с СII ? на сайте не указано =\


--------------------
Работаю 20ns в сутки.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 23:34
Рейтинг@Mail.ru


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