UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 12857

7.1i CPLDFit - "WARNING:Cpld:987 - An internal 3-state buffer has been detected"

Description

Urgency: Low

General Description:

Xilinx CPLDs do not support internal 3-state busses (with the exception of the XC9500 5V family); however, errors do not occur in my designs that use internal 3-state busses. What is happening to these internal busses?

Solution

All Xilinx devices with internal 3-state busses will pull up a floating line. Consequently, if both BUFEs are "0s" (when the enable line is a "1", the data goes through the buffer, and a "0" is hi-Z), then TBUS will be floating and pulled up to a "1". As a result, there is never a true floating condition on TBUS, regardless of whether the pull-up is attached.

3-state bus in design
3-state bus in design

The following is logically equivalent:

3-state bus in combinatorial logic
3-state bus in combinatorial logic

You can see that this is logically equivalent to the 3-state bus (with a pull-up). If there are three BUFEs on the TBUS line, you can simply add another OR2 parallel to the others.

The Xilinx CPLD Fitter does this in order to emulate the internal 3-state bus.

AR# 12857
Date Created 08/29/2007
Last Updated 12/15/2012
Status Active
Type General Article