Serhiy_UA 1 4 октября, 2011 Опубликовано 4 октября, 2011 · Жалоба Всем привет! Разложил и провел трассы первых восьми цепей DQ между FPGA планкой DDR2 SODIMM, так, чтобы они не пересекались и лежали на одном слое. Теперь надо выровнять их длины в заданном диапазоне. Вопросы такие: 1.Как определить максимальную длину из восьми цепей в группе DQ? Или просто длину трассы… 2.Как подогнать длины остальных цепей DQ под максимальную трассу? 3.Если делаю все не так, то как это делать правильно? Методология и прочее... Подскажите, что почитать, может что есть русскоязычное, понятное... Пока что тренируюсь с SODIMM, но потом придется все делать по взрослому…. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
peshkoff 24 4 октября, 2011 Опубликовано 4 октября, 2011 · Жалоба если не заморачиваться с правилами, то сперва в каждой паре выровнять длину проводников внутри пар на PCB панели показывает длину разведенной цепи. клавиши T-R, выбираем короткую цепь, затем TAB, в появившемся окне выбираем таргетинг from Net, выбираем цепь-к которой стремимся, она в самом верху Amplitude Increment 0.05mm, Gap Increment 0.05mm ОК и двигаем мышкой по цепи клавишами "," "." "3" "4" меняем gap и амплитуду, "1" "2" меняет радиус скругления. Там же на PCB панели в разделе diff pairs вычислить какая пара длинее и по ней ровнять клавиши T-I, остальное также Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uladzimir 62 4 октября, 2011 Опубликовано 4 октября, 2011 · Жалоба Всем привет! Разложил и провел трассы первых восьми цепей DQ между FPGA планкой DDR2 SODIMM, так, чтобы они не пересекались и лежали на одном слое. Теперь надо выровнять их длины в заданном диапазоне. Вопросы такие: 1.Как определить максимальную длину из восьми цепей в группе DQ? Или просто длину трассы… 2.Как подогнать длины остальных цепей DQ под максимальную трассу? 3.Если делаю все не так, то как это делать правильно? Методология и прочее... Подскажите, что почитать, может что есть русскоязычное, понятное... Пока что тренируюсь с SODIMM, но потом придется все делать по взрослому…. 1. Читаем PDF и прочие документы и оттуда определяем. Алтиум тут не причем 2 Разводим все, ищем самую длинную, укорачиваем ее как можно короче, перебрасываем в банках, если доступно. И так по циклу, пока укоротить нельзя 3. Interactive net tuning удлинием остальные трассы, до значения максимально длинного, не укорачиваемого Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex Ko 3 4 октября, 2011 Опубликовано 4 октября, 2011 · Жалоба Я делаю иначе. Объединяем выравниваемые цепи в класс (это можно сделать ещё на схеме, а можно и на плате, но в последнем случае при обновлении платы из схемы классы будут удалятся). В редакторе плат открываем панель PCB, сверху выбираем Nets. В первом сверху окошке видны Классы цепей, выделяем нужный. В следующем окошке увидите цепи, принадлежащие этому классу, вместе с их длинами (разведёнными и неразведёнными частями). Упорядочиваем цепи по длинам, и легко видим самую длинную цепь. Дальше я ввожу правило для длин цепей данного класса - не боле максимальной, не менее максимальной минус точность выравнивания). Это не обязательно, но сильно упрощает последующе выравнивание. Далее - как предлагает Предыдущий оратор, при этом при наглядно видим, попали или ещё нет в заданный интервал (всё излагается для одиночных, не дифференциальных цепей. Для диф. цепей в последних версиях АДа тоже появилась возможность выравнивания, но я пока не пробовал). Удобно начинать с самой короткой цепи. Вообще-то в АД есть механизм автовыравнивания, но мне не удалось его сколько-нибудь эффективно задействовать. Следует учесть, что длина цепей не учитывает переходов между слоями, так что желательно иметь одинаковое их количество во всех цепях, или как-то учитывать (создавать подклассы, например).. Строго говоря, задержка на единицу длины в разных слоях (например, внешнем и внутреннем) не одинакова (зависит от эффективной диэлектрической проницаемости для линии), и для больой точости выравнивания это тоже надо учитывать (один заказчик меня принудил к этому, это возможо, хотя и геморройно). Вот, как-то так.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uladzimir 62 4 октября, 2011 Опубликовано 4 октября, 2011 · Жалоба Это тот же принцип. Подробностей я не писал. Геморроя много. И полный учет длин, включая ПО уже в Excell как-то считал Из нового-- там только дифпары змеями водить можно-- а так все через руки Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serhiy_UA 1 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба к peshkoff, Спасибо за разъяснение, стало гораздо понятней! Все удобно и продуманно, просто респект AD! Только не понял почему "...сперва в каждой паре выровнять длину проводников внутри пар", может это о диф.парах, а не о восьми цепях DQ-группы? к Alex Ko, тоже спасибо! С объединением в классы в схеме еще не разобрался, пока сложно, но преимущество видно. Для цепей шириной в W, Altera рекомендует зазоры в 3W между цепями DQ в группе, зазоры 6W между самими группами DQ, зазоры 8W (здесь могу ошибаться) между адресными шинами и СК/СK#, и пр. То есть все зазоры разные. Это как-то поддается правилам и классам, или все так сложно, что проще следить за зазорами вручную? к Владимир, спасибо! Методология проясняется... Не совсем понятно "...включая ПО уже в Excell как-то считал", зачем задействовать Excell? Еще хотел уточнить, 1. Как быть с незадействованными выводами BGA, слышал мнение, что к ним желательно подключать короткие стринги через Fanout, то технологическим соображениям… 2. Имеет ли смысл утолщать проводники за пределами BGA корпусов? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uladzimir 62 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба "...сперва в каждой паре выровнять длину проводников внутри пар", может это о диф.парах, о дифпарах Это как-то поддается правилам и классам, или все так сложно, что проще следить за зазорами вручную? Можно, но правила лучше Не совсем понятно "...включая ПО уже в Excell как-то считал", зачем задействовать Excell? Длину переходных учитывать, длину резисторов учитывать, задержку внутри микросхемы учитывать Еще хотел уточнить, 1. Как быть с незадействованными выводами BGA, слышал мнение, что к ним желательно подключать короткие стринги через Fanout, то технологическим соображениям… 2. Имеет ли смысл утолщать проводники за пределами BGA корпусов? 1. Читать PDF. Много где можно на землю посадить 2. Нет. Класс платы не уменьшится. Исключение наоборот-- если есть сужение под BGA Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serhiy_UA 1 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба Еще вопрос по поводу одного из основных требований, которое звучит так «All signals within a given byte lane should be routed on the same critical layer with the same via count». То есть требуется, чтобы сигналы одной группы DQ проходили по одним и тем же слоям и имели одинаковое количество переходных отверстий. Можно ли нарушить описанное выше требование и на сколько? Прошу поделиться опытом и соображениями по этому поводу… В приложении источник этого требования. Freescale Semiconductor. Application Note AN2910 Rev. 2, 03/2007 «Hardware and Layout Design Considerations for DDR2 SDRAM» Memory Interfaces Table 1. DDR2 Designer ’s Checklist. Item 28, p.4. Может есть и другие AppNote, в частости для DDR2 SODIMM, поделитесь... AN2910.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rodavion 0 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба Еще вопрос по поводу одного из основных требований, которое звучит так «All signals within a given byte lane should be routed on the same critical layer with the same via count». То есть требуется, чтобы сигналы одной группы DQ проходили по одним и тем же слоям и имели одинаковое количество переходных отверстий. Можно ли нарушить описанное выше требование и на сколько? Прошу поделиться опытом и соображениями по этому поводу… Сигналы одной группы DQ могут проходить в разных слоях, если при этом обеспечивается одинаковое волновое сопротивление проводников - 50 Ом, количество переходных отверстий желательно иметь одинаковым и, естественно, нужно выравнить длину проводников с требуемой точностью Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serhiy_UA 1 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба Сигналы одной группы DQ могут проходить в разных слоях, если при этом обеспечивается одинаковое волновое сопротивление проводников - 50 Ом, количество переходных отверстий желательно иметь одинаковым и, естественно, нужно выравнить длину проводников с требуемой точностью Пытаюсь сделать МПП на 4-х слоях. Внутри GND и питание, снаружи сигнальные цепи. ПЛИС на BGA 484 вывода и рядом DDR2 SODIMM, оба на верхней стороне. В первом приближении что-то получается, но… Столкнулся с тем, что приходится подводить к SODIMM цепи из какой-то DQ группы так, что часть цепей пойдет по верхнему слою, а часть с заходом на нижний слой, и с возвратом на верхний. Тогда число межслойных переходов для разных цепей в той же группе будет разным, т.е нарушение требований, у одних цепей нет переходов, а в других аж два… Или все цепи пускать с заходом на нижний слой?... Проводники выравниваются змейками, это безусловно. Но, но как быть с волновым сопротивлением в 50 Ом?... Или это не столь существенно, главное выдержать зазоры между печатными проводниками и толщину между слоями, а там все получится?... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rodavion 0 11 октября, 2011 Опубликовано 11 октября, 2011 (изменено) · Жалоба Прежде чем браться за подобную работу, необходимо иметь хотя бы базовое представление, что такое линия передачи в ПП, и как влияет волновое сопротивление линии передачи на на передачу сигнала. Цитата: "Все высокоскоростные цифровые узлы, выполненные на платах с размерами больше пространственного разрешения и работающие на частотах более 100 МГц, должны быть выполнены на платах с контролируемым волновым сопротивлением", Л.Н. Кечиев, "Проектирование ПП для цифровой быстродействующей аппаратуры". Очень рекомендую этот труд изучить. Или труд Г. Джонсон, М. Грэхем "Высокоскоростная передача цифровых данных, начальный курс черной магии". Вкратце: волновое сопротивление необходимо контролировать. Линии передачи данных должны проходить над земляным слоем, а не слоем питания. Адеса можно и над питанием. Количество переходов по линиям передачи данных должно быть одинаковым. Если у вас 4-х слойная плата толщиной 1,5 мм, то для получения волнового сопротивления проводника в 50 Ом ширина проводника должна быть около 1мм - Что бы у вас получилось работоспособная плата, количество слоев должно быть минимум 8 Изменено 11 октября, 2011 пользователем Rodavion Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uree 1 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба Так, как Вы пишите, так ни одна плата работать в принципе не должна... Без перегибов. Все работает на 4-х слойках. И водить можно и над землей и над питанием, главное не должно быть разрывов плйэнов под трассами. На 4-х слойке, при толщине препрега 0.10-0.12мм ширина трассы получается в районе 0.12-0.15мм для 50 Ом импеданса. С выравниванием кол-ва переходных на ДДР2 тоже можно еще не заморачиваться, 2 на одной и ноль на другой цепи - работать будет, проверено. В общем НЕ читайте Кечиева... Либо читайте, но думая. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
peshkoff 24 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба читать надо, только нужно разобраться, что такое "пространственное разрешение" на длине 1 см у ddr2 никакое согласование нафиг не нужно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rodavion 0 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба читать надо, только нужно разобраться, что такое "пространственное разрешение" на длине 1 см у ddr2 никакое согласование нафиг не нужно на длине 1 см у ddr2 и как вы ТАКУЮ длину сделаете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kilio 0 11 октября, 2011 Опубликовано 11 октября, 2011 · Жалоба количество слоев должно быть минимум 8 Ну, это вы погорячились. Не стоит пугать человека, если соблюдать некоторые правила все не так уж сложно. 1. Не допускать разрывов PLANE под сигнальными проводниками. 2.CLOCK рекомендуется разводить на 1 слое без переходов. Если без перехода не обошлось шунтируйте переходными отверстиями возвратные токи, или емкостями около места перехода. 3. Ширину проводника выбрать исходя из возможной плотности и постараться не менять ее. 4.Выбрать толщину препрега исходя из требований на волновое сопротивление проводников. 5.Выдержать зазоры между сигнальными шинами, дифференциальными парами, и внутри них. 6.Выравнять длины шин, пар в зависимости от топологии. 7. Все что разведете загрузите в Hyper Linx 8. Исправьте критичные места. Для расчета ширины проводника удобно использовать Si9000 от Polar. Змейка на волновое сопротивление не влияет. По внимательнее к возвратным токам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться