Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Зачем нужны PULL_UP, PULL_DOWN резисторы.
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
-=Vitaly=-
Здравствуйте.

Зачем собственно их вешают??

Имею схему, пытаюсь в нее вьехать. НА SPI сигналах MOSI,MISO, которые приходят в плис стоит пул даун?? На чип-селектах формируемых плис для периферии стоят либо пул-ап, либо пул-даун??.
К чему они??? Если все выходы плис стоят как СМОS 3.3 ??
Почему нельзя обойтись обычными 0 или 1 на ножку??

Надо сделать спи- мастером плис, что мне тоже выводы с пул-ап делать???
Спасибо
vmp
Цитата(-=Vitaly=- @ Feb 15 2007, 14:07) *
Здравствуйте.

Зачем собственно их вешают??

Имею схему, пытаюсь в нее вьехать. НА SPI сигналах MOSI,MISO, которые приходят в плис стоит пул даун?? На чип-селектах формируемых плис для периферии стоят либо пул-ап, либо пул-даун??.
К чему они??? Если все выходы плис стоят как СМОS 3.3 ??
Почему нельзя обойтись обычными 0 или 1 на ножку??

Надо сделать спи- мастером плис, что мне тоже выводы с пул-ап делать???
Спасибо


1. Чтобы не получить плавающие уровни на CMOS-выводах. Эти уровни приводят к разным нехорошестям типа повышенного тока потребления, паразитной генерации (редко) и т.д. Хорошим тоном в схемотехнике является использование в таких случаях pull-up'ов или bus keeper'ов.
2. Чтобы доопределить потенциал вывода (до лог 0 или 1) при выключенных передатчиках (третьем состоянии).

В твоем случае нужно как минимум доопределить MISO, чтобы эта линия не болталась в воздухе при всех CS = 1. Если в твоей ПЛИС в несконфигурированном состоянии отсутсвуют подтяжки, то надо обязательно подтянуть еще и CS (чтобы избежать самопроизвольной выборки слейвов) и желательно MOSI (чтобы не болтался).
Примечание: в FPGA от Altera подтяжки присутствуют. Про другие фирмы не знаю.
-=Vitaly=-
Цитата(vmp @ Feb 15 2007, 15:44) *
Цитата(-=Vitaly=- @ Feb 15 2007, 14:07) *

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

Зачем собственно их вешают??

Имею схему, пытаюсь в нее вьехать. НА SPI сигналах MOSI,MISO, которые приходят в плис стоит пул даун?? На чип-селектах формируемых плис для периферии стоят либо пул-ап, либо пул-даун??.
К чему они??? Если все выходы плис стоят как СМОS 3.3 ??
Почему нельзя обойтись обычными 0 или 1 на ножку??

Надо сделать спи- мастером плис, что мне тоже выводы с пул-ап делать???
Спасибо


1. Чтобы не получить плавающие уровни на CMOS-выводах. Эти уровни приводят к разным нехорошестям типа повышенного тока потребления, паразитной генерации (редко) и т.д. Хорошим тоном в схемотехнике является использование в таких случаях pull-up'ов или bus keeper'ов.
2. Чтобы доопределить потенциал вывода (до лог 0 или 1) при выключенных передатчиках (третьем состоянии).

В твоем случае нужно как минимум доопределить MISO, чтобы эта линия не болталась в воздухе при всех CS = 1. Если в твоей ПЛИС в несконфигурированном состоянии отсутсвуют подтяжки, то надо обязательно подтянуть еще и CS (чтобы избежать самопроизвольной выборки слейвов) и желательно MOSI (чтобы не болтался).
Примечание: в FPGA от Altera подтяжки присутствуют. Про другие фирмы не знаю.



Спасибо!!

Если я правильно понял если я ничего не передаю MISO и MOSI должны быть подтянуты к 0, т.е использовать пулл даун. Но эту подтяжку я могу сделать как внешней так и в плисе. А SCLK подтянуть к 1 и тоже можно либо в плисе, либо снаружи. А в плисе в случае внешней подтяжки все сигналы в отсутствии передачи должны быть в Z-состоянии??
rezident
Pull-up и pull-down нужны чтобы избежать неоднозначности уровней до момента конфигурации устройства/системы, т.е. пока FPGA не прогружена или в случае МК, например, у него не сконфигурированы назначения выводов. Также pull-up и pull-down часто применяют в целях дальнейшего расширения системы. Т.е. входы запрограммированы на выполнение каких-то функций, но к ним пока ничего не подключено. Встроенные в FPGA схемы pull-up/down и bus-keeper не всегда соответствуют условиям помехоустойчивости. Поэтому применяют внешние резисторы.
Кстати, если вы применяете внешние pull-up/down, то всегда следует учитывать функции bus-keeper, т.е. входной ток такой схемы. Скажем при использовании CPLD XC9500XL не рекомендуется применять pull-up резисторы номиналом выше 15кОм. Потому что за счет возможных наводок схема bus-keeper может дать ложное срабатывание. Причем она может перейти в устойчивое состояние, но с уровнем входного сигнала, противоположным предполагаемому уровню, выдаваемому внешним pull-up. Это не защелкивание входа, а именно работа bus-keeper. Мы с таким уже сталкивались.

Цитата(-=Vitaly=- @ Feb 15 2007, 17:22) *
Если я правильно понял если я ничего не передаю MISO и MOSI должны быть подтянуты к 0, т.е использовать пулл даун. Но эту подтяжку я могу сделать как внешней так и в плисе. А SCLK подтянуть к 1 и тоже можно либо в плисе, либо снаружи. А в плисе в случае внешней подтяжки все сигналы в отсутствии передачи должны быть в Z-состоянии??

Выбор схемы pull-up или pull-down в приложении к SPI нужно делать, исходя из формата обмена. Если вы используете SPI mode 0 или 1, то pull-down. Если же 2 или 3, то pull-up. См. временные диаграммы, обращая внимание на уровни сигналов тактирования в паузах между фреймами и фронты сигнала тактирования по которому выдается/защелкивается линия данных.
vmp
Цитата(-=Vitaly=- @ Feb 15 2007, 15:22) *
Если я правильно понял если я ничего не передаю MISO и MOSI должны быть подтянуты к 0, т.е использовать пулл даун. Но эту подтяжку я могу сделать как внешней так и в плисе. А SCLK подтянуть к 1 и тоже можно либо в плисе, либо снаружи. А в плисе в случае внешней подтяжки все сигналы в отсутствии передачи должны быть в Z-состоянии??


К чему подтягивать MISO - обычно без разницы. MOSI и SCLK - смотри режим SPI (от 0 до 3), там нарисованы уровни сигналов.
Если не делать multy-master, то Z-состояние у MOSI и SCLK не нужно, пусть всегда будут выходами, как и CS.
-=Vitaly=-
Еще вопрос, если не хватает нагрузочной способности ножки на плисе надо буфер ставить или подтяжка к питанию решит эту проблему??

Спасибо
DS
Подтяжка не увеличивает на нагрузочную способность - может олько уменьшить, поскольку добавляет ток нагрузки. Надо либо ставить буфер, либо развести выход на 2 разные ноги ПЛИС, если позволяет схема.
-=Vitaly=-
Цитата(DS @ Feb 16 2007, 14:51) *
Подтяжка не увеличивает на нагрузочную способность - может олько уменьшить, поскольку добавляет ток нагрузки. Надо либо ставить буфер, либо развести выход на 2 разные ноги ПЛИС, если позволяет схема.


Т.е один сигнал на 2 ноги из одного банка?? и на плате соединить их??

Спасибо, буду знать!!
DS
Нет, не соединять, а поделить между ними нагрузки. Соединять в ПЛИС нельзя, т.к. задержки до ног могут быть разными и будут импульсы сквозного тока.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.