Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16595 Discussions

Can I change weak pull up status of a FPGA pin during runtime?

KAthu
Beginner
901 Views

Hi,

 

I know that I can enable or disable weak pull ups in the project settings and create a bit stream.

 

But is there a way to change the weak pull up of a pin based on some logic during runtime? Is there a ip core which can support this?

 

Thank you.

0 Kudos
5 Replies
sstrell
Honored Contributor III
818 Views

What are you trying to accomplish by doing this?

 

Some IP, like the external memory interface IP, automatically enable or disable termination (on-chip termination) whether performing reads or writes and do the same to the ODT for the external memory.

 

#iwork4intel

0 Kudos
KAthu
Beginner
818 Views

I am connecting the FPGA to an external micro-controller. And depending on the program I am running on the micro-controller, I need to enable weak pull ups on the fpga pins. (Using external pull ups is not an option for me.). My fpga design is the same for every program I run on the micro-controller. Using several muxes I implemented on the fpga, I can change the FPGA configuration for different programs during runtime.

 

Right now because of the pullups, I need to build several versions of the design. But if I can enable/disable pull ups using some IP during runtime, I can keep a single bitstream.

0 Kudos
sstrell
Honored Contributor III
818 Views

The only thing I can suggest is adding logic that looks at what program is running and pulls up the appropriate I/O based on that. Even partial reconfiguration, which is only supported on high-end devices, reconfigures the core of the design, not the I/O.

 

#iwork4intel

0 Kudos
KAthu
Beginner
818 Views

Thank you for your reply.

 

Do you know how to pull up the appropriate I/O based on logic? This is what I am trying to figure out.

 

I could only figure out how to pull up a I/O using pin panner. But then I have to compile it to create a new bit stream. If can pull up the appropriate I/O based on some logic then I only have to compile it once.

0 Kudos
ShafiqY_Intel
Employee
818 Views

Hi KAthu,

 

Apparently, pull up the appropriate I/O based on logic is not possible.

You can only pull up it using Pin Planner or Pin assignment.

 

Thanks

0 Kudos
Reply