What components were different between the 16-64kb and 64-256kb?
IBM 5150 motherboard - 64KB-256KB
Four banks of 64K-bit chips.
See the diagram at [
here].
/CAS0 pulse (for motherboard RAM bank 0) generated by U47 when [A19=0, A18=0, A17=0, A16=0], which equates to address range 0 to 64K
/CAS1 pulse (for motherboard RAM bank 1) generated by U47 when [A19=0, A18=0, A17=0, A16=1], which equates to address range 64K to 128K
/CAS2 pulse (for motherboard RAM bank 2) generated by U47 when [A19=0, A18=0, A17=1, A16=0], which equates to address range 128K to 192K
/CAS3 pulse (for motherboard RAM bank 3) generated by U47 when [A19=0, A18=0, A17=1, A16=1], which equates to address range 192K to 256K
/RAS0 pulse (for motherboard RAM bank 0) generated by U65 when [A19=0, A18=0, A17=0, A16=0], which equates to address range 0 to 64K
/RAS1 pulse (for motherboard RAM bank 1) generated by U65 when [A19=0, A18=0, A17=0, A16=1], which equates to address range 64K to 128K
/RAS2 pulse (for motherboard RAM bank 2) generated by U65 when [A19=0, A18=0, A17=1, A16=0], which equates to address range 128K to 192K
/RAS3 pulse (for motherboard RAM bank 3) generated by U65 when [A19=0, A18=0, A17=1, A16=1], which equates to address range 192K to 256K
The exception to that is a motherboard RAM operation that is part of RAM refresh.
In RAM refresh:
- No /CAS pulses are generated, because the RAM refresh mechanism used in a 5150 is 'RAS only refresh'.
- /RAS generated for all four banks simultaneously, irrespective of address.
IBM 5150 motherboard - 16KB-64KB
Four banks of 16K-bit chips.
Per the 64KB-256KB motherboard only differing in that an
additional two address bits (A15, A14) are used to achieve:
RAS+CAS for bank 0 when address is 0 to 16K
RAS+CAS for bank 1 when address is 16 to 32K
RAS+CAS for bank 2 when address is 32 to 48K
RAS+CAS for bank 3 when address is 48 to 64K
IBM 5160 motherboard - 64-256KB
Four banks of 64K-bit chips.
Motherboard RAM bank decoding is done by a ROM. That ROM is U44 in the diagram at [
here].
The ROM contains four tables, and the table in use is selected by the jumpering of E2. On a 64-256KB motherboard, there are no jumpers on E2, which results in the first table being used, and that table assumes 64K-bit chips in all four RAM banks.
IBM 5160 motherboard - 256-640KB
Two banks of 256K-bit chips and two banks of 64K-bit chips.
Like for the 64-256KB motherboard, except that there is a
jumper on pins 1 and 2 of E2, resulting in the second table in the ROM being used, that table assuming 256K-bit chips in banks 0 and 1, and assuming 64K-bit chips in banks 2 and 3.