Цитата
у Альтеры достаточно будет "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, хотя мог бы просто припаять туда кристаллы большой емкости и вообще вопрос памяти закрыть. Большинство пользователей всегда берет память с большим запасом, потому что программисты почти никогда не думают, что будет с их программами, когда память физически кончится.