bash@cbnewsd.att.com (thomas.w.basham) (02/23/91)
There seems to be a consensus (or myth) that a system using SIMM memory can't mix 1M and 256K simms. My machine uses two banks of 4 slots. Bank 0 must be filled, bank 1 is optional. Since the system obviously has the ability to determine bank 1's status, why is it beyond reason to simply see how high one can access bank 1, add that to what's in bank 0, and store it in CMOS. Those who have 1M in 256K's and upgrade to 4M wouldn't have to sell off their 256K's, but now have 5M. My question is: why wouldn't/isn't this done? Are there valid reasons (other than programming shortcuts) to keep memory to a 1/2/4/8 M system. Or: If this mixing can be done, why is so few people seem to know about this? Seems to me it's nothing but poor BIOS programming that can't access the separate banks with different ranges. I've mixed ram types in (homemade) micros before, albiet (considerably) smaller systems. It's really just a matter of knowing what the top address is, and not exceeding it. Very curious, Tom -- Tom Basham AT&T Bell Laboratories bash@ihlpb.ATT.COM I'm the NRA. I also vote. I can't say what AT&T does.
6600arac@ucsbuxa.ucsb.edu (Wolf) (02/23/91)
You can mix the two types of simms. My motherboard manual actually tells you what types you can mix. I have 5 meg on board because I wanted to keep my old simms. "I prefer them and us. It gets rid of excess baggage and lets you get right down to cases." Wolf 6600arac@ucsbuxa.ucsb.edu (Internet) 6600arac@ucsbuxa.bitnet (Bitnet)
ong@d.cs.okstate.edu (ONG ENG TENG) (02/24/91)
From article <1991Feb23.045704.985@cbnewsd.att.com>, by bash@cbnewsd.att.com (thomas.w.basham): > > There seems to be a consensus (or myth) that a system using SIMM > memory can't mix 1M and 256K simms. My machine uses two banks of > 4 slots. Bank 0 must be filled, bank 1 is optional. Since the > system obviously has the ability to determine bank 1's status, > why is it beyond reason to simply see how high one can access bank 1, > add that to what's in bank 0, and store it in CMOS. > > Those who have 1M in 256K's and upgrade to 4M wouldn't have to sell > off their 256K's, but now have 5M. > > My question is: why wouldn't/isn't this done? Are there valid > reasons (other than programming shortcuts) to keep memory to a > 1/2/4/8 M system. > > Or: > > If this mixing can be done, why is so few people seem to know about this? > > Seems to me it's nothing but poor BIOS programming that can't access > the separate banks with different ranges. I've mixed ram types in > (homemade) micros before, albiet (considerably) smaller systems. It's > really just a matter of knowing what the top address is, and not > exceeding it. Well, sure, you can mix, but you might have to sacrifice CPU power. What do I mean? Well on a 12MHz 286, that's fine, because 80ns RAM's are common and we can achieve 0 wait state w/o interleaving. But when you go to say 16MHz or 20MHz, 80ns is not fast enough to keep pace with the CPU, so bank interleave is required for 0 wait state (else you have to go 1 wait state on NO interleave). What does interleave requires? Well instead of having just one bank (that is, 18 bits for 286 and 386SX, 36 bits for 386DX) of the same type of memory (that is 256k chips or 1meg chips), you need 2 banks of the same kind. Since most motherboards regardless of 386DX or 386SX have only 2 banks on board, mixing memory chip types mean sacrificing interleaving, i.e. CPU power. Yes, I do have 1meg of 256k memory chips sitting around after upgrading to 4meg. Memories are so cheap today that I can play smash-the-bug with my hammer on the chips. (They should make a law that requires all 386's onwards to have at least 4meg)!
rcollins@altos86.Altos.COM (Robert Collins) (02/27/91)
In article <1991Feb23.045704.985@cbnewsd.att.com> bash@cbnewsd.att.com (thomas.w.basham) writes: > >There seems to be a consensus (or myth) that a system using SIMM >memory can't mix 1M and 256K simms. My machine uses two banks of > >Seems to me it's nothing but poor BIOS programming that can't access >the separate banks with different ranges. I've mixed ram types in As a BIOS programmer who has ported to a few chipsets, I think it is safe to say that it depends on the capabilities of the chipset. I can't think of a single BIOS implementation doesn't take full advantage of the chips used in the system. Consider the C&T NEAT chipset. The following is a list of valid configurations in the NEAT (& LEAP): BANK0 BANK1 BANK2 BANK3 Total 1 0k 0k 0k 0k 0k 2 256k 0k 0k 0k 512k 3 1M 0k 0k 0k 2M 4 256k 64k 0k 0k 640k 5 256k 256k 0k 0k 1M (+) 6 1M 1M 0k 0k 4M (+) 7 256k 256k 256k 0k 1.5M 8 256k 256k 1M 0k 3M 9 1M 1M 1M 0k 6M 10 256k 64k 256k 256k 1.64M 11 256k 256k 256k 256k 2M (*) 12 256k 64k 1M 1M 6.64M 13 256k 256k 1M 1M 5M (+) 14 1M 1M 1M 1M 8M (*) (+) = 2-way page interleave mode (*) = 4-way page interleave mode The above description is EVERY possible configuration this chipset allows. As you can see, not every permutation of 256k, 64k, and 1M chips is programmable into this chipset. So to answer your question: it is not sloppy BIOS programming that inhibits the mixture, it's most likely the chipset. -- "Worship the Lord your God, and serve him only." Mat. 4:10 Robert Collins UUCP: ...!sun!altos86!rcollins HOME: (408) 225-8002 WORK: (408) 432-6200 x4356