Chris_C

PULLUP of comp ... is set but the tri state is not configured.

Recommended Posts

After a fair break from almost everything electronic (thats what being a newly wed does for your "spare" time) I decided to get back into FPGA's

 

Last time I got as far a VGA character generator in VHDL and concluded that the schematic route would probably suit me better!

 

I does seem to bespite how aggravating ISE is ! (just don't get me started on BUS TAPS!!!!) anyhow I decided after getting the 32mhz clock downcounted to flash the led every 1/2 second, that I might look at input via USB

 

my first instinct was to simply connect RX to TX which I did via a buffer - which works I get back what I send! (shocking!)

 

however I get a warning that I'm not entirely comfortable with...

 

WARNING:PhysDesignRules:781 - PULLUP on an active net. PULLUP of comp TX_PULLUP
   is set but the tri state is not configured.

 

Now I do know what a pull up and tri state actually is BUT what I am wondering is how in the earth do you tell ISE what configuration you want for the tri state ( and why and whats needed for this circumstance)

 

 

One the subject of USB serial, there is no clock?? if I want to read RX into an 8 bit buffer how do I know how long a bit is ?!

Share this post


Link to post
Share on other sites

Hi,

 

don't worry about that warning. It should disappear if your circuit is capable of outputting a "z" state (in Verilog), tristate, which stops driving the output.

What ISE is trying to tell you is "hey, you've got that pull-up resistor there but it's never really doing anything because the output is driven all the time. Why don't you remove it and it will still cost the same"

After a while, I stopped listening :)

 

It is impossible to get rid of all warnings, as I would in software. Some of them simply don't make sense, such as "unconnected port" warning.

My recommendation is to read the warnings when your circuit doesn't work as expected. It can be tedious.

However, you can fix the pullup warning, simply by removing the "PULLUP" attribute from the constraints (*.ucf) file.

 

ISE is an example of "tool hell". Still, it has its good sides - it's free up to Spartan 6 LX 75, and competitors' comparable offerings have limitations that go far beyond "annoying" (i.e. no access to memory controller without paid license).

Share this post


Link to post
Share on other sites

The serial is async, the usb just tunnels the chars from the software driver and outputs them async. In the fpga need a uart, I used the kcuart from Ken Chapman in my xilinx work, seemed to work well for me. There are a lot of crappy implementations I found that make assumptions about the incoming signal.

Google "ken chapman kcuart" I think link 4 is a zip file.

i think you need to provided a divided clock to set the baud rate.

Cheers,

Tom

Share this post


Link to post
Share on other sites

I was afraid it would be asynchronous.... I do so prefer serial data thats clocked! (call me lazy!)

 

I'll take a look for your recommended uart - thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now