Jump to content

    
Sign in to follow this  
koluna

Трассировка SDRAM

Recommended Posts

Здравствуйте!

 

Прошу покритиковать, выслушаю конкретные рекомендации.

 

САПР - OrCAD.

ПП - 4 слоя (внутренние слои - общая цепь и питание +3.3 В, на рисунке не показаны).

Дорожки - 8 мил.

Дорожки цепей питания и общей - 11 мил.

Зазоры - 8 мил.

Трасировка шины данных - точка-точка, шины адреса и линий управления - Т-образная.

 

SDRAM - MT48LC16M16A2P-75IT.

МК - AT91SAM9XE512-QU.

 

Хотелось бы как-нибудь обжать трассировку памяти и микроконтроллера, чтобы меньше места она занимала.

Последовательные резисторы и терминирующие резисторы в цепи МК-память пока не поставил.

Насколько это принципиально? Как зависит от частоты и длины трасс необходимость их присутствия?

Рядом с МС памяти - электролиты 10 мкФ. Нормально ли я их расположил с точки зрения выполняемых ими функций?

 

Благодарю заранее!

post-24061-1272984639_thumb.jpg

Memory___SDRAM.pdf

Share this post


Link to post
Share on other sites

Подключение земли у 28-го вывода правой СДРАМины выполнено в стиле "ужас-ужас". Да, и обязательно ли было все конденсаторы ставить на BOT'е, когда TOP свободен практически? Плата, как я вижу, не плотная, обычно в таких случаях я стараюсь использовать только одну сторону под компоненты - так удобнее и при ручном, и при автоматизированном монтаже.

 

Ну и последний штрих - внизу справа у микросхемы в SOIC8 (по всей видимости это 24xx) очень некрасиво соединены выводы прямо через центры площадок.

Share this post


Link to post
Share on other sites

иногда проводники ведут от пина к пину, не допуская тобразных разветвлений и на сдраме конденсаторов помоему больше.

Share this post


Link to post
Share on other sites

про 28 ногу провой sdram согласен с aaarrr, лучше сделать как у левой. Кашерность T-соединения лучше промоделировать в гиперлинксе, у оркада вроде есть туда экспорт. Важно: правильный стэк печатной платы, а именно расстояние от слоев разводки до слоя земли/питания для обеспечения целостности сигналов и импедансов. Для ваших ширин (8mil) 0.178мм даст примерно 60 ом, что вполне допустимо, 0.127мм - 50ом, что "типа идеально". Общюю необходимую толщину платы подгоняете толщиной core (между двумя внутренними слоями).

последовательный резистор в цепи клоков - обязателен, в остальных - "не повредит" - точно. И еще, для полного счастья зазор от линии клоков до соседних делается 2x от ширины проводника - для уменьшения crosstalk от соседей.

 

В целом, если первый раз - очень неплохо.

Share this post


Link to post
Share on other sites
"Обжать" трассировку, сдвинув правый (рис) корпус SDRAM влево убрав линию переходных отв.между корпусами. К примеру http://www.mentorel.ru/images/sbc-9263t_big.jpg

 

в вашем примере технологические нормы гораздо жестче, как минимум 5mil/5mil

Share this post


Link to post
Share on other sites

Нормы проектирования здесь не причем... Правая сторона ARMа (рис) так и просится в разводку не через множественные-лишние переходные, а именно сдвинув SDRAM влево. Сразу ложатся на "правильной" стороне конденсаторы по питанию памяти. Конденсаторы по питанию ARMа тоже не на месте...спрашивается: зачем питание проца и граунд рядом?!...если кондер по питанию имеет "СВОЮ" землю?!

Share this post


Link to post
Share on other sites
про 28 ногу провой sdram согласен с aaarrr, лучше сделать как у левой. Кашерность T-соединения лучше промоделировать в гиперлинксе, у оркада вроде есть туда экспорт.

 

Не те здесь еще скорости, чтоб без моделирования не работало. Они даже на обычном ДДРе еще не будут "теми", так что можно не напрягаться.

 

Для ваших ширин (8mil) 0.178мм даст примерно 60 ом, что вполне допустимо, 0.127мм - 50ом, что "типа идеально".

 

Что-то Вы здесь не то насчитали. Для начала 8мил равно не 0.178мм, а 0.203мм. Во-вторых уменьшение ширины трассы при неизменном стэке работает с точностью до наоборот - уменьшая ширину увеличиваем импеданс трассы, а у Вас он почему-то уменьшается(кстати поэтому питания лучше делать как можно шире). В-третьих 50 Ом совсем и не требуется для СДРАМа, это строгое требование для ДДР2, причем уже для быстрых. А здесь 55-65 Ом обычно применяется.

 

Правая сторона ARMа (рис) так и просится в разводку не через множественные-лишние переходные, а именно сдвинув SDRAM влево

 

Ну просится, да. Распиновка явно рассчитана на последовательную трассировку шины адресов. Но человек принципиально делал Т-образную. А я советуя вначале понятия не имел о распиновке проца:) А обычно встречающаяся распиновка предполагает именно Т-трассировку адресов. Теперь тоже рекомендовал бы сделать эту шину последовательной, что кстати вполне допустимо. Помнится на AT91RM9200 именно так эта шина и выглядела...

Share this post


Link to post
Share on other sites
Что-то Вы здесь не то насчитали. Для начала 8мил равно не 0.178мм, а 0.203мм. Во-вторых уменьшение ширины трассы при неизменном стэке работает с точностью до наоборот - уменьшая ширину увеличиваем импеданс трассы, а у Вас он почему-то уменьшается(кстати поэтому питания лучше делать как можно шире). В-третьих 50 Ом совсем и не требуется для СДРАМа, это строгое требование для ДДР2, причем уже для быстрых. А здесь 55-65 Ом обычно применяется.

 

речь шла о расстоянии до слоя земли - 0.178мм и 0.203мм, почему такие числа - видимо это стандартные толщины препрегов

Share this post


Link to post
Share on other sites

Переходные, поставленные плотным рядком, обеспечат разрыв в полигоне возвратных токов.

Соединение соседних площадок (Soic-8) - должны быть вне зоны пайки.

Кварц "нависает" над выводами микросхемы. Конденсаторы около кварца расположены не на той стороне.

Шелкография тантала как-то "узковата" - в реальности пошире будет.

Переходные отверстия, при наличии свободного места, не стоит загонять под корпуса микросхем.

Share this post


Link to post
Share on other sites

Есть похожий проект на AT91SAM9XE512-QU , но без динамики. Может что ВАМ пригодится-поможет. Материал TG170 (описание стека прилагаю), нормы проектирования 6/6mil, с количеством слоев не жался по причине мизерной стоимости ПП на выходе (10 ам.президентов за штуку).

a6d0d6898414t.jpgb84f4752a90ct.jpgb767ac40b39at.jpgef70fa2d6733t.jpg468cc016cf66t.jpga1413b09602dt.jpg7cece5215940t.jpg

Share this post


Link to post
Share on other sites
Нормальная такая трассировка, особо ее не ужмешь. Ну и на таких длинах имхо последовательные резисторы еще не нужны.

 

Сгенерил отчёт по длинам цепей.

Результаты следующие.

 

Для DO-D15: 22...35 мм. Разница приблизительно в 1.6 раза.

Для D16-D32: 12...25 мм.. Разница приблизительно в 2.1 раза.

Как посчитать время прохождения сигнала по трассе с известными параметрами?

 

Ну и на таких длинах имхо последовательные резисторы еще не нужны.

 

Возможно, но это, я смотрю, спорный вопрос...

Вообще, может, и до моделирования когда доберусь :) В гиперлинксе лучше промоделировать?

Плату сделаем, посмотрим.

Надо будет оттестировать память на максимальной частоте. И в требуемом температурном диапазоне (хотя бы пару точек взять крайних или около того).

Хотя, конечно, предполагается, что память будет работать на достаточно низкой частоте.

Лучше пользовать какой-нибудь готовый тест для линуха типа Memtest86?

 

Подключение земли у 28-го вывода правой СДРАМины выполнено в стиле "ужас-ужас".

 

Полностью согласен! Фанауты стараюсь делать с наикоротчайшими стрингерами :)

Пофиксил давно.

 

Да, и обязательно ли было все конденсаторы ставить на BOT'е, когда TOP свободен практически? Плата, как я вижу, не плотная, обычно в таких случаях я стараюсь использовать только одну сторону под компоненты - так удобнее и при ручном, и при автоматизированном монтаже.

 

Плата не очень плотная... особенно рядом с SDRAM. Это сделано преднамерено, дабы трассировку SDRAM выполнить максимально близко к рекомендациям... и всё равно не удалось сделать всё правильно на 100% :(

Слева от левой микросхемы и справа от правой место для конденсаторов, конечно есть. А вот между микросхемами конденсаторы при такой трассировке поставить уже весьма проблематично, придётся и микросхемы раздвигать и дорожки растаскивать... Хотя виасы в цепи блокировочных конденсаторов тоже плохо... как там, дополнительно 0.5-1 нГн в цепи :)

На одной стороне все компоненты расположить не получится для данных габаритов платы и 4 слоёв... на нижнем слое ещё много чего расположено.

 

Ну и последний штрих - внизу справа у микросхемы в SOIC8 (по всей видимости это 24xx) очень некрасиво соединены выводы прямо через центры площадок.

 

До сих пор понять не могу, почему некрасиво? Очень аккуратно, компактно, красиво :) Можно, конечно, спутать с соплёй... если не знать... или некрасиво по другой причине?

Кстати, DRC тоже ругался (bad pad exit).

Пофиксил, но не вижу пока в этом острой необходимости. Буду рад, если разъясните :)

 

иногда проводники ведут от пина к пину, не допуская тобразных разветвлений

 

Хм... для линий адреса и управляющих мне порекомендовали Т-образную трассировку.

Для линий данных - точка-точка.

 

http://electronix.ru/forum/index.php?showt...st&p=750191

 

Т-образные разветвления, как я понимаю, вносят дополнительную неоднородность для сигнала, нехорошо, конечно...

Ну а если шлейфом вести от микросхемы к микросхеме? Длина линий увеличится...

Кстати, изначально я думал об этом... если смотреть на мой рисунок, то можно было бы петлёй справа от процессора вывести эти линии и соединить с правой микросхемой, а далее - пустить на левую...

Но меня остановило существенное увеличение длины линий, увеличение площади трассировки и... рекомендации, данные производителем и читателями форума :)

 

и на сдраме конденсаторов помоему больше.

 

7 штук. По числу выводов питания.

Я ещё по одному танталлу поставил... как рекомендует производитель :)

 

про 28 ногу провой sdram согласен с aaarrr, лучше сделать как у левой.

 

Сделал почти как у левой... вверх стрингер отвёл (правда подлиннее, чем у левой получилось раза в 2-3).

Может, конечно, следовало сделать вточности как у левой... и линии адреса просто раздвинуть, для того чтобы виас туда влез...

 

Кашерность T-соединения лучше промоделировать в гиперлинксе, у оркада вроде есть туда экспорт.

 

Надеюсь, со временем доберусь до этого :)

Сложно там моделировать?

 

Важно: правильный стэк печатной платы, а именно расстояние от слоев разводки до слоя земли/питания для обеспечения целостности сигналов и импедансов. Для ваших ширин (8mil) 0.178мм даст примерно 60 ом, что вполне допустимо, 0.127мм - 50ом, что "типа идеально". Общюю необходимую толщину платы подгоняете толщиной core (между двумя внутренними слоями).

 

Согласен... не учёл этого, каюсь, каюсь...

Хотя видел рекомендации где-то по обеспечению сопротивления вообще всех трасс 50 Ом.

Но это, актуально, конечно, в большей степени только для трасс памяти (и других ВЧ).

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

Хотя ориентировались на ТеПро сначала (потом, правда не срослось с ним), который обещает 0.1 мм, что-то меня удержало сделать толщину трасс в 5 мил :)

 

последовательный резистор в цепи клоков - обязателен,

 

Для SDCK?

Как я понимаю, ставится он ближе к источнику сигнала (процу) и служит для уменьшения "звона" в цепи? Типа ослабляется отражённый сигнал? И фронты немного "размазываются"?

 

в остальных - "не повредит" - точно. И еще, для полного счастья зазор от линии клоков до соседних делается 2x от ширины проводника - для уменьшения crosstalk от соседей.

 

Ну вообще да, производитель рекомендует зазоры между всеми группами сигналов делать...

 

В целом, если первый раз - очень неплохо.

 

ARM9 & SDRAM - первый раз :)

В следующий раз, постараюсь всё учесть полностью :)

Edited by n_bogoyavlensky

Share this post


Link to post
Share on other sites
Нормы проектирования здесь не причем...

 

Класс точности у Вас-то повыше будет! :)

И слоёв, думаю, 6 минимум...

А вот у нас бюджет существенно обрезан...

 

Правая сторона ARMа (рис) так и просится в разводку не через множественные-лишние переходные, а именно сдвинув SDRAM влево.

 

Согласен. Надо будет попробовать в следующем релизе осуществить... но не знаю, уместится ли столько виасов нормально под правой микросхемой...

 

Сразу ложатся на "правильной" стороне конденсаторы по питанию памяти.

 

Конденсаторы, как я понимаю, у Вас тоже на обеих сторонах расположены... ;)

Как я понимаю, располагать конденсаторы на обратной стороне не есть слишком плохо.

Хотя, конечно, виас добавляет индуктивности паразитной...

 

Конденсаторы по питанию ARMа тоже не на месте...спрашивается: зачем питание проца и граунд рядом?!...если кондер по питанию имеет "СВОЮ" землю?!

 

Хм... т. е., Вы хотите сказать, что общую цепь развязывающего конденсатора надо непосредственно соединять с общей цепью микропроцессора (GND)?

 

Рисунок ниже. Набросал по-быстрому для прояснения ситуации :)

 

В данный момент большая часть соединениий выполнена по варианту "А".

Конденсатор и процессор на разных сторонах платы.

ВЧ-ток через конденсатор и виас 1 уходит в плэйн-слой GND. Частично, конечно попадает через виас 2 в плэйн-слой питания.

 

Вы, как я понимаю, рекомендуете вариант "Б"?

Конденсатор и процессор на одной стороне платы.

Меньшая часть ВЧ-тока попадает в плайн-слой питания.

Можно сэкономить на одном виасе, да.

Но не подбросит ли ВЧ-ток, проходящий через конденсатор и виас 5, потенциал на выводе процессора GND?

 

Хм... интересно, можно ли это всё смоделировать в каком-нибудь гиперлинксе? :)

post-24061-1273312996_thumb.jpg

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this