Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Virtex5 + DDR2 (чипы) правила разводки?
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Работаем с трассировкой
Obstinate
К Virtex5 подключены 4 чипа MT47H64M16HR. С правилами трассировки шыны данных вопросов нет, а вот как быть с шиной адреса и управляющими сигналами? Как правильно их развести?
VslavX
Цитата(Obstinate @ Jan 31 2009, 15:20) *
К Virtex5 подключены 4 чипа MT47H64M16HR. С правилами трассировки шыны данных вопросов нет, а вот как быть с шиной адреса и управляющими сигналами? Как правильно их развести?

Частота тактирования DDR какая ожидается? Полагаем, что DDR-2, значит от 200МГц. А тут уже надо смотреть какое окно обеспечивается для линий адреса/управляющих. Для 200+ МГц и 4-х чипов трассировка daisy-chain уже может не работать, скорее всего придется делать balanced-tree - когда цепь в опреленной точке разветвляется на две абсолютно симметричных ветви, а потом каждая ветвь также делится на две симметричных. Все это хорошо бы предварительно помоделировать в HyperLynx (там есть режимчик
специальный - в графическом редакторе накидать цепей). Для Virtex я трассировку не делал, но для ряда процессоров - приходилось, обычно выбирался вариант дерева - практически получалось все OK. Еще вариант - трассировать адреса/управляющие как удобно (кроме CKE) и использовать память в режиме 2T. Будет медленней работать, но с трассировкой работы поменьше - тем более в PCAD-е.
Obstinate
Примерно понял, вот тут на 7 стр. про “TREE” говорится как это должно примерно выглядеть. http://download.micron.com/pdf/technotes/ddr2/TN4720.pdf
А можно ли в спектре задать данные правила трассировки? или быстрее вручную будет сделать?
Uree
Да, деревом там удобней всего трассировать. Собственно по другому очень тяжело даже придумать. Полного дерева соблюдать тоже не обязательно, достаточно разветвить по центру. Просто скорость адресов/команд значительно меньше данных/клоков.
Вот как это может выглядеть:

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

Ну и вручную это будет конечно быстрее. Можно и в Спекктре, но все равно водить руками, ибо описывать КАК это должно лежать тяжело. А в ПКАДе достаточно быстро получается.
Obstinate
У Вас дерево имеет только одно разветвление, одна ветвь на 1 и 2 чип, вторая на 3 и 4. Получившиеся ветви не надо ещё разбивать?
Uree
Не надо.
Obstinate
Надо ли ещё равнять всю шину данных или выравнивание необходимо только в нутри каждого байта? И какой длинны должен быть клок? Равнять его по длинне шины адреса?
Uree
По рекомендациям - внутри байта. Но реально и равнять не надо. Если не делать там петель, а их тяжело сделать когда чипы рядом стоят, то разброс длин сам укладывается в допустимый. А клок желательно делать не короче самой длинной линии данных.
Obstinate
Цитата(Uree @ Feb 5 2009, 11:04) *
По рекомендациям - внутри байта. Но реально и равнять не надо. Если не делать там петель, а их тяжело сделать когда чипы рядом стоят, то разброс длин сам укладывается в допустимый. А клок желательно делать не короче самой длинной линии данных.

А какой допустимый разброс?
Uree
А вот не скажу точноsmile.gif Не помнюsmile.gif Но каждый производитель, который пишет на эту тему аппноты для своих чипов, указывает свои пожелания на этот счет. Исходите из длительности данных (2500 пс/бит для ДДР2-400) и задержки в линии передачи (~60 пс/см).
Obstinate
Что то у нас MIG такую ерунду нагенерил.... Можно ли вручную пересвопировать на плисине ноги шины адреса между собой и ноги шины данных (только внутри каждого слова разумеется)?а то мне уже и 6 сигнальных слоёв мало, все проводники к плисине както запутанно подключены.
bigor
Цитата(Obstinate @ Feb 5 2009, 21:16) *
Можно ли вручную пересвопировать на плисине ноги шины адреса между собой и ноги шины данных

Ну так на то она и ПЛИСина что бы ее свапить. ИМХО.
Только это на саму ПЛИСину надо смотреть. У нее контролер памяти интегрированый или Вы его сами строите?
avesat
Цитата(Obstinate @ Feb 5 2009, 11:36) *
А какой допустимый разброс?

ДДР 333 выравнивал так:
данные в пределах байта 100mils
остальное 1000mils
данные и адрес тоже 1000
клок 50mils

ДДР2 400
данные в пределах байта 80mils
остальное +/-400mils
данные и адрес тоже +/-400mils
клок 50mils

Неплохо SI по памяти описано в доке на ML561
h**p://www.xilinx.com/support/documentation/ml561.htm

Цитата(Obstinate @ Feb 5 2009, 21:16) *
Можно ли...

Нужно.

Цитата(bigor @ Feb 5 2009, 22:29) *
Только это на саму ПЛИСину надо смотреть. У нее контролер памяти интегрированый или Вы его сами строите?

В шестых спартанах обещают, пока хардварных контр. памяти нет у ксилинкса.
Obstinate
вот что получилось:
Нажмите для просмотра прикрепленного файла
RaaV
А можно увидеть всю плату? Желательно в Pcad2002, но и в 2006 сойдёт.
f0GgY
Цитата(avesat @ Feb 5 2009, 23:59) *
ДДР2 400
данные в пределах байта 80mils
остальное +/-400mils
данные и адрес тоже +/-400mils
клок 50mils

а для ддр2 667 каковы будут значения? )
в документе что Вы указали
Цитата
Неплохо SI по памяти описано в доке на ML561
h**p://www.xilinx.com/support/documentation/ml561.htm

вроде как не обнаружено...

unsure.gif
Obstinate
Цитата(RaaV @ Apr 22 2009, 15:30) *
А можно увидеть всю плату? Желательно в Pcad2002, но и в 2006 сойдёт.

Прикрепил лист принципиалкиНажмите для просмотра прикрепленного файла,
и кусок топологии платы, с плисиной и памятью (P-CAD2006).Нажмите для просмотра прикрепленного файла
MemoryTest
Цитата(Obstinate @ Aug 10 2009, 23:22) *
Прикрепил лист принципиалкиНажмите для просмотра прикрепленного файла,
и кусок топологии платы, с плисиной и памятью (P-CAD2006).Нажмите для просмотра прикрепленного файла


Приветствую.,
разводили вручную? или через спектру?
интересна стратегия do-файла для такой топологии шин адреса, управления, клоков.
И умеет ли так спектра вообще-)
smile.gif
Uree
Спекктра-то умеет, только описать все это руками трудно, быстрее получится сделать вручную.
Obstinate
Цитата(MemoryTest @ Sep 22 2009, 17:23) *
Приветствую.,
разводили вручную? или через спектру?
интересна стратегия do-файла для такой топологии шин адреса, управления, клоков.
И умеет ли так спектра вообще-)
smile.gif

В ручную. Первый раз конечно сложно, многое не знал про то как надо разводить эти чипы, теперь уже не страшно smile.gif .
magic
Цитата(Uree @ Feb 5 2009, 13:43) *
А вот не скажу точноsmile.gif Не помнюsmile.gif Но каждый производитель, который пишет на эту тему аппноты для своих чипов, указывает свои пожелания на этот счет. Исходите из длительности данных (2500 пс/бит для ДДР2-400) и задержки в линии передачи (~60 пс/см).

задержки на 10мм на плате из FR4 составляет 55-72пс в зависимости от того на каких слоях трассы(внутренних или внешних)
juvf
Что нужно выравнивать при разводке DDR2?
На рисунке алгоритм трассировки адресной шины. Понятно что, например, для цепи A0 длины дорожек TL2+TL3 и TL4+TL5 должны быть выравнены для каждой из 4-х микросхем. Но нужно ли выравнивать дорожки TL2+TL3 для цепи А0 и для цепи А1 между собой? Нужно ли выравнивать TL1 и TL6 между цепями шины адреса? Есть пример готовой платы. В ней петлями лежит дифпара клоков от проца до точки разветвления. На что равняться при выравнивании клоков?
vladec
У Тексаса есть хорошее руководство по разводке DDR2 применительно к сигнальникам, там есть все требуемые нормы. Поищите документ spraam1b.pdf на сайте www.ti.com.
juvf
Цитата(vladec @ Aug 5 2010, 11:47) *
У Тексаса есть хорошее руководство по разводке DDR2 применительно к сигнальникам, там есть все требуемые нормы. Поищите документ spraam1b.pdf на сайте www.ti.com.

Не нашел я на ТИ spraam1b. Зато нашел другие доки spraaa9c.pdf и spraac5g.pdf. А так же нашел хорошую доку по ДДР2 на www.altera.com - emi_plan_board.pdf В ней все рекомендации и все правила чётко описанны.
vicnic
Цитата(juvf @ Aug 10 2010, 08:58) *
Не нашел я на ТИ spraam1b. Зато нашел другие доки spraaa9c.pdf и spraac5g.pdf. А так же нашел хорошую доку по ДДР2 на www.altera.com - emi_plan_board.pdf В ней все рекомендации и все правила чётко описанны.

По TI - искать тут
mikad
Уважаемые, а как вы относитесь к тому, чтобы сделать разводку шины адреса в разных слоях, но с соблюдением импеданса, и с учётом длин трасс, расположенных в разных слоях ?
vicnic
Цитата(mikad @ Jan 12 2011, 15:27) *
Уважаемые, а как вы относитесь к тому, чтобы сделать разводку шины адреса в разных слоях, но с соблюдением импеданса, и с учётом длин трасс, расположенных в разных слоях ?

Я нормально отношусь. Если приоритет по сопротивлениям, а требования по слоям, расположению компонентов и габариты не позволяют . - то буду считать и разводить в разных слоях. Но обычно можно договориться с разработчиками по внесению изменений, чтобы выполнить разводку в одном-двух слоях с одинаковыми параметрами (ширина, зазоры).
Ant_m
Цитата(mikad @ Jan 12 2011, 15:27) *
Уважаемые, а как вы относитесь к тому, чтобы сделать разводку шины адреса в разных слоях, но с соблюдением импеданса, и с учётом длин трасс, расположенных в разных слоях ?

Это уменьшит перекрестные помехи между соседними параллельными проводниками (если ширину между проводниками зажимать не будете). Так что, только за.
mikad
Цитата(vicnic @ Jan 12 2011, 15:33) *
Я нормально отношусь. Если приоритет по сопротивлениям, а требования по слоям, расположению компонентов и габариты не позволяют . - то буду считать и разводить в разных слоях. Но обычно можно договориться с разработчиками по внесению изменений, чтобы выполнить разводку в одном-двух слоях с одинаковыми параметрами (ширина, зазоры).

Я немного конкретизирую, память QDR2(4 микросхемы, объединённые по две ,с одним адресным пространством), частота 200 МГрц по обоим фронтам. Шины деляться по следующим параметрам:
-Данные- клок на запись
-Чтение данных -клок на чтение
-Шина адреса - клок clc. +WR1 и RD1
Изначально планировали сделать Данные по чтению и по записи в одном слое, но так как в FPGA они подключены каждый к своим группам разводить в одном слое не удобно.
Поэтому получилось 4 слоя(две группы данных на микросхему) + пятый для адреса и спец сигналов, но адрес тоже ведётся с трудом. 22 разряда.
Зазоры стараюсь соблюдать из соображений 3*ширину трассы, кроме мест где расположены VIA,
Так что, если забить на разделение по слоям, то всё уместится хорошо. Но во всех китах, что я видел есть чёткое разделение по слоям , для адреса и данных. Хотя по физическим параметрам (импеданс) слои идентичные.

P.S. А что значит договорится с разработчиком, если он определил тип памяти, то разрядность шин уже не изменится.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.