[comp.sys.ibm.pc.hardware] Question -- 386DX versus 386SX

boone@athena.cs.uga.edu (Roggie Boone) (02/08/91)

I know this has probably been asked before, but I am new to this group.

Could someone please explain or direct me to an article that explains in 
some detail the difference(s) between a full 80386 microprocessor
(80386DX) and the 80386SX?  Are they both 32-bit processors?  I've 
heard that the main difference is that the SX "talks" to the outside 
world (memory, disk, etc) at 16-bits while the DX uses 32 bits.  Is this
true and is this the only difference?  Are there any limitations on 
the 386SX running 386-specific software?

_Any_ info that can be provided (technical or not) would be appreciated.

Thanks in advance.

Roggie Boone   (boone@athena.cs.uga.edu)    
University of Georgia

timd@hotwheel.dell.com (Tim Deagan) (02/08/91)

In article <1991Feb7.182436.17262@athena.cs.uga.edu>,
boone@athena.cs.uga.edu (Roggie Boone) writes:
> I know this has probably been asked before, but I am new to this group.
> 
> Could someone please explain or direct me to an article that explains in 
> some detail the difference(s) between a full 80386 microprocessor
> (80386DX) and the 80386SX?  Are they both 32-bit processors?  I've 
> heard that the main difference is that the SX "talks" to the outside 
> world (memory, disk, etc) at 16-bits while the DX uses 32 bits.  Is this
> true and is this the only difference?  Are there any limitations on 
> the 386SX running 386-specific software?
> 
> _Any_ info that can be provided (technical or not) would be appreciated.

Your description of the difference is accurate.  Internally the SX and DX
have the same bus, 32-bits.  All the internal registers are the same, as 
are the protected mode features.  To the outside world the SX looks the same
as a 286, a 16-bit external bus.  Perfectly adequate for all the ISA (AT) bus
cards out there now.  This is the same trade-off INTEL made when they started
the whole PC thing by taking the 8086 16-bit processor and making an external
8-bit version called the 8088.
The SX comes in two official flavors, 16 and 20 MHz.  Most DX's are 20
or 25 MHz.
The SX has had some reported problems with protected mode applications such as
WIN 3.0, but most all of these have been traced down to the chip-set the
CPU was
glued to.  There is one technical consideration with 386SX's, it'll only matter
to HW developers but it is frustrating, the SX only comes in one package, 
PQFP, the Plastic Quad Flat Pack.  Only one company sells a chip-clip and it
costs hundreds of dollars and takes 6-8 months to ship, if ever.  So, hardware
debugging is a MAJOR bitch.  Small point, but it can completely stymie
development
in a pinch (inverse assembling and such is impossible).
There are some differences such as prefetch queue size which are invisible and
probably won't matter to anyone.  Price wise the SX, especially with caching,
can be a good deal.  It all depends on what you want to do.  I'd probably
buy one if the price were right.


------------------------------------------------------------------------
------------------"Wake up!  Wake up!" - Spike Lee ---------------------
------------------------------------------------------------------------
                         Rev. Tim Deagan
                     timd@hotwheel.dell.com
                     timd@twaddle.dell.com

wilken@plains.NoDak.edu (Scott Wilken) (02/08/91)

In article <1991Feb8.151457.3206@cbnewsj.att.com> browning@cbnewsj.att.com (mark.d.browning) writes:
>		386dx			386sx
>3. Speed (MHz)	20, 25, 33		16, 20

You forgot the 16MHz 386DX.  They arent popular much anymore except in laptops,
but for a few years they were the mainstay of the 386's.

Scott

-- 
                      Internet:  wilken@plains.nodak.edu
                         UUCP:  ..!uunet!plains!wilken
                            Bitnet:  WILKEN@PLAINS

johnk@cpqhou.uucp (John Kennedy) (02/09/91)

In article <1991Feb7.182436.17262@athena.cs.uga.edu> boone@athena.cs.uga.edu (Roggie Boone) writes:
>I know this has probably been asked before, but I am new to this group.
>
>Could someone please explain or direct me to an article that explains in 
>some detail the difference(s) between a full 80386 microprocessor
>(80386DX) and the 80386SX?  Are they both 32-bit processors?  I've 
>heard that the main difference is that the SX "talks" to the outside 
>world (memory, disk, etc) at 16-bits while the DX uses 32 bits.  Is this
>true and is this the only difference?  Are there any limitations on 
>the 386SX running 386-specific software?
>
>_Any_ info that can be provided (technical or not) would be appreciated.
>
>Thanks in advance.
>
>Roggie Boone   (boone@athena.cs.uga.edu)    
>University of Georgia

To the programmer, i.e. to software, the SX looks exactly like a DX.  Well,
not EXACTLY, but the differences are minor minor minor.  
The DX has a 4 GB address space (32 bits), while the SX has only a 16 MB
(24 bits) address space.  Also, the SX requires a 387SX co-processor, the
DX can use either a regular 387 or a 287.
-------------------------------------------------------------------------------
 John R. Kennedy              | Most applications of the 80386 will use real
 Compaq Computer Corporation  | mode for initialization only.
                              |
 uunet!cpqhou!johnk           |                   -- 80386 Programmer's
                              |                      Reference Manual
 "Don't tread on me."         |                                              
-------------------------------------------------------------------------------   

phil@brahms.amd.com (Phil Ngai) (02/09/91)

In article <1991Feb8.151457.3206@cbnewsj.att.com> browning@cbnewsj.att.com (mark.d.browning) writes:
|4. Bus		Uses BE0 to BE3 to	Uses BLE and BHE to
|   Interface	indicate which 8 bits	indicate which 8 bits
|		out of 32 to enable	out of 16 to enable,
|					slightly different than
|					BE0..3 in function.

What is the difference between BLE/BHE and BE0/BE1? (of course BE2/3
do things the SX can't.)

--
Would you trust a government that didn't trust you?

pasquale@sgl (Pasquale Leone) (02/11/91)

In article <1991Feb7.182436.17262@athena.cs.uga.edu> boone@athena.cs.uga.edu (Roggie Boone) writes:
>I know this has probably been asked before, but I am new to this group.
>
>Could someone please explain or direct me to an article that explains in 
>some detail the difference(s) between a full 80386 microprocessor
>(80386DX) and the 80386SX?  Are they both 32-bit processors?  I've 
>heard that the main difference is that the SX "talks" to the outside 
>world (memory, disk, etc) at 16-bits while the DX uses 32 bits.  Is this
>true and is this the only difference?  Are there any limitations on 
>the 386SX running 386-specific software?
>

You canNot write a program that can distinguish between a 386SX and a
386DX. It therefor is obviuos that an SX can run ANY software that a
DX can run (though somewhat slower because of the restricted data path).
Anyone who tells you different is either trying to sell you a DX
or is a software type who thinks hardware is strange art that nobody
quite understands.
Intel may have built some pretty idiotic chips in the past but they seem
to know what they are doing now.
The big reason the SX chip is cheaper than the DX (other than marketing)
is that the DX is packaged in a ceramic PGA (pin grid array) package
and the SX is in a plastic quad flat pack. Look up the price of
any chip which comes in both package types and you'll see that the
PGA is usually about twice the price of the quad flat pack.

pasquale@sgl.ists.ca

hays@iSC.intel.com (Kirk Hays) (02/16/91)

In article <18685@ists.ists.ca>, pasquale@sgl (Pasquale Leone) writes:
|> In article <1991Feb7.182436.17262@athena.cs.uga.edu> boone@athena.cs.uga.edu (Roggie Boone) writes:
|> >I know this has probably been asked before, but I am new to this group.
|> >
|> >Could someone please explain or direct me to an article that explains in 
|> >some detail the difference(s) between a full 80386 microprocessor
|> >(80386DX) and the 80386SX?  Are they both 32-bit processors?  I've 
|> >heard that the main difference is that the SX "talks" to the outside 
|> >world (memory, disk, etc) at 16-bits while the DX uses 32 bits.  Is this
|> >true and is this the only difference?  Are there any limitations on 
|> >the 386SX running 386-specific software?
|> >
|> 
|> You canNot write a program that can distinguish between a 386SX and a
|> 386DX.

You are quite wrong - the prefetch queues on the SX and DX are of different
lengths, and by writing a short sequence of self-modifying code, it is possible to detect the difference - the code in question has been posted to the net.

I (independently, others did it also) invented this technique for distinguishing
between the 8088 and the 8086 in 1983, before I worked for Intel.

|> Intel may have built some pretty idiotic chips in the past but they seem
|> to know what they are doing now.

Oh, thank you for the vote of confidence - I feel so much better now.
-- 
Kirk Hays - NRA Life.
Message for Timothy Fay - "Do not eat things you will not kill."