Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Question about fpga's and high 'Z' states

Status
Not open for further replies.

david119

Junior Member level 2
Joined
Mar 13, 2006
Messages
23
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,281
Activity points
1,524
Hi everyone,

I want to connect a machXO fpga (3.3V) to an atmel parallel EEPROM memory chip (3.3.V)via a bus.
Here are the data sheets:

machXO fpga
http://www.latticesemi.com/dynamic/...w_documents&document_type=32&sloc=01-01-02-00

Atmel EEPROM
**broken link removed**

I am fairly new to fpga’s and inexperienced, so I decided to start with a small test circuit to establish that the fpga’s high ‘Z’ outputs would not produce any bus contention. I wrote four Tri_state_buffer’s in VHDL. The main line of the code is:

data <= input when (oe = '1') else 'Z' ;

There are four data inputs and four oe’s are connected to eight external DIP switches. Data1, data2, data3, and data4 are the outputs from the VHDL modules and are tied to four separate output pins on the fpga. Then all four outputs are tied together and attached to one data bus line. Also on the data bus is one LED to display the output.

52_1165600803.JPG




Everything seems to work fine with the LED. If one OE is enabled and the corresponding input switch is toggled back and forth the LED goes on and off as should be expected. The voltage measurements at V1 go from 0V to 2.05Volts with the LED in place. If I remove the LED the voltages go from 0 to 3.3Volts.

The problem that I don’t understand occurs when all the oe’s are disabled and the outputs are in the high ‘Z’ state. The LED remains off, however if I measure the voltage with the LED in place V1 = 1.7Volts and with the LED removed V1 = 3.3Volts.

-- I thought a high ‘Z’ state meant high impedance or like an open circuit?

-- I’m worried that when I finally do connect the fpga to my memory chip these voltages
will cause bus contention and corrupt the data that I want to store. Is this a legitimate concern?

Thanks in advance for your input
 

It's possible that you have the outputs configured with weak pull-ups enabled. The i/o's can be configured with weak pull-up, pull-down, or none. Weak pull-ups would explain the voltage you see but will not supply enough current to cause the led to emit.
 

    david119

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top