Перейти к содержанию
    

Борьба с помехами в цифровой схеме

Так как направление поисков изменилось, создал для этого новую тему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Конденсаторы по питанию помогают очень редко. Эти конденсаторы - необходимое условие, но не достаточное. Они должны быть запаяны для того, чтобы больше о них не думать. Основная польза от них в том, что, совместно с проводами земли и питания, они образуют "земляную сетку". Эта сетка обычно не накрывет всю плату, однако работает уже существенно лучше, чем просто земляной провод.

 

Вполне возможной причиной сбоев при обращении к памяти может быть "звон" в сигнальных линиях, когда эти линии имеют существенную длину (порядка 10 см и более). Проблема еще и в том, что ТТЛ выходы имеют разное сопротивление в "0" и в "1". Для борьбы со "звоном" требуется демпфирование и частичное согласование линий при помощи резисторов. Для начала надо выявить наиболее длинные линии. Между передатчиком и его линией хорошо бы врезать резистор примерно 33 Ома, это должно заметно уменьшить звон при преходе из 1 в 0. Ближе к приемному концу линии (или в середине двунаправленной линии) хорошо бы поставить подтяжку 680 Ом к плюсу питания и резистор 1 kОм на землю. Эти два резистора уменьшат отражение от приемного конца.

 

 

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

 

Все возвращается по спирали на то же место, только на новый уровень...

 

Итак, при переходе с 1 на 0 шлейф действительно звенит так, что иногда этого звона хватает, чтобы переключить логику туда-сюда еще раз. Теперь окончательно убедился, что даже с такими вроде скромными частотами нужно быть аккуратнее...

 

post-84003-1423676889_thumb.png

 

На картинке хорошо видно - от восходящего фронта сигнала 2 переключается счетчик 6, и сразу после третьего ниспадающего фронта сигнала 2 звон такого размаха, что смог переключить счетчик...

 

Тем не менее, в данном случае очень хочется отделаться совсем малой кровью - вообще ничего не переделывая в железе. Понимаю, что многого хочу, но - нет ли у Cyclone IV каких-нибудь настроек ВХОДНЫХ пинов, чтобы этот самый звон хоть немного уменьшить ? Руководство читал, все подобные настройки вроде только для выходных пинов, но вдруг я что-то пропустил ? Как известно, утопающий хватается за соломинку :)

Изменено пользователем justontime

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно попробовать включить подтяжку вверх/вниз, или bus holder.

Но это мертвому припарка, там сопротивления далеки от тех, какие нужны для терминирования шлейфа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как известно, утопающий хватается за соломинку :)

Один SMD резистор, врезанный в дорожку у выхода, спасет утопающего.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Один SMD резистор, врезанный в дорожку у выхода, спасет утопающего.

 

Ранее в этой теме мне рекомендовали в районе 33 Ом, так ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ранее в этой теме мне рекомендовали в районе 33 Ом, так ?

Да. Плюс-минус...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не просветите ли меня еще по нескольким моментам на эту тему:

 

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

 

2. Что можно сделать для предотвращения проблемы в другую сторону - т.е. от FPGA к моей плате ? Отладочную плату FPGA курочить желания нет, может, можно хоть что-то предпринять на приемной стороне ? Или неразрушающего на стороне FPGA путем настройки пинов ? Наверное, увеличить skew и уменьшить максимальный ток, или это я бред несу ?

 

3. Посмотрел сигнал от FPGA, приходящий по тому же шлейфу ко мне - выглядит намного приличней, чем в другую сторону, какие могут быть причины ?

 

Большое спасибо всем отозвавшимся и еще отозвущимся ! :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Ничего больше не надо. Земли побольше, что на плате, что в кабеле.

2. Ничего, кроме тока. Про skew - не понимаю. Можно на приемной стороне сделать параллельный терминатор, на процессорной плате, то есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Ничего больше не надо. Земли побольше, что на плате, что в кабеле.

 

В кабеле, к сожалению, ничего не могу сделать - определяется разъемом на стороне FPGA, а там всего 2 земляных провода, 2 - питания и еще 36 сигнальных... На плате же собирался вообще сделать отдельные слои для питания и земли.

 

Про skew - не понимаю.

 

Прошу прощения, опечатался - не "skew", а "slew", скорость нарастания или спада сигнала. Только уже увидел, что эта настройка недоступна для применяющегося у меня стандарта I/O - LVTTL 3.3V

Зато при более внимательном чтении обнаружил, что Cyclone IV умеет автоматически настраивать выходное сопротивление, чтобы оно максимально соответствовало линии. Надеюсь, это то, что мне нужно...

 

P.S. Блин, настройка выходного сопротивления тоже недоступна в этом режиме. Все, что есть для LVTTL 3.3V - выбор выходного тока между 4 и 8 mA...

Изменено пользователем justontime

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавил резистор 33 Ом, стало приличнее, хотя тоже далеко не идеально. По крайней мере, "левых" переключений от звона не обнаружил:

 

post-84003-1423763167_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавил резистор 33 Ом, стало приличнее, хотя тоже далеко не идеально.

 

Можете увеличивать вплоть до ом 120-150. До компромисса между скоростью нарастания и отсутствием отражений. Но, однако, это от отражений лекарство. А от наводок с соседних проводов поможет только земля каждая вторая в шлейфе, как в UDMA-100 шлейфах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот, кстати, маленький эксперимент с настройкой различных максимальных токов на одном и том же сигнале/выводе с FPGA. В первом случае - 8 мА, во втором - 4 мА, измерялось после шлейфа:

 

post-84003-1423806188_thumb.png

 

post-84003-1423806198_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот, кстати, маленький эксперимент с настройкой различных максимальных токов на одном и том же сигнале/выводе с FPGA. В первом случае - 8 мА, во втором - 4 мА, измерялось после шлейфа:

Какой ужас. Надеюсь щуп осциллографа правильно подключаете (коротким зажимом) и емкость щупа не более 10пФ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какой ужас. Надеюсь щуп осциллографа правильно подключаете (коротким зажимом) и емкость щупа не более 10пФ?

А если более, то ужаса будет меньше, как вы считаете? :rolleyes:

Нормальная картина. Длинная линия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...