Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QDR II и Cyclone III
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
tema-electric
Доброго времени суток, уважаемые Гуру. Вопрос собственно в теме. Заводил ли кто QDR II на Cyclone III и что из этого вышло. Циклон я планирую EP3CF484C6. В даташите на циклоны написано, что максимальная тактовая, которую можно получить 166 МГц. А хочется 250. Реально, нереально? Что несколько удручает, так то, что Altera умышленно что-ли не хочет добавлять в ячейки буферов ввода-вывода (IOE) DDR регистры на прием, в результате чего они тащятся в логические (LE). Эта тенденция просматривается именно на III и IV семействах циклонов. "Подкормили" только DDR на вывод и хватит. Stratix II, который имеет DDR в IOE по входу и по выходу дороже минимум в 4 раза. Про остальные Stratix III, IV и говорить не приходится. На Xilinx не ориентируюсь. Так сложилось.

Мой опыт разработки не особо велик. В частности хромает анализ временных параметров с помощью TimeQuest. Уже пару итераций пытался освоится, работал с sdf файликом. Но толку от моих констрейнов в результате компиляции я не увидел.

Каковы шансы на удачный исход и на что для этого стоит обратить пристальное внимание? Необходимо-ли при синтезе как-то учитывать топологию платы. По крайней мере в ModelSim можно сварганить тестбенч с учётом задержек реальной топологии и оценить работоспособность, но на сколько она будет правдоподобной. Может циклон можно разогнать? smile.gif Как процессор или видеокарточку.
des333
Цитата(tema-electric @ Aug 8 2010, 21:56) *
 В даташите на циклоны написано, что максимальная тактовая, которую можно получить 166 МГц. А хочется 250. Реально, нереально? 



Странный вопрос...

tema-electric
Цитата(des333 @ Aug 9 2010, 01:08) *
Странный вопрос...


Не знаю, на сколько он странный. 167 МГц указано с поправкой

Таблица 9-3 : (1) These numbers are preliminary until characterization is final. Т.е. последнее слово за синтезатором и фиттером.

Кроме того DDR II в той же таблице может работать и на 200 МГц, но расположение пинов только в строках.

Таблица 1-40. Максимальная скорость переключения для 1.5-V HSTL Class I = 300 МГц. Т.е. 250 МГц - это не проблема. Проблема в разводке внутри кристалла. Узкое место это Echo clock. У DDR это DQS, у QDR - CQ. Т.е. если неправильно провести трассировку, можно и не попасть в окно захвата данных (data valid window). Для стратов есть один даташитик, в котором в результате получаются цифры в 250 пс. Для циклона я расчет не делал.

Поэтому и интересуюсь, можно ли как нибудь свершить сей чудо. "Разгон" возможен. QDR использует на шине 1.5 В а для ядра 1.8, и его можно увеличить до 1.8 В при желании. Просто возрастет потребление. Но для меня это не критично.
DmitryR
Если у вас опыт разработок не особо велик - вам наоборот имело бы смысл удвоить ширину памяти и сделать на 125 МГц.
tema-electric
Цитата(DmitryR @ Aug 9 2010, 16:32) *
Если у вас опыт разработок не особо велик - вам наоборот имело бы смысл удвоить ширину памяти и сделать на 125 МГц.


На 125 МГц я писал DDR контроллер собственной разработки, написанный когда-то на AHDL laughing.gif Страшное зрелище.
И он работал на простом Cyclone EP1C6Q208. Работал без сбоев. Но тестирования толком не было.

Опыт разработки используя TimeQuest и фиттер не велик. Для фиттер пожалуй максимум что я использовал, это ручное размещение конкретных регистров по оптимальным с моей точки зрения ячейкам. Та ещё забава. Тонкостями не владею. Не в состоянии написать констрейный так, чтобы после компиляции понять, будет работать проект или нет. Как-то так crying.gif

QDR проще DDR на порядок. Контроллера то там по сути нет никакого. Только DDR регистры приема-передачи, а всё остальное уже пользовательское.
DmitryR
Цитата(tema-electric @ Aug 9 2010, 14:45) *
QDR проще DDR на порядок.

Однако альтеровские контроллеры DDR на Циклонах поддерживают, а QDR - нет. Видимо вам надо к ним на работу, поднять это неосвоенное направление.
tema-electric
Цитата(DmitryR @ Aug 9 2010, 18:08) *
Однако альтеровские контроллеры DDR на Циклонах поддерживают, а QDR - нет. Видимо вам надо к ним на работу, поднять это неосвоенное направление.


Не, у меня уровень ещё не тот )). Иначе бы я тут не ставил такие вопросы в надежде получить ответы rolleyes.gif .

У них есть IP корка на QDR, но она вроде сторонняя, от третьей канторы. Мне кажется, тут всё вызвано лишь только политикой покупки стратиксов. Никто не мешал им сделать в Cyclone IV в буферах ввода-вывода DDR регистры на прием. Это бы уменьшило разброс задержек и увеличило data valid window, вместе с ростом частоты. Может сей чудо случится в Сyclone V, но когда это будет biggrin.gif .
tema-electric
Провел сегодня расчет по emi_debug_timing.pdf Там он ведётся для стратикса. По аналогичной методе, но с некоторыми допущениями (там параметры для DDR II и они не совсем совпадают для QDR, приходилось искать аналоги) я спокойно получил 200 МГц. Это в худшем случае cranky.gif . Вобщем желаемые 250 - это жизнь покажет.

В системе будет ещё синтезатор частоты. Свободные пины остались, можно их заюзать. Вот думаю может PLL внутри альтеры не использовать из-за большого джиттера? Это улучшит шансы на хороший исход.

Тут экселевский файлик для расчета. Может кому понадобится ...
Нажмите для просмотра прикрепленного файла
axalay
Цитата(tema-electric @ Aug 10 2010, 19:34) *
Провел сегодня расчет по emi_debug_timing.pdf Там он ведётся для стратикса. По аналогичной методе, но с некоторыми допущениями (там параметры для DDR II и они не совсем совпадают для QDR, приходилось искать аналоги) я спокойно получил 200 МГц. Это в худшем случае cranky.gif . Вобщем желаемые 250 - это жизнь покажет.

В системе будет ещё синтезатор частоты. Свободные пины остались, можно их заюзать. Вот думаю может PLL внутри альтеры не использовать из-за большого джиттера? Это улучшит шансы на хороший исход.

Тут экселевский файлик для расчета. Может кому понадобится ...
Нажмите для просмотра прикрепленного файла


У Вас получилось на 200 МГц на железе?
tema-electric
Железа пока нет, в процессе ... laughing.gif Вот заранее интересуюсь возможными проблемами. Мне 250 МГц надо.
Контроллера там по сути и нет никакого ... если только привести этот QDR к стандартной Avalon или как там она эта шина у NIOS. Но NIOS у меня не будет и Avalon, следовательно, ...

Из рекомендаций видел у альтеры, что питание 1.8 В для QDR II лучше в плане помехозащищенности ну и наверное быстродействия. А 1.5 В - уменьшается эмиссия ЭМП и жрет она меньше. Мне к потреблению не критично.
axalay
Цитата(tema-electric @ Aug 11 2010, 15:42) *
Железа пока нет, в процессе ... laughing.gif Вот заранее интересуюсь возможными проблемами. Мне 250 МГц надо.
Контроллера там по сути и нет никакого ... если только привести этот QDR к стандартной Avalon или как там она эта шина у NIOS. Но NIOS у меня не будет и Avalon, следовательно, ...

Из рекомендаций видел у альтеры, что питание 1.8 В для QDR II лучше в плане помехозащищенности ну и наверное быстродействия. А 1.5 В - уменьшается эмиссия ЭМП и жрет она меньше. Мне к потреблению не критично.


На третьем Spartan я использовал данный тип памяти на 125 МГц. Больше и не надо было. При этом память была 36-битной. И никаких строгих распиновок не использовалось-пины назначались по удобству разводки даже в разные банки. Сейчас бы мне знать что 18-битная запустится на 200 мегагерцах на третьем Cyclone (по быстродействию можно и самую скорострельную) и начать делать железо. Если же твердо народ скажет, что невозможно на циклоне такое, то схемотехнику менять. Вот...
tema-electric
Цитата(axalay @ Aug 11 2010, 18:52) *
Если же твердо народ скажет, что невозможно на циклоне такое, то схемотехнику менять. Вот...


У меня 2 чипа х36. Шина входных данных объединена, а выходных - нет, т.е. 72 бита ...И я хочу 250 smile.gif. Тут заморочки с клоками ... и со всем на свете. wassat.gif

А на счет повышения быстродействия QDR в принципе логично. Поставить пошустрей, чтобы компенсировать тормозные характеристики ПЛИС. У меня правда особо не разгонишься ... 250 МГц уже куплены, а предел 300 МГц. Отыграть можно только 100 пс. Либо надеятся, что эти худшие характеристики наступают при высоких температурах.

Но я наверное ещё буду заводить тактовый с внешнего синтезатора для этой QDR. Уж слишком большой джиттер у FPGAшного PLL. А это всё сказывается ...

Плюс развязку по постоянке надо хорошо продумать.
DmitryR
Цитата(axalay @ Aug 11 2010, 15:52) *
Сейчас бы мне знать что 18-битная запустится на 200 мегагерцах на третьем Cyclone (по быстродействию можно и самую скорострельную) и начать делать железо.

На 200 C6 может быть и заработает, если хорошенько повозится. Но закладываться на это, не сделав модели и не протестировав я бы не стал.

Цитата(tema-electric @ Aug 11 2010, 16:12) *
У меня 2 чипа х36. Шина входных данных объединена, а выходных - нет, т.е. 72 бита ...И я хочу 250 smile.gif. Тут заморочки с клоками ... и со всем на свете. wassat.gif

Основная заморочка тут с тем, что:
1. У вас не 72 бита, а 108 (2*36 чтения плюс общая записи). А у Cyclone III максимум одна x36 группа для подключения памяти даже в корпусе о 780 ногах.
2. Я не уверен, что объединенная шина записи (то есть высокоскоростной драйвер на две нагрузки) покажет хоть сколько-нибудь достойное быстродействие. Легко определяется с помощью HyperLynx.

Ну и конечно если Altera смогла DDR2 сделать только на 200 - вы вряд ли сделаете 250, даже с учетом однонаправленных шин. Потому что хоть контроллер там и попроще - захват данных похоже устроен, а достижимая скорость определяется именно этим местом.
axalay
Цитата(DmitryR @ Aug 11 2010, 17:00) *
На 200 C6 может быть и заработает, если хорошенько повозится. Но закладываться на это, не сделам модели и не протестировав я бы не стал.

Вы имеете ввиду спартан6? на нем я уверен что сто пудов запустится. А вопрос то про Циклон3
DmitryR
Я имею в виду speedgrade С6.
tema-electric
Цитата(DmitryR @ Aug 11 2010, 20:08) *
Основная заморочка тут с тем, что:
1. У вас на 72 бита, а 108 (2*36 чтения плюс общая записи). А у Cyclone III максимум одна x36 группа для подключения памяти даже в корпусе о 780 ногах.
2. Я не уверен, что объединенная шина записи (то есть высокоскоростной драйвер на две нагрузки) покажет хоть сколько-нибудь достойное быстродействие. Легко определяется с помощью HyperLynx.


И что страшного в одной х36 группе в двух банках? cranky.gif Не панимать ... Там все равно на каждую группу из 18 линий будет приходится по одному CQ. Итого 4 CQ сигнала. Дальше после защелкивани данных DDR регистрами устаканиваем это всё до системного клока и радуемся.

По крайней мере на DDR x16 я не испытывал дискомфорт от двух чипов. Данные из них читались синхронно, и рефрешились они синхронно. Всё работало.

В HL я уже потестил на 250 МГц (500 Mbit/s). Основным камнем преткновения станут не драйвера а кроссы ИМХО. Шину сделал шлейфовую с ответвлениями. Но вчера нашел мануал по трассировки. Там предлагается древовидный вариант. Пока обдумываю, стоит оно того или нет. Паять BGA с двух сторон я не умею. Требование к длине ветвей не более 13 мм. А у меня шлейфовые ответвления не больше 7 мм.

Сырая предварительная версия для оценки трассируемости вообще всего этого дела. Глазки ... Правда не совсем понимаю пока как для маски глазка выставить временные параметры. Наверное по tsu, th для чипа.

Нажмите для просмотра прикрепленного файла Нажмите для просмотра прикрепленного файла



Нажмите для просмотра прикрепленного файла
DmitryR
Цитата(tema-electric @ Aug 11 2010, 18:15) *
И что страшного в одной х36 группе в двух банках? cranky.gif Не панимать ...

Плохо, что вы не понимать, а также даташит не читать. Там всего одна группа x36, не в двух банках, а на весь чип. А вам таких групп надо три.
tema-electric
Цитата(DmitryR @ Aug 12 2010, 01:17) *
Плохо, что вы не понимать, а также даташит не читать. Там всего одна группа x36, не в двух банках, а на весь чип. А вам таких групп надо три.


Не верю и не Станиславский. Ткните в конкретное предложение ....

Кроме того объясните чисто физические препятствия этому ... у чипа. Если не найдёте такое предложение ...

Заголовок таблицы: Table 9–4. Cyclone III DQS and DQ Bus Mode Support for Each Side of the Device Note (1)

Согласно этой таблице кстати у меня 4 группы х36 ...

На каждой стороне.
DmitryR
Не знаю, в какой документ вы смотрите. Я смотрю Cyclone3 Handbook, table 8-1 и 8-2. Вижу теперь правда что и я был неправ - в больших корпусах одна x36 группа на сторону, а не на чип. Но вас это спасет вряд ли: присоединить чипы получится, но так как шины будут размазаны по трем сторонам - будет очень проблематично расположить внутри контроллер, да еще и чтобы он быстро работал.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.