Замыкание сигналов при подключении ко входу обесточенной ИС

Я использую одну шину SPI от ЦП к двум ПЛИС с разными (то есть индивидуальными) сигналами CS.

Центральный процессор и первая FPGA включены, а вторая FPGA обесточена.

Когда я отправляю сигналы SPI на обе FPGA, вторая (без питания) FPGA закорачивает общие сигналы SPI, а первая (с питанием) FPGA не может распознавать сигналы с низкой амплитудой.

Почему это может происходить и как это исправить?

Привет. Если у вас есть время, пожалуйста, проверьте мои изменения в вашем вопросе и убедитесь, что я правильно включил детали вашего вопроса. Если я сделал какое-либо неправильное изменение, вы можете отредактировать его самостоятельно или указать мне, где оно неверно, и я постараюсь улучшить свое редактирование.
Спасибо за редактирование! Все хорошо, но я думаю, что главное ключевое слово «короткое» лучше, чем просто «аффект». "привязанность" я думаю, что это так размыто.
Спасибо, хорошо, я изменил эту часть, чтобы конкретно указать, что сигналы SPI были «закорочены». :-) Причина, по которой я использовал несколько менее определенные слова в моем предыдущем редактировании, заключалась в том, что если бы они были действительно закорочены (на землю), то амплитуда сигнала была бы ( очень близкой) к нулю вольт. В вашей схеме со второй обесточенной ПЛИС я ожидаю увидеть сигналы SPI в несколько десятых долей вольта (например, возможно, от 0,3 В до 0,6 В) и, следовательно, не строго « закороченные ». Однако это ваша история, поэтому я отредактирую историю так, как вы хотите. :-) Еще раз спасибо :-)

Ответы (2)

Хотя некоторые части этой истории мне не совсем ясны, общая ситуация кажется известной проблемой.

Почему это может произойти

Подключение сигналов к микросхеме без питания (в вашем случае ко второй ПЛИС) обычно выходит за рамки спецификации этой микросхемы (за некоторыми исключениями, как правило, для микросхем, специально разработанных для изоляции шины - см. ниже). Проверьте техническое описание этого устройства, чтобы узнать, упоминается ли в спецификации входного напряжения Vcc / Vdd или конкретное напряжение. Если в нем упоминаются напряжения, относящиеся к Vcc / Vdd, подумайте, что это значит, когда устройство обесточено.

Если вам нужна помощь в интерпретации технического описания вашей ПЛИС, предоставьте ссылку на страницу с ее электрическими характеристиками, и мы постараемся найти для вас соответствующую деталь.

Если вы подключаете сигналы к такой ИС без питания, то это имеет тенденцию пытаться подать питание на ИС без питания через структуры защиты от электростатического разряда на этих сигнальных выводах ИС без питания. Однако ИС никогда не предназначалась для питания через свои сигнальные контакты, эти сигналы могут быть не в состоянии обеспечить ток, необходимый для питания ИС (конечно, они никогда не были предназначены для этого), и поэтому сигнальные напряжения могут выйти за допустимые пределы. -спецификация, ИС может быть запитана неправильно (поскольку этот метод подачи питания никогда не предполагался) и может быть замечено множество неправильного поведения. Смотрите вопросы и ответы к этим предыдущим темам, для похожих проблем:

Изолируйте микроконтроллер от платы и используйте другой

Устройства без питания на шине I2C/SPI

как это исправить?

Используйте соответствующие микросхемы изоляции шины, которые предназначены для обесточивания одной части шины без воздействия на другие устройства на питаемой части шины. Например, TI и Analog Devices (среди многих других производителей) делают такие устройства в зависимости от вашей скорости, тока, комплектации, стоимости, доступности и прочих требований.

В некоторых случаях 74LCX125 (с техническими характеристиками, допускающими активные входные сигналы даже при отсутствии питания) является примером типа ИС, который можно использовать для буферизации сигналов на устройство без питания, т. е. 74LCX125 и устройство без питания. будут подключены к одной и той же шине питания и, следовательно, одновременно будут получать питание или обесточиваться.

Спасибо, это хорошее описание. И я очень извиняюсь за нечитаемый рассказ. Я постараюсь выучить английский лучше.
@ИльяА - Пожалуйста. Ваш рассказ не был нечитабельным, и я не критикую ваш английский (мое знание русского равно нулю!), но я просто хотел подчеркнуть, что я не могу быть уверен, что полностью вас понял, например, о том, какие обнаруженные вами сигналы были «укорочены » ( вы наверное перевели слово, означающее "закороченный"?). Как я уже говорил, на общие сигналы SPI будет влиять ПЛИС без питания. Однако сигнал CS, который шел от ЦП только к ПЛИС с питанием , не должен быть затронут. надеюсь понятно?
да, это то, что я имел в виду.
Отлично :-) Удачи! (удачи тебе!)
Быстрый и грязный хак, если вы просто пытаетесь получить что-то без передышки платы, состоит в том, чтобы добавить резисторы (попробуйте пару кОм) между обесточенной частью и любыми сигнальными линиями, которые могут быть подключены откуда-то еще. Не так хорошо, как правильный буфер с тремя состояниями, но что-то, что часто может быть проще взломано на прототипе.

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

В некоторых случаях вы можете просто использовать последовательные резисторы на SCK и данных и / CS для вашей второй FPGA, но это не лучшая практика.

Также возможно, что определенные входные структуры FPGA (сконструированные таким образом, чтобы выдерживать входные напряжения выше, чем у соответствующего источника ввода-вывода) могут не иметь этой проблемы, но очень внимательно прочитайте спецификации в отношении допустимых входных напряжений. Вы этого не сделали, поэтому вы видите эту проблему - возможно, существует абсолютное максимальное входное напряжение Vddio + 0,3 В или что-то подобное, и вы нарушаете эту спецификацию.

Спасибо. Я думаю о преобразователе уровней IC, но сначала я хотел понять, почему это происходит. К сожалению, раньше я не придавал значения параметру Vddio +0.3V. А теперь, после вашего ответа, я понял, что это значит.