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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Вопросы по mobile DDR SDRAM памяти и ее контролеру, Проблема с генерацией контролера DDR SDRAM
White
сообщение Mar 5 2010, 11:33
Сообщение #1


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Может кто сможет подсказать:
Необходимо получить контролер DDR SDRAM. В устройстве использованы 4 корпуса 32Мх16 Samsung K4X51163PC-L(F)E/GC3. Естественно такой микросхемы MIG не знает, пытаюсь выставить параметры корпуса в ручную.
А вот теперь проблема - в генераторе задан диапазон значений и эти значения не подходят для моей памяти (пример: Address and Control Input setup time имеет диапазон до 1100 ps, а для указанной схемы памяти он 1300 ps), и соответственно, данное значение нельзя ввести
Может кто подскажет как выкручиваться?
PS Такая же ситуация свойственна для Micron MT46H16M16LF-75.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 5 2010, 12:19
Сообщение #2


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Для начала выбрать тип памяти LPDDR - MT46H16M16LF-75 появится.
Go to the top of the page
 
+Quote Post
deus
сообщение Mar 5 2010, 14:00
Сообщение #3


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

Группа: Свой
Сообщений: 97
Регистрация: 28-10-05
Из: Зеленоград
Пользователь №: 10 205



Что бы не плодить ветки задам свой вопрос здесь.
До сих пор мы работали с Альтерой, в том числе реализовали на ней несколько устройств с интерфейсом DDR2. Сейчас мы рассматриваем Xilinx Spartan-6 в качестве значительно более дешевой альтернативы микросхеме Stratix III. Вопрос: есть ли у кого опыт реализации интерфейса DDR2 400 MHz на микросхемах Spartan-6 и нет ли там "подводных камней" с которыми можно столкнутся на этапе разработки и которые не описаны в документации Xilinx?
Требуемая ширина шины 64 бит - максимально возможный для этого семейства. Еще проблема еще в том, что времени на освоение ISE и MIG у нас мало. Выигрыш по деньгам конечно не малый - 958$ (EP3SL50F780C2) - 250$(XC6SLX150-3FG900C) = 700$. Но с альтерой мы уже работали, а с Xilinx - нет.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 5 2010, 14:17
Сообщение #4


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Самый очевидный подводный камень заключается в том, что контроллер в Spartan-6 поддерживает только шестнадцатиразрядную память, и для шестидесяти четырех разрядов вы будете иметь 4 отдельных контроллера с необходиомстью разводить адреса и управление отдельно, то есть примерно 60 лишних ног и соответственно невозможность использовать модули, так как там одно управление на все 64 разряда.
Go to the top of the page
 
+Quote Post
White
сообщение Mar 7 2010, 13:03
Сообщение #5


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Цитата(DmitryR @ Mar 5 2010, 15:19) *
Для начала выбрать тип памяти LPDDR - MT46H16M16LF-75 появится.

Дмитрий, а где выбрать? У меня нет такой опции, использую Virtex-4.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 8 2010, 07:58
Сообщение #6


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Тогда думаю, что вы попали - контроллер для Virtex-4 такую память не поддерживает.
Go to the top of the page
 
+Quote Post
White
сообщение Mar 8 2010, 14:50
Сообщение #7


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Да вот и у меня такое ощущение.
Может кто знает как отыскать С А S T, Inc. D D R/D D R2 S D R A M Controller ? Он вроде бы поддерживает mobile DDR для Virtex-4.
Go to the top of the page
 
+Quote Post
gosha
сообщение Mar 9 2010, 06:33
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 15-06-04
Из: Менделеево
Пользователь №: 30



Цитата(White @ Mar 8 2010, 17:50) *
Да вот и у меня такое ощущение.
Может кто знает как отыскать С А S T, Inc. D D R/D D R2 S D R A M Controller ? Он вроде бы поддерживает mobile DDR для Virtex-4.


Есть cast sdr sdram контроллер. Если поможет...
Go to the top of the page
 
+Quote Post
White
сообщение Mar 9 2010, 06:54
Сообщение #9


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Cast sdr sdram контроллер я здесь видел, спасибо, но боюсь он мне не как не поможет. Вот незадача однако...
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 9 2010, 09:10
Сообщение #10


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Так надо ж было этот вопрос решать наверное до того, как плату делать. Посмотрите на OpenCores - там несколько DDR контроллеров есть. Вообще не понимаю смысла к Virtex-4 ставить Mobile DDR - экономия на спичках IMHO.
Go to the top of the page
 
+Quote Post
White
сообщение Mar 28 2010, 14:41
Сообщение #11


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Цитата(DmitryR @ Mar 9 2010, 12:10) *
Так надо ж было этот вопрос решать наверное до того, как плату делать. Посмотрите на OpenCores - там несколько DDR контроллеров есть. Вообще не понимаю смысла к Virtex-4 ставить Mobile DDR - экономия на спичках IMHO.


Ну выходит так как нужно далеко не всегда, особенно, когда ТЗ на разработку выдается теми кто совсем ничего не понимает в нем, большая часть условий задачи не оговорена. В общем что сделано то сделано, но задачи с меня снимать все равно ни кто не хочет. Это была лирика.
Теперь вопрос к тем кто писал что-то похожее на DDR контролер


tCK = 12 ns tAC = 2-8 ns




Вопрос заключается в том, как обеспечить надежный захват данный?
Может у кого есть здравые мысли как это сделать, но не излишне сложно?
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 29 2010, 07:35
Сообщение #12


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Мысли есть: сгенерируйте с помощью MIG контроллер и посмотрите. Без излишних сложностей там IMHO не получится - обычно требуется калибровка IODELAY, и у памяти случаются недокументированные косяки, как показывает анализ комментариев в коде фирменных контроллеров. Так же еще посмотрите, какой стандарт ввода-вывода вы будете использовать: мне кажется, что у LPDDR свой стандарт какой-то, у новых ПЛИС он выделен в отдельный стандарт ввода-вывода, а вот в Virtex-4 - нет. Поэтому для начала просто попробуйте регистр режима прочитать, убедитесь что у вас память и ПЛИС электрически совместимы.
Go to the top of the page
 
+Quote Post
White
сообщение Mar 30 2010, 15:40
Сообщение #13


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Цитата(DmitryR @ Mar 29 2010, 11:35) *
Мысли есть: сгенерируйте с помощью MIG контроллер и посмотрите. Без излишних сложностей там IMHO не получится - обычно требуется калибровка IODELAY, и у памяти случаются недокументированные косяки, как показывает анализ комментариев в коде фирменных контроллеров.

Мдя, не просто там разобраться... ладо это-то я делаю.
Цитата(DmitryR @ Mar 29 2010, 11:35) *
... Так же еще посмотрите, какой стандарт ввода-вывода вы будете использовать: мне кажется, что у LPDDR свой стандарт какой-то, у новых ПЛИС он выделен в отдельный стандарт ввода-вывода, а вот в Virtex-4 - нет. Поэтому для начала просто попробуйте регистр режима прочитать, убедитесь что у вас память и ПЛИС электрически совместимы.

LVCMOS там.

У меня возник вопрос - на ниже приведенном рис 17 и на выше приведенном рис 30 есть задержки.


Вопрос в том, откуда они возникают?
И с чем связан такой разброс фронтов DQ? так в стандарте я не нашел ничего похожего.
Просвятите, если кто знает?
Go to the top of the page
 
+Quote Post
BarsMonster
сообщение Mar 30 2010, 16:01
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 479
Регистрация: 8-03-10
Из: Россия, Москва
Пользователь №: 55 849



Цитата(White @ Mar 30 2010, 18:40) *
И с чем связан такой разброс фронтов DQ? так в стандарте я не нашел ничего похожего.
Просвятите, если кто знает?


Ну так это видимо показывают, что в реальности проводники разной длины по шине DQ + внутри плисины все не одинаковой длины...
17см дороги = 1нс


--------------------
Потроха микросхем: zeptobars.ru
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 31 2010, 06:30
Сообщение #15


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(White @ Mar 30 2010, 19:40) *
LVCMOS там.

Хм. У Virtex-4 LVCMOS18 Vol=0.4 max, Voh=1.35 min. У MT46H16M16 Vil=0.36 max, Vih=1.44 min. То есть теоретически может сложиться ситуация, когда выход Virtex-4 будет колебаться в пределах зоны гистерезиса памяти, и это не будет противоречить даташитам. Очевидно не зря в Spartan-6 введен стандарт ввода-вывода MOBILE_DDR c Vol=0.18 max, Voh=1.62 min.
Go to the top of the page
 
+Quote Post
White
сообщение Mar 31 2010, 12:47
Сообщение #16


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Дмитрий у меня другая память - в начале темы я писал, что там стоит самсунг K4X51163PC.. у него Vil = 0,56 max, Vih = 1,26 min

Но мне бы сейчас больше хотелось, что бы мне рассказали про задержки в памяти smile.gif
Go to the top of the page
 
+Quote Post
dspx
сообщение Mar 31 2010, 19:37
Сообщение #17


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 6-01-06
Из: Москва
Пользователь №: 12 876



Цитата(White @ Mar 31 2010, 15:47) *
Дмитрий у меня другая память - в начале темы я писал, что там стоит самсунг K4X51163PC.. у него Vil = 0,56 max, Vih = 1,26 min

Но мне бы сейчас больше хотелось, что бы мне рассказали про задержки в памяти smile.gif


Не обращайте внимания на задержки на рисунках. Там показаны возможные случаи задержки данных, удовлетворяющих стандарту, и требуемое положение DQS, чтобы получалось стробирование данных при чтении как раз в пределах валидного окна. Наиболее простой случай для вас - берете MIG генерите DDR/DDRII контроллер, в принципе для любого кристалла, запускаете встроенный тестбенч, который пишет/читает паттерны, и смотрите глазами на диаграммы. Под Virtex4 переделать будет не очень трудно, всего-лишь выходные примитивы в IOB заменить, и возможно распределенную RAM в части чтения данных.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Apr 1 2010, 05:50
Сообщение #18


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Проблема заключается в том, что Mobile-DDR поддерживается только в Spartan-6, а там он погружен и перенести соответственно не получится. А обычный DDR контроллер есть и для Virtex-4, можно сгенерировать и ничего не переделывать, но он скорее всего не заработает, так как различается времянка.
Go to the top of the page
 
+Quote Post
White
сообщение Apr 1 2010, 15:24
Сообщение #19


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

Группа: Свой
Сообщений: 81
Регистрация: 31-01-05
Из: Москва
Пользователь №: 2 324



Ну то что он не заработает это 100%, дело в том, что координально отличается инициализация памяти и ее чтение. Запись практически аналогична.
Сейчас суть в том, что надо понять сейчас можно ли захлопывать данных на фронтам CLK?
Про все прочие особенности пока речи не идет.
Go to the top of the page
 
+Quote Post
dspx
сообщение Apr 1 2010, 19:36
Сообщение #20


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 6-01-06
Из: Москва
Пользователь №: 12 876



Цитата(White @ Apr 1 2010, 19:24) *
Ну то что он не заработает это 100%, дело в том, что координально отличается инициализация памяти и ее чтение. Запись практически аналогична.
Сейчас суть в том, что надо понять сейчас можно ли захлопывать данных на фронтам CLK.
Про все прочие особенности пока речи не идет.


Сорри, не увидел что речь идет про LPDDR, слишком часто по топику сквозит DDR/DDRII. Но и в этом случае не все так сложно, как можно подумать. Тут все отличия этих стандартов http://download.micron.com/pdf/technotes/DDR/tn4615.pdf. Переделать инциализацию и диаграмму чтения не так сложно. Я долго ковырял МИГи, модуль отвечающий за арбитраж практически один и тот же. Можете сами сравнить исходники разных контроллеров. Различия в некоторых кусках конвеера управляющих сигналов, но зная как должны выглядеть диаграммы , можно доковырять логику и переделать контроллер под нужный стандарт. Понятно что при том при всем придется подкрутить констрейны. Все решаемо с помощью симуляции нетлиста бэканнотированного sdf файлом.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Apr 2 2010, 06:12
Сообщение #21


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(White @ Apr 1 2010, 19:24) *
Сейчас суть в том, что надо понять сейчас можно ли захлопывать данных на фронтам CLK?

Этот вопрос можно перевести примерно так: "На самом ли деле разработчики стандарта DDR памяти забыли выкинуть из драфта абсолютно лишний сигнал DQS, или в нем все-таки есть какой-то скрытый смысл"? Да, в нем есть смысл - он тактирует данные, а CLK тактирует команды. Рассматривайте это как разные временные домены.
Go to the top of the page
 
+Quote Post

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

 


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


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