реклама на сайте
подробности

 
 
> Борьба с помехами в цифровой схеме
justontime
сообщение Dec 15 2014, 17:47
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 254
Регистрация: 6-12-14
Из: СПб
Пользователь №: 84 003



В целях удовлетворения собственного любопытства сделал простую схему с 8088 процессором и его обвязкой, которую через преобразователи уровней 8T245 подключил к отладочной плате FPGA (на которой уже достраивал остальные элементы компьютера - память, контроллер прерываний, видео и т.д.).

Вроде все заработало, но сразу же возник вопрос по поводу избыточного (как мне казалось) нагрева процессора. Так как я вообще никак не являюсь профессионалом в области разработки радиоэлектронных устройств, то обратился за помощью сюда - http://electronix.ru/forum/index.php?showtopic=124728
Мне вроде разъяснили, что это нормально, плюс попутно дали несколько полезных советов/идей.

Как выяснилось, успокоился рановато. В ходе отладки ПО стал замечать необъяснимые зависания, которые никак не удавалось побороть. Проблема в том, что они возникали редко и случайно. В конце концов я написал тест памяти и запустил его в цикле (не особенно надеясь на результат).
Тем не менее, через минут 40 тест вдруг неожиданно выдал ошибку (хотя до этого момента уже, естественно, прошел всю память не одну тысячу раз).

Пока у меня единственная версия - из-за совершенно неправильной разводки платы помехи вызывают случайные сбои в работе. Вот плата покрупнее:

Прикрепленное изображение



А вот как она подключена к отладочной плате:

Прикрепленное изображение



Думаю, что разводка выполнена совершенно неправильно - дорожки земли и питания 0.4 мм без полигонов, по одному конденсатору 0.1 мкф на каждую линию питания 3.3 и 5.0 В (там обе линии в каждом шлейфе) и еще один такой же конденсатор у процессора (тоже на дорожках 0.4 мм).

Соответственно, вопрос - считаете ли вы, что мои догадки о помехах имеют право на жизнь ? И если да, то можно ли что-то сделать с этой платой (напоминаю - это просто на поиграться), или нужно сделать новую ?

Заранее спасибо за советы !

Сообщение отредактировал justontime - Dec 15 2014, 17:48
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
justontime
сообщение Dec 16 2014, 19:13
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 254
Регистрация: 6-12-14
Из: СПб
Пользователь №: 84 003



Что-то я в полном расстройстве... Ни уменьшение частоты, ни распайка конденсаторов на все микросхемы и на все питания ничего ровным счетом не изменило - как происходил сбой от 30 минут до пары часов, так и происходит. Понимаю, что можно еще землю сеточкой (как советовали) дополнительно протянуть, но я очень надеялся, что почти два десятка конденсаторов уже принципиально изменят ситуацию...

Кстати, все сбои были именно по чтению из памяти, причем при повторном чтении данные всегда считывались нормально.
Go to the top of the page
 
+Quote Post
=AK=
сообщение Dec 16 2014, 23:28
Сообщение #3


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(justontime @ Dec 17 2014, 05:43) *
Ни уменьшение частоты, ни распайка конденсаторов на все микросхемы и на все питания ничего ровным счетом не изменило - как происходил сбой от 30 минут до пары часов, так и происходит. Понимаю, что можно еще землю сеточкой (как советовали) дополнительно протянуть, но я очень надеялся, что почти два десятка конденсаторов уже принципиально изменят ситуацию...

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

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

Цитата(justontime @ Dec 16 2014, 04:37) *
Да, забыл сказать - тактовая частота 5 МГц, в шлейфы особо земли не добавить, так как почти все уже занято сигналами.

У вас наверняка звон в шлейфах. Отчасти лечится, если шлейфы обернуть медной фольгой, которую заземлить в нескольких точках на каждой плате. Ну и резисторами, как написано выше.
Go to the top of the page
 
+Quote Post
justontime
сообщение Feb 11 2015, 17:48
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 254
Регистрация: 6-12-14
Из: СПб
Пользователь №: 84 003



Цитата(=AK= @ Dec 17 2014, 02:28) *
Конденсаторы по питанию помогают очень редко. Эти конденсаторы - необходимое условие, но не достаточное. Они должны быть запаяны для того, чтобы больше о них не думать. Основная польза от них в том, что, совместно с проводами земли и питания, они образуют "земляную сетку". Эта сетка обычно не накрывет всю плату, однако работает уже существенно лучше, чем просто земляной провод.

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


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


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

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

Прикрепленное изображение


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

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

Сообщение отредактировал justontime - Feb 11 2015, 17:51
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 11 2015, 19:41
Сообщение #5


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(justontime @ Feb 11 2015, 20:48) *
Как известно, утопающий хватается за соломинку sm.gif

Один SMD резистор, врезанный в дорожку у выхода, спасет утопающего.
Go to the top of the page
 
+Quote Post
justontime
сообщение Feb 11 2015, 19:52
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 254
Регистрация: 6-12-14
Из: СПб
Пользователь №: 84 003



Цитата(ViKo @ Feb 11 2015, 22:41) *
Один SMD резистор, врезанный в дорожку у выхода, спасет утопающего.


Ранее в этой теме мне рекомендовали в районе 33 Ом, так ?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- justontime   Борьба с помехами в цифровой схеме   Dec 15 2014, 17:47
- - TSerg   Некоторым инженерам-конструкторам так до конца и н...   Dec 15 2014, 17:56
|- - justontime   Цитата(TSerg @ Dec 15 2014, 17:56) Некото...   Dec 15 2014, 18:01
|- - TSerg   Цитата(justontime @ Dec 15 2014, 21:01) Я...   Dec 15 2014, 18:14
- - toweroff   От частот зависит... Я делал последовательно резис...   Dec 15 2014, 18:02
- - justontime   Да, забыл сказать - тактовая частота 5 МГц, в шлей...   Dec 15 2014, 18:07
|- - toweroff   Цитата(justontime @ Dec 15 2014, 21:07) Д...   Dec 15 2014, 18:24
- - toweroff   Ну тогда попробовать порвать дорожки и ом эдак 100...   Dec 15 2014, 18:10
- - SM   Цитата(justontime @ Dec 15 2014, 20:47) Д...   Dec 15 2014, 18:14
|- - justontime   Цитата(SM @ Dec 15 2014, 18:14) Также пос...   Dec 15 2014, 18:31
|- - toweroff   Цитата(justontime @ Dec 15 2014, 21:31) Е...   Dec 15 2014, 18:39
||- - justontime   Цитата(toweroff @ Dec 15 2014, 19:39) да ...   Dec 15 2014, 18:42
|- - SM   Цитата(justontime @ Dec 15 2014, 21:31) Е...   Dec 15 2014, 18:48
|- - justontime   Цитата(SM @ Dec 15 2014, 19:48) По ней ОБ...   Dec 15 2014, 19:48
|- - SM   Цитата(justontime @ Dec 15 2014, 22:48) о...   Dec 15 2014, 19:52
- - =AK=   Цитата(justontime @ Dec 16 2014, 04:17) о...   Dec 16 2014, 00:55
- - justontime   Прежде, чем что-то физически, решил провести мален...   Dec 16 2014, 06:21
- - ViKo   ЦитатаВ ходе отладки ПО стал замечать необъяснимые...   Dec 16 2014, 06:43
|- - justontime   Цитата(ViKo @ Dec 16 2014, 06:43) А в про...   Dec 16 2014, 08:46
- - justontime   Еще вопрос возник - ширина сигнальных дорожек на т...   Dec 16 2014, 13:00
|- - SM   Цитата(justontime @ Dec 16 2014, 16:00) Е...   Dec 16 2014, 13:07
|- - SM   Цитата(justontime @ Dec 16 2014, 22:13) К...   Dec 16 2014, 19:18
|- - ViKo   Цитата(justontime @ Feb 11 2015, 22:52) Р...   Feb 11 2015, 19:53
- - justontime   Дело в том, что FPGA никакой роли в управлении пам...   Dec 16 2014, 19:39
|- - SM   Цитата(justontime @ Dec 16 2014, 22:39) м...   Dec 16 2014, 19:58
- - justontime   Не претендую на глубокие познания, но все же опред...   Dec 16 2014, 20:13
- - SM   Еще - как сделано защелкивание адреса по ALE? В FP...   Dec 16 2014, 20:36
- - ViKo   Я думаю, проблема в питании, если ошибка выскакива...   Dec 17 2014, 05:51
- - justontime   Вполне вероятно, SM оказался ближе всего к разгадк...   Dec 17 2014, 06:48
- - justontime   Так как направление поисков изменилось, создал для...   Dec 17 2014, 09:57
- - SM   Можно попробовать включить подтяжку вверх/вниз, ил...   Feb 11 2015, 18:04
- - justontime   Не просветите ли меня еще по нескольким моментам н...   Feb 12 2015, 06:33
|- - Vovk_Z   Цитата(justontime @ Feb 12 2015, 09:33) 1...   Feb 12 2015, 13:30
- - ViKo   1. Ничего больше не надо. Земли побольше, что на п...   Feb 12 2015, 06:54
|- - justontime   Цитата(ViKo @ Feb 12 2015, 09:54) 1. Ниче...   Feb 12 2015, 07:49
|- - aaarrr   Цитата(justontime @ Feb 12 2015, 10:49) В...   Feb 13 2015, 17:49
- - justontime   Добавил резистор 33 Ом, стало приличнее, хотя тоже...   Feb 12 2015, 17:47
|- - SM   Цитата(justontime @ Feb 12 2015, 20:47) Д...   Feb 12 2015, 17:51
- - justontime   Вот, кстати, маленький эксперимент с настройкой ра...   Feb 13 2015, 05:44
|- - Alexashka   Цитата(justontime @ Feb 13 2015, 08:44) В...   Feb 13 2015, 06:39
|- - ViKo   Цитата(Alexashka @ Feb 13 2015, 09:39) Ка...   Feb 13 2015, 09:16
||- - Alexashka   Цитата(ViKo @ Feb 13 2015, 12:16) А если ...   Feb 13 2015, 17:00
||- - ViKo   Цитата(Alexashka @ Feb 13 2015, 20:00) Ну...   Feb 13 2015, 18:13
|- - justontime   Цитата(Alexashka @ Feb 13 2015, 09:39) Ка...   Feb 13 2015, 09:19
- - Alexashka   Уменьшен ток драйвера, фронты завалены, высокочаст...   Feb 13 2015, 20:02
|- - ViKo   Цитата(Alexashka @ Feb 13 2015, 23:02) Ум...   Feb 13 2015, 20:12
|- - Alexashka   Цитата(ViKo @ Feb 13 2015, 23:12) Нормаль...   Feb 13 2015, 21:14
|- - ViKo   Цитата(Alexashka @ Feb 14 2015, 00:14) По...   Feb 14 2015, 06:48
- - justontime   Еще вопрос возник. Допустим, решу сделать новую пл...   Feb 14 2015, 07:11
|- - Alexashka   Цитата(justontime @ Feb 14 2015, 10:11) Д...   Feb 14 2015, 15:17
- - ViKo   Alexashka, вот вам идеальная осциллограмма. А во...   Feb 14 2015, 09:52
|- - Alexashka   Цитата(ViKo @ Feb 14 2015, 12:52) Alexash...   Feb 14 2015, 13:34
|- - ViKo   Цитата(Alexashka @ Feb 14 2015, 16:34) Ну...   Feb 14 2015, 13:46
|- - Alexashka   Цитата(ViKo @ Feb 14 2015, 16:46) Топикст...   Feb 14 2015, 15:07
- - justontime   Господа, спасибо, что так активно спорите о моих п...   Feb 14 2015, 13:59
- - ViKo   Ок, вопрос исчерпан. Насчет новой платы. По теории...   Feb 14 2015, 15:16
- - Aner   Думаю что все советы тут могут быть как правильным...   Feb 14 2015, 15:34
|- - SM   Цитата(Aner @ Feb 14 2015, 18:34) Это - H...   Feb 14 2015, 15:51
- - justontime   Эээ... На всякий случай напомню, что я не космичес...   Feb 14 2015, 16:22
- - aaarrr   Если Вы сделаете четырехслойную плату с подключени...   Feb 14 2015, 20:34
|- - justontime   Цитата(aaarrr @ Feb 14 2015, 23:34) Если ...   Feb 16 2015, 06:36
|- - justontime   Цитата(aaarrr @ Feb 14 2015, 23:34) Если ...   Mar 30 2015, 09:07
|- - Alexashka   Цитата(justontime @ Mar 30 2015, 13:07) В...   Apr 1 2015, 17:47
|- - justontime   Цитата(Alexashka @ Apr 1 2015, 20:47) Во...   Apr 1 2015, 19:37
- - Panych   Наверное, оффтоп: попалась как-то тайваньская плат...   Feb 17 2015, 06:26
- - MiklPolikov   Цитата(justontime @ Dec 15 2014, 20:47) Д...   Mar 30 2015, 09:38
- - justontime   Цитата(MiklPolikov @ Mar 30 2015, 12:38) ...   Apr 1 2015, 09:34


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 02:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016