Using FPGA to feed 80386

My feeling would be to try and avoid using 5V parts. For instance, the Intel Quark 1000 is a 400MHz Pentium-class CPU being aimed at microcontroller applications. It probably isn't quite as easy to manage (it's a BGA package not a PLCC) but is rather more modern.

The Quark itself is a bit of a camel, but it's the modern equivalent of a

386. The alternative would be an Atom, VIA or some other 'embedded' x86 processor. All of these might be harder to handle than the slower 386 though. The Quark comes on the Intel Galileo board which can be connected to the Cyclone V GX via PCIe, which is one way to join them.

I'd suggest the OP avoid making an FPGA board: a 6/8 layer board with a ton of low-voltage high-current FPGA power supplies, BGA escapes, signal integrity etc, is a somewhat more complex endeavour than a basic-ish 2/4 layer board to hook into an expansion header on the existing board. Not least because you can design that in a free/cheap tool, you don't have to pay for fancy PCB tools, and you can get it fabbed anywhere.

I very much doubt it'll be possible without level translators, which doubles the complexity of the addon board.

Theo

Reply to
Theo Markettos
Loading thread data ...

I have no plans to make a board at the present time. Just some interfacing cabling between the Altera Cyclone V GX starter kit I purchased and the ethernet board I bought. The rest I plan to do in the native kit.

Eventually (whenever I get the CPU designed and working), I would like to see about getting an actual device manufactured with its own real hardware. And ultimately, I would like to even create my own CPUs from raw silicon (epitaxial processes up through packaging). Big dream though. :-)

The whole FPGA to feed an 80386 was me thinking about whether or not such a thing were possible. I do not plan to do it. Once I began thinking about it I saw that the 80386 used 5V, and that I had only remembered the Altera documentation saying 1.1V?? to 3.3V. I did not remember where it said 5V anywhere.

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

That's pretty clearly the input power to the board. You can be very sure that there are a number of DC-DC point-of-load converters to make lower voltages from this, and the 5V itself is unlikely to power any other board-level component directly.

--
Gabor
Reply to
GaborSzakacs

If you go here:

formatting link

And download the C5G User Manual, and look on page 52, you'll find this quote:

-----[ Start ]----- The The 40-pin header connects header connects header connects directly to

36 pins of the Cyclone V GX FPGA, and also provides DC +5V (VCC5), DC 3.3V VCC3 and two GND pins. Figure 3-25 shows the I/O distribution of the GPIO connector. The maximum power consumption of the daughter card that connects to GPIO port is shown in Table 3-18:

Table 3-18: Power Supply of the Expansion Header Supplied Voltage Max Current Limit

5V 1A 3.3V 1.5A 1.5A

-----[ End ]-----

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

Fine, then its a power supply output. It makes no implication that the I/O pins can drive to 5V, only that 5V is supplied to power your add-on module. While you could use that to power a 5V component like your antique CPU, it was probably intended as a source for circuitry or additional supplies that don't directly connect to the I/O pins. For example you might want to add a USB interface which requires 5V for its connector, even though any modern PHY chip will run at 3.3V for all logic I/O.

By the way, the I/O pins won't drive at 1A either.

--
Gabor
Reply to
GaborSzakacs

Gabor, to be clear, I posted that information from the point of view: "This is where I got my info. In case I'm wrong, someone could correct me." I wasn't trying to correct you. I'm still not

100% sure what it means.

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

If he can't find an FPGA in something other than BGA packaging then yes -- you're right. And, he probably would need an FPGA with enough I/O to be in a BGA. So again...

--

Tim Wescott 
Wescott Design Services 
http://www.wescottdesign.com
Reply to
Tim Wescott

Hey Rick:

I don't know where a good place to put this is, so I'll put it here.

What you needed to do to answer your question was to look at the data sheets for the FPGA and processor in question, and look at the schematic of the FPGA test board.

The data sheet for the processor will have four numbers that are pertinent to this problem: the input high voltage, the input low voltage, the output high voltage, and the output low voltage.

The FPGA data sheet will have those same four numbers, except that FPGAs often let you power up different I/O banks with different supplies. In addition (if you can't power up an I/O bank with 5V), the FPGA data sheet will tell you if the thing can tolerate voltages higher than the power rail.

Leaving the board schematic out of it (because we know there's a gotcha there), you match up the input high voltage of a receiving chip with the output high voltage of a transmitting chip. If the latter is greater than the former, and the output high voltage isn't greater than the voltage that the receiving chip can stand, then that connection is OK. You need to do this for ALL THE PINS ON BOTH CHIPS, although usually those five numbers are the same for all pins on their respective chips.

Had you done this, and found it good, you'd still have those diodes on the FPGA board (they're protection diodes, to prevent software guys from damaging the hardware :) ).

This is just one of the tasks that you need to do any time you're going to marry two chips on a board. It's easier if everything is CMOS and operates on the same power rail -- in that case, you're probably OK. But as soon as thing 1 operates at one voltage and thing 2 operates at another, you have to dig through all this stuff, and put in level translators if the chips themselves aren't up to snuff.

--

Tim Wescott 
Wescott Design Services 
http://www.wescottdesign.com
Reply to
Tim Wescott

In researching the 80386 datasheet, I came across a comment that said a later version of the 80386 core was completed in "fully static CMOS," whatever that means, for a couple devices, as per the wiki:

formatting link

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

The 5 volt pin is a power source from the FPGA board to the cable. It can supply 1 amp of current. "and also provides DC +5V (VCC5)" says this is separate from the FPGA I/Os.

To learn about the I/O voltages the FPGA supports you need to read the pin definitions of the I/Os from the FPGA in the eval board manual. This will be determined by the voltage supplied to the FPGA from the eval board as well as the configuration used in the FPGA. Even with a given voltage, there can be multiple I/O standards.

--

Rick
Reply to
rickman

In early processors from Intel they used dynamic logic which used capacitance to store voltages rather than FFs. This voltage would leak away if it was not constantly refreshed, so there was a maximum clock period. That was all about saving space in the chip, but it required complicated multi-phase clocks.

As the process geometries got smaller and they could pack more onto the chip they started using clocked FFs which have no maximum clock period and so are "static".

--

Rick
Reply to
rickman

How would I go about making my own boards? I am aware of commercial companies which have software you can download, and construct the layout through their process manufacturing, and you will receive boards and solder masks.

But are there things you can do yourself? Buy a blank copper layer, cover with a photoresist, expose a mask, and then chemically etch away the exposed or unexposed are (depending on the resist)?

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

Yes, there are home kits for building boards. Unless you go VERY fancy, you will be limited to 2 sided boards, and likely do NOT have plated through holes, so you need to solder through jumpers to get from one side to the other.

Generally, the line width you can make with this sort of system isn't any where near what you can do with commercial fabrication.

If you are only planning a few boards, it may be cheaper to use some of the short run prototype shops, as there is a moderate investment in tools to be able to make your own boards.

Reply to
Richard Damon

I don't bother with that anymore. I think I made one or two PCBs back in my misspent youth though. It is a messy, somewhat complex and unrewarding task to make crude PCBs yourself and then you have corrosive chemicals to dispose of. Even assembly of PCBs is a PITA in my opinion although I will do a little work on them. But this is my perspective where my eyes and hands are nowhere near as good as they used to be even if my patience is a lot better.

I much prefer to let contract assembly houses do my dirty work for me. PCBs can be downright cheap if you limit them to 4 layers. There are a number of places which will batch numerous user's boards to make panels (the size that the PCB fabricator produces) and then ship everyone their individual boards. Oshpark is one I have seen a lot of. ITEAD provides a similar service and will also do the assembly. Then I just read about dirtypcbs.com who also make cheap PCBs.

FPGAs are easy because you can test your code in a simulator and reload in the hardware anything that doesn't work. Actual hardware is not so easy and mistakes can get expensive. You need to start small and work your way up. Laying out a board has a *lot* of pitfalls. With a $50 to $100 worth of parts on the board you don't want to mess it up too many times.

--

Rick
Reply to
rickman

I found this video. It was interesting. Also some instructables on the process.

formatting link

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

Even better:

formatting link

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

You can do that for 1 and 2 layers, and if you don't need tight tolerance. You won't get plated through holes, so you have to wire through all vias.

The commercial places are, as far as I know, reasonably priced for what they do.

-- glen

Reply to
glen herrmannsfeldt

Version 2.0. Much faster, cleaner:

formatting link

Best regards, Rick C. Hodgin

Reply to
Rick C. Hodgin

Listen to Rick: don't try to make your own boards.

I don't have the kind of professional board layout experience that many of the regular contributors here do, but I've played around at the experimenter level for many years. I have etched my own boards (very many years ago) and I don't recommend it. There are many way to mess it up, and even if you do everything perfectly you'll only produce a crude board. I haven't used the places Rick mentioned, but I've had good results from Alberta Printed Circuits

formatting link

Regardless of how you get the board made, you'll need to design it first. There are lots of inexpensive (even free) CAD tools available and I'm sure you can get good recommendations here. You'll need to create a schematic as the first step in designing a PC board, even if you use an integrated suite those will generally be separate tools.

And finally I'm not quite clear: are you honestly considering designing and building a custom board for your project, or are you just curious about the process and the step involved? What's your experience designing and building hardware previously?

Reply to
chrisabele

LOL, did you notice that the PCB is white and not green ??

What to know why ??

hamilton

Reply to
hamilton

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.