Jump to content
    

высокий уровень на I/O во время конфигурации ПЛИС

Обратил внимание, что во время конфигурации Spartan -3E одна из ножек I/O подтягивается к высокому уровню. Вполное возможно, что это происходит со всеми выводами, но проблему вызывает только данный вывод. Дело в том, что у меня схеме стоит ЦАП, сигнал с выхода которого усиливается усилителем. Пока ЦАП не проинициализирован его выход находится в третьем состоянии, и на выходе усилителя присутствуют +10В. После инициализации ЦАП уровень сигнала на выходе усилителя переходит в ноль. Для того, чтобы этии 10В не спалили остальные компоненты схемы, я поставил аналоговый ключ, который открывается при высоком уровне входного сигнала с FPGA. В результате в момент конфигурации FPGA у меня выходят из строя пару важных микросхем.

В связи с этим возникает вопрос, можно ли как нибудь избежать подтяжки к высокому уровню I/O FPGA или все таки придется изменять схему?

Share this post


Link to post
Share on other sites

Для ISE

 

Process Properties->Configuration Options

Там куча начтроек,которые могут Вам помочь.

Share this post


Link to post
Share on other sites

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

 

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

Share this post


Link to post
Share on other sites

Пока ЦАП не проинициализирован его выход находится в третьем состоянии, и на выходе усилителя присутствуют +10В.

С чего это вдруг. Озвучьте тип. Обычно цап имеет вход clr и возможность установить на выходе типа

Loads Midscale Value (0x800)

Loads Zero-Scale Value (0x000)

 

Есть наверно и у xilinx понятие интервал конфигурации и инициализации fpga. И внешние сигналы, отвечающие за эти интервалы.

Т.Е. всегда есть возможность определить момент перехода кристалла после включения в пользовательский режим.

Или с помощью специализированных пинов кристалла, либо сконфигурировав выходной пин i/o в ноль. (В мнтервале конфигурации подтянут ынутренними резисторами к 1, в пользовательском режиме 0)

Share this post


Link to post
Share on other sites

С чего это вдруг. Озвучьте тип. Обычно цап имеет вход clr и возможность установить на выходе типа

Loads Midscale Value (0x800)

Loads Zero-Scale Value (0x000)

 

Есть наверно и у xilinx понятие интервал конфигурации и инициализации fpga. И внешние сигналы, отвечающие за эти интервалы.

Т.Е. всегда есть возможность определить момент перехода кристалла после включения в пользовательский режим.

Или с помощью специализированных пинов кристалла, либо сконфигурировав выходной пин i/o в ноль. (В мнтервале конфигурации подтянут ынутренними резисторами к 1, в пользовательском режиме 0)

 

Тут я ошибся, после включения питания выходы ЦАП переходят в ноль. К сожалению, это я сам накосячил в схеме и ноль на выходе ЦАП означает +10В на выходе усилителя(инвертирующий вход ОУ). Надо было,конечно,схему по другому делать. После конфигурации ПЛИС сразу посылает новые установки для ЦАП и переводит выходы в 2.5В, что значит ноль на выходу ОУ.

 

Для ISE

 

Process Properties->Configuration Options

Там куча начтроек,которые могут Вам помочь.

К сожалению, ничего нужного я там не нашел.

 

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

 

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

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

Share this post


Link to post
Share on other sites

Почитайте про пин HSWAP может он вам чем поможет

Если на нем "0",то

 

Pull-up resistors connect to the associated

VCCO supply for all user-I/O or dual-purpose

I/O pins during configuration. Pull-up resistors

are active until configuration completes.

 

Если на нем "1",то

Pull-up resistors disabled during configuration.

All user-I/O or dual-purpose I/O pins are in a

high-impedance state.

Share this post


Link to post
Share on other sites

я поставил аналоговый ключ, который открывается при высоком уровне входного сигнала с FPGA.

 

может ключ поменять.

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

Share this post


Link to post
Share on other sites

Почитайте про пин HSWAP может он вам чем поможет

Если на нем "0",то

 

Pull-up resistors connect to the associated

VCCO supply for all user-I/O or dual-purpose

I/O pins during configuration. Pull-up resistors

are active until configuration completes.

 

Если на нем "1",то

Pull-up resistors disabled during configuration.

All user-I/O or dual-purpose I/O pins are in a

high-impedance state.

 

Спасибо, именно то что надо. Сейчас займусь поиском данной ножки на плате.

 

может ключ поменять.

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

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

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.

×
×
  • Create New...