Welcome
Username or Email:

Password:


Missing Code




[ ]
[ ]
Online
  • Guests: 94
  • Members: 0
  • Newest Member: omjtest
  • Most ever online: 396
    Guests: 396, Members: 0 on 12 Jan : 12:51
Members Birthdays:
All today's birthdays', congrats!
Download (31)
ScottH (37)


Next birthdays
11/02 Download (31)
11/02 ScottH (37)
11/03 Electroguy (94)
Contact
If you need assistance, please send an email to forum at 4hv dot org. To ensure your email is not marked as spam, please include the phrase "4hv help" in the subject line. You can also find assistance via IRC, at irc.shadowworld.net, room #hvcomm.
Support 4hv.org!
Donate:
4hv.org is hosted on a dedicated server. Unfortunately, this server costs and we rely on the help of site members to keep 4hv.org running. Please consider donating. We will place your name on the thanks list and you'll be helping to keep 4hv.org alive and free for everyone. Members whose names appear in red bold have donated recently. Green bold denotes those who have recently donated to keep the server carbon neutral.


Special Thanks To:
  • Aaron Holmes
  • Aaron Wheeler
  • Adam Horden
  • Alan Scrimgeour
  • Andre
  • Andrew Haynes
  • Anonymous000
  • asabase
  • Austin Weil
  • barney
  • Barry
  • Bert Hickman
  • Bill Kukowski
  • Blitzorn
  • Brandon Paradelas
  • Bruce Bowling
  • BubeeMike
  • Byong Park
  • Cesiumsponge
  • Chris F.
  • Chris Hooper
  • Corey Worthington
  • Derek Woodroffe
  • Dalus
  • Dan Strother
  • Daniel Davis
  • Daniel Uhrenholt
  • datasheetarchive
  • Dave Billington
  • Dave Marshall
  • David F.
  • Dennis Rogers
  • drelectrix
  • Dr. John Gudenas
  • Dr. Spark
  • E.TexasTesla
  • eastvoltresearch
  • Eirik Taylor
  • Erik Dyakov
  • Erlend^SE
  • Finn Hammer
  • Firebug24k
  • GalliumMan
  • Gary Peterson
  • George Slade
  • GhostNull
  • Gordon Mcknight
  • Graham Armitage
  • Grant
  • GreySoul
  • Henry H
  • IamSmooth
  • In memory of Leo Powning
  • Jacob Cash
  • James Howells
  • James Pawson
  • Jeff Greenfield
  • Jeff Thomas
  • Jesse Frost
  • Jim Mitchell
  • jlr134
  • Joe Mastroianni
  • John Forcina
  • John Oberg
  • John Willcutt
  • Jon Newcomb
  • klugesmith
  • Leslie Wright
  • Lutz Hoffman
  • Mads Barnkob
  • Martin King
  • Mats Karlsson
  • Matt Gibson
  • Matthew Guidry
  • mbd
  • Michael D'Angelo
  • Mikkel
  • mileswaldron
  • mister_rf
  • Neil Foster
  • Nick de Smith
  • Nick Soroka
  • nicklenorp
  • Nik
  • Norman Stanley
  • Patrick Coleman
  • Paul Brodie
  • Paul Jordan
  • Paul Montgomery
  • Ped
  • Peter Krogen
  • Peter Terren
  • PhilGood
  • Richard Feldman
  • Robert Bush
  • Royce Bailey
  • Scott Fusare
  • Scott Newman
  • smiffy
  • Stella
  • Steven Busic
  • Steve Conner
  • Steve Jones
  • Steve Ward
  • Sulaiman
  • Thomas Coyle
  • Thomas A. Wallace
  • Thomas W
  • Timo
  • Torch
  • Ulf Jonsson
  • vasil
  • Vaxian
  • vladi mazzilli
  • wastehl
  • Weston
  • William Kim
  • William N.
  • William Stehl
  • Wesley Venis
The aforementioned have contributed financially to the continuing triumph of 4hv.org. They are deserving of my most heartfelt thanks.
Forums
4hv.org :: Forums :: General Science and Electronics
« Previous topic | Next topic »   

5V Data Input on a 3.3V Chip

1 2 
Move Thread LAN_403
MRacerxdl
Sat Feb 28 2009, 04:05PM Print
MRacerxdl Registered Member #989 Joined: Sat Sept 08 2007, 02:15AM
Location: São Paulo, Brazil
Posts: 476
Hey all, I will interface a memory to my fpga, and I Have one problem.
The FPGA is only 3.3V (not 5V tolerant), and the DRAM works only with 5V.
What can I do to interface it? A 1k resistor in series and a 1n4148 to +3.3V will work?

Thanks :D
Back to top
3l3ctrici7y
Sat Feb 28 2009, 07:23PM
3l3ctrici7y Registered Member #1806 Joined: Sun Nov 09 2008, 04:58AM
Location: USA
Posts: 136
Something like this perhaps?

1k
+5v ---/\/\/---+--------- +3.3v part.
               |
            \  |
             -----
               ^  \   Zener
              / \     3.6v
             -----
               |
               |
              GND
Back to top
Dr. Slack
Sat Feb 28 2009, 08:20PM
Dr. Slack Registered Member #72 Joined: Thu Feb 09 2006, 08:29AM
Location: UK St. Albans
Posts: 1659
You may not have to do anything. Many 5v parts have TTL compatible I/O. The RAM may run from 5v, but what is the I/O specified at? It's unlikely to be 5v CMOS levels, I'll wager that it's low <0.8v, high >2.4v, so can be hooked up directly to a 3.3v CMOS I/O.

If you really do have to make a 5v CMOS parlay with 3.3v CMOS, then there are several ways to do it, speed and cost will determine which you choose. If you are not trying to run close to the maximum speed of either part, and only have to go 5v -> 3.3v, then you might get away with a resistor and diode clamp. But it sure won't increase the volts the other way round. For that you'll need some sort of buffer made for the job.
Back to top
MRacerxdl
Sun Mar 01 2009, 05:04AM
MRacerxdl Registered Member #989 Joined: Sat Sept 08 2007, 02:15AM
Location: São Paulo, Brazil
Posts: 476
Hmm, 3l3ctrici7y, zeners are much slow for that use, so it wont work good.

The output of the RAM will go to a FPGA that doesnt have 5V Tolerant I/O. So it might be dangerous running it direct to the fpga. But the RAM inputs consider Logic Level 1 after 2.4V so 3.3V is 1.

That is only for a prototype, I was thinking about getting a converter TTL->LVTTL but I didnt found anything.
Back to top
...
Sun Mar 01 2009, 05:52AM
... Registered Member #56 Joined: Thu Feb 09 2006, 05:02AM
Location: Southern Califorina, USA
Posts: 2445
What clock frequiency are you running at? You can calculate if a resistive divider will work by looking at the current the pins can source to see how small you could make the divider, and the capacitance of the pins (and add a little more for the traces), and seeing if the rc time constant is significantly less than your clock frequiency. Short of that there are tons of buffers that will do the 5->3.3v, especially if you only need to go one way.

Link2 seems like a good on to try (you can also get 16bit versions if you are running a lot of pins) Almost any chip maker makes a part that will do what you want.
Back to top
3l3ctrici7y
Sun Mar 01 2009, 06:05AM
3l3ctrici7y Registered Member #1806 Joined: Sun Nov 09 2008, 04:58AM
Location: USA
Posts: 136
Speed? Interesting. Are you certain about that?

Both avr-usb Link2 and usbtiny Link2 use zeners to cap the 5v signals coming out of the AVR to the 3.3v expected by the usb host controller on it's data lines. Those are low speed devices, so the zeners must be functioning reasonably well at 1.5 Mbps.

My understanding of the issue of the speed of a diode has to do with the reverse recovery time, where it will conduct in reverse bias for a moment before becoming mostly non-conductive after having been in forward bias. In that case, it is having charge reversal across the junction. A zener used for voltage regulation, is always in reverse bias. There is no forward current to recover from. I don't think there will be any speed issues like diodes used as rectifiers have.

This is my understanding of the situation, and I don't know of anything that conflicts with what I have said.
If someone knows for a fact that anything I have said is wrong, please do inform me such that I will be correct in the future.
Back to top
Bjørn
Sun Mar 01 2009, 02:25PM
Bjørn Registered Member #27 Joined: Fri Feb 03 2006, 02:20AM
Location: Hyperborea
Posts: 2058
Why does the RAM have TTL compatible input levels and CMOS compatible output levels, are you sure that the output is 5V?

In some cases you can use series resistors and rely entirely on the diodes built into the FPGA to limit the voltage. If your FPGA is really expensive you might consider doing it the proper way instead.
Back to top
MRacerxdl
Sun Mar 01 2009, 05:32PM
MRacerxdl Registered Member #989 Joined: Sat Sept 08 2007, 02:15AM
Location: São Paulo, Brazil
Posts: 476
My board is that: Link2

The FPGA software is running from 16Mhz but the clock is managed to reach 66.667Mhz, but I dont think I can push 66Mhz from a old DRAM from EDO PC Memory.

About the internal diodes, good thing, I havent think about see on the fpga datasheet if it have internal clamp diodes.

In this AVR Usb I see two diodes in series to drop the voltage to 3.8V, maybe if I put three 1n4148 in series with the datasignals? 3 * 0,6 - 1,8 and 5 - 1,8 = 3,2V
Back to top
Bjørn
Sun Mar 01 2009, 06:52PM
Bjørn Registered Member #27 Joined: Fri Feb 03 2006, 02:20AM
Location: Hyperborea
Posts: 2058
I found the answer at the Xilinx website (assuming that Spartan 3A is not very different):
Spartan-3/-3E I/O can be made 5V-tolerant by using an external series current-limiting resistor to limit the current into the upper clamp diode to 10 mA. This makes the input 5V-tolerant, but an I/O configured as an output still cannot drive 5 Volts and the resulting VOH does not meet the input specifications of the 5V device.

Link2
Back to top
Steve Conner
Sun Mar 01 2009, 10:02PM
Steve Conner Registered Member #30 Joined: Fri Feb 03 2006, 10:52AM
Location: Glasgow, Scotland
Posts: 6706
I've used the series resistor method when interfacing to XScale chips. I actually prefer a potential divider to a single resistor, as it can eliminate current in the clamp diode altogether. All CMOS chips have clamp diodes for ESD protection, there is no question whether your FPGA will have them.

Going the other way, 74HCT series logic will boost a 3.3V signal up to drive a non-TTL-compatible 5V input.

Diodes in series with data lines will not work, with CMOS logic at least. I leave it as an exercise to the student to figure out why. :P

Regardless, I'd just get 3.3V RAM chips to save hassle. Getting signal timings right on DRAMs is quite hard enough, and I expect putting resistors in series with things would screw the timing up completely. 3.3V DRAM is just as obsolete as 5V and should be available at a garbage dump near you.
Back to top
1 2 

Moderator(s): Chris Russell, Noelle, Alex, Tesladownunder, Dave Marshall, Dave Billington, Bjørn, Steve Conner, Wolfram, Kizmo, Mads Barnkob

Go to:

Powered by e107 Forum System
 
Legal Information
This site is powered by e107, which is released under the GNU GPL License. All work on this site, except where otherwise noted, is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. By submitting any information to this site, you agree that anything submitted will be so licensed. Please read our Disclaimer and Policies page for information on your rights and responsibilities regarding this site.