Jump to content

    

Как лучше трассировать CLK для SPI. Два варианта

Recommended Posts

08.12.2020 в 20:06, def_rain сказал:

2. Разбить микросхемы на 3 группы (так удобнее на плате, микросхемы разные по назначению) и провести CLK звездой. При этом подтягивающие резисторы поставить в конце каждого из трех ответвлений звезды. В этом случае плата 6 слойная и дорожки по длинне в 2 раза короче.

Какой вариант будет предпочтительнее?

Любой вариант. Если фронты затяните при помощи RC, то передавайте хоть  на 3м. 

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

Share this post


Link to post
Share on other sites

Lmx2315
3 часа назад, Александр Мылов сказал:

Это только при скоростях выше 1Gbps.

Нет , это зависит от длинны линии,её емкости и бывает уже на десятках мегагерц.

Share this post


Link to post
Share on other sites

zombi
9 hours ago, aaarrr said:

способность приемника собрать наносекундный мусор. Частота при этом может быть любой.

Вот вот, это скорее всего и будет главной проблемой.

В одном из проектов передаю данные с одной плис на три других по SPI на частоте 75 MHz 3.3V длина линии до первой мс ~5 см, до последней ~12 см.

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

Ничего не согласовывал.

 

 

Share this post


Link to post
Share on other sites

def_rain

Есть еще один вопрос по моей теме.

Линия CLK как видно из фото в моем посту на первом листе, имеет три ответвления. В конце каждого ответвления я поставил pullup подтяжку к 3.3В по 4.7кОм каждый, что бы нагрузить линию. Не будет ли это проблемой? 

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

Share this post


Link to post
Share on other sites

Uree

По хорошему подтяжка нужна в случае ОЭ/ОС. И в случае звезды, скорее всего одна у источника, а не у каждого приемника.

Share this post


Link to post
Share on other sites

def_rain
44 minutes ago, Uree said:

По хорошему подтяжка нужна в случае ОЭ/ОС. И в случае звезды, скорее всего одна у источника, а не у каждого приемника.

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

Не зря же датчики с токовым выходом 4-20 мА считаются помехозащищенными.

Share this post


Link to post
Share on other sites

10.12.2020 в 01:55, Lmx2315 сказал:

Нет , это зависит от длинны линии,её емкости и бывает уже на десятках мегагерц

Согласование в КВ-диапазоне требуется в мощных передатчиках и производится как правило, при помощи коаксиальных трансформаторов.

 

08.12.2020 в 20:06, def_rain сказал:

Возможны помехи, потому что в 20 мм над этой платой на стойках установлена вторая плата с большим количеством реле, которые коммутирую токи но несколько ампер AC и DC, также есть пусковые токи.

Вот это и будет основной проблемой.

Поэтому основное внимание нужно уделить ЭМС.

Share this post


Link to post
Share on other sites

09.12.2020 в 18:26, def_rain сказал:

 

У меня стоят ферритовые бусинки на SPI. Они как раз и ставились, чтобы немного сгладить фронты.

 

У меня все дорожки полностью спрятаны. Если конкретно, то сигнальные проводники я трассировал в слоях 5В и 3.3В, т.е. эти слои комбинированные питание+сигнальные. Опорные полигоны земли для этих двух комбинированных слоев находятся в соседних слоях в стеке (на расстоянии 0.152мм ).

Стек:

ТОП

Земля

Комбинированный (питание+сигнальные)

Комбинированный (питание+сигнальные)

Земля

БОТ

Импеданс дорожек SPI получился 55 Ом (расчет в Аллегро)

1. С точки зрения помехозащищенности предлагаю нестандартный стек:

земля

сигнал

Питание (полигон)

Земля (полигон)

Сигнал

Земля

2. Привести все согласования к 50 ом.

3.  Все элементы на нижнем слое

4.  Особое внимание точки заземления

10.12.2020 в 02:49, zombi сказал:

по SPI на частоте 75 MHz 3.3V длина линии до первой мс ~5 см, до последней ~12 см.

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

Ничего не согласовывал.

На такой частоте нужно уже задуматься о согласовании.

Очень важен фронт нарастания сигнала. Поэтому и предложил RC (ФНЧ) чтобы избавиться от дрожания сигнала( см. выше).

Share this post


Link to post
Share on other sites

Но можно обойтись и без RC и бусинок если выполнить выше написанное.

Да и еще 

5. Выполнить Stitch хотя бы через каждый 1см.

08.12.2020 в 20:06, def_rain сказал:

Возможны помехи, потому что в 20 мм над этой платой на стойках установлена вторая плата с большим количеством реле, которые коммутирую токи но несколько ампер AC и DC, также есть пусковые токи.

Спасибо.

При первом прочтении не обратил внимания.

Share this post


Link to post
Share on other sites

def_rain
6 hours ago, Александр Мылов said:

5. Выполнить Stitch хотя бы через каждый 1см.

 

Вы имеете в виду просто кондеров 0402 0.1мкФ разбросать по плате.

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

Два сигнальный слоя, два полигона GND в плотную к ним (на расстоянии 0.15мм по стеку).

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

Share this post


Link to post
Share on other sites

16 часов назад, def_rain сказал:

Вы имеете в виду просто кондеров 0402 0.1мкФ разбросать по плате.

Нет.

А вообще делайте как удобно.

Затем загоните плату в Ansys Siwave (очень удобная и хорошая прг) и увидите все свои огрехи.

Один раз пройдете этот путь потом уже интуитивно будете проектировать платы без ошибок.

Share this post


Link to post
Share on other sites

def_rain

Позвольте задать в своей теме еще вопрос про шину SPI.

Есть стек 6 слойной платы:

1- Top 

(0.15мм база препрег)

2- GND

(0.152мм препрег)

3- 3.3V-signal

(0.8мм база препрег)

4- 5V-signal

(0.152мм препрег)

5- GND

(0.15мм база препрег)

6- BOT

Обратите внимание, что сигнальные проводники проходят в полигонах питания 3.3 и 5В. Сами эти полигоны питания цельные, на всю плату и не рвутся на куски сигнальными дорожками которые проходят в них.

Подразумевается, что опорный слой для сигналов со слоя 3 является GND слоя 2. А опорный слой для сигналов со слоя 4 - GND слоя 5. Расстояние между этими опорными и сигнальными слоями 0.152мм.

Расстояние между 3- 3.3V-signal и 4- 5V-signal = 0.8мм, это для того чтобы чтобы исключить влияние сигнальных проводников на этих слоях друг на друга.

Есть два вопроса.

1. Сам подход трассировать шину SPI (или что либо другое) в полигонах питания не является ли заведомо не правильным?

2. Не будет ли перекрестных помех между этими сигнальными проводниками на слоях 3 и 4, ведь между ними нет полигона, однако есть 0.8мм препрега?

PS

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

Share this post


Link to post
Share on other sites

fighter_161
09.12.2020 в 20:55, Lmx2315 сказал:

Нет , это зависит от длинны линии,её емкости и бывает уже на десятках мегагерц.

0,5 мм дорожка с препрегом 0,25  дает примерно 5 нГн/см и 0,7 пФ/см.

пусть длина будет 50 см (точка-точка), получается 250 нГн и 35 пФ, частота резонанса будет порядка 55 МГц, а -3дБ отметка порядка 80 Мгц.

Эти все рассуждения по гонки фронтов и прочее, из разряда городских легенд, SPI не тот интерфейс, чтоб серьезно разгонять за требования к п/п, особенно если плата насыщена кучей ВЧ интерфейсов и он вспомогательный.

 

Приложил файл (в помощь "начинающему радиолюбителю"), все что характерно для I2C с легкостью можно и для SPI применять. 

09.12.2020 в 21:49, zombi сказал:

Пока на всех приёмниках не включил триггеры-шмитта для сигнала клока было всё печально

Ошибку в разработке выдавать за достижение не нужно, вся цифровая электроника на триггерах, никто не "шлепает" реалтайм, особенно в малосигнальных цепях, где характерно сильное влияние ЭМС на качество сигнала.

 

 

 

layout_design_guide.pdf

Share this post


Link to post
Share on other sites

Lmx2315
24.03.2022 в 15:35, fighter_161 сказал:

Приложил файл (в помощь "начинающему радиолюбителю"), все что характерно для I2C с легкостью можно и для SPI применять. 

В вашем файле дана рекомендация для i2c Max trace length (Fast Mode) <200mm (is mainly limited by the capacitive load).

Если это использовать как рекомендацию для SPI то надо длину ещё сильнее урезать? Частоты spi-я повыше будут.

Share this post


Link to post
Share on other sites

tgruzd
12 часов назад, Lmx2315 сказал:

Если это использовать как рекомендацию для SPI то надо длину ещё сильнее урезать? Частоты spi-я повыше будут.

Частоты  частотами, но у и2ц и spi есть ещё и различие в способе заряда/разряда ёмкости линии. в случае I2C линия будет заряжаться через подтягивающий резистор, а в случае SPI через открытый транзистор. 

 

24.03.2022 в 19:35, fighter_161 сказал:

все что характерно для I2C с легкостью можно и для SPI применять. 

но не так чтобы прямо 1 к 1 

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.