Spartan 3 output voltage level

Nov 22, 2004 13 Replies

I would like to integrate an 8051 microcontroller to a spartan 3 development board. For input port I know I need to add a series resistor. However for the output ports, I have read posts and app notes about using the quickswitch product. The only problem is the package that they come in. I have been wire wrapping most of my pins thus far and have not found any level shifting solutions that comes in a DIP package (that can be wire wrapped). So here is my question: instead of using the level shifter, can I just directly connect my Spartan 3 output port to an input port on my 8051 and have a pull-up resistor to 5V on the same net? My idea is that for low outputs I would just output a low logic level, but for a high output, I would create the VHDL code to output a high impedance (Z)... Does anyone think this will work, or am I just crazy?



Thanks for any suggestions!



Larry


Posted Via Usenet.com Premium Usenet Newsgroup Services



---------------------------------------------------------- ** SPEED ** RETENTION ** COMPLETION ** ANONYMITY **



----------------------------------------------------------

formatting link


Just use the series resistor to limit the 8051->S3 high-level current.

In the S3->8051 direction, you don't need anything since LVTTL (3.3V supply) has exactly the same logic thresholds as TTL (5V supply).

If you do need any pullups then connect them to 3.3V -- not 5V.

Bob

development

for

I

can

8051

low

"Lawrence Kiss" schrieb im Newsbeitrag news:41a15113$1_1@127.0.0.1...

development

for

I

can

8051

low

Why not running the 8051 at 3V3 ??? There are lot of 3V3 compatible 8051 MCU´s / CPU´s ....

with best regards,

Peter Seng

############################# SENG digitale Systeme GmbH Im Bruckwasen 35 D 73037 Goeppingen Germany tel +7161-75245 fax +7161-72965 eMail snipped-for-privacy@seng.de net

formatting link

I

----== Posted via Newsfeed.Com - Unlimited-Uncensored-Secure Usenet News==----

formatting link
The #1 Newsgroup Service in the World! >100,000 Newsgroups

---= 19 East/West-Coast Specialized Servers - Total Privacy via Encryption =---

You are unlikely to get a bus switch in anything other that surface mount. We use this technique on our Broaddown2 product and it works well. If you don't have to operate at high speed then you can consider using a series resistor but only if the Vcco of the Spartan-3 is guaranteed less than 3.3V. The input of the S3 should not go above 4.05V( from memory) and the protection diodes will present a rise over Vcco of about 0.7V. Going the other way from S3 to 8051 check the input voltage levels. they may be CMOS levels and if so might expect 4.0V (at worst) for a "high" input. You will not achieve 4.0V from S3 and pullup may be needed. The S3 will probably draw current from a pullup if connected to 5V so you will need to look at the ratio of pullup to series resistor values.

If you are looking at small number of lines, at lowish speed, then you may be able to use something like back to back RS232 drivers to do a level shift. Or you could also use discrete mosfets. Bus switches are essentially mosfets. Slightly rusty on this area but I think we are talking n-channel with gate connected to Vcc. Cut off voltage depends on mosfet type.

John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board.

formatting link

development

for

I

can

8051

low

Thanks for the reply Peter.

My 8051 specifies a minimum high logiv level at .7*VCC = 3.5V. What is the gaurentee that the Spartan 3 will ever output a 3.3V signal? I would think that I need to pull up to VCC=5V not 3.3V.

Larry

"Peter Seng" wrote:

I

----== Posted via Newsfeed.Com - Unlimited-Uncensored-Secure Usenet News==----

formatting link
The #1 Newsgroup Service in the World! >100,000 Newsgroups

---= 19 East/West-Coast Specialized Servers - Total Privacy via Encryption =---

Many processors have more strict Vih for clock and reset inputs, which can easily be 0.7Vcc, though that would be unusual for other inputs.

Otherwise, if Vih-Vil is not too large you can use a diode or two, along with a pull up resistor, to shift the voltage up as appropriate.

If there are protection diodes on the outputs of the Spartan, you won't be able to get them much higher than the output supply voltage.

-- glen

That should work with most logic familiers - if he has to talk to 5v devices that really need a higher input voltage, he should be able to use widely available 74-whatever-xx DIP package buffers or inverters in a 3.3v volt-compatible logic family as stand-in level translators.

Of course, why not simply move the "8051" into the FPGA??

Chris

supply)

It looks like his 8051 is not (LV)TTL compatible. He will need some sort of translation.

You are right, though. If I were he, I would stuff that uP into the FPGA. I looked at opencores.org

formatting link

but didn't see any 8051's. Maybe he can some other processor core.

Bob

: It looks like his 8051 is not (LV)TTL compatible. He will need some sort of : translation.

: You are right, though. If I were he, I would stuff that uP into the FPGA. I : looked at opencores.org

To interface 3.3V CMOS (which is also real TLL levels) to 5 Volt CMOS, use some (X)CT Logic, like 74ACT

Bye

Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt --------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------

Hello,

are You shure that switching to a 3V3 compatible CPU is not possible??? What other chips are on board??? Are these the real bottlenecks???

My comment: I think replacing a 1,50$ 8051 CPU with an "almost compatible"

8051 soft CPU that would need 20$ of FPGA ressources (and generate lots of trouble and engineering costs) is not preferable for real world designs. Such designs do not help in establishing FPGA´s, they just keep them having the smell of "complex playground and too expensive engineering". For accademic research it may be great to build a bridge out of nuts and bolts only and ignore the existence of steel girders - big fun, but in daily work I often hear: "an FPGA ???, no let´s use a ´XYZ´ CPU (stylish with lots of power (potency) and MHz)" - and that makes selling FPGA designs hard work...

with best regards,

Peter Seng

"Lawrence Kiss" schrieb im Newsbeitrag news:41a1aa5e_1@127.0.0.1...

was

in.

anyone

News==----

Newsgroups

=---

Peter Seng wrote: : Hello,

: are You shure that switching to a 3V3 compatible CPU is not possible??? : What other chips are on board??? Are these the real bottlenecks???

: My comment: I think replacing a 1,50$ 8051 CPU with an "almost compatible" : 8051 soft CPU that would need 20$ of FPGA ressources (and generate lots of : trouble and engineering costs) is not preferable for real world designs. : Such designs do not help in establishing FPGA?s, they just keep them having : the smell of "complex playground and too expensive engineering". : For accademic research it may be great to build a bridge out of nuts and : bolts only and ignore the existence of steel girders - big fun, but in daily : work I often hear: "an FPGA ???, no let?s use a ?XYZ? CPU (stylish with lots : of power (potency) and MHz)" - and that makes selling FPGA designs hard : work...

If you talk about Spartan 3, 20 $ is often the cost of the whole chip, to a soft core inside can't eat up more than those 20 $. Also if the soft core spares you some pins and so your design can live with a TQFP208 agains a FBGA256, this can ease up (engineering) board design and prototyping costs a lot.

But otherwise having know working parts on the board is also a good thing!

Bye

Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt --------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------

I just read that TI's SN74HCT125 (or other in that XCT series) will do that , it has 2v as minimum Vih , and 0.8v as Vil , and will deliver a TTL compatible output. It even runs off 5v

Carsten

I am pretty sure you can use a voltage divider connected to Vcc rather than ground to protect the Spartan 3 input and give you a higher Vin voltage.

| Vcc5 | | | | | / | | \ R1 | 8051 | / | Spartan 3 | \ | | | R2 | In |------+----\/\/-----| Out | | | |

You need to find an appropriate ratio to give you both high and low voltages that meet your input spec. The absolute values will be set by considering the max input current at the Spartan 3 when the output is pulled above Vcc3.

In reality, I don't think the resistor divider is needed since the Spartan output will be pulled above the 3.3 volt rail until the protection diodes clamp, at Vcc3+0.5 IIRC. But the divider can give you a bit more noise margin on the high side at the expense of noise margin on the low side.

Rick "rickman" Collins rick.collins@XYarius.com Ignore the reply address. To email me use the above address with the XY removed. Arius - A Signal Processing Solutions Company Specializing in DSP and FPGA design URL http://www.arius.com 4 King Ave 301-682-7772 Voice Frederick, MD 21701-3110 301-682-7666 FAX

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required