Using an FPGA to drive the 80386 CPU on a real motherboard - Page 3

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Friday, April 8, 2016 at 1:58:12 PM UTC-4, rickman wrote:
Quoted text here. Click to load it

FreePCB looks good.  How much should a board like this cost?

Quoted text here. Click to load it

I had planned on using my Altera Cyclone V GX dev board with this FPGA:

    http://wl.altera.com/products/devkits/altera/kit-terasic-cyclone-v-gx-starter.html

I have an adapter coming which leverages the HSMC port to GPIO ports:

    http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo67%&No32%2&PartNo=2#section

I'm going to begin working on my Logician tool off-and-on this year.
It will allow me to program logic gates and handle translation to a
physical process, along with wire routing.  It will include a full
simulator, and an export-to-Verilog module, which I will use for the
general purpose logic.

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
rickman wrote:

Quoted text here. Click to load it
I have learned how to solder QFPs down to 0.4mm pitch, but it takes a TINY  
soldering tip, a stereo zoom microscope and a STEADY hand!  0.65 mm pitch is  
pretty easy, at least for me.

Jon

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Friday, April 8, 2016 at 3:05:09 PM UTC-4, Jon Elson wrote:
Quoted text here. Click to load it

I was under the impression I'd use some kind of solder paste over a solder
mask the PCB maker sends, place the parts, and then simply bake in some kind
of high-heat oven.

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On 4/8/2016 3:09 PM, Rick C. Hodgin wrote:
Quoted text here. Click to load it

You can do that.  But if you are using QFPs, a soldering iron works  
pretty well I am told.  The solder stencil is not so easy to use but  
works ok.  If you have BGAs or land grid array parts you have to use the  
solder stencil.

--  

Rick

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
Rick C. Hodgin wrote:

Quoted text here. Click to load it
I don't do this for one-offs or prototypes.  There is a big trick to the  
stencils.  You need to reduce the area of the stencil apertures, or the  
excessive solder paste clumps together and bridges between the leads.  As  
the lead pitch gets finer, this gets more and more critical.

Another trick is to place solder blobs on two diagonal pads, and tack the  
chip down.  You can view the alignment on all 4 sides and "walk" the chip by  
melting the solder on one of the tacked-down pins at a time until alignment  
is good.  Then, apply liquid flux down all the rows of pins, and drag a  
soldering iron down the rows.  The solder plate on the board is usually  
enough to solder the pins.  

Jon

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On 4/8/2016 6:17 PM, Jon Elson wrote:
Quoted text here. Click to load it

I have yet to deal with hand soldering of anything this fine, but I'm  
told you can put a blob of solder on the iron tip to do the swipe you  
are referring to.  *Very* little solder is needed to make a good  
connection.  Many follow up the solder swipe by a solder braid and iron  
to remove the excess which may not be easy to see between or behind the  
pins.  Someone who was hand soldering one of my boards told me he had a  
fit trying to remove a short once because it was so fine he couldn't see  
it even *with* a magnifier.  Eventually he just passed a sharp point  
between all the leads on the connector and the short was gone.  I guess  
it was virtually like a tin whisker (but before RoHS).

--  

Rick

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
rickman wrote:



Quoted text here. Click to load it

Also, the 74LVC8T245 is a good bidirectional translator, 8 bits in a 24-pin  
package.  Or, the 74ALVC164245DL, two independent 8-bit translators in a 48-
pin package.  I've used a bunch of both of these in some gear I have  
produced, mostly to connect between FPGAs with 3.3 V I/O and 5V systems.
I also used the former to connect 5 V systems to the old Beagle Board  
computer, which had 1.8 V I/O.

Jon

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
Rick C. Hodgin wrote:

 I'll get the pinouts
Quoted text here. Click to load it
Complex designs like this require GOOD schematic and PCB layout tools.  I  
use an old one, Protel 99SE, but that is no longer available, and was pretty  
expensive when it was.  I have used Kicad a little, it shows REAL promise,  
but is not yet as good as Protel.  It runs on Windows AND Linux!  And, it is  
free, open-source software.  The advantage of these packages is you can do  
copper pours, inner power plane layers, and it checks the correctness of the  
PCB layout against the schematic.  No human could EVER be sure that a  
complex PCB layout was correct, no matter how long they looked at it.  
Software DRC takes just a couple seconds.

Jon



Re: Using an FPGA to drive the 80386 CPU on a real motherboard
Quoted text here. Click to load it

Just to note that there's a free descendent of Protel which is called
CircuitMaker:
http://circuitmaker.com/

I haven't used it, but I use its commercial sister Altium which is pretty
nice.  The difference with CircuitMaker is your boards have to be public,
there is no way to keep them private.  So it's no good for commercial work,
but that limitation is not a problem for an open source project.

(It's also not open source, but my experience is the proprietary tools are
generally several steps above the open source tools - depending on board
complexity, going with proprietary tools can be a necessary evil to get work
done.  It also relies on an internet connection)

Theo

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Tuesday, April 5, 2016 at 9:22:32 PM UTC-4, rickman wrote:
Quoted text here. Click to load it

Got it.  Makes perfect sense.

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On 05/04/16 21:15, Rick C. Hodgin wrote:
Quoted text here. Click to load it

If you plan to slow down the CPU by slowing down the FPGA clock be  
careful: FPGAs like clean and relatively fast edges and some slow  
generators don't work well.

Pere

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Wednesday, April 6, 2016 at 8:16:26 AM UTC-4, o pere o wrote:
Quoted text here. Click to load it

I plan on using the FPGA clock as it is, and then creating logic within
the FPGA to drive a pin high and low which produces the simulated clock
signal at a speed I can vary.

Since the Am386 can operate at a wide range of frequencies, I'll start
out at a 2 Hz clock and see what happens. :-)

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Tue, 05 Apr 2016 12:15:35 -0700, Rick C. Hodgin wrote:

Quoted text here. Click to load it

Okay, so I'm not the only one who's into slow system design. :)

Quoted text here. Click to load it

I have to ask: why spend time hacking x86 when there are so many other,  
BETTER architectures out there? :)

Also, why are you doing this? Is this a hobby? Work related? Starting a  
new bussiness? Want to design and implement a NSA-proof PC?

Quoted text here. Click to load it

Does simulation count? :D

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Wednesday, April 6, 2016 at 3:07:55 PM UTC-4, Aleksandar Kuktin wrote:
Quoted text here. Click to load it

I am not objected to having it go faster, but the faster it goes the
most expensive it is. :-)

Okay, are you sitting down?  Here goes... :-)

My ultimate goal is to build a completely homemade CPU using my own
garage fab on 3 to 10 micron processes!  Once I can get that product
working, then it can be optimized and honed to more modern processes,
with my ultimate goal coming in around those process technologies used
in the late 90s around 500 nm.

Quoted text here. Click to load it

I have a long history on 80386.  I wrote my own kernel, debuggers, etc.
It's been a relationship dating back to the late 80s.

However, one of the reasons I'm doing this is because I am extending
the ISA out to include 40-bit addresses, rather than just 32-bit,
which accesses memory in the Terabyte range, and to include a built-in
ARM ISA which allows the CPU to switch between ISAs based on branch
instructions.

Quoted text here. Click to load it

To be honest, I am a Christian, and I want to use the talents I was gifted
with and give the fruit of my labor back to God, and to my fellow man (and
not a pursuit of money, or proprietary IP, or patents, or other such things,
but rather an expression of love basically in giving back).

Quoted text here. Click to load it

Yes.  Also in emulation, as by a real FPGA product, but one which does not
plug into a socket, but is its own entire creation.  Here's an Aleksander
who created a 486 SX CPU (it has not integrated FPU):

    https://github.com/alfikpl/ao486

My goals are part of a project I'm working on called LibSF 386-x40, which
is a 40-bit extension to the 80386, and 32-bit ARM.  I use a WEX register
model which extends the 32-bit registers to 40-bit registers:

    
https://github.com/RickCHodgin/libsf/blob/master/li386/li386-documentation/images/wex_register_mapping.png

However, in the past couple weeks I've had the idea of a pointer selector,
which operates like a segment selector, but on a specific pointer register.
When enabled, it loads an extra 8-bits into the segment register associated
with specific register, such that it then is able to reference a 4GB window
of memory within the 1 TB address space:

    https://groups.google.com/d/msg/comp.arch/bcpb03mL0o0/xUBzCXDmBgAJ

These are all part of long-term plans.  I'd like to have my first CPU being
shipped to a fab for real manufacturing by July 12, 2022, which I expect to
be around a 90 MHz part.

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
Rick C. Hodgin wrote:


Quoted text here. Click to load it
OH, MY!!!  Call out the men in the white coats!  While some people have  
actually made transistors and even very SIMPLE ICs at home, when you get  
into more complex stuff, it starts to get real hard!  Intel's version of the  
'386 had 275,000 transistors!  Do you have the software tools to simulate  
the timing on such a chip?  And, of course, all 275,000 of those transistors  
have to work!  

I occasionally make PC boards in my basement, and I have some professional-
grade machinery to use, such as a laser photoplotter, Kepro dry film  
laminator and Kepro etcher.  I still have problems with yield, and have to  
touch up the boards to make them work.  I can't IMAGINE how much harder that  
could get with 275,000 transistors on Silicon!  Uhhh, maybe you might try to  
get a single FF to work, first.  How are you going to make the masks?  Have  
you ever worked with Arsine, DiBorane, Phosphine and similar gases?


Quoted text here. Click to load it
Ah, well, this is different.  Let the fabs deal with the deadly gases, clean  
room environment, maks making, etc.

I've been working on projects which make chips through the MOSIS service.  
This is NOT cheap, by any means.  We use the very old AMI C5N process, now  
provided to MOSIS through ON Semi.  It is a .5 um process.  A small chip we  
made was fabbed by them on a multi-project wafer for about $18,000.  I doubt  
your 80386 would fit in that size.  They charge by the square mm.  Their  
multi-project wafer system combines 20 or more different designs onto one  
reticle, and then they dice up the chips for the different users.  A larger  
project ended up running about $44000, but we got more instances of the chip  
for that than the standard order of only 40 chips.

Jon

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Wednesday, April 6, 2016 at 5:26:08 PM UTC-4, Jon Elson wrote:
Quoted text here. Click to load it

I plan to move in stages. :-)  I also don't plan on doing it alone.  I
presume there will be people at some point who would come on board and
help me manufacture chips, possibly with old fab equipment we could pick
up at that time for the price of scrap metal, and then retool as needed.

I'm not planning on making my own chips before the end of the 2020s.
Until then, I'll use commercial fabs.

Quoted text here. Click to load it

I figured the CPUs I'd make would cost $1,000 each in the early samples,
with an anticipated 50 to 100 CPU minimum, but that if I am able to create
the industry I'm hoping to create (people who are willing to buy CPUs that
are wrought of love, more than high-speed bells and whistles, looking to
them as a utility to augment man's existence, rather than as a whizz bang
eye candy newest fad ("gotta have the $12K iPhone 6 because my $10K iPhone
5 is just so last year") kind of thing).

I want to foster an industry that seeks to re-educate people that there are
needs, and then there are wants, and that people don't need to get the most
expensive, or newest things, to have things that are useful and usable, but
that it's more important for us to work together to help one another, and
to use the skills and resources we have to make better each other's lives,
than to hoard that talent behind a money wall, or an intellectual property
wall, etc.

In short:  I want people helping people.  I want people loving people.  I
wan people being to other people the way people should be to other people,
and not for forced reasons, but for internally realized reasons, as by an
examination of what it truly means to be here in this world alongside all
the other people we're here with in this world.

It's a tremendous gift we've been given, and I want us to recognize that
gift for what it is (and from Who it comes from), and to then live our
lives as we desire to do so, but being subject to that realization, and
all it entails (remembering God who gave us these opportunities, for
example).

I want there to be love in the things we help each other with, rather
than just a pursuit of cold, hard, dispassionate, money, or of some
personally held view of what it means to have power (owning the rights
to some "intellectual property," for example).

It's not a very popular position I'm in pursuit of, but it's one I believe
in whole-heartedly, which is the one at the foundation and core of all of
these efforts I'm involved with (using the unique and special talents and
skills I possess to make other people's lives better, encouraging them to
also use the unique and special talents and skills they possess, to do the
same in the areas of life they're interested in -- I'm interested in CPUs,
in hardware and software, but other people are interested in manufacturing
houses, or bulldozers or whatever.  Each of us can look to the people around
us and say within ourselves, "What can I do to make the people's lives
better, rather than the banker's lives better?").

There is real reward in giving, and in loving.  There is far less reward
in cashing a fat paycheck.  Real love endures.  Gifts of real giving endure.
The fat paycheck comes and goes quickly, and leaves little behind which
truly fills any part of our core being.

I want more people to experience that real fulfilling from giving and
loving, and in a true and sincere "nothing to be gained except in the
giving" way.

Hope this makes sense. :-)

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Wednesday, April 6, 2016 at 5:45:12 PM UTC-4, Rick C. Hodgin wrote:
Quoted text here. Click to load it

...then the need for larger runs would be there and the price would go down.

Best regards,
Rick C. Hodgin

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
Rick C. Hodgin wrote:


Quoted text here. Click to load it
OK, the MOSIS standard order is for 40 parts.  So, that's $40K each  
revision.  Unless you are truly brilliant, it is going to take a BUNCH of  
respins of the part to get anything working.
Quoted text here. Click to load it

Uhhh, I can imagine there will be at LEAST 5 customers for this.  How many  
shirts do you have?  Because you are certainly going to lose your shirt on  
this project!

Jon

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On 4/6/2016 11:40 PM, Jon Elson wrote:
Quoted text here. Click to load it

I think Rick H doesn't understand that electronics works exactly the way  
it does because it allows the industry to provide $25 cell phones to  
those who *need* them rather than the $400 latest eye candy phones to  
those who want them.  (I don't know of any $12,000 phones)  In some ways  
the $400 phones subsidize the cheap phones, but not in a serious way.  
The expensive phones just drive the "bleeding edge" market since that  
always costs more initially.  Then once the high initial costs are  
amortized, the rest of us get the benefit of the technology at the  
sustained product rate.

Producing a CPU chip with no real market in an antique technology will  
not help anyone, man or God.

This project *is* starting to sound familiar now.

--  

Rick

Re: Using an FPGA to drive the 80386 CPU on a real motherboard
On Thursday, April 7, 2016 at 2:59:10 AM UTC-4, rickman wrote:
Quoted text here. Click to load it

I recognize that the industry today works a particular way, and that it
has established itself in a particular manner.  However, I also recognize
that there are alternate ways of doing things, and that were we to regroup
around a focused and purposed relationship with God (one-on-one, each of
us, to Him, and then to one another), then He would be guiding the entire
operation by His sight, which is to be able to orchestrate people world-
wide toward the goals we're pursuing in this world which are given over to
Him.

The Bible states that whatever we do in word or in deed, we should do all
for the glory of God the Father in Heaven.  We are also told in the Lord's
Prayer that His will should be done, on Earth as it is in Heaven.

That means we, as people, individually and collectively, must acknowledge
Him as He is while we are here in this world going about our daily affairs.
He can make us prosper in helping one another, in being the strength in
other people's weaknesses, in giving of our gifts, and in love and charity
with our labor.

It's a different way of looking at things, but it's the one I am committed
to, and to the best of my knowledge, it's the one which is correct as per
the guidance God's given us to be one to another here in this world:  Each
of us operating in love for one another, loving one's neighbor even as our
own self.

Best regards,
Rick C. Hodgin

Site Timeline