yes 7 21 апреля, 2016 Опубликовано 21 апреля, 2016 · Жалоба случилось так, что мне нужно "верифицировать" разводку i.mx6-DDR3 причем времени нет, ну и сказать, что мне нужно время разбираться - не могу (осваивать hyperlynx или читать "черную магию" придется позже) форум я почитал, много вопросов похожие, но квалификации у меня для понимания недостаточно разводка выполнена по рекомендациям в i.MX 6 Series Layout Recommendations (IMX6DQ6SDLHDG.pdf) и в какой-то (достаточно слабой, по моему) мере копирует SABRE то есть констрейны в виде: длина дорожек и одинаковое кол-во via 4 чипа ddr3 (LVDDR3-1066 - хотелось бы), два на одной стороне, два на другой T-образные адрес/управление байты выровнены внутри, но не между собой (то есть предполагается read/write leveling) разводка в PADS, 12 слоев ----------------------- что мне не нравится - диференциальные и синглэндные дорожки одинаковой толщины - то есть импеданс ~50 Ом на топе-ботоме, и ~40 Ом на внутренних. уменьшать ширину дорожек (как бы) нельзя по тех. нормам нарушено правило в прохождении группы сигналов в одном слое (вообще непонятно - как его исполнить при наличии микросхем на разных сторонах), то есть количество via в группе одинаковое, но есть ситуации, когда "плечи" в via разные - то есть, сигнал (тип подключения Т, на все ddr : адреса, например) идет, например, по 3-му слою, а потом уходит на топ (2 перехода) и ботом (9 переходов) к DDR чипам нужно ли это учитывать при выравнивании длины? PADS не учитывает via/переходы, как этому научить Hyperlynx(?) я не понял можно это оставить? если нет - как пересчитать "часть" via в длину дорожки? --------------------- я предполагаю, что скорость распространения сигналов одинакова (не важно какая, например, 7пс на мм) поэтому собираюсь просто проверить длину проводников какие-то внутренние задержки чипов i.mx|ddr хочу считать выровненными расстановка компонентов, терминаторов и "общая" трассировка соответствуют SABRE -------------------- что не так? что еще можно/нужно сделать? в условиях ограниченного времени (1-2 дня)? ну то есть отказ от производства платы очень не желателен и должен быть сильно аргументирован, а производство неработоспособной платы еще хуже :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Sergey_ 17 21 апреля, 2016 Опубликовано 21 апреля, 2016 · Жалоба Вообще 533МГц позволяют не мало в плане разброса длин. Если плата соответствует рекомендациям, то почему вы волнуетесь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 21 апреля, 2016 Опубликовано 21 апреля, 2016 · Жалоба не имею опыта разработки плат с DDR3. да и вообще - вопросы про плату мне случайно попали, не моя область (была). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Sergey_ 17 21 апреля, 2016 Опубликовано 21 апреля, 2016 · Жалоба ИМХО, самое критичное - длины. Производитель задержки внутри чипа не сообщает, а по сему требует от нас достаточно жесткого соблюдения равенства длин. Ну и границы плейнов не пересекать. Из своего опыта работы с iMX, два чипа DDR3-800 - завелось сразу, делал по рекомендациям. Большей частоты не требовалось. Также из своего опыта - раньше на бумажке в табличке проверял длины.. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ant_m 0 22 апреля, 2016 Опубликовано 22 апреля, 2016 · Жалоба что мне не нравится - диференциальные и синглэндные дорожки одинаковой толщины - то есть импеданс ~50 Ом на топе-ботоме, и ~40 Ом на внутренних. уменьшать ширину дорожек (как бы) нельзя по тех. нормам Есть документы типа jedec или микрон в которых для борьбы с выбросом при переключении рекомендуют понижать импеданс трасс до 40-45 Ом. Так что это нормально. А вот импеданс разный это хуже. Но, опять же - не так уж и страшно. нарушено правило в прохождении группы сигналов в одном слое (вообще непонятно - как его исполнить при наличии микросхем на разных сторонах), то есть количество via в группе одинаковое, но есть ситуации, когда "плечи" в via разные - то есть, сигнал (тип подключения Т, на все ddr : адреса, например) идет, например, по 3-му слою, а потом уходит на топ (2 перехода) и ботом (9 переходов) к DDR чипам нужно ли это учитывать при выравнивании длины? Если это только адресные, то можно до определенной меры "забить" - там скорости ниже, чем на данных. А вообще... с точки зрения бюрократии (и перекладывания ответственности) Попросите тополога предоставить вам документ в котором считается временной бюджет. Для проверки. Если такого документа нет, то попросите обосновать руководствуясь чем он этот кусок трассировал. Если это некий app note, то спрашивайте почему были сделаны отклонения от app note и чем они обоснованы (временной бюджет?:)) С зазорами между трассами примерно также требовать обоснование. С землями и питанием проще - можно на глазок оценить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardJoker 12 22 апреля, 2016 Опубликовано 22 апреля, 2016 · Жалоба случилось так, что мне нужно "верифицировать" разводку i.mx6-DDR3 причем времени нет, ну и сказать, что мне нужно время разбираться - не могу (осваивать hyperlynx или читать "черную магию" придется позже) 4 чипа ddr3 (LVDDR3-1066 - хотелось бы), два на одной стороне, два на другой T-образные адрес/управление байты выровнены внутри, но не между собой (то есть предполагается read/write leveling) разводка в PADS, 12 слоев Чипы по двум сторонам - обязательно? И зачем T-звено для DDR3? Почему нельзя адреса обойти последовательно? Примерно такую же задачу, но для двух каналов DDR3 решил за счет 16-ти слоев. Все сигналы внутри платы с обязательной парой опорных. Получилось надежно и компактно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
PCBtech 0 23 апреля, 2016 Опубликовано 23 апреля, 2016 · Жалоба случилось так, что мне нужно "верифицировать" разводку i.mx6-DDR3 причем времени нет, ну и сказать, что мне нужно время разбираться - не могу (осваивать hyperlynx или читать "черную магию" придется позже) Можем верифицировать ваш проект DDR, стоимость работы можем включить в стоимость заказа у нас печатной платы. На входе - схема, список критических цепей, app.note от производителя, номиналы питаний, токи потребления основных микросхем, и проект. На выходе получите результаты моделирования и рекомендации по изменению полигонов, фильтрующих конденсаторов по питанию, трассировки сигналов, возможно, указание на ошибки в схемотехнике. Моделирование выполняем в симуляторе Cadence Sigrity. Проект прошу экспортировать из Pads в ODB++ с именами цепей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
fill 2 26 апреля, 2016 Опубликовано 26 апреля, 2016 · Жалоба PADS не учитывает via/переходы, как этому научить Hyperlynx(?) я не понял Вот вам пример построение тестовой структуры (на два приемника) и как видите видна разница в сигнале на приемниках. В BoardSim плечи внутри via также учитываются автоматом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 26 апреля, 2016 Опубликовано 26 апреля, 2016 · Жалоба Вот вам пример построение тестовой структуры (на два приемника) и как видите видна разница в сигнале на приемниках. Спасибо. Я не успел разобраться в Hyperlynx-е, чтобы самому такое нарисовать - буду разбираться :) Можем верифицировать ваш проект DDR, хотелось бы самим научиться. просто неудачный скедьюл получился - вначале плата, а потом учиться :) тем более заказчик и производство у нас не "у нас" (это обязательное условие), поэтому могла бы быть только консультация но с этим проектом уже нет времени... Чипы по двум сторонам - обязательно? И зачем T-звено для DDR3? Почему нельзя адреса обойти последовательно? Примерно такую же задачу, но для двух каналов DDR3 решил за счет 16-ти слоев. Все сигналы внутри платы с обязательной парой опорных. Получилось надежно и компактно. чипы по 2м сторонам для экономии места. вроде никто не запрещает Т использовать. Fly-by это, как я понял, для облегчения жизни производителям линеек памяти. есть несколько реф. дизайнов с таким расположением (ну вернее они все копии с SABRE от Freescale), там 8 слоев. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardJoker 12 26 апреля, 2016 Опубликовано 26 апреля, 2016 · Жалоба чипы по 2м сторонам для экономии места. вроде никто не запрещает Т использовать. Fly-by это, как я понял, для облегчения жизни производителям линеек памяти. есть несколько реф. дизайнов с таким расположением (ну вернее они все копии с SABRE от Freescale), там 8 слоев. T-звено никто не запрещал, но это лишнее via и доп.отражения. Хорошие доки по DDRx, как не странно, можно найти у Марвела (DDR3 стр.50-69) Armada_510_Hardware_Design_Guide.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ant_m 0 27 апреля, 2016 Опубликовано 27 апреля, 2016 · Жалоба Еще в догонку, если используется leveling, то отследите чтобы 0 (или 7, не помню) бит в байте на контроллере приходил на соответствующий 0 (или 7) бит памяти. Он используется для калибровки. Подробней ищите в доках микрона. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 27 апреля, 2016 Опубликовано 27 апреля, 2016 · Жалоба спасибо, я тут распечатал длины дорожек (может кому-то такой скрипт для PADS ROUTERа нужен?) прошу прощения за занудство - взгляните - может нужно добавить по тактовым сигналам немного? там два тактовых, каждый ветвится на 2 микросхемы DDR (на топ и ботом) + терминатор в конце длина тактовых по 51мм а вот разброс по адресу/управлению из референса Clock (min) – 200, Clock (min) то есть я так понимаю, что CLOCK должен быть длиннее любого сигнала, причем может быть значительно длиннее Clock (min) – 200 - это -200, я понимаю 200милс, то есть почти на 5мм можно делать CLOCK длиннее (см ниже NCS, да и адреса впритык) ???? чтоб текстовым мусором не забивать, привожу некоторые цепи (с бОльшим разбросом) ------------------------------------------- NDQS0 : length 26.000000271 : vias 0 DQS0 : length 26.0000019709 : vias 0 DM0 : length 26.0000007543 : vias 2 DDR_D0 : length 26.0000003697 : vias 2 ... NDQS1 : length 19.8000012992 : vias 0 DQS1 : length 19.8000003624 : vias 0 DM1 : length 19.8000012685 : vias 2 DDR_D8 : length 19.8186688628 : vias 2 DDR_D9 : length 19.8000009505 : vias 2 .... DDR_D35 : length 26.0529192037 : vias 1 DDR_D36 : length 26.0529197279 : vias 2 DDR_D37 : length 26.052919264 : vias 3 ... NDQS6 : length 25.9771072989 : vias 0 DQS6 : length 26.00000036 : vias 0 DM6 : length 26.0504180314 : vias 2 то есть для байтов получается две группы задержек 19.8мм (для нечетных байтов) и 26мм (для четных) дифференциальность DQS*/NDQS* проверял глазами - ну вроде нормально ----------------------- для Т-образных цепей задержка 50мм --------- DDR_A4 U1801 -> VP23 -> VP22 -> U1301.P8 len: 50.0000007156 vias: 2 [2, 0, 0] U1801 -> VP23 -> VP22 -> U1402.P8 len: 50.0000010391 vias: 2 [2, 0, 0] U1801 -> VP23 -> VP24 -> U1401.P8 len: 50.0000014868 vias: 2 [2, 0, 0] U1801 -> VP23 -> VP24 -> U1403.P8 len: 50.0000019654 vias: 2 [2, 0, 0] --------- DDR_A5 U1801 -> VP20 -> VP19 -> U1401.P2 len: 50.000001154 vias: 1 [1, 0, 0] U1801 -> VP20 -> VP19 -> U1403.P2 len: 50.0000022204 vias: 1 [1, 0, 0] U1801 -> VP20 -> VP21 -> U1301.P2 len: 50.0000019209 vias: 1 [1, 0, 0] U1801 -> VP20 -> VP21 -> U1402.P2 len: 49.9746217884 vias: 1 [1, 0, 0] ... NCS U1801 -> VP68 -> VP67 -> U1401.L2 len: 51.005931392 vias: 1 [1, 0, 0] U1801 -> VP68 -> VP67 -> U1403.L2 len: 51.0073527482 vias: 1 [1, 0, 0] U1801 -> VP68 -> VP69 -> U1301.L2 len: 51.0104538445 vias: 1 [1, 0, 0] U1801 -> VP68 -> VP69 -> U1402.L2 len: 51.0059303684 vias: 1 [1, 0, 0] .... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Sergey_ 17 27 апреля, 2016 Опубликовано 27 апреля, 2016 · Жалоба Clock = 51мм? Тогда приемлемо, ИМХО. А наиболее точно скажет производитель, когда приведет внутренние задержки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба начал с гиперлинксом разбираться, вот просимулировал клок и адрес (Т-цепь) похоже на правду результат симуляции? ну и вопрос - вроде как разумно, адрес - задержка больше: на адресе 4 нагрузки висят, а на тактовом 2. но зачем тогда было требование разводить такт длиннее? причем максимальный разбег в 200мил эту задержку не компенсирует легенда - кружок и крестик - клок (дифференциальный) остальное - совпадающее - адрес Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Sergey_ 17 29 апреля, 2016 Опубликовано 29 апреля, 2016 · Жалоба Вы сами можете различить детали на картинке? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться