# SIMM

SIMM (siglas en inglés de single In-line Memory Module) es un formato para módulos de memoria RAM que consisten en placas de circuito impreso sobre las que se montan los integrados de memoria DRAM. Estos módulos se insertan en zócalos encima de la placa base. Los contactos en ambas caras están interconectados, esta es la mayor diferencia respecto de sus sucesores los DIMMs. Fueron muy populares desde principios de los 80 hasta finales de los 90, el formato fue estandarizado por JEDEC bajo el número JESD-21C.

## Historia de la memoria SIMM

En tiempos remotos de la computadora doméstica y del computador personal, los circuitos integrados de memoria (por lo general DIP de 14 o 16 pines) se soldaban o se insertaban en zócalos sobre la tarjeta madre como cualquier otro componente de la misma. Esto suponía el uso de un área muy grande ya que los integrados iban colocados uno al lado del otro, además que en el caso de un fallo, la reparación era difícil o imposible condenando toda la placa. La actualización de memoria no se contemplaba en equipos individuales, dado que el mercado de memoria no era tan común. Con el desarrollo de nuevas tarjetas madre se hicieron claras esas desventajas y en un principio se plantearon formatos SIPP (no estándar en computadores 80286) que fueron las primeras presentaciones modulares de memoria RAM y el antecedente directo de las SIMM.
Skip Coppola propuso durante su estancia en IBM usar un SIPP de 3,5 pulgadas sin los pines que tan fácilmente se quebraban. IBM los adopta como estándar en su gama IBM Personal System/2, y se extienden a todos los compatibles con CPU Intel 80286 e Intel 80386. Es también adoptado por Apple para sus Mac (el Macintosh IIfx usa unos SIMMs no estándar de 64 pines, y la VRAM de los Macintosh LC de 68), y más tardíamente por Atari (en los Atari STe y Atari MEGA STe, aunque de los primeros existen unos pocos con SIPPs en lugar de SIMMs) y Commodore para los Amiga (los fabricantes de ampliaciones lo hicieron mucho antes). Se construyen de 8 chips + uno de paridad (9 bits) o sin paridad (8 bits, con el ahorro de un chip, pero menor fiabilidad), mayoritariamente de doble cara, y con capacidades de 256 kiB, 1 MiB, 4 MiB, 16 MiB. En algunos sistemas debían usarse a pares ya que cada banco de memoria estaba integrado por dos módulos.
La aparición del Intel 80486 trae también el paso al nuevo formato de 108 mm (4,25 pulgadas) y 72 pines. Esto era debido a que en un 386/486 era necesario instalar 4 SIMMs de 30 pines para completar una bancada de memoria. Dicha bancada podía sustituirse por un solo DIMM de 72 pines (dos en los equipos Pentium) lo que permitió conservar el factor de forma Baby AT en las placas madre pese a cuadruplicarse la capacidad de memoria. Se fabrican con memoria EDO/FPM/ECC y capacidades de 1 MiB, 2 MiB, 4 MiB, 8 MiB, 16 MiB, 32 MiB, 64 MiB, 128 MiB (estos últimos sólo usados en servidores).
El factor de forma de memoria RAM utilizado en PC es una presentación de los módulos de memoria que fue utilizado en los sistemas cuyos buses de datos eran de 32 bits o menos. A partir del uso de buses de 64 bits han sido reemplazados por los DIMM, que son el nuevo factor de forma estándar para los módulos de memoria usados en ordenadores personales, en los que la capacidad de almacenamiento ya se mide en gigabytes.
Un PC usa tanto memoria de nueve bits (ocho bits para datos y un bit para chequeo, o control, de paridad, en 9 chips de memoria RAM dinámica) como memoria de ocho bits sin paridad.

## Patillajes
### SIMM de 30 contactos

30-pin SIMM Memory Module :
| Pin # | Name | Signal Description | Pin # | Name | Signal Description |
| 1 | V$_{CC}$ | +5 VDC | 16 | DQ4 | Data 4 |
| 2 | /CAS | Column Address Strobe | 17 | A8 | Address 8 |
| 3 | DQ0 | Data 0 | 18 | A9 | Address 9 |
| 4 | A0 | Address 0 | 19 | A10 | Address 10 |
| 5 | A1 | Address 1 | 20 | DQ5 | Data 5 |
| 6 | DQ1 | Data 1 | 21 | /WE | Write Enable |
| 7 | A2 | Address 2 | 22 | V$_{SS}$ | Ground |
| 8 | A3 | Address 3 | 23 | DQ6 | Data 6 |
| 9 | V$_{SS}$ | Ground | 24 | A11 | Address 11 |
| 10 | DQ2 | Data 2 | 25 | DQ7 | Data 7 |
| 11 | A4 | Address 4 | 26 | QP | Data parity out |
| 12 | A5 | Address 5 | 27 | /RAS | Row Address Strobe |
| 13 | DQ3 | Data 3 | 28 | /CASP | Parity Column Address Strobe |
| 14 | A6 | Address 6 | 29 | DP | Data parity in |
| 15 | A7 | Address 7 | 30 | V$_{CC}$ | +5 VDC |
* QP, DP y /CASP no está conectados en los modelos sin paridad
* A9 no está conectado en los de 256 kiB.
* A10 no está conectado en los de 256 kiB y 1 MiB.
* A11 no está conectado en los de 256 kiB, 1 MiB y 4 MiB.

### SIMM de 72 contactos

72-pin ECC SIMM Memory Module :
| Pin # | Non-Parity | Parity | Signal Description |
| 2 | DQ0 | DQ0 | Data 0 |
| 3 | DQ1 | DQ1 | Data 1 |
| 4 | DQ2 | DQ2 | Data 2 |
| 5 | DQ3 | DQ3 | Data 3 |
| 6 | DQ4 | DQ4 | Data 4 |
| 7 | DQ5 | DQ5 | Data 5 |
| 8 | DQ6 | DQ6 | Data 6 |
| 9 | DQ7 | DQ7 | Data 7 |
| 10 | V$_{CC}$ | V$_{CC}$ | +5 VDC |
| 11 | PD1 | PD1 | Presence Detect 1 |
| 12 | A0 | A0 | Address 0 |
| 13 | A1 | A1 | Address 1 |
| 14 | A2 | A2 | Address 2 |
| 15 | A3 | A3 | Address 3 |
| 16 | A4 | A4 | Address 4 |
| 17 | A5 | A5 | Address 5 |
| 18 | A6 | A6 | Address 6 |
| 21 | DQ9 | DQ9 | Data 9 |
| 22 | DQ10 | DQ10 | Data 10 |
| 23 | DQ11 | DQ11 | Data 11 |
| 24 | DQ12 | DQ12 | Data 12 |
| 25 | DQ13 | DQ13 | Data 13 |
| 26 | DQ14 | DQ14 | Data 14 |
| 27 | DQ15 | DQ15 | Data 15 |
| 28 | A7 | A7 | Address 7 |
| 29 | A11 | A11 | Address 11 |
| 30 | V$_{CC}$ | V$_{CC}$ | +5 VDC |
| 31 | A8 | A8 | Address 8 |
| 32 | A9 | A9 | Address 9 |
| 33 | /RAS3 | RAS3 | Row Address Strobe 3 |
| 34 | /RAS2 | RAS2 | Row Address Strobe 2 |
| 35 | DQ16 | DQ16 | Data 16 |
| 36 | n/c | PQ17 | Data 17 (Parity 2) |
| 37 | DQ18 | DQ18 | Data 18 |
| 38 | DQ19 | DQ19 | Data 19 |
| 39 | V$_{SS}$ | V$_{SS}$ | Ground |
| 40 | /CAS0 | CAS0 | Column Address Strobe 0 |
| 41 | /CAS2 | CAS2 | Column Address Strobe 2 |
| 42 | /CAS3 | CAS3 | Column Address Strobe 3 |
| 43 | /CAS1 | CAS1 | Column Address Strobe 1 |
| 44 | /RAS0 | RAS0 | Row Address Strobe 0 |
| 45 | /RAS1 | RAS1 | Row Address Strobe 1 |
| 46 | A12 | A12 | Address 12 |
| 47 | /WE | WE | Read/Write |
| 48 | A13 | A13 | Address 13 |
| 49 | DQ20 | DQ20 | Data 20 |
| 50 | DQ21 | DQ21 | Data 21 |
| 51 | DQ22 | DQ22 | Data 22 |
| 52 | DQ23 | DQ23 | Data 23 |
| 53 | DQ24 | DQ24 | Data 24 |
| 54 | DQ25 | DQ25 | Data 25 |
| 55 | n/c | PQ26 | Data 26 (Parity 3) |
| 56 | DQ27 | DQ27 | Data 27 |
| 57 | DQ28 | DQ28 | Data 28 |
| 58 | DQ29 | DQ29 | Data 29 |
| 59 | DQ31 | DQ31 | Data 31 |
| 60 | DQ30 | DQ30 | Data 30 |
| 61 | V$_{CC}$ | V$_{CC}$ | +5 VDC |
| 62 | DQ32 | DQ32 | Data 32 |
| 63 | DQ33 | DQ33 | Data 33 |
| 64 | DQ34 | DQ34 | Data 34 |
| 65 | n/c | PQ35 | Data 35 (Parity 4) |
| 66 | PD2 | PD2 | Presence Detect 2 |
| 67 | PD3 | PD3 | Presence Detect 3 |
| 68 | PD4 | PD4 | Presence Detect 4 |
| 69 | PD5 | PD5 | Presence Detect 5 |
| 70 | PD6 | PD6 | Presence Detect 6 |
| 71 | PD7 | PD7 | Presence Detect 7 |
| 72 | V$_{SS}$ | V$_{SS}$ | Ground |